From 5e7b0ed4a154ad067cbcf4aa1a1c7cce32f9864c Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期五, 26 四月 2024 18:02:17 +0800 Subject: [PATCH] 唯品会链接解析升级 --- fanli/src/main/java/com/yeshi/fanli/controller/apph5/AppH5HelpCenterController.java | 316 +++++++++++++++++++++++++++------------------------ 1 files changed, 167 insertions(+), 149 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/apph5/AppH5HelpCenterController.java b/fanli/src/main/java/com/yeshi/fanli/controller/apph5/AppH5HelpCenterController.java index fb06e54..48f0a40 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/apph5/AppH5HelpCenterController.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/apph5/AppH5HelpCenterController.java @@ -31,174 +31,192 @@ @RequestMapping("api/apph5/v1/helpCenter") public class AppH5HelpCenterController { - @Resource - private HelpCenterService helpCenterService; + @Resource + private HelpCenterService helpCenterService; - @Resource - private HelpClassService helpClassService; + @Resource + private HelpClassService helpClassService; - @Resource - private AppVersionService appVersionService; + @Resource + private AppVersionService appVersionService; - @Resource - private AdActivityVersionControlService adActivityVersionControlService; + @Resource + private AdActivityVersionControlService adActivityVersionControlService; - /** - * 鏌ヨ甯姪鍒楄〃 - * @param callback - * @param pageSize - * @param key - * @param out - */ - @RequestMapping(value = "query") - public void query(String callback, AcceptData acceptData, Long pageId, Integer pageSize, String key, Long cid, - PrintWriter out) { - //鍏朵粬APP鏃犲府鍔╀腑蹇冨垪琛� - acceptData.setSystem(SystemEnum.blks); - try { - if (pageSize == null) - pageSize = Constant.PAGE_SIZE; + /** + * 鏌ヨ甯姪鍒楄〃 + * + * @param callback + * @param pageSize + * @param key + * @param out + */ + @RequestMapping(value = "query") + public void query(String callback, AcceptData acceptData, Long pageId, Integer pageSize, String key, Long cid, + PrintWriter out) { + //鍏朵粬APP鏃犲府鍔╀腑蹇冨垪琛� + if (acceptData.getSystem() == null) + acceptData.setSystem(SystemEnum.blks); + try { + if (pageSize == null) + pageSize = Constant.PAGE_SIZE; - if (cid != null && cid == 0) - cid = null; // 鏌ヨ鍏ㄩ儴 + if (cid != null && cid == 0) + cid = null; // 鏌ヨ鍏ㄩ儴 - if (!StringUtil.isNullOrEmpty(key)) - key = key.trim(); + if (!StringUtil.isNullOrEmpty(key)) + key = key.trim(); - if (pageId == null) - pageId = 0L; + if (pageId == null) + pageId = 0L; - List<HelpCenter> list1 = helpCenterService.listValid(pageId, pageSize, key, cid,acceptData.getSystem()); - List<HelpCenter> list = new ArrayList<>(); - if (list1 != null && list1.size() > 0) - list.addAll(list1); + List<HelpCenter> list1 = helpCenterService.listValid(pageId, pageSize, key, cid, acceptData.getSystem()); + List<HelpCenter> list = new ArrayList<>(); + if (list1 != null && list1.size() > 0) + list.addAll(list1); - if (list.size() == 0) { + if (list.size() == 0) { + pageId = 0L; + } else { + pageId = list.get(list.size() - 1).getId(); + // 鐗堟湰杩囨护 + int version = Integer.parseInt(acceptData.getVersion()); + String platform = acceptData.getPlatform().toLowerCase(); + List<AppVersionInfo> versionList = appVersionService.listByPlatformAndMinVersionCode(platform, version, acceptData.getSystem()); + if (versionList == null || versionList.size() <= 0) { + //闄嶇骇 + versionList = appVersionService.listByPlatformAndMaxVersionCode(platform, version, acceptData.getSystem()); + if(versionList!=null&&versionList.size()>0) { + version = versionList.get(versionList.size() - 1).getVersionCode(); + versionList = appVersionService.listByPlatformAndMinVersionCode(platform, version, acceptData.getSystem()); + } + } + if (versionList == null || versionList.size() <= 0) { + list.clear(); + } else { + List<Long> sourceIdList = new ArrayList<>(); + for (HelpCenter record : list) { + sourceIdList.add(record.getId()); + } + List<Long> versionIdList = new ArrayList<>(); + for (AppVersionInfo versionInfo : versionList) + versionIdList.add(versionInfo.getId()); + Set<Long> sets = adActivityVersionControlService.filterSourceIdByVersion(sourceIdList, + AdActivityType.helpCenter, versionIdList); - pageId = 0L; - } else { + for (int i = 0; i < list.size(); i++) { + if (!sets.contains(list.get(i).getId())) { + list.remove(i--); + } + } + } + } - pageId = list.get(list.size() - 1).getId(); + JSONObject data = new JSONObject(); + data.put("pageId", pageId); + data.put("result_list", JsonUtil.getApiCommonGson().toJson(list)); + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data)); + } catch (Exception e) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏆傛棤鏁版嵁")); + e.printStackTrace(); + } + } - // 鐗堟湰杩囨护 - int version = Integer.parseInt(acceptData.getVersion()); - String platform = acceptData.getPlatform().toLowerCase(); - List<AppVersionInfo> versionList = appVersionService.listByPlatformAndMinVersionCode(platform, version,acceptData.getSystem()); - if (versionList == null || versionList.size() <= 0) { - list.clear(); - } else { - List<Long> sourceIdList = new ArrayList<>(); - for (HelpCenter record : list) { - sourceIdList.add(record.getId()); - } - List<Long> versionIdList = new ArrayList<>(); - for (AppVersionInfo versionInfo : versionList) - versionIdList.add(versionInfo.getId()); - Set<Long> sets = adActivityVersionControlService.filterSourceIdByVersion(sourceIdList, - AdActivityType.helpCenter, versionIdList); + /** + * 鑾峰彇甯姪璇︽儏 + * + * @param callback + * @param id + * @param out + */ + @RequestMapping(value = "getInfo") + public void getInfo(String callback, Long id, PrintWriter out) { + try { + if (id == null) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇ュ唴瀹逛笉瀛樺湪")); + return; + } + HelpCenter crrent = helpCenterService.selectByPrimaryKeyCache(id); + if (crrent == null) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇ュ唴瀹瑰凡涓嶅瓨鍦�")); + return; + } - for (int i = 0; i < list.size(); i++) { - if (!sets.contains(list.get(i).getId())) { - list.remove(i--); - } - } - } - } + String html = null; + HelpInfo helpInfo = helpCenterService.getHelpInfoCache(id); + if (helpInfo != null) { + html = helpInfo.getHtml(); + } - JSONObject data = new JSONObject(); - data.put("pageId", pageId); - data.put("result_list", JsonUtil.getApiCommonGson().toJson(list)); - JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data)); - } catch (Exception e) { - JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏆傛棤鏁版嵁")); - e.printStackTrace(); - } - } + JSONObject data = new JSONObject(); + data.put("id", crrent.getId()); + data.put("title", crrent.getTitle()); + data.put("html", html); + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data)); + } catch (Exception e) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏁版嵁澶辫触")); + e.printStackTrace(); + } + } - /** - * 鑾峰彇甯姪璇︽儏 - * @param callback - * @param id - * @param out - */ - @RequestMapping(value = "getInfo") - public void getInfo(String callback, Long id, PrintWriter out) { - try { - if (id == null) { - JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇ュ唴瀹逛笉瀛樺湪")); - return; - } - HelpCenter crrent = helpCenterService.selectByPrimaryKeyCache(id); - if (crrent == null) { - JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇ュ唴瀹瑰凡涓嶅瓨鍦�")); - return; - } + /** + * 鏌ヨ鍚敤鐨勫垎绫� + * + * @param callback + * @param out + */ + @RequestMapping(value = "getClass") + public void getClass(String callback, AcceptData acceptData, PrintWriter out) { + if (acceptData.getSystem() == null) + acceptData.setSystem(SystemEnum.blks); + try { + List<HelpClass> resultList = new ArrayList<>(); - String html = null; - HelpInfo helpInfo = helpCenterService.getHelpInfoCache(id); - if (helpInfo != null) { - html = helpInfo.getHtml(); - } + List<HelpClass> list = helpClassService.getClassByState(1, acceptData.getSystem()); + if (list != null && list.size() > 0) { + resultList.addAll(list); + } - JSONObject data = new JSONObject(); - data.put("id", crrent.getId()); - data.put("title", crrent.getTitle()); - data.put("html", html); - JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data)); - } catch (Exception e) { - JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏁版嵁澶辫触")); - e.printStackTrace(); - } - } + // 鐗堟湰杩囨护 + int version = Integer.parseInt(acceptData.getVersion()); + String platform = acceptData.getPlatform().toLowerCase(); + List<AppVersionInfo> versionList = appVersionService.listByPlatformAndMinVersionCode(platform, version, acceptData.getSystem()); + if (versionList == null || versionList.size() <= 0) { + //闄嶇骇 + versionList = appVersionService.listByPlatformAndMaxVersionCode(platform, version, acceptData.getSystem()); + if(versionList!=null&&versionList.size()>0) { + version = versionList.get(versionList.size() - 1).getVersionCode(); + versionList = appVersionService.listByPlatformAndMinVersionCode(platform, version, acceptData.getSystem()); + } + } - /** - * 鏌ヨ鍚敤鐨勫垎绫� - * @param callback - * @param out - */ - @RequestMapping(value = "getClass") - public void getClass(String callback, AcceptData acceptData, PrintWriter out) { - acceptData.setSystem(SystemEnum.blks); - try { - List<HelpClass> resultList = new ArrayList<>(); + if (versionList == null || versionList.size() <= 0) { + resultList.clear(); + } else { + List<Long> sourceIdList = new ArrayList<>(); + for (HelpClass record : resultList) { + sourceIdList.add(record.getId()); + } + List<Long> versionIdList = new ArrayList<>(); + for (AppVersionInfo versionInfo : versionList) + versionIdList.add(versionInfo.getId()); + Set<Long> sets = adActivityVersionControlService.filterSourceIdByVersion(sourceIdList, + AdActivityType.helpClass, versionIdList); - List<HelpClass> list = helpClassService.getClassByState(1,acceptData.getSystem()); - if (list != null && list.size() > 0) { - resultList.addAll(list); - } + for (int i = 0; i < list.size(); i++) { + if (!sets.contains(list.get(i).getId())) { + list.remove(i--); + } + } + } - // 鐗堟湰杩囨护 - int version = Integer.parseInt(acceptData.getVersion()); - String platform = acceptData.getPlatform().toLowerCase(); - List<AppVersionInfo> versionList = appVersionService.listByPlatformAndMinVersionCode(platform, version,acceptData.getSystem()); - if (versionList == null || versionList.size() <= 0) { - resultList.clear(); - } else { - List<Long> sourceIdList = new ArrayList<>(); - for (HelpClass record : resultList) { - sourceIdList.add(record.getId()); - } - List<Long> versionIdList = new ArrayList<>(); - for (AppVersionInfo versionInfo : versionList) - versionIdList.add(versionInfo.getId()); - Set<Long> sets = adActivityVersionControlService.filterSourceIdByVersion(sourceIdList, - AdActivityType.helpClass, versionIdList); - - for (int i = 0; i < list.size(); i++) { - if (!sets.contains(list.get(i).getId())) { - list.remove(i--); - - } - } - } - - JSONObject data = new JSONObject(); - data.put("class_list", JsonUtil.getApiCommonGson().toJson(resultList)); - JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data)); - } catch (Exception e) { - JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎿嶄綔寮傚父")); - e.printStackTrace(); - } - } + JSONObject data = new JSONObject(); + data.put("class_list", JsonUtil.getApiCommonGson().toJson(resultList)); + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data)); + } catch (Exception e) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎿嶄綔寮傚父")); + e.printStackTrace(); + } + } } -- Gitblit v1.8.0