예제 #1
0
        private void btnUpdate_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(txtProductionId.Text))
            {
                Ultils.EditTextErrorMessage(txtProductionId, "The Production ID required.");
            }
            else if (string.IsNullOrEmpty(txtBoxId.Text))
            {
                Ultils.EditTextErrorMessage(txtBoxId, "The Box ID required.");
            }
            else
            {
                var productionIds = txtProductionId.Text.Split('\n');
                try
                {
                    splashScreenManager1.ShowWaitForm();
                    foreach (var productionId in productionIds)
                    {
                        _oqcService.UpdateBoxIdByProductionId(txtBoxId.Text, productionId);
                    }

                    txtProductionId.Focus();
                    txtProductionId.ResetText();
                    txtBoxId.ResetText();
                    StatusMessage(true, "Update Success");
                    splashScreenManager1.CloseWaitForm();
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
        }
예제 #2
0
 private void txtBoxID_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
 {
     if (e.KeyCode == Keys.Enter || e.KeyCode == Keys.Tab)
     {
         if (string.IsNullOrEmpty(txtBoxID.Text))
         {
             Ultils.TextControlNotNull(txtBoxID, "Box");
         }
         else
         {
             string strBoxId = txtBoxID.Text;
             if (strBoxId.Length >= 3)
             {
                 if (strBoxId.Substring(0, 3).ToUpper() != "F00")
                 {
                     Ultils.EditTextErrorMessage(txtBoxID, "BOX ID phải bắt đầu bằng F00");
                     txtBoxID.SelectAll();
                 }
                 else
                 {
                     InsertLog(txtBoxID.Text);
                 }
             }
             else
             {
                 Ultils.EditTextErrorMessage(txtBoxID, "BOX ID không đúng!");
                 txtBoxID.SelectAll();
             }
         }
     }
 }
예제 #3
0
 private void txtProductionId_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
 {
     if (e.KeyCode == Keys.Enter)
     {
         if (string.IsNullOrEmpty(txtProductionId.Text))
         {
             Ultils.TextControlNotNull(txtProductionId, "The Production ID required.");
         }
         else
         {
             var production = _oqcService.GetLogByProductionId(txtProductionId.Text);
             if (production != null)
             {
                 txtBoxId.Focus();
             }
             else
             {
                 Ultils.EditTextErrorMessage(txtProductionId, "The Production ID not exits.");
             }
         }
     }
     if (e.KeyCode == Keys.Tab)
     {
         if (string.IsNullOrEmpty(txtProductionId.Text))
         {
             Ultils.TextControlNotNull(txtProductionId, "The Production ID required.");
         }
     }
 }
예제 #4
0
 /// <summary>
 /// Add PCB
 /// </summary>
 private void EditTextAddPCB_PreviewKeyDown()
 {
     if (string.IsNullOrEmpty(txtAddPCB.Text))
     {
         Ultils.TextControlNotNull(txtAddPCB, "Add PCB");
     }
     else
     {
         string modelId = txtAddPCB.Text;
         if (CheckModels(modelId))
         {
             if (_currentPo.QuantityRemain <= 0)
             {
                 MessageBoxHelper.ShowMessageBoxWaring("PO đã được nhập đủ, bạn không thể tiếp tục. Vui lòng nhập PO khác!");
                 gridLookUpEditModelID.Focus();
                 txtPO.ResetText();
                 lblQtyPO.Text         = "0";
                 lblRemains.Text       = "0";
                 lblQuantityModel.Text = "/0";
             }
             else
             {
                 AddPcbToBox(txtBoxID.Text);
             }
         }
         else
         {
             Ultils.EditTextErrorMessage(txtAddPCB, string.Format("PCB [{1}] này không giành cho Model [{0}] {2}", gridLookUpEditModelID.Text, txtAddPCB.Text, _currentModel.SerialNo));
             txtAddPCB.SelectAll();
         }
     }
 }
예제 #5
0
파일: FormLogin.cs 프로젝트: imatary/work
 private void txtOperationID_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
 {
     if (e.KeyCode == Keys.Enter)
     {
         if (string.IsNullOrEmpty(txtOperationID.Text))
         {
             Ultils.TextControlNotNull(txtOperationID, "Operation ID");
         }
         else
         {
             int op = int.Parse(txtOperationID.Text.Trim());
             if (op > 3)
             {
                 Ultils.EditTextErrorMessage(txtOperationID, "OperationID error!");
             }
             else
             {
                 if (string.IsNullOrEmpty(txtProcess.Text.Trim()))
                 {
                     txtProcess.Focus();
                 }
                 else
                 {
                     btnLogin.Focus();
                 }
             }
         }
     }
 }
예제 #6
0
        private void txtPO_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
            {
                if (string.IsNullOrEmpty(txtPO.Text))
                {
                    Ultils.TextControlNotNull(txtPO, "PO");
                }
                else
                {
                    string strPo    = txtPO.Text;
                    int    index    = strPo.IndexOf(' ');
                    string removePo = index >= 0 ? strPo.Remove(index) : txtPO.Text;
                    if (strPo.Contains(" "))
                    {
                        string[] input = strPo.Split(' ');

                        string po_no   = input[0];
                        string remains = null;
                        //if (input.Count() > 2)
                        //{
                        //    remains = input[2];
                        //}
                        //if(input.Count()==2)
                        //{
                        remains = input[1];
                        //}


                        //remains = Regex.Replace(remains, "[^A-Za-z0-9]", "");

                        if (po_no.Length >= 3)
                        {
                            if (po_no.Substring(0, 3).ToUpper() != "3N3")
                            {
                                Ultils.EditTextErrorMessage(txtPO, "PO phải bắt đầu bằng 3N3");
                                txtPO.SelectAll();
                            }
                            else
                            {
                                txtPO.Text    = po_no;
                                lblQtyPO.Text = remains;
                                quantityPO    = Convert.ToInt32(remains);
                                txtModel.Focus();
                            }
                        }
                        else
                        {
                            Ultils.EditTextErrorMessage(txtPO, "PO NO không đúng!");
                        }
                    }
                    else
                    {
                        Ultils.EditTextErrorMessage(txtPO, "PO NO không đúng định dạng!");
                    }
                }
            }
        }
예제 #7
0
 private void txtBoxID_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
 {
     if (e.KeyCode == Keys.Enter)
     {
         if (string.IsNullOrEmpty(txtBoxID.Text))
         {
             Ultils.TextControlNotNull(txtBoxID, "Box");
         }
         else
         {
             if (string.IsNullOrEmpty(txtOperatorCode.Text))
             {
                 Ultils.TextControlNotNull(txtOperatorCode, "Operator code");
             }
             else if (string.IsNullOrEmpty(gridLookUpEditModelID.Text))
             {
                 Ultils.GridLookUpEditControlNotNull(gridLookUpEditModelID, "Model");
             }
             else if (string.IsNullOrEmpty(txtWorkingOrder.Text))
             {
                 Ultils.TextControlNotNull(txtWorkingOrder, "Working oder");
             }
             else if (string.IsNullOrEmpty(txtPO.Text))
             {
                 Ultils.TextControlNotNull(txtWorkingOrder, "PO");
             }
             else
             {
                 string strBoxId = txtBoxID.Text;
                 if (strBoxId.Length >= 3)
                 {
                     if (strBoxId.Substring(0, 3).ToUpper() != "F00")
                     {
                         Ultils.EditTextErrorMessage(txtBoxID, "BOX ID phải bắt đầu bằng F00");
                         txtBoxID.SelectAll();
                     }
                     else
                     {
                         EnableTextControls(false);
                         VisibleControlAddPCB(true);
                         txtAddPCB.Focus();
                     }
                 }
                 else
                 {
                     Ultils.EditTextErrorMessage(txtBoxID, "BOX ID ngắn quá!");
                     txtBoxID.SelectAll();
                 }
             }
         }
     }
 }
예제 #8
0
파일: FormMain.cs 프로젝트: imatary/work
        /// <summary>
        /// Box Validating
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void txtBoxID_Validating(object sender, System.ComponentModel.CancelEventArgs e)
        {
            string strLength = txtBoxID.Text;

            if (strLength.Length >= 3)
            {
                if (strLength.Substring(0, 3).ToUpper() != "F00")
                {
                    Ultils.EditTextErrorMessage(txtBoxID, "BOX ID phải bắt đầu bằng F00");
                    txtPO.SelectAll();
                }
            }
        }
예제 #9
0
파일: FormMain.cs 프로젝트: imatary/work
        /// <summary>
        /// PO
        /// </summary>
        private void EditTextPO_PreviewKeyDown()
        {
            if (string.IsNullOrEmpty(txtPO.Text))
            {
                Ultils.TextControlNotNull(txtPO, "PO");
            }
            else
            {
                string strPo    = txtPO.Text;
                int    index    = strPo.IndexOf(' ');
                string removePo = index >= 0 ? strPo.Remove(index) : txtPO.Text;

                if (removePo.Length >= 3)
                {
                    if (removePo.Substring(0, 3).ToUpper() != "3N3")
                    {
                        Ultils.EditTextErrorMessage(txtPO, "PO phải bắt đầu bằng 3N3");
                        txtPO.SelectAll();
                    }
                    else
                    {
                        if (!GetQtyPoAndRemainsByWorkingOderAndPoNo(gridLookUpEditModelID.EditValue.ToString(), removePo))
                        {
                            if (XtraMessageBox.Show($"Chưa tạo QTY PO và Remains cho Model [{gridLookUpEditModelID.Text}] và PO [{removePo}] này.\nBạn có muốn thêm mới không?", "THÔNG BÁO", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
                            {
                                var addPo = new FormAddPO(gridLookUpEditModelID.EditValue.ToString(), gridLookUpEditModelID.Text, removePo);
                                addPo.ShowDialog();
                                txtPO.Text = removePo;
                                GetQtyPoAndRemainsByWorkingOderAndPoNo(gridLookUpEditModelID.EditValue.ToString(), removePo);
                                txtBoxID.Focus();
                            }
                            else
                            {
                                DialogResult = DialogResult.No;
                                txtPO.SelectAll();
                            }
                        }
                        else
                        {
                            InsertOrUpdatePo(gridLookUpEditModelID.EditValue.ToString(), gridLookUpEditModelID.Text, removePo);
                        }
                    }
                }
                else
                {
                    Ultils.EditTextErrorMessage(txtPO, "PO NO không đúng!");
                }
            }
        }
예제 #10
0
파일: FormLogin.cs 프로젝트: imatary/work
        private void txtOperatorID_Validating(object sender, CancelEventArgs e)
        {
            string operatorCode = txtOperatorID.Text;

            if (!string.IsNullOrEmpty(operatorCode))
            {
                if (_operator == null)
                {
                    Ultils.EditTextErrorMessage(txtOperatorID, "Opeator code không tồn tại trong hệ thống!");
                }
                else
                {
                    btnLogin.Focus();
                }
            }
        }
예제 #11
0
파일: FormMain.cs 프로젝트: imatary/work
 /// <summary>
 /// BOX
 /// </summary>
 private void EditTextBox_PreviewKeyDown()
 {
     if (string.IsNullOrEmpty(txtBoxID.Text))
     {
         Ultils.TextControlNotNull(txtBoxID, "Box");
     }
     else
     {
         if (string.IsNullOrEmpty(txtOperatorCode.Text))
         {
             Ultils.TextControlNotNull(txtOperatorCode, "Operator code");
         }
         else if (string.IsNullOrEmpty(gridLookUpEditModelID.Text))
         {
             Ultils.GridLookUpEditControlNotNull(gridLookUpEditModelID, "Model");
         }
         else if (string.IsNullOrEmpty(txtWorkingOrder.Text))
         {
             Ultils.TextControlNotNull(txtWorkingOrder, "Working oder");
         }
         else if (string.IsNullOrEmpty(txtPO.Text))
         {
             Ultils.TextControlNotNull(txtWorkingOrder, "PO");
         }
         else
         {
             string strBoxId = txtBoxID.Text;
             if (strBoxId.Length >= 3)
             {
                 if (strBoxId.Substring(0, 3).ToUpper() != "F00")
                 {
                     Ultils.EditTextErrorMessage(txtBoxID, "BOX ID phải bắt đầu bằng F00");
                     txtBoxID.SelectAll();
                 }
                 else
                 {
                     GetAll(strBoxId);
                 }
             }
             else
             {
                 Ultils.EditTextErrorMessage(txtBoxID, "BOX ID ngắn quá!");
                 txtBoxID.SelectAll();
             }
         }
     }
 }
예제 #12
0
파일: FormMain.cs 프로젝트: imatary/work
 /// <summary>
 /// Add PCB
 /// </summary>
 private void EditTextAddPCB_PreviewKeyDown()
 {
     if (string.IsNullOrEmpty(txtAddPCB.Text))
     {
         Ultils.TextControlNotNull(txtAddPCB, "Add PCB");
     }
     else
     {
         string productionId = txtAddPCB.Text;
         if (CheckModels(productionId))
         {
             AddPcbToBox(txtBoxID.Text);
         }
         else
         {
             Ultils.EditTextErrorMessage(txtAddPCB, string.Format("PCB [{1}] này không giành cho Model [{0}] {2}", gridLookUpEditModelID.Text, txtAddPCB.Text, _currentModel.SerialNo));
             txtAddPCB.SelectAll();
         }
     }
 }
예제 #13
0
파일: FormQALogin.cs 프로젝트: imatary/work
 private void txtLineID_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
 {
     if (e.KeyCode == Keys.Enter)
     {
         if (string.IsNullOrEmpty(txtLineID.Text))
         {
             Ultils.TextControlNotNull(txtLineID, "Line");
         }
         else
         {
             int line = int.Parse(txtLineID.Text.Trim());
             if (line > 20)
             {
                 Ultils.EditTextErrorMessage(txtLineID, "Line error!");
             }
             else
             {
                 txtOperationID.Focus();
             }
         }
     }
     if (e.KeyCode == Keys.Tab)
     {
         if (string.IsNullOrEmpty(txtLineID.Text))
         {
             Ultils.TextControlNotNull(txtLineID, "Line");
         }
         else
         {
             int line = int.Parse(txtLineID.Text.Trim());
             if (line > 20)
             {
                 Ultils.EditTextErrorMessage(txtLineID, "Line error!");
             }
             else
             {
                 txtOperationID.Focus();
             }
         }
     }
 }
예제 #14
0
        private void txtOperatorID_Validating(object sender, CancelEventArgs e)
        {
            string operatorCode = txtOperatorID.Text;

            if (string.IsNullOrEmpty(operatorCode))
            {
                Ultils.TextControlNotNull(txtOperatorID, "Operator");
                txtOperatorID.SelectAll();
            }
            else
            {
                var operators = _oqcService.GetOperatorByCode(operatorCode);
                if (operators == null)
                {
                    Ultils.EditTextErrorMessage(txtOperatorID, "Opeator code không tồn tại trong hệ thống!");
                }
                else
                {
                    _operator = operators;
                }
            }
        }
예제 #15
0
        private void SearchPCB(string searchKey)
        {
            splashScreenManager2.ShowWaitForm();
            if (string.IsNullOrEmpty(searchKey))
            {
                splashScreenManager2.CloseWaitForm();
                Ultils.TextControlNotNull(txtSearchPCB, "Nhập vào từ khóa cần tìm!");
                txtSearchPCB.SelectAll();
            }
            else
            {
                if (comboBoxEditSearchByKey.EditValue.Equals("Production ID"))
                {
                    var logs = _oqcService.GetLogsById(searchKey);
                    var list = new List <tbl_test_log>();
                    if (logs != null)
                    {
                        list.Add(logs);
                        gridControlData.DataSource = list;
                        btnDelete.Enabled          = true;
                        splashScreenManager2.CloseWaitForm();
                    }
                    else
                    {
                        splashScreenManager2.CloseWaitForm();
                        MessageBoxHelper.ShowMessageBoxWaring($"No results width ID:[{searchKey}]");
                        txtSearchPCB.SelectAll();
                        txtSearchPCB.Focus();
                    }
                }
                else if (comboBoxEditSearchByKey.EditValue.Equals("Box ID"))
                {
                    string strLength = txtSearchPCB.Text;
                    if (strLength.Length >= 3)
                    {
                        if (strLength.Substring(0, 3).ToUpper() != "F00")
                        {
                            splashScreenManager2.CloseWaitForm();
                            Ultils.EditTextErrorMessage(txtSearchPCB, "BOX ID phải bắt đầu bằng F00");
                            txtSearchPCB.SelectAll();
                        }
                        else
                        {
                            var logs = _oqcService.GetLogsByBoxId(searchKey).ToList();

                            if (logs.Any())
                            {
                                gridControlData.DataSource = logs;
                                btnDelete.Enabled          = true;
                                splashScreenManager2.CloseWaitForm();
                            }
                            else
                            {
                                splashScreenManager2.CloseWaitForm();
                                MessageBoxHelper.ShowMessageBoxWaring($"Không tìm thấy PCB nào trong Box [{searchKey}]");
                                txtSearchPCB.SelectAll();
                                txtSearchPCB.Focus();
                            }
                        }
                    }
                }
            }
        }
예제 #16
0
        private void txtPO_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
            {
                if (string.IsNullOrEmpty(txtPO.Text))
                {
                    Ultils.TextControlNotNull(txtPO, "PO");
                }
                else
                {
                    string strPo    = txtPO.Text;
                    string removePo = null;

                    int index = strPo.IndexOf(' ');
                    removePo = index >= 0 ? strPo.Remove(index) : txtPO.Text;
                    if (removePo.Length >= 3)
                    {
                        if (removePo.Substring(0, 3).ToUpper() != "3N3")
                        {
                            Ultils.EditTextErrorMessage(txtPO, "PO phải bắt đầu bằng 3N3");
                            txtPO.SelectAll();
                        }
                        else
                        {
                            if (!GetQtyPoAndRemainsByWorkingOderAndPoNo(gridLookUpEditModelID.EditValue.ToString(), removePo))
                            {
                                if (XtraMessageBox.Show(string.Format("Chưa tạo QTY PO và Remains cho Model [{0}] và PO [{1}] này.\nBạn có muốn thêm mới không?", gridLookUpEditModelID.Text, removePo), "THÔNG BÁO", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
                                {
                                    var addPo = new FormAddPO(gridLookUpEditModelID.EditValue.ToString(), gridLookUpEditModelID.Text, removePo);
                                    addPo.ShowDialog();
                                    txtPO.Text = removePo;
                                    GetQtyPoAndRemainsByWorkingOderAndPoNo(gridLookUpEditModelID.EditValue.ToString(), removePo);
                                    txtBoxID.Focus();
                                }
                                else
                                {
                                    DialogResult = DialogResult.No;
                                    txtPO.SelectAll();
                                }
                            }
                            else
                            {
                                if (_currentPo.QuantityRemain <= 0)
                                {
                                    MessageBoxHelper.ShowMessageBoxWaring("PO đã được nhập đủ. Vui lòng nhập PO khác!");
                                    gridLookUpEditModelID.Focus();
                                    txtPO.ResetText();
                                    lblQtyPO.Text         = "0";
                                    lblRemains.Text       = "0";
                                    lblQuantityModel.Text = "/0";
                                }
                                else
                                {
                                    txtPO.Text = removePo;
                                    Ultils.SetColorDefaultTextControl(txtPO);
                                    txtBoxID.Focus();
                                }
                            }
                        }
                    }
                    else
                    {
                        Ultils.EditTextErrorMessage(txtPO, "PO NO không đúng!");
                    }
                }
            }
        }
예제 #17
0
파일: FormMain.cs 프로젝트: imatary/work
        /// <summary>
        /// Get all PCB in Box
        /// </summary>
        private void GetAll(string boxId)
        {
            if (!_iqcService.CheckBoxExits(boxId))
            {
                splashScreenManager1.ShowWaitForm();
                var logs = _oqcService.GetLogsByBoxId(boxId).ToList();
                if (logs.Any())
                {
                    foreach (var log in logs)
                    {
                        var shipping = new Shipping()
                        {
                            Operator    = txtOperatorCode.Text,
                            Model       = gridLookUpEditModelID.Text,
                            WorkingOder = txtWorkingOrder.Text,
                            Quantity    = 1,
                            BoxID       = txtBoxID.Text,
                            ProductID   = log.ProductionID,
                            PO_NO       = txtPO.Text,
                            MacAddress  = log.MacAddress,
                            DateCheck   = DateTime.Now.Date
                        };

                        if (_iqcService.GetShippingById(log.ProductionID) == null)
                        {
                            if (CheckModels(shipping.ProductID))
                            {
                                _shippings.Add(shipping);
                            }
                            else
                            {
                                _pcbError.Add(shipping);
                            }
                        }
                        else
                        {
                            MessageBoxHelper.ShowMessageBoxError($"{log.ProductionID} đã được xuất trước đó. Vui lòng kiểm tra lại!");
                            txtBoxID.Focus();
                            break;
                        }
                    }
                    if (_pcbError.Any())
                    {
                        gridControlData.DataSource = _shippings;
                        splashScreenManager1.CloseWaitForm();
                        MessageBoxHelper.ShowMessageBoxError($"Box [{boxId}] có {logs.Count} PCB\n" +
                                                             $"Có {_pcbError.Count} PCB không dành cho Model [{gridLookUpEditModelID.Text}].\n" +
                                                             "Vui lòng kiểm tra lại!");
                        //EnableTextControls(false);
                        //VisibleControlAddPcb(true);
                        txtBoxID.SelectAll();
                        txtBoxID.Focus();
                    }
                    else
                    {
                        GetQtyPoAndRemainsByWorkingOderAndPoNo(gridLookUpEditModelID.EditValue.ToString(), txtPO.EditValue.ToString());
                        lblCountPCB.Text = _shippings.Count.ToString(CultureInfo.InvariantCulture);
                        lblRemains.Text  = (_currentPo.QuantityRemain - _shippings.Count).ToString(CultureInfo.InvariantCulture);
                        Thread.Sleep(200);
                        // Nếu số lượng đủ thì thực hiện lưu vào csdl
                        if (_shippings.Count == _currentModel.Quantity)
                        {
                            gridControlData.DataSource = _shippings;
                            splashScreenManager1.CloseWaitForm();
                            splashScreenManager2.ShowWaitForm();
                            foreach (var log in _shippings)
                            {
                                _iqcService.InsertShipping(txtOperatorCode.Text, gridLookUpEditModelID.EditValue.ToString(), txtWorkingOrder.Text, 1, txtPO.Text, txtBoxID.Text, log.ProductID, log.MacAddress);
                            }
                            _iqcService.UpdateRemainsForPo(_currentPo.PO_NO, _currentPo.ModelID, int.Parse(lblRemains.Text));
                            splashScreenManager2.CloseWaitForm();
                            InsertOrUpdatePo(gridLookUpEditModelID.EditValue.ToString(), gridLookUpEditModelID.Text, txtPO.Text);
                            gridControlData.DataSource = null;
                            _shippings       = new List <Shipping>();
                            txtBoxID.Text    = string.Empty;
                            lblCountPCB.Text = @"0";
                        }
                        else
                        {
                            if (_shippings.Count > _currentModel.Quantity)
                            {
                                int count = _shippings.Count - _currentModel.Quantity;
                                gridControlData.Refresh();
                                gridControlData.DataSource = _shippings;
                                splashScreenManager1.CloseWaitForm();
                                MessageBoxHelper.ShowMessageBoxError($"Vui lòng kiểm tra lại Box [{boxId}]\n." +
                                                                     $"Số lượng lớn hơn quy định {count} PCB!");
                                txtBoxID.SelectAll();
                            }
                            else
                            {
                                gridControlData.Refresh();
                                gridControlData.DataSource = _shippings;
                                splashScreenManager1.CloseWaitForm();
                                MessageBoxHelper.ShowMessageBoxWaring($"Số lượng trong Box [{boxId}] chưa đủ. Vui lòng nhập thêm!");
                                VisibleControlAddPcb(true);
                                EnableTextControls(false);
                            }
                        }
                    }
                }
                else
                {
                    splashScreenManager1.CloseWaitForm();
                    if (XtraMessageBox.Show("Vui lòng bắn từng PCB vào Box [" + boxId + "]!", "THÔNG BÁO", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
                    {
                        EnableTextControls(false);
                        VisibleControlAddPcb(true);
                        txtAddPCB.Focus();
                    }
                    else
                    {
                        DialogResult = DialogResult.No;
                        txtBoxID.SelectAll();
                    }
                }
            }
            else
            {
                Ultils.EditTextErrorMessage(txtBoxID, $"Box [{boxId}] đã được nhập trước đó. Vui lòng kiểm tra lại!");
                txtBoxID.Text = string.Empty;
            }
        }
예제 #18
0
        private void txtModel_Validating(object sender, System.ComponentModel.CancelEventArgs e)
        {
            if (string.IsNullOrEmpty(txtModel.Text))
            {
                Ultils.TextControlNotNull(txtModel, "Model");
            }
            else if (string.IsNullOrEmpty(txtPO.Text))
            {
                Ultils.TextControlNotNull(txtPO, "PO");
            }
            else
            {
                string input = txtModel.Text.Trim();
                string po_no = txtPO.Text.Trim();

                if (input.Length > 6 && input.Substring(0, 3) == "3N4")
                {
                    input = input.Remove(0, 3);
                    string[] array = input.Split(separator: new[] { " " }, count: 4, options: StringSplitOptions.None);
                    string   model = $"{array[0]} {array[1]}";

                    _currentModel = _modelService.GetModelByName(model, FujiXerox);

                    if (_currentModel != null)
                    {
                        int quantity = 0;
                        if (checkFujiHP.Checked == true)
                        {
                            if ((_currentModel.ModelName == "105K 33480") || (_currentModel.ModelName == "105K 33470"))
                            {
                                quantity = _currentModel.QuantityHP;
                            }
                            else
                            {
                                MessageBoxHelper.ShowMessageBoxError("Vui lòng kiểm tra lại Models!");
                                checkFujiHP.Checked = false;
                            }
                        }
                        else
                        {
                            quantity = _currentModel.Quantity;
                        }

                        lblQuantityModel.Text = $"/{quantity}";

                        if (!string.IsNullOrEmpty(po_no))
                        {
                            if (!GetQtyPoAndRemainsByWorkingOderAndPoNo(_currentModel.ModelID, po_no))
                            {
                                _iqcService.InsertPo(_currentModel.ModelID, po_no, quantityPO, txtOperatorCode.Text);
                                GetQtyPoAndRemainsByWorkingOderAndPoNo(_currentModel.ModelID, po_no);
                            }
                            else
                            {
                                InsertOrUpdatePo(_currentModel.ModelID, model, po_no);
                            }
                            txtModel.Text = model;
                            txtBoxID.Focus();
                        }
                        else
                        {
                            Ultils.EditTextErrorMessage(txtModel, "PO NO không được để trống. Vui lòng bắn nhập vào PO NO!");
                        }
                    }
                    else
                    {
                        Ultils.EditTextErrorMessage(txtModel, "Model không tồn tại. Vui lòng kiểm tra lại!");
                        txtModel.ResetText();
                        txtModel.Focus();
                    }
                }
                else
                {
                    Ultils.EditTextErrorMessage(txtModel, "Model không đúng định dạng. Vui lòng bắn lại!");
                }
            }
        }
예제 #19
0
        private void SearchPCB(string productionId)
        {
            splashScreenManager2.ShowWaitForm();
            if (string.IsNullOrEmpty(productionId))
            {
                splashScreenManager2.CloseWaitForm();
                Ultils.TextControlNotNull(txtSearchPCB, "Nhập vào từ khóa cần tìm!");
                txtSearchPCB.SelectAll();
            }
            else
            {
                if (comboBoxEditSearchByKey.EditValue.Equals("Production ID"))
                {
                    var logs = _iqcService.GetLogsById(productionId);
                    if (logs != null)
                    {
                        gridControlData.DataSource = _iqcService.GetLogsById(productionId);
                        splashScreenManager2.CloseWaitForm();

                        //if (EnableUpdateOrDelete(true))
                        //{
                        //    EnableSearch(false);
                        //    txtBoxID.Focus();
                        //}
                        //else
                        //{
                        //    MessageBox.Show("False");
                        //}
                    }
                    else
                    {
                        splashScreenManager2.CloseWaitForm();
                        MessageBoxHelper.ShowMessageBoxWaring($"Không tìm thấy PCB nào với Production ID [{productionId}]");
                        txtSearchPCB.SelectAll();
                        txtSearchPCB.Focus();
                    }
                }
                else if (comboBoxEditSearchByKey.EditValue.Equals("Box ID"))
                {
                    string strLength = txtSearchPCB.Text;
                    if (strLength.Length >= 3)
                    {
                        if (strLength.Substring(0, 3).ToUpper() != "F00")
                        {
                            splashScreenManager2.CloseWaitForm();
                            Ultils.EditTextErrorMessage(txtSearchPCB, "BOX ID phải bắt đầu bằng F00");
                            txtSearchPCB.SelectAll();
                        }
                        else
                        {
                            var logs = _iqcService.GetLogs().Where(p => p.BoxID == productionId).ToList();

                            if (logs.Any())
                            {
                                gridControlData.DataSource = logs;
                                splashScreenManager2.CloseWaitForm();
                                //if (EnableUpdateOrDelete(true))
                                //{
                                //    EnableSearch(false);
                                //    txtBoxID.Focus();
                                //}
                                //else
                                //{
                                //    MessageBox.Show("False");
                                //}
                            }
                            else
                            {
                                splashScreenManager2.CloseWaitForm();
                                MessageBoxHelper.ShowMessageBoxWaring($"Không tìm thấy PCB nào trong Box [{productionId}]");
                                txtSearchPCB.SelectAll();
                                txtSearchPCB.Focus();
                            }
                        }
                    }
                }
            }
        }
예제 #20
0
파일: Search.cs 프로젝트: imatary/work
        private void btnSearch_Click(object sender, EventArgs e)
        {
            _shippings = new List <Shipping>();
            splashScreenManager1.ShowWaitForm();
            if (string.IsNullOrEmpty(txtSearch.Text))
            {
                splashScreenManager1.CloseWaitForm();
                Ultils.TextControlNotNull(txtSearch, "Nhập vào từ khóa cần tìm!");
                txtSearch.SelectAll();
            }
            else
            {
                if (comboBoxEditSearchByKey.EditValue.Equals("Production ID"))
                {
                    var shipping = _iqcService.GetShippingById(txtSearch.Text);
                    if (shipping != null)
                    {
                        _shippings.Add(shipping);
                        gridControlData.DataSource = _shippings;
                        splashScreenManager1.CloseWaitForm();
                        txtSearch.SelectAll();
                        txtSearch.Focus();
                        btnExports.Enabled = true;
                    }
                    else
                    {
                        splashScreenManager1.CloseWaitForm();
                        MessageBoxHelper.ShowMessageBoxWaring($"Không tìm thấy PCB nào với Production ID [{txtSearch.Text}]");
                        txtSearch.SelectAll();
                        txtSearch.Focus();
                    }
                }
                else if (comboBoxEditSearchByKey.EditValue.Equals("PO NO"))
                {
                    string strLength = txtSearch.Text;
                    if (strLength.Length >= 3)
                    {
                        if (strLength.Substring(0, 3).ToUpper() != "3N3")
                        {
                            splashScreenManager1.CloseWaitForm();
                            Ultils.EditTextErrorMessage(txtSearch, "PO phải bắt đầu bằng 3N3");
                            txtSearch.SelectAll();
                        }
                        else
                        {
                            _shippings = _iqcService.GetShippingsByPo(txtSearch.Text).ToList();

                            if (_shippings.Any())
                            {
                                gridControlData.DataSource = _shippings;
                                splashScreenManager1.CloseWaitForm();
                                txtSearch.SelectAll();
                                txtSearch.Focus();
                                btnExports.Enabled = true;
                            }
                            else
                            {
                                splashScreenManager1.CloseWaitForm();
                                MessageBoxHelper.ShowMessageBoxWaring($"Không tìm thấy PCB nào với PO NO [{txtSearch.Text}]");
                                txtSearch.SelectAll();
                                txtSearch.Focus();
                            }
                        }
                    }
                }
                else if (comboBoxEditSearchByKey.EditValue.Equals("Box ID"))
                {
                    string strLength = txtSearch.Text;
                    if (strLength.Length >= 3)
                    {
                        if (strLength.Substring(0, 3).ToUpper() != "F00")
                        {
                            splashScreenManager1.CloseWaitForm();
                            Ultils.EditTextErrorMessage(txtSearch, "BOX ID phải bắt đầu bằng F00");
                            txtSearch.SelectAll();
                        }
                        else
                        {
                            _shippings = _iqcService.GetShippingsByBoxId(txtSearch.Text).ToList();

                            if (_shippings.Any())
                            {
                                gridControlData.DataSource = _shippings;
                                splashScreenManager1.CloseWaitForm();
                                txtSearch.SelectAll();
                                txtSearch.Focus();
                                btnDelBox.Enabled  = true;
                                btnExports.Enabled = true;
                            }
                            else
                            {
                                splashScreenManager1.CloseWaitForm();
                                MessageBoxHelper.ShowMessageBoxWaring($"Không tìm thấy PCB nào trong Box [{txtSearch.Text}]");
                                txtSearch.SelectAll();
                                txtSearch.Focus();
                            }
                        }
                    }
                }
            }
        }
예제 #21
0
파일: FormQACheck.cs 프로젝트: imatary/work
        private void txtBoxID_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
        {
            if (e.KeyCode == Keys.Enter || e.KeyCode == Keys.Tab)
            {
                if (string.IsNullOrEmpty(txtBoxID.Text))
                {
                    Ultils.TextControlNotNull(txtBoxID, "Box");
                }
                else
                {
                    string strBoxId = txtBoxID.Text;
                    bool   judge    = txtJudge.Text.Trim() == "1";
                    if (strBoxId.Length >= 3)
                    {
                        if (strBoxId.Substring(0, 3).ToUpper() != "F00")
                        {
                            Ultils.EditTextErrorMessage(txtBoxID, "BOX ID phải bắt đầu bằng F00");
                            txtBoxID.SelectAll();
                        }
                        else
                        {
                            var currentBox = _oqcService.CheckBoxIdExits(txtBoxID.Text.Trim());
                            if (currentBox != null)
                            {
                                //var production = _oqcService.GetLogByProductionId(txtProductionID.Text);
                                if (_log.BoxID == txtBoxID.Text.Trim())
                                {
                                    string tmp           = lblQuantityModel.Text.Replace("/", "");
                                    int    countPcbInBox = int.Parse(lblCountPCB.Text);
                                    int    quantity      = int.Parse(tmp);

                                    //if (countPcbInBox == quantity)
                                    //{
                                    //    SetErrorStatus(true, "OK", "Thùng đã được kiểm tra xong. Vui lòng\nkiểm tra thùng khác!");
                                    //    txtProductionID.Focus();
                                    //    ResetControls();
                                    //}
                                    //else
                                    //{
                                    try
                                    {
                                        _oqcService.UpdateOQCCheck(_log, Program.CurrentUser.OperatorCode);
                                        if (txtJudge.Text.Trim() == "0")
                                        {
                                            _iqcService.UpdateResult(_log.ProductionID, Program.CurrentUser.OperationID, judge, Program.CurrentUser.OperatorCode);
                                        }
                                        var logs = _oqcService.GetLogsByBoxId(txtBoxID.Text.Trim()).Where(l => l.QA_Check);
                                        gridControlData.DataSource = logs;
                                        lblCountPCB.Text           = logs.Count().ToString();
                                        SetSuccessStatus(true, "OK", "Thành công!");
                                        ResetControls();
                                    }
                                    catch (Exception ex)
                                    {
                                        SetErrorStatus(true, "NG", $"Error update!\n {ex.Message}");
                                        txtBoxID.SelectAll();
                                        Ultils.EditTextErrorNoMessage(txtBoxID);
                                    }
                                    //}
                                }
                                else
                                {
                                    SetErrorStatus(true, "NG",
                                                   $"PCB [{txtProductionID.Text}] không nằm\ntrong Box: {txtBoxID.Text} này.\n" +
                                                   "Vui lòng kiểm tra lại.");
                                    txtBoxID.SelectAll();
                                    Ultils.EditTextErrorNoMessage(txtBoxID);
                                }
                            }
                            else
                            {
                                SetErrorStatus(true, "NG",
                                               $"Box [{txtBoxID.Text}] không tồn tại trong hệ thống.\n" +
                                               "Vui lòng kiểm tra lại.");
                                txtBoxID.SelectAll();
                                Ultils.EditTextErrorNoMessage(txtBoxID);
                            }
                        }
                    }
                    else
                    {
                        Ultils.EditTextErrorMessage(txtBoxID, "BOX ID không đúng!");
                        txtBoxID.SelectAll();
                    }
                }
            }
        }