领域模型

@startuml

class reverse_order {
	//逆向主单ID
	reverse_order_id
	//主单ID
	trade_order_id
	
  ...

	//退款类型
	request_type
	//退款渠道
	refund_payment_method
	//支付渠道
	payment_method
}

class reverse_order_line {
	//逆向子单id
	reverse_order_line_id
	//逆向主单id
	reverse_order_id
	//交易主单id
	trade_order_id
	//交易子单id
	trade_order_line_id
	//退款金额
	refund_amount
	//支付金额
	paid_amount
	//退款状态
	reverse_status
	//商品状态
	goods_status
	//申请退款原因
	reason_id
	//物流包裹id
	logistic_packageId
	//商家拒绝原因
	reject_reason_id

	...
}

class reverse_order_logistic {
	//逆向物流包裹id
	reverse_order_logistic_id
	//逆向主单id
	reverse_order_id
	//交易主单id
	trade_order_id
	//退回地址id
	receiver_address_id
	//tracking
	tracking_number
	
	...
}

class reverse_attachment {
	//主键
	id
	//逆向子单id
	reverse_order_line_id
	//附件类型
	attachment_type
	//文件url
	file_url
	//交易子单
	trade_order_line_id
	
	...
}

class reverse_reason {
	//原因id
	reason_id
	//文案
	display_text
	//原因类型
	reason_type
	//父原因
	parent_id
	
	...
}

class reverse_apply_reason_relative {
	//主键ID
	id
	//关联原因id
	origin_reason_id
	
	...
}

class reverse_rejective_reason_relative {
	//主键ID
	id
	//关联原因id
	origin_reason_id
	//关联申请退款原因
	relative_apply_reason_id
	
	...
}

class reverse_record {
	//记录ID 
	reverse_record_id
	//交易子单id
	trade_order_line_id
	//逆向子单id
	reverse_id
	//操作员id
	operator_id
	//操作角色
	operator_role
	//上一个逆向状态
	pre_reverse_status
	//逆向状态
	reverse_status
	//商品状态
	goods_status
	
	...
}



reverse_order *-right- reverse_order_line
reverse_order_line -right- reverse_order_logistic
reverse_order_line *-up- reverse_attachment
reverse_order_line -down- reverse_apply_reason_relative
reverse_order_line -down- reverse_rejective_reason_relative
reverse_reason -up- reverse_apply_reason_relative
reverse_reason -up- reverse_rejective_reason_relative
reverse_order_line *-right- reverse_record
@enduml

架构设计

系统架构图

image

应用逻辑分层

image

业务流程节点

image

TMF&星环

image

强弱依赖

image

系统流程图

image

image

状态机

状态流转

image

状态枚举

○ 1-REQUEST_INITIATE(1, "request initiate"):逆向请求初始化 ○ REQUEST_REJECT(2, "request reject"):逆向请求卖家拒绝 ○ REQUEST_CANCEL(3, "request cancel"):逆向请求买家取消 ○ CANCEL_SUCCESS(4, "cancel success"):逆向请求买家取消成功 ○ REPLACE_PENDING(5, "replace pending"):待换货 ○ REPLACE_WAIT_AUDIT(6, "replace wait audit"):换货待确认 ○ REPLACE_SUCCESS(7, "replace success"):换货成功 ○ REFUND_PENDING(8, "refund pending"):待退款 ○ REFUND_AUTHORIZED(9, "refund authorized"):退款待确认 ○ REFUND_SUCCESS(10, "refund success"):退款成功(退货退款成功) ○ REFUND_REJECT(11, "refund reject"):退款拒绝 ○ REQUEST_COMPLETE(12, "request complete"):逆向完成 ○ SELLER_AGREE_RETURN(13, "seller agree return"):卖家同意退货 ○ SELLER_REJECT_RETURN(17, "seller reject return"):卖家拒绝退货 ○ BUYER_RETURN_ITEM(14, "buyer return item"):买家退货 ○ SELLER_AGREE_REFUND(15, "seller agree refund"):卖家同意退款 ○ SELLER_REJECT_REFUND(18, "seller reject refund"):卖家拒绝退款

内部核心流程

逆向单创建

image

取消

image

仅退款

image

退货退款

image

外部系统交互

逆向入口透出

image

用户取消

image

履约取消

image

退货退款

image

打款

image