|  |  | 
 |  |  |     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, "兑换成功!"); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  | } |