APP及小程序健康咨询接口
This commit is contained in:
parent
c1e79c2ba6
commit
7460db18d6
@ -0,0 +1,84 @@
|
|||||||
|
package com.xinelu.applet.controller.healthconsultation;
|
||||||
|
|
||||||
|
import com.xinelu.applet.service.healthconsultation.HealthConsultationService;
|
||||||
|
import com.xinelu.applet.vo.healthconsultation.HealthConsultationOrderDTO;
|
||||||
|
import com.xinelu.common.annotation.MobileRequestAuthorization;
|
||||||
|
import com.xinelu.common.annotation.RepeatSubmit;
|
||||||
|
import com.xinelu.common.core.controller.BaseController;
|
||||||
|
import com.xinelu.common.core.domain.AjaxResult;
|
||||||
|
import com.xinelu.common.core.page.TableDataInfo;
|
||||||
|
import com.xinelu.common.custominterface.Insert;
|
||||||
|
import com.xinelu.common.exception.ServiceException;
|
||||||
|
import com.xinelu.manage.domain.hospitalpersoninfo.HospitalPersonInfo;
|
||||||
|
import org.springframework.validation.BindingResult;
|
||||||
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Objects;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description APP及小程序健康咨询接口
|
||||||
|
* @Author zh
|
||||||
|
* @Date 2023-03-07
|
||||||
|
*/
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/nurseApp/healthConsultation")
|
||||||
|
public class HealthConsultationController extends BaseController {
|
||||||
|
@Resource
|
||||||
|
private HealthConsultationService healthConsultationService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 健康咨询-预约医生
|
||||||
|
*/
|
||||||
|
@MobileRequestAuthorization
|
||||||
|
@GetMapping("/selectDepartment")
|
||||||
|
public TableDataInfo selectDepartment() {
|
||||||
|
return healthConsultationService.selectDepartment();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 健康咨询-预约医生-单查科室人员
|
||||||
|
*/
|
||||||
|
@MobileRequestAuthorization
|
||||||
|
@GetMapping("/selectHospitalPerson")
|
||||||
|
public TableDataInfo selectHospitalPerson(Long departmentId) {
|
||||||
|
startPage();
|
||||||
|
List<HospitalPersonInfo> list = healthConsultationService.selectHospitalPerson(departmentId);
|
||||||
|
return getDataTable(list);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 健康咨询-信息确认
|
||||||
|
*/
|
||||||
|
@MobileRequestAuthorization
|
||||||
|
@GetMapping("/informationConfirmation")
|
||||||
|
public AjaxResult informationConfirmation(Long patientId) {
|
||||||
|
if (Objects.isNull(patientId)) {
|
||||||
|
return AjaxResult.error("用户信息为空!");
|
||||||
|
}
|
||||||
|
return healthConsultationService.informationConfirmation(patientId);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 手机App和微信小程序健康咨询确认订单方法
|
||||||
|
*
|
||||||
|
* @param healthConsultationOrderDTO 健康咨询订单
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@MobileRequestAuthorization
|
||||||
|
@RepeatSubmit
|
||||||
|
@PostMapping("/addHealthConsultationOrder")
|
||||||
|
public AjaxResult addHealthConsultationOrder(@Validated(Insert.class) @RequestBody HealthConsultationOrderDTO healthConsultationOrderDTO, BindingResult bindingResult) {
|
||||||
|
if (bindingResult.hasErrors()) {
|
||||||
|
throw new ServiceException(bindingResult.getAllErrors().get(0).getDefaultMessage());
|
||||||
|
}
|
||||||
|
if (Objects.nonNull(healthConsultationOrderDTO.getTotalPrice()) && healthConsultationOrderDTO.getTotalPrice().compareTo(BigDecimal.ZERO) <= 0) {
|
||||||
|
return AjaxResult.error("预约金额不正确,无法下单,请输入正确的预约金额!");
|
||||||
|
}
|
||||||
|
return healthConsultationService.insertHealthConsultationOrder(healthConsultationOrderDTO);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,30 @@
|
|||||||
|
package com.xinelu.applet.mapper.healthconsultation;
|
||||||
|
|
||||||
|
import com.xinelu.applet.vo.healthconsultation.HealthConsultationVO;
|
||||||
|
import com.xinelu.manage.domain.patientinfo.PatientInfo;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 健康咨询Mapper接口
|
||||||
|
*
|
||||||
|
* @author 张恒
|
||||||
|
* @date 2023-03-07
|
||||||
|
*/
|
||||||
|
public interface HealthConsultationMapper {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 健康咨询-信息确认
|
||||||
|
*
|
||||||
|
* @param patientId 用户信息
|
||||||
|
* @return PatientInfo
|
||||||
|
*/
|
||||||
|
PatientInfo selectPatientById(Long patientId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询科室信息管理列表
|
||||||
|
*
|
||||||
|
* @return 科室信息管理集合
|
||||||
|
*/
|
||||||
|
List<HealthConsultationVO> selectHospitalDepartmentList();
|
||||||
|
}
|
||||||
@ -0,0 +1,50 @@
|
|||||||
|
package com.xinelu.applet.service.healthconsultation;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
import com.xinelu.applet.vo.healthconsultation.HealthConsultationOrderDTO;
|
||||||
|
import com.xinelu.common.core.domain.AjaxResult;
|
||||||
|
import com.xinelu.common.core.page.TableDataInfo;
|
||||||
|
import com.xinelu.manage.domain.hospitalpersoninfo.HospitalPersonInfo;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description 健康咨询接口业务层
|
||||||
|
* @Author zh
|
||||||
|
* @Date 2023-03-07
|
||||||
|
*/
|
||||||
|
public interface HealthConsultationService {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 健康咨询-预约医生
|
||||||
|
*
|
||||||
|
* @return AjaxResult
|
||||||
|
*/
|
||||||
|
TableDataInfo selectDepartment();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 单查科室人员
|
||||||
|
*
|
||||||
|
* @param departmentId 科室id
|
||||||
|
* @return AjaxResult
|
||||||
|
*/
|
||||||
|
List<HospitalPersonInfo> selectHospitalPerson(Long departmentId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 健康咨询-信息确认
|
||||||
|
*
|
||||||
|
* @param patientId 用户信息
|
||||||
|
* @return AjaxResult
|
||||||
|
*/
|
||||||
|
AjaxResult informationConfirmation(Long patientId);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 手机App和微信小程序健康咨询确认订单方法
|
||||||
|
*
|
||||||
|
* @param healthConsultationOrderDTO 健康咨询订单
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
AjaxResult insertHealthConsultationOrder(HealthConsultationOrderDTO healthConsultationOrderDTO);
|
||||||
|
}
|
||||||
@ -0,0 +1,172 @@
|
|||||||
|
package com.xinelu.applet.service.healthconsultation.impl;
|
||||||
|
|
||||||
|
import com.xinelu.applet.service.healthconsultation.HealthConsultationService;
|
||||||
|
import com.xinelu.applet.utils.AppointmentTimeUtil;
|
||||||
|
import com.xinelu.applet.vo.healthconsultation.HealthConsultationOrderDTO;
|
||||||
|
import com.xinelu.applet.vo.healthconsultation.HealthConsultationVO;
|
||||||
|
import com.xinelu.applet.vo.healthconsultation.PatientAndTimeVO;
|
||||||
|
import com.xinelu.applet.vo.specialdisease.WeekDaysVO;
|
||||||
|
import com.xinelu.common.core.domain.AjaxResult;
|
||||||
|
import com.xinelu.common.core.page.TableDataInfo;
|
||||||
|
import com.xinelu.common.enums.BuySourceEnum;
|
||||||
|
import com.xinelu.common.enums.GooodsOrderStatusEnum;
|
||||||
|
import com.xinelu.common.enums.OrderTypeEnum;
|
||||||
|
import com.xinelu.common.enums.PoserModuleTypeEnum;
|
||||||
|
import com.xinelu.common.exception.ServiceException;
|
||||||
|
import com.xinelu.common.utils.PageServiceUtil;
|
||||||
|
import com.xinelu.common.utils.StringUtils;
|
||||||
|
import com.xinelu.common.utils.bean.BeanUtils;
|
||||||
|
import com.xinelu.manage.domain.goodsOrder.GoodsOrder;
|
||||||
|
import com.xinelu.manage.domain.goodsOrderDetails.GoodsOrderDetails;
|
||||||
|
import com.xinelu.manage.domain.hospitalpersoninfo.HospitalPersonInfo;
|
||||||
|
import com.xinelu.manage.domain.patientinfo.PatientInfo;
|
||||||
|
import com.xinelu.manage.domain.poserInfo.PoserInfo;
|
||||||
|
import com.xinelu.manage.mapper.goodsOrder.GoodsOrderMapper;
|
||||||
|
import com.xinelu.manage.mapper.goodsOrderDetails.GoodsOrderDetailsMapper;
|
||||||
|
import com.xinelu.applet.mapper.healthconsultation.HealthConsultationMapper;
|
||||||
|
import com.xinelu.manage.mapper.hospitalpersoninfo.HospitalPersonInfoMapper;
|
||||||
|
import com.xinelu.manage.mapper.patientinfo.PatientInfoMapper;
|
||||||
|
import com.xinelu.manage.mapper.poserInfo.PoserInfoMapper;
|
||||||
|
import com.xinelu.manage.vo.patientinfo.PatientInfoVO;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.collections4.CollectionUtils;
|
||||||
|
import org.apache.commons.compress.utils.Lists;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import java.time.LocalDate;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Objects;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description 健康咨询接口业务层实现类
|
||||||
|
* @Author zh
|
||||||
|
* @Date 2023-03-07
|
||||||
|
*/
|
||||||
|
@Slf4j
|
||||||
|
@Service
|
||||||
|
public class HealthConsultationServiceImpl implements HealthConsultationService {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private PatientInfoMapper patientInfoMapper;
|
||||||
|
@Resource
|
||||||
|
private GoodsOrderMapper goodsOrderMapper;
|
||||||
|
@Resource
|
||||||
|
private GoodsOrderDetailsMapper goodsOrderDetailsMapper;
|
||||||
|
@Resource
|
||||||
|
private HealthConsultationMapper healthConsultationMapper;
|
||||||
|
@Resource
|
||||||
|
private PoserInfoMapper poserInfoMapper;
|
||||||
|
@Resource
|
||||||
|
private HospitalPersonInfoMapper hospitalPersonInfoMapper;
|
||||||
|
@Resource
|
||||||
|
private AppointmentTimeUtil appointmentTimeUtil;
|
||||||
|
@Resource
|
||||||
|
private PageServiceUtil pageServiceUtil;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 健康咨询-预约医生
|
||||||
|
*
|
||||||
|
* @return AjaxResult
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public TableDataInfo selectDepartment() {
|
||||||
|
//查询海报及科室
|
||||||
|
List<PoserInfo> poserList = poserInfoMapper.selectPoserListByModuleTyp(PoserModuleTypeEnum.HEALTH_CONSUTION_MODULE.getInfo());
|
||||||
|
pageServiceUtil.startPage();
|
||||||
|
List<HealthConsultationVO> healthConsultation = healthConsultationMapper.selectHospitalDepartmentList();
|
||||||
|
if (CollectionUtils.isNotEmpty(healthConsultation)) {
|
||||||
|
healthConsultation.get(0).setPoserInfoList(poserList);
|
||||||
|
}
|
||||||
|
return pageServiceUtil.getDataTable(healthConsultation);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 单查科室人员
|
||||||
|
*
|
||||||
|
* @param departmentId 科室id
|
||||||
|
* @return AjaxResult
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<HospitalPersonInfo> selectHospitalPerson(Long departmentId) {
|
||||||
|
if (Objects.isNull(departmentId)) {
|
||||||
|
return new ArrayList<>();
|
||||||
|
}
|
||||||
|
return hospitalPersonInfoMapper.selectHospitalPerson(departmentId);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 健康咨询-信息确认
|
||||||
|
*
|
||||||
|
* @param patientId 用户信息
|
||||||
|
* @return AjaxResult
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public AjaxResult informationConfirmation(Long patientId) {
|
||||||
|
PatientAndTimeVO patientAndTime = new PatientAndTimeVO();
|
||||||
|
PatientInfo patientInfo = healthConsultationMapper.selectPatientById(patientId);
|
||||||
|
if (Objects.isNull(patientInfo)) {
|
||||||
|
return AjaxResult.error("用户信息不存在!");
|
||||||
|
}
|
||||||
|
LocalDate nowTime = LocalDate.now();
|
||||||
|
//近七天的预约时间点数据集合
|
||||||
|
List<WeekDaysVO> weekDaysList = Lists.newArrayList();
|
||||||
|
appointmentTimeUtil.setWeekDayAndWeekDate(nowTime, weekDaysList);
|
||||||
|
patientAndTime.setAppointmentTimeList(weekDaysList);
|
||||||
|
patientAndTime.setPatientName(patientInfo.getPatientName());
|
||||||
|
patientAndTime.setPhone(patientInfo.getPhone());
|
||||||
|
return AjaxResult.success(patientAndTime);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 手机App和微信小程序健康咨询确认订单方法
|
||||||
|
*
|
||||||
|
* @param healthConsultationOrderDTO 健康咨询订单
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Transactional(rollbackFor = Exception.class)
|
||||||
|
@Override
|
||||||
|
public AjaxResult insertHealthConsultationOrder(HealthConsultationOrderDTO healthConsultationOrderDTO) {
|
||||||
|
//判断当前会员信息是否存在
|
||||||
|
PatientInfoVO patientInfo = patientInfoMapper.getPatientInfoById(healthConsultationOrderDTO.getPatientId());
|
||||||
|
if (Objects.isNull(patientInfo)) {
|
||||||
|
return AjaxResult.error("用户信息不存在,无法预约专家!");
|
||||||
|
}
|
||||||
|
//根据id查询当前专家是否存在
|
||||||
|
HospitalPersonInfo hospitalPersonInfo = hospitalPersonInfoMapper.selectHospitalPersonInfoById(healthConsultationOrderDTO.getHospitalPersonId());
|
||||||
|
if (Objects.isNull(hospitalPersonInfo)) {
|
||||||
|
return AjaxResult.error("当前专家信息不存在,请重新预约!");
|
||||||
|
}
|
||||||
|
//生成订单信息
|
||||||
|
GoodsOrder goodsOrder = new GoodsOrder();
|
||||||
|
BeanUtils.copyProperties(healthConsultationOrderDTO, goodsOrder);
|
||||||
|
String goodOrderNo = StringUtils.fillZeroByPatientId(healthConsultationOrderDTO.getPatientId(), 5) + System.nanoTime();
|
||||||
|
goodsOrder.setOrderNo(goodOrderNo);
|
||||||
|
goodsOrder.setOrderStatus(GooodsOrderStatusEnum.WAIT_PAY.getInfo());
|
||||||
|
goodsOrder.setDelFlag(0);
|
||||||
|
goodsOrder.setOrderType(OrderTypeEnum.HEALTH_CONSULTATION.getInfo());
|
||||||
|
goodsOrder.setBuySource(BuySourceEnum.HEALTH_CONSULTATION.getInfo());
|
||||||
|
goodsOrder.setCreateTime(LocalDateTime.now());
|
||||||
|
goodsOrder.setOrderTime(LocalDateTime.now());
|
||||||
|
goodsOrder.setOriginalTotalPrice(healthConsultationOrderDTO.getTotalPrice());
|
||||||
|
int insertGoodsOrder = goodsOrderMapper.insertGoodsOrder(goodsOrder);
|
||||||
|
if (insertGoodsOrder <= 0) {
|
||||||
|
throw new ServiceException("预约订单新增信息失败,请联系管理员!");
|
||||||
|
}
|
||||||
|
GoodsOrderDetails goodsOrderDetails = new GoodsOrderDetails();
|
||||||
|
goodsOrderDetails.setGoodsOrderId(goodsOrder.getId());
|
||||||
|
goodsOrderDetails.setOrderNo(goodOrderNo);
|
||||||
|
goodsOrderDetails.setGoodsName("健康咨询");
|
||||||
|
goodsOrderDetails.setTotalPrice(healthConsultationOrderDTO.getTotalPrice());
|
||||||
|
goodsOrderDetails.setDelFlag(0);
|
||||||
|
goodsOrderDetails.setCreateTime(LocalDateTime.now());
|
||||||
|
int insertGoodsOrderDetails = goodsOrderDetailsMapper.insertGoodsOrderDetails(goodsOrderDetails);
|
||||||
|
if (insertGoodsOrderDetails <= 0) {
|
||||||
|
throw new ServiceException("预约订单明细新增信息失败,请联系管理员!");
|
||||||
|
}
|
||||||
|
return AjaxResult.success(goodsOrderMapper.getGoodsOrderByOrderNo(goodOrderNo));
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,131 @@
|
|||||||
|
package com.xinelu.applet.vo.healthconsultation;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import com.xinelu.common.custominterface.Insert;
|
||||||
|
import com.xinelu.common.custominterface.Update;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.hibernate.validator.constraints.Length;
|
||||||
|
|
||||||
|
import javax.validation.constraints.NotBlank;
|
||||||
|
import javax.validation.constraints.NotNull;
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author ljh
|
||||||
|
* @version 1.0
|
||||||
|
* Create by 2023/3/8 13:59
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class HealthConsultationOrderDTO implements Serializable {
|
||||||
|
private static final long serialVersionUID = 8664995394794180987L;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 主键id
|
||||||
|
*/
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 商品订单表id
|
||||||
|
*/
|
||||||
|
private Long goodsOrderId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 订单编号
|
||||||
|
*/
|
||||||
|
private String orderNo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 0:否,1:是
|
||||||
|
*/
|
||||||
|
private Integer delFlag;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 会员id
|
||||||
|
*/
|
||||||
|
@NotNull(message = "咨询人员信息不能为空!", groups = {Insert.class, Update.class})
|
||||||
|
private Long patientId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 订单状态,待付款:WAIT_PAY,已付款:PAY,已取消:CANCEL,待收货:WAIT_RECEIVED,已收货:RECEIVED,待退款:WAIT_REFUND,已退款:REFUNDED,待退货:WAIT_RETURNED,已退货:RETURNED
|
||||||
|
*/
|
||||||
|
private String orderStatus;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 订单总金额
|
||||||
|
*/
|
||||||
|
@NotNull(message = "金额不能为空", groups = {Insert.class, Update.class})
|
||||||
|
private BigDecimal totalPrice;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 收货人
|
||||||
|
*/
|
||||||
|
@NotBlank(message = "姓名不能为空", groups = {Insert.class, Update.class})
|
||||||
|
@Length(max = 20, message = "姓名不能超过20位", groups = {Insert.class, Update.class})
|
||||||
|
private String receiver;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 联系电话
|
||||||
|
*/
|
||||||
|
@NotBlank(message = "联系电话不能为空", groups = {Insert.class, Update.class})
|
||||||
|
@Length(max = 11, message = "联系电话不能超过11位", groups = {Insert.class, Update.class})
|
||||||
|
private String phone;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 下单时间
|
||||||
|
*/
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private LocalDateTime orderTime;
|
||||||
|
/**
|
||||||
|
* 下单方式,手机App:MOBILE_APP,微信小程序:WECHAT_APPLET,支付宝小程序:ALI_PAY_APPLET
|
||||||
|
*/
|
||||||
|
@NotNull(message = "下单方式不能为空", groups = {Insert.class, Update.class})
|
||||||
|
private String orderChannel;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 护理站:NURSE_STATION,商城:SHOPPING_MALL,健康咨询:HEALTH_CONSULTATION
|
||||||
|
*/
|
||||||
|
private String buySource;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 订单类型,积分兑换:INTEGRAL_EXCHANGE,直接购买:DIRECT_BUY,健康咨询:HEALTH_CONSULTATION
|
||||||
|
*/
|
||||||
|
private String orderType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 健康咨询人员表id,记录咨询订单中选择的医生,健康咨询订单使用
|
||||||
|
*/
|
||||||
|
@NotNull(message = "请选择咨询的专家!", groups = {Insert.class, Update.class})
|
||||||
|
private Long hospitalPersonId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 商品原始金额,即:商品数量 * 商品单价
|
||||||
|
*/
|
||||||
|
private BigDecimal originalTotalPrice;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建时间
|
||||||
|
*/
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private LocalDateTime createTime;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 健康咨询预约时间,健康咨询订单使用
|
||||||
|
**/
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||||
|
@NotNull(message = "服务日期不能为空", groups = {Insert.class, Update.class})
|
||||||
|
private Date healthAppointDate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 健康咨询内容,健康咨询类型的订单使用
|
||||||
|
*/
|
||||||
|
private String healthConsultationContent;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 健康咨询专家,记录咨询订单中选择的医生姓名,健康咨询订单使用
|
||||||
|
*/
|
||||||
|
@NotBlank(message = "请选择咨询的专家!", groups = {Insert.class, Update.class})
|
||||||
|
private String hospitalPersonName;
|
||||||
|
}
|
||||||
@ -0,0 +1,30 @@
|
|||||||
|
package com.xinelu.applet.vo.healthconsultation;
|
||||||
|
|
||||||
|
import com.xinelu.manage.domain.poserInfo.PoserInfo;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description 健康咨询返回值实体类
|
||||||
|
* @Author zh
|
||||||
|
* @Date 2023-03-07
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class HealthConsultationVO {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 科室id
|
||||||
|
*/
|
||||||
|
private Long departmentId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 科室名称
|
||||||
|
*/
|
||||||
|
private String departmentName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 海报集合
|
||||||
|
*/
|
||||||
|
List<PoserInfo> poserInfoList;
|
||||||
|
}
|
||||||
@ -0,0 +1,30 @@
|
|||||||
|
package com.xinelu.applet.vo.healthconsultation;
|
||||||
|
|
||||||
|
import com.xinelu.applet.vo.specialdisease.WeekDaysVO;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description 信息确认返回值实体类
|
||||||
|
* @Author zh
|
||||||
|
* @Date 2023-03-07
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class PatientAndTimeVO {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 用户姓名
|
||||||
|
*/
|
||||||
|
private String patientName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 手机号码
|
||||||
|
*/
|
||||||
|
private String phone;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 近七天的预约时间点集合
|
||||||
|
*/
|
||||||
|
List<WeekDaysVO> appointmentTimeList;
|
||||||
|
}
|
||||||
@ -0,0 +1,21 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
|
<!DOCTYPE mapper
|
||||||
|
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
|
<mapper namespace="com.xinelu.applet.mapper.healthconsultation.HealthConsultationMapper">
|
||||||
|
|
||||||
|
<select id="selectPatientById" resultType="com.xinelu.manage.domain.patientinfo.PatientInfo">
|
||||||
|
SELECT patient_name,
|
||||||
|
phone
|
||||||
|
FROM patient_info
|
||||||
|
WHERE id = #{patientId}
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="selectHospitalDepartmentList"
|
||||||
|
resultType="com.xinelu.applet.vo.healthconsultation.HealthConsultationVO">
|
||||||
|
select id departmentId,
|
||||||
|
department_name
|
||||||
|
from hospital_department_info
|
||||||
|
order by department_sort asc
|
||||||
|
</select>
|
||||||
|
</mapper>
|
||||||
Loading…
Reference in New Issue
Block a user