Пример #1
0
        public async Task CreateNewJob(CreateEditJobParams createEditJobParams)
        {
            Utils.CheckNullOrEmpty(new List<string> { "JobName", "JobType", "JobDescription", "EducationLevel", "FieldOfStudy", "Language", "Certification", "MinimumGrade", "IsStartWorkImmediately", "ExperienceLevel", "StartWorkingAt", "EndWorkingAt", "StartDate", "HoursPerDay", "DayPerWeek", "DayPerMonth", "GenderRequired", "MinSalary", "MaxSalary", "IsSalaryIncludeMealAndBreakTime" }, createEditJobParams.JobName, createEditJobParams.JobType, createEditJobParams.JobDescription, createEditJobParams.Location, createEditJobParams.EducationLevel, createEditJobParams.FieldOfStudy, createEditJobParams.Language, createEditJobParams.Certification, createEditJobParams.MinimumGrade, createEditJobParams.IsStartWorkImmediately, createEditJobParams.ExperienceLevel, createEditJobParams.StartWorkingAt, createEditJobParams.EndWorkingAt, createEditJobParams.StartDate, createEditJobParams.HoursPerDay, createEditJobParams.DayPerWeek, createEditJobParams.DayPerMonth, createEditJobParams.GenderRequired, createEditJobParams.MinSalary, createEditJobParams.MaxSalary, createEditJobParams.IsSalaryIncludeMealAndBreakTime);
            using (AppDbContext context = new AppDbContext())
            {
                User user = await GetCurrentUser(context);

                if (user.UserType == UserType.Employer)
                {
                    Job job = new Job
                    {
                        Id = Guid.NewGuid(),
                        EmployerId = _userId,
                        LanguageId = createEditJobParams.Language.Id,
                        JobName = createEditJobParams.JobName,
                        JobType = createEditJobParams.JobType,
                        MinSalary = createEditJobParams.MinSalary,
                        MaxSalary = createEditJobParams.MaxSalary,
                        ExtraSalary = createEditJobParams.ExtraSalary,
                        StartDate = createEditJobParams.StartDate,
                        EndDate = createEditJobParams.EndDate,
                        JobStartDate = createEditJobParams.JobStartDate,
                        JobDescription = createEditJobParams.JobDescription,
                        IsStartWorkImmediately = createEditJobParams.IsStartWorkImmediately,
                        StartWorkingAt = createEditJobParams.StartWorkingAt,
                        EndWorkingAt = createEditJobParams.EndWorkingAt,
                        AvailableDate = DateTime.UtcNow,
                        HoursPerDay = createEditJobParams.HoursPerDay,
                        DayPerWeek = createEditJobParams.DayPerWeek,
                        DayPerMonth = createEditJobParams.DayPerMonth,
                        GenderRequired = createEditJobParams.GenderRequired,
                        IsSalaryIncludeMealAndBreakTime = createEditJobParams.IsSalaryIncludeMealAndBreakTime,
                        CreatedDateUtc = DateTime.UtcNow,
                        UpdatedDateUtc = DateTime.UtcNow,
                        LocationId = createEditJobParams.Location.Id
                    };
                    context.Jobs.Add(job);

                    Education education = new Education
                    {
                        Id = Guid.NewGuid(),
                        EducationLevel = createEditJobParams.EducationLevel,
                        FieldOfStudyId = createEditJobParams.FieldOfStudy.Id,
                        Certification = createEditJobParams.Certification,
                        MinimumGrade = createEditJobParams.MinimumGrade,
                        ExperienceLevel = createEditJobParams.ExperienceLevel,
                        JobId = job.Id
                    };
                    context.Educations.Add(education);

                    await context.SaveChangesAsync();
                }
                else
                {
                    throw new UserException(ErrorCode.NO_PERMISSION.ToString());
                }
            }
        }
Пример #2
0
 public async Task<ApiJsonResult> UpdateJob(CreateEditJobParams createEditJobParams)
 {
     try
     {
         await new JobManager(GetCurrentUserId()).UpdateJob(createEditJobParams);
         return new ApiJsonResult { Success = true };
     }
     catch (Exception ex)
     {
         return ProcessException(ex);
     }
 }
Пример #3
0
        public async Task UpdateJob(CreateEditJobParams createEditJobParams)
        {
            Utils.CheckNullOrEmpty(new List<string> { "JobId", "JobName", "JobType", "JobDescription", "EducationLevel", "FieldOfStudy", "Language", "Certification", "MinimumGrade", "IsStartWorkImmediately", "ExperienceLevel", "StartWorkingAt", "EndWorkingAt", "StartDate", "HoursPerDay", "DayPerWeek", "DayPerMonth", "GenderRequired", "MinSalary", "MaxSalary", "IsSalaryIncludeMealAndBreakTime" }, createEditJobParams.JobID, createEditJobParams.JobName, createEditJobParams.JobType, createEditJobParams.JobDescription, createEditJobParams.Location, createEditJobParams.EducationLevel, createEditJobParams.FieldOfStudy, createEditJobParams.Language, createEditJobParams.Certification, createEditJobParams.MinimumGrade, createEditJobParams.IsStartWorkImmediately, createEditJobParams.ExperienceLevel, createEditJobParams.StartWorkingAt, createEditJobParams.EndWorkingAt, createEditJobParams.StartDate, createEditJobParams.HoursPerDay, createEditJobParams.DayPerWeek, createEditJobParams.DayPerMonth, createEditJobParams.GenderRequired, createEditJobParams.MinSalary, createEditJobParams.MaxSalary, createEditJobParams.IsSalaryIncludeMealAndBreakTime);

            using (AppDbContext context = new AppDbContext())
            {
                Job job = await context.Jobs.FirstOrDefaultAsync(p => p.Id == createEditJobParams.JobID);
                Education education = await context.Educations.FirstOrDefaultAsync(p => p.JobId == createEditJobParams.JobID);

                if (job == null || education == null)
                {
                    throw new UserException(ErrorCode.INVALID_SESSION.ToString());
                }

                job.LanguageId = createEditJobParams.Language.Id;
                job.JobName = createEditJobParams.JobName;
                job.JobType = createEditJobParams.JobType;
                job.MinSalary = createEditJobParams.MinSalary;
                job.MaxSalary = createEditJobParams.MaxSalary;
                job.ExtraSalary = createEditJobParams.ExtraSalary;
                job.StartDate = createEditJobParams.StartDate;
                job.EndDate = createEditJobParams.EndDate;
                job.JobStartDate = createEditJobParams.JobStartDate;
                job.JobDescription = createEditJobParams.JobDescription;
                job.IsStartWorkImmediately = createEditJobParams.IsStartWorkImmediately;
                job.StartWorkingAt = createEditJobParams.StartWorkingAt;
                job.EndWorkingAt = createEditJobParams.EndWorkingAt;
                job.HoursPerDay = createEditJobParams.HoursPerDay;
                job.DayPerWeek = createEditJobParams.DayPerWeek;
                job.DayPerMonth = createEditJobParams.DayPerMonth;
                job.GenderRequired = createEditJobParams.GenderRequired;
                job.IsSalaryIncludeMealAndBreakTime = createEditJobParams.IsSalaryIncludeMealAndBreakTime;
                job.UpdatedDateUtc = DateTime.UtcNow;
                job.LocationId = createEditJobParams.Location.Id;

                education.EducationLevel = createEditJobParams.EducationLevel;
                education.FieldOfStudyId = createEditJobParams.FieldOfStudy.Id;
                education.Certification = createEditJobParams.Certification;
                education.MinimumGrade = createEditJobParams.MinimumGrade;
                education.ExperienceLevel = createEditJobParams.ExperienceLevel;

                await context.SaveChangesAsync();
            }

        }