Пример #1
0
        /// <summary>
        /// 基本信息消息
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OnUIModelBtnClick(object sender, udcModelBase.COnBtnClickArgs e)
        {
            if (MainWork == null)
            {
                return;
            }

            switch (e.btnNo)
            {
            case udcModelBase.EBtnNo.机种:
                string fileDirectry = string.Empty;
                fileDirectry = CGlobalPara.SysPara.Report.ModelPath;
                OpenFileDialog dlg = new OpenFileDialog();
                dlg.InitialDirectory = fileDirectry;
                dlg.Filter           = "BI files (*.bi)|*.bi";
                if (dlg.ShowDialog() != DialogResult.OK)
                {
                    return;
                }
                MainWork.OnFrmMainSelectModel(dlg.FileName);
                break;

            case udcModelBase.EBtnNo.温度显示:
                MainWork.OnFrmMainTempShow();
                break;

            default:
                break;
            }
        }
Пример #2
0
        /// <summary>
        /// 良率预警按钮
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OnUIPassRateClick(object sender, udcPassRate.COnBtnClickArgs e)
        {
            if (MainWork == null)
            {
                return;
            }

            if (e.lPara == 0)
            {
                if (MessageBox.Show(CLanguage.Lan("确定要归零良率统计数据?"), "Tip",
                                    MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes)
                {
                    return;
                }

                MainWork.ClearPassRate();
            }
            else if (e.lPara == 1)
            {
                if (MessageBox.Show(CLanguage.Lan("确定要解除良率报警?"), "Tip",
                                    MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes)
                {
                    return;
                }

                MainWork.ClearPassRateAlarm();
            }
        }
Пример #3
0
 /// <summary>
 /// 消息响应
 /// </summary>
 /// <param name="para"></param>
 public void OnMessage(string name, int lPara, int wPara)
 {
     if (name == "F8")
     {
         if (!_maxSize)
         {
             splitContainer1.Panel2Collapsed = true;
         }
         else
         {
             splitContainer1.Panel2Collapsed = false;
         }
         _maxSize = !_maxSize;
     }
     else if (name == "F7")
     {
         if (MainWork != null)
         {
             MainWork.OnFrmMainShowONOFFChart();
         }
     }
     else if (name == "F6")
     {
         FrmClient.CreateInstance().Show();
     }
 }
Пример #4
0
        /// <summary>
        /// 良率预警按钮
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OnUIPassRateClick(object sender, udcPassRate.COnBtnClickArgs e)
        {
            if (MainWork == null)
            {
                return;
            }

            string[] names = new string[] { "【" + CLanguage.Lan("高压工位") + "】", "【" + CLanguage.Lan("ATE工位") + "】" };

            if (e.lPara == 0)
            {
                if (MessageBox.Show(CLanguage.Lan("确定要归零良率统计数据") + names[e.idNo] + "?", "Tip",
                                    MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes)
                {
                    return;
                }

                MainWork.ClearPassRate(e.idNo);
            }
            else if (e.lPara == 1)
            {
                if (MessageBox.Show(CLanguage.Lan("确定要解除良率报警") + names[e.idNo] + "?", "Tip",
                                    MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes)
                {
                    return;
                }

                MainWork.ClearPassRateAlarm(e.idNo);
            }
        }
Пример #5
0
        private void OnDebugBtnClick(object sender, udcStatFixture.COnBtnClickArgs e)
        {
            try
            {
                if (MainWork == null)
                {
                    return;
                }

                if (e.idNo == 0)  //调试
                {
                    MainWork.OnFrmMainDebug(e.idNo, e.status);
                }
                else             //清除产能
                {
                    if (MessageBox.Show(CLanguage.Lan("确定要归零测试数量统计?"), "Tip",
                                        MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes)
                    {
                        return;
                    }

                    MainWork.OnFrmMainClearYield();
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Пример #6
0
        /// <summary>
        /// 刷新UI设置状态
        /// </summary>
        private void RefreshUISetting()
        {
            if (this.InvokeRequired)
            {
                this.Invoke(new Action(RefreshUISetting));
            }
            else
            {
                if (!CGlobalPara.SysPara.Mes.Connect)
                {
                    labUnload.Text = CLanguage.Lan("人工/自动下机位");
                }
                else
                {
                    labUnload.Text = CLanguage.Lan("人工/自动下机位") + "【MES】";
                }

                if (MainWork != null)
                {
                    MainWork.OnFrmMainSystemUpdate();

                    MainWork.SetPassRateLimit(0, CGlobalPara.SysPara.Alarm.ChkPassRate[0], CGlobalPara.SysPara.Alarm.PassRateLimit[0]);

                    MainWork.SetPassRateLimit(1, CGlobalPara.SysPara.Alarm.ChkPassRate[1], CGlobalPara.SysPara.Alarm.PassRateLimit[1]);
                }
            }
        }
Пример #7
0
 private void FrmMain_FormClosed(object sender, FormClosedEventArgs e)
 {
     if (MainWork != null)
     {
         MainWork.CloseDlg();
     }
 }
Пример #8
0
 private void cmbModelList_SelectedIndexChanged(object sender, EventArgs e)
 {
     if (MainWork == null)
     {
         return;
     }
     MainWork.RefreshCurOutModel(cmbModelList.Text);
 }
Пример #9
0
 private void chkSelOut_CheckedChanged(object sender, EventArgs e)
 {
     if (MainWork == null)
     {
         return;
     }
     MainWork.ChkSelOut_CheckedChanged(chkSelOut.Checked);
 }
Пример #10
0
        /// <summary>
        /// 绑定控件消息
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OnUICheckSnArgs(object sender, udcBandFixture.CCheckArgs e)
        {
            if (MainWork == null)
            {
                return;
            }

            MainWork.OnFrmMainCheckSn(e.idNo, e.value);
        }
Пример #11
0
        private void OnUISignalArgs(object sender, udcSignal.CUIArgs e)
        {
            if (MainWork == null)
            {
                return;
            }

            MainWork.OnFrmMainArgs(e.idNo, e.name, e.lPara, e.wPara);
        }
Пример #12
0
        /// <summary>
        /// 不良确认消息
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OnFailConfigArgs(object sender, udcStatFixture.CBtnClickArgs e)
        {
            if (MainWork == null)
            {
                return;
            }

            MainWork.OnFrmMainFailConfig(e.name);
        }
Пример #13
0
        private void OnUIMenuClick(object sender, udcFixture.CSetMenuArgs e)
        {
            if (MainWork == null)
            {
                return;
            }

            MainWork.OnFrmMainMenuArgs(e);
        }
Пример #14
0
        private void btnChangeModel_Click(object sender, EventArgs e)
        {
            if (MainWork == null)
            {
                return;
            }

            MainWork.OnFrmMainChangeModel();

            panel10.Visible = false;
        }
Пример #15
0
        private void MainTimer_Tick(object sender, EventArgs e)
        {
            if (MainWork.IsBusy == false)
            {
                MainWork.RunWorkerAsync();
            }

            // 計算下次啟動時間
            TimeSpan startInterval = DateTime.Parse(DateTime.Now.AddDays(1).ToString("yyyy/MM/dd 16:00:00")) - DateTime.Now;

            MainTimer.Interval = startInterval.Milliseconds;
        }
Пример #16
0
        /// <summary>
        /// 停止监控
        /// </summary>
        public void OnStopRun()
        {
            if (MainWork.C_RUNNING)
            {
                MainWork.OnStop();

                MainWork.C_RUNNING = false;
            }

            string er = string.Empty;

            CReflect.SendWndMethod(_father, EMessType.OnShowStatus, out er, EIndicator.Idel);
        }
Пример #17
0
        /// <summary>
        /// 关闭当前窗口
        /// </summary>
        public void OnCloseDlg()
        {
            if (MessageBox.Show(GJ.COM.CLanguage.Lan("确定要退出系统?"), GJ.COM.CLanguage.Lan("退出系统"),
                                MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            {
                if (MainWork != null)
                {
                    MainWork.CloseDlg();

                    MainWork = null;
                }

                System.Environment.Exit(0);
            }
        }
Пример #18
0
        /// <summary>
        /// 绑定控件消息
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OnUISnKeyRecvArgs(object sender, udcBandFixture.CSnKeyArgs e)
        {
            if (MainWork == null)
            {
                return;
            }

            string serialNo = e.keyString;

            serialNo = serialNo.Replace("\r", "");

            serialNo = serialNo.Replace("\n", "");

            MainWork.OnSnKeyRecv(serialNo);
        }
Пример #19
0
        /// <summary>
        /// 停止监控
        /// </summary>
        public void OnStopRun()
        {
            if (MainWork != null)
            {
                MainWork.OnStop();

                MainWork.C_RUNNING = false;
            }

            string er = string.Empty;

            CReflect.SendWndMethod(_father, EMessType.OnShowStatus, out er, EIndicator.Idel);

            ShowAction(new CUIActionArgs(CLanguage.Lan("软件未启动运行,请启动软件运行."), Color.Red));
        }
Пример #20
0
        /// <summary>
        /// 测试状态控件消息
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OnUIFailConfirmArgsClick(object sender, udcStatFixture.CBtnClickArgs e)
        {
            if (MainWork == null)
            {
                return;
            }

            if (e.idNo == 0)
            {
                MainWork.OnFrmMainManualConfirmFail();
            }
            else
            {
                MainWork.OnFrmMainManualReset();
            }
        }
Пример #21
0
        /// <summary>
        /// 产能清除消息
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OnYieldBtnClick(object sender, udcStatResult.CBtnClickArgs e)
        {
            if (MainWork == null)
            {
                return;
            }

            if (e.idNo == 0) //清除测试工位统计
            {
                MainWork.OnFrmMainClrStationYield();
            }
            else if (e.idNo == 1) //清除流程工位统计
            {
                MainWork.OnFrmMianClrFlowYield();
            }
        }
Пример #22
0
        /// <summary>
        /// 启动监控
        /// </summary>
        public void OnStartRun()
        {
            if (!MainWork.C_RUNNING && MainWork.C_DownLoad)
            {
                if (MainWork.OnRun())
                {
                    MainWork.C_RUNNING = true;
                }
            }

            if (MainWork.C_RUNNING)
            {
                string er = string.Empty;

                CReflect.SendWndMethod(_father, EMessType.OnShowStatus, out er, EIndicator.Auto);
            }
        }
Пример #23
0
        /// <summary>
        /// HP选机种和调式按钮触发
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OnHpInfoBtn(object sender, udcHPInfo.COnBtnClickArgs e)
        {
            if (MainWork == null)
            {
                return;
            }

            string er = string.Empty;

            switch (e.idNo)
            {
            case 0:       //调式高压机1
                if (CGlobalPara.SysPara.Dev.HPDevMax > 0)
                {
                    MainWork.OnFrmMainDebugMode(e.idNo, e.run);
                }
                break;

            case 1:       //调式高压机2
                if (CGlobalPara.SysPara.Dev.HPDevMax > 1)
                {
                    MainWork.OnFrmMainDebugMode(e.idNo, e.run);
                }
                break;

            case 2:       //选机种
                string fileDirectry = string.Empty;
                fileDirectry = CGlobalPara.SysPara.Report.ModelPath;
                OpenFileDialog dlg = new OpenFileDialog();
                dlg.InitialDirectory = fileDirectry;
                dlg.Filter           = "hp files (*.hp)|*.hp";
                if (dlg.ShowDialog() != DialogResult.OK)
                {
                    return;
                }
                MainWork.OnFrmMainChangeModel(dlg.FileName);
                break;

            case 3:
                MainWork.OnFrmMainClearYield();
                break;

            default:
                break;
            }
        }
Пример #24
0
        /// <summary>
        /// 启动监控
        /// </summary>
        public void OnStartRun()
        {
            if (!MainWork.C_RUNNING && MainWork.C_DownLoad)
            {
                if (MainWork.OnRun())
                {
                    MainWork.C_RUNNING = true;
                }
            }

            if (MainWork.C_RUNNING)
            {
                string er = string.Empty;

                CReflect.SendWndMethod(_father, EMessType.OnShowStatus, out er, EIndicator.Auto);

                ShowAction(new CUIActionArgs(CLanguage.Lan("软件已启动,等待系统检测状态"), Color.Black));
            }
        }
Пример #25
0
        /// <summary>
        /// 测试数据控件消息
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OnUIYieldBtnArgsClick(object sender, udcPreTest.CBtnClickArgs e)
        {
            if (MainWork == null)
            {
                return;
            }

            if (e.idNo == 0)  //工位使用次数
            {
                MainWork.OnFrmMainClrStatUseNum();
            }
            else if (e.idNo == 1) //工位连续不良
            {
                MainWork.ClrStatFailNum();
            }
            else if (e.idNo == 2) //工位测试产能
            {
                MainWork.OnFrmMainClrYieldNum();
            }
        }
Пример #26
0
        /// <summary>
        /// 刷新UI设置状态
        /// </summary>
        private void RefreshUISetting()
        {
            if (this.InvokeRequired)
            {
                this.Invoke(new Action(RefreshUISetting));
            }
            else
            {
                if (CGlobalPara.SysPara.Mes.SnMode == ESnMode.无条码模式)
                {
                    labTitle1.Text = CLanguage.Lan("治具条码绑定位") + "【" + CLanguage.Lan("无条码模式") + "】";
                }
                else if (CGlobalPara.SysPara.Mes.SnMode == ESnMode.人工扫描模式)
                {
                    labTitle1.Text = CLanguage.Lan("治具条码绑定位") + "【" + CLanguage.Lan("人工扫描模式") + "】";
                }
                else if (CGlobalPara.SysPara.Mes.SnMode == ESnMode.人工串口模式)
                {
                    labTitle1.Text = CLanguage.Lan("治具条码绑定位") + "【" + CLanguage.Lan("人工串口模式") + "】";
                }
                else
                {
                    labTitle1.Text = CLanguage.Lan("治具条码绑定位") + "【" + CLanguage.Lan("自动扫描模式") + "】";
                }

                if (CGlobalPara.SysPara.Mes.Connect)
                {
                    labTitle1.Text += "-【MES】";
                }

                if (MainWork != null)
                {
                    MainWork.SetPassRateLimit(CGlobalPara.SysPara.Alarm.ChkPassRate, CGlobalPara.SysPara.Alarm.PassRateLimit);
                }
            }
        }
Пример #27
0
        /// <summary>
        /// 机种控件消息
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OnUIModelBtnArgsClick(object sender, udcModelInfo.COnBtnClickArgs e)
        {
            if (MainWork == null)
            {
                return;
            }

            string idCard = uiSnBand.IdCard;

            switch (e.btnNo)
            {
            case udcModelInfo.EBtnNo.机种:
                string fileDirectry = string.Empty;
                if (CGlobalPara.SysPara.Report.ModelPath != "")
                {
                    fileDirectry = CGlobalPara.SysPara.Report.ModelPath;
                }
                else
                {
                    fileDirectry = Application.StartupPath + "\\Model";
                    if (!Directory.Exists(fileDirectry))
                    {
                        Directory.CreateDirectory(fileDirectry);
                    }
                }
                OpenFileDialog dlg = new OpenFileDialog();
                dlg.InitialDirectory = fileDirectry;
                dlg.Filter           = "spec files (*.pwr)|*.pwr";
                if (dlg.ShowDialog() == DialogResult.OK)
                {
                    MainWork.OnFrmMainSelectModel(dlg.FileName);
                }
                break;

            case udcModelInfo.EBtnNo.设置空治具:
                MainWork.OnFrmMainSetEmptyFixture(e.value);
                break;

            case udcModelInfo.EBtnNo.次数归零:
                if (idCard == "")
                {
                    MessageBox.Show(CLanguage.Lan("请放置要清除数量治具就绪"), "Tip", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    break;
                }
                if (MessageBox.Show(CLanguage.Lan("确定要归零治具使用次数") + "[" + idCard + "]?", "Tip", MessageBoxButtons.YesNo,
                                    MessageBoxIcon.Question) != DialogResult.Yes)
                {
                    break;
                }
                MainWork.OnFrmMainClrFixtureUseNum(idCard);
                break;

            case udcModelInfo.EBtnNo.解除不良:
                if (idCard == "")
                {
                    MessageBox.Show(CLanguage.Lan("请放置要清除数量治具就绪"), "Tip", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    break;
                }
                if (MessageBox.Show(CLanguage.Lan("确定要解除治具不良次数") + "[" + idCard + "]?", "Tip", MessageBoxButtons.YesNo,
                                    MessageBoxIcon.Question) != DialogResult.Yes)
                {
                    break;
                }
                MainWork.OnFrmMainClrFixtureUseNum(idCard);
                break;
            }
        }