124 lines
3.9 KiB
C#
124 lines
3.9 KiB
C#
using _0_Framework.Application;
|
|
using _0_Framework.Application.Enums;
|
|
using CompanyManagment.App.Contracts.Employer;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using ServiceHost.BaseControllers;
|
|
|
|
namespace ServiceHost.Areas.Admin.Controllers;
|
|
|
|
public class EmployerController : AdminBaseController
|
|
{
|
|
private readonly IEmployerApplication _employerApplication;
|
|
|
|
public EmployerController(IEmployerApplication employerApplication)
|
|
{
|
|
_employerApplication = employerApplication;
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// لیست کارفرما
|
|
/// </summary>
|
|
/// <param name="searchModel"></param>
|
|
/// <returns></returns>
|
|
[HttpGet]
|
|
public async Task<ActionResult<List<GetEmployerListViewModel>>> GetList(GetEmployerSearchModel searchModel)
|
|
{
|
|
return await _employerApplication.GetEmployerList(searchModel);
|
|
}
|
|
|
|
/// <summary>
|
|
/// جزئیات کارفرمای حقوقی
|
|
/// </summary>
|
|
/// <param name="id"></param>
|
|
/// <returns></returns>
|
|
[HttpGet("legal/{id}")]
|
|
public async Task<ActionResult<GetLegalEmployerDetailViewModel>> GetLegalEmployer(long id)
|
|
{
|
|
var employerDetail = await _employerApplication.GetLegalEmployerDetail(id);
|
|
return employerDetail;
|
|
}
|
|
|
|
/// <summary>
|
|
/// جزئیات کارفرمای حقیقی
|
|
/// </summary>
|
|
/// <param name="id"></param>
|
|
/// <returns></returns>
|
|
[HttpGet("real/{id}")]
|
|
public async Task<ActionResult<GetRealEmployerDetailViewModel>> GetRealEmployer(long id)
|
|
{
|
|
var employerDetail = await _employerApplication.GetRealEmployerDetail(id);
|
|
return employerDetail;
|
|
}
|
|
|
|
/// <summary>
|
|
/// ایجاد کارفرمای حقیقی
|
|
/// </summary>
|
|
/// <param name="command"></param>
|
|
/// <returns></returns>
|
|
[HttpPost("real")]
|
|
public async Task<ActionResult<OperationResult>> CreateRealEmployer([FromBody] CreateRealEmployer command)
|
|
{
|
|
var result = await _employerApplication.CreateReal(command);
|
|
return result;
|
|
}
|
|
|
|
/// <summary>
|
|
/// ایجاد کارفرما حقوقی
|
|
/// </summary>
|
|
/// <param name="command"></param>
|
|
/// <returns></returns>
|
|
[HttpPost("legal")]
|
|
public async Task<ActionResult<OperationResult>> CreateLegalEmployer([FromBody] CreateLegalEmployer command)
|
|
{
|
|
var result = await _employerApplication.CreateLegal(command);
|
|
|
|
return result;
|
|
}
|
|
|
|
/// <summary>
|
|
/// ویرایش کارفرما حقیقی
|
|
/// </summary>
|
|
/// <param name="command"></param>
|
|
/// <returns></returns>
|
|
[HttpPut("real")]
|
|
public async Task<ActionResult<OperationResult>> EditRealEmployer([FromBody] EditRealEmployer command)
|
|
{
|
|
var result = await _employerApplication.EditReal(command);
|
|
return result;
|
|
}
|
|
/// <summary>
|
|
/// ویرایش کارفرما حقوقی
|
|
/// </summary>
|
|
/// <param name="command"></param>
|
|
/// <returns></returns>
|
|
[HttpPut("legal")]
|
|
public async Task<ActionResult<OperationResult>> EditLegalEmployer([FromBody] EditLegalEmployer command)
|
|
{
|
|
var result = await _employerApplication.EditLegal(command);
|
|
return result;
|
|
}
|
|
|
|
/// <summary>
|
|
/// حذف کارفرما - درصورت داشتن کارگاه، کارفرما غیرفعال میشود
|
|
/// </summary>
|
|
/// <param name="id"></param>
|
|
/// <returns></returns>
|
|
[HttpDelete("{id}")]
|
|
public async Task<ActionResult<OperationResult<string>>> Remove(long id)
|
|
{
|
|
var result = await _employerApplication.Remove(id);
|
|
return result;
|
|
}
|
|
|
|
/// <summary>
|
|
/// سلکت لیست کارفرما برای جستجو
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
[HttpGet("select_list")]
|
|
public async Task<List<EmployerSelectListViewModel>> GetSelectList(string search, long id,LegalType? legalType=null)
|
|
{
|
|
return await _employerApplication.GetSelectList(search, id,legalType);
|
|
}
|
|
|
|
} |