예제 #1
0
        public async Task <ActionResult <ProveedorDto> > Delete(int id)
        {
            try
            {
                var proveedorDto = new ProveedorDto();
                var itemOld      = await _repository.GetProveedorPorId(id);

                if (itemOld == null)
                {
                    proveedorDto.error = $"No existe el proveedor en la base de datos.";
                    return(BadRequest(proveedorDto));
                }

                var ordenes = await _repository.GetOrdenesPorProveedor(id);

                if (ordenes.Any())
                {
                    proveedorDto.error = $"El proveedor no se puede eliminar porque tiene {ordenes.Count()} ordenes relacionadas";
                    return(BadRequest(proveedorDto));
                }

                _baseRepository.Delete(itemOld);

                if (await _baseRepository.SaveChangesAsync())
                {
                    return(Ok());
                }
            }
            catch (Exception ex)
            {
                return(this.StatusCode(StatusCodes.Status500InternalServerError, ex.Message));
            }

            return(BadRequest("An error ocurrs trying to delete a supplier"));
        }
예제 #2
0
 private void dgvGrillaProveedores_RowEnter(object sender, DataGridViewCellEventArgs e)
 {
     if (dgvGrillaProveedores.RowCount > 0)
     {
         _proveedorSeleccionado = (ProveedorDto)dgvGrillaProveedores.Rows[e.RowIndex].DataBoundItem;
     }
 }
예제 #3
0
        public async Task <IActionResult> Put(long id, [FromBody] ProveedorDto valueDto)
        {
            var result = new ResultDto <bool>();

            try
            {
                var modelExists = await _proveedorService.GetByIdAsync(id);

                if (modelExists == null)
                {
                    throw new AwayException("No existe el registro que desea editar.");
                }

                valueDto.Id = modelExists.Id;
                result.Data = await _proveedorService.UpdateAsync(valueDto);
            }
            catch (AwayException ex)
            {
                _logger.Error(KOriginApp, ex.Message, ex);
                result.AddError(ex.Message);
            }
            catch (Exception ex)
            {
                _logger.Error(KOriginApp, ex.Message, ex);
                result.AddError("Ocurrió un error al intentar editar los datos del registro.");
            }
            return(Ok(result));
        }
예제 #4
0
        public async Task <ActionResult <ProveedorDto> > UpdateProveedor([FromBody] ProveedorDto itemDto)
        {
            try
            {
                var itemOld = await _repository.GetProveedorPorId(itemDto.Id);

                if (itemOld == null)
                {
                    return(NotFound($"El proveedor {itemDto.nombre}, no existe en la base de datos."));
                }

                var itemName = await _repository.GetProveedorNombre(itemDto.nombre);

                if (itemName != null)
                {
                    if (itemName.Id != itemDto.Id)
                    {
                        return(BadRequest($"Ya existe un proveedor con el nombre de {itemDto.nombre}, en la base de datos."));
                    }
                }

                _mapper.Map(itemDto, itemOld);
                var updated = await _baseRepository.SaveChangesAsync();

                return(Ok(_mapper.Map <ProveedorDto>(itemOld)));
            }
            catch (Exception ex)
            {
                return(this.StatusCode(StatusCodes.Status500InternalServerError, ex.Message));
            }
        }
        private void dtConceptoPago_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.RowIndex >= 0)
            {
                _selectedProvedor = new ProveedorDto()
                {
                    Id            = (int)dtProveedor.Rows[e.RowIndex].Cells["Id"].Value,
                    Nombre        = dtProveedor.Rows[e.RowIndex].Cells["Nombre"].Value?.ToString(),
                    TipoPersonaId = (int)dtProveedor.Rows[e.RowIndex].Cells["TipoPersonaId"].Value,
                    Balance       = (decimal)dtProveedor.Rows[e.RowIndex].Cells["Balance"].Value,
                    TipoNombre    = dtProveedor.Rows[e.RowIndex].Cells["TipoNombre"].Value?.ToString(),
                    Documento     = dtProveedor.Rows[e.RowIndex].Cells["Documento"].Value?.ToString(),

                    Activo = true
                };
            }
            else
            {
                _selectedProvedor = null;
            }

            btnDelete.Enabled  = _selectedProvedor != null;
            btnLimpiar.Enabled = _selectedProvedor != null;
            SetSelectedInfo();
        }
예제 #6
0
        public Proveedor guardar(ProveedorDto proveedorAGuardarDto)
        {
            ProveedorRepository proveedorRepository = new ProveedorRepository();
            Proveedor           proveedorAGuardar   = Proveedor.convertirDtoEnProveedor(proveedorAGuardarDto);
            Proveedor           proveedorGuardado   = proveedorRepository.guardar(proveedorAGuardar);

            return(proveedorGuardado);
        }
예제 #7
0
 public Proveedor(ProveedorDto dto)
 {
     ID            = dto.ID;
     Telefono      = dto.Telefono;
     Email         = dto.Email;
     Contacto      = dto.Contacto;
     Observaciones = dto.Observaciones;
     Anulado       = dto.Anulado;
 }
예제 #8
0
        public ProveedorDto guardarProveedor(ProveedorDto proveedorAGuardarDto)
        {
            ProveedorDominio proveedorDominio  = new ProveedorDominio();
            Proveedor        proveedorGuardado = proveedorDominio.guardar(proveedorAGuardarDto);

            ProveedorDto proveedorGuardadoDto = ProveedorDto.convertirProveedorADto(proveedorGuardado);
            Proveedor    proveedorAGuardar    = new Proveedor();

            return(proveedorGuardadoDto);
        }
        public IHttpActionResult CrearProveedor(ProveedorDto proveedorDto)
        {
            var proveedor = Mapper.Map <ProveedorDto, Proveedor>(proveedorDto);

            _context.Proveedores.Add(proveedor);
            _context.SaveChanges();

            var resultado = Mapper.Map <Proveedor, ProveedorDto>(proveedor);

            return(Ok(resultado));
        }
        protected async override Task CrearNuevoElemento()
        {
            if (!string.IsNullOrWhiteSpace(Proveedor.RazonSocial) && !string.IsNullOrWhiteSpace(Proveedor.NombreFantasia))
            {
                Proveedor.CondicionIvaId = Proveedor.CondicionIva.Id;
                await Servicios.ApiProcessor.PostApi(Proveedor, "Proveedor/Insert");
                await Inicializar();

                Proveedor = new ProveedorDto();
            }
        }
예제 #11
0
        private void dgvGrillaProveedores_CellEnter(object sender, DataGridViewCellEventArgs e)
        {
            if (dgvGrillaProveedores.RowCount > 0)
            {
                _proveedorSeleccionado = (ProveedorDto)dgvGrillaProveedores.Rows[e.RowIndex].DataBoundItem;

                ActualizarDatosMovimientos(txtBuscarMovimientos.Text.Trim());

                FormatearGrillaMovimientos(dgvGrillaMovimientos);
            }
        }
예제 #12
0
        public _5003_PedidoProducto()

        {
            InitializeComponent();

            _productoServicio       = new ProductoServicio();
            _proveedorServicio      = new ProvedoresServicio();
            _movimientoServicio     = new MovimientoServicio();
            _pedidoProductoServicio = new PedidoProductoServicio();

            this.lblUsuarioLogin.Text = $"Usuario: {Identidad.Empleado}";
            lblUsuarioLogin.Image     = Constante.ImagenControl.Usuario;

            PoblarComboBox(cmbProducto, _productoServicio.ObtenerTodo(), "Descripcion", "Id");

            txtTotal.Text = (NudPrecioCosto.Value * nudCantidad.Value).ToString("C2");

            if (cmbProducto.SelectedItem != null)
            {
                if (_proveedorServicio.VerificarSiperteneceAlProducto((int)cmbProducto.SelectedValue))
                {
                    lblProveedor.Text      = _proveedorServicio.ObtenerPorProducto((int)cmbProducto.SelectedValue).NombreFantasia;
                    _proveedorSeleccionado = _proveedorServicio.ObtenerPorProducto((int)cmbProducto.SelectedValue);
                }

                else
                {
                    lblProveedor.Text      = "Ninguno";
                    _proveedorSeleccionado = null;
                }
            }

            else
            {
                lblProveedor.Text      = "Ninguno";
                _proveedorSeleccionado = null;
            }



            txtEfectivo.KeyPress += Validacion.NoLetras;
            txtEfectivo.KeyPress += Validacion.NoInyeccion;
            txtEfectivo.KeyPress += Validacion.NoSimbolos;



            RealizoAlgunaOperacion = false;

            this.lblUsuarioLogin.Text = $"Usuario: {Identidad.Empleado}";
            lblUsuarioLogin.Image     = Constante.ImagenControl.Usuario;
        }
예제 #13
0
        public ProveedorDto Dto()
        {
            ProveedorDto dto = new ProveedorDto();

            dto.ID            = ID;
            dto.Nombre        = Nombre;
            dto.Telefono      = Telefono;
            dto.Email         = Email;
            dto.Contacto      = Contacto;
            dto.Observaciones = Observaciones;
            dto.Anulado       = Anulado;

            return(dto);
        }
예제 #14
0
        public async Task Modificar(ProveedorDto dto)
        {
            using (var context = new DataContext())
            {
                var proveedorModificar = context.Proveedores.FirstOrDefault(x => x.Id == dto.Id);
                proveedorModificar.CondicionIvaId = dto.CondicionIvaId;
                proveedorModificar.NombreFantasia = dto.NombreFantasia;
                proveedorModificar.Cuit           = dto.Cuit;
                proveedorModificar.RazonSocial    = dto.RazonSocial;
                proveedorModificar.Telefono       = dto.Telefono;
                proveedorModificar.Contacto       = dto.Contacto;

                await _proveedorRepositorio.Update(proveedorModificar);
            }
        }
예제 #15
0
        private void ActualizarDatosProveedores(string cadenaBuscar)
        {
            dgvGrillaProveedores.DataSource = _proveedoresServicio.ObtenerPorFiltro(cadenaBuscar).ToList();

            FormatearGrillaProveedores(dgvGrillaProveedores);

            if (dgvGrillaProveedores.RowCount == 0)
            {
                _proveedorSeleccionado = null;

                dgvGrillaMovimientos.DataSource = _movimientoServicio.ObtenerMovimientoPorProveedorId(null, string.Empty).ToList();

                FormatearGrillaMovimientos(dgvGrillaMovimientos);
            }
        }
예제 #16
0
        public async Task <IActionResult> Post([FromBody] ProveedorDto valueDto)
        {
            var result = new ResultDto <ProveedorDto>();

            try
            {
                result.Data = await _proveedorService.CreateAsync(valueDto);
            }
            catch (Exception ex)
            {
                _logger.Error(KOriginApp, ex.Message, ex);
                result.AddError("Ocurrió un error al intentar agregar el registro.");
            }
            return(Ok(result));
        }
예제 #17
0
        public static ProveedorDto ToProveedorDto(Proveedor proveedor)
        {
            ProveedorDto dto = new ProveedorDto
            {
                Id            = proveedor.Id,
                Direccion     = proveedor.Direccion,
                Email         = proveedor.Email,
                Representante = proveedor.Representante,
                RUC           = proveedor.RUC,
                RzSocial      = proveedor.RzSocial,
                Telefono      = proveedor.Telefono,
                Activo        = proveedor.Activo
            };

            return(dto);
        }
예제 #18
0
        public List <ProveedorDto> leerProveedores()
        {
            List <Proveedor> listaProveedoresEncontrados = new ProveedorDominio().buscarTodos();
            var listaProveedoresDto = new List <ProveedorDto>();

            //Convierte el listado de Proveedores encontrados en List<ProveedorDto:
            foreach (Proveedor itemProveedor in listaProveedoresEncontrados)
            {
                ProveedorDto itemDto = ProveedorDto.convertirProveedorADto(itemProveedor);
                listaProveedoresDto.Add(itemDto);
            }
            ;



            return(listaProveedoresDto);
        }
예제 #19
0
 public long?Agregar(ProveedorDto prove)
 {
     using (var context = new ModeloXCommerceContainer())
     {
         var proveedorNuevo = new AccesoDatos.Proveedor
         {
             CondicionIvaId = prove.CondicionIvaId,
             Contacto       = prove.Contacto,
             Email          = prove.Email,
             RazonSocial    = prove.RazonSocial,
             Telefono       = prove.Telefono
         };
         context.Proveedores.Add(proveedorNuevo);
         context.SaveChanges();
         return(proveedorNuevo.Id);
     }
 }
예제 #20
0
        public void Modificar(ProveedorDto prove)
        {
            using (var context = new ModeloXCommerceContainer())
            {
                var proveedorMod = context.Proveedores.FirstOrDefault(x => x.Id == prove.Id);
                if (proveedorMod == null)
                {
                    throw new Exception("No se encontro el Proveedor");
                }
                proveedorMod.Id             = prove.Id;
                proveedorMod.CondicionIvaId = prove.CondicionIvaId;
                proveedorMod.Contacto       = prove.Contacto;
                proveedorMod.Email          = prove.Email;
                proveedorMod.RazonSocial    = prove.RazonSocial;
                proveedorMod.Telefono       = prove.Telefono;

                context.SaveChanges();
            }
        }
예제 #21
0
        public long Insertar(ProveedorDto dto)
        {
            using (var context = new ModeloXCommerceContainer())
            {
                var nuevoProveedor = new AccesoDatos.Proveedor
                {
                    RazonSocial    = dto.RazonSocial,
                    Telefono       = dto.Telefono,
                    Email          = dto.Email,
                    Contacto       = dto.Contacto,
                    CondicionIvaId = dto.CondicionIvaId
                };

                context.Proveedores.Add(nuevoProveedor);

                context.SaveChanges();

                return(nuevoProveedor.Id);
            }
        }
예제 #22
0
        public static Proveedor ToProveedor(ProveedorDto dto)
        {
            if (dto == null)
            {
                return(null);
            }

            Proveedor proveedor = new Proveedor
            {
                Id            = dto.Id,
                Direccion     = dto.Direccion,
                Email         = dto.Email,
                Representante = dto.Representante,
                RUC           = dto.RUC,
                RzSocial      = dto.RzSocial,
                Telefono      = dto.Telefono,
                Activo        = dto.Activo
            };

            return(proveedor);
        }
예제 #23
0
        // POST: api/Proveedor
        public GenericResponse <String> Post([FromBody] ProveedorDto proveedor)
        {
            GenericResponse <String> response = new GenericResponse <String>();

            try
            {
                servicio.Crear(proveedor);
                response = ResponseUtil.CrearRespuestaOk();
            }
            catch (CustomResponseException ex)
            {
                throw ex;
            }
            catch (Exception ex)
            {
                throw new CustomResponseException(ex.Message, 500);
            }


            return(response);
        }
        public override bool EjecutarComandoNuevo()
        {
            if (!VerificarDatosObligatorios())
            {
                MessageBox.Show(@"Por favor ingrese los campos Obligatorios.", @"Atención", MessageBoxButtons.OK,
                                MessageBoxIcon.Error);
                return(false);
            }

            var nuevoProveedor = new ProveedorDto
            {
                Contacto       = txtContacto.Text,
                RazonSocial    = txtRazonSocial.Text,
                Email          = txtEmail.Text,
                Telefono       = txtTelefono.Text,
                CondicionIvaId = ((CondicionIvaDto)cmbCondicionIva.SelectedItem).Id
            };

            _proveedorServicio.Agregar(nuevoProveedor);

            return(true);
        }
예제 #25
0
        private void cmbProducto_SelectionChangeCommitted(object sender, EventArgs e)
        {
            if (cmbProducto.SelectedItem != null)
            {
                if (_proveedorServicio.VerificarSiperteneceAlProducto((int)cmbProducto.SelectedValue))
                {
                    lblProveedor.Text      = _proveedorServicio.ObtenerPorProducto((int)cmbProducto.SelectedValue).NombreFantasia;
                    _proveedorSeleccionado = _proveedorServicio.ObtenerPorProducto((int)cmbProducto.SelectedValue);
                }

                else
                {
                    lblProveedor.Text      = "Ninguno";
                    _proveedorSeleccionado = null;
                }
            }

            else
            {
                lblProveedor.Text      = "Ninguno";
                _proveedorSeleccionado = null;
            }
        }
        public override bool EjecutarComandoModificar()
        {
            if (!VerificarDatosObligatorios())
            {
                MessageBox.Show(@"Por favor ingrese los campos Obligatorios.", @"Atención", MessageBoxButtons.OK,
                                MessageBoxIcon.Error);
                return(false);
            }

            var proveedorModificar = new ProveedorDto
            {
                Id             = EntidadId.Value,
                Email          = txtEmail.Text,
                Telefono       = txtTelefono.Text,
                Contacto       = txtContacto.Text,
                EstaEliminado  = false,
                CondicionIvaId = ((IvaDto)cmbCondicionIva.SelectedItem).Id
            };

            _proveedorServicio.Modificar(proveedorModificar);

            return(true);
        }
예제 #27
0
        public async Task <ActionResult <ProveedorDto> > Post([FromBody] ProveedorDto proveedor)
        {
            try
            {
                var tipoOld = await _repository.GetProveedorNombre(proveedor.nombre);

                if (tipoOld != null)
                {
                    proveedor.error = $"Ya existe un tipo de proveedor con el nombre de : {proveedor.nombre}, en la base de datos.";
                    return(BadRequest(proveedor));
                }

                if (tipoOld == null)
                {
                    var itemEntity = _mapper.Map <Proveedor>(proveedor);
                    _baseRepository.Add(itemEntity);
                    if (await _baseRepository.SaveChangesAsync())
                    {
                        return(Ok(proveedor));
                    }
                }
                else
                {
                    if (await _baseRepository.SaveChangesAsync())
                    {
                        return(Ok(proveedor));
                    }
                }
            }
            catch (Exception ex)
            {
                return(this.StatusCode(StatusCodes.Status500InternalServerError, ex.Message));
            }

            return(BadRequest());
        }
 protected override void Nuevo()
 {
     base.Nuevo();
     Proveedor = new ProveedorDto();
 }
예제 #29
0
 public void Actualizar(ProveedorDto proveedor)
 {
     repositorio.Actualizar(ProveedorMapper.ToProveedor(proveedor));
 }
예제 #30
0
 public void Crear(ProveedorDto proveedor)
 {
     repositorio.Crear(ProveedorMapper.ToProveedor(proveedor));
 }