private void getdata() { DataTable table = dbOperation.GetDbHelper().GetDataSet(string.Format("call p_sampling_report_country('{0}','{1}','{2}')", Sj, DeptId, ItemId)).Tables[0]; currenttable = table; list.Clear(); for (int i = 0; i < table.Rows.Count; i++) { SamplingInfo info = new SamplingInfo(); //info.DeptId = table.Rows[i][0].ToString(); info.DeptName = table.Rows[i][1].ToString(); //info.ItemId = table.Rows[i][2].ToString(); info.ItemName = table.Rows[i][3].ToString(); info.SumActual = table.Rows[i][4].ToString(); info.SamplingrateActual = table.Rows[i][5].ToString(); info.SamplingratePercent = table.Rows[i][6].ToString(); info.SumSamplingrateActual = table.Rows[i][7].ToString(); info.SumPercent = table.Rows[i][8].ToString(); list.Add(info); } //得到行和列标题 及数量 string[] DeptNames = list.Select(t => t.DeptName).Distinct().ToArray(); string[] ItemNames = list.Select(t => t.ItemName).Distinct().ToArray(); //创建DataTable DataTable tabledisplay = new DataTable(); //表中第一行第一列交叉处一般显示为第1列标题 tabledisplay.Columns.Add(new DataColumn("序号")); MyColumns.Add("序号", new MyColumn("序号", "序号") { BShow = true, Width = 5 }); tabledisplay.Columns.Add(new DataColumn("检测单位")); MyColumns.Add("检测单位", new MyColumn("检测单位", "检测单位") { BShow = true, Width = 16 }); tabledisplay.Columns.Add(new DataColumn("批次总头数")); MyColumns.Add("批次总头数", new MyColumn("批次总头数", "批次总头数") { BShow = true, Width = 8 }); //表中后面每列的标题其实是列分组的关键字 for (int i = 0; i < ItemNames.Length; i++) { DataColumn column = new DataColumn(ItemNames[i]); tabledisplay.Columns.Add(column); MyColumns.Add(ItemNames[i].ToString(), new MyColumn(ItemNames[i].ToString(), ItemNames[i].ToString() + "检测量") { BShow = true, Width = 10 }); tabledisplay.Columns.Add(new DataColumn("抽检率" + i)); MyColumns.Add("抽检率" + i, new MyColumn("抽检率" + i, "抽检率") { BShow = true, Width = 10 }); } //当选择了检测项目作为查询条件时,不显示任务完成总量和任务总完成率 bool flag; if (ItemId == "") { flag = true; } else { flag = false; } //表格后面为合计列 tabledisplay.Columns.Add(new DataColumn("总抽检数")); MyColumns.Add("总抽检数", new MyColumn("总抽检数", "总抽检数") { BShow = flag, Width = 10 }); tabledisplay.Columns.Add(new DataColumn("综合平均抽检率")); MyColumns.Add("综合平均抽检率", new MyColumn("综合平均抽检率", "综合平均抽检率") { BShow = flag, Width = 10 }); //为表中各行生成数据 for (int i = 0; i < DeptNames.Length; i++) { var row = tabledisplay.NewRow(); //每行第0列为行分组关键字 row[0] = i + 1; row[1] = DeptNames[i]; string count = list.Where(t => t.DeptName == DeptNames[i]).Select(t => t.SumActual).FirstOrDefault(); if (count == null || count == "") { count = '0'.ToString(); } row[2] = count; //每行的其余列为行列交叉对应的汇总数据 for (int j = 0; j < ItemNames.Length; j++) { string num = list.Where(t => t.DeptName == DeptNames[i] && t.ItemName == ItemNames[j]).Select(t => t.SamplingrateActual).FirstOrDefault(); if (num == null || num == "") { num = '0'.ToString(); } row[ItemNames[j]] = num; string percent = list.Where(t => t.DeptName == DeptNames[i] && t.ItemName == ItemNames[j]).Select(t => t.SamplingratePercent).FirstOrDefault(); if (percent == null || percent == "") { percent = '0'.ToString(); } else { percent = percent + "%"; } row[4 + 2 * j] = percent; } row[ItemNames.Length * 2 + 3] = list.Where(t => t.DeptName == DeptNames[i]).Select(t => t.SumSamplingrateActual).FirstOrDefault(); string sumpercent = list.Where(t => t.DeptName == DeptNames[i]).Select(t => t.SumPercent).FirstOrDefault(); if (sumpercent == null || sumpercent == "") { sumpercent = '0'.ToString(); } else { sumpercent = sumpercent + "%"; } row[ItemNames.Length * 2 + 4] = sumpercent; tabledisplay.Rows.Add(row); } _tableview.MyColumns = MyColumns; _tableview.BShowDetails = true; _tableview.Table = tabledisplay; }
private void getdata() { DataTable table = dbOperation.GetDbHelper().GetDataSet(string.Format("call p_sampling_report_country('{0}','{1}','{2}','{3}')", Sj, DeptId, ItemId, DeptType)).Tables[0]; currenttable = table; list.Clear(); for (int i = 0; i < table.Rows.Count; i++) { SamplingInfo info = new SamplingInfo(); //info.DeptId = table.Rows[i][0].ToString(); info.DeptName = table.Rows[i][1].ToString(); //info.ItemId = table.Rows[i][2].ToString(); info.ItemName = table.Rows[i][3].ToString(); info.SumActual = table.Rows[i][4].ToString(); info.SamplingrateActual = table.Rows[i][5].ToString(); info.SamplingratePercent = table.Rows[i][6].ToString(); info.SumSamplingrateActual = table.Rows[i][7].ToString(); info.SumPercent = table.Rows[i][8].ToString(); list.Add(info); } //得到行和列标题 及数量 string[] DeptNames = list.Select(t => t.DeptName).Distinct().ToArray(); string[] ItemNames = list.Select(t => t.ItemName).Distinct().ToArray(); //创建DataTable DataTable tabledisplay = new DataTable(); //表中第一行第一列交叉处一般显示为第1列标题 tabledisplay.Columns.Add(new DataColumn("序号")); MyColumns.Add("序号", new MyColumn("序号", "序号") { BShow = true, Width = 5 }); tabledisplay.Columns.Add(new DataColumn("部门名称")); MyColumns.Add("部门名称", new MyColumn("部门名称", "部门名称") { BShow = true, Width = 16 }); tabledisplay.Columns.Add(new DataColumn("批次总头数")); MyColumns.Add("批次总头数", new MyColumn("批次总头数", "批次总头数") { BShow = true, Width = 8 }); //表中后面每列的标题其实是列分组的关键字 for (int i = 0; i < ItemNames.Length; i++) { DataColumn column = new DataColumn(ItemNames[i]); tabledisplay.Columns.Add(column); MyColumns.Add(ItemNames[i].ToString(), new MyColumn(ItemNames[i].ToString(), ItemNames[i].ToString() + "检测量") { BShow = true, Width = 10 }); tabledisplay.Columns.Add(new DataColumn("抽检率" + i)); MyColumns.Add("抽检率" + i, new MyColumn("抽检率" + i, "抽检率") { BShow = true, Width = 10 }); } //当选择了检测项目作为查询条件时,不显示任务完成总量和任务总完成率 bool flag; if (ItemId == "") { flag = true; } else { flag = false; } //表格后面为合计列 tabledisplay.Columns.Add(new DataColumn("总抽检数")); MyColumns.Add("总抽检数", new MyColumn("总抽检数", "总抽检数") { BShow = flag, Width = 10 }); tabledisplay.Columns.Add(new DataColumn("综合平均抽检率")); MyColumns.Add("综合平均抽检率", new MyColumn("综合平均抽检率", "综合平均抽检率") { BShow = flag, Width = 10 }); //为表中各行生成数据 for (int i = 0; i < DeptNames.Length; i++) { var row = tabledisplay.NewRow(); //每行第0列为行分组关键字 row[0] = i + 1; row[1] = DeptNames[i]; string count = list.Where(t => t.DeptName == DeptNames[i]).Select(t => t.SumActual).FirstOrDefault(); if (count == null || count == "") { count = '0'.ToString(); } row[2] = count; //每行的其余列为行列交叉对应的汇总数据 for (int j = 0; j < ItemNames.Length; j++) { string num = list.Where(t => t.DeptName == DeptNames[i] && t.ItemName == ItemNames[j]).Select(t => t.SamplingrateActual).FirstOrDefault(); if (num == null || num == "") { num = '0'.ToString(); } row[ItemNames[j]] = num; string percent = list.Where(t => t.DeptName == DeptNames[i] && t.ItemName == ItemNames[j]).Select(t => t.SamplingratePercent).FirstOrDefault(); if (percent == null || percent == "") { percent = '0'.ToString(); } else { percent = percent + "%"; } row[4 + 2 * j] = percent; } row[ItemNames.Length * 2 + 3] = list.Where(t => t.DeptName == DeptNames[i]).Select(t => t.SumSamplingrateActual).FirstOrDefault(); string sumpercent = list.Where(t => t.DeptName == DeptNames[i]).Select(t => t.SumPercent).FirstOrDefault(); if (sumpercent == null || sumpercent == "") { sumpercent = '0'.ToString(); } else { sumpercent = sumpercent + "%"; } row[ItemNames.Length * 2 + 4] = sumpercent; tabledisplay.Rows.Add(row); } _tableview.MyColumns = MyColumns; _tableview.BShowDetails = true; _tableview.Table = tabledisplay; }
private void _query_Click(object sender, RoutedEventArgs e) { item_id = _detect_item.SelectedIndex < 1 ? "" : (_detect_item.SelectedItem as Label).Tag.ToString(); grid_info.Children.Clear(); grid_info.Children.Add(_tableview); MyColumns.Clear(); DataTable table = dbOperation.GetDbHelper().GetDataSet(string.Format("call p_sampling_report('{0}','{1}','{2}','{3}')", (Application.Current.Resources["User"] as UserInfo).ID, _year.Text, _detect_dept.SelectedIndex < 1 ? "" : (_detect_dept.SelectedItem as Label).Tag, item_id)).Tables[0]; currenttable = table; list.Clear(); for (int i = 0; i < table.Rows.Count; i++) { SamplingInfo info = new SamplingInfo(); //info.DeptId = table.Rows[i][0].ToString(); info.DeptName = table.Rows[i][1].ToString(); //info.ItemId = table.Rows[i][2].ToString(); info.ItemName = table.Rows[i][3].ToString(); info.SumActual = table.Rows[i][4].ToString(); info.SamplingrateActual = table.Rows[i][5].ToString(); info.SamplingratePercent = table.Rows[i][6].ToString(); info.SumSamplingrateActual = table.Rows[i][7].ToString(); info.SumPercent = table.Rows[i][8].ToString(); list.Add(info); } //得到行和列标题 及数量 string[] DeptNames = list.Select(t => t.DeptName).Distinct().ToArray(); string[] ItemNames = list.Select(t => t.ItemName).Distinct().ToArray(); //创建DataTable DataTable tabledisplay = new DataTable(); //表中第一行第一列交叉处一般显示为第1列标题 tabledisplay.Columns.Add(new DataColumn("序号")); MyColumns.Add("序号", new MyColumn("序号", "序号") { BShow = true, Width = 5 }); switch (user_flag_tier) { case "0": tabledisplay.Columns.Add(new DataColumn("省名称")); MyColumns.Add("省名称", new MyColumn("省名称", "省名称") { BShow = true, Width = 16 }); break; case "1": tabledisplay.Columns.Add(new DataColumn("市(州)单位名称")); MyColumns.Add("市(州)单位名称", new MyColumn("市(州)单位名称", "市(州)单位名称") { BShow = true, Width = 16 }); break; case "2": tabledisplay.Columns.Add(new DataColumn("区县名称")); MyColumns.Add("区县名称", new MyColumn("区县名称", "区县名称") { BShow = true, Width = 16 }); break; case "3": tabledisplay.Columns.Add(new DataColumn("检测单位名称")); MyColumns.Add("检测单位名称", new MyColumn("检测单位名称", "检测单位名称") { BShow = true, Width = 16 }); break; case "4": tabledisplay.Columns.Add(new DataColumn("检测单位名称")); MyColumns.Add("检测单位名称", new MyColumn("检测单位名称", "检测单位名称") { BShow = true, Width = 16 }); break; default: break; } tabledisplay.Columns.Add(new DataColumn("批次总头数")); MyColumns.Add("批次总头数", new MyColumn("批次总头数", "批次总头数") { BShow = true, Width = 8 }); //表中后面每列的标题其实是列分组的关键字 for (int i = 0; i < ItemNames.Length; i++) { DataColumn column = new DataColumn(ItemNames[i]); tabledisplay.Columns.Add(column); MyColumns.Add(ItemNames[i].ToString(), new MyColumn(ItemNames[i].ToString(), ItemNames[i].ToString() + "检测量") { BShow = true, Width = 10 }); tabledisplay.Columns.Add(new DataColumn("抽检率" + i)); MyColumns.Add("抽检率" + i, new MyColumn("抽检率" + i, "抽检率") { BShow = true, Width = 10 }); } //当选择了检测项目作为查询条件时,不显示任务完成总量和任务总完成率 bool flag; if (item_id == "") { flag = true; } else { flag = false; } //表格后面为合计列 tabledisplay.Columns.Add(new DataColumn("总抽检数")); MyColumns.Add("总抽检数", new MyColumn("总抽检数", "总抽检数") { BShow = flag, Width = 10 }); tabledisplay.Columns.Add(new DataColumn("综合平均抽检率")); MyColumns.Add("综合平均抽检率", new MyColumn("综合平均抽检率", "综合平均抽检率") { BShow = flag, Width = 10 }); //为表中各行生成数据 for (int i = 0; i < DeptNames.Length; i++) { var row = tabledisplay.NewRow(); //每行第0列为行分组关键字 row[0] = i + 1; row[1] = DeptNames[i]; string count = list.Where(t => t.DeptName == DeptNames[i]).Select(t => t.SumActual).FirstOrDefault(); if (count == null || count == "") { count = '0'.ToString(); } row[2] = count; //每行的其余列为行列交叉对应的汇总数据 for (int j = 0; j < ItemNames.Length; j++) { string num = list.Where(t => t.DeptName == DeptNames[i] && t.ItemName == ItemNames[j]).Select(t => t.SamplingrateActual).FirstOrDefault(); if (num == null || num == "") { num = '0'.ToString(); } row[ItemNames[j]] = num; string percent = list.Where(t => t.DeptName == DeptNames[i] && t.ItemName == ItemNames[j]).Select(t => t.SamplingratePercent).FirstOrDefault(); if (percent == null || percent == "") { percent = '0'.ToString(); } else { percent = percent + "%"; } row[4 + 2 * j] = percent; } row[ItemNames.Length * 2 + 3] = list.Where(t => t.DeptName == DeptNames[i]).Select(t => t.SumSamplingrateActual).FirstOrDefault(); string sumpercent = list.Where(t => t.DeptName == DeptNames[i]).Select(t => t.SumPercent).FirstOrDefault(); if (sumpercent == null || sumpercent == "") { sumpercent = '0'.ToString(); } else { sumpercent = sumpercent + "%"; } row[ItemNames.Length * 2 + 4] = sumpercent; tabledisplay.Rows.Add(row); } _tableview.MyColumns = MyColumns; _tableview.BShowDetails = true; _tableview.Table = tabledisplay; //_sj.Visibility = Visibility.Visible; //_hj.Visibility = Visibility.Visible; //_title.Text = tabledisplay.Rows.Count.ToString(); if (tabledisplay.Rows.Count == 0) { Toolkit.MessageBox.Show("没有查询到数据!", "系统提示", MessageBoxButton.OK, MessageBoxImage.Information); return; } }
private void _query_Click(object sender, RoutedEventArgs e) { item_id = _detect_item.SelectedIndex < 1 ? "" : (_detect_item.SelectedItem as Label).Tag.ToString(); grid_info.Children.Clear(); grid_info.Children.Add(_tableview); MyColumns.Clear(); DataTable table = dbOperation.GetDbHelper().GetDataSet(string.Format("call p_sampling_report('{0}','{1}','{2}','{3}')", (Application.Current.Resources["User"] as UserInfo).ID, _year.Text, _detect_dept.SelectedIndex < 1 ? "" : (_detect_dept.SelectedItem as Label).Tag, item_id)).Tables[0]; currenttable = table; list.Clear(); for (int i = 0; i < table.Rows.Count; i++) { SamplingInfo info = new SamplingInfo(); //info.DeptId = table.Rows[i][0].ToString(); info.DeptName = table.Rows[i][1].ToString(); //info.ItemId = table.Rows[i][2].ToString(); info.ItemName = table.Rows[i][3].ToString(); info.SumActual = table.Rows[i][4].ToString(); info.SamplingrateActual = table.Rows[i][5].ToString(); info.SamplingratePercent = table.Rows[i][6].ToString(); info.SumSamplingrateActual = table.Rows[i][7].ToString(); info.SumPercent = table.Rows[i][8].ToString(); list.Add(info); } //得到行和列标题 及数量 string[] DeptNames = list.Select(t => t.DeptName).Distinct().ToArray(); string[] ItemNames = list.Select(t => t.ItemName).Distinct().ToArray(); //创建DataTable DataTable tabledisplay = new DataTable(); //表中第一行第一列交叉处一般显示为第1列标题 tabledisplay.Columns.Add(new DataColumn("序号")); MyColumns.Add("序号", new MyColumn("序号", "序号") { BShow = true, Width = 5 }); switch (user_flag_tier) { case "0": tabledisplay.Columns.Add(new DataColumn("省名称")); MyColumns.Add("省名称", new MyColumn("省名称", "省名称") { BShow = true, Width = 16 }); break; case "1": tabledisplay.Columns.Add(new DataColumn("市(州)单位名称")); MyColumns.Add("市(州)单位名称", new MyColumn("市(州)单位名称", "市(州)单位名称") { BShow = true, Width = 16 }); break; case "2": tabledisplay.Columns.Add(new DataColumn("区县名称")); MyColumns.Add("区县名称", new MyColumn("区县名称", "区县名称") { BShow = true, Width = 16 }); break; case "3": tabledisplay.Columns.Add(new DataColumn("检测单位名称")); MyColumns.Add("检测单位名称", new MyColumn("检测单位名称", "检测单位名称") { BShow = true, Width = 16 }); break; case "4": tabledisplay.Columns.Add(new DataColumn("检测单位名称")); MyColumns.Add("检测单位名称", new MyColumn("检测单位名称", "检测单位名称") { BShow = true, Width = 16 }); break; default: break; } tabledisplay.Columns.Add(new DataColumn("批次总头数")); MyColumns.Add("批次总头数", new MyColumn("批次总头数", "批次总头数") { BShow = true, Width = 8 }); //表中后面每列的标题其实是列分组的关键字 for (int i = 0; i < ItemNames.Length; i++) { DataColumn column = new DataColumn(ItemNames[i]); tabledisplay.Columns.Add(column); MyColumns.Add(ItemNames[i].ToString(), new MyColumn(ItemNames[i].ToString(), ItemNames[i].ToString() + "检测量") { BShow = true, Width = 10 }); tabledisplay.Columns.Add(new DataColumn("抽检率" + i)); MyColumns.Add("抽检率" + i, new MyColumn("抽检率" + i, "抽检率") { BShow = true, Width = 10 }); } //当选择了检测项目作为查询条件时,不显示任务完成总量和任务总完成率 bool flag; if (item_id == "") { flag = true; } else { flag = false; } //表格后面为合计列 tabledisplay.Columns.Add(new DataColumn("总抽检数")); MyColumns.Add("总抽检数", new MyColumn("总抽检数", "总抽检数") { BShow = flag, Width = 10 }); tabledisplay.Columns.Add(new DataColumn("综合平均抽检率")); MyColumns.Add("综合平均抽检率", new MyColumn("综合平均抽检率", "综合平均抽检率") { BShow = flag, Width = 10 }); //为表中各行生成数据 for (int i = 0; i < DeptNames.Length; i++) { var row = tabledisplay.NewRow(); //每行第0列为行分组关键字 row[0] = i + 1; row[1] = DeptNames[i]; string count = list.Where(t => t.DeptName == DeptNames[i]).Select(t => t.SumActual).FirstOrDefault(); if (count == null || count == "") { count = '0'.ToString(); } row[2] = count; //每行的其余列为行列交叉对应的汇总数据 for (int j = 0; j < ItemNames.Length; j++) { string num = list.Where(t => t.DeptName == DeptNames[i] && t.ItemName == ItemNames[j]).Select(t => t.SamplingrateActual).FirstOrDefault(); if (num == null || num == "") { num = '0'.ToString(); } row[ItemNames[j]] = num; string percent = list.Where(t => t.DeptName == DeptNames[i] && t.ItemName == ItemNames[j]).Select(t => t.SamplingratePercent).FirstOrDefault(); if (percent == null || percent == "") { percent = '0'.ToString(); } else { percent = percent + "%"; } row[4 + 2 * j] = percent; } row[ItemNames.Length * 2 + 3] = list.Where(t => t.DeptName == DeptNames[i]).Select(t => t.SumSamplingrateActual).FirstOrDefault(); string sumpercent = list.Where(t => t.DeptName == DeptNames[i]).Select(t => t.SumPercent).FirstOrDefault(); if (sumpercent == null || sumpercent == "") { sumpercent = '0'.ToString(); } else { sumpercent = sumpercent + "%"; } row[ItemNames.Length * 2 + 4] = sumpercent; tabledisplay.Rows.Add(row); } _tableview.MyColumns = MyColumns; _tableview.BShowDetails = true; _tableview.Table = tabledisplay; //_sj.Visibility = Visibility.Visible; //_hj.Visibility = Visibility.Visible; //_title.Text = tabledisplay.Rows.Count.ToString(); if (tabledisplay.Rows.Count == 0) { Toolkit.MessageBox.Show("没有查询到数据!", "系统提示", MessageBoxButton.OK, MessageBoxImage.Information); return; } }