DFS_Shuo_Chen 1 hafta önce
ebeveyn
işleme
1993ab18fe
26 değiştirilmiş dosya ile 467 ekleme ve 225 silme
  1. BIN
      mCardSystem/.vs/mCardSystem/CopilotIndices/17.13.444.19527/CodeChunks.db
  2. BIN
      mCardSystem/.vs/mCardSystem/CopilotIndices/17.13.444.19527/CodeChunks.db-wal
  3. BIN
      mCardSystem/.vs/mCardSystem/CopilotIndices/17.13.444.19527/SemanticSymbols.db
  4. BIN
      mCardSystem/.vs/mCardSystem/CopilotIndices/17.13.444.19527/SemanticSymbols.db-wal
  5. BIN
      mCardSystem/.vs/mCardSystem/v17/.suo
  6. 124 92
      mCardSystem/.vs/mCardSystem/v17/DocumentLayout.backup.json
  7. 126 95
      mCardSystem/.vs/mCardSystem/v17/DocumentLayout.json
  8. 10 1
      mCardSystem/mCardSystem/CardCancel.Designer.cs
  9. 63 3
      mCardSystem/mCardSystem/CardCancel.cs
  10. 5 0
      mCardSystem/mCardSystem/IssueCard.Designer.cs
  11. 50 6
      mCardSystem/mCardSystem/IssueCard.cs
  12. 21 16
      mCardSystem/mCardSystem/LoginDlg.Designer.cs
  13. 52 7
      mCardSystem/mCardSystem/LoginDlg.cs
  14. 1 1
      mCardSystem/mCardSystem/Main.Designer.cs
  15. 13 2
      mCardSystem/mCardSystem/WebAPI.cs
  16. BIN
      mCardSystem/mCardSystem/bin/x86/Debug/net8.0-windows/mCardSystem.dll
  17. BIN
      mCardSystem/mCardSystem/bin/x86/Debug/net8.0-windows/mCardSystem.exe
  18. BIN
      mCardSystem/mCardSystem/bin/x86/Debug/net8.0-windows/mCardSystem.pdb
  19. BIN
      mCardSystem/mCardSystem/obj/x86/Debug/net8.0-windows/apphost.exe
  20. 1 1
      mCardSystem/mCardSystem/obj/x86/Debug/net8.0-windows/mCardSystem.AssemblyInfo.cs
  21. 1 1
      mCardSystem/mCardSystem/obj/x86/Debug/net8.0-windows/mCardSystem.AssemblyInfoInputs.cache
  22. BIN
      mCardSystem/mCardSystem/obj/x86/Debug/net8.0-windows/mCardSystem.csproj.GenerateResource.cache
  23. BIN
      mCardSystem/mCardSystem/obj/x86/Debug/net8.0-windows/mCardSystem.dll
  24. BIN
      mCardSystem/mCardSystem/obj/x86/Debug/net8.0-windows/mCardSystem.pdb
  25. BIN
      mCardSystem/mCardSystem/obj/x86/Debug/net8.0-windows/ref/mCardSystem.dll
  26. BIN
      mCardSystem/mCardSystem/obj/x86/Debug/net8.0-windows/refint/mCardSystem.dll

BIN
mCardSystem/.vs/mCardSystem/CopilotIndices/17.13.444.19527/CodeChunks.db


BIN
mCardSystem/.vs/mCardSystem/CopilotIndices/17.13.444.19527/CodeChunks.db-wal


BIN
mCardSystem/.vs/mCardSystem/CopilotIndices/17.13.444.19527/SemanticSymbols.db


BIN
mCardSystem/.vs/mCardSystem/CopilotIndices/17.13.444.19527/SemanticSymbols.db-wal


BIN
mCardSystem/.vs/mCardSystem/v17/.suo


+ 124 - 92
mCardSystem/.vs/mCardSystem/v17/DocumentLayout.backup.json

@@ -3,36 +3,50 @@
   "WorkspaceRootPath": "C:\\bitbucket\\mCardSystem\\mCardSystem\\",
   "Documents": [
     {
-      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\homepage.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
-      "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\homepage.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|C:\\bitbucket\\mCardSystem\\mCardSystem\\mcardsystem\\main.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
-      "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\main.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\issuecard.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\issuecard.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|C:\\bitbucket\\mCardSystem\\mCardSystem\\mcardsystem\\cardcancel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
+      "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\cardcancel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form"
     },
     {
       "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\cardcancel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\cardcancel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
-      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|C:\\bitbucket\\mCardSystem\\mCardSystem\\mcardsystem\\cardcancel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
-      "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\cardcancel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form"
+      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\cardcancel.designer.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\cardcancel.designer.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
       "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\webapi.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\webapi.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
+    {
+      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\issuecard.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
+      "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\issuecard.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\issuecard.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\issuecard.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\logindlg.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
+      "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\logindlg.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Users\\10049567\\AppData\\Local\\Temp\\.vsdbgsrc\\c6e59db4786e48818037d905b30f9df5320b3d6dafe4b1c5074dae5239cf06fb\\Thread.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
     {
       "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\logindlg.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\logindlg.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
-      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|C:\\bitbucket\\mCardSystem\\mCardSystem\\mcardsystem\\logindlg.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
-      "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\logindlg.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form"
+      "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Users\\10049567\\AppData\\Local\\Temp\\.vsdbgsrc\\f1b4521b015c61e76c58c4250a7093f1b1bb2cf262a9f100c447a018527c2958\\TextBox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|C:\\bitbucket\\mCardSystem\\mCardSystem\\mcardsystem\\main.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
+      "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\main.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form"
     },
     {
       "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\cloudresponse.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
@@ -42,14 +56,6 @@
       "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\main.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\main.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
-    {
-      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\cardcancel.designer.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\cardcancel.designer.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
     {
       "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\tool.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\tool.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
@@ -93,36 +99,49 @@
       "DocumentGroups": [
         {
           "DockedWidth": 307,
-          "SelectedChildIndex": 0,
+          "SelectedChildIndex": 3,
           "Children": [
             {
               "$type": "Document",
-              "DocumentIndex": 0,
-              "Title": "HomePage.cs [\u8BBE\u8BA1]",
-              "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\HomePage.cs",
-              "RelativeDocumentMoniker": "mCardSystem\\HomePage.cs",
-              "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\HomePage.cs [\u8BBE\u8BA1]",
-              "RelativeToolTip": "mCardSystem\\HomePage.cs [\u8BBE\u8BA1]",
+              "DocumentIndex": 1,
+              "Title": "CardCancel.cs",
+              "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\CardCancel.cs",
+              "RelativeDocumentMoniker": "mCardSystem\\CardCancel.cs",
+              "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\CardCancel.cs",
+              "RelativeToolTip": "mCardSystem\\CardCancel.cs",
+              "ViewState": "AgIAADQAAAAAAAAAAAAgwDwAAAAbAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-01-04T07:51:50.567Z",
+              "WhenOpened": "2025-12-18T03:52:52.665Z",
+              "EditorCaption": ""
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 4,
+              "Title": "IssueCard.cs [\u8BBE\u8BA1]",
+              "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\IssueCard.cs",
+              "RelativeDocumentMoniker": "mCardSystem\\IssueCard.cs",
+              "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\IssueCard.cs [\u8BBE\u8BA1]",
+              "RelativeToolTip": "mCardSystem\\IssueCard.cs [\u8BBE\u8BA1]",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-01-05T03:42:47.661Z",
               "EditorCaption": " [\u8BBE\u8BA1]"
             },
             {
               "$type": "Document",
-              "DocumentIndex": 5,
+              "DocumentIndex": 3,
               "Title": "WebAPI.cs",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\WebAPI.cs",
               "RelativeDocumentMoniker": "mCardSystem\\WebAPI.cs",
               "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\WebAPI.cs",
               "RelativeToolTip": "mCardSystem\\WebAPI.cs",
-              "ViewState": "AgIAAJAAAAAAAAAAAAAgwJsAAAAQAAAAAAAAAA==",
+              "ViewState": "AgIAAIkAAAAAAAAAAAAQwC4AAAASAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
               "WhenOpened": "2025-12-25T09:33:57.723Z",
               "EditorCaption": ""
             },
             {
               "$type": "Document",
-              "DocumentIndex": 4,
+              "DocumentIndex": 0,
               "Title": "CardCancel.cs [\u8BBE\u8BA1]",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\CardCancel.cs",
               "RelativeDocumentMoniker": "mCardSystem\\CardCancel.cs",
@@ -134,30 +153,69 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 2,
+              "DocumentIndex": 9,
+              "Title": "LoginDlg.cs",
+              "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\LoginDlg.cs",
+              "RelativeDocumentMoniker": "mCardSystem\\LoginDlg.cs",
+              "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\LoginDlg.cs",
+              "RelativeToolTip": "mCardSystem\\LoginDlg.cs",
+              "ViewState": "AgIAACoAAAAAAAAAAAAIwDEAAAAIAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2025-12-25T09:45:43.598Z",
+              "EditorCaption": ""
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 6,
               "Title": "IssueCard.cs",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\IssueCard.cs",
               "RelativeDocumentMoniker": "mCardSystem\\IssueCard.cs",
               "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\IssueCard.cs",
               "RelativeToolTip": "mCardSystem\\IssueCard.cs",
-              "ViewState": "AgIAAGwAAAAAAAAAAAAcwHYAAAAQAAAAAAAAAA==",
+              "ViewState": "AgIAAIwAAAAAAAAAAAAAAI0AAAAIAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
               "WhenOpened": "2025-12-18T03:52:22.733Z",
               "EditorCaption": ""
             },
             {
               "$type": "Document",
-              "DocumentIndex": 11,
+              "DocumentIndex": 5,
+              "Title": "Program.cs",
+              "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\Program.cs",
+              "RelativeDocumentMoniker": "mCardSystem\\Program.cs",
+              "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\Program.cs",
+              "RelativeToolTip": "mCardSystem\\Program.cs",
+              "ViewState": "AgIAAAsAAAAAAAAAAAAcwCoAAAAUAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2025-12-17T03:12:41.93Z",
+              "EditorCaption": ""
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 2,
               "Title": "CardCancel.Designer.cs",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\CardCancel.Designer.cs",
               "RelativeDocumentMoniker": "mCardSystem\\CardCancel.Designer.cs",
               "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\CardCancel.Designer.cs",
               "RelativeToolTip": "mCardSystem\\CardCancel.Designer.cs",
-              "ViewState": "AgIAAEsAAAAAAAAAAAAiwFQAAAAlAAAAAAAAAA==",
+              "ViewState": "AgIAAHQAAAAAAAAAAADwv3wAAAAeAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
               "WhenOpened": "2026-01-04T07:04:46.237Z",
               "EditorCaption": ""
             },
+            {
+              "$type": "Document",
+              "DocumentIndex": 8,
+              "Title": "Thread.cs",
+              "DocumentMoniker": "C:\\Users\\10049567\\AppData\\Local\\Temp\\.vsdbgsrc\\c6e59db4786e48818037d905b30f9df5320b3d6dafe4b1c5074dae5239cf06fb\\Thread.cs",
+              "RelativeDocumentMoniker": "..\\..\\..\\Users\\10049567\\AppData\\Local\\Temp\\.vsdbgsrc\\c6e59db4786e48818037d905b30f9df5320b3d6dafe4b1c5074dae5239cf06fb\\Thread.cs",
+              "ToolTip": "C:\\Users\\10049567\\AppData\\Local\\Temp\\.vsdbgsrc\\c6e59db4786e48818037d905b30f9df5320b3d6dafe4b1c5074dae5239cf06fb\\Thread.cs [\u53EA\u8BFB]",
+              "RelativeToolTip": "..\\..\\..\\Users\\10049567\\AppData\\Local\\Temp\\.vsdbgsrc\\c6e59db4786e48818037d905b30f9df5320b3d6dafe4b1c5074dae5239cf06fb\\Thread.cs [\u53EA\u8BFB]",
+              "ViewState": "AgIAAHYBAAAAAAAAAAAgwIEBAAACAAAAAQAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-01-05T03:45:56.933Z",
+              "EditorCaption": " [\u53EA\u8BFB]"
+            },
             {
               "$type": "Document",
               "DocumentIndex": 7,
@@ -167,38 +225,25 @@
               "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\LoginDlg.cs [\u8BBE\u8BA1]",
               "RelativeToolTip": "mCardSystem\\LoginDlg.cs [\u8BBE\u8BA1]",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-12-26T09:46:52.091Z",
+              "WhenOpened": "2026-01-05T03:50:57.071Z",
               "EditorCaption": " [\u8BBE\u8BA1]"
             },
             {
               "$type": "Document",
-              "DocumentIndex": 6,
-              "Title": "LoginDlg.cs",
-              "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\LoginDlg.cs",
-              "RelativeDocumentMoniker": "mCardSystem\\LoginDlg.cs",
-              "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\LoginDlg.cs",
-              "RelativeToolTip": "mCardSystem\\LoginDlg.cs",
-              "ViewState": "AgIAABgAAAAAAAAAAADwvxwAAAAAAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-12-25T09:45:43.598Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 8,
-              "Title": "CloudResponse.cs",
-              "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\CloudResponse.cs",
-              "RelativeDocumentMoniker": "mCardSystem\\CloudResponse.cs",
-              "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\CloudResponse.cs",
-              "RelativeToolTip": "mCardSystem\\CloudResponse.cs",
-              "ViewState": "AgIAAEcAAAAAAAAAAAAqwE8AAAAFAAAAAAAAAA==",
+              "DocumentIndex": 10,
+              "Title": "TextBox.cs",
+              "DocumentMoniker": "C:\\Users\\10049567\\AppData\\Local\\Temp\\.vsdbgsrc\\f1b4521b015c61e76c58c4250a7093f1b1bb2cf262a9f100c447a018527c2958\\TextBox.cs",
+              "RelativeDocumentMoniker": "..\\..\\..\\Users\\10049567\\AppData\\Local\\Temp\\.vsdbgsrc\\f1b4521b015c61e76c58c4250a7093f1b1bb2cf262a9f100c447a018527c2958\\TextBox.cs",
+              "ToolTip": "C:\\Users\\10049567\\AppData\\Local\\Temp\\.vsdbgsrc\\f1b4521b015c61e76c58c4250a7093f1b1bb2cf262a9f100c447a018527c2958\\TextBox.cs [\u53EA\u8BFB]",
+              "RelativeToolTip": "..\\..\\..\\Users\\10049567\\AppData\\Local\\Temp\\.vsdbgsrc\\f1b4521b015c61e76c58c4250a7093f1b1bb2cf262a9f100c447a018527c2958\\TextBox.cs [\u53EA\u8BFB]",
+              "ViewState": "AgIAAIYBAAAAAAAAAAAgwJEBAAADAAAAAQAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-12-25T09:38:39.007Z",
-              "EditorCaption": ""
+              "WhenOpened": "2026-01-05T03:46:02.81Z",
+              "EditorCaption": " [\u53EA\u8BFB]"
             },
             {
               "$type": "Document",
-              "DocumentIndex": 1,
+              "DocumentIndex": 11,
               "Title": "Main.cs [\u8BBE\u8BA1]",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\Main.cs",
               "RelativeDocumentMoniker": "mCardSystem\\Main.cs",
@@ -210,20 +255,20 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 3,
-              "Title": "CardCancel.cs",
-              "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\CardCancel.cs",
-              "RelativeDocumentMoniker": "mCardSystem\\CardCancel.cs",
-              "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\CardCancel.cs",
-              "RelativeToolTip": "mCardSystem\\CardCancel.cs",
-              "ViewState": "AgIAAJIAAAAAAAAAAAAgwJYAAAARAAAAAAAAAA==",
+              "DocumentIndex": 12,
+              "Title": "CloudResponse.cs",
+              "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\CloudResponse.cs",
+              "RelativeDocumentMoniker": "mCardSystem\\CloudResponse.cs",
+              "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\CloudResponse.cs",
+              "RelativeToolTip": "mCardSystem\\CloudResponse.cs",
+              "ViewState": "AgIAAEcAAAAAAAAAAAAqwE8AAAAFAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-12-18T03:52:52.665Z",
+              "WhenOpened": "2025-12-25T09:38:39.007Z",
               "EditorCaption": ""
             },
             {
               "$type": "Document",
-              "DocumentIndex": 12,
+              "DocumentIndex": 14,
               "Title": "Tool.cs",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\Tool.cs",
               "RelativeDocumentMoniker": "mCardSystem\\Tool.cs",
@@ -236,20 +281,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 10,
-              "Title": "Program.cs",
-              "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\Program.cs",
-              "RelativeDocumentMoniker": "mCardSystem\\Program.cs",
-              "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\Program.cs",
-              "RelativeToolTip": "mCardSystem\\Program.cs",
-              "ViewState": "AgIAAEcAAAAAAAAAAAAqwE0AAAAuAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-12-17T03:12:41.93Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 9,
+              "DocumentIndex": 13,
               "Title": "Main.cs",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\Main.cs",
               "RelativeDocumentMoniker": "mCardSystem\\Main.cs",
@@ -262,7 +294,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 13,
+              "DocumentIndex": 15,
               "Title": "ChangePassword.cs",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\ChangePassword.cs",
               "RelativeDocumentMoniker": "mCardSystem\\ChangePassword.cs",
@@ -274,7 +306,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 14,
+              "DocumentIndex": 16,
               "Title": "HttpService.cs",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\HttpService.cs",
               "RelativeDocumentMoniker": "mCardSystem\\HttpService.cs",
@@ -287,7 +319,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 16,
+              "DocumentIndex": 18,
               "Title": "HomePage.cs",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\HomePage.cs",
               "RelativeDocumentMoniker": "mCardSystem\\HomePage.cs",
@@ -300,7 +332,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 15,
+              "DocumentIndex": 17,
               "Title": "Logger.cs",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\Logger.cs",
               "RelativeDocumentMoniker": "mCardSystem\\Logger.cs",
@@ -312,7 +344,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 17,
+              "DocumentIndex": 19,
               "Title": "Microsoft.Common.CurrentVersion.targets",
               "DocumentMoniker": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\MSBuild\\Current\\Bin\\amd64\\Microsoft.Common.CurrentVersion.targets",
               "RelativeDocumentMoniker": "..\\..\\..\\Program Files\\Microsoft Visual Studio\\2022\\Community\\MSBuild\\Current\\Bin\\amd64\\Microsoft.Common.CurrentVersion.targets",
@@ -324,7 +356,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 18,
+              "DocumentIndex": 20,
               "Title": "ToastNotification.cs",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\ToastNotification.cs",
               "RelativeDocumentMoniker": "mCardSystem\\ToastNotification.cs",
@@ -337,7 +369,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 19,
+              "DocumentIndex": 21,
               "Title": "Main.Designer.cs",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\Main.Designer.cs",
               "RelativeDocumentMoniker": "mCardSystem\\Main.Designer.cs",
@@ -350,7 +382,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 20,
+              "DocumentIndex": 22,
               "Title": "LoginDlg.resx",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\LoginDlg.resx",
               "RelativeDocumentMoniker": "mCardSystem\\LoginDlg.resx",

+ 126 - 95
mCardSystem/.vs/mCardSystem/v17/DocumentLayout.json

@@ -2,33 +2,47 @@
   "Version": 1,
   "WorkspaceRootPath": "C:\\bitbucket\\mCardSystem\\mCardSystem\\",
   "Documents": [
-    {
-      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|C:\\bitbucket\\mCardSystem\\mCardSystem\\mcardsystem\\main.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
-      "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\main.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\issuecard.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\issuecard.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
     {
       "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\cardcancel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\cardcancel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
-      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|C:\\bitbucket\\mCardSystem\\mCardSystem\\mcardsystem\\cardcancel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
+      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\cardcancel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
       "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\cardcancel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form"
     },
+    {
+      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\issuecard.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
+      "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\issuecard.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form"
+    },
     {
       "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\webapi.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\webapi.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
+    {
+      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\issuecard.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\issuecard.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\logindlg.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
+      "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\logindlg.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Users\\10049567\\AppData\\Local\\Temp\\.vsdbgsrc\\c6e59db4786e48818037d905b30f9df5320b3d6dafe4b1c5074dae5239cf06fb\\Thread.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
     {
       "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\logindlg.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\logindlg.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
-      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|C:\\bitbucket\\mCardSystem\\mCardSystem\\mcardsystem\\logindlg.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
-      "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\logindlg.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form"
+      "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Users\\10049567\\AppData\\Local\\Temp\\.vsdbgsrc\\f1b4521b015c61e76c58c4250a7093f1b1bb2cf262a9f100c447a018527c2958\\TextBox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|C:\\bitbucket\\mCardSystem\\mCardSystem\\mcardsystem\\main.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
+      "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\main.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form"
     },
     {
       "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\cloudresponse.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
@@ -38,14 +52,6 @@
       "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\main.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\main.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
-    {
-      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\cardcancel.designer.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\cardcancel.designer.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
     {
       "AbsoluteMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|c:\\bitbucket\\mcardsystem\\mcardsystem\\mcardsystem\\tool.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{EE96F1AA-15E2-49A7-89AD-222A27655465}|mCardSystem\\mCardSystem.csproj|solutionrelative:mcardsystem\\tool.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
@@ -89,59 +95,110 @@
       "DocumentGroups": [
         {
           "DockedWidth": 307,
-          "SelectedChildIndex": 7,
+          "SelectedChildIndex": 1,
           "Children": [
             {
               "$type": "Document",
-              "DocumentIndex": 4,
+              "DocumentIndex": 1,
+              "Title": "CardCancel.cs [\u8BBE\u8BA1]",
+              "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\CardCancel.cs",
+              "RelativeDocumentMoniker": "mCardSystem\\CardCancel.cs",
+              "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\CardCancel.cs [\u8BBE\u8BA1]*",
+              "RelativeToolTip": "mCardSystem\\CardCancel.cs [\u8BBE\u8BA1]*",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-01-05T04:01:08.275Z",
+              "EditorCaption": " [\u8BBE\u8BA1]"
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 0,
+              "Title": "CardCancel.cs",
+              "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\CardCancel.cs",
+              "RelativeDocumentMoniker": "mCardSystem\\CardCancel.cs",
+              "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\CardCancel.cs*",
+              "RelativeToolTip": "mCardSystem\\CardCancel.cs*",
+              "ViewState": "AgIAACkAAAAAAAAAAADwvzEAAAAmAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2025-12-18T03:52:52.665Z",
+              "EditorCaption": ""
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 2,
+              "Title": "IssueCard.cs [\u8BBE\u8BA1]",
+              "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\IssueCard.cs",
+              "RelativeDocumentMoniker": "mCardSystem\\IssueCard.cs",
+              "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\IssueCard.cs [\u8BBE\u8BA1]",
+              "RelativeToolTip": "mCardSystem\\IssueCard.cs [\u8BBE\u8BA1]",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-01-05T03:42:47.661Z",
+              "EditorCaption": " [\u8BBE\u8BA1]"
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 3,
               "Title": "WebAPI.cs",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\WebAPI.cs",
               "RelativeDocumentMoniker": "mCardSystem\\WebAPI.cs",
               "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\WebAPI.cs",
               "RelativeToolTip": "mCardSystem\\WebAPI.cs",
-              "ViewState": "AgIAAJAAAAAAAAAAAAAgwJsAAAAQAAAAAAAAAA==",
+              "ViewState": "AgIAAIkAAAAAAAAAAAAQwC4AAAASAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
               "WhenOpened": "2025-12-25T09:33:57.723Z",
               "EditorCaption": ""
             },
             {
               "$type": "Document",
-              "DocumentIndex": 3,
-              "Title": "CardCancel.cs [\u8BBE\u8BA1]",
-              "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\CardCancel.cs",
-              "RelativeDocumentMoniker": "mCardSystem\\CardCancel.cs",
-              "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\CardCancel.cs [\u8BBE\u8BA1]",
-              "RelativeToolTip": "mCardSystem\\CardCancel.cs [\u8BBE\u8BA1]",
+              "DocumentIndex": 8,
+              "Title": "LoginDlg.cs",
+              "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\LoginDlg.cs",
+              "RelativeDocumentMoniker": "mCardSystem\\LoginDlg.cs",
+              "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\LoginDlg.cs",
+              "RelativeToolTip": "mCardSystem\\LoginDlg.cs",
+              "ViewState": "AgIAACoAAAAAAAAAAAAIwDEAAAAIAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-12-30T09:53:09.382Z",
-              "EditorCaption": " [\u8BBE\u8BA1]"
+              "WhenOpened": "2025-12-25T09:45:43.598Z",
+              "EditorCaption": ""
             },
             {
               "$type": "Document",
-              "DocumentIndex": 1,
+              "DocumentIndex": 5,
               "Title": "IssueCard.cs",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\IssueCard.cs",
               "RelativeDocumentMoniker": "mCardSystem\\IssueCard.cs",
               "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\IssueCard.cs",
               "RelativeToolTip": "mCardSystem\\IssueCard.cs",
-              "ViewState": "AgIAAGwAAAAAAAAAAAAcwHYAAAAQAAAAAAAAAA==",
+              "ViewState": "AgIAAIwAAAAAAAAAAAAAAI0AAAAIAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
               "WhenOpened": "2025-12-18T03:52:22.733Z",
               "EditorCaption": ""
             },
             {
               "$type": "Document",
-              "DocumentIndex": 10,
-              "Title": "CardCancel.Designer.cs",
-              "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\CardCancel.Designer.cs",
-              "RelativeDocumentMoniker": "mCardSystem\\CardCancel.Designer.cs",
-              "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\CardCancel.Designer.cs",
-              "RelativeToolTip": "mCardSystem\\CardCancel.Designer.cs",
-              "ViewState": "AgIAAEsAAAAAAAAAAAAiwFQAAAAlAAAAAAAAAA==",
+              "DocumentIndex": 4,
+              "Title": "Program.cs",
+              "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\Program.cs",
+              "RelativeDocumentMoniker": "mCardSystem\\Program.cs",
+              "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\Program.cs",
+              "RelativeToolTip": "mCardSystem\\Program.cs",
+              "ViewState": "AgIAAAsAAAAAAAAAAAAcwCoAAAAUAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-01-04T07:04:46.237Z",
+              "WhenOpened": "2025-12-17T03:12:41.93Z",
               "EditorCaption": ""
             },
+            {
+              "$type": "Document",
+              "DocumentIndex": 7,
+              "Title": "Thread.cs",
+              "DocumentMoniker": "C:\\Users\\10049567\\AppData\\Local\\Temp\\.vsdbgsrc\\c6e59db4786e48818037d905b30f9df5320b3d6dafe4b1c5074dae5239cf06fb\\Thread.cs",
+              "RelativeDocumentMoniker": "..\\..\\..\\Users\\10049567\\AppData\\Local\\Temp\\.vsdbgsrc\\c6e59db4786e48818037d905b30f9df5320b3d6dafe4b1c5074dae5239cf06fb\\Thread.cs",
+              "ToolTip": "C:\\Users\\10049567\\AppData\\Local\\Temp\\.vsdbgsrc\\c6e59db4786e48818037d905b30f9df5320b3d6dafe4b1c5074dae5239cf06fb\\Thread.cs [\u53EA\u8BFB]",
+              "RelativeToolTip": "..\\..\\..\\Users\\10049567\\AppData\\Local\\Temp\\.vsdbgsrc\\c6e59db4786e48818037d905b30f9df5320b3d6dafe4b1c5074dae5239cf06fb\\Thread.cs [\u53EA\u8BFB]",
+              "ViewState": "AgIAAHYBAAAAAAAAAAAgwIEBAAACAAAAAQAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-01-05T03:45:56.933Z",
+              "EditorCaption": " [\u53EA\u8BFB]"
+            },
             {
               "$type": "Document",
               "DocumentIndex": 6,
@@ -151,38 +208,25 @@
               "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\LoginDlg.cs [\u8BBE\u8BA1]",
               "RelativeToolTip": "mCardSystem\\LoginDlg.cs [\u8BBE\u8BA1]",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-12-26T09:46:52.091Z",
+              "WhenOpened": "2026-01-05T03:50:57.071Z",
               "EditorCaption": " [\u8BBE\u8BA1]"
             },
             {
               "$type": "Document",
-              "DocumentIndex": 5,
-              "Title": "LoginDlg.cs",
-              "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\LoginDlg.cs",
-              "RelativeDocumentMoniker": "mCardSystem\\LoginDlg.cs",
-              "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\LoginDlg.cs",
-              "RelativeToolTip": "mCardSystem\\LoginDlg.cs",
-              "ViewState": "AgIAABgAAAAAAAAAAADwvxwAAAAAAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-12-25T09:45:43.598Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 7,
-              "Title": "CloudResponse.cs",
-              "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\CloudResponse.cs",
-              "RelativeDocumentMoniker": "mCardSystem\\CloudResponse.cs",
-              "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\CloudResponse.cs",
-              "RelativeToolTip": "mCardSystem\\CloudResponse.cs",
-              "ViewState": "AgIAAEcAAAAAAAAAAAAqwE8AAAAFAAAAAAAAAA==",
+              "DocumentIndex": 9,
+              "Title": "TextBox.cs",
+              "DocumentMoniker": "C:\\Users\\10049567\\AppData\\Local\\Temp\\.vsdbgsrc\\f1b4521b015c61e76c58c4250a7093f1b1bb2cf262a9f100c447a018527c2958\\TextBox.cs",
+              "RelativeDocumentMoniker": "..\\..\\..\\Users\\10049567\\AppData\\Local\\Temp\\.vsdbgsrc\\f1b4521b015c61e76c58c4250a7093f1b1bb2cf262a9f100c447a018527c2958\\TextBox.cs",
+              "ToolTip": "C:\\Users\\10049567\\AppData\\Local\\Temp\\.vsdbgsrc\\f1b4521b015c61e76c58c4250a7093f1b1bb2cf262a9f100c447a018527c2958\\TextBox.cs [\u53EA\u8BFB]",
+              "RelativeToolTip": "..\\..\\..\\Users\\10049567\\AppData\\Local\\Temp\\.vsdbgsrc\\f1b4521b015c61e76c58c4250a7093f1b1bb2cf262a9f100c447a018527c2958\\TextBox.cs [\u53EA\u8BFB]",
+              "ViewState": "AgIAAIYBAAAAAAAAAAAgwJEBAAADAAAAAQAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-12-25T09:38:39.007Z",
-              "EditorCaption": ""
+              "WhenOpened": "2026-01-05T03:46:02.81Z",
+              "EditorCaption": " [\u53EA\u8BFB]"
             },
             {
               "$type": "Document",
-              "DocumentIndex": 0,
+              "DocumentIndex": 10,
               "Title": "Main.cs [\u8BBE\u8BA1]",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\Main.cs",
               "RelativeDocumentMoniker": "mCardSystem\\Main.cs",
@@ -194,20 +238,20 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 2,
-              "Title": "CardCancel.cs",
-              "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\CardCancel.cs",
-              "RelativeDocumentMoniker": "mCardSystem\\CardCancel.cs",
-              "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\CardCancel.cs",
-              "RelativeToolTip": "mCardSystem\\CardCancel.cs",
-              "ViewState": "AgIAAJIAAAAAAAAAAAAgwJYAAAARAAAAAAAAAA==",
+              "DocumentIndex": 11,
+              "Title": "CloudResponse.cs",
+              "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\CloudResponse.cs",
+              "RelativeDocumentMoniker": "mCardSystem\\CloudResponse.cs",
+              "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\CloudResponse.cs",
+              "RelativeToolTip": "mCardSystem\\CloudResponse.cs",
+              "ViewState": "AgIAAEcAAAAAAAAAAAAqwE8AAAAFAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-12-18T03:52:52.665Z",
+              "WhenOpened": "2025-12-25T09:38:39.007Z",
               "EditorCaption": ""
             },
             {
               "$type": "Document",
-              "DocumentIndex": 11,
+              "DocumentIndex": 13,
               "Title": "Tool.cs",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\Tool.cs",
               "RelativeDocumentMoniker": "mCardSystem\\Tool.cs",
@@ -220,20 +264,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 9,
-              "Title": "Program.cs",
-              "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\Program.cs",
-              "RelativeDocumentMoniker": "mCardSystem\\Program.cs",
-              "ToolTip": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\Program.cs",
-              "RelativeToolTip": "mCardSystem\\Program.cs",
-              "ViewState": "AgIAAEcAAAAAAAAAAAAqwE0AAAAuAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-12-17T03:12:41.93Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 8,
+              "DocumentIndex": 12,
               "Title": "Main.cs",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\Main.cs",
               "RelativeDocumentMoniker": "mCardSystem\\Main.cs",
@@ -246,7 +277,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 12,
+              "DocumentIndex": 14,
               "Title": "ChangePassword.cs",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\ChangePassword.cs",
               "RelativeDocumentMoniker": "mCardSystem\\ChangePassword.cs",
@@ -258,7 +289,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 13,
+              "DocumentIndex": 15,
               "Title": "HttpService.cs",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\HttpService.cs",
               "RelativeDocumentMoniker": "mCardSystem\\HttpService.cs",
@@ -271,7 +302,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 15,
+              "DocumentIndex": 17,
               "Title": "HomePage.cs",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\HomePage.cs",
               "RelativeDocumentMoniker": "mCardSystem\\HomePage.cs",
@@ -284,7 +315,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 14,
+              "DocumentIndex": 16,
               "Title": "Logger.cs",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\Logger.cs",
               "RelativeDocumentMoniker": "mCardSystem\\Logger.cs",
@@ -296,7 +327,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 16,
+              "DocumentIndex": 18,
               "Title": "Microsoft.Common.CurrentVersion.targets",
               "DocumentMoniker": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\MSBuild\\Current\\Bin\\amd64\\Microsoft.Common.CurrentVersion.targets",
               "RelativeDocumentMoniker": "..\\..\\..\\Program Files\\Microsoft Visual Studio\\2022\\Community\\MSBuild\\Current\\Bin\\amd64\\Microsoft.Common.CurrentVersion.targets",
@@ -308,7 +339,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 17,
+              "DocumentIndex": 19,
               "Title": "ToastNotification.cs",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\ToastNotification.cs",
               "RelativeDocumentMoniker": "mCardSystem\\ToastNotification.cs",
@@ -321,7 +352,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 18,
+              "DocumentIndex": 20,
               "Title": "Main.Designer.cs",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\Main.Designer.cs",
               "RelativeDocumentMoniker": "mCardSystem\\Main.Designer.cs",
@@ -334,7 +365,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 19,
+              "DocumentIndex": 21,
               "Title": "LoginDlg.resx",
               "DocumentMoniker": "C:\\bitbucket\\mCardSystem\\mCardSystem\\mCardSystem\\LoginDlg.resx",
               "RelativeDocumentMoniker": "mCardSystem\\LoginDlg.resx",

+ 10 - 1
mCardSystem/mCardSystem/CardCancel.Designer.cs

@@ -66,6 +66,11 @@
             // 
             // button_cardCancel
             // 
+            button_cardCancel.LoadingWaveColor = Color.FromArgb(196, 162, 252);
+            button_cardCancel.LoadingWaveCount = 2;
+            button_cardCancel.LoadingWaveSize = 5;
+            button_cardCancel.LoadingWaveValue = 0.5F;
+            button_cardCancel.LoadingWaveVertical = true;
             button_cardCancel.Location = new Point(77, 185);
             button_cardCancel.Margin = new Padding(3, 4, 3, 4);
             button_cardCancel.Name = "button_cardCancel";
@@ -77,6 +82,11 @@
             // 
             // button_cardinit
             // 
+            button_cardinit.LoadingWaveColor = Color.FromArgb(196, 162, 252);
+            button_cardinit.LoadingWaveCount = 2;
+            button_cardinit.LoadingWaveSize = 5;
+            button_cardinit.LoadingWaveValue = 0.5F;
+            button_cardinit.LoadingWaveVertical = true;
             button_cardinit.Location = new Point(77, 427);
             button_cardinit.Margin = new Padding(3, 4, 3, 4);
             button_cardinit.Name = "button_cardinit";
@@ -111,7 +121,6 @@
         private AntdUI.Button button2;
         private AntdUI.Button button1;
         private AntdUI.Input input_cardno;
-        private AntdUI.Button button_cardcancel;
         private AntdUI.Button button_cardCancel;
         private AntdUI.Button button_cardinit;
     }

+ 63 - 3
mCardSystem/mCardSystem/CardCancel.cs

@@ -14,6 +14,10 @@ namespace mCardSystem
     {
         private AntdUI.Window window;
         CardReader cardreader = new CardReader();
+
+        private Thread _Thread;
+        private readonly object threadLock = new object();
+
         public CardCancel(AntdUI.Window _window)
         {
             window = _window;
@@ -45,7 +49,29 @@ namespace mCardSystem
 
         private void button_cardCancel_Click(object sender, EventArgs e)
         {
+            lock (threadLock)
+            {
+                // 检查是否已有线程在运行
+                if (_Thread != null && _Thread.IsAlive)
+                {
+                    return;
+                }
+
+
+                button_cardCancel.Loading = true;
+
+                _Thread = new Thread(PerformThread_cancel);
+                _Thread.IsBackground = true;
+                _Thread.Start();
 
+
+            }
+
+            
+        }
+
+        private void PerformThread_cancel()
+        {
             CardInfo info = cardreader.readCardInfo();
             if (info.readresult.result)
             {
@@ -55,6 +81,7 @@ namespace mCardSystem
                 {
                     Tool.ShowAntdModal(window, "请求销卡失败," + res.data.message);
                     Logger.WriteLog("请求销卡失败," + res.data.message);
+                    button_cardCancel.Loading = false;
                     return;
                 }
                 else
@@ -68,10 +95,11 @@ namespace mCardSystem
                     string msg = "卡号:" + info.cardno + ",卡类型:" + strcardtype + ",账号名称:" + res.data.accountname;
                     if (Tool.ShowAntdModalConfirm(window, "是否确认销卡?" + msg) != DialogResult.OK)
                     {
+                        button_cardCancel.Loading = false;
                         return;
                     }
 
-                    Logger.WriteLog("申请销卡。"+msg);
+                    Logger.WriteLog("申请销卡。" + msg);
 
 
                     //销卡是先向云端申请后写卡
@@ -80,6 +108,7 @@ namespace mCardSystem
                     {
                         Tool.ShowAntdModal(window, "请求销卡失败," + res2.data.message);
                         Logger.WriteLog("请求销卡失败," + res2.data.message);
+                        button_cardCancel.Loading = false;
                         return;
                     }
                     else
@@ -87,7 +116,7 @@ namespace mCardSystem
                         OperateResult clearres = cardreader.clearCard(info);
                         if (clearres.result)
                         {
-                            Tool.ShowAntdModal(window, "卡注销成功。"+ msg);
+                            Tool.ShowAntdModal(window, "卡注销成功。" + msg);
                             Logger.WriteLog("卡注销成功。" + msg);
                         }
                         else
@@ -98,7 +127,7 @@ namespace mCardSystem
                         }
                     }
 
-                        
+
 
                     /*
                     bool clear = true;
@@ -133,10 +162,37 @@ namespace mCardSystem
             {
                 Tool.ShowAntdModal(window, info.readresult.msg);
             }
+
+
+            button_cardCancel.Loading = false;
+
         }
+
         private void button_cardinit_Click(object sender, EventArgs e)
         {
+            lock (threadLock)
+            {
+                // 检查是否已有线程在运行
+                if (_Thread != null && _Thread.IsAlive)
+                {
+                    return;
+                }
+
+
+                button_cardinit.Loading = true;
+
+                _Thread = new Thread(PerformThread_init);
+                _Thread.IsBackground = true;
+                _Thread.Start();
 
+
+            }
+
+            
+        }
+
+        private void PerformThread_init()
+        {
             CardInfo info = cardreader.readCardInfo();
             if (info.readresult.result)
             {
@@ -175,6 +231,10 @@ namespace mCardSystem
             {
                 Tool.ShowAntdModal(window, info.readresult.msg);
             }
+
+
+            button_cardinit.Loading = false;
+
         }
     }
 }

+ 5 - 0
mCardSystem/mCardSystem/IssueCard.Designer.cs

@@ -46,6 +46,11 @@
             // 
             // button1
             // 
+            button1.LoadingWaveColor = Color.FromArgb(196, 162, 252);
+            button1.LoadingWaveCount = 2;
+            button1.LoadingWaveSize = 5;
+            button1.LoadingWaveValue = 0.5F;
+            button1.LoadingWaveVertical = true;
             button1.Location = new Point(678, 256);
             button1.Margin = new Padding(3, 4, 3, 4);
             button1.Name = "button1";

+ 50 - 6
mCardSystem/mCardSystem/IssueCard.cs

@@ -19,6 +19,8 @@ namespace mCardSystem
 
         private AntdUI.Window window;
 
+        private Thread _Thread;
+        private readonly object threadLock = new object();
 
 
         public IssueCard(AntdUI.Window _window)
@@ -57,6 +59,7 @@ namespace mCardSystem
 
         private void button_readcard_Click(object sender, EventArgs e)
         {
+
             if (!CardReader.bConnect)
             {
                 Tool.ShowAntdModal(window, "未连接读卡器");
@@ -98,8 +101,12 @@ namespace mCardSystem
             {
                 Tool.ShowAntdModal(window, info.readresult.msg);
             }
+
+
+
         }
 
+
         private void button_copy_Click(object sender, EventArgs e)
         {
             CopyToClipboard(input_cardno);
@@ -107,6 +114,32 @@ namespace mCardSystem
 
 
         private void button1_Click(object sender, EventArgs e)
+        {
+            lock (threadLock)
+            {
+                // 检查是否已有线程在运行
+                if (_Thread != null && _Thread.IsAlive)
+                {
+                    return;
+                }
+
+
+                button1.Loading = true;
+
+                _Thread = new Thread(PerformThread);
+                _Thread.IsBackground = true;
+                _Thread.Start();
+
+
+            }
+
+
+
+
+        }
+
+
+        private void PerformThread()
         {
             CardInfo info = cardreader.readCardInfo();
             if (info.readresult.result)
@@ -120,6 +153,7 @@ namespace mCardSystem
                 {
                     Tool.ShowAntdModal(window, "请求发卡失败," + res.data.message);
                     Logger.WriteLog("请求发卡失败," + res.data.message);
+                    button1.Loading = false;
                     return;
                 }
                 else
@@ -130,12 +164,13 @@ namespace mCardSystem
                         strcardtype = Main.dic_cardtype[res.data.cardtype];
                     }
                     string msg = "卡号:" + info.cardno + ",卡类型:" + strcardtype + ",账号名称:" + res.data.accountname;
-                    if (Tool.ShowAntdModalConfirm(window, "是否确认发卡?"+ msg) != DialogResult.OK)
+                    if (Tool.ShowAntdModalConfirm(window, "是否确认发卡?" + msg) != DialogResult.OK)
                     {
+                        button1.Loading = false;
                         return;
                     }
 
-                    Logger.WriteLog("申请发卡"+msg);
+                    Logger.WriteLog("申请发卡" + msg);
                 }
 
                 //发卡是先写卡后向云端申请
@@ -143,6 +178,7 @@ namespace mCardSystem
                 {
                     Tool.ShowAntdModal(window, "修改扇区密钥失败");
                     Logger.WriteLog("修改扇区密钥失败");
+                    button1.Loading = false;
                     return;
                 }
 
@@ -157,18 +193,22 @@ namespace mCardSystem
                     if (pw.Length % 2 != 0)
                     {
                         Tool.ShowAntdModal(window, "密码长度必须为偶数位");
+                        button1.Loading = false;
                         return;
                     }
 
                     if (pw != pw_c)
                     {
                         Tool.ShowAntdModal(window, "两次输入的密码不一致");
+                        button1.Loading = false;
+                        button1.Loading = false;
                         return;
                     }
 
                     if (pw.Length < 4 || pw.Length > 12)
                     {
                         Tool.ShowAntdModal(window, "密码长度为4-12位");
+                        button1.Loading = false;
                         return;
                     }
 
@@ -180,6 +220,7 @@ namespace mCardSystem
                 {
                     Tool.ShowAntdModal(window, "写卡号失败");
                     Logger.WriteLog("写卡号失败");
+                    button1.Loading = false;
                     return;
                 }
 
@@ -206,6 +247,7 @@ namespace mCardSystem
                         Logger.WriteLog("清空卡信息失败");
                     }
 
+                    button1.Loading = false;
                     return;
                 }
 
@@ -225,6 +267,7 @@ namespace mCardSystem
                         Logger.WriteLog("清空卡信息失败");
                     }
 
+                    button1.Loading = false;
                     return;
                 }
 
@@ -237,10 +280,11 @@ namespace mCardSystem
 
                     OperateResult cres = cardreader.clearCard(info);
                     if (!cres.result)
-                    { 
+                    {
                         Logger.WriteLog("清空卡信息失败");
                     }
 
+                    button1.Loading = false;
                     return;
                 }
                 else
@@ -254,16 +298,16 @@ namespace mCardSystem
 
                     Tool.ShowAntdModal(window, msg2);
                     Logger.WriteLog(msg2);
-                } 
+                }
             }
             else
             {
                 Tool.ShowAntdModal(window, info.readresult.msg);
             }
 
-        }
-
+            button1.Loading = false;
 
+        }
 
 
     }

+ 21 - 16
mCardSystem/mCardSystem/LoginDlg.Designer.cs

@@ -36,8 +36,8 @@
             Account = new AntdUI.Input();
             Password = new AntdUI.Input();
             pageHeader1 = new AntdUI.PageHeader();
-            button_close = new AntdUI.Button();
             button2 = new AntdUI.Button();
+            button_close = new AntdUI.Button();
             pageHeader1.SuspendLayout();
             SuspendLayout();
             // 
@@ -77,6 +77,11 @@
             // button_login
             // 
             button_login.BackColor = Color.FromArgb(56, 172, 222);
+            button_login.LoadingWaveColor = Color.FromArgb(196, 162, 252);
+            button_login.LoadingWaveCount = 2;
+            button_login.LoadingWaveSize = 5;
+            button_login.LoadingWaveValue = 0.5F;
+            button_login.LoadingWaveVertical = true;
             button_login.Location = new Point(175, 264);
             button_login.Margin = new Padding(3, 4, 3, 4);
             button_login.Name = "button_login";
@@ -91,7 +96,7 @@
             Account.Location = new Point(175, 123);
             Account.Name = "Account";
             Account.Size = new Size(205, 40);
-            Account.TabIndex = 4;
+            Account.TabIndex = 0;
             // 
             // Password
             // 
@@ -99,7 +104,7 @@
             Password.Name = "Password";
             Password.PasswordChar = '*';
             Password.Size = new Size(205, 40);
-            Password.TabIndex = 4;
+            Password.TabIndex = 1;
             // 
             // pageHeader1
             // 
@@ -114,6 +119,18 @@
             pageHeader1.TabIndex = 5;
             pageHeader1.Text = "";
             // 
+            // button2
+            // 
+            button2.BackColor = Color.FromArgb(56, 172, 222);
+            button2.BackgroundImage = (Image)resources.GetObject("button2.BackgroundImage");
+            button2.Icon = (Image)resources.GetObject("button2.Icon");
+            button2.IconRatio = 1.5F;
+            button2.Location = new Point(118, 8);
+            button2.Name = "button2";
+            button2.Size = new Size(51, 55);
+            button2.TabIndex = 3;
+            button2.Type = AntdUI.TTypeMini.Primary;
+            // 
             // button_close
             // 
             button_close.BackColor = Color.FromArgb(56, 172, 222);
@@ -124,22 +141,10 @@
             button_close.Location = new Point(462, 0);
             button_close.Name = "button_close";
             button_close.Size = new Size(54, 70);
-            button_close.TabIndex = 2;
+            button_close.TabIndex = 0;
             button_close.Type = AntdUI.TTypeMini.Primary;
             button_close.Click += button_close_Click;
             // 
-            // button2
-            // 
-            button2.BackColor = Color.FromArgb(56, 172, 222);
-            button2.BackgroundImage = (Image)resources.GetObject("button2.BackgroundImage");
-            button2.Icon = (Image)resources.GetObject("button2.Icon");
-            button2.IconRatio = 1.5F;
-            button2.Location = new Point(118, 8);
-            button2.Name = "button2";
-            button2.Size = new Size(51, 55);
-            button2.TabIndex = 3;
-            button2.Type = AntdUI.TTypeMini.Primary;
-            // 
             // LoginDlg
             // 
             AutoScaleDimensions = new SizeF(8F, 20F);

+ 52 - 7
mCardSystem/mCardSystem/LoginDlg.cs

@@ -14,6 +14,13 @@ namespace mCardSystem
     {
         WebAPI webapi = new WebAPI();
 
+
+        private Thread loginThread;
+        private readonly object threadLock = new object();
+
+        private bool bLogin = false;
+
+
         public LoginDlg()
         {
             InitializeComponent();
@@ -21,15 +28,35 @@ namespace mCardSystem
 
         private void button_login_Click(object sender, EventArgs e)
         {
-            string deviceId = webapi.GetWindowsDeviceId();//获取设备id
+            lock (threadLock)
+            {
+                // 检查是否已有线程在运行
+                if (loginThread != null && loginThread.IsAlive)
+                {
+                    return;
+                }
+
 
+                button_login.Loading = true;
+
+                loginThread = new Thread(() => PerformLogin(this));
+                loginThread.IsBackground = true;
+                loginThread.Start();
+                
+                
+            }
+
+        }
+        private void PerformLogin(AntdUI.Window window)
+        {
+            string deviceId = webapi.GetWindowsDeviceId();//获取设备id
             string Account = this.Account.Text;
             string Password = this.Password.Text;
 
 
+            APIResponse res = WebAPI.ClientLogin(Account, Password, deviceId);
+
 
-            APIResponse res = WebAPI.ClientLogin(Account, Password);
-          
             if (res.success)
             {
                 bool getkey = false;
@@ -37,7 +64,7 @@ namespace mCardSystem
                 {
                     APIResponse resk = WebAPI.GetSecretKey();
 
-                    if(resk.success)
+                    if (resk.success)
                     {
                         getkey = true;
                     }
@@ -51,16 +78,34 @@ namespace mCardSystem
                     }
                 }
 
+                UpdateUI(this);
+
+            }
+            else
+            {
+                Tool.ShowAntdModal(this, "登录失败," + res.msg);
+            }
+
+            button_login.Loading = false;
+
+        }
 
-                this.DialogResult = DialogResult.OK;
-                this.Close();
+        // 安全更新UI的方法
+        private void UpdateUI(AntdUI.Window window)
+        {
+            if (window.InvokeRequired)
+            {
+                window.Invoke(new Action<AntdUI.Window>(UpdateUI), window);
             }
             else
             {
-                Tool.ShowAntdModal(this, "登录失败,"+res.msg);
+                window.DialogResult = DialogResult.OK;
+                window.Close();
+
             }
         }
 
+
         private void button_close_Click(object sender, EventArgs e)
         {
             this.Close();

+ 1 - 1
mCardSystem/mCardSystem/Main.Designer.cs

@@ -81,7 +81,7 @@
             button1.Location = new Point(883, 3);
             button1.Name = "button1";
             button1.Size = new Size(66, 64);
-            button1.TabIndex = 1;
+            button1.TabIndex = 0;
             button1.Type = AntdUI.TTypeMini.Primary;
             button1.Click += min;
             // 

+ 13 - 2
mCardSystem/mCardSystem/WebAPI.cs

@@ -9,6 +9,8 @@ using Newtonsoft.Json.Linq;
 using DFS.Infrastructure;
 using DFS.Infrastructure.Extension.SM;
 using static System.Windows.Forms.VisualStyles.VisualStyleElement.StartPanel;
+using Org.BouncyCastle.Bcpg.OpenPgp;
+using System.Text.Json;
 
 namespace mCardSystem
 {
@@ -33,11 +35,20 @@ namespace mCardSystem
         /// <param name="userName"></param>
         /// <param name="password"></param>
         /// <returns></returns>
-        public static APIResponse ClientLogin(string userName, string password)
+        public static APIResponse ClientLogin(string userName, string password, string deviceid)
         {
             try
             {
-                string jsonData = "{\"account\": \"" + userName + "\",\"password\": \"" + password + "\"}";
+                var data = new
+                {
+                    account = userName,
+                    password = password,
+                    EquipmentID = deviceid
+                };
+
+                string jsonData = JsonConvert.SerializeObject(data, Formatting.Indented);
+
+                //string jsonData = "{\"account\": \"" + userName + "\",\"password\": \"" + password + "\"}";
                 string responseResult = HttpService.Post(jsonData, CloudsUrl + "api/auth/login", 60);
 
                 APIResponse res = new APIResponse();

BIN
mCardSystem/mCardSystem/bin/x86/Debug/net8.0-windows/mCardSystem.dll


BIN
mCardSystem/mCardSystem/bin/x86/Debug/net8.0-windows/mCardSystem.exe


BIN
mCardSystem/mCardSystem/bin/x86/Debug/net8.0-windows/mCardSystem.pdb


BIN
mCardSystem/mCardSystem/obj/x86/Debug/net8.0-windows/apphost.exe


+ 1 - 1
mCardSystem/mCardSystem/obj/x86/Debug/net8.0-windows/mCardSystem.AssemblyInfo.cs

@@ -14,7 +14,7 @@ using System.Reflection;
 [assembly: System.Reflection.AssemblyCompanyAttribute("mCardSystem")]
 [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
 [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
-[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+b54154d8b5ff08fadb3623b253e7e0a912a97471")]
+[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+65dd0a9bb948005d5bb97f2c43c07d7872ba20be")]
 [assembly: System.Reflection.AssemblyProductAttribute("mCardSystem")]
 [assembly: System.Reflection.AssemblyTitleAttribute("mCardSystem")]
 [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]

+ 1 - 1
mCardSystem/mCardSystem/obj/x86/Debug/net8.0-windows/mCardSystem.AssemblyInfoInputs.cache

@@ -1 +1 @@
-db8122282686ae26df4f44054558d449db7085b63d2671af5d6e8ec3b6d30b4d
+f74fbad164311a2d413653c2ad8df3cf5a1dc39be795cf5dd60eca78a2756124

BIN
mCardSystem/mCardSystem/obj/x86/Debug/net8.0-windows/mCardSystem.csproj.GenerateResource.cache


BIN
mCardSystem/mCardSystem/obj/x86/Debug/net8.0-windows/mCardSystem.dll


BIN
mCardSystem/mCardSystem/obj/x86/Debug/net8.0-windows/mCardSystem.pdb


BIN
mCardSystem/mCardSystem/obj/x86/Debug/net8.0-windows/ref/mCardSystem.dll


BIN
mCardSystem/mCardSystem/obj/x86/Debug/net8.0-windows/refint/mCardSystem.dll