1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- using SuperMap.Data;
- using System;
- using System.Collections.Generic;
- using System.Data;
- using WeifenLuo.WinFormsUI.Docking;
- using WWPipeLine.MapBasic.Conditions;
- using WWPipeLine.MapBasic;
- namespace WWPipeLine.MapTools.Conditions.Statistics
- {
- /// <summary>
- /// 管线-材质统计
- /// </summary>
- public partial class GXStatistics : ConditionPanel
- {
- private DatasetVector _dv;
- private DatasetVectorEx _dvEx;
- public GXStatistics() : base()
- {
- this.ConditionPanelName = "按管线属性统计";
- InitializeComponent();
- }
- protected override void OnLoad(EventArgs e)
- {
- this.rbgGXSX.SelectedIndex = 0;//0全部 1材质 2管径 3地址描述 4埋设日期
- this.rbgCDSL.SelectedIndex = 0;//0长度 1数量
- }
- public override object Do(DockPanel dockPanel = null)
- {
- _dvEx = new DatasetVectorEx(_dv.Name) { DatasetVector = _dv };
- DataTable dt = new DataTable() { TableName = "selectResult" };
- //全部管线的长度
- if (rbgGXSX.SelectedIndex == 0 && rbgCDSL.SelectedIndex == 0)
- {
- }
- //全部管线的数量
- if (rbgGXSX.SelectedIndex == 0 && rbgCDSL.SelectedIndex == 1)
- {
- }
- //材质的长度
- if (rbgGXSX.SelectedIndex == 1 && rbgCDSL.SelectedIndex == 0)
- {
- return _dvEx.GetTableByFieldOnUniqueValSumOrder("材质", "cz", "cd");
- }
- //材质的数量
- if (rbgGXSX.SelectedIndex == 1 && rbgCDSL.SelectedIndex == 1)
- {
- return _dvEx.GetTableByFieldOnUniqueValCount("材质", "cz");
- }
- //管径的长度
- if (rbgGXSX.SelectedIndex == 2 && rbgCDSL.SelectedIndex == 0)
- {
- return _dvEx.GetTableByFieldOnUniqueValSumOrder("管径", "gj", "cd");
- }
- //管径的数量
- if (rbgGXSX.SelectedIndex == 2 && rbgCDSL.SelectedIndex == 1)
- {
- return _dvEx.GetTableByFieldOnUniqueValCount("管径", "gj");
- }
- //地址描述的长度
- if (rbgGXSX.SelectedIndex == 3 && rbgCDSL.SelectedIndex == 0)
- {
- return _dvEx.GetTableByFieldOnUniqueValSumOrder("地址描述", "dzms", "cd");
- }
- //地址描述的数量
- if (rbgGXSX.SelectedIndex == 3 && rbgCDSL.SelectedIndex == 1)
- {
- return _dvEx.GetTableByFieldOnUniqueValCount("地址描述", "dzms");
- }
- return dt;
- }
- public override bool ConditionValid()
- {
- _dv = this.DatasourceMapControl.Datasets["JSLK"] as DatasetVector;
- if (_dv == null)
- {
- Sunny.UI.UIMessageTip.ShowError("当前数据源中不包含相应的矢量数据集");
- return false;
- }
- return true;
- }
- }
- }
|