From b87b01b5267a7715eba68253674f6843f76e0a5b Mon Sep 17 00:00:00 2001 From: zhaowenxuan <chacca165@163.com> Date: 星期二, 08 四月 2025 18:05:56 +0800 Subject: [PATCH] 2025-04-08 --- ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java | 354 +++++++++++++++++++++++++++++++++------------------------- 1 files changed, 199 insertions(+), 155 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 f4d4bc9..e96ff9c 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 @@ -56,6 +56,7 @@ import com.ltkj.hosp.dto.UpdateTransitionnewPriceDto; import com.ltkj.hosp.hisDto.OutpinimpapplyDto; import com.ltkj.hosp.hisDto.OutpinmedicapplyDto; +import com.ltkj.hosp.idutil.IdUtils; import com.ltkj.hosp.mapper.TbTransitionMapper; import com.ltkj.hosp.mapper.TestMapper; import com.ltkj.hosp.mapper.TjSamplingMapper; @@ -94,6 +95,7 @@ import org.springframework.http.HttpRequest; import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.transaction.NoTransactionException; import org.springframework.transaction.annotation.Isolation; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; @@ -1086,6 +1088,7 @@ return result; } }catch (Exception e){ + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); log.error(String.valueOf(e),e.getMessage()); e.printStackTrace(); } @@ -1095,7 +1098,8 @@ return AjaxResult.error(); } - @Transactional(propagation = Propagation.REQUIRES_NEW, isolation = Isolation.READ_COMMITTED) + + @Transactional(propagation = Propagation.REQUIRED) public AjaxResult processOrderWithTransaction(TjOrder tjOrder, TjCustomer tjCustomer, TjReservation tjReservation, TjFlowingWater tjFlowingWater, MallOrder mallOrder, SysUser sysUser) { //鑾峰彇鎷兼帴鍓嶇紑 @@ -1106,10 +1110,38 @@ // if(StringUtil.isNotBlank(makeLisTmhPrefix)) tjNumber=makeLisTmhPrefix+tjNumber; - String tjNumber = (SecurityUtils.getUsername() + idUtils.getTjNumber()); - if (StringUtil.isNotBlank(makeLisTmhPrefix)) tjNumber = makeLisTmhPrefix + tjNumber; - tjOrder.setTjNumber(tjNumber); +// String tjNumber = (SecurityUtils.getUsername() + idUtils.getTjNumber()); +// String tjNumber = idUtils.getTjNumber(); + String tjNumber = null; + int a =0; + while (tjNumber ==null){ + if(a>3){ + throw new RuntimeException("鍓嶆柟鎷ユ尋,璇风◢绛�!!!"); + } + try { + String newTjNumberRedisLockAndMysql = idUtils.getNewTjNumberRedisLockAndMysql(); + if (StringUtil.isNotBlank(makeLisTmhPrefix)){ + String tjh= makeLisTmhPrefix + newTjNumberRedisLockAndMysql; + int countByTjNum = tjOrderService.getOrderCountByTjNum(tjh); + if(countByTjNum==0){ + tjNumber=tjh; + } + }else { + int countByTjNum = tjOrderService.getOrderCountByTjNum(newTjNumberRedisLockAndMysql); + if(countByTjNum==0){ + tjNumber=newTjNumberRedisLockAndMysql; + } + } + } catch (Exception e) { + log.error(e.getMessage()); + throw new IllegalStateException(); + }finally { + a++; + } + } + + tjOrder.setTjNumber(tjNumber); BigDecimal discount = BigDecimal.valueOf(Double.parseDouble(tjOrder.getTjFlowingWater().getDiscount())); tjOrder.setDiscount(discount.toString()); @@ -1188,21 +1220,8 @@ } } - //淇敼姣忛」鐨勫師浠风幇浠� -// transitionService.updateTbTransitionPriceByCusId(tjCustomer.getCusIdcard(), discount, tjOrder.getTjNumber()); //淇敼涓存椂琛ㄤ綋妫�鍙� transitionService.updateTbTransitionTjNumByCusId(tjCustomer.getCusIdcard(), tjOrder.getTjNumber()); - //琛ュ樊浠� - /* if(subtract.compareTo(BigDecimal.ZERO)>0){ - tjFlowingWater.setPaidIn(paidIn.add(subtract)); - TbTransition onwTbTransition = transitionService.getOnwTbTransition(tjCustomer.getCusIdcard(),tjOrder.getTjNumber()); - if(null !=onwTbTransition){ - log.info("绛惧埌鐧昏浣撴浜�: "+tjOrder.getTjNumber()+"缁�: "+onwTbTransition.getParentProName()+" "+onwTbTransition.getNowPrice() - +" 琛ュ樊浠� "+subtract+" 鏈�缁堝緱 "+onwTbTransition.getNowPrice().add(subtract)); - onwTbTransition.setNowPrice(onwTbTransition.getNowPrice().add(subtract)); - transitionService.updateById(onwTbTransition); - } - }*/ if (tjFlowingWaterService.save(tjFlowingWater)) { tjOrder.setTjSerialNumber(String.valueOf(tjFlowingWater.getTjSerialNumber())); @@ -1212,15 +1231,21 @@ /*璋冪敤his鎺ュ彛*/ String config = configService.selectConfigByKey("sfkqdyhis"); if (null != config && config.equals("Y")) { - AjaxResult result = hisApiMethod.HisApiMethods(tjCustomer, tjOrder); - if (!result.get("code").toString().equals("200")) { - TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); - Object jzh = result.get("jzh"); - if (null != jzh && null != jzh.toString()) { - hisApiMethod.ZfHisApiMethod(jzh.toString()); + AjaxResult result = null; + try { + result = hisApiMethod.HisApiMethods(tjCustomer, tjOrder); + if (!result.get("code").toString().equals("200")) { + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + Object jzh = result.get("jzh"); + if (null != jzh && null != jzh.toString()) { + hisApiMethod.ZfHisApiMethod(jzh.toString()); + } + log.info("璇ョ櫥璁颁汉鎸傚彿澶辫触, 灏辫瘖鍙蜂负: " + tjOrder.getCardId()); + return AjaxResult.error("鎸傚彿澶辫触!" + result.get("msg").toString()); } - log.info("璇ョ櫥璁颁汉鎸傚彿澶辫触, 灏辫瘖鍙蜂负: " + tjOrder.getCardId()); - return AjaxResult.error("鎸傚彿澶辫触!" + result.get("msg").toString()); + } catch (NoTransactionException e) { + log.error(e.getMessage()); + throw new RuntimeException(e); } log.info("璇ョ櫥璁颁汉鐨刪is灏辫瘖鍙锋槸: " + tjOrder.getCardId()); @@ -1235,27 +1260,29 @@ newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); }*/ // 鏌ヨ 瀵规帴Lis銆丳acs鐢宠濡傛灉绫诲瀷鍖呭惈鍦ㄩ厤缃唴鍒欎娇鐢ㄥ鎺is銆乸acs - if (lisApiMethod.isUseLisAndPacsRegister(tjOrder)) { - // 杩欐槸涓婇潰涓汉鏂规硶寮曞叆鏁版嵁 - tjFlowingWater.setPayStasus(1L); - newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); - AjaxResult ajaxResult = hisApiMethod.tijianshenqing(tjCustomer, DateUtil.format(date1, "yyyy-MM-dd HH:mm:ss"), tjOrder, sysUser, result); - if (!ajaxResult.get("code").toString().equals("200")) return ajaxResult; - tjOrderDetailService.updateTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()), - sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjFlowingWater.getTjSerialNumber())); - 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); - } else { - newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); - List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId()); - addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, sysUser, null); - - hisApiMethod.tijianshenqing(tjCustomer, DateUtil.format(date1, "yyyy-MM-dd HH:mm:ss"), tjOrder.getCardId()); + try { + if (lisApiMethod.isUseLisAndPacsRegister(tjOrder)) { + // 杩欐槸涓婇潰涓汉鏂规硶寮曞叆鏁版嵁 + tjFlowingWater.setPayStasus(1L); + newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); + AjaxResult ajaxResult = hisApiMethod.tijianshenqing(tjCustomer, DateUtil.format(date1, "yyyy-MM-dd HH:mm:ss"), tjOrder, sysUser, result); + if (!ajaxResult.get("code").toString().equals("200")) return ajaxResult; + tjOrderDetailService.updateTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()), + sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjFlowingWater.getTjSerialNumber())); + remarkService.updateTjOrderRemarkSfbzByJxbzisnull(tjOrder.getOrderId().toString(), tjFlowingWater.getTjSerialNumber().toString()); + List<TjXdPicture> xdPictureList = xdPictureService.saveTjXdPicture(tjOrder.getTjNumber()); + xdPictureService.saveBatch(xdPictureList); + } else { + newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); + List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId()); + addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, sysUser, null); + hisApiMethod.tijianshenqing(tjCustomer, DateUtil.format(date1, "yyyy-MM-dd HH:mm:ss"), tjOrder.getCardId()); + } + return AjaxResult.success(tjNumber); + } catch (Exception e) { + log.error(e.getMessage()); + throw new RuntimeException(e); } - return AjaxResult.success(tjNumber); } else { tjCustomer.setCardId(tjOrder.getTjNumber()); tjCustomerService.updateById(tjCustomer); @@ -1350,35 +1377,110 @@ // 鏌ヨ 瀵规帴Lis銆丳acs鐢宠濡傛灉绫诲瀷鍖呭惈鍦ㄩ厤缃唴鍒欎娇鐢ㄥ鎺is銆乸acs - if (lisApiMethod.isUseLisAndPacsRegister(tjOrder)) { - log.info("绛惧埌鐧昏杩涘叆鏈敹璐规柟娉�"); - // 杩欐槸涓婇潰涓汉鏂规硶寮曞叆鏁版嵁 - tjFlowingWater.setPayStasus(1L); - newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); - tjOrderDetailService.updateTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()), - sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjFlowingWater.getTjSerialNumber())); - 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()); - log.info("绛惧埌鐧昏:閲囨牱鏁版嵁鏌ヨ涓暟"+detailList.size()); - addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, sysUser, null); - return AjaxResult.success(tjNumber); - } else { - newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); - AjaxResult error = isRequestCommonHisApi(tjOrder, tjCustomer, tjFlowingWater); - if (error != null) return error; -// List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId()); -// addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, sysUser, null); + //瀵煎叆浜哄憳鏄惁鏀惰垂 + String drrysfsf = configService.selectConfigByKey("drrysfsf"); + + + try { + if (lisApiMethod.isUseLisAndPacsRegister(tjOrder)) { + if(StringUtil.isNotBlank(drrysfsf) && drrysfsf.equalsIgnoreCase("Y")){ + if(null != tjReservation){ + return isUseLisAndPacsRegister(tjOrder, tjCustomer, tjReservation, tjFlowingWater, sysUser, discount, tjNumber); + }else { + newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); + AjaxResult error = isRequestCommonHisApi(tjOrder, tjCustomer, tjFlowingWater); + if (error != null) return error; + + return AjaxResult.success(tjNumber); + } + } + return isUseLisAndPacsRegister(tjOrder, tjCustomer, tjReservation, tjFlowingWater, sysUser, discount, tjNumber); + + } else { + newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); + AjaxResult error = isRequestCommonHisApi(tjOrder, tjCustomer, tjFlowingWater); + if (error != null) return error; + } + } catch (Exception e) { + log.error(e.getMessage()); + throw new RuntimeException(e); } return AjaxResult.success(tjNumber); -// pacsApiMethodService.OrderAdd(tjCustomer,tjOrder); -// return AjaxResult.success(tjNumber); } TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); return AjaxResult.error(); } + + private AjaxResult isUseLisAndPacsRegister(TjOrder tjOrder, TjCustomer tjCustomer, TjReservation tjReservation, TjFlowingWater tjFlowingWater, SysUser sysUser, BigDecimal discount, String tjNumber) { + try { + log.info("绛惧埌鐧昏杩涘叆鏈敹璐规柟娉�"); + // 杩欐槸涓婇潰涓汉鏂规硶寮曞叆鏁版嵁 + tjFlowingWater.setPayStasus(1L); + newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); + tjOrderDetailService.updateTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()), + sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjFlowingWater.getTjSerialNumber())); + 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()); + log.info("绛惧埌鐧昏:閲囨牱鏁版嵁鏌ヨ涓暟"+detailList.size()); + addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, sysUser, null); + return AjaxResult.success(tjNumber); + } catch (Exception e) { + log.error(e.getMessage()); + throw new RuntimeException(e); + } + } + + public void newSaveextracted(TjOrder tjOrder, TjCustomer tjCustomer, BigDecimal discount, SysUser sysUser, TjReservation tjReservation, TjFlowingWater tjFlowingWater) { + try { + tjAskMedicalHistoryService.updateTjAskMedicalHistoryByCusId(tjOrder.getTjNumber(), sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjCustomer.getCusId())); + if (null != tjOrder.getTjCategory() && tjOrder.getTjCategory().equals("13")) { + tjOrderDetailService.saveJSYTjOrderDetailsByCusId(tjCustomer.getCusIdcard(), + String.valueOf(tjOrder.getOrderId()), sysUser.getNickName(), String.valueOf(sysUser.getUserId()), tjOrder.getCardId(), String.valueOf(tjFlowingWater.getTjSerialNumber())); + } else { + tjOrderDetailService.saveTjOrderDetailsByCusId(tjCustomer.getCusIdcard(), String.valueOf(tjOrder.getOrderId()), sysUser.getNickName(), String.valueOf(sysUser.getUserId()), tjOrder.getCardId()); + } + + tjOrderDetailService.saveTjPureToneTesByCusId(tjCustomer.getCusIdcard(), tjOrder.getTjNumber(), sysUser.getNickName(), String.valueOf(sysUser.getUserId()), tjOrder.getCardId()); + + //娣诲姞remark琛ㄦ暟鎹� + if (null != tjOrder.getTjCategory() && tjOrder.getTjCategory().equals("13")) { + remarkService.saveJSYTjOrderRemarkByOrderId(tjOrder.getTjNumber(), sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjOrder.getOrderId())); + + } else { + remarkService.saveTjOrderRemarkByOrderId(tjOrder.getTjNumber(), sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjOrder.getOrderId())); + + } + //鍒ゆ柇鏄惁浜ら挶 + if ("1".equals(tjOrder.getTjType())) { + if (null != tjReservation && tjReservation.getPayType() == 1) { + tjOrderDetailService.updateTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()), + sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjFlowingWater.getTjSerialNumber())); + remarkService.updateTjOrderRemarkSfbzByJxbzisnull(tjOrder.getOrderId().toString(), tjFlowingWater.getTjSerialNumber().toString()); + List<TjXdPicture> xdPictureList = xdPictureService.saveTjXdPicture(tjOrder.getTjNumber()); + xdPictureService.saveBatch(xdPictureList); + } + } + if (tjFlowingWater.getPayStasus() == 1L) { + tjOrderDetailService.updateTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()), + sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjFlowingWater.getTjSerialNumber())); + tjFlowingWater.setPaidIn(tjOrder.getTjFlowingWater().getPaidIn()); + tjFlowingWater.setCopeWith(tjOrder.getTjFlowingWater().getCopeWith()); + tjFlowingWater.setPayType(4L); + tjFlowingWaterService.updateById(tjFlowingWater); + remarkService.updateTjOrderRemarkSfbzByJxbzisnull(tjOrder.getOrderId().toString(), tjFlowingWater.getTjSerialNumber().toString()); + // asyncService.addTjChargingStandard(tjOrder, transitionService.getTbTransitionListByCusId(tjCustomer.getCusIdcard(), tjOrder.getCardId()), sysUser); + List<TjXdPicture> xdPictureList = xdPictureService.saveTjXdPicture(tjOrder.getTjNumber()); + xdPictureService.saveBatch(xdPictureList); + } + } catch (Exception e) { + log.error(e.getMessage()); + throw new RuntimeException(e); + } + } + private AjaxResult isRequestCommonHisApi(TjOrder tjOrder, TjCustomer tjCustomer, TjFlowingWater tjFlowingWater) { String s = configService.selectConfigByKey("is_request_common_his_api"); @@ -1457,6 +1559,8 @@ Date date = new Date(); String format = DateUtil.format(date, "yyMMddHHmmssSSS"); for (TjOrderDetail detail : detailList) { + int i = samplingService.isExistProId(order.getTjNumber(), String.valueOf(detail.getProId())); + if(i>0) continue; TjSampling sampling = new TjSampling(); if (null == projectService.getById(detail.getProId())) continue; TjProject project = projectService.getById(detail.getProId()); @@ -1899,7 +2003,8 @@ //鑾峰彇鎷兼帴鍓嶇紑 String makeLisTmhPrefix = configService.selectConfigByKey("make_lis_tmh_prefix"); - String tjNumber = (sysUser.getUserName() + idUtils.getTjNumber()); +// String tjNumber = (sysUser.getUserName() + idUtils.getTjNumber()); + String tjNumber = idUtils.getTjNumber(); if (StringUtil.isNotBlank(makeLisTmhPrefix)) tjNumber = makeLisTmhPrefix + tjNumber; @@ -2835,50 +2940,6 @@ } - public void newSaveextracted(TjOrder tjOrder, TjCustomer tjCustomer, BigDecimal discount, SysUser sysUser, TjReservation tjReservation, TjFlowingWater tjFlowingWater) { - tjAskMedicalHistoryService.updateTjAskMedicalHistoryByCusId(tjOrder.getTjNumber(), sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjCustomer.getCusId())); - if (null != tjOrder.getTjCategory() && tjOrder.getTjCategory().equals("13")) { - tjOrderDetailService.saveJSYTjOrderDetailsByCusId(tjCustomer.getCusIdcard(), - String.valueOf(tjOrder.getOrderId()), sysUser.getNickName(), String.valueOf(sysUser.getUserId()), tjOrder.getCardId(), String.valueOf(tjFlowingWater.getTjSerialNumber())); - } else { - tjOrderDetailService.saveTjOrderDetailsByCusId(tjCustomer.getCusIdcard(), String.valueOf(tjOrder.getOrderId()), sysUser.getNickName(), String.valueOf(sysUser.getUserId()), tjOrder.getCardId()); - } - - tjOrderDetailService.saveTjPureToneTesByCusId(tjCustomer.getCusIdcard(), tjOrder.getTjNumber(), sysUser.getNickName(), String.valueOf(sysUser.getUserId()), tjOrder.getCardId()); - - //娣诲姞remark琛ㄦ暟鎹� - if (null != tjOrder.getTjCategory() && tjOrder.getTjCategory().equals("13")) { - remarkService.saveJSYTjOrderRemarkByOrderId(tjOrder.getTjNumber(), sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjOrder.getOrderId())); - - } else { - remarkService.saveTjOrderRemarkByOrderId(tjOrder.getTjNumber(), sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjOrder.getOrderId())); - - } - //鍒ゆ柇鏄惁浜ら挶 - if ("1".equals(tjOrder.getTjType())) { - if (null != tjReservation && tjReservation.getPayType() == 1) { - tjOrderDetailService.updateTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()), - sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjFlowingWater.getTjSerialNumber())); - remarkService.updateTjOrderRemarkSfbzByJxbzisnull(tjOrder.getOrderId().toString(), tjFlowingWater.getTjSerialNumber().toString()); - List<TjXdPicture> xdPictureList = xdPictureService.saveTjXdPicture(tjOrder.getTjNumber()); - xdPictureService.saveBatch(xdPictureList); - } - } - if (tjFlowingWater.getPayStasus() == 1L) { - tjOrderDetailService.updateTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()), - sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjFlowingWater.getTjSerialNumber())); - tjFlowingWater.setPaidIn(tjOrder.getTjFlowingWater().getPaidIn()); - tjFlowingWater.setCopeWith(tjOrder.getTjFlowingWater().getCopeWith()); - tjFlowingWater.setPayType(4L); - tjFlowingWaterService.updateById(tjFlowingWater); - remarkService.updateTjOrderRemarkSfbzByJxbzisnull(tjOrder.getOrderId().toString(), tjFlowingWater.getTjSerialNumber().toString()); -// asyncService.addTjChargingStandard(tjOrder, transitionService.getTbTransitionListByCusId(tjCustomer.getCusIdcard(), tjOrder.getCardId()), sysUser); - List<TjXdPicture> xdPictureList = xdPictureService.saveTjXdPicture(tjOrder.getTjNumber()); - xdPictureService.saveBatch(xdPictureList); - } - } - - public void ttextracted(TjOrder tjOrder, TjCustomer tjCustomer, SysUser sysUser, TjReservation tjReservation, TjFlowingWater tjFlowingWater) { tjAskMedicalHistoryService.updateTjAskMedicalHistoryByCusId(tjOrder.getTjNumber(), sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjCustomer.getCusId())); @@ -3060,8 +3121,8 @@ tjReport.setTjNumber(String.valueOf(tjNumber)); tjReport.setPath(urlValue + outputFileName1); String outputPath1 = value + File.separator; - String pdfBinary = getPDFBinary(outputPath1 + outputFileName1); - tjReport.setReport(pdfBinary); +// String pdfBinary = getPDFBinary(outputPath1 + outputFileName1); +// tjReport.setReport(pdfBinary); tjReport.setType("浣撴鎶ュ憡"); tjReport.setPrint("pdf"); tjReportService.save(tjReport); @@ -3952,9 +4013,8 @@ public AjaxResult updateTransitionnewPrice(@RequestBody List<UpdateTransitionnewPriceDto> dtos) { if (null != dtos && !dtos.isEmpty()) { - int index = 0; + boolean flag = false; for (UpdateTransitionnewPriceDto dto : dtos) { - index++; LambdaQueryWrapper<TbTransition> wq = new LambdaQueryWrapper<>(); wq.eq(TbTransition::getCusId, dto.getCusIdCard()); wq.eq(TbTransition::getParentProId, dto.getParentProId()); @@ -3964,48 +4024,32 @@ log.info("鐖堕」鐩甶d涓�: " + dto.getParentProId()); log.info("鎶樻墸涓�: " + new BigDecimal(dto.getDiscount())); if (null != list && !list.isEmpty()) { + + for (TbTransition transition : list) { + BigDecimal ordPrice = transition.getOrdPrice(); + BigDecimal multiply = ordPrice.multiply((new BigDecimal(dto.getDiscount()).divide(BigDecimal.valueOf(10)))); + log.info("鍚庣璁$畻鐨勯噾棰�: " + multiply.toString()); + transition.setNowPrice(multiply); + transition.setDiscount(new BigDecimal(dto.getDiscount())); + transitionService.updateById(transition); + } + BigDecimal dxzj = transitionService.getTbTransitionPriceAndOrdPrice(dto.getCusIdCard(), dto.getParentProId()); - log.info("dxzj:{}",dxzj.toString()); - if (index == dtos.size()){ - BigDecimal yhj = dto.getYhj(); - log.info("鍓嶇浼犻�掔殑浠锋牸锛歿}",yhj.toString()); - BigDecimal cj = yhj.subtract(dxzj); - log.info("璁$畻鐨勫樊浠凤細{}",cj.toString()); - int index1 = 0; - for (TbTransition transition : list) { - BigDecimal ordPrice = transition.getOrdPrice(); - BigDecimal multiply = ordPrice.multiply((new BigDecimal(dto.getDiscount()).divide(BigDecimal.valueOf(10)))); - if (index1 == 0){ - log.info("淇敼灏忛」 {}{} 鍘熸湰浠锋牸:{}",transition.getProId(),transition.getProName(),multiply.toString()); - multiply = multiply.add(cj); - log.info("澧炲姞宸环鍚庯細{}",multiply.toString()); - } - index1++; - log.info("鍚庣璁$畻鐨勯噾棰�: " + multiply.toString()); -// log.info("鍓嶇浼犻�掔殑閲戦: " + dto.getYhj()); - transition.setNowPrice(multiply); - transition.setDiscount(new BigDecimal(dto.getDiscount())); + + BigDecimal yhj = dto.getYhj(); + log.info("鍓嶇浼犻�掔殑浠锋牸锛歿}",yhj.toString()); + BigDecimal cj = yhj.subtract(dxzj); + log.info("璁$畻鐨勫樊浠凤細{}",cj.toString()); + for (TbTransition transition : list) { + BigDecimal result = transition.getNowPrice().add(cj); + log.info("琛ヤ笂宸环鍓嶇殑浠锋牸涓猴細{}",transition.getNowPrice().toString()); + if (result.compareTo(BigDecimal.ZERO)>0 && !flag && cj.compareTo(BigDecimal.ZERO) != 0){ + transition.setNowPrice(result); transitionService.updateById(transition); + log.info("淇敼 琛ヤ笂宸环鍚庣殑浠锋牸涓猴細{}",result.toString()); + flag = true; + break; } - }else { - for (TbTransition transition : list) { - BigDecimal ordPrice = transition.getOrdPrice(); - BigDecimal multiply = ordPrice.multiply((new BigDecimal(dto.getDiscount()).divide(BigDecimal.valueOf(10)))); - log.info("鍚庣璁$畻鐨勯噾棰�: " + multiply.toString()); -// log.info("鍓嶇浼犻�掔殑閲戦: " + dto.getYhj()); - transition.setNowPrice(multiply); - transition.setDiscount(new BigDecimal(dto.getDiscount())); - transitionService.updateById(transition); - } -// if (null != dto.getYhj() && dto.getYhj().compareTo(BigDecimal.ZERO) >= 0) { -// List<TbTransition> transitionList = list.stream().filter(a -> -// transitionService.getTbTransitionPriceAndOrdPrice(dto.getCusIdCard(), dto.getParentProId()).subtract(dto.getYhj()).compareTo(BigDecimal.ZERO) >= 0).collect(Collectors.toList()); -// if (!transitionList.isEmpty()) { -// TbTransition tbTransition = transitionList.get(0); -// tbTransition.setNowPrice(dxzj); -// transitionService.updateById(tbTransition); -// } -// } } } } -- Gitblit v1.8.0