コード例 #1
0
 protected ProductCheckHistoryDetailFacade(ProductCheckHistoryDetailModel model) : base(model)
 {
 }
        private void btnSave_Click(object sender, EventArgs e)
        {
            if (grvData.RowCount == 0)
            {
                return;
            }

            int productID = _productID;
            int stepID    = TextUtils.ToInt(cboWorkingStep.SelectedValue);

            if (productID == 0)
            {
                MessageBox.Show(string.Format("Không tồn tại sản phẩm có mã [{0}]!", _productCode.Trim()), "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            if (stepID == 0)
            {
                MessageBox.Show(string.Format("Bạn chưa chọn công đoạn nào!", _productCode.Trim()), "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            if (string.IsNullOrEmpty(txtWorker.Text.Trim()))
            {
                MessageBox.Show(string.Format("Bạn chưa điền người làm!", _productCode.Trim()), "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                txtWorker.Focus();
                return;
            }
            bool isHasValue = false;

            for (int i = 1; i < 7; i++)
            {
                Control control = pannelBot.Controls.Find("textbox" + i, false)[0];
                if (control.Text == "0" || control.Text == "1")
                {
                    isHasValue = true;
                    break;
                }
            }
            if (!isHasValue)
            {
                //MessageBox.Show("Bạn chưa nhập các giá trị kiểm tra!", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            DialogResult result = MessageBox.Show("Bạn có chắc muốn cất dữ liệu?", "Cất?", MessageBoxButtons.YesNo, MessageBoxIcon.Question);

            if (result == DialogResult.No)
            {
                return;
            }

            int count = _dtData.Rows.Count;

            //TimeSpan b = new TimeSpan();
            //Stopwatch stopwatch = new Stopwatch();
            //stopwatch.Start();
            for (int i = 3; i < 9; i++)
            {
                Control control       = pannelBot.Controls.Find("textbox" + (i - 2), false)[0];
                string  columnCaption = grvData.Columns[i].Caption;
                string  qrCode        = "";
                if (string.IsNullOrEmpty(control.Text.Trim()))
                {
                    continue;
                }
                else
                {
                    qrCode = _tienTo + columnCaption + " " + _productCode;
                }
                if (string.IsNullOrWhiteSpace(control.Text.Trim()) || TextUtils.ToInt(control.Text.Trim()) > 1 || TextUtils.ToInt(control.Text.Trim()) < 0)
                {
                    continue;
                }

                /*
                 * Xóa các giá trị đã lưu cũ
                 */
                // ProductCheckHistoryDetailBO.Instance.DeleteByExpression(new Utils.Expression("QRCode", qrCode).And(new Utils.Expression("ProductStepID", stepID)));

                /*
                 * Insert lại dữ liệu kiểm tra vào bảng
                 */
                for (int j = 0; j < count; j++)
                {
                    ProductCheckHistoryDetailModel cModel = new ProductCheckHistoryDetailModel();
                    cModel.ProductStepID   = stepID;
                    cModel.ProductStepCode = cboWorkingStep.Text.Trim();
                    cModel.ProductStepName = txtStepName.Text.Trim();
                    cModel.SSortOrder      = TextUtils.ToInt(grvData.GetRowCellValue(j, colSSortOrder));

                    cModel.ProductWorkingID = TextUtils.ToInt(grvData.GetRowCellValue(j, colWorkingID));
                    //cModel.ProductWorkingCode = TextUtils.ToInt(grvData.GetRowCellValue(j, colWorkingID));
                    cModel.ProductWorkingName = TextUtils.ToString(grvData.GetRowCellValue(j, colProductWorkingName));
                    cModel.WSortOrder         = TextUtils.ToInt(grvData.GetRowCellValue(j, colSortOrder));

                    cModel.WorkerCode    = txtWorker.Text.Trim();
                    cModel.StandardValue = TextUtils.ToString(grvData.GetRowCellValue(j, colStandardValue));
                    cModel.RealValue     = TextUtils.ToString(grvData.GetRowCellValue(j, "RealValue" + (i - 2)));
                    cModel.ValueType     = TextUtils.ToInt(grvData.GetRowCellValue(j, colValueType));
                    cModel.ValueTypeName = cModel.ValueType == 1 ? "Giá trị\n数値" : "Check mark";
                    cModel.EditValue1    = "";
                    cModel.EditValue2    = "";
                    cModel.StatusResult  = TextUtils.ToInt(control.Text.Trim());
                    cModel.ProductID     = productID;
                    cModel.QRCode        = qrCode;
                    cModel.OrderCode     = string.IsNullOrWhiteSpace(txtOrder.Text.Trim()) ?
                                           (_tienTo.Contains("-") ? _tienTo.Substring(0, _tienTo.Length - 1) : _order) :
                                           txtOrder.Text.Trim();
                    cModel.PackageNumber = _tienTo.Contains("-") ? _tienTo.Split('-')[1] : "";
                    cModel.QtyInPackage  = columnCaption;
                    cModel.Approved      = "";
                    cModel.Monitor       = "";
                    cModel.DateLR        = DateTime.Now;
                    cModel.EditContent   = "";
                    cModel.EditDate      = DateTime.Now;
                    cModel.ProductCode   = _productCode;

                    cModel.ProductOrder = _order;

                    ProductCheckHistoryDetailBO.Instance.Insert(cModel);
                }
            }
            //stopwatch.Stop();
            //b = stopwatch.Elapsed;

            // MessageBox.Show(string.Format("Time: {0}", b.Seconds));

            _stepIndex    = cboWorkingStep.SelectedIndex;
            _currentIndex = 0;

            _totalTimeDelay = 0;

            grdData.DataSource        = null;
            txtQRCode.Text            = "";
            txtOrder.Text             = "";
            cboWorkingStep.DataSource = null;
            resetControl();
            txtQRCode.Focus();
        }
コード例 #3
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            if (!PreSaveCheck())
            {
                MessageBox.Show("Số lượng sản phẩm không giống nhau!", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                txtData.Text = string.Empty;
                txtData.Focus();
                return;
            }
            if (grvData.RowCount == 0)
            {
                return;
            }

            int productID = _productID;
            int stepID    = TextUtils.ToInt(cboWorkingStep.SelectedValue);

            if (productID == 0)
            {
                MessageBox.Show(string.Format("Không tồn tại sản phẩm có mã [{0}]!", _productCode.Trim()), "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            if (stepID == 0)
            {
                MessageBox.Show(string.Format("Bạn chưa chọn công đoạn nào!", _productCode.Trim()), "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            if (string.IsNullOrEmpty(txtWorker.Text.Trim()))
            {
                MessageBox.Show(string.Format("Bạn chưa điền người làm!", _productCode.Trim()), "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                txtWorker.Focus();
                return;
            }

            DialogResult result = MessageBox.Show("Bạn có chắc muốn cất dữ liệu?", "Cất?", MessageBoxButtons.YesNo, MessageBoxIcon.Question);

            if (result == DialogResult.No)
            {
                return;
            }

            if (OrderInfoFolder == string.Empty || !Directory.Exists(OrderInfoFolder))
            {
                FolderBrowserDialog od = new FolderBrowserDialog();
                od.Description = "Chọn thư mục lưu thông tin Order";
                if (od.ShowDialog() == DialogResult.OK)
                {
                    OrderInfoFolder = od.SelectedPath;
                }
                else
                {
                    return;
                }
            }

            int count = _dtData.Rows.Count;
            int countProductInThisOrder = 0;

            for (int i = 3; i < 9; i++)
            {
                string columnCaption = grvData.Columns[i].Caption;
                string qrCode        = _tienTo + columnCaption + " " + _productCode;;

                /*
                 * Xóa các giá trị đã lưu cũ
                 */
                // ProductCheckHistoryDetailBO.Instance.DeleteByExpression(new Utils.Expression("QRCode", qrCode).And(new Utils.Expression("ProductStepID", stepID)));

                /*
                 * Insert lại dữ liệu kiểm tra vào bảng
                 */
                for (int j = 0; j < count; j++)
                {
                    ProductCheckHistoryDetailModel cModel = new ProductCheckHistoryDetailModel();
                    cModel.ProductStepID   = stepID;
                    cModel.ProductStepCode = cboWorkingStep.Text.Trim();
                    cModel.ProductStepName = txtStepName.Text.Trim();
                    cModel.SSortOrder      = TextUtils.ToInt(grvData.GetRowCellValue(j, colSSortOrder));

                    cModel.ProductWorkingID   = TextUtils.ToInt(grvData.GetRowCellValue(j, colWorkingID));
                    cModel.ProductWorkingName = TextUtils.ToString(grvData.GetRowCellValue(j, colProductWorkingName));
                    cModel.WSortOrder         = TextUtils.ToInt(grvData.GetRowCellValue(j, colSortOrder));

                    cModel.WorkerCode    = txtWorker.Text.Trim();
                    cModel.StandardValue = TextUtils.ToString(grvData.GetRowCellValue(j, colStandardValue));
                    cModel.RealValue     = TextUtils.ToString(grvData.GetRowCellValue(j, "RealValue" + (i - 2)));
                    if (j == 0 && !string.IsNullOrEmpty(cModel.RealValue.Trim()))
                    {
                        countProductInThisOrder++;
                    }
                    cModel.ValueType     = TextUtils.ToInt(grvData.GetRowCellValue(j, colValueType));
                    cModel.ValueTypeName = cModel.ValueType == 1 ? "Giá trị\n数値" : "Check mark";
                    cModel.EditValue1    = "";
                    cModel.EditValue2    = "";
                    cModel.StatusResult  = 1;
                    cModel.ProductID     = productID;
                    cModel.QRCode        = qrCode;
                    cModel.OrderCode     = string.IsNullOrWhiteSpace(txtOrder.Text.Trim()) ?
                                           (_tienTo.Contains("-") ? _tienTo.Substring(0, _tienTo.Length - 1) : _order) :
                                           txtOrder.Text.Trim();
                    cModel.PackageNumber = _tienTo.Contains("-") ? _tienTo.Split('-')[1] : "";
                    cModel.QtyInPackage  = columnCaption;
                    cModel.Approved      = "";
                    cModel.Monitor       = "";
                    cModel.DateLR        = DateTime.Now;
                    cModel.EditContent   = "";
                    cModel.EditDate      = DateTime.Now;
                    cModel.ProductCode   = _productCode;

                    cModel.ProductOrder = _order;

                    ProductCheckHistoryDetailBO.Instance.Insert(cModel);
                }
            }

            string OderInfoFilePath = OrderInfoFolder + "\\" + "CDXK-Order.txt";

            File.WriteAllText(OderInfoFilePath, txtOrder.Text + "-" + countProductInThisOrder);

            grdData.DataSource        = null;
            txtQRCode.Text            = "";
            txtOrder.Text             = "";
            cboWorkingStep.DataSource = null;
            lstWorkingName.Clear();
            resetControl();
            txtQRCode.Focus();
        }