From 28cf328a098334b51a3e9d2d56f983fb8c862211 Mon Sep 17 00:00:00 2001 From: yujian <yujian@163.com> Date: 星期六, 23 五月 2020 09:54:38 +0800 Subject: [PATCH] 足迹、收藏订单兼容新需求 --- fanli/src/main/java/com/yeshi/fanli/controller/client/v2/HomeNavbarControllerV2.java | 79 +++++++++++++++++++++++++++++++++------ 1 files changed, 67 insertions(+), 12 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/HomeNavbarControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/HomeNavbarControllerV2.java index 35b72f7..3b71cc8 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/HomeNavbarControllerV2.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/HomeNavbarControllerV2.java @@ -18,9 +18,11 @@ import com.yeshi.fanli.entity.bus.homemodule.HomeNavbar.NavbarTypeEnum; import com.yeshi.fanli.entity.bus.homemodule.HomeNavbarUser; import com.yeshi.fanli.exception.homemodule.HomeNavbarUserException; +import com.yeshi.fanli.service.inter.homemodule.DeviceSexService; import com.yeshi.fanli.service.inter.homemodule.HomeNavbarService; import com.yeshi.fanli.service.inter.homemodule.HomeNavbarUserService; import com.yeshi.fanli.util.StringUtil; +import com.yeshi.fanli.util.VersionUtil; import net.sf.json.JSONObject; @@ -33,22 +35,64 @@ @Resource private HomeNavbarUserService homeNavbarUserService; + + @Resource + private DeviceSexService deviceSexService; + + /** - * 鑾峰彇瀵艰埅鏍忓唴瀹� - * + * 鏀瑰彉鎬у埆 * @param acceptData + * @param sex + * @param out + */ + @RequestMapping(value = "changeSex", method = RequestMethod.POST) + public void changeSex(AcceptData acceptData, Integer sex, PrintWriter out) { + try { + // 鑾峰彇璁惧瀹氫箟鎬у埆 + deviceSexService.save(acceptData.getDevice(), sex); + JSONObject data = new JSONObject(); + data.put("sex", sex); + out.print(JsonUtil.loadTrueResult(data)); + } catch (Exception e) { + out.print(JsonUtil.loadFalseResult("鍒囨崲澶辫触")); + } + } + + + /** + * 鑾峰彇瀵艰埅鏍忓唴瀹� + * @param acceptData + * @param uid + * @param sex 0閫氱敤 1鐢� 2濂� * @param out */ @RequestMapping(value = "getHomeItems", method = RequestMethod.POST) public void getHomeItems(AcceptData acceptData, Long uid, PrintWriter out) { - List<HomeNavbar> listNavbar = homeNavbarUserService.listEffectiveNavbar(uid, acceptData.getDevice()); - if (listNavbar == null) { - listNavbar = new ArrayList<HomeNavbar>(); + // 鑾峰彇璁惧瀹氫箟鎬у埆 + int deviceSex = deviceSexService.getDeviceSex(acceptData.getDevice()); + List<HomeNavbar> listNavbar = homeNavbarUserService.listEffectiveNavbar(uid, acceptData.getDevice(), deviceSex); + + List<HomeNavbar> list = new ArrayList<HomeNavbar>(); + if (listNavbar != null) { + list.addAll(listNavbar); + } + + if (!VersionUtil.greaterThan_1_6_0(acceptData.getPlatform(), acceptData.getVersion())) { + for (int i = 0; i < list.size(); i ++) { + NavbarTypeEnum type = list.get(i).getType(); + if (type == NavbarTypeEnum.commonTemplate) { + list.remove(i); + i--; + } + } } + JSONObject data = new JSONObject(); - data.put("count", listNavbar.size()); - data.put("listNavbar", JsonUtil.getApiCommonGson().toJson(listNavbar)); + data.put("sex", deviceSex); + data.put("count", list.size()); + data.put("listNavbar", JsonUtil.getApiCommonGson().toJson(list)); out.print(JsonUtil.loadTrueResult(data)); } @@ -85,14 +129,14 @@ } if (homeNavbar.getIsDefault()) { - listExist.add(homeNavbar); - if (homeNavbar.getIsFixed()) { nonCount++; } - + + listExist.add(homeNavbar); listItems.remove(homeNavbar); i--; + continue; } } @@ -183,6 +227,10 @@ homeNavbarUserService.addNavbarUser(uid, acceptData.getDevice(), list); out.print(JsonUtil.loadTrueResult("淇濆瓨鎴愬姛")); + + // 璁剧疆涓洪�氱敤 + deviceSexService.save(acceptData.getDevice(), 0); + } catch (HomeNavbarUserException e) { out.print(JsonUtil.loadFalseResult(1, e.getMsg())); } @@ -201,7 +249,8 @@ int nonCount = 0; List<HomeNavbar> listExist = new ArrayList<HomeNavbar>(); List<HomeNavbar> listItems = new ArrayList<HomeNavbar>(); - + + List<HomeNavbar> listNavbar = homeNavbarUserService.restoreSystemDefault(uid, acceptData.getDevice()); if (listNavbar != null && listNavbar.size() > 0) { listItems.addAll(listNavbar); @@ -220,13 +269,15 @@ if (!homeNavbar.getIsDefault()) { break; } else { + // 鍥哄畾涓暟 if (homeNavbar.getIsFixed()) { nonCount++; } + // 榛樿椤� listExist.add(homeNavbar); - listItems.remove(homeNavbar); i--; + continue; } } @@ -235,6 +286,10 @@ data.put("listExist", JsonUtil.getApiCommonGson().toJson(listExist)); data.put("listItems", JsonUtil.getApiCommonGson().toJson(listItems)); out.print(JsonUtil.loadTrueResult(data)); + + // 璁剧疆涓洪�氱敤 + deviceSexService.save(acceptData.getDevice(), 0); + } catch (HomeNavbarUserException e) { out.print(JsonUtil.loadFalseResult(1, e.getMsg())); } -- Gitblit v1.8.0