public VisitViewModel EditGet(int id) { VisitViewModel visitViewModel = new VisitViewModel(); visitViewModel.visitDetails = context.VisitDetail.FirstOrDefault(x => x.VisitDetailId == id); visitViewModel.visit = context.Visitor.Find(visitViewModel.visitDetails.VisitorId); visitViewModel.PrimaryParticipant = context.VisitParticipant.Where(x => x.VisitDetailId == visitViewModel.visitDetails.VisitDetailId).FirstOrDefault().ParticipantId; var secondaryParticipant = context.VisitParticipant.Where(x => x.VisitDetailId == visitViewModel.visitDetails.VisitDetailId && x.IsPrimary == false).ToList(); List <int> secondaryParticipantIds = new List <int>(); foreach (var item in secondaryParticipant) { secondaryParticipantIds.Add(item.ParticipantId); } visitViewModel.SecondaryParticipant = secondaryParticipantIds; VisitDetail visitDetail = new VisitDetail(); var SaveArrangments = context.VisitArrangement.Where(r => r.VisitDetailId == visitViewModel.visitDetails.VisitDetailId).ToList(); var result = context.Arrangement.ToList(); Common <Arrangement, ArrangementViewModel> common = new Common <Arrangement, ArrangementViewModel>(); var resultViewModel = common.List_Source_Target(result); VisitArrangement visitArrangement = new VisitArrangement(); visitArrangement.VisitDetailId = visitDetail.VisitDetailId; visitViewModel.VisitArrangement = resultViewModel; foreach (ArrangementViewModel arrangement in visitViewModel.VisitArrangement) { var _visitarrangment = SaveArrangments.Where(r => r.ArrangementId == arrangement.ArrangementId).FirstOrDefault(); if (_visitarrangment != null) { arrangement.IsSelected = true; arrangement.ArrangementId = _visitarrangment.ArrangementId; arrangement.DelegateContactID = _visitarrangment.DelegateContactId; arrangement.Description = _visitarrangment.Description; } } var participants = context.VisitParticipant.ToList(); Common <VisitParticipant, ParticipantViewModel> commonParticipants = new Common <VisitParticipant, ParticipantViewModel>(); var participantViewModel = commonParticipants.List_Source_Target(participants); VisitParticipant visitParticipant = new VisitParticipant(); visitParticipant.VisitDetailId = visitDetail.VisitDetailId; var user = context.User.ToList(); Common <User, UserViewModel> commonUser = new Common <User, UserViewModel>(); visitViewModel.Users = commonUser.List_Source_Target(user); return(visitViewModel); }
public VisitViewModel UpdateVisitor(VisitViewModel updatedModel) { try { var visitor = context.Visitor.Where(c => c.VisitorId == updatedModel.visit.VisitorId).FirstOrDefault(); visitor.VisitorId = updatedModel.visit.VisitorId; visitor.VisitorName = updatedModel.VisitorName; visitor.Company = updatedModel.Company; visitor.Designation = updatedModel.Designation; visitor.EmailAddress = updatedModel.EmailAddress; visitor.Phone = updatedModel.Phone; //visitor.PhotoUrl = updatedModel.PhotoUrl.TrimStart().TrimEnd(); context.Visitor.Update(visitor); context.SaveChanges(); var visitorDetails = context.VisitDetail.Where(c => c.VisitDetailId == updatedModel.visitDetails.VisitDetailId).FirstOrDefault(); visitorDetails.VisitorId = visitor.VisitorId; DateTime visitDate = updatedModel.VisitingDate; DateTime startTime = updatedModel.StartTime; DateTime endTime = updatedModel.EndTime; visitorDetails.StartTime = visitDate.Date.Add(startTime.TimeOfDay); visitorDetails.EndTime = visitDate.Date.Add(endTime.TimeOfDay); context.VisitDetail.Update(visitorDetails); context.SaveChanges(); VisitParticipant participant = new VisitParticipant(); var visitoPrimaryParticipants = context.VisitParticipant.Where(c => c.VisitDetailId == visitorDetails.VisitDetailId && c.IsPrimary == true).FirstOrDefault(); if (visitoPrimaryParticipants == null) { visitoPrimaryParticipants = new VisitParticipant(); visitoPrimaryParticipants.VisitDetailId = visitorDetails.VisitDetailId; visitoPrimaryParticipants.ParticipantId = updatedModel.PrimaryParticipant; visitoPrimaryParticipants.IsPrimary = true; context.VisitParticipant.Add(visitoPrimaryParticipants); context.SaveChanges(); } else { visitoPrimaryParticipants.VisitDetailId = visitorDetails.VisitDetailId; visitoPrimaryParticipants.ParticipantId = updatedModel.PrimaryParticipant; visitoPrimaryParticipants.IsPrimary = true; context.VisitParticipant.Update(visitoPrimaryParticipants); context.SaveChanges(); } var visitorSecondaryParticipants = context.VisitParticipant.Where(c => c.VisitDetailId == visitorDetails.VisitDetailId && c.IsPrimary == false).ToList(); if (visitorSecondaryParticipants != null) { foreach (var item in visitorSecondaryParticipants) { context.VisitParticipant.Remove(item); } } if (updatedModel.SecondaryParticipant != null) { foreach (var item in updatedModel.SecondaryParticipant) { participant = new VisitParticipant(); participant.VisitDetailId = visitorDetails.VisitDetailId; participant.ParticipantId = item; participant.IsPrimary = false; context.VisitParticipant.Add(participant); } context.SaveChanges(); } var existingarrangments = context.VisitArrangement.Where(m => m.VisitDetailId == visitorDetails.VisitDetailId).ToList(); foreach (var item in existingarrangments) { context.VisitArrangement.Remove(item); } context.SaveChanges(); foreach (var item in updatedModel.VisitArrangement.Where(r => r.IsSelected == true)) { VisitViewModel visitViewModel = new VisitViewModel(); VisitArrangement visitArrangement = new VisitArrangement(); visitArrangement.ArrangementId = item.ArrangementId; visitArrangement.VisitDetailId = visitorDetails.VisitDetailId; visitArrangement.DelegateContactId = item.DelegateContactID; visitArrangement.Description = item.Description; context.VisitArrangement.Add(visitArrangement); } context.SaveChanges(); return(updatedModel); } catch (Exception ex) { throw ex; } }
public VisitViewModel AddVisitor(VisitViewModel vmodel) { context = new VisitorManagementContext(); try { Visitor visitor = new Visitor(); var existingvisitor = context.Visitor.Where(r => r.VisitorName.ToUpper() == vmodel.VisitorName.ToUpper() && r.Designation.ToUpper() == vmodel.Designation.ToUpper() && r.Company.ToUpper() == vmodel.Company.ToUpper() && r.EmailAddress.ToUpper() == vmodel.EmailAddress.ToUpper() && r.Phone.ToUpper() == vmodel.Phone.ToUpper()); if (existingvisitor.Count() > 0) { visitor.VisitorId = existingvisitor.LastOrDefault().VisitorId; } else { visitor.VisitorName = vmodel.VisitorName; visitor.Designation = vmodel.Designation; visitor.Company = vmodel.Company; visitor.EmailAddress = vmodel.EmailAddress; visitor.Phone = vmodel.Phone; visitor.CreatedBy = vmodel.CreatedBy; context.Visitor.Add(visitor); context.SaveChanges(); } VisitDetail visitDetail = new VisitDetail(); visitDetail.VisitorId = visitor.VisitorId; DateTime visitDate = vmodel.VisitingDate; DateTime startTime = vmodel.StartTime; DateTime endTime = vmodel.EndTime; visitDetail.StartTime = visitDate.Date.Add(startTime.TimeOfDay); visitDetail.EndTime = visitDate.Date.Add(endTime.TimeOfDay); visitDetail.CreatedBy = vmodel.CreatedBy; context.VisitDetail.Add(visitDetail); context.SaveChanges(); VisitParticipant participant = new VisitParticipant(); participant.VisitDetailId = visitDetail.VisitDetailId; participant.ParticipantId = vmodel.PrimaryParticipant; participant.IsPrimary = true; context.VisitParticipant.Add(participant); context.SaveChanges(); if (vmodel.SecondaryParticipant != null) { foreach (var item in vmodel.SecondaryParticipant) { participant = new VisitParticipant(); participant.VisitDetailId = visitDetail.VisitDetailId; participant.ParticipantId = item; participant.IsPrimary = false; context.VisitParticipant.Add(participant); } context.SaveChanges(); } // foreach (var item in vmodel.VisitArrangement.Where(r => r.IsSelected == true)) { VisitArrangement visitArrangement = new VisitArrangement(); visitArrangement.ArrangementId = item.ArrangementId; visitArrangement.VisitDetailId = visitDetail.VisitDetailId; visitArrangement.DelegateContactId = item.DelegateContactID; visitArrangement.Description = item.Description; context.VisitArrangement.Add(visitArrangement); } context.SaveChanges(); return(vmodel); } catch (Exception ex) { throw ex; } }