退款对象新增附加属性,用于兼容更多种支付平台

This commit is contained in:
egzosn
2020-05-17 23:34:41 +08:00
parent 370f7941ec
commit b17dd02d65
5 changed files with 41 additions and 2 deletions

View File

@@ -25,4 +25,12 @@ public interface Order {
*/
Object getAttr(String key);
/**
* 添加订单信息
* @param key key
* @param value 值
*/
void addAttr(String key, Object value);
}

View File

@@ -277,6 +277,7 @@ public class PayOrder implements Order {
* @param key key
* @param value 值
*/
@Override
public void addAttr(String key, Object value) {
getAttrs().put(key, value);
}

View File

@@ -2,6 +2,8 @@ package com.egzosn.pay.common.bean;
import java.math.BigDecimal;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
/**
* 退款订单信息
@@ -11,7 +13,7 @@ import java.util.Date;
* date 2018/1/15 21:40
* </pre>
*/
public class RefundOrder {
public class RefundOrder implements Order {
/**
* 退款单号,每次进行退款的单号,此处唯一
*/
@@ -51,6 +53,11 @@ public class RefundOrder {
*/
private String userId;
/**
* 订单附加信息,可用于预设未提供的参数,这里会覆盖以上所有的订单信息,
*/
private Map<String, Object> attr;
public String getRefundNo() {
return refundNo;
}
@@ -147,5 +154,27 @@ public class RefundOrder {
this.totalAmount = totalAmount;
}
@Override
public Map<String, Object> getAttrs() {
if (null == attr){
attr = new HashMap<>();
}
return attr;
}
@Override
public Object getAttr(String key) {
return getAttrs().get(key);
}
/**
* 添加订单信息
* @param key key
* @param value 值
*/
@Override
public void addAttr(String key, Object value) {
getAttrs().put(key, value);
}
}

View File

@@ -217,6 +217,7 @@ public class TransferOrder implements Order {
* @param key key
* @param value 值
*/
@Override
public void addAttr(String key, Object value) {
getAttrs().put(key, value);
}