Esempio n. 1
0
        /// <summary>
        /// 获取当前用户的工作列表
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task <PagedResultDto <JobListDto> > GetMyJobs(GetMyJobsInput input)
        {
            var query = _myJobRepository.GetAllIncluding(c => c.Job);

            query = query.Where(c => c.CustomerId == input.CustomerId &&
                                c.VilidateState.HasValue && c.VilidateState.Value);
            var jobCount = await query.CountAsync();

            var jobs = await query
                       .OrderBy(input.Sorting)
                       .PageBy(input)
                       .ToListAsync();

            var result = new List <JobListDto>();

            foreach (var c in jobs)
            {
                var model = c.Job.MapTo <JobListDto>();
                model.State         = c.State;
                model.VilidateState = c.VilidateState;
                result.Add(model);
            }
            //var jobListDtos = ObjectMapper.Map<List <JobListDto>>(jobs);
            return(new PagedResultDto <JobListDto>(
                       jobCount,
                       result
                       ));
        }
Esempio n. 2
0
        /// <summary>
        /// 获取我创建的工作列表i
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task <PagedResultDto <JobListDto> > GetMyCreateJobs(GetMyJobsInput input)
        {
            var query = _jobRepository.GetAll();

            query = query.Where(c => c.CreatorId == input.CustomerId);
            var jobCount = await query.CountAsync();

            var jobs = await query
                       .OrderBy(input.Sorting)
                       .PageBy(input)
                       .ToListAsync();

            var cj = _myJobRepository.GetAll();
            var t  = from c in jobs
                     join d in await cj.ToListAsync() on c.Id equals d.JobId
                     into hh
                     from tt in hh.DefaultIfEmpty()
                     select new
            {
                c,
                tt
            };
            var ttt = from c in t
                      group c by c.c
                      into h
                      select new
            {
                h.Key,
                Count = h.Count()
            };
            var result = new List <JobListDto>();

            foreach (var c in ttt)
            {
                var model = c.Key.MapTo <JobListDto>();
                model.JoinCount = c.Count;
                result.Add(model);
            }
            //var jobListDtos = ObjectMapper.Map<List <JobListDto>>(jobs);
            return(new PagedResultDto <JobListDto>(
                       jobCount,
                       result
                       ));
        }