package com.yami.trading.api.controller;
|
|
import cn.hutool.core.collection.CollectionUtil;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.yami.trading.admin.model.TransferModel;
|
import com.yami.trading.admin.model.UpdateWalltModel;
|
import com.yami.trading.bean.contract.domain.ContractOrder;
|
import com.yami.trading.bean.item.domain.Item;
|
import com.yami.trading.bean.model.CapitaltWallet;
|
import com.yami.trading.bean.model.Wallet;
|
import com.yami.trading.common.annotation.SysLog;
|
import com.yami.trading.common.domain.Result;
|
import com.yami.trading.common.exception.BusinessException;
|
import com.yami.trading.common.exception.YamiShopBindException;
|
import com.yami.trading.common.util.StringUtils;
|
import com.yami.trading.common.web.ResultObject;
|
import com.yami.trading.security.common.util.SecurityUtils;
|
import com.yami.trading.service.CapitaltWalletService;
|
import com.yami.trading.service.WalletService;
|
import com.yami.trading.service.contract.ContractOrderService;
|
import com.yami.trading.service.user.UserService;
|
import com.yami.trading.sys.service.SysUserService;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import org.checkerframework.checker.units.qual.A;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RestController;
|
|
import javax.validation.Valid;
|
import java.math.BigDecimal;
|
import java.util.ArrayList;
|
import java.util.HashMap;
|
import java.util.List;
|
import java.util.Map;
|
|
/**
|
* @program: trading-order-master
|
* @description: 合约账户
|
* @create: 2025-01-08 17:57
|
**/
|
@RestController
|
@RequestMapping("/api/wallet")
|
@Api(tags = "合约账户")
|
public class ApiCapitaltWalletWalletController {
|
|
@Autowired
|
SysUserService sysUserService;
|
|
@Autowired
|
CapitaltWalletService capitaltWalletService;
|
|
@Autowired
|
WalletService walletService;
|
|
@Autowired
|
private ContractOrderService contractOrderService;
|
|
|
|
@ApiOperation(value = "划转")
|
@PostMapping("/transfer.action")
|
public Result updateWallt(@Valid TransferModel model) {
|
String partyId = SecurityUtils.getCurrentUserId();
|
if(!StringUtils.isNotEmpty(partyId)){
|
throw new YamiShopBindException("请登录!");
|
}
|
return capitaltWalletService.updateWallt(partyId,model.getDeductAccount(),model.getReceiveAccount(),model.getMoneyRevise());
|
}
|
|
@ApiOperation(value = "获取资产")
|
@PostMapping("/getassets.action")
|
public Result updateWallt() {
|
String partyId = SecurityUtils.getCurrentUserId();
|
if(!StringUtils.isNotEmpty(partyId)){
|
throw new YamiShopBindException("请登录!");
|
}
|
// 获取合约账户(contract)
|
Wallet wallet = walletService.saveWalletByPartyId(partyId);
|
// 获取资金账户(capital)
|
CapitaltWallet capitaltWallet = capitaltWalletService.getOne(new LambdaQueryWrapper<>(CapitaltWallet.class)
|
.eq(CapitaltWallet::getUserId, partyId).last(" limit 1 "));
|
|
Map<String, BigDecimal> assets = new HashMap<>();
|
assets.put("contract",wallet.getMoney());
|
assets.put("capital",capitaltWallet.getMoney());
|
return Result.succeed(assets);
|
}
|
|
|
|
}
|