Beispiel #1
0
        /*向数据库添加一条reader记录*/
        public static bool SA_AddReader(Reader stReader, int iSettingsId)
        {
            StringBuilder sLogStr = new StringBuilder();
            int           iReaderId;
            int           iAntennasIdx;

            sLogStr.AppendFormat("come in SA_AddReader \r\n the reader info:ipaddress[{0}], numAntennas[{1}], rxPower[{2}] ",
                                 stReader.IPaddress, stReader.numAntennas, stReader.rxPower);
            Log.WriteLog(LogType.Trace, sLogStr);

            try
            {
                //生成lts的reader节点
                LTS.Reader oReader = new LTS.Reader();
                oReader.SettingsID  = iSettingsId;
                oReader.IPaddress   = stReader.IPaddress;
                oReader.NumAntennas = stReader.numAntennas;
                oReader.ReaderType  = stReader.iReaderType;

                //通过dat接口将reader节点数据插入数据库
                iReaderId = DAT.DataAccess.AddReader(oReader);
                if (iReaderId == -1)
                {
                    Log.WriteLog(LogType.Error, "error to call DataAccess.AddReader");
                    return(false);
                }

                sLogStr.Length = 0;
                sLogStr.AppendFormat("success to add reader record with id[{0}], IPaddress[{1}],NumAntennas[{2}],SettingsID[{3}]",
                                     iReaderId, oReader.IPaddress, oReader.NumAntennas, oReader.SettingsID);

                Log.WriteLog(LogType.Trace, sLogStr);

                for (iAntennasIdx = 0; iAntennasIdx < stReader.numAntennas; iAntennasIdx++)
                {
                    if (!SA_AddAntenna(stReader.antenna[iAntennasIdx], iReaderId))
                    {
                        Log.WriteLog(LogType.Error, "call AddAntenna error");
                        return(false);
                    }
                }
                return(true);
            }
            catch (Exception ex)
            {
                Log.WriteLog(LogType.Error, "TraceLog Error:" + ex.Message.ToString());
                return(false);
            }
        }
Beispiel #2
0
 public static LTS.Reader GetReaderItemByID(int?ReaderID)
 {
     LTS.Reader reader = new LTS.Reader();
     try
     {
         using (LTS.LTSBase access = new LTS.LTSDC())
         {
             reader = access.Reader.Where(o => o.ReaderID == ReaderID).FirstOrDefault();
         }
     }
     catch (Exception ex)
     {
     }
     return(reader);
 }
Beispiel #3
0
        public static int AddReader(LTS.Reader reader)
        {
            int?ReaderID = -1;

            try
            {
                using (LTS.LTSBase access = new LTS.LTSDC())
                {
                    access.InsertReader(reader.IPaddress, reader.NumAntennas, reader.SettingsID, ref ReaderID);
                }
            }
            catch (Exception ex)
            {
            }
            return(ReaderID.Value);
        }
Beispiel #4
0
        public static bool UpdateReader(LTS.Reader reader)
        {
            bool completed = false;

            try
            {
                using (LTS.LTSBase access = new LTS.LTSDC())
                {
                    access.UpdateReader(reader.IPaddress, reader.NumAntennas, reader.SettingsID, reader.ReaderID);
                    completed = true;
                }
            }
            catch (Exception ex)
            {
                completed = false;
            }
            return(completed);
        }
Beispiel #5
0
        private void btnAdd_Click(object sender, EventArgs e)
        {
            try
            {
                lblReader.Visible = false;
                lblName.Visible   = false;
                lblStore.Visible  = false;
                int          readerNum  = dataGridViewReaders.Rows.Count;
                int          antToAdd   = 0;
                int          antAdded   = 0;
                int          antToDel   = 0;
                int          antDeleted = 0;
                int          rToDel     = 0;
                int          rDeleted   = 0;
                bool         done       = false;
                LTS.Settings s;
                bool         fail = false;
                if (comboBoxStore.DataSource != null && listS.Where(u => u.StoreName == comboBoxStore.SelectedItem.ToString()).FirstOrDefault() != null)
                {
                    if (comboBoxSettingsName.DataSource != null && setList.Where(u => u.SettingsName == comboBoxSettingsName.SelectedItem.ToString()).FirstOrDefault() != null)
                    {
                        if (txtNewSettingsName.Text == "")
                        {
                            int index = comboBoxSettingsName.SelectedIndex;
                            s    = setList[index];
                            done = true;
                        }
                        else
                        {
                            int index = comboBoxSettingsName.SelectedIndex;
                            s = setList[index];
                            s.SettingsName = txtNewSettingsName.Text;
                            done           = DAT.DataAccess.UpdateSettings(s);
                        }

                        if (done)
                        {
                            if (readerNum > 0)
                            {
                                List <Reader> toAdd = reader.Where(i => i.readerID == 0).ToList();
                                if (toAdd != null)
                                {
                                    for (int q = 0; q < toAdd.Count; q++)
                                    {
                                        LTS.Reader r = new LTS.Reader();
                                        r.IPaddress   = toAdd[q].IPaddress;
                                        r.NumAntennas = toAdd[q].numAntennas;
                                        r.SettingsID  = s.SettingsID;
                                        antToAdd      = antToAdd + toAdd[q].antenna.Count;
                                        int rid = DAT.DataAccess.AddReader(r);
                                        if (rid != -1)
                                        {
                                            for (int y = 0; y < toAdd[q].antenna.Count; y++)
                                            {
                                                LTS.Antenna a = new LTS.Antenna();
                                                a.AntennaNumber = toAdd[q].antenna[y].antennaNumber;
                                                a.ReaderID      = rid;
                                                a.TxPower       = toAdd[q].antenna[y].txPower;
                                                a.RxPower       = toAdd[q].antenna[y].rxPower;
                                                int aid = DAT.DataAccess.AddAntenna(a);
                                                if (aid != -1)
                                                {
                                                    antAdded++;
                                                }
                                                else
                                                {
                                                    MessageBox.Show("Sorry, something went wrong, the setting was not updated!");
                                                    ((Main)this.Parent.Parent).ChangeView <Settings.Settings>();
                                                }
                                            }
                                        }
                                        else
                                        {
                                            MessageBox.Show("Sorry, something went wrong, the setting was not updated!");
                                            ((Main)this.Parent.Parent).ChangeView <Settings.Settings>();
                                        }
                                    }

                                    if (antAdded == antToAdd)
                                    {
                                        List <Reader> stay = new List <Reader>();
                                        stay = reader.Where(i => i.readerID != 0).ToList();
                                        for (int x = 0; x < stay.Count; x++)
                                        {
                                            Reader b = new Reader();
                                            b = stay[x];
                                            Reader c = new Reader();
                                            c = readerBackUp.Where(t => t.readerID == b.readerID).FirstOrDefault();
                                            if (c != null)
                                            {
                                                int ind = readerBackUp.IndexOf(c);
                                                readerBackUp.RemoveAt(ind);
                                            }
                                        }
                                        if (readerBackUp.Count != 0)
                                        {
                                            rToDel = readerBackUp.Count;
                                            for (int r = 0; r < readerBackUp.Count; r++)
                                            {
                                                antToDel = antToDel + readerBackUp[r].numAntennas;
                                                for (int z = 0; z < readerBackUp[r].antenna.Count; z++)
                                                {
                                                    int  aid  = readerBackUp[r].antenna[z].antennaID;
                                                    bool remA = DAT.DataAccess.RemoveAntenna(aid);
                                                    if (remA)
                                                    {
                                                        antDeleted++;
                                                    }
                                                    else
                                                    {
                                                        MessageBox.Show("Sorry, something went wrong, the setting was not updated!");
                                                        ((Main)this.Parent.Parent).ChangeView <Settings.Settings>();
                                                    }
                                                }

                                                int  reID = readerBackUp[r].readerID;
                                                bool remR = DAT.DataAccess.RemoveReader(reID);
                                                if (remR)
                                                {
                                                    rDeleted++;
                                                }
                                                else
                                                {
                                                    MessageBox.Show("Sorry, something went wrong, the setting was not updated!");
                                                    ((Main)this.Parent.Parent).ChangeView <Settings.Settings>();
                                                }
                                            }

                                            if (antDeleted == antToDel && rDeleted == rToDel)
                                            {
                                                MessageBox.Show("The setting was updated succesfully!");
                                                ((Main)this.Parent.Parent).ChangeView <Settings.Settings>();
                                            }
                                            else
                                            {
                                                MessageBox.Show("Sorry, something went wrong, the setting was not updated!");
                                                ((Main)this.Parent.Parent).ChangeView <Settings.Settings>();
                                            }
                                        }
                                        else
                                        {
                                            MessageBox.Show("The setting was updated succesfully!");
                                            ((Main)this.Parent.Parent).ChangeView <Settings.Settings>();
                                        }
                                    }
                                    else
                                    {
                                        MessageBox.Show("Sorry, something went wrong, the setting was not updated!");
                                        ((Main)this.Parent.Parent).ChangeView <Settings.Settings>();
                                    }
                                }
                                else
                                {
                                    MessageBox.Show("Sorry, something went wrong, the setting was not updated!");
                                    ((Main)this.Parent.Parent).ChangeView <Settings.Settings>();
                                }
                            }
                            else
                            {
                                lblReader.Visible = true;
                            }
                        }
                        else
                        {
                            MessageBox.Show("Sorry, something went wrong, the setting was not updated!");
                            ((Main)this.Parent.Parent).ChangeView <Settings.Settings>();
                        }
                    }
                    else
                    {
                        lblName.Visible = true;
                        if (readerNum > 0)
                        {
                        }
                        else
                        {
                            lblReader.Visible = true;
                        }
                    }
                }
                else
                {
                    lblStore.Visible = true;
                    if (comboBoxSettingsName.DataSource != null && setList.Where(u => u.SettingsName == comboBoxSettingsName.SelectedItem.ToString()).FirstOrDefault() != null)
                    {
                    }
                    else
                    {
                        lblName.Visible = true;
                    }

                    if (readerNum > 0)
                    {
                    }
                    else
                    {
                        lblReader.Visible = true;
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Sorry Something went wrong, the action was not completed!");
            }
        }
Beispiel #6
0
        private void btnAdd_Click(object sender, EventArgs e)
        {
            try
            {
                int totalNum = 0;
                lblName.Visible    = false;
                lblReader.Visible  = false;
                lblStore.Visible   = false;
                lblAntenna.Visible = false;
                lblIP.Visible      = false;

                string name = txtSettingsName.Text;

                if (name != "")
                {
                    if (comboBoxStore.DataSource != null && listS.Where(u => u.StoreName == comboBoxStore.SelectedItem.ToString()).FirstOrDefault() != null)
                    {
                        if (reader.Count != 0)
                        {
                            int index   = comboBoxStore.SelectedIndex;
                            int storeID = listS[index].StoreID;
                            sm.StoreID        = storeID;
                            sm.SettingsName   = name;
                            sm.SettingsSelect = false;

                            for (int x = 0; x < reader.Count; x++)
                            {
                                ReaderMain rm = new ReaderMain();
                                rm.IPaddress   = reader[x].IPaddress;
                                rm.NumAntennas = reader[x].numAntennas;

                                for (int y = 0; y < reader[x].antenna.Count; y++)
                                {
                                    LTS.Antenna a = new LTS.Antenna();
                                    a.AntennaNumber = reader[x].antenna[y].antennaNumber;
                                    a.RxPower       = reader[x].antenna[y].rxPower;
                                    a.TxPower       = reader[x].antenna[y].txPower;
                                    rm.antennas.Add(a);
                                }
                                sm.Readers.Add(rm);
                            }
                            LTS.Settings set = new LTS.Settings();
                            set.SettingsName   = sm.SettingsName;
                            set.SettingsSelect = sm.SettingsSelect;
                            set.StoreID        = sm.StoreID;

                            int setDone = DAT.DataAccess.AddSettings(set);
                            if (setDone != -1)
                            {
                                sm.SettingsID = setDone;
                                for (int a = 0; a < sm.Readers.Count; a++)
                                {
                                    LTS.Reader r = new LTS.Reader();
                                    r.IPaddress   = sm.Readers[a].IPaddress;
                                    r.NumAntennas = sm.Readers[a].NumAntennas;
                                    r.SettingsID  = sm.SettingsID;

                                    int rid = DAT.DataAccess.AddReader(r);
                                    if (rid != -1)
                                    {
                                        sm.Readers[a].ReaderID = rid;
                                        for (int b = 0; b < sm.Readers[a].antennas.Count; b++)
                                        {
                                            LTS.Antenna ant = new LTS.Antenna();
                                            ant.AntennaNumber = sm.Readers[a].antennas[b].AntennaNumber;
                                            ant.RxPower       = sm.Readers[a].antennas[b].RxPower;
                                            ant.TxPower       = sm.Readers[a].antennas[b].TxPower;
                                            ant.ReaderID      = sm.Readers[a].ReaderID;
                                            int aid = DAT.DataAccess.AddAntenna(ant);

                                            if (aid != -1)
                                            {
                                                totalNum = totalNum + 1;
                                            }
                                            else
                                            {
                                                MessageBox.Show("Sorry, something went wrong, the setting was not added!");
                                                ((Main)this.Parent.Parent).ChangeView <Settings>();
                                                break;
                                            }
                                        }
                                        if (totalNum == sm.TotalAmountAntennas())
                                        {
                                            MessageBox.Show("The setting was added successfully!");
                                            ((Main)this.Parent.Parent).ChangeView <Settings>();
                                        }
                                        else
                                        {
                                            MessageBox.Show("Sorry, something went wrong, the setting was not added!");
                                            ((Main)this.Parent.Parent).ChangeView <Settings>();
                                        }
                                    }
                                    else
                                    {
                                        MessageBox.Show("Sorry, something went wrong, the setting was not added!");
                                        ((Main)this.Parent.Parent).ChangeView <Settings>();
                                        break;
                                    }
                                }
                            }
                            else
                            {
                                MessageBox.Show("Sorry, something went wrong, the setting was not added!");
                                ((Main)this.Parent.Parent).ChangeView <Settings>();
                            }
                        }
                        else
                        {
                            lblReader.Visible = true;
                        }
                    }
                    else
                    {
                        lblStore.Visible = true;
                    }
                }
                else
                {
                    lblName.Visible = true;
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Sorry Something went wrong, the action was not completed!");
            }
        }