/// <summary> /// مدل سرانه را به پروکسی مربوطه تبدیل می کند /// </summary> /// <param name="item">مدل</param> /// <returns>پروکسی</returns> public OverTimeProxy ConvertToProxy(OverTimeDetail item) { try { OverTimeProxy proxy = new OverTimeProxy(); proxy.ID = item.ID; proxy.Date = item.OverTime.Date; proxy.IsActive = item.OverTime.IsActive; proxy.DepartmentName = item.Department.Name; if (personList != null) { proxy.OverTimePersonCount = personList.Where(c => c.Department.ParentPath != null && (c.Department.ID == item.Department.ID || c.Department.ParentPath.Contains("," + item.Department.ID + ",")) && c.PersonTASpec.OverTimeWork == true).Count(); proxy.NightlyPersonCount = personList.Where(c => c.Department.ParentPath != null && (c.Department.ID == item.Department.ID || c.Department.ParentPath.Contains("," + item.Department.ID + ",")) && c.PersonTASpec.NightWork == true).Count(); proxy.HolidayPersonCount = personList.Where(c => c.Department.ParentPath != null && (c.Department.ID == item.Department.ID || c.Department.ParentPath.Contains("," + item.Department.ID + ",")) && c.PersonTASpec.HolidayWork == true).Count(); } else { proxy.OverTimePersonCount = bPerson.GetAllPersonsCountByDepartmentParentID(item.Department.ID, OverTimePersuasiveType.OverTimeWork); proxy.NightlyPersonCount = bPerson.GetAllPersonsCountByDepartmentParentID(item.Department.ID, OverTimePersuasiveType.NightWork); proxy.HolidayPersonCount = bPerson.GetAllPersonsCountByDepartmentParentID(item.Department.ID, OverTimePersuasiveType.HolidayWork); } proxy.MaxOverTime = item.MaxOverTime; proxy.MaxHoliday = item.MaxHoliday; proxy.MaxNightly = item.MaxNightly; return(proxy); } catch (Exception ex) { throw ex; } }