新增获取一般检查项目接口

This commit is contained in:
lxd 2025-03-13 17:16:35 +08:00
parent 2ffbbffe85
commit a42dcf108e
3 changed files with 101 additions and 1 deletions

View File

@ -418,6 +418,7 @@ public class InspectPatientController {
Map<String, Object> dataMap = (Map<String, Object>) responseMap.get("data");
if(dataMap!=null &&dataMap.get("pdfurl")!=null)
{
// 获取 pdfurl pname
String pdfurl = (String) dataMap.get("pdfurl");
String pname = (String) dataMap.get("pname");
@ -445,7 +446,86 @@ public class InspectPatientController {
patientService.updatePatient(updateReqVO);
return success(true);
}
@PutMapping("/GetApiYbjcInfo")
@Operation(summary = "同步一般检查结果项")
public CommonResult<Boolean> GetApiYbjcInfo(@RequestParam("medicalSn") String medicalSn,@RequestParam("cardId") String cardId)
{
ConfigDO config = configService.getConfigByKey("url.ybjc");
String url = config.getValue();
String response = HttpUtils.get(url+"?"+"idCard="+medicalSn);
if(response!=null)
{
// 解析 JSON 响应
ObjectMapper objectMapper = new ObjectMapper();
try {
Map<String, Object> responseMap = objectMapper.readValue(response, Map.class);
Map<String, Object> dataMap = (Map<String, Object>) responseMap.get("data");
if(dataMap!=null &&dataMap.get("healthexaminid")!=null)
{
List<InspectPatientitemsSaveReqVO> list = new ArrayList<>();
for (Map.Entry<String, Object> entry : dataMap.entrySet()) {
String key = entry.getKey();
Object value = entry.getValue();
InspectPatientitemsSaveReqVO inspectPatientitemsSaveReqVO = new InspectPatientitemsSaveReqVO();
inspectPatientitemsSaveReqVO.setMedicalSn(medicalSn);
switch (key)
{
case "temperature":
inspectPatientitemsSaveReqVO.setItemCode("TW001");
inspectPatientitemsSaveReqVO.setItemResult(value.toString());
break;
case "pulserate":
inspectPatientitemsSaveReqVO.setItemCode("ML001");
inspectPatientitemsSaveReqVO.setItemResult(value.toString());
break;
case "breathingrate":
inspectPatientitemsSaveReqVO.setItemCode("HXPL001");
inspectPatientitemsSaveReqVO.setItemResult(value.toString());
break;
case "stature":
inspectPatientitemsSaveReqVO.setItemCode("SH001");
inspectPatientitemsSaveReqVO.setItemResult(value.toString());
break;
case "weight":
inspectPatientitemsSaveReqVO.setItemCode("TZ001");
inspectPatientitemsSaveReqVO.setItemResult(value.toString());
break;
case "waistline":
inspectPatientitemsSaveReqVO.setItemCode("yw001");
inspectPatientitemsSaveReqVO.setItemResult(value.toString());
break;
case "bmi":
inspectPatientitemsSaveReqVO.setItemCode("BMI001");
inspectPatientitemsSaveReqVO.setItemResult(value.toString());
break;
}
list.add(inspectPatientitemsSaveReqVO);
}
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"));
}
list.add(inspectPatientitemsSaveReqVO);
patientitemsService.updatePatientitemInfo(list);
}
} catch (IOException e) {
e.printStackTrace();
return success(false);
}
}
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除患者信息")
@Parameter(name = "id", description = "编号", required = true)

View File

@ -29,6 +29,12 @@ public interface InspectPatientitemsService {
* 批量创建患者体检项目
* */
boolean createPatientListitems(List<InspectPatientitemsSaveReqVO> listcreateReqVO);
/*
*
* 根据体检编号和项目代号批量更新数据
* */
Integer updatePatientitemInfo(List<InspectPatientitemsSaveReqVO> updateReqVO);
/*
* 批量更新患者体检项目
* */

View File

@ -7,7 +7,6 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
@ -56,6 +55,21 @@ public class InspectPatientitemsServiceImpl implements InspectPatientitemsServic
return bol;
}
@Override
public Integer updatePatientitemInfo(List<InspectPatientitemsSaveReqVO> updateReqVO)
{
for (InspectPatientitemsSaveReqVO saveReqVO:updateReqVO)
{
LambdaUpdateWrapper<InspectPatientitemsDO> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.eq(InspectPatientitemsDO::getItemResult, saveReqVO.getItemResult())
.set(InspectPatientitemsDO::getMedicalSn, saveReqVO.getMedicalSn())
.set(InspectPatientitemsDO::getItemCode, saveReqVO.getItemCode());
patientitemsMapper.update(null, updateWrapper);
}
return updateReqVO.size();
}
@Override
public boolean updateListPatientitems(List<InspectPatientitemsSaveReqVO> listcreateReqVO)
{
List<InspectPatientitemsDO> patientlistitems = BeanUtils.toBean(listcreateReqVO, InspectPatientitemsDO.class);