机器人-支持钉钉群机器人

This commit is contained in:
2023-06-01 14:43:27 +08:00
parent 135d012473
commit 5ed64998d4
31 changed files with 279 additions and 199 deletions

View File

@@ -2,24 +2,20 @@ package com.accompany.admin.service.api;
import com.accompany.admin.mapper.api.MyApiAdminMapper;
import com.accompany.admin.model.GiftSendRecordMgr;
import com.accompany.business.model.Gift;
import com.accompany.business.model.Headwear;
import com.accompany.business.mybatismapper.activity.LuckySeaActMapper;
import com.accompany.business.param.UserBackpackParam;
import com.accompany.business.param.neteasepush.NeteaseSendMsgBatchParam;
import com.accompany.business.service.SendSysMsgService;
import com.accompany.business.service.activities.ActNewYearFireworkService;
import com.accompany.business.service.activities.valentineCp.ActValentineCpService;
import com.accompany.business.service.clan.ClanGoldDayFlowService;
import com.accompany.business.service.gift.GiftService;
import com.accompany.business.service.headwear.HeadwearService;
import com.accompany.business.service.push.EnterpriseWechatPushService;
import com.accompany.core.service.message.MessageRobotPushService;
import com.accompany.business.service.region.RegionService;
import com.accompany.business.service.room.RoomReciveRankingService;
import com.accompany.business.service.room.RoomSendRankingService;
import com.accompany.business.service.user.UserBackpackService;
import com.accompany.business.service.user.UsersService;
import com.accompany.common.config.SystemConfig;
import com.accompany.common.config.WebSecurityConfig;
import com.accompany.common.redis.RedisKey;
import com.accompany.common.status.BusiStatus;
@@ -75,7 +71,7 @@ public class MyApiService {
@Autowired
private LuckySeaActMapper luckySeaActMapper;
@Autowired
private EnterpriseWechatPushService enterpriseWechatPushService;
private MessageRobotPushService messageRobotPushService;
@Autowired
private WebSecurityConfig webSecurityConfig;
@Autowired

View File

@@ -2,9 +2,11 @@ package com.accompany.admin.service.push;
import com.accompany.admin.model.AdminUser;
import com.accompany.admin.service.system.AdminUserService;
import com.accompany.common.push.MarkdownMessage;
import com.accompany.business.service.push.EnterpriseWechatPushService;
import com.accompany.business.service.user.UsersService;
import com.accompany.common.config.WebSecurityConfig;
import com.accompany.common.push.MarkdownMessage;
import com.accompany.common.utils.EnvComponent;
import com.accompany.core.service.message.MessageRobotPushService;
import com.accompany.core.model.Users;
import org.apache.logging.log4j.util.Strings;
import org.springframework.beans.factory.annotation.Autowired;
@@ -14,16 +16,19 @@ import java.util.List;
import java.util.stream.Collectors;
@Service
public class EnterpriseWeChatPushAdminService extends EnterpriseWechatPushService {
public class EnterpriseWeChatPushAdminService extends MessageRobotPushService {
@Autowired
private AdminUserService adminUserService;
@Autowired
private UsersService usersService;
@Autowired
private WebSecurityConfig webSecurityConfig;
@Autowired
private EnvComponent envComponent;
public void pushMessage(List<String> erbanNos, String title, int adminId, Long amount) {
// 测试环境不推送
String env = applicationContext.getEnvironment().getActiveProfiles()[0];
logger.info("spring.profiles.active, {}", env);
if (!env.equals("prod")) {
if (envComponent.getDevOrNativeEnv()) {
return;
}

View File

@@ -133,4 +133,17 @@ public class MyApiController {
myApiService.send520Headwear(dateTime, headwearId, canUpdate);
return new BusiResult<>(BusiStatus.SUCCESS);
}
@RequestMapping("/a")
@ResponseBody
public BusiResult<Void> a(Long roomId, String dateTime, Integer headwearId, Boolean canUpdate) {
if (null == roomId || !roomId.equals(603L)){
throw new ServiceException(BusiStatus.PARAMERROR);
}
if (!StringUtils.hasText(dateTime) || null == headwearId){
throw new ServiceException(BusiStatus.PARAMERROR);
}
//myApiService.send520Headwear(dateTime, headwearId, canUpdate);
return new BusiResult<>(BusiStatus.SUCCESS);
}
}

View File

@@ -25,8 +25,8 @@ public class WebSecurityConfig {
private String userRegisterSuccessNotifyUrl;
private String userRegisterSuccessNotifyKey;
// 企业微信推送key
private String enterpriseWechatPushKey;
// 充值异常
private String chargeNotifyWechatPushKey;
// 后台赠送
private String officialEnterpriseWechatPushKey;
// 活动通知企业微信推送key
@@ -37,6 +37,8 @@ public class WebSecurityConfig {
private String specialEnterpriseWechatPushKey;
private String seizeTreasureWechatPushKey;
private String findLoveDrawWechatPushKey;
// 常驻活动
private String openBoxWechatPushKey;
public void setJwtWebKey(String jwtWebKey) {

View File

@@ -6,12 +6,12 @@ import org.springframework.stereotype.Component;
@Slf4j
@Component
public class EnterpriseWechatPush {
public class DingDingPush {
private static String URL_PREFIX = "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=";
private static String URL_PREFIX = "https://oapi.dingtalk.com/robot/send?access_token=";
// 根据key 推送到相关的企业微信群
public void pushMessageByKey(String key,MarkdownMessage message) {
public void pushMessageByKey(String key, MarkdownMessage message) {
String url = URL_PREFIX + key;
log.info("EnterpriseWeChatPushService url: {}", url);
String content = message.toJsonString();

View File

@@ -16,6 +16,14 @@ public class MarkdownMessage {
private List<String> items = new ArrayList<String>();
public List<String> getItems() {
return items;
}
public void setItems(List<String> items) {
this.items = items;
}
public void add(String text) {
items.add(text);
}

View File

@@ -0,0 +1,35 @@
package com.accompany.core.service.message;
import com.accompany.common.push.MarkdownMessage;
import com.alibaba.fastjson.JSON;
import java.util.HashMap;
import java.util.Map;
public class DingDingRobot implements PlatformMessageRobot {
private static final String URL_PREFIX = "https://oapi.dingtalk.com/robot/send?access_token=";
@Override
public String getWebhookUrl(String key) {
return URL_PREFIX + key;
}
@Override
public String getContent(MarkdownMessage message) {
Map<String, Object> result = new HashMap<>();
result.put("msgtype", "markdown");
Map<String, Object> markdown = new HashMap<>();
StringBuilder markdownText = new StringBuilder();
for (String item : message.getItems()) {
markdownText.append(item).append("\n");
}
markdown.put("title", markdownText.toString());
markdown.put("text", markdownText.toString());
result.put("markdown", markdown);
return JSON.toJSONString(result);
}
}

View File

@@ -0,0 +1,37 @@
package com.accompany.core.service.message;
import com.accompany.common.push.MarkdownMessage;
import com.alibaba.fastjson.JSON;
import java.util.HashMap;
import java.util.Map;
/**
* 企业微信通知
*/
public class EnterpriseWechatRobot implements PlatformMessageRobot {
private static final String URL_PREFIX = "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=";
@Override
public String getWebhookUrl(String key) {
return URL_PREFIX + key;
}
@Override
public String getContent(MarkdownMessage message) {
Map<String, Object> result = new HashMap<>();
result.put("msgtype", "markdown");
Map<String, Object> markdown = new HashMap<>();
StringBuilder markdownText = new StringBuilder();
for (String item : message.getItems()) {
markdownText.append(item).append("\n");
}
markdown.put("content", markdownText.toString());
result.put("markdown", markdown);
return JSON.toJSONString(result);
}
}

View File

@@ -0,0 +1,45 @@
package com.accompany.core.service.message;
import com.accompany.common.push.MarkdownMessage;
import com.accompany.common.utils.HttpUtils;
import com.accompany.core.service.base.BaseService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
/**
* 企业微信通知
*/
@Service
public class MessageRobotPushService extends BaseService {
// 根据key 推送到相关的企业微信群
public void pushMessageByKey(String key,MarkdownMessage message) {
pushMessageByKey(key, message, false);
}
// 根据key 推送到相关的企业微信群
public void pushMessageByKey(String key, MarkdownMessage message, boolean isDingDing) {
if (StringUtils.isBlank(key)){
return;
}
PlatformMessageRobot robot = getRobot(isDingDing);
String url = robot.getWebhookUrl(key);
logger.info("EnterpriseWeChatPushService url: {}", url);
String content = robot.getContent(message);
logger.info("EnterpriseWeChatPushService content: {}", content);
try {
String response = HttpUtils.doPostForJson(url, content);
logger.info("EnterpriseWeChatPushService response: {}", response);
} catch (Exception e) {
logger.error("EnterpriseWeChatPushService error, {}", e.toString());
}
}
private PlatformMessageRobot getRobot(boolean isDingDing) {
if (isDingDing) {
return new DingDingRobot();
}
return new EnterpriseWechatRobot();
}
}

View File

@@ -0,0 +1,11 @@
package com.accompany.core.service.message;
import com.accompany.common.push.MarkdownMessage;
public interface PlatformMessageRobot {
String getWebhookUrl(String key);
String getContent(MarkdownMessage message);
}

View File

@@ -1,11 +1,9 @@
package com.accompany.payment.iospay;
import com.accompany.common.config.SystemConfig;
import com.accompany.common.config.WebSecurityConfig;
import com.accompany.common.constant.AppEnum;
import com.accompany.common.constant.Constant;
import com.accompany.common.device.DeviceInfo;
import com.accompany.common.push.EnterpriseWechatPush;
import com.accompany.common.push.MarkdownMessage;
import com.accompany.common.redis.RedisKey;
import com.accompany.common.result.BusiResult;
@@ -16,13 +14,13 @@ import com.accompany.core.exception.ServiceException;
import com.accompany.core.model.Users;
import com.accompany.core.service.SysConfService;
import com.accompany.core.service.base.BaseService;
import com.accompany.core.service.message.MessageRobotPushService;
import com.accompany.core.service.user.UsersBaseService;
import com.accompany.payment.model.ChargeProd;
import com.accompany.payment.model.ChargeRecord;
import com.accompany.payment.model.UserVipRecord;
import com.accompany.payment.service.*;
import com.accompany.payment.vo.VipOpenParams;
import com.alibaba.fastjson.JSONObject;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
@@ -50,7 +48,7 @@ public class IOSPayPlaService extends BaseService {
@Autowired
private UserVipRecordService userVipRecordService;
@Autowired
private EnterpriseWechatPush enterpriseWechatPush;
private MessageRobotPushService messageRobotPushService;
public BusiResult<RecordIdVo> placeOrder(Long uid, String chargeProdId, String clientIp, String deviceId, DeviceInfo deviceInfo) {
@@ -231,6 +229,6 @@ public class IOSPayPlaService extends BaseService {
msg.add(MarkdownMessage.getReferenceText("用户累计充值额:"+ userToatlAmount + " ,个人累计限额配置:" + userToatlLimit));
msg.add(MarkdownMessage.getReferenceText("发起充值时间:" + DateTimeUtil.getCurrentDateTime()));
String key = SystemConfig.ChargeNotify.iosPayUserToatlRobotKey;
enterpriseWechatPush.pushMessageByKey(key, msg);
messageRobotPushService.pushMessageByKey(key, msg);
}
}

View File

@@ -8,7 +8,7 @@ import com.accompany.business.param.neteasepush.NeteaseSendMsgBatchParam;
import com.accompany.business.param.neteasepush.NeteaseSendMsgParam;
import com.accompany.business.param.neteasepush.Payload;
import com.accompany.business.service.SendSysMsgService;
import com.accompany.business.service.push.EnterpriseWechatPushService;
import com.accompany.core.service.message.MessageRobotPushService;
import com.accompany.common.config.SystemConfig;
import com.accompany.common.config.WebSecurityConfig;
import com.accompany.common.constant.Attach;
@@ -53,7 +53,7 @@ public class CustomerConversationListener implements ApplicationListener<Custome
@Autowired
private EnvComponent envComponent;
@Autowired
private EnterpriseWechatPushService enterpriseWechatPushService;
private MessageRobotPushService messageRobotPushService;
@Autowired
private WebSecurityConfig webSecurityConfig;

View File

@@ -4,7 +4,7 @@ import com.accompany.business.dto.SendGiftWarningDto;
import com.accompany.business.event.GiftMessageEvent;
import com.accompany.business.message.GiftMessage;
import com.accompany.business.mybatismapper.GiftSendRecordMapperExpand;
import com.accompany.business.service.push.EnterpriseWechatPushService;
import com.accompany.core.service.message.MessageRobotPushService;
import com.accompany.business.service.user.UsersService;
import com.accompany.common.config.WebSecurityConfig;
import com.accompany.common.constant.Constant;
@@ -30,7 +30,7 @@ public class GiftWarningListener implements ApplicationListener<GiftMessageEvent
@Autowired
private WebSecurityConfig webSecurityConfig;
@Autowired
private EnterpriseWechatPushService enterpriseWechatPushService;
private MessageRobotPushService messageRobotPushService;
@Autowired
private SysConfService sysConfService;
@Autowired
@@ -81,7 +81,7 @@ public class GiftWarningListener implements ApplicationListener<GiftMessageEvent
msg.add(MarkdownMessage.getReferenceText("近24小时内送礼总额钻石:" + totalDiamondNum.toPlainString()));
msg.add(MarkdownMessage.getReferenceText("请判断是否需要介入引导或重视"));
String key = webSecurityConfig.getSpecialEnterpriseWechatPushKey();
enterpriseWechatPushService.pushMessageByKey(key,msg);
messageRobotPushService.pushMessageByKey(key,msg);
}
private SendGiftWarningDto getConfig() {

View File

@@ -2,7 +2,7 @@ package com.accompany.business.event.listener;
import com.accompany.business.dto.GoogleChargeWarningDto;
import com.accompany.business.event.ChargeSuccessEvent;
import com.accompany.business.service.push.EnterpriseWechatPushService;
import com.accompany.core.service.message.MessageRobotPushService;
import com.accompany.business.service.user.UsersService;
import com.accompany.common.config.WebSecurityConfig;
import com.accompany.common.constant.Constant;
@@ -36,7 +36,7 @@ public class GoogleChargeWarningListener implements ApplicationListener<ChargeSu
@Autowired
private WebSecurityConfig webSecurityConfig;
@Autowired
private EnterpriseWechatPushService enterpriseWechatPushService;
private MessageRobotPushService messageRobotPushService;
@Autowired
private SysConfService sysConfService;
@Autowired
@@ -89,7 +89,7 @@ public class GoogleChargeWarningListener implements ApplicationListener<ChargeSu
msg.add(MarkdownMessage.getReferenceText("七日充值笔数" + sevenTimes));
msg.add(MarkdownMessage.getReferenceText("请判断是否需要介入引导或重视"));
String key = webSecurityConfig.getSpecialEnterpriseWechatPushKey();
enterpriseWechatPushService.pushMessageByKey(key,msg);
messageRobotPushService.pushMessageByKey(key,msg);
}
private GoogleChargeWarningDto getConfig() {

View File

@@ -2,7 +2,7 @@ package com.accompany.business.event.listener.charge;
import com.accompany.common.push.MarkdownMessage;
import com.accompany.business.mybatismapper.ChargeNotifyMapper;
import com.accompany.business.service.push.EnterpriseWechatPushService;
import com.accompany.core.service.message.MessageRobotPushService;
import com.accompany.business.util.ChargeNotifyUtil;
import com.accompany.business.vo.ChargeNotifyVO;
import com.accompany.common.config.SystemConfig;
@@ -39,7 +39,7 @@ public class ChargeNotifyListener implements ApplicationListener<ChargeEvent> {
@Autowired
private RedissonClient redissonClient;
@Autowired
private EnterpriseWechatPushService enterpriseWechatPushService;
private MessageRobotPushService messageRobotPushService;
@Autowired
private ChargeNotifyMapper chargeNotifyMapper;
@Autowired
@@ -135,7 +135,7 @@ public class ChargeNotifyListener implements ApplicationListener<ChargeEvent> {
msg.add(MarkdownMessage.getReferenceText(chargeNotifyUtil.getChannelName(vo.getChargeChannel())));
String appName = chargeNotifyUtil.getAppName(vo.getChargeApp());
msg.add(MarkdownMessage.getReferenceText("" + appName + "" + ""+ allChannelNotify.getChargeNum() +"次支付失败率≧"+ allChannelNotify.getFailRate() * 100 +"%,请关注"));
enterpriseWechatPushService.pushMessageByKey(SystemConfig.ChargeNotify.allChannelRobotKey, msg);
messageRobotPushService.pushMessageByKey(SystemConfig.ChargeNotify.allChannelRobotKey, msg);
}

View File

@@ -12,7 +12,7 @@ package com.accompany.business.event.listener.charge;
import com.accompany.common.push.MarkdownMessage;
import com.accompany.business.mybatismapper.ChargeNotifyMapper;
import com.accompany.business.service.push.EnterpriseWechatPushService;
import com.accompany.core.service.message.MessageRobotPushService;
import com.accompany.business.service.user.UsersService;
import com.accompany.business.util.ChargeNotifyUtil;
import com.accompany.business.vo.ChargeNotifyVO;
@@ -49,7 +49,7 @@ public class ChargeSinglePersonChannelNotifyListener implements ApplicationListe
@Autowired
private ChargeNotifyMapper chargeNotifyMapper;
@Autowired
private EnterpriseWechatPushService enterpriseWechatPushService;
private MessageRobotPushService messageRobotPushService;
@Autowired
private UsersService usersService;
@@ -93,6 +93,6 @@ public class ChargeSinglePersonChannelNotifyListener implements ApplicationListe
String content = "用户:" + users.getNick() + "(" + users.getErbanNo() + ")在【" + chargeNotifyUtil.getChannelName(vo.getChargeChannel()) + "】前"
+ singlePersonChannelNotify.getChargeNum() + "次发起充值中有" + vo.getFailNum() + "次未成功支付,清判断是否前往查看";
msg.add(MarkdownMessage.getReferenceText(content));
enterpriseWechatPushService.pushMessageByKey(SystemConfig.ChargeNotify.singlePersonChannelRobotKey,msg);
messageRobotPushService.pushMessageByKey(SystemConfig.ChargeNotify.singlePersonChannelRobotKey,msg);
}
}

View File

@@ -11,7 +11,7 @@
package com.accompany.business.event.listener.gamemanage;
import com.accompany.common.push.MarkdownMessage;
import com.accompany.business.service.push.EnterpriseWechatPushService;
import com.accompany.core.service.message.MessageRobotPushService;
import com.accompany.common.config.WebSecurityConfig;
import com.accompany.common.constant.Constant;
import com.accompany.common.redis.RedisKey;
@@ -52,7 +52,7 @@ public class GameQuotaNotifyListener implements ApplicationListener<QuotaSuccess
@Autowired
private GameManageInfoService gameManageInfoService;
@Autowired
private EnterpriseWechatPushService enterpriseWechatPushService;
private MessageRobotPushService messageRobotPushService;
@Autowired
private WebSecurityConfig webSecurityConfig;
@Autowired
@@ -130,7 +130,7 @@ public class GameQuotaNotifyListener implements ApplicationListener<QuotaSuccess
msg.add(MarkdownMessage.getReferenceText("本场比赛开始进场时间:" + DateTimeUtil.convertDate(info.getEnterStartTime())));
msg.add(MarkdownMessage.getReferenceText("本场比赛开始比赛时间:" + DateTimeUtil.convertDate(info.getMatchStartTime())));
msg.add(MarkdownMessage.getReferenceText("请务必在【" + DateTimeUtil.convertDate(info.getEnterStartTime()) + "】之前完成上传房间链接操作"));
enterpriseWechatPushService.pushMessage(msg, key);
messageRobotPushService.pushMessageByKey(key, msg);
}
/**
@@ -147,6 +147,6 @@ public class GameQuotaNotifyListener implements ApplicationListener<QuotaSuccess
msg.add(MarkdownMessage.getReferenceText("赛事类型: 快速赛"));
msg.add(MarkdownMessage.getReferenceText("名称: " + info.getTitle()));
msg.add(MarkdownMessage.getReferenceText("当前已报名: " + hasQuotaCount + "人(" + info.getMinQuota() + "人开赛),可以开始准备房间并上传房间链接"));
enterpriseWechatPushService.pushMessage(msg, key);
messageRobotPushService.pushMessageByKey(key, msg);
}
}

View File

@@ -11,7 +11,7 @@
package com.accompany.business.event.listener.gamemanage;
import com.accompany.business.service.gamemange.GameManageBizService;
import com.accompany.business.service.push.EnterpriseWechatPushService;
import com.accompany.core.service.message.MessageRobotPushService;
import com.accompany.common.config.WebSecurityConfig;
import com.accompany.common.constant.Constant;
import com.accompany.common.redis.RedisKey;
@@ -55,7 +55,7 @@ public class QuickGameQuotaListener implements ApplicationListener<QuotaSuccessE
@Autowired
private GameManageBizService gameManageBizService;
@Autowired
private EnterpriseWechatPushService enterpriseWechatPushService;
private MessageRobotPushService messageRobotPushService;
@Autowired
private WebSecurityConfig webSecurityConfig;
@Autowired

View File

@@ -7,7 +7,7 @@ import com.accompany.business.event.linearlypool.LinearlyPoolPrizeEvent;
import com.accompany.business.message.BoxPrizeEntity;
import com.accompany.business.message.linearlypool.LinearlyPoolPrizeMessage;
import com.accompany.business.service.linearlypool.LinearlyPrizePoolService;
import com.accompany.business.service.push.EnterpriseWechatPushService;
import com.accompany.core.service.message.MessageRobotPushService;
import com.accompany.business.service.user.UsersService;
import com.accompany.common.config.WebSecurityConfig;
import com.accompany.common.constant.AppEnum;
@@ -39,7 +39,7 @@ public class LinearlyPoolPrizeWxNotifyListener implements ApplicationListener<Li
@Autowired
private UsersService usersService;
@Autowired
private EnterpriseWechatPushService enterpriseWechatPushService;
private MessageRobotPushService messageRobotPushService;
@Autowired
private WebSecurityConfig webSecurityConfig;
@@ -73,7 +73,7 @@ public class LinearlyPoolPrizeWxNotifyListener implements ApplicationListener<Li
msg.add(MarkdownMessage.getReferenceText(new StringBuilder("奖品: ").append(prizes).toString()));
msg.add(MarkdownMessage.getReferenceText(new StringBuilder("获得者: ").append(user.getNick()).append("(").append(user.getErbanNo()).append(")").toString()));
msg.add(MarkdownMessage.getReferenceText(new StringBuilder("抽奖时间: ").append(DateTimeUtil.convertDate(new Date(drawTime))).toString()));
enterpriseWechatPushService.pushMessageByKey(webSecurityConfig.getActivityEnterpriseWechatPushKey(), msg);
messageRobotPushService.pushMessageByKey(webSecurityConfig.getActivityEnterpriseWechatPushKey(), msg);
}
}

View File

@@ -17,7 +17,7 @@ import com.accompany.business.model.activity.luckysea.LuckySeaActInfo;
import com.accompany.business.model.activity.luckysea.LuckySeaDrawItem;
import com.accompany.business.mybatismapper.activity.LuckySeaPreWarningMapper;
import com.accompany.business.service.activities.luckySea.LuckySeaActInfoService;
import com.accompany.business.service.push.EnterpriseWechatPushService;
import com.accompany.core.service.message.MessageRobotPushService;
import com.accompany.common.config.WebSecurityConfig;
import com.accompany.common.constant.Constant;
import com.accompany.common.push.MarkdownMessage;
@@ -61,7 +61,7 @@ public class LuckySeaPreWarningService {
private LuckySeaActInfoService actInfoService;
@Autowired
private EnterpriseWechatPushService enterpriseWechatPushService;
private MessageRobotPushService messageRobotPushService;
private static final String START_TIME_KEY = "startTime";
private static final String END_TIME_KEY = "endTime";
@@ -125,7 +125,7 @@ public class LuckySeaPreWarningService {
msg.add(MarkdownMessage.getReferenceText("当前库存数:" + stockStr));
msg.add(MarkdownMessage.getReferenceText("请判断是否需要前往后台查看"));
String key = webSecurityConfig.getLuckySeaEnterpriseWechatPushKey();
enterpriseWechatPushService.pushMessageByKey(key,msg);
messageRobotPushService.pushMessageByKey(key,msg);
}
/**
@@ -211,7 +211,7 @@ public class LuckySeaPreWarningService {
msg.add(MarkdownMessage.getReferenceText("游戏执行轮数:" + broadCastStat.getRoundNum()));
msg.add(MarkdownMessage.getReferenceText("当前库存数:" + stockStr));
String key = webSecurityConfig.getLuckySeaEnterpriseWechatPushKey();
enterpriseWechatPushService.pushMessageByKey(key,msg);
messageRobotPushService.pushMessageByKey(key,msg);
}
@Async
@@ -261,6 +261,6 @@ public class LuckySeaPreWarningService {
msg.add(MarkdownMessage.getReferenceText("用户产出总值:" + broadCastStat.getGoldOut()));
msg.add(MarkdownMessage.getReferenceText("当前库存数:" + stockStr));
String key = webSecurityConfig.getLuckySeaEnterpriseWechatPushKey();
enterpriseWechatPushService.pushMessageByKey(key,msg);
messageRobotPushService.pushMessageByKey(key,msg);
}
}

View File

@@ -14,7 +14,7 @@ import com.accompany.business.service.gift.GiftService;
import com.accompany.business.service.headwear.HeadwearService;
import com.accompany.business.service.nameplate.UserNameplateService;
import com.accompany.business.service.purse.UserPurseService;
import com.accompany.business.service.push.EnterpriseWechatPushService;
import com.accompany.core.service.message.MessageRobotPushService;
import com.accompany.business.service.record.BillRecordService;
import com.accompany.business.service.user.UserBackpackService;
import com.accompany.business.service.user.UsersService;
@@ -91,7 +91,7 @@ public class ActNewYearFireworkService implements InitializingBean, ApplicationL
@Autowired
private UserInfoCardService userInfoCardService;
@Autowired
private EnterpriseWechatPushService enterpriseWechatPushService;
private MessageRobotPushService messageRobotPushService;
@Autowired
private WebSecurityConfig webSecurityConfig;
@Autowired
@@ -303,7 +303,7 @@ public class ActNewYearFireworkService implements InitializingBean, ApplicationL
msg.add(MarkdownMessage.getHeaderText(3, "2023新年烟花活动产出每日产出预警"));
msg.add(MarkdownMessage.getReferenceText(String.format(" %d %s 在第 %d 个池 抽出 %s 被触发的每日产出数量限制 %d 个, 目前已经产出 %s",
users.getErbanNo(), users.getNick(), type, null != drawGift? drawGift.getGiftName(): cacheKey, dayLimit, todayOutputNumMap)));
enterpriseWechatPushService.pushMessageByKey(webSecurityConfig.getActivityEnterpriseWechatPushKey(), msg);
messageRobotPushService.pushMessageByKey(webSecurityConfig.getActivityEnterpriseWechatPushKey(), msg);
});
}
@@ -330,7 +330,7 @@ public class ActNewYearFireworkService implements InitializingBean, ApplicationL
msg.add(MarkdownMessage.getHeaderText(3, "2023新年烟花活动产出每日产出预警"));
msg.add(MarkdownMessage.getReferenceText(String.format(" %d %s 在第 %d 个池 抽出 %s 触发每日产出数量限制 %d 个的 百分之70 目前已经产出 %s",
users.getErbanNo(), users.getNick(), type, null != drawGift? drawGift.getGiftName(): cacheKey, dayLimit, todayOutputNumMap)));
enterpriseWechatPushService.pushMessageByKey(webSecurityConfig.getActivityEnterpriseWechatPushKey(), msg);
messageRobotPushService.pushMessageByKey(webSecurityConfig.getActivityEnterpriseWechatPushKey(), msg);
});
}
} else if (ratio >= 0.5d) {
@@ -355,7 +355,7 @@ public class ActNewYearFireworkService implements InitializingBean, ApplicationL
msg.add(MarkdownMessage.getHeaderText(3, "2023新年烟花活动产出每日产出预警"));
msg.add(MarkdownMessage.getReferenceText(String.format(" %d %s 在第 %d 个池 抽出 %s 触发每日产出数量限制 %d 个的 百分之50 目前已经产出 %s",
users.getErbanNo(), users.getNick(), type, null != drawGift? drawGift.getGiftName(): cacheKey, dayLimit, todayOutputNumMap)));
enterpriseWechatPushService.pushMessageByKey(webSecurityConfig.getActivityEnterpriseWechatPushKey(), msg);
messageRobotPushService.pushMessageByKey(webSecurityConfig.getActivityEnterpriseWechatPushKey(), msg);
});
}
}

View File

@@ -11,7 +11,7 @@ import com.accompany.business.mybatismapper.activity.ActValentineCpMapper;
import com.accompany.business.param.UserBackpackParam;
import com.accompany.business.service.gift.GiftService;
import com.accompany.business.service.purse.UserPurseService;
import com.accompany.business.service.push.EnterpriseWechatPushService;
import com.accompany.core.service.message.MessageRobotPushService;
import com.accompany.business.service.record.BillRecordService;
import com.accompany.business.service.user.UserBackpackService;
import com.accompany.business.service.user.UsersService;
@@ -272,8 +272,8 @@ public class ActValentineCpBuyService {
getConfig().getOutputLimit(), globalOutput, userOutput)));
WebSecurityConfig webSecurityConfig = SpringContextHolder.getBean(WebSecurityConfig.class);
EnterpriseWechatPushService enterpriseWechatPushService = SpringContextHolder.getBean(EnterpriseWechatPushService.class);
enterpriseWechatPushService.pushMessageByKey(webSecurityConfig.getActivityEnterpriseWechatPushKey(), msg);
MessageRobotPushService messageRobotPushService = SpringContextHolder.getBean(MessageRobotPushService.class);
messageRobotPushService.pushMessageByKey(webSecurityConfig.getActivityEnterpriseWechatPushKey(), msg);
});
}

View File

@@ -5,10 +5,14 @@ import com.accompany.business.constant.PrizeLevelEnum;
import com.accompany.business.event.box.BoxPrizeEvent;
import com.accompany.business.message.BoxPrizeEntity;
import com.accompany.business.message.BoxPrizeMessage;
import com.accompany.business.model.Prize;
import com.accompany.business.model.box.NormalBigPrizeConfig;
import com.accompany.business.param.neteasepush.Payload;
import com.accompany.business.service.ErBanNetEaseService;
import com.accompany.business.service.push.EnterpriseWechatPushService;
import com.accompany.business.util.SpringContextHolder;
import com.accompany.common.config.WebSecurityConfig;
import com.accompany.common.push.MarkdownMessage;
import com.accompany.core.service.message.MessageRobotPushService;
import com.accompany.business.service.room.RoomQueryService;
import com.accompany.business.service.room.RoomService;
import com.accompany.business.service.user.UsersService;
@@ -34,6 +38,7 @@ import com.google.gson.Gson;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationContext;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@@ -73,7 +78,9 @@ public class BoxPrizeMessageService {
@Autowired
private NormalBigPrizeService normalBigPrizeService;
@Autowired
private EnterpriseWechatPushService enterpriseWechatPushService;
private MessageRobotPushService messageRobotPushService;
@Autowired
private WebSecurityConfig webSecurityConfig;
/**
* 一次性批量发送的房间数量
@@ -138,7 +145,8 @@ public class BoxPrizeMessageService {
if (normalBigPrizeConfig != null && normalBigPrizeConfig.getPrizeId().equals(entity.getPrizeId())) {
// 重置特殊礼物次数
normalBigPrizeService.resetNormalBigPrizeCount(normalBigPrizeConfig);
enterpriseWechatPushService.pushBigBoxPrizeMessage(normalBigPrizeConfig, entity.getPrizeId(), uid);
SpringContextHolder.getBean(BoxPrizeMessageService.class).pushBigBoxPrizeMessage(normalBigPrizeConfig, entity.getPrizeId(), uid);
}
} catch (Exception e) {
log.error("failed to send prize msg, roomUid={}, uid={}, entity={}", roomUid, uid, JSONObject.toJSONString(entity), e);
@@ -146,6 +154,35 @@ public class BoxPrizeMessageService {
return result;
}
@Async
public void pushBigBoxPrizeMessage(NormalBigPrizeConfig normalBigPrizeConfig, Integer prizeId, Long uid) {
String env = "";
if (normalBigPrizeConfig.getNotify() == 0) {
return;
} else if (normalBigPrizeConfig.getNotify() == 1) {
// 测试环境不推送
env = applicationContext.getEnvironment().getActiveProfiles()[0];
if (!env.equals("prod")) {
return;
}
}
Prize prize = SpringContextHolder.getBean(PrizeService.class).getPrizeById(prizeId);
String userInfo = "";
Users users = usersService.getUsersByUid(uid);
if (users != null) {
userInfo = String.format("%s[%s]", users.getNick(), users.getErbanNo());
}
MarkdownMessage msg = new MarkdownMessage();
msg.add(MarkdownMessage.getHeaderText(3, "许愿池特殊礼物通知" + env));
msg.add(MarkdownMessage.getReferenceText("APP应用 平台"));
msg.add(MarkdownMessage.getReferenceText("奖品: " + prize.getPrizeName()));
msg.add(MarkdownMessage.getReferenceText("获得者: " + userInfo));
msg.add(MarkdownMessage.getReferenceText("时间:" + DateTimeUtil.getCurrentDateTime()));
// 发送消息
messageRobotPushService.pushMessageByKey(webSecurityConfig.getOpenBoxWechatPushKey(), msg);
}
private long chooseMeg(boolean publicSend, final Long roomUid, final Long uid, final BoxPrizeEntity entity, final Byte boxType, final Boolean msgSwitch) throws Exception {
long result = 0;
BoxPrizePushMsg msg = buildPrizePushMsg(roomUid, uid, entity, boxType);

View File

@@ -16,7 +16,7 @@ import com.accompany.business.dto.callbattle.ActCallBattlePreWarningConfig;
import com.accompany.common.push.MarkdownMessage;
import com.accompany.business.mybatismapper.callbattle.ActCallBattlePreWarningMapper;
import com.accompany.business.service.callbattle.impl.ActCallBattleBizServiceImpl;
import com.accompany.business.service.push.EnterpriseWechatPushService;
import com.accompany.core.service.message.MessageRobotPushService;
import com.accompany.common.config.WebSecurityConfig;
import com.accompany.common.constant.Constant;
import com.accompany.common.utils.DateTimeUtil;
@@ -53,7 +53,7 @@ public class ActCallBattlePreWarningService {
@Autowired
private ActCallBattlePreWarningMapper actCallBattlePreWarningMapper;
@Autowired
private EnterpriseWechatPushService enterpriseWechatPushService;
private MessageRobotPushService messageRobotPushService;
@Autowired
private WebSecurityConfig webSecurityConfig;
@Autowired
@@ -134,7 +134,7 @@ public class ActCallBattlePreWarningService {
msg.add(MarkdownMessage.getReferenceText(""+ roundNum + "轮产出:" + stat.getGoldOut()));
msg.add(MarkdownMessage.getReferenceText("请判断是否需要前往后台查看"));
String key = webSecurityConfig.getActivityEnterpriseWechatPushKey();
enterpriseWechatPushService.pushMessageByKey(key, msg);
messageRobotPushService.pushMessageByKey(key, msg);
}
/**
@@ -220,7 +220,7 @@ public class ActCallBattlePreWarningService {
String stockStr = new BigDecimal(stock).divide(new BigDecimal(ActCallBattleBizServiceImpl.HANDLE_STOCK_MULTIPLE), 2, RoundingMode.HALF_DOWN).toString();
msg.add(MarkdownMessage.getReferenceText("当前库存数:" + stockStr));
String key = webSecurityConfig.getActivityEnterpriseWechatPushKey();
enterpriseWechatPushService.pushMessageByKey(key, msg);
messageRobotPushService.pushMessageByKey(key, msg);
}
}

View File

@@ -7,7 +7,7 @@ import com.accompany.business.model.findlove.FindLoveDrawPoolItem;
import com.accompany.business.model.findlove.FindLoveDrawRecord;
import com.accompany.business.mybatismapper.findlove.FindLoveDrawRecordMapper;
import com.accompany.business.service.ErBanNetEaseService;
import com.accompany.business.service.push.EnterpriseWechatPushService;
import com.accompany.core.service.message.MessageRobotPushService;
import com.accompany.business.service.room.RoomQueryService;
import com.accompany.business.service.room.RoomService;
import com.accompany.business.service.user.UsersService;
@@ -55,7 +55,7 @@ public class FindLoveMsgService {
@Autowired
private UsersService usersService;
@Autowired
private EnterpriseWechatPushService enterpriseWechatPushService;
private MessageRobotPushService messageRobotPushService;
@Autowired
private ErBanNetEaseService erBanNetEaseService;
@Resource(name = "bizExecutor")
@@ -99,7 +99,7 @@ public class FindLoveMsgService {
msg.add(MarkdownMessage.getReferenceText("新奖池个数: " + newPool.size()));
msg.add(MarkdownMessage.getReferenceText("高级礼物分布: " + highIndexStr));
msg.add(MarkdownMessage.getReferenceText("耗时(毫秒): " + ms));
enterpriseWechatPushService.pushMessageByKey(webSecurityConfig.getFindLoveDrawWechatPushKey(), msg);
messageRobotPushService.pushMessageByKey(webSecurityConfig.getFindLoveDrawWechatPushKey(), msg);
}
public void sendGiftMessage(FindLoveDrawConfigDto configDto, Boolean needWindowMessage, Long roomUid, Long uid, List<FindLoveDrawRecord> recordList) {
@@ -196,7 +196,7 @@ public class FindLoveMsgService {
msg.add(MarkdownMessage.getReferenceText("总抽奖次数: " + broadCastStat.getNum()));
msg.add(MarkdownMessage.getReferenceText("用户投入总价值: " + broadCastStat.getDiamondIn()));
msg.add(MarkdownMessage.getReferenceText("用户产出总价值: " + broadCastStat.getDiamondOut()));
enterpriseWechatPushService.pushMessageByKey(webSecurityConfig.getFindLoveDrawWechatPushKey(), msg);
messageRobotPushService.pushMessageByKey(webSecurityConfig.getFindLoveDrawWechatPushKey(), msg);
}
private FindLoveDrawWarningConfig getConfig() {
@@ -217,7 +217,7 @@ public class FindLoveMsgService {
msg.add(MarkdownMessage.getReferenceText("奖品价值: " + record.getDiamonds()));
msg.add(MarkdownMessage.getReferenceText("产出数量: " + record.getNum()));
msg.add(MarkdownMessage.getReferenceText("获得者: " + users.getNick() + "(" + users.getErbanNo() + ")"));
enterpriseWechatPushService.pushMessageByKey(webSecurityConfig.getFindLoveDrawWechatPushKey(), msg);
messageRobotPushService.pushMessageByKey(webSecurityConfig.getFindLoveDrawWechatPushKey(), msg);
}
}

View File

@@ -6,7 +6,7 @@ import com.accompany.business.model.UserPurse;
import com.accompany.business.mybatismapper.iospay.IOSPayMapper;
import com.accompany.business.param.neteasepush.NeteaseSendMsgParam;
import com.accompany.business.service.SendSysMsgService;
import com.accompany.business.service.push.EnterpriseWechatPushService;
import com.accompany.core.service.message.MessageRobotPushService;
import com.accompany.common.config.SystemConfig;
import com.accompany.common.utils.DateTimeUtil;
import com.accompany.core.model.Users;
@@ -39,7 +39,7 @@ public class IAPMessageService {
@Autowired
private IOSPayMapper iosPayMapper;
@Autowired
private EnterpriseWechatPushService enterpriseWechatPushService;
private MessageRobotPushService messageRobotPushService;
@Autowired
private SendSysMsgService sendSysMsgService;
@@ -82,7 +82,7 @@ public class IAPMessageService {
purseInfo = String.format(purseInfo, userPurse.getDiamonds(), userPurse.getGolds(), userPurse.getCrystals());
}
msg.add(MarkdownMessage.getReferenceText(purseInfo));
enterpriseWechatPushService.pushMessageByKey(SystemConfig.ChargeNotify.iapRefundRobotKey,msg);
messageRobotPushService.pushMessageByKey(SystemConfig.ChargeNotify.iapRefundRobotKey,msg);
}
@Async
@@ -100,7 +100,7 @@ public class IAPMessageService {
purseInfo = String.format(purseInfo, userPurse.getDiamonds(), userPurse.getGolds(), userPurse.getCrystals());
}
msg.add(MarkdownMessage.getReferenceText(purseInfo));
enterpriseWechatPushService.pushMessageByKey(SystemConfig.ChargeNotify.iapConsumptionRequestRobotKey,msg);
messageRobotPushService.pushMessageByKey(SystemConfig.ChargeNotify.iapConsumptionRequestRobotKey,msg);
}
@Async

View File

@@ -21,7 +21,7 @@ import com.accompany.business.model.user.UserActPropertyInfoV2;
import com.accompany.business.mybatismapper.PrizeMapper;
import com.accompany.business.service.box.PrizeService;
import com.accompany.business.service.level.LevelService;
import com.accompany.business.service.push.EnterpriseWechatPushService;
import com.accompany.core.service.message.MessageRobotPushService;
import com.accompany.business.service.user.UserActPropertyInfoV2Service;
import com.accompany.business.util.ReplaceDomainUtil;
import com.accompany.business.vo.PrizeWithRateVo;
@@ -94,7 +94,7 @@ public class LinearlyPrizePoolService {
@Autowired
private LinearlyPrizePoolDrawLineItemDayService linearlyPrizePoolDrawLineItemDayService;
@Autowired
private EnterpriseWechatPushService enterpriseWechatPushService;
private MessageRobotPushService messageRobotPushService;
@Autowired
private WebSecurityConfig webSecurityConfig;
@@ -582,7 +582,7 @@ public class LinearlyPrizePoolService {
msg.add(MarkdownMessage.getReferenceText(new StringBuilder("用户参与总数: ").append(statisticsRes.getTotalPrice()).toString()));
msg.add(MarkdownMessage.getReferenceText(new StringBuilder("用户产出总价值: ").append(statisticsRes.getTotalPlatformValue()).toString()));
msg.add(MarkdownMessage.getReferenceText(new StringBuilder("游戏进行次数 ").append(statisticsRes.getDrawCounts()).toString()));
enterpriseWechatPushService.pushMessageByKey(webSecurityConfig.getActivityEnterpriseWechatPushKey(), msg);
messageRobotPushService.pushMessageByKey(webSecurityConfig.getActivityEnterpriseWechatPushKey(), msg);
}
@Data

View File

@@ -1,109 +0,0 @@
package com.accompany.business.service.push;
import com.accompany.common.push.MarkdownMessage;
import com.accompany.business.model.Prize;
import com.accompany.business.model.box.NormalBigPrizeConfig;
import com.accompany.business.service.box.PrizeService;
import com.accompany.business.service.user.UsersService;
import com.accompany.common.config.WebSecurityConfig;
import com.accompany.common.utils.DateTimeUtil;
import com.accompany.common.utils.HttpUtils;
import com.accompany.core.model.Users;
import com.accompany.core.service.base.BaseService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationContext;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
/**
* 企业微信通知
*/
@Service
public class EnterpriseWechatPushService extends BaseService {
private static String URL_PREFIX = "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=";
@Autowired
protected WebSecurityConfig webSecurityConfig;
@Autowired
public ApplicationContext applicationContext;
@Autowired
private PrizeService prizeService;
@Autowired
protected UsersService usersService;
public void pushMessage(MarkdownMessage message) {
String url = URL_PREFIX + webSecurityConfig.getEnterpriseWechatPushKey();
logger.info("EnterpriseWeChatPushService url: {}", url);
String content = message.toJsonString();
logger.info("EnterpriseWeChatPushService content: {}", content);
try {
String response = HttpUtils.doPostForJson(url, content);
logger.info("EnterpriseWeChatPushService response: {}", response);
} catch (Exception e) {
logger.error("EnterpriseWeChatPushService error, {}", e.toString());
}
}
// 根据key 推送到相关的企业微信群
public void pushMessageByKey(String key,MarkdownMessage message) {
String url = URL_PREFIX + key;
logger.info("EnterpriseWeChatPushService url: {}", url);
String content = message.toJsonString();
logger.info("EnterpriseWeChatPushService content: {}", content);
try {
String response = HttpUtils.doPostForJson(url, content);
logger.info("EnterpriseWeChatPushService response: {}", response);
} catch (Exception e) {
logger.error("EnterpriseWeChatPushService error, {}", e.toString());
}
}
@Async
public void pushBigBoxPrizeMessage(NormalBigPrizeConfig normalBigPrizeConfig, Integer prizeId, Long uid) {
String env = "";
if (normalBigPrizeConfig.getNotify() == 0) {
return;
} else if (normalBigPrizeConfig.getNotify() == 1) {
// 测试环境不推送
env = applicationContext.getEnvironment().getActiveProfiles()[0];
logger.info("spring.profiles.active, {}", env);
if (!env.equals("prod")) {
return;
}
}
Prize prize = prizeService.getPrizeById(prizeId);
String userInfo = "";
Users users = usersService.getUsersByUid(uid);
if (users != null) {
userInfo = String.format("%s[%s]", users.getNick(), users.getErbanNo());
}
MarkdownMessage msg = new MarkdownMessage();
msg.add(MarkdownMessage.getHeaderText(3, "许愿池特殊礼物通知" + env));
msg.add(MarkdownMessage.getReferenceText("APP应用 平台"));
msg.add(MarkdownMessage.getReferenceText("奖品: " + prize.getPrizeName()));
msg.add(MarkdownMessage.getReferenceText("获得者: " + userInfo));
msg.add(MarkdownMessage.getReferenceText("时间:" + DateTimeUtil.getCurrentDateTime()));
// 发送消息
this.pushMessage(msg);
}
/**
* 发送企业微信通知
* @param message 需要发送的消息
* @param key 需要发送的推送群的机器人key
*/
public void pushMessage(MarkdownMessage message, String key) {
String url = URL_PREFIX + key;
logger.info("EnterpriseWeChatPushService url: {}", url);
String content = message.toJsonString();
logger.info("EnterpriseWeChatPushService content: {}", content);
try {
String response = HttpUtils.doPostForJson(url, content);
logger.info("EnterpriseWeChatPushService response: {}", response);
} catch (Exception e) {
logger.error("EnterpriseWeChatPushService error, {}", e.toString());
}
}
}

View File

@@ -5,7 +5,7 @@ import com.accompany.business.dto.seekElfin.SeekElfinGoldPreWarningDTO;
import com.accompany.business.dto.seekElfin.SeekElfinPreWarningConfig;
import com.accompany.common.push.MarkdownMessage;
import com.accompany.business.mybatismapper.seekelfin.SeekElfinPreWarningMapper;
import com.accompany.business.service.push.EnterpriseWechatPushService;
import com.accompany.core.service.message.MessageRobotPushService;
import com.accompany.business.util.seekelfin.SeekElfinUtil;
import com.accompany.common.config.WebSecurityConfig;
import com.accompany.common.constant.Constant;
@@ -41,7 +41,7 @@ public class SeekElfinPreWarningService {
@Autowired
private WebSecurityConfig webSecurityConfig;
@Autowired
private EnterpriseWechatPushService enterpriseWechatPushService;
private MessageRobotPushService messageRobotPushService;
@Autowired
private SeekElfinUtil seekElfinUtil;
@@ -117,7 +117,7 @@ public class SeekElfinPreWarningService {
msg.add(MarkdownMessage.getReferenceText(""+ roundNum + "次产出:" + stat.getGoldOut()));
msg.add(MarkdownMessage.getReferenceText("请判断是否需要前往后台查看"));
String key = webSecurityConfig.getSeekElfinEnterpriseWechatPushKey();
enterpriseWechatPushService.pushMessageByKey(key, msg);
messageRobotPushService.pushMessageByKey(key, msg);
}
/**
@@ -203,6 +203,6 @@ public class SeekElfinPreWarningService {
String stockStr = new BigDecimal(stock).divide(new BigDecimal(SeekElfinUtil.HANDLE_STOCK_MULTIPLE), 2, RoundingMode.HALF_DOWN).toString();
msg.add(MarkdownMessage.getReferenceText("当前库存数:" + stockStr));
String key = webSecurityConfig.getSeekElfinEnterpriseWechatPushKey();
enterpriseWechatPushService.pushMessageByKey(key, msg);
messageRobotPushService.pushMessageByKey(key, msg);
}
}

View File

@@ -14,7 +14,7 @@ import com.accompany.business.service.headwear.HeadwearService;
import com.accompany.business.service.level.LevelService;
import com.accompany.business.service.nameplate.UserNameplateService;
import com.accompany.business.service.purse.UserPurseService;
import com.accompany.business.service.push.EnterpriseWechatPushService;
import com.accompany.core.service.message.MessageRobotPushService;
import com.accompany.business.service.room.RoomService;
import com.accompany.business.service.user.UserActPropertyInfoV2Service;
import com.accompany.business.service.user.UserBackpackService;
@@ -131,7 +131,7 @@ public class SeizeTreasureService {
@Autowired
private LevelService levelService;
@Autowired
private EnterpriseWechatPushService enterpriseWechatPushService;
private MessageRobotPushService messageRobotPushService;
@Autowired
private WebSecurityConfig webSecurityConfig;
private Gson gson = new GsonBuilder()
@@ -1282,7 +1282,7 @@ public class SeizeTreasureService {
msg.add(MarkdownMessage.getReferenceText("总抽奖次数: " + seizeTreasureStaticVo.getDrawCountNum()));
msg.add(MarkdownMessage.getReferenceText("用户投入总价值: " + seizeTreasureStaticVo.getDrawInputValue()));
msg.add(MarkdownMessage.getReferenceText("用户产出总价值: " + seizeTreasureStaticVo.getDrawOutputValue()));
enterpriseWechatPushService.pushMessageByKey(webSecurityConfig.getSeizeTreasureWechatPushKey(), msg);
messageRobotPushService.pushMessageByKey(webSecurityConfig.getSeizeTreasureWechatPushKey(), msg);
}
public void giftOutputMsg(Long uid, SeizeTreasurePoolRewardVo rewardVo) {
@@ -1296,6 +1296,6 @@ public class SeizeTreasureService {
msg.add(MarkdownMessage.getReferenceText("奖品价值: " + rewardVo.getRewardShowValue()));
msg.add(MarkdownMessage.getReferenceText("产出数量: " + rewardVo.getRewardNum()));
msg.add(MarkdownMessage.getReferenceText("获得者: " + users.getNick() + "(" + users.getErbanNo() + ")"));
enterpriseWechatPushService.pushMessageByKey(webSecurityConfig.getSeizeTreasureWechatPushKey(), msg);
messageRobotPushService.pushMessageByKey(webSecurityConfig.getSeizeTreasureWechatPushKey(), msg);
}
}

View File

@@ -11,12 +11,12 @@
package com.accompany.scheduler.task;
import com.accompany.business.util.ChargeNotifyUtil;
import com.accompany.common.config.WebSecurityConfig;
import com.accompany.common.push.MarkdownMessage;
import com.accompany.business.mybatismapper.ChargeNotifyMapper;
import com.accompany.business.service.push.EnterpriseWechatPushService;
import com.accompany.core.service.message.MessageRobotPushService;
import com.accompany.business.vo.ChargeNotifyVO;
import com.accompany.common.constant.Constant;
import com.accompany.common.utils.StringUtils;
import com.accompany.core.service.SysConfService;
import com.accompany.scheduler.base.BaseTask;
import com.alibaba.fastjson.JSON;
@@ -39,7 +39,9 @@ import java.util.List;
@Slf4j
public class ChargeNotifyTask extends BaseTask {
@Autowired
private EnterpriseWechatPushService enterpriseWechatPushService;
private WebSecurityConfig webSecurityConfig;
@Autowired
private MessageRobotPushService messageRobotPushService;
@Autowired
private ChargeNotifyMapper chargeNotifyMapper;
@Autowired
@@ -74,7 +76,7 @@ public class ChargeNotifyTask extends BaseTask {
msg.add(MarkdownMessage.getReferenceText(chargeNotifyUtil.getAppName(vo.getChargeChannel())));
String appName = chargeNotifyUtil.getAppName(vo.getChargeApp());
msg.add(MarkdownMessage.getReferenceText("" + appName + "" + "前10分钟支付失败率过高请关注"));
enterpriseWechatPushService.pushMessage(msg);
messageRobotPushService.pushMessageByKey(webSecurityConfig.getChargeNotifyWechatPushKey(), msg);
}
}