public JsonResult UpdateAccount(AccountCUViewModel accountCUViewModel)
 {
     if (accountCUViewModel.Accion == "Update")
     {
         Account account  = BuildToAccount(accountCUViewModel);
         bool    response = _accountProcessor.UpdateAccount(account);
         return(GetJsonResultGenericModel("Cuenta actualizada", response));
     }
     return(GetJsonResultGenericModel("Error en la acción del formulario."));
 }
        public JsonResult CreateAccount(AccountCUViewModel accountCUViewModel)
        {
            if (accountCUViewModel.Accion == "Create")
            {
                Account account      = BuildToAccount(accountCUViewModel);
                Guid    newAccountId = _accountProcessor.CreateAccount(account);

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

            return(GetJsonResultGenericModel("Error en la acción del formulario."));
        }
 public PartialViewResult NewAccountForm()
 {
     try
     {
         AccountCUViewModel accountCUViewModel = new AccountCUViewModel();
         accountCUViewModel.Accion = "Create";
         return(PartialView("_accountForm", accountCUViewModel));
     }
     catch (CrmDataException ex)
     {
         _logger.Error(ex);
         throw new CrmDataException(ex);
     }
     catch (Exception ex)
     {
         _logger.Error(ex);
         return(GetPartialViewErrorModel(_messageException));
     }
 }
        public PartialViewResult EditAccountForm(Guid accountId)
        {
            try
            {
                AccountCUViewModel accountCUViewModel = new AccountCUViewModel();
                Account            account            = _accountProcessor.GetAccount(accountId);
                accountCUViewModel        = BuildToAccountCUViewModel(account);
                accountCUViewModel.Accion = "Update";

                return(PartialView("_accountForm", accountCUViewModel));
            }
            catch (CrmDataException ex)
            {
                _logger.Error(ex);
                throw new CrmDataException(ex);
            }
            catch (Exception ex)
            {
                _logger.Error(ex);
                return(GetPartialViewErrorModel(_messageException));
            }
        }
 private Account BuildToAccount(AccountCUViewModel accountCUViewModel)
 {
     return(new Account()
     {
         Id = accountCUViewModel.Id,
         AccountName = accountCUViewModel.AccountName,
         NumeroCuenta = accountCUViewModel.NumeroCuenta,
         CorreoElectronico = accountCUViewModel.CorreoElectronico,
         Telefono = accountCUViewModel.Telefono,
         Fax = accountCUViewModel.Fax,
         SitioWeb = accountCUViewModel.SitioWeb,
         CuentaPrimaria = new LookUp()
         {
             Id = accountCUViewModel.CuentaPrimaria.Id,
             Name = accountCUViewModel.CuentaPrimaria.Name
         },
         ContactoPrincipal = new LookUp()
         {
             Id = accountCUViewModel.ContactoPrincipal.Id,
             Name = accountCUViewModel.ContactoPrincipal.Name
         }
     });
 }