package com.ltkj.web.controller.his;
|
|
|
import cn.hutool.core.util.RandomUtil;
|
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.json.JSONUtil;
|
import com.alibaba.fastjson.JSONObject;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.ltkj.common.core.controller.BaseController;
|
import com.ltkj.common.core.domain.AjaxResult;
|
import com.ltkj.framework.config.UserHoder;
|
import com.ltkj.hosp.domain.*;
|
import com.ltkj.hosp.hisDto.*;
|
import com.ltkj.hosp.mapper.TestMapper;
|
import com.ltkj.hosp.service.*;
|
import com.ltkj.hosp.sqlDomain.LtkjExamJcbgd;
|
import com.ltkj.hosp.sqlDomain.LtkjExamJcsqd;
|
import com.ltkj.hosp.sqlDomain.LtkjHybgd;
|
import com.ltkj.hosp.sqlDomain.LtkjHysqd;
|
import com.ltkj.hosp.vodomain.CsProVo;
|
import com.ltkj.web.controller.system.SysConfigController;
|
import com.ltkj.web.controller.system.TjCheckController;
|
import io.swagger.annotations.Api;
|
import jodd.util.StringUtil;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.transaction.NoTransactionException;
|
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.interceptor.TransactionAspectSupport;
|
import org.springframework.web.bind.annotation.*;
|
|
import java.text.ParseException;
|
import java.text.SimpleDateFormat;
|
import java.util.*;
|
|
|
@Slf4j
|
@Api(tags = "AAAAA-----HISAPI相关接口文档")
|
@RestController
|
@RequestMapping("/api/His")
|
public class HisApiController extends BaseController {
|
|
@Autowired
|
private TestMapper testMapper;
|
@Autowired
|
private ITjOrderService tjOrderService;
|
@Autowired
|
private TjCheckController tjCheckController;
|
@Autowired
|
private LtkjJianchajianyanTreeService ltkjJianchajianyanTreeService;
|
@Autowired
|
private LtkjExamJcsqdService ltkjExamJcsqdService;
|
@Autowired
|
private LtkjExamJcbgdService ltkjExamJcbgdService;
|
@Autowired
|
private ITjProjectService projectService;
|
@Autowired
|
private ITjOrderRemarkService orderRemarkService;
|
@Autowired
|
private LtkjHysqdService hysqdService;
|
@Autowired
|
private LtkjHybgdService hybgdService;
|
@Autowired
|
private ITjCustomerService tjCustomerService;
|
@Autowired
|
private TjJcycxmService jcycxmService;
|
@Autowired
|
private SysConfigController configController;
|
|
/**
|
* 获取pacs检查数据
|
* @param json
|
* @return
|
*/
|
// @PostMapping("/pacs/getAll")
|
// public AjaxResult getAllList(@RequestBody String json) {
|
// cn.hutool.json.JSONObject parseObj = JSONUtil.parseObj(json);
|
// String tjNum = StrUtil.isBlank(parseObj.getStr("tjNum")) ? null : parseObj.getStr("tjNum");
|
// String name = StrUtil.isBlank(parseObj.getStr("name")) ? null : parseObj.getStr("name");
|
// String start = StrUtil.isBlank(parseObj.getStr("start")) ? null : parseObj.getStr("start");
|
// String end = StrUtil.isBlank(parseObj.getStr("end")) ? null : parseObj.getStr("end");
|
// String mzh = null;
|
// if (tjNum == null && name == null){
|
// return AjaxResult.error("体检号和名字不能都为空");
|
// }
|
// if (tjNum != null) {
|
// LambdaQueryWrapper<TjOrder> wrapper = new LambdaQueryWrapper<>();
|
// wrapper.eq(TjOrder::getTjNumber,tjNum);
|
// TjOrder order = tjOrderService.getOne(wrapper);
|
// mzh = order.getCardId();
|
// LambdaQueryWrapper<TjCustomer> wrapper1 = new LambdaQueryWrapper<>();
|
// wrapper1.eq(TjCustomer::getCusId,order.getUserId());
|
// TjCustomer tjCustomer = tjCustomerService.getOne(wrapper1);
|
// name = tjCustomer.getCusName();
|
// }
|
// List<Map<String, Object>> jcList = testMapper.getPacsJcList(name, mzh, start, end);
|
// if (jcList.isEmpty()){
|
// return AjaxResult.success();
|
// }
|
// if (tjNum == null){
|
// String string = jcList.get(0).get("mzh").toString();
|
// LambdaQueryWrapper<TjOrder> wrapper = new LambdaQueryWrapper<>();
|
// wrapper.eq(TjOrder::getCardId,string);
|
// TjOrder order = tjOrderService.getOne(wrapper);
|
// if (order == null) return AjaxResult.error("");
|
// tjNum = order.getTjNumber();
|
// }
|
// List<CsProVo> proVos = tjCheckController.getCsProVos(tjNum,true);
|
// HashMap<String, Object> hashMap = new HashMap<>();
|
// hashMap.put("pacs",jcList);
|
// hashMap.put("vo",proVos);
|
// return AjaxResult.success(hashMap);
|
// }
|
|
/**
|
* 获取pacs检查数据
|
*
|
* @param json
|
* @return
|
*/
|
@PostMapping("/pacs/getList")
|
public AjaxResult getList(@RequestBody String json) {
|
// log.info("pacs接口参数->{}",JSONUtil.toJsonStr(json));
|
cn.hutool.json.JSONObject parseObj = JSONUtil.parseObj(json);
|
String tjNum = StrUtil.isBlank(parseObj.getStr("tjNum")) ? null : parseObj.getStr("tjNum");
|
String name = StrUtil.isBlank(parseObj.getStr("name")) ? null : parseObj.getStr("name");
|
String start = StrUtil.isBlank(parseObj.getStr("start")) ? null : parseObj.getStr("start");
|
String end = StrUtil.isBlank(parseObj.getStr("end")) ? null : parseObj.getStr("end");
|
String mzh = null;
|
if (tjNum == null && name == null) {
|
return AjaxResult.error("体检号和名字不能都为空");
|
}
|
if (tjNum != null) {
|
TjOrder order = tjOrderService.getOrderByTjNum(tjNum);
|
mzh = order.getCardId();
|
LambdaQueryWrapper<TjCustomer> wrapper1 = new LambdaQueryWrapper<>();
|
wrapper1.eq(TjCustomer::getCusId, order.getUserId());
|
TjCustomer tjCustomer = tjCustomerService.getOne(wrapper1);
|
name = tjCustomer.getCusName();
|
}
|
List<Map<String, Object>> jcList = testMapper.getPacsJcList(name, mzh, start, end);
|
return AjaxResult.success(jcList);
|
// String json1 = "[{\"reportDoctorCode\":114,\"deptName\":\"体检中心\",\"checkDoctorCode\":114,\"ghxh\":\"M_jk20241106000019_2\",\"gender\":\"男\",\"brid\":\"jk20241106000019\",\"checkParts\":\"◆泌尿系前列腺\",\"zyh\":\"-\",\"diagnosis\":\"前列腺增生\",\"checkDoctorName\":\"李霞\",\"F_MACHINE_NAME_LIST\":\"GE-P6\",\"reportDate\":\"2024.11.06 11:49:20\",\"examinationDate\":\"2024.11.06 11:54:58\",\"examination\":\"双肾大小、形态正常,包膜光滑平整,实质回声分布均匀,皮髓界限清晰,集合系统未见分离。rnCDFI:双肾血流呈“树枝状”分布,灌注良好;双侧输尿管未见扩张。rn膀胱充盈佳,壁厚度正常,内壁光整,腔内未探及异常回声。rn经腹部前列腺大小约34mm×35mm×30mm,形态饱满,包膜完整,实质回声欠均匀,内腺稍增大。rnCDFI:腺体内未探及异常血流信号。\",\"name\":\"张小兵\",\"patientAge\":\"53岁\",\"clinicalDiagnosis\":\"\",\"mzh\":\"\",\"F_RPT_UID\":\"1.2.840.40823.1.1.1.204.1730864961.484.897.557\",\"reportDoctorName\":\"李霞\",\"studyReport\":525696,\"F_RPT_WRITE_DATE\":\"2024.11.06\"},{\"reportDoctorCode\":141,\"deptName\":\"体检中心 \",\"checkDoctorCode\":141,\"ghxh\":\"M_jk20241106000019_2\",\"gender\":\"男\",\"brid\":\"jk20241106000019\",\"checkParts\":\"◆胸部CT平扫\",\"zyh\":\"-\",\"diagnosis\":\"1.左肺下叶外基底段支气管扩张伴感染;rn2.冠状动脉硬化;rn3.胸椎骨质增生。\",\"checkDoctorName\":\"姚诚\",\"F_MACHINE_NAME_LIST\":\"SIEMENS-CT\",\"reportDate\":\"2024.11.06 17:12:53\",\"examinationDate\":\"2024.11.06 17:12:54\",\"examination\":\"两侧胸廓对称,气管居中。左肺下叶外基底段支气管扩张,周围见斑片状磨玻璃影;双肺门结构正常,各叶、段支气管通畅。心脏各房室大小正常;冠状动脉走行区多发致密影。纵膈内未见增大淋巴结。双侧胸膜未见增厚。部分胸椎缘见骨赘形成,胸廓诸骨质结构显示完整,软组织结构显示正常。\",\"name\":\"张小兵\",\"patientAge\":\"76岁\",\"clinicalDiagnosis\":\"\",\"mzh\":\"20241106000520\",\"F_RPT_UID\":\"1.2.840.40823.1.1.1.1.1730884375.763.395.131\",\"reportDoctorName\":\"姚诚\",\"studyReport\":525872,\"F_RPT_WRITE_DATE\":\"2024.11.06\"},{\"reportDoctorCode\":141,\"deptName\":\"体检中心 \",\"checkDoctorCode\":141,\"ghxh\":\"M_jk20241106000019_2\",\"gender\":\"男\",\"brid\":\"jk20241106000019\",\"checkParts\":\"◆胸部CT平扫\",\"zyh\":\"-\",\"diagnosis\":\"1.左肺下叶外基底段支气管扩张伴感染;rn2.冠状动脉硬化;rn3.胸椎骨质增生。\",\"checkDoctorName\":\"姚诚\",\"F_MACHINE_NAME_LIST\":\"SIEMENS-CT\",\"reportDate\":\"2024.11.06 17:12:53\",\"examinationDate\":\"2024.11.06 17:12:54\",\"examination\":\"两侧胸廓对称,气管居中。左肺下叶外基底段支气管扩张,周围见斑片状磨玻璃影;双肺门结构正常,各叶、段支气管通畅。心脏各房室大小正常;冠状动脉走行区多发致密影。纵膈内未见增大淋巴结。双侧胸膜未见增厚。部分胸椎缘见骨赘形成,胸廓诸骨质结构显示完整,软组织结构显示正常。\",\"name\":\"张小兵\",\"patientAge\":\"76岁\",\"clinicalDiagnosis\":\"\",\"mzh\":\"20241106000520\",\"F_RPT_UID\":\"1.2.840.40823.1.1.1.1.1730884375.763.395.131\",\"reportDoctorName\":\"姚诚\",\"studyReport\":525872,\"F_RPT_WRITE_DATE\":\"2024.11.06\"},{\"reportDoctorCode\":141,\"deptName\":\"体检中心 \",\"checkDoctorCode\":141,\"ghxh\":\"M_jk20241106000019_2\",\"gender\":\"男\",\"brid\":\"jk20241106000019\",\"checkParts\":\"◆胸部CT平扫\",\"zyh\":\"-\",\"diagnosis\":\"1.左肺下叶外基底段支气管扩张伴感染;rn2.冠状动脉硬化;rn3.胸椎骨质增生。\",\"checkDoctorName\":\"姚诚\",\"F_MACHINE_NAME_LIST\":\"SIEMENS-CT\",\"reportDate\":\"2024.11.06 17:12:53\",\"examinationDate\":\"2024.11.06 17:12:54\",\"examination\":\"两侧胸廓对称,气管居中。左肺下叶外基底段支气管扩张,周围见斑片状磨玻璃影;双肺门结构正常,各叶、段支气管通畅。心脏各房室大小正常;冠状动脉走行区多发致密影。纵膈内未见增大淋巴结。双侧胸膜未见增厚。部分胸椎缘见骨赘形成,胸廓诸骨质结构显示完整,软组织结构显示正常。\",\"name\":\"张小兵\",\"patientAge\":\"76岁\",\"clinicalDiagnosis\":\"\",\"mzh\":\"20241106000520\",\"F_RPT_UID\":\"1.2.840.40823.1.1.1.1.1730884375.763.395.131\",\"reportDoctorName\":\"姚诚\",\"studyReport\":525872,\"F_RPT_WRITE_DATE\":\"2024.11.06\"},{\"reportDoctorCode\":141,\"deptName\":\"体检中心 \",\"checkDoctorCode\":141,\"ghxh\":\"M_jk20241106000019_2\",\"gender\":\"男\",\"brid\":\"jk20241106000019\",\"checkParts\":\"◆胸部CT平扫\",\"zyh\":\"-\",\"diagnosis\":\"1.左肺下叶外基底段支气管扩张伴感染;rn2.冠状动脉硬化;rn3.胸椎骨质增生。\",\"checkDoctorName\":\"姚诚\",\"F_MACHINE_NAME_LIST\":\"SIEMENS-CT\",\"reportDate\":\"2024.11.06 17:12:53\",\"examinationDate\":\"2024.11.06 17:12:54\",\"examination\":\"两侧胸廓对称,气管居中。左肺下叶外基底段支气管扩张,周围见斑片状磨玻璃影;双肺门结构正常,各叶、段支气管通畅。心脏各房室大小正常;冠状动脉走行区多发致密影。纵膈内未见增大淋巴结。双侧胸膜未见增厚。部分胸椎缘见骨赘形成,胸廓诸骨质结构显示完整,软组织结构显示正常。\",\"name\":\"张小兵\",\"patientAge\":\"76岁\",\"clinicalDiagnosis\":\"\",\"mzh\":\"20241106000520\",\"F_RPT_UID\":\"1.2.840.40823.1.1.1.1.1730884375.763.395.131\",\"reportDoctorName\":\"姚诚\",\"studyReport\":525872,\"F_RPT_WRITE_DATE\":\"2024.11.06\"},{\"reportDoctorCode\":141,\"deptName\":\"体检中心 \",\"checkDoctorCode\":141,\"ghxh\":\"M_jk20241106000019_2\",\"gender\":\"男\",\"brid\":\"jk20241106000019\",\"checkParts\":\"◆胸部CT平扫\",\"zyh\":\"-\",\"diagnosis\":\"1.左肺下叶外基底段支气管扩张伴感染;rn2.冠状动脉硬化;rn3.胸椎骨质增生。\",\"checkDoctorName\":\"姚诚\",\"F_MACHINE_NAME_LIST\":\"SIEMENS-CT\",\"reportDate\":\"2024.11.06 17:12:53\",\"examinationDate\":\"2024.11.06 17:12:54\",\"examination\":\"两侧胸廓对称,气管居中。左肺下叶外基底段支气管扩张,周围见斑片状磨玻璃影;双肺门结构正常,各叶、段支气管通畅。心脏各房室大小正常;冠状动脉走行区多发致密影。纵膈内未见增大淋巴结。双侧胸膜未见增厚。部分胸椎缘见骨赘形成,胸廓诸骨质结构显示完整,软组织结构显示正常。\",\"name\":\"张小兵\",\"patientAge\":\"76岁\",\"clinicalDiagnosis\":\"\",\"mzh\":\"20241106000520\",\"F_RPT_UID\":\"1.2.840.40823.1.1.1.1.1730884375.763.395.131\",\"reportDoctorName\":\"姚诚\",\"studyReport\":525872,\"F_RPT_WRITE_DATE\":\"2024.11.06\"},{\"reportDoctorCode\":141,\"deptName\":\"体检中心 \",\"checkDoctorCode\":141,\"ghxh\":\"M_jk20241106000019_2\",\"gender\":\"男\",\"brid\":\"jk20241106000019\",\"checkParts\":\"◆胸部CT平扫\",\"zyh\":\"-\",\"diagnosis\":\"1.左肺下叶外基底段支气管扩张伴感染;rn2.冠状动脉硬化;rn3.胸椎骨质增生。\",\"checkDoctorName\":\"姚诚\",\"F_MACHINE_NAME_LIST\":\"SIEMENS-CT\",\"reportDate\":\"2024.11.06 17:12:53\",\"examinationDate\":\"2024.11.06 17:12:54\",\"examination\":\"两侧胸廓对称,气管居中。左肺下叶外基底段支气管扩张,周围见斑片状磨玻璃影;双肺门结构正常,各叶、段支气管通畅。心脏各房室大小正常;冠状动脉走行区多发致密影。纵膈内未见增大淋巴结。双侧胸膜未见增厚。部分胸椎缘见骨赘形成,胸廓诸骨质结构显示完整,软组织结构显示正常。\",\"name\":\"张小兵\",\"patientAge\":\"76岁\",\"clinicalDiagnosis\":\"\",\"mzh\":\"20241106000520\",\"F_RPT_UID\":\"1.2.840.40823.1.1.1.1.1730884375.763.395.131\",\"reportDoctorName\":\"姚诚\",\"studyReport\":525872,\"F_RPT_WRITE_DATE\":\"2024.11.06\"},{\"reportDoctorCode\":141,\"deptName\":\"体检中心 \",\"checkDoctorCode\":141,\"ghxh\":\"M_jk20241106000019_2\",\"gender\":\"男\",\"brid\":\"jk20241106000019\",\"checkParts\":\"◆胸部CT平扫\",\"zyh\":\"-\",\"diagnosis\":\"1.左肺下叶外基底段支气管扩张伴感染;rn2.冠状动脉硬化;rn3.胸椎骨质增生。\",\"checkDoctorName\":\"姚诚\",\"F_MACHINE_NAME_LIST\":\"SIEMENS-CT\",\"reportDate\":\"2024.11.06 17:12:53\",\"examinationDate\":\"2024.11.06 17:12:54\",\"examination\":\"两侧胸廓对称,气管居中。左肺下叶外基底段支气管扩张,周围见斑片状磨玻璃影;双肺门结构正常,各叶、段支气管通畅。心脏各房室大小正常;冠状动脉走行区多发致密影。纵膈内未见增大淋巴结。双侧胸膜未见增厚。部分胸椎缘见骨赘形成,胸廓诸骨质结构显示完整,软组织结构显示正常。\",\"name\":\"张小兵\",\"patientAge\":\"76岁\",\"clinicalDiagnosis\":\"\",\"mzh\":\"20241106000520\",\"F_RPT_UID\":\"1.2.840.40823.1.1.1.1.1730884375.763.395.131\",\"reportDoctorName\":\"姚诚\",\"studyReport\":525872,\"F_RPT_WRITE_DATE\":\"2024.11.06\"},{\"reportDoctorCode\":141,\"deptName\":\"体检中心 \",\"checkDoctorCode\":141,\"ghxh\":\"M_jk20241106000019_2\",\"gender\":\"男\",\"brid\":\"jk20241106000019\",\"checkParts\":\"◆胸部CT平扫\",\"zyh\":\"-\",\"diagnosis\":\"1.左肺下叶外基底段支气管扩张伴感染;rn2.冠状动脉硬化;rn3.胸椎骨质增生。\",\"checkDoctorName\":\"姚诚\",\"F_MACHINE_NAME_LIST\":\"SIEMENS-CT\",\"reportDate\":\"2024.11.06 17:12:53\",\"examinationDate\":\"2024.11.06 17:12:54\",\"examination\":\"两侧胸廓对称,气管居中。左肺下叶外基底段支气管扩张,周围见斑片状磨玻璃影;双肺门结构正常,各叶、段支气管通畅。心脏各房室大小正常;冠状动脉走行区多发致密影。纵膈内未见增大淋巴结。双侧胸膜未见增厚。部分胸椎缘见骨赘形成,胸廓诸骨质结构显示完整,软组织结构显示正常。\",\"name\":\"张小兵\",\"patientAge\":\"76岁\",\"clinicalDiagnosis\":\"\",\"mzh\":\"20241106000520\",\"F_RPT_UID\":\"1.2.840.40823.1.1.1.1.1730884375.763.395.131\",\"reportDoctorName\":\"姚诚\",\"studyReport\":525872,\"F_RPT_WRITE_DATE\":\"2024.11.06\"},{\"reportDoctorCode\":141,\"deptName\":\"体检中心 \",\"checkDoctorCode\":141,\"ghxh\":\"M_jk20241106000019_2\",\"gender\":\"男\",\"brid\":\"jk20241106000019\",\"checkParts\":\"◆胸部CT平扫\",\"zyh\":\"-\",\"diagnosis\":\"1.左肺下叶外基底段支气管扩张伴感染;rn2.冠状动脉硬化;rn3.胸椎骨质增生。\",\"checkDoctorName\":\"姚诚\",\"F_MACHINE_NAME_LIST\":\"SIEMENS-CT\",\"reportDate\":\"2024.11.06 17:12:53\",\"examinationDate\":\"2024.11.06 17:12:54\",\"examination\":\"两侧胸廓对称,气管居中。左肺下叶外基底段支气管扩张,周围见斑片状磨玻璃影;双肺门结构正常,各叶、段支气管通畅。心脏各房室大小正常;冠状动脉走行区多发致密影。纵膈内未见增大淋巴结。双侧胸膜未见增厚。部分胸椎缘见骨赘形成,胸廓诸骨质结构显示完整,软组织结构显示正常。\",\"name\":\"张小兵\",\"patientAge\":\"76岁\",\"clinicalDiagnosis\":\"\",\"mzh\":\"20241106000520\",\"F_RPT_UID\":\"1.2.840.40823.1.1.1.1.1730884375.763.395.131\",\"reportDoctorName\":\"姚诚\",\"studyReport\":525872,\"F_RPT_WRITE_DATE\":\"2024.11.06\"},{\"reportDoctorCode\":141,\"deptName\":\"体检中心 \",\"checkDoctorCode\":141,\"ghxh\":\"M_jk20241106000019_2\",\"gender\":\"男\",\"brid\":\"jk20241106000019\",\"checkParts\":\"◆胸部CT平扫\",\"zyh\":\"-\",\"diagnosis\":\"1.左肺下叶外基底段支气管扩张伴感染;rn2.冠状动脉硬化;rn3.胸椎骨质增生。\",\"checkDoctorName\":\"姚诚\",\"F_MACHINE_NAME_LIST\":\"SIEMENS-CT\",\"reportDate\":\"2024.11.06 17:12:53\",\"examinationDate\":\"2024.11.06 17:12:54\",\"examination\":\"两侧胸廓对称,气管居中。左肺下叶外基底段支气管扩张,周围见斑片状磨玻璃影;双肺门结构正常,各叶、段支气管通畅。心脏各房室大小正常;冠状动脉走行区多发致密影。纵膈内未见增大淋巴结。双侧胸膜未见增厚。部分胸椎缘见骨赘形成,胸廓诸骨质结构显示完整,软组织结构显示正常。\",\"name\":\"张小兵\",\"patientAge\":\"76岁\",\"clinicalDiagnosis\":\"\",\"mzh\":\"20241106000520\",\"F_RPT_UID\":\"1.2.840.40823.1.1.1.1.1730884375.763.395.131\",\"reportDoctorName\":\"姚诚\",\"studyReport\":525872,\"F_RPT_WRITE_DATE\":\"2024.11.06\"},{\"reportDoctorCode\":141,\"deptName\":\"体检中心 \",\"checkDoctorCode\":141,\"ghxh\":\"M_jk20241106000019_2\",\"gender\":\"男\",\"brid\":\"jk20241106000019\",\"checkParts\":\"◆胸部CT平扫\",\"zyh\":\"-\",\"diagnosis\":\"1.左肺下叶外基底段支气管扩张伴感染;rn2.冠状动脉硬化;rn3.胸椎骨质增生。\",\"checkDoctorName\":\"姚诚\",\"F_MACHINE_NAME_LIST\":\"SIEMENS-CT\",\"reportDate\":\"2024.11.06 17:12:53\",\"examinationDate\":\"2024.11.06 17:12:54\",\"examination\":\"两侧胸廓对称,气管居中。左肺下叶外基底段支气管扩张,周围见斑片状磨玻璃影;双肺门结构正常,各叶、段支气管通畅。心脏各房室大小正常;冠状动脉走行区多发致密影。纵膈内未见增大淋巴结。双侧胸膜未见增厚。部分胸椎缘见骨赘形成,胸廓诸骨质结构显示完整,软组织结构显示正常。\",\"name\":\"张小兵\",\"patientAge\":\"76岁\",\"clinicalDiagnosis\":\"\",\"mzh\":\"20241106000520\",\"F_RPT_UID\":\"1.2.840.40823.1.1.1.1.1730884375.763.395.131\",\"reportDoctorName\":\"姚诚\",\"studyReport\":525872,\"F_RPT_WRITE_DATE\":\"2024.11.06\"},{\"reportDoctorCode\":141,\"deptName\":\"体检中心 \",\"checkDoctorCode\":141,\"ghxh\":\"M_jk20241106000019_2\",\"gender\":\"男\",\"brid\":\"jk20241106000019\",\"checkParts\":\"◆胸部CT平扫\",\"zyh\":\"-\",\"diagnosis\":\"1.左肺下叶外基底段支气管扩张伴感染;rn2.冠状动脉硬化;rn3.胸椎骨质增生。\",\"checkDoctorName\":\"姚诚\",\"F_MACHINE_NAME_LIST\":\"SIEMENS-CT\",\"reportDate\":\"2024.11.06 17:12:53\",\"examinationDate\":\"2024.11.06 17:12:54\",\"examination\":\"两侧胸廓对称,气管居中。左肺下叶外基底段支气管扩张,周围见斑片状磨玻璃影;双肺门结构正常,各叶、段支气管通畅。心脏各房室大小正常;冠状动脉走行区多发致密影。纵膈内未见增大淋巴结。双侧胸膜未见增厚。部分胸椎缘见骨赘形成,胸廓诸骨质结构显示完整,软组织结构显示正常。\",\"name\":\"张小兵\",\"patientAge\":\"76岁\",\"clinicalDiagnosis\":\"\",\"mzh\":\"20241106000520\",\"F_RPT_UID\":\"1.2.840.40823.1.1.1.1.1730884375.763.395.131\",\"reportDoctorName\":\"姚诚\",\"studyReport\":525872,\"F_RPT_WRITE_DATE\":\"2024.11.06\"},{\"reportDoctorCode\":141,\"deptName\":\"体检中心 \",\"checkDoctorCode\":141,\"ghxh\":\"M_jk20241106000019_2\",\"gender\":\"男\",\"brid\":\"jk20241106000019\",\"checkParts\":\"◆胸部CT平扫\",\"zyh\":\"-\",\"diagnosis\":\"1.左肺下叶外基底段支气管扩张伴感染;rn2.冠状动脉硬化;rn3.胸椎骨质增生。\",\"checkDoctorName\":\"姚诚\",\"F_MACHINE_NAME_LIST\":\"SIEMENS-CT\",\"reportDate\":\"2024.11.06 17:12:53\",\"examinationDate\":\"2024.11.06 17:12:54\",\"examination\":\"两侧胸廓对称,气管居中。左肺下叶外基底段支气管扩张,周围见斑片状磨玻璃影;双肺门结构正常,各叶、段支气管通畅。心脏各房室大小正常;冠状动脉走行区多发致密影。纵膈内未见增大淋巴结。双侧胸膜未见增厚。部分胸椎缘见骨赘形成,胸廓诸骨质结构显示完整,软组织结构显示正常。\",\"name\":\"张小兵\",\"patientAge\":\"76岁\",\"clinicalDiagnosis\":\"\",\"mzh\":\"20241106000520\",\"F_RPT_UID\":\"1.2.840.40823.1.1.1.1.1730884375.763.395.131\",\"reportDoctorName\":\"姚诚\",\"studyReport\":525872,\"F_RPT_WRITE_DATE\":\"2024.11.06\"},{\"reportDoctorCode\":141,\"deptName\":\"体检中心 \",\"checkDoctorCode\":141,\"ghxh\":\"M_jk20241106000019_2\",\"gender\":\"男\",\"brid\":\"jk20241106000019\",\"checkParts\":\"◆胸部CT平扫\",\"zyh\":\"-\",\"diagnosis\":\"1.左肺下叶外基底段支气管扩张伴感染;rn2.冠状动脉硬化;rn3.胸椎骨质增生。\",\"checkDoctorName\":\"姚诚\",\"F_MACHINE_NAME_LIST\":\"SIEMENS-CT\",\"reportDate\":\"2024.11.06 17:12:53\",\"examinationDate\":\"2024.11.06 17:12:54\",\"examination\":\"两侧胸廓对称,气管居中。左肺下叶外基底段支气管扩张,周围见斑片状磨玻璃影;双肺门结构正常,各叶、段支气管通畅。心脏各房室大小正常;冠状动脉走行区多发致密影。纵膈内未见增大淋巴结。双侧胸膜未见增厚。部分胸椎缘见骨赘形成,胸廓诸骨质结构显示完整,软组织结构显示正常。\",\"name\":\"张小兵\",\"patientAge\":\"76岁\",\"clinicalDiagnosis\":\"\",\"mzh\":\"20241106000520\",\"F_RPT_UID\":\"1.2.840.40823.1.1.1.1.1730884375.763.395.131\",\"reportDoctorName\":\"姚诚\",\"studyReport\":525872,\"F_RPT_WRITE_DATE\":\"2024.11.06\"}]";
|
// return AjaxResult.success(JSONUtil.parseArray(json1));
|
}
|
|
/**
|
* 获取Lis检验数据
|
*
|
* @param json
|
* @return
|
*/
|
@PostMapping("/lis/getList")
|
public AjaxResult getLisList(@RequestBody String json) {
|
// log.info("lis接口参数->{}",JSONUtil.toJsonStr(json));
|
cn.hutool.json.JSONObject parseObj = JSONUtil.parseObj(json);
|
String tjNum = StrUtil.isBlank(parseObj.getStr("tjNum")) ? null : parseObj.getStr("tjNum");
|
String name = StrUtil.isBlank(parseObj.getStr("name")) ? null : parseObj.getStr("name");
|
String start = StrUtil.isBlank(parseObj.getStr("start")) ? null : parseObj.getStr("start");
|
String end = StrUtil.isBlank(parseObj.getStr("end")) ? null : parseObj.getStr("end");
|
String mzh = null;
|
if (tjNum == null && name == null) {
|
return AjaxResult.error("体检号和名字不能都为空");
|
}
|
if (tjNum != null) {
|
LambdaQueryWrapper<TjOrder> wrapper = new LambdaQueryWrapper<>();
|
wrapper.eq(TjOrder::getTjNumber, tjNum);
|
TjOrder order = tjOrderService.getOne(wrapper);
|
mzh = order.getCardId();
|
LambdaQueryWrapper<TjCustomer> wrapper1 = new LambdaQueryWrapper<>();
|
wrapper1.eq(TjCustomer::getCusId, order.getUserId());
|
TjCustomer tjCustomer = tjCustomerService.getOne(wrapper1);
|
name = tjCustomer.getCusName();
|
}
|
List<Map<String, Object>> jcList = testMapper.getLisJyList(name, mzh, start, end);
|
return AjaxResult.success(jcList);
|
// String json1 = "[{\"deptName\":\"科室\",\"gender\":\"男\",\"brid\":\"sqd445314589914\",\"checkParts\":\"血液\",\"project\":\"1.0-2.0\",\"examinationDate\":\"2025-02-11 05:12:23\",\"proResult\":\"1.0\",\"name\":\"赵四1\",\"patientAge\":\"20\",\"mzh\":\"810001246120745\",\"reportDoctorName\":\"医师\",\"proName\":\"血液分析\",\"conclusion\":\"异常\",\"tjStandardGtValue\":\"1 - 5\",\"company\":\"毫克\",\"checkDoctorName\":\"检测医师\",\"jcxmid\":\"123\",\"shys\":\"审核医师\"},{\"deptName\":\"科室\",\"gender\":\"男\",\"brid\":\"sqd445314589914\",\"checkParts\":\"血液\",\"project\":\"1.0-2.0\",\"examinationDate\":\"2025-02-11 05:12:23\",\"proResult\":\"1.0\",\"name\":\"赵四2\",\"patientAge\":\"20\",\"mzh\":\"201474534\",\"reportDoctorName\":\"医师\",\"proName\":\"血液分析\"},{\"deptName\":\"科室\",\"gender\":\"男\",\"brid\":\"sqd445314589914\",\"checkParts\":\"血液\",\"project\":\"1.0-2.0\",\"examinationDate\":\"2025-02-11 05:12:23\",\"proResult\":\"1.0\",\"name\":\"赵四3\",\"patientAge\":\"20\",\"mzh\":\"201474534\",\"reportDoctorName\":\"医师\",\"proName\":\"血液分析\"},{\"deptName\":\"科室\",\"gender\":\"男\",\"brid\":\"sqd445314589914\",\"checkParts\":\"血液\",\"project\":\"1.0-2.0\",\"examinationDate\":\"2025-02-11 05:12:23\",\"proResult\":\"1.0\",\"name\":\"赵四3\",\"patientAge\":\"20\",\"mzh\":\"201474534\",\"reportDoctorName\":\"医师\",\"proName\":\"血液分析\"},{\"deptName\":\"科室\",\"gender\":\"男\",\"brid\":\"sqd445314589914\",\"checkParts\":\"血液\",\"project\":\"1.0-2.0\",\"examinationDate\":\"2025-02-11 05:12:23\",\"proResult\":\"1.0\",\"name\":\"赵四3\",\"patientAge\":\"20\",\"mzh\":\"201474534\",\"reportDoctorName\":\"医师\",\"proName\":\"血液分析\"},{\"deptName\":\"科室\",\"gender\":\"男\",\"brid\":\"sqd445314589914\",\"checkParts\":\"血液\",\"project\":\"1.0-2.0\",\"examinationDate\":\"2025-02-11 05:12:23\",\"proResult\":\"1.0\",\"name\":\"赵四3\",\"patientAge\":\"20\",\"mzh\":\"201474534\",\"reportDoctorName\":\"医师\",\"proName\":\"血液分析\"},{\"deptName\":\"科室\",\"gender\":\"男\",\"brid\":\"sqd445314589914\",\"checkParts\":\"血液\",\"project\":\"1.0-2.0\",\"examinationDate\":\"2025-02-11 05:12:23\",\"proResult\":\"1.0\",\"name\":\"赵四3\",\"patientAge\":\"20\",\"mzh\":\"201474534\",\"reportDoctorName\":\"医师\",\"proName\":\"血液分析\"},{\"deptName\":\"科室\",\"gender\":\"男\",\"brid\":\"sqd445314589914\",\"checkParts\":\"血液\",\"project\":\"1.0-2.0\",\"examinationDate\":\"2025-02-11 05:12:23\",\"proResult\":\"1.0\",\"name\":\"赵四3\",\"patientAge\":\"20\",\"mzh\":\"201474534\",\"reportDoctorName\":\"医师\",\"proName\":\"血液分析\"}]";
|
// return AjaxResult.success(JSONUtil.parseArray(json1));
|
}
|
|
@GetMapping("/getTjList")
|
public AjaxResult getTjList(@RequestParam("code") String code) {
|
// log.info("tjList接口参数->{}",code);
|
LambdaQueryWrapper<TjOrder> queryWrapper = new LambdaQueryWrapper<>();
|
queryWrapper.eq(TjOrder::getCardId, code)
|
.or()
|
.eq(TjOrder::getTjNumber, code);
|
TjOrder order = tjOrderService.getOne(queryWrapper);
|
if (order == null) {
|
return AjaxResult.error("门诊号:" + code + "在体检系统中不存在");
|
}
|
List<CsProVo> proVos = tjCheckController.getCsProVos(order.getTjNumber(),true);
|
return AjaxResult.success(proVos);
|
// String json = "[{\"proId\":\"1870371396991955206\",\"deptName\":\"DR室\",\"proName\":\"胸部DR正位\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2025-06-05 10:55:43\",\"bcupdateTime\":\"2025-06-05 10:55:43\",\"bcdoctorName\":null,\"imageUrl\":null,\"zhupdateTime\":\"2025-06-05 10:55:43\",\"deptId\":599},{\"proId\":\"1878964342340526298\",\"deptName\":\"彩超室\",\"proName\":\"肝胆脾胰肾彩超\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2025-06-05 10:55:43\",\"bcupdateTime\":\"2025-06-05 10:55:43\",\"bcdoctorName\":null,\"imageUrl\":null,\"zhupdateTime\":\"2025-06-05 10:55:43\",\"deptId\":609},{\"proId\":\"1878964342340526330\",\"deptName\":\"彩超室\",\"proName\":\"膀胱前列腺彩超\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2025-06-05 10:55:43\",\"bcupdateTime\":\"2025-06-05 10:55:43\",\"bcdoctorName\":null,\"imageUrl\":null,\"zhupdateTime\":\"2025-06-05 10:55:43\",\"deptId\":609},{\"proId\":\"1870371396991955336\",\"deptName\":\"心电图\",\"proName\":\"心电图检查\",\"type\":1,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2025-06-05 10:55:43\",\"bcupdateTime\":\"2025-06-05 11:12:50\",\"bcdoctorName\":null,\"imageUrl\":null,\"zhupdateTime\":\"2025-06-05 11:12:50\",\"deptId\":601}]";
|
// return AjaxResult.success(JSONUtil.parseArray(json));
|
}
|
|
@GetMapping("/getJyTjList")
|
public AjaxResult getJyTjList(@RequestParam("code") String code) {
|
// log.info("tjList接口参数->{}",code);
|
LambdaQueryWrapper<TjOrder> queryWrapper = new LambdaQueryWrapper<>();
|
queryWrapper.eq(TjOrder::getCardId, code)
|
.or()
|
.eq(TjOrder::getTjNumber, code);
|
TjOrder order = tjOrderService.getOne(queryWrapper);
|
if (order == null) {
|
return AjaxResult.error("门诊号:" + code + "在体检系统中不存在");
|
}
|
List<CsProVo> proVos = orderRemarkService.cSWebGetProByTjNumAndOrderIdJy(order.getTjNumber());
|
if (null != proVos && !proVos.isEmpty()) {
|
proVos.sort(Comparator.comparingInt(CsProVo::getType));
|
}
|
return AjaxResult.success(proVos);
|
// String json = "[{\"deptName\":\"CT室\",\"proName\":\"(tj)胸部CT平扫\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2024-11-06 10:47:15\",\"bcupdateTime\":\"2024-11-06 10:47:15\",\"bcdoctorName\":null,\"zhupdateTime\":\"2024-11-06 10:47:15\"},{\"deptName\":\"彩超室\",\"proName\":\"(tj)泌尿系前列腺\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2024-11-06 10:47:15\",\"bcupdateTime\":\"2024-11-06 10:47:15\",\"bcdoctorName\":null,\"zhupdateTime\":\"2024-11-06 10:47:15\"},{\"deptName\":\"彩超室\",\"proName\":\"(tj)泌尿系前列腺\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2024-11-06 10:47:15\",\"bcupdateTime\":\"2024-11-06 10:47:15\",\"bcdoctorName\":null,\"zhupdateTime\":\"2024-11-06 10:47:15\"},{\"deptName\":\"彩超室\",\"proName\":\"(tj)泌尿系前列腺\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2024-11-06 10:47:15\",\"bcupdateTime\":\"2024-11-06 10:47:15\",\"bcdoctorName\":null,\"zhupdateTime\":\"2024-11-06 10:47:15\"},{\"deptName\":\"彩超室\",\"proName\":\"(tj)泌尿系前列腺\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2024-11-06 10:47:15\",\"bcupdateTime\":\"2024-11-06 10:47:15\",\"bcdoctorName\":null,\"zhupdateTime\":\"2024-11-06 10:47:15\"},{\"deptName\":\"彩超室\",\"proName\":\"(tj)泌尿系前列腺\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2024-11-06 10:47:15\",\"bcupdateTime\":\"2024-11-06 10:47:15\",\"bcdoctorName\":null,\"zhupdateTime\":\"2024-11-06 10:47:15\"},{\"deptName\":\"彩超室\",\"proName\":\"(tj)泌尿系前列腺\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2024-11-06 10:47:15\",\"bcupdateTime\":\"2024-11-06 10:47:15\",\"bcdoctorName\":null,\"zhupdateTime\":\"2024-11-06 10:47:15\"},{\"deptName\":\"彩超室\",\"proName\":\"(tj)泌尿系前列腺\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2024-11-06 10:47:15\",\"bcupdateTime\":\"2024-11-06 10:47:15\",\"bcdoctorName\":null,\"zhupdateTime\":\"2024-11-06 10:47:15\"},{\"deptName\":\"彩超室\",\"proName\":\"(tj)泌尿系前列腺\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2024-11-06 10:47:15\",\"bcupdateTime\":\"2024-11-06 10:47:15\",\"bcdoctorName\":null,\"zhupdateTime\":\"2024-11-06 10:47:15\"},{\"deptName\":\"彩超室\",\"proName\":\"(tj)泌尿系前列腺\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2024-11-06 10:47:15\",\"bcupdateTime\":\"2024-11-06 10:47:15\",\"bcdoctorName\":null,\"zhupdateTime\":\"2024-11-06 10:47:15\"},{\"deptName\":\"彩超室\",\"proName\":\"(tj)泌尿系前列腺\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2024-11-06 10:47:15\",\"bcupdateTime\":\"2024-11-06 10:47:15\",\"bcdoctorName\":null,\"zhupdateTime\":\"2024-11-06 10:47:15\"},{\"deptName\":\"彩超室\",\"proName\":\"(tj)泌尿系前列腺\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2024-11-06 10:47:15\",\"bcupdateTime\":\"2024-11-06 10:47:15\",\"bcdoctorName\":null,\"zhupdateTime\":\"2024-11-06 10:47:15\"},{\"deptName\":\"彩超室\",\"proName\":\"(tj)泌尿系前列腺\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2024-11-06 10:47:15\",\"bcupdateTime\":\"2024-11-06 10:47:15\",\"bcdoctorName\":null,\"zhupdateTime\":\"2024-11-06 10:47:15\"},{\"deptName\":\"彩超室\",\"proName\":\"(tj)泌尿系前列腺\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2024-11-06 10:47:15\",\"bcupdateTime\":\"2024-11-06 10:47:15\",\"bcdoctorName\":null,\"zhupdateTime\":\"2024-11-06 10:47:15\"},{\"deptName\":\"彩超室\",\"proName\":\"(tj)泌尿系前列腺\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2024-11-06 10:47:15\",\"bcupdateTime\":\"2024-11-06 10:47:15\",\"bcdoctorName\":null,\"zhupdateTime\":\"2024-11-06 10:47:15\"},{\"deptName\":\"彩超室\",\"proName\":\"(tj)泌尿系前列腺\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2024-11-06 10:47:15\",\"bcupdateTime\":\"2024-11-06 10:47:15\",\"bcdoctorName\":null,\"zhupdateTime\":\"2024-11-06 10:47:15\"},{\"deptName\":\"彩超室\",\"proName\":\"(tj)泌尿系前列腺\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2024-11-06 10:47:15\",\"bcupdateTime\":\"2024-11-06 10:47:15\",\"bcdoctorName\":null,\"zhupdateTime\":\"2024-11-06 10:47:15\"},{\"deptName\":\"彩超室\",\"proName\":\"(tj)泌尿系前列腺\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2024-11-06 10:47:15\",\"bcupdateTime\":\"2024-11-06 10:47:15\",\"bcdoctorName\":null,\"zhupdateTime\":\"2024-11-06 10:47:15\"},{\"deptName\":\"彩超室\",\"proName\":\"(tj)泌尿系前列腺\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2024-11-06 10:47:15\",\"bcupdateTime\":\"2024-11-06 10:47:15\",\"bcdoctorName\":null,\"zhupdateTime\":\"2024-11-06 10:47:15\"},{\"deptName\":\"彩超室\",\"proName\":\"(tj)泌尿系前列腺\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2024-11-06 10:47:15\",\"bcupdateTime\":\"2024-11-06 10:47:15\",\"bcdoctorName\":null,\"zhupdateTime\":\"2024-11-06 10:47:15\"},{\"deptName\":\"彩超室\",\"proName\":\"(tj)泌尿系前列腺\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2024-11-06 10:47:15\",\"bcupdateTime\":\"2024-11-06 10:47:15\",\"bcdoctorName\":null,\"zhupdateTime\":\"2024-11-06 10:47:15\"},{\"deptName\":\"彩超室\",\"proName\":\"(tj)泌尿系前列腺\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2024-11-06 10:47:15\",\"bcupdateTime\":\"2024-11-06 10:47:15\",\"bcdoctorName\":null,\"zhupdateTime\":\"2024-11-06 10:47:15\"},{\"deptName\":\"彩超室\",\"proName\":\"(tj)泌尿系前列腺\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2024-11-06 10:47:15\",\"bcupdateTime\":\"2024-11-06 10:47:15\",\"bcdoctorName\":null,\"zhupdateTime\":\"2024-11-06 10:47:15\"},{\"deptName\":\"彩超室\",\"proName\":\"(tj)泌尿系前列腺\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2024-11-06 10:47:15\",\"bcupdateTime\":\"2024-11-06 10:47:15\",\"bcdoctorName\":null,\"zhupdateTime\":\"2024-11-06 10:47:15\"},{\"deptName\":\"彩超室\",\"proName\":\"(tj)泌尿系前列腺\",\"type\":0,\"doctorName\":null,\"sffs\":\"统收\",\"isPay\":\"已收费\",\"qdcreateTime\":\"2024-11-06 10:47:15\",\"bcupdateTime\":\"2024-11-06 10:47:15\",\"bcdoctorName\":null,\"zhupdateTime\":\"2024-11-06 10:47:15\"}]";
|
// return AjaxResult.success(JSONUtil.parseArray(json));
|
}
|
|
@Transactional
|
@PostMapping("/asyncPacs")
|
public AjaxResult asyncPacs(@RequestBody String json) {
|
try {
|
log.info("合并检测同步参数 ->{}", json);
|
// try {
|
// Thread.sleep(2000);
|
// } catch (InterruptedException ignored) {
|
//
|
// }
|
// if (true)
|
// return AjaxResult.error("同步失败请重试");
|
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
cn.hutool.json.JSONObject parseObj = JSONUtil.parseObj(json);
|
cn.hutool.json.JSONObject pacs = parseObj.getJSONObject("pacs");
|
cn.hutool.json.JSONArray lis = parseObj.getJSONArray("lis");
|
cn.hutool.json.JSONObject tj = parseObj.getJSONObject("tj");
|
if (pacs != null && !pacs.isEmpty()) {
|
String tjNum = pacs.getStr("tjnum");
|
LambdaQueryWrapper<TjOrder> wrapper1 = new LambdaQueryWrapper<>();
|
wrapper1.eq(TjOrder::getTjNumber, tjNum);
|
TjOrder order = tjOrderService.getOne(wrapper1);
|
|
LtkjExamJcsqd ltkjExamJcsqd = new LtkjExamJcsqd();
|
ltkjExamJcsqd.setTjh(order.getCardId());
|
|
LambdaQueryWrapper<LtkjJianchajianyanTree> queryWrapper = new LambdaQueryWrapper<>();
|
queryWrapper.eq(LtkjJianchajianyanTree::getCardId, order.getCardId());
|
TjProject project = projectService.getById(tj.getStr("proId"));
|
String xmdm = project.getHisXmbm();
|
if (project.getSfzhfy().equals("N")) {
|
LambdaQueryWrapper<TjProject> wrapper = new LambdaQueryWrapper<>();
|
wrapper.eq(TjProject::getProParentId, project.getProId());
|
List<TjProject> list = projectService.list(wrapper);
|
for (TjProject tjProject : list) {
|
if (StrUtil.isNotBlank(tjProject.getHisXmbm())) {
|
xmdm = tjProject.getHisXmbm();
|
break;
|
}
|
}
|
}
|
|
queryWrapper.eq(LtkjJianchajianyanTree::getType, "检查");
|
queryWrapper.eq(LtkjJianchajianyanTree::getHisXmdm, xmdm);
|
|
LtkjJianchajianyanTree tree = ltkjJianchajianyanTreeService.getOne(queryWrapper);
|
ltkjExamJcsqd.setTmh("M_" + tree.getSqdh() + "_" + tree.getHisXmdm());
|
ltkjExamJcsqd.setBgys(pacs.getStr("checkDoctorName"));
|
ltkjExamJcsqd.setBgysid(pacs.getStr("checkDoctorCode"));
|
ltkjExamJcsqd.setSqsj(format.format(tree.getCreateTime()));
|
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy.MM.dd HH:mm:ss");
|
Date reportDate = null;
|
try {
|
reportDate = dateFormat.parse(pacs.getStr("reportDate"));
|
ltkjExamJcsqd.setJgsj(format.format(reportDate));
|
} catch (ParseException ignored) {
|
ltkjExamJcsqd.setJgsj(format.format(new Date()));
|
}
|
String checkParts = pacs.getStr("checkParts");
|
// ltkjExamJcsqd.setJcxmmc(checkParts);
|
// ltkjExamJcsqd.setJcxmid(xmdm);
|
|
ltkjExamJcsqd.setJcxmmc(project.getProName());
|
ltkjExamJcsqd.setJcxmid(project.getProId().toString());
|
|
ltkjExamJcsqd.setBw(checkParts);
|
ltkjExamJcsqd.setJgzt(pacs.getStr("diagnosis"));
|
ltkjExamJcsqd.setJgbx(pacs.getStr("examination"));
|
ltkjExamJcsqd.setSgorzd("1");
|
ltkjExamJcsqd.setCreateTime(new Date());
|
|
ltkjExamJcsqdService.deletedLtkjJcsqdByTjhAndXmId(ltkjExamJcsqd.getTjh(), ltkjExamJcsqd.getJcxmid());
|
boolean save1 = ltkjExamJcsqdService.save(ltkjExamJcsqd);
|
/* log.info("手动同步检查结果状态 ->{}", ltkjExamJcsqd.getJgzt());
|
if (StringUtil.isNotBlank(ltkjExamJcsqd.getJgzt())) {
|
// jcycxmService.deletedByTjh(order.getTjNumber());
|
jcycxmService.deletedByTjhAndXmm(order.getTjNumber(),ltkjExamJcsqd.getJcxmmc());
|
String[] split = ltkjExamJcsqd.getJgzt().replaceAll("\n", "").split("。|;|;|,|,");
|
log.info("进入检查结果异常提取分割方法体 ->{}->{}", order.getTjNumber(), split);
|
for (String jg : split) {
|
if (StringUtil.isNotBlank(jg) && !jg.contains("未见异常")
|
&& !jg.contains("未见明显异常") && !jg.contains("未见占位") && !jg.contains("未见")
|
&& !jg.contains("未见明显") && !jg.contains("正常") && !jg.contains("双侧椎间孔无狭窄")) {
|
log.info("进入检查结果异常提取 即将保存检查异常结果->{}->{}", order.getTjNumber(), jg);
|
try {
|
TjJcycxm jcycxm = new TjJcycxm();
|
jcycxm.setTjh(order.getTjNumber());
|
jcycxm.setYqid("jczyy");
|
String[] split1 = ltkjExamJcsqd.getJcxmid().split(";");
|
jcycxm.setProId(split1[0]);
|
jcycxm.setProName(ltkjExamJcsqd.getJcxmmc());
|
jcycxm.setCreateTime(new Date());
|
jcycxm.setJcjg(jg);
|
jcycxmService.save(jcycxm);
|
} catch (Exception e) {
|
logger.error("保存检查异常结果失败",e);
|
throw new RuntimeException(e);
|
}
|
log.info("进入检查结果异常提取 保存检查异常结果完毕");
|
}
|
}
|
}
|
*/
|
LtkjExamJcbgd ltkjExamJcbgd = new LtkjExamJcbgd();
|
ltkjExamJcbgd.setTjh(ltkjExamJcsqd.getTjh());
|
ltkjExamJcbgd.setTmh(ltkjExamJcsqd.getTmh());
|
// ltkjExamJcbgd.setXmdm(ltkjExamJcsqd.getJcxmid());
|
// ltkjExamJcbgd.setXmmc(ltkjExamJcsqd.getJcxmmc());
|
|
ltkjExamJcbgd.setXmdm(project.getProId().toString());
|
ltkjExamJcbgd.setXmmc(project.getProName());
|
|
ltkjExamJcbgd.setBgUrl("");
|
ltkjExamJcbgd.setShysxm(pacs.getStr("reportDoctorName"));
|
ltkjExamJcbgd.setShysdm(pacs.getStr("reportDoctorCode"));
|
// ltkjExamJcbgd.setYxzd(ltkjExamJcsqd.getJgzt());
|
// ltkjExamJcbgd.setYxbx(ltkjExamJcsqd.getJgbx());
|
ltkjExamJcbgd.setZdsj(ltkjExamJcsqd.getJgsj());
|
ltkjExamJcbgd.setSqsj(ltkjExamJcsqd.getSqsj());
|
ltkjExamJcbgd.setJcbw(ltkjExamJcsqd.getJcxmmc());
|
ltkjExamJcbgd.setBgNr(ltkjExamJcsqd.getJgbx());
|
ltkjExamJcbgd.setYxbx(ltkjExamJcsqd.getJgzt());
|
ltkjExamJcbgd.setYxzd(ltkjExamJcsqd.getJgzt());
|
ltkjExamJcbgd.setSgorzd("1");
|
ltkjExamJcsqd.setCreateTime(new Date());
|
ltkjExamJcbgdService.deletedLtkjJcbgdByTjhAndTmhA(ltkjExamJcsqd.getTjh(), ltkjExamJcsqd.getTmh());
|
boolean save2 = ltkjExamJcbgdService.save(ltkjExamJcbgd);
|
if (save1 && save2) {
|
try {
|
|
configController.tjjcycxm(tjNum, "0");
|
// testMapper.updateDetailByTjJcCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), UserHoder.getLoginUser().getUserId());
|
orderRemarkService.updateTjOrderRemarkByTjzt(order.getTjNumber(),project.getProId().toString());
|
} catch (Exception e) {
|
log.error(String.valueOf(e));
|
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
return AjaxResult.error("同步失败请重试");
|
}
|
} else {
|
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
return AjaxResult.error("同步失败请重试");
|
}
|
return AjaxResult.success();
|
} else {
|
cn.hutool.json.JSONObject entries = (cn.hutool.json.JSONObject) lis.get(0);
|
String tjNum = entries.getStr("tjNum");
|
LtkjHysqd hysqd = new LtkjHysqd();
|
TjOrder order = tjOrderService.getOrderByTjNum(tjNum);
|
hysqd.setTjh(order.getCardId());
|
String mzh = order.getCardId();
|
|
LambdaQueryWrapper<LtkjJianchajianyanTree> queryWrapper = new LambdaQueryWrapper<>();
|
queryWrapper.eq(LtkjJianchajianyanTree::getCardId, mzh);
|
TjProject project = projectService.getById(tj.getStr("proId"));
|
String xmdm = project.getHisXmbm();
|
queryWrapper.eq(LtkjJianchajianyanTree::getType, "检验");
|
queryWrapper.eq(LtkjJianchajianyanTree::getHisXmdm, xmdm);
|
LtkjJianchajianyanTree tree = ltkjJianchajianyanTreeService.getOne(queryWrapper);
|
String tmh;
|
if (tree == null) {
|
tree = new LtkjJianchajianyanTree();
|
tree.setHisXmdm(xmdm);
|
tree.setCreateTime(new Date());
|
String sqdh = new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + String.valueOf(RandomUtil.randomInt(0, 99999));
|
queryWrapper = new LambdaQueryWrapper<>();
|
queryWrapper.eq(LtkjJianchajianyanTree::getSqdh, sqdh);
|
if (ltkjJianchajianyanTreeService.getOne(queryWrapper) == null) {
|
tree.setSqdh(sqdh);
|
} else {
|
while (true) {
|
sqdh = new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + String.valueOf(RandomUtil.randomInt(0, 99999));
|
queryWrapper = new LambdaQueryWrapper<>();
|
queryWrapper.eq(LtkjJianchajianyanTree::getSqdh, sqdh);
|
if (ltkjJianchajianyanTreeService.getOne(queryWrapper) == null) {
|
tree.setSqdh(sqdh);
|
break;
|
}
|
}
|
}
|
tmh = tree.getSqdh() + "_" + tree.getHisXmdm();
|
} else {
|
tmh = tree.getSqdh();
|
}
|
String shys = "";
|
for (Object o : lis) {
|
cn.hutool.json.JSONObject jsonObject = (cn.hutool.json.JSONObject) o;
|
if (StrUtil.isNotBlank(jsonObject.getStr("jyxh"))) tmh = jsonObject.getStr("jyxh");
|
if (StrUtil.isNotBlank(jsonObject.getStr("shys"))) shys = jsonObject.getStr("shys");
|
if (StrUtil.isNotBlank(tmh) && StrUtil.isNotBlank(shys) && StrUtil.isNotBlank(jsonObject.getStr("jyxh")))
|
break;
|
}
|
hysqd.setTmh(tmh);
|
|
// if (StrUtil.isNotBlank(xmdm)) {
|
// hysqd.setXmid(xmdm);
|
// hysqd.setXmmc(project.getHisXmmc());
|
// }else {
|
// hysqd.setXmid(String.valueOf(project.getProId()));
|
// hysqd.setXmmc(project.getProName());
|
// }
|
|
hysqd.setXmid(project.getProId().toString());
|
hysqd.setXmmc(project.getProName());
|
|
hysqd.setSqsj(format.format(tree.getCreateTime()));
|
hysqd.setJgsj(format.format(new Date()));
|
hysqd.setShrxm(shys);
|
hysqd.setCreateTime(new Date());
|
// hysqd.setBbmc();
|
hysqdService.deletedByTjhAndXmId(hysqd.getTjh(), hysqd.getXmid());
|
hybgdService.deletedLtkjHybgdByTjhAndTmh(tmh);
|
hysqdService.save(hysqd);
|
for (Object object : lis) {
|
cn.hutool.json.JSONObject jsonObject = (cn.hutool.json.JSONObject) object;
|
LtkjHybgd hybgd = new LtkjHybgd();
|
hybgd.setTmh(tmh);
|
hybgd.setJcxmid(jsonObject.getStr("jcxmid"));
|
hybgd.setJcxm(jsonObject.getStr("proName"));
|
hybgd.setJyjg(jsonObject.getStr("proResult"));
|
hybgd.setJgdw(jsonObject.getStr("company"));
|
String tjStandardGtValue = jsonObject.getStr("tjStandardGtValue");
|
String zdz = "";
|
String zxz = "";
|
if (tjStandardGtValue.contains("-")) {
|
String[] split = tjStandardGtValue.split("-");
|
zxz = split[0].trim();
|
zdz = split[1].trim();
|
}
|
hybgd.setFwzdz(zdz);
|
hybgd.setFwzgz(zxz);
|
hybgd.setFwz(tjStandardGtValue);
|
hybgd.setJysj(jsonObject.getStr("examinationDate"));
|
hybgd.setShsj(jsonObject.getStr("examinationDate"));
|
hybgd.setJyys(jsonObject.getStr("checkDoctorName"));
|
hybgd.setShysmc(shys);
|
hybgd.setYcbz(jsonObject.getStr("ycbz"));
|
hybgd.setCreateTime(new Date());
|
hybgdService.save(hybgd);
|
}
|
try {
|
// testMapper.updateDetailByCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), UserHoder.getLoginUser().getUserId());
|
orderRemarkService.updateTjOrderRemarkByTjzt(order.getTjNumber(),project.getProId().toString());
|
} catch (Exception e) {
|
|
log.error(String.valueOf(e));
|
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
return AjaxResult.error("同步失败请重试");
|
}
|
return AjaxResult.success();
|
}
|
} catch (NoTransactionException e) {
|
log.error(String.valueOf(e));
|
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
return AjaxResult.error("同步失败请重试");
|
}
|
|
}
|
|
@Transactional
|
@PostMapping("/newasyncPacs")
|
public AjaxResult newasyncPacs(@RequestBody String json) {
|
try {
|
log.info("合并检测同步参数 ->{}", json);
|
// try {
|
// Thread.sleep(2000);
|
// } catch (InterruptedException ignored) {
|
//
|
// }
|
// if (true)
|
// return AjaxResult.error("同步失败请重试");
|
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
cn.hutool.json.JSONObject parseObj = JSONUtil.parseObj(json);
|
cn.hutool.json.JSONArray pacss = parseObj.getJSONArray("pacs");
|
cn.hutool.json.JSONArray lis = parseObj.getJSONArray("lis");
|
cn.hutool.json.JSONObject tj = parseObj.getJSONObject("tj");
|
|
|
if (pacss != null && !pacss.isEmpty()) {
|
cn.hutool.json.JSONObject entries = (cn.hutool.json.JSONObject) pacss.get(0);
|
String tjNum = entries.getStr("tjNum");
|
LambdaQueryWrapper<TjOrder> wrapper1 = new LambdaQueryWrapper<>();
|
wrapper1.eq(TjOrder::getTjNumber, tjNum);
|
TjOrder order = tjOrderService.getOne(wrapper1);
|
|
for (Object o : pacss) {
|
cn.hutool.json.JSONObject pacs = (cn.hutool.json.JSONObject) o;
|
if (pacs != null && !pacs.isEmpty()) {
|
|
LtkjExamJcsqd ltkjExamJcsqd = new LtkjExamJcsqd();
|
ltkjExamJcsqd.setTjh(order.getCardId());
|
|
LambdaQueryWrapper<LtkjJianchajianyanTree> queryWrapper = new LambdaQueryWrapper<>();
|
queryWrapper.eq(LtkjJianchajianyanTree::getCardId, order.getCardId());
|
TjProject project = projectService.getById(tj.getStr("proId"));
|
String xmdm = project.getHisXmbm();
|
if (project.getSfzhfy().equals("N")) {
|
LambdaQueryWrapper<TjProject> wrapper = new LambdaQueryWrapper<>();
|
wrapper.eq(TjProject::getProParentId, project.getProId());
|
List<TjProject> list = projectService.list(wrapper);
|
for (TjProject tjProject : list) {
|
if (StrUtil.isNotBlank(tjProject.getHisXmbm())) {
|
xmdm = tjProject.getHisXmbm();
|
break;
|
}
|
}
|
}
|
|
queryWrapper.eq(LtkjJianchajianyanTree::getType, "检查");
|
queryWrapper.eq(LtkjJianchajianyanTree::getHisXmdm, xmdm);
|
|
LtkjJianchajianyanTree tree = ltkjJianchajianyanTreeService.getOne(queryWrapper);
|
String brid = pacs.getStr("brid");
|
|
ltkjExamJcsqd.setTmh(brid + tree.getHisXmdm());
|
ltkjExamJcsqd.setBgys(pacs.getStr("checkDoctorName"));
|
ltkjExamJcsqd.setBgysid(pacs.getStr("checkDoctorCode"));
|
ltkjExamJcsqd.setSqsj(format.format(tree.getCreateTime()));
|
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy.MM.dd HH:mm:ss");
|
Date reportDate = null;
|
try {
|
reportDate = dateFormat.parse(pacs.getStr("reportDate"));
|
ltkjExamJcsqd.setJgsj(format.format(reportDate));
|
} catch (ParseException ignored) {
|
ltkjExamJcsqd.setJgsj(format.format(new Date()));
|
}
|
String checkParts = pacs.getStr("checkParts");
|
// ltkjExamJcsqd.setJcxmmc(checkParts);
|
// ltkjExamJcsqd.setJcxmid(xmdm);
|
|
ltkjExamJcsqd.setJcxmmc(project.getProName());
|
ltkjExamJcsqd.setJcxmid(project.getProId().toString());
|
|
ltkjExamJcsqd.setBw(checkParts);
|
ltkjExamJcsqd.setJgzt(pacs.getStr("diagnosis"));
|
ltkjExamJcsqd.setJgbx(pacs.getStr("examination"));
|
ltkjExamJcsqd.setSgorzd("1");
|
ltkjExamJcsqd.setCreateTime(new Date());
|
|
// ltkjExamJcsqdService.deletedLtkjJcsqdByTjhAndXmId(ltkjExamJcsqd.getTjh(), ltkjExamJcsqd.getJcxmid());
|
ltkjExamJcsqdService.sdtbdeletedLtkjJcsqdByTjhandtmh(ltkjExamJcsqd.getTjh(), ltkjExamJcsqd.getTmh());
|
boolean save1 = ltkjExamJcsqdService.save(ltkjExamJcsqd);
|
/* log.info("手动同步检查结果状态 ->{}", ltkjExamJcsqd.getJgzt());
|
if (StringUtil.isNotBlank(ltkjExamJcsqd.getJgzt())) {
|
// jcycxmService.deletedByTjh(order.getTjNumber());
|
jcycxmService.deletedByTjhAndXmm(order.getTjNumber(),ltkjExamJcsqd.getJcxmmc());
|
String[] split = ltkjExamJcsqd.getJgzt().replaceAll("\n", "").split("。|;|;|,|,");
|
log.info("进入检查结果异常提取分割方法体 ->{}->{}", order.getTjNumber(), split);
|
for (String jg : split) {
|
if (StringUtil.isNotBlank(jg) && !jg.contains("未见异常")
|
&& !jg.contains("未见明显异常") && !jg.contains("未见占位") && !jg.contains("未见")
|
&& !jg.contains("未见明显") && !jg.contains("正常") && !jg.contains("双侧椎间孔无狭窄")) {
|
log.info("进入检查结果异常提取 即将保存检查异常结果->{}->{}", order.getTjNumber(), jg);
|
try {
|
TjJcycxm jcycxm = new TjJcycxm();
|
jcycxm.setTjh(order.getTjNumber());
|
jcycxm.setYqid("jczyy");
|
String[] split1 = ltkjExamJcsqd.getJcxmid().split(";");
|
jcycxm.setProId(split1[0]);
|
jcycxm.setProName(ltkjExamJcsqd.getJcxmmc());
|
jcycxm.setCreateTime(new Date());
|
jcycxm.setJcjg(jg);
|
jcycxmService.save(jcycxm);
|
} catch (Exception e) {
|
log.error("保存检查异常结果失败",e);
|
throw new RuntimeException(e);
|
}
|
log.info("进入检查结果异常提取 保存检查异常结果完毕");
|
}
|
}
|
}*/
|
|
LtkjExamJcbgd ltkjExamJcbgd = new LtkjExamJcbgd();
|
ltkjExamJcbgd.setTjh(ltkjExamJcsqd.getTjh());
|
ltkjExamJcbgd.setTmh(ltkjExamJcsqd.getTmh());
|
// ltkjExamJcbgd.setXmdm(ltkjExamJcsqd.getJcxmid());
|
// ltkjExamJcbgd.setXmmc(ltkjExamJcsqd.getJcxmmc());
|
|
ltkjExamJcbgd.setXmdm(project.getProId().toString());
|
ltkjExamJcbgd.setXmmc(project.getProName());
|
|
ltkjExamJcbgd.setBgUrl("");
|
ltkjExamJcbgd.setShysxm(pacs.getStr("reportDoctorName"));
|
ltkjExamJcbgd.setShysdm(pacs.getStr("reportDoctorCode"));
|
// ltkjExamJcbgd.setYxzd(ltkjExamJcsqd.getJgzt());
|
// ltkjExamJcbgd.setYxbx(ltkjExamJcsqd.getJgbx());
|
ltkjExamJcbgd.setZdsj(ltkjExamJcsqd.getJgsj());
|
ltkjExamJcbgd.setSqsj(ltkjExamJcsqd.getSqsj());
|
ltkjExamJcbgd.setJcbw(ltkjExamJcsqd.getJcxmmc());
|
ltkjExamJcbgd.setBgNr(ltkjExamJcsqd.getJgbx());
|
ltkjExamJcbgd.setYxbx(ltkjExamJcsqd.getJgzt());
|
ltkjExamJcbgd.setYxzd(ltkjExamJcsqd.getJgzt());
|
ltkjExamJcbgd.setSgorzd("1");
|
ltkjExamJcsqd.setCreateTime(new Date());
|
ltkjExamJcbgdService.deletedLtkjJcbgdByTjhAndTmhA(ltkjExamJcsqd.getTjh(), ltkjExamJcsqd.getTmh());
|
boolean save2 = ltkjExamJcbgdService.save(ltkjExamJcbgd);
|
if (save1 && save2) {
|
try {
|
configController.tjjcycxm(tjNum, "0");
|
// testMapper.updateDetailByTjJcCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), UserHoder.getLoginUser().getUserId());
|
orderRemarkService.updateTjOrderRemarkByTjzt(order.getTjNumber(),project.getProId().toString());
|
} catch (Exception e) {
|
log.error(String.valueOf(e));
|
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
return AjaxResult.error("同步失败请重试");
|
}
|
} else {
|
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
return AjaxResult.error("同步失败请重试");
|
}
|
}
|
}
|
return AjaxResult.success();
|
} else {
|
cn.hutool.json.JSONObject entries = (cn.hutool.json.JSONObject) lis.get(0);
|
String tjNum = entries.getStr("tjNum");
|
LtkjHysqd hysqd = new LtkjHysqd();
|
TjOrder order = tjOrderService.getOrderByTjNum(tjNum);
|
hysqd.setTjh(order.getCardId());
|
String mzh = order.getCardId();
|
|
LambdaQueryWrapper<LtkjJianchajianyanTree> queryWrapper = new LambdaQueryWrapper<>();
|
queryWrapper.eq(LtkjJianchajianyanTree::getCardId, mzh);
|
TjProject project = projectService.getById(tj.getStr("proId"));
|
String xmdm = project.getHisXmbm();
|
queryWrapper.eq(LtkjJianchajianyanTree::getType, "检验");
|
queryWrapper.eq(LtkjJianchajianyanTree::getHisXmdm, xmdm);
|
LtkjJianchajianyanTree tree = ltkjJianchajianyanTreeService.getOne(queryWrapper);
|
String tmh;
|
if (tree == null) {
|
tree = new LtkjJianchajianyanTree();
|
tree.setHisXmdm(xmdm);
|
tree.setCreateTime(new Date());
|
String sqdh = new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + String.valueOf(RandomUtil.randomInt(0, 99999));
|
queryWrapper = new LambdaQueryWrapper<>();
|
queryWrapper.eq(LtkjJianchajianyanTree::getSqdh, sqdh);
|
if (ltkjJianchajianyanTreeService.getOne(queryWrapper) == null) {
|
tree.setSqdh(sqdh);
|
} else {
|
while (true) {
|
sqdh = new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + String.valueOf(RandomUtil.randomInt(0, 99999));
|
queryWrapper = new LambdaQueryWrapper<>();
|
queryWrapper.eq(LtkjJianchajianyanTree::getSqdh, sqdh);
|
if (ltkjJianchajianyanTreeService.getOne(queryWrapper) == null) {
|
tree.setSqdh(sqdh);
|
break;
|
}
|
}
|
}
|
tmh = tree.getSqdh() + "_" + tree.getHisXmdm();
|
} else {
|
tmh = tree.getSqdh();
|
}
|
String shys = "";
|
for (Object o : lis) {
|
cn.hutool.json.JSONObject jsonObject = (cn.hutool.json.JSONObject) o;
|
if (StrUtil.isNotBlank(jsonObject.getStr("jyxh"))) tmh = jsonObject.getStr("jyxh");
|
if (StrUtil.isNotBlank(jsonObject.getStr("shys"))) shys = jsonObject.getStr("shys");
|
if (StrUtil.isNotBlank(tmh) && StrUtil.isNotBlank(shys) && StrUtil.isNotBlank(jsonObject.getStr("jyxh")))
|
break;
|
}
|
hysqd.setTmh(tmh);
|
|
// if (StrUtil.isNotBlank(xmdm)) {
|
// hysqd.setXmid(xmdm);
|
// hysqd.setXmmc(project.getHisXmmc());
|
// }else {
|
// hysqd.setXmid(String.valueOf(project.getProId()));
|
// hysqd.setXmmc(project.getProName());
|
// }
|
|
hysqd.setXmid(project.getProId().toString());
|
hysqd.setXmmc(project.getProName());
|
|
hysqd.setSqsj(format.format(tree.getCreateTime()));
|
hysqd.setJgsj(format.format(new Date()));
|
hysqd.setShrxm(shys);
|
hysqd.setCreateTime(new Date());
|
// hysqd.setBbmc();
|
hysqdService.deletedByTjhAndXmId(hysqd.getTjh(), hysqd.getXmid());
|
hybgdService.deletedLtkjHybgdByTjhAndTmh(tmh);
|
hysqdService.save(hysqd);
|
for (Object object : lis) {
|
cn.hutool.json.JSONObject jsonObject = (cn.hutool.json.JSONObject) object;
|
LtkjHybgd hybgd = new LtkjHybgd();
|
hybgd.setTmh(tmh);
|
hybgd.setJcxmid(jsonObject.getStr("jcxmid"));
|
hybgd.setJcxm(jsonObject.getStr("proName"));
|
hybgd.setJyjg(jsonObject.getStr("proResult"));
|
hybgd.setJgdw(jsonObject.getStr("company"));
|
String tjStandardGtValue = jsonObject.getStr("tjStandardGtValue");
|
String zdz = "";
|
String zxz = "";
|
if (tjStandardGtValue.contains("-")) {
|
String[] split = tjStandardGtValue.split("-");
|
zxz = split[0].trim();
|
zdz = split[1].trim();
|
}
|
hybgd.setFwzdz(zdz);
|
hybgd.setFwzgz(zxz);
|
hybgd.setFwz(tjStandardGtValue);
|
hybgd.setJysj(jsonObject.getStr("examinationDate"));
|
hybgd.setShsj(jsonObject.getStr("examinationDate"));
|
hybgd.setJyys(jsonObject.getStr("checkDoctorName"));
|
hybgd.setShysmc(shys);
|
hybgd.setYcbz(jsonObject.getStr("ycbz"));
|
hybgd.setCreateTime(new Date());
|
hybgdService.save(hybgd);
|
}
|
try {
|
// testMapper.updateDetailByCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), UserHoder.getLoginUser().getUserId());
|
orderRemarkService.updateTjOrderRemarkByTjzt(order.getTjNumber(),project.getProId().toString());
|
} catch (Exception e) {
|
log.error(String.valueOf(e));
|
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
return AjaxResult.error("同步失败请重试");
|
}
|
return AjaxResult.success();
|
}
|
} catch (NoTransactionException e) {
|
log.error(String.valueOf(e));
|
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
return AjaxResult.error("同步失败请重试");
|
}
|
|
}
|
|
@PostMapping(value = "/callback")
|
public void callback(@RequestBody JSONObject json) {
|
System.out.println("===================记录打印次数====================");
|
System.out.println(json.toJSONString());
|
String tjNumber = json.get("tjNumber").toString();
|
String reportName = json.get("reportName").toString();
|
System.out.println("用户: " + tjNumber + reportName + " 已打印");
|
}
|
|
}
|