From 14f9208da19b7030a1c65a40897f9f4146a74d44 Mon Sep 17 00:00:00 2001 From: 赵文轩 <1652863494@qq.com> Date: 星期五, 01 十一月 2024 08:37:14 +0800 Subject: [PATCH] 增加申请业务类型 --- ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java | 62 ++++++++++++++++++++++++++----- 1 files changed, 52 insertions(+), 10 deletions(-) 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 c09fba6..27ce46e 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 @@ -12,7 +12,6 @@ import com.ltkj.common.core.domain.entity.SysUser; import com.ltkj.common.core.redis.RedisCache; import com.ltkj.common.utils.IdUtils; -import com.ltkj.common.utils.SecurityUtils; import com.ltkj.common.utils.StringUtils; import com.ltkj.framework.config.MatchUtils; import com.ltkj.hosp.domain.*; @@ -27,12 +26,11 @@ import com.ltkj.system.service.ISysConfigService; import com.ltkj.system.service.ISysDeptService; import com.ltkj.system.service.ISysUserService; -import com.ltkj.web.config.IdcardUtil.IdcardUtil; import com.ltkj.web.controller.his.HisApiGetMethodService; import com.ltkj.web.controller.his.HisApiMethodService; import com.ltkj.web.controller.lis.LisApiMethod; import com.ltkj.web.controller.pacs.PacsApiMethodService; -import com.ltkj.web.controller.system.TjOrderController; +import com.ltkj.web.controller.system.SamplingServiceApi; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Async; @@ -150,6 +148,8 @@ private LtkjJybbzdService jybbzdService; @Autowired private LisJyflhbService lisJyflhbService; + @Autowired + private SamplingServiceApi samplingServiceApi; @Override @@ -576,9 +576,9 @@ } @Override - @Async("async") +// @Async("async") // @Transactional - public void iundividualCharges(TjFlowingWater tjFlowingWater, TjOrder order, TjCustomer customer, SysUser sysUser) { + public Boolean iundividualCharges(TjFlowingWater tjFlowingWater, TjOrder order, TjCustomer customer, SysUser sysUser) { Date dates = new Date(); final String date = DateUtil.format(dates, "yyyy-MM-dd HH:mm:ss"); @@ -995,13 +995,18 @@ // } } - List<TjOrderDetail> detailLists = tjOrderDetailService.getCaiYangDengJiJxbz(order.getOrderId(),jxbz); - addCaiYangDengJi(detailLists,!detailLists.isEmpty(), order, sysUser,jxbz); + // TODO 鍜岀鍒扮櫥璁颁竴鏍� 鍙湁閰嶇疆涓殑浠ュ強鏀惰垂绫诲瀷涓轰綋妫�绁ㄦ椂鎵嶅鍔犲埌閲囨牱绠$悊琛� + if (lisApiMethod.isUseLisAndPacsRegister(order) && tjFlowingWater.getPayType() == 6L) { + List<TjOrderDetail> detailLists = tjOrderDetailService.getCaiYangDengJiJxbz(order.getOrderId(), jxbz); + addCaiYangDengJi(detailLists, !detailLists.isEmpty(), order, sysUser, jxbz); + } } // Boolean useLisAndPacsRegister = lisApiMethod.isUseLisAndPacsRegister(order); if(null !=config && config.equals("Y")){ - tijianbulushenqing(customer,date,order.getCardId(),jxbz,jianChaProjects); + AjaxResult result = tijianbulushenqing(customer, date, order.getCardId(), jxbz, jianChaProjects, tjFlowingWater.getPayType() == 6L); + if (!result.get("code").toString().equals("200")) + return false; // if (useLisAndPacsRegister) { // List<TjProject> projectList2 = jianYanProjects.stream().distinct().collect(Collectors.toList()); // 妫�鏌ョ敵璇� @@ -1268,19 +1273,54 @@ // tjChargingStandard.setUpdateId(String.valueOf(sysUser.getUserId())); // chargingStandardService.save(tjChargingStandard); // } + return true; } //浣撴瀵筯is鐢宠鍗曡皟鐢ㄦ柟娉� - public AjaxResult tijianbulushenqing(TjCustomer customer, String date,String cardId,String jxbz,ArrayList<TjProject> jianChaProjects) { + public AjaxResult tijianbulushenqing(TjCustomer customer, String date,String cardId,String jxbz,ArrayList<TjProject> jianChaProjects,Boolean isTuanTiPiao) { TjOrder order = orderService.getOrderByCardId(cardId); if(null !=order){ List<TbTransition> detailList = transitionService.getBlTbTransitionListByCusId(customer.getCusIdcard(),cardId,jxbz); Boolean useLisAndPacsRegister = lisApiMethod.isUseLisAndPacsRegister(order); List<OutpinmedicapplyDetilsDto> outpinmedicapplyDetilsDtos =new ArrayList<>(); - if (useLisAndPacsRegister) { + if (useLisAndPacsRegister && isTuanTiPiao) { // 妫�鏌ョ敵璇� pacsReg(order, customer, jianChaProjects); + LambdaQueryWrapper<TjSampling> wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(TjSampling::getTjNum,order.getTjNumber()); + List<TjSampling> list = tjSamplingService.list(wrapper); + log.info("閲囨牱鏁版嵁 ->{}",list); + if (!list.isEmpty()){ + 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 = samplingServiceApi.confirmSamplingApi(ids, "Y", "N"); + if (!confirmed) + return AjaxResult.error("澶勭悊澶辫触"); + } }else { //妫�楠岀敵璇� OutpintestapplyDto dto = new OutpintestapplyDto(); @@ -1364,6 +1404,7 @@ 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")) @@ -1465,6 +1506,7 @@ 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")) -- Gitblit v1.8.0