yangle
2024-01-25 20dbb48a3122792673ee10192abc91930df94860
排单墙优化
1个文件已修改
55 ■■■■■ 已修改文件
WebAPI/Controllers/CJGL/Sc_ProcExchWorkBackBillController.cs 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/CJGL/Sc_ProcExchWorkBackBillController.cs
@@ -678,7 +678,8 @@
                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
                }
                if (ds.Tables.Count == 2) {
                if (ds.Tables.Count == 2)
                {
                    int[] num2 = new int[ds.Tables[0].Columns.Count];//记录每一列获取有值的行数
@@ -776,7 +777,57 @@
                    ds.Tables.Clear();
                    ds.Tables.Add(dt1);
                    ds.Tables.Add(dt2);
                }
                }
                else {
                    int[] num2 = new int[ds.Tables[0].Columns.Count];//记录每一列获取有值的行数
                    for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                    {
                        int num = 0;//记录没有数据行的列数
                        int[] num3 = new int[ds.Tables[0].Columns.Count];//记录每一列没有数据的行数
                        DataRow dtrow = dt1.NewRow();
                        for (int j = 0; j < ds.Tables[0].Columns.Count; j++)
                        {
                            int num1 = 0;//记录有多少次满足不为空的条件
                            DataColumn col = ds.Tables[0].Columns[j];
                            for (int k = 0; k < ds.Tables[0].Rows.Count; k++)
                            {
                                DataRow item = ds.Tables[0].Rows[k];
                                if (item[col.ColumnName.ToString()].ToString() != "")
                                {
                                    num1 += 1;
                                    if (num1 > num2[j])
                                    {
                                        dtrow[col.ColumnName.ToString()] = item[col.ColumnName.ToString()].ToString();
                                        num2[j] += 1;
                                        break;
                                    }
                                    else
                                    {
                                        num3[j] += 1;
                                    }
                                }
                                else
                                {
                                    num3[j] += 1;
                                }
                                if (num3[j] == ds.Tables[0].Rows.Count)
                                {
                                    num += 1;
                                }
                            }
                        }
                        if (num == ds.Tables[0].Columns.Count)
                        {
                            break;
                        }
                        dt1.Rows.Add(dtrow);
                    }
                    ds.Tables.Clear();
                    ds.Tables.Add(dt1);
                }
                objJsonResult.code = "1";
                objJsonResult.count = 1;