public VisitorDataVM GetVisitorsDetail(string globalSearch) { VisitorDataVM _visitorDataVM = new VisitorDataVM();; var lstVisitors = _genericService.VisitorMaster.GetAll().Where(x => x.ContactNo == globalSearch) .Select(item => new VisitorDataVM { VisitorId = item.Id, VisitorName = item.VisitorName, Gender = item.GenderMaster.LookUpValue, DOB = (item.DOB ?? DateTime.MinValue).ToShortDateString(), MobileNo = item.ContactNo, EmailId = item.EmailId, IdentificationNo = item.IdNo, Nationality = item.CountryMaster.LookUpValue }).AsQueryable(); if (lstVisitors.Count() > 0) { _visitorDataVM = lstVisitors.FirstOrDefault(); } return(_visitorDataVM); }
public VisitorDataVM GetVisitorCheckInHistory(long visitorId, string userId) { var result = new VisitorDataVM(); var visitorData = _genericService.VisitorMaster.GetAll().Where(item => item.Id == visitorId).FirstOrDefault(); if (visitorData != null) { var query = _genericService.VisitDetails.GetAll().Where(x => x.VisitorId == visitorId).OrderByDescending(item => item.CheckIn); List <VisitorCheckInCheckOutHistoryVM> lstVisitorCheckInAndOuttimes = new List <VisitorCheckInCheckOutHistoryVM>(); if (query.Count() > 0) { query.ToList().ForEach(item => { lstVisitorCheckInAndOuttimes.Add(new VisitorCheckInCheckOutHistoryVM { CheckInDate = item.CheckIn.Date.ToShortDateString(), CheckInTime = item.CheckIn.ToLocalTime().ToString("hh:mm tt"), CheckOutTime = (item.CheckOut == null ? string.Empty : item.CheckOut.Value.ToString("hh:mm tt")), TotalDuration = (item.CheckOut == null ? "N/A" : Utility.TimeSince(item.CheckOut.Value.Subtract(item.CheckIn))), CompanyName = item.CompanyName, ContactPerson = item.ContactPerson, NoOfPerson = item.NoOfPerson.ToString(), Purpose = item.PurposeOfVisit, VahicleNumber = item.VahicleNumber, Floor = item.Floor }); }); if (lstVisitorCheckInAndOuttimes.Count > 0) { var latestCheck = lstVisitorCheckInAndOuttimes.FirstOrDefault(); if (string.IsNullOrEmpty(latestCheck.CheckOutTime)) { result.IsAlreadyCheckIn = true; } else { result.IsAlreadyCheckIn = false; } } } var shiftAssignedOrNot = _genericService.ShitfAssignment.GetAll().Where(item => item.UserId == userId && item.IsActive).FirstOrDefault(); if (shiftAssignedOrNot != null) { result.IsShiftAssignedToSecurity = true; } var gateCount = _genericService.GateMaster.GetAll().Count(); result.IsAnyGateExist = (gateCount > 0 ? true : false); result.VisitorHiostory = lstVisitorCheckInAndOuttimes.ToList(); result.DOB = (visitorData.DOB ?? DateTime.MinValue).ToShortDateString(); result.EmailId = visitorData.EmailId; result.Gender = visitorData.GenderMaster.LookUpValue; result.TypeOfCard = visitorData.TypeOfCard.LookUpValue; result.IdentificationNo = visitorData.IdNo; result.MobileNo = visitorData.ContactNo; result.Nationality = visitorData.CountryMaster.LookUpValue; result.VisitorId = visitorData.Id; result.VisitorName = visitorData.VisitorName; result.CompanyName = visitorData.CompanyName; } return(result); }