public SystemValidationModel Save(ClientesAddViewModel viewModel)
        {
            var cliente = new Cliente();

            if (!string.IsNullOrEmpty(viewModel.RazonSocial))
            {
                cliente = GetByRazonSocial(viewModel.RazonSocial);
                if (cliente != null)
                {
                    return new SystemValidationModel()
                           {
                               Success = false, Message = "Ya existe un cliente registrado con el mismo razon social"
                           }
                }
                ;
            }

            cliente = GetByRuc(viewModel.Ruc);
            if (cliente != null)
            {
                return new SystemValidationModel()
                       {
                           Success = false, Message = "Ya existe un cliente registrado con el mismo RUC"
                       }
            }
            ;

            cliente = Mapper.Map <Cliente>(viewModel);
            _context.Entry(cliente).State = EntityState.Added;
            foreach (var direccion in cliente.Direcciones)
            {
                _context.Entry(direccion).State = EntityState.Added;
            }

            var success    = _context.SaveChanges() > 0;
            var validation = new SystemValidationModel()
            {
                Id      = cliente.Id,
                Message = success ? "Se ha guardado correctamente el cliente" : "No se pudo guardar el cliente",
                Success = success
            };

            return(validation);
        }
Exemple #2
0
        public IActionResult Add()
        {
            var viewModel = new ClientesAddViewModel();

            return(View(viewModel));
        }