谷歌马甲包-代码-清理部分废弃功能

This commit is contained in:
khalil
2024-04-02 22:02:12 +08:00
parent fdb2917996
commit 1bedab1f6f
329 changed files with 6 additions and 31583 deletions

View File

@@ -1,23 +0,0 @@
package com.accompany.oauth2.mq;
import com.accompany.core.vo.UserFirstLoginMsgVO;
import com.accompany.mq.producer.MQMessageProducer;
import com.alibaba.fastjson.JSON;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* Created by 恒仔 on 2023/3/12.
*/
@Slf4j
@Service
public class RocketMQService {
@Autowired
private MQMessageProducer mqMessageProducer;
public void sendUserFirstLoginMessage(UserFirstLoginMsgVO message) {
mqMessageProducer.send(RocketMQConstant.USER_FIRST_LOGIN_TOPIC, message, sendResult -> log.info("sendUserFirstLoginMessage success message: {}", JSON.toJSONString(message)), throwable -> log.error("sendUserFirstLoginMessage fail message: {}", JSON.toJSONString(message), throwable));
}
}

View File

@@ -1,22 +1,15 @@
package com.accompany.oauth2.ticket;
import com.accompany.common.device.DeviceInfo;
import com.accompany.common.redis.RedisKey;
import com.accompany.common.utils.DateTimeUtil;
import com.accompany.common.utils.GetTimeUtils;
import com.accompany.core.model.Account;
import com.accompany.core.model.AccountLoginRecord;
import com.accompany.core.service.account.AccountService;
import com.accompany.core.service.account.LoginRecordService;
import com.accompany.core.service.account.UserAppService;
import com.accompany.core.service.common.JedisService;
import com.accompany.core.vo.UserFirstLoginMsgVO;
import com.accompany.oauth2.constant.LoginTypeEnum;
import com.accompany.oauth2.model.AccountDetails;
import com.accompany.oauth2.mq.RocketMQService;
import com.accompany.oauth2.service.MyUserDetailsService;
import com.accompany.oauth2.vo.TicketVo;
import com.alibaba.fastjson.JSON;
import com.google.common.collect.Maps;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
@@ -47,12 +40,8 @@ public class TicketServices implements InitializingBean{
private UserDetailsService userDetailsService;
private TicketEnhancer ticketEnhancer;
@Autowired
private JedisService jedisService;
@Autowired
private LoginRecordService loginRecordService;
@Autowired
private RocketMQService rocketMQService;
@Autowired
private AccountService accountService;
@Autowired
private MyUserDetailsService myUserDetailsService;
@@ -134,69 +123,6 @@ public class TicketServices implements InitializingBean{
return accessTokenExpiresIn > ticketValiditySeconds ? ticketValiditySeconds : accessTokenExpiresIn;
}
/**
* 发送首次登陆事件
* @param uid
* @param deviceInfo
*/
// @Async
public void sendFirstLoginMsg(Long uid, DeviceInfo deviceInfo) {
UserFirstLoginMsgVO msg = new UserFirstLoginMsgVO();
msg.setUid(uid);
msg.setChannel(deviceInfo.getChannel());
msg.setDeviceId(deviceInfo.getDeviceId());
logger.info("用户登录uid[{}],channel[{}], deviceId {}", uid, deviceInfo.getChannel(), deviceInfo.getDeviceId());
boolean dayFirstLogin = isDayFirstLogin(uid);
boolean weekFirstLogin = isWeekFirstLogin(uid);
if (dayFirstLogin || weekFirstLogin) {
msg.setIsDayFirstLogin(dayFirstLogin);
msg.setIsWeekFirstLogin(weekFirstLogin);
logger.info("发送送赠门票队列, msg {}", JSON.toJSONString(msg));
jedisService.hset(RedisKey.mq_user_first_login_status.getKey(), uid.toString(), JSON.toJSONString(msg));
rocketMQService.sendUserFirstLoginMessage(msg);
}
}
private boolean isDayFirstLogin(Long uid) {
String flag = jedisService.hget(RedisKey.user_day_login.getKey(), uid.toString());
if (StringUtils.isNotBlank(flag)) {
logger.info("当前不是每日首次登陆, uid {}, currTime {}", uid, System.currentTimeMillis());
return false;
} else {
int count = loginRecordService.countLoginRecordToday(uid);
if (count != 1) {
logger.info("当前不是每日首次登陆, uid {}, currTime {}", uid, System.currentTimeMillis());
return false;
}
logger.info("当前是每日首次登陆, 发送送赠门票队列 uid {}, currTime {}", uid, System.currentTimeMillis());
jedisService.hset(RedisKey.user_day_login.getKey(), uid.toString(), Boolean.TRUE.toString());
long expireTime = GetTimeUtils.getDayEndTime(new Date()).getTime();
jedisService.expireAt(RedisKey.user_day_login.getKey(), expireTime / 1000);
return true;
}
}
private boolean isWeekFirstLogin(Long uid) {
String flag = jedisService.hget(RedisKey.user_week_login.getKey(), uid.toString());
if (StringUtils.isNotBlank(flag)) {
logger.info("当前不是每周首次登陆, uid {}, currTime {}", uid, System.currentTimeMillis());
return false;
} else {
Date beginTimeOfCurrentWeek = DateTimeUtil.getBeginTimeOfCurrentWeek();
Date endTimeOfCurrentWeek = DateTimeUtil.getEndTimeOfCurrentWeek();
int count = loginRecordService.countLoginRecordBetweenQueryTime(uid, beginTimeOfCurrentWeek, endTimeOfCurrentWeek);
if (count != 1) {
logger.info("当前不是每周首次登陆, uid {}, currTime {}", uid, System.currentTimeMillis());
return false;
}
logger.info("当前是每周首次登陆, 发送送赠门票队列 uid {}, currTime {}", uid, System.currentTimeMillis());
jedisService.hset(RedisKey.user_week_login.getKey(), uid.toString(), Boolean.TRUE.toString());
long expireTime = GetTimeUtils.getEndDayOfWeek().getTime();
jedisService.expireAt(RedisKey.user_week_login.getKey(), expireTime/1000);
return true;
}
}
@Async
public void saveLoginRecord(Long uid, String ipAddress, DeviceInfo deviceInfo) {
Optional.ofNullable(uid).ifPresent(id -> {
@@ -211,6 +137,5 @@ public class TicketServices implements InitializingBean{
});
}
});
sendFirstLoginMsg(uid, deviceInfo);
}
}