diff --git a/jsowell-common/src/main/java/com/jsowell/common/enums/adapay/MerchantDelayModelEnum.java b/jsowell-common/src/main/java/com/jsowell/common/enums/adapay/MerchantDelayModelEnum.java new file mode 100644 index 000000000..9bf812888 --- /dev/null +++ b/jsowell-common/src/main/java/com/jsowell/common/enums/adapay/MerchantDelayModelEnum.java @@ -0,0 +1,33 @@ +package com.jsowell.common.enums.adapay; + +/** + * 汇付支付 分账模式 + */ +public enum MerchantDelayModelEnum { + DELAY("1", "延时分账"), + NOT_DELAY("0", "非延时分账"), + ; + private String value; + private String label; + + public String getValue() { + return value; + } + + public void setValue(String value) { + this.value = value; + } + + public String getLabel() { + return label; + } + + public void setLabel(String label) { + this.label = label; + } + + MerchantDelayModelEnum(String value, String label) { + this.value = value; + this.label = label; + } +} diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/orderlogic/DelayMerchantOrderLogic.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/orderlogic/DelayMerchantOrderLogic.java index 5ef3f2056..2e1d52fc4 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/orderlogic/DelayMerchantOrderLogic.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/orderlogic/DelayMerchantOrderLogic.java @@ -11,6 +11,7 @@ import com.jsowell.common.core.domain.ykc.TransactionRecordsData; import com.jsowell.common.enums.AcquirerEnum; import com.jsowell.common.enums.DelFlagEnum; import com.jsowell.common.enums.MemberWalletEnum; +import com.jsowell.common.enums.adapay.MerchantDelayModelEnum; import com.jsowell.common.enums.ykc.*; import com.jsowell.common.exception.BusinessException; import com.jsowell.common.util.StringUtils; @@ -41,7 +42,7 @@ public class DelayMerchantOrderLogic extends AbstractOrderLogic { @Override public void afterPropertiesSet() throws Exception { - + OrderLogicFactory.register(MerchantDelayModelEnum.DELAY.getValue(), this); } /** diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/orderlogic/NotDelayMerchantOrderLogic.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/orderlogic/NotDelayMerchantOrderLogic.java index d63b81024..e52bec395 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/orderlogic/NotDelayMerchantOrderLogic.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/orderlogic/NotDelayMerchantOrderLogic.java @@ -10,6 +10,7 @@ import com.jsowell.common.core.domain.ykc.TransactionRecordsData; import com.jsowell.common.enums.AcquirerEnum; import com.jsowell.common.enums.DelFlagEnum; import com.jsowell.common.enums.MemberWalletEnum; +import com.jsowell.common.enums.adapay.MerchantDelayModelEnum; import com.jsowell.common.enums.ykc.*; import com.jsowell.common.exception.BusinessException; import com.jsowell.common.util.StringUtils; @@ -40,7 +41,7 @@ public class NotDelayMerchantOrderLogic extends AbstractOrderLogic{ @Override public void afterPropertiesSet() throws Exception { - + OrderLogicFactory.register(MerchantDelayModelEnum.NOT_DELAY.getValue(), this); } /** diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/orderlogic/OrderLogicFactory.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/orderlogic/OrderLogicFactory.java new file mode 100644 index 000000000..21331b2e7 --- /dev/null +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/orderlogic/OrderLogicFactory.java @@ -0,0 +1,37 @@ +package com.jsowell.pile.service.orderlogic; + +import com.google.common.collect.Maps; +import com.jsowell.common.util.StringUtils; + +import java.util.Map; +import java.util.Objects; + +/** + * 工厂设计模式 + * 云快充操作 + */ +public class OrderLogicFactory { + + private static Map orderLogicMap = Maps.newHashMap(); + + /** + * 注册 + * @param str + * @param handler + */ + public static void register(String str, AbstractOrderLogic handler) { + if (StringUtils.isBlank(str) || Objects.isNull(handler)) { + return; + } + orderLogicMap.put(str, handler); + } + + /** + * 获取 + * @param name + * @return + */ + public static AbstractOrderLogic getOrderLogic(String name) { + return orderLogicMap.get(name); + } +}