Exemple #1
0
        public async Task <ActionResult> Approve(int id, ApproveType T, string returnUrl, [FromServices] INotificationService _notifyService)
        {
            var user = await _userManager.GetUserAsync(User);

            if (user == null)
            {
                return(Redirect("/Identity/Account/Errors/AccessDenied"));
            }

            var company = await _companyService.GetByIdAsync(id);

            if (company == null)
            {
                return(RedirectToAction("NotFound", "Home"));
            }

            var result = await this._baseService.Approve(id, PostType.Company, T);

            if (result.Success)
            {
                var PosterId = await _userManager.FindByIdAsync(company.PosterId);

                if (!(PosterId is null))
                {
                    switch (T)
                    {
                    case ApproveType.Waiting:
                        await _notifyService.Create("Моля редактирайте вашата фирма отново с коректни данни.", "identity/companies/index", DateTime.Now, NotifyType.Warning, "fas fa-sync-alt", PosterId);

                        break;

                    case ApproveType.Rejected:
                        await _notifyService.Create("Последно добавената ви фирма е отхвърлена.", "identity/companies/index", DateTime.Now, NotifyType.Danger, "fas fa-ban", PosterId);

                        break;

                    case ApproveType.Success:
                        await _notifyService.Create("Последно добавената ви фирма е одобрена.", "identity/companies/index", DateTime.Now, NotifyType.Information, "fas fa-check", PosterId);

                        break;
                    }
                }
                if (!String.IsNullOrEmpty(returnUrl))
                {
                    return(Redirect(returnUrl));
                }
                else
                {
                    RedirectToPage("/Identity/Companies", new { Area = "Identity" });
                }
            }

            return(View());
        }
Exemple #2
0
        public void Update(CreateContestantInputModel viewModel, ApproveType approved, User user)
        {
            Id = viewModel.Id;

            Guard.Against.NullOrEmpty(viewModel.FullName, nameof(viewModel.FullName));
            FullName = viewModel.FullName;

            Guard.Against.NullOrEmpty(viewModel.Description, nameof(viewModel.Description));
            Description = viewModel.Description;

            Guard.Against.NullOrEmpty(viewModel.About, nameof(viewModel.About));
            About = viewModel.About;

            Genders    = viewModel.Genders;
            Age        = viewModel.Age;
            SalaryType = viewModel.SalaryType;
            LocationId = viewModel.LocationId;

            LanguagesId      = viewModel.LanguagesId;
            Experience       = viewModel.Experience;
            payRate          = viewModel.payRate;
            profileVisiblity = viewModel.profileVisiblity;
            WorkType         = viewModel.WorkType;

            Website      = viewModel.Website;
            Portfolio    = viewModel.Portfolio;
            Linkdin      = viewModel.Linkdin;
            Facebook     = viewModel.Facebook;
            Twitter      = viewModel.Twitter;
            Github       = viewModel.Github;
            Dribbble     = viewModel.Dribbble;
            ResumeFileId = viewModel.ResumeFileId == null ? ResumeFileId : viewModel.ResumeFileId;

            CategoryId   = viewModel.CategoryId;
            userSkillsId = viewModel.userSkillsId;
            isApproved   = approved;
            isArchived   = viewModel.isArchived;

            PosterID  = user.Id;
            CreatedOn = DateTime.Now;
            ExpiredOn = CreatedOn.AddMonths(1);
        }
Exemple #3
0
        public async Task <OperationResult> Approve(int Id, PostType postType, ApproveType type)
        {
            switch (postType)
            {
            case PostType.Company:
            {
                var item = await _companiesRepository.Set().FirstOrDefaultAsync(j => j.Id == Id);

                item.isApproved = type;

                var success = await _companiesRepository.SaveChangesAsync();

                return(success);
            }

            case PostType.Contestant:
            {
                var item = await _contestantRepository.Set().FirstOrDefaultAsync(j => j.Id == Id);

                item.isApproved = type;

                var success = await _contestantRepository.SaveChangesAsync();

                return(success);
            }

            case PostType.Job:
            {
                var item = await _jobsRepository.Set().FirstOrDefaultAsync(j => j.Id == Id);

                item.isApproved = type;

                var success = await _jobsRepository.SaveChangesAsync();

                return(success);
            }
            }
            return(null);
        }
Exemple #4
0
        public void Update(CreateJobInputModel viewModel, ApproveType approved, User user)
        {
            Id = viewModel.Id;

            Guard.Against.NullOrEmpty(viewModel.Name, nameof(viewModel.Name));
            Name = viewModel.Name;

            Guard.Against.NullOrEmpty(viewModel.Description, nameof(viewModel.Description));
            Description = viewModel.Description;

            Guard.Against.NullOrEmpty(viewModel.Adress, nameof(viewModel.Adress));
            Adress = viewModel.Adress;

            Guard.Against.NullOrEmpty(viewModel.WorkType, nameof(viewModel.WorkType));
            WorkType = viewModel.WorkType;

            ExprienceLevels = viewModel.ExprienceLevels;
            LocationId      = viewModel.LocationId;

            MinSalary  = viewModel.MinSalary;
            MaxSalary  = viewModel.MaxSalary;
            SalaryType = viewModel.SalaryType;

            Guard.Against.Negative(viewModel.CompanyId, nameof(viewModel.CompanyId));
            CompanyId = viewModel.CompanyId;

            CategoryId = viewModel.CategoryId;
            LanguageId = viewModel.LanguageId;
            TagsId     = viewModel.TagsId;

            PosterID   = user.Id;
            isApproved = approved;
            isArchived = viewModel.isArchived;

            CreatedOn = DateTime.Now;
            ExpiredOn = CreatedOn.AddMonths(1);
        }
Exemple #5
0
 public async Task <int> GetAllCountByCondition(int categoryId, int companyId, string posterId, ApproveType approve)
 {
     return(0); /*await GetAllAsNoTracking()
                 * .Where(x => categoryId != -1 ? x.CategoryId == categoryId : false)
                 * .Where(x => companyId != -1 ? x.CompanyId == companyId : false)
                 * .Where(x => posterId != null ? x.PosterID == posterId : false)
                 * .Where(x => x.isApproved == approve && !x.isArchived)
                 * .CountAsync()
                 * .ConfigureAwait(false);*/
 }