public async Task <ResponseMessage> NoticeCallbackAsync(UserNoticeCallbackRequest userNoticeCallbackRequest) { ResponseMessage response = new ResponseMessage(); if (userNoticeCallbackRequest == null) { throw new ArgumentNullException(nameof(userNoticeCallbackRequest)); } //找到本地审核流程 var examineFlow = await _examineFlowStore.ExamineFlowGetAsync(a => a.Where(b => b.TaskGuid == userNoticeCallbackRequest.TaskGuid)); if (examineFlow == null) { response.Code = ResponseCodeDefines.NotFound; response.Message = "未在本地找到该审核流程"; } //找到所有通知的人 var userIds = await _permissionExpansionManager.GetPermissionUserIds(userNoticeCallbackRequest.PermissionItemId); if (userIds == null || userIds?.Count == 0) { response.Code = ResponseCodeDefines.NotFound; response.Message = "未找到通知的人"; } examineFlow.CurrentStepId = userNoticeCallbackRequest.CurrentStepId; await Store.NoticeCallbackAsync(userIds, examineFlow); //发送通知消息 SendMessageRequest sendMessageRequest = new SendMessageRequest(); sendMessageRequest.MessageTypeCode = "ExamineNotice"; MessageItem messageItem = new MessageItem(); messageItem.UserIds = userIds; messageItem.MessageTypeItems = new List <TypeItem> { new TypeItem { Key = "NOTICETYPE", Value = ExamineContentTypeConvert.GetContentTypeString(examineFlow.ContentType) }, new TypeItem { Key = "NAME", Value = examineFlow.ContentName }, new TypeItem { Key = "TIME", Value = DateTime.Now.ToString("MM-dd hh:mm") } }; sendMessageRequest.MessageList = new List <MessageItem> { messageItem }; try { MessageLogger.Info("发送通知消息协议:\r\n{0}", JsonHelper.ToJson(sendMessageRequest)); _restClient.Post(ApplicationContext.Current.MessageServerUrl, sendMessageRequest, "POST", new NameValueCollection()); } catch (Exception e) { MessageLogger.Error("发送通知消息出错:\r\n{0}", e.ToString()); } return(response); }
public async Task <ResponseMessage> UserNoticeCallback([FromBody] UserNoticeCallbackRequest userNoticeCallbackRequest) { ResponseMessage response = new ResponseMessage(); try { return(await _examineNoticeManager.NoticeCallbackAsync(userNoticeCallbackRequest)); } catch (Exception e) { response.Code = ResponseCodeDefines.ServiceError; response.Message = e.ToString(); Logger.Error($"审核告知回调报错:\r\n{e.ToString()},\r\n请求参数为:\r\n" + (userNoticeCallbackRequest != null ? JsonHelper.ToJson(userNoticeCallbackRequest) : "")); } return(response); }