Пример #1
0
        //查询数据库源输入、温湿度等数据
        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);
            }
        }
Пример #2
0
        //根据测量模式批量插入分压器数据到divider_data表
        public static bool SaveDividerDataByMode(DividerData dividerData, EnumMode mode)
        {
            DataBase db = new DataBase();
//            string sql = "ALTER TABLE `divider_data` AUTO_INCREMENT = MAX(id) + 1";
//            db.ExecuteQuery(sql);
            DataTable sourceTable = new DataTable();

            sourceTable.TableName = "divider_data";
            sourceTable.Columns.Add("divider_id", typeof(int));
            sourceTable.Columns.Add("source_volt", typeof(float));
            sourceTable.Columns.Add("source_freq", typeof(float));
            sourceTable.Columns.Add("stand_divider_volt", typeof(float));
            sourceTable.Columns.Add("test_divider_volt", typeof(float));
            sourceTable.Columns.Add("temperature", typeof(float));
            sourceTable.Columns.Add("humidity", typeof(float));


            List <DividerItem> list = null;

            switch (mode)
            {
            case EnumMode.Divider_V_DCP:
                list = dividerData.voltageDCPData;
                break;

            case EnumMode.Divider_V_DCN:
                list = dividerData.voltageDCNData;
                break;

            case EnumMode.Divider_V_AC:
                list = dividerData.voltageACData;
                break;

            case EnumMode.Divider_F:
                list = dividerData.frequencyData;
                break;
            }
            AddRow2TableDivider(sourceTable, list, dividerData.dividerId);
            try
            {
                BulkInsert(sourceTable);
            }
            catch (Exception)
            {
                return(false);
            }
            return(true);
        }
Пример #3
0
        //所有模式批量插入分压器数据到divider_data表
        public static bool SaveDividerDataAll(DividerData dividerData)
        {
            DataBase  db          = new DataBase();
            DataTable sourceTable = new DataTable();

            sourceTable.TableName = "divider_data";
            sourceTable.Columns.Add("divider_id", typeof(int));
            sourceTable.Columns.Add("source_volt", typeof(float));
            sourceTable.Columns.Add("source_freq", typeof(float));
            sourceTable.Columns.Add("stand_divider_volt", typeof(float));
            sourceTable.Columns.Add("test_divider_volt", typeof(float));
            sourceTable.Columns.Add("temperature", typeof(float));
            sourceTable.Columns.Add("humidity", typeof(float));

            int dividerId           = 1;
            List <DividerItem> list = null;

            list = dividerData.voltageDCPData;
            AddRow2TableDivider(sourceTable, list, dividerId);

            list = dividerData.voltageDCNData;
            AddRow2TableDivider(sourceTable, list, dividerId);

            list = dividerData.voltageACData;
            AddRow2TableDivider(sourceTable, list, dividerId);

            list = dividerData.frequencyData;
            AddRow2TableDivider(sourceTable, list, dividerId);

            try
            {
                BulkInsert(sourceTable);
            }
            catch (Exception)
            {
                return(false);
            }
            return(true);
        }