From b62a2f5ad99995ec01da71b9f93be7284023171b Mon Sep 17 00:00:00 2001
From: chr <chr@chr.com>
Date: 星期二, 20 八月 2024 11:29:13 +0800
Subject: [PATCH] 优化插件;

---
 PdmSwPlugin.Common/Entity/Pdm/PdmBom.cs               |  116 +++++++
 InnoSetupScript/PdmSwPlugin.iss                       |   16 
 PdmSwPlugin.Common/PdmSwPlugin.Common.csproj          |    2 
 PdmSwPlugin.DrawApprove/DrawApprove.xaml              |    5 
 PdmSwPlugin.Common/Entity/DrawAudit/DrawAudit.cs      |   36 ++
 PdmSwPlugin.DrawApprove/DrawApprove.xaml.cs           |  108 ++++++-
 /dev/null                                             |   39 --
 PdmSwPlugin.Common/Entity/DrawAudit/DrawAuditOrder.cs |   16 +
 PdmSwPlugin.Common/Util/NumberUtil.cs                 |   16 +
 PdmSwPlugin.Main/Constant/PluginConst.cs              |    2 
 PdmSw/Settings/PluginSetting.xml                      |    0 
 PdmSwPlugin.PDM/Model/PdmControlModel.cs              |   34 ++
 PdmSwPlugin.PDM/PdmControl.xaml.cs                    |  118 ++++---
 .vs/SwPlugin/v17/DocumentLayout.json                  |  173 +++++-------
 PdmSwPlugin.Common/BomIniter/YwtBomIniter.cs          |    4 
 PdmSwPlugin.PDM/PdmControl.xaml                       |  107 ++++--
 16 files changed, 515 insertions(+), 277 deletions(-)

diff --git a/.vs/SwPlugin/v17/DocumentLayout.json b/.vs/SwPlugin/v17/DocumentLayout.json
index 67f8ef5..d993371 100644
--- a/.vs/SwPlugin/v17/DocumentLayout.json
+++ b/.vs/SwPlugin/v17/DocumentLayout.json
@@ -3,36 +3,28 @@
   "WorkspaceRootPath": "C:\\Workspace\\PdmSwPlugin2\\",
   "Documents": [
     {
-      "AbsoluteMoniker": "D:0:0:{7ACEDAA9-2DE8-4485-837A-E7D58812A6DC}|PdmSw\\PdmSw.csproj|c:\\workspace\\pdmswplugin2\\pdmsw\\swaddin.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{7ACEDAA9-2DE8-4485-837A-E7D58812A6DC}|PdmSw\\PdmSw.csproj|solutionrelative:pdmsw\\swaddin.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+      "AbsoluteMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|c:\\workspace\\pdmswplugin2\\pdmswplugin.common\\entity\\drawaudit\\drawaudit.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|solutionrelative:pdmswplugin.common\\entity\\drawaudit\\drawaudit.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
-      "AbsoluteMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|C:\\Workspace\\PdmSwPlugin2\\pdmswplugin.common\\control\\richhiswindow.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
-      "RelativeMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|solutionrelative:pdmswplugin.common\\control\\richhiswindow.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
+      "AbsoluteMoniker": "D:0:0:{BE239D32-7253-4D19-8793-159E98545B55}|PdmSwPlugin.DrawApprove\\PdmSwPlugin.DrawApprove.csproj|c:\\workspace\\pdmswplugin2\\pdmswplugin.drawapprove\\drawapprove.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
+      "RelativeMoniker": "D:0:0:{BE239D32-7253-4D19-8793-159E98545B55}|PdmSwPlugin.DrawApprove\\PdmSwPlugin.DrawApprove.csproj|solutionrelative:pdmswplugin.drawapprove\\drawapprove.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
     },
     {
-      "AbsoluteMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|C:\\Workspace\\PdmSwPlugin2\\pdmswplugin.common\\bominiter\\ywtbominiter.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|solutionrelative:pdmswplugin.common\\bominiter\\ywtbominiter.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+      "AbsoluteMoniker": "D:0:0:{BE239D32-7253-4D19-8793-159E98545B55}|PdmSwPlugin.DrawApprove\\PdmSwPlugin.DrawApprove.csproj|c:\\workspace\\pdmswplugin2\\pdmswplugin.drawapprove\\drawapprove.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{BE239D32-7253-4D19-8793-159E98545B55}|PdmSwPlugin.DrawApprove\\PdmSwPlugin.DrawApprove.csproj|solutionrelative:pdmswplugin.drawapprove\\drawapprove.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
-      "AbsoluteMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|C:\\Workspace\\PdmSwPlugin2\\pdmswplugin.common\\bominiter\\bominiter.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|solutionrelative:pdmswplugin.common\\bominiter\\bominiter.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+      "AbsoluteMoniker": "D:0:0:{1033FBD8-8700-4CD0-808A-BB97DB057A6B}|PdmSwPlugin.PDM\\PdmSwPlugin.PDM.csproj|c:\\workspace\\pdmswplugin2\\pdmswplugin.pdm\\pdmcontrol.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{1033FBD8-8700-4CD0-808A-BB97DB057A6B}|PdmSwPlugin.PDM\\PdmSwPlugin.PDM.csproj|solutionrelative:pdmswplugin.pdm\\pdmcontrol.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
-      "AbsoluteMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|C:\\Workspace\\PdmSwPlugin2\\pdmswplugin.main\\maincontrol.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|solutionrelative:pdmswplugin.main\\maincontrol.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+      "AbsoluteMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|c:\\workspace\\pdmswplugin2\\pdmswplugin.common\\entity\\drawaudit\\drawauditorder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|solutionrelative:pdmswplugin.common\\entity\\drawaudit\\drawauditorder.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
-      "AbsoluteMoniker": "D:0:0:{7ACEDAA9-2DE8-4485-837A-E7D58812A6DC}|PdmSw\\PdmSw.csproj|C:\\Workspace\\PdmSwPlugin2\\pdmsw\\prodsettings\\pluginsetting.xml||{FA3CD31E-987B-443A-9B81-186104E8DAC1}",
-      "RelativeMoniker": "D:0:0:{7ACEDAA9-2DE8-4485-837A-E7D58812A6DC}|PdmSw\\PdmSw.csproj|solutionrelative:pdmsw\\prodsettings\\pluginsetting.xml||{FA3CD31E-987B-443A-9B81-186104E8DAC1}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{7ACEDAA9-2DE8-4485-837A-E7D58812A6DC}|PdmSw\\PdmSw.csproj|C:\\Workspace\\PdmSwPlugin2\\pdmsw\\settings\\pluginsetting.xml||{FA3CD31E-987B-443A-9B81-186104E8DAC1}",
-      "RelativeMoniker": "D:0:0:{7ACEDAA9-2DE8-4485-837A-E7D58812A6DC}|PdmSw\\PdmSw.csproj|solutionrelative:pdmsw\\settings\\pluginsetting.xml||{FA3CD31E-987B-443A-9B81-186104E8DAC1}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|C:\\Workspace\\PdmSwPlugin2\\pdmswplugin.main\\swaddin\\maincontrol.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|solutionrelative:pdmswplugin.main\\swaddin\\maincontrol.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+      "AbsoluteMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|c:\\workspace\\pdmswplugin2\\pdmswplugin.main\\constant\\pluginconst.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|solutionrelative:pdmswplugin.main\\constant\\pluginconst.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     }
   ],
   "DocumentGroupContainers": [
@@ -42,103 +34,84 @@
       "DocumentGroups": [
         {
           "DockedWidth": 200,
-          "SelectedChildIndex": 0,
+          "SelectedChildIndex": 5,
           "Children": [
             {
               "$type": "Document",
-              "DocumentIndex": 0,
-              "Title": "SwAddin.cs",
-              "DocumentMoniker": "C:\\Workspace\\PdmSwPlugin2\\PdmSw\\SwAddin.cs",
-              "RelativeDocumentMoniker": "PdmSw\\SwAddin.cs",
-              "ToolTip": "C:\\Workspace\\PdmSwPlugin2\\PdmSw\\SwAddin.cs",
-              "RelativeToolTip": "PdmSw\\SwAddin.cs",
-              "ViewState": "AQIAAAcAAAAAAAAAAAAAABIAAAAnAAAA",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2024-08-16T02:28:52.727Z",
+              "DocumentIndex": 1,
+              "Title": "DrawApprove.xaml",
+              "DocumentMoniker": "C:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.DrawApprove\\DrawApprove.xaml",
+              "RelativeDocumentMoniker": "PdmSwPlugin.DrawApprove\\DrawApprove.xaml",
+              "ToolTip": "C:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.DrawApprove\\DrawApprove.xaml",
+              "RelativeToolTip": "PdmSwPlugin.DrawApprove\\DrawApprove.xaml",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
+              "WhenOpened": "2024-08-20T03:02:33.757Z",
               "EditorCaption": ""
             },
             {
               "$type": "Document",
-              "DocumentIndex": 1,
-              "Title": "RichHisWindow.xaml",
-              "DocumentMoniker": "C:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\Control\\RichHisWindow.xaml",
-              "RelativeDocumentMoniker": "PdmSwPlugin.Common\\Control\\RichHisWindow.xaml",
-              "ToolTip": "C:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\Control\\RichHisWindow.xaml",
-              "RelativeToolTip": "PdmSwPlugin.Common\\Control\\RichHisWindow.xaml",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
-              "WhenOpened": "2024-08-16T02:26:26.745Z"
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 2,
-              "Title": "YwtBomIniter.cs",
-              "DocumentMoniker": "C:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\BomIniter\\YwtBomIniter.cs",
-              "RelativeDocumentMoniker": "PdmSwPlugin.Common\\BomIniter\\YwtBomIniter.cs",
-              "ToolTip": "C:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\BomIniter\\YwtBomIniter.cs",
-              "RelativeToolTip": "PdmSwPlugin.Common\\BomIniter\\YwtBomIniter.cs",
-              "ViewState": "AQIAAAAAAAAAAAAAAAAAABIAAABLAAAA",
+              "DocumentIndex": 4,
+              "Title": "DrawAuditOrder.cs",
+              "DocumentMoniker": "C:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\Entity\\DrawAudit\\DrawAuditOrder.cs",
+              "RelativeDocumentMoniker": "PdmSwPlugin.Common\\Entity\\DrawAudit\\DrawAuditOrder.cs",
+              "ToolTip": "C:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\Entity\\DrawAudit\\DrawAuditOrder.cs",
+              "RelativeToolTip": "PdmSwPlugin.Common\\Entity\\DrawAudit\\DrawAuditOrder.cs",
+              "ViewState": "AQIAAAAAAAAAAAAAAAAAAAkAAAAFAAAA",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2024-08-15T08:33:54.519Z"
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 3,
-              "Title": "BomIniter.cs",
-              "DocumentMoniker": "C:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\BomIniter\\BomIniter.cs",
-              "RelativeDocumentMoniker": "PdmSwPlugin.Common\\BomIniter\\BomIniter.cs",
-              "ToolTip": "C:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\BomIniter\\BomIniter.cs",
-              "RelativeToolTip": "PdmSwPlugin.Common\\BomIniter\\BomIniter.cs",
-              "ViewState": "AQIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2024-08-15T08:33:51.192Z"
+              "WhenOpened": "2024-08-20T02:13:49.926Z",
+              "EditorCaption": ""
             },
             {
               "$type": "Document",
               "DocumentIndex": 5,
-              "Title": "PluginSetting.xml",
-              "DocumentMoniker": "C:\\Workspace\\PdmSwPlugin2\\PdmSw\\ProdSettings\\PluginSetting.xml",
-              "RelativeDocumentMoniker": "PdmSw\\ProdSettings\\PluginSetting.xml",
-              "ToolTip": "C:\\Workspace\\PdmSwPlugin2\\PdmSw\\ProdSettings\\PluginSetting.xml",
-              "RelativeToolTip": "PdmSw\\ProdSettings\\PluginSetting.xml",
-              "ViewState": "AQIAAAAAAAAAAAAAAAAAAA0AAAAPAAAA",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003576|",
-              "WhenOpened": "2024-08-12T10:16:18.735Z"
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 6,
-              "Title": "PluginSetting.xml",
-              "DocumentMoniker": "C:\\Workspace\\PdmSwPlugin2\\PdmSw\\Settings\\PluginSetting.xml",
-              "RelativeDocumentMoniker": "PdmSw\\Settings\\PluginSetting.xml",
-              "ToolTip": "C:\\Workspace\\PdmSwPlugin2\\PdmSw\\Settings\\PluginSetting.xml",
-              "RelativeToolTip": "PdmSw\\Settings\\PluginSetting.xml",
-              "ViewState": "AQIAAAAAAAAAAAAAAAAAABEAAAAXAAAA",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003576|",
-              "WhenOpened": "2024-08-12T10:16:06.032Z"
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 4,
-              "Title": "MainControl.xaml.cs",
-              "DocumentMoniker": "C:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\MainControl.xaml.cs",
-              "RelativeDocumentMoniker": "PdmSwPlugin.Main\\MainControl.xaml.cs",
-              "ToolTip": "C:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\MainControl.xaml.cs",
-              "RelativeToolTip": "PdmSwPlugin.Main\\MainControl.xaml.cs",
-              "ViewState": "AQIAAIUAAAAAAAAAAAAAAJAAAAANAAAA",
+              "Title": "PluginConst.cs",
+              "DocumentMoniker": "C:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\Constant\\PluginConst.cs",
+              "RelativeDocumentMoniker": "PdmSwPlugin.Main\\Constant\\PluginConst.cs",
+              "ToolTip": "C:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\Constant\\PluginConst.cs",
+              "RelativeToolTip": "PdmSwPlugin.Main\\Constant\\PluginConst.cs",
+              "ViewState": "AQIAAAAAAAAAAAAAAAAAAAgAAAAAAAAA",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2024-08-12T10:08:35.904Z"
+              "WhenOpened": "2024-08-18T12:05:54.617Z",
+              "EditorCaption": ""
             },
             {
               "$type": "Document",
-              "DocumentIndex": 7,
-              "Title": "MainControl.cs",
-              "DocumentMoniker": "C:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\SwAddIn\\MainControl.cs",
-              "RelativeDocumentMoniker": "PdmSwPlugin.Main\\SwAddIn\\MainControl.cs",
-              "ToolTip": "C:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\SwAddIn\\MainControl.cs",
-              "RelativeToolTip": "PdmSwPlugin.Main\\SwAddIn\\MainControl.cs",
-              "ViewState": "AQIAADcAAAAAAAAAAAAkwG0AAAANAAAA",
+              "DocumentIndex": 3,
+              "Title": "PdmControl.xaml.cs",
+              "DocumentMoniker": "C:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PDM\\PdmControl.xaml.cs",
+              "RelativeDocumentMoniker": "PdmSwPlugin.PDM\\PdmControl.xaml.cs",
+              "ToolTip": "C:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PDM\\PdmControl.xaml.cs",
+              "RelativeToolTip": "PdmSwPlugin.PDM\\PdmControl.xaml.cs",
+              "ViewState": "AQIAAMoEAAAAAAAAAAApwNoEAAAAAAAA",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2024-08-12T09:19:59.648Z"
+              "WhenOpened": "2024-08-18T08:40:17.518Z",
+              "EditorCaption": ""
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 2,
+              "Title": "DrawApprove.xaml.cs",
+              "DocumentMoniker": "C:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.DrawApprove\\DrawApprove.xaml.cs",
+              "RelativeDocumentMoniker": "PdmSwPlugin.DrawApprove\\DrawApprove.xaml.cs",
+              "ToolTip": "C:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.DrawApprove\\DrawApprove.xaml.cs",
+              "RelativeToolTip": "PdmSwPlugin.DrawApprove\\DrawApprove.xaml.cs",
+              "ViewState": "AQIAABoBAAAAAAAAAAAcwCUBAAAdAAAA",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2024-08-18T08:30:42.283Z",
+              "EditorCaption": ""
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 0,
+              "Title": "DrawAudit.cs",
+              "DocumentMoniker": "C:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\Entity\\DrawAudit\\DrawAudit.cs",
+              "RelativeDocumentMoniker": "PdmSwPlugin.Common\\Entity\\DrawAudit\\DrawAudit.cs",
+              "ToolTip": "C:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\Entity\\DrawAudit\\DrawAudit.cs",
+              "RelativeToolTip": "PdmSwPlugin.Common\\Entity\\DrawAudit\\DrawAudit.cs",
+              "ViewState": "AQIAAAYAAAAAAAAAAAAAABAAAAAfAAAA",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2024-08-18T08:28:05.337Z",
+              "EditorCaption": ""
             }
           ]
         }
diff --git a/SetupScript/SetupScript.iss b/InnoSetupScript/PdmSwPlugin.iss
similarity index 86%
rename from SetupScript/SetupScript.iss
rename to InnoSetupScript/PdmSwPlugin.iss
index f06a4cf..83dde2b 100644
--- a/SetupScript/SetupScript.iss
+++ b/InnoSetupScript/PdmSwPlugin.iss
@@ -3,14 +3,14 @@
 ; AppName
 #define AppName = "PdmSwPlugin"
 ; 打包的应用文件夹路径
-#define AppDir = "C:\Users\cheng\Documents\Workspace\PdmSw\bin\x64\Debug\"
+#define AppDir = "C:\Workspace\PdmSwPlugin2\PdmSw\bin\x64\Release\"
 ; 自动更新程序路径
-#define AutoUpdaterDir = "C:\Users\cheng\Documents\Workspace\PdmSw\bin\x64\Debug\AutoUpdater\"
+#define AutoUpdaterDir = "C:\Workspace\PdmSwPlugin2\PdmSw\bin\x64\Release\Release\AutoUpdater\"
 ; 版本
-#define Version = "0.1"
+#define Version = "0.0.0.35"
 
 ; 生成的Installer存放路径
-#define OutPutDir = "C:\temp\Test"
+#define OutPutDir = "Z:\Main\Workspace\Output"
 #define DllName = "PdmSwPlugin.dll"
 
 
@@ -22,14 +22,14 @@
 AppVersion={#Version}
 ;AppVerName=Test 1.0
 ; 安装路径 C:\Program Files (x86)\LHJ\PdmSwPlugin
-DefaultDirName={autopf}\LHJ\PdmSwPlugin
+DefaultDirName={autopf}\HengXin\PdmSwPlugin
 DisableDirPage=yes
 DefaultGroupName=PdmSwPlugin
 DisableProgramGroupPage=yes
 ; Uncomment the following line to run in non administrative install mode (install for current user only.)
 ;PrivilegesRequired=lowest
 OutputDir={#OutputDir}
-OutputBaseFilename=PdmSwPluginInstaller
+OutputBaseFilename=PdmSwPluginInstaller_V{#Version}
 Compression=lzma
 SolidCompression=yes
 WizardStyle=modern
@@ -61,12 +61,12 @@
 ; 32
 Root: HKLM; Subkey: "SOFTWARE\SolidWorks\Addins\{{{#AppId}}"; Flags: uninsdeletekey
 Root: HKLM; Subkey: "SOFTWARE\SolidWorks\Addins\{{{#AppId}}"; ValueType: dword; ValueName: ""; ValueData: 0; Flags: deletevalue
-Root: HKLM; Subkey: "SOFTWARE\SolidWorks\Addins\{{{#AppId}}"; ValueType: string; ValueName: "Description"; ValueData: "LHJ插件"; Flags: deletevalue
+Root: HKLM; Subkey: "SOFTWARE\SolidWorks\Addins\{{{#AppId}}"; ValueType: string; ValueName: "Description"; ValueData: "PDM插件"; Flags: deletevalue
 Root: HKLM; Subkey: "SOFTWARE\SolidWorks\Addins\{{{#AppId}}"; ValueType: string; ValueName: "Title"; ValueData: "PdmSw"; Flags: deletevalue
 ; 64
 Root: HKLM64; Subkey: "SOFTWARE\SolidWorks\Addins\{{{#AppId}}"; Flags: uninsdeletekey
 Root: HKLM64; Subkey: "SOFTWARE\SolidWorks\Addins\{{{#AppId}}"; ValueType: dword; ValueName: ""; ValueData: 0; Flags: deletevalue
-Root: HKLM64; Subkey: "SOFTWARE\SolidWorks\Addins\{{{#AppId}}"; ValueType: string; ValueName: "Description"; ValueData: "LHJ插件"; Flags: deletevalue
+Root: HKLM64; Subkey: "SOFTWARE\SolidWorks\Addins\{{{#AppId}}"; ValueType: string; ValueName: "Description"; ValueData: "PDM插件"; Flags: deletevalue
 Root: HKLM64; Subkey: "SOFTWARE\SolidWorks\Addins\{{{#AppId}}"; ValueType: string; ValueName: "Title"; ValueData: "PdmSw"; Flags: deletevalue
 
 [Icons]
diff --git a/PdmSw/Settings/PluginSetting.xml b/PdmSw/Settings/PluginSetting.xml
index 3a405cf..8d3508b 100644
--- a/PdmSw/Settings/PluginSetting.xml
+++ b/PdmSw/Settings/PluginSetting.xml
Binary files differ
diff --git a/PdmSwPlugin.Common/BomIniter/YwtBomIniter.cs b/PdmSwPlugin.Common/BomIniter/YwtBomIniter.cs
index 5ff5a59..5aae542 100644
--- a/PdmSwPlugin.Common/BomIniter/YwtBomIniter.cs
+++ b/PdmSwPlugin.Common/BomIniter/YwtBomIniter.cs
@@ -29,7 +29,9 @@
 
             if (Regex.IsMatch(childName, jgjNameRegx))
             {
-                bom.historyData = NameUtil.IsHistoryDoc(childName);
+                if (bom._drawInfo != null) { 
+                    bom._drawInfo.HistoryData = NameUtil.IsHistoryDoc(childName);
+                }
 
                 string docType = bom.properties.Get("鏂囦欢鏍煎紡");
                 if (string.IsNullOrEmpty(docType))
diff --git a/PdmSwPlugin.Common/Entity/DrawAudit/DrawAudit.cs b/PdmSwPlugin.Common/Entity/DrawAudit/DrawAudit.cs
index 94586e4..52fb104 100644
--- a/PdmSwPlugin.Common/Entity/DrawAudit/DrawAudit.cs
+++ b/PdmSwPlugin.Common/Entity/DrawAudit/DrawAudit.cs
@@ -12,6 +12,15 @@
             set { _id = value; }
         }
 
+        private string _orderCode;
+
+        public string orderCode
+        {
+            get => _orderCode;
+            set => RaiseAndSetIfChanged(ref _orderCode, value);
+        }
+
+
         private string _materialCode;
 
         public string materialCode
@@ -107,5 +116,32 @@
             set => RaiseAndSetIfChanged(ref _count, value);
         }
 
+        private string _fileName;
+        public string fileName
+        {
+            get => _fileName;
+            set => RaiseAndSetIfChanged(ref _fileName, value);
+        }
+
+        private double? _volume;
+        public double? volume
+        {
+            get => _volume;
+            set => RaiseAndSetIfChanged(ref _volume, value);
+        }
+
+        private double? _surfaceArea;
+        public double? surfaceArea
+        {
+            get => _surfaceArea;
+            set => RaiseAndSetIfChanged(ref _surfaceArea, value);
+        }
+
+        private double? _mass;
+        public double? mass
+        {
+            get => _mass;
+            set => RaiseAndSetIfChanged(ref _mass, value);
+        }
     }
 }
diff --git a/PdmSwPlugin.Common/Entity/DrawAudit/DrawAuditOrder.cs b/PdmSwPlugin.Common/Entity/DrawAudit/DrawAuditOrder.cs
new file mode 100644
index 0000000..cd69831
--- /dev/null
+++ b/PdmSwPlugin.Common/Entity/DrawAudit/DrawAuditOrder.cs
@@ -0,0 +1,16 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace PdmSwPlugin.Common.Entity.DrawAudit
+{
+    public class DrawAuditOrder
+    {
+        public string id { get; set; }
+        public string code { get; set; }
+        public string requestUserId { get; set; }
+        public string requestUser { get; set; }
+    }
+}
diff --git a/PdmSwPlugin.Common/Entity/Pdm/PdmBom.cs b/PdmSwPlugin.Common/Entity/Pdm/PdmBom.cs
index 654ff5b..5348f1b 100644
--- a/PdmSwPlugin.Common/Entity/Pdm/PdmBom.cs
+++ b/PdmSwPlugin.Common/Entity/Pdm/PdmBom.cs
@@ -6,6 +6,7 @@
 using System.Collections.Generic;
 using System.Collections.ObjectModel;
 using System.IO;
+using System.Windows.Interop;
 
 namespace PdmSwPlugin.Common.Entity.Pdm
 {
@@ -35,6 +36,8 @@
         public string filePath { get; set; }
         public int level { get; set; }
         public int drawingType { get; set; }
+
+        public bool HistoryData = false;
 
         public ModelDoc2 doc { get; set; }
         public Component2 component { get; set; }
@@ -152,6 +155,14 @@
 
         public bool checkRuleOk => checkRuleResult == 1 || checkRuleResult == 3;
 
+        private bool _HistoryData = false;
+        public bool HistoryData
+        {
+            get => _HistoryData;
+            set => RaiseAndSetIfChanged(ref _HistoryData, value);
+        }
+
+
         public List<string> errMessages { get; set; }
 
         public Dictionary<string, string> allProperties { get; set; }
@@ -216,15 +227,101 @@
         public string auditUserId => BomInfo?.auditUserId;
         public string auditUser => BomInfo?.auditUser;
 
-        public bool inBom
+        /// <summary>
+        /// 鏄惁鏄巻鍙插浘绾�
+        /// </summary>
+        public bool IsHistoryData => _drawInfo?.HistoryData == true;
+        /// <summary>
+        /// 鏄惁璺宠繃瑙勫垯妫�鏌�
+        /// </summary>
+        public bool skipCheck => produceWay == "妯$粍" || ExcludeFromBOM || component?.IsVirtual == true;
+        /// <summary>
+        /// 鍥剧焊鏄惁鍙戠敓鍙樻洿 闈炲巻鍙插浘绾哥湅2D鍥綧D5 鍘嗗彶鍥剧焊鐪嬩竴鑷存�ф鏌ユ病閫氳繃
+        /// </summary>
+        public bool localDocChanged => (!IsHistoryData && localD2Md5 != _drawInfo?.d2Md5)
+            || (IsHistoryData && _drawInfo?.checkRuleResult == 2); //localD3Md5 != _drawInfo?.d3Md5;
+        /// <summary>
+        /// 瑙勫垯妫�鏌ョ粨鏋�
+        /// </summary>
+        public int? checkRuleResult => (IsHistoryData || skipCheck) ? 3 : _drawInfo?.checkRuleResult;
+        /// <summary>
+        /// 妫�鏌ユ槸鍚K
+        /// </summary>
+        public bool checkRuleOk => _drawInfo != null && _drawInfo.checkRuleOk;
+        /// <summary>
+        /// 鏄惁涓嶅湪鐗╂枡鏄庣粏琛ㄤ腑
+        /// </summary>
+        public bool ExcludeFromBOM
         {
             get => component == null ? false : component.ExcludeFromBOM;
             set
             {
                 InBomChanged?.Invoke(this, value);
-                // RaiseAndSetIfChanged(ref _inBom, value);
             }
         }
+
+        /// <summary>
+        /// 鏄惁闇�瑕佸鏍�
+        /// </summary>
+        public bool NeedAudit
+        {
+            get
+            {
+                // 鎵句笉鍒版枃妗g殑涓嶅鏍�
+                if (lost) return false;
+                // 涓嶅湪鐗╂枡鏄庣粏琛ㄤ腑涓嶅鏍�
+                if (ExcludeFromBOM) return false;
+                if (IsHistoryData)
+                {
+                    // 鍘嗗彶鍥剧焊鍙鏍镐竴鑷存�т笉閫氳繃鐨�
+                    return _drawInfo.checkRuleResult == 2;
+                }
+                else
+                {
+                    // 闈炲巻鍙插浘绾稿彧瀹℃牳 鍏佽瀹℃牳鐨勫姞宸ヤ欢
+                    return produceWay == "鍔犲伐浠�"
+                            && (drawStatus != "submitted" && drawStatus != "resubmitted")
+                            && (drawStatus != "completed" || localDocChanged);
+                }
+            }
+        }
+
+        /// <summary>
+        /// 鏄惁闇�瑕佺粓姝㈡鍏�/瀵煎叆
+        /// </summary>
+        /// <returns></returns>
+        public string NeedStopCheckIn()
+        {
+            if (produceWay == "妯$粍") return null;
+            if (ExcludeFromBOM) return null;
+            if (IsHistoryData && localDocChanged)
+            {
+                return $"鍘嗗彶鍥剧焊銆恵partModel}銆戝彉鏇村悗鏈噸鏂板鏍�";
+            }
+            if (!IsHistoryData)
+            {
+                bool error = false;
+                string msg = $"銆恵partModel}銆�";
+                if (!skipCheck && !checkRuleOk)
+                {
+                    error = true;
+                    msg += "鏈�氳繃瑙勫垯妫�鏌�";
+                }
+                if (produceWay == "鍔犲伐浠�" && drawStatus != "completed")
+                {
+                    error = true;
+                    msg += "鏈�氳繃瀹℃牳;";
+                }
+                if (produceWay == "鍔犲伐浠�" && drawStatus == "completed" && localDocChanged)
+                {
+                    error = true;
+                    msg += "鍥剧焊鍙樻洿鍚庢湭閲嶆柊瀹℃牳";
+                }
+                return error ? msg : null;
+            }
+            return null;
+        }
+
 
         public void UpdateInBom(bool value)
         {
@@ -430,15 +527,13 @@
             if (e.PropertyName == "checkRuleResult")
             {
                 RaisePropertyChanged("checkRuleResult");
+                RaisePropertyChanged("localDocChanged");
+            }
+            else if (e.PropertyName == "HistoryData")
+            {
+                RaisePropertyChanged("IsHistoryData");
             }
         }
-
-        // 妯$粍 涓嶅湪鐗╂枡鏄庣粏琛� 宸℃璺宠繃妫�鏌�
-        public bool historyData { get; set; } = false;
-        public bool skipCheck => historyData || produceWay == "妯$粍" || inBom || component?.IsVirtual == true;
-        public int? checkRuleResult => skipCheck ? 3 : _drawInfo?.checkRuleResult;
-
-        public bool checkRuleOk => _drawInfo != null && _drawInfo.checkRuleOk;
 
         public string d3Md5 => _drawInfo == null ? null : _drawInfo.d3Md5;
         public string d2Md5 => _drawInfo == null ? null : _drawInfo.d2Md5;
@@ -459,14 +554,13 @@
         public bool checkBoxEnabled => !(xcChild || (lost == true) ||
             produceWay == "鏍囧噯浠�"
             || (produceWay == "妯$粍" && drawingType == (int)swDocumentTypes_e.swDocPART)
-            || (inBom && drawingType == (int)swDocumentTypes_e.swDocPART)
+            || (ExcludeFromBOM && drawingType == (int)swDocumentTypes_e.swDocPART)
             // BomInfo.jgj == "鏍囧噯浠�"
             //|| component?.IsVirtual == true
             );
 
         public bool d3Changed => localD3Md5 != _drawInfo?.d3Md5;
 
-        public bool auditedMd5Changed => localD2Md5 != _drawInfo?.d2Md5; //localD3Md5 != _drawInfo?.d3Md5;
 
         public int order { get; set; }
 
diff --git a/PdmSwPlugin.Common/PdmSwPlugin.Common.csproj b/PdmSwPlugin.Common/PdmSwPlugin.Common.csproj
index 2329521..4d9b8de 100644
--- a/PdmSwPlugin.Common/PdmSwPlugin.Common.csproj
+++ b/PdmSwPlugin.Common/PdmSwPlugin.Common.csproj
@@ -76,6 +76,7 @@
     <Compile Include="Entity\BusinessType.cs" />
     <Compile Include="Entity\DrawAudit\DrawAudit.cs" />
     <Compile Include="Entity\DrawAudit\DrawAuditHis.cs" />
+    <Compile Include="Entity\DrawAudit\DrawAuditOrder.cs" />
     <Compile Include="Entity\NoteAndPos.cs" />
     <Compile Include="Entity\NotifyBase.cs" />
     <Compile Include="Entity\Page.cs" />
@@ -102,6 +103,7 @@
     <Compile Include="Setting\YwtUserSetting.cs" />
     <Compile Include="Util\DictionaryUtil.cs" />
     <Compile Include="Util\LimitedConcurrencyLevelTaskScheduler.cs" />
+    <Compile Include="Util\NumberUtil.cs" />
     <Compile Include="Util\OpenDocContext.cs" />
     <Compile Include="Util\Pdm\ComponentAndTask.cs" />
     <Compile Include="Util\Pdm\BomTreeReader.cs" />
diff --git a/PdmSwPlugin.Common/Util/NumberUtil.cs b/PdmSwPlugin.Common/Util/NumberUtil.cs
new file mode 100644
index 0000000..a1e5545
--- /dev/null
+++ b/PdmSwPlugin.Common/Util/NumberUtil.cs
@@ -0,0 +1,16 @@
+锘縰sing SolidWorks.Interop.sldworks;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace PdmSwPlugin.Common.Util
+{
+    public class NumberUtil
+    {
+        public static double HandleMass(double mass) {
+            return Math.Round(mass, 6);
+        }
+    }
+}
diff --git a/PdmSwPlugin.DrawApprove/DrawApprove.xaml b/PdmSwPlugin.DrawApprove/DrawApprove.xaml
index b2bcb72..fd35c23 100644
--- a/PdmSwPlugin.DrawApprove/DrawApprove.xaml
+++ b/PdmSwPlugin.DrawApprove/DrawApprove.xaml
@@ -84,7 +84,7 @@
                             <DataGridTemplateColumn.CellTemplate>
                                 <DataTemplate>
                                     <CheckBox DataContext="{Binding Data}"
-                      IsChecked="{Binding selected}"/>
+                      IsChecked="{Binding selected}" Checked="SingleCheckBox_Event" Unchecked="SingleCheckBox_Event"/>
                                 </DataTemplate>
                             </DataGridTemplateColumn.CellTemplate>
                         </DataGridTemplateColumn>
@@ -100,6 +100,7 @@
                         </DataGridTemplateColumn>
 
                         <DataGridTextColumn Header="鐢宠浜�" Width="80" IsReadOnly="True" Binding="{Binding Data.requestUser}"/>
+                        <DataGridTextColumn Header="娴佹按鍗曞彿" Width="80" IsReadOnly="True" Binding="{Binding Data.orderCode}"/>
                         <DataGridTextColumn Header="鍓嶄竴瀹℃牳浜�" Width="80" IsReadOnly="True" Binding="{Binding Data.auditUser}"/>
                         <DataGridTextColumn Header="鎻愪氦鏃堕棿" Width="130" IsReadOnly="True" Binding="{Binding Data.updateTime}"/>
 
@@ -131,7 +132,7 @@
 
                 <StatusBar DockPanel.Dock="Bottom" Height="20">
                     <StatusBarItem >
-                        <TextBox x:Name="activeDocPath" IsReadOnly="True" Style="{StaticResource StatusBarTextBox}" Text="{Binding ActiveDocPath}"/>
+                        <TextBox x:Name="activeDocPath" IsReadOnly="True" Style="{StaticResource StatusBarTextBox}" Text="{Binding SelectBomText}"/>
                     </StatusBarItem>
                     <Separator/>
                     <StatusBarItem>
diff --git a/PdmSwPlugin.DrawApprove/DrawApprove.xaml.cs b/PdmSwPlugin.DrawApprove/DrawApprove.xaml.cs
index 6c27ce6..1b6b817 100644
--- a/PdmSwPlugin.DrawApprove/DrawApprove.xaml.cs
+++ b/PdmSwPlugin.DrawApprove/DrawApprove.xaml.cs
@@ -64,8 +64,36 @@
         public ObservableCollection<DrawAudit> dataSource
         {
             get => _dataSource;
-            set => RaiseAndSetIfChanged(ref _dataSource, value);
+            set
+            {
+                RaiseAndSetIfChanged(ref _dataSource, value);
+                if (value == null)
+                {
+                    StatusBarText = $"鍏� 0 鏉�";
+                }
+                else
+                {
+                    StatusBarText = $"鍏� {value.Count} 鏉�";
+                }
+                RefreshSelectedCount();
+            }
         }
+
+        private string _SelectBomText = "宸查�変腑 0 鏉�";
+        public string SelectBomText
+        {
+            get => _SelectBomText;
+            set => RaiseAndSetIfChanged(ref _SelectBomText, value);
+        }
+
+        private string _StatusBarText = "鍏� 0 鏉�";
+
+        public string StatusBarText
+        {
+            get { return _StatusBarText; }
+            set => RaiseAndSetIfChanged(ref _StatusBarText, value);
+        }
+
 
 
         public DrawApproveControl() : this(null)
@@ -100,7 +128,32 @@
             {
                 data.selected = cb.IsChecked.Value;
             }
+            int count = cb.IsChecked.Value ? (dataSource == null ? 0 : dataSource.Count) : 0;
+            SelectBomText = $"宸查�変腑 {count} 鏉�";
         }
+
+        private void RefreshSelectedCount()
+        {
+            if (dataSource == null || dataSource.Count <= 0)
+            {
+                SelectBomText = "宸查�変腑 0 鏉�";
+                return;
+            }
+            int count = dataSource.Where(e => e.selected).Count();
+            SelectBomText = $"宸查�変腑 {count} 鏉�";
+        }
+
+        /// <summary>
+        /// 鍗曚釜鐐归�変簨浠�
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void SingleCheckBox_Event(object sender, RoutedEventArgs e)
+        {
+            RefreshSelectedCount();
+        }
+
+
 
         private void Button_Click(object sender, RoutedEventArgs e)
         {
@@ -207,39 +260,34 @@
         {
             Button btn = sender as Button;
             DrawAudit da = btn.DataContext as DrawAudit;
-            string fileName = Path.GetFileName(da.d2RelativePath);
-            if (string.IsNullOrEmpty(fileName))
+            string filePath = GetRealFilePath(da.d2RelativePath);
+            if (!File.Exists(filePath))
             {
-                this.Error("鏃犳晥鏂囦欢鍚�");
+                this.Error($"鏈嶅姟鍣ㄤ腑鏈壘鍒板伐绋嬪浘鏂囦欢锛岃矾寰�:{filePath}");
                 return;
             }
-            fileName = Path.Combine(PluginSetting.Instance.SwFilePath, fileName);
-            if (!File.Exists(fileName))
-            {
-                this.Error($"鏈嶅姟鍣ㄤ腑鏈壘鍒板伐绋嬪浘鏂囦欢锛岃矾寰�:{fileName}");
-                return;
-            }
-            OpenDocMayError(fileName, (int)swDocumentTypes_e.swDocDRAWING, (int)swOpenDocOptions_e.swOpenDocOptions_ReadOnly,
+            OpenDocMayError(filePath, (int)swDocumentTypes_e.swDocDRAWING, (int)swOpenDocOptions_e.swOpenDocOptions_ReadOnly,
                 "");
+        }
+
+        private string GetRealFilePath(string dbPath)
+        {
+            string fileName = Path.GetFileName(dbPath);
+            string filePath = Path.Combine(PluginSetting.Instance.SwFilePath, fileName);
+            return filePath;
         }
 
         private void OpenDoc_Click(object sender, RoutedEventArgs e)
         {
             Button btn = sender as Button;
             DrawAudit da = btn.DataContext as DrawAudit;
-            string fileName = Path.GetFileName(da.d3RelativePath);
-            if (string.IsNullOrEmpty(fileName))
+            string filePath = GetRealFilePath(da.d3RelativePath);
+            if (!File.Exists(filePath))
             {
-                this.Error("鏃犳晥鏂囦欢鍚�");
+                this.Error($"鏈嶅姟鍣ㄤ腑鏈壘鍒板浘绾告枃浠讹紝璺緞:{filePath}");
                 return;
             }
-            fileName = Path.Combine(PluginSetting.Instance.SwFilePath, fileName);
-            if (!File.Exists(fileName))
-            {
-                this.Error($"鏈嶅姟鍣ㄤ腑鏈壘鍒板伐绋嬪浘鏂囦欢锛岃矾寰�:{fileName}");
-                return;
-            }
-            OpenDocMayError(fileName, (int)swDocumentTypes_e.swDocPART, (int)swOpenDocOptions_e.swOpenDocOptions_ReadOnly,
+            OpenDocMayError(filePath, (int)swDocumentTypes_e.swDocPART, (int)swOpenDocOptions_e.swOpenDocOptions_ReadOnly,
                  "");
         }
 
@@ -295,6 +343,23 @@
                 {
                     try
                     {
+                        string filePath = GetRealFilePath(da.d3RelativePath);
+                        if (!File.Exists(filePath))
+                        {
+                            this.Error($"鏈嶅姟鍣ㄤ腑鏈壘鍒板浘绾告枃浠讹紝璺緞:{filePath}");
+                            return;
+                        }
+
+                        double[] massData = SwDMUtil.GetMassProperty(filePath, out string errMsg);
+                        if (massData == null)
+                        {
+                            this.Error($"鑾峰彇鍥剧焊涓�鑷存�ф暟鎹け璐ワ紒{errMsg}");
+                            return;
+                        }
+                        da.fileName = Path.GetFileName(filePath);
+                        da.volume = NumberUtil.HandleMass(massData[3]);
+                        da.surfaceArea = NumberUtil.HandleMass(massData[4]);
+                        da.mass = NumberUtil.HandleMass(massData[5]);
                         da.pass = true;
                         Result<object> res = Client.PostSyncAction<object>(da, "drawAudit/complete");
                         object obj = res.HandleResult();
@@ -307,6 +372,7 @@
                     catch (Exception ex)
                     {
                         Logger.Error("Draw complete failed.", ex);
+                        this.Error($"瀹℃牳澶辫触锛亄ex.Message}");
                     }
                     finally
                     {
diff --git a/PdmSwPlugin.Main/Constant/PluginConst.cs b/PdmSwPlugin.Main/Constant/PluginConst.cs
index 3b7f1df..3961f77 100644
--- a/PdmSwPlugin.Main/Constant/PluginConst.cs
+++ b/PdmSwPlugin.Main/Constant/PluginConst.cs
@@ -3,6 +3,6 @@
     public class PluginConst
     {
         public static readonly string AppId = "DF23E96F-A469-4302-8367-7FA2F798CD09";
-        public static readonly string Version = "0.0.0.34";
+        public static readonly string Version = "0.0.0.36";
     }
 }
diff --git a/PdmSwPlugin.PDM/Model/PdmControlModel.cs b/PdmSwPlugin.PDM/Model/PdmControlModel.cs
index 5f154ab..7a71c9c 100644
--- a/PdmSwPlugin.PDM/Model/PdmControlModel.cs
+++ b/PdmSwPlugin.PDM/Model/PdmControlModel.cs
@@ -13,6 +13,27 @@
 {
     public partial class PdmControlModel : NotifyBase
     {
+        private string _SelectedBomCount = "宸查�変腑 0 鏉�";
+
+        public string SelectedBomCount
+        {
+            get => _SelectedBomCount;
+            set
+            {
+                RaiseAndSetIfChanged(ref _SelectedBomCount, value);
+            }
+        }
+
+        private string _AllBomCount = "鍏� 0 鏉�";
+
+        public string AllBomCount
+        {
+            get => _AllBomCount;
+            set
+            {
+                RaiseAndSetIfChanged(ref _AllBomCount, value);
+            }
+        }
 
         public BomTreeReader bomTreeReader { get; private set; } = new BomTreeReader();
 
@@ -23,7 +44,17 @@
         public ObservableCollection<PdmBom> BomTree
         {
             get => _bomTree;
-            set => RaiseAndSetIfChanged(ref _bomTree, value);
+            set {
+                RaiseAndSetIfChanged(ref _bomTree, value);
+                int count = CacheList != null ? CacheList.Count : 0;
+                AllBomCount = $"鍏� {count} 鏉�";
+                RefreshSelectedBomCount();
+            }
+        }
+
+        public void RefreshSelectedBomCount() {
+            int count = CacheList != null ? CacheList.Where(e=>e.selected).Count() : 0;
+            SelectedBomCount = $"宸查�変腑 {count} 鏉�";
         }
 
         public List<PdmBom> CacheList => bomTreeReader?.CacheList.ToList();
@@ -167,6 +198,7 @@
                     drawInfos.Add(partModel, drawInfo);
                 }
                 bom.drawInfo = drawInfo;
+                bom.Init();
 
                 ICollection<PdmBom> children = bom.modules;
                 if (children != null && children.Count > 0)
diff --git a/PdmSwPlugin.PDM/PdmControl.xaml b/PdmSwPlugin.PDM/PdmControl.xaml
index 30f6399..0870c68 100644
--- a/PdmSwPlugin.PDM/PdmControl.xaml
+++ b/PdmSwPlugin.PDM/PdmControl.xaml
@@ -111,6 +111,12 @@
                         <Setter Property="Foreground" Value="White"/>
                         <Setter Property="Background" Value="Gray"/>
                     </DataTrigger>
+
+                    <DataTrigger Binding="{Binding IsHistoryData}" Value="true">
+                        <Setter Property="Text" Value="鏃犻渶妫�鏌�"/>
+                        <Setter Property="Foreground" Value="White"/>
+                        <Setter Property="Background" Value="Gray"/>
+                    </DataTrigger>
                 </Style.Triggers>
             </Style>
 
@@ -119,42 +125,6 @@
                 <Setter Property="Foreground" Value="Black"/>
                 <Setter Property="Background" Value="White"/>
                 <Style.Triggers>
-                    <DataTrigger Binding="{Binding BomInfo.status}" Value="submitted">
-                        <Setter Property="Text" Value="瀹℃牳涓�"/>
-                        <Setter Property="Background" Value="Orange"/>
-                    </DataTrigger>
-
-                    <MultiDataTrigger>
-                        <MultiDataTrigger.Conditions>
-                            <Condition Binding="{Binding BomInfo.status}" Value="completed"/>
-                            <Condition Binding="{Binding auditedMd5Changed}" Value="false"/>
-                        </MultiDataTrigger.Conditions>
-                        <Setter Property="Text" Value="宸查�氳繃"/>
-                        <Setter Property="Foreground" Value="White"/>
-                        <Setter Property="Background" Value="Green"/>
-                    </MultiDataTrigger>
-
-                    <MultiDataTrigger>
-                        <MultiDataTrigger.Conditions>
-                            <Condition Binding="{Binding BomInfo.status}" Value="completed"/>
-                            <Condition Binding="{Binding auditedMd5Changed}" Value="true"/>
-                        </MultiDataTrigger.Conditions>
-                        <Setter Property="Text" Value="鏂囨。鍙樻洿"/>
-                        <Setter Property="Foreground" Value="White"/>
-                        <Setter Property="Background" Value="Blue"/>
-                    </MultiDataTrigger>
-
-                    <DataTrigger Binding="{Binding BomInfo.status}" Value="resubmitted">
-                        <Setter Property="Text" Value="閲嶆柊瀹℃牳"/>
-                        <Setter Property="Background" Value="Orange"/>
-                    </DataTrigger>
-
-                    <DataTrigger Binding="{Binding BomInfo.status}" Value="rejected">
-                        <Setter Property="Text" Value="鏈�氳繃"/>
-                        <Setter Property="Foreground" Value="White"/>
-                        <Setter Property="Background" Value="Red"/>
-                    </DataTrigger>
-
                     <DataTrigger Binding="{Binding produceWay}" Value="妯$粍">
                         <Setter Property="Text" Value="鏃犻渶瀹℃牳"/>
                         <Setter Property="Foreground" Value="White"/>
@@ -165,6 +135,62 @@
                         <Setter Property="Text" Value="鏃犻渶瀹℃牳"/>
                         <Setter Property="Foreground" Value="White"/>
                         <Setter Property="Background" Value="Gray"/>
+                    </DataTrigger>
+
+                    <MultiDataTrigger>
+                        <MultiDataTrigger.Conditions>
+                            <Condition Binding="{Binding drawInfo.HistoryData}" Value="true"/>
+                            <Condition Binding="{Binding localDocChanged}" Value="false"/>
+                        </MultiDataTrigger.Conditions>
+                        <Setter Property="Text" Value="鏃犻渶瀹℃牳"/>
+                        <Setter Property="Foreground" Value="White"/>
+                        <Setter Property="Background" Value="Gray"/>
+                    </MultiDataTrigger>
+
+                    <MultiDataTrigger>
+                        <MultiDataTrigger.Conditions>
+                            <Condition Binding="{Binding drawInfo.HistoryData}" Value="true"/>
+                            <Condition Binding="{Binding localDocChanged}" Value="true"/>
+                        </MultiDataTrigger.Conditions>
+                        <Setter Property="Text" Value="鍘嗗彶鍥剧焊鍙樻洿"/>
+                        <Setter Property="Foreground" Value="White"/>
+                        <Setter Property="Background" Value="Blue"/>
+                    </MultiDataTrigger>
+
+                    <MultiDataTrigger>
+                        <MultiDataTrigger.Conditions>
+                            <Condition Binding="{Binding BomInfo.status}" Value="completed"/>
+                            <Condition Binding="{Binding localDocChanged}" Value="false"/>
+                        </MultiDataTrigger.Conditions>
+                        <Setter Property="Text" Value="宸查�氳繃"/>
+                        <Setter Property="Foreground" Value="White"/>
+                        <Setter Property="Background" Value="Green"/>
+                    </MultiDataTrigger>
+
+                    <MultiDataTrigger>
+                        <MultiDataTrigger.Conditions>
+                            <Condition Binding="{Binding BomInfo.status}" Value="completed"/>
+                            <Condition Binding="{Binding localDocChanged}" Value="true"/>
+                        </MultiDataTrigger.Conditions>
+                        <Setter Property="Text" Value="鏂囨。鍙樻洿"/>
+                        <Setter Property="Foreground" Value="White"/>
+                        <Setter Property="Background" Value="Blue"/>
+                    </MultiDataTrigger>
+
+                    <DataTrigger Binding="{Binding BomInfo.status}" Value="submitted">
+                        <Setter Property="Text" Value="瀹℃牳涓�"/>
+                        <Setter Property="Background" Value="Orange"/>
+                    </DataTrigger>
+
+                    <DataTrigger Binding="{Binding BomInfo.status}" Value="resubmitted">
+                        <Setter Property="Text" Value="閲嶆柊瀹℃牳"/>
+                        <Setter Property="Background" Value="Orange"/>
+                    </DataTrigger>
+
+                    <DataTrigger Binding="{Binding BomInfo.status}" Value="rejected">
+                        <Setter Property="Text" Value="鏈�氳繃"/>
+                        <Setter Property="Foreground" Value="White"/>
+                        <Setter Property="Background" Value="Red"/>
                     </DataTrigger>
                 </Style.Triggers>
             </Style>
@@ -308,6 +334,7 @@
                         <DataGridTemplateColumn.CellTemplate>
                             <DataTemplate>
                                 <CheckBox DataContext="{Binding Data}" 
+                                          Checked="SingleCheckBox_Event" Unchecked="SingleCheckBox_Event"
                                           IsEnabled="{Binding checkBoxEnabled}"
                                           IsChecked="{Binding selected}"/>
                             </DataTemplate>
@@ -330,7 +357,7 @@
                         <DataGridTemplateColumn.CellTemplate>
                             <DataTemplate>
                                 <CheckBox DataContext="{Binding Data}"
-                                    IsChecked="{Binding inBom}"/>
+                                    IsChecked="{Binding ExcludeFromBOM}"/>
                             </DataTemplate>
                         </DataGridTemplateColumn.CellTemplate>
                     </DataGridTemplateColumn>
@@ -394,7 +421,7 @@
                         </DataGridTemplateColumn.CellTemplate>
                     </DataGridTemplateColumn>
 
-                    <DataGridTemplateColumn Header="瀹℃壒鐘舵��" Width="60" IsReadOnly="True" pm:PermissionUtil.HasPermission="PDM:PLUGIN:CONTROL:PDM:RuleCheckAndApprove">
+                    <DataGridTemplateColumn Header="瀹℃壒鐘舵��" Width="80" IsReadOnly="True" pm:PermissionUtil.HasPermission="PDM:PLUGIN:CONTROL:PDM:RuleCheckAndApprove">
                         <DataGridTemplateColumn.CellTemplate>
                             <DataTemplate>
                                 <TextBlock Style="{StaticResource drawStatusSlot}" DataContext="{Binding Data}"
@@ -411,11 +438,11 @@
 
             <StatusBar Grid.Row="2" >
                 <StatusBarItem >
-                    <TextBox x:Name="activeDocPath" IsReadOnly="True" Style="{StaticResource StatusBarTextBox}" Text="{Binding ActiveDocPath}"/>
+                    <TextBox x:Name="activeDocPath" IsReadOnly="True" Style="{StaticResource StatusBarTextBox}" Text="{Binding SelectedBomCount}"/>
                 </StatusBarItem>
                 <Separator/>
                 <StatusBarItem>
-                    <TextBox x:Name="statusBarText" IsReadOnly="True" Style="{StaticResource StatusBarTextBox}" Text="{Binding StatusBarText}"/>
+                    <TextBox x:Name="statusBarText" IsReadOnly="True" Style="{StaticResource StatusBarTextBox}" Text="{Binding AllBomCount}"/>
                 </StatusBarItem>
             </StatusBar>
         </Grid>
diff --git a/PdmSwPlugin.PDM/PdmControl.xaml.cs b/PdmSwPlugin.PDM/PdmControl.xaml.cs
index 909cb44..d4b28ac 100644
--- a/PdmSwPlugin.PDM/PdmControl.xaml.cs
+++ b/PdmSwPlugin.PDM/PdmControl.xaml.cs
@@ -34,6 +34,7 @@
 using static PdmSwPlugin.PDM.Event.PdmEvent;
 using System.Windows.Interop;
 using PdmSwPlugin.Commmon.Control;
+using PdmSwPlugin.Common.Entity.System;
 
 namespace PdmSwPlugin.PDM
 {
@@ -856,6 +857,12 @@
             List<PdmBom> treeBoms = model.bomTreeReader.TreeList.ToList();
             if (treeBoms == null || treeBoms.Count <= 0) return;
             treeBoms[0].selected = cb.IsChecked.Value;
+            model.RefreshSelectedBomCount();
+        }
+
+        private void SingleCheckBox_Event(object sender, RoutedEventArgs e)
+        {
+            model.RefreshSelectedBomCount();
         }
 
         /// <summary>
@@ -898,6 +905,11 @@
             return result;
         }
 
+        /// <summary>
+        /// 澶勭悊璐ㄩ噺锛屼繚鐣�6浣嶅皬鏁�
+        /// </summary>
+        /// <param name="number"></param>
+        /// <returns></returns>
         public static string HandleMass(double number)
         {
             return Math.Round(number, 6).ToString("0.000000");
@@ -925,6 +937,7 @@
             allProperties["鏂囦欢鍚庣紑"] = Path.GetExtension(filepath);
             // 鏂囦欢璺緞
             allProperties["鏂囦欢璺緞"] = filepath;
+            allProperties["鍘嗗彶鍥剧焊"] = drawInfo.HistoryData.ToString();
             string drawFilePath = filepath.Replace(Path.GetExtension(filepath), ".slddrw");
             bool drawExists = File.Exists(drawFilePath);
             // 宸ョ▼鍥句竴鑷存�ф鏌�
@@ -988,6 +1001,10 @@
             return drawInfo;
         }
 
+        /// <summary>
+        /// 鑾峰彇鍏ㄩ儴灞炴��
+        /// </summary>
+        /// <param name="param"></param>
         public void GetAll(object param)
         {
             object[] datas = param as object[];
@@ -1055,14 +1072,16 @@
             Dictionary<string, DrawInfo> checkResult = result.HandleResult();
             foreach (string key in properties.Keys)
             {
-                if (!checkResult[key].checkRuleOk)
-                {
-                    allSuccess = false;
-                }
                 properties[key].checkRuleResult = checkResult[key].checkRuleResult;
                 properties[key].errMessages = checkResult[key].errMessages;
                 var msgs = checkResult[key].errMessages;
-                if (msgs != null && msgs.Count > 0)
+                if (!properties[key].HistoryData && !checkResult[key].checkRuleOk)
+                {
+                    // 涓嶆槸鍘嗗彶鏁版嵁骞朵笖鏈夋湭閫氳繃鐨勶紝鏍囪涓篺alse
+                    allSuccess = false;
+                }
+                
+                if (!properties[key].HistoryData && msgs != null && msgs.Count > 0)
                 {
                     foreach (string msg in msgs)
                     {
@@ -1148,6 +1167,8 @@
             {
                 try
                 {
+                    // 瀵规墍鏈夌殑BOM鍋氳鍒欐鏌�
+                    bool allSuccess = DoCheckRule(out _);
                     // 鍏堣幏鍙栨墍鏈夌殑BOM
                     HashSet<string> cache = new HashSet<string>();
                     // 鐒跺悗绛涢�夐�変腑鐨凚OM
@@ -1156,20 +1177,13 @@
                     {   // 濡傛灉娌℃湁閫変腑鐨凚OM锛岄偅灏辨槸鎵�鏈塀OM
                         boms = model.bomTreeReader.CacheList.ToList();
                     }
-                    // 绛涢�夋湁鍥剧焊鐨勶紝鏈彁浜ょ殑锛岄浂浠朵綋鍔犲伐浠惰繘琛屼笂浼�
+                    // 绛涢�夋湁鍥剧焊鐨勶紝鍦ㄧ墿鏂欐槑缁嗕腑锛屾湭鎻愪氦鐨勶紝鍦ㄧ墿鏂欐槑缁嗚〃涓殑闆朵欢浣撳姞宸ヤ欢杩涜涓婁紶
                     boms = boms.Where(b =>
                     {
                         if (!cache.Contains(b.partModel))
                         {
                             cache.Add(b.partModel);
-                            // 鏂囨。瀛樺湪鐨�
-                            return b.lost != true
-                            // && b.drawingType == (int)swDocumentTypes_e.swDocPART
-                            // 鏄姞宸ヤ欢鐨�
-                            && b.produceWay == "鍔犲伐浠�"
-                            // 鏈鎻愪氦鐨�
-                            && (b.drawStatus != "submitted" && b.drawStatus != "resubmitted")
-                            && (b.drawStatus != "completed" || b.auditedMd5Changed);
+                            return b.NeedAudit;
                         }
                         return false;
                     }).ToList();
@@ -1179,12 +1193,11 @@
                         this.Warning("鍙湁鏈彁浜よ繃鎴栧彂鐢熷彉鏇寸殑鍔犲伐浠跺浘绾稿彲浠ヨ繘琛屽鏍�");
                         return;
                     }
-                    // 瀵规墍鏈夌殑BOM鍋氳鍒欐鏌�
-                    bool allSuccess = DoCheckRule(out _);
+
                     if (!allSuccess)
                     {
                         // 濡傛灉鏈夋湭閫氳繃鐨勫浘绾革紝闇�瑕佹彁绀�
-                        var err = boms.Where(b => !b.checkRuleOk).ToList();
+                        var err = boms.Where(b => !b.IsHistoryData && !b.checkRuleOk).ToList();
                         if (err != null && err.Count > 0)
                         {
                             List<string> msgs = new List<string>();
@@ -1192,6 +1205,7 @@
                             {
                                 if (ee.drawInfo.errMessages == null)
                                 {
+                                    msgs.Add($"鐗╂枡銆恵ee.partNo}銆戞湭閫氳繃瑙勫垯妫�鏌ワ紒");
                                     continue;
                                 }
                                 foreach (string msg in ee.drawInfo.errMessages)
@@ -1207,18 +1221,28 @@
                             });
                             return;
                         }
-
-                        // 涓嶇浉鍏崇殑瑙勫垯妫�鏌ヤ笉閫氳繃灏辨棤鎵�璋撲簡
-                        /*int res = SwApp.SendMsgToUser2("鏈夋湭閫氳繃瑙勫垯妫�鏌ョ殑鍥剧焊锛屾槸鍚︾户缁紵", (int)swMessageBoxIcon_e.swMbWarning,
-                            (int)swMessageBoxBtn_e.swMbOkCancel);
-
-                        if (res == (int)swMessageBoxResult_e.swMbHitCancel)
-                        {
-                            return;
-                        }*/
                     }
 
                     // 閮介�氳繃浜嗭紝鍐嶈繘琛屽鎵�
+
+                    // 鍏堢敵璇峰崟鍙�
+                    DrawAuditOrder daOrder = new DrawAuditOrder
+                    {
+                        requestUserId = PdmUser.LoginUser.id,
+                        requestUser = PdmUser.LoginUser.realname
+                    };
+                    try
+                    {
+                        Result<DrawAuditOrder> res = Client.PostSyncAction<DrawAuditOrder>(daOrder, "drawAudit/order/create");
+                        daOrder = res.HandleResult();
+                    }
+                    catch (Exception ex)
+                    {
+                        Logger.Error($"璇锋眰瀹℃壒鍗曞彿澶辫触", ex);
+                        this.Error($"璇锋眰瀹℃壒鍗曞彿澶辫触! {ex.Message}");
+                        return;
+                    }
+
                     ConcurrentQueue<string> errs = new ConcurrentQueue<string>();
                     CountdownEvent counter = new CountdownEvent(boms.Count);
                     foreach (PdmBom bom in boms)
@@ -1243,6 +1267,7 @@
                                 MultipartFormDataContent httpContent = new MultipartFormDataContent();
                                 httpContent.Add(new StringContent(bom.partNo), "materialCode");
                                 httpContent.Add(new StringContent(bom.partNo), "materialModel");
+                                httpContent.Add(new StringContent(daOrder.id), "orderId");
                                 fileInfo = new FileInfo(d3FilePath);
                                 FileInfo file2Info = new FileInfo(d2FilePath);
                                 httpContent.Add(new ByteArrayContent(FileUtil.toByteArray(d3FilePath)), "d3File", fileInfo.Name);
@@ -1387,11 +1412,11 @@
                 if (bom.checkRuleResult == 3)
                 {
                     string title = string.Empty;
-                    if (bom.historyData)
+                    if (bom.IsHistoryData)
                     {
                         title = "鍘嗗彶鍥剧焊鏃犻渶妫�鏌�";
                     }
-                    else if (bom.inBom)
+                    else if (bom.ExcludeFromBOM)
                     {
                         title = "涓嶅湪鐗╂枡鏄庣粏琛ㄤ腑鐨勭墿鏂欐棤闇�妫�鏌�";
                     }
@@ -1432,6 +1457,16 @@
                     if (bom.produceWay == "妯$粍" || bom.produceWay == "鏍囧噯浠�")
                     {
                         this.Info($"{bom.produceWay}鏃犻渶瀹℃牳");
+                        return;
+                    }
+                    if (bom.IsHistoryData && !bom.localDocChanged)
+                    {
+                        this.Info("鍘嗗彶鍥剧焊鏃犻渶瀹℃牳");
+                        return;
+                    }
+                    if (bom.IsHistoryData && bom.localDocChanged)
+                    {
+                        this.Info("鍘嗗彶鍥剧焊涓�鑷存�у彉鏇达紝闇�瀹℃牳");
                         return;
                     }
                     this.Warning("璇ュ浘绾告湭瀹℃牳");
@@ -1593,31 +1628,8 @@
                         RefreshBomList(SwApp.IActiveDoc2);
                         DoCheckRule(out _);
                         // 绛涢�夋墍鏈夊湪鐗╂枡鏄庣粏琛ㄤ腑锛屼笉璺宠繃妫�鏌ュ苟涓旀鏌ユ湭閫氳繃鐨勶紝绫诲瀷鏄姞宸ヤ欢鐨勬湭閫氳繃瀹℃牳鐨勶紝鍔犲伐浠跺鏍搁�氳繃鐨勪絾鍥剧焊鍙樻洿鐨�
-                        List<string> errs = model.bomTreeReader.CacheList.Where(b =>
-                            !b.inBom
-                            && (
-                                (!b.skipCheck && !b.checkRuleOk)
-                                || (b.produceWay == "鍔犲伐浠�" && b.drawStatus != "completed")
-                                || (b.produceWay == "鍔犲伐浠�" && b.drawStatus == "completed" && b.auditedMd5Changed)
-                            )
-                        ).Select(b =>
-                        {
-                            string msg = $"銆恵b.partModel}銆�";
-                            if (!b.skipCheck && !b.checkRuleOk)
-                            {
-                                msg += "鏈�氳繃瑙勫垯妫�鏌�;";
-                            }
-                            if (b.produceWay == "鍔犲伐浠�" && b.drawStatus != "completed")
-                            {
-                                msg += "鏈�氳繃瀹℃牳;";
-                            }
-                            if (b.produceWay == "鍔犲伐浠�" && b.drawStatus == "completed" && b.auditedMd5Changed)
-                            {
-                                msg += "鍥剧焊鍙樻洿鍚庢湭閲嶆柊瀹℃牳";
-                            }
-                            return msg;
-                        }
-                        ).ToList();
+                        List<string> errs = model.bomTreeReader.CacheList.Select(b => b.NeedStopCheckIn())
+                        .Where(s => s != null).ToList();
 
                         if (errs != null && errs.Count > 0)
                         {
diff --git a/SetupScript/.vs/SetupScript.csproj.dtbcache.json b/SetupScript/.vs/SetupScript.csproj.dtbcache.json
deleted file mode 100644
index 6505a7b..0000000
--- a/SetupScript/.vs/SetupScript.csproj.dtbcache.json
+++ /dev/null
@@ -1 +0,0 @@
-{"RootPath":"C:\\Users\\administrator.SKONDA\\Desktop\\SwPlugin\\SetupScript","ProjectFileName":"SetupScript.csproj","Configuration":"Debug|AnyCPU","FrameworkPath":"","Sources":[],"References":[{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\mscorlib.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Core.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""}],"Analyzers":[],"Outputs":[{"OutputItemFullPath":"C:\\Users\\administrator.SKONDA\\Desktop\\SwPlugin\\SetupScript\\bin\\Debug\\SetupScript.exe","OutputItemRelativePath":"SetupScript.exe"},{"OutputItemFullPath":"C:\\Users\\administrator.SKONDA\\Desktop\\SwPlugin\\SetupScript\\bin\\Debug\\SetupScript.pdb","OutputItemRelativePath":"SetupScript.pdb"}],"CopyToOutputEntries":[]}
\ No newline at end of file
diff --git a/SetupScript/SetupScript.csproj b/SetupScript/SetupScript.csproj
deleted file mode 100644
index 2c051eb..0000000
--- a/SetupScript/SetupScript.csproj
+++ /dev/null
@@ -1,39 +0,0 @@
-锘�<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
-  <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProjectGuid>{AAD001AD-F127-4D75-A4ED-39B3581D5BB8}</ProjectGuid>
-    <OutputType>Exe</OutputType>
-    <RootNamespace>SetupScript</RootNamespace>
-    <AssemblyName>SetupScript</AssemblyName>
-    <TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
-    <Deterministic>true</Deterministic>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <PlatformTarget>AnyCPU</PlatformTarget>
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\Debug\</OutputPath>
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <PlatformTarget>AnyCPU</PlatformTarget>
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\Release\</OutputPath>
-    <DefineConstants>TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-  </PropertyGroup>
-  <ItemGroup>
-    <None Include="SetupScript.iss" />
-  </ItemGroup>
-  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
-</Project>
\ No newline at end of file

--
Gitblit v1.9.1