public static ResAcc VentaGarantia(VentaGarantia oGarantia) { // Se generan datos predeterminados o globales, en caso de que apliquen oGarantia.Fecha = (oGarantia.Fecha != DateTime.MinValue ? oGarantia.Fecha : DateTime.Now); oGarantia.SucursalID = (oGarantia.SucursalID > 0 ? oGarantia.SucursalID : Theos.SucursalID); // Se guarda la devolución Datos.Guardar <VentaGarantia>(oGarantia); // Se afectan los datos en el detalle de la venta // Se quita el producto de la venta, si aplica if (oGarantia.AccionID != Cat.VentasGarantiasAcciones.RevisionDeProveedor) { var oParteVenta = Datos.GetEntity <VentaDetalle>(q => q.Estatus && q.VentaID == oGarantia.VentaID && q.ParteID == oGarantia.ParteID && q.PrecioUnitario == oGarantia.PrecioUnitario && q.Iva == oGarantia.Iva); if (oParteVenta.Cantidad > 1) { oParteVenta.Cantidad--; Datos.Guardar <VentaDetalle>(oParteVenta); } else { Datos.Eliminar <VentaDetalle>(oParteVenta, true); } } return(new ResAcc(true)); }
public static void BorrarTemporal(string sProceso, int iId) { var oTemp = Datos.GetEntity <Temporal>(c => c.Proceso == sProceso && c.Identificador == iId); if (oTemp != null) { Datos.Eliminar <Temporal>(oTemp); } }
public static void EliminarPagosVenta(int iVentaID) { var oPagos = Datos.GetListOf <VentaPago>(c => c.VentaID == iVentaID && c.Estatus); foreach (var oPago in oPagos) { var oPagoDet = Datos.GetListOf <VentaPagoDetalle>(c => c.VentaPagoID == oPago.VentaPagoID && c.Estatus); foreach (var oPagoForma in oPagoDet) { Datos.Eliminar <VentaPagoDetalle>(oPagoForma, true); } Datos.Eliminar <VentaPago>(oPago, true); } }
public static void EliminarVenta(int iVentaID) { var oVenta = Datos.GetEntity <Venta>(q => q.VentaID == iVentaID && q.Estatus); // De momento sólo están contempladas las ventas que sólo han sido registradas. No cobradas, pagadas, canceladas if (oVenta.VentaEstatusID != Cat.VentasEstatus.Realizada) { return; } var oVentaDet = Datos.GetListOf <VentaDetalle>(q => q.VentaID == oVenta.VentaID && q.Estatus); // Se regresa la existencia y se borra el detalle de la venta foreach (var oParteDet in oVentaDet) { AdmonProc.AgregarExistencia(oParteDet.ParteID, oVenta.SucursalID, oParteDet.Cantidad, Cat.Tablas.Venta, iVentaID); Datos.Eliminar <VentaDetalle>(oParteDet, true); } // Se borra la venta en sí Datos.Eliminar <Venta>(oVenta, true); // Se borran los datos del kardex var oPartesKardex = Datos.GetListOf <ParteKardex>(c => c.OperacionID == Cat.OperacionesKardex.Venta && c.RelacionTabla == Cat.Tablas.Venta && c.RelacionID == iVentaID); foreach (var oReg in oVentaDet) { var oKardex = oPartesKardex.FirstOrDefault(c => c.ParteID == oReg.ParteID); if (oKardex == null) { continue; } Datos.Eliminar <ParteKardex>(oKardex); // Se verifica si hubo algún otro movimiento en kardex de la misma parte, para hacer el reajuste var oDespues = Datos.GetListOf <ParteKardex>(c => c.ParteKardexID > oKardex.ParteKardexID && c.ParteID == oKardex.ParteID); foreach (var oRegD in oDespues) { oRegD.ExistenciaNueva += (oKardex.Cantidad * -1); Datos.Guardar <ParteKardex>(oRegD); } } }
public static ResAcc EliminarParte(int iParteID) { // Se borran los registros MaxMin var oMaxMins = Datos.GetListOf <ParteMaxMin>(q => q.ParteID == iParteID); foreach (var oParteMM in oMaxMins) { Datos.Eliminar <ParteMaxMin>(oParteMM, false); } // Se borran los registros de existencias var oExistencias = Datos.GetListOf <ParteExistencia>(q => q.ParteID == iParteID && q.Estatus); foreach (var oParteEx in oExistencias) { Datos.Eliminar <ParteExistencia>(oParteEx, true); } // Se borran los datos del precio var oPartePrecio = Datos.GetEntity <PartePrecio>(q => q.ParteID == iParteID && q.Estatus); if (oPartePrecio != null) { Datos.Eliminar <PartePrecio>(oPartePrecio, true); } // Se borra el registro de la parte var oParte = Datos.GetEntity <Parte>(q => q.ParteID == iParteID && q.Estatus); if (oParte != null) { Datos.Eliminar <Parte>(oParte, true); } return(new ResAcc(true)); }
public static ResAcc Eliminar <T>(T oObjeto) where T : EntityObject { return(Datos.Eliminar <T>(oObjeto, false)); }