public AuditsViewModel getAuditViewModel(ApplicationDbContext db) { IEnumerable <AuditViewModel> audits = db.Audit .AsEnumerable() .GroupBy(x => new { x.PK, x.UpdateDate }) .Select(g => new AuditViewModel { AuditId = g.First().AuditId, Type = g.First().Type, TableName = g.First().TableName, UpdateBy = g.First().UpdateBy, UpdateDate = g.First().UpdateDate, KeyName = Regex.Match(g.First().PK, @"<\[(.+?)\]=(.+?)>").Groups[1].Value, KeyValue = Regex.Match(g.First().PK, @"<\[(.+?)\]=(.+?)>").Groups[2].Value, Json = g.Select(i => JsonConvert.SerializeObject(i)), }) .OrderByDescending(x => x.UpdateDate); AuditsViewModel vm = new AuditsViewModel { Audits = audits, }; return(vm); }
// GET: Audits/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Audits audits = db.Audits.Find(id); if (audits == null) { return(HttpNotFound()); } else { var auditsViewModel = new AuditsViewModel() { Auditor = audits.Auditor, Project = audits.Project, BaselineId = audits.BaselineId, BaselinePlan = audits.BaselinePlan, Comments = audits.Comments, Id = audits.Id, PerformedDate = audits.PerformedDate, ProjectId = audits.ProjectId, ReportNumber = audits.ReportNumber, ScheduledDate = audits.ScheduledDate }; var projects = db.ProjectUser.Where(pu => pu.UserName.Trim() == User.Identity.Name).Select(pu => pu.Project); ViewBag.ProjectsList = new SelectList(projects, "Id", "Name"); ViewBag.BaselineList = new SelectList(db.BaselinePlan.Where(b => b.ProjectId == audits.ProjectId), "Id", "Name"); return(View(auditsViewModel)); } }
public ActionResult Create([Bind(Include = "Id,ProjectId,ReportNumber,ScheduledDate,PerformedDate,Auditor,Comments,BaselineId")] AuditsViewModel auditViewModel) { if (ModelState.IsValid) { var audit = new Audits() { Auditor = auditViewModel.Auditor, BaselineId = auditViewModel.BaselineId, Project = auditViewModel.Project, PerformedDate = auditViewModel.PerformedDate, Comments = auditViewModel.Comments, BaselinePlan = auditViewModel.BaselinePlan, ProjectId = auditViewModel.ProjectId, ReportNumber = auditViewModel.ReportNumber, ScheduledDate = auditViewModel.ScheduledDate }; db.Audits.Add(audit); db.SaveChanges(); return(RedirectToAction("Index")); } var projects = db.ProjectUser.Where(pu => pu.UserName.Trim() == User.Identity.Name).Select(pu => pu.Project); ViewBag.BaselineId = new SelectList(db.BaselinePlan.Where(b => b.ProjectId == auditViewModel.ProjectId), "Id", "Name"); ViewBag.ProjectId = new SelectList(projects, "Id", "Name", auditViewModel.ProjectId); return(View(auditViewModel)); }
private void AuditSpace_PreviewMouseDown(object sender, MouseButtonEventArgs e) { AuditLabel.Foreground = new SolidColorBrush(Colors.White); AuditSpace.Fill = new SolidColorBrush(Color.FromRgb(22, 191, 131)); DataContext = new AuditsViewModel(); ChangeAllSelections("audits"); }
public async Task <IActionResult> Edit(string actionType, ContactViewModel vm) { // TODO: Zakomponovat takto // if (!ModelState.IsValid) // { // ConfigureViewModel(vm); // return View(vm); // } // // Get your data model and update its properties based on the view model // Booking booking = db.Bookings.Find(id); // booking.PracticeId = bookingViewModel.PracticeId; // booking.OpticianId = bookingViewModel.OpticianId; // .... // etc // db.Entry(booking).State = EntityState.Modified; // db.SaveChanges(); AuditsViewModel auditsViewModel = new AuditsViewModel(); List <AuditViewModel> audits = new List <AuditViewModel>(); if (ModelState.IsValid) { ContactViewModel oldVm = new ContactViewModel(); oldVm.Contact = await _db.Contact.AsNoTracking().FirstOrDefaultAsync(x => x.ContactId == vm.Contact.ContactId); if (oldVm.Contact.PersonName == vm.Contact.PersonName && oldVm.Contact.PersonLastName == vm.Contact.PersonLastName && oldVm.Contact.PersonTitle == vm.Contact.PersonTitle && oldVm.Contact.CompanyId == vm.Contact.CompanyId && oldVm.Contact.Department == vm.Contact.Department && oldVm.Contact.Phone == vm.Contact.Phone && oldVm.Contact.Email == vm.Contact.Email && oldVm.Contact.Active == vm.Contact.Active && oldVm.Contact.Notes == vm.Contact.Notes) { TempData["Info"] = "Nebyla provedena změna, není co uložit"; // Populate VM vm.CompanyList = _db.Company.Select(x => new SelectListItem { Value = x.CompanyId.ToString(), Text = x.Name }).ToList(); vm.Audits = getAuditViewModel(_db).Audits .Where(x => x.TableName == "Contact" && x.KeyValue == vm.Contact.CompanyId.ToString()) .ToList(); return(View(vm)); } vm.Contact.Phone = vm.Contact.Phone?.Replace(" ", ""); vm.Contact.ModifiedBy = User.GetLoggedInUserName(); vm.Contact.ModifiedDate = DateTime.Now; _db.Update(vm.Contact); await _db.SaveChangesAsync(User.GetLoggedInUserName()); TempData["Success"] = "Editace uložena"; if (actionType == "Uložit") { // Populate VM vm.CompanyList = _db.Company.Select(x => new SelectListItem { Value = x.CompanyId.ToString(), Text = x.Name }).ToList(); vm.Audits = getAuditViewModel(_db).Audits .Where(x => x.TableName == "Contact" && x.KeyValue == vm.Contact.ContactId.ToString()) .ToList(); return(View(vm)); } else { return(RedirectToAction(nameof(Index))); } } // Populate VM vm.CompanyList = _db.Company.Select(x => new SelectListItem { Value = x.CompanyId.ToString(), Text = x.Name }).ToList(); vm.Audits = getAuditViewModel(_db).Audits .Where(x => x.TableName == "Contact" && x.KeyValue == vm.Contact.ContactId.ToString()) .ToList(); return(View(vm)); }
public ActionResult Index() { AuditsViewModel vm = getAuditViewModel(_db); return(View(vm)); }