From 2ae8b7c0aba4ceffb6dbb0ad48ece3fdb0ab5cea Mon Sep 17 00:00:00 2001 From: zhaowenxuan <chacca165@163.com> Date: 星期二, 28 五月 2024 11:39:32 +0800 Subject: [PATCH] 2024年05月28日 11:39:14 --- ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjFlowingWaterController.java | 201 ++++++++++++++++++++++++++++++++------------------ 1 files changed, 129 insertions(+), 72 deletions(-) diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjFlowingWaterController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjFlowingWaterController.java index 4f1ebc2..687e8fe 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjFlowingWaterController.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjFlowingWaterController.java @@ -7,6 +7,7 @@ import javax.servlet.http.HttpServletResponse; import cn.hutool.core.date.DateUtil; +import cn.hutool.extra.pinyin.PinyinUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.ltkj.common.core.domain.entity.SysUser; import com.ltkj.common.utils.SecurityUtils; @@ -68,7 +69,8 @@ private TjAsyncService asyncService; @Resource private IJimuOnlineReportService reportService; - + @Resource + private ITjPackageProjectService tjPackageProjectService; /** * 鏌ヨ璇ヤ綋妫�鍙峰搴旂殑璁㈠崟娴佹按鍒楄〃 @@ -87,12 +89,12 @@ map.put("water", list); } LambdaQueryWrapper<TjChargingStandard> wq3 = new LambdaQueryWrapper<>(); - wq3.eq(TjChargingStandard::getTjNum,TjNumber); + wq3.eq(TjChargingStandard::getTjNum, TjNumber); List<TjChargingStandard> list = chargingStandardService.list(wq3); - if (null !=list && list.size()>0){ + if (null != list && list.size() > 0) { for (TjChargingStandard standard : list) { TjProject project = projectService.getById(standard.getProId()); - if (null !=project && null!=project.getProCheckType()) { + if (null != project && null != project.getProCheckType()) { standard.setProCheckType(project.getProCheckType()); } } @@ -205,23 +207,23 @@ TjOrder order = orderService.getById(tjFlowingWater.getOrderId()); TjCustomer customer = customerService.getById(order.getUserId()); if (null != tjFlowingWater.getTjProIds() && tjFlowingWater.getTjProIds().length > 0) { - tjFlowingWater.setWaterId(SecurityUtils.getUsername() + DateUtil.format(new Date(), "yyMMddHHmmssSSS")); + tjFlowingWater.setWaterId(PinyinUtil.getFirstLetter(customer.getCusName(), "").toUpperCase() +SecurityUtils.getUsername() + DateUtil.format(new Date(), "yyMMddHHmmssSSS")); tjFlowingWater.setIsAddition("Y"); if (tjFlowingWaterService.save(tjFlowingWater)) { //寮傛鍗曢」鏀惰垂鏄庣粏 - asyncService.iundividualCharges(tjFlowingWater, order, customer,sysUser); + asyncService.iundividualCharges(tjFlowingWater, order, customer, sysUser); //extracted(tjFlowingWater, order, customer); - Map<String,Object>map=new HashMap<>(); - map.put("waterId",tjFlowingWater.getWaterId()); - map.put("mobanId",reportService.getMoBanIds()); - return AjaxResult.success("鏀惰垂鎴愬姛",map); + Map<String, Object> map = new HashMap<>(); + map.put("waterId", tjFlowingWater.getWaterId()); + map.put("mobanId", reportService.getMoBanIds()); + return AjaxResult.success("鏀惰垂鎴愬姛", map); } } - if(flowingWater.getPayStasus()==1){ + if (flowingWater.getPayStasus() == 1) { return AjaxResult.success("璇ヨ鍗曞凡浠樻 鏃犻』鍐嶄粯"); } - if (tjFlowingWaterService.updateById(tjFlowingWater)){ + if (tjFlowingWaterService.updateById(tjFlowingWater)) { LambdaQueryWrapper<TjOrderDetail> wq2 = new LambdaQueryWrapper<>(); wq2.eq(TjOrderDetail::getOrderId, tjFlowingWater.getOrderId()); wq2.isNull(TjOrderDetail::getFlowingWaterId); @@ -239,14 +241,14 @@ wqq.eq(TbTransition::getCusId, customer.getCusIdcard()); wqq.in(TbTransition::getProId, detailList.stream().map(TjOrderDetail::getProId).collect(Collectors.toList())); List<TbTransition> tbTransitionList = transitionService.list(wqq); - if(null != tbTransitionList && tbTransitionList.size() > 0){ + if (null != tbTransitionList && tbTransitionList.size() > 0) { // extracted(order, list2, tbTransitionList); //寮傛娣诲姞鏀惰垂鏄庣粏 - asyncService.collectFees(order,list2,tbTransitionList,sysUser,tjFlowingWater.getDiscount()); - Map<String,Object>map=new HashMap<>(); - map.put("waterId",tjFlowingWater.getWaterId()); - map.put("mobanId",reportService.getMoBanIds()); - return AjaxResult.success("鏀惰垂鎴愬姛",map); + asyncService.collectFees(order, list2, tbTransitionList, sysUser, tjFlowingWater.getDiscount()); + Map<String, Object> map = new HashMap<>(); + map.put("waterId", tjFlowingWater.getWaterId()); + map.put("mobanId", reportService.getMoBanIds()); + return AjaxResult.success("鏀惰垂鎴愬姛", map); } } return AjaxResult.success("璇ョ敤鎴峰凡鏀惰垂涓嶅彲閲嶅鏀惰垂"); @@ -303,8 +305,8 @@ List<TjOrderDetail> detailList = detailService.list(wq2); if (null != detailList && detailList.size() > 0) { TjRefundVo tjRefundVo = new TjRefundVo(); - tjRefundVo.setTjName(MatchUtils.hideCusName(customer.getCusName())); - tjRefundVo.setTjPhone(MatchUtils.hidePhoneNum(customer.getCusPhone())); + tjRefundVo.setTjName(customer.getCusName()); + tjRefundVo.setTjPhone(customer.getCusPhone()); tjRefundVo.setTjNumber(order.getTjNumber()); tjRefundVo.setTjOrderId(String.valueOf(order.getOrderId())); if (null != order.getDictCompName()) tjRefundVo.setTjComp(order.getDictCompName()); @@ -350,8 +352,8 @@ TjCustomer customer = customerService.getById(order.getUserId()); if (null != customer) { TjRefundVo tjRefundVo = new TjRefundVo(); - tjRefundVo.setTjName(MatchUtils.hideCusName(customer.getCusName())); - tjRefundVo.setTjPhone(MatchUtils.hidePhoneNum(customer.getCusPhone())); + tjRefundVo.setTjName(customer.getCusName()); + tjRefundVo.setTjPhone(customer.getCusPhone()); tjRefundVo.setTjNumber(order.getTjNumber()); tjRefundVo.setTjOrderId(String.valueOf(order.getOrderId())); if (null != order.getDictCompName()) tjRefundVo.setTjComp(order.getDictCompName()); @@ -415,14 +417,14 @@ if (null != detailList && detailList.size() > 0) { TjCollectFeesVo tjRefundVo = new TjCollectFeesVo(); tjRefundVo.setTjCusId(String.valueOf(customer.getCusId())); - tjRefundVo.setTjName(MatchUtils.hideCusName(customer.getCusName())); - tjRefundVo.setTjPhone(MatchUtils.hidePhoneNum(customer.getCusPhone())); + tjRefundVo.setTjName(customer.getCusName()); + tjRefundVo.setTjPhone(customer.getCusPhone()); tjRefundVo.setSex(String.valueOf(customer.getCusSex())); - if(null !=customer.getCusIdcard()) tjRefundVo.setIdCard(MatchUtils.hideIdCardNum(customer.getCusIdcard())); + if (null != customer.getCusIdcard()) tjRefundVo.setIdCard(customer.getCusIdcard()); DictComp dictComp = compService.getById(order.getFirmId()); - if(null !=dictComp){ + if (null != dictComp) { tjRefundVo.setTjComp(dictComp.getCnName()); - }else { + } else { tjRefundVo.setTjComp("鏃�"); } if (null != order.getTjType()) tjRefundVo.setTjType(order.getTjType()); @@ -431,7 +433,7 @@ wq.eq(TjFlowingWater::getIsAddition, "N"); wq.ne(TjFlowingWater::getPayStasus, 2); TjFlowingWater one = tjFlowingWaterService.getOne(wq); - // tjRefundVo.setPaidIn(String.valueOf(one.getPaidIn())); + // tjRefundVo.setPaidIn(String.valueOf(one.getPaidIn())); tjRefundVo.setTjFlowingWater(one); tjRefundVo.setTjNumber(order.getTjNumber()); tjRefundVo.setTjOrderId(String.valueOf(order.getOrderId())); @@ -439,7 +441,7 @@ } } } - // TjOrder order = null; + // TjOrder order = null; // if (null != tjOrders && tjOrders.size() > 0) { // order = tjOrders.get(0); // } @@ -481,7 +483,7 @@ if (null != tjNum) { LambdaQueryWrapper<TjOrder> wq1 = new LambdaQueryWrapper<>(); wq1.likeLeft(TjOrder::getTjNumber, tjNum); - wq1.eq(TjOrder::getCheckStatus, 0); +// wq1.eq(TjOrder::getCheckStatus, 0); List<TjOrder> orderList = orderService.list(wq1); if (null != orderList && orderList.size() > 0) { for (TjOrder order : orderList) { @@ -494,17 +496,21 @@ if (null != customer) { TjCollectFeesVo tjRefundVo = new TjCollectFeesVo(); tjRefundVo.setTjCusId(String.valueOf(customer.getCusId())); - tjRefundVo.setTjName(MatchUtils.hideCusName(customer.getCusName())); - tjRefundVo.setTjPhone(MatchUtils.hidePhoneNum(customer.getCusPhone())); + tjRefundVo.setTjName(customer.getCusName()); + tjRefundVo.setTjPhone(customer.getCusPhone()); tjRefundVo.setSex(String.valueOf(customer.getCusSex())); - tjRefundVo.setIdCard(MatchUtils.hideIdCardNum(customer.getCusIdcard())); - if (null != order.getDictCompName()) - tjRefundVo.setTjComp(compService.getById(order.getFirmId()) != null ? compService.getById(order.getFirmId()).getCnName() : null); + tjRefundVo.setIdCard(customer.getCusIdcard()); + if (null != order.getFirmId()) { + DictComp byId = compService.getById(order.getFirmId()); + if (null != byId) { + tjRefundVo.setTjComp(byId.getCnName()); + } + } if (null != order.getTjType()) tjRefundVo.setTjType(order.getTjType()); TjFlowingWater one = tjFlowingWaterService.getOne(new LambdaQueryWrapper<TjFlowingWater>() .eq(TjFlowingWater::getOrderId, order.getOrderId()) .eq(TjFlowingWater::getIsAddition, "N") - .ne(TjFlowingWater::getPayStasus, 2) ); + .ne(TjFlowingWater::getPayStasus, 2)); tjRefundVo.setTjFlowingWater(one); tjRefundVo.setTjNumber(order.getTjNumber()); tjRefundVo.setTjOrderId(String.valueOf(order.getOrderId())); @@ -536,10 +542,12 @@ } else { tjProjectList = detailService.selectTjOrderDetailListByFlowingWaterIdIsNotNull(OrderId); } + String pacId = transitionService.selectPacIdByTbTransitionTjNumAndProId(order.getTjNumber(),order.getCardId()); + String s = tjFlowingWaterService.getDiscount(OrderId); if (null != tjProjectList && tjProjectList.size() > 0) { for (TjProject project : tjProjectList) { if (project.getProParentId() == 0) { - // LambdaQueryWrapper<TbTransition> wqq1 = new LambdaQueryWrapper<>(); +/* //LambdaQueryWrapper<TbTransition> wqq1 = new LambdaQueryWrapper<>(); // wqq1.eq(TbTransition::getCusId, customerService.getById(order.getUserId()).getCusIdcard()); // wqq1.eq(TbTransition::getParentProId, project.getProId()); // List<TbTransition> tbTransitionList = transitionService.list(wqq1); @@ -555,13 +563,50 @@ project.getProId()); String s = tjFlowingWaterService.getDiscount(OrderId); if(null !=decimal){ - project.setProPrice(decimal.setScale(2)); - project.setProOrdPrice(decimal.multiply(new BigDecimal(s)).setScale(2)); +// project.setProPrice(decimal.setScale(2)); + project.setProPrice(decimal); +// project.setProOrdPrice(decimal.multiply(new BigDecimal(s)).setScale(2)); + project.setProOrdPrice(decimal); }else { - project.setProPrice(new BigDecimal("0.00")); - project.setProOrdPrice(new BigDecimal("0.00")); + BigDecimal decimal1 = transitionService.getTbTransitionDxPriceAndOrdPrice(String.valueOf(order.getUserId()),project.getProId()); + if(null !=decimal1){ + project.setProPrice(decimal1.setScale(2)); + project.setProOrdPrice(decimal1.multiply(new BigDecimal(s)).setScale(2)); + }else { + project.setProPrice(new BigDecimal("0.00").setScale(2)); + project.setProOrdPrice(new BigDecimal("0.00").setScale(2)); + } + }*/ + if (null != pacId) { + TjPackageProject pp = tjPackageProjectService.getOne(new LambdaQueryWrapper<TjPackageProject>().eq(TjPackageProject::getPacId, pacId) + .eq(TjPackageProject::getProId, String.valueOf(project.getProId()))); + if (null != pp) { + project.setProPrice(pp.getPriceNow()); + project.setProOrdPrice(pp.getPriceNow().multiply(new BigDecimal(s))); + } else { + project.setProPrice(project.getProPrice().setScale(2)); + project.setProOrdPrice(project.getProPrice().multiply(new BigDecimal(s)).setScale(2)); + } + } else { + project.setProPrice(project.getProPrice().setScale(2)); + project.setProOrdPrice(project.getProPrice().multiply(new BigDecimal(s)).setScale(2)); } } + } + + List<TjFlowingWater> list = tjFlowingWaterService.list(new LambdaQueryWrapper<TjFlowingWater>() + .eq(TjFlowingWater::getOrderId, order) + .eq(TjFlowingWater::getPayStasus, 2)); + if (null != list && list.size() > 0) { + List<TjProject> projectList = projectService.getTjProListByPacIdAndDeptId(pacId); + if(null !=projectList && projectList.size()>0){ + for (TjProject project : projectList) { + project.setProOrdPrice(tjPackageProjectService.getPacProPriceByPacIdAndPro(project.getProId(),pacId) + .multiply(new BigDecimal(s)).setScale(2)); + tjProjectList.add(project); + } + } + } } return AjaxResult.success(tjProjectList); @@ -580,41 +625,52 @@ public AjaxResult getTjRefundProInfoVoList(@RequestParam @ApiParam(value = "浣撴璁㈠崟id") String orderId) { TjOrder tjOrder = orderService.getById(orderId); if (null == tjOrder) return AjaxResult.error("璇ヤ綋妫�璁板綍涓嶅瓨鍦�"); - TjCustomer customer = customerService.getById(tjOrder.getUserId()); +// TjCustomer customer = customerService.getById(tjOrder.getUserId()); if (tjOrder.getCheckStatus() == 0 && tjOrder.getReportTime() == null) { LambdaQueryWrapper<TjOrderDetail> wq = new LambdaQueryWrapper<>(); wq.eq(TjOrderDetail::getOrderId, orderId); //wq.eq(TjOrderDetail::getTjStatus, 0); - wq.ne(TjOrderDetail::getTjStatus,1); - wq.ne(TjOrderDetail::getTjStatus,3); + wq.ne(TjOrderDetail::getTjStatus, 1); + wq.ne(TjOrderDetail::getTjStatus, 3); wq.isNotNull(TjOrderDetail::getFlowingWaterId); List<TjOrderDetail> detailList = detailService.list(wq); + String pacId = transitionService.selectPacIdByTbTransitionTjNumAndProId(tjOrder.getTjNumber(),tjOrder.getCardId()); if (null != detailList && detailList.size() > 0) { List<TjRefundProInfoVo> tjRefundProInfoVoList = new ArrayList<>(); for (TjOrderDetail detail : detailList) { TjProject project = projectService.getById(detail.getProId()); if (project.getProParentId() == 0) { - LambdaQueryWrapper<TbTransition> wqq1 = new LambdaQueryWrapper<>(); - wqq1.eq(TbTransition::getCusId, customer.getCusIdcard()); - wqq1.eq(TbTransition::getParentProId, project.getProId()); - List<TbTransition> tbTransitionList = transitionService.list(wqq1); - BigDecimal bigDecimal = new BigDecimal("0.00"); - BigDecimal bigDecimal1 = new BigDecimal("0.00"); - for (TbTransition transition : tbTransitionList) { - bigDecimal = bigDecimal.add(transition.getNowPrice()); - bigDecimal1 = bigDecimal1.add(transition.getOrdPrice()); - } +// LambdaQueryWrapper<TbTransition> wqq1 = new LambdaQueryWrapper<>(); +// wqq1.eq(TbTransition::getCusId, customer.getCusIdcard()); +// wqq1.eq(TbTransition::getParentProId, project.getProId()); +// List<TbTransition> tbTransitionList = transitionService.list(wqq1); +// BigDecimal bigDecimal = new BigDecimal("0.00"); +// BigDecimal bigDecimal1 = new BigDecimal("0.00"); +// for (TbTransition transition : tbTransitionList) { +// bigDecimal = bigDecimal.add(transition.getNowPrice()); +// bigDecimal1 = bigDecimal1.add(transition.getOrdPrice()); +// } + String s = tjFlowingWaterService.getDiscount(orderId); TjRefundProInfoVo proInfoVo = new TjRefundProInfoVo(); - // double discount = Double.parseDouble(tjFlowingWaterService.getById(detail.getFlowingWaterId()).getDiscount()); - //BigDecimal decimal = BigDecimal.valueOf(discount).divide(BigDecimal.valueOf(100)); - //proInfoVo.setNetReceipts(bigDecimal.multiply(decimal).setScale(2, BigDecimal.ROUND_DOWN)); - proInfoVo.setNetReceipts(bigDecimal); + + if (null != pacId) { + TjPackageProject pp = tjPackageProjectService.getOne(new LambdaQueryWrapper<TjPackageProject>().eq(TjPackageProject::getPacId, pacId) + .eq(TjPackageProject::getProId, String.valueOf(project.getProId()))); + if (null != pp) { + proInfoVo.setNetReceipts(pp.getPriceNow().multiply(new BigDecimal(s))); + proInfoVo.setPrice(pp.getPriceNow()); + } else { + proInfoVo.setNetReceipts(project.getProPrice().multiply(new BigDecimal(s))); + proInfoVo.setPrice(project.getProPrice()); + } + } else { + proInfoVo.setNetReceipts(project.getProPrice().multiply(new BigDecimal(s))); + proInfoVo.setPrice(project.getProPrice()); + } proInfoVo.setCollectFeesTime(tjFlowingWaterService.getById(detail.getFlowingWaterId()).getUpdateTime()); proInfoVo.setTollCollector(userService.getById(tjFlowingWaterService.getById(detail.getFlowingWaterId()).getTollCollectorId()).getNickName()); proInfoVo.setProName(project.getProName()); proInfoVo.setProId(String.valueOf(project.getProId())); - //proInfoVo.setPrice(project.getProPrice().setScale(2, BigDecimal.ROUND_DOWN)); - proInfoVo.setPrice(bigDecimal1); tjRefundProInfoVoList.add(proInfoVo); } } @@ -630,17 +686,18 @@ */ @PostMapping("/tjRefund") @ApiOperation(value = "浣撴閫�璐规寜閽帴鍙�") - public AjaxResult tjRefund(@RequestBody @ApiParam(value = "娴佹按瀵硅薄") TjFlowingWater tjFlowingWater){ - if(null == tjFlowingWater.getRefundPros()||tjFlowingWater.getRefundPros().size()==0) return AjaxResult.error("璇烽�夋嫨閫�璐归」鐩�"); + public AjaxResult tjRefund(@RequestBody @ApiParam(value = "娴佹按瀵硅薄") TjFlowingWater tjFlowingWater) { + if (null == tjFlowingWater.getRefundPros() || tjFlowingWater.getRefundPros().size() == 0) + return AjaxResult.error("璇烽�夋嫨閫�璐归」鐩�"); tjFlowingWater.setTollCollectorId(String.valueOf(SecurityUtils.getLoginUser().getUserId())); tjFlowingWater.setRefundPersonId(String.valueOf(SecurityUtils.getLoginUser().getUserId())); tjFlowingWater.setRefundTime(new Date()); tjFlowingWater.setIsAddition("N"); tjFlowingWater.setPayStasus(2L); - tjFlowingWater.setWaterId(SecurityUtils.getUsername() + DateUtil.format(new Date(), "yyMMddHHmmssSSS")); + tjFlowingWater.setWaterId("TF" + SecurityUtils.getUsername() + DateUtil.format(new Date(), "yyMMddHHmmssSSS")); tjFlowingWater.setPaidIn(BigDecimal.valueOf(0.00).subtract(tjFlowingWater.getRefundPrice())); tjFlowingWater.setCopeWith(tjFlowingWater.getRefundPrice()); - if (tjFlowingWaterService.save(tjFlowingWater)){ + if (tjFlowingWaterService.save(tjFlowingWater)) { TjOrder order = orderService.getById(tjFlowingWater.getOrderId()); for (TjProject refundPro : tjFlowingWater.getRefundPros()) { LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); @@ -691,17 +748,17 @@ } } } - LambdaQueryWrapper<TjOrderRemark>wqz=new LambdaQueryWrapper<>(); - wqz.eq(TjOrderRemark::getTjNumber,order.getTjNumber()); - wqz.eq(TjOrderRemark::getProId,refundPro.getProId()); + LambdaQueryWrapper<TjOrderRemark> wqz = new LambdaQueryWrapper<>(); + wqz.eq(TjOrderRemark::getTjNumber, order.getTjNumber()); + wqz.eq(TjOrderRemark::getProId, refundPro.getProId()); remarkService.remove(wqz); } List<TjProject> refundPros = tjFlowingWater.getRefundPros(); - asyncService.tjRefund(refundPros,order.getTjNumber()); - Map<String,Object>map=new HashMap<>(); - map.put("waterId",tjFlowingWater.getWaterId()); - map.put("mobanId",reportService.getMoBanId()); - return AjaxResult.success("閫�璐规垚鍔�",map); + asyncService.tjRefund(refundPros, order.getTjNumber()); + Map<String, Object> map = new HashMap<>(); + map.put("waterId", tjFlowingWater.getWaterId()); + map.put("mobanId", reportService.getMoBanId()); + return AjaxResult.success("閫�璐规垚鍔�", map); } return AjaxResult.error(); } -- Gitblit v1.8.0