From 6c09cbd70388ae53ec593de253f69cfa1a3eeda7 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期六, 06 二月 2021 15:41:25 +0800 Subject: [PATCH] 活动管理界面完善 --- service-daylucky/src/main/java/com/ks/daylucky/controller/admin/AdminActivityController.java | 83 +++++++++++++++++++++++++++++++++++++++-- 1 files changed, 79 insertions(+), 4 deletions(-) diff --git a/service-daylucky/src/main/java/com/ks/daylucky/controller/admin/AdminActivityController.java b/service-daylucky/src/main/java/com/ks/daylucky/controller/admin/AdminActivityController.java index 6288be9..a2da663 100644 --- a/service-daylucky/src/main/java/com/ks/daylucky/controller/admin/AdminActivityController.java +++ b/service-daylucky/src/main/java/com/ks/daylucky/controller/admin/AdminActivityController.java @@ -1,9 +1,14 @@ package com.ks.daylucky.controller.admin; import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; import com.ks.daylucky.pojo.DO.ActivityExtraInfo; +import com.ks.daylucky.pojo.DO.ActivityTag; import com.ks.daylucky.pojo.VO.admin.ActivityAdminVo; +import com.ks.daylucky.pojo.VO.admin.AdminAcceptData; import com.ks.daylucky.service.ActivityExtraInfoService; +import com.ks.daylucky.service.ActivityTagService; +import com.ks.daylucky.util.factory.vo.ActivityAdminVoFactory; import com.ks.daylucky.util.factory.vo.LuckyActivityFactory; import com.ks.lib.common.exception.ParamsException; import com.ks.lucky.exception.*; @@ -15,9 +20,14 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import org.yeshi.utils.JsonUtil; +import org.yeshi.utils.StringUtil; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; +import java.lang.reflect.Type; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; @Controller @RequestMapping("/admin/activity") @@ -29,20 +39,21 @@ @Resource private ActivityExtraInfoService activityExtraInfoService; + @Resource + private ActivityTagService activityTagService; /** * 娣诲姞娲诲姩 * - * @param request * @param data * @return */ @ResponseBody @RequestMapping("addActivity") - public String addActivity(HttpServletRequest request, String data) { + public String addActivity(AdminAcceptData acceptData, String data, String type) { ActivityAdminVo vo = new Gson().fromJson(data, ActivityAdminVo.class); - Long sponsorId = 1L; - Long appId = 4L; + Long sponsorId = acceptData.getSponsors().getId(); + Long appId = 5L; LuckyActivity activity = LuckyActivityFactory.create(sponsorId, vo); activity.setAppId(appId); try { @@ -50,6 +61,33 @@ ActivityExtraInfo extraInfo = LuckyActivityFactory.getActivityExtra(vo.getOpenInfo()); extraInfo.setActivityId(activityId); activityExtraInfoService.add(extraInfo); + //鎻愬彇Tags + if (vo.getActivity().getTags() != null && vo.getActivity().getTags().size() > 0) { + activityTagService.setTags(activityId, (vo.getActivity().getTags())); + } + + switch (type) { + //淇濆瓨 + case "save": + //鎻愪氦瀹℃牳 + luckyActivityService.submitVerify(activityId); + //閫氳繃瀹℃牳 + luckyActivityService.verifyActivity(activityId, true, "绯荤粺鑷姩閫氳繃瀹℃牳"); + break; + //鍙戝竷 + case "publish": + //鎻愪氦瀹℃牳 + luckyActivityService.submitVerify(activityId); + //閫氳繃瀹℃牳 + luckyActivityService.verifyActivity(activityId, true, "绯荤粺鑷姩閫氳繃瀹℃牳"); + //1鍒嗛挓鍚庡紑濮� + Date startTime = new Date(System.currentTimeMillis() + 1000 * 60L); + Date finishTime = new Date(startTime.getTime() + 1000 * 60 * 60 * 24L * extraInfo.getValidDay()); + luckyActivityService.publishActivity(activityId, startTime, finishTime); + break; + default: + break; + } JSONObject result = new JSONObject(); result.put("id", activityId); @@ -74,5 +112,42 @@ return JsonUtil.loadFalseResult("娣诲姞鍑洪敊"); } + @ResponseBody + @RequestMapping("getActivityDetail") + public String getActivityDetail(AdminAcceptData acceptData, Long id) { + LuckyActivity activity = luckyActivityService.getActivityDetail(id); + List<ActivityTag> tagList = activityTagService.getTagList(id); + ActivityExtraInfo info = activityExtraInfoService.getDetail(activity.getId()); + ActivityAdminVo bean = ActivityAdminVoFactory.create(activity, tagList, info.getValidDay()); + return JsonUtil.loadTrueResult(JsonUtil.getSimpleGson().toJson(bean)); + } + + @ResponseBody + @RequestMapping("listActivity") + public String listActivity(AdminAcceptData acceptData, String states, int page, int limit) { + List<Integer> stateList = null; + if (!StringUtil.isNullOrEmpty(states)) { + Type type = new TypeToken<List<Integer>>() { + }.getType(); + stateList = new Gson().fromJson(states, type); + } + List<LuckyActivity> activityList = luckyActivityService.getActivityList(acceptData.getAppId(), acceptData.getSponsors().getId(), stateList, null, page, limit); + //鑾峰彇璇︽儏 + List<ActivityAdminVo.ActivityBean> voList = new ArrayList<>(); + for (LuckyActivity activity : activityList) { + activity = luckyActivityService.getActivityDetail(activity.getId()); + ActivityExtraInfo info = activityExtraInfoService.getDetail(activity.getId()); + List<ActivityTag> tagList = activityTagService.getTagList(activity.getId()); + voList.add(ActivityAdminVoFactory.createActivityBean(activity, tagList)); + } + + + long count = luckyActivityService.countActivity(acceptData.getAppId(), acceptData.getSponsors().getId(), stateList, null); + JSONObject data = new JSONObject(); + data.put("list", voList); + data.put("count", count); + return JsonUtil.loadTrueResult(JsonUtil.getSimpleGson().toJson(data)); + } + } -- Gitblit v1.8.0