cnf
2025-08-27 9a853780edf120c99712c15fd3b174fa08ef142c
补料优化
已修改4个文件
158 ■■■■ 文件已修改
DevApp/Gs.DevApp/DevFrm/Ck/UcBlcl.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DevApp/Gs.DevApp/DevFrm/Ck/UcBlclSelect.Designer.cs 93 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DevApp/Gs.DevApp/DevFrm/Ck/UcBlclSelect.cs 60 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DevApp/Gs.DevApp/DevFrm/Rk/Frm_MesItemTbl.resx 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DevApp/Gs.DevApp/DevFrm/Ck/UcBlcl.cs
@@ -320,6 +320,8 @@
            gridViews.Add(gvMx1);
            UtilityHelper.CleanValueByControl(this.layoutMx1.Controls, true, gridViews);
            Gs.DevApp.ToolBox.UtilityHelper.SetDefaultTable(gcMx1, gvMx1);
            //增加时,默认组织
            string deftOrg = UtilityHelper.GetFirstOrg(txt_orgId);
        }
        /// <summary>
DevApp/Gs.DevApp/DevFrm/Ck/UcBlclSelect.Designer.cs
@@ -45,6 +45,7 @@
            this.gridColumn11 = new DevExpress.XtraGrid.Columns.GridColumn();
            this.panelControl1 = new DevExpress.XtraEditors.PanelControl();
            this.btnIn = new DevExpress.XtraEditors.SimpleButton();
            this.gv_kbsl = new DevExpress.XtraGrid.Columns.GridColumn();
            ((System.ComponentModel.ISupportInitialize)(this.panelControl2)).BeginInit();
            this.panelControl2.SuspendLayout();
            ((System.ComponentModel.ISupportInitialize)(this.gcMain)).BeginInit();
@@ -59,17 +60,20 @@
            this.panelControl2.Controls.Add(this.panelControl1);
            this.panelControl2.Dock = System.Windows.Forms.DockStyle.Fill;
            this.panelControl2.Location = new System.Drawing.Point(0, 0);
            this.panelControl2.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
            this.panelControl2.Name = "panelControl2";
            this.panelControl2.Size = new System.Drawing.Size(1128, 682);
            this.panelControl2.Size = new System.Drawing.Size(987, 530);
            this.panelControl2.TabIndex = 4;
            // 
            // gcMain
            // 
            this.gcMain.Dock = System.Windows.Forms.DockStyle.Fill;
            this.gcMain.EmbeddedNavigator.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
            this.gcMain.Location = new System.Drawing.Point(2, 2);
            this.gcMain.MainView = this.gridView1;
            this.gcMain.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
            this.gcMain.Name = "gcMain";
            this.gcMain.Size = new System.Drawing.Size(1124, 635);
            this.gcMain.Size = new System.Drawing.Size(983, 493);
            this.gcMain.TabIndex = 2;
            this.gcMain.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
            this.gridView1});
@@ -79,7 +83,7 @@
            this.gridView1.Appearance.HeaderPanel.Options.UseTextOptions = true;
            this.gridView1.Appearance.HeaderPanel.TextOptions.WordWrap = DevExpress.Utils.WordWrap.Wrap;
            this.gridView1.Appearance.Row.Options.UseFont = true;
            this.gridView1.ColumnPanelRowHeight = 50;
            this.gridView1.ColumnPanelRowHeight = 39;
            this.gridView1.Columns.AddRange(new DevExpress.XtraGrid.Columns.GridColumn[] {
            this.colChkInt,
            this.gridColumn1,
@@ -90,14 +94,16 @@
            this.gridColumn6,
            this.gridColumn7,
            this.gridColumn8,
            this.gv_kbsl,
            this.gridColumn9,
            this.gridColumn10,
            this.gridColumn11});
            this.gridView1.DetailHeight = 272;
            this.gridView1.GridControl = this.gcMain;
            this.gridView1.IndicatorWidth = 50;
            this.gridView1.IndicatorWidth = 44;
            this.gridView1.Name = "gridView1";
            this.gridView1.OptionsFind.ShowSearchNavButtons = false;
            this.gridView1.OptionsSelection.CheckBoxSelectorColumnWidth = 60;
            this.gridView1.OptionsSelection.CheckBoxSelectorColumnWidth = 52;
            this.gridView1.OptionsView.ShowAutoFilterRow = true;
            this.gridView1.OptionsView.ShowGroupPanel = false;
            // 
@@ -106,128 +112,129 @@
            this.colChkInt.Caption = ".";
            this.colChkInt.FieldName = "chkInt";
            this.colChkInt.Fixed = DevExpress.XtraGrid.Columns.FixedStyle.Left;
            this.colChkInt.MinWidth = 25;
            this.colChkInt.MinWidth = 22;
            this.colChkInt.Name = "colChkInt";
            this.colChkInt.Visible = true;
            this.colChkInt.VisibleIndex = 0;
            this.colChkInt.Width = 94;
            this.colChkInt.Width = 82;
            // 
            // gridColumn1
            // 
            this.gridColumn1.Caption = "项次";
            this.gridColumn1.FieldName = "dab002";
            this.gridColumn1.MinWidth = 25;
            this.gridColumn1.MinWidth = 22;
            this.gridColumn1.Name = "gridColumn1";
            this.gridColumn1.Visible = true;
            this.gridColumn1.VisibleIndex = 1;
            this.gridColumn1.Width = 94;
            this.gridColumn1.Width = 82;
            // 
            // gridColumn2
            // 
            this.gridColumn2.Caption = "物料ID";
            this.gridColumn2.FieldName = "itemId";
            this.gridColumn2.MinWidth = 25;
            this.gridColumn2.MinWidth = 22;
            this.gridColumn2.Name = "gridColumn2";
            this.gridColumn2.Visible = true;
            this.gridColumn2.VisibleIndex = 2;
            this.gridColumn2.Width = 94;
            this.gridColumn2.Width = 82;
            // 
            // gridColumn3
            // 
            this.gridColumn3.Caption = "物料编码";
            this.gridColumn3.FieldName = "itemNo";
            this.gridColumn3.MinWidth = 25;
            this.gridColumn3.MinWidth = 22;
            this.gridColumn3.Name = "gridColumn3";
            this.gridColumn3.Visible = true;
            this.gridColumn3.VisibleIndex = 3;
            this.gridColumn3.Width = 94;
            this.gridColumn3.Width = 82;
            // 
            // gridColumn4
            // 
            this.gridColumn4.Caption = "物料名称";
            this.gridColumn4.FieldName = "itemName";
            this.gridColumn4.MinWidth = 25;
            this.gridColumn4.MinWidth = 22;
            this.gridColumn4.Name = "gridColumn4";
            this.gridColumn4.Visible = true;
            this.gridColumn4.VisibleIndex = 4;
            this.gridColumn4.Width = 94;
            this.gridColumn4.Width = 82;
            // 
            // gridColumn5
            // 
            this.gridColumn5.Caption = "物料规格";
            this.gridColumn5.FieldName = "itemModel";
            this.gridColumn5.MinWidth = 25;
            this.gridColumn5.MinWidth = 22;
            this.gridColumn5.Name = "gridColumn5";
            this.gridColumn5.Visible = true;
            this.gridColumn5.VisibleIndex = 5;
            this.gridColumn5.Width = 94;
            this.gridColumn5.Width = 82;
            // 
            // gridColumn6
            // 
            this.gridColumn6.Caption = "单位";
            this.gridColumn6.FieldName = "dwName";
            this.gridColumn6.MinWidth = 25;
            this.gridColumn6.MinWidth = 22;
            this.gridColumn6.Name = "gridColumn6";
            this.gridColumn6.Visible = true;
            this.gridColumn6.VisibleIndex = 6;
            this.gridColumn6.Width = 94;
            this.gridColumn6.Width = 82;
            // 
            // gridColumn7
            // 
            this.gridColumn7.Caption = "需领用量";
            this.gridColumn7.FieldName = "dab006";
            this.gridColumn7.MinWidth = 25;
            this.gridColumn7.MinWidth = 22;
            this.gridColumn7.Name = "gridColumn7";
            this.gridColumn7.Visible = true;
            this.gridColumn7.VisibleIndex = 7;
            this.gridColumn7.Width = 94;
            this.gridColumn7.Width = 82;
            // 
            // gridColumn8
            // 
            this.gridColumn8.Caption = "已领用量";
            this.gridColumn8.FieldName = "ylQty";
            this.gridColumn8.MinWidth = 25;
            this.gridColumn8.MinWidth = 22;
            this.gridColumn8.Name = "gridColumn8";
            this.gridColumn8.Visible = true;
            this.gridColumn8.VisibleIndex = 8;
            this.gridColumn8.Width = 94;
            this.gridColumn8.Width = 82;
            // 
            // gridColumn9
            // 
            this.gridColumn9.Caption = "补料数量";
            this.gridColumn9.FieldName = "blQty";
            this.gridColumn9.MinWidth = 25;
            this.gridColumn9.MinWidth = 22;
            this.gridColumn9.Name = "gridColumn9";
            this.gridColumn9.Visible = true;
            this.gridColumn9.VisibleIndex = 9;
            this.gridColumn9.Width = 94;
            this.gridColumn9.VisibleIndex = 10;
            this.gridColumn9.Width = 82;
            // 
            // gridColumn10
            // 
            this.gridColumn10.Caption = "超领数量";
            this.gridColumn10.FieldName = "clQty";
            this.gridColumn10.MinWidth = 25;
            this.gridColumn10.MinWidth = 22;
            this.gridColumn10.Name = "gridColumn10";
            this.gridColumn10.Visible = true;
            this.gridColumn10.VisibleIndex = 10;
            this.gridColumn10.Width = 94;
            this.gridColumn10.VisibleIndex = 11;
            this.gridColumn10.Width = 82;
            // 
            // gridColumn11
            // 
            this.gridColumn11.Caption = "dabGuid";
            this.gridColumn11.FieldName = "dabGuid";
            this.gridColumn11.MinWidth = 25;
            this.gridColumn11.MinWidth = 22;
            this.gridColumn11.Name = "gridColumn11";
            this.gridColumn11.OptionsEditForm.Visible = DevExpress.Utils.DefaultBoolean.False;
            this.gridColumn11.Width = 94;
            this.gridColumn11.Width = 82;
            // 
            // panelControl1
            // 
            this.panelControl1.Controls.Add(this.btnIn);
            this.panelControl1.Dock = System.Windows.Forms.DockStyle.Bottom;
            this.panelControl1.Location = new System.Drawing.Point(2, 637);
            this.panelControl1.Location = new System.Drawing.Point(2, 495);
            this.panelControl1.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
            this.panelControl1.Name = "panelControl1";
            this.panelControl1.Size = new System.Drawing.Size(1124, 43);
            this.panelControl1.Size = new System.Drawing.Size(983, 33);
            this.panelControl1.TabIndex = 5;
            // 
            // btnIn
@@ -236,19 +243,30 @@
            this.btnIn.Appearance.Options.UseBackColor = true;
            this.btnIn.Dock = System.Windows.Forms.DockStyle.Right;
            this.btnIn.ImageOptions.Image = global::Gs.DevApp.Properties.Resources.zoom100_16x16;
            this.btnIn.Location = new System.Drawing.Point(1028, 2);
            this.btnIn.Location = new System.Drawing.Point(899, 2);
            this.btnIn.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
            this.btnIn.Name = "btnIn";
            this.btnIn.Size = new System.Drawing.Size(94, 39);
            this.btnIn.Size = new System.Drawing.Size(82, 29);
            this.btnIn.TabIndex = 4;
            this.btnIn.Text = "确定导入";
            // 
            // gv_kbsl
            //
            this.gv_kbsl.Caption = "可补数量";
            this.gv_kbsl.FieldName = "kbsl";
            this.gv_kbsl.Name = "gv_kbsl";
            this.gv_kbsl.Visible = true;
            this.gv_kbsl.VisibleIndex = 9;
            this.gv_kbsl.Width = 66;
            //
            // UcBlclSelect
            // 
            this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 18F);
            this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F);
            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
            this.ClientSize = new System.Drawing.Size(1128, 682);
            this.ClientSize = new System.Drawing.Size(987, 530);
            this.Controls.Add(this.panelControl2);
            this.IconOptions.Image = global::Gs.DevApp.Properties.Resources.logo_png_black;
            this.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
            this.MaximizeBox = false;
            this.MinimizeBox = false;
            this.Name = "UcBlclSelect";
@@ -282,5 +300,6 @@
        private DevExpress.XtraGrid.Columns.GridColumn gridColumn9;
        private DevExpress.XtraGrid.Columns.GridColumn gridColumn10;
        private DevExpress.XtraGrid.Columns.GridColumn gridColumn11;
        private DevExpress.XtraGrid.Columns.GridColumn gv_kbsl;
    }
}
DevApp/Gs.DevApp/DevFrm/Ck/UcBlclSelect.cs
@@ -26,6 +26,7 @@
            this.orgId = _orgId;
            Gs.DevApp.ToolBox.UtilityHelper.SetGridViewParameter(gridView1, null, null, null, "", null, null, false);
            getPageList(1);
            getPageListWithFilter(2); // 使用过滤方法
            SetupButtonClickEvent();
        }
@@ -155,8 +156,18 @@
                var dd = UtilityHelper.ReturnToTablePage(strReturn);
                var dt = dd.rtnData.list;
                // 筛选掉kbsl为0的数据
                DataTable filteredDt = FilterZeroKbsl(dt);
                if (curPage == 1)
                {
                    // 筛选掉kbsl为0的数据
                    filteredDt = FilterZeroKbsl(dt);
                }
                else
                {
                    // 过滤dab006(需领用量)小于等于ylQty(已领用量)的数据
                    filteredDt = FilterByDab006AndYlQty(dt);
                }
                gcMain.BindingContext = new BindingContext();
                gcMain.DataSource = filteredDt;
@@ -210,5 +221,52 @@
            return filteredTable;
        }
        /// <summary>
        /// 过滤dab006(需领用量)小于等于ylQty(已领用量)的数据
        /// </summary>
        /// <param name="sourceTable">源数据表</param>
        /// <returns>过滤后的数据表</returns>
        private DataTable FilterByDab006AndYlQty(DataTable sourceTable)
        {
            if (sourceTable == null || sourceTable.Rows.Count == 0)
                return sourceTable;
            // 创建新的DataTable来存储过滤后的数据
            DataTable filteredTable = sourceTable.Clone();
            foreach (DataRow row in sourceTable.Rows)
            {
                // 检查dab006和ylQty列是否存在
                if (sourceTable.Columns.Contains("dab006") && sourceTable.Columns.Contains("ylQty"))
                {
                    object dab006Value = row["dab006"];
                    object ylQtyValue = row["ylQty"];
                    decimal dab006 = 0;
                    decimal ylQty = 0;
                    // 尝试转换为decimal
                    bool dab006Valid = dab006Value != null && dab006Value != DBNull.Value &&
                                      decimal.TryParse(dab006Value.ToString(), out dab006);
                    bool ylQtyValid = ylQtyValue != null && ylQtyValue != DBNull.Value &&
                                     decimal.TryParse(ylQtyValue.ToString(), out ylQty);
                    // 过滤条件:dab006 >= ylQty
                    if (dab006Valid && ylQtyValid && dab006 <= ylQty)
                    {
                        filteredTable.ImportRow(row);
                    }
                }
                else
                {
                    // 如果没有这两个列,保留所有行
                    filteredTable.ImportRow(row);
                }
            }
            return filteredTable;
        }
    }
}
DevApp/Gs.DevApp/DevFrm/Rk/Frm_MesItemTbl.resx
@@ -120,4 +120,7 @@
  <metadata name="tips.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    <value>17, 17</value>
  </metadata>
  <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>25</value>
  </metadata>
</root>