package com.ks.daylucky.controller.admin;
|
|
import com.google.gson.Gson;
|
import com.ks.daylucky.pojo.DO.ActivityExtraInfo;
|
import com.ks.daylucky.pojo.VO.admin.ActivityAdminVo;
|
import com.ks.daylucky.service.ActivityExtraInfoService;
|
import com.ks.daylucky.util.factory.vo.LuckyActivityFactory;
|
import com.ks.lib.common.exception.ParamsException;
|
import com.ks.lucky.exception.*;
|
import com.ks.lucky.pojo.DO.LuckyActivity;
|
import com.ks.lucky.remote.service.LuckyActivityService;
|
import net.sf.json.JSONObject;
|
import org.apache.dubbo.config.annotation.Reference;
|
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;
|
import javax.servlet.http.HttpServletRequest;
|
import java.util.Date;
|
|
@Controller
|
@RequestMapping("/admin/activity")
|
public class AdminActivityController {
|
|
@Reference(version = "1.0.0")
|
private LuckyActivityService luckyActivityService;
|
|
@Resource
|
private ActivityExtraInfoService activityExtraInfoService;
|
|
|
/**
|
* 添加活动
|
*
|
* @param request
|
* @param data
|
* @return
|
*/
|
@ResponseBody
|
@RequestMapping("addActivity")
|
public String addActivity(HttpServletRequest request, String data, String type) {
|
ActivityAdminVo vo = new Gson().fromJson(data, ActivityAdminVo.class);
|
Long sponsorId = 1L;
|
Long appId = 4L;
|
LuckyActivity activity = LuckyActivityFactory.create(sponsorId, vo);
|
activity.setAppId(appId);
|
try {
|
Long activityId = luckyActivityService.addActivity(activity);
|
ActivityExtraInfo extraInfo = LuckyActivityFactory.getActivityExtra(vo.getOpenInfo());
|
extraInfo.setActivityId(activityId);
|
activityExtraInfoService.add(extraInfo);
|
|
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);
|
return JsonUtil.loadTrueResult(result);
|
} catch (ParamsException e) {
|
e.printStackTrace();
|
return JsonUtil.loadFalseResult("参数不完整");
|
} catch (LuckyActivityException e) {
|
e.printStackTrace();
|
} catch (LuckyActivitySponsorInfoException e) {
|
e.printStackTrace();
|
} catch (LuckyActivityAwardException e) {
|
e.printStackTrace();
|
} catch (LuckyActivityOpenInfoException e) {
|
e.printStackTrace();
|
} catch (LuckySponsorAdException e) {
|
e.printStackTrace();
|
} catch (LuckyActivityAwardMaterialException e) {
|
e.printStackTrace();
|
}
|
|
return JsonUtil.loadFalseResult("添加出错");
|
}
|
|
|
|
|
|
}
|