Example #1
0
        private AgregarLineaInventariosDocumentosModel OperarLinea(string referencia, string lote, bool agregar)
        {
            var result = new AgregarLineaInventariosDocumentosModel();

            using (var tran = Marfil.Inf.Genericos.Helper.TransactionScopeBuilder.CreateTransactionObject())
            {
                var model = GetByReferencia(referencia);
                model = get(model.Id.ToString()) as InventariosModel;

                result.Referencia = model.Referencia;
                result.Fecha      = model.Fechadocumentocadena;
                model.Lineas      = EditarLineasInventarios(model.Lineas, lote, agregar);


                edit(model);

                result.Lineas = model.Lineas
                                .Select(f => new AgregarLineaInventariosDocumentosLinModel()
                {
                    Lote         = string.Format("{0}{1}", f.Lote, Funciones.RellenaCod(f.Loteid, 3)),
                    Largo        = f.SLargo,
                    Ancho        = f.SAncho,
                    Grueso       = f.SGrueso,
                    Cantidad     = f.Cantidad.ToString(),
                    Descripcion  = f.Descripcion,
                    Fkarticulos  = f.Fkarticulos,
                    Metros       = f.SMetros,
                    Estado       = Funciones.GetEnumByStringValueAttribute(f.Estado),
                    Codigoestado = ((int)f.Estado).ToString()
                }).ToList();

                tran.Complete();
            }


            return(result);
        }
        public ActionResult BuscarDocumentoVentaProduccion(StDocumentoVenta model)
        {
            using (var service = GetService(model.Tipodocumento) as IGestionService)
            {
                try
                {
                    if (service is ReservasstockService)
                    {
                        var servicereservas = service as ReservasstockService;
                        var list            = servicereservas.GetByReferencia(model.Referencia);
                        list = servicereservas.get(list.Id.ToString()) as ReservasstockModel;
                        var result = new AgregarLineaDocumentosModel()
                        {
                            Fecha      = list.Fechadocumentocadena,
                            Referencia = list.Referencia,
                            Lineas     = list.Lineas.Select(f => new AgregarLineaDocumentosLinModel()
                            {
                                Fkarticulos = f.Fkarticulos,
                                Descripcion = f.Descripcion,
                                Lote        = f.Lote,
                                Cantidad    = f.Cantidad.ToString(),
                                Ancho       = f.SAncho,
                                Largo       = f.SLargo,
                                Grueso      = f.SGrueso,
                                Metros      = f.SMetros
                            }).ToList()
                        };
                        return(Json(result));
                    }
                    else if (service is EntregasService)
                    {
                        var servicereservas = service as EntregasService;
                        var list            = servicereservas.GetByReferencia(model.Referencia);
                        list = servicereservas.get(list.Id.ToString()) as AlbaranesModel;
                        var result = new AgregarLineaDocumentosModel()
                        {
                            Fecha      = list.Fechadocumentocadena,
                            Referencia = list.Referencia,
                            Lineas     = list.Lineas.Select(f => new AgregarLineaDocumentosLinModel()
                            {
                                Fkarticulos = f.Fkarticulos,
                                Descripcion = f.Descripcion,
                                Lote        = f.Lote,
                                Cantidad    = f.Cantidad.ToString(),
                                Ancho       = f.SAncho,
                                Largo       = f.SLargo,
                                Grueso      = f.SGrueso,
                                Metros      = f.SMetros
                            }).ToList()
                        };
                        return(Json(result));
                    }
                    else if (service is InventariosService)
                    {
                        var servicereservas = service as InventariosService;
                        var list            = servicereservas.GetByReferencia(model.Referencia);
                        list = servicereservas.get(list.Id.ToString()) as InventariosModel;
                        var result = new AgregarLineaInventariosDocumentosModel()
                        {
                            Fecha      = list.Fechadocumentocadena,
                            Referencia = list.Referencia,
                            Lineas     = list.Lineas.Select(f => new AgregarLineaInventariosDocumentosLinModel()
                            {
                                Fkarticulos  = f.Fkarticulos,
                                Descripcion  = f.Descripcion,
                                Lote         = string.Format("{0}{1}", f.Lote, Funciones.RellenaCod(f.Loteid, 3)),
                                Cantidad     = f.Cantidad.ToString(),
                                Ancho        = f.SAncho,
                                Largo        = f.SLargo,
                                Grueso       = f.SGrueso,
                                Metros       = f.SMetros,
                                Estado       = Funciones.GetEnumByStringValueAttribute(f.Estado),
                                Codigoestado = ((int)f.Estado).ToString()
                            }).ToList()
                        };
                        return(Json(result));
                    }

                    return(Json(new AgregarLineaDocumentosModel()
                    {
                        Error = "Operacion incorrecta"
                    }));
                }
                catch (Exception ex)
                {
                    return(Json(new AgregarLineaDocumentosModel()
                    {
                        Error = ex.Message
                    }));
                }
            }
        }