//更新温湿度数据 public static void UpdateDividerTandH(DividerProcess dividerProcess, float temp, float humidity) { string table = ""; switch (dividerProcess.curMode) { case EnumMode.Divider_V_AC: table = "divider_now_ac"; break; case EnumMode.Divider_V_DCP: table = "divider_now_dcp"; break; case EnumMode.Divider_V_DCN: table = "divider_now_dcn"; break; case EnumMode.Divider_F: table = "divider_now_f"; break; } int index = dividerProcess.curNum + 1; string sql = @"update " + table + " set temperature = " + temp + ", humidity = " + humidity + " where id = " + index; DataBase db = new DataBase(); db.ExecuteQuery(sql); }
//更新分压器输入 public static void UpdateDividerSourceInput(DividerProcess dividerProcess, float source) { string table = ""; switch (dividerProcess.curMode) { case EnumMode.Divider_V_AC: table = "divider_now_ac"; break; case EnumMode.Divider_V_DCP: table = "divider_now_dcp"; break; case EnumMode.Divider_V_DCN: table = "divider_now_dcn"; break; case EnumMode.Divider_F: table = "divider_now_f"; break; } string sql = @"update " + table + " set input = " + source + " where id = " + dividerProcess.curNum + 1; DataBase db = new DataBase(); db.ExecuteQuery(sql); }
//更新分压器监测状态数据 public static void UpdateDividerState(DividerProcess dividerProcess, int state) { string table = ""; switch (dividerProcess.curMode) { case EnumMode.Divider_V_AC: table = "divider_now_ac"; break; case EnumMode.Divider_V_DCP: table = "divider_now_dcp"; break; case EnumMode.Divider_V_DCN: table = "divider_now_dcn"; break; case EnumMode.Divider_F: table = "divider_now_f"; break; } int index = dividerProcess.curNum + 1; string sql = @"update " + table + " set state = " + state + " where id = " + index; DataBase db = new DataBase(); db.ExecuteQuery(sql); if (state == 2) { //序号更新到下一个点,这里curNum仍是当前点序号,index为下一个点序号,curNum从0开始,num从1开始,所以index加1 index += 1; sql = @"update divider_process set num = " + index; db.ExecuteQuery(sql); } }
//查询数据库源输入、温湿度等数据 public static bool FillDividerDataFromMaster(DividerProcess dividerProcess, DividerData dividerData) { string table = ""; List <DividerItem> list = null; switch (dividerProcess.curMode) { case EnumMode.Divider_V_AC: table = "divider_now_ac"; list = dividerData.voltageACData; break; case EnumMode.Divider_V_DCP: table = "divider_now_dcp"; list = dividerData.voltageDCPData; break; case EnumMode.Divider_V_DCN: table = "divider_now_dcn"; list = dividerData.voltageDCNData; break; case EnumMode.Divider_F: table = "divider_now_f"; list = dividerData.frequencyData; break; } int index = dividerProcess.curNum + 1; string sql = @"select input,temperature,humidity from " + table + " where id = " + index; DataBase db = new DataBase(); DataTable dt = db.ExecuteQuery(sql); float standOut = float.Parse(dt.Rows[0]["input"].ToString()); float temperature = float.Parse(dt.Rows[0]["temperature"].ToString()); float humidity = float.Parse(dt.Rows[0]["humidity"].ToString()); if (dt != null) { list[dividerProcess.curNum].StandOut = standOut; list[dividerProcess.curNum].Temperature = temperature; list[dividerProcess.curNum].Humidity = humidity; } if (standOut < 0.00001 || temperature < 0.00001) { return(false); } else { return(true); } }
//查询分压器监测状态数据 public static int QueryDividerState(DividerProcess dividerProcess) { string table = ""; switch (dividerProcess.curMode) { case EnumMode.Divider_V_AC: table = "divider_now_ac"; break; case EnumMode.Divider_V_DCP: table = "divider_now_dcp"; break; case EnumMode.Divider_V_DCN: table = "divider_now_dcn"; break; case EnumMode.Divider_F: table = "divider_now_f"; break; } string sql = @" select state from " + table + " where id = (select num from divider_process)"; DataBase db = new DataBase(); DataTable dt = db.ExecuteQuery(sql); int state = 0; if (dt != null) { if (dt.Rows.Count > 0) { state = int.Parse(dt.Rows[0]["state"].ToString()); } } return(state); }