Ejemplo n.º 1
0
        private void tsbNuevo_Click(object sender, EventArgs e)
        {
            FrmPropiedadAE frm = DI.Create <FrmPropiedadAE>();

            frm.Text = "Agregar Propiedad";
            DialogResult dr = frm.ShowDialog(this);

            if (dr == DialogResult.OK)
            {
                try
                {
                    PropiedadEditDto propiedadEditDto = frm.GetPropiedad();
                    if (_servicio.Existe(propiedadEditDto))
                    {
                        MessageBox.Show("Registro repetido", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        return;
                    }
                    _servicio.Guardar(propiedadEditDto);
                    DataGridViewRow r = ConstruirFila();
                    var             propiedadListDto = _mapper.Map <PropiedadListDto>(propiedadEditDto);

                    propiedadListDto.Provincia = (_servicioProvincia
                                                  .GetProvinciaPorId(propiedadEditDto.ProvinciaId))
                                                 .NombreProvincia;

                    propiedadListDto.Localidad = (_servicioLocalidad
                                                  .GetLocalidadPorId(propiedadEditDto.LocalidadId))
                                                 .NombreLocalidad;

                    propiedadListDto.TipoPropiedad = (_servicioTipoPropiedad
                                                      .GetTipoPropiedadPorId(propiedadEditDto.TipoPropiedadId))
                                                     .DescripcionTP;


                    propiedadListDto.TipoOperacion = (_servicioTipoOperacion
                                                      .GetTipoOperacionPorId(propiedadEditDto.TipoOperacionId))
                                                     .DescripcionTO;

                    propiedadListDto.Cliente = (_servicioCliente
                                                .GetClientePorId(propiedadEditDto.ClienteId))
                                               .Apellido;


                    SetearFila(r, propiedadListDto);
                    AgregarFila(r);
                    MessageBox.Show(" Registro agregado :) ", "Mensaje", MessageBoxButtons.OK,
                                    MessageBoxIcon.Information);
                }
                catch (Exception exception)
                {
                    MessageBox.Show(exception.Message, "Error", MessageBoxButtons.OK,
                                    MessageBoxIcon.Error);
                }
            }
        }
        public ActionResult Create(PropiedadEditViewModel propiedadEditVm)
        {
            if (!ModelState.IsValid)
            {
                propiedadEditVm.Cliente = _mapper
                                          .Map <List <ClienteListViewModel> >(_servicioClientes.GetLista(null));

                propiedadEditVm.Provincia = _mapper
                                            .Map <List <ProvinciaListViewModel> >(_servicioProvincia.GetLista());

                propiedadEditVm.Localidad = _mapper
                                            .Map <List <LocalidadListViewModel> >(_servicioLocalidad.GetLista(null));

                propiedadEditVm.TipoPropiedad = _mapper
                                                .Map <List <TipoPropiedadListViewModel> >(_servicioTipoPropiedad.GetLista());

                propiedadEditVm.TipoOperacion = _mapper
                                                .Map <List <TipoOperacionListViewModel> >(_servicioTipoOperacion.GetLista());

                propiedadEditVm.Cliente = _mapper
                                          .Map <List <ClienteListViewModel> >(_servicioClientes.GetLista(null));


                return(View(propiedadEditVm));
            }

            PropiedadEditDto propiedadDto = _mapper.Map <PropiedadEditDto>(propiedadEditVm);

            if (_servicio.Existe(propiedadDto))
            {
                ModelState.AddModelError(string.Empty, "Propiedad existente...");

                propiedadEditVm.Cliente = _mapper
                                          .Map <List <ClienteListViewModel> >(_servicioClientes.GetLista(null));

                propiedadEditVm.Provincia = _mapper
                                            .Map <List <ProvinciaListViewModel> >(_servicioProvincia.GetLista());

                propiedadEditVm.Localidad = _mapper
                                            .Map <List <LocalidadListViewModel> >(_servicioLocalidad.GetLista(null));

                propiedadEditVm.TipoPropiedad = _mapper
                                                .Map <List <TipoPropiedadListViewModel> >(_servicioTipoPropiedad.GetLista());

                propiedadEditVm.TipoOperacion = _mapper
                                                .Map <List <TipoOperacionListViewModel> >(_servicioTipoOperacion.GetLista());



                return(View(propiedadEditVm));
            }

            try
            {
                _servicio.Guardar(propiedadDto);
                TempData["Msg"] = "Propiedad Agregada :) ";
                return(RedirectToAction("Index"));
            }
            catch (Exception e)
            {
                ModelState.AddModelError(string.Empty, e.Message);

                propiedadEditVm.Cliente = _mapper
                                          .Map <List <ClienteListViewModel> >(_servicioClientes.GetLista(null));

                propiedadEditVm.Provincia = _mapper
                                            .Map <List <ProvinciaListViewModel> >(_servicioProvincia.GetLista());

                propiedadEditVm.Localidad = _mapper
                                            .Map <List <LocalidadListViewModel> >(_servicioLocalidad.GetLista(null));

                propiedadEditVm.TipoPropiedad = _mapper
                                                .Map <List <TipoPropiedadListViewModel> >(_servicioTipoPropiedad.GetLista());

                propiedadEditVm.TipoOperacion = _mapper
                                                .Map <List <TipoOperacionListViewModel> >(_servicioTipoOperacion.GetLista());



                return(View(propiedadEditVm));
            }
        }