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(); } }
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()); }