diff --git a/docker/v3.0.0/step1.sql b/docker/v3.0.0/step1.sql index e71e8beb..b940912e 100644 --- a/docker/v3.0.0/step1.sql +++ b/docker/v3.0.0/step1.sql @@ -91,4 +91,6 @@ alter table vp_process add evaluate_remark varchar(1024) null comment '评价备注内容'; alter table vp_medical_rec - add status integer default 1 null comment '上线状态 1:未上线 2:已经上线 状态为未上线且病历未出现在vp_process表中使用可以进行删除' after medical_record_ai; \ No newline at end of file + add status integer default 1 null comment '上线状态 1:未上线 2:已经上线 状态为未上线且病历未出现在vp_process表中使用可以进行删除' after medical_record_ai; +-- 把原有的数据状态改成上线 +update vp_medical_rec set status = 2; \ No newline at end of file diff --git a/virtual-patient-manage/src/main/java/com/supervision/manage/controller/medicalrec/MedicalRecManageController.java b/virtual-patient-manage/src/main/java/com/supervision/manage/controller/medicalrec/MedicalRecManageController.java index a80b4a15..23d5bed1 100644 --- a/virtual-patient-manage/src/main/java/com/supervision/manage/controller/medicalrec/MedicalRecManageController.java +++ b/virtual-patient-manage/src/main/java/com/supervision/manage/controller/medicalrec/MedicalRecManageController.java @@ -132,5 +132,13 @@ public class MedicalRecManageController { } + @Operation(summary = "修改病历状态") + @GetMapping("/updateMedicalStatus") + public Boolean updateMedicalStatus(@Parameter(name = "medicalRecId", description = "病例id") String medicalRecId, + @Parameter(name = "status", description = "病历状态 1:未上线 2:上线") Integer status) { + + return medicalRecManageService.updateMedicalStatus(medicalRecId,status); + } + } diff --git a/virtual-patient-manage/src/main/java/com/supervision/manage/service/MedicalRecManageService.java b/virtual-patient-manage/src/main/java/com/supervision/manage/service/MedicalRecManageService.java index 97f420b4..d4b66086 100644 --- a/virtual-patient-manage/src/main/java/com/supervision/manage/service/MedicalRecManageService.java +++ b/virtual-patient-manage/src/main/java/com/supervision/manage/service/MedicalRecManageService.java @@ -48,4 +48,6 @@ public interface MedicalRecManageService { List queryMedicalDefaultAnswer(String medicalRecId); void downloadMedicalAnswerTemplate(HttpServletResponse response) throws Exception; + + Boolean updateMedicalStatus(String medicalRecId, Integer status); } diff --git a/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/MedicalRecManageServiceImpl.java b/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/MedicalRecManageServiceImpl.java index a6f7d290..7a07fb6d 100644 --- a/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/MedicalRecManageServiceImpl.java +++ b/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/MedicalRecManageServiceImpl.java @@ -16,10 +16,7 @@ import com.supervision.manage.service.*; import com.supervision.model.*; import com.supervision.model.Process; import com.supervision.service.*; -import com.supervision.vo.manage.DiseaseAncillaryResVo; -import com.supervision.vo.manage.DiseasePhysicalResVo; -import com.supervision.vo.manage.DiseaseTreatmentPlanResVo; -import com.supervision.vo.manage.MedicalRecPageResVO; +import com.supervision.vo.manage.*; import jakarta.servlet.ServletOutputStream; import jakarta.servlet.http.HttpServletResponse; import lombok.RequiredArgsConstructor; @@ -83,7 +80,12 @@ public class MedicalRecManageServiceImpl implements MedicalRecManageService { public IPage queryMedicalRecManagePage(String selfDescKeyword, String gender,String patientName, String diseaseId, Integer pageNum, Integer pageSize) { // 注意,这里的diseaseId不支持查询复杂疾病,如果需要支持复杂疾病,这里需要单独进行改造 - return medicalRecService.queryMedicalRecManagePage(selfDescKeyword, gender, patientName, diseaseId, pageNum, pageSize); + MedicalRecPageReqVO medicalRecPageReqVO = new MedicalRecPageReqVO(); + medicalRecPageReqVO.setSelfDescKeyword(selfDescKeyword); + medicalRecPageReqVO.setGender(gender); + medicalRecPageReqVO.setPatientName(patientName); + medicalRecPageReqVO.setDiseaseId(diseaseId); + return medicalRecService.queryMedicalRecManagePage(medicalRecPageReqVO, pageNum, pageSize); } @Override @@ -401,4 +403,15 @@ public class MedicalRecManageServiceImpl implements MedicalRecManageService { IoUtil.copy(resource.getInputStream(),outputStream); } + + @Override + public Boolean updateMedicalStatus(String medicalRecId, Integer status) { + + Assert.notEmpty(medicalRecId, "medicalRecId不能为空"); + MedicalRec medicalRec = medicalRecService.getById(medicalRecId); + Assert.notNull(medicalRec, "未找到该病历"); + + return medicalRecService.lambdaUpdate().eq(MedicalRec::getId, medicalRecId).set(MedicalRec::getStatus, status).update(); + + } } diff --git a/virtual-patient-model/src/main/java/com/supervision/mapper/MedicalRecMapper.java b/virtual-patient-model/src/main/java/com/supervision/mapper/MedicalRecMapper.java index b7be1907..71d83e19 100644 --- a/virtual-patient-model/src/main/java/com/supervision/mapper/MedicalRecMapper.java +++ b/virtual-patient-model/src/main/java/com/supervision/mapper/MedicalRecMapper.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.supervision.model.MedicalRec; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.supervision.vo.manage.MedicalRecPageReqVO; import com.supervision.vo.manage.MedicalRecPageResVO; import org.apache.ibatis.annotations.Param; @@ -17,17 +18,13 @@ public interface MedicalRecMapper extends BaseMapper { /** * 后台管理-病历管理-列表查询 - * - * @param selfDescKeyword 主诉 - * @param gender 性别 - * @param diseaseId 疾病ID - * @param page 分页 - * @return 结果 + * @param medicalRecPageReqVO 查询参数 + * @param page 分页参数 + * @return */ - IPage queryMedicalRecManagePage(@Param("selfDescKeyword") String selfDescKeyword, - @Param("gender") String gender,@Param("patientName") String patientName, - @Param("diseaseId") String diseaseId, @Param("page") Page page); + IPage queryMedicalRecManagePage(@Param("medicalRecPageReqVO") MedicalRecPageReqVO medicalRecPageReqVO, + @Param("page") Page page); /** * 生成一个病历编码,是最大的病历编码+1 * @param code 医院名称缩写 diff --git a/virtual-patient-model/src/main/java/com/supervision/service/MedicalRecService.java b/virtual-patient-model/src/main/java/com/supervision/service/MedicalRecService.java index 8b415c9c..14ff6e35 100644 --- a/virtual-patient-model/src/main/java/com/supervision/service/MedicalRecService.java +++ b/virtual-patient-model/src/main/java/com/supervision/service/MedicalRecService.java @@ -1,9 +1,9 @@ package com.supervision.service; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.supervision.model.AskPatientAnswer; import com.supervision.model.MedicalRec; import com.baomidou.mybatisplus.extension.service.IService; +import com.supervision.vo.manage.MedicalRecPageReqVO; import com.supervision.vo.manage.MedicalRecPageResVO; /** @@ -14,13 +14,13 @@ import com.supervision.vo.manage.MedicalRecPageResVO; public interface MedicalRecService extends IService { /** - * 后台管理-病历管理-列表查询 - * @param selfDescKeyword 主诉 - * @param gender 性别 - * @param diseaseId 疾病ID - * @return 结果 + * 分页查询病历管理列表 + * @param medicalRecPageReqVO + * @param pageNum + * @param pageSize + * @return */ - IPage queryMedicalRecManagePage(String selfDescKeyword, String gender,String patientName, String diseaseId, Integer pageNum, Integer pageSize); + IPage queryMedicalRecManagePage(MedicalRecPageReqVO medicalRecPageReqVO, Integer pageNum, Integer pageSize); /** * 生成一个病历编码,是最大的病历编码+1 diff --git a/virtual-patient-model/src/main/java/com/supervision/service/impl/MedicalRecServiceImpl.java b/virtual-patient-model/src/main/java/com/supervision/service/impl/MedicalRecServiceImpl.java index 0c2e0b08..cd129e69 100644 --- a/virtual-patient-model/src/main/java/com/supervision/service/impl/MedicalRecServiceImpl.java +++ b/virtual-patient-model/src/main/java/com/supervision/service/impl/MedicalRecServiceImpl.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.supervision.model.MedicalRec; import com.supervision.service.MedicalRecService; import com.supervision.mapper.MedicalRecMapper; +import com.supervision.vo.manage.MedicalRecPageReqVO; import com.supervision.vo.manage.MedicalRecPageResVO; import org.springframework.stereotype.Service; @@ -18,16 +19,17 @@ import org.springframework.stereotype.Service; public class MedicalRecServiceImpl extends ServiceImpl implements MedicalRecService{ + /** - * 后台管理-病历管理-列表查询 - * @param selfDescKeyword 主诉 - * @param gender 性别 - * @param diseaseId 疾病ID - * @return 结果 + * 病历管理-列表查询 + * @param medicalRecPageReqVO + * @param pageNum + * @param pageSize + * @return */ @Override - public IPage queryMedicalRecManagePage(String selfDescKeyword, String gender,String patientName, String diseaseId, Integer pageNum, Integer pageSize) { - return this.baseMapper.queryMedicalRecManagePage(selfDescKeyword, gender, patientName, diseaseId, new Page<>(pageNum,pageSize)); + public IPage queryMedicalRecManagePage(MedicalRecPageReqVO medicalRecPageReqVO, Integer pageNum, Integer pageSize) { + return this.baseMapper.queryMedicalRecManagePage(medicalRecPageReqVO, new Page<>(pageNum,pageSize)); } /** diff --git a/virtual-patient-model/src/main/java/com/supervision/vo/manage/MedicalRecPageReqVO.java b/virtual-patient-model/src/main/java/com/supervision/vo/manage/MedicalRecPageReqVO.java new file mode 100644 index 00000000..6bb37672 --- /dev/null +++ b/virtual-patient-model/src/main/java/com/supervision/vo/manage/MedicalRecPageReqVO.java @@ -0,0 +1,17 @@ +package com.supervision.vo.manage; + +import lombok.Data; + +@Data +public class MedicalRecPageReqVO { + + private String selfDescKeyword; + + private String gender; + + private String patientName; + + private String diseaseId; + + private Integer status; +} diff --git a/virtual-patient-model/src/main/java/com/supervision/vo/manage/MedicalRecPageResVO.java b/virtual-patient-model/src/main/java/com/supervision/vo/manage/MedicalRecPageResVO.java index abbbb73b..70468a7c 100644 --- a/virtual-patient-model/src/main/java/com/supervision/vo/manage/MedicalRecPageResVO.java +++ b/virtual-patient-model/src/main/java/com/supervision/vo/manage/MedicalRecPageResVO.java @@ -30,5 +30,7 @@ public class MedicalRecPageResVO { */ private String diagnosisPrimaryStr; + @Schema(description = "病历状态 1:未上线 2:上线") + private String status; } diff --git a/virtual-patient-model/src/main/resources/mapper/MedicalRecMapper.xml b/virtual-patient-model/src/main/resources/mapper/MedicalRecMapper.xml index 41b848e3..6b1d17b9 100644 --- a/virtual-patient-model/src/main/resources/mapper/MedicalRecMapper.xml +++ b/virtual-patient-model/src/main/resources/mapper/MedicalRecMapper.xml @@ -68,21 +68,25 @@ t1.patient_gender as gender, t1.patient_head_pic as patientHeadPic, t1.patient_self_desc as patientSelfDesc, + t1.status as status, if(t1.update_time is null, t1.create_time, t1.update_time) as time from vp_medical_rec t1 left join vp_disease t3 on t1.disease_id = t3.id - - AND t1.patient_self_desc like concat("%",#{selfDescKeyword}, "%") + + AND t1.patient_self_desc like concat("%",#{medicalRecPageReqVO.selfDescKeyword}, "%") - - AND t1.patient_gender = #{gender} + + AND t1.patient_gender = #{medicalRecPageReqVO.gender} - - AND t1.disease_id = #{diseaseId} + + AND t1.disease_id = #{medicalRecPageReqVO.diseaseId} - - AND t1.patient_name like concat("%",#{patientName}, "%") + + AND t1.patient_name like concat("%",#{medicalRecPageReqVO.patientName}, "%") + + + AND t1.status = #{medicalRecPageReqVO.status} order by time desc diff --git a/virtual-patient-web/src/main/java/com/supervision/service/impl/DiagnoseHallServiceImpl.java b/virtual-patient-web/src/main/java/com/supervision/service/impl/DiagnoseHallServiceImpl.java index 86a90ea2..37dfe368 100644 --- a/virtual-patient-web/src/main/java/com/supervision/service/impl/DiagnoseHallServiceImpl.java +++ b/virtual-patient-web/src/main/java/com/supervision/service/impl/DiagnoseHallServiceImpl.java @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.supervision.model.*; import com.supervision.service.*; import com.supervision.vo.ask.DiagnosisPrimaryVO; +import com.supervision.vo.manage.MedicalRecPageReqVO; import com.supervision.vo.manage.MedicalRecPageResVO; import com.supervision.vo.result.DiagnoseProcessReqVo; import com.supervision.vo.result.DiagnoseProcessResVo; @@ -74,8 +75,9 @@ public class DiagnoseHallServiceImpl implements DiagnoseHallService { @Override public IPage queryMedicalRecPageList(Integer pageNum, Integer pageSize) { - - IPage medicalRecPageResVOIPage = medicalRecService.queryMedicalRecManagePage(null, null, null,null, pageNum, pageSize); + MedicalRecPageReqVO medicalRecPageReqVO = new MedicalRecPageReqVO(); + medicalRecPageReqVO.setStatus(2);// 设置为已发布的数据 + IPage medicalRecPageResVOIPage = medicalRecService.queryMedicalRecManagePage(medicalRecPageReqVO, pageNum, pageSize); if (CollUtil.isEmpty(medicalRecPageResVOIPage.getRecords())){ return medicalRecPageResVOIPage; }