| | |
| | | import com.google.gson.Gson; |
| | | import com.nq.dao.*; |
| | | import com.nq.enums.EConfigKey; |
| | | import com.nq.enums.EStockType; |
| | | import com.nq.enums.EUserAssets; |
| | | import com.nq.enums.TradeType; |
| | | import com.nq.pay.PayUtil; |
| | | import com.nq.pojo.*; |
| | | import com.nq.service.*; |
| | |
| | | @Autowired |
| | | UserAssetsMapper userAssetsMapper; |
| | | |
| | | @Autowired |
| | | UserAssetsServices userAssetsServices; |
| | | |
| | | @Resource |
| | | StockTimeSettingMapper stockTimeSettingMapper; |
| | | |
| | | @Autowired |
| | | TransactionLogService transactionLogService; |
| | | |
| | | @Transactional |
| | | public ServerResponse outMoney(String amt, String with_Pwd,String accsetType,String bankId,HttpServletRequest request) throws Exception { |
| | | public ServerResponse outMoney(String amt, String with_Pwd,String accsetType,String bankName,String bankNo,HttpServletRequest request) throws Exception { |
| | | if (StringUtils.isBlank(amt)) { |
| | | return ServerResponse.createByErrorMsg("The parameter cannot be null"); |
| | | } |
| | |
| | | if (user.getIsActive() != 2) { |
| | | return ServerResponse.createByErrorMsg("未实名认证",request); |
| | | } |
| | | UserBank userBank = this.userBankMapper.selectById(bankId); |
| | | if (userBank == null) { |
| | | return ServerResponse.createByErrorMsg("银行卡不存在",request); |
| | | } |
| | | |
| | | if (user.getAccountType().intValue() == 1) { |
| | | return ServerResponse.createByErrorMsg("模拟用户无法提取资金",request); |
| | | } |
| | |
| | | userWithdraw.setWithAmt(new BigDecimal(amt)); |
| | | userWithdraw.setApplyTime(new Date()); |
| | | userWithdraw.setWithName(user.getRealName()); |
| | | userWithdraw.setBankNo(userBank.getBankNo()); |
| | | userWithdraw.setBankName(userBank.getBankName()); |
| | | userWithdraw.setBankAddress(userBank.getBankAddress()); |
| | | userWithdraw.setBankNo(bankNo); |
| | | userWithdraw.setBankName(bankName); |
| | | userWithdraw.setWithStatus(Integer.valueOf(0)); |
| | | BigDecimal withfee = siteSetting.getWithFeePercent().multiply(new BigDecimal(amt)).add(new BigDecimal(siteSetting.getWithFeeSingle().intValue())); |
| | | userWithdraw.setWithFee(withfee); |
| | |
| | | } |
| | | |
| | | private boolean getServerResponse() { |
| | | StockTimeSetting stockTimeSetting = stockTimeSettingMapper.selectOne(new QueryWrapper<StockTimeSetting>().eq("accets_type","IN")); |
| | | StockTimeSetting stockTimeSetting = stockTimeSettingMapper.selectOne(new QueryWrapper<StockTimeSetting>().eq("accets_type", EStockType.ST.getCode())); |
| | | if(stockTimeSetting == null){ |
| | | return false; |
| | | } |
| | |
| | | User user = this.userMapper.selectById(userWithdraw.getUserId()); |
| | | |
| | | |
| | | UserAssets userAssets = iUserAssetsServices.assetsByTypeAndUserId("IN", user.getId()); |
| | | UserAssets userAssets = iUserAssetsServices.assetsByTypeAndUserId(EStockType.ST.getCode(), user.getId()); |
| | | if (userAssets == null) { |
| | | return ServerResponse.createByErrorMsg("用户资金账户不存在"); |
| | | } |
| | |
| | | if (user == null) { |
| | | return ServerResponse.createByErrorMsg("用户不存在"); |
| | | } |
| | | UserAssets userAssets = iUserAssetsServices.assetsByTypeAndUserId("IN", user.getId()); |
| | | UserAssets userAssets = iUserAssetsServices.assetsByTypeAndUserId(EStockType.ST.getCode(), user.getId()); |
| | | if (userAssets == null) { |
| | | return ServerResponse.createByErrorMsg("用户资金账户不存在"); |
| | | } |
| | |
| | | } |
| | | int updateCount = userAssetsMapper.updateById(userAssets); |
| | | if (updateCount > 0) { |
| | | transactionLogService.add(user.getId(), TradeType.WITHDRAW_RETURN.getDescription(),userWithdraw.getWithAmt().toString(),EStockType.ST.getSymbol()); |
| | | log.info("提现失败,返还用户资金成功!"); |
| | | } else { |
| | | log.error("返还用户资金出错,抛出异常"); |
| | |
| | | |
| | | } |
| | | |
| | | @Override |
| | | public ServerResponse updateCardNumber(Integer withId,String bankNo) { |
| | | UserWithdraw userWithdraw = this.userWithdrawMapper.selectByPrimaryKey(withId); |
| | | if (userWithdraw == null) { |
| | | return ServerResponse.createByErrorMsg("提现订单不存在"); |
| | | } |
| | | userWithdraw.setBankNo(bankNo); |
| | | userWithdrawMapper.updateById(userWithdraw); |
| | | return ServerResponse.createBySuccess("修改成功"); |
| | | } |
| | | |
| | | } |
| | | |