| | |
| | | package com.nq.service.impl; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.nq.common.ServerResponse; |
| | | import com.nq.dao.UserAssetsMapper; |
| | | import com.nq.enums.EUserAssets; |
| | | import com.nq.pojo.UserAssets; |
| | |
| | | |
| | | @Override |
| | | public UserAssets assetsByTypeAndUserId(String accetType, Integer userId) { |
| | | if(accetType.equals("SZHB")){ |
| | | accetType = "US"; |
| | | } |
| | | QueryWrapper<UserAssets> queryWrapper = new QueryWrapper<>(); |
| | | queryWrapper.eq("accect_type",accetType); |
| | | queryWrapper.eq("user_id",userId); |
| | |
| | | return userAssets; |
| | | } |
| | | |
| | | @Override |
| | | public ServerResponse updateUserAssets(Integer id, String amt) { |
| | | UserAssets userAssets = userAssetsMapper.selectById(id); |
| | | |
| | | BigDecimal bigAmt = new BigDecimal(amt); |
| | | if(amt.contains("-")){ |
| | | if(userAssets.getAvailableBalance().compareTo(bigAmt.negate())<0){ |
| | | return ServerResponse.createByErrorMsg("账户余额不足"); |
| | | } |
| | | } |
| | | userAssets.setAvailableBalance(userAssets.getAvailableBalance().add(bigAmt)); |
| | | if( userAssetsMapper.updateById(userAssets)>0){ |
| | | return ServerResponse.createBySuccess(); |
| | | }else{ |
| | | return ServerResponse.createByErrorMsg("修改金额失败"); |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | @Override |
| | |
| | | |
| | | @Override |
| | | public BigDecimal getAvailableBalance(String accetType, Integer userId) { |
| | | if(accetType.equals("SZHB")){ |
| | | accetType = "US"; |
| | | } |
| | | return assetsByTypeAndUserId(accetType,userId).getAvailableBalance(); |
| | | } |
| | | |
| | |
| | | @Override |
| | | public Boolean availablebalanceChange(String accetType, Integer userId, EUserAssets eUserAssets, BigDecimal amount, String desc, String descType) { |
| | | |
| | | |
| | | if(accetType.equals("SZHB")){ |
| | | accetType = "US"; |
| | | } |
| | | UserAssets userAssets = assetsByTypeAndUserId(accetType,userId); |
| | | if(Objects.equals(eUserAssets.getCode(), EUserAssets.BUY.getCode())){ |
| | | userAssets.setAvailableBalance(userAssets.getAvailableBalance().add(amount)); |