From ab35ac8b769b2d9816dffb33a64f2c6f7bd5dd6e Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期四, 05 九月 2024 17:05:55 +0800 Subject: [PATCH] 风行网页版爬虫 --- src/main/java/com/yeshi/buwan/controller/api/UserController.java | 51 +++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 47 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/yeshi/buwan/controller/api/UserController.java b/src/main/java/com/yeshi/buwan/controller/api/UserController.java index 6e62e7b..7d3bda2 100644 --- a/src/main/java/com/yeshi/buwan/controller/api/UserController.java +++ b/src/main/java/com/yeshi/buwan/controller/api/UserController.java @@ -1,25 +1,27 @@ package com.yeshi.buwan.controller.api; -import com.google.gson.Gson; +import com.google.gson.*; import com.yeshi.buwan.controller.parser.UserParser; import com.yeshi.buwan.domain.user.LoginUser; import com.yeshi.buwan.domain.user.LoginUserExtra; import com.yeshi.buwan.domain.vip.UserVIPInfo; import com.yeshi.buwan.service.inter.LoginUserService; -import com.yeshi.buwan.service.inter.SMSService; import com.yeshi.buwan.service.inter.vip.VIPService; import com.yeshi.buwan.util.JsonUtil; -import com.yeshi.buwan.util.RedisManager; import com.yeshi.buwan.util.StringUtil; +import com.yeshi.buwan.util.ThreadUtil; import com.yeshi.buwan.util.factory.vo.UserInfoVOFactory; import com.yeshi.buwan.vo.AcceptData; import com.yeshi.buwan.vo.client.user.UserInfoVO; +import org.json.JSONObject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import javax.annotation.Resource; import javax.servlet.http.HttpSession; +import java.lang.reflect.Type; +import java.text.DateFormat; import java.util.Date; @Controller @@ -46,12 +48,53 @@ if (extra == null) extra = loginUserService.initExtra(loginUid); + //鏄惁鏈塸ptvuid + + if (extra != null && StringUtil.isNullOrEmpty(extra.getPptvUid())) { + extra = loginUserService.initPPTVUid(extra.getId()); + } + //闇�瑕佸垵濮嬪寲VIP淇℃伅 vipService.initUserVipInfo(loginUid); UserVIPInfo vipInfo = vipService.getVIPInfo(loginUid); UserInfoVO vo = UserInfoVOFactory.create(loginUser, extra, vipInfo); - return JsonUtil.loadTrueJson(new Gson().toJson(vo)); + + //绾跨▼鎵ц璁惧淇℃伅鏇存柊 + ThreadUtil.run(new Runnable() { + @Override + public void run() { + loginUserService.setUtdId(loginUid, acceptData.getUtdId()); + } + }); + if ("ios".equalsIgnoreCase(acceptData.getPlatform())) { + if(StringUtil.isNullOrEmpty(vo.getBirthday())){ + vo.setBirthday(loginUser.getBirthday()); + } + if(StringUtil.isNullOrEmpty(vo.getSex())){ + vo.setSex(loginUser.getSex()); + } + if(StringUtil.isNullOrEmpty(vo.getSign())){ + vo.setSign(loginUser.getSign()); + } + Gson gson = new GsonBuilder().enableComplexMapKeySerialization() + .setDateFormat(DateFormat.LONG).registerTypeAdapter(Date.class, new JsonSerializer<Date>() { + @Override + public JsonElement serialize(Date value, Type theType, JsonSerializationContext context) { + if (value == null) { + return new JsonPrimitive("0"); + } else { + return new JsonPrimitive(value.getTime()); + } + } + }).setFieldNamingPolicy(FieldNamingPolicy.UPPER_CAMEL_CASE)// 浼氭妸瀛楁棣栧瓧姣嶅ぇ鍐� + .setPrettyPrinting().setVersion(1.0).create(); + net.sf.json.JSONObject root= net.sf.json.JSONObject.fromObject(gson.toJson(vo)); + root.put("Nickname",vo.getNickName()); + return JsonUtil.loadTrueJson(root.toString()); + } else { + return JsonUtil.loadTrueJson(new Gson().toJson(vo)); + } } -- Gitblit v1.8.0