年度变更建库软件5.0版本
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

51 lines
1.9 KiB

using ESRI.ArcGIS.Carto;
using ESRI.ArcGIS.esriSystem;
using System.Threading;
using KGIS.Framework.Utils.Helper;
namespace Kingo.Plugin.DataCheck.Helper.JCBGCG
{
public class BGCGDataCheckGroup : DataCheckRuleGroup
{
private const string BaseErrorCode = "1001";
public override string GroupDesc
{
get { return base.GroupDesc; }
set
{
base.GroupDesc = value;
base.NotifyProperty(this, "GroupDesc");
}
}
private WaitCallback callback;
public BGCGDataCheckGroup(WaitCallback call = null) : base()
{
callback = call;
GroupName = "变更成果检查";
GroupDesc = string.Format("{0}(错误{1}个,警告{2}个,例外{3}个)", GroupName, ErrorNum, WaringNum, ExceptionNum, 0);
IFeatureLayer layer = KGIS.Framework.Maps.MapsManager.Instance.MapService.GetFeatureLayerByName("DLTBGX");
if (layer == null)
{
MessageHelper.Show("未找到地类图斑更新图层,请检查图层是否存在!");
return;
}
string strTarLayer = string.Empty;
IName layerName = (layer as IDataLayer).DataSourceName;
if (layerName != null)
strTarLayer = KGIS.Framework.AE.GeoDBAPI.SerialzedPersist(layerName);
BGCGAttribureCheck sttrCheck = new BGCGAttribureCheck(BaseErrorCode);
base.CheckRules.Add(sttrCheck);
}
public override void UpdateInfo(object obj)
{
lock (GroupDesc)
{
GroupDesc = string.Format("{0}(错误{1}个,警告{2}个,例外{3}个)", GroupName, ErrorNum, WaringNum, ExceptionNum, 0);
base.NotifyProperty(this, "CheckResults");
base.NotifyProperty(this, "CheckState");
callback?.Invoke(null);
}
}
}
}