diff --git a/xinelu-nurse-applet/src/main/java/com/xinelu/applet/controller/appgoodsorder/AppGoodsOrderController.java b/xinelu-nurse-applet/src/main/java/com/xinelu/applet/controller/appgoodsorder/AppGoodsOrderController.java new file mode 100644 index 0000000..92052a2 --- /dev/null +++ b/xinelu-nurse-applet/src/main/java/com/xinelu/applet/controller/appgoodsorder/AppGoodsOrderController.java @@ -0,0 +1,36 @@ +package com.xinelu.applet.controller.appgoodsorder; + +import com.xinelu.common.core.controller.BaseController; +import com.xinelu.common.core.page.TableDataInfo; +import com.xinelu.manage.dto.goodsorder.GoodsOrderDTO; +import com.xinelu.manage.service.goodsOrder.IGoodsOrderService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import javax.annotation.Resource; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * @description: APP工单控制器 + * @author: haown + * @create: 2023-10-20 10:02 + **/ +@Api(tags = "APP工单控制器") +@RestController +@RequestMapping("/nurseApp/orders") +public class AppGoodsOrderController extends BaseController { + + @Resource + private IGoodsOrderService goodsOrderService; + + /** + * 工单列表 + */ + @GetMapping("/getList") + @ApiOperation(value = "查询工单列表") + public TableDataInfo getList(GoodsOrderDTO goodsOrderDTO) { + startPage(); + return getDataTable(goodsOrderService.getConsultationOrders(goodsOrderDTO)); + } +} diff --git a/xinelu-nurse-applet/src/main/java/com/xinelu/applet/service/healthconsultation/impl/HealthConsultationServiceImpl.java b/xinelu-nurse-applet/src/main/java/com/xinelu/applet/service/healthconsultation/impl/HealthConsultationServiceImpl.java index 9f84f6a..943ef77 100644 --- a/xinelu-nurse-applet/src/main/java/com/xinelu/applet/service/healthconsultation/impl/HealthConsultationServiceImpl.java +++ b/xinelu-nurse-applet/src/main/java/com/xinelu/applet/service/healthconsultation/impl/HealthConsultationServiceImpl.java @@ -168,6 +168,12 @@ public class HealthConsultationServiceImpl implements HealthConsultationService goodsOrder.setCreateTime(LocalDateTime.now()); goodsOrder.setOrderTime(LocalDateTime.now()); goodsOrder.setOriginalTotalPrice(healthConsultationOrderDTO.getTotalPrice()); + goodsOrder.setHospitalPersonId(hospitalPersonInfo.getId()); + goodsOrder.setHospitalPersonName(hospitalPersonInfo.getPersonName()); + goodsOrder.setHealthConsultationContent(healthConsultationOrderDTO.getHealthConsultationContent()); + goodsOrder.setHealthAppointDate(healthConsultationOrderDTO.getHealthAppointDate()); + goodsOrder.setConsultationInfoId(healthConsultationOrderDTO.getConsultationInfoId()); + int insertGoodsOrder = goodsOrderMapper.insertGoodsOrder(goodsOrder); if (insertGoodsOrder <= 0) { throw new ServiceException("预约订单新增信息失败,请联系管理员!"); diff --git a/xinelu-nurse-applet/src/main/java/com/xinelu/applet/vo/healthconsultation/HealthConsultationOrderDTO.java b/xinelu-nurse-applet/src/main/java/com/xinelu/applet/vo/healthconsultation/HealthConsultationOrderDTO.java index dc05cfa..e2981ee 100644 --- a/xinelu-nurse-applet/src/main/java/com/xinelu/applet/vo/healthconsultation/HealthConsultationOrderDTO.java +++ b/xinelu-nurse-applet/src/main/java/com/xinelu/applet/vo/healthconsultation/HealthConsultationOrderDTO.java @@ -27,6 +27,11 @@ public class HealthConsultationOrderDTO implements Serializable { */ private Long id; + /** + * 会诊信息表id + */ + private Long consultationInfoId; + /** * 商品订单表id */ diff --git a/xinelu-nurse-manage/src/main/java/com/xinelu/manage/domain/goodsOrder/GoodsOrder.java b/xinelu-nurse-manage/src/main/java/com/xinelu/manage/domain/goodsOrder/GoodsOrder.java index 3d06ecc..b3ee54a 100644 --- a/xinelu-nurse-manage/src/main/java/com/xinelu/manage/domain/goodsOrder/GoodsOrder.java +++ b/xinelu-nurse-manage/src/main/java/com/xinelu/manage/domain/goodsOrder/GoodsOrder.java @@ -61,6 +61,7 @@ public class GoodsOrder extends BaseDomain implements Serializable { /** * 订单状态,待付款:WAIT_PAY,已付款:PAY,已取消:CANCEL,待收货:WAIT_RECEIVED,已收货:RECEIVED,待退款:WAIT_REFUND,已退款:REFUNDED,待退货:WAIT_RETURNED,已退货:RETURNED + * RECEIVED_GOODS (商品订单为:待评价,专家咨询订单为:待服务),已完成:COMPLETED(专家咨询订单使用) */ @ApiModelProperty(value = "订单状态,待付款:WAIT_PAY,已付款:PAY,已取消:CANCEL,待收货:WAIT_RECEIVED,已收货:RECEIVED,待退款:WAIT_REFUND,已退款:REFUNDED,待退货:WAIT_RETURNED,已退货:RETURNED") @Excel(name = "订单状态,待付款:WAIT_PAY,已付款:PAY,已取消:CANCEL,待收货:WAIT_RECEIVED,已收货:RECEIVED,待退款:WAIT_REFUND,已退款:REFUNDED,待退货:WAIT_RETURNED,已退货:RETURNED") diff --git a/xinelu-nurse-manage/src/main/java/com/xinelu/manage/dto/goodsorder/GoodsOrderDTO.java b/xinelu-nurse-manage/src/main/java/com/xinelu/manage/dto/goodsorder/GoodsOrderDTO.java new file mode 100644 index 0000000..42966d8 --- /dev/null +++ b/xinelu-nurse-manage/src/main/java/com/xinelu/manage/dto/goodsorder/GoodsOrderDTO.java @@ -0,0 +1,39 @@ +package com.xinelu.manage.dto.goodsorder; + +import com.xinelu.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @description: 工单查询传输对象 + * @author: haown + * @create: 2023-10-20 10:42 + **/ +@ApiModel("工单查询传输对象") +@Data +public class GoodsOrderDTO extends BaseEntity { + + @ApiModelProperty("医生主键id") + private Long hospitalPersonId; + + @ApiModelProperty("居民主键id") + private Long patientId; + + /** + * 订单状态,待付款:WAIT_PAY,已付款:PAY,已取消:CANCEL,待收货:WAIT_RECEIVED,已收货:RECEIVED,待退款:WAIT_REFUND,已退款:REFUNDED,待退货:WAIT_RETURNED,已退货:RETURNED + */ + @ApiModelProperty("订单状态,待付款:WAIT_PAY,已付款:PAY,已取消:CANCEL," + + "待收货:WAIT_RECEIVED_GOODS(专家咨询订单为:待接单)," + + "已收货:RECEIVED_GOODS(商品订单为:待评价,专家咨询订单为:待服务)," + + "退款中:WAIT_REFUND,已退款:REFUNDED,待退货:WAIT_RETURNED_GOODS," + + "已退货:RETURNED_GOODS,已评价:EVALUATED,已完成:COMPLETED(专家咨询订单使用)") + private String orderStatus; + + /** + * 订单类型,积分兑换:INTEGRAL_EXCHANGE,直接购买:DIRECT_BUY,健康咨询:HEALTH_CONSULTATION + */ + @ApiModelProperty("订单类型,积分兑换:INTEGRAL_EXCHANGE,直接购买:DIRECT_BUY,健康咨询:HEALTH_CONSULTATION") + private String orderType; + +} diff --git a/xinelu-nurse-manage/src/main/java/com/xinelu/manage/mapper/goodsOrder/GoodsOrderMapper.java b/xinelu-nurse-manage/src/main/java/com/xinelu/manage/mapper/goodsOrder/GoodsOrderMapper.java index a2b61e1..c75bc22 100644 --- a/xinelu-nurse-manage/src/main/java/com/xinelu/manage/mapper/goodsOrder/GoodsOrderMapper.java +++ b/xinelu-nurse-manage/src/main/java/com/xinelu/manage/mapper/goodsOrder/GoodsOrderMapper.java @@ -1,6 +1,7 @@ package com.xinelu.manage.mapper.goodsOrder; import com.xinelu.manage.domain.goodsOrder.GoodsOrder; +import com.xinelu.manage.dto.goodsorder.GoodsOrderDTO; import com.xinelu.manage.vo.RefundOrderInfoVO; import com.xinelu.manage.vo.goods.GoodsOrderAndDetailsInfo; import com.xinelu.manage.vo.goodsorder.*; @@ -199,4 +200,11 @@ public interface GoodsOrderMapper { */ List selectGoodsOrderByTime(@Param("beforeTime") LocalDateTime beforeTime, @Param("time") LocalDateTime time, @Param("orderStatus") String orderStatus, @Param("orderType") String orderType); + + /** + * 医生APP专家咨询工单列表查询 + * @param goodsOrderDTO + * @return + */ + List getConsultationOrders(GoodsOrderDTO goodsOrderDTO); } diff --git a/xinelu-nurse-manage/src/main/java/com/xinelu/manage/service/goodsOrder/IGoodsOrderService.java b/xinelu-nurse-manage/src/main/java/com/xinelu/manage/service/goodsOrder/IGoodsOrderService.java index 47ea2b7..13cb2ae 100644 --- a/xinelu-nurse-manage/src/main/java/com/xinelu/manage/service/goodsOrder/IGoodsOrderService.java +++ b/xinelu-nurse-manage/src/main/java/com/xinelu/manage/service/goodsOrder/IGoodsOrderService.java @@ -1,11 +1,12 @@ package com.xinelu.manage.service.goodsOrder; import com.xinelu.manage.domain.goodsOrder.GoodsOrder; +import com.xinelu.manage.dto.goodsorder.GoodsOrderDTO; +import com.xinelu.manage.vo.goodsorder.AppGoodsOrderVO; import com.xinelu.manage.vo.goodsorder.GoodsInfoOrderVO; import com.xinelu.manage.vo.goodsorder.GoodsOrderDetailsVO; import com.xinelu.manage.vo.goodsorder.GoodsOrderRefundVO; import com.xinelu.manage.vo.goodsorder.GoodsOrderVO; - import java.util.List; @@ -97,4 +98,11 @@ public interface IGoodsOrderService { * @return com.xinyilu.base.vo.goodsorder.GoodsOrderRefundVO **/ GoodsOrderRefundVO getGoodsOrderRefund(Long goodsOrderId); + + /** + * 医生APP专家咨询工单列表查询 + * @param goodsOrderDTO + * @return + */ + List getConsultationOrders(GoodsOrderDTO goodsOrderDTO); } diff --git a/xinelu-nurse-manage/src/main/java/com/xinelu/manage/service/goodsOrder/impl/GoodsOrderServiceImpl.java b/xinelu-nurse-manage/src/main/java/com/xinelu/manage/service/goodsOrder/impl/GoodsOrderServiceImpl.java index 575e383..aa1186c 100644 --- a/xinelu-nurse-manage/src/main/java/com/xinelu/manage/service/goodsOrder/impl/GoodsOrderServiceImpl.java +++ b/xinelu-nurse-manage/src/main/java/com/xinelu/manage/service/goodsOrder/impl/GoodsOrderServiceImpl.java @@ -5,8 +5,10 @@ import com.xinelu.common.enums.ConfirmRefundStatusEnum; import com.xinelu.common.enums.GooodsOrderStatusEnum; import com.xinelu.common.utils.SecurityUtils; import com.xinelu.manage.domain.goodsOrder.GoodsOrder; +import com.xinelu.manage.dto.goodsorder.GoodsOrderDTO; import com.xinelu.manage.mapper.goodsOrder.GoodsOrderMapper; import com.xinelu.manage.service.goodsOrder.IGoodsOrderService; +import com.xinelu.manage.vo.goodsorder.AppGoodsOrderVO; import com.xinelu.manage.vo.goodsorder.GoodsInfoOrderVO; import com.xinelu.manage.vo.goodsorder.GoodsOrderDetailsVO; import com.xinelu.manage.vo.goodsorder.GoodsOrderRefundVO; @@ -137,7 +139,11 @@ public class GoodsOrderServiceImpl implements IGoodsOrderService { return goodsOrderMapper.getGoodsOrderRefund(goodsOrderId); } - /** + @Override public List getConsultationOrders(GoodsOrderDTO goodsOrderDTO) { + return goodsOrderMapper.getConsultationOrders(goodsOrderDTO); + } + + /** * 查询订单信息具体明细 * * @param orderNo 订单编号 diff --git a/xinelu-nurse-manage/src/main/java/com/xinelu/manage/vo/goodsorder/AppGoodsOrderVO.java b/xinelu-nurse-manage/src/main/java/com/xinelu/manage/vo/goodsorder/AppGoodsOrderVO.java new file mode 100644 index 0000000..431fd83 --- /dev/null +++ b/xinelu-nurse-manage/src/main/java/com/xinelu/manage/vo/goodsorder/AppGoodsOrderVO.java @@ -0,0 +1,96 @@ +package com.xinelu.manage.vo.goodsorder; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.xinelu.common.annotation.Excel; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.time.LocalTime; +import java.util.Date; +import lombok.Data; + +/** + * @description: App工单列表返回视图类 + * @author: haown + * @create: 2023-10-20 11:02 + **/ +@ApiModel("App工单列表返回视图类") +@Data +public class AppGoodsOrderVO { + + /** + * 专家咨询信息表id + */ + @ApiModelProperty("专家咨询信息表id") + private Long consultationInfoId; + + @ApiModelProperty(value = "患者id") + private Long patientId; + + /** + * 患者名称 + */ + @ApiModelProperty(value = "患者名称") + private String patientName; + + /** + * 患者身份证号 + */ + @ApiModelProperty(value = "患者身份证号") + private String cardNo; + + /** + * 患者联系方式 + */ + @ApiModelProperty(value = "患者联系方式") + private String phone; + + /** + * 现住址所在地区 + */ + @ApiModelProperty(value = "现住址所在地区") + private String address; + + /** + * 状态(1 未完成 ,2 已完成) + */ + @ApiModelProperty(value = "状态(1 未完成 ,2 已完成)") + @Excel(name = "状态(1 未完成 ,2 已完成)") + private Integer status; + + /** + * 预约日期(视频问诊预约),时间格式:yyyy-MM-dd + */ + @ApiModelProperty(value = "预约日期(视频问诊预约),时间格式:yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "预约日期(视频问诊预约),时间格式:yyyy-MM-dd", width = 30, dateFormat = "yyyy-MM-dd") + private Date appointmentDate; + + /** + * 预约开始时间点(视频问诊预约),时间格式:HH:mm + */ + @ApiModelProperty(value = "预约开始时间点(视频问诊预约),时间格式:HH:mm") + @JsonFormat(pattern = "HH:mm") + private LocalTime appointmentStartTime; + + /** + * 预约结束时间点(视频问诊预约),时间格式:HH:mm + */ + @ApiModelProperty(value = "预约结束时间点(视频问诊预约),时间格式:HH:mm") + @JsonFormat(pattern = "HH:mm") + private LocalTime appointmentEndTime; + + /** + * 订单编号 + */ + @ApiModelProperty(value = "订单编号") + private String orderNo; + + @ApiModelProperty(value = "订单状态,待付款:WAIT_PAY,已付款:PAY,已取消:CANCEL,待收货:WAIT_RECEIVED,已收货:RECEIVED,待退款:WAIT_REFUND,已退款:REFUNDED,待退货:WAIT_RETURNED,已退货:RETURNED") + private String orderStatus; + + /** + * 健康咨询内容,健康咨询类型的订单使用 + **/ + @ApiModelProperty(value = "健康咨询内容") + private String healthConsultationContent; +} diff --git a/xinelu-nurse-manage/src/main/resources/mapper/manage/goodsOrder/GoodsOrderMapper.xml b/xinelu-nurse-manage/src/main/resources/mapper/manage/goodsOrder/GoodsOrderMapper.xml index 1e4821c..26d09cb 100644 --- a/xinelu-nurse-manage/src/main/resources/mapper/manage/goodsOrder/GoodsOrderMapper.xml +++ b/xinelu-nurse-manage/src/main/resources/mapper/manage/goodsOrder/GoodsOrderMapper.xml @@ -755,4 +755,24 @@ and gor.order_status = #{orderStatus} and gor.order_type = #{orderType} and gor.del_flag = 0 + +