public ActionResult UpdateContactForm(Guid contactId)
        {
            try
            {
                ContactCUViewModel contactCUModel = new ContactCUViewModel();
                Contact            contact        = _contactProcessor.GetContact(contactId);

                contactCUModel = BuildToContactCUViewModel(contact);

                string optionSetName = "preferredcontactmethodcode";
                string entityName    = "contact";
                contactCUModel.contactMethodSelector = _contactProcessor.GetContactMethodSelector(optionSetName, entityName);
                contactCUModel.Accion = "Update";

                return(PartialView("_contactForm", contactCUModel));
            }
            catch (CrmDataException ex)
            {
                _logger.Error(ex);
                throw new CrmDataException(ex);
            }
            catch (Exception ex)
            {
                _logger.Error(ex);
                return(GetPartialViewErrorModel(_messageException));
            }
        }
        public JsonResult UpdateContact(ContactCUViewModel objContactCUViewModel)
        {
            if (objContactCUViewModel.Accion == "Update")
            {
                Contact objContact = new Contact();
                objContact = BuildToContactModel(objContactCUViewModel);

                bool response = _contactProcessor.UpdateContact(objContact);

                return(GetJsonResultGenericModel("Contacto actualizado", response));
            }

            return(GetJsonResultGenericModel("Error en la acción del formulario."));
        }
        public JsonResult CreateContact(ContactCUViewModel objContactCUViewModel)
        {
            if (objContactCUViewModel.Accion == "Create")
            {
                Contact objContact = new Contact();
                objContact = BuildToContactModel(objContactCUViewModel);

                Guid newContactId = _contactProcessor.CreateContact(objContact);

                return(GetJsonResultGenericModel(String.Format("Se ha creado el nuevo contacto con el id {0}.", newContactId), true));
            }

            return(GetJsonResultGenericModel("Error en la acción del formulario."));
        }
 private Contact BuildToContactModel(ContactCUViewModel objContactCUViewModel)
 {
     return(new Contact()
     {
         Id = objContactCUViewModel.Id,
         FirstName = objContactCUViewModel.FirstName,
         LastName = objContactCUViewModel.LastName,
         Puesto = objContactCUViewModel.Puesto,
         CorreoElectronico = objContactCUViewModel.CorreoElectronico,
         TelefonoTrabajo = objContactCUViewModel.TelefonoTrabajo,
         TelefonoMovil = objContactCUViewModel.TelefonoMovil,
         MetodoContacto = objContactCUViewModel.MetodoContacto,
         CuentaPrincipal = new LookUp()
         {
             Id = objContactCUViewModel.CuentaPrincipal.Id,
             Name = objContactCUViewModel.CuentaPrincipal.Name
         }
     });
 }