From bd6f2e5aef6762cb918933bca0dc927d50ba404a Mon Sep 17 00:00:00 2001 From: zjh <1084500556@qq.com> Date: 星期四, 20 六月 2024 16:50:50 +0800 Subject: [PATCH] zjh 2024/06/20-2 --- ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java | 126 +++++++++++++++++++++++++++++++++-------- 1 files changed, 101 insertions(+), 25 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 baf6870..d71ee6b 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 @@ -845,20 +845,22 @@ LambdaQueryWrapper<TjCustomer> wq = new LambdaQueryWrapper<>(); wq.eq(TjCustomer::getCusId, tjOrder.getUserId()); TjCustomer tjCustomer = tjCustomerService.getOne(wq); - if (tjCustomer == null) return AjaxResult.error("璇ュ鎴锋湭鐧昏鎴栦笉瀛樺湪"); + if (tjCustomer == null) return AjaxResult.error("璇ュ鎴锋湭鐧昏"); LambdaQueryWrapper<TjOrder> wqq = new LambdaQueryWrapper<>(); wqq.eq(TjOrder::getUserId, tjOrder.getUserId()); wqq.eq(TjOrder::getCheckStatus, 0); wqq.isNull(TjOrder::getFinishTime); - if (!tjCustomer.getCardId().equals("0")) { - wqq.eq(TjOrder::getCardId, tjCustomer.getCardId()); - } +// if (!tjCustomer.getCardId().equals("0")) { + wqq.eq(TjOrder::getCardId, tjCustomer.getCardId()); +// } TjOrder order = tjOrderService.getOne(wqq); if (null != order) { - transitionService.deletedTbTransitionListByCusIdAndTjNum(tjCustomer.getCusIdcard(), tjCustomer.getCardId()); + transitionService.deletedTbTransitionListByCusIdAndTjNum(tjCustomer.getCusIdcard(),tjCustomer.getCardId()); return AjaxResult.error("涓嶅彲閲嶅鐧昏"); } + + LambdaQueryWrapper<TjReservation> wq1 = new LambdaQueryWrapper<>(); wq1.eq(TjReservation::getIdCard, tjCustomer.getCusIdcard()); wq1.eq(TjReservation::getIsExpire, 2); @@ -1033,11 +1035,18 @@ /*璋冪敤his鎺ュ彛*/ String config = configService.selectConfigByKey("sfkqdyhis"); if(null !=config && config.equals("Y")){ - hisApiMethod.HisApiMethods(tjCustomer,tjOrder.getOrderId()); - } - tjCustomer.setCardId("0"); + AjaxResult result = hisApiMethod.HisApiMethods(tjCustomer, tjOrder.getOrderId()); + if(!result.get("code").toString().equals("200")){ + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return AjaxResult.error("鎸傚彿澶辫触!"+result.get("msg").toString()); + } + }else { + tjCustomer.setCardId(tjOrder.getTjNumber()); tjCustomerService.updateById(tjCustomer); - + transitionService.updateCardIdByTjNumAndIdCard(tjCustomer.getCusIdcard(),tjOrder.getTjNumber(),tjOrder.getTjNumber()); + tjOrder.setCardId(tjOrder.getTjNumber()); + tjOrderService.updateById(tjOrder); + } return AjaxResult.success(tjNumber); } return AjaxResult.error(); @@ -1623,14 +1632,16 @@ if (null != tbTransitionList && tbTransitionList.size() > 0) { - if (redisCache.hasKey(cardId + cusId)) { - redisCache.deleteObject(cardId + cusId); - redisCache.setCacheList(cardId + cusId, tbTransitionList); - redisCache.setCacheMapValue(cardId + cusId + "cusId", cardId + cusId, getMaps(cusId, cardId)); - } else { - redisCache.setCacheList(cardId + cusId, tbTransitionList); - redisCache.setCacheMapValue(cardId + cusId + "cusId", cardId + cusId, getMaps(cusId, cardId)); - } +// if (redisCache.hasKey(cardId + cusId)) { +// redisCache.deleteObject(cardId + cusId); +// redisCache.setCacheList(cardId + cusId, tbTransitionList); +// redisCache.setCacheMapValue(cardId + cusId + "cusId", cardId + cusId, getMaps(cusId, cardId)); +// } else { +// redisCache.setCacheList(cardId + cusId, tbTransitionList); +// redisCache.setCacheMapValue(cardId + cusId + "cusId", cardId + cusId, getMaps(cusId, cardId)); +// } + List<Map<String, Object>> map1 = getMap(cusId, cardId, tbTransitionList); + return AjaxResult.success(map1); } return AjaxResult.success(); } @@ -1684,7 +1695,7 @@ for (TjOrder order : list) { TjCustomer tjCustomer = tjCustomerService.getById(order.getUserId()); if (null != tjCustomer) { - order.setTjCustomerName(MatchUtils.hideCusName(tjCustomer.getCusName())); + order.setTjCustomerName(tjCustomer.getCusName()); order.setTjCustomerSex(tjCustomer.getCusSex()); order.setTjCustomerAge(DateUtil.ageOfNow(tjCustomer.getCusBrithday())); order.setTjCustomerPhone(MatchUtils.hidePhoneNum(tjCustomer.getCusPhone())); @@ -1738,7 +1749,7 @@ for (TjOrder order : list) { TjCustomer tjCustomer = tjCustomerService.getById(order.getUserId()); if (null != tjCustomer) { - order.setTjCustomerName(MatchUtils.hideCusName(tjCustomer.getCusName())); + order.setTjCustomerName(tjCustomer.getCusName()); order.setTjCustomerSex(tjCustomer.getCusSex()); order.setTjCustomerAge(DateUtil.ageOfNow(tjCustomer.getCusBrithday())); order.setTjCustomerPhone(MatchUtils.hidePhoneNum(tjCustomer.getCusPhone())); @@ -1800,6 +1811,7 @@ */ @PostMapping("/tjGoOut") @ApiOperation(value = "浣撴绛剧") + @Transactional public AjaxResult tjGoOut(@RequestBody Map<String, Object> map) { Long userId = Long.valueOf(SecurityUtils.getLoginUser().getUserId()); SysUser sysUser = userService.getById(userId); @@ -1807,6 +1819,7 @@ String jsonString = com.alibaba.fastjson.JSON.toJSONString(domainVos1); List<QjDomainVo> domainVos = com.alibaba.fastjson.JSON.parseArray(jsonString, QjDomainVo.class); String tjNumber = map.get("tjNumber").toString(); + TjOrder tjOrder = tjOrderService.getOrderByTjNum(tjNumber); if (null != domainVos && domainVos.size() > 0) { Set<String> list = new HashSet<>(); for (QjDomainVo domainVo : domainVos) { @@ -1820,7 +1833,6 @@ if (domainVo.getType() == 3) { list.add(String.valueOf(domainVo.getTjNumber())); } else { - TjOrder tjOrder = tjOrderService.getOrderByTjNum(remark.getTjNumber()); if (null != tjOrder) { tjOrder.setFinishTime(new Date()); tjOrder.setStatus(TjConstants.TJ_CONFIRM); @@ -1830,6 +1842,11 @@ } } asyncService.tjGoutAsync(domainVos, sysUser, list); + + TjCustomer customer = tjCustomerService.selectTjCustomerByCusId(tjOrder.getUserId()); + customer.setCardId("0"); + tjCustomerService.updateById(customer); + return AjaxResult.success("绛剧鎴愬姛锛�"); } else { return getAjaxResult(tjNumber); @@ -1842,6 +1859,7 @@ */ @GetMapping("/goOut") @ApiOperation(value = "绛剧") + @Transactional public AjaxResult goOut(@RequestParam @ApiParam(value = "浣撴鍙�") String tjNumber) { return getAjaxResult(tjNumber); } @@ -1934,17 +1952,70 @@ return list; } + + private List<Map<String, Object>> getMap(String cusId, String cardId,List<TbTransition> transitionList) { + +// List<TbTransition> transitionList = null; +// if (redisCache.hasKey(cardId + cusId)) { +// transitionList = redisCache.getCacheList(cardId + cusId); +// } else { +// transitionList = transitionService.getTbTransitionListByCusId(cusId, cardId); +// } + if (null == transitionList) return null; + Map<Long, List<TbTransition>> collect = transitionList.stream().collect(Collectors.groupingBy(TbTransition::getParentProId)); + List<Map<String, Object>> list = new ArrayList<>(); + for (Map.Entry<Long, List<TbTransition>> entry : collect.entrySet()) { + Map<String, Object> map = new HashMap<>(); + Long pacId = entry.getValue().get(0).getPacId(); + if (null != pacId) { + TjPackage aPackage = tjPackageService.getById(entry.getValue().get(0).getPacId()); + map.put("pacName", aPackage.getPacName()); + TjProject tjProject = projectService.getById(entry.getKey()); +// TjPackageProject project = tjPackageProjectService.getOne(new LambdaQueryWrapper<TjPackageProject>().eq(TjPackageProject::getPacId, pacId) +// .eq(TjPackageProject::getProId, entry.getKey())); + map.put("ordPrice", tjProject.getProPrice()); +// if (null != project) { +// map.put("nowPrice", project.getPriceNow()); +// } else { +// map.put("nowPrice", tjProject.getProPrice()); +// } + map.put("nowPrice", transitionService.getTbTransitionDxPriceByPac(cusId, entry.getKey(), cardId, pacId)); + } else { + map.put("pacName", "鍗曢」"); + List<TbTransition> tbTransitionList = entry.getValue(); + if (null != tbTransitionList && tbTransitionList.size() > 0) { + BigDecimal money1 = new BigDecimal("0.00"); + BigDecimal money2 = new BigDecimal("0.00"); + for (TbTransition tbTransition : tbTransitionList) { + money1 = money1.add(tbTransition.getOrdPrice()); + money2 = money2.add(tbTransition.getNowPrice()); + } + map.put("ordPrice", money1); + map.put("nowPrice", money2); + } + } + map.put("parentName", projectService.getById(entry.getKey()).getProName()); + map.put("list", entry.getValue()); + list.add(map); + } + return list; + } + private AjaxResult getAjaxResult(String tjNumber) { LambdaQueryWrapper<TjOrder> wq0 = new LambdaQueryWrapper<>(); wq0.eq(TjOrder::getTjNumber, tjNumber); TjOrder tjOrder = tjOrderService.getOne(wq0); + if (null != tjOrder) { + TjCustomer customer = tjCustomerService.selectTjCustomerByCusId(tjOrder.getUserId()); + customer.setCardId("0"); + tjCustomerService.updateById(customer); + LambdaQueryWrapper<TjOrderDetail> wq11 = new LambdaQueryWrapper<>(); wq11.eq(TjOrderDetail::getOrderId, tjOrder.getOrderId()); wq11.eq(TjOrderDetail::getTjStatus, 0); wq11.isNotNull(TjOrderDetail::getFlowingWaterId); List<TjOrderDetail> list = tjOrderDetailService.list(wq11); - if (list != null) { Long userId = Long.valueOf(SecurityUtils.getLoginUser().getUserId()); SysUser sysUser = userService.getById(userId); @@ -2313,16 +2384,21 @@ TjOrder order = tjOrderService.getOrderByTjNum(tjNum); if (null != order) { - String payByTjNum = tjOrderService.isPayByTjNum(String.valueOf(order.getOrderId())); - if (null != payByTjNum) { - return AjaxResult.success("璇ョ敤鎴峰凡鏀惰垂涓嶅彲鎾ら攢绛惧埌!"); - } +// String payByTjNum = tjOrderService.isPayByTjNum(String.valueOf(order.getOrderId())); +// if (null != payByTjNum) { +// return AjaxResult.error("璇ョ敤鎴峰凡鏀惰垂涓嶅彲鎾ら攢绛惧埌!"); +// } tjOrderService.deleteTjOrderByOrderId(order.getOrderId()); tjOrderDetailService.deleteTjOrderDetailByOrderDetailId(String.valueOf(order.getOrderId())); remarkService.deletedOrderRemarkByTjNum(tjNum); tjFlowingWaterService.deleteTjFlowingWaterByOrderId(String.valueOf(order.getOrderId())); transitionService.deletedTbTransitionByTjNum(tjNum); transitionService.updateTbTransitionByTjNum(tjNum); + TjCustomer customer = tjCustomerService.getById(order.getUserId()); + if(null !=customer){ + customer.setCardId("0"); + tjCustomerService.updateById(customer); + } String configByKey = configService.selectConfigByKey("sfkqdyhis"); if (configByKey.equals("Y")){ HashMap<String, Object> map = new HashMap<>(); -- Gitblit v1.8.0