lishiqiang 1 settimana fa
parent
commit
818a903093

+ 14 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/order/vo/order/OrderTotalRespVO.java

@@ -1,9 +1,11 @@
 package com.yc.ship.module.trade.controller.admin.order.vo.order;
 package com.yc.ship.module.trade.controller.admin.order.vo.order;
 
 
+import com.yc.ship.module.trade.framework.annotation.ForUpdate;
 import io.swagger.v3.oas.annotations.media.Schema;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.Data;
 import lombok.Data;
 
 
 import java.math.BigDecimal;
 import java.math.BigDecimal;
+import java.time.LocalDateTime;
 import java.util.List;
 import java.util.List;
 
 
 @Data
 @Data
@@ -102,6 +104,18 @@ public class OrderTotalRespVO {
     @Schema(description = "定金")
     @Schema(description = "定金")
     private BigDecimal deposi;
     private BigDecimal deposi;
 
 
+    @Schema(description = "受损金额")
+    private BigDecimal damaged;
+
+    @Schema(description = "补缴费金额")
+    private BigDecimal  supplementAmount;
+
+    @Schema(description = "取消状态 0:初始  1:待支付(审核通过)2:已支付")
+    private Integer damagedStatus;
+
+    @Schema(description = "取消提交时间")
+    private LocalDateTime damagedTime;
+
     @Schema(description = "总房数")
     @Schema(description = "总房数")
     private BigDecimal totalRoomNum;
     private BigDecimal totalRoomNum;
 
 

+ 13 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/order/vo/order/ShipTradeOrderCreateReqVO.java

@@ -18,6 +18,7 @@ import javax.validation.constraints.NotEmpty;
 import javax.validation.constraints.NotNull;
 import javax.validation.constraints.NotNull;
 import java.io.Serializable;
 import java.io.Serializable;
 import java.math.BigDecimal;
 import java.math.BigDecimal;
+import java.time.LocalDateTime;
 import java.util.Date;
 import java.util.Date;
 import java.util.List;
 import java.util.List;
 
 
@@ -89,6 +90,18 @@ public class ShipTradeOrderCreateReqVO implements Serializable {
     @Schema(description = "定金")
     @Schema(description = "定金")
     private BigDecimal deposi;
     private BigDecimal deposi;
 
 
+    @Schema(description = "受损金额")
+    private BigDecimal damaged;
+
+    @Schema(description = "补缴费金额")
+    private BigDecimal  supplementAmount;
+
+    @Schema(description = "取消状态 0:初始  1:待支付(审核通过)2:已支付")
+    private Integer damagedStatus;
+
+    @Schema(description = "取消提交时间")
+    private LocalDateTime damagedTime;
+
     @Schema(description = "定金状态")
     @Schema(description = "定金状态")
     private Integer deposiStatus;
     private Integer deposiStatus;
 
 

+ 12 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/order/vo/order/TradeOrderPdaRespVO.java

@@ -441,6 +441,18 @@ public class TradeOrderPdaRespVO {
     @Schema(description = "定金")
     @Schema(description = "定金")
     private BigDecimal deposi;
     private BigDecimal deposi;
 
 
+    @Schema(description = "受损金额")
+    private BigDecimal damaged;
+
+    @Schema(description = "补缴费金额")
+    private BigDecimal  supplementAmount;
+
+    @Schema(description = "取消状态 0:初始  1:待支付(审核通过)2:已支付")
+    private Integer damagedStatus;
+
+    @Schema(description = "取消提交时间")
+    private LocalDateTime damagedTime;
+
     @Schema(description = "定金支付状态")
     @Schema(description = "定金支付状态")
     private Integer deposiStatus;
     private Integer deposiStatus;
 
 

+ 12 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/order/vo/order/TradeOrderRespNewVO.java

@@ -215,6 +215,18 @@ public class TradeOrderRespNewVO {
     @Schema(description = "定金")
     @Schema(description = "定金")
     private BigDecimal deposi;
     private BigDecimal deposi;
 
 
+    @Schema(description = "受损金额")
+    private BigDecimal damaged;
+
+    @Schema(description = "补缴费金额")
+    private BigDecimal  supplementAmount;
+
+    @Schema(description = "取消状态 0:初始  1:待支付(审核通过)2:已支付")
+    private Integer damagedStatus;
+
+    @Schema(description = "取消提交时间")
+    private LocalDateTime damagedTime;
+
     @Schema(description = "定金状态0:初始  1:待支付(审核通过)2:已支付")
     @Schema(description = "定金状态0:初始  1:待支付(审核通过)2:已支付")
     private Integer deposiStatus;
     private Integer deposiStatus;
 
 

+ 12 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/order/vo/order/TradeOrderRespVO.java

@@ -526,6 +526,18 @@ public class TradeOrderRespVO {
     @Schema(description = "定金")
     @Schema(description = "定金")
     private BigDecimal deposi;
     private BigDecimal deposi;
 
 
+    @Schema(description = "受损金额")
+    private BigDecimal damaged;
+
+    @Schema(description = "补缴费金额")
+    private BigDecimal  supplementAmount;
+
+    @Schema(description = "取消状态 0:初始  1:待支付(审核通过)2:已支付")
+    private Integer damagedStatus;
+
+    @Schema(description = "取消提交时间")
+    private LocalDateTime damagedTime;
+
     @Schema(description = "定金状态0:初始  1:待支付(审核通过)2:已支付")
     @Schema(description = "定金状态0:初始  1:待支付(审核通过)2:已支付")
     private Integer deposiStatus;
     private Integer deposiStatus;
 
 

+ 3 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/controller/admin/order/vo/order/TradeOrderTotalVO.java

@@ -130,4 +130,7 @@ public class TradeOrderTotalVO {
 
 
     @Schema(description = "定金")
     @Schema(description = "定金")
     private BigDecimal deposi;
     private BigDecimal deposi;
+
+    @Schema(description = "受损金额")
+    private BigDecimal damaged;
 }
 }

+ 15 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/dal/dataobject/order/TradeOrderDO.java

@@ -336,6 +336,21 @@ public class TradeOrderDO extends TenantBaseDO {
     @ForUpdate(fieldName = "定金")
     @ForUpdate(fieldName = "定金")
     private BigDecimal deposi;
     private BigDecimal deposi;
 
 
+    @ForUpdate(fieldName = "受损金额")
+    private BigDecimal damaged;
+
+    @ForUpdate(fieldName = "补缴费金额")
+    private BigDecimal  supplementAmount;
+    /**
+     * 取消状态0:初始  1:待支付(审核通过)2:已支付
+     */
+    @ForUpdate(fieldName = "取消状态")
+    private Integer damagedStatus;
+    /**
+     * 受损提交时间
+     */
+    private LocalDateTime damagedTime;
+
     /**
     /**
      * 定金状态0:初始  1:待支付(审核通过)2:已支付
      * 定金状态0:初始  1:待支付(审核通过)2:已支付
      */
      */

+ 28 - 20
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/service/order/impl/AdminTradeOrderServiceImpl.java

@@ -1,6 +1,8 @@
 package com.yc.ship.module.trade.service.order.impl;
 package com.yc.ship.module.trade.service.order.impl;
 
 
 import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.date.DateUnit;
+import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.map.MapUtil;
 import cn.hutool.core.map.MapUtil;
 import cn.hutool.core.util.ObjectUtil;
 import cn.hutool.core.util.ObjectUtil;
 import cn.hutool.json.JSONObject;
 import cn.hutool.json.JSONObject;
@@ -56,6 +58,7 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.annotation.Transactional;
 
 
 import javax.annotation.Resource;
 import javax.annotation.Resource;
+import java.math.BigDecimal;
 import java.time.LocalDateTime;
 import java.time.LocalDateTime;
 import java.util.*;
 import java.util.*;
 import java.util.stream.Collectors;
 import java.util.stream.Collectors;
@@ -345,26 +348,31 @@ public class AdminTradeOrderServiceImpl implements AdminTradeOrderService {
     public CommonResult<?> cancelOrder(Long orderId) {
     public CommonResult<?> cancelOrder(Long orderId) {
         TradeOrderDO tradeOrderDO = tradeOrderRepositoryService.getById(orderId);
         TradeOrderDO tradeOrderDO = tradeOrderRepositoryService.getById(orderId);
         Asserts.isTrue(tradeOrderDO != null, "订单不存在");
         Asserts.isTrue(tradeOrderDO != null, "订单不存在");
-//        if(Objects.equals(tradeOrderDO.getOrderStatus(), TradeOrderStatusEnum.UNPAID.getStatus())){
-            //需要审核
-            TradeOrderBindDO tradeOrderBindDO = new TradeOrderBindDO();
-            tradeOrderBindDO.setId(IdWorker.getId());
-            tradeOrderBindDO.setType(1);
-            tradeOrderBindDO.setBindId(orderId);
-            tradeOrderBindDO.setOrderId(orderId);
-            tradeOrderBindDO.setCustom("订单取消");
-            tradeOrderBindDO.setRemark("订单取消");
-            tradeOrderBindDO.setCreateTime(LocalDateTime.now());
-            tradeOrderBindDO.setCreator(getLoginUserId()+"");
-            tradeOrderBindMapper.insert(tradeOrderBindDO);
-
-            AuditUserDO auditUserDO = auditUserMapper.selectOne(new LambdaQueryWrapperX<AuditUserDO>().eq(AuditUserDO::getType, 4).eq(AuditUserDO::getAuditStatus, 1).eq(AuditUserDO::getDeleted, 0).orderByDesc(AuditUserDO::getCreateTime).last("limit 1"));
-            tradeOrderMapper.update(new UpdateWrapper<TradeOrderDO>().set("audit_type", 4).set("audit_user", auditUserDO == null ? "" : auditUserDO.getAuditUser()).set("order_status", TradeOrderStatusEnum.CANCEL_AUDIT.getStatus()).set("audit_status", 1).eq("id", tradeOrderDO.getId()));
-            TradeOrderLogUtils.setOrderInfo(orderId, tradeOrderDO.getOrderStatus(), TradeOrderStatusEnum.CANCEL_AUDIT.getStatus());
-            return CommonResult.success("订单取消审核中");
-//        }else{
-//            return tradeOrderPayService.cancelOrder(orderId);
-//        }
+        TradeOrderBindDO tradeOrderBindDO = new TradeOrderBindDO();
+        tradeOrderBindDO.setId(IdWorker.getId());
+        tradeOrderBindDO.setType(1);
+        tradeOrderBindDO.setBindId(orderId);
+        tradeOrderBindDO.setOrderId(orderId);
+        tradeOrderBindDO.setCustom("订单取消");
+        tradeOrderBindDO.setRemark("订单取消");
+        tradeOrderBindDO.setCreateTime(LocalDateTime.now());
+        tradeOrderBindDO.setCreator(getLoginUserId() + "");
+        tradeOrderBindMapper.insert(tradeOrderBindDO);
+
+        long between = DateUtil.between(tradeOrderDO.getTravelDate(), new Date(), DateUnit.DAY);
+        BigDecimal damaged;
+        if(between>21){
+            damaged = new BigDecimal(500);
+        }else if(between>15){
+            damaged =  tradeOrderDO.getPayAmount().multiply(new BigDecimal("0.2"));
+        }else{
+            damaged =  tradeOrderDO.getPayAmount();
+        }
+
+        AuditUserDO auditUserDO = auditUserMapper.selectOne(new LambdaQueryWrapperX<AuditUserDO>().eq(AuditUserDO::getType, 4).eq(AuditUserDO::getAuditStatus, 1).eq(AuditUserDO::getDeleted, 0).orderByDesc(AuditUserDO::getCreateTime).last("limit 1"));
+        tradeOrderMapper.update(new UpdateWrapper<TradeOrderDO>().set("audit_type", 4).set("audit_user", auditUserDO == null ? "" : auditUserDO.getAuditUser()).set("order_status", TradeOrderStatusEnum.CANCEL_AUDIT.getStatus()).set("audit_status", 1).set("damaged",damaged).set("damaged_status", 1).set("damaged_time", LocalDateTime.now()).eq("id", tradeOrderDO.getId()));
+        TradeOrderLogUtils.setOrderInfo(orderId, tradeOrderDO.getOrderStatus(), TradeOrderStatusEnum.CANCEL_AUDIT.getStatus());
+        return CommonResult.success("订单取消审核中");
     }
     }
 
 
     @Override
     @Override

+ 5 - 0
ship-server-web/pom.xml

@@ -78,6 +78,11 @@
             <artifactId>ship-module-miniapplet</artifactId>
             <artifactId>ship-module-miniapplet</artifactId>
             <version>${revision}</version>
             <version>${revision}</version>
         </dependency>
         </dependency>
+        <dependency>
+            <groupId>com.yc.ship</groupId>
+            <artifactId>module-cms-biz</artifactId>
+            <version>${revision}</version>
+        </dependency>
 
 
         <!-- 业务组件 -->
         <!-- 业务组件 -->
         <dependency>
         <dependency>