예제 #1
0
        protected async override Task EliminarElemento()
        {
            await ApiProcessor.DeleteApi($"JornalMaterial/{JornalMaterial.Id}");

            StockHelper.AgregarStock(JornalMaterial.MaterialId, JornalMaterial.CantidadUsado);
            await Inicializar();
        }
        private async void GenerarComprobante()
        {
            if (Retencion >= 0 && IVA >= 0 && Descuento >= 0 && Percepcion >= 0 && Subtotal > 0 && Retencion >= 0 && (!TieneProv || Comprobante.Proveedor != null))
            {
                var ultimoComprobante = await ApiProcessor.GetApi <int>("ComprobanteCompra/GetUltimo");

                Comprobante.Recargos  = Recargos;
                Comprobante.Descuento = Descuento;
                Comprobante.Iva       = IVA;
                Comprobante.Monto     = Subtotal;
                if (Comprobante.Obra != null)
                {
                    Comprobante.ObraId = Comprobante.Obra.Id;
                }
                Comprobante.Percepciones = Percepcion;
                Comprobante.Retenciones  = Retencion;
                if (TieneProv)
                {
                    Comprobante.ProveedorId = Comprobante.Proveedor.Id;
                    Comprobante.cuit        = Comprobante.Proveedor.Cuit;
                }
                else
                {
                    Comprobante.ProveedorId = null;
                    Comprobante.cuit        = Cuit;
                }
                Comprobante.Pagado        = false;
                Comprobante.NumeroCompra  = ultimoComprobante;
                Comprobante.EstaEliminado = false;

                regionManager.RequestNavigate("Contenido", "Compra");
                await ApiProcessor.PostApi(Comprobante, "ComprobanteCompra/Insert");

                foreach (var i in DetallesComprobante)
                {
                    StockHelper.AgregarStock(i.MaterialId, Cantidad);
                    await ApiProcessor.PostApi <DetalleComprobanteDto>(i, "DetalleComprobante/Insert");
                }
                MessageBox.Show("Carga de materiales exitosa");
            }
            else
            {
                MessageBox.Show("Faltan ingresar datos");
            }
        }