GoodsConfigAction.java 3.09 KB
package com.cjs.site.action.user.point;

import java.util.Map;

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

import com.cjs.site.biz.user.fund.FundBiz;
import com.cjs.site.biz.user.point.GoodsBuyBiz;
import com.cjs.site.biz.user.point.LotteryBiz;
import com.cjs.site.dao.user.point.GoodsConfigDao;
import com.cjs.site.dao.user.point.PointUserDao;
import com.cjs.site.model.user.point.PointUserInfo;
import com.cjs.site.util.lang.JsonUtil;
import com.cjs.site.util.web.ActionUtil;
import com.cjs.site.util.web.Token;

/**
 * 商城信息列表
 * @author xiangwei
 *
 */

@Controller
@RequestMapping("/user/goods")
public class GoodsConfigAction {

    Logger                 log = LogManager.getLogger(GoodsConfigAction.class);
    @Autowired
    private GoodsConfigDao dao;
    @Autowired
    private PointUserDao   userDao;
    @Autowired
    private FundBiz        fundBiz;
    @Autowired
    private GoodsBuyBiz    goodsBuyBiz;
    @Autowired
    private LotteryBiz     lotteryBiz;

    /**商品记录*/
    @RequestMapping("/list")
    @Token(save = true, group = "goods_buy")
    public String search(@RequestParam Map<String, Object> params, Model model) {
        String userId = ActionUtil.getUser().getClient_id();
        Object balance = fundBiz.balance(userId).get("enable_balance");
        String enableBalance = balance == null ? "0" : balance + "";
        PointUserInfo pointUser = userDao.queryByUserId(userId);

        model.addAttribute("goods", dao.search());
        model.addAttribute("enableBalance", enableBalance);
        model.addAttribute("pointAmount", pointUser == null ? 0.00 : pointUser.getPointAmount());
        model.addAttribute("params", params);
        return "user/ration/placingAmount.jsp";
    }

    /**积分购买商品*/
    @RequestMapping("/buy")
    @Token(remove = true, group = "goods_buy")
    public @ResponseBody String buyGoods(@RequestParam Map<String, Object> params, Model model) {
        Integer goodsId = Integer.parseInt(params.get("goodsId") + "");
        Integer buyAmount = Integer.parseInt(params.get("ration_count") + "");
        return goodsBuyBiz.buyGoods(goodsId, buyAmount);
    }

    /**
     * 根据id查询配置的信息
     */
    @RequestMapping("/queryById")
    public @ResponseBody String queryById(Integer id) {
        String result = JsonUtil.toFormJson(dao.queryById(id), true);
        return result;
    }

    /**
     * 中奖信息
     */
    @RequestMapping("/lottery")
    public @ResponseBody String lottery(Integer id) {
        return lotteryBiz.lottery(id);
    }

    /**
    * 查询资格和次数
    */
    @RequestMapping("/lotteryCount")
    public @ResponseBody String queryLottery(Integer id) {
        return JsonUtil.toFormJson(lotteryBiz.queryLottery(id), true);
    }
}