From 37194e2d4b4ab85f7f29c1e900c406afe294579a Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期二, 13 八月 2019 12:17:48 +0800 Subject: [PATCH] 模拟请求缓存商品数据,淘礼金商品兼容多个appkey --- fanli/src/main/java/com/yeshi/fanli/controller/admin/ConfigAdminController.java | 185 +++++++++++++++++++++++++++++++++++++++------- 1 files changed, 156 insertions(+), 29 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/admin/ConfigAdminController.java b/fanli/src/main/java/com/yeshi/fanli/controller/admin/ConfigAdminController.java index 7bd8784..709e298 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/admin/ConfigAdminController.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/admin/ConfigAdminController.java @@ -3,48 +3,175 @@ import java.io.PrintWriter; import java.util.ArrayList; import java.util.List; -import java.util.Map; import javax.annotation.Resource; +import org.springframework.cache.ehcache.EhCacheCacheManager; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; - -import com.yeshi.fanli.entity.common.Config; -import com.yeshi.fanli.service.inter.config.ConfigService; import org.yeshi.utils.JsonUtil; + +import com.yeshi.fanli.entity.AppVersionInfo; +import com.yeshi.fanli.entity.common.Config; +import com.yeshi.fanli.service.inter.config.AppVersionService; +import com.yeshi.fanli.service.inter.config.ConfigService; +import com.yeshi.fanli.tag.PageEntity; +import com.yeshi.fanli.util.Constant; +import com.yeshi.fanli.util.StringUtil; + +import net.sf.json.JSONObject; @Controller @RequestMapping("admin/new/api/v1/config") public class ConfigAdminController { - + @Resource private ConfigService configService; - - @RequestMapping(value = "getConfigList", method = RequestMethod.POST) - public void getConfigList(PrintWriter out){ - List<Config> configList = configService.getAllList(); - out.print(JsonUtil.loadTrueResult(configList)); - } - - @RequestMapping(value = "updateConfig", method = RequestMethod.POST) - public void updateConfig(String map, PrintWriter out) { - List<Config> list = configService.getAllList(); - List<Config> newList = new ArrayList<Config>(); - Map<String, String> data = JsonUtil.parseData(map); - for (Config config : list) { - String key = config.getKey(); - if(data.containsKey(key)){ - String value =data.get(key); - if(!config.getValue().equals(value)){ - config.setValue(value); - newList.add(config); - } + + @Resource + private AppVersionService appVersionService; + + @Resource + private EhCacheCacheManager ehCacheCacheManager; + + /** + * 鏌ヨ鍒楄〃 - 鏂板悗鍙� + * + * @param callback + * @param key + * 鏌ヨ璇� 鍚嶇О + * @param pageIndex + * @param out + */ + @RequestMapping(value = "getNewConfigList") + public void getNewConfigList(String callback, String key, Integer pageIndex, PrintWriter out) { + + try { + + if (pageIndex == null || pageIndex < 0) { + pageIndex = 1; } + + List<Config> list = configService.listObjects(key, pageIndex); + + if (list == null || list.size() == 0) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏆傛棤鏇村鏁版嵁")); + return; + } + + int pageSize = Constant.PAGE_SIZE; + + int count = configService.getCount(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", list); + + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data)); + + } catch (Exception e) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏌ヨ澶辫触")); + e.printStackTrace(); } - configService.update(newList); - out.print(JsonUtil.loadTrueResult("淇敼鎴愬姛")); - return; } + + /** + * 鍙傛暟淇敼 - 鏂板悗鍙� + * + * @param callback + * @param config + * @param out + */ + @RequestMapping(value = "saveModify") + public void saveModify(String callback, Config config, PrintWriter out) { + + Long id = config.getId(); + if (id == null) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("ID涓嶈兘涓虹┖")); + return; + } + + try { + Config crentconfig = configService.getConfig(id); + if (crentconfig == null) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎿嶄綔鏁版嵁宸蹭笉瀛樺湪")); + return; + } + + if (StringUtil.isNullOrEmpty(config.getName()) || StringUtil.isNullOrEmpty(config.getValue())) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇存槑銆佹湁鏁堝�间笉鑳戒负绌�")); + return; + } + + crentconfig.setName(config.getName()); + crentconfig.setValue(config.getValue()); + + if (!StringUtil.isNullOrEmpty(config.getBeizhu())) { + crentconfig.setBeizhu(config.getBeizhu()); + } + + configService.update(crentconfig); + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("淇敼鎴愬姛")); + + } catch (Exception e) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("淇敼澶辫触")); + e.printStackTrace(); + } + } + + /** + * 鏌ヨ鍒楄〃 - 鏂板悗鍙� + * + * @param callback + * @param key + * 鏌ヨ璇� 鍚嶇О + * @param pageIndex + * @param out + */ + @RequestMapping(value = "getVersionList") + public void getVersionList(String callback, String key, Integer pageIndex, PrintWriter out) { + + try { + AppVersionInfo appVersionInfo = new AppVersionInfo(); + appVersionInfo.setVersion("鍏ㄦ帹"); + + // IOS鐗堟湰 + List<AppVersionInfo> list1 = appVersionService.getAppVersionInfoListByPlatform(AppVersionInfo.PLATFORM_IOS); + if (list1 == null) { + list1 = new ArrayList<AppVersionInfo>(); + } + List<AppVersionInfo> listIOS = new ArrayList<AppVersionInfo>(); + listIOS.add(appVersionInfo); + listIOS.addAll(list1); + + // 瀹夊崜鐗堟湰 + List<AppVersionInfo> list2 = appVersionService + .getAppVersionInfoListByPlatform(AppVersionInfo.PLATFORM_ANDROID); + if (list2 == null) { + list2 = new ArrayList<AppVersionInfo>(); + } + List<AppVersionInfo> listAndroid = new ArrayList<AppVersionInfo>(); + listAndroid.add(appVersionInfo); + listAndroid.addAll(list2); + + JSONObject data = new JSONObject(); + data.put("android", listAndroid); + data.put("ios", listIOS); + + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data)); + + } catch (Exception e) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鐗堟湰鏌ヨ澶辫触")); + e.printStackTrace(); + } + } + + @RequestMapping(value = "clearCaches") + public void clearCaches(String callback, PrintWriter out) { + ehCacheCacheManager.getCacheManager().clearAll(); + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("")); + } + } -- Gitblit v1.8.0