Commit 5e1bb2a0 by baihe

updated

parent 2d0c494e
......@@ -77,11 +77,6 @@
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.jiejing.base</groupId>
<artifactId>message-api</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.jiejing.app</groupId>
<artifactId>promotion-api</artifactId>
<version>0.0.1-SNAPSHOT</version>
......@@ -89,7 +84,7 @@
<dependency>
<groupId>com.jiejing.fitness</groupId>
<artifactId>message-sdk</artifactId>
<version>0.0.2-SNAPSHOT</version>
<version>0.0.3-SNAPSHOT</version>
<exclusions>
<exclusion>
<groupId>com.jiejing.base</groupId>
......
......@@ -28,10 +28,6 @@
<artifactId>studio-api</artifactId>
</dependency>
<dependency>
<groupId>com.jiejing.base</groupId>
<artifactId>message-api</artifactId>
</dependency>
<dependency>
<groupId>com.jiejing.app</groupId>
<artifactId>promotion-api</artifactId>
</dependency>
......
......@@ -38,9 +38,10 @@ import com.jiejing.fitness.finance.service.rpc.MerchantRpcService;
import com.jiejing.fitness.finance.service.rpc.MessageRpcService;
import com.jiejing.fitness.finance.service.rpc.ResourceRpcService;
import com.jiejing.fitness.finance.service.rpc.StudioRpcService;
import com.jiejing.fitness.studio.FitVerifyCodeRpcService;
import com.jiejing.fitness.studio.StudioMsgRpcService;
import com.jiejing.fos.api.vo.ResourceInfoVO;
import com.jiejing.message.enums.MsgChannelEnum;
import com.jiejing.message.event.SendCommonMsgEvent;
import com.jiejing.msg.enums.MsgChannelEnum;
import com.jiejing.paycenter.api.merchant.request.ApplyMerchantRequest;
import com.jiejing.paycenter.common.enums.common.OpenStateEnums;
import com.jiejing.paycenter.common.enums.merchant.ResourceTypeEnums;
......@@ -127,6 +128,12 @@ public class StudioMerchantServiceImpl implements StudioMerchantService {
@Resource(name = "financeThreadPool")
private Executor executor;
@Resource
private FitVerifyCodeRpcService fitVerifyCodeRpcService;
@Resource
private StudioMsgRpcService studioMsgRpcService;
/**
* 第三方平台appId
*/
......@@ -689,35 +696,19 @@ public class StudioMerchantServiceImpl implements StudioMerchantService {
}
private void sendOpenFailMessage(StudioMerchantApplyVO apply) {
List<Map<String, Object>> paramList = new ArrayList<>(1);
Map<String, Object> paramMap = new HashMap<>(1);
paramMap.put("targetId", apply.getOperatorId());
paramMap.put("studioId", apply.getStudioId());
paramList.add(paramMap);
SendCommonMsgEvent event = new SendCommonMsgEvent();
event.setChannelEnums(Lists.newArrayList(MsgChannelEnum.SMS));
event.setCovertTarget(true);
event.setEventId(IdWorker.getId());
event.setSourceId(apply.getStudioId());
event.setBizType("OPEN_MERCHANT_FAIL");
event.setParams(paramList);
EventAgent.of(SendCommonMsgEvent.class).triggerEvent(event);
studioMsgRpcService.sendMessage(apply.getBrandId(), apply.getStudioId(), "OPEN_MERCHANT_FAIL",
Lists.newArrayList(MsgChannelEnum.SMS), "ADMIN", apply.getOperatorId(), paramMap);
}
private void sendOpenSuccessMessage(StudioMerchantApplyVO apply) {
List<Map<String, Object>> paramList = new ArrayList<>(1);
Map<String, Object> paramMap = new HashMap<>(1);
paramMap.put("targetId", apply.getOperatorId());
paramMap.put("studioId", apply.getStudioId());
paramList.add(paramMap);
SendCommonMsgEvent event = new SendCommonMsgEvent();
event.setChannelEnums(Lists.newArrayList(MsgChannelEnum.SMS));
event.setCovertTarget(true);
event.setEventId(IdWorker.getId());
event.setSourceId(apply.getStudioId());
event.setBizType("OPEN_MERCHANT_SUCCESS");
event.setParams(paramList);
EventAgent.of(SendCommonMsgEvent.class).triggerEvent(event);
studioMsgRpcService.sendMessage(apply.getBrandId(), apply.getStudioId(), "OPEN_MERCHANT_SUCCESS",
Lists.newArrayList(MsgChannelEnum.SMS), "ADMIN", apply.getOperatorId(), paramMap);
}
private void doOpenMerchantProcess(Long id) {
......
......@@ -3,12 +3,7 @@ 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 java.util.stream.Collectors.toList;
import com.alibaba.fastjson.JSON;
import com.alipay.api.AlipayApiException;
import com.alipay.api.DefaultAlipayClient;
import com.alipay.api.response.AlipaySystemOauthTokenResponse;
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
import com.google.common.collect.Lists;
import com.jiejing.common.exception.BizException;
......@@ -16,9 +11,7 @@ import com.jiejing.common.utils.collection.CollectionUtil;
import com.jiejing.common.utils.convert.BeanUtil;
import com.jiejing.fitness.enums.auth.AuthDomainEnum;
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.repository.entity.GlobalConfig;
import com.jiejing.fitness.finance.repository.entity.StudioCashierRecord;
import com.jiejing.fitness.finance.repository.entity.PartyToMerchant;
import com.jiejing.fitness.finance.repository.service.GlobalConfigRpService;
......@@ -27,7 +20,6 @@ import com.jiejing.fitness.finance.repository.service.PartyToMerchantRpService;
import com.jiejing.fitness.finance.service.config.AppUrlProperties;
import com.jiejing.fitness.finance.service.config.PayChannelProperties;
import com.jiejing.fitness.finance.service.enums.FinanceErrorEnums;
import com.jiejing.fitness.finance.service.enums.GlobalConfigEnums;
import com.jiejing.fitness.finance.service.pay.PayService;
import com.jiejing.fitness.finance.service.pay.convert.PayConvert;
import com.jiejing.fitness.finance.service.pay.params.AppPayParams;
......@@ -39,8 +31,8 @@ import com.jiejing.fitness.finance.service.rpc.PermissionRpcService;
import com.jiejing.fitness.finance.service.rpc.StudioRpcService;
import com.jiejing.fitness.finance.service.utils.FeeUtil;
import com.jiejing.fitness.finance.service.utils.MoneyUtil;
import com.jiejing.message.enums.MsgChannelEnum;
import com.jiejing.message.event.SendCommonMsgEvent;
import com.jiejing.fitness.studio.StudioMsgRpcService;
import com.jiejing.msg.enums.MsgChannelEnum;
import com.jiejing.paycenter.common.enums.common.PayChannelEnums;
import com.jiejing.paycenter.common.enums.pay.PayStateEnums;
import com.jiejing.paycenter.common.model.vo.MerchantVO;
......@@ -56,7 +48,6 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.Set;
import java.util.concurrent.Executor;
import java.util.stream.Collectors;
import javax.annotation.PostConstruct;
......@@ -113,6 +104,9 @@ public class PayServiceImpl implements PayService {
@Resource(name = "financeThreadPool")
private Executor executor;
@Resource
private StudioMsgRpcService studioMsgRpcService;
// private final Map<String, DefaultAlipayClient> aliClientMap = new HashMap<>();
@PostConstruct
......@@ -253,24 +247,13 @@ public class PayServiceImpl implements PayService {
return;
}
List<Map<String, Object>> paramList = targetIds.stream().map(targetId -> {
Map<String, Object> paramMap = new HashMap<>(1);
paramMap.put("targetId", targetId);
paramMap.put("studioId", studioId);
paramMap.put("buyerName", buyerName);
paramMap.put("amount", e.getAmount());
paramMap.put("appUrl", appUrlProperties.getTransDetail() + e.getTransNo());
return paramMap;
}).collect(Collectors.toList());
SendCommonMsgEvent event = new SendCommonMsgEvent();
event.setChannelEnums(Lists.newArrayList(MsgChannelEnum.APP_PUSH));
event.setCovertTarget(true);
event.setEventId(IdWorker.getId());
event.setSourceId(studioId);
event.setBizType("CASHIER_PAY_SUCCESS");
event.setParams(paramList);
EventAgent.of(SendCommonMsgEvent.class).triggerEvent(event);
studioMsgRpcService.sendMessageBatch(null, studioId, "CASHIER_PAY_SUCCESS",
Lists.newArrayList(MsgChannelEnum.APP_PUSH), "ADMIN", targetIds, paramMap, new HashMap<>(), null);
}
private boolean isPaying(BrandCashierTransStateEnum state) {
......
......@@ -12,10 +12,8 @@ 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.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;
......@@ -37,8 +35,8 @@ import com.jiejing.fitness.finance.service.rpc.PayRpcService;
import com.jiejing.fitness.finance.service.rpc.PermissionRpcService;
import com.jiejing.fitness.finance.service.rpc.StudioRpcService;
import com.jiejing.fitness.finance.service.utils.MoneyUtil;
import com.jiejing.message.enums.MsgChannelEnum;
import com.jiejing.message.event.SendCommonMsgEvent;
import com.jiejing.fitness.studio.StudioMsgRpcService;
import com.jiejing.msg.enums.MsgChannelEnum;
import com.jiejing.paycenter.api.pay.request.RefundPayRequest;
import com.jiejing.paycenter.common.enums.common.TransStateEnums;
import com.jiejing.paycenter.common.event.RefundEvent;
......@@ -94,7 +92,7 @@ public class RefundServiceImpl implements RefundService {
private FitConfigService fitConfigService;
@Resource
private WeChatInstParam weChatInstParam;
private StudioMsgRpcService studioMsgRpcService;
@Resource(name = "financeThreadPool")
private Executor executor;
......@@ -232,50 +230,25 @@ public class RefundServiceImpl implements RefundService {
Boolean wx = fitConfigService.getStudioBoolConfig(record.getStudioId(), "WECHAT_MEMBER_REFUND_SUCCESS");
Boolean sms = fitConfigService.getStudioBoolConfig(record.getStudioId(), "SMS_MEMBER_REFUND_SUCCESS");
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;
}
Map<String, Object> paramMap = new HashMap<>(1);
paramMap.put("targetId", targetId);
paramMap.put("studioId", record.getStudioId());
paramMap.put("name", record.getBuyerName());
paramMap.put("refundAmount", MoneyUtil.format(record.getTransAmount()));
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;
if (channels.contains(MsgChannelEnum.WE_CHAT)) {
paramList = weChatInstParam.appendWeChatParam(record.getStudioId(), Lists.newArrayList(paramMap),
TenantTypeEnum.STUDIO);
log.info("send member message wechat paramsMap {}", JSON.toJSONString(paramMap));
} else {
paramList = Lists.newArrayList(paramMap);
}
SendCommonMsgEvent event = new SendCommonMsgEvent();
event.setChannelEnums(channels);
event.setCovertTarget(true);
event.setEventId(IdWorker.getId());
event.setSourceId(record.getStudioId());
event.setBizType(bizType);
event.setParams(paramList);
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);
if (null != memberId && wx) {
studioMsgRpcService.sendMessage(record.getBrandId(), record.getStudioId(), bizType,
Lists.newArrayList(MsgChannelEnum.WX_MP), "MEMBER", memberId, paramMap);
}
if (sms) {
studioMsgRpcService.sendMessageToTargetKey(record.getBrandId(), record.getStudioId(), bizType,
Lists.newArrayList(MsgChannelEnum.SMS), "MEMBER", record.getBuyerPhone(), false, paramMap);
}
return channels;
}
private void sendRefundMessage(RefundEvent e, StudioCashierRecord record, String bizType) {
......@@ -283,24 +256,16 @@ public class RefundServiceImpl implements RefundService {
if (CollectionUtil.isEmpty(targetIds)) {
return;
}
List<Map<String, Object>> paramList = targetIds.stream().map(targetId -> {
Map<String, Object> paramMap = new HashMap<>(1);
paramMap.put("targetId", targetId);
paramMap.put("studioId", record.getStudioId());
paramMap.put("refunderName", record.getBuyerName());
paramMap.put("amount", MoneyUtil.format(record.getTransAmount()));
paramMap.put("appUrl", appUrlProperties.getTransDetail() + e.getTransNo());
return paramMap;
}).collect(Collectors.toList());
SendCommonMsgEvent event = new SendCommonMsgEvent();
event.setChannelEnums(Lists.newArrayList(MsgChannelEnum.APP_PUSH));
event.setCovertTarget(true);
event.setEventId(IdWorker.getId());
event.setSourceId(record.getStudioId());
event.setBizType(bizType);
event.setParams(paramList);
EventAgent.of(SendCommonMsgEvent.class).triggerEvent(event);
studioMsgRpcService.sendMessageBatch(record.getBrandId(), record.getStudioId(), bizType,
Lists.newArrayList(MsgChannelEnum.SMS), "ADMIN", targetIds, paramMap, new HashMap<>(), null
);
}
private List<Long> getAdminIds(Long studioId) {
......
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