package com.ks.daylucky.controller.api.client; import com.google.gson.Gson; import com.ks.daylucky.pojo.DO.AdviceRecord; import com.ks.daylucky.pojo.DO.AppConfig; import com.ks.daylucky.pojo.DO.SponsorSignUpRecord; import com.ks.daylucky.pojo.DTO.ConfigKeyEnum; import com.ks.daylucky.pojo.DTO.SimpleShareInfo; import com.ks.daylucky.pojo.VO.AcceptData; import com.ks.daylucky.pojo.VO.AlipayXCXShareInfoVO; import com.ks.daylucky.service.AdviceService; import com.ks.daylucky.service.AppConfigService; import com.ks.daylucky.service.SponsorSignUpService; import com.ks.daylucky.util.activity.ActivityUtil; import net.sf.json.JSONObject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import org.yeshi.utils.JsonUtil; import javax.annotation.Resource; @Controller @RequestMapping("api/client/config") public class ConfigController { @Resource private AppConfigService appConfigService; @Resource private AdviceService adviceService; @Resource private SponsorSignUpService sponsorSignUpService; @ResponseBody @RequestMapping("getConfig") public String getConfig(AcceptData acceptData) { ConfigKeyEnum[] configKeyEnums = new ConfigKeyEnum[]{ ConfigKeyEnum.newerCourse, ConfigKeyEnum.commonQuestion }; JSONObject data = new JSONObject(); for (ConfigKeyEnum key : configKeyEnums) { AppConfig config = appConfigService.getConfigCache(acceptData.getApp().getId(), key, acceptData.getVersion()); data.put(key.name(), config.getValue()); } //获取应用分享图 AppConfig config = appConfigService.getConfigCache(acceptData.getApp().getId(), ConfigKeyEnum.shareImageLink, acceptData.getVersion()); if (config != null) { AppConfig appConfig = appConfigService.getConfigCache(acceptData.getApp().getId(), ConfigKeyEnum.appShareInfo, acceptData.getVersion()); SimpleShareInfo info = new Gson().fromJson(appConfig.getValue(), SimpleShareInfo.class); AlipayXCXShareInfoVO shareInfoDTO = new AlipayXCXShareInfoVO(); shareInfoDTO.setPath("/pages/rewards/rewards"); shareInfoDTO.setTitle(info.getTitle()); shareInfoDTO.setDesc(info.getDesc()); shareInfoDTO.setBgImgUrl(config.getValue()); data.put("shareInfo", shareInfoDTO); } return JsonUtil.loadTrueResult(data); } /** * 建议 * * @param acceptData * @param content * @return */ @ResponseBody @RequestMapping("advice") public String advice(AcceptData acceptData, String content) { adviceService.addRecord(new AdviceRecord(acceptData.getUid(), content)); return JsonUtil.loadTrueResult(""); } /** * 赞助商报名 * * @param acceptData * @param identity * @param provider * @param phone * @return */ @ResponseBody @RequestMapping("sponsorSignUp") public String sponsorSignUp(AcceptData acceptData, String identity, String provider, String phone) { SponsorSignUpRecord record = new SponsorSignUpRecord(); record.setIdentity(identity); record.setPhone(phone); record.setProvider(provider); record.setUid(acceptData.getUid()); sponsorSignUpService.addRecord(record); return JsonUtil.loadTrue(0, null, "提交成功").toString(); } }