From 5405154d6979f1b50ce2d881bb164b1acca80b6d Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期五, 15 一月 2021 18:58:18 +0800 Subject: [PATCH] 修改相关bug --- service-daylucky/src/main/java/com/ks/daylucky/controller/api/client/UserController.java | 61 +++++++++++++++++++++++++++++- 1 files changed, 58 insertions(+), 3 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 646a9fa..50a590d 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,19 +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.RSA2Encryptor; 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; @@ -33,6 +40,7 @@ import javax.annotation.Resource; import java.io.ByteArrayInputStream; +import java.util.ArrayList; import java.util.List; @Controller @@ -47,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) { @@ -127,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()); @@ -188,14 +215,42 @@ @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); + + //璁剧疆娑堟伅宸茶 + try { + userInfoExtraService.setMsgRead(acceptData.getUid()); + } catch (UserInfoExtraException e) { + e.printStackTrace(); + } return JsonUtil.loadTrueResult(data); } + @ResponseBody + @RequestMapping("getUserConfig") + public String getUserConfig(AcceptData acceptData) { + //娑堟伅鏈鏁� + UserInfoExtra extra = userInfoExtraService.getUserInfoExtra(acceptData.getUid()); + if (extra == null) { + return JsonUtil.loadFalseResult("鐢ㄦ埛涓嶅瓨鍦�"); + } + UserConfigVO vo = new UserConfigVO(); + vo.setMsgCount(extra.getMsgUnreadCount()); + return JsonUtil.loadTrueResult(vo); + } + } -- Gitblit v1.8.0