币安量化交易
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

85 lines
2.6 KiB

using Binance.TradeRobot.Business;
using Binance.TradeRobot.Model.Dto;
using Microsoft.AspNetCore.Authentication.JwtBearer;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using System.Collections.Generic;
namespace Binance.TradeRobot.API.Controllers
{
[Authorize(AuthenticationSchemes = JwtBearerDefaults.AuthenticationScheme)]
public class UserController : BaseApiController
{
private UserBusiness userBusiness;
public UserController(UserBusiness userBusiness)
{
this.userBusiness = userBusiness;
}
/// <summary>
/// 用户登录
/// </summary>
/// <param name="loginRequest">密码需小写md5加密</param>
/// <returns></returns>
[HttpPost]
[AllowAnonymous]
public LoginResponse Login([FromBody] LoginRequest loginRequest)
{
return userBusiness.Login(loginRequest);
}
/// <summary>
/// 获取用户列表
/// </summary>
[HttpGet]
public IList<UserResponse> GetUserList()
{
return userBusiness.GetUserList();
}
/// <summary>
/// 获取用户资金变更记录
/// </summary>
[HttpPost]
public UserAccountChangeRecordListResponse GetUserAccountFundChangeRecordList([FromBody] QueryUserAccountRequest queryUserAccountRequest)
{
return userBusiness.GetUserAccountFundChangeRecordList(queryUserAccountRequest);
}
/// <summary>
/// 获取用户盈亏记录
/// </summary>
[HttpPost]
public UserAccountProfitLossRecordListResponse GetUserAccountProfitLossRecordList([FromBody] QueryUserAccountRequest queryUserAccountRequest)
{
return userBusiness.GetUserAccountProfitLossRecordList(queryUserAccountRequest);
}
/// <summary>
/// 追投
/// </summary>
[HttpPost]
public void AddFunds([FromBody] FundsChangeRequest fundsChangeRequest)
{
userBusiness.AddFunds(LoginUser.Id, fundsChangeRequest);
}
/// <summary>
/// 提现
/// </summary>
[HttpPost]
public void ReduceFunds([FromBody] FundsChangeRequest fundsChangeRequest)
{
userBusiness.ReduceFunds(LoginUser.Id, fundsChangeRequest);
}
/// <summary>
/// 转移资金
/// </summary>
[HttpPost]
public void TransferFunds([FromBody] FundsTransferRequest fundsTransferRequest)
{
userBusiness.TransferFunds(LoginUser.Id, fundsTransferRequest);
}
}
}