From f3e286d281e20f64f48d48309810d5a185bc7c68 Mon Sep 17 00:00:00 2001 From: Cui Zhi Feng <cuizf@fengyuntec.com> Date: 星期四, 29 八月 2024 19:43:36 +0800 Subject: [PATCH] 售后 调整 --- src/main/java/com/mzl/flower/service/payment/OrderItemSalesService.java | 11 +++++++++-- src/main/java/com/mzl/flower/web/payment/DeliveryOrderController.java | 21 ++++++++++++++------- src/main/java/com/mzl/flower/service/payment/DeliveryOrderService.java | 4 +++- src/main/resources/mapper/flower/FlowerParamMapper.xml | 2 +- 4 files changed, 27 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/mzl/flower/service/payment/DeliveryOrderService.java b/src/main/java/com/mzl/flower/service/payment/DeliveryOrderService.java index 41ad60b..199744a 100644 --- a/src/main/java/com/mzl/flower/service/payment/DeliveryOrderService.java +++ b/src/main/java/com/mzl/flower/service/payment/DeliveryOrderService.java @@ -639,7 +639,7 @@ } } - public void checkOrderItemStatus(String id){ + public String checkOrderItemStatus(String id){ OrderItem oi = orderItemMapper.selectById(id); List<OrderItemCheck> cLs = orderItemCheckMapper.selectList(new QueryWrapper<OrderItemCheck>() .eq("order_item_id", id) @@ -670,6 +670,8 @@ deliveryOrderMapper.updateById(d); } } + + return oi.getOrderId(); } public void deleteCheckInfo(String itemId, String type){ diff --git a/src/main/java/com/mzl/flower/service/payment/OrderItemSalesService.java b/src/main/java/com/mzl/flower/service/payment/OrderItemSalesService.java index 3a8cc6e..c4f3079 100644 --- a/src/main/java/com/mzl/flower/service/payment/OrderItemSalesService.java +++ b/src/main/java/com/mzl/flower/service/payment/OrderItemSalesService.java @@ -88,7 +88,9 @@ String userId = SecurityUtils.getUserId(); int count = orderItemSalesMapper.selectCount(new QueryWrapper<OrderItemSales>() - .eq("order_item_id", oi.getId())); + .eq("order_item_id", oi.getId()) + .eq("status", Constants.ORDER_SALES_STATUS.AGREED.name()) + ); if(count >= 2){ throw new ValidationException("售后申请超过限额"); } @@ -305,6 +307,11 @@ BigDecimal totalFee = feeSupplier.add(feePartner).add(feePlatform).add(feePlatformPack) .add(feePlatformCheck).add(feePlatformTransport); + BigDecimal st = oi.getPrice().multiply(new BigDecimal(sl.getNum()));//申请售后的花的金额 + if(totalFee.doubleValue() > st.doubleValue()){ + throw new ValidationException("退款金额不能大于商品申请数量的售价"); + } + List<OrderItemSales> ls = orderItemSalesMapper.selectList(new QueryWrapper<OrderItemSales>() .eq("order_item_id", oi.getId()) .eq("status", Constants.ORDER_SALES_STATUS.AGREED.name()) @@ -317,7 +324,7 @@ } preFee = preFee.add(totalFee); if(preFee.doubleValue() > oi.getTotal().doubleValue()){ - throw new ValidationException("退款金额不能大于商品总价"); + throw new ValidationException("退款总金额不能大于商品总价"); } sl.setRemarks(dto.getRemarks()); diff --git a/src/main/java/com/mzl/flower/web/payment/DeliveryOrderController.java b/src/main/java/com/mzl/flower/web/payment/DeliveryOrderController.java index ed329cd..2af2b28 100644 --- a/src/main/java/com/mzl/flower/web/payment/DeliveryOrderController.java +++ b/src/main/java/com/mzl/flower/web/payment/DeliveryOrderController.java @@ -242,7 +242,8 @@ @ApiOperation(value = "降级操作") public ResponseEntity<ReturnDataDTO> doReduceCheck(@RequestBody OrderItemCheckCommitReduceDTO dto) { deliveryOrderService.doReduceCheck(dto); - deliveryOrderService.checkOrderItemStatus(dto.getOrderItemId()); + String orderId = deliveryOrderService.checkOrderItemStatus(dto.getOrderItemId()); + deliveryOrderService.checkOrderStatus(orderId); return returnData(R.SUCCESS.getCode(), null); } @@ -251,7 +252,8 @@ public ResponseEntity<ReturnDataDTO> doReplaceCheck(@RequestBody OrderItemCheckCommitDTO dto) { dto.setType(Constants.CHECK_TYPE.replace.name()); deliveryOrderService.doCheck(dto, null, null, null); - deliveryOrderService.checkOrderItemStatus(dto.getOrderItemId()); + String orderId = deliveryOrderService.checkOrderItemStatus(dto.getOrderItemId()); + deliveryOrderService.checkOrderStatus(orderId); return returnData(R.SUCCESS.getCode(), null); } @@ -260,7 +262,8 @@ public ResponseEntity<ReturnDataDTO> doLackCheck(@RequestBody OrderItemCheckCommitDTO dto) { dto.setType(Constants.CHECK_TYPE.lack.name()); deliveryOrderService.doCheck(dto, null, null, null); - deliveryOrderService.checkOrderItemStatus(dto.getOrderItemId()); + String orderId = deliveryOrderService.checkOrderItemStatus(dto.getOrderItemId()); + deliveryOrderService.checkOrderStatus(orderId); return returnData(R.SUCCESS.getCode(), null); } @@ -268,7 +271,8 @@ @ApiOperation(value = "删除降级信息") public ResponseEntity<ReturnDataDTO> deleteReduce(String orderItemId){ deliveryOrderService.deleteCheckInfo(orderItemId, Constants.CHECK_TYPE.reduce.name()); - deliveryOrderService.checkOrderItemStatus(orderItemId); + String orderId = deliveryOrderService.checkOrderItemStatus(orderItemId); + deliveryOrderService.checkOrderStatus(orderId); return returnData(R.SUCCESS.getCode(), null); } @@ -276,7 +280,8 @@ @ApiOperation(value = "删除补货信息") public ResponseEntity<ReturnDataDTO> deleteReplace(String orderItemId){ deliveryOrderService.deleteCheckInfo(orderItemId, Constants.CHECK_TYPE.replace.name()); - deliveryOrderService.checkOrderItemStatus(orderItemId); + String orderId = deliveryOrderService.checkOrderItemStatus(orderItemId); + deliveryOrderService.checkOrderStatus(orderId); return returnData(R.SUCCESS.getCode(), null); } @@ -284,7 +289,8 @@ @ApiOperation(value = "删除缺货信息") public ResponseEntity<ReturnDataDTO> deleteLack(String orderItemId){ deliveryOrderService.deleteCheckInfo(orderItemId, Constants.CHECK_TYPE.lack.name()); - deliveryOrderService.checkOrderItemStatus(orderItemId); + String orderId = deliveryOrderService.checkOrderItemStatus(orderItemId); + deliveryOrderService.checkOrderStatus(orderId); return returnData(R.SUCCESS.getCode(), null); } @@ -292,7 +298,8 @@ @ApiOperation(value = "完成商品质检") public ResponseEntity<ReturnDataDTO> setCheckOk(String orderItemId){ deliveryOrderService.setCheckOk(orderItemId); - deliveryOrderService.checkOrderItemStatus(orderItemId); + String orderId = deliveryOrderService.checkOrderItemStatus(orderItemId); + deliveryOrderService.checkOrderStatus(orderId); return returnData(R.SUCCESS.getCode(), null); } diff --git a/src/main/resources/mapper/flower/FlowerParamMapper.xml b/src/main/resources/mapper/flower/FlowerParamMapper.xml index 8c289e3..b1dd03e 100644 --- a/src/main/resources/mapper/flower/FlowerParamMapper.xml +++ b/src/main/resources/mapper/flower/FlowerParamMapper.xml @@ -18,7 +18,7 @@ COMMENT #{field.comment} </if> </foreach> - ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT=#{table.label} + ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT=#{table.label} </update> <select id="selectParamList" resultType="com.mzl.flower.dto.response.flower.FlowerParamListDTO"> -- Gitblit v1.9.3