From b22aa86aea45440b08ba81a92f0bc948b131b29f Mon Sep 17 00:00:00 2001 From: mahan Date: Thu, 15 Jan 2026 10:35:43 +0330 Subject: [PATCH] add create - edit - remove salary aid api controller --- .../SalaryAid/CreateSalaryAidViewModel.cs | 1 - .../Client/Controllers/SalaryAidController.cs | 67 ++++++++++++++++++- 2 files changed, 64 insertions(+), 4 deletions(-) diff --git a/CompanyManagment.App.Contracts/SalaryAid/CreateSalaryAidViewModel.cs b/CompanyManagment.App.Contracts/SalaryAid/CreateSalaryAidViewModel.cs index 18d88d02..32112ff5 100644 --- a/CompanyManagment.App.Contracts/SalaryAid/CreateSalaryAidViewModel.cs +++ b/CompanyManagment.App.Contracts/SalaryAid/CreateSalaryAidViewModel.cs @@ -8,7 +8,6 @@ public class CreateSalaryAidViewModel public long WorkshopId { get; set; } public string Amount { get; set; } public string SalaryDateTime { get; set; } - public string CalculationDateTime { get; set; } public string NationalCode { get; set; } public int CalculationMonth { get; set; } public int CalculationYear { get; set; } diff --git a/ServiceHost/Areas/Client/Controllers/SalaryAidController.cs b/ServiceHost/Areas/Client/Controllers/SalaryAidController.cs index cea07f23..a7641788 100644 --- a/ServiceHost/Areas/Client/Controllers/SalaryAidController.cs +++ b/ServiceHost/Areas/Client/Controllers/SalaryAidController.cs @@ -1,3 +1,4 @@ +using _0_Framework.Application; using CompanyManagment.App.Contracts.SalaryAid; using Microsoft.AspNetCore.Mvc; using ServiceHost.BaseControllers; @@ -7,17 +8,77 @@ namespace ServiceHost.Areas.Client.Controllers; public class SalaryAidController:ClientBaseController { private readonly ISalaryAidApplication _salaryAidApplication; + private readonly long _workshopId; - public SalaryAidController(ISalaryAidApplication salaryAidApplication) + public SalaryAidController(ISalaryAidApplication salaryAidApplication,IAuthHelper authHelper) { _salaryAidApplication = salaryAidApplication; + _workshopId = authHelper.GetWorkshopId(); } [HttpGet] - public ActionResult GetList(SalaryAidSearchViewModel searchModel) + public ActionResult GetList([FromQuery]SalaryAidSearchViewModel searchModel) { var result = _salaryAidApplication.GetSearchListAsGrouped(searchModel); return Ok(result); } - + + [HttpPost] + public ActionResult Create([FromBody]CreateSalaryAidRequest request) + { + var command = new CreateSalaryAidViewModel() + { + Amount = request.Amount.ToMoney(), + CalculationMonth = request.CalculationMonth, + CalculationYear = request.CalculationYear, + EmployeeIds = request.EmployeeIds, + WorkshopId = _workshopId, + SalaryDateTime = request.SalaryDateTime, + + }; + var result = _salaryAidApplication.Create(command); + return result; + } + + [HttpPut] + public ActionResult Edit([FromBody]EditSalaryAidRequest request) + { + var command = new EditSalaryAidViewModel() + { + Id = request.Id, + Amount = request.Amount.ToMoney(), + CalculationMonth = request.CalculationMonth, + CalculationYear = request.CalculationYear, + SalaryDateTime = request.SalaryDateTime, + WorkshopId = _workshopId, + }; + var result = _salaryAidApplication.Edit(command); + return result; + } + + [HttpDelete("{id:long}")] + public ActionResult Delete(long id) + { + var result = _salaryAidApplication.Remove(id); + return result; + } +} + +public class EditSalaryAidRequest +{ + public long Id { get; set; } + public long EmployeeId { get; set; } + public double Amount { get; set; } + public string SalaryDateTime { get; set; } + public int CalculationMonth { get; set; } + public int CalculationYear { get; set; } +} + +public class CreateSalaryAidRequest +{ + public List EmployeeIds { get; set; } + public double Amount { get; set; } + public string SalaryDateTime { get; set; } + public int CalculationMonth { get; set; } + public int CalculationYear { get; set; } } \ No newline at end of file