コード例 #1
0
ファイル: ReporteController.cs プロジェクト: RichardZC/PAGPA
        public ActionResult ReporteCodBarras(int pMovimientoId)
        {
            var data = SerieArticuloBL.ListarArticuloCodigoBarras(pMovimientoId);
            var rd   = new ReportDataSource("dsCodigo", data);

            return(Reporte("PDF", "rptCodigo.rdlc", rd, "CodigoBarras"));
        }
コード例 #2
0
        public ActionResult ValidarSerie(string pNumeroSerie, int pTransferenciaId)
        {
            string mensaje = string.Empty;
            int    pserie2 = int.Parse(pNumeroSerie);

            var serieA = SerieArticuloBL.Obtener(x => x.NumeroSerie == pNumeroSerie);

            // valida serie disponible
            if (serieA == null || serieA.EstadoId != 2)
            {
                mensaje = "La serie no esta disponible, ingrese otro.";
                return(Json(mensaje, JsonRequestBehavior.AllowGet));
            }

            // valida series duplicadas
            var existe = TransferenciaSerieBL.Contar(x => x.TransferenciaId == pTransferenciaId && x.SerieArticuloId == serieA.SerieArticuloId);

            if (existe > 0)
            {
                mensaje = "La serie ya esta registrada, ingrese otro";
                return(Json(mensaje, JsonRequestBehavior.AllowGet));
            }

            TransferenciaSerieBL.Crear(new TransferenciaSerie
            {
                TransferenciaId = pTransferenciaId,
                SerieArticuloId = serieA.SerieArticuloId
            });

            return(Json(mensaje, JsonRequestBehavior.AllowGet));
        }
コード例 #3
0
        public ActionResult AgregarTransferenciaSerie(string pNumeroSerie, int pTransferenciaId)
        {
            string mensaje = string.Empty;
            var    serie   = SerieArticuloBL.Obtener(x => x.NumeroSerie == pNumeroSerie);

            TransferenciaSerieBL.Crear(new TransferenciaSerie
            {
                TransferenciaId = pTransferenciaId,
                SerieArticuloId = serie.SerieArticuloId
            });

            return(Json(mensaje, JsonRequestBehavior.AllowGet));
        }
コード例 #4
0
        public ActionResult ObtenerArticulo(string pCodigo)
        {
            var art = ArticuloBL.Obtener(x => x.CodArticulo == pCodigo && x.Estado, "ListaPrecio");

            if (art == null || art.ListaPrecio.Count == 0)
            {
                return(Json(null, JsonRequestBehavior.AllowGet));
            }
            var stock = SerieArticuloBL.Contar(x => x.ArticuloId == art.ArticuloId && x.EstadoId == Constante.SerieArticulo.EN_ALMACEN);

            return(Json(new
            {
                ArticuloId = art.ArticuloId,
                CodArticulo = art.CodArticulo,
                Denominacion = art.Denominacion,
                PrecioVenta = art.ListaPrecio.First().Monto,
                Stock = stock
            }, JsonRequestBehavior.AllowGet));
        }
コード例 #5
0
        public JsonResult BuscarListaPrecio(int pArticuloId, string pSerie)
        {
            string ArticuloDesc = string.Empty;

            pSerie = pSerie.Trim();
            if (pArticuloId == 0)
            {
                var encontrado = SerieArticuloBL.Listar(x => x.NumeroSerie == pSerie, includeProperties: "Articulo").FirstOrDefault();
                if (encontrado != null)
                {
                    pArticuloId  = encontrado.ArticuloId;
                    ArticuloDesc = encontrado.Articulo.Denominacion;
                }
            }



            if (pArticuloId > 0)
            {
                var lp = ListaPrecioBL.Listar(x => x.ArticuloId == pArticuloId, includeProperties: "Articulo")
                         .Select(y => new { y.ArticuloId, y.Articulo.Denominacion, y.Articulo.IndCanjeable, y.ListaPrecioId, y.Monto, y.Descuento, y.Puntos, y.PuntosCanje, y.Estado })
                         .FirstOrDefault();
                if (lp != null)
                {
                    return(Json(lp, JsonRequestBehavior.AllowGet));
                }

                return(Json(new
                {
                    ArticuloId = pArticuloId,
                    Denominacion = ArticuloDesc,
                    ListaPrecioId = 0,
                    Monto = 0.0,
                    Descuento = 0.0,
                    Estado = true
                }, JsonRequestBehavior.AllowGet));
            }

            return(Json(null, JsonRequestBehavior.AllowGet));
        }
コード例 #6
0
        public JsonResult BuscarProducto(string pNumeroSerie)
        {
            var ret = new RetornoSerie();
            var s   = SerieArticuloBL.Obtener(x => x.NumeroSerie == pNumeroSerie);

            if (s == null)
            {
                ret.Error   = true;
                ret.Mensaje = "El Producto no existe, ingrese otro";
            }
            else
            {
                if (s.EstadoId == 1)
                {
                    ret.Error   = true;
                    ret.Mensaje = "El Producto se encuentra en estado SIN CONFIRMAR, ingrese otro.";
                }
                if (s.EstadoId == 2)
                {
                    var a = ArticuloBL.Obtener(s.ArticuloId);
                    ret.Error        = false;
                    ret.SerieId      = s.SerieArticuloId;
                    ret.Serie        = s.NumeroSerie;
                    ret.ArticuloId   = s.ArticuloId;
                    ret.Denominacion = a.Denominacion;
                }
                if (s.EstadoId == 3 || s.EstadoId == 4)
                {
                    ret.Error   = true;
                    ret.Mensaje = "El Producto se encuentra en estado PREVENTA o VENDIDO, ingrese otro.";
                }
                if (s.EstadoId == 5)
                {
                    ret.Error   = true;
                    ret.Mensaje = "El Producto se encuentra en estado ANULADO, ingrese otro.";
                }
            }

            return(Json(ret, JsonRequestBehavior.AllowGet));
        }
コード例 #7
0
ファイル: EntradaController.cs プロジェクト: RichardZC/PAGPA
 public ActionResult ValidarExisteSerie(string pListaSerie, bool pIndCorrelativo, int?pCantidad)
 {
     return(Json(SerieArticuloBL.ValidarExisteSerie(pListaSerie, pIndCorrelativo, pCantidad), JsonRequestBehavior.AllowGet));
 }
コード例 #8
0
ファイル: EntradaController.cs プロジェクト: RichardZC/PAGPA
 public ActionResult ObtenerSeriesMovimientoDetalle(int pMovimientoDetId)
 {
     return(Json(SerieArticuloBL.Listar(x => x.MovimientoDetEntId == pMovimientoDetId).Select(c => new{ c.NumeroSerie }),
                 JsonRequestBehavior.AllowGet));
 }
コード例 #9
0
ファイル: ReporteController.cs プロジェクト: RichardZC/PAGPA
        public ActionResult Almacen()
        {
            ViewBag.cboOficina = new SelectList(OficinaBL.Listar(x => x.Estado), "OficinaId", "Denominacion");

            return(View(SerieArticuloBL.ObtenerIndicadoresAlmacen()));
        }
コード例 #10
0
        public JsonResult RealizarSalida(int tipoMovId, string glosa, List <SerieSalida> series)
        {
            var oficinaid   = VendixGlobal.GetOficinaId();
            var almacenId   = AlmacenBL.Obtener(x => x.OficinaId == oficinaid).AlmacenId;
            var listamovdet = new List <MovimientoDet>();


            using (var scope = new TransactionScope())
            {
                try
                {
                    var mov = new Movimiento()
                    {
                        TipoMovimientoId = tipoMovId,
                        AlmacenId        = almacenId,
                        Fecha            = VendixGlobal.GetFecha(),
                        SubTotal         = 0,
                        IGV            = 0,
                        AjusteRedondeo = 0,
                        TotalImporte   = 0,
                        EstadoId       = 3,
                        Observacion    = glosa
                    };
                    MovimientoBL.Crear(mov);

                    foreach (var item in series)
                    {
                        bool f = false;
                        foreach (var i in listamovdet)
                        {
                            if (item.ArticuloId == i.ArticuloId)
                            {
                                f = true;
                                i.Cantidad++;
                                i.Descripcion += ", " + item.Serie;
                            }
                        }

                        if (f == false)
                        {
                            listamovdet.Add(new MovimientoDet()
                            {
                                MovimientoId    = mov.MovimientoId,
                                Cantidad        = 1,
                                ArticuloId      = item.ArticuloId,
                                Descripcion     = item.Denominacion + " " + item.Serie,
                                Descuento       = 0,
                                Importe         = 0,
                                IndCorrelativo  = false,
                                UnidadMedidaT10 = 1
                            });
                        }
                    }

                    foreach (var item in listamovdet)
                    {
                        MovimientoDetBL.Crear(item);
                        var ser = series.FindAll(x => x.ArticuloId == item.ArticuloId);

                        SerieArticulo s;
                        foreach (var x in ser)
                        {
                            s                    = SerieArticuloBL.Obtener(x.SerieId);
                            s.EstadoId           = 5; //anulado
                            s.MovimientoDetSalId = item.MovimientoDetId;
                            SerieArticuloBL.Actualizar(s);
                        }
                    }
                    scope.Complete();
                    return(Json(string.Empty));
                }
                catch (Exception ex)
                {
                    scope.Dispose();
                    return(Json(ex.InnerException.Message));
                }
            }
        }