// GET: Companies public ActionResult Index() { List <Company> companyList = new List <Company>(); using (CompanyContactsContext db = new CompanyContactsContext()) { companyList = db.Companies.ToList(); } return(View(companyList)); }
// GET: Contacts public ActionResult Index() { List <Contact> view = new List <Contact>(); using (CompanyContactsContext db = new CompanyContactsContext()) { view = db.Contacts.ToList(); } return(View(view)); }
public ActionResult Create([Bind(Include = "CompanyName,CompanyRef")] Company id) { if (ModelState.IsValid) { using (CompanyContactsContext db = new CompanyContactsContext()) { db.Companies.Add(id); db.SaveChanges(); } return(RedirectToAction("Index")); } return(View(id)); }
public ActionResult Create([Bind(Include = "CompanyName,ContactId,Title,Name,Surname,Email,Phone,Mobile,Position,ParentContactId,Notes")] Contact contact) { contact.Companies = GetCompanies(); contact.ContactNames = GetContacts(); using (CompanyContactsContext db = new CompanyContactsContext()) { if (ModelState.IsValid) { db.Contacts.Add(contact); db.SaveChanges(); return(RedirectToAction("Index")); } } return(View(contact)); }
// GET: Companies/Delete/{name} public ActionResult Delete(string id) { if (string.IsNullOrEmpty(id)) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } using (CompanyContactsContext db = new CompanyContactsContext()) { Company company = db.Companies.Find(id); if (company != null) { return(View(company)); } } return(HttpNotFound()); }
public ActionResult Edit([Bind(Include = "CompanyName,CompanyId,ContactId,Title,Name,Surname,Email,Phone,Mobile,Position,ParentContactId,Notes")] Contact contact) { contact.Companies = GetCompanies(); contact.ContactNames = GetContacts(); if (ModelState.IsValid) { using (CompanyContactsContext db = new CompanyContactsContext()) { db.Entry(contact).State = EntityState.Modified; db.SaveChanges(); } return(RedirectToAction("Index")); } return(View(contact)); }
// GET: Contacts/_Details/{companyName} public ActionResult _Details(string id) { List <Contact> view = new List <Contact>(); using (CompanyContactsContext db = new CompanyContactsContext()) { foreach (Contact thisContact in db.Contacts) { if (thisContact.CompanyName.Equals(id)) { view.Add(thisContact); } } } return(View(view)); }
// GET: Contacts/Delete/5 public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } using (CompanyContactsContext db = new CompanyContactsContext()) { Contact contact = db.Contacts.Find(id); if (contact != null) { return(View(contact)); } } return(HttpNotFound()); }
private IEnumerable <SelectListItem> GetCompanies() { var selectList = new List <SelectListItem>(); using (CompanyContactsContext db = new CompanyContactsContext()) { foreach (var company in db.Companies.ToList()) { selectList.Add(new SelectListItem { Value = company.CompanyName, Text = company.CompanyName }); } } return(selectList); }
// GET: Companies/Edit/{name} public ActionResult Edit(string id) { if (string.IsNullOrEmpty(id)) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } using (CompanyContactsContext db = new CompanyContactsContext()) { Company company = db.Companies.Find(id); if (company != null) { int? keyContactId = null; int? emergencyContactId = null; bool onSite = false; foreach (Contact contact in db.Contacts) { if (contact.CompanyName.Equals(company.CompanyName)) { if (contact.KeyContact) { keyContactId = contact.ContactId; onSite = contact.OnSite; } if (contact.EmergencyContact) { emergencyContactId = contact.ContactId; } } } var viewModel = new CompanyContactDetailsViewModel { CompanyName = company.CompanyName, CompanyRef = company.CompanyRef, NatureOfBusiness = company.NatureOfBusiness, ContactNames = GetContacts(), KeyContact = keyContactId, OnSite = onSite, EmergencyContact = emergencyContactId }; return(View(viewModel)); } } return(HttpNotFound()); }
public ActionResult Edit([Bind(Include = "CompanyName,CompanyRef,NatureOfBusiness,KeyContact,OnSite,EmergencyContact")] CompanyContactDetailsViewModel companyView) { Company company = new Company(); company.CompanyName = companyView.CompanyName; company.CompanyRef = companyView.CompanyRef; company.NatureOfBusiness = companyView.NatureOfBusiness; companyView.ContactNames = GetContacts(); if (ModelState.IsValid) { using (CompanyContactsContext db = new CompanyContactsContext()) { // We may have just made a contact the key or emergency contact. If so, ensure that only one // person is the specified contact for this company. foreach (Contact contact in db.Contacts) { if (contact.CompanyName.Equals(company.CompanyName)) { contact.KeyContact = false; contact.OnSite = false; if (contact.ContactId == companyView.KeyContact) { contact.KeyContact = true; contact.OnSite = companyView.OnSite; } contact.EmergencyContact = false; if (contact.ContactId == companyView.EmergencyContact) { contact.EmergencyContact = true; } db.Entry(contact).State = EntityState.Modified; } } db.Entry(company).State = EntityState.Modified; db.SaveChanges(); } return(RedirectToAction("Index")); } return(View(companyView)); }
public ActionResult DeleteConfirmed(string id) { using (CompanyContactsContext db = new CompanyContactsContext()) { foreach (Contact staff in db.Contacts) { if (staff.CompanyName.Equals(id)) { db.Contacts.Remove(staff); } } db.SaveChanges(); Company company = db.Companies.Find(id); db.Companies.Remove(company); db.SaveChanges(); } return(RedirectToAction("Index")); }
private IEnumerable <SelectListItem> GetContacts() { var selectList = new List <SelectListItem>(); using (CompanyContactsContext db = new CompanyContactsContext()) { selectList.Add(new SelectListItem { Value = "", Text = "Optional - contact" }); foreach (var contact in db.Contacts.ToList()) { selectList.Add(new SelectListItem { Value = contact.ContactId.ToString(), Text = contact.Name }); } } return(selectList); }
public ActionResult DeleteConfirmed(int id) { using (CompanyContactsContext db = new CompanyContactsContext()) { // Need to null out any references to this contact as being a manger. Note that we do *not* want to implement a cascade delete ! foreach (Contact staff in db.Contacts) { if (staff.ParentContactId == id) { staff.ParentContactId = null; db.Entry(staff).State = EntityState.Modified; } } db.SaveChanges(); Contact contact = db.Contacts.Find(id); db.Contacts.Remove(contact); db.SaveChanges(); } return(RedirectToAction("Index")); }