1: 修改 新建病历基本信息 接口

dev_3.1.0
xueqingkun 10 months ago
parent ca00599ae5
commit d6a9509294

@ -24,4 +24,7 @@ public interface DiseaseAncillaryManageService {
List<ConfigAncillaryItemResVO> queryAncillaryItemList(AncillaryItemReqVo ancillaryItemReqVo); List<ConfigAncillaryItemResVO> queryAncillaryItemList(AncillaryItemReqVo ancillaryItemReqVo);
List<DiseaseAncillary> queryRowsByDiseaseId(String diseaseId);
} }

@ -19,4 +19,6 @@ public interface DiseasePhysicalManageService {
boolean deleteByDiseaseId(String diseaseId); boolean deleteByDiseaseId(String diseaseId);
List<DiseasePhysicalLocationNodeVo> queryTree(String diseaseId, String toolId); List<DiseasePhysicalLocationNodeVo> queryTree(String diseaseId, String toolId);
List<DiseasePhysical> queryRowsByDiseaseId(String diseaseId);
} }

@ -1,6 +1,7 @@
package com.supervision.manage.service; package com.supervision.manage.service;
import com.supervision.model.DiseaseTreatmentPlan; import com.supervision.model.DiseaseTreatmentPlan;
import com.supervision.model.DiseaseTreatmentPlanDrug;
import com.supervision.vo.manage.DiseaseTreatmentPlanReqVo; import com.supervision.vo.manage.DiseaseTreatmentPlanReqVo;
import com.supervision.vo.manage.DiseaseTreatmentPlanResVo; import com.supervision.vo.manage.DiseaseTreatmentPlanResVo;
import com.supervision.vo.manage.DiseaseTreatmentPlanTreeNode; import com.supervision.vo.manage.DiseaseTreatmentPlanTreeNode;
@ -22,4 +23,7 @@ public interface DiseaseTreatmentPlanManageService {
List<DiseaseTreatmentPlanTreeNode> queryDiseaseTreatmentPlanTree(Integer disposalMethod, String diseaseId); List<DiseaseTreatmentPlanTreeNode> queryDiseaseTreatmentPlanTree(Integer disposalMethod, String diseaseId);
boolean updateDiseaseTreatmentPlan(DiseaseTreatmentPlanReqVo diseaseTreatmentPlan); boolean updateDiseaseTreatmentPlan(DiseaseTreatmentPlanReqVo diseaseTreatmentPlan);
List<DiseaseTreatmentPlan> queryRowsByDiseaseId(String diseaseId);
List<DiseaseTreatmentPlanDrug> queryDrugRowsByDiseaseId(String diseaseId);
} }

@ -0,0 +1,12 @@
package com.supervision.manage.service;
import com.supervision.model.MedicalRecAncillary;
import java.util.List;
public interface MedicalRecAncillaryManageService {
void saveAncillary(List<MedicalRecAncillary> medicalRecAncillaryList);
}

@ -0,0 +1,10 @@
package com.supervision.manage.service;
import com.supervision.model.MedicalRecPhysical;
import java.util.List;
public interface MedicalRecPhysicalManageService {
void savePhysical(List<MedicalRecPhysical> medicalRecPhysicalList);
}

@ -0,0 +1,16 @@
package com.supervision.manage.service;
import com.supervision.model.MedicalRecTreatmentPlan;
import com.supervision.model.MedicalRecTreatmentPlanDrug;
import java.util.List;
public interface MedicalRecTreatmentPlanManageService {
void saveTreatmentPlan(List<MedicalRecTreatmentPlan> medicalRecTreatmentPlanList);
void saveTreatmentPlanDrug(List<MedicalRecTreatmentPlanDrug> medicalRecTreatmentPlanDrugList);
void saveTreatmentPlan(MedicalRecTreatmentPlan medicalRecTreatmentPlan , List<MedicalRecTreatmentPlanDrug> treatmentPlanDrugList);
}

@ -97,6 +97,12 @@ public class DiseaseAncillaryManageServiceImpl implements DiseaseAncillaryManage
return configAncillaryItemResVOS; return configAncillaryItemResVOS;
} }
@Override
public List<DiseaseAncillary> queryRowsByDiseaseId(String diseaseId) {
Assert.notEmpty(diseaseId,"疾病id不能为空");
return diseaseAncillaryService.lambdaQuery().eq(DiseaseAncillary::getDiseaseId,diseaseId).list();
}
private void assertDiseaseAncillary(DiseaseAncillary diseaseAncillary){ private void assertDiseaseAncillary(DiseaseAncillary diseaseAncillary){

@ -139,6 +139,12 @@ public class DiseasePhysicalManageServiceImpl implements DiseasePhysicalManageSe
return bean.getChild(); return bean.getChild();
} }
@Override
public List<DiseasePhysical> queryRowsByDiseaseId(String diseaseId) {
Assert.notEmpty(diseaseId,"疾病id不能为空");
return diseasePhysicalService.lambdaQuery().eq(DiseasePhysical::getDiseaseId,diseaseId).list();
}
private void assertDiseasePhysical(DiseasePhysical diseasePhysical){ private void assertDiseasePhysical(DiseasePhysical diseasePhysical){
Assert.isTrue(StrUtil.isNotEmpty(diseasePhysical.getDiseaseId()),"疾病id不能为空"); Assert.isTrue(StrUtil.isNotEmpty(diseasePhysical.getDiseaseId()),"疾病id不能为空");

@ -210,6 +210,18 @@ public class DiseaseTreatmentPlanManageServiceImpl implements DiseaseTreatmentPl
return true; return true;
} }
@Override
public List<DiseaseTreatmentPlan> queryRowsByDiseaseId(String diseaseId) {
Assert.notEmpty(diseaseId,"疾病id不能为空");
return diseaseTreatmentPlanService.lambdaQuery().eq(DiseaseTreatmentPlan::getDiseaseId,diseaseId).list();
}
@Override
public List<DiseaseTreatmentPlanDrug> queryDrugRowsByDiseaseId(String diseaseId) {
Assert.notEmpty(diseaseId,"疾病id不能为空");
return diseaseTreatmentPlanDrugService.lambdaQuery().eq(DiseaseTreatmentPlanDrug::getDiseaseId,diseaseId).list();
}
private void assertDiseaseTreatmentPlan(DiseaseTreatmentPlan diseaseTreatmentPlan){ private void assertDiseaseTreatmentPlan(DiseaseTreatmentPlan diseaseTreatmentPlan){

@ -0,0 +1,27 @@
package com.supervision.manage.service.impl;
import cn.hutool.core.collection.CollUtil;
import com.supervision.manage.service.MedicalRecAncillaryManageService;
import com.supervision.model.MedicalRecAncillary;
import com.supervision.service.MedicalRecAncillaryService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import java.util.List;
@Slf4j
@Service
@RequiredArgsConstructor
public class MedicalRecAncillaryManageServiceImpl implements MedicalRecAncillaryManageService {
private final MedicalRecAncillaryService medicalRecAncillaryService;
@Override
public void saveAncillary(List<MedicalRecAncillary> medicalRecAncillaryList) {
if (CollUtil.isEmpty(medicalRecAncillaryList)){
return;
}
medicalRecAncillaryService.saveBatch(medicalRecAncillaryList);
}
}

@ -66,6 +66,12 @@ public class MedicalRecManageServiceImpl implements MedicalRecManageService {
private final MedicalExtendItemService medicalExtendItemService; private final MedicalExtendItemService medicalExtendItemService;
private final MedicalRecPhysicalManageService medicalRecPhysicalManageService;
private final MedicalRecAncillaryManageService medicalRecAncillaryManageService;
private final MedicalRecTreatmentPlanManageService medicalRecTreatmentPlanManageService;
public List<Disease> queryDiseaseListByDropList() { public List<Disease> queryDiseaseListByDropList() {
return diseaseService.lambdaQuery().list(); return diseaseService.lambdaQuery().list();
} }
@ -430,6 +436,51 @@ public class MedicalRecManageServiceImpl implements MedicalRecManageService {
medicalRec.insert(); medicalRec.insert();
// 这里生成一个新的编号(首先去数据库里面查询编号,然后用最大的编号+1)(可能存在并发修改导致编码重复问题,不是重点,等有问题再说) // 这里生成一个新的编号(首先去数据库里面查询编号,然后用最大的编号+1)(可能存在并发修改导致编码重复问题,不是重点,等有问题再说)
medicalRecService.updateMedicalRecNo("QL", "男".equals(reqVO.getPatientGender()) ? "M" : "F", medicalRec.getId()); medicalRecService.updateMedicalRecNo("QL", "男".equals(reqVO.getPatientGender()) ? "M" : "F", medicalRec.getId());
// 初始化体格检查关联信息
List<DiseasePhysical> diseasePhysicals = diseasePhysicalManageService.queryRowsByDiseaseId(reqVO.getDiseaseId());
List<MedicalRecPhysical> medicalRecPhysicals = diseasePhysicals.stream().map(diseasePhysical -> {
diseasePhysical.setId(null);
MedicalRecPhysical bean = BeanUtil.toBean(diseasePhysical, MedicalRecPhysical.class);
bean.setMedicalRecId(medicalRec.getId());
return bean;
}).toList();
// 保存体格检查关联信息
medicalRecPhysicalManageService.savePhysical(medicalRecPhysicals);
// 初始化辅助检查关联信息
List<DiseaseAncillary> diseaseAncillaries = diseaseAncillaryManageService.queryRowsByDiseaseId(reqVO.getDiseaseId());
List<MedicalRecAncillary> medicalRecAncillaries = diseaseAncillaries.stream().map(diseaseAncillary -> {
diseaseAncillary.setId(null);
MedicalRecAncillary bean = BeanUtil.toBean(diseaseAncillary, MedicalRecAncillary.class);
bean.setMedicalRecId(medicalRec.getId());
return bean;
}).toList();
// 保存辅助检查关联信息
medicalRecAncillaryManageService.saveAncillary(medicalRecAncillaries);
// 初始化处置计划关联信息
List<DiseaseTreatmentPlan> diseaseTreatmentPlans = diseaseTreatmentPlanManageService.queryRowsByDiseaseId(reqVO.getDiseaseId());
if (CollUtil.isNotEmpty(diseaseTreatmentPlans)){
List<DiseaseTreatmentPlanDrug> diseaseTreatmentPlanDrugList = diseaseTreatmentPlanManageService.queryDrugRowsByDiseaseId(reqVO.getDiseaseId());
// 对处置计划药品信息进行分组,方便后面批量保存
Map<String, List<MedicalRecTreatmentPlanDrug>> idMapDrug = diseaseTreatmentPlanDrugList.stream().collect(Collectors.groupingBy(DiseaseTreatmentPlanDrug::getDiseaseTreatmentPlanId,
Collectors.mapping(e -> {
e.setId(null);
return BeanUtil.toBean(e, MedicalRecTreatmentPlanDrug.class);
}, Collectors.toList())));
//批量保存处置计划信息
for (DiseaseTreatmentPlan diseaseTreatmentPlan : diseaseTreatmentPlans) {
String id = diseaseTreatmentPlan.getId();
diseaseTreatmentPlan.setId(null);
MedicalRecTreatmentPlan medicalRecTreatmentPlan = BeanUtil.toBean(diseaseTreatmentPlan, MedicalRecTreatmentPlan.class);
medicalRecTreatmentPlan.setMedicalRecId(medicalRec.getId());
medicalRecTreatmentPlanManageService.saveTreatmentPlan(medicalRecTreatmentPlan, idMapDrug.get(id));
}
}
return medicalRec.getId(); return medicalRec.getId();

@ -0,0 +1,26 @@
package com.supervision.manage.service.impl;
import cn.hutool.core.collection.CollUtil;
import com.supervision.manage.service.MedicalRecPhysicalManageService;
import com.supervision.model.MedicalRecPhysical;
import com.supervision.service.MedicalRecPhysicalService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import java.util.List;
@Slf4j
@Service
@RequiredArgsConstructor
public class MedicalRecPhysicalManageServiceImpl implements MedicalRecPhysicalManageService {
private final MedicalRecPhysicalService medicalRecPhysicalService;
@Override
public void savePhysical(List<MedicalRecPhysical> medicalRecPhysicalList) {
if (CollUtil.isEmpty(medicalRecPhysicalList)){
return;
}
medicalRecPhysicalService.saveBatch(medicalRecPhysicalList);
}
}

@ -0,0 +1,59 @@
package com.supervision.manage.service.impl;
import cn.hutool.core.collection.CollUtil;
import com.supervision.manage.service.MedicalRecTreatmentPlanManageService;
import com.supervision.model.MedicalRecTreatmentPlan;
import com.supervision.model.MedicalRecTreatmentPlanDrug;
import com.supervision.service.MedicalRecTreatmentPlanDrugService;
import com.supervision.service.MedicalRecTreatmentPlanService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
@Slf4j
@Service
@RequiredArgsConstructor
public class MedicalRecTreatmentPlanManageServiceImpl implements MedicalRecTreatmentPlanManageService {
private final MedicalRecTreatmentPlanService medicalRecTreatmentPlanService;
private final MedicalRecTreatmentPlanDrugService medicalRecTreatmentPlanDrugService;
@Override
public void saveTreatmentPlan(List<MedicalRecTreatmentPlan> medicalRecTreatmentPlanList) {
if (CollUtil.isEmpty(medicalRecTreatmentPlanList)){
return;
}
medicalRecTreatmentPlanService.saveBatch(medicalRecTreatmentPlanList);
}
@Override
public void saveTreatmentPlanDrug(List<MedicalRecTreatmentPlanDrug> medicalRecTreatmentPlanDrugList) {
if (CollUtil.isEmpty(medicalRecTreatmentPlanDrugList)){
return;
}
medicalRecTreatmentPlanDrugService.saveBatch(medicalRecTreatmentPlanDrugList);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void saveTreatmentPlan(MedicalRecTreatmentPlan medicalRecTreatmentPlan,List<MedicalRecTreatmentPlanDrug> treatmentPlanDrugList) {
medicalRecTreatmentPlanService.save(medicalRecTreatmentPlan);
if (CollUtil.isEmpty(treatmentPlanDrugList)){
return;
}
String id = medicalRecTreatmentPlan.getId();
for (MedicalRecTreatmentPlanDrug planDrug : treatmentPlanDrugList) {
planDrug.setId(null);
planDrug.setMedicalRecId(medicalRecTreatmentPlan.getMedicalRecId());
planDrug.setTreatmentPlanId(medicalRecTreatmentPlan.getTreatmentPlanId());
planDrug.setMedicalRecTreatmentPlanId(id);
}
medicalRecTreatmentPlanDrugService.saveBatch(treatmentPlanDrugList);
}
}
Loading…
Cancel
Save