@Override
@Transactional(rollbackFor = Exception.class)
public JsonResult getStartLookingTrures(Long userId, BigDecimal latitude, BigDecimal longitude, Integer cityId) {
//调用service里的方法需要用到
TreasureLaunchService treasureLaunchService=(TreasureLaunchService) AopContext.currentProxy();//调用service方法用到事务回滚时需要用到
treasureLaunchService.setJinBiRecord(userId,jinBi,"寻到宝物:"+foundTreasure.get("treasureName"),orderNum);
}
public void setJinBiRecord(Long userId,Long jinBi,String Remark,String orderNum){
//3 修改金币余额(扣除所需金币)
userMapper.reduceGoldCoins(userId, jinBi);
User user = userMapper.selectById(userId);//获取user信息
//4 添加金币明细
GoldCoinsRecords goldCoinsRecords = new GoldCoinsRecords();
goldCoinsRecords.setGoldCoinsBalance(user.getGoldCoins());
goldCoinsRecords.setType(4);//类型(1:后台操作2:阅读奖励3:兑换金币4:寻宝扣除)
goldCoinsRecords.setUserId(userId);
goldCoinsRecords.setGoldCoins(jinBi);
goldCoinsRecords.setState(2);//金币状态(1加2减)
goldCoinsRecords.setRemark(Remark);
goldCoinsRecords.setCreateTime(new Date());
goldCoinsRecords.setOrderNum(orderNum);
goldCoinsRecordsMapper.insert(goldCoinsRecords);//执行生成兑换明细记录
}
版权声明:本文为qq_38188762原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。