Esempio n. 1
0
        /// <summary>
        /// 获取岗位下的所有用户
        /// </summary>
        public List <UserAccount> GetUserDateByJobPost(int courseId, JobPostListDto job)
        {
            List <UserAccount> accountlist = new List <UserAccount>();
            var userAccountDataList        = userAccountService.GetAccountData().Where(c => c.PostID == job.Id); //获取当前岗位的所有用户
            var CBCTUserSysNoList          = GetCourseBoundUserId(courseId);                                     //获取课程下的所有用户Id

            if (userAccountDataList.Any())
            {
                accountlist = userAccountDataList.Where(v => !CBCTUserSysNoList.Contains(v.SysNO)).ToList();//排除课程下的用户
            }
            return(accountlist);
        }
Esempio n. 2
0
        /// <summary>
        /// 根据查询条件获取职位发布分页列表
        /// </summary>
        public async Task <PagedResultDto <JobPostListDto> > GetPagedJobPosts(GetJobPostInput input)
        {
            try
            {
                var _companyid = Convert.ToInt32(_IAbpSession.UserId);
                //var query = _jobPostRepositoryAsNoTrack.Where(t=>t.CompanyId==_companyid);

                var query = from post in _jobPostRepositoryAsNoTrack.Where(t => t.CompanyId == _companyid)
                            join urgent in _jobUrgentRepository.GetAll().Where(a => a.isDelete == false)
                            on post.Id equals urgent.JobId into PostUrgent
                            from urgent in PostUrgent.DefaultIfEmpty()
                            select new
                {
                    Post = post,
                    //Urgent = urgent
                    JobId  = urgent != null ? urgent.JobId :0,
                    Weight = urgent != null ? urgent.Weight : 0,
                    State  = urgent != null ? urgent.State : 0,
                };


                var jobPostCount = await query.CountAsync();

                var jobPosts = await query
                               .OrderByDescending(t => t.Weight).Skip(input.SkipCount).Take(input.MaxResultCount).ToListAsync();


                //.OrderByDescending(t => t.approval.RegisterDate).Skip(input.SkipCount * input.MaxResultCount).Take(input.MaxResultCount).ToListAsync();

                //var jobPostListDtos = jobPosts.MapTo<List<JobPostListDto>>();
                return(new PagedResultDto <JobPostListDto>(
                           jobPostCount,
                           //jobPostListDtos
                           jobPosts.Select(
                               item =>
                {
                    var dto = new JobPostListDto();
                    dto.Id = item.Post.Id;
                    dto.CompanyId = item.Post.CompanyId;
                    dto.JobName = item.Post.JobName;
                    dto.SalaryMin = item.Post.SalaryMin;
                    dto.SalaryMax = item.Post.SalaryMax;
                    dto.Education = item.Post.Education;
                    dto.Experience = item.Post.Experience;
                    dto.JobAddress = item.Post.JobAddress;
                    dto.SkillRequire = item.Post.SkillRequire;
                    dto.JobType = item.Post.JobType;
                    dto.PublishDate = item.Post.PublishDate;
                    dto.isDelete = item.Post.isDelete;
                    dto.JobId = item.JobId;
                    dto.Weight = item.Weight;
                    dto.state = item.State;

                    return dto;
                }).ToList()
                           ));
            }
            catch (Exception ex)
            {
                Logger.Warn(ex.ToString(), ex);
                return(null);
            }
        }