trade: 调整退款单

This commit is contained in:
YunaiV 2022-11-15 19:46:30 +08:00
parent 38f67d4130
commit b8d1d31df0
3 changed files with 93 additions and 47 deletions

View File

@ -0,0 +1,37 @@
package cn.iocoder.yudao.module.trade.enums.aftersale;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* 售后状态的枚举
*
* <a href="https://www.processon.com/view/link/63731a270e3e742ce7b7c194">状态流转</a>
*
* @author 芋道源码
*/
@AllArgsConstructor
@Getter
public enum TradeAfterSaleStatusEnum {
APPLY(10,"申请中"),
SELLER_PASS(20, "已通过"), // 卖家通过售后
BUYER_RETURN(30,"待卖家收货"), // 买家退货等待卖家收货
WAIT_REFUND(40, "等待平台退款"), // 卖家收货等待平台退款
COMPLETE(50, "完成"), // 完成退款
BUYER_CANCEL(61, "买家取消售后"),
SELLER_REFUSE(62,"已拒绝"), // 卖家拒绝售后
SELLER_TERMINATION(63,"卖家终止售后"), // 卖家拒绝收货终止售后
;
/**
* 状态
*/
private final Integer status;
/**
* 状态名
*/
private final String name;
}

View File

@ -1,16 +1,16 @@
package cn.iocoder.yudao.module.trade.enums.refund;
package cn.iocoder.yudao.module.trade.enums.aftersale;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
/**
* 交易退款 - 申请类型
* 交易售后 - 类型
*
* @author Sin
*/
@RequiredArgsConstructor
@Getter
public enum TradeRefundTypeEnum {
public enum TradeAfterSaleTypeEnum {
REFUND(10, "退款"),
RETURN_AND_REFUND(20, "退货退款");

View File

@ -1,10 +1,10 @@
package cn.iocoder.yudao.module.trade.dal.dataobject.refund;
package cn.iocoder.yudao.module.trade.dal.dataobject.aftersale;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import cn.iocoder.yudao.module.trade.dal.dataobject.order.TradeOrderDO;
import cn.iocoder.yudao.module.trade.dal.dataobject.order.TradeOrderItemDO;
import cn.iocoder.yudao.module.trade.enums.order.TradeOrderRefundStatusEnum;
import cn.iocoder.yudao.module.trade.enums.refund.TradeRefundTypeEnum;
import cn.iocoder.yudao.module.trade.enums.aftersale.TradeAfterSaleStatusEnum;
import cn.iocoder.yudao.module.trade.enums.aftersale.TradeAfterSaleTypeEnum;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
@ -16,32 +16,38 @@ import java.time.LocalDateTime;
import java.util.List;
/**
* 交易退款用于处理 {@link TradeOrderDO} 交易订单的退货换流程
* 交易售后用于处理 {@link TradeOrderDO} 交易订单的退款退货流程
*
* @author 芋道源码
*/
// TODO 芋艿需要调整下每个字段的命名未完全实现
@TableName(value = "trade_refund")
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
public class TradeRefundDO extends BaseDO {
public class TradeAfterSaleDO extends BaseDO {
/**
* 交易退款编号主键自增
* 售后编号主键自增n
*/
@Deprecated
private Long id;
/**
* 退款流水号
* 售后流水号
*
* 例如说1146347329394184195
*/
private String sn;
private String no;
/**
* 退款状态
*
* 枚举 {@link TradeOrderRefundStatusEnum}
* 枚举 {@link TradeAfterSaleStatusEnum}
*/
private Integer status;
/**
* 售后类型
*
* 枚举 {@link TradeAfterSaleTypeEnum}
*/
private Integer type;
/**
* 用户编号
*
@ -49,69 +55,75 @@ public class TradeRefundDO extends BaseDO {
*/
private Long userId;
/**
* 用户手机
* 申请原因
*/
private String userMobile;
private String applyReason;
/**
* 申请类型
*
* 枚举 {@link TradeRefundTypeEnum}
* 补充描述
*/
private Integer type;
private String applyDescription;
/**
* 用户售后说明
*/
private String reasonMemo; // buyer_msg
/**
* 用户售后凭证图片的地址数组
* 补充凭证图片
*
* 数组以逗号分隔
*/
@TableField(typeHandler = JacksonTypeHandler.class)
private List<String> reasonPicUrls; // photo_files
private List<String> applyPicUrls;
// ========== 商家相关 ==========
/**
* 商家处理时间
* 审批时间
*/
private LocalDateTime handleTime; // handel_time
private LocalDateTime auditTime;
/**
* 商家拒绝理由
* 审批人
*
* 关联 AdminUserDO id 编号
*/
private String rejectReasonMemo; // seller_msg
private Long auditUserId;
/**
* 审批备注
*/
private String auditReason;
// ========== 交易订单相关 ==========
/**
* 交易订单编号
*
* 外键 {@link TradeOrderDO#getId()}
* 关联 {@link TradeOrderDO#getId()}
*/
private Long tradeOrderId;
private Long orderId;
/**
* 交易订单项编号
*
* 关联 {@link TradeOrderItemDO#getId()}
* 如果全部退款则该值设置为 0 即可
*/
private Long tradeOrderItemId;
private Long orderItemId;
/**
* 商品 SPU 编号
*
* 关联 ProductSpuDO 的编号
*/
private Long spuId;
/**
* 商品 SKU 编号
*
* 关联 ProductSkuDO 的编号
*/
@Deprecated
private Integer skuId;
/**
* 退货商品数量
*/
private Integer stock; // goods_num
private Integer count;
// ========== 退款相关 ==========
/**
* 退款金额单位
*/
private Integer refundPrice; // refund_amount
private Integer refundPrice;
/**
* 支付退款编号
* 支付退款编号 TODO
*
* 对接 pay-module-biz 支付服务的退款订单编号 PayRefundDO id 编号
*/
@ -120,28 +132,25 @@ public class TradeRefundDO extends BaseDO {
// ========== 退货相关 ==========
/**
* 退货物流公司编号
* 退货物流公司编号 TODO
*
* 关联 ExpressDO id 编号
*/
private Long returnExpressId; // express_name
/**
* 退货物流单号
* 退货物流单号 TODO
*/
private String returnExpressNo; // express_no
/**
* 退货时间
* 退货时间 TODO
*/
private LocalDateTime returnDate; // ship_time
// ========== 收获相关 ==========
private LocalDateTime deliveryTime; // ship_time
/**
* 收获备注
* 收获备注 TODO
*/
private String receiveMemo; // receive_message
/**
* 收货时间
* 收货时间 TODO
*/
private LocalDateTime receiveDate; // receive_time