Example #1
0
        public ActionResult ClientServicingDashboardInfo(int page = 1, string sort = "", string sortDir = "desc", string Search = "", short ClientRowID = 0, string CaseStatus = "", string RecievingDate = "", string CompletedDate = "", byte tatdays = 0)
        {
            DashboardClientCandidateListViewModel model = new DashboardClientCandidateListViewModel();

            try
            {
                int    pageSize       = 20;
                string SpocEmail      = Session["TeamMemberEmail"].ToString();
                short  teamMemerRowId = Convert.ToInt16(Session["TeamMemberRowID"]);
                if (!string.IsNullOrEmpty(CaseStatus) && (CaseStatus == "Pendingwithcandidate" || CaseStatus == "PendingwithHR"))
                {
                    model = repoDashboard.GetClientServicingDashBoardTempPQPersonalInfo(page, pageSize, sort.ToLower(), sortDir.ToLower(), Search, CaseStatus, ClientRowID, RecievingDate, SpocEmail);
                }
                else
                {
                    model = repoDashboard.GetClientServicingDashBoardInfo(page, pageSize, sort.ToLower(), sortDir.ToLower(), Search, CaseStatus, ClientRowID, RecievingDate, CompletedDate, tatdays, SpocEmail);
                }

                if (model == null)
                {
                    ViewBag.ErrorMsg = "No item found!";
                }
                BindClientListByLogInName(SpocEmail);
            }
            catch (Exception Ex)
            {
                ViewBag.ErrorMsg = Ex.Message;
                clsCommonMethods.ErrorLog(Server.MapPath("~\\ErrorLogs\\Logfiles"), Ex.Message, Ex.StackTrace);
            }
            return(View(model));
        }
Example #2
0
        public DashboardClientCandidateListViewModel GetClientServicingDashBoardTempPQPersonalInfo(int pageNo, int pageSize, string sort, string sortDir, string Search = "", string CaseStatus = "", short ClientRowID = 0, string RecievingDate = "", string SpocEmailID = "")
        {
            try
            {
                if (pageNo < 0)
                {
                    pageNo = 1;
                }

                IQueryable <TempPQPersonal> data = db.TempPQPersonals;

                if (ClientRowID > 0)
                {
                    data = data.Where(a => a.ClientRowID == ClientRowID);
                }
                else
                {
                    var Clients = db.PQClientMasters.Where(s => s.SpocEmailID.Contains(SpocEmailID)).Select(s => s.ClientRowID).ToList();
                    data = data.Where(a => Clients.Contains(a.ClientRowID));
                }

                if (!string.IsNullOrEmpty(Search))
                {
                    data = data.Where(b => (b.Name + " " + b.MiddleName + " " + b.LastName).Replace(" ", String.Empty).Contains(Search.Replace(" ", String.Empty)) || b.CompanyRefNo.ToLower().Trim() == Search.ToLower().Trim());
                }
                if (!string.IsNullOrEmpty(RecievingDate))
                {
                    DateTime startDate = Convert.ToDateTime(RecievingDate);
                    data = data.Where(b => DbFunctions.TruncateTime(b.CreatedDate) == startDate.Date);
                }

                if (CaseStatus == "Pendingwithcandidate")
                {
                    data = data.Where(p => p.OtherDetails != "DEC");
                }
                if (CaseStatus == "PendingwithHR")
                {
                    data = data.Where(p => p.OtherDetails != "DEC" && p.PQClientMaster.HRApprovalRequired == 1);
                }

                switch (sort)
                {
                default:
                    data = sortDir == "asc" ? data.OrderBy(d => d.PersonalRowID) : data.OrderByDescending(d => d.PersonalRowID);
                    break;
                }
                DashboardClientCandidateListViewModel model = new DashboardClientCandidateListViewModel();
                model.PageSize     = pageSize;
                model.TotalRecords = data.Count();
                model.DashboardClientCandidates = data.Skip((pageNo - 1) * pageSize).Take(pageSize).Select(item => new ClientCandidateViewModel
                {
                    PersonalRowID = item.PersonalRowID,
                    ClientRowID   = item.ClientRowID,
                    ClientName    = item.PQClientMaster.MasterAbbreviation.ClientName,
                    CandidateName = item.Name + " " + item.MiddleName + " " + item.LastName,
                    CandidateCode = item.CandidateCode,//copy
                    CompanyRefNo  = item.CompanyRefNo,
                    //OutDate = item.DeliveryDate,
                    CaseStatus  = item.OtherDetails,
                    CreatedDate = item.CreatedDate,
                }).ToList();
                return(model);
            }
            catch (Exception)
            {
                throw;
            }
        }
        public DashboardClientCandidateListViewModel GetClientDashBoardInfo(int pageNo, int pageSize, string sort, string sortDir, string Search = "", string CaseStatus = "", short ClientRowID = 0, string RecievingToDate = "", string RecievingFromDate = "", string CompletedToDate = "", string CompletedFromDate = "", byte tatHours = 0, int ClientUserRowID = 0)
        {
            try
            {
                if (pageNo < 0)
                {
                    pageNo = 1;
                }
                IQueryable <PQPersonal> data = db.PQPersonals.Include("PQClientMaster").Where(p => p.ClientRowID == ClientRowID);

                if (ClientRowID > 0)
                {
                    data = data.Where(b => b.ClientRowID == ClientRowID);
                }

                if (ClientUserRowID > 0)
                {
                    data = data.Where(p => p.ClientUserRowID == ClientUserRowID);
                }

                if (!string.IsNullOrEmpty(CaseStatus))
                {
                    if (CaseStatus == "ReportReceived")
                    {
                        data = data.Where(p => p.RWQCManagerTo > 0 && p.IsReportUploaded && !string.IsNullOrEmpty(p.ReportUploadedName));
                    }
                    if (CaseStatus == "WIP")
                    {
                        data = data.Where(p => p.ClientRowID == ClientRowID);
                    }
                    if (CaseStatus == "Pendingcandidate")
                    {
                        data = data.Where(p => p.CaseStatus == "WIP" || p.CaseStatus == "Allocated");
                    }
                    if (CaseStatus == "CaseApprpending")
                    {
                        data = data.Where(p => p.CaseStatus == "CaseApprpending");
                    }
                    if (CaseStatus == "InsuffWIP")
                    {
                        data = data.Where(p => p.CaseStatus == "Insufficent");
                    }
                    if (CaseStatus == "YTRWIP")
                    {
                        data = data.Where(p => p.CaseStatus == "YTRWIP");
                    }
                    if (CaseStatus == "RejectionWIP")
                    {
                        data = data.Where(p => p.CaseStatus == "Rejected");
                    }
                    if (CaseStatus == "ReOpen")
                    {
                        data = data.Where(p => p.CaseStatus == "ReOpen");
                    }
                    if (CaseStatus == "Priority")
                    {
                        data = data.Where(p => p.CaseType == "Priority");
                    }
                    if (CaseStatus == "YTRHold")
                    {
                        data = data.Where(p => p.CaseStatus == "YTR");
                    }
                    if (CaseStatus == "YTRHold10Days")
                    {
                        data = data.Where(p => p.CaseStatus == "YTR");
                    }
                    if (CaseStatus == "Insufficiency")
                    {
                        data = data.Where(p => p.CaseStatus == "Insufficent");
                    }
                    if (CaseStatus == "InsuffOr5Day")
                    {
                        data = data.Where(p => p.CaseStatus == "Insufficent");
                    }
                    if (CaseStatus == "FundApproval")
                    {
                        data = data.Where(p => p.CaseStatus == "Funds Pending");
                    }
                    if (CaseStatus == "Escalated")
                    {
                        data = data.Where(p => p.CaseStatus == "Escalated");
                    }
                    if (CaseStatus == "Interim")
                    {
                        data = data.Where(p => p.RWQCManagerTo > 0 && p.IsReportUploaded && !string.IsNullOrEmpty(p.ReportUploadedName));
                    }
                    if (CaseStatus == "Final")
                    {
                        data = data.Where(p => p.CaseStatus == "Final");
                    }
                    if (CaseStatus == "OtherthanGreen")
                    {
                        data = data.Where(p => !string.IsNullOrEmpty(p.FinalColor) && p.FinalColor != "Green");
                    }
                }

                if (!string.IsNullOrEmpty(Search))
                {
                    data = data.Where(b => (b.Name + " " + b.MiddleName + " " + b.LastName).ToString().Replace(" ", "").Contains(Search.Replace(" ", "")) || b.ClientRefID == Search || b.CompanyRefNo == Search || b.CaseStatus == Search || b.CandidateCode == Search);
                }

                if (tatHours > 0)
                {
                    data = GetPersonalInfoTLByTATHours(data, tatHours);
                }

                switch (sort)
                {
                default:
                    data = sortDir == "asc" ? data.OrderBy(d => d.PersonalRowID) : data.OrderByDescending(d => d.PersonalRowID);
                    break;
                }

                DashboardClientCandidateListViewModel model = new DashboardClientCandidateListViewModel();
                model.PageSize     = pageSize;
                model.TotalRecords = data.Count();
                model.DashboardClientCandidates = data.Skip((pageNo - 1) * pageSize).Take(pageSize).Select(item => new ClientCandidateViewModel
                {
                    PersonalRowID      = item.PersonalRowID,
                    ClientRowID        = item.ClientRowID,
                    ClientName         = item.PQClientMaster.MasterAbbreviation.ClientName,
                    CandidateName      = item.Name + " " + item.MiddleName + " " + item.LastName,
                    CandidateCode      = item.CandidateCode,//copy
                    CompanyRefNo       = item.CompanyRefNo,
                    OutDate            = item.DeliveryDate,
                    CaseStatus         = item.CaseStatus,
                    CreatedDate        = item.CreatedDate,
                    FinalStatus        = item.FinalStatus,
                    FinalColor         = item.FinalColor,
                    InterimReport      = item.PQClientMaster.InterimReport,
                    IsReportUploaded   = item.IsReportUploaded,
                    ReportUploadedName = item.ReportUploadedName,
                    ReportUploadedDate = item.ReportUploadedDate,
                }).ToList();
                return(model);
            }
            catch (Exception)
            {
                throw;
            }
        }
Example #4
0
        public DashboardClientCandidateListViewModel GetClientServicingDashBoardInfo(int pageNo, int pageSize, string sort, string sortDir, string Search = "", string CaseStatus = "", short ClientRowID = 0, string RecievingDate = "", string CompletedDate = "", byte tatdays = 0, string SpocEmailID = "")
        {
            try
            {
                if (pageNo < 0)
                {
                    pageNo = 1;
                }

                IQueryable <PQPersonal> data = db.PQPersonals.Include("PQClientMaster");

                if (ClientRowID > 0)
                {
                    data = data.Where(b => b.ClientRowID == ClientRowID);
                }
                else
                {
                    var Clients = db.PQClientMasters.Where(s => s.SpocEmailID.Contains(SpocEmailID)).Select(s => s.ClientRowID).ToList();
                    data = data.Where(a => Clients.Contains(a.ClientRowID));
                }

                if (!string.IsNullOrEmpty(Search))
                {
                    data = data.Where(b => (b.Name + " " + b.MiddleName + " " + b.LastName).Replace(" ", String.Empty).Contains(Search.Replace(" ", String.Empty)) || b.CompanyRefNo.ToLower().Trim() == Search.ToLower().Trim());
                }
                if (!string.IsNullOrEmpty(RecievingDate))
                {
                    DateTime startDate = Convert.ToDateTime(RecievingDate);
                    data = data.Where(b => DbFunctions.TruncateTime(b.OrderDate) == startDate.Date);
                }
                if (!string.IsNullOrEmpty(CompletedDate))
                {
                    DateTime startDate = Convert.ToDateTime(CompletedDate);
                    data = data.Where(b => DbFunctions.TruncateTime(b.DeliveryDate) == startDate.Date);
                }

                if (!string.IsNullOrEmpty(CaseStatus))
                {
                    if (CaseStatus == "WIP")
                    {
                        data = data.Where(p => p.CaseStatus == "WIP");
                    }
                    if (CaseStatus == "NonInitiated")
                    {
                        data = data.Where(p => p.AllocatedToDEScan == 0 && p.AllocatedToDE == 0 && p.AllocatedToDEQC == 0);
                    }
                    if (CaseStatus == "YTRHold")
                    {
                        data = data.Where(p => p.CaseStatus == "YTR");
                    }
                    if (CaseStatus == "RejectionWIP")
                    {
                        data = data.Where(p => p.CaseStatus == "Rejected");
                    }
                    if (CaseStatus == "ReOpen")
                    {
                        data = data.Where(p => p.CaseStatus == "ReOpen");
                    }
                    if (CaseStatus == "Priority")
                    {
                        data = data.Where(p => p.CaseType == "Priority");
                    }
                    if (CaseStatus == "Insufficiency" || CaseStatus == "InsuffWIP")
                    {
                        data = data.Where(p => p.CaseStatus == "Insufficent");
                    }
                    if (CaseStatus == "WIPRevenue")
                    {
                        data = data.Where(p => p.CaseStatus == "WIPRevenue");
                    }
                    if (CaseStatus == "WIPYTR")
                    {
                        data = data.Where(p => p.CaseStatus == "WIPYTR");
                    }
                    if (CaseStatus == "FundApproval")
                    {
                        data = data.Where(p => p.CaseStatus == "Funds Pending");
                    }
                    if (CaseStatus == "ApprovalPending")
                    {
                        data = data.Where(p => p.PQClientMaster.HRApprovalRequired == 1);
                    }
                    if (CaseStatus == "WIPDEQC")
                    {
                        data = data.Where(p => p.CaseStatus == "Allocated" && p.AllocatedToDEQC > 0);
                    }
                    if (CaseStatus == "Escalated")
                    {
                        data = data.Where(p => p.CaseStatus == "Escalated");
                    }
                    if (CaseStatus == "Closed")
                    {
                        data = data.Where(p => p.CaseStatus == "Closed");
                    }
                    if (CaseStatus == "OutTAT")
                    {
                        data = data.Where(p => p.CaseStatus == "OutTAT");
                    }
                }

                if (tatdays > 0)
                {
                    data = GetPersonalInfoByTATHours(data, tatdays);
                }
                switch (sort)
                {
                default:
                    data = sortDir == "asc" ? data.OrderBy(d => d.PersonalRowID) : data.OrderByDescending(d => d.PersonalRowID);
                    break;
                }
                DashboardClientCandidateListViewModel model = new DashboardClientCandidateListViewModel();
                model.PageSize     = pageSize;
                model.TotalRecords = data.Count();
                model.DashboardClientCandidates = data.Skip((pageNo - 1) * pageSize).Take(pageSize).Select(item => new ClientCandidateViewModel
                {
                    PersonalRowID = item.PersonalRowID,
                    ClientRowID   = item.ClientRowID,
                    ClientName    = item.PQClientMaster.MasterAbbreviation.ClientName,
                    CandidateName = item.Name + " " + item.MiddleName + " " + item.LastName,
                    CandidateCode = item.CandidateCode,//copy
                    CompanyRefNo  = item.CompanyRefNo,
                    OutDate       = item.DeliveryDate,
                    CaseStatus    = item.CaseStatus,
                    CreatedDate   = item.CreatedDate,
                }).ToList();
                return(model);
            }
            catch (Exception)
            {
                throw;
            }
        }
        public DashboardClientCandidateListViewModel GetClientTempDashBoardInfo(int pageNo, int pageSize, string sort, string sortDir, string Search = "", string CaseStatus = "", short ClientRowID = 0, string RecievingToDate = "", string RecievingFromDate = "", int ClientUserRowID = 0)
        {
            try
            {
                if (pageNo < 0)
                {
                    pageNo = 1;
                }
                IQueryable <TempPQPersonal> data = db.TempPQPersonals.Include("PQClientMaster").Where(p => p.ClientRowID == ClientRowID);

                if (ClientRowID > 0)
                {
                    data = data.Where(b => b.ClientRowID == ClientRowID);
                }

                if (ClientUserRowID > 0)
                {
                    data = data.Where(p => p.ClientUserRowID == ClientUserRowID);
                }

                if (!string.IsNullOrEmpty(CaseStatus))
                {
                    if (CaseStatus == "Pendingcandidate")
                    {
                        data = data.Where(p => p.OtherDetails != "DEC" && p.OtherDetails != "Approved" && p.OtherDetails == "Pending");
                    }
                    if (CaseStatus == "CaseApprpending")
                    {
                        data = data.Where(p => p.PQClientMaster.HRApprovalRequired == 1 && p.OtherDetails == "DEC");
                    }
                }

                if (!string.IsNullOrEmpty(Search))
                {
                    data = data.Where(b => (b.Name + " " + b.MiddleName + " " + b.LastName).ToString().Contains(Search) || b.ClientRefID == Search || b.CompanyRefNo == Search);
                }
                if (!string.IsNullOrEmpty(RecievingToDate) && !string.IsNullOrEmpty(RecievingFromDate))
                {
                    DateTime startDate = Convert.ToDateTime(RecievingFromDate);
                    DateTime EndDate   = Convert.ToDateTime(RecievingToDate);

                    data = data.Where(b => DbFunctions.TruncateTime(b.CreatedDate) >= startDate.Date && DbFunctions.TruncateTime(b.CreatedDate) <= EndDate.Date);
                }

                switch (sort)
                {
                default:
                    data = sortDir == "asc" ? data.OrderBy(d => d.PersonalRowID) : data.OrderByDescending(d => d.PersonalRowID);
                    break;
                }

                DashboardClientCandidateListViewModel model = new DashboardClientCandidateListViewModel();
                model.PageSize     = pageSize;
                model.TotalRecords = data.Count();
                model.DashboardClientCandidates = data.Skip((pageNo - 1) * pageSize).Take(pageSize).Select(item => new ClientCandidateViewModel
                {
                    PersonalRowID = item.PersonalRowID,
                    ClientRowID   = item.ClientRowID,
                    ClientName    = item.PQClientMaster.MasterAbbreviation.ClientName,
                    CandidateName = item.Name + " " + item.MiddleName + " " + item.LastName,
                    CandidateCode = item.CandidateCode,//copy
                    CompanyRefNo  = item.CompanyRefNo,
                    //OutDate = item.DeliveryDate,
                    CaseStatus  = "DataEntry By Candidate",
                    CreatedDate = item.CreatedDate,
                }).ToList();
                return(model);
            }
            catch (Exception)
            {
                throw;
            }
        }