// Start is called before the first frame update void Start() { for (int i = 0; i < condicionsScriptable.condicions.Count; i++) { if (condicionsScriptable.condicions[i].descripcio == descripcioCondicio) { condicio = condicionsScriptable.condicions[i]; } } }
public bool ComprovaCondicioBaseDades(Condicio condicio) { Condicio condicioSeleccionada = null; for (int i = 0; i < condicions.Count; i++) { if (condicions[i].descripcio == condicio.descripcio) { condicioSeleccionada = condicions[i]; } } if (condicioSeleccionada == null) { return(false); } return(condicioSeleccionada.estat == condicio.estat); }
private void ValidarFactura(EncabFacturaVenta obj, string empresaDB) { using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB)); Utilitarios utilitarios = new Utilitarios(); #region Verificar cliente cliente = new ClientesRepositorio().GetCliente(obj.CoCli, empresaDB); if (cliente == null) { throw new ArgumentException($"El cliente {obj.CoCli.Trim()} indicado para la factura no existe."); } else { if (cliente.Inactivo) { throw new ArgumentException($"El cliente {obj.CoCli.Trim()} indicado para la factura se encuentra inactivo."); } } #endregion #region Verificar vendedor Vendedor vendor = new VendedoresRepositorio().Find(obj.CoVen, empresaDB); if (vendor != null) { if (!vendor.FunVen) { throw new ArgumentException($"Vendedor {obj.CoVen} indicado no tiene función de 'vendedor'."); } } else { throw new ArgumentException($"El vendedor {obj.CoVen} suministrado no existe."); } #endregion #region Verificar transporte Transpor transporte = db.Transpor.FirstOrDefault(t => t.CoTran == obj.CoTran); if (transporte == null) { throw new ArgumentException($"El transporte {obj.CoTran} suministrado no existe."); } #endregion #region Verificar condicion de pago Condicio condicion = db.Condicio.FirstOrDefault(c => c.CoCond == obj.FormaPag); if (condicion == null) { throw new ArgumentException($"La condición de pago {obj.FormaPag} suministrado no existe."); } #endregion #region Verificar moneda utilitarios.GetMoneda(obj.Moneda, empresaDB); #endregion #region Verificar sucursal utilitarios.GetSucursal(obj.CoSucu, empresaDB); #endregion #region Verificar datos en renglones de factura foreach (var iRengFac in obj.DetaFacturaVenta) { #region Verificar articulo Art articulo = db.Art.FirstOrDefault(a => a.CoArt == iRengFac.CoArt); if (articulo == null) { throw new ArgumentException($"El artículo {iRengFac.CoArt.Trim()} suministrado en el renglón {iRengFac.RengNum} no existe."); } #endregion #region Verificar almacen SubAlma almacen = db.SubAlma.FirstOrDefault(a => a.CoSub == iRengFac.CoAlma); if (almacen == null) { throw new ArgumentException($"El almacén {iRengFac.CoAlma.Trim()} suministrado en el renglón {iRengFac.RengNum} no existe."); } else { if (almacen.CoAlma.Trim() != obj.CoSucu.Trim()) { throw new ArgumentException($"El almacén {iRengFac.CoAlma.Trim()} suministrado en el renglón {iRengFac.RengNum} no está permitido utilizarlo en la sucursal suministrada {obj.CoSucu.Trim()}."); } if (almacen.Noventa) { throw new ArgumentException($"El almacén {iRengFac.CoAlma.Trim()} suministrado en el renglón {iRengFac.RengNum} no está permitido utilizarlo en el módulo de facturas."); } } #endregion #region Verificar unidad primaria Unidades unidad = db.Unidades.FirstOrDefault(u => u.CoUni == iRengFac.UniVenta); if (unidad == null) { throw new ArgumentException($"La unidad de venta {iRengFac.UniVenta.Trim()} suministrada en el renglón {iRengFac.RengNum} no existe."); } #endregion } #endregion }
private void ValidarDevolucion(EncabDevolucionVenta obj, string empresaDB) { using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB)); Utilitarios utilitarios = new Utilitarios(); #region Verificar caja ppal para el cobro caja = db.Cajas.FirstOrDefault(c => c.Cajapri == true); if (caja == null) { throw new ArgumentException("No existe una caja principal para la cancelación del cobro. Llame a su consultor profit."); } #endregion #region Verificar cliente cliente = new ClientesRepositorio().GetCliente(obj.CoCli, empresaDB); if (cliente == null) { throw new ArgumentException($"El cliente {obj.CoCli.Trim()} indicado para la devolución no existe."); } else { if (cliente.Inactivo) { throw new ArgumentException($"El cliente {obj.CoCli.Trim()} indicado para la devolución se encuentra inactivo."); } } #endregion #region Verificar vendedor Vendedor vendor = new VendedoresRepositorio().Find(obj.CoVen, empresaDB); if (vendor != null) { if (!vendor.FunVen) { throw new ArgumentException($"Vendedor {obj.CoVen} indicado no tiene función de 'vendedor'."); } if (!vendor.FunCob) { throw new ArgumentException($"Vendedor {obj.CoVen} indicado no tiene función de 'cobrador'."); } } else { throw new ArgumentException($"El vendedor {obj.CoVen} suministrado no existe."); } #endregion #region Verificar transporte Transpor transporte = db.Transpor.FirstOrDefault(t => t.CoTran == obj.CoTran); if (transporte == null) { throw new ArgumentException($"El transporte {obj.CoTran} suministrado no existe."); } #endregion #region Verificar condicion de pago Condicio condicion = db.Condicio.FirstOrDefault(c => c.CoCond == obj.FormaPag); if (condicion == null) { throw new ArgumentException($"La condición de pago {obj.FormaPag} suministrado no existe."); } #endregion #region Verificar moneda utilitarios.GetMoneda(obj.Moneda, empresaDB); #endregion #region Verificar sucursal utilitarios.GetSucursal(obj.CoSucu, empresaDB); #endregion #region Verificar datos en renglones de factura foreach (var iRengFac in obj.DetaDevolucionVenta) { #region Verificar factura factura = new FacturasVentasRepositorio().Find(iRengFac.NumDoc, empresaDB); if (factura == null) { throw new ArgumentException($"La factura {iRengFac.NumDoc} indicada en el renglón {iRengFac.RengNum} en la devolución de cliente no existe."); } if (factura.Anulada) { throw new ArgumentException($"La factura {iRengFac.NumDoc} indicada en el renglón {iRengFac.RengNum} en la devolución de cliente se encuentra anulada."); } if (factura.Saldo == 0) { throw new ArgumentException($"La factura {iRengFac.NumDoc} indicada en el renglón {iRengFac.RengNum} se encuentra procesada [Saldo=0.00]."); } if (factura.Saldo < iRengFac.RengNeto) { throw new ArgumentException($"La factura {iRengFac.NumDoc} tiene un saldo menor al monto indicado en el renglón {iRengFac.RengNum}."); } if (factura.DetaFacturaVenta.FirstOrDefault(ra => ra.CoArt.Trim() == iRengFac.CoArt.Trim()) == null) { throw new ArgumentException($"El artículo {iRengFac.CoArt.Trim()} indicado en el renglón {iRengFac.RengNum} no se encontró en la factura."); } #endregion #region Verificar articulo Art articulo = new ArticulosRepositorio().Find(iRengFac.CoArt, empresaDB); if (articulo == null) { throw new ArgumentException($"El artículo {iRengFac.CoArt.Trim()} suministrado en el renglón {iRengFac.RengNum} no existe."); } #endregion #region Verificar almacen SubAlma almacen = db.SubAlma.FirstOrDefault(a => a.CoSub == iRengFac.CoAlma); if (almacen == null) { throw new ArgumentException($"El almacén {iRengFac.CoAlma.Trim()} suministrado en el renglón {iRengFac.RengNum} no existe."); } else { if (almacen.CoAlma.Trim() != obj.CoSucu.Trim()) { throw new ArgumentException($"El almacén {iRengFac.CoAlma.Trim()} suministrado en el renglón {iRengFac.RengNum} no está permitido utilizarlo en la sucursal suministrada {obj.CoSucu.Trim()}."); } if (almacen.Noventa) { throw new ArgumentException($"El almacén {iRengFac.CoAlma.Trim()} suministrado en el renglón {iRengFac.RengNum} no está permitido utilizarlo en el módulo de facturas."); } } #endregion #region Verificar unidad primaria Unidades unidad = db.Unidades.FirstOrDefault(u => u.CoUni == iRengFac.UniVenta); if (unidad == null) { throw new ArgumentException($"La unidad de venta {iRengFac.UniVenta.Trim()} suministrada en el renglón {iRengFac.RengNum} no existe."); } #endregion } #endregion }