Merge remote-tracking branch 'origin/jihan_0920_护理服务、商城、积分兑换、在线问诊功能分支' into jihan_0920_护理服务、商城、积分兑换、在线问诊功能分支

# Conflicts:
#	xinelu-familydoctor/src/main/java/com/xinelu/familydoctor/applet/mapper/ResidentPatientInfoMapper.java
#	xinelu-familydoctor/src/main/java/com/xinelu/familydoctor/applet/service/impl/ResidentPatientInfoServiceImpl.java
This commit is contained in:
赵旭 2023-10-16 14:31:51 +08:00
commit 037d6b3f66
20 changed files with 710 additions and 23 deletions

View File

@ -0,0 +1,29 @@
package com.xinelu.common.enums;
import lombok.Getter;
/**
* @Description 订单来源枚举
* @Author 纪寒
* @Date 2023-10-16
*/
@Getter
public enum OrderSourceEnum {
/**
* 泉医模块
*/
SPRING_DOCTOR("SPRING_DOCTOR"),
/**
* 家医模块
*/
FAMILY_DOCTOR("FAMILY_DOCTOR"),
;
final private String info;
OrderSourceEnum(String info) {
this.info = info;
}
}

View File

@ -96,4 +96,11 @@ public interface ResidentPatientInfoMapper {
PatientInfo getByCardNo(String cardNo);
List<PatientInfo> selectPatientInfoByPhone(String phone);
/**
*根据用户编号查询
*
*@param patientCode 用户编号
*@return PatientInfo
**/
PatientInfo getPatientInfoByPatientCode(String patientCode);
}

View File

@ -152,14 +152,16 @@ public class ResidentPatientInfoServiceImpl implements IResidentPatientInfoServi
if (ObjectUtils.isNotEmpty(body.getCardNo())) {
// 修改
if(!StringUtils.isBlank(body.getPatientCode())) {
PatientInfo patientInfo = residentPatientInfoMapper.getByCardNo(body.getCardNo());
BeanUtils.copyBeanProp(patientInfo, body);
if (body.getDiseaseList() != null) {
patientInfo.setDisease(body.getDiseaseList().stream().collect(Collectors.joining(",")));
PatientInfo patientInfo = residentPatientInfoMapper.getPatientInfoByPatientCode(body.getPatientCode());
if (ObjectUtils.isNotEmpty(patientInfo)) {
BeanUtils.copyBeanProp(patientInfo, body);
if (body.getDiseaseList() != null) {
patientInfo.setDisease(body.getDiseaseList().stream().collect(Collectors.joining(",")));
}
patientInfo.setLoginFlag(Long.valueOf(1));
updatePatientInfo(patientInfo);
// 注册
}
patientInfo.setLoginFlag(Long.valueOf(1));
updatePatientInfo(patientInfo);
// 注册
} else {
// 获取当前微信绑定的居民
List<PatientInfo> list = residentPatientInfoMapper.getList(body.getOpenid(), body.getCityCode());
@ -318,7 +320,6 @@ public class ResidentPatientInfoServiceImpl implements IResidentPatientInfoServi
@Override
public HashMap<String, String> login(String loginCode,String phoneCode) throws Exception {
HashMap<String, String> HashMap = new HashMap<>();
//获取openId
try {
SslUtils.ignoreSsl();
String params = "appid=" + appletChatConfig.getAppletId() + "&secret=" + appletChatConfig.getSecret() + "&js_code=" + loginCode + "&grant_type=" + appletChatConfig.getGrantType();
@ -335,23 +336,12 @@ public class ResidentPatientInfoServiceImpl implements IResidentPatientInfoServi
} catch (Exception e) {
throw new ServiceException(e.getMessage());
}
//获取手机号
String code;
String cityCode = "";
AppletPhoneVO phone = getPhone(phoneCode);
String phoneNumber = phone.getPhoneInfo().getPhoneNumber();
HashMap.put("phone",phoneNumber);
//code = residentPatientInfoMapper.selectPatientInfoByPhone(phoneNumber) == 0 ? "0" : "1";
List<PatientInfo> infoList = residentPatientInfoMapper.selectPatientInfoByPhone(phoneNumber);
code = infoList.size()== 0 ? "0" : "1";
//返回绑定城市
if ("1".equals(code)){
for (PatientInfo patientInfo : infoList) {
cityCode = patientInfo.getCityCode();
}
}
code = residentPatientInfoMapper.selectPatientInfoByPhone(phoneNumber) == 0 ? "0" : "1";
HashMap.put("code",code);
HashMap.put("cityCode",cityCode);
return HashMap;
}
}

View File

@ -459,4 +459,9 @@
and login_flag = '1'
</select>
<select id="getPatientInfoByPatientCode" resultMap="PatientInfoResult">
<include refid="selectPatientInfoVo"/>
where patient_code = #{patientCode}
and del_flag = 0
</select>
</mapper>

View File

@ -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);
}
}

View File

@ -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();
}

View File

@ -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);
}

View File

@ -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));
}
}

View File

@ -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;
/**
* 01
*/
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;
/**
* 下单方式手机AppMOBILE_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;
}

View File

@ -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;
}

View File

@ -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;
}

View File

@ -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>

View File

@ -179,6 +179,11 @@ public class GoodsOrder extends BaseDomain implements Serializable {
*/
private String hospitalPersonName;
/**
* 专家咨询信息表id
*/
private Long consultationInfoId;
@Override
public String toString() {
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)

View File

@ -96,6 +96,10 @@ public class OrderEvaluateInfo extends BaseDomain implements Serializable {
@NotNull(message = "请选择评分", groups = {Update.class})
private Integer compositeScore;
/**
* 订单来源泉医模块SPRING_DOCTOR家医模块FAMILY_DOCTOR
*/
private String orderSource;
@Override
public String toString() {

View File

@ -19,6 +19,7 @@ import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalDateTime;
/**
* 被护理人基本信息对象 patient_info
@ -247,6 +248,23 @@ public class PatientInfo extends BaseDomain implements Serializable {
*/
private String disease;
/**
* 绑定城市(1德州 2东营)
*/
private String cityCode;
/**
* 小程序绑定时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime bindingTime;
/**
* 当前是否选中(0 1)
*/
private String isChecked;
@Override
public String toString() {
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
@ -275,6 +293,9 @@ public class PatientInfo extends BaseDomain implements Serializable {
.append("loginFlag", getLoginFlag())
.append("primaryAccountFlag", getPrimaryAccountFlag())
.append("delFlag", getDelFlag())
.append("cityCode", getCityCode())
.append("bindingTime", getBindingTime())
.append("isChecked", getIsChecked())
.toString();
}
}

View File

@ -34,6 +34,7 @@
<result property="healthConsultationContent" column="health_consultation_content"/>
<result property="healthAppointDate" column="health_appoint_date"/>
<result property="hospitalPersonName" column="hospital_person_name"/>
<result property="consultationInfoId" column="consultation_info_id"/>
</resultMap>
<!--商品订单信息及评价-->
@ -117,7 +118,8 @@
original_total_price,
health_consultation_content,
health_appoint_date,
hospital_person_name
hospital_person_name,
consultation_info_id
from goods_order
</sql>
@ -273,6 +275,8 @@
</if>
<if test="hospitalPersonName != null">hospital_person_name,
</if>
<if test="consultationInfoId != null">consultation_info_id,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="nurseStationId != null">#{nurseStationId},
@ -331,6 +335,8 @@
</if>
<if test="hospitalPersonName != null">#{hospitalPersonName},
</if>
<if test="consultationInfoId != null">#{consultationInfoId},
</if>
</trim>
</insert>
@ -421,6 +427,9 @@
<if test="hospitalPersonName != null">hospital_person_name =
#{hospitalPersonName},
</if>
<if test="consultationInfoId != null">consultation_info_id =
#{consultationInfoId},
</if>
</trim>
where id = #{id}
</update>

View File

@ -22,6 +22,8 @@
<result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/>
<result property="personAccount" column="person_account"/>
<result property="personPassword" column="person_password"/>
</resultMap>
<resultMap type="com.xinelu.manage.vo.hospitalpersoninfo.HospitalPersonInfoVO" id="HospitalPersonByIdVO">
@ -71,6 +73,8 @@
person_introduce,
person_sort,
person_picture_url,
person_account,
person_password,
create_by,
create_time,
update_by,
@ -238,6 +242,10 @@
</if>
<if test="personPictureUrl != null">person_picture_url,
</if>
<if test="personAccount != null">person_account,
</if>
<if test="personPassword != null">person_password,
</if>
<if test="createBy != null">create_by,
</if>
<if test="createTime != null">create_time,
@ -270,6 +278,10 @@
</if>
<if test="personPictureUrl != null">#{personPictureUrl},
</if>
<if test="personAccount != null">#{personAccount},
</if>
<if test="personPassword != null">#{personPassword},
</if>
<if test="createBy != null">#{createBy},
</if>
<if test="createTime != null">#{createTime},
@ -316,6 +328,12 @@
<if test="personPictureUrl != null">person_picture_url =
#{personPictureUrl},
</if>
<if test="personAccount != null">person_account =
#{personAccount},
</if>
<if test="personPassword != null">person_password =
#{personPassword},
</if>
<if test="createBy != null">create_by =
#{createBy},
</if>
@ -367,6 +385,12 @@
<if test="personPictureUrl != null">person_picture_url =
#{personPictureUrl},
</if>
<if test="personAccount != null">person_account =
#{personAccount},
</if>
<if test="personPassword != null">person_password =
#{personPassword},
</if>
<if test="createBy != null">create_by =
#{createBy},
</if>

View File

@ -14,6 +14,7 @@
<result property="evaluateChannel" column="evaluate_channel"/>
<result property="evaluateSatisfaction" column="evaluate_satisfaction"/>
<result property="compositeScore" column="composite_score"/>
<result property="orderSource" column="order_source"/>
<result property="createBy" column="create_by"/>
<result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/>
@ -30,6 +31,7 @@
evaluate_channel,
evaluate_satisfaction,
composite_score,
order_source,
create_by,
create_time,
update_by,
@ -100,6 +102,8 @@
</if>
<if test="compositeScore != null">composite_score,
</if>
<if test="orderSource != null">order_source,
</if>
<if test="createBy != null">create_by,
</if>
<if test="createTime != null">create_time,
@ -128,6 +132,8 @@
</if>
<if test="compositeScore != null">#{compositeScore},
</if>
<if test="orderSource != null">#{orderSource},
</if>
<if test="createBy != null">#{createBy},
</if>
<if test="createTime != null">#{createTime},
@ -166,6 +172,9 @@
<if test="compositeScore != null">composite_score =
#{compositeScore},
</if>
<if test="orderSource != null">order_source =
#{orderSource},
</if>
<if test="createBy != null">create_by =
#{createBy},
</if>

View File

@ -42,6 +42,10 @@
<result property="personalWechatCodeUrl" column="personal_wechat_code_url"/>
<result property="disablingCondition" column="disabling_condition"/>
<result property="disablingReason" column="disabling_reason"/>
<result property="disease" column="disease"/>
<result property="cityCode" column="city_code"/>
<result property="bindingTime" column="binding_time"/>
<result property="isChecked" column="is_checked"/>
</resultMap>
<sql id="selectPatientInfoVo">
@ -77,7 +81,11 @@
del_flag,
personal_wechat_code_url,
disabling_condition,
disabling_reason
disabling_reason,
disease,
city_code,
binding_time,
is_checked
from patient_info
</sql>
@ -289,6 +297,14 @@
</if>
<if test="disablingReason != null">disabling_reason,
</if>
<if test="disease != null">disease,
</if>
<if test="cityCode != null">city_code,
</if>
<if test="bindingTime != null">binding_time,
</if>
<if test="isChecked != null">is_checked,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="communityCode != null and communityCode != ''">#{communityCode},
@ -361,6 +377,14 @@
</if>
<if test="disablingReason != null">#{disablingReason},
</if>
<if test="disease != null">#{disease},
</if>
<if test="cityCode != null">#{cityCode},
</if>
<if test="bindingTime != null">#{bindingTime},
</if>
<if test="isChecked != null">#{isChecked},
</if>
</trim>
</insert>
@ -472,6 +496,18 @@
<if test="disablingReason != null">disabling_reason =
#{disablingReason},
</if>
<if test="disease != null">disease =
#{disease},
</if>
<if test="cityCode != null">city_code =
#{cityCode},
</if>
<if test="bindingTime != null">binding_time =
#{bindingTime},
</if>
<if test="isChecked != null">is_checked =
#{isChecked},
</if>
</trim>
where id = #{id}
</update>