示例#1
0
        /// <summary>
        /// 增加一条数据
        /// </summary>
        public int Add(Osiris.Model.DeviceInfo model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("insert into DeviceInfo(");
            strSql.Append("DeviceId,Brightness,Temperature,Powerwaste,ViewModel,Switch,Lon,Lat,Creator,Remark)");
            strSql.Append(" values (");
            strSql.Append("@DeviceId,@Brightness,@Temperature,@Powerwaste,@ViewModel,@Switch,@Lon,@Lat,@Creator,@Remark)");
            strSql.Append(";select @@IDENTITY");
            SqlParameter[] parameters =
            {
                new SqlParameter("@DeviceId",    SqlDbType.VarChar,  20),
                new SqlParameter("@Brightness",  SqlDbType.VarChar,  10),
                new SqlParameter("@Temperature", SqlDbType.VarChar,  10),
                new SqlParameter("@Powerwaste",  SqlDbType.VarChar,  10),
                new SqlParameter("@ViewModel",   SqlDbType.VarChar,  10),
                new SqlParameter("@Switch",      SqlDbType.VarChar,  10),
                new SqlParameter("@Lon",         SqlDbType.VarChar,  20),
                new SqlParameter("@Lat",         SqlDbType.VarChar,  20),
                new SqlParameter("@Creator",     SqlDbType.VarChar,  20),
                new SqlParameter("@Remark",      SqlDbType.NVarChar, 50)
            };
            parameters[0].Value = model.DeviceId;
            parameters[1].Value = model.Brightness;
            parameters[2].Value = model.Temperature;
            parameters[3].Value = model.Powerwaste;
            parameters[4].Value = model.ViewModel;
            parameters[5].Value = model.Switch;
            parameters[6].Value = model.Lon;
            parameters[7].Value = model.Lat;
            parameters[8].Value = model.Creator;
            parameters[9].Value = model.Remark;

            object obj = DbHelperSQL.GetSingle(strSql.ToString(), parameters);

            if (obj == null)
            {
                return(0);
            }
            else
            {
                return(Convert.ToInt32(obj));
            }
        }
示例#2
0
        public Osiris.Model.DeviceInfo GetModel(int id)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("select  top 1 Id,DeviceId,Brightness,Temperature,Powerwaste,ViewModel,Switch,IsLock,Lon,Lat,CreateTime,UpdateTime,Creator,Remark,Gyroscope from DeviceInfo ");
            strSql.Append(" where id=@id");
            SqlParameter[] parameters =
            {
                new SqlParameter("@id", SqlDbType.Int)
            };
            parameters[0].Value = id;

            Osiris.Model.DeviceInfo model = new Osiris.Model.DeviceInfo();
            DataSet ds = DbHelperSQL.Query(strSql.ToString(), parameters);

            if (ds.Tables[0].Rows.Count > 0)
            {
                return(DataRowToModel(ds.Tables[0].Rows[0]));
            }
            else
            {
                return(null);
            }
        }
示例#3
0
 public bool Update(Osiris.Model.DeviceInfo model)
 {
     return(dal.Update(model));
 }
示例#4
0
 /// <summary>
 /// 增加一条数据
 /// </summary>
 public int Add(Osiris.Model.DeviceInfo model)
 {
     return(dal.Add(model));
 }
示例#5
0
        /// <summary>
        /// 控制设置
        /// </summary>
        /// <param name="value">传的value</param>
        public HttpResponseMessage ControlDevice([FromBody] RequestUpdateObject obj)
        {
            StringBuilder strJson = new StringBuilder();

            strJson.Append("{\"code\":200,");
            strJson.Append(" \"msg\":\"");
            if (obj == null)
            {
                strJson.Append(" Post请求错误 \",");
                strJson.Append(" \"payload\":{}");
            }
            else
            {
                //第一步,修改deviceinfo
                Osiris.Model.DeviceInfo model = new Osiris.Model.DeviceInfo();
                Osiris.BLL.DeviceInfo   bll   = new Osiris.BLL.DeviceInfo();
                try
                {
                    model.DeviceId    = obj.deviceid;
                    model.Brightness  = obj.deviceinfo.lightness;
                    model.Temperature = obj.deviceinfo.temperature;
                    model.Powerwaste  = obj.deviceinfo.powerWaste;
                    model.ViewModel   = obj.deviceinfo.displayMode;

                    model.Lon        = obj.latlng.lng;
                    model.Lat        = obj.latlng.lat;
                    model.UpdateTime = DateTime.Now;
                    model.Gyroscope  = obj.deviceinfo.gyroscope;


                    bll.Update(model);
                }
                catch (Exception ex)
                {
                    strJson.Append(" 数据更新失败 \",");
                    strJson.Append(" \"payload\":{}");
                    strJson.Append("}");
                    HttpResponseMessage result = new HttpResponseMessage {
                        Content = new StringContent(strJson.ToString(), Encoding.GetEncoding("UTF-8"), "application/json")
                    };
                    return(result);
                }
                //第二步,根据坐标计算地区并返回广告
                string  BaiduAK   = System.Configuration.ConfigurationManager.AppSettings["BaiduAK"];
                string  lng       = obj.latlng.lat + "," + obj.latlng.lng;
                string  url       = string.Format("http://api.map.baidu.com/geocoder/v2/?output=json&ak={0}&location={1}", BaiduAK, lng);
                string  returnStr = HttpHelper.GetResponseString(HttpHelper.CreateGetHttpResponse(url, null));
                JObject jo        = (JObject)JsonConvert.DeserializeObject(returnStr);
                string  district  = jo["result"]["addressComponent"]["district"].ToString();

                if (string.IsNullOrEmpty(district))
                {
                    strJson.Append(" 未获取到地区数据,请检查GPS数据! \",");
                    strJson.Append(" \"payload\":{}");
                    strJson.Append("}");
                    HttpResponseMessage result = new HttpResponseMessage {
                        Content = new StringContent(strJson.ToString(), Encoding.GetEncoding("UTF-8"), "application/json")
                    };
                    return(result);
                }

                //第三步,根据地区读取广告.
                Osiris.BLL.DeviceAd bllad = new Osiris.BLL.DeviceAd();
                string  returnValue;
                DataSet ds = bllad.GetAdByEareTime(obj.deviceid, district, out returnValue);
                DataRow dr = null;
                try
                {
                    dr    = ds.Tables[0].Rows[0];
                    model = bll.GetModel(obj.deviceid);
                }
                catch (Exception ex)
                {
                    strJson.Append(" 未设置广告 \",");
                    strJson.Append(" \"payload\":{}");
                    strJson.Append("}");
                    HttpResponseMessage result = new HttpResponseMessage {
                        Content = new StringContent(strJson.ToString(), Encoding.GetEncoding("UTF-8"), "application/json")
                    };
                    return(result);
                }
                strJson.Append("success\",");
                strJson.Append(" \"payload\":{\"deviceCmds\":{ ");
                strJson.Append(string.Format("\"lightness\":\"{0}\",", model.Brightness));
                strJson.Append(string.Format("\"on\":\"{0}\",", model.Switch));
                strJson.Append(string.Format("\"displayMode\":\"{0}\",", model.ViewModel));
                strJson.Append(string.Format("\"lock\":\"{0}\"", model.IsLock));
                strJson.Append(" },\"adCmd\":{\"ad\":{ ");
                strJson.Append(string.Format("\"id\":\"{0}\",", dr[0]));
                strJson.Append(string.Format("\"type\":\"{0}\",", dr[1]));
                strJson.Append(string.Format("\"text\":\"{0}\",", dr[2]));
                strJson.Append(string.Format("\"url\":\"{0}\",", dr[3]));
                strJson.Append(string.Format("\"thumbUrl\":\"{0}\"", dr[4]));
                strJson.Append(" },");
                strJson.Append(string.Format("\"repeatCount\":\"{0}\",", dr[5]));
                strJson.Append(string.Format("\"activeStartTime\":{0},", Commons.DateTimeToUnixTimestamp(Convert.ToDateTime(dr[7]))));
                strJson.Append(string.Format("\"activeEndTime\":{0}", Commons.DateTimeToUnixTimestamp(Convert.ToDateTime(dr[8]))));
                strJson.Append(" }}");
            }
            strJson.Append("}");
            HttpResponseMessage results = new HttpResponseMessage {
                Content = new StringContent(strJson.ToString(), Encoding.GetEncoding("UTF-8"), "application/json")
            };

            return(results);
        }
示例#6
0
        /// <summary>
        /// 更新一条数据
        /// </summary>
        public bool Update(Osiris.Model.DeviceInfo model)
        {
            Osiris.Model.DeviceInfo m = GetModel(model.Id);
            if (m == null)
            {
                return(false);
            }

            StringBuilder strSql = new StringBuilder();

            strSql.Append("update DeviceInfo set ");
            strSql.Append("Brightness=@Brightness,");
            strSql.Append("Temperature=@Temperature,");
            strSql.Append("Powerwaste=@Powerwaste,");
            strSql.Append("ViewModel=@ViewModel,");
            strSql.Append("Switch=@Switch,");
            strSql.Append("IsLock=@IsLock,");
            strSql.Append("Lon=@Lon,");
            strSql.Append("Lat=@Lat,");
            strSql.Append("UpdateTime=@UpdateTime,");
            strSql.Append("Remark=@Remark,");
            strSql.Append("Gyroscope=@Gyroscope");
            strSql.Append(" where DeviceId=@DeviceId");
            SqlParameter[] parameters =
            {
                new SqlParameter("@DeviceId",    SqlDbType.VarChar,   20),
                new SqlParameter("@Brightness",  SqlDbType.VarChar,   10),
                new SqlParameter("@Temperature", SqlDbType.VarChar,   10),
                new SqlParameter("@Powerwaste",  SqlDbType.VarChar,   10),
                new SqlParameter("@ViewModel",   SqlDbType.VarChar,   10),
                new SqlParameter("@Switch",      SqlDbType.VarChar,   10),
                new SqlParameter("@IsLock",      SqlDbType.Bit,        1),
                new SqlParameter("@Lon",         SqlDbType.VarChar,   20),
                new SqlParameter("@Lat",         SqlDbType.VarChar,   20),
                new SqlParameter("@UpdateTime",  SqlDbType.DateTime),
                new SqlParameter("@Remark",      SqlDbType.NVarChar,  50),
                new SqlParameter("@Gyroscope",   SqlDbType.VarChar, 20)
            };

            parameters[0].Value  = model.DeviceId == null ? m.DeviceId : model.DeviceId;
            parameters[1].Value  = model.Brightness == null ? m.Brightness : model.Brightness;
            parameters[2].Value  = model.Temperature == null ? m.Temperature : model.Temperature;
            parameters[3].Value  = model.Powerwaste == null ? m.Powerwaste : model.Powerwaste;
            parameters[4].Value  = model.ViewModel == null ? m.ViewModel : model.ViewModel;
            parameters[5].Value  = model.Switch == null?m.Switch:model.Switch;
            parameters[6].Value  = model.IsLock == false ? m.IsLock : model.IsLock;
            parameters[7].Value  = model.Lon == null ? m.Lon : model.Lon;
            parameters[8].Value  = model.Lat == null ? m.Lat : model.Lat;
            parameters[9].Value  = DateTime.Now;
            parameters[10].Value = model.Remark == null?(m.Remark == null?"":m.Remark):model.Remark;
            parameters[11].Value = model.Gyroscope == null ? m.Gyroscope : model.Gyroscope;

            int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);

            if (rows > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
示例#7
0
 /// <summary>
 /// 得到一个对象实体
 /// </summary>
 public Osiris.Model.DeviceInfo DataRowToModel(DataRow row)
 {
     Osiris.Model.DeviceInfo model = new Osiris.Model.DeviceInfo();
     if (row != null)
     {
         if (row["Id"] != null && row["Id"].ToString() != "")
         {
             model.Id = int.Parse(row["Id"].ToString());
         }
         if (row["DeviceId"] != null)
         {
             model.DeviceId = row["DeviceId"].ToString();
         }
         if (row["Brightness"] != null)
         {
             model.Brightness = row["Brightness"].ToString();
         }
         if (row["Temperature"] != null)
         {
             model.Temperature = row["Temperature"].ToString();
         }
         if (row["Powerwaste"] != null)
         {
             model.Powerwaste = row["Powerwaste"].ToString();
         }
         if (row["ViewModel"] != null)
         {
             model.ViewModel = row["ViewModel"].ToString();
         }
         if (row["Switch"] != null)
         {
             model.Switch = row["Switch"].ToString();
         }
         if (row["IsLock"] != null && row["IsLock"].ToString() != "")
         {
             if ((row["IsLock"].ToString() == "1") || (row["IsLock"].ToString().ToLower() == "true"))
             {
                 model.IsLock = true;
             }
             else
             {
                 model.IsLock = false;
             }
         }
         if (row["Lon"] != null)
         {
             model.Lon = row["Lon"].ToString();
         }
         if (row["Lat"] != null)
         {
             model.Lat = row["Lat"].ToString();
         }
         if (row["CreateTime"] != null && row["CreateTime"].ToString() != "")
         {
             model.CreateTime = DateTime.Parse(row["CreateTime"].ToString());
         }
         if (row["UpdateTime"] != null && row["UpdateTime"].ToString() != "")
         {
             model.UpdateTime = DateTime.Parse(row["UpdateTime"].ToString());
         }
         if (row["Creator"] != null)
         {
             model.Creator = row["Creator"].ToString();
         }
         if (row["Remark"] != null)
         {
             model.Remark = row["Remark"].ToString();
         }
         if (row["Gyroscope"] != null)
         {
             model.Remark = row["Gyroscope"].ToString();
         }
     }
     return(model);
 }