diff --git a/CompanyManagment.EFCore/Repository/InsuranceListRepository.cs b/CompanyManagment.EFCore/Repository/InsuranceListRepository.cs index 0ecbe40a..1419fd36 100644 --- a/CompanyManagment.EFCore/Repository/InsuranceListRepository.cs +++ b/CompanyManagment.EFCore/Repository/InsuranceListRepository.cs @@ -1345,8 +1345,12 @@ public class InsuranceListRepository : RepositoryBase, IIns public List GetEmployeeInsuranceDataForEdit(long insuranceListId, DateTime startDate, DateTime endDate) { - var res = _context.EmployeeInsurancListDataSet + var employeeDataQuery = _context.EmployeeInsurancListDataSet .Where(x => x.InsuranceListId == insuranceListId) + .Join(_context.InsuranceListSet, + employeeInsurancListData => employeeInsurancListData.InsuranceListId, + insuranceList => insuranceList.id, + (employeeInsurancListData, insuranceList) => new{employeeInsurancListData,insuranceList}) .Join(_context.LeftWorkInsuranceList .Where(x => ((x.LeftWorkDate != null && x.LeftWorkDate != DateTime.MinValue) && @@ -1357,14 +1361,18 @@ public class InsuranceListRepository : RepositoryBase, IIns (x.LeftWorkDate == null || x.LeftWorkDate == DateTime.MinValue)) .Where(x => x.StartWorkDate <= endDate) .Include(x => x.Employee), - employeeData => employeeData.EmployeeId, - leftwork => leftwork.EmployeeId, - (employeeData, leftwork) => new { employeeData, leftwork }) - .Join(_context.Jobs, + employeeData =>new { employeeData.employeeInsurancListData.EmployeeId,employeeData.insuranceList.WorkshopId}, + leftwork => new {leftwork.EmployeeId,leftwork.WorkshopId}, + (employeeData, leftwork) + => new { employeeData = employeeData.employeeInsurancListData, leftwork }); + + var employeeJobs =employeeDataQuery.Join(_context.Jobs, result => result.leftwork.JobId, job => job.id, - (result, job) => new { result, job }) - .GroupJoin(_context.InsuranceEmployeeInformationSet.AsSplitQuery(), + (result, job) => new { result, job }); + + + var res =employeeJobs.GroupJoin(_context.InsuranceEmployeeInformationSet.AsSplitQuery(), allResult => allResult.result.employeeData.EmployeeId, employeeInfo => employeeInfo.EmployeeId, (allResult, employeeInfo) => new