Esempio n. 1
0
 public IActionResult NotifySynchronousSensing([FromBody] SynchronousSensing model)
 {
     //广播消息
     MQPulish.PublishMessage("SynchronousSensing", model);
     //并转发消息到下级
     return(new ObjectResult("Ok"));
 }
Esempio n. 2
0
        public IActionResult PushSynchronousSensing([FromBody] SynchronousSensing model)
        {
            if (model == null)
            {
                return(NoContent());
            }
            //
            using (var db = new AllInOneContext.AllInOneContext())
            {
                ////查找监控点所在的组织机构
                //Organization org = db.Organization
                //    .Include(t => t.Center)
                //    .FirstOrDefault(p => p.OrganizationId.Equals(model.MonitorySite.Organization.ParentOrganizationId));
                //if (org == null || org.Center == null || org.Center.EndPoints == null || org.Center.EndPoints.Count == 0)
                //    return NoContent();


                //string url = string.Format("http://{0}:{1}/paps/dutycheck/synchronoussensing/notify", org.Center.EndPoints[0].IPAddress, org.Center.EndPoints[0].Port);

                //bool ret = HttpClientHelper.Post(model, url);

                //return new ObjectResult("Ok");
                //查找受检单位
                Organization checkedOrg  = db.Organization.Include(t => t.Center).FirstOrDefault(t => t.OrganizationId.Equals(model.Organization.OrganizationId));
                Organization checkingOrg = db.Organization.FirstOrDefault(t => t.OrganizationId.Equals(model.CheckOrganization.OrganizationId));

                if (checkedOrg == null)
                {
                    return(BadRequest(new ApplicationException()
                    {
                        ErrorCode = "参数错误", ErrorMessage = "受检单位不能为空"
                    }));
                }
                if (checkedOrg.Center.EndPoints == null || checkedOrg.Center.EndPoints.Count == 0)
                {
                    return(BadRequest(new ApplicationException()
                    {
                        ErrorCode = "参数错误", ErrorMessage = "未配置受检单位应用服务器信息"
                    }));
                }
                model.CheckOrganization = checkingOrg;
                string url = string.Format("http://{0}:{1}/Paps/DutyCheck/SynchronousSensing/Notify", checkedOrg.Center.EndPoints[0].IPAddress, checkedOrg.Center.EndPoints[0].Port);
                _logger.LogInformation("同步感知 Begin,Url:{0}", url);
                var ret = HttpClientHelper.Post(model, url);
                _logger.LogInformation("同步感知 End.Result:{0}", ret);
                return(new ObjectResult("Ok"));
            }
        }