コード例 #1
0
        public override bool EjecutarComandoModificar()
        {
            if (!VerificarDatosObligatorios())
            {
                MessageBox.Show(@"Por favor ingrese los campos Obligatorios.", @"Atención", MessageBoxButtons.OK,
                                MessageBoxIcon.Error);
                return(false);
            }

            var bajaArticuloDTO = _bajaArticuloServicio.ObtenerBajaMotivoPorId(EntidadId.Value);

            var bajaArticuloMod = new BajaArticuloDTO
            {
                Id              = EntidadId.Value,
                Observacion     = richBajaArticulo.Text,
                MotivoBajaId    = (long)cmbMotivo.SelectedValue,
                Cantidad        = nudCantidad.Value,
                ArticuloId      = bajaArticuloDTO.ArticuloId,
                StockModificado = null
            };

            /*---------------------------------------------------------------------------------*/
            var articuloModDTO = _articuloServicio.ObtenerArticuloPorBaja(bajaArticuloMod.Id);

            if (bajaArticuloDTO.Cantidad != bajaArticuloMod.Cantidad)
            {
                if (bajaArticuloMod.Cantidad > bajaArticuloDTO.Cantidad)
                {
                    decimal stockMod = articuloModDTO.Stock - (bajaArticuloMod.Cantidad - bajaArticuloDTO.Cantidad);

                    bajaArticuloMod.StockModificado = stockMod;
                }
                if (bajaArticuloMod.Cantidad < bajaArticuloDTO.Cantidad)
                {
                    decimal stockMod = articuloModDTO.Stock + (bajaArticuloDTO.Cantidad - bajaArticuloMod.Cantidad);

                    bajaArticuloMod.StockModificado = stockMod;
                }
            }

            _bajaArticuloServicio.Modificar(bajaArticuloMod);

            this.Close();

            return(true);
        }