Exemple #1
0
        private void btnQuery_Click(object sender, EventArgs e)
        {
            double tdays = (dateTo.Value - dtDate.Value).TotalDays;

            if (tdays < 0)
            {
                dtDate.Focus();
                MsgBoxEx.Info("From date selection error.");
                return;
            }

            IwrService service = wrService.GetService();
            var        lst     = service.GetWaferResultHis(dtDate.Value.ToString("yyyyMMdd000000"), dateTo.Value.ToString("yyyyMMdd235959"), GetLot());

            if (DataCache.UserInfo.FilterData)
            {
                var newWaferList = ((from w in lst
                                     group w by new { w.DEVICE, w.LAYER, w.LOT, w.SUBSTRATE_ID } into l
                                     select new { DEVICE = l.Key.DEVICE, LAYER = l.Key.LAYER, LOT = l.Key.LOT, SUBSTRATE_ID = l.Key.SUBSTRATE_ID, CREATEDDATE = l.Max(s => s.CREATEDDATE) }))
                                   .ToList();

                lst = (from w in lst
                       join n in newWaferList
                       on new { w.DEVICE, w.LAYER, w.LOT, w.SUBSTRATE_ID, w.CREATEDDATE } equals new { n.DEVICE, n.LAYER, n.LOT, n.SUBSTRATE_ID, n.CREATEDDATE }
                       select w).ToList();
            }

            grdData.AutoGenerateColumns = false;
            grdData.DataSource          = lst;
        }
Exemple #2
0
        private void btnOK_Click(object sender, EventArgs e)
        {
            if (txtRecipeId.Text.Trim().Length < 1)
            {
                txtRecipeId.Focus();
                MsgBoxEx.Info("Please input recipe id");
                return;
            }

            IwrService service = wrService.GetService();
            var        res     = 0;

            var type = rbRepice.Checked ? "0" : rbLayer.Checked ? "1" : rbDevice.Checked ? "2" : "0";

            if (IsAdd)
            {
                res = service.AddYield(txtRecipeId.Text, type, nudLotYield.Value, nudWaferYield.Value, nudAYield.Value, nudBYield.Value, nudCYield.Value, nudDYield.Value, nudEYield.Value, txtImg.Text);
            }
            else
            {
                res = service.EditYield(txtRecipeId.Text, type, nudLotYield.Value, nudWaferYield.Value, nudAYield.Value, nudBYield.Value, nudCYield.Value, nudDYield.Value, nudEYield.Value, txtImg.Text);
            }

            if (res == -2)
            {
                MsgBoxEx.Info("The recipe id already exists");
                return;
            }

            DialogResult = DialogResult.OK;
        }
Exemple #3
0
        private void frm_Archive_Load(object sender, EventArgs e)
        {
            IwrService service = wrService.GetService();

            //cbxFiles.Items.AddRange(service.GetDBFilesList().ToArray());

            diskList = service.GetDiskList();

            cbxDisk.Items.AddRange(diskList.Select(s => s.Name).ToArray());

            cbxDisk.SelectedIndex = 0;

            txtArchiveDate.Text = DataCache.CmnDict.Where(s => s.DICTID == "3021" && s.CODE == "0").Select(s => s.VALUE).FirstOrDefault();

            //ArchiveDate();

            var dbList = service.GetTableSpaceList();

            chartDb.Series[0].Points.Clear();
            chartDb.Series[0].ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Pie;

            if (dbList.Count > 0)
            {
                chartDb.Series[0].Points.AddXY("Free Space(GB)", Math.Round(dbList[0].FreeSpace / 1024 / 1024 / 1024, 1));
                chartDb.Series[0].Points.AddXY("Used Space(GB)", Math.Round(dbList[0].UsedSpace / 1024 / 1024 / 1024, 1));
                chartDb.Series[0].IsValueShownAsLabel = true;
            }

            if (DataCache.IsOracle)
            {
                groupBox4.Visible = false;
                groupBox8.Visible = false;
            }
        }
Exemple #4
0
        /// <summary>
        /// 根据
        /// </summary>
        /// <param name="layoutId"></param>
        /// <returns></returns>
        public static List <WmdielayoutlistEntitiy> GetDielayoutListById(string layoutId)
        {
            IwrService service = wrService.GetService();

            //return service.GetDielayoutListById(layoutId);

            var layoutList = new List <WmdielayoutlistEntitiy>();
            var serializer = new JsonSerializer();

            var byteArray = service.GetDielayoutListById(layoutId);

            if (byteArray.Count > 0 && byteArray[0].Layoutdetails != null)
            {
                var json = System.Text.Encoding.Default.GetString(byteArray[0].Layoutdetails);
                var sr   = new StringReader(json);

                object o = serializer.Deserialize(new JsonTextReader(sr), typeof(List <WmdielayoutlistEntitiy>));

                layoutList = o as List <WmdielayoutlistEntitiy>;

                if (layoutList.Count > 0)
                {
                    layoutList[0].ROWS_    = byteArray[0].ROWS_;
                    layoutList[0].COLUMNS_ = byteArray[0].COLUMNS_;
                }
            }
            else
            {
                layoutList = byteArray;
            }

            return(layoutList);
        }
Exemple #5
0
        private void LoadPlanData(string lid)
        {
            IwrService service = wrService.GetService();

            grdPlan.AutoGenerateColumns = false;
            grdPlan.DataSource          = service.GetEmPlan(lid);
        }
Exemple #6
0
        private void btnDbImp_Click(object sender, EventArgs e)
        {
            if (MsgBoxEx.ConfirmYesNo("Are you sure to import the file") == DialogResult.No)
            {
                return;
            }

            if (string.IsNullOrEmpty(cbxFiles.Text))
            {
                MsgBoxEx.Info("Please select a file to import.");
                return;
            }

            ShowLoading(ToopEnum.loading);

            IwrService service = wrService.GetService();
            var        rs      = service.ImpOrExpDatabase("1", cbxFiles.Text) >= 0;

            if (rs)
            {
                cbxFiles.Items.AddRange(service.GetDBFilesList().ToArray());
            }

            CloseLoading();
        }
Exemple #7
0
        /// <summary>
        /// 表空间扩容
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnTableSpaceAdd_Click(object sender, EventArgs e)
        {
            if (MsgBoxEx.ConfirmYesNo("Are you sure to add the tablespace") == DialogResult.No)
            {
                return;
            }

            ShowLoading(ToopEnum.loading);

            try
            {
                IwrService service = wrService.GetService();
                var        rs      = service.AddTableSpace("");

                if (rs)
                {
                    MsgBoxEx.Info("Please restart the program.");
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                CloseLoading();
            }
        }
Exemple #8
0
        /// <summary>
        /// 0:正常 -1:没有考试计划 -2:考试已结束
        /// </summary>
        /// <returns></returns>
        private string GetExamInfo()
        {
            DataCache.HasExam = false;

            var msg = string.Empty;

            var hasExamRole = DataCache.Tbmenus.Count(s => s.MENUCODE == "50003") > 0;

            if (hasExamRole)
            {
                IwrService service = wrService.GetService();

                var rs = service.GetPaper(DataCache.UserInfo.ID);

                switch (rs)
                {
                case 0:
                    DataCache.HasExam = true;
                    break;

                case -1:
                    msg = "The exam hasn't started yet.";
                    break;

                case -2:
                    msg = "The exam is over.";
                    break;

                default:
                    break;
                }
            }

            return("");
        }
Exemple #9
0
        private void GetData()
        {
            IwrService service = wrService.GetService();
            var        data    = service.GetAllYieldSetting();

            grdData.AutoGenerateColumns = false;
            grdData.DataSource          = data.OrderBy(p => p.RECIPE_ID).ToList();
        }
Exemple #10
0
        private void btnOK_Click(object sender, EventArgs e)
        {
            IwrService service = wrService.GetService();

            service.EditCLASSIFICATIONMARK(txtID.Text, txtName.Text, (int)nudMark.Value);

            DialogResult = DialogResult.OK;
        }
Exemple #11
0
        private void LoadMarkData()
        {
            IwrService service = wrService.GetService();

            var list = service.GetCLASSIFICATIONMARK("");

            //grdMark.DataSource = new BindingCollection<EMCLASSIFICATIONMARK>(list);
            grdMark.DataSource = list;
        }
Exemple #12
0
        //private void tlClass_Enter(object sender, EventArgs e)
        //{
        //    if (tlClass.Text.Trim() == "Please input id or name")
        //    {
        //        tlClass.Text = "";
        //        tlClass.ForeColor = SystemColors.WindowText;
        //    }
        //}

        //private void tlClass_Leave(object sender, EventArgs e)
        //{
        //    if (tlClass.Text.Trim() == "")
        //    {
        //        tlClass.Text = "Please input id or name";
        //        tlClass.ForeColor = SystemColors.ActiveBorder;
        //    }
        //}
        #endregion

        #region 题库

        private void LoadLibraryData()
        {
            IwrService service = wrService.GetService();

            var list = service.GetLIBRARY(tlTxt.Text.Replace("Please input name", ""));

            grdLibrary.AutoGenerateColumns = false;
            grdLibrary.DataSource          = list;
        }
Exemple #13
0
        private void btnQuery_Click(object sender, EventArgs e)
        {
            IwrService service = wrService.GetService();

            //service.AddExamResult(DataCache.UserInfo.ID, "41c5c298-7a55-4302-a7a1-0079fc3efc72");

            var list = service.GetExamResultReport(dtDate.Value.ToString("yyyyMMdd"), dateTo.Value.ToString("yyyyMMdd"), cbxPlan.SelectedValue.ToString());

            grdExamResult.AutoGenerateColumns = false;
            grdExamResult.DataSource          = list;
        }
Exemple #14
0
        private void btnDbExp_Click(object sender, EventArgs e)
        {
            if (MsgBoxEx.ConfirmYesNo("Are you sure to back up the database") == DialogResult.No)
            {
                return;
            }

            ShowLoading(ToopEnum.loading);

            IwrService service = wrService.GetService();

            service.ImpOrExpDatabase("0");

            CloseLoading();
            //timer1.Enabled = true;
        }
Exemple #15
0
        private void tabExam_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (tabExam.SelectedTab == tabPage2)
            {
                IwrService service = wrService.GetService();

                var planList = service.GetEmPlan("");
                planList.Insert(0, new EMPLAN()
                {
                    PID = "", PLANNAME = "-"
                });

                cbxPlan.DisplayMember = "PLANNAME";
                cbxPlan.ValueMember   = "PID";
                cbxPlan.DataSource    = planList;
            }
        }
Exemple #16
0
        private void InitData()
        {
            LoadMarkData();

            LoadLibraryData();

            IwrService service = wrService.GetService();

            var planList = service.GetEmPlan("");

            planList.Insert(0, new EMPLAN()
            {
                PID = "", PLANNAME = "-"
            });

            cbxPlan.DisplayMember = "PLANNAME";
            cbxPlan.ValueMember   = "PID";
            cbxPlan.DataSource    = planList;
        }
Exemple #17
0
        /// <summary>
        /// 保存自定义缺陷
        /// </summary>
        /// <returns></returns>
        private bool SaveHotKey()
        {
            grdClass.EndEdit();

            List <WmClassificationItemEntity> items = grdClass.DataSource as List <WmClassificationItemEntity>;

            if (items == null || items.Count < 1)
            {
                return(false);
            }

            StringBuilder sbt = new StringBuilder();

            foreach (var item in items)
            {
                if (!string.IsNullOrEmpty(item.InspectionType))
                {
                    if (items.Any(p => p.ID != item.ID && p.HOTKEY == item.HOTKEY && !string.IsNullOrEmpty(item.HOTKEY)))
                    {
                        MsgBoxEx.Info(string.Format("Acc Keys[{0}] already repeated!", DataCache.CmnDict.FirstOrDefault(p => p.DICTID == "2010" && p.CODE == item.HOTKEY).NAME));
                        return(false);
                    }

                    sbt.AppendFormat(";{0}|{1}|{2}", item.ID, item.HOTKEY, item.COLOR);
                }
            }

            if (sbt.Length < 1)
            {
                return(true);
            }

            IwrService service = wrService.GetService();
            int        res     = service.UpdateClassificationItemUser(sbt.ToString(), "");

            if (res == 1)
            {
                items.ForEach((p) => { p.InspectionType = ""; });
            }

            return(true);
        }
Exemple #18
0
        private void btnOK_Click(object sender, EventArgs e)
        {
            if (txtName.Text.Trim().Length < 1)
            {
                txtName.Focus();
                MsgBoxEx.Info("Please input name");
                return;
            }

            if (IsAdd && lbResult.Items.Count == 0)
            {
                MsgBoxEx.Info("Please select wafer result");
                return;
            }

            IwrService service = wrService.GetService();
            var        res     = 0;

            var resultId = string.Join(",", ResultList.Select(s => s.ID).ToArray());

            if (IsAdd)
            {
                res = service.AddLibray(resultId, txtName.Text.Trim(), txtRemark.Text, DataCache.UserInfo.ID, (ckStatus.Checked ? "1" : "0"));
            }
            else
            {
                res = service.UpdateLibray(Entity.LID, txtName.Text.Trim(), txtRemark.Text, (ckStatus.Checked ? "1" : "0"), DataCache.UserInfo.ID);
            }

            if (res == -1)
            {
                MsgBoxEx.Info("Name already exist");
                return;
            }
            else if (res != 1)
            {
                MsgBoxEx.Info("Save failed");
                return;
            }

            DialogResult = DialogResult.OK;
        }
Exemple #19
0
        private void tlDel_Click(object sender, EventArgs e)
        {
            if (grdData.SelectedRows == null || grdData.SelectedRows.Count < 1)
            {
                return;
            }

            if (MsgBoxEx.ConfirmYesNo("Are you sure to delete the record?") == DialogResult.No)
            {
                return;
            }

            string id = grdData.SelectedRows[0].Cells["RECIPE_ID"].Value.ToString();

            IwrService service = wrService.GetService();

            service.DelYield(id);

            tlRefresh.PerformClick();
        }
Exemple #20
0
        private void tlDel_Click(object sender, EventArgs e)
        {
            if (grdLibrary.SelectedRows == null || grdLibrary.SelectedRows.Count < 1)
            {
                return;
            }

            if (MsgBoxEx.ConfirmYesNo("Are you sure to delete the record?") == DialogResult.No)
            {
                return;
            }

            string id = grdLibrary.SelectedRows[0].Cells["lid"].Value.ToString();

            IwrService service = wrService.GetService();

            service.DeleteLibray(id, DataCache.UserInfo.ID);

            tlSearch.PerformClick();
        }
Exemple #21
0
        private void tlPlanDelete_Click(object sender, EventArgs e)
        {
            if (grdPlan.SelectedRows == null || grdPlan.SelectedRows.Count < 1)
            {
                MsgBoxEx.Info("Please select Delete data");
                return;
            }

            if (MsgBoxEx.ConfirmYesNo("Are you sure to delete the record?") == DialogResult.No)
            {
                return;
            }

            string id = grdPlan.SelectedRows[0].Cells["pid"].Value.ToString();

            IwrService service = wrService.GetService();

            service.DeletePlan(id, DataCache.UserInfo.ID);

            tlPlanRefresh.PerformClick();
        }
Exemple #22
0
        private void btnImg_Click(object sender, EventArgs e)
        {
            OpenFileDialog sd = new OpenFileDialog();

            sd.Filter = "(*.jpg,*.png,*.jpeg,*.bmp,*.gif)|*.jpg;*.png;*.jpeg;*.bmp;*.gif|All files(*.*)|*.*";

            IwrService service = wrService.GetService();

            if (DialogResult.OK == sd.ShowDialog())
            {
                var file = new UpFile();

                txtImg.Text = sd.SafeFileName;

                var stream = new System.IO.FileStream(sd.FileName, System.IO.FileMode.Open);
                file.FileName   = sd.SafeFileName;
                file.FileStream = stream;
                service.UploadFile(file);

                stream.Flush();
                stream.Close();
            }
        }
Exemple #23
0
        private void InitClassificationRole(IsysService service)
        {
            //缺陷分类权限
            IwrService wService = wrService.GetService();

            clbClass.DataSource    = wService.GetBaseClassificationItem();
            clbClass.ValueMember   = "id";
            clbClass.DisplayMember = "name";

            var dictList = service.GetCmn("3000");

            for (int i = 0; i < clbClass.Items.Count; i++)
            {
                var code = ((WmClassificationItemEntity)clbClass.Items[i]).ID.ToString();

                var rs = dictList.Count(s => s.CODE == code) > 0;

                if (rs)
                {
                    clbClass.SetItemChecked(i, true);
                }
            }
        }
Exemple #24
0
        /// <summary>
        /// 快捷键
        /// </summary>
        private void InitHotKey()
        {
            if (DataCache.UserInfo.USERID != "Admin")
            {
                tabPage7.Parent = null;
                return;
            }

            IwrService wService = wrService.GetService();

            List <CMNDICT> hotkey = DataCache.CmnDict.Where(p => p.DICTID == "2010").ToList();

            hotkey.Add(new CMNDICT()
            {
                DICTID = "2010", CODE = null, NAME = "-"
            });

            if (this.InvokeRequired)
            {
                this.Invoke(new Action(() =>
                {
                    colHotKey.DisplayMember = "NAME";
                    colHotKey.ValueMember   = "CODE";
                    colHotKey.DataSource    = hotkey;
                }));
            }
            else
            {
                colHotKey.DisplayMember = "NAME";
                colHotKey.ValueMember   = "CODE";
                colHotKey.DataSource    = hotkey;
            }

            grdClass.AutoGenerateColumns = false;
            grdClass.DataSource          = wService.GetBaseClassificationItem();
        }
Exemple #25
0
        private void btnOK_Click(object sender, EventArgs e)
        {
            if (txtName.Text.Trim().Length < 1)
            {
                txtName.Focus();
                MsgBoxEx.Info("Please input name");
                return;
            }

            int tdays = (int)(dtDate.Value - DateTime.Now.Date).TotalDays;

            if (tdays < 0)
            {
                dtDate.Focus();
                MsgBoxEx.Info("From date selection error.");
                return;
            }

            tdays = (int)(dtEndTime.Value - dtStartTime.Value).TotalMinutes;

            if (tdays <= 0)
            {
                dtEndTime.Focus();
                MsgBoxEx.Info("From date selection error.");
                return;
            }

            if (nudUser.Value <= 0)
            {
                nudUser.Focus();
                MsgBoxEx.Info("Number selection error.");
                return;
            }

            if (nudDefect.Value <= 0)
            {
                nudDefect.Focus();
                MsgBoxEx.Info("Defect Number selection error.");
                return;
            }

            IwrService service = wrService.GetService();
            var        res     = 0;

            var startTime = string.Format("{0} {1}:00", dtDate.Value.ToString("yyyy-MM-dd"), dtStartTime.Value.ToString("HH:mm"));
            var endTime   = string.Format("{0} {1}:00", dtDate.Value.ToString("yyyy-MM-dd"), dtEndTime.Value.ToString("HH:mm"));

            if (IsAdd)
            {
                res = service.AddPlan(LID, txtName.Text.Trim(), startTime, endTime, (int)nudUser.Value, (int)nudDefect.Value, txtRemark.Text, DataCache.UserInfo.ID);
            }
            else
            {
                res = service.UpdatePlan(emPlan.PID, txtName.Text.Trim(), startTime, endTime, (int)nudUser.Value, (int)nudDefect.Value, txtRemark.Text, DataCache.UserInfo.ID);
            }

            //if (res != 1)
            //{
            //    MsgBoxEx.Info(res.ToString());
            //    return;
            //}
            if (res == -1)
            {
                MsgBoxEx.Info("Name already exist");
                return;
            }
            else if (res != 1)
            {
                MsgBoxEx.Info("Save failed");
                return;
            }

            DialogResult = DialogResult.OK;
        }
Exemple #26
0
        private void DataOperation(int type)
        {
            string sdate = string.Empty;
            string edate = string.Empty;

            if (type == 0)
            {
                if (rbtASpecified.Checked == true)
                {
                    if (dtpAfrom.Value > dtpAto.Value)
                    {
                        MsgBoxEx.Info("Start time cannot be greater than end time.");
                        return;
                    }

                    sdate = dtpAfrom.Value.ToString("yyyyMMdd");
                    edate = dtpAto.Value.ToString("yyyyMMdd");
                }
                else
                {
                    sdate = DateTime.MinValue.ToString("yyyyMMdd");
                    edate = dtpAless.Value.ToString("yyyyMMdd");
                }
            }
            else if (type == 1)
            {
                if (rbtRSpecified.Checked == true)
                {
                    if (dtpRfrom.Value > dtpRto.Value)
                    {
                        MsgBoxEx.Info("Start time cannot be greater than end time.");
                        return;
                    }

                    sdate = dtpRfrom.Value.ToString("yyyyMMdd");
                    edate = dtpRto.Value.ToString("yyyyMMdd");
                }
                else
                {
                    sdate = DateTime.MinValue.ToString("yyyyMMdd");
                    edate = dtpRless.Value.ToString("yyyyMMdd");
                }
            }
            else if (type == 2)
            {
                if (rbtDSpecified.Checked == true)
                {
                    if (dtpDfrom.Value > dtpDto.Value)
                    {
                        MsgBoxEx.Info("Start time cannot be greater than end time.");
                        return;
                    }

                    sdate = dtpDfrom.Value.ToString("yyyyMMdd");
                    edate = dtpDto.Value.ToString("yyyyMMdd");
                }
                else
                {
                    sdate = DateTime.MinValue.ToString("yyyyMMdd");
                    edate = dtpDless.Value.ToString("yyyyMMdd");
                }
            }

            try
            {
                ShowLoading(ToopEnum.loading);

                IwrService service = wrService.GetService();

                var msg = service.DataArchive(sdate, edate, type.ToString());

                MsgBoxEx.Info(msg);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                //3020
                IsysService service = sysService.GetService();

                var list = service.GetCmn("3020");

                if (list[0].CODE == "1")
                {
                    list[0].CODE = "0";

                    service.UpdateDict(list);
                }

                CloseLoading();
            }
        }
Exemple #27
0
        private void LoadInfo()
        {
            dtDate.Value = DateTime.Now.AddYears(-3);
            dateTo.Value = DateTime.Now;

            IwrService service = wrService.GetService();
            DateTime   dtime   = dateTo.Value;

            Idens = service.GetIdentification(string.Empty, dtDate.Value.ToString("yyyyMMdd000000"), dtime.AddDays(1).ToString("yyyyMMdd000000"), "0");

            Idens.ForEach((p) =>
            {
                p.DVALUE = string.Format("{0}|{1}|{2}|", p.DEVICE, p.LAYER, p.LOT);
            });

            List <WmidentificationEntity> dvs = Idens.Distinct(new DeviceComparint()).ToList();

            if (this.InvokeRequired)
            {
                this.Invoke(new Action(() =>
                {
                    cbxDevice.DisplayMember = "DEVICE";
                    cbxDevice.ValueMember   = "DEVICE";

                    cbxLayer.DisplayMember = "LAYER";
                    cbxLayer.ValueMember   = "DVALUE";

                    cbxLot.DisplayMember = "LOT";
                    cbxLot.ValueMember   = "DVALUE";

                    btnQuery.Enabled     = true;
                    cbxDevice.DataSource = dvs;

                    if (dvs.Count > 0)
                    {
                        cbxDevice.Enabled       = true;
                        cbxDevice.SelectedIndex = 0;
                    }
                    else
                    {
                        cbxDevice.Text    = "-";
                        cbxLayer.Enabled  = false;
                        cbxLot.Enabled    = false;
                        btnQuery.Enabled  = false;
                        cbxDevice.Enabled = false;
                    }
                }));
            }
            else
            {
                cbxDevice.DisplayMember = "DEVICE";
                cbxDevice.ValueMember   = "DEVICE";

                cbxLayer.DisplayMember = "LAYER";
                cbxLayer.ValueMember   = "DVALUE";

                cbxLot.DisplayMember = "LOT";
                cbxLot.ValueMember   = "DVALUE";

                btnQuery.Enabled     = true;
                cbxDevice.DataSource = dvs;
                if (dvs.Count > 0)
                {
                    cbxDevice.Enabled       = true;
                    cbxDevice.SelectedIndex = 0;
                }
                else
                {
                    cbxDevice.Text    = "-";
                    cbxLayer.Enabled  = false;
                    cbxLot.Enabled    = false;
                    btnQuery.Enabled  = false;
                    cbxDevice.Enabled = false;
                }
            }
        }