From 6aaa47ce1028db3f3275eaf37beef4700971cfd6 Mon Sep 17 00:00:00 2001 From: zjh <1084500556@qq.com> Date: 星期三, 16 十月 2024 13:56:17 +0800 Subject: [PATCH] zjh20241016 --- ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjOrderServiceImpl.java | 28 ++++++- ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java | 3 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java | 49 +++++++----- ltkj-hosp/src/main/resources/mapper/hosp/TjOrderMapper.xml | 14 +++ ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java | 113 ++++++++++++++++++++++++++++ ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisApiMethod.java | 12 +++ ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjOrderMapper.java | 11 ++ ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjOrderService.java | 7 + 8 files changed, 213 insertions(+), 24 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 ddb0200..ccad753 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 @@ -877,6 +877,8 @@ String code = object.getStr("ResultCode"); if(code.equals("1")){ orderService.delHuoQuBlJcsqdh(order.getCardId(),bldh); + }else { + return false; } } } @@ -889,6 +891,8 @@ String code= object.getStr("ResultCode"); if(code.equals("1")){ orderService.delHuoQuBlJysqdh(order.getCardId(),bldh); + }else { + return false; } } } @@ -903,6 +907,8 @@ String code = object.getStr("ResultCode"); if (code.equals("0")) { orderService.delHuoQuBlJcsqdh(order.getCardId(),bldh); + }else { + return false; } } } @@ -916,6 +922,8 @@ code1 = object1.getStr("ResultCode"); if (code1.equals("0")) { orderService.delHuoQuBlJysqdh(order.getCardId(),bldh); + }else { + return false; } } } @@ -930,6 +938,8 @@ code1 = object1.getStr("ResultCode"); if (code1.equals("0")) { orderService.delHuoQuZlsqdh(order.getCardId(),bldh); + }else { + return false; } } } @@ -943,6 +953,8 @@ String code = object.getStr("ResultCode"); if(null !=code && code.equals("0")){ cfService.delCfByCardId(cfh); + }else { + return false; } } } 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 c572f27..fbde798 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 @@ -1004,6 +1004,7 @@ tree.setType("妫�楠�"); LambdaQueryWrapper<TjProject> wrapper = new LambdaQueryWrapper<>(); wrapper.eq(TjProject::getHisXmbm, mxfyxmbm); + wrapper.eq(TjProject::getProParentId,0); List<TjProject> list = projectService.list(wrapper); String tj_price = ""; for (TjProject project : list) { @@ -1066,6 +1067,7 @@ tree.setType("妫�鏌�"); LambdaQueryWrapper<TjProject> wrapper = new LambdaQueryWrapper<>(); wrapper.eq(TjProject::getHisXmbm, mxfyxmbm); + wrapper.eq(TjProject::getProParentId,0); List<TjProject> list = projectService.list(wrapper); String tj_price = ""; for (TjProject project : list) { @@ -1176,6 +1178,7 @@ tree.setType("澶勭疆"); LambdaQueryWrapper<TjProject> wrapper = new LambdaQueryWrapper<>(); wrapper.eq(TjProject::getHisXmbm, mxfyxmbm); + wrapper.eq(TjProject::getProParentId,0); List<TjProject> list = projectService.list(wrapper); String tj_price = ""; for (TjProject project : list) { diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java index c7c9a75..18b1499 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java @@ -970,6 +970,119 @@ return AjaxResult.success(orderService.getCunChuGuoChengCustomerList(tjNumber, page, pageSize, checkStatus, value, beginTime, endTime, name)); } + + + @GetMapping ("/getBghsList") + @ApiOperation (value = "鎶ュ憡鏍告敹椤甸潰鏌ヨ鎺ュ彛")//0寰�1宸� +// @PreAuthorize("@ss.hasPermi('check:check:getList')") + public AjaxResult getBghsList(@ApiParam (value = "椤电爜鏁�(榛樿1)") @RequestParam (defaultValue = "1") Integer page, + @ApiParam (value = "鏄剧ず鏉℃暟(榛樿10)") @RequestParam (defaultValue = "10") Integer pageSize, + @ApiParam (value = "浣撴鍗曞彿") @RequestParam (required = false) String tjNumber, + @ApiParam (value = "鍗曚綅") @RequestParam (required = false) Long compId, + @ApiParam (value = "濮撳悕)") @RequestParam (required = false) String name, + @ApiParam (value = "寮�濮嬫椂闂�") @RequestParam (required = false) String beginTime, + @ApiParam (value = "缁撴潫鏃堕棿") @RequestParam (required = false) String endTime) { + // String config = configService.selectConfigByKey("tj_confirm"); +// DateTime beginTimes = null; +// DateTime endTimes = null; +// if (null != beginTime && null != endTime) { +// beginTimes = DateUtil.beginOfDay(DateUtil.parse(beginTime)); +// endTimes = DateUtil.endOfDay(DateUtil.parse(endTime)); +// } +// asyncService.checkSetCustomerLisByRedis(config); +// //鍒濆鍖栦綋妫�璁㈠崟琛� +// List<TjOrder> orderList = null; +// List<TjCustomer> customerList = new ArrayList<>(); +// Map<String, Object> map = new HashMap<>(); +// +// //濮撳悕鏌ヨ +// if (null != name && !"".equals(name)) { +// List<TjCustomer> list = customerService.getTjCustomerList(name); +// if (null != list && list.size() > 0) { +// List<TjCustomer> lists = new ArrayList<>(); +// for (TjCustomer customer : list) { +// if ("Y".equals(config)) { +// orderList = orderService.getCsTjOrderListByCusId1(customer.getCusId()); +// } else { +// orderList = orderService.getTjOrderListByCusId(customer.getCusId()); +// } +// if (null != orderList && orderList.size() > 0) { +// for (TjOrder tjOrder : orderList) { +// customer.setTjNumber(tjOrder.getTjNumber()); +// customer.setTjStatus(Long.valueOf(tjOrder.getCheckStatus())); +// customer.setOrderId(tjOrder.getOrderId()); +// customer.setTjTime(tjOrder.getFinishTime()); +// customer.setFinishTime(tjOrder.getFinishTime()); +// customer.setCusName(MatchUtils.hideCusName(customer.getCusName())); +// customer.setCusPhone(MatchUtils.hidePhoneNum(customer.getCusPhone())); +// customer.setCusIdcard(MatchUtils.hideIdCardNum(customer.getCusIdcard())); +// customer.setConfirmStatus(String.valueOf(tjOrder.getStatus())); +// customer.setTjCategory(tjOrder.getTjCategory()); +// if (tjOrder.getFirmId().equals("0")) { +// customer.setTjCompName(null); +// } else { +// customer.setTjCompName(compService.selectDictCompByDrugManufacturerId(tjOrder.getFirmId()).getCnName()); +// } +// lists.add(customer); +// } +// } +// } +// List<TjCustomer> customers = null; +// if (lists.size() > 0) { +// customers = lists.stream().skip((long) (page - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); +// } +// map.put("customers", customers); +// map.put("total", lists.size()); +// return AjaxResult.success(map); +// } +// return AjaxResult.success("鏆傛棤鏁版嵁"); +// } +// +// //鏉′欢鏌ヨ +// if (null != tjNumber || null != compId || (null != beginTime && null != endTime)) { +// //鍒ゆ柇鏄惁寮�鍚垵瀹� +// if ("Y".equals(config)) { +// orderList = orderService.getCsTjOrderList1(tjNumber, checkStatus, compId, beginTimes, endTimes); +// } else { +// orderList = orderService.getTjOrderList(tjNumber, checkStatus, compId, beginTimes, endTimes); +// } +// return getResult(page, pageSize, orderList, customerList, map); +// } +// +// List<TjCustomer> customers = null; +// if (null != checkStatus && checkStatus == 0) { +// customers = redisCache.getCacheMapValue("check", "ws"); +// } +// if (null != checkStatus && checkStatus == 1) { +// customers = redisCache.getCacheMapValue("check", "ys"); +// } +// if (customers != null && customers.size() > 0) { +//// asyncService.addRedis(customers); +// List<TjCustomer> customerLists = customers.stream().skip((long) (page - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); +// map.put("customers", customerLists); +// map.put("total", customers.size()); +// return AjaxResult.success(map); +// } else { +// //鍒ゆ柇鏄惁寮�鍚垵瀹� +// if ("Y".equals(config)) { +// orderList = orderService.getCsTjOrderList1(tjNumber, checkStatus, compId, beginTimes, endTimes); +// } else { +// orderList = orderService.getTjOrderList(tjNumber, checkStatus, compId, beginTimes, endTimes); +// } +// return getResult(page, pageSize, orderList, customerList, map); +// } + + String value = String.valueOf(compId); + if (tjNumber == null) tjNumber = ""; + if (compId == null) value = ""; + if (name == null) name = ""; + if (beginTime == null) beginTime = ""; + if (endTime == null) endTime = ""; + return AjaxResult.success(orderService.getgetBghsList(tjNumber, page, pageSize, value, beginTime, endTime, name)); + } + + + /** * 鏍规嵁浣撴璁㈠崟鍙疯幏鍙栦綋妫�璇︽儏淇℃伅鎺ュ彛 * 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 c9b97ad..56314af 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 @@ -875,13 +875,12 @@ } - /** * 浣撴绛惧埌鐧昏鎺ュ彛 */ - ReentrantLock lock=new ReentrantLock(); + ReentrantLock lock = new ReentrantLock(); @PostMapping @ApiOperation(value = "浣撴绛惧埌鐧昏鎺ュ彛") @@ -977,7 +976,7 @@ try { boolean b = lock.tryLock(3, TimeUnit.MINUTES); - if(b){ + if (b) { //鐢熸垚浣撴鍙� String tjNumber = (SecurityUtils.getUsername() + new SimpleDateFormat("yyMMddHHmmss").format(new Date())); tjOrder.setTjNumber(tjNumber); @@ -1047,7 +1046,7 @@ tjFlowingWater.setCopeWith(tjOrder.getTjFlowingWater().getCopeWith()); tjFlowingWater.setPaidIn(tjOrder.getTjFlowingWater().getPaidIn()); tjFlowingWater.setDiscount(tjOrder.getTjFlowingWater().getDiscount()); - // tjFlowingWater.setPayStasus(0L); + // tjFlowingWater.setPayStasus(0L); } } if (tjFlowingWaterService.save(tjFlowingWater)) { @@ -2569,7 +2568,7 @@ return AjaxResult.error("鎾ら攢澶辫触,璇ヤ汉鍛樺凡缂磋垂,璇峰厛閫�璐�!"); } } - boolean zfHisApiMethods = hisApiMethod.ZfHisApiMethods(null, order,lisApiMethod.isUseLisAndPacsRegister(order)); + boolean zfHisApiMethods = hisApiMethod.ZfHisApiMethods(null, order, lisApiMethod.isUseLisAndPacsRegister(order)); if (zfHisApiMethods) { return AjaxResult.success("鎾ら攢鎴愬姛"); } else { @@ -2716,7 +2715,7 @@ public AjaxResult revokeTjOrderByTjCardId(@RequestParam @ApiParam(value = "灏辫瘖鍙�") String cardId) { LambdaQueryWrapper<TjOrder> queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(TjOrder::getCardId,cardId); + queryWrapper.eq(TjOrder::getCardId, cardId); TjOrder order = tjOrderService.getOne(queryWrapper); order.setCardId(cardId); String configByKey = configService.selectConfigByKey("sfkqdyhis"); @@ -2737,7 +2736,7 @@ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); return AjaxResult.error("鎾ら攢澶辫触,闂ㄨ瘖鎮h�呰垂鐢ㄦ竻鍗曚俊鎭笉涓虹┖"); } else { - boolean zfHisApiMethods = hisApiMethod.ZfHisApiMethods(null, order,lisApiMethod.isUseLisAndPacsRegister(order)); + boolean zfHisApiMethods = hisApiMethod.ZfHisApiMethods(null, order, lisApiMethod.isUseLisAndPacsRegister(order)); if (zfHisApiMethods) { return AjaxResult.success("鎾ら攢鎴愬姛", map); } else { @@ -2819,25 +2818,35 @@ if (null != order) { String configByKey = configService.selectConfigByKey("sfkqdyhis"); if (null != configByKey && configByKey.equals("Y")) { + log.info("dto鐨勬暟鎹槸" + JSONUtil.toJsonStr(dto)); HashMap<String, Object> hisRequestParams = new HashMap<>(); hisRequestParams.put("patientId", order.getCardId()); AjaxResult queryPay = hisApiGetMethodService.getHISDataNew("QueryPay", hisRequestParams); if (Integer.parseInt(queryPay.get("code").toString()) == 200) { List<Map<String, String>> data = (List<Map<String, String>>) queryPay.get("data"); - BigDecimal cateFeeAll = BigDecimal.ZERO; - List<String> advIds = new ArrayList<>(); - for (Map<String, String> datum : data) { - String advId = datum.get("Adv_Id").split("_")[1]; - BigDecimal cateFee = new BigDecimal(datum.get("CateFee")); - cateFeeAll = cateFeeAll.add(cateFee); - advIds.add(advId); + log.info("data鐨勬暟鎹槸" + JSONUtil.toJsonStr(data)); +// BigDecimal cateFeeAll = BigDecimal.ZERO; +// List<String> advIds = new ArrayList<>(); + List<LtkjJianchajianyanTree> buLuXmXinXi = tjOrderService.getBuLuXmXinXi(dto.getBldhs(), order.getCardId()); + log.info("buLuXmXinXi鐨勫�间负:==========" + buLuXmXinXi); + if (null != buLuXmXinXi && !buLuXmXinXi.isEmpty()) { + for (Map<String, String> datum : data) { + for (LtkjJianchajianyanTree tree : buLuXmXinXi) { + String advId = datum.get("Adv_Id").split("_")[1]; + log.info("advid鐨勫�间负:==========" + advId); + log.info("tree鐨勫�间负:==========" + advId); + BigDecimal cateFee = new BigDecimal(datum.get("CateFee")); + log.info("cateFee鐨勫�间负:==========" + cateFee); + log.info("tree.getFyhj()鐨勫�间负:==========" + tree.getFyhj()); + if (tree.getSqdh().equals(advId) && cateFee.compareTo(new BigDecimal(tree.getFyhj())) == 0) { + log.info("璇ラ」鐩凡缂磋垂涓嶅彲鎾ら攢"); + return AjaxResult.error("璇ラ」鐩凡缂磋垂涓嶅彲鎾ら攢!!!"); + } + } + } } - if (advIds.containsAll(dto.getBldhs()) && cateFeeAll.compareTo(BigDecimal.ZERO) != 0) { - log.info("鏀归」鐩凡缂磋垂涓嶅彲鎾ら攢"); - return AjaxResult.error("鏀归」鐩凡缂磋垂涓嶅彲鎾ら攢!!!"); - } - } + boolean b = hisApiMethod.ZfBlXm(dto.getBldhs(), order); if (!b) { TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); @@ -2856,7 +2865,7 @@ return AjaxResult.error(); } - @Transactional(propagation =Propagation.REQUIRES_NEW) + // @Transactional(propagation =Propagation.REQUIRES_NEW) public void extracted(TjProBlDto dto) { for (String bldh : dto.getBldhs()) { remarkService.deleteTjOrderDetailByjxbz(bldh); diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjOrderMapper.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjOrderMapper.java index b42e88c..12d6efc 100644 --- a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjOrderMapper.java +++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjOrderMapper.java @@ -5,6 +5,7 @@ import java.util.Map; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ltkj.hosp.domain.LtkjJianchajianyanTree; import com.ltkj.hosp.domain.TjCustomer; import com.ltkj.hosp.domain.TjOrder; import com.ltkj.hosp.vodomain.LineChartsVo; @@ -268,4 +269,14 @@ List<String> getHuoQuBlZlsqdh(@Param("cardId")String cardId,@Param("bldh") String bldh); @Delete("DELETE FROM ltkj_jianchajianyan_tree WHERE card_id=#{cardId} and jxbz=#{bldh} AND type='澶勭疆'") Boolean delHuoQuZlsqdh(@Param("cardId")String cardId,@Param("bldh") String bldh); + + + List<List<?>> getgetBghsList(Map<String,Object> map); + + + @Select({"<script>","SELECT * FROM ltkj_jianchajianyan_tree a WHERE a.card_id=#{cardId} AND a.jxbz IN ","<foreach collection='bldh' item='id' open='(' separator=',' close=')'>", + "#{id}", + "</foreach>", + "</script>" }) + List<LtkjJianchajianyanTree> getBuLuXmXinXi(@Param("bldh") List<String> bldh,@Param("cardId")String cardId); } diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjOrderService.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjOrderService.java index fae975c..8214f0f 100644 --- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjOrderService.java +++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjOrderService.java @@ -5,6 +5,7 @@ import java.util.Map; import com.baomidou.mybatisplus.extension.service.IService; +import com.ltkj.hosp.domain.LtkjJianchajianyanTree; import com.ltkj.hosp.domain.TjCustomer; import com.ltkj.hosp.domain.TjOrder; import com.ltkj.hosp.vodomain.LineChartsVo; @@ -158,4 +159,10 @@ List<String> getHuoQuBlZlsqdh(String cardId, String bldh); Boolean delHuoQuZlsqdh(String cardId, String bldh); + + Map<String,Object> getgetBghsList(String tjNumber, Integer page, Integer pageSize, String value, String beginTime, String endTime, String name); + + + + List<LtkjJianchajianyanTree> getBuLuXmXinXi(List<String> bldh,String cardId); } diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjOrderServiceImpl.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjOrderServiceImpl.java index 3cc0a28..7e9addb 100644 --- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjOrderServiceImpl.java +++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjOrderServiceImpl.java @@ -5,9 +5,7 @@ import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ltkj.common.utils.DateUtils; -import com.ltkj.hosp.domain.DictComp; -import com.ltkj.hosp.domain.TjCustomer; -import com.ltkj.hosp.domain.TjPackage; +import com.ltkj.hosp.domain.*; import com.ltkj.hosp.service.IDictCompService; import com.ltkj.hosp.service.ITjCustomerService; import com.ltkj.hosp.service.ITjOrderService; @@ -16,7 +14,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.ltkj.hosp.mapper.TjOrderMapper; -import com.ltkj.hosp.domain.TjOrder; import org.springframework.transaction.annotation.Transactional; /** @@ -348,4 +345,27 @@ public Boolean delHuoQuZlsqdh(String cardId, String bldh) { return tjOrderMapper.delHuoQuZlsqdh(cardId,bldh); } + + @Override + public Map<String, Object> getgetBghsList(String tjNumber, Integer page, Integer pageSize, + String compId, String beginTime, String endTime, String tjname) { + Map<String, Object> map = new HashMap<>(); + map.put("page",page); + map.put("pageSize",pageSize); + map.put("tjNumber",tjNumber); + map.put("compId",compId); + map.put("tjname",tjname); + map.put("beginTime",beginTime); + map.put("endTime",endTime); + List<List<?>> list = tjOrderMapper.getgetBghsList(map); + Map<String,Object> map1=new HashMap<>(); + map1.put("customers",list); + map1.put("total",map.get("total")); + return map1; + } + + @Override + public List<LtkjJianchajianyanTree> getBuLuXmXinXi(List<String> bldh,String cardId) { + return tjOrderMapper.getBuLuXmXinXi(bldh,cardId); + } } diff --git a/ltkj-hosp/src/main/resources/mapper/hosp/TjOrderMapper.xml b/ltkj-hosp/src/main/resources/mapper/hosp/TjOrderMapper.xml index edd666f..6357b11 100644 --- a/ltkj-hosp/src/main/resources/mapper/hosp/TjOrderMapper.xml +++ b/ltkj-hosp/src/main/resources/mapper/hosp/TjOrderMapper.xml @@ -370,4 +370,18 @@ )} </select> + + <select id="getgetBghsList" parameterType="java.util.Map" statementType="CALLABLE" resultType="java.util.Map"> + {call tj_bghs_list( + #{page,mode=IN,jdbcType=INTEGER}, + #{pageSize,mode=IN,jdbcType=INTEGER}, + #{tjNumber,mode=IN,jdbcType=VARCHAR}, + #{compId,mode=IN,jdbcType=VARCHAR}, + #{tjname,mode=IN,jdbcType=VARCHAR}, + #{beginTime,mode=IN,jdbcType=VARCHAR}, + #{endTime,mode=IN,jdbcType=VARCHAR}, + #{total,mode=OUT,jdbcType=INTEGER} + )} + </select> + </mapper> -- Gitblit v1.8.0