Exemple #1
0
        private void btn_search_Click(object sender, EventArgs e)
        {
            List <Replenish> list = new List <Replenish>();

            list = RelenishimentClass.GetReplenishByCigName(comboBox1.SelectedIndex, txt_search.Text);
            DgvNowView.DataSource = list;
        }
        void GetData(bool refresh = false)
        {
            WriteLog.GetLog().Write("读取数据");
            StringBuilder sb = new StringBuilder();

            sb.AppendLine("开始获取数据" + DateTime.Now.ToString());
            string strStart = System.DateTime.Now.ToString();

            List <T_PRODUCE_REPLENISHPLAN> lists = new List <T_PRODUCE_REPLENISHPLAN>();///RelenishimentClass.GetReplenishplan();

            foreach (var item in lbladded)
            {
                UpdateLabel(lists, 10, lbladd, Color.White);
            }
            foreach (var item in lbladd)
            {
                UpdateLabel(lists, 10, lbladd, Color.White);
            }
            try
            {
                List <T_PRODUCE_REPLENISHPLAN> list = RelenishimentClass.GetReplenishplan();
                int length;
                if (list.Count > lbladded.Length)
                {
                    length = lbladded.Length;
                }
                else
                {
                    length = list.Count;
                }
                UpdateLabel(list, length, lbladd, Color.White);

                List <T_PRODUCE_REPLENISHPLAN> finish = new List <T_PRODUCE_REPLENISHPLAN>();
                finish = RelenishimentClass.GetFinishedReplenishplan().OrderBy(item => item.ID).ToList();
                int lengths;
                if (finish.Count > lbladded.Length)
                {
                    lengths = lbladded.Length;
                }
                else
                {
                    lengths = finish.Count;
                }
                UpdateLabel(finish, lengths, lbladded, Color.LightGreen);
            }
            catch (Exception ex)
            {
                WriteLog.GetLog().Write("sp-03:数据获取失败!   ");
                if (ex.Message == "基础提供程序在 Open 上失败。")
                {
                    databaselinkcheck("数据库连接失败!请检查网络,重新打开程序!");
                }
            }
        }
Exemple #3
0
        /// <summary>
        /// 绑定数据
        /// </summary>
        /// <param name="Seq"></param>
        /// <param name="pokeid"></param>

        public void DateBind(decimal Seq, string pokeid = null)
        {
            //HunheClass HunHeNowCigarette = new HunHeService_new();
            List <T_PRODUCE_REPLENISHPLAN> list = RelenishimentClass.GetReplenishplan();

            if (list.Count < 1)
            {
                //labMachineSeq.Text = Seq + "通道没有分拣数据,请选择其他通道!";
            }
            //DgvNowView.DataSource = null;
            DgvNowView.DataSource = list;
        }
Exemple #4
0
        void ReadFinish()
        {
            List <string> list = new List <string>();

            list = PlcItemCollection.GetFinishUnnormalItem();
            for (int i = 0; i < list.Count; i++)
            {
                int receivePackage = int.Parse(opcServer.FinishOnlyGroup.ReadD(i).ToString());
                if (receivePackage != 0)
                {
                    WriteLog.GetLog().Write("从电控读取特异型烟任务号:" + receivePackage);
                    UnPokeClass.UpdateunTask1(receivePackage, 20);
                    try { sortnum = RelenishimentClass.GetMinSortNum(); }
                    catch { }
                    lblSortnum.Text = "当前任务:" + sortnum;
                    opcServer.FinishOnlyGroup.Write(0, i);
                }
            }
        }
        void Bind()
        {
            decimal status;

            if (RBAll.Checked)
            {
                status = 0;
            }
            else if (RBUnfinish.Checked)
            {
                status = 10;
            }
            else if (RBFinishing.Checked)
            {
                status = 15;
            }
            else
            {
                status = 20;
            }
            List <ReplenishInfo> list = new List <ReplenishInfo>();

            list = RelenishimentClass.GetReplenish(status);
            dgvReplenish.DataSource = list;
            this.dgvReplenish.AutoGenerateColumns = false;

            //string columnwidths = pub.IniReadValue(this.Name, this.troughdata.Name);
            //if (columnwidths != "")
            //{
            //    string[] columns = columnwidths.Split(',');
            //    int j = 0;
            //    for (int i = 0; i < columns.Length; i++)
            //    {
            //        if (dgvReplenish.Columns[i].Visible == true)
            //        {
            //            dgvReplenish.Columns[j].Width = Convert.ToInt32(columns[i]);
            //            j = j + 1;
            //        }
            //    }
            //}
            dgvReplenish.ClearSelection();
        }
Exemple #6
0
        public MainScreen()
        {
            InitializeComponent();
            //OpenSerialPort();
            lbladded = new Label[15]
            {
                LblAdded1, LblAdded2, LblAdded3, LblAdded4, LblAdded5, LblAdded6, LblAdded7, LblAdded8, LblAdded9, LblAdded10, LblAdded11, LblAdded12, LblAdded13, LblAdded14, LblAdded15
            };
            lbladd = new Label[15]
            {
                LblAdd1, LblAdd2, LblAdd3, LblAdd4, LblAdd5, LblAdd6, LblAdd7, LblAdd8, LblAdd9, LblAdd10, LblAdd11, LblAdd12, LblAdd13, LblAdd14, LblAdd15
            };
            try { sp_name = ConfigurationManager.AppSettings["SerialPort"].ToString(); }
            catch { sp_name = "COM2"; }
            CheckForIllegalCrossThreadCalls = false;
            machineSeq        = 1;
            groupNo           = 1;
            lblpack           = new Label();
            lblpack.BackColor = Color.Transparent;
            lblpack.Font      = new Font("宋体", 10, FontStyle.Bold | FontStyle.Italic);

            lblpack.Name     = "lblpack";
            lblpack.Text     = "特异型烟道补货顺序";
            lblpack.Location = new Point(Convert.ToInt32(64), 7);
            lblpack.Size     = new Size(300, 20);

            panel1.Controls.Add(lblpack);
            OpenSerialPort();
            TSender.Start();
            BGWConn.RunWorkerAsync();
            //ProgramAutoRun.SetMeStart(true);
            try { sortnum = RelenishimentClass.GetMinSortNum(); }
            catch { }
            lblSortnum.Text = "当前任务:" + sortnum;
            GetData();

            X = this.Width;  //获取窗体的宽度
            Y = this.Height; //获取窗体的高度
            SetTag(this);    //调用方法
        }
Exemple #7
0
        //string sortNum = "0";
        public void OnDataChange(int group, int[] clientId, object[] values)
        {
            if (group == 5)//完成信号
            {
                for (int i = 0; i < clientId.Length; i++)
                {
                    string tempvalue = values[i].ToString();
                    if (decimal.Parse(tempvalue) >= 1)//分拣完成
                    {
                        try
                        {
                            if (decimal.Parse(tempvalue) != 0)
                            {
                                WriteLog.GetLog().Write("从电控读取特异型烟任务号:" + tempvalue);
                                //UnPokeClass.UpdateunTask(tempvalue, 20);
                                //sortNum = tempvalue;
                                UnPokeClass.UpdateunTask1(decimal.Parse(tempvalue), 20);
                                try { sortnum = RelenishimentClass.GetMinSortNum(); }
                                catch { }
                                lblSortnum.Text = "当前任务:" + sortnum;
                                //SpecialClass.UpdateSpecialState(decimal.Parse(tempvalue),2);
                                WriteLog.GetLog().Write("特异型烟任务号" + tempvalue + "号任务已完成,数据库更新完成");
                                GetData();
                            }
                        }
                        catch (Exception ex)
                        {
                            WriteLog.GetLog().Write("服务器连接失败" + ex.Message.ToString());
                            return;
                        }
                    }
                    opcServer.FinishOnlyGroup.Write(0, clientId[i] - 1);
                }
            }
            else if (group == 9)//接收标志
            {
                for (int i = 0; i < clientId.Length; i++)
                {
                    if (clientId[i] == 1)//一线任务
                    {
                        try
                        {
                            if (values[i] != null && int.Parse(values[i].ToString()) == 0)
                            {
                                while (!opcServer.ConnectState)
                                {
                                    Thread.Sleep(100);
                                }

                                int receivePackage = int.Parse(opcServer.OnlyTaskGroup.ReadD(i).ToString());
                                if (receivePackage != 0)
                                {
                                    WriteLog.GetLog().Write("特异型烟任务号:" + receivePackage + "已接收");
                                    UnPokeClass.UpdateTask(receivePackage, 15);
                                    //UnPokeClass.UpdateHunhe(receivePackage);
                                }
                                if (opcServer.IsSendOn)//如果任务已经在发送中则返回
                                {
                                    return;
                                }
                                StringBuilder outStr = new StringBuilder();
                                object[]      data   = RelenishimentClass.GetSendTasks(10, out outStr);
                                DelSendTask   task   = new DelSendTask(opcServer.SendOnlyTask);
                                IAsyncResult  result = task.BeginInvoke(data, outStr, null, task);
                                StringBuilder re     = task.EndInvoke(result);
                                if (re.ToString() == "特异型烟道暂无任务")
                                {
                                    databaselinkcheck("特异型烟道暂无任务");
                                    return;
                                }
                                WriteLog.GetLog().Write(re.ToString());
                                GetData();
                            }
                            else
                            {
                                if (values[i] != null && int.Parse(values[i].ToString()) != 0)
                                {
                                    WriteLog.GetLog().Write("补货读到标志位:" + values[i]);
                                }
                            }
                        }
                        catch (Exception ex)
                        {
                            WriteLog.GetLog().Write("补货异常信息" + ex.Message);
                        }
                    }
                }
            }
        }
        public void OnDataChange(int group, int[] clientId, object[] values)
        {
            if (group == 5)//完成信号
            {
                for (int i = 0; i < clientId.Length; i++)
                {
                    string tempvalue = values[i].ToString();
                    if (decimal.Parse(tempvalue) >= 1)//分拣完成
                    {
                        try
                        {
                            if (decimal.Parse(tempvalue) != 0)
                            {
                                WriteLog.GetLog().Write("从电控读取补货任务号:" + tempvalue);
                                RelenishimentClass.Completed(tempvalue);
                                sortnum = tempvalue;
                                WriteLog.GetLog().Write("补货任务号" + tempvalue + "号任务已完成,数据库更新完成");
                                GetData();
                            }
                        }
                        catch (Exception ex)
                        {
                            WriteLog.GetLog().Write("服务器连接失败" + ex.Message.ToString());
                            return;
                        }
                    }
                    opcServer.FinishOnlyGroup.Write(0, clientId[i] - 1);
                }
            }
            else if (group == 9)//接收标志
            {
                for (int i = 0; i < clientId.Length; i++)
                {
                    if (clientId[i] == 1)//一线任务
                    {
                        try
                        {
                            if (values[i] != null && int.Parse(values[i].ToString()) == 0)
                            {
                                while (!opcServer.ConnectState)
                                {
                                    Thread.Sleep(100);
                                }

                                int receivePackage = int.Parse(opcServer.OnlyTaskGroup.ReadD(i).ToString());
                                if (receivePackage != 0)
                                {
                                    WriteLog.GetLog().Write("补货任务号:" + receivePackage + "已接收");
                                    try
                                    {
                                        RelenishimentClass.UpdateReplanTask(receivePackage.ToString(), 15);
                                    }
                                    catch { }
                                }
                                if (opcServer.IsSendOn)//如果任务已经在发送中则返回
                                {
                                    return;
                                }
                                StringBuilder outStr = new StringBuilder();
                                object[]      data   = RelenishimentClass.GetSendTask(10, out outStr);
                                DelSendTask   task   = new DelSendTask(opcServer.SendOnlyTask);
                                IAsyncResult  result = task.BeginInvoke(data, outStr, null, task);
                                StringBuilder re     = task.EndInvoke(result);
                                //try
                                //{
                                //    RelenishimentClass.UpdateReplanTask(data[0].ToString(), 15);
                                //}
                                //catch { }
                                WriteLog.GetLog().Write(re.ToString());
                            }
                            else
                            {
                                if (values[i] != null && int.Parse(values[i].ToString()) != 0)
                                {
                                    WriteLog.GetLog().Write("补货读到标志位:" + values[i]);
                                }
                            }
                        }
                        catch (Exception ex)
                        {
                            WriteLog.GetLog().Write("补货异常信息" + ex.Message);
                        }
                    }
                }
            }
        }