92 lines
2.4 KiB
C#
92 lines
2.4 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using _0_Framework.Domain;
|
|
|
|
namespace Company.Domain.EmployeeComputeOptionsAgg
|
|
{
|
|
public class EmployeeComputeOptions : EntityBase
|
|
{
|
|
public EmployeeComputeOptions(long workshopId, long employeeId, string computeOptions, string bonusesOptions, string yearsOptions,
|
|
bool createContract, bool signContract, bool createCheckout, bool signCheckout)
|
|
{
|
|
WorkshopId = workshopId;
|
|
EmployeeId = employeeId;
|
|
ComputeOptions = computeOptions;
|
|
BonusesOptions = bonusesOptions;
|
|
YearsOptions = yearsOptions;
|
|
|
|
SetContractAndCheckoutOptions(createContract, signContract, createCheckout, signCheckout);
|
|
}
|
|
|
|
|
|
|
|
public long WorkshopId { get; private set; }
|
|
public long EmployeeId { get; private set; }
|
|
|
|
//نحوه محاسبه مزد مرخصی
|
|
public string ComputeOptions { get; private set; }
|
|
//نحوه محاسبه عیدی
|
|
public string BonusesOptions { get; private set; }
|
|
//نحوه محاسبه سنوات
|
|
public string YearsOptions { get; private set; }
|
|
|
|
/// <summary>
|
|
/// ایجاد قرارداد
|
|
/// </summary>
|
|
public bool CreateContract { get; private set; }
|
|
|
|
/// <summary>
|
|
/// امضای قرارداد
|
|
/// </summary>
|
|
public bool SignContract { get; private set; }
|
|
/// <summary>
|
|
/// ایجاد تصفیه
|
|
/// </summary>
|
|
public bool CreateCheckout { get; private set; }
|
|
/// <summary>
|
|
/// امضای تصفیه
|
|
/// </summary>
|
|
public bool SignCheckout { get; private set; }
|
|
|
|
public void Edit(string computeOptions, string bonusesOptions, string yearsOptions, bool createContract, bool signContract, bool createCheckout,
|
|
bool signCheckout)
|
|
{
|
|
ComputeOptions = computeOptions;
|
|
BonusesOptions = bonusesOptions;
|
|
YearsOptions = yearsOptions;
|
|
SetContractAndCheckoutOptions(createContract, signContract, createCheckout, signCheckout);
|
|
}
|
|
|
|
|
|
|
|
private void SetContractAndCheckoutOptions(bool createContract, bool signContract, bool createCheckout,
|
|
bool signCheckout)
|
|
{
|
|
CreateContract = createContract;
|
|
if (createContract)
|
|
{
|
|
SignContract = signContract;
|
|
CreateCheckout = createCheckout;
|
|
if (createCheckout)
|
|
{
|
|
SignCheckout = signCheckout;
|
|
}
|
|
else
|
|
{
|
|
SignCheckout = false;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
SignContract = false;
|
|
CreateCheckout = false;
|
|
SignCheckout = false;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|