From c113e8b7e11a52bf1eeaf1ced7324db7ee4305fa Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期三, 24 六月 2020 09:36:22 +0800
Subject: [PATCH] 发圈零点关键词调整
---
fanli/src/main/java/com/yeshi/fanli/controller/apph5/AppH5HelpCenterController.java | 178 +++++++++++++++++++++++++++++++++++++---------------------
1 files changed, 113 insertions(+), 65 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 619f84f..60a1ef3 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
@@ -1,7 +1,9 @@
package com.yeshi.fanli.controller.apph5;
import java.io.PrintWriter;
+import java.util.ArrayList;
import java.util.List;
+import java.util.Set;
import javax.annotation.Resource;
@@ -9,14 +11,18 @@
import org.springframework.web.bind.annotation.RequestMapping;
import org.yeshi.utils.JsonUtil;
+import com.yeshi.fanli.entity.AppVersionInfo;
+import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.bus.help.HelpCenter;
import com.yeshi.fanli.entity.bus.help.HelpClass;
import com.yeshi.fanli.entity.bus.help.HelpInfo;
-import com.yeshi.fanli.exception.HelpCenterException;
+import com.yeshi.fanli.entity.bus.homemodule.AdActivityVersionControl.AdActivityType;
+import com.yeshi.fanli.service.inter.config.AppVersionService;
import com.yeshi.fanli.service.inter.help.HelpCenterService;
import com.yeshi.fanli.service.inter.help.HelpClassService;
-import com.yeshi.fanli.tag.PageEntity;
+import com.yeshi.fanli.service.inter.homemodule.AdActivityVersionControlService;
import com.yeshi.fanli.util.Constant;
+import com.yeshi.fanli.util.StringUtil;
import net.sf.json.JSONObject;
@@ -26,10 +32,16 @@
@Resource
private HelpCenterService helpCenterService;
-
+
@Resource
private HelpClassService helpClassService;
-
+
+ @Resource
+ private AppVersionService appVersionService;
+
+ @Resource
+ private AdActivityVersionControlService adActivityVersionControlService;
+
/**
* 鏌ヨ甯姪鍒楄〃
* @param callback
@@ -39,49 +51,68 @@
* @param out
*/
@RequestMapping(value = "query")
- public void query(String callback, Integer pageIndex, Integer pageSize, String key, Long cid,
+ public void query(String callback, AcceptData acceptData, Long pageId, Integer pageSize, String key, Long cid,
PrintWriter out) {
-
try {
-
- if (pageIndex == null)
- pageIndex = 1;
-
- if (pageSize == null)
+ if (pageSize == null)
pageSize = Constant.PAGE_SIZE;
-
- if (cid != null && cid == 0) {
- cid = null; // 鏌ヨ鍏ㄩ儴
- }
-
- List<HelpCenter> helpCenterList =
- helpCenterService.queryIdAndTitle((pageIndex - 1) * pageSize, pageSize, key, cid);
-
- if (helpCenterList == null || helpCenterList.size() == 0) {
- JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(2, "娌℃湁鏇村浜�"));
- return;
- }
-
- long count = helpCenterService.countQuery(key, cid);
-
- int totalPage = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1);
- PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage);
-
-
- JSONObject data = new JSONObject();
- data.put("pe", pe);
- data.put("result_list", helpCenterList);
-
- out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult(data)));
+ if (cid != null && cid == 0)
+ cid = null; // 鏌ヨ鍏ㄩ儴
+
+ if (!StringUtil.isNullOrEmpty(key))
+ key = key.trim();
+
+ if (pageId == null)
+ pageId = 0L;
+
+ List<HelpCenter> list1 = helpCenterService.listValid(pageId, pageSize, key, cid);
+ List<HelpCenter> list = new ArrayList<>();
+ if (list1 != null && list1.size() > 0)
+ list.addAll(list1);
+
+ 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);
+ 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);
+
+ for (int i = 0; i < list.size(); i++) {
+ if (!sets.contains(list.get(i).getId())) {
+ list.remove(i--);
+ }
+ }
+ }
+ }
+
+ 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) {
- out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadFalseResult("鏆傛湭鏁版嵁")));
+ JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏆傛棤鏁版嵁"));
e.printStackTrace();
}
}
-
-
-
+
/**
* 鑾峰彇甯姪璇︽儏
* @param callback
@@ -89,65 +120,82 @@
* @param out
*/
@RequestMapping(value = "getInfo")
- public void getInfo(String callback, Long id, PrintWriter out){
+ public void getInfo(String callback, Long id, PrintWriter out) {
try {
if (id == null) {
- out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadFalseResult("璇ュ唴瀹逛笉瀛樺湪")));
+ JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇ュ唴瀹逛笉瀛樺湪"));
return;
}
-
HelpCenter crrent = helpCenterService.selectByPrimaryKeyCache(id);
-
if (crrent == null) {
- out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadFalseResult("璇ュ唴瀹瑰凡涓嶅瓨鍦�")));
+ JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇ュ唴瀹瑰凡涓嶅瓨鍦�"));
return;
}
-
+
String html = null;
-
-
HelpInfo helpInfo = helpCenterService.getHelpInfoCache(id);
if (helpInfo != null) {
html = helpInfo.getHtml();
}
-
+
JSONObject data = new JSONObject();
- data.put("id",crrent.getId());
- data.put("title",crrent.getTitle());
+ data.put("id", crrent.getId());
+ data.put("title", crrent.getTitle());
data.put("html", html);
-
- out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult(data)));
-
- } catch (HelpCenterException e) {
- out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadFalseResult("鏈幏鍙栧埌鍐呭")));
+ JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
+ } catch (Exception e) {
+ JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏁版嵁澶辫触"));
e.printStackTrace();
}
}
-
-
+
/**
* 鏌ヨ鍚敤鐨勫垎绫�
* @param callback
* @param out
*/
@RequestMapping(value = "getClass")
- public void getClass(String callback, PrintWriter out) {
-
+ public void getClass(String callback, AcceptData acceptData, PrintWriter out) {
try {
+ List<HelpClass> resultList = new ArrayList<>();
+
List<HelpClass> list = helpClassService.getClassByState(1);
- if (list == null || list.size() == 0) {
- JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏆傛棤鏁版嵁"));
- return;
+ if (list != null && list.size() > 0) {
+ resultList.addAll(list);
+ }
+
+ // 鐗堟湰杩囨护
+ int version = Integer.parseInt(acceptData.getVersion());
+ String platform = acceptData.getPlatform().toLowerCase();
+ List<AppVersionInfo> versionList = appVersionService.listByPlatformAndMinVersionCode(platform, version);
+ 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", list);
+ 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