|
@@ -27,6 +27,7 @@ using SAGA.MBI.JsonConvert;
|
|
|
using SAGA.MBI.RequestData;
|
|
|
using SAGA.MBI.Tools;
|
|
|
using SAGA.MBI.WinView.ModeInfoMaintenance;
|
|
|
+using SAGA.RevitUtils.Extends;
|
|
|
using SAGA.RevitUtils.Windows;
|
|
|
using WPG.Data;
|
|
|
using WPG.UserControls;
|
|
@@ -45,7 +46,7 @@ namespace SAGA.MBI.Model
|
|
|
this.BimID = bimMId;
|
|
|
ServirceImages = new ObservableCollection<MServiceAttachment>();
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
|
|
|
#region CloudProperty
|
|
|
|
|
@@ -85,7 +86,7 @@ namespace SAGA.MBI.Model
|
|
|
}
|
|
|
|
|
|
#endregion CloudProperty
|
|
|
-
|
|
|
+
|
|
|
#region VirtualMethod
|
|
|
|
|
|
public override string ToString()
|
|
@@ -107,11 +108,11 @@ namespace SAGA.MBI.Model
|
|
|
public override bool DelObject()
|
|
|
{
|
|
|
if (Id.IsNullOrEmpty()) return false;
|
|
|
- var rlt=new RltEquipInSpace(this.Id,null){Operator = DocumentChangedOperator.Delete};
|
|
|
+ var rlt = new RltEquipInSpace(this.Id, null) { Operator = DocumentChangedOperator.Delete };
|
|
|
rlt.DelObject();
|
|
|
//删除设备所在楼层
|
|
|
var rltequipinfloor = new RltEquipinFloor(this.Id, null) { Operator = DocumentChangedOperator.Delete };
|
|
|
- rltequipinfloor.AddorUpdateObject() ;
|
|
|
+ rltequipinfloor.AddorUpdateObject();
|
|
|
return EquipmentConvert.DelEquipment(this.Id);
|
|
|
}
|
|
|
|
|
@@ -121,266 +122,22 @@ namespace SAGA.MBI.Model
|
|
|
/// <returns></returns>
|
|
|
public override CompositeItem SetFixedProperty()
|
|
|
{
|
|
|
- CompositeItem item = new PropertyCollection();
|
|
|
- string code = this.EquipClassCode;
|
|
|
- PropertyDefineTb pdtb = PEPCodeConvert.GetPropertyDefineTb(code);
|
|
|
-
|
|
|
- Property property = new Property(this);
|
|
|
- //属性窗格用到的信息
|
|
|
- property.Category = "编码及关系";
|
|
|
- property.Name = "模型ID";
|
|
|
- //Type应该先于Value进行赋值
|
|
|
- property.PropertyType = typeof(string);
|
|
|
- property.IsReadOnly = true;
|
|
|
- property.Define = pdtb.PropertyDefineItems.FirstOrDefault(t => t.CodeName == "BIMID");
|
|
|
- //property.PropertyChangeAction += PropertyChangeAction;
|
|
|
- item.Items.Add(property);
|
|
|
-
|
|
|
- Property property1 = new Property(this);
|
|
|
- //属性窗格用到的信息
|
|
|
- property1.Category = "编码及关系";
|
|
|
- property1.Name = "设备ID";
|
|
|
- //Type应该先于Value进行赋值
|
|
|
- property1.PropertyType = typeof(string);
|
|
|
- property1.IsReadOnly = true;
|
|
|
- property1.Define = pdtb.PropertyDefineItems.FirstOrDefault(t => t.CodeName == "EquipID");
|
|
|
- //property1.PropertyChangeAction += PropertyChangeAction;
|
|
|
- item.Items.Add(property1);
|
|
|
-
|
|
|
- Property property2 = new Property(this);
|
|
|
- //属性窗格用到的信息
|
|
|
- property2.Category = "编码及关系";
|
|
|
- property2.Name = "对应资产";
|
|
|
- //Type应该先于Value进行赋值
|
|
|
- property2.PropertyType = typeof(UcReferenceFM);
|
|
|
- property2.Value = this.FMID.IsNullOrEmpty() ? "请选择" : this.FMID;
|
|
|
- property2.ExtendClickAction = PWGInstace.WinMatchFMClick;
|
|
|
- //property2.PropertyChangeAction += PropertyChangeAction;
|
|
|
- item.Items.Add(property2);
|
|
|
-
|
|
|
- //设备关联过资产后才有二维码图片
|
|
|
- if (this.FMID.IsNotNullEmpty())
|
|
|
- {
|
|
|
- Property propertyi2 = new Property(this);
|
|
|
- propertyi2.Category = "编码及关系";
|
|
|
- propertyi2.Name = "设备二维码图片";
|
|
|
- propertyi2.PropertyType = typeof(UcHyperlink);
|
|
|
- propertyi2.ItemClickAction = PWGInstace.WinQRCodeItemClick;
|
|
|
- propertyi2.Value = this.FMID.IsNullOrEmpty() ? null : "点击查看二维码图片";
|
|
|
- item.Items.Add(propertyi2);
|
|
|
- }
|
|
|
- Property propertySpace = new Property(this);
|
|
|
- //属性窗格用到的信息
|
|
|
- propertySpace.Category = "编码及关系";
|
|
|
- propertySpace.Name = "所在元空间";
|
|
|
- //Type应该先于Value进行赋值
|
|
|
- propertySpace.PropertyType = typeof(UcHyperlink);
|
|
|
- propertySpace.ItemClickAction = PWGInstace.WinISpaceItemClick;
|
|
|
- propertySpace.Value = this.MSpace?.ToString();
|
|
|
- item.Items.Add(propertySpace);
|
|
|
-
|
|
|
-
|
|
|
- Property property3 = new Property(this);
|
|
|
- //属性窗格用到的信息
|
|
|
- property3.Category = "台账信息-设备厂家";
|
|
|
- property3.Name = "厂家";
|
|
|
- //Type应该先于Value进行赋值
|
|
|
- property3.PropertyType = typeof(UcPopups);
|
|
|
- property3.IsReadOnly = true;
|
|
|
- property3.Value = "请选择型号";
|
|
|
- property3.ExtendClickAction = PWGInstace.WinSelectManufacturerClick;
|
|
|
- //property3.PropertyChangeAction += PropertyChangeAction;
|
|
|
- item.Items.Add(property3);
|
|
|
-
|
|
|
- Property property4 = new Property(this);
|
|
|
- //属性窗格用到的信息
|
|
|
- property4.Category = "台账信息-设备厂家";
|
|
|
- property4.Name = "生产日期";
|
|
|
- //Type应该先于Value进行赋值
|
|
|
- property4.Define = pdtb.PropertyDefineItems.FirstOrDefault(t => t.CodeName == "ProductDate");
|
|
|
- //property4.PropertyChangeAction += PropertyChangeAction;
|
|
|
- item.Items.Add(property4);
|
|
|
-
|
|
|
-
|
|
|
- Property property5 = new Property(this);
|
|
|
- //属性窗格用到的信息
|
|
|
- property5.Category = "台账信息-设备厂家";
|
|
|
- property5.Name = "出厂编号";
|
|
|
- //Type应该先于Value进行赋值
|
|
|
- property5.IsReadOnly = false;
|
|
|
- property5.Define = pdtb.PropertyDefineItems.FirstOrDefault(t => t.CodeName == "SerialNum");
|
|
|
- //property5.PropertyChangeAction += PropertyChangeAction;
|
|
|
- item.Items.Add(property5);
|
|
|
-
|
|
|
- Property property6 = new Property(this);
|
|
|
- //属性窗格用到的信息
|
|
|
- property6.Category = "台账信息-供应&购买";
|
|
|
- property6.Name = "供应商";
|
|
|
- //Type应该先于Value进行赋值
|
|
|
- property6.PropertyType = typeof(UcPopups);
|
|
|
- //property6.PropertyType = typeof(UcSupplier);
|
|
|
- property6.IsReadOnly = true;
|
|
|
- property6.Value = "请选择供应商";
|
|
|
- property6.ExtendClickAction = PWGInstace.WinSelectSupplyClick;
|
|
|
-
|
|
|
- //property6.PropertyChangeAction += PropertyChangeAction;
|
|
|
- item.Items.Add(property6);
|
|
|
-
|
|
|
- Property property7 = new Property(this);
|
|
|
- //属性窗格用到的信息
|
|
|
- property7.Category = "台账信息-供应&购买";
|
|
|
- property7.Name = "合同编号";
|
|
|
- //Type应该先于Value进行赋值
|
|
|
- property7.PropertyType = typeof(UcPopups);
|
|
|
- //property7.PropertyType = typeof(UcContractNO);
|
|
|
- property7.IsReadOnly = true;
|
|
|
- property7.Value = "请维护供应商合同";
|
|
|
- property7.ExtendClickAction = PWGInstace.WinSupplyContractInfoClick;
|
|
|
- //property7.PropertyChangeAction += PropertyChangeAction;
|
|
|
- item.Items.Add(property7);
|
|
|
-
|
|
|
- Property property8 = new Property(this);
|
|
|
- //属性窗格用到的信息
|
|
|
- property8.Category = "台账信息-供应&购买";
|
|
|
- property8.Name = "资产编号";
|
|
|
- //Type应该先于Value进行赋值
|
|
|
- property8.IsReadOnly = false;
|
|
|
- property8.Define = pdtb.PropertyDefineItems.FirstOrDefault(t => t.CodeName == "AssetID");
|
|
|
- //property8.PropertyChangeAction += PropertyChangeAction;
|
|
|
- item.Items.Add(property8);
|
|
|
-
|
|
|
- Property property9 = new Property(this);
|
|
|
- //属性窗格用到的信息
|
|
|
- property9.Category = "台账信息-运行&维保";
|
|
|
- property9.Name = "维保负责人";
|
|
|
- //Type应该先于Value进行赋值
|
|
|
- property9.IsReadOnly = false;
|
|
|
- property9.Define = pdtb.PropertyDefineItems.FirstOrDefault(t => t.CodeName == "Principal");
|
|
|
- //property9.PropertyChangeAction += PropertyChangeAction;
|
|
|
- item.Items.Add(property9);
|
|
|
-
|
|
|
- Property property10 = new Property(this);
|
|
|
- //属性窗格用到的信息
|
|
|
- property10.Category = "台账信息-运行&维保";
|
|
|
- property10.Name = "投产日期";
|
|
|
- //Type应该先于Value进行赋值
|
|
|
- property10.Define = pdtb.PropertyDefineItems.FirstOrDefault(t => t.CodeName == "StartDate");
|
|
|
- //property10.PropertyChangeAction += PropertyChangeAction;
|
|
|
- item.Items.Add(property10);
|
|
|
-
|
|
|
- Property property11 = new Property(this);
|
|
|
- //属性窗格用到的信息
|
|
|
- property11.Category = "台账信息-运行&维保";
|
|
|
- property11.Name = "保修期";
|
|
|
- //Type应该先于Value进行赋值
|
|
|
- property11.Define = pdtb.PropertyDefineItems.FirstOrDefault(t => t.CodeName == "Warranty");
|
|
|
- item.Items.Add(property11);
|
|
|
-
|
|
|
- Property property12 = new Property(this);
|
|
|
- //属性窗格用到的信息
|
|
|
- property12.Category = "台账信息-运行&维保";
|
|
|
- property12.Name = "维保合同截止日期";
|
|
|
- //Type应该先于Value进行赋值
|
|
|
- property12.Define = pdtb.PropertyDefineItems.FirstOrDefault(t => t.CodeName == "MaintainDeadline");
|
|
|
- item.Items.Add(property12);
|
|
|
-
|
|
|
- Property property13 = new Property(this);
|
|
|
- //属性窗格用到的信息
|
|
|
- property13.Category = "台账信息-运行&维保";
|
|
|
- property13.Name = "预计报废日期";
|
|
|
- //Type应该先于Value进行赋值
|
|
|
- property13.Define = pdtb.PropertyDefineItems.FirstOrDefault(t => t.CodeName == "ExpectScrapDate");
|
|
|
- item.Items.Add(property13);
|
|
|
-
|
|
|
- Property property14 = new Property(this);
|
|
|
- //属性窗格用到的信息
|
|
|
- property14.Category = "台账信息-运行&维保";
|
|
|
- property14.Name = "保养周期";
|
|
|
- property14.Define = pdtb.PropertyDefineItems.FirstOrDefault(t => t.CodeName == "MaintainPeriod");
|
|
|
- item.Items.Add(property14);
|
|
|
-
|
|
|
- Property property15 = new Property(this);
|
|
|
- //属性窗格用到的信息
|
|
|
- property15.Category = "台账信息-运行&维保";
|
|
|
- property15.Name = "维修商";
|
|
|
- //Type应该先于Value进行赋值
|
|
|
- property15.PropertyType = typeof(UcPopups);
|
|
|
- //property15.PropertyType = typeof(UcMaintenance);
|
|
|
- property15.IsReadOnly = true;
|
|
|
- property15.Value = "请选择维修商";
|
|
|
- property15.ExtendClickAction = PWGInstace.WinMaintenanceDealerClick;
|
|
|
- item.Items.Add(property15);
|
|
|
-
|
|
|
- Property property16 = new Property(this);
|
|
|
- //属性窗格用到的信息
|
|
|
- property16.Category = "台账信息-保险";
|
|
|
- property16.Name = "保险公司";
|
|
|
- //Type应该先于Value进行赋值
|
|
|
- property16.PropertyType = typeof(UcPopups);
|
|
|
- //property16.PropertyType = typeof(UcInsuer);
|
|
|
- property16.IsReadOnly = true;
|
|
|
- property16.Value = "请选择保险公司";
|
|
|
- property16.ExtendClickAction = PWGInstace.WinInsuerClick;
|
|
|
- item.Items.Add(property16);
|
|
|
-
|
|
|
- Property property17 = new Property(this);
|
|
|
- //属性窗格用到的信息
|
|
|
- property17.Category = "台账信息-保险";
|
|
|
- property17.Name = "保单号";
|
|
|
- //Type应该先于Value进行赋值
|
|
|
- property17.PropertyType = "All_HyperLink";//typeof(UcPopups);
|
|
|
- //property17.PropertyType = typeof(UcNumberOfPolicy);
|
|
|
- property17.IsReadOnly = true;
|
|
|
- property17.Value = "请维护保单信息";
|
|
|
- property17.ExtendClickAction = PWGInstace.WinInsuerContractInfoClick;
|
|
|
- property17.ItemClickAction = PWGInstace.WinInsuerContractLoadClick;
|
|
|
- item.Items.Add(property17);
|
|
|
-
|
|
|
-
|
|
|
- Property property18 = new Property(this);
|
|
|
- //属性窗格用到的信息
|
|
|
- property18.Category = "台账信息-照片&文档";
|
|
|
- property18.Name = "设备铭牌照片";
|
|
|
- //Type应该先于Value进行赋值
|
|
|
- property18.PropertyType = typeof(UcPopups_Nameplate);
|
|
|
- property18.ExtendClickAction = PWGInstace.WinNameplateExtendClick;
|
|
|
- property18.ItemClickAction = PWGInstace.WinNameplateItemClick;
|
|
|
- property18.Value = this.CloudInfos.GetAttachmentsItems("Nameplate").Count == 0 ? null : "点击查看铭牌照片";
|
|
|
- item.Items.Add(property18);
|
|
|
-
|
|
|
- Property property19 = new Property(this);
|
|
|
- //属性窗格用到的信息
|
|
|
- property19.Category = "台账信息-照片&文档";
|
|
|
- property19.Name = "设备照片";
|
|
|
- //Type应该先于Value进行赋值
|
|
|
- property19.PropertyType = typeof(UcReferenceFM);
|
|
|
- property19.ExtendClickAction = PWGInstace.WinPicManageClick;
|
|
|
- property19.Value = $"共{ServirceImages.Count}个媒体文件";
|
|
|
- //property19.Define = pdtb.PropertyDefineItems.FirstOrDefault(t => t.CodeName == "Pic");
|
|
|
- item.Items.Add(property19);
|
|
|
-
|
|
|
- Property property20 = new Property(this);
|
|
|
- property20.Category = "台账信息-照片&文档";
|
|
|
- property20.Name = "设备图纸";
|
|
|
- property20.PropertyType = typeof(UcReferenceFM);
|
|
|
- property20.ExtendClickAction = PWGInstace.WinServiceDrawingManageClick;
|
|
|
- var count = this.CloudInfos.GetAttachmentsItems("Drawing").Count;
|
|
|
- property20.Value = $"共{count}个文件";
|
|
|
- item.Items.Add(property20);
|
|
|
-
|
|
|
- Property property21 = new Property(this);
|
|
|
- property21.Category = "台账信息-照片&文档";
|
|
|
- property21.Name = "设备文档";
|
|
|
- property21.PropertyType = typeof(UcReferenceFM);
|
|
|
- property21.ExtendClickAction = PWGInstace.WinDeviceDocumentManageClick;
|
|
|
- var count21 = this.CloudInfos.GetAttachmentsItems("Archive").Count;
|
|
|
- property21.Value = $"共{count21}个文件";
|
|
|
- item.Items.Add(property21);
|
|
|
- return item;
|
|
|
+ return PWGInstace.SetFixedProperty(this);
|
|
|
}
|
|
|
|
|
|
+ /// <summary>
|
|
|
+ /// 从Revit读取需要的参数
|
|
|
+ /// </summary>
|
|
|
+ public override void ReadRevitParamter(Element elem, bool isSubjectToMode = false)
|
|
|
+ {
|
|
|
+ base.ReadRevitParamter(elem);
|
|
|
+ this.LocalId = isSubjectToMode||LocalId.IsNullOrEmpty()?elem.GetParameterString(RevitBuiltInParameter.EquipLocalID):LocalId;
|
|
|
+ this.LocalName = isSubjectToMode||LocalName.IsNullOrEmpty()?elem.GetParameterString(RevitBuiltInParameter.EquipLocalName):LocalName;
|
|
|
+ }
|
|
|
#endregion
|
|
|
|
|
|
+ #region BindingCommand
|
|
|
+
|
|
|
/// <summary>
|
|
|
/// 查看详细信息
|
|
|
/// </summary>
|
|
@@ -409,5 +166,8 @@ namespace SAGA.MBI.Model
|
|
|
{
|
|
|
return true;
|
|
|
}
|
|
|
+
|
|
|
+ #endregion
|
|
|
+
|
|
|
}
|
|
|
}
|