private void button6_Click(object sender, EventArgs e)
        {
            if (AntennaList.Count > 0 && txtIP.Text != "")
            {
                Reader r = new Reader();
                r.IPaddress   = txtIP.Text;
                r.numAntennas = AntennaList.Count;
                for (int i = 0; i < r.numAntennas; i++)
                {
                    antenna a = new antenna();
                    a.antennaNumber = Int32.Parse(AntennaList[i].PortNumber);
                    a.rxPower       = AntennaList[i].RXPower;
                    a.txPower       = AntennaList[i].TXPower;
                    r.antenna.Add(a);
                }
                reader.Add(r);

                comboBoxStore.Enabled       = true;
                txtSettingsName.Enabled     = true;
                dataGridViewReaders.Enabled = true;
                buttonAddReader.Enabled     = true;
                buttonRemoveReader.Enabled  = true;
                dataGridViewReaders.Rows.Clear();
                for (int x = 0; x < reader.Count; x++)
                {
                    dataGridViewReaders.Rows.Add(reader[x].IPaddress, reader[x].numAntennas);
                }
                panel1.Visible = false;
                txtIP.Text     = "";
                AntennaList.Clear();
                flpAntennaConfig.Controls.Clear();
            }
        }
Esempio n. 2
0
        /*将指定reader下的所有天线信息保存到内存中*/
        private bool updateSettings_saveAntennaInfo(ref Reader stReader)
        {
            int iReaderId = stReader.ReaderID;

            Log.WriteLog(LogType.Trace, "come in updateSettings_saveAntennaInfo");

            try
            {
                Log.WriteLog(LogType.Trace, "goto get reader[" + iReaderId + "] all antenas info.");

                string    sAntSql = "select AntennaID, TxPower, RxPower, AntennaNumber, ReaderID from Antenna where ReaderID = " + iReaderId + ";";
                DataSet   stAntDs = SqlAccess.GetDataSet(sAntSql);
                DataTable stAntDt = stAntDs.Tables[0];

                if (stAntDt.Rows.Count > 0)
                {
                    Log.WriteLog(LogType.Trace, "there are " + stAntDt.Rows.Count + " antenna in reader[" + iReaderId + "] ");
                    for (int iARowIdx = 0; iARowIdx < stAntDt.Rows.Count; iARowIdx++)
                    {
                        StringBuilder sLog      = new StringBuilder();
                        antenna       stAntenna = new antenna();

                        DataRow stAntDr = stAntDt.Rows[iARowIdx];

                        stAntenna.rxPower       = decimal.Parse(stAntDr["RxPower"].ToString());
                        stAntenna.txPower       = decimal.Parse(stAntDr["TxPower"].ToString());
                        stAntenna.antennaNumber = int.Parse(stAntDr["AntennaNumber"].ToString());
                        stAntenna.AntennaID     = int.Parse(stAntDr["AntennaID"].ToString());
                        stAntenna.ReaderID      = int.Parse(stAntDr["ReaderID"].ToString());
                        stReader.antenna.Add(stAntenna);

                        sLog.Clear();
                        sLog.AppendFormat("success to set antenna row[{0}] info into memery \r\n", iARowIdx);
                        sLog.AppendFormat("the antenna info:id[{0}], txPower[{1}], rxPower[{2}], antennaNumber[{3}], readerID[{4}]",
                                          stAntDr["AntennaID"], stAntDr["TxPower"], stAntDr["RxPower"], stAntDr["AntennaNumber"], stAntDr["ReaderID"]);
                        Log.WriteLog(LogType.Trace, sLog);
                    }
                }
                else
                {
                    Log.WriteLog(LogType.Trace, "there is not antenna record in reader[" + iReaderId + "]");
                }
            }
            catch (Exception ex)
            {
                return(false);
            }

            return(true);
        }
Esempio n. 3
0
    private void OnEnable()
    {
        //initalize modifiable variables
        a = (antenna)target;

        targetObject = new UnityEditor.SerializedObject(a);

        serializedJoints       = targetObject.FindProperty("joints");
        serializedMaxRotation  = targetObject.FindProperty("maxRotation");
        serializedLastPosition = targetObject.FindProperty("lastPosition");
        serializedLastVelocity = targetObject.FindProperty("lastVelocity");
        serializedBendFactor   = targetObject.FindProperty("bendFactor");

        serializedRoots          = targetObject.FindProperty("roots");
        serializedDamper         = targetObject.FindProperty("damper");
        serializedSpringConstant = targetObject.FindProperty("springConstant");
        serializedRestCond       = targetObject.FindProperty("restCond");

        serializedVelocityTriggerX = targetObject.FindProperty("velocityTriggerX");
        serializedVelocityTriggerY = targetObject.FindProperty("velocityTriggerY");
    }
Esempio n. 4
0
        /*向reader增加一个天线信息*/
        public static bool SA_AddAntenna(antenna stAntenna, int iReaderId)
        {
            StringBuilder sLogStr = new StringBuilder();
            int           iAntennaId;

            sLogStr.AppendFormat("come in SA_AddAntennas \r\n      antennaNumber[{0}], txPower[{1}], rxPower[{2}], readerId[{3}] ",
                                 stAntenna.antennaNumber, stAntenna.txPower, stAntenna.rxPower, iReaderId);
            Log.WriteLog(LogType.Trace, sLogStr);

            try
            {
                LTS.Antenna oAntenna = new LTS.Antenna();                  //lts下的数据类型,用来保存将要和数据库交互的数据
                oAntenna.AntennaNumber = stAntenna.antennaNumber;
                oAntenna.TxPower       = stAntenna.txPower;
                oAntenna.RxPower       = stAntenna.rxPower;
                oAntenna.ReaderID      = iReaderId;


                iAntennaId = DAT.DataAccess.AddAntenna(oAntenna);
                if (iAntennaId == -1)
                {
                    Log.WriteLog(LogType.Error, "error to call DataAccess.AddAntenna");
                    return(false);
                }

                sLogStr.Length = 0;
                sLogStr.AppendFormat("success to add antenna record with id[{0}],AntennaNumber[{1}],TxPower[{2}],RxPower[{3}],ReaderID[{4}]",
                                     iAntennaId, oAntenna.AntennaNumber, oAntenna.TxPower, oAntenna.RxPower, oAntenna.ReaderID);

                Log.WriteLog(LogType.Trace, sLogStr);

                return(true);
            }
            catch (Exception ex)
            {
                Log.WriteLog(LogType.Error, "TraceLog Error:" + ex.Message.ToString());
                return(false);
            }
        }
Esempio n. 5
0
        /*处理读写器submit点击事件:添加一个读写器对象,并将其加入读写器队列*/
        private void addSettings_antennaSubmit_Click(object sender, EventArgs e)
        {
            Log.WriteLog(LogType.Trace, "come in addSetting_antennaSubmit_Click");

            if (AntennaList.Count > 0 && txtIP.Text != "")
            {
                Reader stReader = new Reader();

                /*判断 txtIP地址合法性*/
                {
                    string sIp = txtIP.Text;
                    Regex  rx  = new Regex(@"((?:(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d))))");
                    if (!rx.IsMatch(sIp))
                    {
                        Log.WriteLog(LogType.Trace, "the ip[" + sIp + "] format is invariable, can not create reader");
                        MessageBox.Show("Is not IP address");
                        return;
                    }

                    /*判断该ip在该store和setting下是否已经配置过,如果是,则先删除之前的reader配置,才能配置新的*/
                    string sSql = "SELECT Reader.ReaderID FROM Reader " +
                                  "JOIN Settings ON Reader.SettingsID = Settings.SettingsID " +
                                  "JOIN Store ON Settings.StoreID = Store.StoreID " +
                                  "WHERE Store.StoreID = " + giStoreId + " and Settings.SettingsName = '" + txtSettingsName.Text + "' and Reader.IPaddress = '" + txtIP.Text + "';";
                    try
                    {
                        DataSet stDs = SqlAccess.GetDataSet(sSql);
                        if (stDs.Tables[0].Rows.Count > 0)
                        {
                            Log.WriteLog(LogType.Trace, "the ip[" + txtIP.Text + "] has been config in store[" + giStoreId + "] setting[" + txtSettingsName.Text + "] reader, please delete it first3");
                            MessageBox.Show("the ip[" + txtIP.Text + "] has been config in machine[" + giStoreId + "] setting[" + txtSettingsName.Text + "] reader, please delete it first3");
                            return;
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show("process termination, because error to get reader id");
                        return;
                    }

                    /*判断内存里面是否已经有相同的ip*/
                    for (int idx = 0; idx < reader.Count; idx++)
                    {
                        if (string.Equals(sIp, reader[idx].IPaddress))
                        {
                            Log.WriteLog(LogType.Trace, "the ip[" + sIp + "] has been config in this add route, please delete it first5");
                            MessageBox.Show("the ip[" + sIp + "] has been config in this add route, please delete it first5");
                            return;
                        }
                    }
                }

                /*将天线配置及读写器ip写入读写器对象*/
                stReader.IPaddress   = txtIP.Text;
                stReader.iReaderType = cbReaderType.SelectedIndex;
                stReader.numAntennas = AntennaList.Count;
                for (int i = 0; i < stReader.numAntennas; i++)
                {
                    antenna a = new antenna();
                    a.antennaNumber = Int32.Parse(AntennaList[i].PortNumber);
                    a.rxPower       = AntennaList[i].RXPower;
                    a.txPower       = AntennaList[i].TXPower;
                    stReader.antenna.Add(a);

                    Log.WriteLog(LogType.Trace,
                                 "success to add antenna[" + i + "] into reader, the antenna info is:RxPower[" + a.rxPower + "], TxPower[" + a.txPower + "], antenna number[" + a.antennaNumber + "]");
                }

                //reader添加到reader数组
                reader.Add(stReader);
                Log.WriteLog(LogType.Trace,
                             "success to add reader into memery,the reader info is:ip[" + stReader.IPaddress + "], antenna num[" + stReader.numAntennas + "], readerType[" + stReader.iReaderType + "]");

                //使能控件可用性
                comboBoxStore.Enabled       = true;
                txtSettingsName.Enabled     = true;
                dataGridViewReaders.Enabled = true;
                btAddReader.Enabled         = true;
                buttonRemoveReader.Enabled  = true;
                dataGridViewReaders.Rows.Clear();

                //reader信息加载到显示控件
                for (int x = 0; x < reader.Count; x++)
                {
                    dataGridViewReaders.Rows.Add(reader[x].IPaddress, reader[x].numAntennas);
                }
                panel1.Visible = false;
                txtIP.Text     = "";
                AntennaList.Clear();
                flpAntennaConfig.Controls.Clear();
            }
            else
            {
                MessageBox.Show("please input reader ip address and antenna infomation.");
            }
        }
    public override void OnInspectorGUI()
    {
        targetObject.Update();

        //creates GUI tab
        tab = GUILayout.Toolbar(tab, tabTitles);

        switch (tab)
        {
        //basic vehicle stuff
        case 0:
            getVehicleValue();
            break;

        //wheel stuff
        case 1:
            //creates a drop down memnu with each steering method
            steeringMethod.intValue = EditorGUILayout.Popup("Steering Method", steeringMethod.intValue, steeringMethodMenu);

            //creates a feild to input prefab/mesh to create a new vehicle
            wheelMesh = (GameObject)EditorGUILayout.ObjectField("Wheel Mesh", wheelMesh, typeof(GameObject));

            //adds wheel
            if (GUILayout.Button("Add Wheel"))
            {
                makeWheel(wheelMesh);
            }

            //mirrors wheel from +x side to the -x side
            if (GUILayout.Button("Mirror Wheel"))
            {
                mirrorObj("wheel");
            }

            getWheels();
            break;

        //turret Stuff
        case 2:
            label("Adding Turret");

            //creates feilds for adding another turret
            turretMesh   = (GameObject)EditorGUILayout.ObjectField("Turret mesh", turretMesh, typeof(GameObject));
            barrelMesh   = (GameObject)EditorGUILayout.ObjectField("Barrel mesh", barrelMesh, typeof(GameObject));
            turretParent = (GameObject)EditorGUILayout.ObjectField("Turret Parent", turretParent, typeof(GameObject));

            //adds a turret
            if (GUILayout.Button("Add Turret"))
            {
                GameObject turret = Instantiate(turretTemplate, Vector3.zero, new Quaternion(), turretParent.transform);
                turret.name = "turret";
                Instantiate(turretMesh, turret.transform.position, turret.transform.rotation, turret.transform);
                Instantiate(barrelMesh, turret.transform.position, turret.transform.rotation, turret.transform);
            }

            //gets all the turret and displays turret information
            getTurrets();
            break;

        //misc stuff
        case 3:

            //creates a dropdown menu that shows antenna settings
            miscDropDowns[0] = EditorGUILayout.Foldout(miscDropDowns[0], "Antenna");

            if (miscDropDowns[0])
            {
                //creates feild to imput prefab/meshs to add an antenna
                antennaProp = (GameObject)EditorGUILayout.ObjectField("Antenna prefab", antennaProp, typeof(GameObject));
                miscParent  = (GameObject)EditorGUILayout.ObjectField("Parent", miscParent, typeof(GameObject));

                if (GUILayout.Button("Add Antenna"))
                {
                    GameObject antennaTemp = Instantiate(antennaProp, Vector3.zero, new Quaternion(), miscParent.transform);
                    antennaProp.name = "antenna";
                    antennaProp.tag  = "prop";
                    //checks if the input is a mesh with or without the antenna script
                    if (antennaTemp.GetComponent <antenna>() == null)
                    {
                        antenna component = antennaTemp.AddComponent(typeof(antenna)) as antenna;
                    }
                }
            }

            //creates a drop down menu with
            miscDropDowns[1] = EditorGUILayout.Foldout(miscDropDowns[1], "Lights");

            if (miscDropDowns[1])
            {
                lightProp  = (GameObject)EditorGUILayout.ObjectField("Light Prefab", lightProp, typeof(GameObject));
                miscParent = (GameObject)EditorGUILayout.ObjectField("Parent", miscParent, typeof(GameObject));

                if (GUILayout.Button("Add Light"))
                {
                    GameObject lightTemp = Instantiate(lightProp, Vector3.zero, new Quaternion(), miscParent.transform);
                    lightTemp.name = "light";
                    lightTemp.tag  = "prop";
                }

                if (GUILayout.Button("Mirror Lights"))
                {
                    mirrorObj("light");
                }
            }

            //updates the misc array
            int miscCount = 0;
            miscSerialized.ClearArray();
            for (int i1 = 0; i1 < v.transform.childCount; i1++)
            {
                if (v.transform.GetChild(i1).tag == "prop")
                {
                    miscSerialized.InsertArrayElementAtIndex(miscCount);
                    miscSerialized.GetArrayElementAtIndex(miscCount).objectReferenceValue = v.transform.GetChild(i1).gameObject;
                    miscCount += 1;
                }
            }
            break;
        }


        //update modified values
        targetObject.ApplyModifiedProperties();
        try
        {
            if (GUI.changed)
            {
                EditorUtility.SetDirty(v);
                EditorSceneManager.MarkSceneDirty(v.gameObject.scene);
            }
        }
        catch
        {
        }
    }
Esempio n. 7
0
        private void comboBoxSettingsName_SelectedIndexChanged(object sender, EventArgs e)
        {
            try
            {
                reader.Clear();

                int index = comboBoxSettingsName.SelectedIndex;
                int setid = setList[index].SettingsID;

                List <LTS.Reader> r = DAT.DataAccess.GetReader().Where(w => w.SettingsID == setid).ToList();
                if (r != null)
                {
                    for (int d = 0; d < r.Count; d++)
                    {
                        Reader re = new Reader();
                        re.IPaddress   = r[d].IPaddress;
                        re.numAntennas = r[d].NumAntennas;
                        re.readerID    = r[d].ReaderID;
                        List <LTS.Antenna> ant = DAT.DataAccess.GetAntenna().Where(c => c.ReaderID == re.readerID).ToList();
                        if (ant != null)
                        {
                            for (int k = 0; k < ant.Count; k++)
                            {
                                antenna a = new antenna();
                                a.antennaID     = ant[k].AntennaID;
                                a.antennaNumber = ant[k].AntennaNumber;
                                a.rxPower       = ant[k].RxPower;
                                a.txPower       = ant[k].TxPower;

                                re.antenna.Add(a);
                            }
                            reader.Add(re);
                        }
                    }

                    dataGridViewReaders.Rows.Clear();
                    for (int x = 0; x < reader.Count; x++)
                    {
                        dataGridViewReaders.Rows.Add(reader[x].IPaddress, reader[x].numAntennas);
                    }
                }

                readerBackUp.Clear();

                int indexR = comboBoxSettingsName.SelectedIndex;
                int setidR = setList[indexR].SettingsID;

                List <LTS.Reader> ri = DAT.DataAccess.GetReader().Where(w => w.SettingsID == setidR).ToList();
                if (ri != null)
                {
                    for (int d = 0; d < ri.Count; d++)
                    {
                        Reader red = new Reader();
                        red.IPaddress   = ri[d].IPaddress;
                        red.numAntennas = ri[d].NumAntennas;
                        red.readerID    = ri[d].ReaderID;
                        List <LTS.Antenna> ant = DAT.DataAccess.GetAntenna().Where(c => c.ReaderID == red.readerID).ToList();
                        if (ant != null)
                        {
                            for (int k = 0; k < ant.Count; k++)
                            {
                                antenna a = new antenna();
                                a.antennaID     = ant[k].AntennaID;
                                a.antennaNumber = ant[k].AntennaNumber;
                                a.rxPower       = ant[k].RxPower;
                                a.txPower       = ant[k].TxPower;

                                red.antenna.Add(a);
                            }
                            readerBackUp.Add(red);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Sorry Something went wrong, the action was not completed!");
            }
        }
Esempio n. 8
0
        //Margo
        private void button6_Click(object sender, EventArgs e)
        {
            try
            {
                lblIP.Visible      = false;
                lblAntenna.Visible = false;

                if (AntennaList.Count > 0)
                {
                    if (txtIP.Text != "")
                    {
                        string[] parts = txtIP.Text.Split('.');
                        if (parts.Length < 4)
                        {
                            lblIP.Visible = true;
                        }
                        else
                        {
                            bool valid = false;
                            foreach (string part in parts)
                            {
                                byte checkPart = 0;
                                if (!byte.TryParse(part, out checkPart))
                                {
                                    valid = true;
                                }
                            }

                            if (valid != false)
                            {
                                lblIP.Visible = true;
                            }
                            else
                            {
                                Reader r = new Reader();
                                r.IPaddress   = txtIP.Text;
                                r.numAntennas = AntennaList.Count;
                                for (int i = 0; i < r.numAntennas; i++)
                                {
                                    antenna a = new antenna();
                                    a.antennaNumber = Int32.Parse(AntennaList[i].PortNumber);
                                    a.rxPower       = AntennaList[i].RXPower;
                                    a.txPower       = AntennaList[i].TXPower;
                                    r.antenna.Add(a);
                                }
                                reader.Add(r);

                                comboBoxStore.Enabled        = true;
                                comboBoxSettingsName.Enabled = true;
                                dataGridViewReaders.Enabled  = true;
                                buttonAddReader.Enabled      = true;
                                buttonRemoveReader.Enabled   = true;
                                dataGridViewReaders.Rows.Clear();
                                for (int x = 0; x < reader.Count; x++)
                                {
                                    dataGridViewReaders.Rows.Add(reader[x].IPaddress, reader[x].numAntennas);
                                }
                                panel1.Visible = false;
                                txtIP.Text     = "";
                                AntennaList.Clear();
                                flpAntennaConfig.Controls.Clear();
                            }
                        }
                    }
                    else
                    {
                        lblIP.Visible = true;
                    }
                }
                else
                {
                    lblAntenna.Visible = true;
                    if (txtIP.Text != "")
                    {
                        string[] parts = txtIP.Text.Split('.');
                        if (parts.Length < 4)
                        {
                            lblIP.Visible = true;
                        }
                        else
                        {
                            bool valid = false;
                            foreach (string part in parts)
                            {
                                byte checkPart = 0;
                                if (!byte.TryParse(part, out checkPart))
                                {
                                    valid = true;
                                }
                            }

                            if (valid != false)
                            {
                                lblIP.Visible = true;
                            }
                        }
                    }
                    else
                    {
                        lblIP.Visible = true;
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Sorry Something went wrong, the action was not completed!");
            }
        }
Esempio n. 9
0
        private void updateSettings_btnUpdate_Click(object sender, EventArgs e)
        {
            ArrayList aDelSql = new ArrayList();
            int       iSettingsID, iReaderID;
            Reader    stReader;

            Log.WriteLog(LogType.Trace, "come in updateSettings_btnUpdate_Click");

                        #if false //modify at 20171202
            string sCommStr = "Data Source=.; Initial Catalog=ssms; UID=sa;PASSWORD=123456;pooling=false; ";
#else
            string sCommStr = Properties.Settings.Default.ssmsConnectionString;
#endif

            /*获取settingsID*/
            iSettingsID = giSettingId;


            /*获得要删除的reader和antenna的信息*/
            if (!updateSettings_encodeSqlForDel(ref aDelSql))
            {
                Log.WriteLog(LogType.Error, "errorr to call updateSettings_encodeSqlForDel");
                return;
            }

            /*建立数据库连接*/
            using (SqlConnection conn = new SqlConnection(sCommStr))
            {
                conn.Open();
                SqlCommand cmd = new SqlCommand();
                cmd.Connection = conn;
                SqlTransaction tx = conn.BeginTransaction();
                cmd.Transaction = tx;
                try
                {
                    Log.WriteLog(LogType.Trace, "begin delete readers and antennas transition");
                    /*删除数据库中已有的reader和antenna配置*/
                    for (int n = 0; n < aDelSql.Count; n++)
                    {
                        string sqlString = aDelSql[n].ToString();
                        if (sqlString.Trim().Length > 1)
                        {
                            cmd.CommandText = sqlString;
                            cmd.ExecuteNonQuery();

                            Log.WriteLog(LogType.Trace, "success to exec sql[" + sqlString + "];");
                        }
                    }
                    Log.WriteLog(LogType.Trace, "success to delete all readers and antenna under store[" + giStoreId + "][" + comboBoxStore.Text + "] settings[" + giSettingId + "][" + comboBoxSettings.Text + "]");

                    Log.WriteLog(LogType.Trace, "goto create new readers and antennas according to memery");
                    for (int idx = 0; idx < reader.Count; idx++)
                    {
                        stReader = reader[idx];

                        /*插入reader记录*/
                        string sSql = "INSERT INTO Reader VALUES('" + stReader.IPaddress + "'," + stReader.numAntennas + ", " + iSettingsID + ", " + stReader.iReaderType + ") select @@identity;";
                        cmd.CommandText = sSql;
                        iReaderID       = Convert.ToInt32(cmd.ExecuteScalar());
                        Log.WriteLog(LogType.Trace, "success to exec sql[" + sSql + "];");

                        /*插入reader下所有antenna*/
                        for (int iAntIdx = 0; iAntIdx < stReader.numAntennas; iAntIdx++)
                        {
                            antenna stAnt   = stReader.antenna[iAntIdx];
                            string  sAntSql = "INSERT INTO Antenna VALUES(" + stAnt.txPower + ", " + stAnt.rxPower + ", " + stAnt.antennaNumber + ", " + iReaderID + ");";
                            cmd.CommandText = sAntSql;
                            cmd.ExecuteNonQuery();

                            Log.WriteLog(LogType.Trace, "success to exec sql[" + sAntSql + "];");
                        }
                    }
                    Log.WriteLog(LogType.Trace, "success to create new readers and antennas according to memery");

                    //更新setting的名字
                    if (!string.Equals(comboBoxSettings.Text, tSettingsName.Text))
                    {
                        Log.WriteLog(LogType.Trace, "goto change settings[" + giSettingId + "] name from[" + comboBoxSettings.Text + "] to [" + tSettingsName.Text + "]");
                        string sSql = "update Settings set SettingsName='" + tSettingsName.Text + "' where SettingsID=" + giSettingId + ";";

                        cmd.CommandText = sSql;
                        cmd.ExecuteNonQuery();

                        Log.WriteLog(LogType.Trace, "success to exec sql[" + sSql + "];");
                    }

                    tx.Commit();
                    Log.WriteLog(LogType.Trace, "end transition");
                    MessageBox.Show(Macro.SUCCESS_UPDATE_SETTING);

                    ((Main)this.Parent.Parent).ChangeView <UpdateSettings>();
                }
                catch (System.Data.SqlClient.SqlException E)
                {
                    tx.Rollback();

                    Log.WriteLog(LogType.Error, "error to exec sql transition, the error info is [" + E.Message + "]");

                    //MessageBox.Show(E.Message);

                    throw E;
                }
                finally
                {
                    cmd.Dispose();
                    conn.Close();
                }
            }
            return;
        }
Esempio n. 10
0
        /*处理reader submit按钮点击事件*/
        private void updateSettings_antennaSubmit_click(object sender, EventArgs e)
        {
            Log.WriteLog(LogType.Trace, "come in updateSettings_antennaSubmit_click");

            if (txtIP.Text == "")
            {
                Log.WriteLog(LogType.Warning, "the ip is empty, please input ip info");
                MessageBox.Show("the ip is empty, please input ip info");
                return;
            }

            if (AntennaList.Count == 0)
            {
                Log.WriteLog(LogType.Warning, "there is not antenna config info, please input them.");
                MessageBox.Show("there is not antenna config info, please input them.");
                return;
            }

            if (AntennaList.Count > 0 && txtIP.Text != "")
            {
                /*判断 txtIP地址合法性*/
                if (!updateSettings_readerIpIsEnable())
                {
                    return;
                }

                /*生成一个reader对象*/
                Reader r = new Reader();
                r.IPaddress   = txtIP.Text;
                r.numAntennas = AntennaList.Count;
                r.iReaderType = cbReaderType.SelectedIndex;

                /*生成antenna对象,并把其添加到reader对象中*/
                for (int i = 0; i < r.numAntennas; i++)
                {
                    antenna a = new antenna();
                    a.antennaNumber = Int32.Parse(AntennaList[i].PortNumber);
                    a.rxPower       = AntennaList[i].RXPower;
                    a.txPower       = AntennaList[i].TXPower;
                    r.antenna.Add(a);

                    Log.WriteLog(LogType.Trace,
                                 "success to add antenna[" + i + "] into reader, the antenna info is:RxPower[" + a.rxPower + "], TxPower[" + a.txPower + "], antenna number[" + a.antennaNumber + "]");
                }
                reader.Add(r);
                Log.WriteLog(LogType.Trace,
                             "success to add reader into memery,the reader info is:ip[" + r.IPaddress + "], antenna num[" + r.numAntennas + "]");


                comboBoxStore.Enabled      = true;
                tSettingsName.Enabled      = true;
                dgvReaders.Enabled         = true;
                bAddReader.Enabled         = true;
                buttonRemoveReader.Enabled = true;
                comboBoxSettings.Enabled   = true;


                /*通过控件显示所有reader信息*/
                dgvReaders.Rows.Clear();
                for (int x = 0; x < reader.Count; x++)
                {
                    dgvReaders.Rows.Add(reader[x].IPaddress, reader[x].numAntennas);
                }

                panel1.Visible = false;
                txtIP.Text     = "";
                AntennaList.Clear();
                flpAntennaConfig.Controls.Clear();
            }
        }