修改BUG

This commit is contained in:
lxd 2025-04-06 11:16:53 +08:00
parent 34593a58b3
commit 4eb0cc0bc2
3 changed files with 67 additions and 8 deletions

View File

@ -374,6 +374,12 @@ public class InspectPatientController {
@Operation(summary = "通过体检编号绑定检查项目信息")
public CommonResult<Boolean> createPatientitem(@RequestParam("medicalSn") String medicalSn)
{
//如果这个患者存在患者项目数据则不进行插入
boolean exists = patientitemsService.existsByMedicalSn(medicalSn);
if(exists)
{
return success(true);
}
//检查项目
List<InspectPatientitemsSaveReqVO> dataList2 = new ArrayList<>();
//检查套餐信息
@ -980,14 +986,54 @@ public class InspectPatientController {
}
InspectPatientitemsSaveReqVO inspectPatientitemsSaveReqVO = new InspectPatientitemsSaveReqVO();
//单独判断收缩压和舒张压 分左右手
if (dataMap.get("bplshrink") != null && dataMap.get("bpldiastole") != null) {
inspectPatientitemsSaveReqVO.setMedicalSn(medicalSn);
inspectPatientitemsSaveReqVO.setItemCode("XY001");
inspectPatientitemsSaveReqVO.setItemResult(dataMap.get("bplshrink") + "/" + dataMap.get("bpldiastole"));
} else {
inspectPatientitemsSaveReqVO.setMedicalSn(medicalSn);
inspectPatientitemsSaveReqVO.setItemCode("XY001");
inspectPatientitemsSaveReqVO.setItemResult(dataMap.get("bprshrink") + "/" + dataMap.get("bprdiastole"));
if (dataMap.containsKey("bplshrink") && dataMap.containsKey("bpldiastole")) {
Object bplshrinkObj = dataMap.get("bplshrink");
Object bpldiastoleObj = dataMap.get("bpldiastole");
double bplshrink = 0;
double bpldiastole = 0;
// 处理 bplshrink
if (bplshrinkObj instanceof Number) {
bplshrink = ((Number) bplshrinkObj).doubleValue();
} else if (bplshrinkObj instanceof String) {
String bplshrinkStr = (String) bplshrinkObj;
if (!bplshrinkStr.isEmpty() && !bplshrinkStr.equals("0")) {
try {
bplshrink = Double.parseDouble(bplshrinkStr);
} catch (NumberFormatException e) {
// 处理解析错误
bplshrink = 0;
}
}
}
// 处理 bpldiastole
if (bpldiastoleObj instanceof Number) {
bpldiastole = ((Number) bpldiastoleObj).doubleValue();
} else if (bpldiastoleObj instanceof String) {
String bpldiastoleStr = (String) bpldiastoleObj;
if (!bpldiastoleStr.isEmpty() && !bpldiastoleStr.equals("0")) {
try {
bpldiastole = Double.parseDouble(bpldiastoleStr);
} catch (NumberFormatException e) {
// 处理解析错误
bpldiastole = 0;
}
}
}
if (bplshrink != 0 && bpldiastole != 0) {
inspectPatientitemsSaveReqVO.setMedicalSn(medicalSn);
inspectPatientitemsSaveReqVO.setItemCode("XY001");
inspectPatientitemsSaveReqVO.setItemResult(bplshrink + "/" + bpldiastole);
} else {
// 处理收缩压和舒张压分左右手的情况
inspectPatientitemsSaveReqVO.setMedicalSn(medicalSn);
inspectPatientitemsSaveReqVO.setItemCode("XY001");
inspectPatientitemsSaveReqVO.setItemResult(dataMap.get("bprshrink") + "/" + dataMap.get("bprdiastole"));
}
}
list.add(inspectPatientitemsSaveReqVO);
patientitemsService.updatePatientitemInfo(list);

View File

@ -29,6 +29,11 @@ public interface InspectPatientitemsService {
* 批量创建患者体检项目
* */
boolean createPatientListitems(List<InspectPatientitemsSaveReqVO> listcreateReqVO);
/*
* 判断患者的项目是否存在
* */
boolean existsByMedicalSn(String medicalSn);
/*
*
* 根据体检编号和项目代号批量更新数据

View File

@ -59,6 +59,14 @@ public class InspectPatientitemsServiceImpl implements InspectPatientitemsServic
boolean bol= patientitemsMapper.insertBatch(patientlistitems);
return bol;
}
@Override
public boolean existsByMedicalSn(String medicalSn) {
LambdaQueryWrapper<InspectPatientitemsDO> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(InspectPatientitemsDO::getMedicalSn, medicalSn);
return patientitemsMapper.selectCount(queryWrapper) > 0;
}
@Override
public Integer updatePatientitemInfo(List<InspectPatientitemsSaveReqVO> updateReqVO)
{