From 2b1453e625b7f142956d487edcdca982b1cc753f Mon Sep 17 00:00:00 2001 From: 赵文轩 <1652863494@qq.com> Date: 星期四, 31 十月 2024 10:06:33 +0800 Subject: [PATCH] 个人以及团体暂不写入采样管理 团体票自动合并并确认 --- ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisApiMethod.java | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 52 insertions(+), 5 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 5f69744..77ca503 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 @@ -18,6 +18,7 @@ import com.ltkj.web.controller.lis.LisApiMethod; import com.ltkj.web.controller.pacs.PacsApiMethodService; import com.ltkj.web.controller.service.TjSysAsyncServiceImpl; +import com.ltkj.web.controller.system.TjSamplingController; import jdk.nashorn.internal.runtime.logging.Logger; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -75,6 +76,12 @@ private TjSysAsyncServiceImpl tjSysAsyncService; @Autowired private LisApiMethod lisApiMethod; + @Autowired + private ISysConfigService configService; + @Autowired + private ITjSamplingService tjSamplingService; + @Autowired + private TjSamplingController samplingController; //灏嗘柟娉曡繑鍥炲�艰В鏋愭垚json鏍煎紡 @@ -288,11 +295,13 @@ tree.setCreateTime(DateUtil.date()); ltkjJianchajianyanTreeService.save(tree); } - 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); - } + // 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); +// } } } @@ -571,6 +580,44 @@ // log.info("TjOrderDetail ->{}",JSONUtil.toJsonStr(detailList1)); tjSysAsyncService.addCaiYangDengJi(detailList1, !detailList1.isEmpty(), tjOrder, sysUser,null); + String mergeRequest = configService.selectConfigByKey("use_lis_pacs_is_auto_merge_request"); + if (mergeRequest.equals("Y")){ + LambdaQueryWrapper<TjSampling> wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(TjSampling::getTjNum,tjOrder.getTjNumber()); + List<TjSampling> list = tjSamplingService.list(wrapper); +// log.info("閲囨牱鏁版嵁 ->{}",list); + Map<String, List<TjSampling>> listMap = list.stream().collect(Collectors.groupingBy(TjSampling::getSpecimenTypeCode)); +// log.info("鍒嗙粍鍚� ->{}",JSONUtil.toJsonStr(listMap)); + ArrayList<String> ids = new ArrayList<>(); + for (Map.Entry<String, List<TjSampling>> entry : listMap.entrySet()) { +// log.info("key ->{},val ->{}",entry.getKey(),entry.getValue()); + // Lis鏍囨湰浠g爜 + String specimenTypeCode = entry.getKey(); + List<TjSampling> samplings = entry.getValue(); + if (samplings.size() > 1){ + // 杩涜鍚堝苟 + List<String> stringList = samplings.stream().map(TjSampling::getId).collect(Collectors.toList()); +// log.info("鎻愬彇id ->{}",stringList); + for (int i = 0; i < stringList.size(); i++) { + String s = stringList.get(i); + if (tjSamplingService.isMergeItem(s) != 0) { + stringList.remove(s); + ids.add(s); + } + } + String id = tjSamplingService.mergeCaiYangApi(stringList); + ids.add(id); + }else { + ids.add(samplings.get(0).getId()); + } + } + Boolean confirmed = samplingController.confirmSamplingApi(ids, "Y", "Y"); + if (!confirmed){ + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return AjaxResult.error("澶勭悊澶辫触"); + } + } + //妫�楠岀敵璇� // OutpintestapplyDto dto = new OutpintestapplyDto(); // dto.setHisRegistrationId(tjOrder.getCardId()); -- Gitblit v1.8.0