From 74196bcc835d9b76cdd1bc3d85b0dfbe0191fc00 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期四, 31 十二月 2020 19:23:43 +0800 Subject: [PATCH] 活动信息缓存 --- service-daylucky/src/main/java/com/ks/daylucky/controller/api/client/UserController.java | 46 ++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 40 insertions(+), 6 deletions(-) diff --git a/service-daylucky/src/main/java/com/ks/daylucky/controller/api/client/UserController.java b/service-daylucky/src/main/java/com/ks/daylucky/controller/api/client/UserController.java index 4f3cca9..d32e80e 100644 --- a/service-daylucky/src/main/java/com/ks/daylucky/controller/api/client/UserController.java +++ b/service-daylucky/src/main/java/com/ks/daylucky/controller/api/client/UserController.java @@ -7,20 +7,26 @@ import com.ks.app.entity.AppInfo; import com.ks.daylucky.exception.UserInfoException; import com.ks.daylucky.exception.UserInfoExtraException; +import com.ks.daylucky.pojo.DO.AppConfig; import com.ks.daylucky.pojo.DO.UserInfo; import com.ks.daylucky.pojo.DO.UserInfoExtra; import com.ks.daylucky.pojo.DO.UserMsg; import com.ks.daylucky.pojo.DTO.AlipayUserInfo; +import com.ks.daylucky.pojo.DTO.ConfigKeyEnum; import com.ks.daylucky.pojo.DTO.TokenDTO; import com.ks.daylucky.pojo.DTO.UserMsgSettings; import com.ks.daylucky.pojo.VO.AcceptData; import com.ks.daylucky.pojo.VO.UserConfigVO; +import com.ks.daylucky.pojo.VO.UserMsgVO; +import com.ks.daylucky.service.AppConfigService; import com.ks.daylucky.service.UserInfoExtraService; import com.ks.daylucky.service.UserInfoService; import com.ks.daylucky.service.UserMsgService; import com.ks.daylucky.util.Constant; import com.ks.daylucky.util.RSAUtil; import com.ks.daylucky.util.UserInfoUtil; +import com.ks.daylucky.util.annotation.RequestSerializable; +import com.ks.daylucky.util.factory.vo.UserMsgVOFactory; import net.sf.json.JSONObject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; @@ -34,6 +40,7 @@ import javax.annotation.Resource; import java.io.ByteArrayInputStream; +import java.util.ArrayList; import java.util.List; @Controller @@ -48,12 +55,16 @@ @Resource private UserMsgService userMsgService; + @Resource + private AppConfigService appConfigService; + private AlipayAppInfo getAlipayAppInfo(AppInfo app) { AppAlipayInfoWithBLOBs alipay = app.getAlipayInfo(); AlipayAppInfo info = new AlipayAppInfo(alipay.getAlipayAppId(), alipay.getAlipayPrivateKey(), new AlipayCertInfo(new ByteArrayInputStream(alipay.getAlipayAppCertPublicKey()), new ByteArrayInputStream(alipay.getAlipayPublicCert()), new ByteArrayInputStream(alipay.getAlipayRootCert()))); return info; } + @RequestSerializable(key = "'getToken-'+#alipayCode") @ResponseBody @RequestMapping("getToken") public String getToken(AcceptData acceptData, String alipayCode, String wxCode) { @@ -128,6 +139,21 @@ user.setNickName(alipayUserInfo.getNickName()); user.setAlipayNickName(alipayUserInfo.getNickName()); user.setAlipayPortrait(alipayUserInfo.getAvatar()); + if (user.getPortrait() != null && user.getPortrait().endsWith("undefined")) { + user.setPortrait(null); + } + + if (StringUtil.isNullOrEmpty(user.getNickName())) { + AppConfig config = appConfigService.getConfigCache(acceptData.getApp().getId(), ConfigKeyEnum.defaultNickNamePrefix, acceptData.getVersion()); + user.setNickName(config.getValue() + acceptData.getUid()); + } + + if (StringUtil.isNullOrEmpty(user.getPortrait())) { + AppConfig config = appConfigService.getConfigCache(acceptData.getApp().getId(), ConfigKeyEnum.defaultPortrait, acceptData.getVersion()); + user.setPortrait(config.getValue()); + } + + userInfoService.updateUserInfo(user); user = userInfoService.getUserDetail(user.getId()); @@ -189,24 +215,32 @@ @RequestMapping("getUserMsgList") public String getUserMsgList(AcceptData acceptData, int page) { List<UserMsg> msgList = userMsgService.getUserMsgList(acceptData.getUid(), page, Constant.PAGE_SIZE); + List<UserMsgVO> voList = new ArrayList<>(); + if (msgList != null) { + for (UserMsg userMsg : msgList) { + voList.add(UserMsgVOFactory.create(userMsg)); + } + } + + long count = userMsgService.countUserMsg(acceptData.getUid()); - Gson gson = JsonUtil.getConvertDateToShortNameBuilder(new GsonBuilder().excludeFieldsWithoutExposeAnnotation()).create(); + Gson gson = JsonUtil.getConvertDateToShortNameBuilder(new GsonBuilder()).create(); JSONObject data = new JSONObject(); - data.put("data", gson.toJson(msgList)); + data.put("data", gson.toJson(voList)); data.put("count", count); return JsonUtil.loadTrueResult(data); } @ResponseBody @RequestMapping("getUserConfig") - public String getUserConfig(AcceptData acceptData){ + public String getUserConfig(AcceptData acceptData) { //娑堟伅鏈鏁� - UserInfoExtra extra= userInfoExtraService.getUserInfoExtra(acceptData.getUid()); - if(extra==null){ + UserInfoExtra extra = userInfoExtraService.getUserInfoExtra(acceptData.getUid()); + if (extra == null) { return JsonUtil.loadFalseResult("鐢ㄦ埛涓嶅瓨鍦�"); } - UserConfigVO vo=new UserConfigVO(); + UserConfigVO vo = new UserConfigVO(); vo.setMsgCount(extra.getMsgUnreadCount()); return JsonUtil.loadTrueResult(vo); } -- Gitblit v1.8.0