123 lines
3.8 KiB
C#
123 lines
3.8 KiB
C#
using _0_Framework.Application;
|
|
using CompanyManagment.App.Contracts.FinancialStatment;
|
|
using CompanyManagment.App.Contracts.FinancilTransaction;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using PersianTools.Core;
|
|
using ServiceHost.BaseControllers;
|
|
|
|
namespace ServiceHost.Areas.Admin.Controllers;
|
|
|
|
public class FinancialStatementController : AdminBaseController
|
|
{
|
|
private readonly IFinancialStatmentApplication _financialStatementApplication;
|
|
private readonly IFinancialTransactionApplication _financialTransactionApplication;
|
|
|
|
public FinancialStatementController(IFinancialStatmentApplication financialStatementApplication,
|
|
IFinancialTransactionApplication financialTransactionApplication)
|
|
{
|
|
_financialStatementApplication = financialStatementApplication;
|
|
_financialTransactionApplication = financialTransactionApplication;
|
|
}
|
|
|
|
/// <summary>
|
|
/// گرفتن جزئیات وضعیت مالی با آیدی طرف حساب
|
|
/// </summary>
|
|
/// <param name="id"></param>
|
|
/// <param name="searchModel"></param>
|
|
/// <returns></returns>
|
|
[HttpGet("contracting-party/{id}")]
|
|
public async Task<ActionResult<FinancialStatmentDetailsByContractingPartyViewModel>> GetDetailsByContractingParty(
|
|
long id, FinancialStatementSearchModel searchModel)
|
|
{
|
|
var data = await _financialStatementApplication.GetDetailsByContractingParty(id, searchModel);
|
|
return data;
|
|
}
|
|
|
|
/// <summary>
|
|
/// گرفتن جزییات ویرایش
|
|
/// </summary>
|
|
/// <param name="id"></param>
|
|
/// <returns></returns>
|
|
[HttpGet("edit/{id}")]
|
|
public ActionResult<EditFinancialTransaction> GetEditDetails(long id)
|
|
{
|
|
var res = _financialTransactionApplication.GetDetails(id);
|
|
return res;
|
|
}
|
|
|
|
/// <summary>
|
|
/// حذف بلاک
|
|
/// </summary>
|
|
/// <param name="id"></param>
|
|
/// <returns></returns>
|
|
[HttpPost("removeBlocked/{id}")]
|
|
public ActionResult<OperationResult> RemoveBlocked(long id)
|
|
{
|
|
var res = _financialTransactionApplication.RemoveBlocked(id);
|
|
return res;
|
|
}
|
|
|
|
/// <summary>
|
|
/// ایجاد
|
|
/// </summary>
|
|
/// <param name="command"></param>
|
|
/// <returns></returns>
|
|
[HttpPost]
|
|
public ActionResult<OperationResult> Create([FromBody] CreateFinancialStatment command)
|
|
{
|
|
var res = _financialStatementApplication.Create(command);
|
|
|
|
return res;
|
|
}
|
|
|
|
/// <summary>
|
|
/// ویرایش
|
|
/// </summary>
|
|
/// <param name="request"></param>
|
|
/// <returns></returns>
|
|
[HttpPut]
|
|
public ActionResult<OperationResult> Edit([FromBody] EditFinancialTransactionRequest request)
|
|
{
|
|
var command = new EditFinancialTransaction
|
|
{
|
|
Id = request.Id,
|
|
TdateFa = request.TDateFa,
|
|
TypeOfTransaction = request.TypeOfTransaction,
|
|
DescriptionOption = request.DescriptionOption,
|
|
Description = request.Description,
|
|
DeptorString = request.DeptorString,
|
|
CreditorString = request.CreditorString
|
|
};
|
|
var result = _financialTransactionApplication.Edit(command);
|
|
return result;
|
|
}
|
|
|
|
/// <summary>
|
|
/// حذف
|
|
/// </summary>
|
|
/// <param name="id"></param>
|
|
/// <returns></returns>
|
|
[HttpDelete("{id}")]
|
|
public IActionResult RemoveTransaction(long id)
|
|
{
|
|
var res = _financialTransactionApplication.RemoveFinancialTransaction(id);
|
|
if (res.IsSuccedded)
|
|
return new JsonResult(new
|
|
{
|
|
success = true
|
|
});
|
|
return new JsonResult(new
|
|
{
|
|
success = false
|
|
});
|
|
}
|
|
}
|
|
|
|
public record EditFinancialTransactionRequest(
|
|
long Id,
|
|
string TDateFa,
|
|
string TypeOfTransaction,
|
|
string DescriptionOption,
|
|
string Description,
|
|
string DeptorString,
|
|
string CreditorString); |