public EntornoDeTrabajo(GestorDeTrabajosDeUsuario gestorDelEntorno, TrabajoDeUsuarioDtm trabajoUsuario) { TrabajoDeUsuario = trabajoUsuario; gestorDelEntorno.Contexto.EsElContextosDeUnEntorno = true; TrabajoSometido = gestorDelEntorno.Contexto.Set <TrabajoSometidoDtm>().AsNoTracking().First(p => p.Id.Equals(trabajoUsuario.IdTrabajo)); Sometedor = gestorDelEntorno.Contexto.Set <UsuarioDtm>().AsNoTracking().First(p => p.Id.Equals(trabajoUsuario.IdSometedor)); Ejecutor = gestorDelEntorno.Contexto.Set <UsuarioDtm>().AsNoTracking().First(p => p.Id.Equals(trabajoUsuario.IdEjecutor)); gestorDelEntorno.Contexto.NombreDelTrabajo = TrabajoSometido.Nombre; GestorDelEntorno = gestorDelEntorno; }
public static Task ProcesarCola(this GestorDeTrabajosDeUsuario gestorDelEntorno, UsuarioDtm usuario) { CumplimentarDatosDeConexion(gestorDelEntorno, usuario); var trabajosPorEjecutar = LeerTrabajoPendiente(); if (trabajosPorEjecutar.Count == 1) { bool trazar = CacheDeVariable.Cola_Trazar; if (trazar) { gestorDelEntorno.Contexto.IniciarTraza(trabajosPorEjecutar[0].Nombre); } try { GestorDeTrabajosDeUsuario.Iniciar(gestorDelEntorno.Contexto, trabajosPorEjecutar[0].Id, true); if (trazar) { gestorDelEntorno.Contexto.CerrarTraza("Trabajo finalizado correctamente"); } } catch { if (trazar) { gestorDelEntorno.Contexto.CerrarTraza("Trabajo finalizado con errores"); } } } var gestorDeCorreos = GestorDeCorreos.Gestor(gestorDelEntorno.Contexto, gestorDelEntorno.Contexto.Mapeador); gestorDeCorreos.EnviarCorreoPendientesAsync(); TrabajosDeEntorno.SometerBorrarTrazas(gestorDelEntorno.Contexto); return(Task.FromResult(new ResultadoDelProceso(true))); }
private static void CumplimentarDatosDeConexion(GestorDeTrabajosDeUsuario gestor, UsuarioDtm usuario) { gestor.Contexto.DatosDeConexion.IdUsuario = usuario.Id; gestor.Contexto.DatosDeConexion.EsAdministrador = usuario.EsAdministrador; gestor.Contexto.DatosDeConexion.Login = usuario.Login; }