From e5b04afb7062a908c700f66a1a33aaa5eb98b7bb Mon Sep 17 00:00:00 2001
From: zhangyk-c <zhangyk-c@glodon.com>
Date: 星期二, 30 七月 2024 12:19:10 +0800
Subject: [PATCH] 更新导出json功能

---
 HStation.RevitDev/RevitDataExport/Plugin/Command.cs |  230 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 229 insertions(+), 1 deletions(-)

diff --git a/HStation.RevitDev/RevitDataExport/Plugin/Command.cs b/HStation.RevitDev/RevitDataExport/Plugin/Command.cs
index 7a23484..0a6fd3b 100644
--- a/HStation.RevitDev/RevitDataExport/Plugin/Command.cs
+++ b/HStation.RevitDev/RevitDataExport/Plugin/Command.cs
@@ -1,10 +1,13 @@
 锘縰sing Autodesk.Revit.Attributes;
 using Autodesk.Revit.DB;
 using Autodesk.Revit.UI;
+using HStation.Model;
+using HStation.RevitDev.Model.ModelEnum;
 using HStation.RevitDev.RevitDataExport.Forms;
+using HStation.RevitDev.RevitDataExport.Utility;
 using System;
 using System.Diagnostics;
-using System.Drawing.Drawing2D;
+using System.IO;
 using System.Windows.Forms;
 
 namespace HStation.RevitDev.RevitDataExport
@@ -20,8 +23,233 @@
             //瀹炰緥WPF绐椾綋
             var revitHandle = Process.GetCurrentProcess().MainWindowHandle;
             form.Show(new WindowHandle(revitHandle));
+            return Result.Succeeded;
+        }
+    }
 
+    /// <summary>
+    /// 瀵煎嚭妯″瀷
+    /// </summary>
+    [Transaction(TransactionMode.Manual)]
+    public class ExportModels : IExternalCommand
+    {
+        public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
+        {
+            var doc = commandData.Application.ActiveUIDocument.Document;
+            
+            //CacheUtil.SaveCache(commandData.Application.ActiveUIDocument.Document);
+            //TaskDialog.Show("鎻愮ず", "瀵煎嚭瀹屾垚锛�");
+            return Result.Succeeded;
+        }
+    }
 
+    /// <summary>
+    /// 姘存车
+    /// </summary>
+    [Transaction(TransactionMode.Manual)]
+    public class PumpSystem : IExternalCommand
+    {
+        RevitType m_type = RevitType.RFT_Pump;
+        public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
+        {
+            DocumentUtil.RegistDocumentEvent(commandData.Application.Application);
+            DockablePaneUtils.ShowDockablePanel(commandData, m_type);
+            return Result.Succeeded;
+        }
+    }
+
+    /// <summary>
+    /// 绠¢亾
+    /// </summary>
+    [Transaction(TransactionMode.Manual)]
+    public class PipeSystem : IExternalCommand
+    {
+        RevitType m_type = RevitType.RFT_Pipe;
+        public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
+        {
+            Common.GlobalResource.CurrentAddinId = commandData.Application.ActiveAddInId;
+            DocumentUtil.RegistDocumentEvent(commandData.Application.Application);
+            DockablePaneUtils.ShowDockablePanel(commandData, m_type);
+            return Result.Succeeded;
+        }
+    }
+
+    /// <summary>
+    /// 闃�闂�
+    /// </summary>
+    [Transaction(TransactionMode.Manual)]
+    public class ValveSystem : IExternalCommand
+    {
+        RevitType m_type = RevitType.RFT_Valve;
+        public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
+        {
+            DocumentUtil.RegistDocumentEvent(commandData.Application.Application);
+            DockablePaneUtils.ShowDockablePanel(commandData, m_type);
+            return Result.Succeeded;
+        }
+    }
+
+    /// <summary>
+    /// 鎹㈢儹姘�
+    /// </summary>
+    [Transaction(TransactionMode.Manual)]
+    public class HeatExchangerSystem : IExternalCommand
+    {
+        RevitType m_type = RevitType.RFT_HeatExchanger;
+        public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
+        {
+            DocumentUtil.RegistDocumentEvent(commandData.Application.Application);
+            DockablePaneUtils.ShowDockablePanel(commandData, m_type);
+            return Result.Succeeded;
+        }
+    }
+
+    /// <summary>
+    /// 闂峰ご
+    /// </summary>
+    [Transaction(TransactionMode.Manual)]
+    public class BlockerSystem : IExternalCommand
+    {
+        RevitType m_type = RevitType.RFT_Blocker;
+        public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
+        {
+            DocumentUtil.RegistDocumentEvent(commandData.Application.Application);
+            DockablePaneUtils.ShowDockablePanel(commandData, m_type);
+            return Result.Succeeded;
+        }
+    }
+
+    /// <summary>
+    /// 鍠锋穻澶�
+    /// </summary>
+    [Transaction(TransactionMode.Manual)]
+    public class ShowerSystem : IExternalCommand
+    {
+        RevitType m_type = RevitType.RFT_Shower;
+        public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
+        {
+            DocumentUtil.RegistDocumentEvent(commandData.Application.Application);
+            DockablePaneUtils.ShowDockablePanel(commandData, m_type);
+            return Result.Succeeded;
+        }
+    }
+
+    /// <summary>
+    /// 涓夐��
+    /// </summary>
+    [Transaction(TransactionMode.Manual)]
+    public class ThreeJointSystem : IExternalCommand
+    {
+        RevitType m_type = RevitType.RFT_ThreeJoint;
+        public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
+        {
+            DocumentUtil.RegistDocumentEvent(commandData.Application.Application);
+            DockablePaneUtils.ShowDockablePanel(commandData, m_type);
+            return Result.Succeeded;
+        }
+    }
+
+    /// <summary>
+    /// 鍥涢��
+    /// </summary>
+    [Transaction(TransactionMode.Manual)]
+    public class FourJointSystem : IExternalCommand
+    {
+        RevitType m_type = RevitType.RFT_FourJoint;
+        public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
+        {
+            DocumentUtil.RegistDocumentEvent(commandData.Application.Application);
+            DockablePaneUtils.ShowDockablePanel(commandData, m_type);
+            return Result.Succeeded;
+        }
+    }
+
+    /// <summary>
+    /// 姘磋〃
+    /// </summary>
+    [Transaction(TransactionMode.Manual)]
+    public class WaterMeterSystem : IExternalCommand
+    {
+        RevitType m_type = RevitType.RFT_WaterMeter;
+        public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
+        {
+            DocumentUtil.RegistDocumentEvent(commandData.Application.Application);
+            DockablePaneUtils.ShowDockablePanel(commandData, m_type);
+            return Result.Succeeded;
+        }
+    }
+
+    /// <summary>
+    /// 姘村簱
+    /// </summary>
+    [Transaction(TransactionMode.Manual)]
+    public class WaterPoolSystem : IExternalCommand
+    {
+        RevitType m_type = RevitType.RFT_WaterPool;
+        public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
+        {
+            DocumentUtil.RegistDocumentEvent(commandData.Application.Application);
+            DockablePaneUtils.ShowDockablePanel(commandData, m_type);
+            return Result.Succeeded;
+        }
+    }
+
+    /// <summary>
+    /// 姘寸
+    /// </summary>
+    [Transaction(TransactionMode.Manual)]
+    public class WaterBoxSystem : IExternalCommand
+    {
+        RevitType m_type = RevitType.RFT_WaterBox;
+        public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
+        {
+            DocumentUtil.RegistDocumentEvent(commandData.Application.Application);
+            DockablePaneUtils.ShowDockablePanel(commandData, m_type);
+            return Result.Succeeded;
+        }
+    }
+
+    /// <summary>
+    /// 寮ご
+    /// </summary>
+    [Transaction(TransactionMode.Manual)]
+    public class ElbowSystem : IExternalCommand
+    {
+        RevitType m_type = RevitType.RFT_Elbow;
+        public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
+        {
+            DocumentUtil.RegistDocumentEvent(commandData.Application.Application);
+            DockablePaneUtils.ShowDockablePanel(commandData, m_type);
+            return Result.Succeeded;
+        }
+    }
+
+    /// <summary>
+    /// 寮ご
+    /// </summary>
+    [Transaction(TransactionMode.Manual)]
+    public class FireHydrantSystem : IExternalCommand
+    {
+        RevitType m_type = RevitType.RFT_FireHydrant;
+        public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
+        {
+            DocumentUtil.RegistDocumentEvent(commandData.Application.Application);
+            DockablePaneUtils.ShowDockablePanel(commandData, m_type);
+            return Result.Succeeded;
+        }
+    }
+
+    /// <summary>
+    /// 鍙樺緞
+    /// </summary>
+    [Transaction(TransactionMode.Manual)]
+    public class ReducingSystem : IExternalCommand
+    {
+        RevitType m_type = RevitType.RFT_Reducing;
+        public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
+        {
+            DocumentUtil.RegistDocumentEvent(commandData.Application.Application);
+            DockablePaneUtils.ShowDockablePanel(commandData, m_type);
             return Result.Succeeded;
         }
     }

--
Gitblit v1.9.3