Commit 0aabb108 by 程裕兵

feat:send member refund wx message

parent 3e4db98f
......@@ -82,6 +82,11 @@
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.jiejing.fitness</groupId>
<artifactId>message-sdk</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.jiejing.base</groupId>
<artifactId>permcenter-api</artifactId>
<version>0.0.1-SNAPSHOT</version>
......
......@@ -32,6 +32,10 @@
<artifactId>message-api</artifactId>
</dependency>
<dependency>
<groupId>com.jiejing.fitness</groupId>
<artifactId>message-sdk</artifactId>
</dependency>
<dependency>
<groupId>com.jiejing.base</groupId>
<artifactId>permcenter-api</artifactId>
</dependency>
......
package com.jiejing.fitness.finance.service.pay.impl;
import static com.jiejing.fitness.enums.finance.BrandCashierTransStateEnum.PAY_FAIL;
import static com.jiejing.fitness.enums.finance.BrandCashierTransStateEnum.PAY_IN;
import static com.jiejing.fitness.enums.finance.BrandCashierTransStateEnum.PAY_SUCCESS;
import static com.jiejing.fitness.enums.finance.BrandCashierTransStateEnum.REFUND_FAIL;
import static com.jiejing.fitness.enums.finance.BrandCashierTransStateEnum.REFUND_SUCCESS;
......@@ -15,9 +12,10 @@ import com.jiejing.common.utils.collection.CollectionUtil;
import com.jiejing.common.utils.convert.BeanUtil;
import com.jiejing.common.utils.text.StringUtil;
import com.jiejing.common.utils.time.TimeUtil;
import com.jiejing.fitness.WeChatInstParam;
import com.jiejing.fitness.enums.auth.AuthDomainEnum;
import com.jiejing.fitness.enums.config.ObjectTypeEnum;
import com.jiejing.fitness.enums.finance.BrandCashierTransStateEnum;
import com.jiejing.fitness.enums.tenant.TenantTypeEnum;
import com.jiejing.fitness.event.finance.CashierEvent;
import com.jiejing.fitness.finance.api.merchant.vo.StudioMerchantCheckRefundVO;
import com.jiejing.fitness.finance.api.merchant.vo.StudioMerchantCheckRefundVO.CheckRefundCodeEnum;
......@@ -95,6 +93,9 @@ public class RefundServiceImpl implements RefundService {
@Resource
private ConfigRpcService configRpcService;
@Resource
private WeChatInstParam weChatInstParam;
@Resource(name = "financeThreadPool")
private Executor executor;
......@@ -201,6 +202,15 @@ public class RefundServiceImpl implements RefundService {
}
private String getTargetId(StudioCashierRecord record, JSONObject extra) {
Long memberId = extra.getLong("notice_member_id");
if (null != memberId) {
return memberId.toString();
} else {
return record.getBuyerPhone();
}
}
private void sendRefundMessageToMember(RefundEvent e, StudioCashierRecord record, String bizType) {
if (StringUtil.isBlank(e.getExtra())) {
return;
......@@ -214,17 +224,9 @@ public class RefundServiceImpl implements RefundService {
Boolean wx = configRpcService.getStudioBoolConfig(record.getStudioId(), "WECHAT_MEMBER_REFUND_SUCCESS");
Boolean sms = configRpcService.getStudioBoolConfig(record.getStudioId(), "SMS_MEMBER_REFUND_SUCCESS");
String targetId;
Long memberId = extra.getLong("notice_member_id");
List<MsgChannelEnum> channels = sms ? Lists.newArrayList(MsgChannelEnum.SMS) : Lists.newArrayList();
if (null != memberId) {
targetId = memberId.toString();
if (wx) {
channels.add(MsgChannelEnum.WE_CHAT);
}
} else {
targetId = record.getBuyerPhone();
}
String targetId = this.getTargetId(record, extra);
List<MsgChannelEnum> channels = this.getMsgChannels(extra, wx, sms);
if (CollectionUtil.isEmpty(channels)) {
log.info("all config is false {}, {}", wx, sms);
return;
......@@ -238,8 +240,9 @@ public class RefundServiceImpl implements RefundService {
paramMap.put("refundCommodity", record.getRemark());
paramMap.put("refundReason", record.getRemark());
paramMap.put("time", DateFormatUtils.format(e.getSuccessTime(), "yyyy-MM-dd HH:mm:ss"));
List<Map<String, Object>> paramList = Lists.newArrayList(paramMap);
List<Map<String, Object>> paramList =
channels.contains(MsgChannelEnum.WE_CHAT) ? weChatInstParam.appendWeChatParam(record.getStudioId(),
Lists.newArrayList(paramMap), TenantTypeEnum.STUDIO) : Lists.newArrayList(paramMap);
SendCommonMsgEvent event = new SendCommonMsgEvent();
event.setChannelEnums(channels);
event.setCovertTarget(true);
......@@ -250,6 +253,18 @@ public class RefundServiceImpl implements RefundService {
EventAgent.of(SendCommonMsgEvent.class).triggerEvent(event);
}
private List<MsgChannelEnum> getMsgChannels(JSONObject extra, Boolean wx,
Boolean sms) {
Long memberId = extra.getLong("notice_member_id");
List<MsgChannelEnum> channels = sms ? Lists.newArrayList(MsgChannelEnum.SMS) : Lists.newArrayList();
if (null != memberId) {
if (wx) {
channels.add(MsgChannelEnum.WE_CHAT);
}
}
return channels;
}
private void sendRefundMessage(RefundEvent e, StudioCashierRecord record, String bizType) {
List<Long> targetIds = this.getAdminIds(record.getStudioId());
if (CollectionUtil.isEmpty(targetIds)) {
......
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