Commit fcc71548 by zhiwj

bug

parent 00b8040f
......@@ -52,6 +52,12 @@
<version>1.18.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.gic</groupId>
<artifactId>gic-marketing-process-api</artifactId>
<version>4.0-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
</dependencies>
......
package com.gic.enterprise.constant;
import com.gic.marketing.process.api.utils.NoticeConstant;
import org.apache.commons.lang3.StringUtils;
import java.util.HashMap;
import java.util.Map;
/**
* @author zhiwj
* @Description: 短信消费应用场景
......@@ -21,6 +25,27 @@ public enum SmsAppEnum {
GAME_PTYX("ptyx", "拼图游戏"),
OTHER("other", "其他"),
;
public static Map<String, String> noticeMap = new HashMap<>();
static {
// 小程序验证码 ----> 会员开卡
noticeMap.put(NoticeConstant.NOTICE_WXA_VERIFY_CODE, SmsAppEnum.MEMBER_OPEN_CARD.code);
// 会员开卡 ----> 会员开卡
noticeMap.put(NoticeConstant.NOTICE_MEMBER_OPEN_CARD, SmsAppEnum.MEMBER_OPEN_CARD.code);
// 微商城发货 ----> 微商城
noticeMap.put(NoticeConstant.NOTICE_MALL_ORDER_DELIVERY, SmsAppEnum.GIC_MALL.code);
// 微商城订单待付款 ----> 微商城
noticeMap.put(NoticeConstant.NOTICE_MALL_ORDER_PAY, SmsAppEnum.GIC_MALL.code);
// 微商城取消订单 ----> 微商城
noticeMap.put(NoticeConstant.NOTICE_MALL_ORDER_CLOSE, SmsAppEnum.GIC_MALL.code);
// 积分商城发货 ----> 积分商城
noticeMap.put(NoticeConstant.NOTICE_INTEGRAL_ORDER_DELIVERY, SmsAppEnum.GIC_INTEGRAL.code);
// 积分商城待付款 ----> 积分商城
noticeMap.put(NoticeConstant.NOTICE_INTEGRAL_ORDER_PAY, SmsAppEnum.GIC_INTEGRAL.code);
// 积分商城取消订单 ----> 积分商城
noticeMap.put(NoticeConstant.NOTICE_INTEGRAL_ORDER_CLOSE, SmsAppEnum.GIC_INTEGRAL.code);
}
private String code;
private String name;
......@@ -56,4 +81,14 @@ public enum SmsAppEnum {
return null;
}
public static String getAppCode(String noticeCode) {
// noticeMap.getOrDefault()
String appCode = noticeMap.get(noticeCode);
if (StringUtils.isBlank(appCode)) {
return SmsAppEnum.OTHER.code;
} else {
return appCode;
}
}
}
package com.gic.enterprise.constant;
import com.gic.marketing.process.api.utils.NoticeConstant;
import org.apache.commons.lang3.StringUtils;
/**
* @author zhiwj
* @Description: 短信消费类型
......@@ -27,4 +30,16 @@ public enum SmsTypeEnum {
public String getName() {
return name;
}
public static Integer getCodeByNoticeCode(String noticeCode) {
if (StringUtils.isBlank(noticeCode)) {
return SmsTypeEnum.MARKETING.code;
}
if (NoticeConstant.PARAMS_VERIFY_CODE.equals(noticeCode)) {
return SmsTypeEnum.AUTH_CODE.code;
} else {
return SmsTypeEnum.NOTICE.code;
}
}
}
......@@ -8,6 +8,7 @@ import com.gic.commons.util.EntityUtil;
import com.gic.commons.util.GICMQClientUtil;
import com.gic.enterprise.constant.AccountStandardEnum;
import com.gic.enterprise.constant.SmsAppEnum;
import com.gic.enterprise.constant.SmsTypeEnum;
import com.gic.enterprise.dto.InternationalSmsRecordDTO;
import com.gic.enterprise.dto.SmsRecordDTO;
import com.gic.enterprise.entity.TabBillingAccount;
......@@ -72,17 +73,17 @@ public class SmsRecordApiServiceImpl implements SmsRecordApiService {
nationCode = "+" + nationCode;
}
long missCount = sendCount;
if (StringUtils.equals("+86", nationCode)) {
logger.info("nationCode:{}, 需要校验套餐包", nationCode);
RAtomicLong smsCountR = billingEnterpriseSmsPackageService.getTotalSmsInPackageByEnterpriseId(enterpriseId);
long smsPackageCount = smsCountR.get();
if (smsPackageCount > sendCount) {
logger.info("enterpriseId:{}, 短信套餐包条数:{}, 发送条数:{}, 可以发送", enterpriseId, smsPackageCount, sendCount);
return ServiceResponse.success();
} else {
missCount = missCount - smsPackageCount;
}
}
// if (StringUtils.equals("+86", nationCode)) {
// logger.info("nationCode:{}, 需要校验套餐包", nationCode);
// RAtomicLong smsCountR = billingEnterpriseSmsPackageService.getTotalSmsInPackageByEnterpriseId(enterpriseId);
// long smsPackageCount = smsCountR.get();
// if (smsPackageCount > sendCount) {
// logger.info("enterpriseId:{}, 短信套餐包条数:{}, 发送条数:{}, 可以发送", enterpriseId, smsPackageCount, sendCount);
// return ServiceResponse.success();
// } else {
// missCount = missCount - smsPackageCount;
// }
// }
TabBillingAccount billingAccount = billingAccountService.getByEnterpriseId(enterpriseId);
Double accountBalance = billingAccount.getAccountBalance();
......@@ -104,8 +105,13 @@ public class SmsRecordApiServiceImpl implements SmsRecordApiService {
smsRecordDTO.setNationCode("+86");
}
if (StringUtils.isBlank(smsRecordDTO.getAppCode())) {
smsRecordDTO.setAppCode(SmsAppEnum.OTHER.getCode());
// 没有应用场景的 通过通知code去匹配
smsRecordDTO.setAppCode(SmsAppEnum.getAppCode(smsRecordDTO.getNoticeCode()));
}
smsRecordDTO.setSmsType(SmsTypeEnum.getCodeByNoticeCode(smsRecordDTO.getNoticeCode()));
if (StringUtils.equals("86", smsRecordDTO.getNationCode()) || StringUtils.equals("+86", smsRecordDTO.getNationCode())) {
ServiceResponse paramResult = ValidUtil.allCheckValidate(smsRecordDTO, SmsRecordDTO.SmsRecordValid.class);
if (!paramResult.isSuccess()) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment