From 9155df2aeab5b0d95c89dd928dbaefbfbaeae9d1 Mon Sep 17 00:00:00 2001 From: zjh <1084500556@qq.com> Date: 星期四, 05 九月 2024 17:10:35 +0800 Subject: [PATCH] zjh 2024-09-05 --- ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisApiMethod.java | 948 ++++++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 711 insertions(+), 237 deletions(-) diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisApiMethod.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisApiMethod.java index 61546c2..a10136e 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisApiMethod.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisApiMethod.java @@ -8,20 +8,20 @@ import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.ltkj.common.core.domain.AjaxResult; -import com.ltkj.common.utils.SecurityUtils; import com.ltkj.hosp.domain.*; import com.ltkj.hosp.hisDto.*; import com.ltkj.hosp.service.*; +import com.ltkj.system.service.ISysConfigService; +import com.ltkj.system.service.ISysDeptService; +import jdk.nashorn.internal.runtime.logging.Logger; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.math.BigDecimal; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; /* @Authot:zjh @@ -29,6 +29,7 @@ * */ @Component +@Slf4j public class HisApiMethod { @Autowired private HisApiMethodService controller; @@ -46,6 +47,20 @@ private HisApiConfigService hisApiConfigService; @Autowired private HisApiGetMethodService hisApiGetMethodService; + @Resource + private ISysDeptService deptService; + @Resource + private ITbTransitionService transitionService; + @Autowired + private LtkjJianchajianyanTreeService ltkjJianchajianyanTreeService; + @Autowired + private LtkjJfzhglmxjfxmzdService ltkjJfzhglmxjfxmzdService; + @Autowired + private LtkjMxjfxmzdService ltkjMxjfxmzdService; + @Autowired + private LtkjEjjfxmzdService ltkjEjjfxmzdService; + @Autowired + private TjCfService cfService; //灏嗘柟娉曡繑鍥炲�艰В鏋愭垚json鏍煎紡 public JSONObject getJSONObject(String builder) { @@ -59,268 +74,727 @@ } //瀵规帴his鎬绘帴鍙� 娉ㄥ唽鎸傚彿鎺ヨ瘖鐢宠鍗曟搷浣� - @Transactional - public void HisApiMethods(TjCustomer customer, Long orderId) { -// HisApiGetMethodService hisApiGetMethodService = new HisApiGetMethodService(); + @Logger + public AjaxResult HisApiMethods(TjCustomer customer,TjOrder tjOrder) { + String jzh=null; + try { +// TjOrder tjOrder = orderService.getById(orderId); + Date dates = new Date(); + final String date = DateUtil.format(dates, "yyyy-MM-dd HH:mm:ss"); + OutpinregapplyDto outpinregapplyDto = new OutpinregapplyDto(); + outpinregapplyDto.setPationid(customer.getPationId()); + outpinregapplyDto.setSqysbm("00029"); + outpinregapplyDto.setMzksbm("0101"); + outpinregapplyDto.setCzybm("00029"); + outpinregapplyDto.setSfjz("0"); + outpinregapplyDto.setGhzlbm("01"); + outpinregapplyDto.setYwckbm("0001"); + outpinregapplyDto.setSflstd("0"); + outpinregapplyDto.setGhrq(date); + //闂ㄨ瘖鎸傚彿 + AjaxResult ajaxResult = controller.Outpinregapply(outpinregapplyDto); + String result2 = getAjaxResult(ajaxResult); + JSONObject object1 = getJSONObject(result2); + String code1 = object1.getStr("ResultCode"); + if (code1.equals("0")) { + JSONArray resultDatas = object1.getJSONArray("ResultData"); + if (null != resultDatas && resultDatas.size() > 0) { + Map<String, Object> resultDatasss = (Map<String, Object>) resultDatas.get(0); + String hisRegistrationId = resultDatasss.get("his_registration_id").toString(); + jzh=hisRegistrationId; + //淇濆瓨鎸傚彿鍏ュ弬鍑哄弬 + resultDatasss.put("cardId",hisRegistrationId); + JSONObject object4 = JSONUtil.parseObj(resultDatasss); + LambdaQueryWrapper<HisApiConfig> lambdaQueryWrapper = new LambdaQueryWrapper<>(); + lambdaQueryWrapper.eq(HisApiConfig::getApiMethod, "Outpinregapply"); + HisApiConfig hisApiConfig = hisApiConfigService.getOne(lambdaQueryWrapper); + hisApiGetMethodService.save(object4, "Outpinregapply", hisApiConfig, JSONUtil.toJsonStr(BeanUtil.beanToMap(outpinregapplyDto))); - Date dates = new Date(); - final String date = DateUtil.format(dates, "yyyy-MM-dd HH:mm:ss"); - AjaxResult result = controller.Outpincreateapply(customer); - String result1 = getAjaxResult(result); - JSONObject object = getJSONObject(result1); - String code = object.getStr("ResultCode"); - if (code.equals("0")) { - JSONArray resultDatass = object.getJSONArray("ResultData"); - Map<String, Object> resultData = (Map<String, Object>) resultDatass.get(0); - if (null != resultData && resultData.size() > 0) { - String pationid = resultData.get("PationId").toString(); - if (null != pationid) { - customer.setPationId(pationid); + //闂ㄨ瘖鍖荤敓鎺ヨ瘖 + AjaxResult result = controller.Outpinconapply(hisRegistrationId, date, "00029"); + String result3 = getAjaxResult(result); + JSONObject object2 = getJSONObject(result3); + String code2 = object2.getStr("ResultCode"); + if (!code2.equals("0")) { + return AjaxResult.error(object2.getStr("ResultContent")); + } + log.info("his鎺ュ彛-----鍖荤敓鎺ヨ瘖鎴愬姛!"); + if(null != tjOrder.getTjCategory() && !tjOrder.getTjCategory().equals("13")){ + customer.setCardId(hisRegistrationId); + }else { + customer.setCardId("0"); + } customerService.updateById(customer); - // OutpinregapplyDto outpinregapplyDto = new OutpinregapplyDto(); -// outpinregapplyDto.setPationid(pationid); -//// outpinregapplyDto.setHisRegistrationId(pationid); -// outpinregapplyDto.setSqysbm(SecurityUtils.getUsername()); -// outpinregapplyDto.setMzksbm("0101"); -// outpinregapplyDto.setCzybm("00029"); -// outpinregapplyDto.setSfjz("0"); -// outpinregapplyDto.setGhzlbm("01"); -// outpinregapplyDto.setYwckbm("0001"); -// outpinregapplyDto.setSflstd("0"); -// outpinregapplyDto.setGhrq(date); -// //闂ㄨ瘖鎸傚彿 -// AjaxResult ajaxResult = controller.Outpinregapply(outpinregapplyDto); -// String result2 = getAjaxResult(ajaxResult); -// JSONObject object1 = getJSONObject(result2); -// String code1 = object1.getStr("ResultCode"); -// if (code1.equals("0")) { -// JSONArray resultDatas = object1.getJSONArray("ResultData"); -// if (null != resultDatas && resultDatas.size() > 0) { -// Map<String, Object> resultDatasss = (Map<String, Object>) resultDatas.get(0); -// String hisRegistrationId = resultDatasss.get("his_registration_id").toString(); -// if (null != hisRegistrationId) { -// //闂ㄨ瘖鍖荤敓鎺ヨ瘖 -// AjaxResult result3 = controller.Outpinconapply(hisRegistrationId, date, SecurityUtils.getUsername()); -// String result4 = getAjaxResult(result3); -// JSONObject object2 = getJSONObject(result4); -// String code2 = object2.getStr("ResultCode"); -// if (code2.equals("0")) { -// Map<String, Object> data = object2.getJSONObject("ResultData"); -// String toString = data.get("his_registration_id").toString(); -// if (null != toString) { - //妫�楠岀敵璇� - OutpintestapplyDto dto = new OutpintestapplyDto(); - dto.setHisRegistrationId(customer.getCardId()); - dto.setSfjz(customer.getCusIdcard()); - dto.setSqysbm(SecurityUtils.getUsername()); - dto.setMzksbm("0101"); - dto.setSjrq(date); - dto.setCzybm("00029"); - dto.setCzyksbm("0101"); - dto.setSfjz("1"); - List<TbTransition> detailList = tbTransitionService.getTbTransitionListByCusId(customer.getCusIdcard(), customer.getCardId()); - List<OutpintestapplyDetailsDto> detailsDtos = new ArrayList<>(); - if (null != detailList && detailList.size() > 0) { - LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); - wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); - wq.groupBy(TjProject::getHisXmbm); - wq.in(TjProject::getDeptId, "241"); - List<TjProject> projects = projectService.list(wq); - if (null != projects && projects.size() > 0) { - for (TjProject project : projects) { - OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); - if (0 == project.getProParentId() && project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { - if (null != project.getHisXmbm()) { - detailsDto.setMxfyxmbm(project.getHisXmbm()); -// if(project.getHisXmbm().toLowerCase().contains("z".toLowerCase())){ - detailsDto.setSfzhfy("1"); -// }else { -// detailsDto.setSfzhfy("0"); -// } - } else { - detailsDto.setMxfyxmbm(""); - detailsDto.setSfzhfy("0"); - } - detailsDto.setSfzhfy("1"); - detailsDto.setSl(1); - detailsDtos.add(detailsDto); - } + transitionService.updateCardIdByTjNumAndIdCard(customer.getCusIdcard(), hisRegistrationId, tjOrder.getTjNumber()); + tjOrder.setCardId(hisRegistrationId); + orderService.updateById(tjOrder); + } + + //娣诲姞浣撴璇婃柇 + OutpinimpapplyDto dto=new OutpinimpapplyDto(); + dto.setHisRegistrationId(tjOrder.getCardId()); + dto.setMzzdid(1); + dto.setSqysbm("00029"); + dto.setMzksbm("0101"); + dto.setFbrq(date); + dto.setZdrq(date); + dto.setCzybm("00029"); + dto.setCzyksbm("0101"); + dto.setZs("鍋ュ悍鏌ヤ綋"); + dto.setBs("涓嶈"); + dto.setClyz(""); + dto.setJws(""); + dto.setTgjc(""); + dto.setGms(""); + dto.setJbbm("Z00.001"); + dto.setJbbm1(""); + dto.setJbbm2(""); + dto.setFzbz("1"); + dto.setHzqx("6"); + dto.setSfqc("0"); + dto.setQchs(""); + dto.setSfqj("0"); + dto.setJzqk(9); + controller.Outpinimpapply(dto); + return AjaxResult.success(); + } + return AjaxResult.error(); + } catch (Exception e) { + e.printStackTrace(); + return AjaxResult.error().put("jzh",jzh); + } + } + + + //浣撴瀵筯is鐢宠鍗曡皟鐢ㄦ柟娉� + public AjaxResult tijianshenqing(TjCustomer customer, String date,String cardId) { + + + List<TbTransition> detailList = tbTransitionService.getTbTransitionListByCusId(customer.getCusIdcard(),cardId); + + //妫�楠岀敵璇� + OutpintestapplyDto dto = new OutpintestapplyDto(); + dto.setHisRegistrationId(cardId); + dto.setSfzh(customer.getCusIdcard()); + dto.setSqysbm("00029"); + dto.setMzksbm("0101"); + dto.setSjrq(date); + dto.setCzybm("00029"); + dto.setCzyksbm("0101"); + dto.setSfjz("0"); + + List<OutpintestapplyDetailsDto> detailsDtos = new ArrayList<>(); + List<OutpinmedicapplyDetilsDto> outpinmedicapplyDetilsDtos =new ArrayList<>(); + if (null != detailList && detailList.size() > 0) { + LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); + wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); +// wq.groupBy(TjProject::getHisXmbm); +// wq.in(TjProject::getDeptId, "241", "317"); + wq.in(TjProject::getDeptId,deptService.getJyDeptIds()); + List<TjProject> projects = projectService.list(wq); + if (null != projects && projects.size() > 0) { + for (TjProject project : projects) { + if (0 == project.getProParentId() && project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { + if (null != project.getHisXmbm()) { + OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); + detailsDto.setMxfyxmbm(project.getHisXmbm()); + if (project.getSfzhfy().equals("Y")) { + detailsDto.setSfzhfy("1"); + } else { + detailsDto.setSfzhfy("0"); } + detailsDto.setSl(project.getSl()); + detailsDto.setProjg(project.getProPrice()); + detailsDtos.add(detailsDto); + } + if(project.getProId()==1740177341251154377L){ + OutpinmedicapplyDetilsDto detilsDto=new OutpinmedicapplyDetilsDto(); + detilsDto.setYpbm("00006670"); + detilsDto.setPcbm("06"); + detilsDto.setSl("1"); + detilsDto.setDj("60"); + detilsDto.setDcjl("1"); + detilsDto.setPj("60"); + detilsDto.setJj("60"); + detilsDto.setJldw(""); + detilsDto.setTjbm(""); + detilsDto.setPs(""); + detilsDto.setPsbm(""); + detilsDto.setYyts(""); + detilsDto.setXtph(""); + detilsDto.setScph(""); + detilsDto.setYpxq(""); + detilsDto.setCdbm(""); + detilsDto.setKfdw(""); + detilsDto.setYfdw(""); + detilsDto.setYysm(""); + detilsDto.setFzbl("1"); + detilsDto.setZh("0"); + outpinmedicapplyDetilsDtos.add(detilsDto); } } - dto.setDetails(detailsDtos); - AjaxResult ajaxResult1 = controller.Outpintestapply(dto); - String result5 = getAjaxResult(ajaxResult1); - JSONObject object3 = getJSONObject(result5); - String code3 = object3.getStr("ResultCode"); - if (code3.equals("0")) { - Map<String, Object> datas = object3.getJSONObject("ResultData"); - datas.put("cardId", customer.getCardId()); - JSONObject object4 = JSONUtil.parseObj(datas); - LambdaQueryWrapper<HisApiConfig> lambdaQueryWrapper = new LambdaQueryWrapper<>(); - lambdaQueryWrapper.eq(HisApiConfig::getApiMethod, "Outpintestapply"); - HisApiConfig hisApiConfig = hisApiConfigService.getOne(lambdaQueryWrapper); - hisApiGetMethodService.save(object4, "Outpintestapply",hisApiConfig); - - } - //闂ㄨ瘖妫�鏌ョ敵璇� - OutpinexamapplyDto outpinexamapplyDto = new OutpinexamapplyDto(); - outpinexamapplyDto.setHisRegistrationId(customer.getCardId()); - outpinexamapplyDto.setSfzh(customer.getCusIdcard()); - outpinexamapplyDto.setSqysbm(SecurityUtils.getUsername()); - outpinexamapplyDto.setMzksbm("0101"); - outpinexamapplyDto.setCzybm("00029"); - outpinexamapplyDto.setCzyksbm("0101"); - List<TbTransition> detailLists = tbTransitionService.getTbTransitionListByCusId(customer.getCusIdcard(), customer.getCardId()); - List<OutpintestapplyDetailsDto> detailsDtoss = new ArrayList<>(); - if (null != detailLists && detailLists.size() > 0) { - LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); - wq.in(TjProject::getProId, detailLists.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); - wq.groupBy(TjProject::getHisXmbm); - wq.in(TjProject::getDeptId, "247", "248", "249", "250", "251", "252", "271", "273", "274", "275"); - List<TjProject> projects = projectService.list(wq); - if (null != projects && projects.size() > 0) { - for (TjProject project : projects) { - OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); - if (0 == project.getProParentId() && project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { - if (null != project.getHisXmbm()) { - detailsDto.setMxfyxmbm(project.getHisXmbm()); -// if(project.getHisXmbm().toLowerCase().contains("z".toLowerCase())){ - detailsDto.setSfzhfy("1"); -// }else { -// detailsDto.setSfzhfy("0"); -// } - } else { - detailsDto.setMxfyxmbm(""); - detailsDto.setSfzhfy("0"); - } - detailsDto.setSl(1); - detailsDtoss.add(detailsDto); - } - } - } - } - outpinexamapplyDto.setDetails(detailsDtoss); - AjaxResult ajaxResult2 = controller.Outpinexamapply(outpinexamapplyDto); - String result6 = getAjaxResult(ajaxResult2); - JSONObject object5 = getJSONObject(result6); - String code4 = object5.getStr("ResultCode"); - if (code4.equals("0")) { - Map<String, Object> map = object5.getJSONObject("ResultData"); - map.put("cardId", customer.getCardId()); - JSONObject jsonObject = JSONUtil.parseObj(map); - LambdaQueryWrapper<HisApiConfig> lambdaQueryWrapper = new LambdaQueryWrapper<>(); - lambdaQueryWrapper.eq(HisApiConfig::getApiMethod, "Outpinexamapply"); - HisApiConfig hisApiConfig = hisApiConfigService.getOne(lambdaQueryWrapper); - hisApiGetMethodService.save(jsonObject, "Outpinexamapply",hisApiConfig); - - } - - //闂ㄨ瘖娌荤枟澶勭疆鐢宠 - OutpintreatapplyDto dao = new OutpintreatapplyDto(); - dao.setHisRegistrationId(customer.getCardId()); - dao.setSfzh(customer.getCusIdcard()); - dao.setSqysbm(SecurityUtils.getUsername()); - dao.setMzksbm("0101"); - dao.setSjrq(date); - dao.setCzybm("00029"); - dao.setCzyksbm("0101"); - List<TbTransition> details = tbTransitionService.getTbTransitionListByCusId(customer.getCusIdcard(), customer.getCardId()); - List<OutpintestapplyDetailsDto> detailDtos = new ArrayList<>(); - if (null != details && details.size() > 0) { - LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); - wq.in(TjProject::getProId, details.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); - wq.groupBy(TjProject::getHisXmbm); - wq.in(TjProject::getDeptId, "100", "240", "253", "254", "255", "257", "258", "259", "269", "270"); - List<TjProject> projects = projectService.list(wq); - if (null != projects && projects.size() > 0) { - for (TjProject project : projects) { - OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); - if (0 == project.getProParentId() && project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { - if (null != project.getHisXmbm()) { - detailsDto.setMxfyxmbm(project.getHisXmbm()); - if(project.getHisXmbm().toLowerCase().contains("z".toLowerCase())){ - detailsDto.setSfzhfy("1"); - }else { - detailsDto.setSfzhfy("0"); - } - } else { - detailsDto.setMxfyxmbm(""); - detailsDto.setSfzhfy("0"); - } - detailsDto.setSl(1); - detailDtos.add(detailsDto); - } - } - } - } - dao.setDetails(detailDtos); - AjaxResult mzylyzsq1 = controller.Outpintreatapply(dao); - String mzylyzsq2 = getAjaxResult(mzylyzsq1); - JSONObject mzylyzsq3 = getJSONObject(mzylyzsq2); - String code5 = mzylyzsq3.getStr("ResultCode"); - if (code5.equals("0")) { - Map<String, Object> map = mzylyzsq3.getJSONObject("ResultData"); - map.put("cardId", customer.getCardId()); - JSONObject jsonObject = JSONUtil.parseObj(map); - LambdaQueryWrapper<HisApiConfig> lambdaQueryWrapper = new LambdaQueryWrapper<>(); - lambdaQueryWrapper.eq(HisApiConfig::getApiMethod, "Outpinmedapply"); - HisApiConfig hisApiConfig = hisApiConfigService.getOne(lambdaQueryWrapper); - hisApiGetMethodService.save(jsonObject, "Outpinmedapply",hisApiConfig); - - } - -// } } } } -// } + if (detailsDtos.size() > 0) { + dto.setDetails(detailsDtos); + AjaxResult ajaxResult1 = controller.Outpintestapply(dto); + String result5 = getAjaxResult(ajaxResult1); + JSONObject object3 = getJSONObject(result5); + String code3 = object3.getStr("ResultCode"); + if (code3.equals("0")) { + List<OutpintestapplyDetailsDto> details = dto.getDetails(); + for (OutpintestapplyDetailsDto detail : details) { + LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree(); + tree.setCardId(dto.getHisRegistrationId()); + tree.setPationid(customer.getPationId()); + JSONObject resultData = object3.getJSONObject("ResultData"); + tree.setSqdh(resultData.getStr("jysqdh")); + tree.setFyhj(resultData.getStr("fyhj")); + String mxfyxmbm = detail.getMxfyxmbm(); + tree.setHisXmdm(mxfyxmbm); + tree.setType("妫�楠�"); + tree.setTjPrice(String.valueOf(detail.getProjg())); + LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>(); + if (detail.getSfzhfy().equals("1")) + wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, mxfyxmbm); + else wrapper1.eq(LtkjJfzhglmxjfxmzd::getXmdm, mxfyxmbm); + 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); + } + } + } + //闂ㄨ瘖妫�鏌ョ敵璇� + OutpinexamapplyDto outpinexamapplyDto = new OutpinexamapplyDto(); + outpinexamapplyDto.setHisRegistrationId(cardId); + outpinexamapplyDto.setSfzh(customer.getCusIdcard()); + outpinexamapplyDto.setSqysbm("00029"); + outpinexamapplyDto.setMzksbm("0101"); + outpinexamapplyDto.setCzybm("00029"); + outpinexamapplyDto.setCzyksbm("0101"); + outpinexamapplyDto.setSfjz("0"); +// List<TbTransition> detailLists = tbTransitionService.getTbTransitionListByCusId(customer.getCusIdcard(),cardId); + List<OutpintestapplyDetailsDto> detailsDtoss = new ArrayList<>(); + if (null != detailList && detailList.size() > 0) { + LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); + wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); + wq.in(TjProject::getDeptId,deptService.getJcDeptIds()); + List<TjProject> projects = projectService.list(wq); + if (null != projects && projects.size() > 0) { + for (TjProject project : projects) { + if (0 == project.getProParentId() && project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { + if (null != project.getHisXmbm()) { + OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); + detailsDto.setMxfyxmbm(project.getHisXmbm()); + if (project.getSfzhfy().equals("Y")) { + detailsDto.setSfzhfy("1"); + } else { + detailsDto.setSfzhfy("0"); + } + detailsDto.setSl(project.getSl()); + detailsDto.setProjg(project.getProPrice()); + detailsDtoss.add(detailsDto); + } + if(project.getProId()==1740177341251154377L){ + OutpinmedicapplyDetilsDto detilsDto=new OutpinmedicapplyDetilsDto(); + detilsDto.setYpbm("00006670"); + detilsDto.setPcbm("06"); + detilsDto.setSl("1"); + detilsDto.setDj("60"); + detilsDto.setDcjl("1"); + detilsDto.setPj("60"); + detilsDto.setJj("60"); + detilsDto.setJldw(""); + detilsDto.setTjbm(""); + detilsDto.setPs(""); + detilsDto.setPsbm(""); + detilsDto.setYyts(""); + detilsDto.setXtph(""); + detilsDto.setScph(""); + detilsDto.setYpxq(""); + detilsDto.setCdbm(""); + detilsDto.setKfdw(""); + detilsDto.setYfdw(""); + detilsDto.setYysm(""); + detilsDto.setFzbl("1"); + detilsDto.setZh("0"); + outpinmedicapplyDetilsDtos.add(detilsDto); + } + } + } + } + } + if (detailsDtoss.size() > 0) { + outpinexamapplyDto.setDetails(detailsDtoss); + AjaxResult ajaxResult2 = controller.Outpinexamapply(outpinexamapplyDto); + String result6 = getAjaxResult(ajaxResult2); + JSONObject object5 = getJSONObject(result6); + String code4 = object5.getStr("ResultCode"); + if (code4.equals("0")) { + List<OutpintestapplyDetailsDto> details = outpinexamapplyDto.getDetails(); + for (OutpintestapplyDetailsDto detail : details) { + LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree(); + tree.setCardId(outpinexamapplyDto.getHisRegistrationId()); + tree.setPationid(customer.getPationId()); + JSONObject resultData = object5.getJSONObject("ResultData"); + tree.setSqdh(resultData.getStr("jcsqdh")); + tree.setFyhj(resultData.getStr("fyhj")); + String mxfyxmbm = detail.getMxfyxmbm(); + tree.setHisXmdm(mxfyxmbm); + tree.setType("妫�鏌�"); + tree.setTjPrice(String.valueOf(detail.getProjg())); + LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>(); + if (detail.getSfzhfy().equals("1")) + wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, mxfyxmbm); + else wrapper1.eq(LtkjJfzhglmxjfxmzd::getXmdm, mxfyxmbm); + 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); + } + } + } + + + //闂ㄨ瘖娌荤枟澶勭疆鐢宠 + OutpintreatapplyDto dao = new OutpintreatapplyDto(); + dao.setHisRegistrationId(cardId); + dao.setSfzh(customer.getCusIdcard()); + dao.setSqysbm("00029"); + dao.setMzksbm("0101"); + dao.setSjrq(date); + dao.setCzybm("00029"); + dao.setCzyksbm("0101"); + dao.setSfjz("0"); +// List<TbTransition> details = tbTransitionService.getTbTransitionListByCusId(customer.getCusIdcard(),cardId); + List<OutpintestapplyDetailsDto> detailDtos = new ArrayList<>(); + if (null != detailList && detailList.size() > 0) { + LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); + wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); + wq.in(TjProject::getDeptId,deptService.getCzDeptIds()); + List<TjProject> projects = projectService.list(wq); + if (null != projects && projects.size() > 0) { + for (TjProject project : projects) { + if (0 == project.getProParentId() && project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { + if (null != project.getHisXmbm()) { + OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); + detailsDto.setMxfyxmbm(project.getHisXmbm()); + if (project.getSfzhfy().equals("Y")) { + detailsDto.setSfzhfy("1"); + } else { + detailsDto.setSfzhfy("0"); + } + detailsDto.setSl(project.getSl()); + detailsDto.setProjg(project.getProPrice()); + detailDtos.add(detailsDto); + } + if(project.getProId()==1740177341251154377L){ + OutpinmedicapplyDetilsDto detilsDto=new OutpinmedicapplyDetilsDto(); + detilsDto.setYpbm("00006670"); + detilsDto.setPcbm("06"); + detilsDto.setSl("1"); + detilsDto.setDj("60"); + detilsDto.setDcjl("1"); + detilsDto.setPj("60"); + detilsDto.setJj("60"); + detilsDto.setJldw(""); + detilsDto.setTjbm(""); + detilsDto.setPs(""); + detilsDto.setPsbm(""); + detilsDto.setYyts(""); + detilsDto.setXtph(""); + detilsDto.setScph(""); + detilsDto.setYpxq(""); + detilsDto.setCdbm(""); + detilsDto.setKfdw(""); + detilsDto.setYfdw(""); + detilsDto.setYysm(""); + detilsDto.setFzbl("1"); + detilsDto.setZh("0"); + outpinmedicapplyDetilsDtos.add(detilsDto); + } + } + } + } + } + if (detailDtos.size() > 0) { + dao.setDetails(detailDtos); + AjaxResult mzylyzsq1 = controller.Outpintreatapply(dao); + String mzylyzsq2 = getAjaxResult(mzylyzsq1); + JSONObject mzylyzsq3 = getJSONObject(mzylyzsq2); + String code5 = mzylyzsq3.getStr("ResultCode"); + if (code5.equals("0")) { + List<OutpintestapplyDetailsDto> details1 = dao.getDetails(); + for (OutpintestapplyDetailsDto detail : details1) { + LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree(); + tree.setCardId(dao.getHisRegistrationId()); + tree.setPationid(customer.getPationId()); + JSONObject resultData = mzylyzsq3.getJSONObject("ResultData"); + tree.setSqdh(resultData.getStr("zlczh")); + tree.setFyhj(resultData.getStr("fyhj")); + String mxfyxmbm = detail.getMxfyxmbm(); + tree.setHisXmdm(mxfyxmbm); + tree.setType("澶勭疆"); + tree.setTjPrice(String.valueOf(detail.getProjg())); + LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>(); + if (detail.getSfzhfy().equals("1")) + wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, mxfyxmbm); + else wrapper1.eq(LtkjJfzhglmxjfxmzd::getXmdm, mxfyxmbm); + 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); + } + } + } + + //鑽搧鐢宠 + if(outpinmedicapplyDetilsDtos.size()>0){ + OutpinmedicapplyDto dto1=new OutpinmedicapplyDto(); + dto1.setHisRegistrationId(cardId); + dto1.setSfzh(customer.getCusIdcard()); + dto1.setSqysbm("00029"); + dto1.setMzksbm("0101"); + dto1.setSjrq(date); + dto1.setCzybm("00029"); + dto1.setCzyksbm("0101"); + dto1.setCflxbm("A"); + dto1.setYfbm("1"); + dto1.setFyts("1"); + dto1.setMzzd(""); + dto1.setDetails(outpinmedicapplyDetilsDtos); + AjaxResult result = controller.Outpinmedicapply(dto1); + String result1 = getAjaxResult(result); + JSONObject object = getJSONObject(result1); + String code = object.getStr("ResultCode"); + if(null !=code && code.equals("0")){ + JSONObject resultData = object.getJSONObject("ResultData"); +// Map<String, Object> resultDatasss = (Map<String, Object>) resultData.get(0); + String cfh = resultData.getStr("cfh"); + log.info("鑽搧鐢宠鍚庣殑澶勬柟鍙锋槸: "+cfh+" outpinmedicapplyDetilsDtos 閲岄潰鐨勫�间负: "+outpinmedicapplyDetilsDtos.toString()); + for (OutpinmedicapplyDetilsDto detilsDto : outpinmedicapplyDetilsDtos) { + TjCf cf=new TjCf(); + cf.setCardId(cardId); + cf.setSfzh(customer.getCusIdcard()); + cf.setCfh(cfh); + cf.setSqysbm("00029"); + cf.setSqysxm("鐜嬪仴钀�"); + cf.setMzksbn("0101"); + cf.setSqrq(date); + cf.setCzybm("00029"); + cf.setYpbm(detilsDto.getYpbm()); + cf.setYpmc("灏跨礌[14C]鍛兼皵璇曢獙鑽洅"); + cf.setSl(String.valueOf(detilsDto.getSl())); + cf.setDj(String.valueOf(detilsDto.getDj())); + cf.setDcjl(String.valueOf(detilsDto.getDcjl())); + cf.setPj(String.valueOf(detilsDto.getPj())); + cf.setJj(String.valueOf(detilsDto.getJj())); + cf.setCreateTime(new Date()); + cfService.save(cf); + } + } + } + + return AjaxResult.success(); } -// } -//} -// } -// } //閫�璐瑰悗鍙栨秷鎺ヨ瘖浣滃簾鐢宠鍗曠瓑鎿嶄綔 @Transactional - public void ZfHisApiMethods(TjCustomer customer, TjOrder order) { + public boolean ZfHisApiMethods(TjCustomer customer, TjOrder order) { Date dates = new Date(); final String date = DateUtil.format(dates, "yyyy-MM-dd HH:mm:ss"); - String jcsqdh = orderService.getHuoQuJcsqdh(order.getCardId()); + List<String> jcsqdh = orderService.getHuoQuJcsqdh(order.getCardId()); - String jysqdh = orderService.getHuoQuJysqdh(order.getCardId()); + List<String> jysqdh = orderService.getHuoQuJysqdh(order.getCardId()); - String zlsqdh = orderService.getHuoQuZlsqdh(order.getCardId()); + List<String> zlsqdh = orderService.getHuoQuZlsqdh(order.getCardId()); - //浣滃簾闂ㄨ瘖妫�鏌ョ敵璇� - AjaxResult result = controller.Outpindelexamapply(order.getCardId(), "00029", jcsqdh); - String result1 = getAjaxResult(result); - JSONObject object = getJSONObject(result1); - String code = object.getStr("ResultCode"); - if (code.equals("0")) { - orderService.delHuoQuJcsqdh(order.getCardId()); + + List<String> cfhs = cfService.getCfhs(order.getCardId()); + + //2.1.6.5 浣滃簾闂ㄨ瘖妫�鏌ョ敵璇� + if (null != jcsqdh && jcsqdh.size()>0) { + for (String s : jcsqdh) { + AjaxResult result = controller.Outpindelexamapply(order.getCardId(), "00029", s); + String result1 = getAjaxResult(result); + JSONObject object = getJSONObject(result1); + String code = object.getStr("ResultCode"); + if (code.equals("0")) { + orderService.delHuoQuJcsqdh(order.getCardId()); + } +// else { +// return false; +// } + } + } - //浣滃簾闂ㄨ瘖鐢宠 - AjaxResult ajaxResult = controller.Outpindeltestapply(order.getCardId(), "00029", jysqdh); - String result2 = getAjaxResult(ajaxResult); - JSONObject object1 = getJSONObject(result2); - String code1 = object1.getStr("ResultCode"); - if (code1.equals("0")) { - orderService.delHuoQuJysqdh(order.getCardId()); + + //2.1.6.3 浣滃簾闂ㄨ瘖妫�楠岀敵璇� + + AjaxResult ajaxResult = null; + String result2 = null; + JSONObject object1 = null; + String code1 = null; + + if (null != jysqdh && jysqdh.size()>0) { + for (String s : jysqdh) { + ajaxResult = controller.Outpindeltestapply(order.getCardId(), "00029", s); + result2 = getAjaxResult(ajaxResult); + object1 = getJSONObject(result2); + code1 = object1.getStr("ResultCode"); + if (code1.equals("0")) { + orderService.delHuoQuJysqdh(order.getCardId()); + } +// else { +// return false; +// } + } } - controller.Outpinunconapply(order.getCardId(), date, "00029"); + //2.1.6.9 浣滃簾闂ㄨ瘖娌荤枟澶勭疆鐢宠 + if (null != zlsqdh && zlsqdh.size()>0) { + for (String s : zlsqdh) { + ajaxResult = controller.Outpintdelreatapply(order.getCardId(), "00029", s); + result2 = getAjaxResult(ajaxResult); + object1 = getJSONObject(result2); + code1 = object1.getStr("ResultCode"); + if (code1.equals("0")) { + orderService.delHuoQuZlsqdh(order.getCardId()); + } + } + } - controller.Outpindelmedapply(order.getCardId(), "00029", zlsqdh); + //浣滃簾鑽搧鐢宠 + if(null !=cfhs && cfhs.size()>0){ + for (String cfh : cfhs) { + AjaxResult result = controller.Outpindelmedicapply(order.getCardId(), "00029", cfh); + String result1 = getAjaxResult(result); + JSONObject object = getJSONObject(result1); + String code = object.getStr("ResultCode"); + if(null !=code && code.equals("0")){ + cfService.delCfByCardId(cfh); + } + } + } + + //2.1.3 闂ㄨ瘖鍖荤敓鍙栨秷鎺ヨ瘖 + ajaxResult = controller.Outpinunconapply(order.getCardId(), date, "00029"); + result2 = getAjaxResult(ajaxResult); + object1 = getJSONObject(result2); + code1 = object1.getStr("ResultCode"); +// if (!code1.equals("0")) { +// return false; +// } + return true; } + + //浣滃簾琛ュ綍椤圭洰 + public boolean ZfBlXm(List<String> bldhs, TjOrder order) { + + if(null !=bldhs && bldhs.size()>0){ + try { + for (String bldh : bldhs) { + List<String> jcsqdh = orderService.getHuoQuBlJcsqdh(order.getCardId(),bldh); + + List<String> jysqdh = orderService.getHuoQuBlJysqdh(order.getCardId(),bldh); + + + List<String> zlsqdh = orderService.getHuoQuBlZlsqdh(order.getCardId(),bldh); + + + List<String> cfhs = cfService.getCfBlhs(order.getCardId(),bldh); + + //2.1.6.5 浣滃簾闂ㄨ瘖妫�鏌ョ敵璇� + if (null != jcsqdh && jcsqdh.size()>0) { + for (String s : jcsqdh) { + AjaxResult result = controller.Outpindelexamapply(order.getCardId(), "00029", s); + String result1 = getAjaxResult(result); + JSONObject object = getJSONObject(result1); + String code = object.getStr("ResultCode"); + if (code.equals("0")) { + orderService.delHuoQuBlJcsqdh(order.getCardId(),bldh); + } + } + + } + + + //2.1.6.3 浣滃簾闂ㄨ瘖妫�楠岀敵璇� + + AjaxResult ajaxResult = null; + String result2 = null; + JSONObject object1 = null; + String code1 = null; + + if (null != jysqdh && jysqdh.size()>0) { + for (String s : jysqdh) { + ajaxResult = controller.Outpindeltestapply(order.getCardId(), "00029", s); + result2 = getAjaxResult(ajaxResult); + object1 = getJSONObject(result2); + code1 = object1.getStr("ResultCode"); + if (code1.equals("0")) { + orderService.delHuoQuBlJysqdh(order.getCardId(),bldh); + } + } + } + + //2.1.6.9 浣滃簾闂ㄨ瘖娌荤枟澶勭疆鐢宠 + if (null != zlsqdh && zlsqdh.size()>0) { + for (String s : zlsqdh) { + ajaxResult = controller.Outpintdelreatapply(order.getCardId(), "00029", s); + result2 = getAjaxResult(ajaxResult); + object1 = getJSONObject(result2); + code1 = object1.getStr("ResultCode"); + if (code1.equals("0")) { + orderService.delHuoQuZlsqdh(order.getCardId(),bldh); + } + } + } + + //浣滃簾鑽搧鐢宠 + if(null !=cfhs && cfhs.size()>0){ + for (String cfh : cfhs) { + AjaxResult result = controller.Outpindelmedicapply(order.getCardId(), "00029", cfh); + String result1 = getAjaxResult(result); + JSONObject object = getJSONObject(result1); + String code = object.getStr("ResultCode"); + if(null !=code && code.equals("0")){ + cfService.delCfByCardId(cfh); + } + } + } + + return true; + } + } catch (Exception e) { + e.printStackTrace(); + return false; + } + } + return true; + } + + //閫�璐瑰悗鍙栨秷鎺ヨ瘖浣滃簾鐢宠鍗曠瓑鎿嶄綔 + public boolean ZfHisApiMethod(String jzh) { + Date dates = new Date(); + final String date = DateUtil.format(dates, "yyyy-MM-dd HH:mm:ss"); + + List<String> jcsqdh = orderService.getHuoQuJcsqdh(jzh); + + List<String> jysqdh = orderService.getHuoQuJysqdh(jzh); + + + List<String> zlsqdh = orderService.getHuoQuZlsqdh(jzh); + + + List<String> cfhs = cfService.getCfhs(jzh); + + //2.1.6.5 浣滃簾闂ㄨ瘖妫�鏌ョ敵璇� + if (null != jcsqdh && jcsqdh.size()>0) { + for (String s : jcsqdh) { + AjaxResult result = controller.Outpindelexamapply(jzh, "00029", s); + String result1 = getAjaxResult(result); + JSONObject object = getJSONObject(result1); + String code = object.getStr("ResultCode"); + if (code.equals("0")) { + orderService.delHuoQuJcsqdh(jzh); + } + } + + } + + + //2.1.6.3 浣滃簾闂ㄨ瘖妫�楠岀敵璇� + + AjaxResult ajaxResult = null; + String result2 = null; + JSONObject object1 = null; + String code1 = null; + + if (null != jysqdh && jysqdh.size()>0) { + for (String s : jysqdh) { + ajaxResult = controller.Outpindeltestapply(jzh, "00029", s); + result2 = getAjaxResult(ajaxResult); + object1 = getJSONObject(result2); + code1 = object1.getStr("ResultCode"); + if (code1.equals("0")) { + orderService.delHuoQuJysqdh(jzh); + } + } + } + + //2.1.6.9 浣滃簾闂ㄨ瘖娌荤枟澶勭疆鐢宠 + if (null != zlsqdh && zlsqdh.size()>0) { + for (String s : zlsqdh) { + ajaxResult = controller.Outpintdelreatapply(jzh, "00029", s); + result2 = getAjaxResult(ajaxResult); + object1 = getJSONObject(result2); + code1 = object1.getStr("ResultCode"); + if (code1.equals("0")) { + orderService.delHuoQuZlsqdh(jzh); + } + } + } + + //浣滃簾鑽搧鐢宠 + if(null !=cfhs && cfhs.size()>0){ + for (String cfh : cfhs) { + AjaxResult result = controller.Outpindelmedicapply(jzh, "00029", cfh); + String result1 = getAjaxResult(result); + JSONObject object = getJSONObject(result1); + String code = object.getStr("ResultCode"); + if(null !=code && code.equals("0")){ + cfService.delCfByCardId(cfh); + } + } + } + + + //2.1.3 闂ㄨ瘖鍖荤敓鍙栨秷鎺ヨ瘖 + ajaxResult = controller.Outpinunconapply(jzh, date, "00029"); + result2 = getAjaxResult(ajaxResult); + object1 = getJSONObject(result2); + code1 = object1.getStr("ResultCode"); + return true; + } + //鑾峰彇闂ㄨ瘖缁撶畻璁板綍 @Transactional public void getHisMzJsJl(TjOrder order) { -- Gitblit v1.8.0