Пример #1
0
        public IActionResult GetTasks(long sessionId, [FromQuery] SearchSelectSeatTaskReqs search)
        {
            search.SessionId = sessionId;
            ApiResult <PagedData <SelectSeatTaskResp> > taskResult = _selectSeatTaskService.Search(search);

            if (taskResult.Status != ResultStatus.SUCCESS)
            {
                return(Ok(new ApiResult <object>(ResultStatus.FAIL, "队列查询异常")));
            }

            ApiResult <IEnumerable <ApplicantResp> > applicants = _activityService.GetApplicants(taskResult.Result.Records.Select(x => x.WizardId).ToArray());
            ApiResult <IEnumerable <SeatResp> >      seatList   = _seatService.GetBySession(sessionId);

            return(Ok(new
            {
                taskResult.Result.PageNow,
                taskResult.Result.PageSize,
                taskResult.Result.TotalCount,
                Records = taskResult.Result.Records.Select(x =>
                {
                    ApplicantResp applicant = applicants.Result.FirstOrDefault(o => o.WizardId == x.WizardId);
                    IEnumerable <string> seats = seatList.Result.Where(o => x.SeatNos != null && o.SeatNo.IsIn(x.SeatNos)).Select(o => o.Position[0] + "排" + o.Position[1] + "坐");

                    return new
                    {
                        x.TaskId,
                        x.SerialNo,
                        applicant?.Mobile,
                        applicant?.RealName,
                        x.WechatName,
                        Seats = seats,
                        x.WizardId,
                        StatusDesc = x.Status.GetName(),
                        x.Status,
                        x.SeatNos,
                        x.SessionId,
                        x.BeginTime,
                        x.EndTime
                    };
                })
            }));
        }
Пример #2
0
        public IActionResult SeatList(long sessionId)
        {
            if (sessionId <= 0)
            {
                return(Ok(new ApiResult <object>(ResultStatus.FAIL, "请选择正确的场次")));
            }

            ApiResult <IEnumerable <SeatResp> > result = _seatService.GetBySession(sessionId);

            if (result.Status != ResultStatus.SUCCESS)
            {
                return(Ok(new ApiResult <bool>(ResultStatus.FAIL, result.Message)));
            }

            return(Ok(new ApiResult <object>(ResultStatus.SUCCESS, result.Result.Select(x => new
            {
                x.ActivityId,
                x.Position,
                x.SeatId,
                x.SeatNo,
                x.WizardId,
                x.Selected,
            }))));
        }