예제 #1
0
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                this.dateTimeNow = DateTime.Now;
                if (!this.IsPostBack)
                {
                    this.graphData          = new List <string>();
                    this.graphTemperature   = new List <double>();
                    this.graphPressure      = new List <double>();
                    this.graphHumidity      = new List <double>();
                    this.graphExTemperature = new List <double>();

                    Label1.Text = "今日の環境データ(" + dateTimeNow.ToString() + " 現在)";
                    var currentAqualiumData = AzureStrageTable.DeserializeAqualiumDataCurrent();

                    this.dateLogPeriodStart = DateTimeOffset.Parse(dateTimeNow.Date.ToString());
                    this.dateLogPeriodEnd   = DateTimeOffset.Parse(dateTimeNow.ToString());
                    this.getIoTData(IntervalPeriod.minutes);
                    this.drawGraph();
                }
            }
            catch (Exception err)
            {
                throw err;
            }
        }
예제 #2
0
        /*
         * protected void ButtonUpdate_Click(object sender, EventArgs e)
         * {
         *  dateLogPeriodStart = DateTimeOffset.Parse(this.txtDate1.Text);
         *  dateLogPeriodEnd = DateTimeOffset.Parse(this.txtDate2.Text);
         *  foreach (var log in AzureStrageTable.GetLogDatas(dateLogPeriodStart, dateLogPeriodEnd))
         *  {
         *      this.TextBox1.Text += ";" + log;
         *  }
         * }
         */
        protected void ButtonUpdateGridView_Click(object sender, EventArgs e)
        {
            dateLogPeriodStart = DateTimeOffset.Parse(this.txtDate3.Text);
            dateLogPeriodEnd   = DateTimeOffset.Parse(this.txtDate4.Text);

            var dataSetAqua = AzureStrageTable.DeserializeAqualiumDataSet(dateLogPeriodStart, dateLogPeriodEnd);

            this.GridViewIOTTable.DataMember = dataSetAqua.Tables[0].TableName;
            this.GridViewIOTTable.DataSource = dataSetAqua;
            this.GridViewIOTTable.DataBind();
        }
예제 #3
0
        private void getIoTData(IntervalPeriod interval)
        {
            int    intervalMinutes;
            string secondUnit = "";

            switch (interval)
            {
            case IntervalPeriod.minutes:
                intervalMinutes = 1;
                secondUnit      = "日";
                break;

            case IntervalPeriod.day:
                intervalMinutes = 60;
                secondUnit      = "日";
                break;

            case IntervalPeriod.week:
                intervalMinutes = 60 * 24;
                secondUnit      = "月";
                break;

            default:
                intervalMinutes = 0;
                break;
            }

            //IoTデータの取得を行います
            var dataSetAqua   = AzureStrageTable.DeserializeAqualiumDataSet(dateLogPeriodStart, dateLogPeriodEnd);
            var dataTableAqua = dataSetAqua.Tables["aqua"];

            this.graphData          = new List <string>();
            this.graphTemperature   = new List <double>();
            this.graphHumidity      = new List <double>();
            this.graphPressure      = new List <double>();
            this.graphExTemperature = new List <double>();
            for (int i = 0; i < dataTableAqua.Rows.Count; i++)
            {
                var tmpDateTime  = DateTime.Parse((string)dataTableAqua.Rows[i]["TimeStamp"]);
                int totalMinutes = tmpDateTime.Month * 30 + tmpDateTime.Day * 24 + tmpDateTime.Hour * 60 + tmpDateTime.Minute;
                if ((totalMinutes % intervalMinutes) == 0)
                {
                    var    tmp               = tmpDateTime.Day.ToString() + secondUnit + tmpDateTime.Hour.ToString() + ":" + tmpDateTime.Minute.ToString();
                    double tmpTemperature    = double.Parse((string)dataTableAqua.Rows[i]["Temperature"]);
                    double tmpHumidity       = double.Parse((string)dataTableAqua.Rows[i]["Humidity"]);
                    double tmpPressure       = double.Parse((string)dataTableAqua.Rows[i]["Pressure"]);
                    double tmpExtTemperature = double.Parse((string)dataTableAqua.Rows[i]["ExternalTemperature"]);

                    if (lowLimitTemperature <= tmpTemperature && tmpTemperature <= highLimitTemperature &&
                        lowLimitHumidity <= tmpHumidity && tmpHumidity <= highLimitHumidity &&
                        lowLimitPressure <= tmpPressure && tmpPressure <= highLimitPressure &&
                        lowLimitTemperature <= tmpExtTemperature && tmpExtTemperature <= highLimitTemperature)
                    {
                        graphData.Add(tmp);
                        graphTemperature.Add(tmpTemperature);
                        graphHumidity.Add(tmpHumidity);
                        graphPressure.Add(tmpPressure);
                        graphExTemperature.Add(tmpExtTemperature);
                    }
                }
            }
        }