| | |
| | | this.orgId = _orgId; |
| | | Gs.DevApp.ToolBox.UtilityHelper.SetGridViewParameter(gridView1, null, null, null, "", null, null, false); |
| | | getPageList(1); |
| | | getPageListWithFilter(2); // 使用过滤方法 |
| | | SetupButtonClickEvent(); |
| | | } |
| | | |
| | |
| | | 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; |
| | |
| | | |
| | | 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; |
| | | } |
| | | |
| | | } |
| | | } |