From 706560592e1f1ddad5f900d87d247cbdcba446eb Mon Sep 17 00:00:00 2001 From: zhaowenxuan <chacca165@163.com> Date: 星期一, 30 十二月 2024 09:57:25 +0800 Subject: [PATCH] 20241230 --- ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjFlowingWaterController.java | 136 ++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 134 insertions(+), 2 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 a5ca054..fd8b804 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 @@ -14,6 +14,7 @@ import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.ltkj.common.annotation.RepeatSubmit; import com.ltkj.common.core.domain.entity.SysDept; import com.ltkj.common.core.domain.entity.SysUser; @@ -89,6 +90,8 @@ private ISysDeptService sysDeptService; @Autowired private TjFlowingWaterHisService tjFlowingWaterHisService; + @Autowired + private ITjSamplingService tjSamplingService; /** * 鏌ヨ璇ヤ綋妫�鍙峰搴旂殑璁㈠崟娴佹按鍒楄〃 @@ -359,6 +362,135 @@ return AjaxResult.error(); } + @PutMapping("supper") + @ApiOperation(value = "浣撴鐐瑰嚮寮哄埗鏀惰垂鎸夐挳鎺ュ彛") + @Transactional + @RepeatSubmit + public AjaxResult supperEdit(@RequestBody TjFlowingWater tjFlowingWater) { + Long userId = Long.valueOf(SecurityUtils.getLoginUser().getUserId()); + SysUser sysUser = userService.getById(userId); + + TjFlowingWater flowingWater = tjFlowingWaterService.getById(tjFlowingWater.getTjSerialNumber()); +// tjFlowingWater.setTollCollectorId(String.valueOf(SecurityUtils.getLoginUser().getUserId())); +// tjFlowingWater.setPayStasus(1L); + TjOrder order = orderService.getById(tjFlowingWater.getOrderId()); + + if(order.getFinishTime() !=null){ + return AjaxResult.error("璇ヤ汉鍛樺凡绛剧,涓嶅彲琛ュ綍椤圭洰!"); + } + + TjCustomer customer = customerService.getById(order.getUserId()); + if (null != tjFlowingWater.getTjProIds() && tjFlowingWater.getTjProIds().length > 0) { + tjFlowingWater.setWaterId(PinyinUtil.getFirstLetter(customer.getCusName(), "").toUpperCase() +SecurityUtils.getUsername() + DateUtil.format(new Date(), "yyMMddHHmmssSSS")); + tjFlowingWater.setIsAddition("Y"); + if (tjFlowingWaterService.save(tjFlowingWater)) { + + Date dates = new Date(); + String jxbz = DateUtil.format(dates, "yyyyMMddHHmmss")+order.getOrderId(); + //寮傛鍗曢」鏀惰垂鏄庣粏 + Boolean b = asyncService.iundividualCharges(tjFlowingWater, order, customer, sysUser,jxbz); + if (!b){ + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return AjaxResult.error(); + } + Map<String, Object> map = new HashMap<>(); + map.put("waterId", tjFlowingWater.getWaterId()); + map.put("mobanId", reportService.getMoBanIds()); + return AjaxResult.success("鏀惰垂鎴愬姛", map); + } + } + + if (flowingWater.getPayStasus() == 1) { + return AjaxResult.success("璇ヨ鍗曞凡浠樻 鏃犻』鍐嶄粯"); + } + String s = configService.selectConfigByKey("is_request_common_his_api"); + if (null != s && s.equals("Y") && order.getTjType().equals("2") && StrUtil.isNotBlank(tjFlowingWater.getHisWaterId())) { + tjFlowingWater.setPayStasus(1L); + } + if (tjFlowingWaterService.updateById(tjFlowingWater)) { +// LambdaQueryWrapper<TjOrderDetail> wq2 = new LambdaQueryWrapper<>(); +// wq2.eq(TjOrderDetail::getOrderId, tjFlowingWater.getOrderId()); +// wq2.isNull(TjOrderDetail::getFlowingWaterId); + List<TjConsumables> list2 = new ArrayList<>(); +// for (TjOrderDetail tjOrderDetail : detailService.list(wq2)) { +// tjOrderDetail.setFlowingWaterId(String.valueOf(tjFlowingWater.getTjSerialNumber())); +// detailService.updateById(tjOrderDetail); +// } + if (StrUtil.isBlank(flowingWater.getJxbz())){ + detailService.updateTjOrderDetailsFlowingWaterIdByJxbzisnull(String.valueOf(order.getOrderId()),String.valueOf(tjFlowingWater.getTjSerialNumber())); + remarkService.updateTjOrderRemarkSfbzByJxbzisnull(order.getOrderId().toString(),tjFlowingWater.getTjSerialNumber().toString()); + }else { + detailService.updateTjOrderDetailsFlowingWaterIdByJxbz(String.valueOf(order.getOrderId()), flowingWater.getJxbz(), String.valueOf(tjFlowingWater.getTjSerialNumber())); + remarkService.updateTjOrderRemarkSfbzByJxbz(order.getOrderId().toString(), flowingWater.getJxbz(), tjFlowingWater.getTjSerialNumber().toString()); + } + + LambdaQueryWrapper<TjOrderDetail> wq3 = new LambdaQueryWrapper<>(); + wq3.eq(TjOrderDetail::getOrderId, tjFlowingWater.getOrderId()); + wq3.isNotNull(TjOrderDetail::getFlowingWaterId); + List<TjOrderDetail> detailList = detailService.list(wq3); + if (null != detailList && !detailList.isEmpty()) { + LambdaQueryWrapper<TbTransition> wqq = new LambdaQueryWrapper<>(); + 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.isEmpty()) { +// 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); + } + } + return AjaxResult.success("璇ョ敤鎴峰凡鏀惰垂涓嶅彲閲嶅鏀惰垂"); + } + return AjaxResult.error(); + } + + @PutMapping("refund") + @ApiOperation(value = "浣撴鐐瑰嚮寮哄埗閫�璐规寜閽帴鍙�") + @Transactional + @RepeatSubmit + public AjaxResult refundEdit(@RequestBody String json){ + JSONObject parseObj = JSONUtil.parseObj(json); + String tjSerialNumber = parseObj.getStr("tjSerialNumber"); + TjFlowingWater tjFlowingWater = tjFlowingWaterService.getById(tjSerialNumber); + Long orderId = tjFlowingWater.getOrderId(); + LambdaQueryWrapper<TjOrderRemark> wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(TjOrderRemark::getSfbz,tjSerialNumber); + List<TjOrderRemark> list = remarkService.list(wrapper); + if (list.isEmpty()){ + return AjaxResult.error("璇ヤ汉鍛樻病鏈夊凡鏀惰垂椤圭洰"); + } + String tjNumber = list.get(0).getTjNumber(); + List<Long> proIds = list.stream().map(TjOrderRemark::getProId).collect(Collectors.toList()); + LambdaQueryWrapper<TjSampling> wrapper1 = new LambdaQueryWrapper<>(); + wrapper1.eq(TjSampling::getTjNum,tjNumber); + wrapper1.in(TjSampling::getProId,proIds); + wrapper1.eq(TjSampling::getIsSignFor,"0"); + List<TjSampling> samplings = tjSamplingService.list(wrapper1); + if (!samplings.isEmpty()) + return AjaxResult.error("璇ヤ汉鍛樻鍗曚腑瀛樺湪宸插仛鐨勫寲楠岄」鐩�,涓嶅彲閫�璐�"); + + if (StrUtil.isBlank(tjFlowingWater.getJxbz())){ + + LambdaUpdateWrapper<TjOrderDetail> wrapper2 = new LambdaUpdateWrapper<>(); + wrapper2.set(TjOrderDetail::getFlowingWaterId,null) + .set(TjOrderDetail::getUpdateTime,new Date()) + .eq(TjOrderDetail::getOrderId,orderId) + .isNull(TjOrderDetail::getJxbz); + detailService.update(wrapper2); + + LambdaUpdateWrapper<TjOrderRemark> wrapper3 = new LambdaUpdateWrapper<>(); +// wrapper3 + }else { +// detailService.updateTjOrderDetailsFlowingWaterIdByJxbz(String.valueOf(order.getOrderId()), flowingWater.getJxbz(), String.valueOf(tjFlowingWater.getTjSerialNumber())); +// remarkService.updateTjOrderRemarkSfbzByJxbz(order.getOrderId().toString(), flowingWater.getJxbz(), tjFlowingWater.getTjSerialNumber().toString()); + } + return AjaxResult.success(); + } + /** * 鍒犻櫎浣撴娴佹按 @@ -613,8 +745,8 @@ if (null != customerList && !customerList.isEmpty()) { LambdaQueryWrapper<TjOrder> wq1 = new LambdaQueryWrapper<>(); wq1.in(TjOrder::getUserId,customerList.stream().map(TjCustomer::getCusId).collect(Collectors.toList())); -// wq1.eq(TjOrder::getCheckStatus, 0); - wq1.isNotNull(TjOrder::getReportTime); + wq1.eq(TjOrder::getCheckStatus, 0); +// wq1.isNotNull(TjOrder::getReportTime); wq1.orderByDesc(TjOrder::getCreateTime); List<TjOrder> tjOrders = orderService.list(wq1); if (null != tjOrders && !tjOrders.isEmpty()) { -- Gitblit v1.8.0