王 垚
2022-04-21 3bd5db2a574a1280355de503813ba4d5cdca20b5
BaseSet/¹«ÓÃ×ÊÁÏ/ÆäËû»ù´¡×ÊÁÏ/Gy_StdWorkTimes.cs
@@ -46,8 +46,9 @@
        public DAL.ClsGy_StdWorkTimes_Ctl BillNew = new DAL.ClsGy_StdWorkTimes_Ctl();
        public Model.ClsGy_StdWorkTimes_Model BillOld = new Model.ClsGy_StdWorkTimes_Model();
        ClsGridViewSum oSumGrid = new ClsGridViewSum();
        SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
        #region å›ºå®šä»£ç 
        //合计
        private void Total()
@@ -187,7 +188,10 @@
            oSumGrid.ogrdMain = grdMain1;
            oSumGrid.oGridsum = grdSum;
            lblCaption.Text = ModName;
            textBox1.Hide();
            textBox2.Hide();
            this.Text = ModName;
        }
@@ -236,7 +240,44 @@
        //修改按纽
        private void xg_Click(object sender, EventArgs e)
        {
            this.Sub_EditBill();
            try
            {
                if (int.Parse(txtHStdWorkTimes.Text)<=0)
                {
                    MessageBox.Show("标准工时必须大于0", "提示");
                }
                if (int.Parse(txtHUpperlimit.Text) <= 0)
                {
                    MessageBox.Show("上限比例必须大于0", "提示");
                }
                if (int.Parse(txtHLowerlimit.Text) <= 0)
                {
                    MessageBox.Show("下线比例必须大于0", "提示");
                }
                oCn.BeginTran();
                string sql = string.Format(@"Update Gy_StdWorkTimes set" +
                            " HMaterID=" + textBox1.Text +
                            ",HProcID=" + textBox2.Text +
                            ",HStdWorkTimes=" + txtHStdWorkTimes.Text +
                            ",HUpperlimit=" + txtHUpperlimit.Text +
                            ",HLowerlimit=" + txtHLowerlimit.Text +
                            ",HMaker='" + DBUtility.ClsPub.CurUserName + "'" +
                            ",HMakeDate='" + DateTime.Now + "'" +
                            ",HUSEORGID=" + DBUtility.ClsPub.HOrgID +
                             " where HItemID=" + BillOld.HItemID);
                oCn.RunProc(sql);
                oCn.Commit();
                MessageBox.Show("修改成功,请退出并刷新", "提示");
            }
            catch (Exception)
            {
                oCn.RollBack();
                MessageBox.Show("修改失败", "提示");
                throw;
            }
        }
        //删除按钮
        private void sc_Click(object sender, EventArgs e)
@@ -293,7 +334,7 @@
        {
            timer1.Enabled = false;
            Sub_ControlLocation();
            if (BillStatus == DBUtility.ClsPub.Enum_BillStatus.BillStatus_View)//|| BillStatus == DBUtility.ClsPub.Enum_BillStatus.BillStatus_Viewonly
            if (BillOld.HItemID.ToString()!=null)//|| BillStatus == DBUtility.ClsPub.Enum_BillStatus.BillStatus_Viewonly
            {
                this.Sub_ShowBill();
            }
@@ -387,60 +428,65 @@
            DAL.ClsIF_Material_View oMater = new DAL.ClsIF_Material_View();
            DAL.ClsIF_Process_View oProc = new DAL.ClsIF_Process_View();
            //判断是否存在单据
            if (BillNew.ShowBill(BillOld.HItemID, ref ClsPub.sExeReturnInfo) == false)
            {
                MessageBox.Show(ClsPub.sExeReturnInfo, "提示");
                return;
            }
            DataSet DsSub = oCn.RunProcReturn("Select * from h_v_Gy_StdWorkTimesListNew Where HitemID=" + BillOld.HItemID.ToString(), "Gy_StdWorkTimes");
            DataRow dr = DsSub.Tables[0].Rows[0];
            //清空
            Sub_ClearBill();
            //
            this.txtHMaker.Text = BillOld.HMaker;
            this.txtHMakeDate.Text = BillOld.HMakeDate;
            this.txtHChecker.Text = BillOld.HChecker;
            this.textBox1.Text = dr["HMaterID"].ToString();
            this.txtHMaterID.Text = dr["物料代码"].ToString();
            this.txtHMaterName.Text = dr["物料名称"].ToString();
            this.txtHMaterModel.Text = dr["规格型号"].ToString();
            this.textBox2.Text = dr["HProcID"].ToString();
            this.txtHProcID.Text = dr["工序代码"].ToString();
            this.txtHProcName.Text = dr["工序名称"].ToString();
            this.txtHStdWorkTimes.Text = dr["标准工时"].ToString();
            this.txtHUpperlimit.Text = dr["上线比例"].ToString();
            this.txtHLowerlimit.Text = dr["下线比例"].ToString();
            //加载表体
            initGrid();
            int i = 0;
            foreach (Model.ClsGy_StdWorkTimes_Model oSub in BillNew.DetailColl)
            {
                //
                if (i >= grdMain1.RowCount - 1)
                    grdMain1.Rows.Add();
                grdMain1.Rows[i].Cells[HTagCol].Value = "*";
                grdMain1.Rows[i].Cells[HMaterIDCol].Value = oSub.HMaterID.ToString();
                if (oMater.GetInfoByID(oSub.HMaterID))
                {
                    grdMain1.Rows[i].Cells[HMaterNumberCol].Value = oMater.omodel.HNumber;
                    grdMain1.Rows[i].Cells[HMaterNameCol].Value = oMater.omodel.HName;
                    grdMain1.Rows[i].Cells[HMaterModelCol].Value = oMater.omodel.HModel;
                }
                else
                {
                    grdMain1.Rows[i].Cells[HMaterNumberCol].Value = "";
                    grdMain1.Rows[i].Cells[HMaterNameCol].Value = "";
                    grdMain1.Rows[i].Cells[HMaterModelCol].Value = "";
                }
                grdMain1.Rows[i].Cells[HProcIDCol].Value = oSub.HProcID.ToString();
                if (oProc.GetInfoByID(oSub.HProcID))
                {
                    grdMain1.Rows[i].Cells[HProcNumberCol].Value = oProc.omodel.HNumber;
                    grdMain1.Rows[i].Cells[HProcNameCol].Value = oProc.omodel.HName;
                }
                else
                {
                    grdMain1.Rows[i].Cells[HProcNumberCol].Value = "";
                    grdMain1.Rows[i].Cells[HProcNameCol].Value = "";
                }
                grdMain1.Rows[i].Cells[HStdWorkTimes].Value = oSub.HStdWorkTimes.ToString();
                grdMain1.Rows[i].Cells[HUpperlimit].Value = oSub.HUpperlimit.ToString();
                grdMain1.Rows[i].Cells[HLowerlimit].Value = oSub.HLowerlimit.ToString();
                grdMain1.Rows[i].Cells[HUSEORGID].Value = oSub.HUSEORGID.ToString();
                grdMain1.Rows[i].Cells[HRemarkCol].Value = oSub.HRemark;
                i = i + 1;
            }
            //initGrid();
            //int i = 0;
            //foreach (Model.ClsGy_StdWorkTimes_Model oSub in BillNew.DetailColl)
            //{
            //    //
            //    if (i >= grdMain1.RowCount - 1)
            //        grdMain1.Rows.Add();
            //    grdMain1.Rows[i].Cells[HTagCol].Value = "*";
            //    grdMain1.Rows[i].Cells[HMaterIDCol].Value = oSub.HMaterID.ToString();
            //    if (oMater.GetInfoByID(oSub.HMaterID))
            //    {
            //        grdMain1.Rows[i].Cells[HMaterNumberCol].Value = oMater.omodel.HNumber;
            //        grdMain1.Rows[i].Cells[HMaterNameCol].Value = oMater.omodel.HName;
            //        grdMain1.Rows[i].Cells[HMaterModelCol].Value = oMater.omodel.HModel;
            //    }
            //    else
            //    {
            //        grdMain1.Rows[i].Cells[HMaterNumberCol].Value = "";
            //        grdMain1.Rows[i].Cells[HMaterNameCol].Value = "";
            //        grdMain1.Rows[i].Cells[HMaterModelCol].Value = "";
            //    }
            //    grdMain1.Rows[i].Cells[HProcIDCol].Value = oSub.HProcID.ToString();
            //    if (oProc.GetInfoByID(oSub.HProcID))
            //    {
            //        grdMain1.Rows[i].Cells[HProcNumberCol].Value = oProc.omodel.HNumber;
            //        grdMain1.Rows[i].Cells[HProcNameCol].Value = oProc.omodel.HName;
            //    }
            //    else
            //    {
            //        grdMain1.Rows[i].Cells[HProcNumberCol].Value = "";
            //        grdMain1.Rows[i].Cells[HProcNameCol].Value = "";
            //    }
            //    grdMain1.Rows[i].Cells[HStdWorkTimes].Value = oSub.HStdWorkTimes.ToString();
            //    grdMain1.Rows[i].Cells[HUpperlimit].Value = oSub.HUpperlimit.ToString();
            //    grdMain1.Rows[i].Cells[HLowerlimit].Value = oSub.HLowerlimit.ToString();
            //    grdMain1.Rows[i].Cells[HUSEORGID].Value = oSub.HUSEORGID.ToString();
            //    grdMain1.Rows[i].Cells[HRemarkCol].Value = oSub.HRemark;
            //    i = i + 1;
            //}
            //GRID允许刷新
            DBUtility.Xt_BaseBillFun.SetSumGrid(oSumGrid);
            //合计
@@ -462,7 +508,7 @@
            //}
            //明细表是否为零行
            bool b = false;
            if (!IsNullRow(0))
            {
                MessageBox.Show("表体明细行不存在!请录入!", "提示");
@@ -489,7 +535,8 @@
            lblCaption.Focus();
            //
            if (!Sub_AllowSave())//单据完整性判断
                return false;
            { return false; }
            //
            //明细类赋值
            BillNew.DetailColl = new List<Model.ClsGy_StdWorkTimes_Model>();
@@ -497,18 +544,26 @@
            {
                if (DBUtility.ClsPub.isLong(grdMain1.Rows[i].Cells[HMaterIDCol].Value) != 0 && DBUtility.ClsPub.isLong(grdMain1.Rows[i].Cells[HProcIDCol].Value) != 0)
                {
                    Model.ClsGy_StdWorkTimes_Model oSub = new Model.ClsGy_StdWorkTimes_Model();
                    oSub.HMaterID = ClsPub.isLong(grdMain1.Rows[i].Cells[HMaterIDCol].Value);
                    oSub.HProcID = ClsPub.isLong(grdMain1.Rows[i].Cells[HProcIDCol].Value);
                    oSub.HStdWorkTimes = ClsPub.isDoule(grdMain1.Rows[i].Cells[HStdWorkTimes].Value);
                    oSub.HUpperlimit = ClsPub.isDoule(grdMain1.Rows[i].Cells[HUpperlimit].Value);
                    oSub.HLowerlimit = ClsPub.isDoule(grdMain1.Rows[i].Cells[HLowerlimit].Value);
                    oSub.HUSEORGID = ClsPub.HOrgID;
                    oSub.HStopflag = false;
                    oSub.HMaker = ClsPub.CurUserName;
                    oSub.HMakeDate = DateTime.Today.ToString();
                    oSub.HRemark = ClsPub.isStrNull(grdMain1.Rows[i].Cells[HRemarkCol].Value);
                    BillNew.DetailColl.Add(oSub);
                    if (DBUtility.ClsPub.isLong(grdMain1.Rows[i].Cells[HStdWorkTimes].Value)>0&& DBUtility.ClsPub.isLong(grdMain1.Rows[i].Cells[HUpperlimit].Value) > 0&& DBUtility.ClsPub.isLong(grdMain1.Rows[i].Cells[HLowerlimit].Value) > 0)
                    {
                        Model.ClsGy_StdWorkTimes_Model oSub = new Model.ClsGy_StdWorkTimes_Model();
                        oSub.HMaterID = ClsPub.isLong(grdMain1.Rows[i].Cells[HMaterIDCol].Value);
                        oSub.HProcID = ClsPub.isLong(grdMain1.Rows[i].Cells[HProcIDCol].Value);
                        oSub.HStdWorkTimes = ClsPub.isDoule(grdMain1.Rows[i].Cells[HStdWorkTimes].Value);
                        oSub.HUpperlimit = ClsPub.isDoule(grdMain1.Rows[i].Cells[HUpperlimit].Value);
                        oSub.HLowerlimit = ClsPub.isDoule(grdMain1.Rows[i].Cells[HLowerlimit].Value);
                        oSub.HUSEORGID = ClsPub.HOrgID;
                        oSub.HStopflag = false;
                        oSub.HMaker = ClsPub.CurUserName;
                        oSub.HMakeDate = DateTime.Today.ToString();
                        oSub.HRemark = ClsPub.isStrNull(grdMain1.Rows[i].Cells[HRemarkCol].Value);
                        BillNew.DetailColl.Add(oSub);
                    }
                    else
                    {
                        MessageBox.Show("第" + (i+1) + "行,标准工时,上限比例和下限比例都应大于0", "提示");
                        return false;
                    }
                }
            }
            //保存完毕后处理