103 lines
3.6 KiB
C#
103 lines
3.6 KiB
C#
using CompanyManagment.App.Contracts.DateSalary;
|
|
using CompanyManagment.App.Contracts.DateSalaryItem;
|
|
using CompanyManagment.App.Contracts.InsuranceJob;
|
|
using CompanyManagment.App.Contracts.Job;
|
|
using CompanyManagment.App.Contracts.Percentage;
|
|
using CompanyManagment.App.Contracts.YearlySalary;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using Microsoft.AspNetCore.Mvc.RazorPages;
|
|
|
|
namespace ServiceHost.Areas.Admin.Pages.Company.InsuranceJobItem;
|
|
|
|
public class IndexModel : PageModel
|
|
{
|
|
private readonly IDateSalaryApplication _dateSalaryApplication;
|
|
private readonly IDateSalaryItemApplication _dateSalaryItemApplication;
|
|
|
|
private readonly IInsuranceJobApplication _insuranceJobApplication;
|
|
|
|
//public SelectList Jobs;
|
|
private readonly IJobApplication _jobApplication;
|
|
private readonly IPercentageApplication _percentageApplication;
|
|
private readonly IYearlySalaryApplication _yearlySalaryApplication;
|
|
public List<DateSalaryViewModel> InsuranceJobAmountList;
|
|
public InsuranceJobSearchModel SearchModel;
|
|
public List<string> YearlyList;
|
|
|
|
public IndexModel(IJobApplication jobApplication, IInsuranceJobApplication insuranceJobApplication,
|
|
IYearlySalaryApplication yearlySalaryApplication, IPercentageApplication percentageApplication,
|
|
IDateSalaryApplication dateSalaryApplication, IDateSalaryItemApplication dateSalaryItemApplication)
|
|
{
|
|
_jobApplication = jobApplication;
|
|
_insuranceJobApplication = insuranceJobApplication;
|
|
_yearlySalaryApplication = yearlySalaryApplication;
|
|
_percentageApplication = percentageApplication;
|
|
_dateSalaryApplication = dateSalaryApplication;
|
|
_dateSalaryItemApplication = dateSalaryItemApplication;
|
|
}
|
|
|
|
public void OnGet(DateSalarySearchModel searchModel)
|
|
{
|
|
YearlyList = _yearlySalaryApplication.GetYears();
|
|
InsuranceJobAmountList = _dateSalaryApplication.Search(searchModel);
|
|
}
|
|
|
|
public IActionResult OnGetCreate()
|
|
{
|
|
var searchModel = new PercentageSearchModel();
|
|
var list = _percentageApplication.Search(searchModel);
|
|
return Partial("Create", list);
|
|
}
|
|
|
|
public IActionResult OnPostCreateDateSalaryItem(CreateDateSalaryForInsuranceJob command)
|
|
{
|
|
var result = _dateSalaryApplication.CreateDateSalaryItemForInsuranceJob(command);
|
|
return new JsonResult(result);
|
|
}
|
|
|
|
public IActionResult OnGetEdit(long id)
|
|
{
|
|
var searchModel = new DateSalaryItemSearchModel();
|
|
searchModel.DateSalaryId = id;
|
|
|
|
var dateSalary = _dateSalaryApplication.GetDetails(id);
|
|
var dateSalaryItems = _dateSalaryItemApplication.Search(searchModel);
|
|
|
|
var searchModelPercentage = new PercentageSearchModel();
|
|
var percentageList = _percentageApplication.Search(searchModelPercentage);
|
|
//var percentagIds = dateSalaryItems.Select(x => x.PercentageId).ToList();
|
|
//var percentages = percentageList.Where(x => !percentagIds.Contains(x.Id)).ToList();
|
|
|
|
//foreach (var item in percentages)
|
|
//{
|
|
// var obj = new DateSalaryItemViewModel();
|
|
// obj.Percent = item.Percent;
|
|
// obj.PercentageId = item.Id;
|
|
// obj.Salary = null;
|
|
// obj.DateSalaryId = id;
|
|
// obj.Id = 0;
|
|
// obj.StrSalary = "";
|
|
// dateSalaryItems.Add(obj);
|
|
//}
|
|
|
|
var list = new CreateDateSalaryForInsuranceJob();
|
|
list.EndDateFa = dateSalary.EndDateFa;
|
|
list.StartDateFa = dateSalary.StartDateFa;
|
|
list.Id = dateSalary.Id;
|
|
list.DateSalaryItems = dateSalaryItems;
|
|
return Partial("Edit", list);
|
|
}
|
|
|
|
|
|
public IActionResult OnPostEdit(CreateDateSalaryForInsuranceJob command)
|
|
{
|
|
var result = _dateSalaryApplication.EditDateSalaryItemForInsuranceJob(command);
|
|
return new JsonResult(result);
|
|
}
|
|
|
|
public IActionResult OnPostRemoveInsuranceJobItem(long id)
|
|
{
|
|
var result = _dateSalaryApplication.Remove(id);
|
|
return new JsonResult(result);
|
|
}
|
|
} |