public async Task <ResponseMessage> BuildingsOnSiteCallback([FromBody] ExamineResponse examineResponse)
        {
            Logger.Trace($"指派驻场回调(BuildingsOnSiteCallback):\r\n请求参数为:\r\n" + (examineResponse != null ? JsonHelper.ToJson(examineResponse) : ""));

            ResponseMessage response = new ResponseMessage();

            if (!ModelState.IsValid)
            {
                response.Code    = ResponseCodeDefines.ModelStateInvalid;
                response.Message = ModelState.GetAllErrors();
                Logger.Warn("模型验证失败:\r\n{0}", response.Message ?? "");
                return(response);
            }
            if (examineResponse.ContentType != "BuildingsOnSite")
            {
                response.Code    = ResponseCodeDefines.ServiceError;
                response.Message = "该回调实现不支持BuildingsOnSite的内容类型";
                Logger.Warn("指派驻场业务层回调失败:\r\n{0}", response.Message ?? "");
                return(response);
            }
            try
            {
                var onsite = JsonHelper.ToObject <BuildingsOnSiteRequest>(examineResponse.Content);
                if (examineResponse.ExamineStatus == ExamineStatus.Examined)
                {
                    await _buildingsManager.SaveResidentUserAsync("", onsite);

                    //发送通知消息
                    SendMessageRequest sendMessageRequest = new SendMessageRequest();
                    sendMessageRequest.MessageTypeCode = "BuildingsOnSite";
                    MessageItem messageItem = new MessageItem();
                    messageItem.UserIds = new List <string>();
                    if (!string.IsNullOrEmpty(onsite.ResidentUser1))
                    {
                        messageItem.UserIds.Add(onsite.ResidentUser1);
                    }
                    if (!string.IsNullOrEmpty(onsite.ResidentUser2))
                    {
                        messageItem.UserIds.Add(onsite.ResidentUser2);
                    }
                    if (!string.IsNullOrEmpty(onsite.ResidentUser3))
                    {
                        messageItem.UserIds.Add(onsite.ResidentUser3);
                    }
                    if (!string.IsNullOrEmpty(onsite.ResidentUser4))
                    {
                        messageItem.UserIds.Add(onsite.ResidentUser4);
                    }
                    messageItem.MessageTypeItems = new List <TypeItem> {
                        new TypeItem {
                            Key = "NAME", Value = onsite.Name
                        },
                        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());
                    }
                }
            }
            catch (Exception e)
            {
                response.Code    = ResponseCodeDefines.ServiceError;
                response.Message = e.ToString();
                Logger.Error("指派驻场回调失败:\r\n{0}", e.ToString());
            }
            return(response);
        }