check options on create checkout
This commit is contained in:
@@ -39,7 +39,10 @@ public class CreateCheckoutListViewModel
|
|||||||
|
|
||||||
|
|
||||||
public string Description { get; set; }
|
public string Description { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// آیا پرسنل اجازه ایجاد قرارداد دارد
|
||||||
|
/// </summary>
|
||||||
|
public bool EmployeeHasCreateCheckout { get; set; }
|
||||||
|
|
||||||
public List<CreateCheckoutListViewModel> CreateCheckoutList { get; set; }
|
public List<CreateCheckoutListViewModel> CreateCheckoutList { get; set; }
|
||||||
}
|
}
|
||||||
@@ -21,8 +21,16 @@ public class EmployeeComputeOptionsApplication : IEmployeeComputeOptionsApplicat
|
|||||||
|
|
||||||
public OperationResult Create(CreateEmployeeComputeOptions command)
|
public OperationResult Create(CreateEmployeeComputeOptions command)
|
||||||
{
|
{
|
||||||
|
|
||||||
var opration = new OperationResult();
|
var opration = new OperationResult();
|
||||||
try
|
if (command.CreateContract && command.ContractTerm != "1" && command.CutContractEndOfYear == IsActive.None)
|
||||||
|
return opration.Failed("لطفا تعیین کنید که قراداد منتهی به پایان سال یاشد یا نباشد");
|
||||||
|
|
||||||
|
if (command.ContractTerm == "1")
|
||||||
|
command.CutContractEndOfYear = IsActive.None;
|
||||||
|
|
||||||
|
|
||||||
|
try
|
||||||
{
|
{
|
||||||
if (_employeeComputeOptionsRepository.Exists(x =>
|
if (_employeeComputeOptionsRepository.Exists(x =>
|
||||||
x.EmployeeId == command.EmployeeId && x.WorkshopId == command.WorkshopId))
|
x.EmployeeId == command.EmployeeId && x.WorkshopId == command.WorkshopId))
|
||||||
|
|||||||
@@ -217,7 +217,15 @@ public class CheckoutRepository : RepositoryBase<long, Checkout>, ICheckoutRepos
|
|||||||
checkout => checkout.ContractId,
|
checkout => checkout.ContractId,
|
||||||
(contractWorkshopEmployeeleftWorkPersonnelCode, checkout) =>
|
(contractWorkshopEmployeeleftWorkPersonnelCode, checkout) =>
|
||||||
new { contractWorkshopEmployeeleftWorkPersonnelCode, checkout })
|
new { contractWorkshopEmployeeleftWorkPersonnelCode, checkout })
|
||||||
.ToList();
|
|
||||||
|
.GroupJoin(_context.EmployeeComputeOptionsSet.Where(o => o.WorkshopId == workshopId),
|
||||||
|
x => x.contractWorkshopEmployeeleftWorkPersonnelCode.contractWorkshopEmployeeleftWork.leftwork.EmployeeId,
|
||||||
|
option => option.EmployeeId,
|
||||||
|
(x, options) => new { x.checkout, x.contractWorkshopEmployeeleftWorkPersonnelCode, options })
|
||||||
|
.SelectMany(
|
||||||
|
x => x.options.DefaultIfEmpty(),
|
||||||
|
(x, option) => new { x.checkout, x.contractWorkshopEmployeeleftWorkPersonnelCode, option })
|
||||||
|
.ToList();
|
||||||
Console.WriteLine("query : " + timer.Elapsed);
|
Console.WriteLine("query : " + timer.Elapsed);
|
||||||
timer.Reset();
|
timer.Reset();
|
||||||
timer.Start();
|
timer.Start();
|
||||||
@@ -249,8 +257,9 @@ public class CheckoutRepository : RepositoryBase<long, Checkout>, ICheckoutRepos
|
|||||||
LaterThanEnd = false,
|
LaterThanEnd = false,
|
||||||
Extension = false,
|
Extension = false,
|
||||||
Description = "دارای فیش حقوقی",
|
Description = "دارای فیش حقوقی",
|
||||||
HasCheckout = true
|
HasCheckout = true,
|
||||||
};
|
EmployeeHasCreateCheckout = true
|
||||||
|
};
|
||||||
}
|
}
|
||||||
var employeeJoin = result.contractWorkshopEmployeeleftWorkPersonnelCode.contractWorkshopEmployeeleftWork
|
var employeeJoin = result.contractWorkshopEmployeeleftWorkPersonnelCode.contractWorkshopEmployeeleftWork
|
||||||
.contractWorkshopEmployee.employee.id;
|
.contractWorkshopEmployee.employee.id;
|
||||||
@@ -469,10 +478,12 @@ public class CheckoutRepository : RepositoryBase<long, Checkout>, ICheckoutRepos
|
|||||||
Description = description,
|
Description = description,
|
||||||
ContractStart = contractStart,
|
ContractStart = contractStart,
|
||||||
ContractEnd = contractEnd,
|
ContractEnd = contractEnd,
|
||||||
LeftWorkDate = leftWorkDate
|
LeftWorkDate = leftWorkDate,
|
||||||
};
|
EmployeeHasCreateCheckout = result.option != null ? result.option.CreateCheckout : result.contractWorkshopEmployeeleftWorkPersonnelCode.contractWorkshopEmployeeleftWork.contractWorkshopEmployee.contractWorkshop.workshop.CreateCheckout
|
||||||
|
|
||||||
}).OrderByDescending(x => x.Extension).ToList();
|
};
|
||||||
|
|
||||||
|
}).Where(x=>x.EmployeeHasCreateCheckout).OrderByDescending(x => x.Extension).ToList();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user