提交 181a4d86 作者: xiaowang

平台确认归还 破损订单

上级 2e7e9790
......@@ -261,7 +261,7 @@ public class CodeUtil {
Date now = new Date();
String dateString = sdf.format(now);
int count = counter.incrementAndGet();
return "ORD" + dateString + String.format("%04d", count);
return "L" + dateString + String.format("%04d", count);
}
}
......@@ -8,6 +8,7 @@ import com.mmc.oms.entity.uav.UavOrderDO;
import com.mmc.oms.model.qo.uav.UavOrderQO;
import org.apache.ibatis.annotations.Mapper;
import java.math.BigDecimal;
import java.util.List;
/**
......@@ -25,7 +26,7 @@ public interface LeaseOrderDao {
LeaseOrderExpressDO getLeaseOrderExpress(Integer id);
void updateUavOrderStatus(Integer id, Integer code);
void updateLeaseOrderStatus(Integer id, Integer code);
void addLeaseRefundOrder(LeaseRefundOrderDO leaseRefundOrderDO);
......@@ -48,4 +49,6 @@ public interface LeaseOrderDao {
void updateLeaseOrderProportion(Integer id, int proportion);
LeaseRefundOrderDO selectGiveBackByOrderId(Integer id, Integer type);
void updateLeaseOrderDeposit(Integer orderId, BigDecimal deposit);
}
......@@ -13,6 +13,7 @@ public enum LeaseOrderStatus {
REMAIN_TO_BE_EVALUATED(600, "待评价", "待评价"),
COMPLETE_TRANSACTION(700, "交易完成", "交易完成"),
APPLY_REFUND(800, "申请退款", "退款中"),
MODIFIED_DEPOSIT_TO_BE_CONFIRMED(900, "待确认修改后押金", "待确认修改后押金"),
CLOSE(999, "订单关闭", "订单关闭");
public Integer getCode() {
......
......@@ -6,6 +6,7 @@ import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* @Author LW
......@@ -32,4 +33,6 @@ public class LeaseOrderRefundVO implements Serializable {
private String file;
@ApiModelProperty("原因")
private String reason;
@ApiModelProperty("扣除的押金")
private BigDecimal deductionAmount;
}
......@@ -423,7 +423,7 @@ public class LeaseOrderServiceImpl implements LeaseOrderService {
leaseRefundOrderDO.setType(OrderType.RETREAT.getCode());
leaseOrderDao.addLeaseRefundOrder(leaseRefundOrderDO);
// 修改订单状态
leaseOrderDao.updateUavOrderStatus(leaseOrderRefundVO.getOrderId(), LeaseOrderStatus.APPLY_REFUND.getCode());
leaseOrderDao.updateLeaseOrderStatus(leaseOrderRefundVO.getOrderId(), LeaseOrderStatus.APPLY_REFUND.getCode());
}
return ResultBody.success();
} else {
......@@ -460,7 +460,7 @@ public class LeaseOrderServiceImpl implements LeaseOrderService {
@Transactional(rollbackFor = Exception.class)
public void updateLeaseOrderStatus(Integer id, LeaseOrderStatus leaseOrderStatus) {
leaseOrderDao.updateUavOrderStatus(id, leaseOrderStatus.getCode());
leaseOrderDao.updateLeaseOrderStatus(id, leaseOrderStatus.getCode());
}
@Override
......@@ -661,6 +661,9 @@ public class LeaseOrderServiceImpl implements LeaseOrderService {
public ResultBody pfConfirmOrderWare(BaseAccountDTO currentAccount, LeaseOrderRefundVO param) {
LeaseOrderDO leaseOrderDO = leaseOrderDao.detail(param.getOrderId());
log.info("平台确认归还操作,leaseOrderDO:{}", JSONObject.toJSONString(leaseOrderDO));
if (leaseOrderDO.getStatusCode().equals(LeaseOrderStatus.REMAIN_TO_BE_EVALUATED.getCode())) {
return ResultBody.error("请勿重复操作");
}
boolean isWaitingMerchantConfirm = leaseOrderDO.getStatusCode().equals(LeaseOrderStatus.WAITING_MERCHANT_CONFIRM.getCode());
boolean isApplyRefund = leaseOrderDO.getStatusCode().equals(LeaseOrderStatus.APPLY_REFUND.getCode());
......@@ -735,8 +738,17 @@ public class LeaseOrderServiceImpl implements LeaseOrderService {
this.updateLeaseOrderStatus(param.getOrderId(), LeaseOrderStatus.REMAIN_TO_BE_EVALUATED);
}
} else {
// todo 进行相应赔偿
// 有破损等待平台
if (StringUtils.isEmpty(param.getFile()) || StringUtils.isEmpty(param.getReason())) {
return ResultBody.error("请填充破损照片和原因!");
}
LeaseRefundOrderDO leaseRefundOrderDO = new LeaseRefundOrderDO(param);
leaseRefundOrderDO.setType(OrderType.PFREC.getCode());
leaseOrderDao.addLeaseRefundOrder(leaseRefundOrderDO);
// 记录修改后的押金退回
leaseOrderDao.updateLeaseOrderDeposit(param.getOrderId(), param.getDeductionAmount());
// 修改订单状态
this.updateLeaseOrderStatus(param.getOrderId(), LeaseOrderStatus.MODIFIED_DEPOSIT_TO_BE_CONFIRMED);
}
} else {
return ResultBody.error("状态流程有误,请重试");
......
......@@ -46,7 +46,7 @@
insert into lease_refund_order(lease_order_id, status, file, reason, type, lease_order_express_id)
values (#{leaseOrderId}, #{status}, #{file}, #{reason}, #{type}, #{leaseOrderExpressId})
</insert>
<update id="updateUavOrderStatus">
<update id="updateLeaseOrderStatus">
update lease_order
set status_code = #{code}
where id = #{id}
......@@ -110,6 +110,11 @@
set proportion = #{proportion}
where id = #{id}
</update>
<update id="updateLeaseOrderDeposit">
update lease_order
set modified_deposit = #{deposit}
where id = #{orderId}
</update>
<sql id="lease_order_column">
id
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论