package com.wh.controller;
import com.wh.dao.DaoSupport;
import com.wh.service.CommunityService;
import com.wh.service.FranchiseeService;
import com.wh.service.PrizeService;
import com.wh.utils.*;
import org.apache.log4j.Logger;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.Map;
/**
* @author zzs
*/
@Controller
@RequestMapping(value = "prize", produces = "application/json;charset=UTF-8")
public class PrizeController extends BaseController {
private Logger logger = Logger.getLogger(SysController.class);
@Autowired
PrizeService prizeService;
@Autowired
FranchiseeService franchiseeService;
@Autowired
CommunityService communityService;
@Resource(name = "daoSupport")
public DaoSupport dao;
/**
* 查询奖品列表
*
* @return
* @throws Throwable
*/
@ResponseBody
@RequestMapping(value = "goodNamelist", produces = "application/json;charset=UTF-8")
@RequiresPermissions("prizeManagement:list")
public Object getPayOrderRecords(HttpServletRequest request, Integer draw, Integer start, Integer length
, String prizes_id, String prizes_goodname,String parent_community_id, String parent_franchisee_id) throws Throwable {
if (start == null) {
start = 0;
}
if (length == null) {
length = 10;
}
//根据当前登陆用户, 查询出自身的加盟商id, 过滤出我能看哪些订单数据
Integer root_franchisee_id = franchiseeService.getCurrentUserFranchiseeId();
//查询支付订单列表
//ret.count = 数据量
//ret.list = 数量项目集合
Map<String, Object> ret = prizeService.goodNamelist(root_franchisee_id, draw, start,
length, prizes_id,prizes_goodname, parent_community_id,parent_franchisee_id);
return ret;
}
/**
* 检查奖品名是否已存在
*
* @return
* @throws Throwable
*/
@ResponseBody
@RequestMapping(value = "checkPrizesGoodnameExists")
public Object checkUserNameExists(String prizes_goodname) throws Throwable {
return prizeService.existsPrizesGoodname(prizes_goodname);
}
/**
* 添加奖品
*
* @return
* @throws Throwable
*/
@ResponseBody
@RequestMapping(value = "createPrize")
@RequiresPermissions("prizeManagement:create")
public Object createUser(String prizes_id, String prizes_goodname, String prizes_probability,
String prizes_count, String prizes_imageurl,String prizes_isaward) throws Throwable {
CheckParam.CheckStr("奖品名", prizes_goodname, 20);
CheckParam.CheckStr("奖品中奖概率", prizes_probability, 20);
CheckParam.CheckStr("奖品库存", prizes_count, 20);
return prizeService.createUser(prizes_id, prizes_goodname, prizes_probability, prizes_count, prizes_imageurl,prizes_isaward);
}
/**
* 删除奖品
*
* @return
* @throws Throwable
*/
@ResponseBody
@RequestMapping(value = "delPrize")
@RequiresPermissions("prizeManagement:delete")
public Object delPrize(HttpServletRequest request, String prizes_id) throws Throwable {
CheckParam.CheckStr("奖品id", prizes_id, 50);
return prizeService.delPrize(prizes_id);
}
/**
* 查询对应的奖品详细
*
* @return
* @throws Throwable
*/
@ResponseBody
@RequestMapping(value = "getPrizeGoods")
public Object getPrizeGoods(HttpServletRequest request, String prizes_id) throws Throwable {
Integer root_franchisee_id = franchiseeService.getCurrentUserFranchiseeId();
return prizeService.getPrizeGoods( prizes_id);
}
/**
* 编辑奖品
*
* @return
* @throws Throwable
*/
@ResponseBody
@RequestMapping(value = "editPrize")
@RequiresPermissions("prizeManagement:update")
public Object editUser(String prizes_id, String prizes_goodname,
String prizes_imageurl,String prizes_count,String prizes_probability ) throws Throwable {
CheckParam.CheckStr("奖品id", prizes_id, 50);
CheckParam.CheckStr("奖品名", prizes_goodname, 50);
CheckParam.CheckStr("奖品库存", prizes_count, 11);
CheckParam.CheckStr("奖品中奖概率", prizes_probability, 11);
CheckParam.CheckStr("奖品图片地址", prizes_imageurl, 50);
return prizeService.editPrize(prizes_id, prizes_goodname, prizes_imageurl, prizes_count,prizes_probability);
}
/**
* 查询中奖用户列表
*
* @return
* @throws Throwable
*/
@ResponseBody
@RequestMapping(value = "prizeUserlist", produces = "application/json;charset=UTF-8")
@RequiresPermissions("prizeUserManagement:list")
public Object getprizeUserlist(HttpServletRequest request, Integer draw, Integer start, Integer length
, String prizemes_prizes_id, String prizemes_goodname,String prizemes_userphone) throws Throwable {
if (start == null) {
start = 0;
}
if (length == null) {
length = 10;
}
//ret.count = 数据量
//ret.list = 数量项目集合
Map<String, Object> ret = prizeService.prizeUserlist(draw, start,
length, prizemes_prizes_id,prizemes_goodname,prizemes_userphone);
return ret;
}
/**
* 派发奖品
*
* @return
* @throws Throwable
*/
@ResponseBody
@RequestMapping(value = "update_isdone")
public Object sendPrize(HttpServletRequest request, String prizemes_id) throws Throwable {
return prizeService.sendPrize( prizemes_id);
}
}