コード例 #1
0
        public Anexo ConsultarAnexo(string numAnexo, Almacen almacen)
        {
            var anexoConsulta = AnexoDao.ConsultaAnexo(numAnexo, almacen);
            if (anexoConsulta != null)//Existe
            {

                var anexosDetalleConsulta = anexoConsulta.AnexoDetalle;
                anexoConsulta.AnexoDetalle = new List<AnexoDetalle>();

                //Seteamos las propiedas de la vista
                foreach (var anexoDetalleConsulta in anexosDetalleConsulta)
                {
                    var anexoDetalle = new AnexoDetalle
                    {
                        IdAnexoDetalle = anexoDetalleConsulta.IdAnexoDetalle,
                        RenglonAnexo = anexoDetalleConsulta.RenglonAnexo,
                        Articulo = anexoDetalleConsulta.Articulo,
                        CveArt = anexoDetalleConsulta.Articulo.Id.CveArt,
                        DescripcionArt = anexoDetalleConsulta.Articulo.DesArticulo,
                        UnidadArt = anexoDetalleConsulta.Articulo.Unidad,
                        CantidadMinimo = anexoDetalleConsulta.CantidadMinimo,
                        CantidadMaximo =  anexoDetalleConsulta.CantidadMaximo
                    };

                    anexoConsulta.AnexoDetalle.Add(anexoDetalle);
                }
            }

            return anexoConsulta;
        }
コード例 #2
0
        private void CargarExcel(string fileName,Contrato contrato)
        {
            var lines = File.ReadAllLines(fileName).Select(a => a.Split(','));

            var numeroLinea = 1;

            foreach (var line in lines)
            {
                int clave;
                int minimo = -1;
                int maximo;

                if (!int.TryParse(line[0], out clave))
                    throw new Exception("Ocurrio un error en el formato de la clave linea " + numeroLinea);

                if (contrato == Contrato.ABIERTO) {
                    if (!int.TryParse(line[1], out minimo))
                        throw new Exception("Ocurrio un error en el formato del minimo linea " + numeroLinea);
                }

                if (!int.TryParse(line[2], out maximo))
                        throw new Exception("Ocurrio un error en el formato del maximo linea " + numeroLinea);

                if (PartidaActual == null)
                    throw new Exception("No ha seleccionado partida");

                var almacen = cbxAlmacen.SelectedValue as Almacen;
                var articulo = AnexoService.ArticuloDao.ArticuloPartida(clave, almacen, PartidaActual);

                if (articulo == null)
                    throw new Exception("No existe la clave linea " + numeroLinea);

                if (contrato == Contrato.ABIERTO)
                {
                    if (minimo > maximo)
                        throw new Exception("El minimo es mayor que el maximo linea " + numeroLinea);
                }

                var list = bsAnexoDetalle.DataSource as List<AnexoDetalle>;
                var anexoDetalle = new AnexoDetalle();
                anexoDetalle.RenglonAnexo = (short) numeroLinea;
                anexoDetalle.Articulo = articulo;
                anexoDetalle.CveArt = clave;
                anexoDetalle.DescripcionArt = articulo.DesArticulo;
                anexoDetalle.UnidadArt = articulo.Unidad;
                anexoDetalle.CantidadMaximo = maximo;

                if (contrato == Contrato.ABIERTO)
                    anexoDetalle.CantidadMinimo = minimo;
                else if(contrato == Contrato.CERRADO)
                    anexoDetalle.CantidadMinimo = null;

                list.Add(anexoDetalle);

                bsAnexoDetalle.DataSource = list;
                gvAnexoDetalle.RefreshData();
                ++numeroLinea;

            }
        }