Пример #1
0
        private void updateItem_store_SelectedIdxChg(object sender, EventArgs e)
        {
            Log.WriteLog(LogType.Trace, "come in updateItem_store_SelectedIdxChg");
            lConnectMsg.Text = " ";
            lStoreMsg.Text   = " ";

            try
            {
                if (cbStore.SelectedIndex > -1)
                {
                    LTS.Store    stStore = listS[cbStore.SelectedIndex];
                    LTS.Settings set     = DAT.DataAccess.GetSettings().Where(y => y.StoreID == stStore.StoreID && y.SettingsSelect == true).FirstOrDefault();

                    //在指定的store下进行扫描,并返回扫到的epc
                    if (set == null)
                    {
                        Log.WriteLog(LogType.Warning, "warning:there is not settings available in store[" + stStore.StoreID + "]");

                        lStoreMsg.Text = ("the matchine[" + stStore.StoreName + "] is not band any settings, please change another matchine. ");
                    }
                }
            }
            catch (Exception ex)
            {
                Log.WriteLog(LogType.Error, "error to change store index, the error msg is " + ex.Message + "");
            }
        }
Пример #2
0
        private void addItem_rfid_click(object sender, EventArgs e)
        {
            Log.WriteLog(LogType.Trace, "come in addItem_rfid_click");

            lStoreMsg.Visible = false;

            try
            {
                try
                {
                    time          = 0;
                    lblTimer.Text = time.ToString();

                    timer = new System.Timers.Timer();
                    //注册时间超时后需要执行的事件
                    timer.Elapsed += addItem_timer_elapsed;
                    timer.Interval = 1000;

                    //屏蔽一些控件的可用性
                    addItem_enableOrDisable(false);


                    epc = "";
                    int       iStore = cbStore.SelectedIndex;
                    LTS.Store s      = listS[iStore];

                    //读取store下生效的settings配置
                    LTS.Settings set = DAT.DataAccess.GetSettings().Where(y => y.StoreID == s.StoreID && y.SettingsSelect == true).FirstOrDefault();
                    if (set != null)
                    {
                        Log.WriteLog(LogType.Trace, "goto connect reader with setting[" + set.SettingsID + "] in store[" + s.StoreID + "]");
                        addItem_connect(set);
                    }
                    else
                    {
                        //lblConnect.Text = ("Settings not found!");
                        lStoreMsg.Visible = true;

                        Log.WriteLog(LogType.Error, "can not get any settings from database with in store[" + s.StoreID + "]");

                        addItem_enableOrDisable(true);
                    }
                }
                catch (Exception exx)
                {
                    Log.WriteLog(LogType.Error, "error to get settings info with store");
                    //lblConnect.Text = ("Store not selected!");
                    lStoreMsg.Visible = true;
                    addItem_enableOrDisable(true);
                }
            }
            catch (Exception ex)
            {
                Log.WriteLog(LogType.Error, "error to connect to reader in store");
                MessageBox.Show("Sorry Something went wrong, the action was not completed!");
            }
        }
Пример #3
0
        /*向数据库添加一条setting记录*/
        public static bool SA_AddSettings(string sStoreName, int iStoreId, string sSettingsName, ref int iSettingsId)
        {
            StringBuilder sLogStr = new StringBuilder();

            //LTS.Store oStore;
            LTS.Settings oSettings = null;

            sLogStr.AppendFormat("come in SA_AddSettings\r\nsStoreName[{0}], sSettingsName[{1}],iStoreId[{2}] ", sStoreName, sSettingsName, iStoreId);
            Log.WriteLog(LogType.Trace, sLogStr);

            try
            {
                //oStore = DAT.DataAccess.GetStoreItemByName(sStoreName);
                //oStore = DAT.DataAccess.GetStoreItemByID(iStoreId);

                oSettings = DAT.DataAccess.GetSettingsItemByName(sSettingsName, iStoreId);
                if (oSettings == null)
                {
                    oSettings = new LTS.Settings();
                    oSettings.SettingsName   = sSettingsName;
                    oSettings.StoreID        = iStoreId;
                    oSettings.SettingsSelect = false;

                    iSettingsId = DAT.DataAccess.AddSettings(oSettings);
                    if (iSettingsId == -1)
                    {
                        Log.WriteLog(LogType.Error, "error to call DataAccess.AddSettings");
                        return(false);
                    }

                    sLogStr.Length = 0;
                    sLogStr.AppendFormat("success to add settings record with id[{0}], name[{1}],selectFlag[{2}],storeId[{3}]",
                                         iSettingsId, oSettings.SettingsName, oSettings.SettingsSelect, iStoreId);

                    Log.WriteLog(LogType.Trace, sLogStr);

                    return(true);
                }
                else
                {
                    iSettingsId = oSettings.SettingsID;

                    sLogStr.Length = 0;
                    sLogStr.AppendFormat("success to get settings record with id[{0}], name[{1}],storeId[{2}]",
                                         iSettingsId, oSettings.SettingsName, iStoreId);

                    Log.WriteLog(LogType.Trace, sLogStr);
                    return(true);
                }
            }
            catch (Exception ex)
            {
                Log.WriteLog(LogType.Error, "TraceLog Error:" + ex.Message.ToString());
                return(false);
            }
        }
        //Margo
        private void button2_Click(object sender, EventArgs e)
        {
            try
            {
                label1.Visible = false;
                if (st.Where(u => u.StoreName == comboBoxStore.SelectedItem.ToString()).FirstOrDefault() != null)
                {
                    try
                    {
                        time           = 0;
                        lblTimer.Text  = time.ToString();
                        timer          = new System.Timers.Timer();
                        timer.Elapsed += timer_Elapsed;
                        timer.Interval = 1000;
                        ((UpdateStock)this.Parent.Parent).EnableOrDisable(false);
                        EnableOrDisable(false);
                        epc = "";
                        int       iStore = comboBoxStore.SelectedIndex;
                        LTS.Store s      = st[iStore];

                        LTS.Settings set = DAT.DataAccess.GetSettings().Where(y => y.StoreID == s.StoreID && y.SettingsSelect == true).FirstOrDefault();
                        if (set != null)
                        {
                            connect(set);
                        }
                        else
                        {
                            lblConnect.Text = ("Settings not found!");
                            EnableOrDisable(true);
                            ((UpdateStock)this.Parent.Parent).EnableOrDisable(true);
                        }
                    }
                    catch (Exception exx)
                    {
                        lblConnect.Text = ("Store not selected!");
                        EnableOrDisable(true);
                        ((UpdateStock)this.Parent.Parent).EnableOrDisable(true);
                    }
                }
                else
                {
                    label1.Visible = true;
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Sorry Something went wrong, the action was not completed!");
            }
        }
Пример #5
0
 public static LTS.Settings GetSettingsItemByID(int?SettingsID)
 {
     LTS.Settings settings = new LTS.Settings();
     try
     {
         using (LTS.LTSBase access = new LTS.LTSDC())
         {
             settings = access.Settings.Where(o => o.SettingsID == SettingsID).FirstOrDefault();
         }
     }
     catch (Exception ex)
     {
     }
     return(settings);
 }
Пример #6
0
        public static int AddSettings(LTS.Settings settings)
        {
            int?SettingsID = -1;

            try
            {
                using (LTS.LTSBase access = new LTS.LTSDC())
                {
                    access.InsertSettings(settings.SettingsName, settings.SettingsSelect, settings.StoreID, ref SettingsID);
                }
            }
            catch (Exception ex)
            {
            }
            return(SettingsID.Value);
        }
Пример #7
0
        public static bool UpdateSettings(LTS.Settings settings)
        {
            bool completed = false;

            try
            {
                using (LTS.LTSBase access = new LTS.LTSDC())
                {
                    access.UpdateSettings(settings.SettingsName, settings.SettingsSelect, settings.StoreID, settings.SettingsID);
                    completed = true;
                }
            }
            catch (Exception ex)
            {
                completed = false;
            }
            return(completed);
        }
Пример #8
0
        //Margo
        private void comboBoxStore_SelectedIndexChanged(object sender, EventArgs e)
        {
            try
            {
                panel1.Visible = false;
                int index   = comboBoxStore.SelectedIndex;
                int storeID = listS[index].StoreID;

                set = DAT.DataAccess.GetSettings().Where(r => r.StoreID == storeID && r.SettingsSelect == true).FirstOrDefault();
                if (set != null)
                {
                    setName.Text = set.SettingsName;
                    List <LTS.Reader> r = new List <LTS.Reader>();
                    r = DAT.DataAccess.GetReader().Where(y => y.SettingsID == set.SettingsID).ToList();
                    List <string> rs = new List <string>();
                    for (int q = 0; q < r.Count; q++)
                    {
                        rs.Add(r[q].IPaddress + " :  " + r[q].NumAntennas + " antenna(s)");
                    }
                    lbReader.DataSource = rs;
                    panel1.Visible      = true;

                    dbList = DAT.DataAccess.GetItem().Where(t => t.ItemStatus == true && t.StoreID == storeID).ToList();
                    theList.Clear();
                    for (int h = 0; h < dbList.Count; h++)
                    {
                        inventory i = new inventory();
                        i.itemID = dbList[h].ItemID;
                        i.EPC    = dbList[h].TagEPC;
                        LTS.Product p = DAT.DataAccess.GetProduct().Where(t => t.ProductID == dbList[h].ProductID).FirstOrDefault();
                        if (p != null)
                        {
                            i.ProductName        = p.ProductName;
                            i.ProductDescription = p.ProductDescription;
                            theList.Add(i);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Sorry Something went wrong, the action was not completed!");
            }
        }
Пример #9
0
        /*在指定的store里面扫描epc,并把epc返回*/
        private void updateItem_rfid_click(object sender, EventArgs e)
        {
            Log.WriteLog(LogType.Trace, "come in updateItem_rfid_click");
            lConnectMsg.Text = " ";
            label4.Visible   = false;
            try
            {
                time           = 0;
                lblTimer.Text  = time.ToString();
                timer          = new System.Timers.Timer();
                timer.Elapsed += updateItem_timer_elapsed;
                timer.Interval = 1000;
                updateItem_enableOrDisable(false);
                epc = "";
                int       iStore = cbStore.SelectedIndex;
                LTS.Store s      = listS[iStore];

                LTS.Settings set = DAT.DataAccess.GetSettings().Where(y => y.StoreID == s.StoreID && y.SettingsSelect == true).FirstOrDefault();

                //在指定的store下进行扫描,并返回扫到的epc
                if (set != null)
                {
                    Log.WriteLog(LogType.Trace, "goto connect reader using settings[" + set.SettingsID + "] configuration in store[" + s.StoreID + "]");

                    updateItem_connect(set);
                }
                else
                {
                    Log.WriteLog(LogType.Warning, "warning:there is not settings available in store[" + s.StoreID + "]");

                    lStoreMsg.Text = ("Settings not found!");
                    updateItem_enableOrDisable(true);
                }
            }
            catch (Exception exx)
            {
                Log.WriteLog(LogType.Error, "error to get epc from specify store");

                lStoreMsg.Text = ("error to get epc from specify store");
                updateItem_enableOrDisable(true);
            }
        }
        //Margo
        bool connect(LTS.Settings se)
        {
            try
            {
                lblConnect.Text = "Connecting...";


                int index = comboBoxStore.SelectedIndex;
                if (st != null)
                {
                    int storeID = st[index].StoreID;

                    LTS.Settings set = se;

                    sm = null;
                    sm = new SettingsMain();
                    impinjrev.Clear();
                    sm.SettingsID     = set.SettingsID;
                    sm.SettingsName   = set.SettingsName;
                    sm.SettingsSelect = set.SettingsSelect;
                    sm.StoreID        = set.StoreID;

                    LTS.Store store = DAT.DataAccess.GetStore().Where(i => i.StoreID == sm.StoreID).FirstOrDefault();
                    sm.StoreLocation = store.StoreLocation;
                    sm.StoreName     = store.StoreName;

                    List <LTS.Reader> readers = new List <LTS.Reader>();
                    readers = DAT.DataAccess.GetReader().Where(j => j.SettingsID == sm.SettingsID).ToList();
                    for (int j = 0; j < readers.Count; j++)
                    {
                        ReaderMain rm = new ReaderMain();
                        rm.ReaderID    = readers[j].ReaderID;
                        rm.IPaddress   = readers[j].IPaddress;
                        rm.NumAntennas = readers[j].NumAntennas;
                        rm.antennas    = DAT.DataAccess.GetAntenna().Where(q => q.ReaderID == rm.ReaderID).ToList();

                        sm.Readers.Add(rm);
                    }
                    bool checks = true;

                    for (int x = 0; x < sm.Readers.Count; x++)
                    {
                        ImpinjRevolution ir = new ImpinjRevolution();
                        ir.ReaderScanMode = ScanMode.ScanItem;
                        ir.HostName       = sm.Readers[x].IPaddress;
                        ir.Antennas       = sm.Readers[x].antennas;

                        ir.TagRead += ir_TagRead;
                        ir.Connect();

                        impinjrev.Add(ir);
                        if (!ir.isConnected)
                        {
                            if (checks == true)
                            {
                                checks = false;
                            }
                        }
                    }

                    if (checks == true)
                    {
                        lblConnect.Text = "Connected";
                        timer.Start();
                        impinjrev.ForEach(imp =>
                        {
                            imp.TagRead += ir_TagRead;
                            imp.StartRead();
                        });

                        ((Form1)this.Parent.Parent.Parent.Parent).scan = true;
                        lblConnect.Text = "Reading...";
                        lblTimer.Text   = time.ToString();
                    }
                    else
                    {
                        lblConnect.Text = "Not Connected!";
                        timer.Stop();
                        timer.Elapsed -= timer_Elapsed;
                        time           = 0;
                        for (int i = 0; i < impinjrev.Count; i++)
                        {
                            impinjrev[i].StopRead();
                            impinjrev[i].Disconnect();
                        }
                        EnableOrDisable(true);
                        ((Form1)this.Parent.Parent.Parent.Parent).scan = false;
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Sorry Something went wrong, the action was not completed!");
            }

            return(true);
        }
        //Margo
        private void btnAdd_Click(object sender, EventArgs e)
        {
            try
            {
                label6.Visible = false;
                test.Visible   = false;
                if (listS.Where(u => u.StoreName == comboBoxStore.SelectedItem.ToString()).FirstOrDefault() == null)
                {
                    label6.Visible = true;
                }

                if (listSet.Where(u => u.SettingsName == comboBox1.SelectedItem.ToString()).FirstOrDefault() == null)
                {
                    label6.Visible = true;
                }

                if (label6.Visible == false)
                {
                    label6.Visible = false;
                    if (dataGridViewReaders.Rows.Count != 0)
                    {
                        LTS.Settings old = DAT.DataAccess.GetSettings().Where(i => i.StoreID == SelectedStore && i.SettingsSelect == true).FirstOrDefault();
                        bool         oldchanged;
                        if (old != null)
                        {
                            old.SettingsSelect = false;
                            oldchanged         = DAT.DataAccess.UpdateSettings(old);
                        }
                        else
                        {
                            oldchanged = true;
                        }


                        if (oldchanged)
                        {
                            LTS.Settings newSelect = DAT.DataAccess.GetSettings().Where(i => i.SettingsID == SelectedSetting).FirstOrDefault();
                            newSelect.SettingsSelect = true;
                            bool newchanged = DAT.DataAccess.UpdateSettings(newSelect);
                            if (newchanged)
                            {
                                MessageBox.Show("Setting Selected Successfully!");
                                ((Main)this.Parent.Parent).ChangeView <Settings>();
                            }
                            else
                            {
                                MessageBox.Show("Sorry, something went wrong, the setting was not selected!");
                                ((Main)this.Parent.Parent).ChangeView <Settings>();
                            }
                        }
                        else
                        {
                            MessageBox.Show("Sorry, something went wrong, the setting was not selected!");
                            ((Main)this.Parent.Parent).ChangeView <Settings>();
                        }
                    }
                    else
                    {
                        label6.Visible = true;
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Sorry Something went wrong, the action was not completed!");
            }
        }
Пример #12
0
        bool updateItem_connect(LTS.Settings se)
        {
            Log.WriteLog(LogType.Trace, "come in updateItem_connect");
            try
            {
                lConnectMsg.Text = "Connecting...";


                int index   = cbStore.SelectedIndex;
                int storeID = listS[index].StoreID;

                LTS.Settings set = se;

                sm = null;
                sm = new SettingsMain();
                impinjrev.Clear();
                sm.SettingsID     = set.SettingsID;
                sm.SettingsName   = set.SettingsName;
                sm.SettingsSelect = set.SettingsSelect;
                sm.StoreID        = set.StoreID;

                LTS.Store store = DAT.DataAccess.GetStore().Where(i => i.StoreID == sm.StoreID).FirstOrDefault();
                if (null == store)
                {
                    Log.WriteLog(LogType.Error, "error to get store with id[" + set.StoreID + "]");
                    return(false);
                }
                sm.StoreLocation = store.StoreLocation;
                sm.StoreName     = store.StoreName;

                Log.WriteLog(LogType.Trace, "success to get settings[" + sm.SettingsID + "] witch in store[" + set.StoreID + "] info:settingsName[" + set.SettingsName + "], " +
                             "select flag[" + set.SettingsSelect + "], the storeName[" + store.StoreName + "] and storeLocation[" + store.StoreLocation + "]");


                List <LTS.Reader> readers = new List <LTS.Reader>();
                readers = DAT.DataAccess.GetReader().Where(j => j.SettingsID == sm.SettingsID).ToList();
                if (null == readers)
                {
                    Log.WriteLog(LogType.Error, "error to get readers in settings[" + sm.SettingsID + "]");
                    return(false);
                }

                for (int j = 0; j < readers.Count; j++)
                {
                    ReaderMain rm = new ReaderMain();
                    rm.ReaderID    = readers[j].ReaderID;
                    rm.IPaddress   = readers[j].IPaddress;
                    rm.NumAntennas = readers[j].NumAntennas;
                    rm.antennas    = DAT.DataAccess.GetAntenna().Where(q => q.ReaderID == rm.ReaderID).ToList();

                    sm.Readers.Add(rm);
                }

                bool checks = true;

                Log.WriteLog(LogType.Trace, "success go get " + readers.Count + " readers with in settings[" + sm.SettingsID + "] into memery"); Log.WriteLog(LogType.Trace, "success go get " + readers.Count + " readers with in settings[" + sm.SettingsID + "] into memery");

                //根据settings上的读写器配置,进行读写器连接操作
                for (int x = 0; x < sm.Readers.Count; x++)
                {
                    bool bOk = true;

                    //针对每一个reader配置生成一个reader解决方案节点
                    ImpinjRevolution ir = new ImpinjRevolution();
                    ir.ReaderScanMode = ScanMode.ScanItem;
                    ir.HostName       = sm.Readers[x].IPaddress;
                    ir.Antennas       = sm.Readers[x].antennas;
                    ir.isConnected    = false;

                    //ir.TagRead += ir_TagRead;

                    Log.WriteLog(LogType.Trace, "goto connect to reader with ip[" + ir.HostName + "]");
                    //连接到指定的读写器上
                    if (!ir.ir_connectReader())
                    {
                        bOk = false;
                        Log.WriteLog(LogType.Error, "error to connect to reader[" + ir.HostName + "]");
                    }

                    impinjrev.Add(ir);
                    if (!bOk)
                    {
                        if (checks == true)
                        {
                            Log.WriteLog(LogType.Trace, "goto set the check flag into false status.");
                            checks = false;
                        }
                    }
                }

                Log.WriteLog(LogType.Trace, "after connect to all the readers");
                if (checks == true)
                {
                    lConnectMsg.Text = "Connected";

                    //启动定时器,定时器超时后,执行定时器超时函数
                    timer.Start();

                    //遍历读写器数组,为他们注册委托事件,并启动读写器
                    impinjrev.ForEach(imp =>
                    {
                        imp.dReadHandler += updateItem_ir_tagRead;
                        imp.ir_startRead();
                    });


                    Log.WriteLog(LogType.Trace, "success to start all readers");
                    ((Form1)this.Parent.Parent.Parent.Parent).scan = true;
                    lConnectMsg.Text = "Reading...";
                }
                else
                {
                    lConnectMsg.Text = "Not Connected!";
                    timer.Stop();
                    timer.Elapsed -= updateItem_timer_elapsed;
                    time           = 0;
                    for (int i = 0; i < impinjrev.Count; i++)
                    {
                        impinjrev[i].ir_stopRead();
                        impinjrev[i].ir_disconnect();
                    }
                    updateItem_enableOrDisable(true);
                    ((Form1)this.Parent.Parent.Parent.Parent).scan = false;
                }
                return(true);
            }
            catch (Exception ex)
            {
                Log.WriteLog(LogType.Error, "there is something wrong during connect to readers. the error msg is " + ex.Message + "");

                MessageBox.Show("Sorry Something went wrong, the action was not completed!");
                return(true);
            }
        }
Пример #13
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!");
            }
        }
Пример #14
0
        //当改变store时,显示旗下settings的配置信息
        private void scanItem_cbStore_selectIdxChg(object sender, EventArgs e)
        {
            panel1.Visible = false;
            int index = cbStore.SelectedIndex;

            LTS.Store stStore  = listS[index];
            int       iStoreId = stStore.StoreID;

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

            Log.WriteLog(LogType.Trace, "goto get store[" + iStoreId + "] avaliable settings from database");

            try
            {
                //获取store生效的settings
                gstSettings = DAT.DataAccess.GetSettings().Where(s => s.StoreID == iStoreId && s.SettingsSelect == true).FirstOrDefault();
                if (gstSettings != null)
                {
                    List <LTS.Reader> stReader;

                    //获取settings配置的readers
                    stReader = DAT.DataAccess.GetReader().Where(y => y.SettingsID == gstSettings.SettingsID).ToList();
                    if (stReader == null)
                    {
                        Log.WriteLog(LogType.Error, "error to get settings[" + gstSettings.SettingsID + "] readers info");
                        return;
                    }

                    Log.WriteLog(LogType.Trace, "success to get " + stReader.Count + " reader(s) from settings[" + gstSettings.SettingsID + "]");

                    //提取reader信息,并显示在list box中
                    List <string> sReaderInfo = new List <string>();
                    for (int q = 0; q < stReader.Count; q++)
                    {
                        sReaderInfo.Add(stReader[q].IPaddress + " :  " + stReader[q].NumAntennas + " antenna(s)");

                        Log.WriteLog(LogType.Trace, "success to add reader[" + stReader[q].ReaderID + "] with [" + stReader[q].NumAntennas + "] antenna(s) into front");
                    }
                    lbReader.DataSource = sReaderInfo;

                    setName.Text = gstSettings.SettingsName;

                    //在小窗口显示reader信息
                    scanItem_showReaderInfo(true, iStoreId);

                    /*从数据库中获取指定store下的所有item*/
                    if (!scanItem_item2List(iStoreId, ref theList))
                    {
                        Log.WriteLog(LogType.Error, "error to call scanItem_Items2List");
                        return;
                    }

                    //将items通过list box显示
                    if (!scanItem_itemList2ListBox(ref theList))
                    {
                        Log.WriteLog(LogType.Error, "error to call scanItem_itemList2ListBox");
                        return;
                    }
                }
                else
                {
                    Log.WriteLog(LogType.Trace, "there is not avaliable settings in store[" + iStoreId + "], please change another store.");

                    scanItem_showReaderInfo(false, iStoreId);
                }
            }
            catch (Exception ex)
            {
                Log.WriteLog(LogType.Error, "the exception is:" + ex.Message + ".");
            }
        }