| | |
| | | package com.yeshi.fanli.controller.apph5;
|
| | |
|
| | | import java.io.PrintWriter;
|
| | | import java.util.List;
|
| | |
|
| | | import javax.annotation.Resource;
|
| | |
|
| | | import net.sf.json.JSONObject;
|
| | |
|
| | | import org.springframework.stereotype.Controller;
|
| | | import org.springframework.web.bind.annotation.RequestMapping;
|
| | |
|
| | | import com.yeshi.fanli.entity.bus.help.HelpCenter;
|
| | | import com.yeshi.fanli.entity.bus.help.HelpInfo;
|
| | | import com.yeshi.fanli.exception.HelpCenterException;
|
| | | import com.yeshi.fanli.service.inter.help.HelpCenterService;
|
| | | import com.yeshi.fanli.tag.PageEntity;
|
| | | import com.yeshi.fanli.util.Constant;
|
| | | import com.yeshi.fanli.util.annotation.RequestNoSignValidate;
|
| | | import org.yeshi.utils.JsonUtil;
|
| | |
|
| | | @Controller
|
| | | @RequestMapping("api/apph5/v1/helpCenter")
|
| | | public class AppH5HelpCenterController {
|
| | |
|
| | | @Resource
|
| | | private HelpCenterService helpCenterService;
|
| | | |
| | | |
| | | /**
|
| | | * 查询帮助列表
|
| | | * @param callback
|
| | | * @param pageIndex
|
| | | * @param pageSize
|
| | | * @param key
|
| | | * @param out
|
| | | */
|
| | | @RequestMapping(value = "query")
|
| | | public void query(String callback, Integer pageIndex, Integer pageSize, String key, |
| | | PrintWriter out) {
|
| | | |
| | | try {
|
| | | |
| | | if (pageIndex == null) |
| | | pageIndex = 1;
|
| | | |
| | | if (pageSize == null) |
| | | pageSize = Constant.PAGE_SIZE;
|
| | | |
| | | List<HelpCenter> helpCenterList = |
| | | helpCenterService.queryIdAndTitle((pageIndex - 1) * pageSize, pageSize, key);
|
| | | |
| | | if (helpCenterList == null || helpCenterList.size() == 0) {
|
| | | JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(2, "没有更多了"));
|
| | | return;
|
| | | } |
| | | |
| | | long count = helpCenterService.countQuery(key);
|
| | | |
| | | 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)));
|
| | |
|
| | | } catch (Exception e) {
|
| | | out.print(JsonUtil.loadJSONP(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) {
|
| | | out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadFalseResult("该内容不存在")));
|
| | | return;
|
| | | }
|
| | | |
| | | HelpCenter crrent = helpCenterService.selectByPrimaryKeyCache(id);
|
| | | |
| | | if (crrent == null) {
|
| | | out.print(JsonUtil.loadJSONP(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("html", html);
|
| | | |
| | | out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult(data)));
|
| | | |
| | | } catch (HelpCenterException e) {
|
| | | out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadFalseResult("未获取到内容")));
|
| | | e.printStackTrace();
|
| | | }
|
| | | }
|
| | | |
| | | }
|
| | | 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; |
| | | |
| | | import com.yeshi.fanli.entity.SystemEnum; |
| | | import org.springframework.stereotype.Controller; |
| | | 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.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.service.inter.homemodule.AdActivityVersionControlService; |
| | | import com.yeshi.fanli.util.Constant; |
| | | import com.yeshi.fanli.util.StringUtil; |
| | | |
| | | import net.sf.json.JSONObject; |
| | | |
| | | @Controller |
| | | @RequestMapping("api/apph5/v1/helpCenter") |
| | | public class AppH5HelpCenterController { |
| | | |
| | | @Resource |
| | | private HelpCenterService helpCenterService; |
| | | |
| | | @Resource |
| | | private HelpClassService helpClassService; |
| | | |
| | | @Resource |
| | | private AppVersionService appVersionService; |
| | | |
| | | @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无帮助中心列表 |
| | | if (acceptData.getSystem() == null) |
| | | acceptData.setSystem(SystemEnum.blks); |
| | | try { |
| | | if (pageSize == null) |
| | | pageSize = Constant.PAGE_SIZE; |
| | | |
| | | 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, acceptData.getSystem()); |
| | | 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, 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); |
| | | |
| | | 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) { |
| | | 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; |
| | | } |
| | | |
| | | 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("html", html); |
| | | 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, AcceptData acceptData, PrintWriter out) { |
| | | if (acceptData.getSystem() == null) |
| | | acceptData.setSystem(SystemEnum.blks); |
| | | try { |
| | | List<HelpClass> resultList = new ArrayList<>(); |
| | | |
| | | List<HelpClass> list = helpClassService.getClassByState(1, acceptData.getSystem()); |
| | | 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, 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) { |
| | | 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(); |
| | | } |
| | | } |
| | | |
| | | } |