Merge remote-tracking branch 'origin/dev_2.1.0' into dev_2.1.0

dev_2.1.0
xueqingkun 1 year ago
commit 95d01d0aeb

@ -1,13 +1,14 @@
package com.supervision.manage.controller.config; package com.supervision.manage.controller.config;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.supervision.manage.pojo.vo.PhysicalToolReqVO;
import com.supervision.manage.service.PhysicalToolManageService; import com.supervision.manage.service.PhysicalToolManageService;
import com.supervision.model.ConfigPhysicalTool;
import com.supervision.vo.ask.ConfigPhysicalToolResVO; import com.supervision.vo.ask.ConfigPhysicalToolResVO;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List; import java.util.List;
@ -26,4 +27,17 @@ public class PhysicalToolManageController {
return physicalToolManageService.queryPhysicalToolList(); return physicalToolManageService.queryPhysicalToolList();
} }
@ApiOperation("体格检查分页查询")
@GetMapping("queryPhysicalPage")
public IPage<ConfigPhysicalTool> queryConfigPhysicalToolPage(String toolName, String type, Integer requireLocation,
Integer pageNum, Integer pageSize) {
return physicalToolManageService.queryConfigPhysicalToolPage(toolName, type, requireLocation, pageNum, pageSize);
}
@ApiOperation("保存体格工具")
@PostMapping("saveConfigPhysicalTool")
public void saveConfigPhysicalTool(@RequestBody PhysicalToolReqVO physicalToolReqVO){
physicalToolManageService.saveConfigPhysicalTool(physicalToolReqVO);
}
} }

@ -16,9 +16,6 @@ import java.util.List;
@ApiModel(value = "病历管理创建及新建", parent = MedicalRec.class) @ApiModel(value = "病历管理创建及新建", parent = MedicalRec.class)
public class MedicalRecManageVO extends MedicalRec { public class MedicalRecManageVO extends MedicalRec {
@ApiModelProperty("step:1 基础信息")
private Patient patient;
@NotBlank(message = "疾病不能为空") @NotBlank(message = "疾病不能为空")
@ApiModelProperty("step:1 疾病ID") @ApiModelProperty("step:1 疾病ID")
private String diseaseId; private String diseaseId;

@ -0,0 +1,20 @@
package com.supervision.manage.pojo.vo;
import com.supervision.model.ConfigPhysicalTool;
import com.supervision.model.DefaultPhysicalIndicator;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.List;
@EqualsAndHashCode(callSuper = true)
@Data
@ApiModel(parent = ConfigPhysicalTool.class)
public class PhysicalToolReqVO extends ConfigPhysicalTool {
private List<DefaultPhysicalIndicator> defaultPhysicalIndicatorList;
}

@ -1,10 +1,18 @@
package com.supervision.manage.service; package com.supervision.manage.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.supervision.manage.pojo.vo.PhysicalToolReqVO;
import com.supervision.model.ConfigPhysicalTool;
import com.supervision.vo.ask.ConfigPhysicalToolResVO; import com.supervision.vo.ask.ConfigPhysicalToolResVO;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List; import java.util.List;
public interface PhysicalToolManageService { public interface PhysicalToolManageService {
List<ConfigPhysicalToolResVO> queryPhysicalToolList(); List<ConfigPhysicalToolResVO> queryPhysicalToolList();
IPage<ConfigPhysicalTool> queryConfigPhysicalToolPage(String toolName, String type, Integer requireLocation, Integer pageNum, Integer pageSize);
void saveConfigPhysicalTool(PhysicalToolReqVO physicalToolReqVO);
} }

@ -73,16 +73,13 @@ public class MedicalRecManageServiceImpl implements MedicalRecManageService {
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void createMedicalRec(MedicalRecManageVO reqVO) { public void createMedicalRec(MedicalRecManageVO reqVO) {
// 首先新增病人
Patient patient = reqVO.getPatient();
patient.insert();
// 然后保存病历 // 然后保存病历
MedicalRec medicalRec = BeanUtil.toBean(reqVO, MedicalRec.class); MedicalRec medicalRec = BeanUtil.toBean(reqVO, MedicalRec.class);
medicalRec.setPatientId(patient.getId());
medicalRec.setDiseaseId(reqVO.getDiseaseId()); medicalRec.setDiseaseId(reqVO.getDiseaseId());
medicalRec.insert(); medicalRec.insert();
// 这里生成一个新的编号(首先去数据库里面查询编号,然后用最大的编号+1)(可能存在并发修改导致编码重复问题,不是重点,等有问题再说) // 这里生成一个新的编号(首先去数据库里面查询编号,然后用最大的编号+1)(可能存在并发修改导致编码重复问题,不是重点,等有问题再说)
medicalRecService.updateMedicalRecNo("QL", "男".equals(patient.getGender()) ? "M" : "F", medicalRec.getId()); medicalRecService.updateMedicalRecNo("QL", "男".equals(reqVO.getPatientGender()) ? "M" : "F", medicalRec.getId());
// 然后保存病历对应的问题 // 然后保存病历对应的问题
List<MedicalRecQaVO> qaList = reqVO.getQaList(); List<MedicalRecQaVO> qaList = reqVO.getQaList();
for (MedicalRecQaVO medicalRecQaVO : qaList) { for (MedicalRecQaVO medicalRecQaVO : qaList) {
@ -149,12 +146,6 @@ public class MedicalRecManageServiceImpl implements MedicalRecManageService {
@Override @Override
public void modifyMedicalRec(MedicalRecManageVO reqVO) { public void modifyMedicalRec(MedicalRecManageVO reqVO) {
// 首先修改病人
Patient patient = reqVO.getPatient();
if (StrUtil.isBlank(patient.getId())){
throw new BusinessException("病人ID不能为空");
}
patient.updateById();
// 病历不允许修改 // 病历不允许修改
MedicalRec medicalRec = Optional.ofNullable(medicalRecService.getById(reqVO.getId())).orElseThrow(() -> new BusinessException("未找到病历信息")); MedicalRec medicalRec = Optional.ofNullable(medicalRecService.getById(reqVO.getId())).orElseThrow(() -> new BusinessException("未找到病历信息"));
if (!StrUtil.equals(medicalRec.getDiseaseId(), reqVO.getDiseaseId())) { if (!StrUtil.equals(medicalRec.getDiseaseId(), reqVO.getDiseaseId())) {
@ -193,8 +184,6 @@ public class MedicalRecManageServiceImpl implements MedicalRecManageService {
MedicalRec medicalRec = Optional.ofNullable(medicalRecService.getById(id)).orElseThrow(() -> new BusinessException("未找到病历")); MedicalRec medicalRec = Optional.ofNullable(medicalRecService.getById(id)).orElseThrow(() -> new BusinessException("未找到病历"));
MedicalRecInfoVO medicalRecInfoVO = BeanUtil.toBean(medicalRec, MedicalRecInfoVO.class); MedicalRecInfoVO medicalRecInfoVO = BeanUtil.toBean(medicalRec, MedicalRecInfoVO.class);
medicalRecInfoVO.setDiseaseName(diseaseService.getById(medicalRec.getDiseaseId()).getDiseaseName()); medicalRecInfoVO.setDiseaseName(diseaseService.getById(medicalRec.getDiseaseId()).getDiseaseName());
// 病人基本信息
medicalRecInfoVO.setPatient(patientService.getById(medicalRec.getPatientId()));
// 辅助检查 // 辅助检查
medicalRecInfoVO.setAncillaryList(diseaseAncillaryManageService.queryListByDiseaseId(medicalRec.getDiseaseId())); medicalRecInfoVO.setAncillaryList(diseaseAncillaryManageService.queryListByDiseaseId(medicalRec.getDiseaseId()));
// 体格检查 // 体格检查

@ -1,6 +1,12 @@
package com.supervision.manage.service.impl; package com.supervision.manage.service.impl;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.supervision.manage.pojo.vo.PhysicalToolReqVO;
import com.supervision.manage.service.PhysicalToolManageService; import com.supervision.manage.service.PhysicalToolManageService;
import com.supervision.model.ConfigPhysicalTool;
import com.supervision.service.ConfigPhysicalToolService; import com.supervision.service.ConfigPhysicalToolService;
import com.supervision.vo.ask.ConfigPhysicalToolResVO; import com.supervision.vo.ask.ConfigPhysicalToolResVO;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
@ -15,8 +21,24 @@ import java.util.List;
public class PhysicalToolManageServiceImpl implements PhysicalToolManageService { public class PhysicalToolManageServiceImpl implements PhysicalToolManageService {
private final ConfigPhysicalToolService configPhysicalToolService; private final ConfigPhysicalToolService configPhysicalToolService;
@Override @Override
public List<ConfigPhysicalToolResVO> queryPhysicalToolList() { public List<ConfigPhysicalToolResVO> queryPhysicalToolList() {
return configPhysicalToolService.queryPhysicalToolList(); return configPhysicalToolService.queryPhysicalToolList();
} }
@Override
public IPage<ConfigPhysicalTool> queryConfigPhysicalToolPage(String toolName, String type, Integer requireLocation,
Integer pageNum, Integer pageSize) {
return configPhysicalToolService.lambdaQuery().like(StrUtil.isNotBlank(toolName),ConfigPhysicalTool::getToolName,toolName)
.eq(StrUtil.isNotBlank(type),ConfigPhysicalTool::getType,type)
.eq(ObjectUtil.isNotEmpty(requireLocation),ConfigPhysicalTool::getRequireLocation,requireLocation)
.page(new Page<>(pageNum,pageSize));
}
@Override
public void saveConfigPhysicalTool(PhysicalToolReqVO physicalToolReqVO) {
}
} }

@ -36,7 +36,7 @@ public class MedicalRec extends Model<MedicalRec> implements Serializable {
private String patientName; private String patientName;
/** /**
* 0: 1: * /
*/ */
private String patientGender; private String patientGender;

@ -8,7 +8,6 @@ import java.time.LocalDateTime;
public class MedicalRecPageResVO { public class MedicalRecPageResVO {
private String medicalId; private String medicalId;
private String patientId;
private String no; private String no;
private String name; private String name;
private Integer age; private Integer age;

@ -56,25 +56,22 @@
<select id="queryMedicalRecManagePage" resultType="com.supervision.vo.manage.MedicalRecPageResVO"> <select id="queryMedicalRecManagePage" resultType="com.supervision.vo.manage.MedicalRecPageResVO">
select select
t1.id as medicalId, t1.id as medicalId,
t2.id as patientId,
t3.disease_name as diagnosisPrimaryStr, t3.disease_name as diagnosisPrimaryStr,
t1.no as no, t1.no as no,
t1.patient_id as patientId, t1.patient_id as patientId,
t1.patient_name as name, t1.patient_name as name,
t1.patient_age as age, t1.patient_age as age,
t1.patient_gender as gender, t1.patient_gender as gender,
t2.resource_id as resourceId,
t1.patient_self_desc as patientSelfDesc, t1.patient_self_desc as patientSelfDesc,
if(t1.update_time is null, t1.create_time, t1.update_time) as time if(t1.update_time is null, t1.create_time, t1.update_time) as time
from vp_medical_rec t1 from vp_medical_rec t1
left join vp_patient t2 on t1.patient_id = t2.id
left join vp_disease t3 on t1.disease_id = t3.id left join vp_disease t3 on t1.disease_id = t3.id
<where> <where>
<if test="selfDescKeyword != null and selfDescKeyword != ''"> <if test="selfDescKeyword != null and selfDescKeyword != ''">
AND t1.patient_self_desc like concat("%",#{selfDescKeyword}, "%") AND t1.patient_self_desc like concat("%",#{selfDescKeyword}, "%")
</if> </if>
<if test="gender != null and gender != ''"> <if test="gender != null and gender != ''">
AND t2.gender = #{gender} AND t1.patient_gender = #{gender}
</if> </if>
<if test="diseaseId != null and diseaseId != ''"> <if test="diseaseId != null and diseaseId != ''">
AND t1.disease_id = #{diseaseId} AND t1.disease_id = #{diseaseId}

@ -62,6 +62,7 @@ public class AskPrimaryServiceImpl implements AskPrimaryService {
@Override @Override
public List<Disease> queryPrimaryCanChooseList() { public List<Disease> queryPrimaryCanChooseList() {
// 初步诊断列表可选的疾病为单一疾病
return diseaseService.lambdaQuery().eq(Disease::getDiseaseType, 0).list(); return diseaseService.lambdaQuery().eq(Disease::getDiseaseType, 0).list();
} }

Loading…
Cancel
Save