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

Commit 28288f25 authored by 胡佳晨's avatar 胡佳晨

修改猫登天空数据

parent dae4f2d0
......@@ -31,16 +31,15 @@ public class SweetWechatMaoDengController {
private SweetWechatMaoDengServiceImpl sweetWechatMaoDengService;
@GetMapping("/backData")
@ApiOperation("返回文字图片")
public ResponseDto<SweetMaoDengVo> backDatas(String userId){
public ResponseDto<SweetMaoDengVo> backDatas(String userId, String maoId) {
SweetWechatUsersVo wechatUsers = redisUtils.getSweetWechatUsersOfUnionId(userId, 1);
if (null == wechatUsers) {
return ResponseDto.failure("获取信息失败");
}
SweetMaoDengVo sweetMaoDeng = redisUtils.getSweetMaoDeng(wechatUsers.getOpenId());
if (sweetMaoDeng!=null){
SweetMaoDengVo sweetMaoDeng = redisUtils.getSweetMaoDeng(userId, maoId);
if (sweetMaoDeng != null) {
String textMsg = sweetMaoDeng.getTextMsg();
String image = sweetMaoDeng.getPicUrl();
if (StringUtil.isEmpty(textMsg) && StringUtil.isEmpty(image)) {
......@@ -58,9 +57,10 @@ public class SweetWechatMaoDengController {
@ApiImplicitParam(type = "query", dataType = "String", name = "userId", value = "userId"),
@ApiImplicitParam(type = "query", dataType = "String", name = "imgUrl", value = "imgUrl"),
})
public ResponseDto addBuilderImg(@RequestParam(value = "userId",required = false) String userId,
@RequestParam(value = "imgUrl",required = false)String imgUrl){
return sweetWechatMaoDengService.addBuilderImg(userId,imgUrl);
public ResponseDto addBuilderImg(@RequestParam(value = "userId", required = false) String userId,
@RequestParam(value = "imgUrl", required = false) String imgUrl,
@RequestParam(value = "maoId", required = false) String maoId) {
return sweetWechatMaoDengService.addBuilderImg(userId, imgUrl, maoId);
}
}
......@@ -6,8 +6,11 @@ import com.liquidnet.common.third.shumei.util.ShumeiUtil;
import com.liquidnet.commons.lang.util.*;
import com.liquidnet.service.adam.dto.vo.AdamUserInfoVo;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.base.SqlMapping;
import com.liquidnet.service.base.constant.MQConst;
import com.liquidnet.service.kylin.dto.vo.basicServices.UploadVo;
import com.liquidnet.service.sweet.config.WechatMaConfigure;
import com.liquidnet.service.sweet.utils.QueueUtils;
import com.liquidnet.service.sweet.utils.WechatUsersRedisUtils;
import com.liquidnet.service.sweet.vo.SweetMaoDengVo;
import lombok.extern.slf4j.Slf4j;
......@@ -25,6 +28,8 @@ import org.springframework.stereotype.Component;
import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.MultiValueMap;
import java.time.LocalDateTime;
import java.util.LinkedList;
import java.util.Map;
@Component
......@@ -39,15 +44,14 @@ public class MaoDengImageHandler implements WxMpMessageHandler {
private ShumeiUtil shumeiUtil;
@Autowired
WechatMaConfigure maConfigure;
@Autowired
QueueUtils queueUtils;
@Override
public WxMpXmlOutMessage handle(WxMpXmlMessage wxMessage, Map<String, Object> map, WxMpService wxMpService, WxSessionManager wxSessionManager) throws WxErrorException {
String fromUser = wxMessage.getFromUser();//用户id
String picUrl = wxMessage.getPicUrl().replace("http", "https");//图片urlmao
log.debug("[openId] = " + wxMessage.getOpenId());
log.debug("[unionId] = " + wxMessage.getUnionId());
//猫登天空活动开启
if (StringUtil.isNotEmpty(redisUtils.getSweetMaoDengOpen(fromUser))) {
......@@ -79,12 +83,23 @@ public class MaoDengImageHandler implements WxMpMessageHandler {
sweetMaoDengVo.setPicUrl(picUrl);
//活动已开启 持久化 redis
SweetMaoDengVo sweetMaoDeng = redisUtils.getSweetMaoDengTransfer(fromUser);
String textMsg = null;
if (sweetMaoDeng != null) {
String textMsg = sweetMaoDeng.getTextMsg();
textMsg = sweetMaoDeng.getTextMsg();
sweetMaoDengVo.setTextMsg(textMsg);
}
redisUtils.setSweetMaoDeng(sweetMaoDengVo);
String maoId = IDGenerator.nextSnowId();
redisUtils.setSweetMaoDeng(sweetMaoDengVo,maoId);
if (StringUtil.isNotEmpty(textMsg) && StringUtil.isNotEmpty(picUrl)) {
//redis队列入库
LinkedList<String> sqls = CollectionUtil.linkedListString();
LinkedList<Object[]> sqlsDataA = CollectionUtil.linkedListObjectArr();
sqls.add(SqlMapping.get("sweet_wechat_maodeng.insert"));
sqlsDataA.add(new Object[]{maoId, fromUser, textMsg, picUrl, "", LocalDateTime.now()});
queueUtils.sendMsgByRedis(MQConst.SweetQueue.SWEET_WECHAT_MAODENG_TEXT_INSERT.getKey(), SqlMapping.gets(sqls, sqlsDataA));
}
WxMpXmlOutTextMessage build = WxMpXmlOutMessage.TEXT().content("成了!点击上方小程序卡片查看猫咪的隐藏音乐技能。")
.fromUser(wxMessage.getToUser()).toUser(wxMessage.getFromUser())
......@@ -92,7 +107,7 @@ public class MaoDengImageHandler implements WxMpMessageHandler {
// 发送活动小程序卡片
WxMpKefuMessage message = WxMpKefuMessage.MINIPROGRAMPAGE()
.appId(maConfigure.getWxMaAppid(4))
.pagePath("pages/webview?query=catActivity") //小程序路径
.pagePath("pages/webview?query=catActivity&maoId=" +maoId) //小程序路径
.thumbMediaId("ov08q51In7bXX6tXv7Few-ud2-J-hyXnDC5NCNSfc_4") // 正在
// .thumbMediaId("ttUDFdcsOTnGFPBt5xp-vaYe_hS9Jae5C_YUboXmb4c") //test
// .thumbMediaId("OFjnPjluDGoHH1KOAdxQ_iMyWpBe_c48V40LlN6VmAQ") //图片地址
......
......@@ -30,31 +30,27 @@ public class SweetWechatMaoDengServiceImpl {
@Autowired
WechatMaConfigure maConfigure;
public ResponseDto addBuilderImg(String userId,String imgUrl){
LocalDateTime localDateTime = DateUtil.asLocalDateTime(DateUtil.now()); //生成创建时间
public ResponseDto addBuilderImg(String userId, String imgUrl, String maoId) {
LocalDateTime localDateTime = LocalDateTime.now(); //生成创建时间
try {
log.error("[userId] = {}", userId);
log.error("[imgUrl] = {}", imgUrl);
String maoId = IDGenerator.nextSnowId();
SweetWechatUsersVo wechatUsers = redisUtils.getSweetWechatUsersOfUnionId(userId, 1);
if (null == wechatUsers) {
return ResponseDto.failure("请求失败");
}
SweetMaoDengVo sweetMaoDeng = redisUtils.getSweetMaoDeng(wechatUsers.getOpenId());
if (sweetMaoDeng != null){
SweetMaoDengVo sweetMaoDeng = redisUtils.getSweetMaoDeng(wechatUsers.getOpenId(), maoId);
if (sweetMaoDeng != null) {
sweetMaoDeng.setImgUrl(imgUrl);
}
String textMsg = sweetMaoDeng.getTextMsg();
String picUrl = sweetMaoDeng.getPicUrl();
sweetMaoDeng.setCreatedAt(localDateTime);
redisUtils.setSweetMaoDeng(sweetMaoDeng);
if (StringUtil.isNotEmpty(textMsg) && StringUtil.isNotEmpty(picUrl)){
redisUtils.setSweetMaoDeng(sweetMaoDeng, maoId);
if (StringUtil.isNotEmpty(textMsg) && StringUtil.isNotEmpty(picUrl)) {
//redis队列入库
LinkedList<String> sqls = CollectionUtil.linkedListString();
LinkedList<Object[]> sqlsDataA = CollectionUtil.linkedListObjectArr();
sqls.add(SqlMapping.get("sweet_wechat_maodeng.insert"));
sqlsDataA.add(new Object[]{maoId, userId, textMsg, picUrl,imgUrl,localDateTime});
sqls.add(SqlMapping.get("sweet_wechat_maodeng.img.update"));
sqlsDataA.add(new Object[]{imgUrl, userId, maoId});
queueUtils.sendMsgByRedis(MQConst.SweetQueue.SWEET_WECHAT_MAODENG_TEXT_INSERT.getKey(), SqlMapping.gets(sqls, sqlsDataA));
return ResponseDto.failure("请求成功");
}
......
......@@ -133,8 +133,8 @@ public class WechatUsersRedisUtils {
}
//整体取
public SweetMaoDengVo getSweetMaoDeng(String fromUser) {
String redisKey = SweetConstant.REDIS_KEY_SWEET_WECHAT_MAODENG_POSTER.concat(":" + fromUser);
public SweetMaoDengVo getSweetMaoDeng(String userId, String maoId) {
String redisKey = SweetConstant.REDIS_KEY_SWEET_WECHAT_MAODENG_POSTER.concat(":" + userId + ":" + maoId);
SweetMaoDengVo obj = (SweetMaoDengVo) redisUtil.get(redisKey);
if (null == obj) {
return null;
......@@ -144,8 +144,8 @@ public class WechatUsersRedisUtils {
}
//整体存
public void setSweetMaoDeng(SweetMaoDengVo sweetMaoDengVo) {
String redisKey = SweetConstant.REDIS_KEY_SWEET_WECHAT_MAODENG_POSTER.concat(":" + sweetMaoDengVo.getUserId());
public void setSweetMaoDeng(SweetMaoDengVo sweetMaoDengVo, String maoId) {
String redisKey = SweetConstant.REDIS_KEY_SWEET_WECHAT_MAODENG_POSTER.concat(":" + sweetMaoDengVo.getUserId() + ":" + maoId);
redisUtil.set(redisKey, sweetMaoDengVo);
}
......@@ -162,13 +162,13 @@ public class WechatUsersRedisUtils {
//临时数据中转
public void setSweetMaoDengTransfer(SweetMaoDengVo sweetMaoDengVo, long expire) {
String redisKey = SweetConstant.REDIS_KEY_SWEET_WECHAT_MAODENG_POSTER_TRANSFER.concat(":"+sweetMaoDengVo.getUserId());
String redisKey = SweetConstant.REDIS_KEY_SWEET_WECHAT_MAODENG_POSTER_TRANSFER.concat(":" + sweetMaoDengVo.getUserId());
redisUtil.set(redisKey, sweetMaoDengVo, expire);
}
//临时数据中转
public SweetMaoDengVo getSweetMaoDengTransfer(String fromUser) {
String redisKey = SweetConstant.REDIS_KEY_SWEET_WECHAT_MAODENG_POSTER_TRANSFER.concat(":"+fromUser);
String redisKey = SweetConstant.REDIS_KEY_SWEET_WECHAT_MAODENG_POSTER_TRANSFER.concat(":" + fromUser);
SweetMaoDengVo obj = (SweetMaoDengVo) redisUtil.get(redisKey);
if (null == obj) {
return null;
......
......@@ -60,7 +60,7 @@ sweet_strawberry_poster_Musician=INSERT INTO sweet_strawberry_poster_lineup(line
#---------------------------猫登天空--------------------------------
sweet_wechat_maodeng.insert=INSERT INTO sweet_wechat_maodeng(mao_id,user_id,text_msg,pic_url,img_url,created_at) VALUES (?,?,?,?,?,?)
sweet_wechat_maodeng.text.update=UPDATE sweet_wechat_maodeng SET text_msg=? WHERE user_id=? AND mao_id=?
sweet_wechat_maodeng.img.update=UPDATE sweet_wechat_maodeng SET pic_url=? WHERE user_id=? AND mao_id=?
sweet_wechat_maodeng.img.update=UPDATE sweet_wechat_maodeng SET img_url=? WHERE user_id=? AND mao_id=?
......
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