/// <summary> /// Retrieve one contact based on its Id /// </summary> /// <param name="id"></param> /// <returns></returns> public SubdistributorContact ContactRetrieve(int id = -1) { ResultManager.IsCorrect = false; //initial validations //-sys validations if (id == -1 || id == 0) {//no conatact id was received ResultManager.Add(ErrorDefault, Trace + "ContactRetrieve.131 No se recibio el id del contacto"); return(null); } SubdistributorContact auxContact = null; try { auxContact = Repository.SubdistributorContacts.Get(id); if (auxContact == null) { ResultManager.Add(ErrorDefault, Trace + "ContactRetrieve.511 No se encontró un contacto con id '" + id + "'"); } else { ResultManager.IsCorrect = true; } } catch (Exception ex) { ResultManager.Add(ErrorDefault, Trace + "ContactRetrieve.511 Excepción al obtener el contacto a editar: " + ex.Message); } return(auxContact); }
public ActionResult ContactEdit(SubdistributorContact model) { if (controller.ContactUpdate(model) || controller.ResultManager.IsCorrect) { NotifyUser(messageOk: "Contacto editado correctamente"); return(RedirectToAction("ContactIndex", new { id = model.SubdistributorId })); } NotifyUser(resultManager: controller.ResultManager); return(View(model)); }
public ActionResult ContactAdd(SubdistributorContact item) { if (controller.ContactAdd(item) || controller.ResultManager.IsCorrect) { NotifyUser(messageOk: "Contacto agregado correctamente"); return(RedirectToAction("ContactIndex", new { id = item.SubdistributorId })); } ViewBag.SubdistributorId = item.SubdistributorId; NotifyUser(resultManager: controller.ResultManager); return(View(item)); }
public ActionResult ContactEdit(int Id) { SubdistributorContact contactToEdit = controller.ContactRetrieve(Id); int subdistributorId = contactToEdit.SubdistributorId; if (controller.ResultManager.IsCorrect) { return(View(contactToEdit)); } NotifyUser(resultManager: controller.ResultManager); return(RedirectToAction("ContactIndex", new { id = subdistributorId })); }
public ActionResult ContactDelete(int Id) { SubdistributorContact contactToDelete = controller.ContactRetrieve(Id); int subdistributorId = contactToDelete.SubdistributorId; if (controller.ContactDelete(Id) || controller.ResultManager.IsCorrect) { NotifyUser(messageOk: "Contacto eliminado correctamente"); return(RedirectToAction("ContactIndex", new { id = subdistributorId })); } NotifyUser(resultManager: controller.ResultManager); return(RedirectToAction("ContactIndex", new { id = subdistributorId })); }
public bool ContactUpdate(SubdistributorContact item) { ResultManager.IsCorrect = false; //initial validations //-sys validations if (item == null) { ResultManager.Add(ErrorDefault, Trace + "ContactUpdate.111 No se recibio el objeto del contacto a editar"); return(false); } if (item.Id == -1 || item.Id == 0) {//no contact id was received ResultManager.Add(ErrorDefault, Trace + "ContactUpdate.131 No se recibio el id del contacto a editar"); return(false); } //-business validations if (string.IsNullOrWhiteSpace(item.FullName)) { ResultManager.Add("El nombre del contacto no puede estar vacio"); return(false); } if (string.IsNullOrWhiteSpace(item.Role)) { ResultManager.Add("El puesto no puede estar vacio"); return(false); } if (IsMailAddressCurrentlyUsed(item.EMail)) { ResultManager.Add(ErrorDefault, Trace + "La direccion de email '" + item.EMail + "' actualmente esta asignada a otro usuario, por favor ingresa una diferente."); return(false); } if (IsMailAddressCurrentlyUsed(item.AssistantEMail)) { ResultManager.Add(ErrorDefault, Trace + "La direccion de email de asistente '" + item.AssistantEMail + "' actualmente esta asignada a otro usuario, por favor ingresa una diferente."); return(false); } //update item try { SubdistributorContact auxContact = Repository.SubdistributorContacts.Get(item.Id); if (auxContact == null) { ResultManager.Add(ErrorDefault, Trace + "ContactUpdate.311 Contacto con id '" + item.Id + "' no encontrado en bd"); return(false); } //auxContact.SubdistributorId = item.SubdistributorId; //auxContact.Subdistributor = Repository.Subdistributors.Get(item.SubdistributorId); auxContact.FullName = item.FullName; auxContact.Role = item.Role; auxContact.PhoneNumber = item.PhoneNumber; auxContact.PhoneNumberExt = item.PhoneNumberExt; auxContact.CellPhone = item.CellPhone; auxContact.EMail = item.EMail; auxContact.AssistantFullName = item.AssistantFullName; auxContact.AssistantPhoneNumber = item.AssistantPhoneNumber; auxContact.AssistantPhoneNumberExt = item.AssistantPhoneNumberExt; auxContact.AssistantCellPhone = item.AssistantCellPhone; auxContact.AssistantEMail = item.AssistantEMail; auxContact.Cat_SubdistributorContactAreaId = item.Cat_SubdistributorContactAreaId; auxContact.SubdistributorContactArea = Repository.SubdistributorContactAreas.Get(item.Cat_SubdistributorContactAreaId.HasValue ? item.Cat_SubdistributorContactAreaId.Value : 0); Repository.Complete(); ResultManager.IsCorrect = true; return(true); } catch (Exception ex) { ResultManager.Add(ErrorDefault, Trace + "ContactUpdate.511 Excepción al editar el contacto con id '" + item.Id + "': " + ex.Message); } return(false); }