From 2ece722bfafa27e3ef5dd5e060ee0624e6f263a6 Mon Sep 17 00:00:00 2001 From: zjh <zjh@888> Date: 星期三, 19 六月 2024 19:20:14 +0800 Subject: [PATCH] zjh 本地 2024/06/19 --3 --- ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java | 56 +++++++++++++++++++++++++++++++++----------------------- 1 files changed, 33 insertions(+), 23 deletions(-) diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java index ecf0c48..50895b3 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java @@ -2,6 +2,7 @@ import java.io.*; import java.math.BigDecimal; +import java.text.SimpleDateFormat; import java.util.*; import java.util.stream.Collectors; @@ -112,6 +113,8 @@ private ITjFlowingWaterService tjFlowingWaterService; @Autowired private HisApiGetMethodService hisApiGetMethodService; + @Autowired + private LtkjJianchajianyanTreeService ltkjJianchajianyanTreeService; /** * 璇ヤ綋妫�绉戝涓嬪鎴峰垪琛ㄦ樉绀烘帴鍙� @@ -1417,40 +1420,47 @@ LambdaQueryWrapper<TjOrder> tjOrderLambdaQueryWrapper = new LambdaQueryWrapper<>(); tjOrderLambdaQueryWrapper.eq(TjOrder::getTjNumber,tjNumber); TjOrder tjOrder = orderService.getOne(tjOrderLambdaQueryWrapper); - LambdaQueryWrapper<TjFlowingWater> tjFlowingWaterLambdaQueryWrapper1 = new LambdaQueryWrapper<>(); - tjFlowingWaterLambdaQueryWrapper1.eq(TjFlowingWater::getOrderId,tjOrder.getOrderId()); - tjFlowingWaterLambdaQueryWrapper1.ne(TjFlowingWater::getPayStasus,2); - tjFlowingWaterLambdaQueryWrapper1.eq(TjFlowingWater::getIsAddition,"N"); - TjFlowingWater tjFlowingWater1 = tjFlowingWaterService.getOne(tjFlowingWaterLambdaQueryWrapper1); + LambdaQueryWrapper<TjFlowingWater> tjFlowingWaterLambdaQueryWrapper = new LambdaQueryWrapper<>(); + tjFlowingWaterLambdaQueryWrapper.eq(TjFlowingWater::getOrderId,tjOrder.getOrderId()); + tjFlowingWaterLambdaQueryWrapper.ne(TjFlowingWater::getPayStasus,2); + tjFlowingWaterLambdaQueryWrapper.eq(TjFlowingWater::getIsAddition,"N"); + TjFlowingWater tjFlowingWater = tjFlowingWaterService.getOne(tjFlowingWaterLambdaQueryWrapper); // if (tjFlowingWater1.getPayStasus() != 1){ LambdaQueryWrapper<TjCustomer> tjCustomerLambdaQueryWrapper = new LambdaQueryWrapper<>(); tjCustomerLambdaQueryWrapper.eq(TjCustomer::getCusId,tjOrder.getUserId()); TjCustomer tjCustomer = tjCustomerService.getOne(tjCustomerLambdaQueryWrapper); HashMap<String, Object> hisRequestParams = new HashMap<>(); - hisRequestParams.put("card_no",tjCustomer.getCusIdcard()); - hisRequestParams.put("patientId",tjCustomer.getPationId()); + // 涓嶅湪闇�瑕佽韩浠借瘉鍙� +// hisRequestParams.put("card_no",tjCustomer.getCusIdcard()); + hisRequestParams.put("patientId",tjOrder.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"); - JSONArray jsonArray = JSONUtil.parseArray(data); - BigDecimal decimal = new BigDecimal("0"); - for (Object o : jsonArray) { - JSONObject object = (JSONObject) o; - JSONArray items = object.getJSONArray("Items"); - for (Object item : items) { - JSONObject jsonObject = (JSONObject) item; - BigDecimal fee = jsonObject.getBigDecimal("Fee"); - decimal.add(fee); - } + ArrayList<String> sqdhs = new ArrayList<>(); + ArrayList<String> xmfls = new ArrayList<>(); + BigDecimal cateFeeAll = BigDecimal.ZERO; + for (Map<String, String> datum : data) { + String advId = datum.get("Adv_Id").split("_")[1]; + BigDecimal cateFee = new BigDecimal(datum.get("CateFee")); + String cateCode = datum.get("CateCode"); + cateFeeAll = cateFeeAll.add(cateFee); + sqdhs.add(advId); + xmfls.add(cateCode); } - if (decimal.compareTo(new BigDecimal("0")) != 0){ + LambdaQueryWrapper<LtkjJianchajianyanTree> queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.in(LtkjJianchajianyanTree::getSqdh, sqdhs) + .in(LtkjJianchajianyanTree::getXmfl, xmfls) + .eq(LtkjJianchajianyanTree::getCardId,tjOrder.getCardId()) + .groupBy(LtkjJianchajianyanTree::getType) + .select(LtkjJianchajianyanTree::getFyhj); + List<LtkjJianchajianyanTree> results = ltkjJianchajianyanTreeService.list(queryWrapper); + BigDecimal total = results.stream() + .map(item -> new BigDecimal(item.getFyhj())) + .reduce(BigDecimal.ZERO, BigDecimal::add); + if (cateFeeAll.compareTo(total) != 0){ return AjaxResult.error("瀛樺湪鏈即璐归」鐩�"); } - LambdaQueryWrapper<TjFlowingWater> tjFlowingWaterLambdaQueryWrapper = new LambdaQueryWrapper<>(); - tjFlowingWaterLambdaQueryWrapper.eq(TjFlowingWater::getOrderId,tjOrder.getOrderId()); - tjFlowingWaterLambdaQueryWrapper.ne(TjFlowingWater::getPayStasus,2); - tjFlowingWaterLambdaQueryWrapper.eq(TjFlowingWater::getIsAddition,"N"); - TjFlowingWater tjFlowingWater = tjFlowingWaterService.getOne(tjFlowingWaterLambdaQueryWrapper); + tjFlowingWater.setPayStasus(1L); tjFlowingWater.setPayType(0L); tjFlowingWater.setTollCollectorId("148"); -- Gitblit v1.8.0