Ejemplo n.º 1
0
        public HttpResponseMessage AddGroupsJinRunXian([FromBody] SensorGroupJinRunXian model)
        {
            using (var db = new SecureCloud_Entities())
            {
                try
                {
                    var group = new T_DIM_GROUP();
                    group.GROUP_NAME    = model.GroupName;
                    group.GROUP_TYPE_ID = 3;

                    var entry = db.Entry(group);
                    entry.State = System.Data.EntityState.Added;

                    var           sensorIds = model.SensorList.Select(s => s.SensorId);
                    var           sensors   = db.T_DIM_SENSOR.Where(s => sensorIds.Contains(s.SENSOR_ID)).ToList();
                    StringBuilder sb        = new StringBuilder();

                    foreach (var sensor in model.SensorList)
                    {
                        sb.AppendFormat(
                            "位置-{0}_高度-{1};",
                            sensors.Where(s => s.SENSOR_ID == sensor.SensorId)
                            .Select(s => s.SENSOR_LOCATION_DESCRIPTION)
                            .FirstOrDefault(),
                            sensor.Height);

                        var sensorGroupJinRunXian = new T_DIM_SENSOR_GROUP_JINRUNXIAN();
                        sensorGroupJinRunXian.GROUP_ID  = group.GROUP_ID;
                        sensorGroupJinRunXian.SENSOR_ID = sensor.SensorId;
                        sensorGroupJinRunXian.HEIGHT    = sensor.Height;

                        var test = db.Entry(sensorGroupJinRunXian);
                        test.State = System.Data.EntityState.Added;
                    }

                    #region 日志

                    this.Request.Properties["ActionParameter"]     = JsonConvert.SerializeObject(model);
                    this.Request.Properties["ActionParameterShow"] = string.Format("组:{0},传感器:{1}", model.GroupName, sb);
                    #endregion

                    db.SaveChanges();
                    return(Request.CreateResponse(HttpStatusCode.Accepted, StringHelper.GetMessageString("测斜传感器组新增成功")));
                }
                catch (NullReferenceException e)
                {
                    return(Request.CreateResponse(
                               HttpStatusCode.BadRequest,
                               StringHelper.GetMessageString("测斜传感器组新增失败:参数无效")));
                }
                catch (Exception e)
                {
                    return(Request.CreateResponse(HttpStatusCode.BadRequest, StringHelper.GetMessageString("测斜传感器组新增失败")));
                }
            }
        }
Ejemplo n.º 2
0
        public HttpResponseMessage AddGroupsChenJiang([FromBody] SensorGroupChenJiang model)
        {
            using (var db = new SecureCloud_Entities())
            {
                try
                {
                    var group = new T_DIM_GROUP();
                    group.GROUP_NAME    = model.GroupName;
                    group.GROUP_TYPE_ID = 2;

                    var entry = db.Entry(group);
                    entry.State = System.Data.EntityState.Added;

                    var           sensorIds = model.SensorList.Select(s => s.SensorId);
                    var           sensors   = db.T_DIM_SENSOR.Where(s => sensorIds.Contains(s.SENSOR_ID)).ToList();
                    StringBuilder sb        = new StringBuilder();

                    foreach (var p in model.SensorList)
                    {
                        sb.AppendFormat(
                            "位置-{0}_长度-{2}_是否基准点-{1};",
                            sensors.Where(s => s.SENSOR_ID == p.SensorId)
                            .Select(s => s.SENSOR_LOCATION_DESCRIPTION)
                            .FirstOrDefault(),
                            p.IsDatum,
                            p.Len);

                        var sensorGroupChenJiang = new T_DIM_SENSOR_GROUP_CHENJIANG();
                        sensorGroupChenJiang.GROUP_ID     = group.GROUP_ID;
                        sensorGroupChenJiang.SENSOR_ID    = p.SensorId;
                        sensorGroupChenJiang.isJIZHUNDIAN = p.IsDatum;
                        sensorGroupChenJiang.LENGTH       = p.Len;

                        var test = db.Entry(sensorGroupChenJiang);
                        test.State = System.Data.EntityState.Added;
                    }

                    #region 日志

                    this.Request.Properties["ActionParameter"]     = JsonConvert.SerializeObject(model);
                    this.Request.Properties["ActionParameterShow"] = string.Format("组:{0},传感器:{1}", model.GroupName, sb);
                    #endregion

                    db.SaveChanges();
                    int gid = group.GROUP_ID;
                    // 增加的组信息
                    var gs = (from s in db.T_DIM_SENSOR
                              from sg in sensorIds
                              from d in db.T_DIM_REMOTE_DTU
                              where s.SENSOR_ID == sg && d.ID == s.DTU_ID
                              select
                              new SensorGroup
                    {
                        GroupId = gid,
                        DtuId = s.DTU_ID.Value,
                        DtuCode = d.REMOTE_DTU_NUMBER,
                        DacInterval = d.REMOTE_DTU_GRANULARITY.Value
                    })
                             .Distinct();
                    try
                    {
                        SendMsg2ET(gs.ToList());
                    }
                    catch (Exception ex)
                    {
                        log.Error(ex);
                    }


                    return(Request.CreateResponse(HttpStatusCode.Accepted, StringHelper.GetMessageString("测斜传感器组新增成功")));
                }
                catch (NullReferenceException e)
                {
                    return(Request.CreateResponse(
                               HttpStatusCode.BadRequest,
                               StringHelper.GetMessageString("测斜传感器组新增失败:参数无效")));
                }
                catch (Exception e)
                {
                    return(Request.CreateResponse(HttpStatusCode.BadRequest, StringHelper.GetMessageString("测斜传感器组新增失败")));
                }
            }
        }