记得上下班打卡 | git大法好,push需谨慎

Commit 6121f698 authored by 胡佳晨's avatar 胡佳晨

提交platfrom

parent 0b9660f9
...@@ -33,4 +33,12 @@ public class DataController { ...@@ -33,4 +33,12 @@ public class DataController {
Boolean result = data.initScore(uid); Boolean result = data.initScore(uid);
return ResponseDto.success(result); return ResponseDto.success(result);
} }
@PostMapping("initLogsSingle")
@ApiOperation("初始化用户积分日志(根据uid)")
public ResponseDto<Boolean> initLogs(@RequestParam("uid") String uid) {
Boolean result = data.initLogs(uid);
return ResponseDto.success(result);
}
} }
...@@ -10,6 +10,7 @@ import com.liquidnet.service.adam.dto.vo.AdamUserInfoVo; ...@@ -10,6 +10,7 @@ import com.liquidnet.service.adam.dto.vo.AdamUserInfoVo;
import com.liquidnet.service.adam.entity.AdamUser; import com.liquidnet.service.adam.entity.AdamUser;
import com.liquidnet.service.adam.mapper.AdamUserMapper; import com.liquidnet.service.adam.mapper.AdamUserMapper;
import com.liquidnet.service.kylin.mapper.*; import com.liquidnet.service.kylin.mapper.*;
import com.liquidnet.service.stone.constant.StoneConstant;
import com.liquidnet.service.stone.entity.StoneScoreLogs; import com.liquidnet.service.stone.entity.StoneScoreLogs;
import com.liquidnet.service.stone.entity.StoneScoreUser; import com.liquidnet.service.stone.entity.StoneScoreUser;
import com.liquidnet.service.stone.mapper.StoneScoreLogsMapper; import com.liquidnet.service.stone.mapper.StoneScoreLogsMapper;
...@@ -20,12 +21,19 @@ import com.liquidnet.service.sweet.vo.SweetAppletUsersVo; ...@@ -20,12 +21,19 @@ import com.liquidnet.service.sweet.vo.SweetAppletUsersVo;
import com.liquidnet.service.sweet.vo.SweetWechatUsersVo; import com.liquidnet.service.sweet.vo.SweetWechatUsersVo;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Sort;
import org.springframework.data.mongodb.core.MongoTemplate; import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.MultiValueMap; import org.springframework.util.MultiValueMap;
import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.Arrays; import java.util.Arrays;
import java.util.HashMap;
import java.util.List; import java.util.List;
@Service @Service
...@@ -208,17 +216,38 @@ public class DataImpl { ...@@ -208,17 +216,38 @@ public class DataImpl {
return true; return true;
} }
public boolean initLogs(String uid) {
List<StoneScoreLogs> list = stoneScoreLogsMapper.selectList(Wrappers.lambdaQuery(StoneScoreLogs.class).eq(StoneScoreLogs::getUid, uid));
mongoTemplate.remove(Query.query(Criteria.where("uid").is(uid)));
String redisKey = StoneConstant.LOGS_LIST.concat(uid);
redisDataSourceUtil.getRedisStoneUtil().del(redisKey);
for (StoneScoreLogs item : list) {
//初始化 redis
//初始化 mongo
StoneScoreLogs logs = new StoneScoreLogs();
logs.setLogsId(item.getLogsId());
logs.setContent(item.getContent());
logs.setReason(item.getReason());
logs.setUid(uid);
logs.setScore(item.getScore());
logs.setCreatedAt(item.getCreatedAt());
}
List<StoneScoreLogs> getLogsList = (List<StoneScoreLogs>) logList(uid, 1, 40).get("data");
redisDataSourceUtil.getRedisStoneUtil().set(redisKey,getLogsList);
return true;
}
/** /**
* 创建 用户积分 * 创建 用户积分
* *
* @param data * @param data
* @return * @return
*/ */
public Object userCreate(StoneUserVo data) { private Object userCreate(StoneUserVo data) {
return mongoTemplate.insert(data, StoneUserVo.class.getSimpleName()); return mongoTemplate.insert(data, StoneUserVo.class.getSimpleName());
} }
public String getUnionIdByPhone(String phone) { private String getUnionIdByPhone(String phone) {
String redisKey = SweetConstant.REDIS_KEY_SWEET_APPLET_USERS_PHONE.concat(phone); String redisKey = SweetConstant.REDIS_KEY_SWEET_APPLET_USERS_PHONE.concat(phone);
Object obj = redisDataSourceUtil.getRedisSweetUtil().get(redisKey); Object obj = redisDataSourceUtil.getRedisSweetUtil().get(redisKey);
if (null == obj) { if (null == obj) {
...@@ -235,4 +264,20 @@ public class DataImpl { ...@@ -235,4 +264,20 @@ public class DataImpl {
return "true"; return "true";
} }
} }
public HashMap<String, Object> logList(String uid, int page, int size) {
LocalDateTime now = LocalDateTime.now();
HashMap<String, Object> info = CollectionUtil.mapStringObject();
// 排序 分页
Pageable pageable = PageRequest.of(page - 1, size, Sort.by(Sort.Direction.DESC, "createdAt"));
//条件
Query query = Query.query(Criteria.where("uid").is(uid));
// 查询总数
long count = mongoTemplate.count(query, StoneScoreLogs.class, StoneScoreLogs.class.getSimpleName());
query.with(pageable);
List<StoneScoreLogs> voList = mongoTemplate.find(query, StoneScoreLogs.class, StoneScoreLogs.class.getSimpleName());
info.put("total", count);
info.put("data", voList);
return info;
}
} }
...@@ -283,6 +283,7 @@ public class StoneScoreLogsServiceImpl implements IStoneScoreLogsService { ...@@ -283,6 +283,7 @@ public class StoneScoreLogsServiceImpl implements IStoneScoreLogsService {
logs.setScore(BigDecimal.valueOf(score)); logs.setScore(BigDecimal.valueOf(score));
logs.setCreatedAt(LocalDateTime.now()); logs.setCreatedAt(LocalDateTime.now());
stoneMongoUtils.logCreate(logs); stoneMongoUtils.logCreate(logs);
stoneRedisUtils.addLogsList(uid,logs);
//mysql 入库 积分日志 //mysql 入库 积分日志
queueUtils.sendMsgByRedis(MQConst.StoneQueue.STONE_INSERT_LOGS.getKey(), queueUtils.sendMsgByRedis(MQConst.StoneQueue.STONE_INSERT_LOGS.getKey(),
SqlMapping.get("stone_score_logs.insert", logs.getLogsId(), logs.getUid(), logs.getScore(), logs.getContent(), logs.getReason(), getOverdueAt(), LocalDateTime.now()) SqlMapping.get("stone_score_logs.insert", logs.getLogsId(), logs.getUid(), logs.getScore(), logs.getContent(), logs.getReason(), getOverdueAt(), LocalDateTime.now())
...@@ -302,6 +303,7 @@ public class StoneScoreLogsServiceImpl implements IStoneScoreLogsService { ...@@ -302,6 +303,7 @@ public class StoneScoreLogsServiceImpl implements IStoneScoreLogsService {
logs.setScore(BigDecimal.valueOf(score).negate()); logs.setScore(BigDecimal.valueOf(score).negate());
logs.setCreatedAt(LocalDateTime.now()); logs.setCreatedAt(LocalDateTime.now());
stoneMongoUtils.logCreate(logs); stoneMongoUtils.logCreate(logs);
stoneRedisUtils.addLogsList(uid,logs);
//mysql 入库 积分日志 //mysql 入库 积分日志
queueUtils.sendMsgByRedis(MQConst.StoneQueue.STONE_INSERT_LOGS.getKey(), queueUtils.sendMsgByRedis(MQConst.StoneQueue.STONE_INSERT_LOGS.getKey(),
SqlMapping.get("stone_score_logs.insert", logs.getLogsId(), logs.getUid(), logs.getScore(), logs.getContent(), logs.getReason(), getOverdueAt(), LocalDateTime.now()) SqlMapping.get("stone_score_logs.insert", logs.getLogsId(), logs.getUid(), logs.getScore(), logs.getContent(), logs.getReason(), getOverdueAt(), LocalDateTime.now())
......
...@@ -201,7 +201,9 @@ public class StoneRedisUtils { ...@@ -201,7 +201,9 @@ public class StoneRedisUtils {
String redisKey = StoneConstant.LOGS_LIST.concat(uid); String redisKey = StoneConstant.LOGS_LIST.concat(uid);
Object obj = redisUtil.get(redisKey); Object obj = redisUtil.get(redisKey);
if (obj == null) { if (obj == null) {
return (List<StoneScoreLogs>) mongoUtils.logList(uid, 1, 40).get("data"); List<StoneScoreLogs> getLogsList = (List<StoneScoreLogs>) mongoUtils.logList(uid, 1, 40).get("data");
redisUtil.set(redisKey,getLogsList);
return getLogsList;
} else { } else {
return (List<StoneScoreLogs>) obj; return (List<StoneScoreLogs>) obj;
} }
......
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