From 5bafefb3e2e042fcf304be9a13d38d77f6cbce57 Mon Sep 17 00:00:00 2001 From: zhaowenxuan <chacca165@163.com> Date: 星期三, 19 二月 2025 16:48:15 +0800 Subject: [PATCH] 修改药品申请参数 --- ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java | 120 ++++++++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 92 insertions(+), 28 deletions(-) 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 82c2df8..b5323a3 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 @@ -90,6 +90,7 @@ import org.aspectj.weaver.ast.Var; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; +import org.springframework.data.redis.core.StringRedisTemplate; import org.springframework.http.HttpRequest; import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; import org.springframework.security.access.prepost.PreAuthorize; @@ -240,6 +241,8 @@ @Autowired private TbTransitionMapper tbTransitionMapper; + private static final String TJH = "tjhs:tjh"; + //灏嗘柟娉曡繑鍥炲�艰В鏋愭垚json鏍煎紡 public JSONObject getJSONObject(String builder) { String Response = JSONUtil.parseObj(builder).getStr("Response"); @@ -305,7 +308,7 @@ wqq.like(TjCustomer::getCusName, name); List<TjCustomer> customerList = tjCustomerService.list(wqq); List<TjOrder> list2 = new ArrayList<>(); - if (null != customerList && customerList.size() > 0) { + if (null != customerList && !customerList.isEmpty()) { List<TjOrder> list = new ArrayList<>(); for (TjCustomer customer : customerList) { LambdaQueryWrapper<TjOrder> wq = new LambdaQueryWrapper<>(); @@ -316,13 +319,13 @@ list.addAll(tjOrderService.list(wq)); } List<TjOrder> collect = null; - if (list.size() > 0) { + if (!list.isEmpty()) { for (TjOrder order : list) { //绛涢�夋湁璋冩煡闂嵎鐨� LambdaQueryWrapper<TjSurveyRecord> wqq1 = new LambdaQueryWrapper<>(); wqq1.eq(TjSurveyRecord::getTjnumber, order.getTjNumber()); List<TjSurveyRecord> one = surveyRecordService.list(wqq1); - if (one.size() == 0) { + if (one.isEmpty()) { TjCustomer tjCustomer = tjCustomerService.getById(order.getUserId()); if (null != tjCustomer) { order.setTjCustomerName(MatchUtils.hideCusName(tjCustomer.getCusName())); @@ -383,7 +386,7 @@ LambdaQueryWrapper<TjSurveyRecord> wqq = new LambdaQueryWrapper<>(); wqq.eq(TjSurveyRecord::getTjnumber, order.getTjNumber()); List<TjSurveyRecord> one = surveyRecordService.list(wqq); - if (one.size() == 0) { + if (one.isEmpty()) { TjCustomer tjCustomer = tjCustomerService.getById(order.getUserId()); if (null != tjCustomer) { order.setTjCustomerName(MatchUtils.hideCusName(tjCustomer.getCusName())); @@ -1034,7 +1037,7 @@ } tjReservation.setIsExpire(1); tjReservationService.updateById(tjReservation); - if (null != tjReservation.getTeamNo() && tjOrder.getTjType().equals("1")) { + if (null != tjReservation.getTeamNo()) { tjOrder.setTjType("1"); } else if (tjOrder.getTjType().equals("2")) { tjOrder.setTjType("2"); @@ -1082,7 +1085,10 @@ tjOrderService.tjQiandaodengji(tjOrder.getTjNumber()); return result; } - } finally { + }catch (Exception e){ + log.error(String.valueOf(e)); + } + finally { lock.unlock(); } return AjaxResult.error(); @@ -1099,7 +1105,7 @@ // if(StringUtil.isNotBlank(makeLisTmhPrefix)) tjNumber=makeLisTmhPrefix+tjNumber; - String tjNumber = (SecurityUtils.getUsername() + IdUtils.getTjNumber()); + String tjNumber = (SecurityUtils.getUsername() + idUtils.getTjNumber()); if (StringUtil.isNotBlank(makeLisTmhPrefix)) tjNumber = makeLisTmhPrefix + tjNumber; tjOrder.setTjNumber(tjNumber); @@ -1343,7 +1349,9 @@ // 鏌ヨ 瀵规帴Lis銆丳acs鐢宠濡傛灉绫诲瀷鍖呭惈鍦ㄩ厤缃唴鍒欎娇鐢ㄥ鎺is銆乸acs + log.info("绛惧埌鐧昏鎺ュ彛璇ヤ汉鍛樼殑浣撴绫诲瀷鏄�:"+tjOrder.getTjType()); if (lisApiMethod.isUseLisAndPacsRegister(tjOrder)) { + log.info("绛惧埌鐧昏杩涘叆鏈敹璐规柟娉�"); // 杩欐槸涓婇潰涓汉鏂规硶寮曞叆鏁版嵁 tjFlowingWater.setPayStasus(1L); newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); @@ -1353,6 +1361,7 @@ List<TjXdPicture> xdPictureList = xdPictureService.saveTjXdPicture(tjOrder.getTjNumber()); xdPictureService.saveBatch(xdPictureList); List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId()); + log.info("绛惧埌鐧昏:閲囨牱鏁版嵁鏌ヨ涓暟"+detailList.size()); addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, sysUser, null); return AjaxResult.success(tjNumber); } else { @@ -1522,6 +1531,28 @@ } + + @GetMapping("/addCaiYangDengJi") + @ApiOperation(value = "鎵嬪姩娣诲姞閲囨牱璁板綍鎺ュ彛") + public AjaxResult addCaiYangDengJi(@RequestParam("tjNum") String tjNum){ + + try { + TjOrder order = tjOrderService.getOrderByTjNum(tjNum); + if(null !=order){ + Long userId = Long.valueOf(SecurityUtils.getLoginUser().getUserId()); + SysUser sysUser = userService.getById(userId); + List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(order.getOrderId()); + log.info("绛惧埌鐧昏:閲囨牱鏁版嵁鏌ヨ涓暟"+detailList.size()); + addCaiYangDengJi(detailList, !detailList.isEmpty(), order, sysUser, null); + } + } catch (NumberFormatException e) { + log.error(String.valueOf(e)); + } + + return AjaxResult.success(); + } + + @PostMapping("/addPlOrderAndDetail") @ApiOperation(value = "浣撴鎵归噺绛惧埌鐧昏鎺ュ彛") // @Transactional //(鍒囨崲鏁版嵁搴撳嚭閿欙紝鎵�浠ユ敞閲�) @@ -1558,15 +1589,11 @@ // } // } // }); - String tjh = (sysUser.getUserName() + new SimpleDateFormat("yyMMddHHmmss").format(new Date())); - - - String finalTjh = tjh; Future<AjaxResult> future = executor.submit(new Callable<AjaxResult>() { @Override public AjaxResult call() throws Exception { - return getAjaxResult(aLong, sysUser, daoDto.getTjCategory(), finalTjh); + return getAjaxResult(aLong, sysUser, daoDto.getTjCategory()); } }); try { @@ -1580,7 +1607,7 @@ errTjh.add(userId); } } catch (InterruptedException | ExecutionException e) { - TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); +// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); e.printStackTrace(); } } @@ -1588,7 +1615,7 @@ } // TODO 鍥犱负鏈変綋妫�鍙蜂細鏌ュ嚭绌烘暟鎹� 鍏堜娇鐢ㄦ鏁版嵁 鎵撳嵃瀵艰瘖鍗� if (!tjNumbers.isEmpty()) { - Map<String, Object> map = null; + /* Map<String, Object> map = null; try { map = PDFDocumentUtil.getDocument(); Document document = (Document) map.get("document"); @@ -1643,19 +1670,33 @@ } catch (IOException | DocumentException e) { TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); e.printStackTrace(); - } - return AjaxResult.success("鎿嶄綔鎴愬姛"); + }*/ + Map<String,Object> map=new HashMap<>(); + map.put("tjh",tjNumbers); + return AjaxResult.success("鎿嶄綔鎴愬姛",map); } if (!errTjh.isEmpty()){ - return AjaxResult.success("浠ヤ笂浜哄憳绛惧埌澶辫触",errTjh); + Map<String,Object> map=new HashMap<>(); + map.put("errtjh",errTjh); + return AjaxResult.success("浠ヤ笂浜哄憳绛惧埌澶辫触",map); } return AjaxResult.success(); } - TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); +// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); return AjaxResult.error(); } -// @Transactional + @GetMapping("/signOrderInfo") + public AjaxResult signOrderInfo(@RequestParam("tjNum") String tjNum){ + List<Map<String, Object>> djdInfos = tjOrderService.selectDjdInfo(tjNum); + Map<String, Object> userInfo = tjOrderService.selectDjdUserInfo(tjNum); + HashMap<String, Object> hashMap = new HashMap<>(); + hashMap.put("djd",djdInfos); + hashMap.put("user",userInfo); + return AjaxResult.success(hashMap); + } + + @Transactional public void getAjaxResults(String cusIdcard) { if (!"".equals(cusIdcard) && cusIdcard != null) { //鏍规嵁閰嶇疆璋冨彇瀛樺偍杩囩▼ 灏嗕复鏃惰〃鏁版嵁瀛樺叆棰勭害琛�2023.12.12 @@ -1790,8 +1831,8 @@ DynamicDataSourceContextHolder.clearDataSourceType(); } -// @Transactional - public AjaxResult getAjaxResult(Long userId, SysUser sysUser, String tjCategory,String tjh) throws IOException { + @Transactional + public AjaxResult getAjaxResult(Long userId, SysUser sysUser, String tjCategory) throws IOException { LambdaQueryWrapper<TjCustomer> wq = new LambdaQueryWrapper<>(); wq.eq(TjCustomer::getCusId, userId); @@ -1848,14 +1889,33 @@ // tjReservationService.updateById(tjReservation); //鐢熸垚浣撴鍙� - String tjNumber = (sysUser.getUserName() + new SimpleDateFormat("yyMMddHHmmss").format(new Date())); +// String tjNumber = (sysUser.getUserName() + new SimpleDateFormat("yyMMddHHmmss").format(new Date())); +// tjNumber = tjNumber.replaceAll(".{6}$", userId.toString().substring(userId.toString().length() - 6)); - tjNumber = tjNumber.replaceAll(".{4}$", userId.toString().substring(userId.toString().length() - 4)); - tjh = tjh.replaceAll(".{4}$", userId.toString().substring(userId.toString().length() - 4)); + //鑾峰彇鎷兼帴鍓嶇紑 + String makeLisTmhPrefix = configService.selectConfigByKey("make_lis_tmh_prefix"); + String tjNumber = (sysUser.getUserName() + idUtils.getTjNumber()); + if (StringUtil.isNotBlank(makeLisTmhPrefix)) tjNumber = makeLisTmhPrefix + tjNumber; -// tjOrder.setTjNumber(tjNumber); - tjOrder.setTjNumber(tjh); + +// if (redisCache.hasKey(TJH)) { +// while (true){ +// List<String> tjh = redisCache.getCacheList(TJH); +// if(tjh.contains(tjNumber)){ +// tjNumber =(sysUser.getUserName() + IdUtils.getTjNumber()); +// if (StringUtil.isNotBlank(makeLisTmhPrefix)) tjNumber = makeLisTmhPrefix + tjNumber; +// }else { +// tjh.add(tjNumber); +// } +// } +// }else { +// List<String> stringList = tjOrderService. +// list(new LambdaQueryWrapper<TjOrder>().select(TjOrder::getTjNumber)).stream().map(TjOrder::getTjNumber).collect(Collectors.toList()); +// stringList.add(tjNumber); +// redisCache.setCacheList(TJH,stringList); +// } + tjOrder.setTjNumber(tjNumber); if (null != tjOrder.getPhoto()) { File file = new File(tjOrder.getPhoto()); if (file.isFile()) { @@ -1900,8 +1960,12 @@ tjFlowingWater.setUpdateTime(date); tjFlowingWater.setCreateBy(sysUser.getNickName()); tjFlowingWater.setUpdateBy(sysUser.getNickName()); - tjFlowingWater.setCopeWith(tbTransitionMapper.sumTbTransitionOrdPriceByTjNum(tjOrder.getTjNumber())); - tjFlowingWater.setPaidIn(tbTransitionMapper.sumTbTransitionNowPriceByTjNum(tjOrder.getTjNumber())); +// BigDecimal bigDecimal = tbTransitionMapper.sumTbTransitionOrdPriceByTjNum(tjOrder.getTjNumber()); + BigDecimal bigDecimal = tbTransitionMapper.sumTbTransitionOrdPriceByTjNumIsNull(tjCustomer.getCusIdcard()); + tjFlowingWater.setCopeWith(bigDecimal); +// BigDecimal bigDecimal1 = tbTransitionMapper.sumTbTransitionNowPriceByTjNum(tjOrder.getTjNumber()); + BigDecimal bigDecimal1 = tbTransitionMapper.sumTbTransitionNowPriceByTjNumIsNull(tjCustomer.getCusIdcard()); + tjFlowingWater.setPaidIn(bigDecimal1); tjFlowingWater.setDiscount(String.valueOf(10)); tjFlowingWater.setPayStasus(1L); tjFlowingWater.setPayType(3L); -- Gitblit v1.8.0