public ViewResult employeedirectory() { using (var dbCntx = new HrDataContext()) { ViewData["BranchId"] = BRANCHID; var empDirectoryVm = new EmpDirectoryVm { empSearch = new EmpSearch { } }; return(View("employeedirectory", empDirectoryVm)); } }
public ActionResult empsearchajax(EmpSearch empSearch) { int offSet = Convert.ToInt32(System.Configuration.ConfigurationManager.AppSettings["appTableOffSet"]); int skipRows = (empSearch.pageNumber - 1) * offSet; using (var dbCntx = new HrDataContext()) { var list = dbCntx.EmployeeHeaders.AdvSearchEmpHeaderWhere(empSearch.EmployeeName, empSearch.EmployeeType) .Join(dbCntx.EmployeePersonalDetails, a => a.EmployeeId, b => b.EmployeeId, (a, b) => new { A = a, B = b }) .Join(dbCntx.EmployeeWorkDetails.AdvSearchEmpWorkDetailWhere(empSearch.DOJ, empSearch.Designation, BRANCHID, ROLECODE), c => c.A.EmployeeId, d => d.EmployeeId, (c, d) => new { C = c, D = d }) //.Join(dbCntx.Users, //e => e.C.A.EmployeeId, f => f.EmployeeId, //(e, f) => new { E = e, F = f }) //.Join(dbCntx.EmployeeDocumentDetails, //g => g.E.C.A.EmployeeId, h => h.EmployeeId, //(g, h) => new { G = g, H = h }) .Select(x => new EmployeeListVm { EmployeeId = x.C.A.EmployeeId, EmployeeNo = x.C.A.IDNumber, EmployeeName = x.C.A.FirstName, JoiningDate = x.D.JoiningDate, JobTitle = dbCntx.LookUps .Where(y => y.LookUpID == x.D.DesignationId) .FirstOrDefault().LookUpDescription, ContactNo = x.C.B.EmergencyContactNumber, PersonalEmailId = x.C.A.UserEmailId, OfficialEmailId = x.C.A.UserEmailId, DocumentDetailID = dbCntx.EmployeeDocumentDetails .Where(z => z.DocumentType == UTILITY.DOCUMENTTYPEID && z.EmployeeId == x.C.A.EmployeeId).FirstOrDefault() == null ? 0 : dbCntx.EmployeeDocumentDetails .Where(z => z.DocumentType == UTILITY.DOCUMENTTYPEID && z.EmployeeId == x.C.A.EmployeeId).FirstOrDefault().DocumentDetailID,//x.H.DocumentDetailID, DateOfBirth = x.C.B.DOB, branchid = x.C.A.BranchId, ProfilePic = dbCntx.EmployeeDocumentDetails .Where(a => a.DocumentType == UTILITY.DOCUMENTTYPEID && a.EmployeeId == x.C.A.EmployeeId).FirstOrDefault() == null ? "" : dbCntx.EmployeeDocumentDetails .Where(a => a.DocumentType == UTILITY.DOCUMENTTYPEID && a.EmployeeId == x.C.A.EmployeeId).FirstOrDefault().FileName }); var emplist = list.Where(x => x.branchid == BRANCHID).ToList(); var query = emplist.OrderByDescending(x => x.EmployeeId).Skip(skipRows).Take(offSet).ToList().AsEnumerable(); var totalCount = emplist.Count(); decimal pagerLength = decimal.Divide(Convert.ToDecimal(totalCount), Convert.ToDecimal(offSet)); decimal pagnationRound = Math.Ceiling(Convert.ToDecimal(pagerLength)); var empDirectoryVm = new EmpDirectoryVm { employeeVm = query, empSearch = empSearch, count = totalCount, PagerLength = pagnationRound }; return(Json(empDirectoryVm, JsonRequestBehavior.AllowGet)); } }