public static void Registro() { foreach (var archivo in ActiveRecordBase <ConsumoDto> .FindAllByProperty("Procesado", false)) { var documento = HelperPersona.GetPersona( archivo.Cuit, archivo.TipoCliente, archivo.RazonSocial, archivo.NombrePersona, archivo.NroDocumento, archivo.Empresa); var cliente = HelperCuenta.GetCuenta( archivo.Cuit, archivo.NroDocumento, archivo.Empresa); using (var transac = new TransactionScope()) try { var puntos = HelperPuntos.GetPuntos(archivo.Empresa, archivo.FechaHoraComprobante, archivo.ImportePesosNetoImpuestos); double acelerador = Double.Parse(archivo.Coeficiente) / 100; puntos = acelerador > 0 ? acelerador * puntos : puntos; var cuenta = new CuentaCorrienteDto { FechaCompra = archivo.FechaHoraComprobante.Date, HoraCompra = DateTime.Now, Key = new KeyCuenta { CodEmpresa = archivo.Empresa, NumeroComprobante = archivo.NroComprobante }, MontoCompra = archivo.ImportePesosNetoImpuestos, Movimiento = puntos >= 0 ? HelperMovimiento.FindMovimiento("Suma De Puntos") : HelperMovimiento.FindMovimiento("Anulación Carga"), NumeroDocumento = documento, NumeroCuenta = cliente, Puntos = puntos, Sucursal = HelperSucursal.GetSucursal(), Usuario = "web", Programa = archivo.Programa, Secretaria = archivo.Secretaria, Coeficiente = archivo.Coeficiente }; cuenta.Save(); transac.VoteCommit(); } catch (Exception ex) { archivo.Error = ex.Message; Log.Fatal(ex); transac.VoteRollBack(); } archivo.Procesado = true; archivo.Save(); } }
internal bool Validate() { try { var documento = HelperPersona.GetPersona( Cuit, TipoCliente, RazonSocial, NombrePersona, NroDocumento, Empresa); var cliente = HelperCuenta.GetCuenta( Cuit, NroDocumento, Empresa); var puntos = HelperPuntos.GetPuntos(Empresa, FechaHoraComprobante, ImportePesosNetoImpuestos); double acelerador = Double.Parse(Coeficiente) / 100; puntos = acelerador > 0 ? acelerador * puntos : puntos; var cuenta = new CuentaCorrienteDto { FechaCompra = FechaHoraComprobante.Date, HoraCompra = DateTime.Now, Key = new KeyCuenta { CodEmpresa = Empresa, NumeroComprobante = NroComprobante }, MontoCompra = ImportePesosNetoImpuestos, Movimiento = puntos >= 0 ? HelperMovimiento.FindMovimiento("Suma De Puntos") : HelperMovimiento.FindMovimiento("Anulación Carga"), NumeroDocumento = documento, NumeroCuenta = cliente, Puntos = puntos, Sucursal = HelperSucursal.GetSucursal(), Usuario = "web", Programa = Programa, Secretaria = Secretaria, Coeficiente = Coeficiente }; return(true); } catch { return(false); } }