|
|
@@ -1,6 +1,8 @@
|
|
|
package com.yc.ship.module.trade.service.order.impl;
|
|
|
|
|
|
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.util.ObjectUtil;
|
|
|
import cn.hutool.json.JSONObject;
|
|
|
@@ -56,6 +58,7 @@ import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
+import java.math.BigDecimal;
|
|
|
import java.time.LocalDateTime;
|
|
|
import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
|
@@ -345,26 +348,31 @@ public class AdminTradeOrderServiceImpl implements AdminTradeOrderService {
|
|
|
public CommonResult<?> cancelOrder(Long orderId) {
|
|
|
TradeOrderDO tradeOrderDO = tradeOrderRepositoryService.getById(orderId);
|
|
|
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
|