From 98b1a0affd69bbe63223c21fdd2c404e8bedfccb Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期三, 20 五月 2020 17:25:08 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/div' into 2.1.2 --- fanli/src/main/java/com/yeshi/fanli/controller/wxmp/v1/ConfigController.java | 109 +++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 107 insertions(+), 2 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/wxmp/v1/ConfigController.java b/fanli/src/main/java/com/yeshi/fanli/controller/wxmp/v1/ConfigController.java index b25da08..e41f8a0 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/wxmp/v1/ConfigController.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/wxmp/v1/ConfigController.java @@ -1,6 +1,7 @@ package com.yeshi.fanli.controller.wxmp.v1; import java.io.PrintWriter; +import java.util.ArrayList; import java.util.List; import javax.annotation.Resource; @@ -8,18 +9,28 @@ import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; import org.yeshi.utils.IPUtil; import org.yeshi.utils.JsonUtil; import com.yeshi.fanli.dto.WXMPAcceptData; +import com.yeshi.fanli.entity.bus.homemodule.FloatAD; +import com.yeshi.fanli.entity.common.JumpDetailV2; import com.yeshi.fanli.entity.push.DeviceActive; import com.yeshi.fanli.entity.system.BusinessSystem; +import com.yeshi.fanli.entity.system.ConfigKeyEnum; import com.yeshi.fanli.entity.system.SystemClientParams; +import com.yeshi.fanli.service.inter.common.JumpDetailV2Service; import com.yeshi.fanli.service.inter.config.BusinessSystemService; +import com.yeshi.fanli.service.inter.config.ConfigService; import com.yeshi.fanli.service.inter.config.SystemClientParamsService; +import com.yeshi.fanli.service.inter.homemodule.FloatADService; +import com.yeshi.fanli.service.inter.homemodule.SwiperPictureService; import com.yeshi.fanli.service.inter.push.DeviceActiveService; import com.yeshi.fanli.util.StringUtil; import com.yeshi.fanli.util.ThreadUtil; +import com.yeshi.fanli.vo.homemodule.BannerVO; +import com.yeshi.fanli.vo.homemodule.FloatImgDetailVO; import net.sf.json.JSONArray; import net.sf.json.JSONObject; @@ -36,6 +47,18 @@ @Resource private DeviceActiveService deviceActiveService; + + @Resource + private ConfigService configService; + + @Resource + private SwiperPictureService swiperPictureService; + + @Resource + private FloatADService floatADService; + + @Resource + private JumpDetailV2Service jumpDetailV2Service; /** * 鑾峰彇绯荤粺閰嶇疆淇℃伅 @@ -62,7 +85,9 @@ JSONArray array = new JSONArray(); for (SystemClientParams params : systemClientParamsList) { JSONObject item = new JSONObject(); - item.put(params.getKey(), params.getValue()); + item.put("key", params.getKey()); + item.put("value", params.getValue()); + array.add(item); } out.print(JsonUtil.loadTrueResult(array)); String ipInfo = IPUtil.getRemotIP(request) + ":" + request.getRemotePort(); @@ -81,8 +106,88 @@ da.setMac(null); deviceActiveService.addDeviceActive(da); } - } }); } + + @RequestMapping(value = "getUserConfig", method = RequestMethod.POST) + public void getUserConfig(WXMPAcceptData acceptData, PrintWriter out) { + try { + // 鐢ㄦ埛鍗忚閾炬帴 + String serviceProtocol = configService.get(ConfigKeyEnum.serviceProtocolLink.getKey()); + // 闅愮鏉℃閾炬帴 + String privacyProtocol = configService.get(ConfigKeyEnum.privacyProtocolLink.getKey()); + JSONObject data = new JSONObject(); + data.put("serviceProtocolLink", serviceProtocol); + data.put("privacyProtocolLink", privacyProtocol); + + // 鎴戠殑鐣岄潰banner + List<BannerVO> banner = swiperPictureService.getByBannerCardAndVersion("my_interface_banner", + acceptData.getPlatform(), Integer.parseInt(acceptData.getVersion())); + if (banner == null) + banner = new ArrayList<BannerVO>(); + data.put("banner", JsonUtil.getApiCommonGson().toJson(banner)); + + out.print(JsonUtil.loadTrueResult(data)); + } catch (Exception e) { + out.print(JsonUtil.loadFalseResult("鑾峰彇澶辫触")); + e.printStackTrace(); + } + + } + + /** + * 棣栭〉閰嶇疆淇℃伅 + * + * @param acceptData + * @param out + */ + @RequestMapping(value = "getHomeConfig") + public void getHomeConfigNew(WXMPAcceptData acceptData, Long uid, String callback, PrintWriter out) { + if (uid != null && uid == 0L) + uid = null; + + String platform = acceptData.getPlatform(); + String version = acceptData.getVersion(); + + // 娲诲姩寮规 + List<FloatAD> listAD = new ArrayList<FloatAD>(); + List<FloatImgDetailVO> listVO = new ArrayList<FloatImgDetailVO>(); + List<FloatAD> list = floatADService.getValidFloatADCache(FloatAD.POSITION_INDEX, null, platform, + Integer.parseInt(version)); + if (list != null && !list.isEmpty()) + listAD.addAll(list); + + for (int i = 0; i < listAD.size(); i++) { + FloatAD floatAD = listAD.get(i); + JumpDetailV2 jumpDetail = floatAD.getJumpDetail(); + if (jumpDetail != null) { + jumpDetail = jumpDetailV2Service.selectByPrimaryKey(jumpDetail.getId()); + if (jumpDetail != null) { + jumpDetail.setNeedLogin(floatAD.isJumpNeedLogin()); + } + } + FloatImgDetailVO floatImgVO = new FloatImgDetailVO(); + floatImgVO.setId(floatAD.getId().toString()); + floatImgVO.setImg(floatAD.getPicture()); + floatImgVO.setParams(floatAD.getParams()); + floatImgVO.setJumpDetail(jumpDetail); + floatImgVO.setShowTime(floatAD.getShowMode()); + floatImgVO.setAccountLogin(floatAD.isJumpNeedLogin()); + if (floatAD.getPlaySound() != null) + floatImgVO.setPlaySound(floatAD.getPlaySound());// 榛樿閮芥挱鏀鹃煶鏁� + else + floatImgVO.setPlaySound(false); + listVO.add(floatImgVO); + } + + JSONObject data = new JSONObject(); + data.put("listAD", JsonUtil.getApiCommonGson().toJson(listVO)); + + if (StringUtil.isNullOrEmpty(callback)) + out.print(JsonUtil.loadTrueResult(data)); + else + out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult(data))); + } + } -- Gitblit v1.8.0