| | |
| | | public static final String BEV = "ShopBizUserScore_BEV"; |
| | | |
| | | |
| | | /** |
| | | * 进入积分兑换界面 |
| | | */ |
| | | @SaveRequestToken |
| | | @RequestMapping(value = "/intoExchangePage") |
| | | public ModelAndView exchangeScore(String userId) { |
| | | BizUser bizUser = new BizUser(); |
| | | ModelAndView modelAndView = new ModelAndView("admin/shop/user-score-exchange"); |
| | | if (StringUtils.isNotBlank(userId)) { |
| | | bizUser = bizUserService.findById(userId); |
| | | if (bizUser.getCurrentScore() == null) { |
| | | bizUser.setCurrentScore(0); |
| | | } |
| | | } |
| | | modelAndView.addObject("obj", bizUser); |
| | | return modelAndView; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 兑换积分 |
| | | */ |
| | | @Transactional(rollbackFor = Exception.class) |
| | | @RemoveRequestToken |
| | | @RequestMapping(value = "/exchangeScore") |
| | | public @ResponseBody |
| | | AjaxResult exchangeScore(ExchangeScorePOJO pojo) { |
| | | //校验参数中用户ID和用户兑换积分是否有效 |
| | | if (pojo == null || StringUtils.isBlank(pojo.getUserId()) |
| | | || pojo.getScore() == null || pojo.getScore() == 0) { |
| | | return new AjaxResult(AjaxResult.STATUS_FAIL, "提交参数有误!"); |
| | | } |
| | | //兑换积分用户信息 |
| | | BizUser bizUser = bizUserService.findById(pojo.getUserId()); |
| | | if (bizUser == null) { |
| | | return new AjaxResult(AjaxResult.STATUS_FAIL, "没有查询到相应用户!"); |
| | | } |
| | | if (bizUser.getCurrentScore() == null) { |
| | | bizUser.setCurrentScore(0); |
| | | } |
| | | //如果兑换积分大于用户当前积分 |
| | | if (pojo.getScore() > bizUser.getCurrentScore()) { |
| | | return new AjaxResult(AjaxResult.STATUS_FAIL, "兑换积分大于用户当前积分!"); |
| | | } |
| | | //剩余积分 = 当前积分 - 兑换积分 |
| | | Integer remainScore = bizUser.getCurrentScore() - pojo.getScore(); |
| | | //当前操作用户信息 |
| | | SysUsers loginUser = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); |
| | | //修改用户剩余积分 |
| | | BizUser updateModel = new BizUser(); |
| | | updateModel.setUserId(bizUser.getUserId()); |
| | | updateModel.setCurrentScore(remainScore); |
| | | updateModel.setUpdateBy(loginUser.getSuName()); |
| | | updateModel.setUpdateTime(new Date()); |
| | | bizUserService.modifyByModel(updateModel); |
| | | //添加积分兑换记录 |
| | | ShopScoreExchange insertExchange = new ShopScoreExchange(); |
| | | insertExchange.setCreateBy(loginUser.getSuName()); |
| | | insertExchange.setUpdateBy(loginUser.getSuName()); |
| | | insertExchange.setUserId(bizUser.getOpenId()); |
| | | insertExchange.setExchangeScore(pojo.getScore()); |
| | | insertExchange.setOperateId(loginUser.getSuId()); |
| | | insertExchange.setRemark(pojo.getRemarks()); |
| | | shopScoreExchangeDao.insert(insertExchange); |
| | | |
| | | return new AjaxResult(AjaxResult.STATUS_SUCCESS, "兑换成功!"); |
| | | } |
| | | |
| | | |
| | | } |