From 672ce84d5ce6545a0e81709ea736c69cbbef8c1a Mon Sep 17 00:00:00 2001 From: zjh <1084500556@qq.com> Date: 星期四, 24 四月 2025 18:12:47 +0800 Subject: [PATCH] zjh20250424 --- ltkj-admin/src/main/java/com/ltkj/web/controller/pacs/PacsApiMethodService.java | 163 ++++++++++++++++++++++++++++++------------------------ 1 files changed, 90 insertions(+), 73 deletions(-) diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/pacs/PacsApiMethodService.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/pacs/PacsApiMethodService.java index fc7d4a7..28a48a6 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/pacs/PacsApiMethodService.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/pacs/PacsApiMethodService.java @@ -22,6 +22,7 @@ import com.ltkj.system.service.ISysConfigService; import com.ltkj.system.service.ISysDeptService; import com.ltkj.web.controller.his.HisApiGetMethodService; +import jodd.util.StringUtil; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.time.DateFormatUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -146,90 +147,106 @@ if (projects != null && !projects.isEmpty()) { String dept = configService.selectConfigByKey("request_default_dept"); String ysbm = configService.selectConfigByKey("request_default_ysbm"); + String ysmc = configService.selectConfigByKey("request_default_ysmc"); for (TjProject project : projects) { if (0 == project.getProParentId() && project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { - if (null != project.getHisXmbm()) { - SavePacsApply savePacsApply = new SavePacsApply(); - savePacsApply.setExamNo(tjOrder.getCardId()); - savePacsApply.setName(tjCustomer.getCusName()); - savePacsApply.setSex(tjCustomer.getCusSex() == 1 ? "2" : "1"); - AgeResult ageResult = DateUtils.calculateAge(tjCustomer.getCusBrithday()); - savePacsApply.setAge(String.valueOf(ageResult.getAge())); - savePacsApply.setAgeUnit(String.valueOf(ageResult.getUnit())); - savePacsApply.setBirthday(DateFormatUtils.format(tjCustomer.getCusBrithday(), "yyyy-MM-dd")); - savePacsApply.setCardNumber(tjCustomer.getCusIdcard()); - savePacsApply.setTel(tjCustomer.getCusPhone()); - Date date = new Date(); - String regNo = "M_jk" + tjOrder.getCardId() +"_" + project.getHisXmbm(); - savePacsApply.setRegNo(regNo); - JSONObject jsonObject = JSONUtil.createObj(); - jsonObject.putOpt("cardId", tjOrder.getCardId()); - jsonObject.putOpt("regNo", regNo); - jsonObject.putOpt("name", tjCustomer.getCusName()); - array.add(jsonObject); - savePacsApply.setCheckItemID(project.getHisXmbm()); - savePacsApply.setCheckItem(project.getHisXmmc()); - // TODO 妫�鏌ラ儴浣� - savePacsApply.setCheckPosition("-"); - savePacsApply.setAmount(project.getProPrice()); - savePacsApply.setApplyDate(DateFormatUtils.format(date, "yyyy-MM-dd HH:mm:ss")); - savePacsApply.setApplyDepment(dept); - savePacsApply.setApplyDepmentName("浣撴涓績"); - savePacsApply.setApplyDoctor(ysbm); - savePacsApply.setApplyDoctorName("鐜嬪仴钀�"); - savePacsApply.setExecDepment(dept); - savePacsApply.setExecDepmentName("浣撴涓績"); - savePacsApply.setCreateTime(savePacsApply.getApplyDate()); - // TODO 妫�鏌ヨ澶� - savePacsApply.setDevice("-"); - // TODO 妫�鏌ヨ澶囩被鍨� - savePacsApply.setDeviceType("-"); - log.info("PACS妫�鏌ョ敵璇� ->{}", JSONUtil.toJsonStr(savePacsApply)); - AjaxResult ajaxResult = savePacsApply(savePacsApply); - log.info("杩斿洖 ->{}",JSONUtil.toJsonStr(ajaxResult)); - String result = ajaxResult.get("data").toString(); - JSONObject object = JSONUtil.parseObj(JSONUtil.parseObj(result)); - log.info("PACS璇锋眰杩斿洖 ->{}", object); - String code = object.getStr("ResultCode"); - allTotal++; - if (code.equals("1")) { - successPacsList.add(savePacsApply); - LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree(); - tree.setCardId(tjOrder.getCardId()); - tree.setPationid(tjCustomer.getPationId()); - tree.setSqdh(regNo); - tree.setFyhj(String.valueOf(project.getProPrice())); - tree.setHisXmdm(project.getHisXmbm()); - tree.setType("妫�鏌�"); - tree.setService("pacs"); - tree.setTjPrice(String.valueOf(project.getProPrice())); - LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>(); - if (project.getSfzhfy().equals("Y")) - wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, project.getHisXmbm()); - else wrapper1.eq(LtkjJfzhglmxjfxmzd::getXmdm, project.getHisXmbm()); - List<LtkjJfzhglmxjfxmzd> ltkjJfzhglmxjfxmzds = ltkjJfzhglmxjfxmzdService.list(wrapper1); - if (ltkjJfzhglmxjfxmzds != null && !ltkjJfzhglmxjfxmzds.isEmpty()) { - String xmdm = ltkjJfzhglmxjfxmzds.get(0).getXmdm(); - LambdaQueryWrapper<LtkjMxjfxmzd> wrapper2 = new LambdaQueryWrapper<>(); - wrapper2.eq(LtkjMxjfxmzd::getXmdm, xmdm); - LtkjMxjfxmzd mxjfxmzd = ltkjMxjfxmzdService.getOne(wrapper2); - LambdaQueryWrapper<LtkjEjjfxmzd> wrapper3 = new LambdaQueryWrapper<>(); - wrapper3.eq(LtkjEjjfxmzd::getEjkmdm, mxjfxmzd.getEjkmdm()); - LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper3); - tree.setXmfl(ejjfxmzd.getYjkmdm()); + if(project.getSfzhfy().equalsIgnoreCase("Y")){ + allTotal = getAllTotal(tjOrder, tjCustomer, array, successPacsList, errorPacsList, project, dept, ysbm, ysmc, allTotal); + }else { + List<TjProject> bySoneId = projectService.getTjProjectListBySoneId(project.getProId().toString()); + for (TjProject tjProject : bySoneId) { + if(project.getProPrice().compareTo(BigDecimal.ZERO) != 0){ + allTotal = getAllTotal(tjOrder, tjCustomer, array, successPacsList, errorPacsList, tjProject, dept, ysbm, ysmc, allTotal); } - tree.setCreateTime(DateUtil.date()); - ltkjJianchajianyanTreeService.save(tree); - } else { - errorPacsList.add(savePacsApply); } } + } } } return allTotal; } + private int getAllTotal(TjOrder tjOrder, TjCustomer tjCustomer, JSONArray array, ArrayList<SavePacsApply> successPacsList, ArrayList<SavePacsApply> errorPacsList, TjProject project, String dept, String ysbm, String ysmc, int allTotal) { + if (StringUtil.isNotBlank(project.getHisXmbm())) { + SavePacsApply savePacsApply = new SavePacsApply(); + savePacsApply.setExamNo(tjOrder.getCardId()); + savePacsApply.setName(tjCustomer.getCusName()); + savePacsApply.setSex(tjCustomer.getCusSex() == 1 ? "2" : "1"); + AgeResult ageResult = DateUtils.calculateAge(tjCustomer.getCusBrithday()); + savePacsApply.setAge(String.valueOf(ageResult.getAge())); + savePacsApply.setAgeUnit(String.valueOf(ageResult.getUnit())); + savePacsApply.setBirthday(DateFormatUtils.format(tjCustomer.getCusBrithday(), "yyyy-MM-dd")); + savePacsApply.setCardNumber(tjCustomer.getCusIdcard()); + savePacsApply.setTel(tjCustomer.getCusPhone()); + Date date = new Date(); + String regNo = "M_jk" + tjOrder.getCardId() +"_" + project.getHisXmbm(); + savePacsApply.setRegNo(regNo); + JSONObject jsonObject = JSONUtil.createObj(); + jsonObject.putOpt("cardId", tjOrder.getCardId()); + jsonObject.putOpt("regNo", regNo); + jsonObject.putOpt("name", tjCustomer.getCusName()); + array.add(jsonObject); + savePacsApply.setCheckItemID(project.getHisXmbm()); + savePacsApply.setCheckItem(project.getProName()); + // TODO 妫�鏌ラ儴浣� + savePacsApply.setCheckPosition("-"); + savePacsApply.setAmount(project.getProPrice()); + savePacsApply.setApplyDate(DateFormatUtils.format(date, "yyyy-MM-dd HH:mm:ss")); + savePacsApply.setApplyDepment(dept); + savePacsApply.setApplyDepmentName("浣撴涓績"); + savePacsApply.setApplyDoctor(ysbm); + savePacsApply.setApplyDoctorName(ysmc); + savePacsApply.setExecDepment(dept); + savePacsApply.setExecDepmentName("浣撴涓績"); + savePacsApply.setCreateTime(savePacsApply.getApplyDate()); + // TODO 妫�鏌ヨ澶� + savePacsApply.setDevice("-"); + // TODO 妫�鏌ヨ澶囩被鍨� + savePacsApply.setDeviceType("-"); + log.info("PACS妫�鏌ョ敵璇� ->{}", JSONUtil.toJsonStr(savePacsApply)); + AjaxResult ajaxResult = savePacsApply(savePacsApply); + log.info("杩斿洖 ->{}",JSONUtil.toJsonStr(ajaxResult)); + String result = ajaxResult.get("data").toString(); + JSONObject object = JSONUtil.parseObj(JSONUtil.parseObj(result)); + log.info("PACS璇锋眰杩斿洖 ->{}", object); + String code = object.getStr("ResultCode"); + allTotal++; + if (code.equals("1")) { + successPacsList.add(savePacsApply); + LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree(); + tree.setCardId(tjOrder.getCardId()); + tree.setPationid(tjCustomer.getPationId()); + tree.setSqdh(regNo); + tree.setFyhj(String.valueOf(project.getProPrice())); + tree.setHisXmdm(project.getHisXmbm()); + tree.setType("妫�鏌�"); + tree.setService("pacs"); + tree.setTjPrice(String.valueOf(project.getProPrice())); + LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>(); + if (project.getSfzhfy().equals("Y")) + wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, project.getHisXmbm()); + else wrapper1.eq(LtkjJfzhglmxjfxmzd::getXmdm, project.getHisXmbm()); + List<LtkjJfzhglmxjfxmzd> ltkjJfzhglmxjfxmzds = ltkjJfzhglmxjfxmzdService.list(wrapper1); + if (ltkjJfzhglmxjfxmzds != null && !ltkjJfzhglmxjfxmzds.isEmpty()) { + String xmdm = ltkjJfzhglmxjfxmzds.get(0).getXmdm(); + LambdaQueryWrapper<LtkjMxjfxmzd> wrapper2 = new LambdaQueryWrapper<>(); + wrapper2.eq(LtkjMxjfxmzd::getXmdm, xmdm); + LtkjMxjfxmzd mxjfxmzd = ltkjMxjfxmzdService.getOne(wrapper2); + LambdaQueryWrapper<LtkjEjjfxmzd> wrapper3 = new LambdaQueryWrapper<>(); + wrapper3.eq(LtkjEjjfxmzd::getEjkmdm, mxjfxmzd.getEjkmdm()); + LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper3); + tree.setXmfl(ejjfxmzd.getYjkmdm()); + } + tree.setCreateTime(DateUtil.date()); + ltkjJianchajianyanTreeService.save(tree); + } else { + errorPacsList.add(savePacsApply); + } + } + return allTotal; + } + /* 鏌ヨ妫�鏌ョ粨鏋溿�佹洿鏂版煡璇㈢姸鎬� */ // 璋冪敤杩斿洖妫�楠岀粨鏋滐細 // exec usp_tjjk_pacsjg 鈥樹綋妫�鍙封�� -- Gitblit v1.8.0