From 0ac41ddb2dc383d0076da6dfa85ddae9944218cc Mon Sep 17 00:00:00 2001 From: 赵文轩 <1652863494@qq.com> Date: 星期三, 15 一月 2025 15:08:29 +0800 Subject: [PATCH] 20250115 --- ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TbLisSqMapper.java | 18 ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java | 162 +++-- ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java | 15 ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisApiMethodService.java | 58 + ltkj-admin/src/main/java/com/ltkj/web/controller/system/SamplingServiceApi.java | 89 +++ ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TbLisSqServiceImpl.java | 22 ltkj-hosp/src/main/resources/mapper/TbLisSqMapper.xml | 68 ++ ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisApiMethod.java | 873 ++++++++++++++++++++++++------- ltkj-hosp/src/main/java/com/ltkj/hosp/service/TbLisSqService.java | 13 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjSamplingController.java | 86 +++ ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TbLisSq.java | 101 +++ ltkj-framework/src/main/java/com/ltkj/framework/config/DruidConfig.java | 125 +++- 12 files changed, 1,320 insertions(+), 310 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 fe72568..ee6a6e9 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 @@ -2,11 +2,15 @@ import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.bean.copier.CopyOptions; import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.IdUtil; +import cn.hutool.core.util.StrUtil; import cn.hutool.json.JSONArray; import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.ltkj.common.core.domain.AjaxResult; import com.ltkj.common.core.domain.entity.SysUser; import com.ltkj.common.utils.SecurityUtils; @@ -30,6 +34,7 @@ import java.math.BigDecimal; import java.util.*; import java.util.stream.Collectors; +import java.util.stream.Stream; /* @Authot:zjh * @Date: 2024-05-30 @@ -82,6 +87,8 @@ private ITjSamplingService tjSamplingService; @Autowired private SamplingServiceApi samplingService; + @Autowired + private TbLisSqService tbLisSqService; //灏嗘柟娉曡繑鍥炲�艰В鏋愭垚json鏍煎紡 @@ -191,6 +198,381 @@ //浣撴瀵筯is鐢宠鍗曡皟鐢ㄦ柟娉� +// public AjaxResult tijianshenqing(TjCustomer customer, String date,String cardId) { +// String dept = configService.selectConfigByKey("request_default_dept"); +// String ysbm = configService.selectConfigByKey("request_default_ysbm"); +// String ysmc = configService.selectConfigByKey("request_default_ysmc"); +// +// List<TbTransition> detailList = tbTransitionService.getTbTransitionListByCusId(customer.getCusIdcard(),cardId); +// +// //妫�楠岀敵璇� +// OutpintestapplyDto dto = new OutpintestapplyDto(); +// dto.setHisRegistrationId(cardId); +// dto.setSfzh(customer.getCusIdcard()); +// dto.setSqysbm(ysbm); +// dto.setMzksbm(dept); +// dto.setSjrq(date); +// dto.setCzybm(ysbm); +// dto.setCzyksbm(dept); +// dto.setSfjz("0"); +// +// List<OutpintestapplyDetailsDto> detailsDtos = new ArrayList<>(); +// List<OutpinmedicapplyDetilsDto> outpinmedicapplyDetilsDtos =new ArrayList<>(); +// if (null != detailList && !detailList.isEmpty()) { +// 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.isEmpty()) { +// for (TjProject project : projects) { +// if (0 == project.getProParentId() && project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { +// if (null != project.getHisXmbm()) { +// //TODO 杩欓噷detailsDto 鏀规垚浼犻�掓墍鏈夌殑灏忛」 妫�楠屾槸鍚堝苟涔嬪悗杩涜鍙戦�� 涓�涓牱鏈唬鐮佷竴娆¤姹� +// // 鎵�鏈夌殑灏忛」鍏ㄩ儴娣诲姞鍒拌繖涓泦鍚堜箣涓� +// 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); +// } +// } +// } +// } +// } +// if (!detailsDtos.isEmpty()) { +// 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.setService("his"); +// 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); +// } +// // TODO 涓汉浠ュ強鍥綋 鏆備笉鍚戦噰鏍风鐞嗗啓鏁版嵁 +// // HIS鍙戦�佹棤娉曞悎骞舵搷浣� 鏃犳硶鑾峰彇LIS鐨勬楠屽簭鍙� 鏉$爜鏃犳硶鎵撳嵃 +//// TjOrder tjOrder = orderService.getOrderByCardId(cardId); +//// if(null !=tjOrder){ +//// List<TjOrderDetail> dengJi = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId()); +//// tjSysAsyncService.addCaiYangDengJi(dengJi,!dengJi.isEmpty(),tjOrder, SecurityUtils.getLoginUser().getUser(), null); +//// } +// } +// } +// +// //闂ㄨ瘖妫�鏌ョ敵璇� +// OutpinexamapplyDto outpinexamapplyDto = new OutpinexamapplyDto(); +// outpinexamapplyDto.setHisRegistrationId(cardId); +// outpinexamapplyDto.setSfzh(customer.getCusIdcard()); +// outpinexamapplyDto.setSqysbm(ysbm); +// outpinexamapplyDto.setMzksbm(dept); +// outpinexamapplyDto.setCzybm(ysbm); +// outpinexamapplyDto.setCzyksbm(dept); +// outpinexamapplyDto.setSfjz("0"); +//// List<TbTransition> detailLists = tbTransitionService.getTbTransitionListByCusId(customer.getCusIdcard(),cardId); +// List<OutpintestapplyDetailsDto> detailsDtoss = new ArrayList<>(); +// if (null != detailList && !detailList.isEmpty()) { +// 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.isEmpty()) { +// for (TjProject project : projects) { +// if (0 == project.getProParentId() && project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { +// if (null != project.getHisXmbm()) { +// //TODO 杩欓噷鏀逛负灏忛」闆嗗悎 涔熸槸鎸夌収鍘熸湰鐨勬煡璇㈡墍鏈夌殑澶ч」 鐒跺悗鏍规嵁澶ч」鏌ュ嚭鑷繁鐨勫皬椤� 涓�涓ぇ椤逛负涓�娆¤姹� +// 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.setService("his"); +// 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(ysbm); +// dao.setMzksbm(dept); +// dao.setSjrq(date); +// dao.setCzybm(ysbm); +// dao.setCzyksbm(dept); +// 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(ysbm); +// dto1.setMzksbm(dept); +// dto1.setSjrq(date); +// dto1.setCzybm(ysbm); +// dto1.setCzyksbm(dept); +// 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(ysbm); +// cf.setSqysxm(ysmc); +// cf.setMzksbn(dept); +// cf.setSqrq(date); +// cf.setCzybm(ysbm); +// 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(); +// } + public AjaxResult tijianshenqing(TjCustomer customer, String date,String cardId) { String dept = configService.selectConfigByKey("request_default_dept"); String ysbm = configService.selectConfigByKey("request_default_ysbm"); @@ -199,17 +581,6 @@ List<TbTransition> detailList = tbTransitionService.getTbTransitionListByCusId(customer.getCusIdcard(),cardId); //妫�楠岀敵璇� - OutpintestapplyDto dto = new OutpintestapplyDto(); - dto.setHisRegistrationId(cardId); - dto.setSfzh(customer.getCusIdcard()); - dto.setSqysbm(ysbm); - dto.setMzksbm(dept); - dto.setSjrq(date); - dto.setCzybm(ysbm); - dto.setCzyksbm(dept); - dto.setSfjz("0"); - - List<OutpintestapplyDetailsDto> detailsDtos = new ArrayList<>(); List<OutpinmedicapplyDetilsDto> outpinmedicapplyDetilsDtos =new ArrayList<>(); if (null != detailList && !detailList.isEmpty()) { LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); @@ -219,108 +590,119 @@ wq.in(TjProject::getDeptId,deptService.getJyDeptIds()); List<TjProject> projects = projectService.list(wq); if (null != projects && !projects.isEmpty()) { - 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"); + List<TjProject> notNull = projects.stream().filter(i -> i.getSpecimenType() != null).collect(Collectors.toList()); + List<TjProject> isNull = projects.stream().filter(i -> i.getSpecimenType() == null).collect(Collectors.toList()); + Map<String, List<TjProject>> listMap = notNull.stream().collect(Collectors.groupingBy(TjProject::getSpecimenType)); + if (!isNull.isEmpty()) + listMap.put("",isNull); + for (Map.Entry<String, List<TjProject>> entry : listMap.entrySet()) { + OutpintestapplyDto dto = new OutpintestapplyDto(); + dto.setHisRegistrationId(cardId); + dto.setSfzh(customer.getCusIdcard()); + dto.setSqysbm(ysbm); + dto.setMzksbm(dept); + dto.setSjrq(date); + dto.setCzybm(ysbm); + dto.setCzyksbm(dept); + dto.setSfjz("0"); + List<OutpintestapplyDetailsDto> detailsDtos = new ArrayList<>(); + List<TjProject> value = entry.getValue(); + for (TjProject project : value) { + 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()) && tjProject.getProPrice().compareTo(BigDecimal.ZERO) != 0) { + OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); + detailsDto.setMxfyxmbm(tjProject.getHisXmbm()); + if (tjProject.getSfzhfy().equals("Y")) { + detailsDto.setSfzhfy("1"); + } else { + detailsDto.setSfzhfy("0"); + } + detailsDto.setSl(tjProject.getSl()); + detailsDto.setProjg(tjProject.getProPrice()); + detailsDtos.add(detailsDto); } - 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); + 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 (!detailsDtos.isEmpty()) { - 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.setService("his"); - 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); - } - // TODO 涓汉浠ュ強鍥綋 鏆備笉鍚戦噰鏍风鐞嗗啓鏁版嵁 - // HIS鍙戦�佹棤娉曞悎骞舵搷浣� 鏃犳硶鑾峰彇LIS鐨勬楠屽簭鍙� 鏉$爜鏃犳硶鎵撳嵃 + if (!detailsDtos.isEmpty()) { + 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.setService("his"); + 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); + } + // TODO 涓汉浠ュ強鍥綋 鏆備笉鍚戦噰鏍风鐞嗗啓鏁版嵁 + // HIS鍙戦�佹棤娉曞悎骞舵搷浣� 鏃犳硶鑾峰彇LIS鐨勬楠屽簭鍙� 鏉$爜鏃犳硶鎵撳嵃 // TjOrder tjOrder = orderService.getOrderByCardId(cardId); // if(null !=tjOrder){ // List<TjOrderDetail> dengJi = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId()); // tjSysAsyncService.addCaiYangDengJi(dengJi,!dengJi.isEmpty(),tjOrder, SecurityUtils.getLoginUser().getUser(), null); // } + } + } + } } } //闂ㄨ瘖妫�鏌ョ敵璇� - OutpinexamapplyDto outpinexamapplyDto = new OutpinexamapplyDto(); - outpinexamapplyDto.setHisRegistrationId(cardId); - outpinexamapplyDto.setSfzh(customer.getCusIdcard()); - outpinexamapplyDto.setSqysbm(ysbm); - outpinexamapplyDto.setMzksbm(dept); - outpinexamapplyDto.setCzybm(ysbm); - outpinexamapplyDto.setCzyksbm(dept); - outpinexamapplyDto.setSfjz("0"); -// List<TbTransition> detailLists = tbTransitionService.getTbTransitionListByCusId(customer.getCusIdcard(),cardId); - List<OutpintestapplyDetailsDto> detailsDtoss = new ArrayList<>(); if (null != detailList && !detailList.isEmpty()) { LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); @@ -328,18 +710,32 @@ List<TjProject> projects = projectService.list(wq); if (null != projects && !projects.isEmpty()) { for (TjProject project : projects) { + OutpinexamapplyDto outpinexamapplyDto = new OutpinexamapplyDto(); + outpinexamapplyDto.setHisRegistrationId(cardId); + outpinexamapplyDto.setSfzh(customer.getCusIdcard()); + outpinexamapplyDto.setSqysbm(ysbm); + outpinexamapplyDto.setMzksbm(dept); + outpinexamapplyDto.setCzybm(ysbm); + outpinexamapplyDto.setCzyksbm(dept); + outpinexamapplyDto.setSfjz("0"); + List<OutpintestapplyDetailsDto> detailsDtoss = new ArrayList<>(); 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"); + 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()) && tjProject.getProPrice().compareTo(BigDecimal.ZERO) != 0) { + OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); + detailsDto.setMxfyxmbm(tjProject.getHisXmbm()); + if (tjProject.getSfzhfy().equals("Y")) { + detailsDto.setSfzhfy("1"); + } else { + detailsDto.setSfzhfy("0"); + } + detailsDto.setSl(tjProject.getSl()); + detailsDto.setProjg(tjProject.getProPrice()); + detailsDtoss.add(detailsDto); } - detailsDto.setSl(project.getSl()); - detailsDto.setProjg(project.getProPrice()); - detailsDtoss.add(detailsDto); } if(project.getProId()==1740177341251154377L){ OutpinmedicapplyDetilsDto detilsDto=new OutpinmedicapplyDetilsDto(); @@ -367,46 +763,46 @@ 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.setService("his"); - 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()); + 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.setService("his"); + 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); + } + } } - tree.setCreateTime(DateUtil.date()); - ltkjJianchajianyanTreeService.save(tree); } } } @@ -423,7 +819,6 @@ dao.setCzyksbm(dept); 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())); @@ -431,18 +826,24 @@ List<TjProject> projects = projectService.list(wq); if (null != projects && projects.size() > 0) { for (TjProject project : projects) { + List<OutpintestapplyDetailsDto> detailDtos = new ArrayList<>(); 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"); + 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()) && tjProject.getProPrice().compareTo(BigDecimal.ZERO) != 0) { + OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); + detailsDto.setMxfyxmbm(tjProject.getHisXmbm()); + if (tjProject.getSfzhfy().equals("Y")) { + detailsDto.setSfzhfy("1"); + } else { + detailsDto.setSfzhfy("0"); + } + detailsDto.setSl(tjProject.getSl()); + detailsDto.setProjg(tjProject.getProPrice()); + detailDtos.add(detailsDto); } - detailsDto.setSl(project.getSl()); - detailsDto.setProjg(project.getProPrice()); - detailDtos.add(detailsDto); } if(project.getProId()==1740177341251154377L){ OutpinmedicapplyDetilsDto detilsDto=new OutpinmedicapplyDetilsDto(); @@ -470,45 +871,45 @@ 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()); + 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); + } + } } - tree.setCreateTime(DateUtil.date()); - ltkjJianchajianyanTreeService.save(tree); } } } @@ -1146,4 +1547,78 @@ } + public void Getlabreginfoinfo(String hisCardId,String orderTime){ + AjaxResult ajaxResult = controller.Getlabreginfoinfo(hisCardId,true,orderTime); + saveLabRegInfo(ajaxResult); + ajaxResult = controller.Getlabreginfoinfo(hisCardId,false,orderTime); + saveLabRegInfo(ajaxResult); + } + + private void saveLabRegInfo(AjaxResult ajaxResult) { + if (ajaxResult.get("code").toString().equals("200")){ + JSONObject data = JSONUtil.parseObj(ajaxResult.get("data").toString()); + JSONObject response = data.getJSONObject("Response"); + if (response.getStr("ResultCode").equals("0")) { + JSONArray array = response.getJSONArray("ResultData"); + if (!array.isEmpty()){ + for (Object o : array) { + JSONObject jsonObject = (JSONObject) o; + TbLisSq tbLisSq = new TbLisSq(); + tbLisSq.setGrbslx(trimString(jsonObject.getStr("GRBSLX"))); + tbLisSq.setZdjgdm(trimString(jsonObject.getStr("ZDJGDM"))); + tbLisSq.setMzzybz(trimString(jsonObject.getStr("MZZYBZ"))); + tbLisSq.setZdjgmc(trimString(jsonObject.getStr("ZDJGMC"))); + tbLisSq.setBgysqm(trimString(jsonObject.getStr("BGYSQM"))); + tbLisSq.setShysqm(trimString(jsonObject.getStr("SHYSQM"))); + tbLisSq.setSqrqsj(trimString(jsonObject.getStr("SQRQSJ"))); + tbLisSq.setSqjgmc(trimString(jsonObject.getStr("SQJGMC"))); + tbLisSq.setSqrbh(trimString(jsonObject.getStr("SQRBH"))); + tbLisSq.setXyzddm(trimString(jsonObject.getStr("XYZDDM"))); + tbLisSq.setJyxmmc(trimString(jsonObject.getStr("JYXMMC"))); + tbLisSq.setCardId(trimString(jsonObject.getStr("his_registration_id"))); + tbLisSq.setHzlxdm(trimString(jsonObject.getStr("HZLXDM"))); + tbLisSq.setBgysbh(trimString(jsonObject.getStr("BGYSBH"))); + tbLisSq.setJyxmdm(trimString(jsonObject.getStr("JYXMDM"))); + tbLisSq.setBgksbh(trimString(jsonObject.getStr("BGKSBH"))); + tbLisSq.setSqdbh(trimString(jsonObject.getStr("SQDBH"))); + tbLisSq.setJyxh(trimString(jsonObject.getStr("JYXH"))); + tbLisSq.setHzxb(trimString(jsonObject.getStr("HZXB"))); + tbLisSq.setSqjgdm(trimString(jsonObject.getStr("SQJGDM"))); + tbLisSq.setSqrxm(trimString(jsonObject.getStr("SQRXM"))); + tbLisSq.setBgjgdm(trimString(jsonObject.getStr("BGJGDM"))); + tbLisSq.setJyxhHb(trimString(jsonObject.getStr("jyxh_hb"))); + tbLisSq.setHzksmc(trimString(jsonObject.getStr("HZKSMC"))); + tbLisSq.setHzxm(trimString(jsonObject.getStr("HZXM"))); + tbLisSq.setSqksmc(trimString(jsonObject.getStr("SQKSMC"))); + tbLisSq.setYljgdm(trimString(jsonObject.getStr("YLJGDM"))); + tbLisSq.setPationId(trimString(jsonObject.getStr("PationId"))); + tbLisSq.setBgksmc(trimString(jsonObject.getStr("BGKSMC"))); + tbLisSq.setDhhm(trimString(jsonObject.getStr("DHHM"))); + tbLisSq.setHzzs(trimString(jsonObject.getStr("HZZS"))); + tbLisSq.setJyrq(trimString(jsonObject.getStr("JYRQ"))); + tbLisSq.setZzksrqsj(trimString(jsonObject.getStr("ZZKSRQSJ"))); + tbLisSq.setHznl(trimString(jsonObject.getStr("HZNL"))); + tbLisSq.setShrq(trimString(jsonObject.getStr("SHRQ"))); + tbLisSq.setBgjgmc(trimString(jsonObject.getStr("BGJGMC"))); + tbLisSq.setSqksdm(trimString(jsonObject.getStr("SQKSDM"))); + tbLisSq.setHzksdm(trimString(jsonObject.getStr("HZKSDM"))); + tbLisSq.setShysbh(trimString(jsonObject.getStr("SHYSBH"))); + tbLisSq.setXyzdmc(trimString(jsonObject.getStr("XYZDMC"))); + tbLisSq.setZfbz(trimString(jsonObject.getStr("zfbz"))); + LambdaQueryWrapper<TbLisSq> wrapper = new LambdaQueryWrapper<>(tbLisSq); + List<TbLisSq> list = tbLisSqService.list(wrapper); + if (list.isEmpty()){ + tbLisSq.setId(IdUtil.getSnowflake().nextId()); + tbLisSqService.save(tbLisSq); + } + } + } + } + } + } + + private String trimString(String value) { + return value != null ? value.trim() : null; + } + } diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisApiMethodService.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisApiMethodService.java index d7975e6..29fbb6e 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisApiMethodService.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisApiMethodService.java @@ -16,10 +16,9 @@ import java.io.FileInputStream; import java.io.IOException; -import java.util.Date; -import java.util.HashMap; -import java.util.Map; -import java.util.Properties; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.*; /* @Authot:zjh @@ -688,4 +687,55 @@ String post = HttpClientUtils.sendPost (HIS_URL+"Getlabdetailinfo", map); return AjaxResult.success ().put ("data", post); } + + + + + + + +// 192.168.0.123:12005/api/His/Getlabreginfoinfo +//{ +// "his_registration_id":"20250107000011", +// "pationid":"20240618000042", +// "ksrq":"2025-01-07 00:00:00", +// "jsrq":"2025-01-08 00:00:00", +// "pagecount":100, +// "page":1, +// "status":"宸茬敵璇�" +//} + + /** + * 鑾峰彇His妫�楠屾潯鐮佸彿 + * @return + */ + public AjaxResult Getlabreginfoinfo(String hisCardId,Boolean isZf,String today){ + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); + Date todayDate = null; + try { + todayDate = dateFormat.parse(today); + } catch (ParseException e) { + return AjaxResult.error(); + } + String now = dateFormat.format(new Date()); + HashMap<String, Object> map = new HashMap<>(); + map.put("his_registration_id",hisCardId); + map.put("ksrq",today); + map.put("pagecount",100); + map.put("page",1); + if (now.equals(today)){ + Calendar instance = Calendar.getInstance(); + instance.setTime(todayDate); + instance.add(Calendar.DAY_OF_MONTH,1); + String tomorrow = dateFormat.format(instance.getTime()); + map.put("jsrq",tomorrow); + }else { + map.put("jsrq",now); + } + if (!isZf) + map.put("status","宸茬敵璇�"); + else map.put("status","宸蹭綔搴�"); + String post = HttpClientUtils.sendPost (HIS_URL+"Getlabreginfoinfo", map); + return AjaxResult.success ().put ("data", post); + } } diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java index 26aedf9..3e79835 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java @@ -435,6 +435,8 @@ public void addCaiYangDengJi(List<TjOrderDetail> detailList, boolean detailList1, TjOrder order, SysUser sysUser,String jxbz) { String lis_tmh_prefix = sysConfigService.selectConfigByKey("make_lis_tmh_prefix"); + String config = configService.selectConfigByKey("sfkqdyhis"); + Boolean lisAndPacsRegister = lisApiMethod.isUseLisAndPacsRegister(order); if (null != detailList && detailList1) { String format = DateUtil.format(new Date(), "yyMMddHHmmssSSS"); for (TjOrderDetail detail : detailList) { @@ -442,29 +444,39 @@ if (null == projectService.getById(detail.getProId())) continue; TjProject project = projectService.getById(detail.getProId()); Long proParentId = project.getProParentId(); + String dictLabel = sysDictDataService.selectDictLabel("sys_dict_specimen", project.getSpecimenType()); if (null != proParentId && proParentId == 0) { sampling.setJyxh(idUtils.generateLisID(lis_tmh_prefix)); - LtkjJyxmzd jyxmzd = lisApiMethod.getJyxmzd(project); - if (jyxmzd != null) { - sampling.setSpecimenTypeCode(jyxmzd.getJybbdm()); - LambdaQueryWrapper<LtkjJybbzd> wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(LtkjJybbzd::getJybbdm,jyxmzd.getJybbdm()); - LtkjJybbzd jybbzd = jybbzdService.getOne(wrapper); - sampling.setSpecimenType(jybbzd.getJybbmc()); - sampling.setJyxmdm(jyxmzd.getJyxmdm()); - } +// LtkjJyxmzd jyxmzd = lisApiMethod.getJyxmzd(project); +// if (jyxmzd != null) { + if (config.equals("Y") && lisAndPacsRegister) + sampling.setJyxmdm(project.getLisXmbm()); + else sampling.setJyxmdm(String.valueOf(project.getProId())); + sampling.setSpecimenTypeCode(project.getSpecimenType()); + sampling.setSpecimenType(dictLabel); +// LambdaQueryWrapper<LtkjJybbzd> wrapper = new LambdaQueryWrapper<>(); +// wrapper.eq(LtkjJybbzd::getJybbdm,jyxmzd.getJybbdm()); +// LtkjJybbzd jybbzd = jybbzdService.getOne(wrapper); +// sampling.setSpecimenType(jybbzd.getJybbmc()); +// sampling.setJyxmdm(jyxmzd.getJyxmdm()); +// } } else { TjProject project1 = projectService.getById(proParentId); sampling.setJyxh(idUtils.generateLisID(lis_tmh_prefix)); - LtkjJyxmzd jyxmzd = lisApiMethod.getJyxmzd(project1); - if (jyxmzd != null) { - sampling.setSpecimenTypeCode(jyxmzd.getJybbdm()); - LambdaQueryWrapper<LtkjJybbzd> wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(LtkjJybbzd::getJybbdm,jyxmzd.getJybbdm()); - LtkjJybbzd jybbzd = jybbzdService.getOne(wrapper); - sampling.setSpecimenType(jybbzd.getJybbmc()); - sampling.setJyxmdm(jyxmzd.getJyxmdm()); - } + sampling.setSpecimenTypeCode(project1.getSpecimenType()); + sampling.setSpecimenType(dictLabel); + if (config.equals("Y") && lisAndPacsRegister) + sampling.setJyxmdm(project1.getLisXmbm()); + else sampling.setJyxmdm(String.valueOf(project1.getProId())); +// LtkjJyxmzd jyxmzd = lisApiMethod.getJyxmzd(project1); +// if (jyxmzd != null) { +// sampling.setSpecimenTypeCode(jyxmzd.getJybbdm()); +// LambdaQueryWrapper<LtkjJybbzd> wrapper = new LambdaQueryWrapper<>(); +// wrapper.eq(LtkjJybbzd::getJybbdm,jyxmzd.getJybbdm()); +// LtkjJybbzd jybbzd = jybbzdService.getOne(wrapper); +// sampling.setSpecimenType(jybbzd.getJybbmc()); +// sampling.setJyxmdm(jyxmzd.getJyxmdm()); +// } } sampling.setSamplingNumber(format); sampling.setTjNum(order.getTjNumber()); @@ -486,7 +498,6 @@ samplingService.save(sampling); } } - String config = configService.selectConfigByKey("sfkqdyhis"); if (lisApiMethod.isUseLisAndPacsRegister(order) && (null != config && config.equals("Y"))){ AjaxResult ajaxResult = lisApiMethod.getJyFlHb(); if (ajaxResult.get("code").toString().equals("200")){ @@ -752,10 +763,10 @@ // TODO 鍜岀鍒扮櫥璁颁竴鏍� 鍙湁閰嶇疆涓殑浠ュ強鏀惰垂绫诲瀷涓轰綋妫�绁ㄦ椂鎵嶅鍔犲埌閲囨牱绠$悊琛� if(config.equalsIgnoreCase("Y")){ - if (lisApiMethod.isUseLisAndPacsRegister(order) && tjFlowingWater.getPayType() == 6L) { +// if (lisApiMethod.isUseLisAndPacsRegister(order) && tjFlowingWater.getPayType() == 6L) { List<TjOrderDetail> detailLists = tjOrderDetailService.getCaiYangDengJiJxbz(order.getOrderId(), jxbz); addCaiYangDengJi(detailLists, !detailLists.isEmpty(), order, sysUser, jxbz); - } +// } AjaxResult result = tijianbulushenqing(customer, date, order.getCardId(), jxbz, jianChaProjects, tjFlowingWater.getPayType() == 6L); if (!result.get("code").toString().equals("200")) return false; @@ -1349,7 +1360,7 @@ wrapper.eq(TjProject::getProParentId,project.getProId()); List<TjProject> list = projectService.list(wrapper); for (TjProject tjProject : list) { - if (null != project.getHisXmbm()) { + if (StrUtil.isNotBlank(tjProject.getHisXmbm()) && tjProject.getProPrice().compareTo(BigDecimal.ZERO) != 0) { OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); detailsDto.setMxfyxmbm(tjProject.getHisXmbm()); if (tjProject.getSfzhfy().equals("Y")) { @@ -1462,7 +1473,7 @@ wrapper.eq(TjProject::getProParentId,project.getProId()); List<TjProject> list = projectService.list(wrapper); for (TjProject tjProject : list) { - if (null != tjProject.getHisXmbm()) { + if (StrUtil.isNotBlank(tjProject.getHisXmbm()) && tjProject.getProPrice().compareTo(BigDecimal.ZERO) != 0) { OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); detailsDto.setMxfyxmbm(tjProject.getHisXmbm()); if (tjProject.getSfzhfy().equals("Y")) { @@ -1557,7 +1568,6 @@ dao.setCzyksbm(dept); dao.setSfjz("0"); // List<TbTransition> details = tbTransitionService.getTbTransitionListByCusId(customer.getCusIdcard(),cardId); - List<OutpintestapplyDetailsDto> detailDtos = new ArrayList<>(); if (null != detailList && !detailList.isEmpty()) { LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); @@ -1565,18 +1575,24 @@ List<TjProject> projects = projectService.list(wq); if (null != projects && !projects.isEmpty()) { for (TjProject project : projects) { + List<OutpintestapplyDetailsDto> detailDtos = new ArrayList<>(); 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"); + 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()) && tjProject.getProPrice().compareTo(BigDecimal.ZERO) != 0) { + OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); + detailsDto.setMxfyxmbm(tjProject.getHisXmbm()); + if (tjProject.getSfzhfy().equals("Y")) { + detailsDto.setSfzhfy("1"); + } else { + detailsDto.setSfzhfy("0"); + } + detailsDto.setSl(tjProject.getSl()); + detailsDto.setProjg(tjProject.getProPrice()); + detailDtos.add(detailsDto); } - detailsDto.setSl(project.getSl()); - detailsDto.setProjg(project.getProPrice()); - detailDtos.add(detailsDto); } if(project.getProId()==1740177341251154377L){ OutpinmedicapplyDetilsDto detilsDto=new OutpinmedicapplyDetilsDto(); @@ -1604,46 +1620,46 @@ outpinmedicapplyDetilsDtos.add(detilsDto); } } - } - } - } - if (!detailDtos.isEmpty()) { - 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.setJxbz(jxbz); - 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()); + if (!detailDtos.isEmpty()) { + 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.setJxbz(jxbz); + 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); + } + } } - tree.setCreateTime(DateUtil.date()); - ltkjJianchajianyanTreeService.save(tree); } } } diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SamplingServiceApi.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SamplingServiceApi.java index be83224..36c5c03 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SamplingServiceApi.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SamplingServiceApi.java @@ -120,6 +120,95 @@ wrapper.eq(TjSampling::getParentId, sampling.getId()); List<TjSampling> list = tjSamplingService.list(wrapper); for (TjSampling tjSampling : list) { + tjSampling.setIsSignFor("1"); + } + updChild = tjSamplingService.updateBatchById(list); + } else { + updChild = true; + } + if (!tjSamplingService.updateById(sampling) && !updChild) { +// lisApiMethod.cancel(sampling.getJyxh(), tjOrder.getCardId(), PinyinUtil.getFirstLetter(tjCustomer.getCusName(), "")); +// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return AjaxResult.error("鎿嶄綔澶辫触璇烽噸璇�"); + } + } else { + return AjaxResult.error("鎿嶄綔澶辫触璇烽噸璇�"); + } + } + if (StrUtil.isNotBlank(errorMsg)) return AjaxResult.error(errorMsg); + return AjaxResult.success("鎿嶄綔鎴愬姛"); + } + + /** + * 閲囨牱绠$悊 纭閲囩爜鎸夐挳璋冪敤 + * @param ids + * @param config + * @param mergeRequest + * @return + */ + public AjaxResult confirmApi(List<String> ids,String config,String mergeRequest) { + + + + // sfkqdshitulianjie + if (null == ids || ids.isEmpty()) { + return AjaxResult.error("璇烽�夋嫨瑕佺‘璁ら」"); + } + List<TjSampling> tjSamplings = tjSamplingService.listByIds(ids); + if (tjSamplings.isEmpty()) + return AjaxResult.error("璇烽�夋嫨瑕佺‘璁ら」"); + String errorMsg = ""; + for (TjSampling sampling : tjSamplings) { + if (!sysConfigService.selectConfigByKey("sfkqdshitulianjie").toLowerCase().equals("y")) { + if (sampling.getJyxmdm() == null) + errorMsg+=sampling.getProName()+"鍦╨is绯荤粺鏈壘鍒板搴旂紪鐮佹棤娉曞彂鍑虹敵璇�"; + } + sampling.setIsSignFor("0"); + + + + +// LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); +// wq.eq(TjProject::getProParentId, sampling.getProId()); +// List<TjProject> projectList = projectService.list(wq); +// List<String> collect = new ArrayList<>(); +// for (TjProject project : projectList) { +// Long proId = project.getProId(); +// collect.add(String.valueOf(proId)); +// } +// LambdaQueryWrapper<TjSampling> wq1 = new LambdaQueryWrapper<>(); +// wq1.eq(TjSampling::getTjNum, sampling.getTjNum()); +// wq1.in(TjSampling::getProId, collect); +// List<TjSampling> samplingList = tjSamplingService.list(wq1); +// if (null != samplingList && samplingList.size() > 0) { +// for (TjSampling tjSampling : samplingList) { +// tjSampling.setIsSignFor("0"); +// tjSamplingService.updateById(tjSampling); +// } +// } + TjOrder tjOrder = orderService.getOrderByTjNum(sampling.getTjNum()); + if(null==tjOrder) return AjaxResult.error("浣撴璁板綍涓嶅瓨鍦�"); + TjCustomer tjCustomer = customerService.getById(tjOrder.getUserId()); + boolean updChild; + Boolean save; +// String is_request_common_his_api = sysConfigService.selectConfigByKey("is_request_common_his_api"); +// if (null != config && config.equals("Y") && !mergeRequest.equals("Y")) { +// save = lisApiMethod.save(sampling, tjOrder, tjCustomer); +// } else if (is_request_common_his_api.equals("Y")){ +//// String apiUrl = sysConfigService.selectConfigByKey("common_api_url"); +//// String hospbm = sysConfigService.selectConfigByKey("common_api_service_hospbm"); +//// save = sendLis(sampling,tjOrder,apiUrl,hospbm); +// save = true; +// }else { +// save = true; +// } + save = true; + if (save) { + if (sampling.getIsMerge() == 1) { + LambdaQueryWrapper<TjSampling> wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(TjSampling::getParentId, sampling.getId()); + List<TjSampling> list = tjSamplingService.list(wrapper); + for (TjSampling tjSampling : list) { tjSampling.setIsSignFor("0"); } updChild = tjSamplingService.updateBatchById(list); diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java index 4322d6c..e3968e6 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java @@ -1234,8 +1234,8 @@ remarkService.updateTjOrderRemarkSfbzByJxbzisnull(tjOrder.getOrderId().toString(), tjFlowingWater.getTjSerialNumber().toString()); List<TjXdPicture> xdPictureList = xdPictureService.saveTjXdPicture(tjOrder.getTjNumber()); xdPictureService.saveBatch(xdPictureList); - List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId()); - addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, sysUser, null); +// List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId()); +// addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, sysUser, null); } else { newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId()); @@ -1438,6 +1438,8 @@ public void addCaiYangDengJi(List<TjOrderDetail> detailList, boolean detailList1, TjOrder order, SysUser sysUser, String jxbz) { String lis_tmh_prefix = configService.selectConfigByKey("make_lis_tmh_prefix"); + String config = configService.selectConfigByKey("sfkqdyhis"); + Boolean lisAndPacsRegister = lisApiMethod.isUseLisAndPacsRegister(order); if (null != detailList && detailList1) { Date date = new Date(); String format = DateUtil.format(date, "yyMMddHHmmssSSS"); @@ -1451,14 +1453,18 @@ sampling.setJyxh(idUtils.generateLisID(lis_tmh_prefix)); sampling.setSpecimenTypeCode(project.getSpecimenType()); sampling.setSpecimenType(dictLabel); - sampling.setJyxmdm(project.getProId().toString()); + if (config.equals("Y") && lisAndPacsRegister) + sampling.setJyxmdm(project.getLisXmbm()); + else sampling.setJyxmdm(project.getProId().toString()); } else { TjProject project1 = projectService.getById(proParentId); sampling.setJyxh(idUtils.generateLisID(lis_tmh_prefix)); sampling.setSpecimenTypeCode(project1.getSpecimenType()); sampling.setSpecimenType(dictLabel); - sampling.setJyxmdm(project.getProId().toString()); + if (config.equals("Y") && lisAndPacsRegister) + sampling.setJyxmdm(project1.getLisXmbm()); + else sampling.setJyxmdm(project1.getProId().toString()); } sampling.setSamplingNumber(format); @@ -1481,7 +1487,6 @@ samplingService.save(sampling); } } - String config = configService.selectConfigByKey("sfkqdyhis"); if (lisApiMethod.isUseLisAndPacsRegister(order) && (null != config && config.equals("Y"))) { AjaxResult ajaxResult = lisApiMethod.getJyFlHb(); if (ajaxResult.get("code").toString().equals("200")) { diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjSamplingController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjSamplingController.java index 23e430e..c3e82e4 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjSamplingController.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjSamplingController.java @@ -1,5 +1,6 @@ package com.ltkj.web.controller.system; +import java.text.SimpleDateFormat; import java.util.*; import java.util.stream.Collectors; import javax.annotation.Resource; @@ -10,7 +11,10 @@ import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.util.StrUtil; import cn.hutool.extra.pinyin.PinyinUtil; +import cn.hutool.json.JSONArray; +import cn.hutool.json.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ltkj.common.core.redis.RedisCache; import com.ltkj.common.utils.IdUtils; @@ -18,6 +22,7 @@ import com.ltkj.hosp.domain.*; import com.ltkj.hosp.service.*; import com.ltkj.system.service.ISysConfigService; +import com.ltkj.web.controller.his.HisApiMethod; import com.ltkj.web.controller.lis.LisApiMethod; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -68,6 +73,14 @@ private ISysConfigService configService; @Autowired private SamplingServiceApi samplingService; + @Autowired + private HisApiMethod hisApiMethod; + @Autowired + private LtkjJianchajianyanTreeService treeService; + @Autowired + private TbLisSqService tbLisSqService; + @Autowired + private LtkjJfxmgljyxmzdService jfxmgljyxmzdService; /** * 鏌ヨ浣撴閲囨牱绠$悊鍒楄〃 @@ -257,6 +270,76 @@ if (tjNumber == null || StrUtil.isBlank(tjNumber)) return AjaxResult.error("鍙傛暟閿欒,鏈紶鍙傛暟"); LambdaQueryWrapper<TjSampling> wrapper = new LambdaQueryWrapper<>(); + String config = configService.selectConfigByKey("sfkqdyhis"); + if (config.equals("Y")){ +// LambdaQueryWrapper<TjSampling> wrapper6 = new LambdaQueryWrapper<>(); +// wrapper6.eq(TjSampling::getTjNum, tjNumber); +// wrapper6.eq(TjSampling::getIsSignFor,isSignFor); +// wrapper6.and(i -> i.isNull(TjSampling::getParentId).or().eq(TjSampling::getIsMerge,1)); +// wrapper6.isNull(TjSampling::getJyxh); +// List<TjSampling> list1 = tjSamplingService.list(wrapper6); +// if (!list1.isEmpty()){ + if (true){ + LambdaQueryWrapper<TjOrder> wrapper1 = new LambdaQueryWrapper<>(); + wrapper1.eq(TjOrder::getTjNumber,tjNumber); + TjOrder tjOrder = orderService.getOne(wrapper1); + hisApiMethod.Getlabreginfoinfo(tjOrder.getCardId(),new SimpleDateFormat("yyyy-MM-dd").format(tjOrder.getCreateTime())); + LambdaQueryWrapper<TbLisSq> wrapper2 = new LambdaQueryWrapper<>(); + wrapper2.eq(TbLisSq::getCardId,tjOrder.getCardId()); + List<TbLisSq> list = tbLisSqService.list(wrapper2); + for (TbLisSq lisSq : list) { + if (!lisSq.getSqdbh().contains("jk")) + continue; + String jyxmdm = lisSq.getJyxmdm(); + LambdaQueryWrapper<TjProject> wrapper4 = new LambdaQueryWrapper<>(); + wrapper4.eq(TjProject::getLisXmbm,jyxmdm); + TjProject project = projectService.getOne(wrapper4); + if (project != null){ + LambdaUpdateWrapper<TjSampling> wrapper5 = new LambdaUpdateWrapper<>(); + String jyxh = ""; + if (StrUtil.isNotBlank(lisSq.getJyxhHb())) + jyxh = lisSq.getJyxhHb(); + else jyxh = lisSq.getJyxh(); + wrapper5.set(TjSampling::getJyxh,jyxh); + wrapper5.set(TjSampling::getJyxmdm,lisSq.getJyxmdm()); + wrapper5.eq(TjSampling::getProId,project.getProParentId()); + wrapper5.eq(TjSampling::getTjNum,tjNumber); + tjSamplingService.update(wrapper5); + } + } + +// JSONArray array = hisApiMethod.Getlabreginfoinfo(tjOrder.getCardId()); +// if (array != null && !array.isEmpty()){ +// for (Object o : array) { +// JSONObject jsonObject = (JSONObject) o; +// String sqdh = jsonObject.getStr("sqdh"); +// String jyxh = jsonObject.getStr("jyxh"); +// LambdaQueryWrapper<LtkjJianchajianyanTree> wrapper2 = new LambdaQueryWrapper<>(); +// wrapper2.eq(LtkjJianchajianyanTree::getCardId,tjOrder.getCardId()); +// wrapper2.eq(LtkjJianchajianyanTree::getType,"妫�楠�"); +// wrapper2.eq(LtkjJianchajianyanTree::getSqdh,sqdh); +// List<LtkjJianchajianyanTree> list = treeService.list(wrapper2); +// List<String> hisXms = list.stream().map(LtkjJianchajianyanTree::getHisXmdm).collect(Collectors.toList()); +// LambdaQueryWrapper<TjProject> wrapper3 = new LambdaQueryWrapper<>(); +// wrapper3.in(TjProject::getHisXmbm,hisXms); +// wrapper3.ne(TjProject::getProParentId,0); +// wrapper3.groupBy(TjProject::getProParentId); +// List<Long> proParentIds = projectService.list(wrapper3).stream().map(TjProject::getProParentId).collect(Collectors.toList()); +// LambdaQueryWrapper<TjProject> wrapper4 = new LambdaQueryWrapper<>(); +// wrapper4.in(TjProject::getProId,proParentIds); +// List<Long> proIds = projectService.list(wrapper4).stream().map(TjProject::getProId).collect(Collectors.toList()); +// LambdaUpdateWrapper<TjSampling> wrapper5 = new LambdaUpdateWrapper<>(); +// wrapper5.set(TjSampling::getJyxh,jyxh); +// wrapper5.in(TjSampling::getProId,proIds); +// wrapper5.eq(TjSampling::getTjNum,tjNumber); +// tjSamplingService.update(wrapper5); +// } +// } + } + } + +// if (config.equals("Y")) +// wrapper.eq(TjSampling::getJyxh,""); wrapper.eq(TjSampling::getTjNum, tjNumber); wrapper.eq(TjSampling::getIsSignFor,isSignFor); wrapper.and(i -> i.isNull(TjSampling::getParentId).or().eq(TjSampling::getIsMerge,1)); @@ -264,6 +347,7 @@ // if (isSignFor == 1) // wrapper.eq(TjSampling::getIsApply,0); wrapper.orderByDesc(TjSampling::getIsMerge); + List<TjSampling> list = tjSamplingService.list(wrapper); if (list.isEmpty()){ logger.info("jtNum ->{}",tjNumber); @@ -398,6 +482,6 @@ public AjaxResult confirmSampling(@RequestBody List<String> ids) { String config = configService.selectConfigByKey("sfkqdyhis"); String mergeRequest = configService.selectConfigByKey("use_lis_pacs_is_auto_merge_request"); - return samplingService.confirm(ids,config,mergeRequest); + return samplingService.confirmApi(ids,config,mergeRequest); } } diff --git a/ltkj-framework/src/main/java/com/ltkj/framework/config/DruidConfig.java b/ltkj-framework/src/main/java/com/ltkj/framework/config/DruidConfig.java index a08b8ed..8b6b86f 100644 --- a/ltkj-framework/src/main/java/com/ltkj/framework/config/DruidConfig.java +++ b/ltkj-framework/src/main/java/com/ltkj/framework/config/DruidConfig.java @@ -1,12 +1,14 @@ package com.ltkj.framework.config; import java.io.*; +import java.sql.SQLException; import java.util.HashMap; import java.util.Map; import java.util.Properties; import javax.annotation.Resource; import javax.servlet.Filter; import javax.servlet.FilterChain; +import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; @@ -145,15 +147,24 @@ props.load(fis); fis.close(); // 鑾峰彇灞炴�у�煎苟璧嬪�� - Properties properties = new Properties(); - // 杩欓噷鏄祴璇曞啓娉曪紝鍏蜂綋鐨剉alue鍙互閫氳繃璇锋眰鍙傛暟浼犻�掕繃鏉� - properties.setProperty("druid.enabled",props.getProperty("hisenabled")); - properties.setProperty("druid.driverClassName","com.microsoft.sqlserver.jdbc.SQLServerDriver"); - properties.setProperty("druid.url","jdbc:sqlserver://"+props.getProperty("hisip")+":"+props.getProperty("hisprot")+";DatabaseName="+props.getProperty("hisname")+ - ";&characterEncoding=utf8"); - properties.setProperty("druid.username",props.getProperty("hisusername")); - properties.setProperty("druid.password",props.getProperty("hispassword")); - dataSource.restart(properties); + String hisenabled = props.getProperty("hisenabled"); + if (hisenabled.equals("false")) + return null; + String hisdbtype = props.getProperty("hisdbtype"); + switch (hisdbtype){ + case "sqlserver": + dataSource = creatSqlServer(hisenabled, props.getProperty("hisip"),props.getProperty("hisprot"),props.getProperty("hisname"),props.getProperty("hisusername"),props.getProperty("hispassword")); + break; + case "mysql": + dataSource = creatMysql(hisenabled, props.getProperty("hisip"),props.getProperty("hisprot"),props.getProperty("hisname"),props.getProperty("hisusername"),props.getProperty("hispassword")); + break; + case "oracle": + dataSource = creatOracle(hisenabled, props.getProperty("hisip"),props.getProperty("hisprot"),props.getProperty("hisname"),props.getProperty("hisusername"),props.getProperty("hispassword")); + break; + default: + dataSource = creatSqlServer(hisenabled, props.getProperty("hisip"),props.getProperty("hisprot"),props.getProperty("hisname"),props.getProperty("hisusername"),props.getProperty("hispassword")); + break; + } log.info("his鏁版嵁搴撹繛鎺ユ垚鍔�!!!"); } catch (Exception e) { log.info("鏁版嵁搴撹繛鎺ュけ璐� 璇疯仈绯荤鐞嗗憳锛�"); @@ -178,16 +189,25 @@ } props.load(fis); fis.close(); - // 鑾峰彇灞炴�у�煎苟璧嬪�� - Properties properties = new Properties(); - // 杩欓噷鏄祴璇曞啓娉曪紝鍏蜂綋鐨剉alue鍙互閫氳繃璇锋眰鍙傛暟浼犻�掕繃鏉� - properties.setProperty("druid.enabled",props.getProperty("lisenabled")); - properties.setProperty("druid.url","jdbc:mysql://"+props.getProperty("lisip")+":"+props.getProperty("lisprot")+"/"+props.getProperty("lisname")+"" + - "?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=GMT%2B8"); - properties.setProperty("druid.username",props.getProperty("lisusername")); - properties.setProperty("druid.password",props.getProperty("lispassword")); - dataSource.restart(properties); - log.info("鏁版嵁搴撹繛鎺ユ垚鍔�!!!"); + String lisenabled = props.getProperty("lisenabled"); + if (lisenabled.equals("false")) + return null; + String lisdbtype = props.getProperty("lisdbtype"); + switch (lisdbtype){ + case "sqlserver": + dataSource = creatSqlServer(lisenabled, props.getProperty("lisip"),props.getProperty("lisprot"),props.getProperty("lisname"),props.getProperty("lisusername"),props.getProperty("lispassword")); + break; + case "mysql": + dataSource = creatMysql(lisenabled, props.getProperty("lisip"),props.getProperty("lisprot"),props.getProperty("lisname"),props.getProperty("lisusername"),props.getProperty("lispassword")); + break; + case "oracle": + dataSource = creatOracle(lisenabled, props.getProperty("lisip"),props.getProperty("lisprot"),props.getProperty("lisname"),props.getProperty("lisusername"),props.getProperty("lispassword")); + break; + default: + dataSource = creatMysql(lisenabled, props.getProperty("lisip"),props.getProperty("lisprot"),props.getProperty("lisname"),props.getProperty("lisusername"),props.getProperty("lispassword")); + break; + } + log.info("Lis鏁版嵁搴撹繛鎺ユ垚鍔�!!!"); } catch (Exception e) { log.info("鏁版嵁搴撹繛鎺ュけ璐� 璇疯仈绯荤鐞嗗憳锛�"); e.printStackTrace(); @@ -211,15 +231,25 @@ } props.load(fis); fis.close(); - // 鑾峰彇灞炴�у�煎苟璧嬪�� - Properties properties = new Properties(); // 杩欓噷鏄祴璇曞啓娉曪紝鍏蜂綋鐨剉alue鍙互閫氳繃璇锋眰鍙傛暟浼犻�掕繃鏉� - properties.setProperty("druid.enabled",props.getProperty("pacsenabled")); - properties.setProperty("druid.driverClassName","oracle.jdbc.OracleDriver"); - properties.setProperty("druid.url","jdbc:oracle:thin:@//"+props.getProperty("pacsip")+"/"+props.getProperty("pacsname")); - properties.setProperty("druid.username",props.getProperty("pacsusername")); - properties.setProperty("druid.password",props.getProperty("pacspassword")); - dataSource.restart(properties); + String pacsenabled = props.getProperty("pacsenabled"); + if (pacsenabled.equals("false")) + return null; + String pacsdbtype = props.getProperty("pacsdbtype"); + switch (pacsdbtype){ + case "sqlserver": + dataSource = creatSqlServer(pacsenabled, props.getProperty("pacsip"),props.getProperty("pacsprot"),props.getProperty("pacsname"),props.getProperty("pacsusername"),props.getProperty("pacspassword")); + break; + case "mysql": + dataSource = creatMysql(pacsenabled, props.getProperty("pacsip"),props.getProperty("pacsprot"),props.getProperty("pacsname"),props.getProperty("pacsusername"),props.getProperty("pacspassword")); + break; + case "oracle": + dataSource = creatOracle(pacsenabled, props.getProperty("pacsip"),props.getProperty("pacsprot"),props.getProperty("pacsname"),props.getProperty("pacsusername"),props.getProperty("pacspassword")); + break; + default: + dataSource = creatOracle(pacsenabled, props.getProperty("pacsip"),props.getProperty("pacsprot"),props.getProperty("pacsname"),props.getProperty("pacsusername"),props.getProperty("pacspassword")); + break; + } log.info("鏁版嵁搴撹繛鎺ユ垚鍔�!!!"); } catch (Exception e) { log.info("鏁版嵁搴撹繛鎺ュけ璐� 璇疯仈绯荤鐞嗗憳锛�"); @@ -227,6 +257,45 @@ } return druidProperties.dataSource(dataSource); } + + + private DruidDataSource creatSqlServer(String enabled, String ip,String port,String db,String user,String password) throws SQLException { + DruidDataSource dataSource = DruidDataSourceBuilder.create().build(); + Properties properties = new Properties(); + properties.setProperty("druid.enabled", enabled); + properties.setProperty("druid.driverClassName","com.microsoft.sqlserver.jdbc.SQLServerDriver"); + properties.setProperty("druid.url","jdbc:sqlserver://"+ ip+":"+ port+";DatabaseName="+ db+ + ";&characterEncoding=utf8"); + properties.setProperty("druid.username", user); + properties.setProperty("druid.password", password); + dataSource.restart(properties); + return dataSource; + } + + private DruidDataSource creatMysql(String enabled, String ip,String port,String db,String user,String password) throws SQLException { + DruidDataSource dataSource = DruidDataSourceBuilder.create().build(); + Properties properties = new Properties(); + properties.setProperty("druid.enabled",enabled); + properties.setProperty("druid.url","jdbc:mysql://"+ip+":"+port+"/"+db+"" + + "?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=GMT%2B8"); + properties.setProperty("druid.username",user); + properties.setProperty("druid.password",password); + dataSource.restart(properties); + return dataSource; + } + + private DruidDataSource creatOracle(String enabled, String ip,String port,String db,String user,String password) throws SQLException { + DruidDataSource dataSource = DruidDataSourceBuilder.create().build(); + Properties properties = new Properties(); + properties.setProperty("druid.enabled",enabled); + properties.setProperty("druid.driverClassName","oracle.jdbc.OracleDriver"); + properties.setProperty("druid.url","jdbc:oracle:thin:@//"+ip+"/"+db); + properties.setProperty("druid.username",user); + properties.setProperty("druid.password",password); + dataSource.restart(properties); + return dataSource; + } + @Bean(name = "dynamicDataSource") @Primary @@ -270,7 +339,7 @@ // 鍒涘缓filter杩涜杩囨护 Filter filter = new Filter() { @Override - public void init(javax.servlet.FilterConfig filterConfig) throws ServletException { + public void init(FilterConfig filterConfig) throws ServletException { } @Override diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TbLisSq.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TbLisSq.java new file mode 100644 index 0000000..419f9dc --- /dev/null +++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TbLisSq.java @@ -0,0 +1,101 @@ +package com.ltkj.hosp.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import lombok.Data; + +/** + * @TableName tb_lis_sq + */ +@TableName(value ="tb_lis_sq") +@Data +public class TbLisSq implements Serializable { + private Long id; + + private String jyxh; + + private String cardId; + + private String pationId; + + private String yljgdm; + + private String grbslx; + + private String mzzybz; + + private String hzlxdm; + + private String hzxm; + + private String hzxb; + + private String hznl; + + private String dhhm; + + private String hzksdm; + + private String hzksmc; + + private String sqdbh; + + private String sqjgdm; + + private String sqjgmc; + + private String sqksdm; + + private String sqksmc; + + private String sqrqsj; + + private String sqrbh; + + private String sqrxm; + + private String xyzddm; + + private String xyzdmc; + + private String zdjgdm; + + private String zdjgmc; + + private String hzzs; + + private String zzksrqsj; + + private String jyxmdm; + + private String jyxmmc; + + private String jyrq; + + private String bgjgdm; + + private String bgjgmc; + + private String bgksbh; + + private String bgksmc; + + private String bgysbh; + + private String bgysqm; + + private String shysbh; + + private String shysqm; + + private String shrq; + + private String zfbz; + + private String jyxhHb; + + private static final long serialVersionUID = 1L; +} \ No newline at end of file diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TbLisSqMapper.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TbLisSqMapper.java new file mode 100644 index 0000000..d616ce2 --- /dev/null +++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TbLisSqMapper.java @@ -0,0 +1,18 @@ +package com.ltkj.hosp.mapper; + +import com.ltkj.hosp.domain.TbLisSq; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** +* @author chacca +* @description 閽堝琛ㄣ�恡b_lis_sq(lis鐢宠璁板綍琛�)銆戠殑鏁版嵁搴撴搷浣淢apper +* @createDate 2025-01-08 11:45:54 +* @Entity com.ltkj.hosp.domain.TbLisSq +*/ +public interface TbLisSqMapper extends BaseMapper<TbLisSq> { + +} + + + + diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/TbLisSqService.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/TbLisSqService.java new file mode 100644 index 0000000..b297984 --- /dev/null +++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/TbLisSqService.java @@ -0,0 +1,13 @@ +package com.ltkj.hosp.service; + +import com.ltkj.hosp.domain.TbLisSq; +import com.baomidou.mybatisplus.extension.service.IService; + +/** +* @author chacca +* @description 閽堝琛ㄣ�恡b_lis_sq(lis鐢宠璁板綍琛�)銆戠殑鏁版嵁搴撴搷浣淪ervice +* @createDate 2025-01-08 11:45:54 +*/ +public interface TbLisSqService extends IService<TbLisSq> { + +} diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TbLisSqServiceImpl.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TbLisSqServiceImpl.java new file mode 100644 index 0000000..3c5dd7c --- /dev/null +++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TbLisSqServiceImpl.java @@ -0,0 +1,22 @@ +package com.ltkj.hosp.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ltkj.hosp.domain.TbLisSq; +import com.ltkj.hosp.service.TbLisSqService; +import com.ltkj.hosp.mapper.TbLisSqMapper; +import org.springframework.stereotype.Service; + +/** +* @author chacca +* @description 閽堝琛ㄣ�恡b_lis_sq(lis鐢宠璁板綍琛�)銆戠殑鏁版嵁搴撴搷浣淪ervice瀹炵幇 +* @createDate 2025-01-08 11:45:54 +*/ +@Service +public class TbLisSqServiceImpl extends ServiceImpl<TbLisSqMapper, TbLisSq> + implements TbLisSqService{ + +} + + + + diff --git a/ltkj-hosp/src/main/resources/mapper/TbLisSqMapper.xml b/ltkj-hosp/src/main/resources/mapper/TbLisSqMapper.xml new file mode 100644 index 0000000..88c2994 --- /dev/null +++ b/ltkj-hosp/src/main/resources/mapper/TbLisSqMapper.xml @@ -0,0 +1,68 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE mapper + PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.ltkj.hosp.mapper.TbLisSqMapper"> + + <resultMap id="BaseResultMap" type="com.ltkj.hosp.domain.TbLisSq"> + <id property="id" column="id" jdbcType="BIGINT"/> + <result property="jyxh" column="jyxh" jdbcType="VARCHAR"/> + <result property="cardId" column="card_id" jdbcType="VARCHAR"/> + <result property="pationId" column="pation_id" jdbcType="VARCHAR"/> + <result property="yljgdm" column="yljgdm" jdbcType="VARCHAR"/> + <result property="grbslx" column="grbslx" jdbcType="VARCHAR"/> + <result property="mzzybz" column="mzzybz" jdbcType="VARCHAR"/> + <result property="hzlxdm" column="hzlxdm" jdbcType="VARCHAR"/> + <result property="hzxm" column="hzxm" jdbcType="VARCHAR"/> + <result property="hzxb" column="hzxb" jdbcType="VARCHAR"/> + <result property="hznl" column="hznl" jdbcType="VARCHAR"/> + <result property="dhhm" column="dhhm" jdbcType="VARCHAR"/> + <result property="hzksdm" column="hzksdm" jdbcType="VARCHAR"/> + <result property="hzksmc" column="hzksmc" jdbcType="VARCHAR"/> + <result property="sqdbh" column="sqdbh" jdbcType="VARCHAR"/> + <result property="sqjgdm" column="sqjgdm" jdbcType="VARCHAR"/> + <result property="sqjgmc" column="sqjgmc" jdbcType="VARCHAR"/> + <result property="sqksdm" column="sqksdm" jdbcType="VARCHAR"/> + <result property="sqksmc" column="sqksmc" jdbcType="VARCHAR"/> + <result property="sqrqsj" column="sqrqsj" jdbcType="VARCHAR"/> + <result property="sqrbh" column="sqrbh" jdbcType="VARCHAR"/> + <result property="sqrxm" column="sqrxm" jdbcType="VARCHAR"/> + <result property="xyzddm" column="xyzddm" jdbcType="VARCHAR"/> + <result property="xyzdmc" column="xyzdmc" jdbcType="VARCHAR"/> + <result property="zdjgdm" column="zdjgdm" jdbcType="VARCHAR"/> + <result property="zdjgmc" column="zdjgmc" jdbcType="VARCHAR"/> + <result property="hzzs" column="hzzs" jdbcType="VARCHAR"/> + <result property="zzksrqsj" column="zzksrqsj" jdbcType="VARCHAR"/> + <result property="jyxmdm" column="jyxmdm" jdbcType="VARCHAR"/> + <result property="jyxmmc" column="jyxmmc" jdbcType="VARCHAR"/> + <result property="jyrq" column="jyrq" jdbcType="VARCHAR"/> + <result property="bgjgdm" column="bgjgdm" jdbcType="VARCHAR"/> + <result property="bgjgmc" column="bgjgmc" jdbcType="VARCHAR"/> + <result property="bgksbh" column="bgksbh" jdbcType="VARCHAR"/> + <result property="bgksmc" column="bgksmc" jdbcType="VARCHAR"/> + <result property="bgysbh" column="bgysbh" jdbcType="VARCHAR"/> + <result property="bgysqm" column="bgysqm" jdbcType="VARCHAR"/> + <result property="shysbh" column="shysbh" jdbcType="VARCHAR"/> + <result property="shysqm" column="shysqm" jdbcType="VARCHAR"/> + <result property="shrq" column="shrq" jdbcType="VARCHAR"/> + <result property="zfbz" column="zfbz" jdbcType="VARCHAR"/> + <result property="jyxhHb" column="jyxh_hb" jdbcType="VARCHAR"/> + </resultMap> + + <sql id="Base_Column_List"> + id,jyxh,card_id, + pation_id,yljgdm,grbslx, + mzzybz,hzlxdm,hzxm, + hzxb,hznl,dhhm, + hzksdm,hzksmc,sqdbh, + sqjgdm,sqjgmc,sqksdm, + sqksmc,sqrqsj,sqrbh, + sqrxm,xyzddm,xyzdmc, + zdjgdm,zdjgmc,hzzs, + zzksrqsj,jyxmdm,jyxmmc, + jyrq,bgjgdm,bgjgmc, + bgksbh,bgksmc,bgysbh, + bgysqm,shysbh,shysqm, + shrq,zfbz,jyxh_hb + </sql> +</mapper> -- Gitblit v1.8.0