| | |
| | | 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(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()); |
| | | 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 (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(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 ‘体检号’ |