public void CreateProfile(Profile profile) { var jobD = new JobDirectory { Date = DateTime.UtcNow, Description = profile.JobDirectory.Description, MinSalary = profile.JobDirectory.MinSalary, MaxSalary = profile.JobDirectory.MaxSalary, State = "Создано" }; _db.JobDirectories.Add(jobD); _db.SaveChanges(); var currentUser = HttpContext.Current.User.Identity.Name; var user = _db.AspNetUsers.FirstOrDefault(x => x.UserName == currentUser); if (user == null) { throw new Exception("Пользователь не найден"); } var profileEntity = new Profile { Date = DateTime.Now, PersonId = user.People.FirstOrDefault(x => x.UserId == user.Id).PersonId, State = "Заявление создано", SpecialityId = profile.SpecialityId, JobDirectoryId = jobD.JobDirectoryId }; _db.Profiles.Add(profileEntity); _db.SaveChanges(); }
public void CreateApplication(Application app) { logger.Debug("Создание Job Directory"); JobDirectory jobDirectory = new JobDirectory { Date = DateTime.UtcNow, MaxSalary = app.JobDirectory.MaxSalary, MinSalary = app.JobDirectory.MinSalary, State = AppState.Draft, Description = app.JobDirectory.Description }; logger.Debug("Сохранение Job Directory"); _db.JobDirectories.Add(jobDirectory); _db.SaveChanges(); logger.Debug("Создание компании"); Company company = new Company { Name = app.Company.Name, City = app.Company.City, Country = app.Company.Country, HouseNumber = app.Company.HouseNumber, Street = app.Company.Street, ApartmentNumber = app.Company.ApartmentNumber }; _db.Companies.Add(company); _db.SaveChanges(); logger.Debug("Сохранение информации о компании"); logger.Debug("Создание заявления"); Application appEntity = new Application { Date = DateTime.UtcNow, JobDirectoryId = jobDirectory.JobDirectoryId, SpecialityId = app.SpecialityId, Duties = app.Duties, Requirements = app.Requirements, State = AppState.Draft, CompanyId = company.CompanyId }; logger.Debug("Создание заявления"); _db.Applications.Add(appEntity); _db.SaveChanges(); }
public void CleanOldJobs(string key) { if (key != ScheduleConfiguration.TaskKey) { throw new HttpResponseException(HttpStatusCode.Forbidden); } TimeSpan oldJobExpiryInterval = TimeSpan.FromSeconds(TranscodingConfiguration.JobExpiryIntervalSeconds); foreach (DirectoryInfo jobDirectory in JobDirectory.EnumerateDirectories("*", SearchOption.TopDirectoryOnly)) { if (DateTime.UtcNow - jobDirectory.CreationTimeUtc > oldJobExpiryInterval) { try { jobDirectory.Delete(true); } catch { } } } }
/// <summary> /// Erzeugt eine neue Verwaltungsinstanz und lädt die aktuellen Auftragsliste. /// </summary> /// <param name="rootDirectory">Meldet das Verzeichnis, unterhalb dessen alle /// Aufträge und Protokolle angelegt werden.</param> /// <param name="server">Die VCR.NET Instanz, der diese Verwaltung zugeordnet ist.</param> internal JobManager(DirectoryInfo rootDirectory, VCRServer server) { // Remember RootDirectory = rootDirectory; Server = server; // Create root directory RootDirectory.Create(); // Create working directories CollectorDirectory.Create(); ArchiveDirectory.Create(); JobDirectory.Create(); LogDirectory.Create(); // Load all jobs foreach (var job in VCRJob.Load(JobDirectory)) { if (job.UniqueID.HasValue) { m_Jobs[job.UniqueID.Value] = job; } } }