FrmRFIPEdit.cs 5.7 KB

 
using OnlineStore.Common;
using OnlineStore.DeviceLibrary;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace OnlineStore.AssemblyLine
{
    internal partial class FrmRFIPEdit : FrmBase
    {  
        internal FrmRFIPEdit( )
        { 
            InitializeComponent();
        }
        private Dictionary<string, string> rfMap = new Dictionary<string, string>();
        private void FrmPwd_Load(object sender, EventArgs e)
        {
            comboxType.Items.Clear();
            foreach (EquipBase b in LineManager.Line.AllEquipMap.Values)
            {
                string key = b.Name + "-托盘RF";
                string value = TrayManager.GetRFIP(b.DeviceID);
                rfMap.Add(key, value);
                comboxType.Items.Add(key);
            }
            foreach (FeedingEquip b in LineManager.Line.FeedingEquipMap.Values)
            {
                string key = b.Name + "-料架RF";
                string value = TrayManager.GetRFIP(b.DeviceID, 1);
                rfMap.Add(key, value);
                comboxType.Items.Add(key);
            }
            comboxType.SelectedIndex = 0;
            comType.SelectedIndex = 0;

            string hostN = Dns.GetHostName();
            IPAddress[] addresss = Dns.GetHostAddresses(hostN);
            cmbLocalIp.Items.Clear();
            if (addresss != null && addresss.Length > 0)
            { 
                foreach (IPAddress ip in addresss)
                {
                    if (ip.AddressFamily.Equals(AddressFamily.InterNetwork))
                    {
                        cmbLocalIp.Items.Add(ip.ToString());
                    }
                }
                cmbLocalIp.SelectedIndex = 0; 
            }
        }

        private void btnNext_Click(object sender, EventArgs e)
        {
            //string ip = txtIP.Text;
            //char type =  comType.Text.ToCharArray()[0];
            //int value = (int)numNum.Value;
            //DialogResult result = MessageBox.Show( "确定将【"+comboxType.Text+"】当前的托盘编号定为【"+value+"】?", "确定提示", MessageBoxButtons.OKCancel);
            //if (result.Equals(DialogResult.OK))
            //{
            //    RFIDManager.WriteData(ip, new RFIDData(value, type));
            //}
        }

        private void btnBack_Click(object sender, EventArgs e)
        {
            this.DialogResult = DialogResult.Cancel;
            this.Close();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string ip = txtIP.Text;
            RFIDData data = TrayManager.ReadRFID(ip);
            string resul = "";
            if (data != null)
            {
                resul = data.ToStr();
                numNum.Value = data.Num;
                int selIndex = data.RFType - 64;
                if (selIndex >= 0 && selIndex <= comboxType.Items.Count)
                {
                    comboxType.SelectedIndex = selIndex;
                }

            }
            MessageBox.Show("读取到数据:" + resul);
        }

        private void comboxType_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (comboxType.SelectedIndex >= 0)
            {
                string V = rfMap[comboxType.Text];
                if (!txtIP.Text.Equals(V))
                {
                    txtIP.Text = V;
                }
                //if (RFIDManager.RFReaderMap.ContainsKey(V))
                //{
                //    btnConnect.Enabled = false;
                //    btnClose.Enabled = true;
                //}
                //else
                //{
                //    btnClose.Enabled = false;
                //    btnConnect.Enabled = true;
                //}
            }
        }

        private void btnFind_Click(object sender, EventArgs e)
        {
            //string ip = txtIP.Text;
            //bool result = RFIDManager.FindRFID(ip);
            //if (result)
            //{
            //    lblHas.Text = "有标签";
            //    lblHas.ForeColor = Color.Green;
            //}
            //else
            //{
            //    lblHas.Text = "无标签";
            //    lblHas.ForeColor = Color.Red;
            //}
        }

        private void btnSearch_Click(object sender, EventArgs e)
        {
            //string text = cmbLocalIp.Text;
            //string[] ip = RFIDManager.SearchIP(text);
            //foreach(string ipstr in ip)
            //{
            //    listView1.Items.Add(ipstr);
            //}
        }

        private void btnConnect_Click(object sender, EventArgs e)
        {
            //string ip = txtIP.Text;
            //bool result = RFIDManager.ConnectionIP(ip);
            //if (RFIDManager.RFReaderMap.ContainsKey(ip))
            //{
            //    btnConnect.Enabled = false;
            //    btnClose.Enabled = true;
            //}
            //else
            //{
            //    btnClose.Enabled = false;
            //    btnConnect.Enabled = true;
            //}
            //MessageBox.Show("" + result);
        }

        private void button2_Click(object sender, EventArgs e)
        {

            //string ip = txtIP.Text;
            //RFIDManager.CloseRFID(ip);
            //if (RFIDManager.RFReaderMap.ContainsKey(ip))
            //{
            //    btnConnect.Enabled = false;
            //    btnClose.Enabled = true;
            //}
            //else
            //{
            //    btnClose.Enabled = false;
            //    btnConnect.Enabled = true;
            //}
        }
    }
}