From 72435f2d4714a7e54ddd339a8ccbfb3c11b6edbf Mon Sep 17 00:00:00 2001 From: mahan Date: Mon, 22 Sep 2025 11:07:37 +0330 Subject: [PATCH] fix: InsuranceList edit on get bug --- .../Repository/InsuranceListRepository.cs | 22 +++++++++++++------ 1 file changed, 15 insertions(+), 7 deletions(-) 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