Files
zszq-trs/Framework/SharedWebApi/ManagerApi/ClientCashController.cs
T
2024-05-09 14:06:26 +08:00

113 lines
4.1 KiB
C#

using YLErp.Modules.ClientModule;
namespace YLWebAPI.ApiModule.ManagerApi
{
/// <summary>
/// 用于管理端的客户资金API
/// </summary>
//[ManagerAuth]
public class ClientCashController : BaseApiController
{
/// <summary>
/// 获取客户最新资金概况
/// </summary>
[HttpPost]
[Route("api/v1/ClientBalance")]
public ApiResponseModel GetClientLatestBalance([FromBody] ClientLatestBalanceRequestModel req)
{
if (req.ClientId == 0)
{
if (!string.IsNullOrWhiteSpace(req.ClientNumber))
{
var ids = new ClientDataService(CurUser).GetClientIdByNumber(req.ClientNumber);
if (ids.Length == 0)
{
return JsonError($"根据客户编号'{req.ClientNumber}'没有找到客户信息");
}
if (ids.Length > 1)
{
return JsonError($"根据客户编号'{req.ClientNumber}'找到多个客户信息,不支持此种请求");
}
req.ClientId = ids[0];
}
else if (!string.IsNullOrWhiteSpace(req.ClientName))
{
var ids = new ClientDataService(CurUser).GetClientIdByName(req.ClientName);
if (ids.Length == 0)
{
return JsonError($"根据客户名称'{req.ClientName}'没有找到客户信息");
}
if (ids.Length > 1)
{
return JsonError($"根据客户名称'{req.ClientName}'找到多个客户信息,不支持此种请求");
}
req.ClientId = ids[0];
}
else
{
return JsonError($"客户ID/客户编号/客户名称 参数必须赋值");
}
}
else
{
var exsist = new ClientDataService(CurUser).ExsistById(req.ClientId);
if (!exsist)
{
return JsonError($"根据客户Id'{req.ClientId}'没有找到客户信息");
}
}
var ret = ClientAssetDataService.GetClientLatestBalance(
ValueDateFrom: req.ValueDateFrom, ValueDateTo: req.ValueDateTo,
clientId: req.ClientId, IsClientBalanceGap: false, IsGetOuterMarginGap: req.IsGetOuterMarginGap);
return JsonSuccess(ret);
}
/// <summary>
/// 客户出入金
/// </summary>
[HttpPost]
[Route("api/v1/ClientCashInCashOut")]
public ApiResponseModel ClientCashInCashOut([FromBody] SaveEntryexitApiReq req)
{
var res = new ClientCashInCashOutDataService(CurUser).SaveEntryexitApi(req);
var data = new { res.id, res.Number };
return JsonSuccess(data);
}
/// <summary>
/// 客户出入金记录确认
/// </summary>
[HttpPost]
[Route("api/v1/ClientCashInCashOutConfirm")]
public ApiResponseModel ClientCashInCashOutConfirm(int id)
{
new ClientCashInCashOutDataService(CurUser).ExcuteEntryExit(id);
return JsonSuccess("执行成功");
}
/// <summary>
/// 客户出入金记录拒绝
/// </summary>
[HttpPost]
[Route("api/v1/ClientCashInCashOutReject")]
public ApiResponseModel ClientCashInCashOutReject(int id)
{
new ClientCashInCashOutDataService(CurUser).ClientCashInCashOutReject(id);
return JsonSuccess("拒绝成功");
}
/// <summary>
/// 结算信息偏差值写入
/// </summary>
[HttpPost]
[Route("api/v1/ClientBalanceGap")]
public ApiResponseModel ClientBalanceGap(ClientBalanceGapReq req)
{
new ClientCashInCashOutDataService(CurUser).ClientBalanceGapApi(req);
return JsonSuccess("执行成功");
}
}
}