コード例 #1
0
        public async Task <PagingResponseMessage <ExamineNoticeResponse> > GetUserNotices(UserInfo user, [FromBody] UserExamineNoticeListConditon conditon)
        {
            PagingResponseMessage <ExamineNoticeResponse> pagingResponse = new PagingResponseMessage <ExamineNoticeResponse>();

            if (conditon == null)
            {
                pagingResponse.Code = ResponseCodeDefines.ArgumentNullError;
                Logger.Info($"用户{user?.UserName ?? ""}({user?.Id ?? ""})获取用户审核告知列表(GetUserNotices)失败:参数conditon为null");
                return(pagingResponse);
            }
            try
            {
                return(await _examineNoticeManager.UserNoticeList(user.Id, conditon, HttpContext.RequestAborted));
            }
            catch (Exception e)
            {
                pagingResponse.Code    = ResponseCodeDefines.ServiceError;
                pagingResponse.Message = e.ToString();
                Logger.Error($"用户{user?.UserName ?? ""}({user?.Id ?? ""})获取用户审核告知列表(GetUserNotices)报错:\r\n{e.ToString()},参数为:\r\n" + (conditon != null ? JsonHelper.ToJson(conditon) : ""));
            }
            return(pagingResponse);
        }
コード例 #2
0
        public async Task <PagingResponseMessage <ExamineNoticeResponse> > UserNoticeList(string userId, UserExamineNoticeListConditon condition, CancellationToken cancellationToken = default(CancellationToken))
        {
            PagingResponseMessage <ExamineNoticeResponse> pagingResponse = new PagingResponseMessage <ExamineNoticeResponse>();

            if (condition == null)
            {
                throw new ArgumentNullException(nameof(condition));
            }
            var q = Store.GetQuery().Where(a => a.NoticeUserId == userId && !a.IsDeleted);

            if (condition.Status?.Count > 0)
            {
                q = q.Where(a => condition.Status.Contains(a.NoticeStatus));
            }
            pagingResponse.TotalCount = await q.CountAsync(cancellationToken);

            var qlist = await q.OrderByDescending(x => x.NoticeTime).Skip(condition.PageIndex * condition.PageSize).Take(condition.PageSize).ToListAsync(cancellationToken);

            var resulte = qlist.Select(a => new ExamineNoticeResponse()
            {
                ContentId              = a.ExamineFlow.ContentId,
                ContentName            = a.ExamineFlow.ContentName,
                ContentType            = a.ExamineFlow.ContentType,
                Desc                   = a.ExamineFlow.Desc,
                ExamineStatus          = a.ExamineFlow.ExamineStatus,
                Id                     = a.ExamineFlow.Id,
                SubmitOrganizationId   = a.ExamineFlow.SubmitOrganizationId,
                SubmitOrganizationName = a.ExamineFlow.SubmitOrganizationName,
                SubmitTime             = a.ExamineFlow.SubmitTime,
                SubmitUserId           = a.ExamineFlow.SubmitUserId,
                SubmitUserName         = a.ExamineFlow.SubmitUserName,
                TaskName               = a.ExamineFlow.TaskName,
                SubmitDefineId         = a.ExamineFlow.SubmitDefineId,
                FlowId                 = a.FlowId,
                NoticeStatus           = a.NoticeStatus,
                RecordId               = a.RecordId,
                Ext1                   = a.ExamineFlow.Ext1,
                Ext2                   = a.ExamineFlow.Ext2,
                Ext3                   = a.ExamineFlow.Ext3,
                Ext4                   = a.ExamineFlow.Ext4,
                Ext5                   = a.ExamineFlow.Ext5,
                Ext6                   = a.ExamineFlow.Ext6,
                Ext7                   = a.ExamineFlow.Ext7,
                Ext8                   = a.ExamineFlow.Ext8
            });

            pagingResponse.PageIndex = condition.PageIndex;
            pagingResponse.PageSize  = condition.PageSize;
            pagingResponse.Extension = resulte.ToList();
            return(pagingResponse);
        }