diff --git a/xinelu-nurse-applet/src/main/java/com/xinelu/applet/controller/appletlogin/AppletLoginController.java b/xinelu-nurse-applet/src/main/java/com/xinelu/applet/controller/appletlogin/AppletLoginController.java index 90ec4f9..9e67552 100644 --- a/xinelu-nurse-applet/src/main/java/com/xinelu/applet/controller/appletlogin/AppletLoginController.java +++ b/xinelu-nurse-applet/src/main/java/com/xinelu/applet/controller/appletlogin/AppletLoginController.java @@ -116,4 +116,30 @@ public class AppletLoginController extends BaseController { } return appletLoginService.existPatientInfo(openId); } + + /** + * 查询省级区域信息信息(小程序app修改用户地址信息查询) + * + * @return 省级区域信息集合 + */ + @GetMapping("/getProvinceInfo") + public AjaxResult getProvinceAreaInfo() { + return appletLoginService.getProvinceAreaInfo(); + } + + /** + * 根据父级区域编码查询下级区域(小程序app修改用户地址信息查询) + * + * @param areaCode 父级区域编码 + * @return 所属下级区域信息集合 + */ + @GetMapping("/getSubordinateInfo") + public AjaxResult getSubordinateAreaInfo(String areaCode) { + if (StringUtils.isBlank(areaCode)) { + return AjaxResult.error("上级区域编码不能为空"); + } + return appletLoginService.getSubordinateAreaInfo(areaCode); + } + + } diff --git a/xinelu-nurse-applet/src/main/java/com/xinelu/applet/dto/chatrecord/ChatRecordDTO.java b/xinelu-nurse-applet/src/main/java/com/xinelu/applet/dto/chatrecord/ChatRecordDTO.java index a05879c..dd681ca 100644 --- a/xinelu-nurse-applet/src/main/java/com/xinelu/applet/dto/chatrecord/ChatRecordDTO.java +++ b/xinelu-nurse-applet/src/main/java/com/xinelu/applet/dto/chatrecord/ChatRecordDTO.java @@ -42,6 +42,7 @@ public class ChatRecordDTO extends BaseEntity implements Serializable { /** * 发送时间,时间格式:yyyy-MM-dd HH:mm:ss */ + @NotNull(message = "接收时间不能为空", groups = {Insert.class}) private Date sendTime; /** diff --git a/xinelu-nurse-applet/src/main/java/com/xinelu/applet/dto/consultationInfo/ConsultationInfoDTO.java b/xinelu-nurse-applet/src/main/java/com/xinelu/applet/dto/consultationInfo/ConsultationInfoDTO.java index 8b3befc..88b658b 100644 --- a/xinelu-nurse-applet/src/main/java/com/xinelu/applet/dto/consultationInfo/ConsultationInfoDTO.java +++ b/xinelu-nurse-applet/src/main/java/com/xinelu/applet/dto/consultationInfo/ConsultationInfoDTO.java @@ -128,6 +128,10 @@ public class ConsultationInfoDTO extends BaseEntity implements Serializable { @Length(max = 100, message = "病历不能超过100位", groups = {Insert.class, Update.class}) private String medicalRecord; + /** + * 状态 + */ + private Integer status; /** * 问诊资料文件 diff --git a/xinelu-nurse-applet/src/main/java/com/xinelu/applet/service/appletlogin/AppletLoginService.java b/xinelu-nurse-applet/src/main/java/com/xinelu/applet/service/appletlogin/AppletLoginService.java index 8a9a3bb..967c72b 100644 --- a/xinelu-nurse-applet/src/main/java/com/xinelu/applet/service/appletlogin/AppletLoginService.java +++ b/xinelu-nurse-applet/src/main/java/com/xinelu/applet/service/appletlogin/AppletLoginService.java @@ -52,4 +52,19 @@ public interface AppletLoginService { * @return 护理人列表集合 */ AjaxResult existPatientInfo(String openId); + + /** + * 查询省级区域信息信息 + * + * @return 省级区域信息集合 + */ + AjaxResult getProvinceAreaInfo(); + + /** + * 根据父区域编码查询其下属区域信息 + * + * @param areaCode 父级区域编码 + * @return 下属区域信息集合 + */ + AjaxResult getSubordinateAreaInfo(String areaCode); } diff --git a/xinelu-nurse-applet/src/main/java/com/xinelu/applet/service/appletlogin/impl/AppletLoginServiceImpl.java b/xinelu-nurse-applet/src/main/java/com/xinelu/applet/service/appletlogin/impl/AppletLoginServiceImpl.java index 9b2790e..3f5d240 100644 --- a/xinelu-nurse-applet/src/main/java/com/xinelu/applet/service/appletlogin/impl/AppletLoginServiceImpl.java +++ b/xinelu-nurse-applet/src/main/java/com/xinelu/applet/service/appletlogin/impl/AppletLoginServiceImpl.java @@ -26,10 +26,12 @@ import com.xinelu.manage.domain.appointmentorder.AppointmentOrder; import com.xinelu.manage.domain.appointmentorderdetails.AppointmentOrderDetails; import com.xinelu.manage.domain.appointmentorderprocessrecord.AppointmentOrderProcessRecord; import com.xinelu.manage.domain.patientinfo.PatientInfo; +import com.xinelu.manage.domain.sysarea.SysArea; import com.xinelu.manage.mapper.appointmentorder.AppointmentOrderMapper; import com.xinelu.manage.mapper.appointmentorderdetails.AppointmentOrderDetailsMapper; import com.xinelu.manage.mapper.appointmentorderprocessrecord.AppointmentOrderProcessRecordMapper; import com.xinelu.manage.mapper.patientinfo.PatientInfoMapper; +import com.xinelu.manage.mapper.sysarea.SysAreaMapper; import com.xinelu.manage.vo.patientinfo.PatientInfoVO; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; @@ -88,6 +90,9 @@ public class AppletLoginServiceImpl implements AppletLoginService { */ private static final String OK = "ok"; + @Resource + private SysAreaMapper sysAreaMapper; + /** * 提前预约时间半天标识 */ @@ -308,6 +313,31 @@ public class AppletLoginServiceImpl implements AppletLoginService { return AjaxResult.success("NOT_LOGIN"); } + /** + * 查询省级区域信息信息 + * + * @return 省级区域信息集合 + */ + @Override + public AjaxResult getProvinceAreaInfo() { + SysArea area = new SysArea(); + area.setAreaLevel(1); + area.setRemoteSigns(0); + return AjaxResult.success(sysAreaMapper.selectSysAreaList(area)); + } + + /** + * 根据父级区域编码查询其下属区域信息 + * + * @param areaCode 父级区域编码 + * @return 下属区域信息集合 + */ + @Override + public AjaxResult getSubordinateAreaInfo(String areaCode) { + //查询出下级区域集合 + return AjaxResult.success(sysAreaMapper.getCityInfoList(areaCode, RemoteSignsEnum.REMOTE.getInfo())); + } + /** * 校验预约服务时间 * diff --git a/xinelu-nurse-applet/src/main/resources/mapper/applet/consultationInfo/ConsultationInfoMapper.xml b/xinelu-nurse-applet/src/main/resources/mapper/applet/consultationInfo/ConsultationInfoMapper.xml index 1b11751..e7ac6a4 100644 --- a/xinelu-nurse-applet/src/main/resources/mapper/applet/consultationInfo/ConsultationInfoMapper.xml +++ b/xinelu-nurse-applet/src/main/resources/mapper/applet/consultationInfo/ConsultationInfoMapper.xml @@ -68,17 +68,17 @@ ci.doctor_id, ci.doctor_name, ci.problem_description, - COUNT(cr.id) as messageCount - FROM - consultation_info ci - LEFT JOIN chat_record cr ON cr.consultation_id=ci.id AND read_status='0' + ci.create_time, + (SELECT COUNT(cr.id) FROM chat_record cr WHERE cr.consultation_id = ci.id AND read_status = '0' and sender_id= ci.doctor_id and sender_id= ci.patient_id - + ) AS messageCount + FROM + consultation_info ci and ci.patient_id = #{patientId} @@ -143,7 +143,7 @@ SELECT file_url FROM consultation_file WHERE del_flag='0' AND consultation_id=#{id} - + insert into consultation_info id, @@ -246,7 +246,7 @@ insert into consultation_file(consultation_id, file_url) values - (#{consultationId},#{item.fileUrl}) + (#{consultationId},#{item}) diff --git a/xinelu-nurse-manage/src/main/java/com/xinelu/manage/vo/consultationInfo/ConsultationInfoVO.java b/xinelu-nurse-manage/src/main/java/com/xinelu/manage/vo/consultationInfo/ConsultationInfoVO.java index 2ec4853..48b753c 100644 --- a/xinelu-nurse-manage/src/main/java/com/xinelu/manage/vo/consultationInfo/ConsultationInfoVO.java +++ b/xinelu-nurse-manage/src/main/java/com/xinelu/manage/vo/consultationInfo/ConsultationInfoVO.java @@ -22,7 +22,7 @@ import java.util.Date; * @date 2023-09-25 */ @Data -public class ConsultationInfoVO implements Serializable { +public class ConsultationInfoVO extends BaseEntity implements Serializable { private static final long serialVersionUID = 1L; /**