From f4a0f2acc63d7785eab108419a4e16f5f688cb95 Mon Sep 17 00:00:00 2001 From: yujian <yujian@163.com> Date: 星期六, 18 一月 2020 12:06:27 +0800 Subject: [PATCH] 用户注册信息 --- fanli/src/main/java/com/yeshi/fanli/controller/admin/homemodule/SpecialCardAdminController.java | 200 ++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 144 insertions(+), 56 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/admin/homemodule/SpecialCardAdminController.java b/fanli/src/main/java/com/yeshi/fanli/controller/admin/homemodule/SpecialCardAdminController.java index a8fb15d..629247e 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/admin/homemodule/SpecialCardAdminController.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/admin/homemodule/SpecialCardAdminController.java @@ -2,7 +2,9 @@ import java.io.PrintWriter; import java.util.ArrayList; +import java.util.HashSet; import java.util.List; +import java.util.Set; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; @@ -15,16 +17,22 @@ import com.google.gson.Gson; import com.google.gson.GsonBuilder; import com.google.gson.reflect.TypeToken; +import com.yeshi.fanli.entity.AppVersionInfo; +import com.yeshi.fanli.entity.bus.homemodule.AdActivityVersionControl; +import com.yeshi.fanli.entity.bus.homemodule.AdActivityVersionControl.AdActivityType; import com.yeshi.fanli.entity.bus.homemodule.Special; import com.yeshi.fanli.entity.bus.homemodule.SpecialCard; import com.yeshi.fanli.exception.homemodule.FloatADException; import com.yeshi.fanli.exception.homemodule.SpecialException; +import com.yeshi.fanli.service.inter.config.AppVersionService; +import com.yeshi.fanli.service.inter.homemodule.AdActivityVersionControlService; import com.yeshi.fanli.service.inter.homemodule.SpecialCardService; import com.yeshi.fanli.service.inter.homemodule.SpecialService; import com.yeshi.fanli.tag.PageEntity; import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.StringUtil; +import net.sf.json.JSONArray; import net.sf.json.JSONObject; @Controller @@ -33,10 +41,15 @@ @Resource private SpecialService specialService; - + @Resource private SpecialCardService specialCardService; - + + @Resource + private AppVersionService appVersionService; + + @Resource + private AdActivityVersionControlService adActivityVersionControlService; /** * 淇濆瓨淇℃伅 @@ -46,16 +59,16 @@ * @param out */ @RequestMapping(value = "save") - public void save(String callback, SpecialCard specialCard, HttpServletRequest request,PrintWriter out) { + public void save(String callback, SpecialCard specialCard, HttpServletRequest request, PrintWriter out) { try { - // 1. 鍏堝垽鏂環ttpRequest 鏄惁鍚湁鏂囦欢绫诲瀷 + // 1. 鍏堝垽鏂環ttpRequest 鏄惁鍚湁鏂囦欢绫诲瀷 if (request instanceof MultipartHttpServletRequest) { - MultipartHttpServletRequest fileRequest = (MultipartHttpServletRequest) request; - specialCardService.saveObject(fileRequest.getFile("file"), specialCard); - }else{ - specialCardService.saveObject(null, specialCard); - } - + MultipartHttpServletRequest fileRequest = (MultipartHttpServletRequest) request; + specialCardService.saveObject(fileRequest.getFile("file"), specialCard); + } else { + specialCardService.saveObject(null, specialCard); + } + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("淇濆瓨鎴愬姛")); } catch (FloatADException e) { JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e.getMsg())); @@ -64,18 +77,19 @@ e.printStackTrace(); } } - + /** * 鏌ヨ + * * @param callback * @param pageIndex * @param pageSize - * @param key 妯$硦鏌ヨ锛氳鏄庛�佹爣璇� + * @param key + * 妯$硦鏌ヨ锛氳鏄庛�佹爣璇� * @param out */ @RequestMapping(value = "query") - public void query(String callback, Integer pageIndex, Integer pageSize, String key, - Integer sort, PrintWriter out) { + public void query(String callback, Integer pageIndex, Integer pageSize, String key, Integer sort, PrintWriter out) { if (pageIndex == null || pageIndex < 1) { pageIndex = 1; @@ -86,21 +100,20 @@ } try { - List<SpecialCard> list = specialCardService.listQuery((pageIndex - 1) * pageSize, - pageSize, key, sort); + List<SpecialCard> list = specialCardService.listQuery((pageIndex - 1) * pageSize, pageSize, key, sort); if (list == null || list.size() == 0) { JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏆傛棤鏁版嵁")); return; } - + long count = specialCardService.countlistQuery(key); - + int totalPage = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1); PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage); GsonBuilder gsonBuilder = new GsonBuilder(); - gsonBuilder.serializeNulls(); + gsonBuilder.serializeNulls(); Gson gson = gsonBuilder.setDateFormat("yyyy/MM/dd HH:mm:ss").create(); JSONObject data = new JSONObject(); @@ -116,9 +129,9 @@ } - /** * 鍒犻櫎 + * * @param callback * @param idArray * @param out @@ -133,16 +146,17 @@ } Gson gson = new Gson(); - List<Long> list = gson.fromJson(idArray, new TypeToken<ArrayList<Long>>() {}.getType()); + List<Long> list = gson.fromJson(idArray, new TypeToken<ArrayList<Long>>() { + }.getType()); if (list == null || list.size() == 0) { JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏈娴嬪埌鍒犻櫎鐨勬暟鎹�")); return; } - + int count = specialCardService.deleteBatchByPrimaryKey(list); - - JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("鎴愬姛鍒犻櫎["+ count +"]鏉℃暟鎹�")); + + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("鎴愬姛鍒犻櫎[" + count + "]鏉℃暟鎹�")); } catch (Exception e) { JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鍒犻櫎澶辫触")); @@ -151,9 +165,6 @@ } - - - /** * 淇濆瓨淇℃伅 * @@ -162,16 +173,18 @@ * @param out */ @RequestMapping(value = "saveSpecial") - public void saveSpecial(String callback, Special record, String jumpType, HttpServletRequest request,PrintWriter out) { + public void saveSpecial(String callback, Special record, String jumpType, HttpServletRequest request, + PrintWriter out) { try { - // 1. 鍏堝垽鏂環ttpRequest 鏄惁鍚湁鏂囦欢绫诲瀷 + // 1. 鍏堝垽鏂環ttpRequest 鏄惁鍚湁鏂囦欢绫诲瀷 if (request instanceof MultipartHttpServletRequest) { - MultipartHttpServletRequest fileRequest = (MultipartHttpServletRequest) request; - specialService.saveObject(fileRequest.getFile("file"), fileRequest.getFile("file2"), fileRequest.getFile("file3"), record, jumpType); - }else{ - specialService.saveObject(null, null, null, record, jumpType); - } - + MultipartHttpServletRequest fileRequest = (MultipartHttpServletRequest) request; + specialService.saveObject(fileRequest.getFile("file"), fileRequest.getFile("file2"), + fileRequest.getFile("file3"), record, jumpType); + } else { + specialService.saveObject(null, null, null, record, jumpType); + } + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("淇濆瓨鎴愬姛")); } catch (SpecialException e) { JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e.getMsg())); @@ -181,9 +194,9 @@ } } - /** * 鍒犻櫎涓撻 + * * @param callback * @param idArray * @param out @@ -198,16 +211,17 @@ } Gson gson = new Gson(); - List<Long> list = gson.fromJson(idArray, new TypeToken<ArrayList<Long>>() {}.getType()); + List<Long> list = gson.fromJson(idArray, new TypeToken<ArrayList<Long>>() { + }.getType()); if (list == null || list.size() == 0) { JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏈娴嬪埌鍒犻櫎鐨勬暟鎹�")); return; } - + int count = specialService.deleteBatchByPrimaryKey(list); - - JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("鎴愬姛鍒犻櫎["+ count +"]鏉℃暟鎹�")); + + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("鎴愬姛鍒犻櫎[" + count + "]鏉℃暟鎹�")); } catch (Exception e) { JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鍒犻櫎澶辫触")); @@ -215,7 +229,6 @@ } } - /** * 淇敼鎺掑簭 @@ -236,19 +249,20 @@ e.printStackTrace(); } } - + /** - * 鏌ヨ涓撻 + * 鏌ヨ涓撻 + * * @param callback * @param pageIndex * @param pageSize - * @param bannerId + * @param bannerId * @param out */ @RequestMapping(value = "querySpecial") - public void querySpecial(String callback, Integer pageIndex, Integer pageSize, String key, - Long cardId, Integer sex, PrintWriter out) { - + public void querySpecial(String callback, Integer pageIndex, Integer pageSize, String key, Long cardId, Integer sex, + String version, String platform, PrintWriter out) { + pageSize = 100; if (pageIndex == null || pageIndex < 1) { pageIndex = 1; } @@ -261,23 +275,62 @@ out.print(JsonUtil.loadFalseResult("鍞竴鏍囪瘑ID涓嶈兘涓虹┖")); return; } - + + List<AppVersionInfo> versionList = null; + if (!StringUtil.isNullOrEmpty(version) || !StringUtil.isNullOrEmpty(platform)) { + versionList = new ArrayList<>(); + if (!StringUtil.isNullOrEmpty(version)) { + AppVersionInfo appVersion = appVersionService.selectByPrimaryKey(Long.parseLong(version)); + if (appVersion != null) + versionList.add(appVersion); + } else { + List<AppVersionInfo> appVersionList = appVersionService.getAppVersionInfoListByPlatform(platform); + if (appVersionList != null) { + versionList.addAll(appVersionList); + } + } + } + try { - + List<Special> list = specialService.listQueryByCard((pageIndex - 1) * pageSize, pageSize, cardId, key, sex); + long count = specialService.countlistQueryByCard(cardId, key, sex); + // 鑾峰彇鏈夋晥鐨勪笓棰� if (list == null || list.size() == 0) { JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏆傛棤鏁版嵁")); return; } - - long count = specialService.countlistQueryByCard(cardId, key, sex); - + + // 杩囨护 + if (versionList != null) { + if (versionList.size() > 0) { + List<Long> sourceIdList = new ArrayList<>(); + for (Special special : list) { + sourceIdList.add(special.getId()); + } + List<Long> versionIdList = new ArrayList<>(); + for (AppVersionInfo versionInfo : versionList) + versionIdList.add(versionInfo.getId()); + Set<Long> sets = adActivityVersionControlService.filterSourceIdByVersion(sourceIdList, + AdActivityType.special, versionIdList); + for (int i = 0; i < list.size(); i++) { + if (!sets.contains(list.get(i).getId())) { + list.remove(i--); + } + } + count = list.size(); + } else { + list.clear(); + count = 0; + } + } + int totalPage = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1); PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage); GsonBuilder gsonBuilder = new GsonBuilder(); - gsonBuilder.serializeNulls(); + gsonBuilder.serializeNulls(); Gson gson = gsonBuilder.setDateFormat("yyyy/MM/dd HH:mm:ss").create(); JSONObject data = new JSONObject(); @@ -290,8 +343,43 @@ JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎿嶄綔寮傚父")); e.printStackTrace(); } - } - - + + /** + * 璁剧疆鐗堟湰 + * + * @param callback + * @param id + * @param moveType + * @param sex + * @param out + */ + @RequestMapping(value = "setVersions") + public void setVersions(String callback, Long id, String versions, PrintWriter out) { + JSONArray versionArray = JSONArray.fromObject(versions); + List<Long> versionIds = new ArrayList<>(); + for (int i = 0; i < versionArray.size(); i++) { + Long version = versionArray.optLong(i); + versionIds.add(version); + } + try { + specialService.setVersions(id, versionIds); + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("")); + } catch (Exception e) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e.getMessage())); + } + } + + @RequestMapping(value = "getVersions") + public void getVersions(String callback, Long id, PrintWriter out) { + List<AdActivityVersionControl> list = adActivityVersionControlService + .listByTypeAndSourceId(AdActivityType.special, id); + + List<Long> versionList = new ArrayList<>(); + if (list != null) + for (AdActivityVersionControl control : list) + versionList.add(control.getVersion().getId()); + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(versionList)); + } + } -- Gitblit v1.8.0