yangle
2022-08-11 d6b40e55405f2814e4663a3a4e537de57c48c20f
WorkM/Á÷ת¿¨¹ÜÀí/MES_StationOutBill.cs
@@ -190,7 +190,8 @@
                    cmdBF.Enabled = true;
                    cmdXG.Enabled = true;
                    cmdCancel.Enabled = true;
                    cmdChecker.Enabled = true;
                    cmdChecker.Enabled = true;
                    cmdBFChecker.Enabled = true;
                    txtHBarCode.Enabled = false;
                    Sub_LrtextStatus(false);
                    break;
@@ -202,6 +203,7 @@
                    cmdXG.Enabled = false;
                    cmdCancel.Enabled = true;
                    cmdChecker.Enabled = false;
                    cmdBFChecker.Enabled = false;
                    Sub_LrtextStatus(true);
                    break;
                case DBUtility.ClsPub.Enum_BillStatus.BillStatus_Modify:
@@ -212,6 +214,7 @@
                    cmdXG.Enabled = false;
                    cmdCancel.Enabled = true;
                    cmdChecker.Enabled = false;
                    cmdBFChecker.Enabled = false;
                    Sub_LrtextStatus(true);
                    break;
            }
@@ -588,9 +591,26 @@
                MessageBox.Show("工作中心没有选择!", "提示");
                return false;
            }
            if (DBUtility.ClsPub.isDoule(txtHQty.Text) + DBUtility.ClsPub.isDoule(txtHWasterQty.Text) <= 0)
            if (DBUtility.ClsPub.isDoule(txtHQty.Text)
                + DBUtility.ClsPub.isDoule(txtHWasterQty.Text)
                + DBUtility.ClsPub.isDoule(txtHBadCount.Text)  <= 0)
            {
                MessageBox.Show("数量不能为0!", "提示");
                return false;
            }
            if (DBUtility.ClsPub.isDoule(txtHQty.Text.Trim()) < 0)
            {
                MessageBox.Show("合格个数不能小于0!", "提示");
                return false;
            }
            if (DBUtility.ClsPub.isDoule(txtHWasterQty.Text.Trim()) < 0)
            {
                MessageBox.Show("不合格数不能小于0!", "提示");
                return false;
            }
            if (DBUtility.ClsPub.isDoule(txtHBadCount.Text.Trim()) < 0)
            {
                MessageBox.Show("不良品数不能小于0!", "提示");
                return false;
            }
            if (DBUtility.ClsPub.isDoule(txtHWorkTimes.Text)   <= 0)
@@ -649,6 +669,35 @@
                MessageBox.Show("单据号重复!", "提示");
                return false;
            }
            //根据不同客户,对录入总工时与标准总工时进行对比判断
            SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
            long sMaterID = DBUtility.ClsPub.isLong(this.txtHMaterID.Tag);
            long sProcID = DBUtility.ClsPub.isLong(this.txtHProcID.Tag);
            double sQty = DBUtility.ClsPub.isDoule(this.txtHQty.Text);
            double sBadCount = DBUtility.ClsPub.isDoule(this.txtHBadCount.Text);
            double sWasterQty = DBUtility.ClsPub.isDoule(this.txtHWasterQty.Text);
            double sWorkTimes = DBUtility.ClsPub.isSingle(this.txtHWorkTimes.Text);
            DataSet Ds;
            Ds = oCn.RunProcReturn("exec h_p_MES_StationOutBill_WorkTimesCtrl  " + sMaterID.ToString() + "," + sProcID.ToString() + "," + sQty.ToString() + "," + sBadCount.ToString() + "," + sWasterQty.ToString() + "," + sWorkTimes.ToString(), "h_p_MES_StationOutBill_WorkTimesCtrl");
            if (Ds == null || Ds.Tables[0].Rows.Count == 0)
            {
                MessageBox.Show("录入总工时与标准总工时对比判断失败!", "提示");
                return false;
            }
            else
            {
                if (DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0][0]) == 1)
                {
                    MessageBox.Show(DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HRemark"]));
                    return false;
                }
                else if (DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0][0]) == 2)
                {
                    MessageBox.Show(DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HRemark"]));
                }
            }
            return true;
        }
        //保存单据
@@ -671,8 +720,18 @@
            if (BillStatus == DBUtility.ClsPub.Enum_BillStatus.BillStatus_Modify)
                BillNew.omodel.HInterID = BillOld.omodel.HInterID;
            //主类赋值
            BillNew.omodel.HYear = 2011;
            BillNew.omodel.HPeriod = 1;
            //判断会计期是否合理
            string s = "";
            int sYear = 0;
            int sPeriod = 0;
            if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(DBUtility.ClsPub.isDate(this.txtHStationOutTime.Text), ref sYear, ref sPeriod, ref s) == false)
            {
                MessageBox.Show(s, "提示");
                return false;
            }
            //
            BillNew.omodel.HYear = sYear;
            BillNew.omodel.HPeriod = sPeriod;
            BillNew.omodel.HBillNo = this.txtHBillNo.Text.Trim();
            BillNew.omodel.HICMOBillNo = this.txtHICMOBillNo.Text.Trim();
            BillNew.omodel.HICMOInterID = DBUtility.ClsPub.isLong(this.txtHICMOBillNo.Tag);
@@ -1217,6 +1276,7 @@
                    txtHEmpID.Tag = 0;
                    txtHEmpName.Text = "";
                }
                txtHQty.Focus();
            }
        }
@@ -1246,6 +1306,7 @@
                    txtHSourceID.Tag = 0;
                    txtHSourceName.Text = "";
                }
                txtHMouldNum.Focus();
            }
        }
@@ -1254,50 +1315,72 @@
            if (e.KeyCode == Keys.Enter)
            {
             //   DAL.ClsGy_Employee_View oEmp = new DAL.ClsGy_Employee_View();
                //   DAL.ClsGy_Employee_View oEmp = new DAL.ClsGy_Employee_View();
             //   Int64 HCenterID = Pub_Class.ClsPub.isLong(txtHCenterID.Tag);
             //   //获取控件位置
             //   int x = 0; int y = 0;
             //   BLL.ClsPub_BLL.SetXY(this, panel4, gbUp, txtHGroupID, ref x, ref y);
             //   //选择基础
             //   BLL.ClsBaseDownSelect.SetTextByGroup(txtHGroupID, HCenterID, x, y);
             //   Int64 HGroupID = Pub_Class.ClsPub.isLong(txtHGroupID.Tag.ToString());
             //   BillOld.ShowEmpByGroup(HGroupID, ref DBUtility.ClsPub.sExeReturnInfo, false);
             //   int i = 0;
             //   foreach (Model.ClsSc_StationOutBillSub oSub in BillOld.DetailColl)
             //   {
             //       if (i >= grdSub.RowCount - 1)
             //             grdSub.Rows.Add();
                //   Int64 HCenterID = Pub_Class.ClsPub.isLong(txtHCenterID.Tag);
                //   //获取控件位置
                //   int x = 0; int y = 0;
                //   BLL.ClsPub_BLL.SetXY(this, panel4, gbUp, txtHGroupID, ref x, ref y);
                //   //选择基础
                //   BLL.ClsBaseDownSelect.SetTextByGroup(txtHGroupID, HCenterID, x, y);
                //   Int64 HGroupID = Pub_Class.ClsPub.isLong(txtHGroupID.Tag.ToString());
                //   BillOld.ShowEmpByGroup(HGroupID, ref DBUtility.ClsPub.sExeReturnInfo, false);
             //       grdSub.Rows[i].Cells[HEmpIDCol].Value = oSub.HEmpID.ToString();
             //       if (oEmp.GetInfoByID(oSub.HEmpID))
             //       {
                //   int i = 0;
                //   foreach (Model.ClsSc_StationOutBillSub oSub in BillOld.DetailColl)
                //   {
                //       if (i >= grdSub.RowCount - 1)
                //             grdSub.Rows.Add();
             //           grdSub.Rows[i].Cells[HEmpNoCol].Value = oEmp.omodel.HNumber;
             //         //  grdSub.Rows[i].Cells[HEmpIDCol].Value = oEmp.oModel.HItemID;
             //           grdSub.Rows[i].Cells[HEmpNumberCol].Value = oEmp.omodel.HNumber;
             //           grdSub.Rows[i].Cells[HEmpNameCol].Value = oEmp.omodel.HName;
             //       }
             //       else
             //       {
             //           grdSub.Rows[i].Cells[HEmpNoCol].Value = "";
             //           //  grdSub.Rows[i].Cells[HEmpIDCol].Value = oEmp.oModel.HItemID;
             //           grdSub.Rows[i].Cells[HEmpNumberCol].Value = "";
             //           grdSub.Rows[i].Cells[HEmpNameCol].Value = "";
             //       }
             //       i = i + 1;
             //   }
             //   //GRID允许刷新
             ////   DBUtility.Xt_BaseBillFun.SetSumGrid(oSumGrid);
             //   //
             //   //Sub_OperStatus();
                txtHQty.Select();
                //       grdSub.Rows[i].Cells[HEmpIDCol].Value = oSub.HEmpID.ToString();
                //       if (oEmp.GetInfoByID(oSub.HEmpID))
                //       {
                //           grdSub.Rows[i].Cells[HEmpNoCol].Value = oEmp.omodel.HNumber;
                //         //  grdSub.Rows[i].Cells[HEmpIDCol].Value = oEmp.oModel.HItemID;
                //           grdSub.Rows[i].Cells[HEmpNumberCol].Value = oEmp.omodel.HNumber;
                //           grdSub.Rows[i].Cells[HEmpNameCol].Value = oEmp.omodel.HName;
                //       }
                //       else
                //       {
                //           grdSub.Rows[i].Cells[HEmpNoCol].Value = "";
                //           //  grdSub.Rows[i].Cells[HEmpIDCol].Value = oEmp.oModel.HItemID;
                //           grdSub.Rows[i].Cells[HEmpNumberCol].Value = "";
                //           grdSub.Rows[i].Cells[HEmpNameCol].Value = "";
                //       }
                //       i = i + 1;
                //   }
                //   //GRID允许刷新
                ////   DBUtility.Xt_BaseBillFun.SetSumGrid(oSumGrid);
                //   //
                //   //Sub_OperStatus();
                if (DBUtility.ClsPub.isStrNull(txtHGroupID.Text) != "")
                {
                    DAL.ClsGy_Group_View oGroup = new DAL.ClsGy_Group_View();
                    if (oGroup.GetInfoByNumber(DBUtility.ClsPub.isStrNull(txtHGroupID.Text)))
                    {
                        txtHGroupID.Text = oGroup.omodel.HNumber;
                        txtHGroupID.Tag = oGroup.omodel.HItemID;
                        txtHGroupName.Text = oGroup.omodel.HName;
                    }
                    else
                    {
                        txtHGroupID.Text = "";
                        txtHGroupID.Tag = 0;
                        txtHGroupName.Text = "";
                    }
                }
                else
                {
                    txtHGroupID.Text = "";
                    txtHGroupID.Tag = 0;
                    txtHGroupName.Text = "";
                }
                txtHEmpID.Focus();
            }
        }
@@ -1463,7 +1546,7 @@
            {
                //txtHWasterQty.Select();
                //cmdOK.Focus();
                txtHDSQty.Focus();
                txtHQCCheckID.Focus();
            }
        }
        private void txtHPieceQty_KeyDown(object sender, KeyEventArgs e)
@@ -1563,6 +1646,40 @@
            oBF.HMainSourceInterID = BillOld.omodel.HInterID;
            oBF.HProcExchInterID = lngBillKey;
            oBF.HProcExchEntryID = lngBillSubKey;
            oBF.HBillSubType = "不良评审";
            oBF.txtHLotNo.Text = txtHProcExchBillNo.Text;
            oBF.txtHOrderProcNo.Text = txtHOrderProcNO.Text;
            oBF.txtHMaterID.Text = txtHMaterName.Text;
            oBF.txtHMaterNumber.Text = txtHMaterID.Text;
            oBF.txtHModel.Text = txtHMaterModel.Text;
            oBF.txtHMaterID.Tag = txtHMaterID.Tag;
            oBF.txtHProcID.Tag = txtHProcID.Tag;
            oBF.txtHProcID.Text = txtHProcID.Text;
            oBF.txtHWorkCenterID.Text = txtHCenterID.Text;
            oBF.txtHWorkCenterID.Tag = txtHCenterID.Tag;
            oBF.txtHICMOInterID.Text = Pub_Class.ClsPub.isStrNull(txtHICMOBillNo.Tag);
            oBF.txtHICMOBillNo.Text = txtHICMOBillNo.Text;
            oBF.txtHProcExchQty.Text = ClsPub.isStrNull(ClsPub.isDoule(txtHPlanQty.Text));
            oBF.txtHPlanQty.Text = ClsPub.isStrNull(ClsPub.isDoule(txtHBadCount.Text));
            oBF.txtHPlanPNL.Text = ClsPub.isStrNull(ClsPub.isDoule(txtHBadPNL.Text));
            oBF.txtHBadPNL.Text = ClsPub.isStrNull(ClsPub.isDoule(txtHBadPNL.Text));
            oBF.txtHBadQty.Text = ClsPub.isStrNull(ClsPub.isDoule(txtHBadCount.Text));
            oBF.ShowDialog();
            if (oBF.BillChange)
            {
                this.Sub_ShowBill();
            }
        }
        //报废品质确认按钮
        private void cmdBFChecker_Click(object sender, EventArgs e)
        {
            QC_NoPassProdCheckBill oBF = new QC_NoPassProdCheckBill();
            oBF.BillStatus = DBUtility.ClsPub.Enum_BillStatus.BillStatus_AddNew;
            oBF.HMainSourceInterID = BillOld.omodel.HInterID;
            oBF.HProcExchInterID = lngBillKey;
            oBF.HProcExchEntryID = lngBillSubKey;
            oBF.HBillSubType = "报废评审";
            oBF.txtHLotNo.Text = txtHProcExchBillNo.Text;
            oBF.txtHOrderProcNo.Text = txtHOrderProcNO.Text;
            oBF.txtHMaterID.Text = txtHMaterName.Text;
@@ -1584,7 +1701,7 @@
            if (oBF.BillChange)
            {
                this.Sub_ShowBill();
            }
            }
        }
        private void label20_Click(object sender, EventArgs e)
@@ -1621,7 +1738,7 @@
                {
                    Sub_WriteInForm_SM2(Ds.Tables[0], i);
                }
                txtHPayProcID.Focus();
                txtHSourceID.Focus();
                //如果是唯一 æ ¸ç®—工序则 é»˜è®¤å¸¦å‡º å¹¶è·³è‡³ èŒå‘˜
                //if (oProc.GetSubProcInfoByID(DBUtility.ClsPub.isLong(txtHProcID.Tag)))
                //{
@@ -2381,6 +2498,7 @@
                    txtHQCCheckID.Tag = 0;
                    txtHQCCheckName.Text = "";
                }
                txtHBadCount.Focus();
            }
        }
@@ -2499,5 +2617,29 @@
        {
        }
        private void txtHMouldNum_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
            {
                txtHGroupID.Focus();
            }
        }
        private void txtHBadCount_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
            {
                txtHWorkTimes.Focus();
            }
        }
        private void txtHWorkTimes_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
            {
                txtHWasterQty.Focus();
            }
        }
    }
}