checkout group and one print
This commit is contained in:
@@ -457,6 +457,18 @@ public static class Tools
|
|||||||
return "-";
|
return "-";
|
||||||
return myMoney.ToString("N0", CultureInfo.CreateSpecificCulture("fa-ir"));
|
return myMoney.ToString("N0", CultureInfo.CreateSpecificCulture("fa-ir"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// اگر مبلغ صفر یا نال باشد خط تیره برمیگرداند
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="myMoney"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
public static string ToMoneyCheckZeroNullable(this double? myMoney)
|
||||||
|
{
|
||||||
|
if (myMoney == 0 || myMoney == null)
|
||||||
|
return "-";
|
||||||
|
return myMoney?.ToString("N0", CultureInfo.CreateSpecificCulture("fa-ir"));
|
||||||
|
}
|
||||||
public static string ToMoneyNullable(this double? myMoney)
|
public static string ToMoneyNullable(this double? myMoney)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|||||||
@@ -63,6 +63,22 @@ public class CheckoutPrintDto
|
|||||||
/// آیا کارقرما حقوقی است
|
/// آیا کارقرما حقوقی است
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public bool EmployerIslegal { get; set; }
|
public bool EmployerIslegal { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// آیا ترک کار کرده
|
||||||
|
/// </summary>
|
||||||
|
public bool HasLeft { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// آخرین روز کاری
|
||||||
|
/// </summary>
|
||||||
|
public string LastDayOfWork { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// روز ترک کار
|
||||||
|
/// </summary>
|
||||||
|
public string LeftWorkDate { get; set; }
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
//جدول مطالبات و کسورات
|
//جدول مطالبات و کسورات
|
||||||
@@ -109,8 +125,8 @@ public class CheckoutPrintDto
|
|||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
//اقساط
|
//اقساط - مساعده
|
||||||
#region LoneAndInstallmentData
|
#region SalaryAidAndInstallmentData
|
||||||
|
|
||||||
public List<LoanInstallmentViewModel> InstallmentViewModels { get; set; }
|
public List<LoanInstallmentViewModel> InstallmentViewModels { get; set; }
|
||||||
public List<SalaryAidViewModel> SalaryAidViewModels { get; set; }
|
public List<SalaryAidViewModel> SalaryAidViewModels { get; set; }
|
||||||
@@ -213,7 +229,7 @@ public class PaymentAndDeductionList
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public class CheckoutEmployersList
|
public class CheckoutEmployersList
|
||||||
{
|
{
|
||||||
public bool IsLegal { get; set; }
|
public string IsLegal { get; set; }
|
||||||
public string EmployerFullName { get; set; }
|
public string EmployerFullName { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -78,7 +78,7 @@ public class CheckoutRepository : RepositoryBase<long, Checkout>, ICheckoutRepos
|
|||||||
public (bool hasChekout, double FamilyAlloance, double OverTimePay, double RotatingShift, double Nightwork, double Fridaywork, double YraesPay) HasCheckout(long workshopId, long employeId, string year, string month)
|
public (bool hasChekout, double FamilyAlloance, double OverTimePay, double RotatingShift, double Nightwork, double Fridaywork, double YraesPay) HasCheckout(long workshopId, long employeId, string year, string month)
|
||||||
{
|
{
|
||||||
var farisMonthName = Tools.ToFarsiMonthByNumber(month);
|
var farisMonthName = Tools.ToFarsiMonthByNumber(month);
|
||||||
|
|
||||||
var res = _context.CheckoutSet.FirstOrDefault(x =>
|
var res = _context.CheckoutSet.FirstOrDefault(x =>
|
||||||
x.WorkshopId == workshopId && x.EmployeeId == employeId && x.Year == year && x.Month == farisMonthName &&
|
x.WorkshopId == workshopId && x.EmployeeId == employeId && x.Year == year && x.Month == farisMonthName &&
|
||||||
x.IsActiveString == "true");
|
x.IsActiveString == "true");
|
||||||
@@ -87,14 +87,14 @@ public class CheckoutRepository : RepositoryBase<long, Checkout>, ICheckoutRepos
|
|||||||
var checkLeftDate = ($"{year}/{month}/01").ToGeorgianDateTime();
|
var checkLeftDate = ($"{year}/{month}/01").ToGeorgianDateTime();
|
||||||
var hasLeftwork = _context.LeftWorkList.Any(x =>
|
var hasLeftwork = _context.LeftWorkList.Any(x =>
|
||||||
x.EmployeeId == employeId && x.WorkshopId == workshopId && x.LeftWorkDate == checkLeftDate);
|
x.EmployeeId == employeId && x.WorkshopId == workshopId && x.LeftWorkDate == checkLeftDate);
|
||||||
if(hasLeftwork)
|
if (hasLeftwork)
|
||||||
return (true, 0, 0, 0, 0, 0, 0);
|
return (true, 0, 0, 0, 0, 0, 0);
|
||||||
|
|
||||||
return (false, 0, 0, 0, 0, 0, 0);
|
return (false, 0, 0, 0, 0, 0, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
return (true, res.FamilyAllowance, res.OvertimePay, res.ShiftPay, res.NightworkPay, res.FridayPay,res.YearsPay);
|
|
||||||
|
return (true, res.FamilyAllowance, res.OvertimePay, res.ShiftPay, res.NightworkPay, res.FridayPay, res.YearsPay);
|
||||||
}
|
}
|
||||||
|
|
||||||
public EditCheckout GetDetails(long id)
|
public EditCheckout GetDetails(long id)
|
||||||
@@ -253,7 +253,7 @@ public class CheckoutRepository : RepositoryBase<long, Checkout>, ICheckoutRepos
|
|||||||
var now = DateTime.Now;
|
var now = DateTime.Now;
|
||||||
DateTime currentStart = ($"{DateTime.Now.ToFarsi().Substring(0, 8)}01").ToGeorgianDateTime();
|
DateTime currentStart = ($"{DateTime.Now.ToFarsi().Substring(0, 8)}01").ToGeorgianDateTime();
|
||||||
DateTime currentEnd = ($"{DateTime.Now.ToFarsi().FindeEndOfMonth()}").ToGeorgianDateTime();
|
DateTime currentEnd = ($"{DateTime.Now.ToFarsi().FindeEndOfMonth()}").ToGeorgianDateTime();
|
||||||
|
|
||||||
var chekoutCreated = result.checkout.FirstOrDefault(x => x.ContractStart < endSearch && x.ContractEnd > startSreach && x.IsActiveString == "true");
|
var chekoutCreated = result.checkout.FirstOrDefault(x => x.ContractStart < endSearch && x.ContractEnd > startSreach && x.IsActiveString == "true");
|
||||||
|
|
||||||
if (chekoutCreated != null)
|
if (chekoutCreated != null)
|
||||||
@@ -279,7 +279,7 @@ public class CheckoutRepository : RepositoryBase<long, Checkout>, ICheckoutRepos
|
|||||||
}
|
}
|
||||||
var employeeJoin = result.contractWorkshopEmployeeleftWorkPersonnelCode.contractWorkshopEmployeeleftWork
|
var employeeJoin = result.contractWorkshopEmployeeleftWorkPersonnelCode.contractWorkshopEmployeeleftWork
|
||||||
.contractWorkshopEmployee.employee.id;
|
.contractWorkshopEmployee.employee.id;
|
||||||
|
|
||||||
|
|
||||||
var leftWork = result.contractWorkshopEmployeeleftWorkPersonnelCode.contractWorkshopEmployeeleftWork
|
var leftWork = result.contractWorkshopEmployeeleftWorkPersonnelCode.contractWorkshopEmployeeleftWork
|
||||||
.leftwork;
|
.leftwork;
|
||||||
@@ -537,7 +537,7 @@ public class CheckoutRepository : RepositoryBase<long, Checkout>, ICheckoutRepos
|
|||||||
entity.SetLoanInstallment(command.LoanInstallments, command.InstallmentDeduction);
|
entity.SetLoanInstallment(command.LoanInstallments, command.InstallmentDeduction);
|
||||||
entity.SetCheckoutRollCall(command.CheckoutRollCall);
|
entity.SetCheckoutRollCall(command.CheckoutRollCall);
|
||||||
entity.SetEmployeeMandatoryHours(command.EmployeeMandatoryHours);
|
entity.SetEmployeeMandatoryHours(command.EmployeeMandatoryHours);
|
||||||
if(command.HasInsuranceShareTheSameAsList)
|
if (command.HasInsuranceShareTheSameAsList)
|
||||||
entity.SetInsuranceShare();
|
entity.SetInsuranceShare();
|
||||||
await _context.SaveChangesAsync();
|
await _context.SaveChangesAsync();
|
||||||
|
|
||||||
@@ -902,108 +902,108 @@ public class CheckoutRepository : RepositoryBase<long, Checkout>, ICheckoutRepos
|
|||||||
foreach (var item in checkouts)
|
foreach (var item in checkouts)
|
||||||
{
|
{
|
||||||
var ch = new CheckoutViewModel()
|
var ch = new CheckoutViewModel()
|
||||||
|
{
|
||||||
|
Id = item.id,
|
||||||
|
WorkshopId = item.WorkshopId,
|
||||||
|
ContractId = item.ContractId,
|
||||||
|
EmployeeId = item.EmployeeId,
|
||||||
|
EmployeeFullName = item.EmployeeFullName,
|
||||||
|
FathersName = item.FathersName,
|
||||||
|
NationalCode = item.NationalCode,
|
||||||
|
DateOfBirth = item.DateOfBirth,
|
||||||
|
WorkshopName = item.WorkshopName,
|
||||||
|
Month = item.Month,
|
||||||
|
Year = item.Year,
|
||||||
|
PersonnelCode = item.PersonnelCode,
|
||||||
|
PersonnelCodeInt = Convert.ToInt32(item.PersonnelCode),
|
||||||
|
ContractNo = item.ContractNo,
|
||||||
|
MonthlySalary = item.MonthlySalary.ToMoney(),
|
||||||
|
BaseYearsPay = item.BaseYearsPay.ToMoney(),
|
||||||
|
ConsumableItems = item.ConsumableItems.ToMoney(),
|
||||||
|
HousingAllowance = item.HousingAllowance.ToMoney(),
|
||||||
|
OvertimePay = item.OvertimePay.ToMoney(),
|
||||||
|
NightworkPay = item.NightworkPay.ToMoney(),
|
||||||
|
FridayPay = item.FridayPay.ToMoney(),
|
||||||
|
MissionPay = item.MissionPay.ToMoney(),
|
||||||
|
ShiftPay = item.ShiftPay.ToMoney(),
|
||||||
|
FamilyAllowance = item.FamilyAllowance.ToMoney(),
|
||||||
|
BonusesPay = item.BonusesPay.ToMoney(),
|
||||||
|
YearsPay = item.YearsPay.ToMoney(),
|
||||||
|
LeavePay = item.LeavePay.ToMoney(),
|
||||||
|
InsuranceDeduction = item.InsuranceDeduction.ToMoney(),
|
||||||
|
TaxDeducation = item.TaxDeducation.ToMoney(),
|
||||||
|
InstallmentDeduction = item.InstallmentDeduction.ToMoney(),
|
||||||
|
SalaryAidDeduction = item.SalaryAidDeduction.ToMoney(),
|
||||||
|
AbsenceDeduction = item.AbsenceDeduction.ToMoney(),
|
||||||
|
TotalClaims = item.TotalClaims,
|
||||||
|
TotalDeductions = item.TotalDeductions,
|
||||||
|
TotalPayment = item.TotalPayment.ToMoney(),
|
||||||
|
RewardPay = item.RewardPay.ToMoneyNullable(),
|
||||||
|
ContractStartGr = item.ContractStart,
|
||||||
|
ContractEndGr = item.ContractEnd,
|
||||||
|
IsLeft = false,
|
||||||
|
LeftWorkDate = "",
|
||||||
|
LastDayOfWork = "",
|
||||||
|
MarriedAllowance = item.MarriedAllowance.ToMoney(),
|
||||||
|
HasRollCall = item.HasRollCall,
|
||||||
|
SumOfWorkingDays = "-",
|
||||||
|
OverTimeWorkValue = item.OverTimeWorkValue,
|
||||||
|
OverNightWorkValue = item.OverNightWorkValue,
|
||||||
|
FridayWorkValue = item.FridayWorkValue,
|
||||||
|
RotatingShiftValue = item.RotatingShiftValue,
|
||||||
|
AbsenceValue = item.AbsenceValue,
|
||||||
|
MaritalStatus = "",
|
||||||
|
TotalDayOfLeaveCompute = "-",
|
||||||
|
TotalDayOfYearsCompute = "-",
|
||||||
|
TotalDayOfBunosesCompute = "-",
|
||||||
|
InstallmentViewModels = item.LoanInstallments.Select(i => new LoanInstallmentViewModel()
|
||||||
{
|
{
|
||||||
Id = item.id,
|
Amount = i.AmountForMonth,
|
||||||
WorkshopId = item.WorkshopId,
|
AmountDouble = i.AmountForMonth.MoneyToDouble(),
|
||||||
ContractId = item.ContractId,
|
Year = i.Year,
|
||||||
EmployeeId = item.EmployeeId,
|
Month = i.Month,
|
||||||
EmployeeFullName = item.EmployeeFullName,
|
IsActive = i.IsActive,
|
||||||
FathersName = item.FathersName,
|
RemainingAmount = i.LoanRemaining,
|
||||||
NationalCode = item.NationalCode,
|
LoanAmount = i.LoanAmount
|
||||||
DateOfBirth = item.DateOfBirth,
|
}).ToList(),
|
||||||
WorkshopName = item.WorkshopName,
|
SalaryAidViewModels = item.SalaryAids.Select(s => new SalaryAidViewModel()
|
||||||
Month = item.Month,
|
{
|
||||||
Year = item.Year,
|
Amount = s.Amount,
|
||||||
PersonnelCode = item.PersonnelCode,
|
AmountDouble = s.Amount.MoneyToDouble(),
|
||||||
PersonnelCodeInt = Convert.ToInt32(item.PersonnelCode),
|
SalaryAidDateTimeFa = s.SalaryAidDateTimeFa,
|
||||||
ContractNo = item.ContractNo,
|
SalaryAidDateTimeGe = s.SalaryAidDateTime
|
||||||
MonthlySalary = item.MonthlySalary.ToMoney(),
|
}).ToList(),
|
||||||
BaseYearsPay = item.BaseYearsPay.ToMoney(),
|
CheckoutRollCall = item.CheckoutRollCall != null ? new CheckoutRollCallViewModel()
|
||||||
ConsumableItems = item.ConsumableItems.ToMoney(),
|
{
|
||||||
HousingAllowance = item.HousingAllowance.ToMoney(),
|
TotalPresentTimeSpan = item.CheckoutRollCall.TotalPresentTimeSpan,
|
||||||
OvertimePay = item.OvertimePay.ToMoney(),
|
TotalBreakTimeSpan = item.CheckoutRollCall.TotalBreakTimeSpan,
|
||||||
NightworkPay = item.NightworkPay.ToMoney(),
|
TotalWorkingTimeSpan = item.CheckoutRollCall.TotalWorkingTimeSpan,
|
||||||
FridayPay = item.FridayPay.ToMoney(),
|
TotalPaidLeaveTmeSpan = item.CheckoutRollCall.TotalPaidLeaveTmeSpan,
|
||||||
MissionPay = item.MissionPay.ToMoney(),
|
TotalMandatoryTimeSpan = item.CheckoutRollCall.TotalMandatoryTimeSpan,
|
||||||
ShiftPay = item.ShiftPay.ToMoney(),
|
TotalSickLeaveTimeSpan = item.CheckoutRollCall.TotalSickLeaveTimeSpan,
|
||||||
FamilyAllowance = item.FamilyAllowance.ToMoney(),
|
RollCallDaysCollection = item.CheckoutRollCall.RollCallDaysCollection.Select(d => new CheckoutRollCallDayViewModel()
|
||||||
BonusesPay = item.BonusesPay.ToMoney(),
|
|
||||||
YearsPay = item.YearsPay.ToMoney(),
|
|
||||||
LeavePay = item.LeavePay.ToMoney(),
|
|
||||||
InsuranceDeduction = item.InsuranceDeduction.ToMoney(),
|
|
||||||
TaxDeducation = item.TaxDeducation.ToMoney(),
|
|
||||||
InstallmentDeduction = item.InstallmentDeduction.ToMoney(),
|
|
||||||
SalaryAidDeduction = item.SalaryAidDeduction.ToMoney(),
|
|
||||||
AbsenceDeduction = item.AbsenceDeduction.ToMoney(),
|
|
||||||
TotalClaims = item.TotalClaims,
|
|
||||||
TotalDeductions = item.TotalDeductions,
|
|
||||||
TotalPayment = item.TotalPayment.ToMoney(),
|
|
||||||
RewardPay = item.RewardPay.ToMoneyNullable(),
|
|
||||||
ContractStartGr = item.ContractStart,
|
|
||||||
ContractEndGr = item.ContractEnd,
|
|
||||||
IsLeft = false,
|
|
||||||
LeftWorkDate = "",
|
|
||||||
LastDayOfWork = "",
|
|
||||||
MarriedAllowance = item.MarriedAllowance.ToMoney(),
|
|
||||||
HasRollCall = item.HasRollCall,
|
|
||||||
SumOfWorkingDays = "-",
|
|
||||||
OverTimeWorkValue = item.OverTimeWorkValue,
|
|
||||||
OverNightWorkValue = item.OverNightWorkValue,
|
|
||||||
FridayWorkValue = item.FridayWorkValue,
|
|
||||||
RotatingShiftValue = item.RotatingShiftValue,
|
|
||||||
AbsenceValue = item.AbsenceValue,
|
|
||||||
MaritalStatus = "",
|
|
||||||
TotalDayOfLeaveCompute = "-",
|
|
||||||
TotalDayOfYearsCompute = "-",
|
|
||||||
TotalDayOfBunosesCompute = "-",
|
|
||||||
InstallmentViewModels = item.LoanInstallments.Select(i => new LoanInstallmentViewModel()
|
|
||||||
{
|
{
|
||||||
Amount = i.AmountForMonth,
|
WorkingTimeSpan = d.WorkingTimeSpan,
|
||||||
AmountDouble = i.AmountForMonth.MoneyToDouble(),
|
BreakTimeSpan = d.BreakTimeSpan,
|
||||||
Year = i.Year,
|
IsSliced = d.IsSliced,
|
||||||
Month = i.Month,
|
IsAbsent = d.IsAbsent,
|
||||||
IsActive = i.IsActive,
|
IsFriday = d.IsFriday,
|
||||||
RemainingAmount = i.LoanRemaining,
|
IsHoliday = d.IsHoliday,
|
||||||
LoanAmount = i.LoanAmount
|
LeaveType = d.LeaveType,
|
||||||
|
CheckoutId = d.CheckoutId,
|
||||||
|
Date = d.Date,
|
||||||
|
FirstEndDate = d.FirstEndDate,
|
||||||
|
FirstStartDate = d.FirstStartDate,
|
||||||
|
Id = d.Id,
|
||||||
|
SecondEndDate = d.SecondEndDate,
|
||||||
|
SecondStartDate = d.SecondStartDate,
|
||||||
}).ToList(),
|
}).ToList(),
|
||||||
SalaryAidViewModels = item.SalaryAids.Select(s => new SalaryAidViewModel()
|
|
||||||
{
|
|
||||||
Amount = s.Amount,
|
|
||||||
AmountDouble = s.Amount.MoneyToDouble(),
|
|
||||||
SalaryAidDateTimeFa = s.SalaryAidDateTimeFa,
|
|
||||||
SalaryAidDateTimeGe = s.SalaryAidDateTime
|
|
||||||
}).ToList(),
|
|
||||||
CheckoutRollCall = item.CheckoutRollCall != null ? new CheckoutRollCallViewModel()
|
|
||||||
{
|
|
||||||
TotalPresentTimeSpan = item.CheckoutRollCall.TotalPresentTimeSpan,
|
|
||||||
TotalBreakTimeSpan = item.CheckoutRollCall.TotalBreakTimeSpan,
|
|
||||||
TotalWorkingTimeSpan = item.CheckoutRollCall.TotalWorkingTimeSpan,
|
|
||||||
TotalPaidLeaveTmeSpan = item.CheckoutRollCall.TotalPaidLeaveTmeSpan,
|
|
||||||
TotalMandatoryTimeSpan = item.CheckoutRollCall.TotalMandatoryTimeSpan,
|
|
||||||
TotalSickLeaveTimeSpan = item.CheckoutRollCall.TotalSickLeaveTimeSpan,
|
|
||||||
RollCallDaysCollection = item.CheckoutRollCall.RollCallDaysCollection.Select(d => new CheckoutRollCallDayViewModel()
|
|
||||||
{
|
|
||||||
WorkingTimeSpan = d.WorkingTimeSpan,
|
|
||||||
BreakTimeSpan = d.BreakTimeSpan,
|
|
||||||
IsSliced = d.IsSliced,
|
|
||||||
IsAbsent = d.IsAbsent,
|
|
||||||
IsFriday = d.IsFriday,
|
|
||||||
IsHoliday = d.IsHoliday,
|
|
||||||
LeaveType = d.LeaveType,
|
|
||||||
CheckoutId = d.CheckoutId,
|
|
||||||
Date = d.Date,
|
|
||||||
FirstEndDate = d.FirstEndDate,
|
|
||||||
FirstStartDate = d.FirstStartDate,
|
|
||||||
Id = d.Id,
|
|
||||||
SecondEndDate = d.SecondEndDate,
|
|
||||||
SecondStartDate = d.SecondStartDate,
|
|
||||||
}).ToList(),
|
|
||||||
|
|
||||||
} : null,
|
} : null,
|
||||||
HasAmountConflict =item.HasAmountConflict,
|
HasAmountConflict = item.HasAmountConflict,
|
||||||
EmployeeMandatoryHoursTimeSpan = item.EmployeeMandatoryHours,
|
EmployeeMandatoryHoursTimeSpan = item.EmployeeMandatoryHours,
|
||||||
EmployeeMandatoryHoursStr = Tools.ToFarsiHoursAndMinutes(Convert.ToInt32(item.EmployeeMandatoryHours.TotalHours),item.EmployeeMandatoryHours.Minutes,"-")
|
EmployeeMandatoryHoursStr = Tools.ToFarsiHoursAndMinutes(Convert.ToInt32(item.EmployeeMandatoryHours.TotalHours), item.EmployeeMandatoryHours.Minutes, "-")
|
||||||
};
|
};
|
||||||
var workshopName = _context.Workshops.FirstOrDefault(x => x.id == ch.WorkshopId);
|
var workshopName = _context.Workshops.FirstOrDefault(x => x.id == ch.WorkshopId);
|
||||||
ch.WorkshopName = workshopName.WorkshopName;
|
ch.WorkshopName = workshopName.WorkshopName;
|
||||||
ch.TotalPaymentHide = workshopName.TotalPaymentHide;
|
ch.TotalPaymentHide = workshopName.TotalPaymentHide;
|
||||||
@@ -2014,7 +2014,7 @@ public class CheckoutRepository : RepositoryBase<long, Checkout>, ICheckoutRepos
|
|||||||
// );
|
// );
|
||||||
|
|
||||||
var checkouts =
|
var checkouts =
|
||||||
_context.CheckoutSet.Include(w=>w.CheckoutWarningMessageList).Where(x => workshopAcounts.Contains(x.WorkshopId))
|
_context.CheckoutSet.Include(w => w.CheckoutWarningMessageList).Where(x => workshopAcounts.Contains(x.WorkshopId))
|
||||||
.Join(_context.Workshops.AsSplitQuery(),
|
.Join(_context.Workshops.AsSplitQuery(),
|
||||||
ch => ch.WorkshopId,
|
ch => ch.WorkshopId,
|
||||||
workshop => workshop.id,
|
workshop => workshop.id,
|
||||||
@@ -2037,7 +2037,7 @@ public class CheckoutRepository : RepositoryBase<long, Checkout>, ICheckoutRepos
|
|||||||
{
|
{
|
||||||
res.ch,
|
res.ch,
|
||||||
res.workshop,
|
res.workshop,
|
||||||
option = _context.EmployeeComputeOptionsSet.FirstOrDefault(x=>x.WorkshopId == res.ch.WorkshopId &&x.EmployeeId == res.ch.EmployeeId),
|
option = _context.EmployeeComputeOptionsSet.FirstOrDefault(x => x.WorkshopId == res.ch.WorkshopId && x.EmployeeId == res.ch.EmployeeId),
|
||||||
res.workshopEmployer,
|
res.workshopEmployer,
|
||||||
contractingParty = _context.PersonalContractingParties
|
contractingParty = _context.PersonalContractingParties
|
||||||
.Include(p => p.Employers)
|
.Include(p => p.Employers)
|
||||||
@@ -2070,7 +2070,7 @@ public class CheckoutRepository : RepositoryBase<long, Checkout>, ICheckoutRepos
|
|||||||
hasEmployeeOrWorkshpSearch = true;
|
hasEmployeeOrWorkshpSearch = true;
|
||||||
checkouts = checkouts.Where(x => x.ch.ContractNo == searchModel.ContractNo);
|
checkouts = checkouts.Where(x => x.ch.ContractNo == searchModel.ContractNo);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//if (searchModel.IsActiveString == null)
|
//if (searchModel.IsActiveString == null)
|
||||||
@@ -2250,50 +2250,50 @@ public class CheckoutRepository : RepositoryBase<long, Checkout>, ICheckoutRepos
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
||||||
if (!hasSearch && !hasEmployeeOrWorkshpSearch)
|
if (!hasSearch && !hasEmployeeOrWorkshpSearch)
|
||||||
{
|
{
|
||||||
|
|
||||||
return checkouts.Select(x => new CheckoutViewModel()
|
return checkouts.Select(x => new CheckoutViewModel()
|
||||||
|
{
|
||||||
|
|
||||||
|
Id = x.ch.id,
|
||||||
|
EmployeeFullName = x.ch.EmployeeFullName,
|
||||||
|
ContractStart = x.ch.ContractStart.ToFarsi(),
|
||||||
|
ContractEnd = x.ch.ContractEnd.ToFarsi(),
|
||||||
|
ContractStartGr = x.ch.ContractStart,
|
||||||
|
ContractEndGr = x.ch.ContractEnd,
|
||||||
|
PersonnelCode = x.ch.PersonnelCode,
|
||||||
|
PersonnelCodeInt = Convert.ToInt32(x.ch.PersonnelCode),
|
||||||
|
ArchiveCode = x.workshop.ArchiveCode,
|
||||||
|
SumOfWorkingDays = x.ch.SumOfWorkingDays,
|
||||||
|
WorkshopName = x.workshop.WorkshopName,
|
||||||
|
Month = x.ch.Month,
|
||||||
|
Year = x.ch.Year,
|
||||||
|
ContractNo = x.ch.ContractNo,
|
||||||
|
ContractId = x.ch.ContractId,
|
||||||
|
WorkshopId = x.ch.WorkshopId,
|
||||||
|
EmployeeId = x.ch.EmployeeId,
|
||||||
|
EmployerId = x.workshopEmployer.EmployerId,
|
||||||
|
IsActiveString = x.ch.IsActiveString,
|
||||||
|
Signature = x.ch.Signature,
|
||||||
|
CreationDate = x.ch.CreationDate,
|
||||||
|
EmployerName = $"{x.workshopEmployer.Employer.FName} {x.workshopEmployer.Employer.LName}",
|
||||||
|
IsBlockCantracingParty = x.contractingParty.IsBlock,
|
||||||
|
HasSignCheckout = x.option != null ? x.option.SignCheckout : x.workshop.SignCheckout,
|
||||||
|
IsUpdateNeeded = x.ch.IsUpdateNeeded,
|
||||||
|
CheckoutWarningMessageList = x.ch.CheckoutWarningMessageList.Select(wm => new CheckoutWarningMessageModel
|
||||||
{
|
{
|
||||||
|
WarningMessage = wm.WarningMessage,
|
||||||
|
TypeOfCheckoutWarning = wm.TypeOfCheckoutWarning,
|
||||||
|
|
||||||
Id = x.ch.id,
|
}).ToList()
|
||||||
EmployeeFullName = x.ch.EmployeeFullName,
|
|
||||||
ContractStart = x.ch.ContractStart.ToFarsi(),
|
|
||||||
ContractEnd = x.ch.ContractEnd.ToFarsi(),
|
|
||||||
ContractStartGr = x.ch.ContractStart,
|
|
||||||
ContractEndGr = x.ch.ContractEnd,
|
|
||||||
PersonnelCode = x.ch.PersonnelCode,
|
|
||||||
PersonnelCodeInt = Convert.ToInt32(x.ch.PersonnelCode),
|
|
||||||
ArchiveCode = x.workshop.ArchiveCode,
|
|
||||||
SumOfWorkingDays = x.ch.SumOfWorkingDays,
|
|
||||||
WorkshopName = x.workshop.WorkshopName,
|
|
||||||
Month = x.ch.Month,
|
|
||||||
Year = x.ch.Year,
|
|
||||||
ContractNo = x.ch.ContractNo,
|
|
||||||
ContractId = x.ch.ContractId,
|
|
||||||
WorkshopId = x.ch.WorkshopId,
|
|
||||||
EmployeeId = x.ch.EmployeeId,
|
|
||||||
EmployerId = x.workshopEmployer.EmployerId,
|
|
||||||
IsActiveString = x.ch.IsActiveString,
|
|
||||||
Signature = x.ch.Signature,
|
|
||||||
CreationDate = x.ch.CreationDate,
|
|
||||||
EmployerName = $"{x.workshopEmployer.Employer.FName} {x.workshopEmployer.Employer.LName}",
|
|
||||||
IsBlockCantracingParty = x.contractingParty.IsBlock,
|
|
||||||
HasSignCheckout = x.option != null ? x.option.SignCheckout : x.workshop.SignCheckout,
|
|
||||||
IsUpdateNeeded = x.ch.IsUpdateNeeded,
|
|
||||||
CheckoutWarningMessageList = x.ch.CheckoutWarningMessageList.Select(wm=> new CheckoutWarningMessageModel
|
|
||||||
{
|
|
||||||
WarningMessage = wm.WarningMessage,
|
|
||||||
TypeOfCheckoutWarning = wm.TypeOfCheckoutWarning,
|
|
||||||
|
|
||||||
}).ToList()
|
|
||||||
|
|
||||||
|
|
||||||
}).OrderByDescending(x=>x.Id).Take(3000).ToList().DistinctBy(x => x.Id)
|
}).OrderByDescending(x => x.Id).Take(3000).ToList().DistinctBy(x => x.Id)
|
||||||
.OrderByDescending(x => x.Id).ThenByDescending(x => x.Year)
|
.OrderByDescending(x => x.Id).ThenByDescending(x => x.Year)
|
||||||
.ThenBy(x => x.PersonnelCodeInt)
|
.ThenBy(x => x.PersonnelCodeInt)
|
||||||
.Take(50).ToList();
|
.Take(50).ToList();
|
||||||
@@ -2441,7 +2441,7 @@ public class CheckoutRepository : RepositoryBase<long, Checkout>, ICheckoutRepos
|
|||||||
CreationDate = x.ch.CreationDate,
|
CreationDate = x.ch.CreationDate,
|
||||||
EmployerName = $"{x.workshopEmployer.Employer.FName} {x.workshopEmployer.Employer.LName}",
|
EmployerName = $"{x.workshopEmployer.Employer.FName} {x.workshopEmployer.Employer.LName}",
|
||||||
IsBlockCantracingParty = x.contractingParty.IsBlock,
|
IsBlockCantracingParty = x.contractingParty.IsBlock,
|
||||||
HasSignCheckout = x.option != null ? x.option.SignCheckout : x.workshop.SignCheckout,
|
HasSignCheckout = x.option != null ? x.option.SignCheckout : x.workshop.SignCheckout,
|
||||||
IsUpdateNeeded = x.ch.IsUpdateNeeded,
|
IsUpdateNeeded = x.ch.IsUpdateNeeded,
|
||||||
CheckoutWarningMessageList = x.ch.CheckoutWarningMessageList.Select(wm => new CheckoutWarningMessageModel
|
CheckoutWarningMessageList = x.ch.CheckoutWarningMessageList.Select(wm => new CheckoutWarningMessageModel
|
||||||
{
|
{
|
||||||
@@ -2454,8 +2454,8 @@ public class CheckoutRepository : RepositoryBase<long, Checkout>, ICheckoutRepos
|
|||||||
.Select(x => x.First()).ToList()
|
.Select(x => x.First()).ToList()
|
||||||
.OrderByDescending(x => x.Id)
|
.OrderByDescending(x => x.Id)
|
||||||
.ThenByDescending(x => x.Year).ThenBy(x => x.PersonnelCodeInt).ToList();
|
.ThenByDescending(x => x.Year).ThenBy(x => x.PersonnelCodeInt).ToList();
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -2769,43 +2769,43 @@ public class CheckoutRepository : RepositoryBase<long, Checkout>, ICheckoutRepos
|
|||||||
.Select(x => x.WorkshopId);
|
.Select(x => x.WorkshopId);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
var watch = new Stopwatch();
|
|
||||||
watch.Start();
|
|
||||||
var checkouts =
|
|
||||||
(
|
|
||||||
from workshop in _context.Workshops.Where(x => workshopAccounts.Contains(x.id))
|
|
||||||
join x in _context.CheckoutSet
|
|
||||||
on workshop.id equals x.WorkshopId
|
|
||||||
select new
|
|
||||||
{
|
|
||||||
Id = x.id,
|
|
||||||
EmployeeFullName = x.EmployeeFullName,
|
|
||||||
EmployeeId = x.EmployeeId,
|
|
||||||
ContractStart = x.ContractStart,
|
|
||||||
ContractEnd = x.ContractEnd,
|
|
||||||
PersonnelCode = x.PersonnelCode,
|
|
||||||
SumOfWorkingDays = x.SumOfWorkingDays,
|
|
||||||
Month = x.Month,
|
|
||||||
Year = x.Year,
|
|
||||||
ContractNo = x.ContractNo,
|
|
||||||
IsActiveString = x.IsActiveString,
|
|
||||||
Signature = x.Signature,
|
|
||||||
IsUpdateNeeded = x.IsUpdateNeeded,
|
|
||||||
WorkshopId = x.WorkshopId,
|
|
||||||
ArchiveCode = workshop.ArchiveCode,
|
|
||||||
WorkshopName = workshop.WorkshopFullName,
|
|
||||||
WorkshopSignCheckout = workshop.SignCheckout,
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
).OrderByDescending(x => x.Id)
|
var watch = new Stopwatch();
|
||||||
.ThenByDescending(x => x.Year)
|
watch.Start();
|
||||||
.ThenByDescending(x=>x.ContractStart)
|
var checkouts =
|
||||||
.ThenBy(x => x.PersonnelCode).AsNoTracking();
|
(
|
||||||
|
from workshop in _context.Workshops.Where(x => workshopAccounts.Contains(x.id))
|
||||||
|
join x in _context.CheckoutSet
|
||||||
|
on workshop.id equals x.WorkshopId
|
||||||
|
select new
|
||||||
|
{
|
||||||
|
Id = x.id,
|
||||||
|
EmployeeFullName = x.EmployeeFullName,
|
||||||
|
EmployeeId = x.EmployeeId,
|
||||||
|
ContractStart = x.ContractStart,
|
||||||
|
ContractEnd = x.ContractEnd,
|
||||||
|
PersonnelCode = x.PersonnelCode,
|
||||||
|
SumOfWorkingDays = x.SumOfWorkingDays,
|
||||||
|
Month = x.Month,
|
||||||
|
Year = x.Year,
|
||||||
|
ContractNo = x.ContractNo,
|
||||||
|
IsActiveString = x.IsActiveString,
|
||||||
|
Signature = x.Signature,
|
||||||
|
IsUpdateNeeded = x.IsUpdateNeeded,
|
||||||
|
WorkshopId = x.WorkshopId,
|
||||||
|
ArchiveCode = workshop.ArchiveCode,
|
||||||
|
WorkshopName = workshop.WorkshopFullName,
|
||||||
|
WorkshopSignCheckout = workshop.SignCheckout,
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
).OrderByDescending(x => x.Id)
|
||||||
|
.ThenByDescending(x => x.Year)
|
||||||
|
.ThenByDescending(x => x.ContractStart)
|
||||||
|
.ThenBy(x => x.PersonnelCode).AsNoTracking();
|
||||||
|
|
||||||
Console.WriteLine("getList======================= : " + watch.Elapsed);
|
Console.WriteLine("getList======================= : " + watch.Elapsed);
|
||||||
|
|
||||||
#region SercheModel
|
#region SercheModel
|
||||||
|
|
||||||
if (!string.IsNullOrWhiteSpace(searchModel.ContractNo))
|
if (!string.IsNullOrWhiteSpace(searchModel.ContractNo))
|
||||||
@@ -2839,7 +2839,7 @@ public class CheckoutRepository : RepositoryBase<long, Checkout>, ICheckoutRepos
|
|||||||
(string.IsNullOrWhiteSpace(searchModel.ContractStart) ||
|
(string.IsNullOrWhiteSpace(searchModel.ContractStart) ||
|
||||||
string.IsNullOrWhiteSpace(searchModel.ContractEnd)))
|
string.IsNullOrWhiteSpace(searchModel.ContractEnd)))
|
||||||
{
|
{
|
||||||
|
|
||||||
var startYear = searchModel.Year + "/01/01";
|
var startYear = searchModel.Year + "/01/01";
|
||||||
var startyearGr = startYear.ToGeorgianDateTime();
|
var startyearGr = startYear.ToGeorgianDateTime();
|
||||||
var endYear = $"{searchModel.Year}/12/01".FindeEndOfMonth();
|
var endYear = $"{searchModel.Year}/12/01".FindeEndOfMonth();
|
||||||
@@ -2855,7 +2855,7 @@ public class CheckoutRepository : RepositoryBase<long, Checkout>, ICheckoutRepos
|
|||||||
string.IsNullOrWhiteSpace(searchModel.ContractStart) &&
|
string.IsNullOrWhiteSpace(searchModel.ContractStart) &&
|
||||||
string.IsNullOrWhiteSpace(searchModel.ContractEnd))
|
string.IsNullOrWhiteSpace(searchModel.ContractEnd))
|
||||||
{
|
{
|
||||||
|
|
||||||
//سرچ سال و ماه
|
//سرچ سال و ماه
|
||||||
string y1 = $"{searchModel.Year}/{searchModel.Month}/01";
|
string y1 = $"{searchModel.Year}/{searchModel.Month}/01";
|
||||||
var startDate = y1.ToGeorgianDateTime();
|
var startDate = y1.ToGeorgianDateTime();
|
||||||
@@ -2975,7 +2975,7 @@ public class CheckoutRepository : RepositoryBase<long, Checkout>, ICheckoutRepos
|
|||||||
!string.IsNullOrWhiteSpace(searchModel.ContractEnd) &&
|
!string.IsNullOrWhiteSpace(searchModel.ContractEnd) &&
|
||||||
string.IsNullOrWhiteSpace(searchModel.Year) && string.IsNullOrWhiteSpace(searchModel.Month))
|
string.IsNullOrWhiteSpace(searchModel.Year) && string.IsNullOrWhiteSpace(searchModel.Month))
|
||||||
{
|
{
|
||||||
|
|
||||||
//سرچ تاریخ
|
//سرچ تاریخ
|
||||||
var start = searchModel.ContractStart.ToGeorgianDateTime();
|
var start = searchModel.ContractStart.ToGeorgianDateTime();
|
||||||
var endd = searchModel.ContractEnd.ToGeorgianDateTime();
|
var endd = searchModel.ContractEnd.ToGeorgianDateTime();
|
||||||
@@ -2992,19 +2992,19 @@ public class CheckoutRepository : RepositoryBase<long, Checkout>, ICheckoutRepos
|
|||||||
|
|
||||||
watch.Reset();
|
watch.Reset();
|
||||||
watch.Start();
|
watch.Start();
|
||||||
|
|
||||||
var checkoutQueryFilter = await checkouts.ApplyPagination(searchModel.PageIndex, searchModel.PageSize).ToListAsync();
|
var checkoutQueryFilter = await checkouts.ApplyPagination(searchModel.PageIndex, searchModel.PageSize).ToListAsync();
|
||||||
Console.WriteLine("pagination===================== : " + watch.Elapsed);
|
Console.WriteLine("pagination===================== : " + watch.Elapsed);
|
||||||
|
|
||||||
var employers =await
|
var employers = await
|
||||||
_context.WorkshopEmployers.Where(x => checkoutQueryFilter
|
_context.WorkshopEmployers.Where(x => checkoutQueryFilter
|
||||||
.Select(c => c.WorkshopId).Contains(x.WorkshopId))
|
.Select(c => c.WorkshopId).Contains(x.WorkshopId))
|
||||||
.Select(x=> new {x.Employer, x.WorkshopId}).ToListAsync();
|
.Select(x => new { x.Employer, x.WorkshopId }).ToListAsync();
|
||||||
var contractingPartiesIds = employers.Select(x => x.Employer.ContractingPartyId).ToList();
|
var contractingPartiesIds = employers.Select(x => x.Employer.ContractingPartyId).ToList();
|
||||||
var warningMessages = await _context.CheckoutWarningMessages.Where(x => checkoutQueryFilter
|
var warningMessages = await _context.CheckoutWarningMessages.Where(x => checkoutQueryFilter
|
||||||
.Select(c => c.Id).Contains(x.CheckoutId)).ToListAsync();
|
.Select(c => c.Id).Contains(x.CheckoutId)).ToListAsync();
|
||||||
|
|
||||||
|
|
||||||
var contractnigParties = await _context.PersonalContractingParties
|
var contractnigParties = await _context.PersonalContractingParties
|
||||||
.Where(x => contractingPartiesIds.Contains(x.id)).ToListAsync();
|
.Where(x => contractingPartiesIds.Contains(x.id)).ToListAsync();
|
||||||
|
|
||||||
@@ -3078,40 +3078,58 @@ public class CheckoutRepository : RepositoryBase<long, Checkout>, ICheckoutRepos
|
|||||||
.Where(x => x.WorkshopId == getCheckouts.First().WorkshopId).AsNoTracking()
|
.Where(x => x.WorkshopId == getCheckouts.First().WorkshopId).AsNoTracking()
|
||||||
.Select(x => new CheckoutEmployersList
|
.Select(x => new CheckoutEmployersList
|
||||||
{
|
{
|
||||||
IsLegal = x.Employer.IsLegal == "true",
|
IsLegal = x.Employer.IsLegal,
|
||||||
EmployerFullName = x.Employer.FullName
|
EmployerFullName = x.Employer.FullName
|
||||||
}).ToListAsync();
|
}).ToListAsync();
|
||||||
|
|
||||||
var employees = (from x in _context.Employees.Where(x => getCheckouts.Select(ch => ch.EmployeeId).Contains(x.id))
|
var employees = (from x in _context.Employees.Where(x => getCheckouts.Select(ch => ch.EmployeeId).Contains(x.id))
|
||||||
select new
|
select new
|
||||||
{
|
{
|
||||||
EmployeeId = x.id,
|
EmployeeId = x.id,
|
||||||
MaritalStatus = x.MaritalStatus
|
MaritalStatus = x.MaritalStatus
|
||||||
}
|
}
|
||||||
).AsNoTracking();
|
).AsNoTracking();
|
||||||
var workshop = await _context.Workshops.AsNoTracking().FirstAsync(x => x.id == getCheckouts.First().WorkshopId);
|
var workshop = await _context.Workshops.AsNoTracking().FirstAsync(x => x.id == getCheckouts.First().WorkshopId);
|
||||||
|
var showSumOfPayments = workshop.TotalPaymentHide;
|
||||||
|
bool isLegal = employers.Any(x => x.IsLegal == "حقوقی");
|
||||||
|
|
||||||
|
var leftWorks = await _context.LeftWorkList.AsNoTracking()
|
||||||
|
.Where(x => x.WorkshopId == workshop.id).ToListAsync();
|
||||||
|
|
||||||
bool isLegal = employers.Any(x => x.IsLegal);
|
|
||||||
|
|
||||||
var result = getCheckouts.Select(x =>
|
var result = getCheckouts.Select(x =>
|
||||||
{
|
{
|
||||||
|
var leftCheck = leftWorks
|
||||||
|
.FirstOrDefault(l => l.EmployeeId == x.EmployeeId && x.ContractStart >= l.StartWorkDate && x.ContractStart <= l.LeftWorkDate && l.HasLeft);
|
||||||
|
bool hasLeft = false;
|
||||||
|
var leftWorkDate = "";
|
||||||
|
var lastDayOfWork = "";
|
||||||
|
if (leftCheck != null)
|
||||||
|
{
|
||||||
|
var contractLeftWorkDate = x.ContractEnd.AddDays(1);
|
||||||
|
if (leftCheck.HasLeft && leftCheck.LeftWorkDate == contractLeftWorkDate)
|
||||||
|
{
|
||||||
|
hasLeft = true;
|
||||||
|
leftWorkDate = leftCheck.LeftWorkDate.ToFarsi();
|
||||||
|
lastDayOfWork = x.ContractEnd.ToFarsi();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
var overTimeWorkValue = x.OvertimePay > 0 ? x.OverTimeWorkValue : "-";
|
var overTimeWorkValue = x.OvertimePay > 0 ? x.OverTimeWorkValue : "-";
|
||||||
var overNightWorkValue = x.OvertimePay > 0 ? x.OverNightWorkValue : "-";
|
var overNightWorkValue = x.NightworkPay > 0 ? x.OverNightWorkValue : "-";
|
||||||
var fridayWorkValue = x.FridayPay > 0 ? x.FridayWorkValue : "-";
|
var fridayWorkValue = x.FridayPay > 0 ? x.FridayWorkValue : "-";
|
||||||
var maritalStatus = employees.First(e => e.EmployeeId == x.EmployeeId).MaritalStatus;
|
var maritalStatus = employees.First(e => e.EmployeeId == x.EmployeeId).MaritalStatus;
|
||||||
var rewardPay = x.RewardPay == null ? "-" : x.RewardPay.ToMoneyNullable();
|
var rewardPay = x.RewardPay == null ? "-" : x.RewardPay.ToMoneyCheckZeroNullable();
|
||||||
var rotatingShiftValue = x.ShiftPay > 0 ? x.RotatingShiftValue : "-";
|
var rotatingShiftValue = x.ShiftPay > 0 ? x.RotatingShiftValue : "-";
|
||||||
var totalDeduction = "-";
|
var totalDeduction = "-";
|
||||||
var totalPayment = "-";
|
var totalPayment = "-";
|
||||||
var totalClaims = "-";
|
var totalClaims = "-";
|
||||||
if (!workshop.TotalPaymentHide)
|
if (showSumOfPayments)
|
||||||
{
|
{
|
||||||
totalDeduction = x.TotalDeductions;
|
totalDeduction = x.TotalDeductions;
|
||||||
totalPayment = x.TotalPayment.ToMoneyCheckZero();
|
totalPayment = x.TotalPayment.ToMoneyCheckZero();
|
||||||
totalClaims = x.TotalClaims;
|
totalClaims = x.TotalClaims;
|
||||||
}
|
}
|
||||||
|
|
||||||
return new CheckoutPrintDto()
|
return new CheckoutPrintDto()
|
||||||
{
|
{
|
||||||
Id = x.id,
|
Id = x.id,
|
||||||
@@ -3125,12 +3143,15 @@ public class CheckoutRepository : RepositoryBase<long, Checkout>, ICheckoutRepos
|
|||||||
FathersName = x.FathersName,
|
FathersName = x.FathersName,
|
||||||
NationalCode = x.NationalCode,
|
NationalCode = x.NationalCode,
|
||||||
DateOfBirth = x.DateOfBirth,
|
DateOfBirth = x.DateOfBirth,
|
||||||
WorkshopName = x.WorkshopName,
|
WorkshopName = workshop.WorkshopName,
|
||||||
ContractNo = x.ContractNo,
|
ContractNo = x.ContractNo,
|
||||||
Month = x.Month,
|
Month = x.Month,
|
||||||
Year = x.Year,
|
Year = x.Year,
|
||||||
EmployersLists = employers,
|
EmployersLists = employers,
|
||||||
EmployerIslegal = isLegal,
|
EmployerIslegal = isLegal,
|
||||||
|
HasLeft = hasLeft,
|
||||||
|
LastDayOfWork = lastDayOfWork,
|
||||||
|
LeftWorkDate = leftWorkDate,
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
//جدول مطالبات و کسورات
|
//جدول مطالبات و کسورات
|
||||||
@@ -3192,6 +3213,20 @@ public class CheckoutRepository : RepositoryBase<long, Checkout>, ICheckoutRepos
|
|||||||
TotalDeductions = totalDeduction,
|
TotalDeductions = totalDeduction,
|
||||||
TotalClaims = totalClaims,
|
TotalClaims = totalClaims,
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
//لیست ورود و خروج پرسنل
|
||||||
|
//اطلاعات ساعات کار و موظقی
|
||||||
|
#region RollCallData
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
|
||||||
|
//اقساط - مساعده
|
||||||
|
#region SalaryAidAndInstallmentData
|
||||||
|
|
||||||
|
#endregion
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ using CompanyManagment.App.Contracts.Checkout;
|
|||||||
using CompanyManagment.App.Contracts.Checkout.Dto;
|
using CompanyManagment.App.Contracts.Checkout.Dto;
|
||||||
using CompanyManagment.App.Contracts.InstitutionPlan;
|
using CompanyManagment.App.Contracts.InstitutionPlan;
|
||||||
using Microsoft.AspNetCore.Mvc;
|
using Microsoft.AspNetCore.Mvc;
|
||||||
|
using NuGet.Packaging.Signing;
|
||||||
using ServiceHost.BaseControllers;
|
using ServiceHost.BaseControllers;
|
||||||
|
|
||||||
namespace ServiceHost.Areas.Admin.Controllers;
|
namespace ServiceHost.Areas.Admin.Controllers;
|
||||||
@@ -39,5 +40,29 @@ public class CheckoutController : AdminBaseController
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// پرینت گروهی فیش حقوقی
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="ids"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
[HttpGet("GroupPrint")]
|
||||||
|
public async Task<List<CheckoutPrintDto>> Print(List<long> ids)
|
||||||
|
{
|
||||||
|
var result =await _checkoutApplication.CheckoutPrint(ids);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// پرینت تکی فیش حقوقی
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="id"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
[HttpGet("PrintOne")]
|
||||||
|
public async Task<List<CheckoutPrintDto>> Print(long id)
|
||||||
|
{
|
||||||
|
var result = await _checkoutApplication.CheckoutPrint([id]);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ public class CheckoutPrintAllModel : PageModel
|
|||||||
|
|
||||||
|
|
||||||
var ids = ExtractNumbers(idlist);
|
var ids = ExtractNumbers(idlist);
|
||||||
var test = _checkoutApplication.CheckoutPrint(ids).GetAwaiter().GetResult();
|
|
||||||
var resultList = new List<CheckoutGroupPrintViewModel>();
|
var resultList = new List<CheckoutGroupPrintViewModel>();
|
||||||
|
|
||||||
var res = _checkoutApplication.PrintAll(ids);
|
var res = _checkoutApplication.PrintAll(ids);
|
||||||
|
|||||||
Reference in New Issue
Block a user