yangdamao 1 год назад
Родитель
Сommit
9f5b012706

+ 4 - 4
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/domain/OrderGoods.java

@@ -1,9 +1,6 @@
 package com.zhongzheng.modules.order.domain;
 
-import com.baomidou.mybatisplus.annotation.FieldFill;
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.*;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.NoArgsConstructor;
@@ -123,10 +120,13 @@ private static final long serialVersionUID=1L;
     private Integer examNum;
 
     /** 完成日期 */
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
     private Long finishTime;
     /** 公示日期 */
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
     private Long publicityTime;
     /** 领证日期 */
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
     private Long acquireTime;
 
 }

+ 31 - 10
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/goods/service/impl/TopOldOrderServiceImpl.java

@@ -4767,6 +4767,27 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
         if (ObjectUtils.isNull(orderBySn)){
             throw new CustomException("订单号不存在!");
         }
+        //已退
+        BigDecimal refunded = new BigDecimal("0.00");
+        if (orderBySn.getOrderFrom() == 1 || orderBySn.getOrderFrom() == 4){
+            //新系统订单
+            List<OrderGoodsRefund> list = orderGoodsRefundService.list(new LambdaQueryWrapper<OrderGoodsRefund>()
+                    .eq(OrderGoodsRefund::getOrderSn, orderBySn.getOrderSn())
+                    .eq(OrderGoodsRefund::getStatus, 1)
+                    .eq(OrderGoodsRefund::getPeriodStatus, 3));
+            if (CollectionUtils.isNotEmpty(list)){
+                refunded = list.stream().map(OrderGoodsRefund::getRefundFee).reduce(BigDecimal.ZERO, BigDecimal::add);
+            }
+        }else {
+            List<TopOldOrderRefund> list = topOldOrderRefundService.list(new LambdaQueryWrapper<TopOldOrderRefund>()
+                    .eq(TopOldOrderRefund::getOrderSn, orderBySn.getOrderSn())
+                    .eq(TopOldOrderRefund::getStatus, 1)
+                    .eq(TopOldOrderRefund::getPeriodStatus, 3));
+            if (CollectionUtils.isNotEmpty(list)){
+                refunded = list.stream().map(TopOldOrderRefund::getRefundFee).reduce(BigDecimal.ZERO, BigDecimal::add);
+            }
+        }
+
         TopOldOrderReplenish replenish = topOldOrderReplenishService
                 .getOne(new LambdaQueryWrapper<TopOldOrderReplenish>()
                 .eq(TopOldOrderReplenish::getOrderSn, editBo.getOrderSn())
@@ -4787,11 +4808,11 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
                 //总收款
                 BigDecimal reduce = editBo.getProceedsJson().values().stream().reduce(BigDecimal.ZERO, BigDecimal::add);
                 //未收
-                orderReplenish.setOrderResidue(orderBySn.getOrderPrice().subtract(reduce));
+                orderReplenish.setOrderResidue(orderBySn.getOrderPrice().subtract(reduce).subtract(refunded));
                 orderReplenish.setProceedsJson(JSON.toJSONString(editBo.getProceedsJson()));
             }else {
                 //未收
-                orderReplenish.setOrderResidue(orderBySn.getOrderPrice());
+                orderReplenish.setOrderResidue(orderBySn.getOrderPrice().subtract(refunded));
             }
             orderReplenish.setStatus(1);
             orderReplenish.setCreateTime(DateUtils.getNowTime());
@@ -4820,13 +4841,13 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
                         reduce = reduce.add(new BigDecimal(value.toString()));
                     }
                     //未收
-                    replenish.setOrderResidue(orderBySn.getOrderPrice().subtract(reduce));
+                    replenish.setOrderResidue(orderBySn.getOrderPrice().subtract(reduce).subtract(refunded));
                     replenish.setProceedsJson(JSON.toJSONString(map));
                 }else {
                     //总收款
                     BigDecimal reduce = editBo.getProceedsJson().values().stream().reduce(BigDecimal.ZERO, BigDecimal::add);
                     //未收
-                    replenish.setOrderResidue(orderBySn.getOrderPrice().subtract(reduce));
+                    replenish.setOrderResidue(orderBySn.getOrderPrice().subtract(reduce).subtract(refunded));
                     replenish.setProceedsJson(JSON.toJSONString(editBo.getProceedsJson()));
                 }
             }
@@ -4850,17 +4871,17 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
             orderGoodsService.update(new LambdaUpdateWrapper<OrderGoods>()
                     .eq(OrderGoods::getOrderSn,editBo.getOrderSn())
                     .eq(OrderGoods::getOrderGoodsId,editBo.getOrderGoodsId())
-                    .set(ObjectUtils.isNotNull(editBo.getFinishTime()),OrderGoods::getFinishTime,editBo.getFinishTime())
-                    .set(ObjectUtils.isNotNull(editBo.getAcquireTime()),OrderGoods::getAcquireTime,editBo.getAcquireTime())
-                    .set(ObjectUtils.isNotNull(editBo.getPublicityTime()),OrderGoods::getPublicityTime,editBo.getPublicityTime())
+                    .set(OrderGoods::getFinishTime,editBo.getFinishTime())
+                    .set(OrderGoods::getAcquireTime,editBo.getAcquireTime())
+                    .set(OrderGoods::getPublicityTime,editBo.getPublicityTime())
             );
         }else {
             topOrderGoodsService.update(new LambdaUpdateWrapper<TopOldOrderGoods>()
                     .eq(TopOldOrderGoods::getOrderSn,editBo.getOrderSn())
                     .eq(TopOldOrderGoods::getOrderGoodsId,editBo.getOrderGoodsId())
-                    .set(ObjectUtils.isNotNull(editBo.getFinishTime()),TopOldOrderGoods::getFinishTime,editBo.getFinishTime())
-                    .set(ObjectUtils.isNotNull(editBo.getAcquireTime()),TopOldOrderGoods::getAcquireTime,editBo.getAcquireTime())
-                    .set(ObjectUtils.isNotNull(editBo.getPublicityTime()),TopOldOrderGoods::getPublicityTime,editBo.getPublicityTime())
+                    .set(TopOldOrderGoods::getFinishTime,editBo.getFinishTime())
+                    .set(TopOldOrderGoods::getAcquireTime,editBo.getAcquireTime())
+                    .set(TopOldOrderGoods::getPublicityTime,editBo.getPublicityTime())
             );
 
         }

+ 2 - 4
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/order/domain/TopOldOrderReplenish.java

@@ -1,9 +1,6 @@
 package com.zhongzheng.modules.top.order.domain;
 
-import com.baomidou.mybatisplus.annotation.FieldFill;
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.*;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 import lombok.experimental.Accessors;
@@ -31,6 +28,7 @@ public class TopOldOrderReplenish implements Serializable {
     /** 收款json */
     private String proceedsJson;
     /** 收款记录 */
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
     private String proceedsRecord;
     /** 积分*/
     private Integer integral;