public void GetJsonReciboTest()
        {
            ReciboDataMapper target   = new ReciboDataMapper(); // TODO: Inicializar en un valor adecuado
            string           expected = string.Empty;           // TODO: Inicializar en un valor adecuado
            string           actual;

            actual = target.GetJsonRecibo();
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Compruebe la exactitud de este método de prueba.");
        }
        public void GetListMovimientoTest()
        {
            ReciboDataMapper target = new ReciboDataMapper(); // TODO: Inicializar en un valor adecuado
            RECIBO           recibo = new RECIBO()
            {
                UNID_RECIBO = 20121203022523751
            };                                // TODO: Inicializar en un valor adecuado
            List <MOVIMENTO> expected = null; // TODO: Inicializar en un valor adecuado
            List <MOVIMENTO> actual;

            actual = target.GetListMovimiento(recibo);
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Compruebe la exactitud de este método de prueba.");
        }
Exemplo n.º 3
0
        public string downloadRecibo(long?lastModifiedDate)
        {
            string respuesta = null;

            if (lastModifiedDate != null)
            {
                ReciboDataMapper dataMapper = new ReciboDataMapper();

                respuesta = dataMapper.GetJsonRecibo(lastModifiedDate);

                if (String.IsNullOrEmpty(respuesta))
                {
                    respuesta = null;
                }
            }
            return(respuesta);
        }
Exemplo n.º 4
0
        public ObservableCollection <ReciboModel> GetRecibos()
        {
            ObservableCollection <ReciboModel> recibos = new ObservableCollection <ReciboModel>();

            try
            {
                ReciboDataMapper rmp        = new ReciboDataMapper();
                List <RECIBO>    reciboList = rmp.getListElements();
                reciboList.ForEach(o => recibos.Add(new ReciboModel()
                {
                    FechaCreacion = (DateTime)o.FECHA_CREACION,
                    UnidRecibo    = o.UNID_RECIBO,
                    TroubleTicket = o.TT,
                    PO            = o.PO,
                    Solicitante   = (o.SOLICITANTE != null)? new SolicitanteModel(new SolicitanteDataMapper())
                    {
                        UnidSolicitante = o.SOLICITANTE.UNID_SOLICITANTE,
                        SolicitanteName = o.SOLICITANTE.SOLICITANTE_NAME,
                        Empresa         = new EMPRESA()
                        {
                            UNID_EMPRESA = o.SOLICITANTE.EMPRESA.UNID_EMPRESA,
                            EMPRESA_NAME = o.SOLICITANTE.EMPRESA.EMPRESA_NAME
                        },
                        Departamento = new DEPARTAMENTO()
                        {
                            UNID_DEPARTAMENTO = o.SOLICITANTE.DEPARTAMENTO.UNID_DEPARTAMENTO,
                            DEPARTAMENTO_NAME = o.SOLICITANTE.DEPARTAMENTO.DEPARTAMENTO_NAME
                        }
                    }:null
                })
                                   );
            }
            catch (Exception ex)
            {
                ;
            }

            return(recibos);
        }
        private void SaveRecibo2()
        {
            ReciboDataMapper rdm = new ReciboDataMapper();

            rdm.udpateElement(new RECIBO()
            {
                UNID_SOLICITANTE = this.SelectedSolicitante.UnidSolicitante,
                PO          = this.PO,
                UNID_RECIBO = this.UnidRecibo
            }, this.ActualUser);

            rdm.LimpiarRecibo(this._DelMovs, this.UnidRecibo);

            foreach (InventoryApp.Model.Recibo.MovimientoModel mov in this.Movimientos)
            {
                //Agregar movimiento
                DAL.POCOS.MOVIMENTO movimiento = new MOVIMENTO()
                {
                    UNID_MOVIMIENTO = mov.UnidMovimiento
                    ,
                    FECHA_MOVIMIENTO = mov.FechaCaptura
                    ,
                    UNID_ALMACEN_DESTINO = (mov.DestinoAlmacen != null) ? mov.DestinoAlmacen.UnidAlmacen : (long?)null
                    ,
                    UNID_ALMACEN_PROCEDENCIA = (mov.OrigenAlmacen != null) ? mov.OrigenAlmacen.UnidAlmacen : (long?)null
                    ,
                    UNID_CLIENTE_PROCEDENCIA = (mov.OrigenCliente != null) ? mov.OrigenCliente.UnidCliente : (long?)null
                    ,
                    UNID_PROVEEDOR_PROCEDENCIA = (mov.OrigenProveedor != null) ? mov.OrigenProveedor.UnidProveedor : (long?)null
                    ,
                    TT = this.TroubleTicket
                    ,
                    UNID_TIPO_MOVIMIENTO = MovimientoRecibo
                    ,
                    IS_ACTIVE = true
                    ,
                    FINISHED = true
                };
                MovimientoDataMapper movDataMapper = new MovimientoDataMapper();
                movDataMapper.udpateElementRecibo(movimiento);

                foreach (InventoryApp.Model.Recibo.ReciboItemModel item in mov.Items)
                {
                    long?aux = null;
                    if (item.ItemStatus != null)
                    {
                        aux = item.ItemStatus.UnidItemStatus;
                    }

                    //Agregar el item
                    DAL.POCOS.ITEM pItem = new DAL.POCOS.ITEM()
                    {
                        UNID_ITEM = item.UnidItem
                        ,
                        SKU = item.Sku
                        ,
                        NUMERO_SERIE = item.NumeroSerie
                        ,
                        UNID_ITEM_STATUS = aux
                        ,
                        COSTO_UNITARIO = item.CostoUnitario
                        ,
                        UNID_FACTURA_DETALE = item.FacturaDetalle.UnidFacturaCompraDetalle
                        ,
                        UNID_ARTICULO = item.Articulo.UnidArticulo
                        ,
                        PEDIMENTO_EXPO = item.PedimentoExpo
                        ,
                        PEDIMENTO_IMPO = item.PedimentoImpo
                        ,
                        CANTIDAD = item.Cantidad
                        ,
                        IS_ACTIVE = true
                    };
                    ItemDataMapper itemDataMapper = new ItemDataMapper();
                    itemDataMapper.updateElementRecibo(pItem);

                    //Agregar detalle del movimiento
                    DAL.POCOS.MOVIMIENTO_DETALLE movDetalle = new DAL.POCOS.MOVIMIENTO_DETALLE()
                    {
                        UNID_MOVIMIENTO = mov.UnidMovimiento
                        ,
                        UNID_ITEM = item.UnidItem
                        ,
                        UNID_MOVIMIENTO_DETALLE = item.UnidMovimientoDetalle
                        ,
                        CANTIDAD = item.Cantidad
                        ,
                        UNID_ITEM_STATUS = item.ItemStatus.UnidItemStatus
                        ,
                        IS_ACTIVE = true
                    };
                    MovimientoDetalleDataMapper mdDataMapper = new MovimientoDetalleDataMapper();
                    mdDataMapper.udpateElementRecibo(movDetalle);

                    //Actualizar el último movimiento
                    DAL.POCOS.ULTIMO_MOVIMIENTO ulitmoMovto = new DAL.POCOS.ULTIMO_MOVIMIENTO()
                    {
                        UNID_ITEM               = item.UnidItem,
                        UNID_ALMACEN            = mov.DestinoAlmacen.UnidAlmacen,
                        UNID_MOVIMIENTO_DETALLE = item.UnidMovimientoDetalle,
                        CANTIDAD         = item.Cantidad,
                        UNID_ITEM_STATUS = item.ItemStatus.UnidItemStatus,
                        IS_ACTIVE        = true
                    };
                    UltimoMovimientoDataMapper umDataMapper = new UltimoMovimientoDataMapper();
                    umDataMapper.udpateElement(ulitmoMovto);
                }

                //Agregar recibodetalle
                DAL.POCOS.RECIBO_MOVIMIENTO rm = new DAL.POCOS.RECIBO_MOVIMIENTO()
                {
                    UNID_RECIBO            = this._UnidRecibo,
                    UNID_RECIBO_MOVIMIENTO = mov.UnidMovimiento,
                    UNID_MOVIMIENTO        = mov.UnidMovimiento,
                    UNID_FACTURA           = mov.Items.First().FacturaDetalle.Factura.UnidFactura,
                    IS_ACTIVE = true
                };
                ReciboMovimientoDataMapper rmDataMaper = new ReciboMovimientoDataMapper();
                rmDataMaper.udpateElementRecibo(rm);
            }
        }
        private ObservableCollection <Model.Recibo.MovimientoModel> GetMovimientos(long unidRecibo)
        {
            ObservableCollection <Model.Recibo.MovimientoModel> recibos = new ObservableCollection <Model.Recibo.MovimientoModel>();

            try
            {
                ReciboDataMapper recDataMapper = new ReciboDataMapper();
                List <MOVIMENTO> listMovtos    = recDataMapper.GetListMovimiento(new RECIBO()
                {
                    UNID_RECIBO = unidRecibo
                });
                listMovtos.ForEach(m =>
                {
                    Model.Recibo.MovimientoModel mm = new Model.Recibo.MovimientoModel()
                    {
                        UnidMovimiento  = m.UNID_MOVIMIENTO,
                        OrigenProveedor = new OrigenProveedorModel()
                        {
                            UnidProveedor = m.PROVEEDOR.UNID_PROVEEDOR,
                            ProveedorName = m.PROVEEDOR.PROVEEDOR_NAME
                        },
                        DestinoAlmacen = new Model.Recibo.AlmacenModel()
                        {
                            UnidAlmacen = m.ALMACEN.UNID_ALMACEN,
                            AlmacenName = m.ALMACEN.ALMACEN_NAME,
                            Recibe      = m.ALMACEN.CONTACTO
                        },
                        FechaCaptura = m.FECHA_MOVIMIENTO,
                        Origen       = new OrigenProveedorModel()
                        {
                            UnidProveedor = m.PROVEEDOR.UNID_PROVEEDOR,
                            ProveedorName = m.PROVEEDOR.PROVEEDOR_NAME
                        },
                        Finished = m.FINISHED
                    };

                    ObservableCollection <Model.Recibo.ReciboItemModel> items = new ObservableCollection <ReciboItemModel>();

                    m.MOVIMIENTO_DETALLE.ToList().ForEach(md =>
                    {
                        items.Add(new ReciboItemModel()
                        {
                            UnidMovimientoDetalle = md.UNID_MOVIMIENTO_DETALLE,
                            UnidMovimiento        = md.UNID_MOVIMIENTO,
                            UnidItem      = md.ITEM.UNID_ITEM,
                            Sku           = md.ITEM.SKU,
                            NumeroSerie   = md.ITEM.NUMERO_SERIE,
                            CostoUnitario = md.ITEM.COSTO_UNITARIO,
                            Cantidad      = md.ITEM.CANTIDAD,
                            ItemStatus    = new ItemStatusModel(null)
                            {
                                ItemStatusName = md.ITEM.ITEM_STATUS.ITEM_STATUS_NAME, UnidItemStatus = md.ITEM.ITEM_STATUS.UNID_ITEM_STATUS
                            },
                            Articulo = new ArticuloModel()
                            {
                                UnidArticulo = md.ITEM.ARTICULO.UNID_ARTICULO,
                                ArticuloName = md.ITEM.ARTICULO.ARTICULO1,
                                Categoria    = md.ITEM.ARTICULO.CATEGORIA,
                                Equipo       = md.ITEM.ARTICULO.EQUIPO,
                                Marca        = md.ITEM.ARTICULO.MARCA,
                                Modelo       = md.ITEM.ARTICULO.MODELO,
                                EquipoModel  = new EquipoModel(null)
                                {
                                    EquipoName = md.ITEM.ARTICULO.EQUIPO.EQUIPO_NAME,
                                    UnidEquipo = md.ITEM.ARTICULO.EQUIPO.UNID_EQUIPO
                                }
                            },
                            FacturaDetalle = new FacturaCompraDetalleModel()
                            {
                                UnidFacturaCompraDetalle = md.ITEM.FACTURA_DETALLE.UNID_FACTURA_DETALE,
                                Factura = new FacturaCompraModel()
                                {
                                    UnidFactura     = md.ITEM.FACTURA_DETALLE.UNID_FACTURA,
                                    NumeroFactura   = md.ITEM.FACTURA_DETALLE.FACTURA.FACTURA_NUMERO,
                                    NumeroPedimento = md.ITEM.FACTURA_DETALLE.FACTURA.NUMERO_PEDIMENTO,
                                    FechaFactura    = (DateTime)md.ITEM.FACTURA_DETALLE.FACTURA.FECHA_FACTURA,
                                    PorIva          = (double)md.ITEM.FACTURA_DETALLE.FACTURA.IVA_POR,
                                    TC     = md.ITEM.FACTURA_DETALLE.FACTURA.TC,
                                    Moneda = new MonedaModel(null)
                                    {
                                        MonedaAbr = md.ITEM.FACTURA_DETALLE.FACTURA.MONEDA.MONEDA_ABR
                                    }
                                },
                                Cantidad        = md.ITEM.FACTURA_DETALLE.CANTIDAD,
                                CostoUnitario   = md.ITEM.FACTURA_DETALLE.PRECIO_UNITARIO,
                                CantidadElegida = md.ITEM.FACTURA_DETALLE.CANTIDAD
                            }
                        });

                        ObservableCollection <FacturaCompraDetalleModel> FacAux = new ObservableCollection <FacturaCompraDetalleModel>();

                        List <long> unids = new List <long>();

                        foreach (FACTURA_DETALLE df in md.ITEM.FACTURA_DETALLE.FACTURA.FACTURA_DETALLE)
                        {
                            if (!unids.Contains(df.UNID_FACTURA_DETALE))
                            {
                                FacturaCompraDetalleModel auxx = new FacturaCompraDetalleModel();
                                auxx.Cantidad      = df.CANTIDAD;
                                auxx.CostoUnitario = df.PRECIO_UNITARIO;
                                FacAux.Add(auxx);
                                unids.Add(df.UNID_FACTURA_DETALE);
                            }
                        }

                        mm.Factura = new FacturaCompraModel()
                        {
                            UnidFactura   = md.ITEM.FACTURA_DETALLE.UNID_FACTURA,
                            NumeroFactura = md.ITEM.FACTURA_DETALLE.FACTURA.FACTURA_NUMERO,

                            NumeroPedimento = md.ITEM.FACTURA_DETALLE.FACTURA.NUMERO_PEDIMENTO,
                            FechaFactura    = (DateTime)md.ITEM.FACTURA_DETALLE.FACTURA.FECHA_FACTURA,
                            PorIva          = (double)md.ITEM.FACTURA_DETALLE.FACTURA.IVA_POR,
                            TC     = md.ITEM.FACTURA_DETALLE.FACTURA.TC,
                            Moneda = new MonedaModel(null)
                            {
                                MonedaAbr = md.ITEM.FACTURA_DETALLE.FACTURA.MONEDA.MONEDA_ABR
                            },
                            FacturaDetalle = FacAux
                        };
                    });

                    mm.Items = items;
                    recibos.Add(mm);
                });
            }
            catch (Exception)
            {
                ;
            }

            return(recibos);
        }
        private void AttemptAddMovimientoCmd()
        {
            LoteModel lot = new LoteModel(new LoteDataMapper());

            lot.UnidLote = UNID.getNewUNID();
            lot.UnidPOM  = UNID.getNewUNID();
            lot.saveLote();
            //factura
            foreach (FacturaCompraModel item in this.Facturas)
            {
                item.UnidLote    = lot.UnidLote;
                item.UnidFactura = UNID.getNewUNID();
                item.saveFactura();
                //factura detalle
                foreach (FacturaCompraDetalleModel fac in item.FacturaDetalle)
                {
                    fac.Factura = item;
                    fac.saveFacturaDetalle();
                }
            }

            //Agregar recibo
            DAL.POCOS.RECIBO recibo = new DAL.POCOS.RECIBO()
            {
                UNID_RECIBO      = this.UnidRecibo,
                FECHA_CREACION   = this.FechaCreacion,
                TT               = this.TroubleTicket,
                PO               = this.PO,
                UNID_SOLICITANTE = (this.SelectedSolicitante.UnidSolicitante == 0) ? (long?)null : this.SelectedSolicitante.UnidSolicitante
            };
            ReciboDataMapper reciboDataMapper = new ReciboDataMapper();

            reciboDataMapper.insertElement(recibo, this.ActualUser);


            foreach (InventoryApp.Model.Recibo.MovimientoModel mov in this.Movimientos)
            {
                //Agregar movimiento
                DAL.POCOS.MOVIMENTO movimiento = new MOVIMENTO()
                {
                    UNID_MOVIMIENTO = mov.UnidMovimiento
                    ,
                    FECHA_MOVIMIENTO = mov.FechaCaptura
                    ,
                    UNID_ALMACEN_DESTINO = (mov.DestinoAlmacen != null) ? mov.DestinoAlmacen.UnidAlmacen : (long?)null
                    ,
                    UNID_ALMACEN_PROCEDENCIA = (mov.OrigenAlmacen != null) ? mov.OrigenAlmacen.UnidAlmacen : (long?)null
                    ,
                    UNID_CLIENTE_PROCEDENCIA = (mov.OrigenCliente != null) ? mov.OrigenCliente.UnidCliente : (long?)null
                    ,
                    UNID_PROVEEDOR_PROCEDENCIA = (mov.OrigenProveedor != null) ? mov.OrigenProveedor.UnidProveedor : (long?)null
                    ,
                    TT = this.TroubleTicket
                    ,
                    UNID_TIPO_MOVIMIENTO = MovimientoRecibo
                };
                MovimientoDataMapper movDataMapper = new MovimientoDataMapper();
                movDataMapper.insertElement(movimiento);

                foreach (InventoryApp.Model.Recibo.ReciboItemModel item in mov.Items)
                {
                    long?aux = null;
                    if (item.ItemStatus != null)
                    {
                        aux = item.ItemStatus.UnidItemStatus;
                    }

                    //Agregar el item
                    DAL.POCOS.ITEM pItem = new DAL.POCOS.ITEM()
                    {
                        UNID_ITEM = item.UnidItem
                        ,
                        SKU = item.Sku
                        ,
                        NUMERO_SERIE = item.NumeroSerie
                        ,
                        UNID_ITEM_STATUS = aux
                        ,
                        COSTO_UNITARIO = item.CostoUnitario
                        ,
                        UNID_FACTURA_DETALE = item.FacturaDetalle.UnidFacturaCompraDetalle
                        ,
                        UNID_ARTICULO = item.Articulo.UnidArticulo
                        ,
                        PEDIMENTO_EXPO = item.PedimentoExpo
                        ,
                        PEDIMENTO_IMPO = item.PedimentoImpo
                        ,
                        CANTIDAD = item.Cantidad
                        ,
                        IS_ACTIVE = true
                    };
                    ItemDataMapper itemDataMapper = new ItemDataMapper();
                    itemDataMapper.insertElement(pItem);

                    //Agregar detalle del movimiento
                    DAL.POCOS.MOVIMIENTO_DETALLE movDetalle = new DAL.POCOS.MOVIMIENTO_DETALLE()
                    {
                        UNID_MOVIMIENTO = mov.UnidMovimiento
                        ,
                        UNID_ITEM = item.UnidItem
                        ,
                        UNID_MOVIMIENTO_DETALLE = item.UnidMovimientoDetalle
                        ,
                        CANTIDAD = item.Cantidad
                        ,
                        UNID_ITEM_STATUS = item.ItemStatus.UnidItemStatus
                        ,
                        IS_ACTIVE = true
                    };
                    MovimientoDetalleDataMapper mdDataMapper = new MovimientoDetalleDataMapper();
                    mdDataMapper.insertElement(movDetalle);

                    //Actualizar el último movimiento
                    DAL.POCOS.ULTIMO_MOVIMIENTO ulitmoMovto = new DAL.POCOS.ULTIMO_MOVIMIENTO()
                    {
                        UNID_ITEM               = item.UnidItem,
                        UNID_ALMACEN            = mov.DestinoAlmacen.UnidAlmacen,
                        UNID_MOVIMIENTO_DETALLE = item.UnidMovimientoDetalle,
                        CANTIDAD         = item.Cantidad,
                        UNID_ITEM_STATUS = item.ItemStatus.UnidItemStatus,
                        IS_ACTIVE        = false
                    };
                    UltimoMovimientoDataMapper umDataMapper = new UltimoMovimientoDataMapper();
                    umDataMapper.udpateElement(ulitmoMovto);
                }

                //Agregar recibodetalle
                DAL.POCOS.RECIBO_MOVIMIENTO rm = new DAL.POCOS.RECIBO_MOVIMIENTO()
                {
                    UNID_RECIBO            = this._UnidRecibo,
                    UNID_RECIBO_MOVIMIENTO = mov.UnidMovimiento,
                    UNID_MOVIMIENTO        = mov.UnidMovimiento,
                    UNID_FACTURA           = mov.Items.First().FacturaDetalle.Factura.UnidFactura
                };
                ReciboMovimientoDataMapper rmDataMaper = new ReciboMovimientoDataMapper();
                rmDataMaper.insertElement(rm);
            }

            if (this._CatalogReciboViewModel != null)
            {
                this._CatalogReciboViewModel.updateCollection();
            }
        }