public void saveArticulo()
        {
            if (_dataMapper != null)
            {
                ITEM item = new ITEM();
                item.UNID_ITEM = this.UnidItem;
                ULTIMO_MOVIMIENTO tmp = new ULTIMO_MOVIMIENTO();

                if (this._unidAlmacen != null)
                {
                    ALMACEN almacen = new ALMACEN();
                    almacen.UNID_ALMACEN = (long)this._unidAlmacen;
                    tmp = this._dataMapper.getCantidadItems(item, almacen);
                }
                else if (this._unidProveedor != null)
                {
                    PROVEEDOR proveedor = new PROVEEDOR();
                    proveedor.UNID_PROVEEDOR = (long)this._unidProveedor;
                    tmp = this._dataMapper.getCantidadItems(item, proveedor);
                }
                else if (this._unidCliente != null)
                {
                    CLIENTE cliente = new CLIENTE();
                    cliente.UNID_CLIENTE = (long)this._unidCliente;
                    tmp = this._dataMapper.getCantidadItems(item, cliente);
                }
                else if (this._unidInfraestructura != null)
                {
                    INFRAESTRUCTURA infraestructura = new INFRAESTRUCTURA();
                    infraestructura.UNID_INFRAESTRUCTURA = (long)this._unidInfraestructura;
                    tmp = this._dataMapper.getCantidadItems(item, infraestructura);
                }

                this._cantidad += tmp.CANTIDAD;

                if (tmp.UNID_ULTIMO_MOVIMIENTO == 0)
                {
                    _dataMapper.insertElement(new ULTIMO_MOVIMIENTO {
                        UNID_ITEM = this._unidItem, UNID_ALMACEN = this._unidAlmacen, UNID_CLIENTE = this.UnidCliente, UNID_MOVIMIENTO_DETALLE = this._unidMovimientoDetalle, UNID_PROVEEDOR = this._unidProveedor, UNID_INFRAESTRUCTURA = this._unidInfraestructura, IS_ACTIVE = true, CANTIDAD = this._cantidad, UNID_ITEM_STATUS = this._unidItemStatus
                    });
                }
                else
                {
                    _dataMapper.udpateElement2(new ULTIMO_MOVIMIENTO {
                        UNID_ULTIMO_MOVIMIENTO = tmp.UNID_ULTIMO_MOVIMIENTO, UNID_ITEM = this._unidItem, UNID_ALMACEN = this._unidAlmacen, UNID_CLIENTE = this.UnidCliente, UNID_MOVIMIENTO_DETALLE = this._unidMovimientoDetalle, UNID_PROVEEDOR = this._unidProveedor, UNID_INFRAESTRUCTURA = this._unidInfraestructura, IS_ACTIVE = true, CANTIDAD = this._cantidad, UNID_ITEM_STATUS = this._unidItemStatus
                    });
                }

                //_dataMapper.insertElement(new MOVIMENTO() { UNID_MOVIMIENTO = this._unidMovimiento, FECHA_MOVIMIENTO = this._fechaMovimiento, UNID_TIPO_MOVIMIENTO = this._tipoMovimiento.UNID_TIPO_MOVIMIENTO, UNID_ALMACEN_DESTINO = this._almacenDestino.UNID_ALMACEN, UNID_PROVEEDOR_DESTINO = this._proveedorDestino.UNID_PROVEEDOR, UNID_CLIENTE_DESTINO = this._clienteDestino.UNID_CLIENTE, UNID_ALMACEN_PROCEDENCIA = this._almacenProcedencia.UNID_ALMACEN, UNID_CLIENTE_PROCEDENCIA = this._clienteProcedencia.UNID_CLIENTE, UNID_PROVEEDOR_PROCEDENCIA = this._proveedorProcedencia.UNID_PROVEEDOR, UNID_SERVICIO = this._servicio.UNID_SERVICIO, TT = this._tt, CONTACTO = this._contacto, UNID_TRANSPORTE = this._transporte.UNID_TRANSPORTE, IS_ACTIVE = this._isActive, DIRECCION_ENVIO = this._direccionEnvio, SITIO_ENLACE = this._sitioEnlace, NOMBRE_SITIO = this._nombreSitio, RECIBE = this._recibe, GUIA = this._guia, UNID_CLIENTE = this._cliente.UNID_CLIENTE, UNID_PROVEEDOR = this._proveedor.UNID_PROVEEDOR, UNID_FACTURA_VENTA = this._facturaVenta.UNID_FACTURA_VENTA });
                //_dataMapper.udpateElement(new ULTIMO_MOVIMIENTO { UNID_ITEM = this._unidItem, UNID_ALMACEN = this._unidAlmacen, UNID_CLIENTE = this.UnidCliente, UNID_MOVIMIENTO_DETALLE = this._unidMovimientoDetalle, UNID_PROVEEDOR = this._unidProveedor, UNID_INFRAESTRUCTURA = this._unidInfraestructura, IS_ACTIVE = true, CANTIDAD = this._cantidad });
                //_dataMapper.udpateElement2(new ULTIMO_MOVIMIENTO { UNID_ITEM = this._unidItem, UNID_ALMACEN = this._unidAlmacen, UNID_CLIENTE = this.UnidCliente, UNID_MOVIMIENTO_DETALLE = this._unidMovimientoDetalle, UNID_PROVEEDOR = this._unidProveedor, UNID_INFRAESTRUCTURA = this._unidInfraestructura, IS_ACTIVE = true, CANTIDAD = this._cantidad });
            }
        }
Exemple #2
0
        public void AttempGuardar()
        {
            //Agregar Factura detalle
            FacturaCompraDetalleModel fd = new FacturaCompraDetalleModel();

            fd.UnidFacturaCompraDetalle = UNID.getNewUNID();
            fd.Factura               = new FacturaCompraModel();
            fd.Factura.UnidFactura   = FacturaCollection[0].UnidFactura;
            fd.Articulo              = new ArticuloModel();
            fd.Articulo.UnidArticulo = ItemModelCollection[0].Articulo.UNID_ARTICULO;
            fd.Cantidad              = ItemModelCollection[0].CantidadItem;
            fd.CostoUnitario         = ItemModelCollection[0].CostoUnitario;
            fd.ImpuestoUnitario      = FacturaCollection[0].PorIva;
            fd.Unidad            = new UnidadModel(null);
            fd.Unidad.UnidUnidad = ItemModelCollection[0].UnidUnidad;
            fd.saveFacturaDetalle();

            //Agregar el item
            DAL.POCOS.ITEM pItem = new DAL.POCOS.ITEM()
            {
                UNID_ITEM = UNID.getNewUNID()
                ,
                SKU = ItemModel.Sku
                ,
                NUMERO_SERIE = ItemModel.NumeroSerie
                ,
                UNID_ITEM_STATUS = UltimoMovimiento[0].ItemStatus2.UNID_ITEM_STATUS
                ,
                COSTO_UNITARIO = ItemModelCollection[0].CostoUnitario
                ,
                UNID_FACTURA_DETALE = fd.UnidFacturaCompraDetalle
                ,
                UNID_ARTICULO = ItemModelCollection[0].Articulo.UNID_ARTICULO
                ,
                PEDIMENTO_EXPO = 0
                ,
                PEDIMENTO_IMPO = 0
                ,
                CANTIDAD = ItemModelCollection[0].CantidadItem
                ,
                IS_ACTIVE = true
                ,
                UNID_PROPIEDAD = ItemModelCollection[0].Propiedad.UNID_PROPIEDAD
            };
            ItemDataMapper itemDataMapper = new ItemDataMapper();

            itemDataMapper.insertElement(pItem);

            //Agregar movimiento Dummy
            DAL.POCOS.MOVIMENTO mov = new DAL.POCOS.MOVIMENTO()
            {
                UNID_MOVIMIENTO = UNID.getNewUNID()
                ,
                FECHA_MOVIMIENTO = DateTime.Now
                ,
                UNID_TIPO_MOVIMIENTO = 16
                ,
                IS_ACTIVE = false
                ,
                IS_MODIFIED = true
            };
            MovimientoDataMapper movDataMapper = new MovimientoDataMapper();

            movDataMapper.insertElement(mov);

            foreach (UltimoMovimientoModel um in UltimoMovimiento)
            {
                //Agregar detalle del movimiento
                DAL.POCOS.MOVIMIENTO_DETALLE movDetalle = new DAL.POCOS.MOVIMIENTO_DETALLE()
                {
                    UNID_MOVIMIENTO = mov.UNID_MOVIMIENTO
                    ,
                    UNID_ITEM = pItem.UNID_ITEM
                    ,
                    UNID_MOVIMIENTO_DETALLE = UNID.getNewUNID()
                    ,
                    CANTIDAD = um.Cantidad
                    ,
                    UNID_ITEM_STATUS = um.ItemStatus2.UNID_ITEM_STATUS
                    ,
                    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               = pItem.UNID_ITEM,
                    UNID_ALMACEN            = um.UnidAlmacen,
                    UNID_PROVEEDOR          = um.UnidProveedor,
                    UNID_CLIENTE            = um.UnidCliente,
                    UNID_MOVIMIENTO_DETALLE = movDetalle.UNID_MOVIMIENTO_DETALLE,
                    CANTIDAD         = um.Cantidad,
                    UNID_ITEM_STATUS = um.ItemStatus2.UNID_ITEM_STATUS,
                    IS_ACTIVE        = true
                };
                UltimoMovimientoDataMapper umDataMapper = new UltimoMovimientoDataMapper();
                umDataMapper.insertElement(ulitmoMovto);
            }

            MessageBox.Show("Se ha agregado el Item correctamente");

            this.ItemModel.NumeroSerie = "";
            this.ItemModel.Sku         = "";
            this.CatalogPropiedad.Propiedad.Clear();

            this.CatalogProveedor.Proveedor.Clear();
            this.UltimoMovimiento.Clear();

            this.FillWithItemDetallesAnterior = true;
            this.FillWithDestinos             = false;
            this.FillWithDestinos2            = false;
            this.FillWithIFactura             = false;
            this.FillWithItemDetalles         = false;

            this.Sku         = null;
            this.NumeroSerie = null;
            this.Error       = null;

            this.ItemModel           = new AgregarItemModel();
            this.ItemModelCollection = new ObservableCollection <AgregarItemModel>();
            this.Factura             = new FacturaCompraModel();
            this.FacturaCollection   = new ObservableCollection <FacturaCompraModel>();
            this.CatalogProveedor    = new CatalogProveedorModel(new ProveedorDataMapper());
            if (this.CatalogProveedor != null && this.CatalogProveedor.Proveedor.Count > 1)
            {
                this.ItemModel.Proveedor = this.CatalogProveedor.Proveedor[1];
            }

            this.CatalogStatus    = new CatalogItemStatusModel(new ItemStatusDataMapper());
            this.UltimoMovimiento = new ObservableCollection <UltimoMovimientoModel>();
            this.CatalogPropiedad = new CatalogPropiedadModel(new PropiedadDataMapper());
        }