From 0d17c4e8a79283c64cb8950484ff908b6123e99d Mon Sep 17 00:00:00 2001
From: wumu <mayi@mayi.com>
Date: 星期一, 26 二月 2024 23:13:42 +0800
Subject: [PATCH] 0226

---
 Data/66内审统01表_单位及内部审计机构基本情况表-1.301版.xls        |    0 
 internal_system_v1/struct_data.h               |   71 +++++++
 internal_system_v1/converinfo2.h               |    5 
 internal_system_v1/converinfo2.cpp             |  374 +++++++++++++++++++++++++++++++++++++
 Data/单位内部审计业务情况表_码蚁软件技术(西安)有限公司7.xls           |    0 
 internal_system_v1/converinfo2.ui              |  144 +++++++-------
 internal_system_v1/internal_system_v1.pro      |    3 
 审计系统.mmap                                      |    0 
 Data/附件1-问题整改台账.xlsx                           |    0 
 Data/test.xlsx                                 |    0 
 Data/单位内部审计业务情况表_码蚁软件技术(西安)有限公司2.xls           |    0 
 Data/33内审统01表_单位及内部审计机构基本情况表-1.301版.xls        |    0 
 Data/单位内部审计业务情况表_码蚁软件技术(西安)有限公司.xls            |    0 
 Data/单位内部审计业务情况表.xls                           |    0 
 Data/附件3_内审统02表_单位内部审计业务情况表1.xls               |    0 
 Data/附件4_内审统03表_内部审计统计综合表.xls                  |    0 
 Data/附件2_内审统01表_单位及内部审计机构基本情况表-1.301版(1).xls   |    0 
 Data/目前系统需优化的地方.docx                           |    0 
 Data/附件3_内审统02表_单位内部审计业务情况表.xls                |    0 
 ~$审计系统.mmap.~$lock                             |    2 
 Data/55内审统01表_单位及内部审计机构基本情况表-1.301版.xls        |    0 
 Data/save2.xls                                 |    0 
 Data/附件3_内审统02表_单位内部审计业务情况表2.xls               |    0 
 Data/44内审统01表_单位及内部审计机构基本情况表-1.301版.xls        |    0 
 Data/附件3_内审统02表_单位内部审计业务情况表_码蚁软件技术(西安)有限公司.xls |    0 
 Data/内审统01表_单位及内部审计机构基本情况表-1.301版.xls          |    0 
 26 files changed, 525 insertions(+), 74 deletions(-)

diff --git "a/Data/33\345\206\205\345\256\241\347\273\23701\350\241\250_\345\215\225\344\275\215\345\217\212\345\206\205\351\203\250\345\256\241\350\256\241\346\234\272\346\236\204\345\237\272\346\234\254\346\203\205\345\206\265\350\241\250-1.301\347\211\210.xls" "b/Data/33\345\206\205\345\256\241\347\273\23701\350\241\250_\345\215\225\344\275\215\345\217\212\345\206\205\351\203\250\345\256\241\350\256\241\346\234\272\346\236\204\345\237\272\346\234\254\346\203\205\345\206\265\350\241\250-1.301\347\211\210.xls"
new file mode 100644
index 0000000..c113719
--- /dev/null
+++ "b/Data/33\345\206\205\345\256\241\347\273\23701\350\241\250_\345\215\225\344\275\215\345\217\212\345\206\205\351\203\250\345\256\241\350\256\241\346\234\272\346\236\204\345\237\272\346\234\254\346\203\205\345\206\265\350\241\250-1.301\347\211\210.xls"
Binary files differ
diff --git "a/Data/44\345\206\205\345\256\241\347\273\23701\350\241\250_\345\215\225\344\275\215\345\217\212\345\206\205\351\203\250\345\256\241\350\256\241\346\234\272\346\236\204\345\237\272\346\234\254\346\203\205\345\206\265\350\241\250-1.301\347\211\210.xls" "b/Data/44\345\206\205\345\256\241\347\273\23701\350\241\250_\345\215\225\344\275\215\345\217\212\345\206\205\351\203\250\345\256\241\350\256\241\346\234\272\346\236\204\345\237\272\346\234\254\346\203\205\345\206\265\350\241\250-1.301\347\211\210.xls"
new file mode 100644
index 0000000..18f5445
--- /dev/null
+++ "b/Data/44\345\206\205\345\256\241\347\273\23701\350\241\250_\345\215\225\344\275\215\345\217\212\345\206\205\351\203\250\345\256\241\350\256\241\346\234\272\346\236\204\345\237\272\346\234\254\346\203\205\345\206\265\350\241\250-1.301\347\211\210.xls"
Binary files differ
diff --git "a/Data/55\345\206\205\345\256\241\347\273\23701\350\241\250_\345\215\225\344\275\215\345\217\212\345\206\205\351\203\250\345\256\241\350\256\241\346\234\272\346\236\204\345\237\272\346\234\254\346\203\205\345\206\265\350\241\250-1.301\347\211\210.xls" "b/Data/55\345\206\205\345\256\241\347\273\23701\350\241\250_\345\215\225\344\275\215\345\217\212\345\206\205\351\203\250\345\256\241\350\256\241\346\234\272\346\236\204\345\237\272\346\234\254\346\203\205\345\206\265\350\241\250-1.301\347\211\210.xls"
new file mode 100644
index 0000000..66f52dc
--- /dev/null
+++ "b/Data/55\345\206\205\345\256\241\347\273\23701\350\241\250_\345\215\225\344\275\215\345\217\212\345\206\205\351\203\250\345\256\241\350\256\241\346\234\272\346\236\204\345\237\272\346\234\254\346\203\205\345\206\265\350\241\250-1.301\347\211\210.xls"
Binary files differ
diff --git "a/Data/66\345\206\205\345\256\241\347\273\23701\350\241\250_\345\215\225\344\275\215\345\217\212\345\206\205\351\203\250\345\256\241\350\256\241\346\234\272\346\236\204\345\237\272\346\234\254\346\203\205\345\206\265\350\241\250-1.301\347\211\210.xls" "b/Data/66\345\206\205\345\256\241\347\273\23701\350\241\250_\345\215\225\344\275\215\345\217\212\345\206\205\351\203\250\345\256\241\350\256\241\346\234\272\346\236\204\345\237\272\346\234\254\346\203\205\345\206\265\350\241\250-1.301\347\211\210.xls"
new file mode 100644
index 0000000..05365a4
--- /dev/null
+++ "b/Data/66\345\206\205\345\256\241\347\273\23701\350\241\250_\345\215\225\344\275\215\345\217\212\345\206\205\351\203\250\345\256\241\350\256\241\346\234\272\346\236\204\345\237\272\346\234\254\346\203\205\345\206\265\350\241\250-1.301\347\211\210.xls"
Binary files differ
diff --git a/Data/save2.xls b/Data/save2.xls
new file mode 100644
index 0000000..a846e4e
--- /dev/null
+++ b/Data/save2.xls
Binary files differ
diff --git a/Data/test.xlsx b/Data/test.xlsx
new file mode 100644
index 0000000..cd267a1
--- /dev/null
+++ b/Data/test.xlsx
Binary files differ
diff --git "a/Data/\345\206\205\345\256\241\347\273\23701\350\241\250_\345\215\225\344\275\215\345\217\212\345\206\205\351\203\250\345\256\241\350\256\241\346\234\272\346\236\204\345\237\272\346\234\254\346\203\205\345\206\265\350\241\250-1.301\347\211\210.xls" "b/Data/\345\206\205\345\256\241\347\273\23701\350\241\250_\345\215\225\344\275\215\345\217\212\345\206\205\351\203\250\345\256\241\350\256\241\346\234\272\346\236\204\345\237\272\346\234\254\346\203\205\345\206\265\350\241\250-1.301\347\211\210.xls"
new file mode 100644
index 0000000..3fc4bb6
--- /dev/null
+++ "b/Data/\345\206\205\345\256\241\347\273\23701\350\241\250_\345\215\225\344\275\215\345\217\212\345\206\205\351\203\250\345\256\241\350\256\241\346\234\272\346\236\204\345\237\272\346\234\254\346\203\205\345\206\265\350\241\250-1.301\347\211\210.xls"
Binary files differ
diff --git "a/Data/\345\215\225\344\275\215\345\206\205\351\203\250\345\256\241\350\256\241\344\270\232\345\212\241\346\203\205\345\206\265\350\241\250.xls" "b/Data/\345\215\225\344\275\215\345\206\205\351\203\250\345\256\241\350\256\241\344\270\232\345\212\241\346\203\205\345\206\265\350\241\250.xls"
new file mode 100644
index 0000000..4563ff4
--- /dev/null
+++ "b/Data/\345\215\225\344\275\215\345\206\205\351\203\250\345\256\241\350\256\241\344\270\232\345\212\241\346\203\205\345\206\265\350\241\250.xls"
Binary files differ
diff --git "a/Data/\345\215\225\344\275\215\345\206\205\351\203\250\345\256\241\350\256\241\344\270\232\345\212\241\346\203\205\345\206\265\350\241\250_\347\240\201\350\232\201\350\275\257\344\273\266\346\212\200\346\234\257\050\350\245\277\345\256\211\051\346\234\211\351\231\220\345\205\254\345\217\270.xls" "b/Data/\345\215\225\344\275\215\345\206\205\351\203\250\345\256\241\350\256\241\344\270\232\345\212\241\346\203\205\345\206\265\350\241\250_\347\240\201\350\232\201\350\275\257\344\273\266\346\212\200\346\234\257\050\350\245\277\345\256\211\051\346\234\211\351\231\220\345\205\254\345\217\270.xls"
new file mode 100644
index 0000000..4193278
--- /dev/null
+++ "b/Data/\345\215\225\344\275\215\345\206\205\351\203\250\345\256\241\350\256\241\344\270\232\345\212\241\346\203\205\345\206\265\350\241\250_\347\240\201\350\232\201\350\275\257\344\273\266\346\212\200\346\234\257\050\350\245\277\345\256\211\051\346\234\211\351\231\220\345\205\254\345\217\270.xls"
Binary files differ
diff --git "a/Data/\345\215\225\344\275\215\345\206\205\351\203\250\345\256\241\350\256\241\344\270\232\345\212\241\346\203\205\345\206\265\350\241\250_\347\240\201\350\232\201\350\275\257\344\273\266\346\212\200\346\234\257\050\350\245\277\345\256\211\051\346\234\211\351\231\220\345\205\254\345\217\2702.xls" "b/Data/\345\215\225\344\275\215\345\206\205\351\203\250\345\256\241\350\256\241\344\270\232\345\212\241\346\203\205\345\206\265\350\241\250_\347\240\201\350\232\201\350\275\257\344\273\266\346\212\200\346\234\257\050\350\245\277\345\256\211\051\346\234\211\351\231\220\345\205\254\345\217\2702.xls"
new file mode 100644
index 0000000..f059e73
--- /dev/null
+++ "b/Data/\345\215\225\344\275\215\345\206\205\351\203\250\345\256\241\350\256\241\344\270\232\345\212\241\346\203\205\345\206\265\350\241\250_\347\240\201\350\232\201\350\275\257\344\273\266\346\212\200\346\234\257\050\350\245\277\345\256\211\051\346\234\211\351\231\220\345\205\254\345\217\2702.xls"
Binary files differ
diff --git "a/Data/\345\215\225\344\275\215\345\206\205\351\203\250\345\256\241\350\256\241\344\270\232\345\212\241\346\203\205\345\206\265\350\241\250_\347\240\201\350\232\201\350\275\257\344\273\266\346\212\200\346\234\257\050\350\245\277\345\256\211\051\346\234\211\351\231\220\345\205\254\345\217\2707.xls" "b/Data/\345\215\225\344\275\215\345\206\205\351\203\250\345\256\241\350\256\241\344\270\232\345\212\241\346\203\205\345\206\265\350\241\250_\347\240\201\350\232\201\350\275\257\344\273\266\346\212\200\346\234\257\050\350\245\277\345\256\211\051\346\234\211\351\231\220\345\205\254\345\217\2707.xls"
new file mode 100644
index 0000000..dc45e52
--- /dev/null
+++ "b/Data/\345\215\225\344\275\215\345\206\205\351\203\250\345\256\241\350\256\241\344\270\232\345\212\241\346\203\205\345\206\265\350\241\250_\347\240\201\350\232\201\350\275\257\344\273\266\346\212\200\346\234\257\050\350\245\277\345\256\211\051\346\234\211\351\231\220\345\205\254\345\217\2707.xls"
Binary files differ
diff --git "a/Data/\347\233\256\345\211\215\347\263\273\347\273\237\351\234\200\344\274\230\345\214\226\347\232\204\345\234\260\346\226\271.docx" "b/Data/\347\233\256\345\211\215\347\263\273\347\273\237\351\234\200\344\274\230\345\214\226\347\232\204\345\234\260\346\226\271.docx"
new file mode 100644
index 0000000..caf8177
--- /dev/null
+++ "b/Data/\347\233\256\345\211\215\347\263\273\347\273\237\351\234\200\344\274\230\345\214\226\347\232\204\345\234\260\346\226\271.docx"
Binary files differ
diff --git "a/Data/\351\231\204\344\273\2661-\351\227\256\351\242\230\346\225\264\346\224\271\345\217\260\350\264\246.xlsx" "b/Data/\351\231\204\344\273\2661-\351\227\256\351\242\230\346\225\264\346\224\271\345\217\260\350\264\246.xlsx"
new file mode 100644
index 0000000..1b61a84
--- /dev/null
+++ "b/Data/\351\231\204\344\273\2661-\351\227\256\351\242\230\346\225\264\346\224\271\345\217\260\350\264\246.xlsx"
Binary files differ
diff --git "a/Data/\351\231\204\344\273\2662_\345\206\205\345\256\241\347\273\23701\350\241\250_\345\215\225\344\275\215\345\217\212\345\206\205\351\203\250\345\256\241\350\256\241\346\234\272\346\236\204\345\237\272\346\234\254\346\203\205\345\206\265\350\241\250-1.301\347\211\210\0501\051.xls" "b/Data/\351\231\204\344\273\2662_\345\206\205\345\256\241\347\273\23701\350\241\250_\345\215\225\344\275\215\345\217\212\345\206\205\351\203\250\345\256\241\350\256\241\346\234\272\346\236\204\345\237\272\346\234\254\346\203\205\345\206\265\350\241\250-1.301\347\211\210\0501\051.xls"
new file mode 100644
index 0000000..b552258
--- /dev/null
+++ "b/Data/\351\231\204\344\273\2662_\345\206\205\345\256\241\347\273\23701\350\241\250_\345\215\225\344\275\215\345\217\212\345\206\205\351\203\250\345\256\241\350\256\241\346\234\272\346\236\204\345\237\272\346\234\254\346\203\205\345\206\265\350\241\250-1.301\347\211\210\0501\051.xls"
Binary files differ
diff --git "a/Data/\351\231\204\344\273\2663_\345\206\205\345\256\241\347\273\23702\350\241\250_\345\215\225\344\275\215\345\206\205\351\203\250\345\256\241\350\256\241\344\270\232\345\212\241\346\203\205\345\206\265\350\241\250.xls" "b/Data/\351\231\204\344\273\2663_\345\206\205\345\256\241\347\273\23702\350\241\250_\345\215\225\344\275\215\345\206\205\351\203\250\345\256\241\350\256\241\344\270\232\345\212\241\346\203\205\345\206\265\350\241\250.xls"
new file mode 100644
index 0000000..6e50387
--- /dev/null
+++ "b/Data/\351\231\204\344\273\2663_\345\206\205\345\256\241\347\273\23702\350\241\250_\345\215\225\344\275\215\345\206\205\351\203\250\345\256\241\350\256\241\344\270\232\345\212\241\346\203\205\345\206\265\350\241\250.xls"
Binary files differ
diff --git "a/Data/\351\231\204\344\273\2663_\345\206\205\345\256\241\347\273\23702\350\241\250_\345\215\225\344\275\215\345\206\205\351\203\250\345\256\241\350\256\241\344\270\232\345\212\241\346\203\205\345\206\265\350\241\2501.xls" "b/Data/\351\231\204\344\273\2663_\345\206\205\345\256\241\347\273\23702\350\241\250_\345\215\225\344\275\215\345\206\205\351\203\250\345\256\241\350\256\241\344\270\232\345\212\241\346\203\205\345\206\265\350\241\2501.xls"
new file mode 100644
index 0000000..47fcca1
--- /dev/null
+++ "b/Data/\351\231\204\344\273\2663_\345\206\205\345\256\241\347\273\23702\350\241\250_\345\215\225\344\275\215\345\206\205\351\203\250\345\256\241\350\256\241\344\270\232\345\212\241\346\203\205\345\206\265\350\241\2501.xls"
Binary files differ
diff --git "a/Data/\351\231\204\344\273\2663_\345\206\205\345\256\241\347\273\23702\350\241\250_\345\215\225\344\275\215\345\206\205\351\203\250\345\256\241\350\256\241\344\270\232\345\212\241\346\203\205\345\206\265\350\241\2502.xls" "b/Data/\351\231\204\344\273\2663_\345\206\205\345\256\241\347\273\23702\350\241\250_\345\215\225\344\275\215\345\206\205\351\203\250\345\256\241\350\256\241\344\270\232\345\212\241\346\203\205\345\206\265\350\241\2502.xls"
new file mode 100644
index 0000000..74023c8
--- /dev/null
+++ "b/Data/\351\231\204\344\273\2663_\345\206\205\345\256\241\347\273\23702\350\241\250_\345\215\225\344\275\215\345\206\205\351\203\250\345\256\241\350\256\241\344\270\232\345\212\241\346\203\205\345\206\265\350\241\2502.xls"
Binary files differ
diff --git "a/Data/\351\231\204\344\273\2663_\345\206\205\345\256\241\347\273\23702\350\241\250_\345\215\225\344\275\215\345\206\205\351\203\250\345\256\241\350\256\241\344\270\232\345\212\241\346\203\205\345\206\265\350\241\250_\347\240\201\350\232\201\350\275\257\344\273\266\346\212\200\346\234\257\050\350\245\277\345\256\211\051\346\234\211\351\231\220\345\205\254\345\217\270.xls" "b/Data/\351\231\204\344\273\2663_\345\206\205\345\256\241\347\273\23702\350\241\250_\345\215\225\344\275\215\345\206\205\351\203\250\345\256\241\350\256\241\344\270\232\345\212\241\346\203\205\345\206\265\350\241\250_\347\240\201\350\232\201\350\275\257\344\273\266\346\212\200\346\234\257\050\350\245\277\345\256\211\051\346\234\211\351\231\220\345\205\254\345\217\270.xls"
new file mode 100644
index 0000000..140ab61
--- /dev/null
+++ "b/Data/\351\231\204\344\273\2663_\345\206\205\345\256\241\347\273\23702\350\241\250_\345\215\225\344\275\215\345\206\205\351\203\250\345\256\241\350\256\241\344\270\232\345\212\241\346\203\205\345\206\265\350\241\250_\347\240\201\350\232\201\350\275\257\344\273\266\346\212\200\346\234\257\050\350\245\277\345\256\211\051\346\234\211\351\231\220\345\205\254\345\217\270.xls"
Binary files differ
diff --git "a/Data/\351\231\204\344\273\2664_\345\206\205\345\256\241\347\273\23703\350\241\250_\345\206\205\351\203\250\345\256\241\350\256\241\347\273\237\350\256\241\347\273\274\345\220\210\350\241\250.xls" "b/Data/\351\231\204\344\273\2664_\345\206\205\345\256\241\347\273\23703\350\241\250_\345\206\205\351\203\250\345\256\241\350\256\241\347\273\237\350\256\241\347\273\274\345\220\210\350\241\250.xls"
new file mode 100644
index 0000000..76d4533
--- /dev/null
+++ "b/Data/\351\231\204\344\273\2664_\345\206\205\345\256\241\347\273\23703\350\241\250_\345\206\205\351\203\250\345\256\241\350\256\241\347\273\237\350\256\241\347\273\274\345\220\210\350\241\250.xls"
Binary files differ
diff --git a/internal_system_v1/converinfo2.cpp b/internal_system_v1/converinfo2.cpp
index b93f5d6..ac5178e 100644
--- a/internal_system_v1/converinfo2.cpp
+++ b/internal_system_v1/converinfo2.cpp
@@ -1,13 +1,20 @@
 锘�#include "converinfo2.h"
 #include "ui_converinfo2.h"
 #include <QDebug>
+#include <QDirIterator>
+#include <QFileDialog>
+#include <QSqlQuery>
+#include <QSqlRecord>
 
 ConverInfo2::ConverInfo2(QWidget *parent) :
     QMainWindow(parent),
     ui(new Ui::ConverInfo2)
 {
     ui->setupUi(this);
-    initUi();
+    m_menu = nullptr;
+    //initUi();
+    readInfo(); // 鍔犺浇琛ㄦ牸
+    addMenu(); // 澧炲姞鑿滃崟
 }
 
 ConverInfo2::~ConverInfo2()
@@ -90,3 +97,368 @@
 {
     qDebug()<<"鍙屽嚮"<<index;
 }
+
+void ConverInfo2::readInfo()
+{
+//    QXlsx::Document doc("./debug/Data/test.xlsx");
+//    QString cc = doc.read("A1").toString();
+//    qDebug()<<"cc"<<cc;
+//    ui->label_creditCode->setText(cc);
+    extern QString g_dataRootPath;
+
+    QString dirPath = "./debug/Data";
+    QString dirPathRelease = "./release/Data";
+    QString dirPathData = "./Data";
+    QDir dir(dirPathData);
+    if(dir.exists()){
+        dirPath = dirPathData; // 瀛樺湪鍒欒鐩�
+    }
+
+    QDir dirRe(dirPathRelease);
+    if(dirRe.exists()){
+        dirPath = dirPathRelease;
+    }
+    g_dataRootPath = dirPath; // 灏嗘牴鐩綍淇濆瓨璧锋潵
+    QStringList list;
+    QDirIterator it(dirPath, {"*.xls","*.xlsx"}, QDir::Files | QDir::NoSymLinks | QDir::NoDotAndDotDot, QDirIterator::Subdirectories);
+    while(it.hasNext())
+    {
+        it.next();
+        list.append(it.fileInfo().absoluteFilePath());
+    }
+    foreach(QString str, list)
+    {
+        qDebug() << str;
+        int index = str.indexOf("鍐呭缁�01琛�");
+        qDebug()<<"index:"<<index;
+        if(index > 0){
+            QAxObject excel("Excel.Application");
+            excel.setProperty("Visible",false);
+            excel.setProperty("DisplayAlerts",false);
+            qDebug()<<"open:"<<str;
+            qDebug()<<"excel:"<<excel.className();
+            QAxObject * wbs = excel.querySubObject("WorkBooks");
+            QAxObject * wb = wbs->querySubObject("Open(QString&)",str);
+            //QAxObject* pWorkBook = excel.querySubObject("ActiveWorkBook");
+            //QAxObject* pWorkSheets = pWorkBook->querySubObject("Sheets");//鑾峰彇宸ヤ綔琛�
+            QAxObject * shs = wb->querySubObject("Sheets"); // WorkSheets 涔熷彲浠�
+            int cnt = shs->property("Count").toInt();
+            qDebug()<<"cnt="<<cnt;
+            for(int i=0;i<cnt;++i){
+                QAxObject * sheet = shs->querySubObject("Item(int)", i+1);
+                QString sheetName = sheet->property("Name").toString();
+                qDebug()<<"sh name:"<<sheetName;
+                QAxObject *usedRange = sheet->querySubObject("UsedRange");
+                int rows = usedRange->querySubObject("Rows")->property("Count").toInt();
+                int columns = usedRange->querySubObject("Columns")->property("Count").toInt();
+                qDebug()<<"r--c:"<<rows<<columns;
+                QVariant  val = usedRange->dynamicCall("Value"); // 鎷垮埌浜岀淮琛ㄦ牸
+                QVariantList valRows = val.toList();
+                // 閬嶅巻姣忎竴椤�
+                for(int i=0;i<rows;++i){
+                    QVariantList valrow = valRows[i].toList();
+                    for(int j=0;j<columns;++j){
+                        QVariant valData = valrow[j];
+                        if(valData.isValid()){
+                            qDebug()<<"val:"<< i<< j << valData;
+                        }
+
+                    }
+                }
+
+                // 瀹炰緥鍖栫粨鏋勪綋锛岀劧鍚庢尐涓祴鍊�
+                ComInfo curComInfo;
+
+                // 缁熶竴淇$敤浠g爜
+                QVariant uniCode = valRows[9].toList().at(3);
+                if(uniCode.isValid()){
+                    ui->label_creditCode->setText(uniCode.toString());
+                    strcpy(curComInfo.creditCode,uniCode.toString().toLocal8Bit().data());
+                }
+                // 鍗曚綅鍚嶇О
+                QVariant name = valRows[9].toList().at(8);
+                if(name.isValid()){
+                    ui->label_name->setText(name.toString());
+                    QTreeWidgetItem *top1 = new QTreeWidgetItem(ui->treeWidget);
+                    top1->setText(0,name.toString());
+
+                }else{
+                    ui->label_name->setText("");
+                }
+                // 鏈烘瀯绫诲瀷
+                QVariant comType = valRows[12].toList().at(3);
+                if(comType.isValid()){
+                    ui->label_comType->setText(comType.toString());
+                    strcpy(curComInfo.comType,comType.toString().toLocal8Bit().data());
+                }else{
+                    ui->label_comType->setText("");
+                }
+                // 涓昏涓氬姟娲诲姩
+                QString business;
+                QVariant first = valRows[18].toList().at(2);
+                if(first.isValid()){
+                    business.append(first.toString());
+                }
+                QVariant sec = valRows[18].toList().at(5);
+                if(sec.isValid()){
+                    business += "銆�";
+                    business.append(sec.toString());
+                }
+                QVariant third = valRows[18].toList().at(8);
+                if(third.isValid()){
+                    business += "銆�";
+                    business.append(third.toString());
+                }
+                if(business.size() > 0){
+                    ui->label_business->setText(business);
+                    ui->label_business->setToolTip(business);
+                    strcpy(curComInfo.business,business.toLocal8Bit().data());
+                }else{
+                    ui->label_business->setText("");
+                }
+                // 涓氬姟浠g爜
+                QVariant busCode = valRows[19].toList().at(4);
+                if(busCode.isValid()){
+                    ui->label_businessCode->setText(busCode.toString());
+                    strcpy(curComInfo.businessCode,busCode.toString().toLocal8Bit().data());
+                }else{
+                    ui->label_businessCode->setText("");
+                }
+                // 娉ㄥ唽鍦板潃
+                QString addr="";
+                QVariant province = valRows[21].toList().at(1); // 鐪佷唤
+                QVariant city = valRows[21].toList().at(4); // 鍩庡競
+                QVariant district = valRows[21].toList().at(7); // 绠¤緰鍖�
+                QVariant village = valRows[22].toList().at(2); // 涔¢晣
+                QVariant street = valRows[22].toList().at(4); // 琛楅亾
+                QVariant Sub = valRows[23].toList().at(2); // 琛楅亾鍔炰簨澶�
+                QVariant committee = valRows[25].toList().at(3); // 灞呭浼�
+                //qDebug()<<province<<city<<district<<village<<street<<Sub<<committee;
+                if(province.isValid()) addr += province.toString();
+                if(city.isValid()) addr += city.toString();
+                if(district.isValid()) addr += district.toString();
+                if(village.isValid()) addr += village.toString();
+                if(street.isValid()) addr += street.toString();
+                if(Sub.isValid()) addr += Sub.toString();
+                if(committee.isValid()) addr += committee.toString();
+                if(addr.size()>10){
+                    ui->label_addr->setText(addr);
+                    strcpy(curComInfo.addr,addr.toLocal8Bit().data());
+                }else{
+                    ui->label_addr->setText("");
+                }
+                // 鍖哄煙浠g爜
+                QVariant areaCode = valRows[24].toList().at(2);
+                if(areaCode.isValid()){
+                    ui->label_areaCode->setText(areaCode.toString());
+                    strcpy(curComInfo.areaCode,areaCode.toString().toLocal8Bit().data());
+                }else{
+                    ui->label_areaCode->setText("");
+                }
+                // 鍩庝埂浠g爜
+                QVariant townCode = valRows[24].toList().at(6);
+                if(townCode.isValid()) {
+                    ui->label_townCode->setText(townCode.toString());
+                    strcpy(curComInfo.townCode,townCode.toString().toLocal8Bit().data());
+                }else{
+                    ui->label_townCode->setText("");
+                }
+
+                // 鍗曚綅瑙勬ā
+                QVariant scale = valRows[25].toList().at(3);
+                if(scale.isValid()){
+                    ui->label_scale->setText(scale.toString());
+                    strcpy(curComInfo.scale,scale.toString().toLocal8Bit().data());
+                }else{
+                    ui->label_scale->setText("");
+                }
+                // 浠庝笟浜烘暟
+                QVariant people = valRows[26].toList().at(6);
+                if(people.isValid()) {
+                    ui->label_people->setText(people.toString());
+                    //strcpy(curComInfo.people,people.toString().toLocal8Bit().data());
+                    curComInfo.people = people.toInt();
+                }else{
+                    ui->label_people->setText("");
+                }
+                // 娉曚汉
+                QVariant representative = valRows[27].toList().at(4);
+                if(representative.isValid()) {
+                    ui->label_representative->setText(representative.toString());
+                    strcpy(curComInfo.representative,representative.toString().toLocal8Bit().data());
+                }else{
+                    ui->label_representative->setText("");
+                }
+                // 浼氳鏍囧噯绫诲埆 standardType
+                QVariant standardType = valRows[27].toList().at(8);
+                if(standardType.isValid()){
+                    ui->label_standardType->setText(standardType.toString());
+                    strcpy(curComInfo.standardType,standardType.toString().toLocal8Bit());
+                }else{
+                    ui->label_standardType->setText("");
+                }
+                // 闀块�斿尯鍙�
+                QVariant trunkCode = valRows[31].toList().at(2);
+                if(trunkCode.isValid()){
+                    ui->label_trunkCode->setText(trunkCode.toString());
+                    strcpy(curComInfo.trunkCode,trunkCode.toString().toLocal8Bit().data());
+                }else{
+                    ui->label_trunkCode->setText("");
+                }
+                // 鍥哄畾鐢佃瘽
+                QVariant fixedTel = valRows[32].toList().at(2);
+                if(fixedTel.isValid()) {
+                    ui->label_fixedTel->setText(fixedTel.toString());
+                    strcpy(curComInfo.fixedTel,fixedTel.toString().toLocal8Bit().data());
+                }else{
+                    ui->label_fixedTel->setText("");
+                }
+                // 閭斂缂栫爜
+                QVariant postCode = valRows[33].toList().at(2);
+                if(postCode.isValid()){
+                    ui->label_postCode->setText(postCode.toString());
+                    strcpy(curComInfo.postCode,postCode.toString().toLocal8Bit().data());
+                }else{
+                    ui->label_postCode->setText("");
+                }
+                // 鐢靛瓙閭
+                QVariant email = valRows[30].toList().at(5);
+                if(email.isValid()) {
+                    ui->label_email->setText(email.toString());
+                    strcpy(curComInfo.email,email.toString().toLocal8Bit().data());
+                }else{
+                    ui->label_email->setText("");
+                }
+                // 缃戝潃
+                QVariant webSite = valRows[32].toList().at(5);
+                if(webSite.isValid()) {
+                    ui->label_webSite->setText(webSite.toString());
+                    strcpy(curComInfo.webSite,webSite.toString().toLocal8Bit().data());
+                }else{
+                    ui->label_webSite->setText("");
+                }
+
+                // 浜屻�佸崟浣嶇粍缁囩粨鏋勬儏鍐�
+                // 鏄惁鏈変笂涓�绾ф硶浜�
+                QVariant hasUpLegal = valRows[35].toList().at(4);
+                if(hasUpLegal.isValid()){
+                    strcpy(curComInfo.hasUpLegal,hasUpLegal.toString().toLocal8Bit().data());
+                    qDebug()<<"has up legal"<<hasUpLegal;
+                }
+                // 涓婄骇娉曚汉鍗曚綅缁熶竴绀句細淇$敤浠g爜
+                QVariant upCreditCode = valRows[36].toList().at(7);
+                if(upCreditCode.isValid()){
+                    strcpy(curComInfo.upCreditCode,upCreditCode.toString().toLocal8Bit().data());
+                    qDebug()<<"upCreditCode"<<upCreditCode;
+                }else {
+                    qDebug()<<"upCreditCode fail"<<name;
+                }
+                // 鍘熺粍缁囨満鏋勪唬鐮�
+                QVariant oldCreditCode = valRows[37].toList().at(7);
+                if(oldCreditCode.isValid()){
+                    strcpy(curComInfo.oldCreditCode,oldCreditCode.toString().toLocal8Bit().data());
+                    qDebug()<<"oldCreditCode"<<oldCreditCode;
+                }
+                // 涓婁竴绾у崟浣嶈缁嗗悕绉�
+                QVariant upName = valRows[38].toList().at(7);
+                if(upName.isValid()){
+                    strcpy(curComInfo.upName,upName.toString().toLocal8Bit().data());
+                    qDebug()<<"upName"<<upName;
+                }
+
+                // 鎬诲璁″笀涓庡唴瀹℃満鏋勫熀鏈儏鍐�
+
+                // 鏄惁璁剧疆鎬诲璁″笀
+                QVariant hasChiefDesigner = valRows[40].toList().at(4);
+                if(hasChiefDesigner.isValid()){
+                    strcpy(curComInfo.hasChiefDesigner,hasChiefDesigner.toString().toLocal8Bit().data());
+                    qDebug()<<"hasChiefDesigner"<<hasChiefDesigner;
+                }
+                // 鎬诲璁″笀鑱屼綅灞傜骇
+                QVariant ChiefDesignerLevel = valRows[41].toList().at(4);
+                if(ChiefDesignerLevel.isValid()){
+                    strcpy(curComInfo.ChiefDesignerLevel,ChiefDesignerLevel.toString().toLocal8Bit().data());
+                    qDebug()<<"ChiefDesignerLevel"<<ChiefDesignerLevel;
+                }
+                // 鎬诲璁″笀浠昏亴鏂瑰紡
+                QVariant employmentMode = valRows[44].toList().at(4);
+                if(employmentMode.isValid()){
+                    strcpy(curComInfo.employmentMode,employmentMode.toString().toLocal8Bit().data());
+                    qDebug()<<"employmentMode"<<employmentMode;
+                }
+
+                // 鏄惁璁剧疆鍐呭鏈烘瀯
+                QVariant hasSetIntervalAudit = valRows[47].toList().at(4);
+                if(hasSetIntervalAudit.isValid()){
+                    strcpy(curComInfo.hasSetIntervalAudit,hasSetIntervalAudit.toString().toLocal8Bit().data());
+                    qDebug()<<"hasSetIntervalAudit"<<hasSetIntervalAudit;
+                }
+                // 鍐呭鏈烘瀯鍚嶇О
+                QVariant internalName = valRows[48].toList().at(4);
+                if(internalName.isValid()){
+                    strcpy(curComInfo.internalName,internalName.toString().toLocal8Bit().data());
+                    qDebug()<<"internalName"<<internalName;
+                }
+                // 鍐呭宸ヤ綔鐨勯瀵兼満鏋�
+                QVariant leadingOrganization = valRows[49].toList().at(4);
+                if(leadingOrganization.isValid()){
+                    strcpy(curComInfo.leadingOrganization,leadingOrganization.toString().toLocal8Bit().data());
+                    qDebug()<<"leadingOrganization"<<leadingOrganization;
+                }
+                // 鏄惁鐙珛璁剧疆鍐呭鏈烘瀯
+                QVariant hasSetSeparateIA = valRows[53].toList().at(4);
+                if(hasSetSeparateIA.isValid()){
+                    strcpy(curComInfo.hasSetSeparateIA,hasSetSeparateIA.toString().toLocal8Bit().data());
+                    qDebug()<<"hasSetSeparateIA"<<hasSetSeparateIA;
+                }
+                // 鍚堝苟璁剧疆 璐㈠姟閮ㄩ棬
+                QVariant financeDepartment = valRows[55].toList().at(4);
+                if(financeDepartment.isValid()){
+                    //strcpy(curComInfo.financeDepartment,financeDepartment.toString().toLocal8Bit().data());
+                    curComInfo.financeDepartment = financeDepartment.toBool();
+                    qDebug()<<"financeDepartment"<<financeDepartment;
+                }
+                // 娉曞姟閮ㄩ棬銆佸唴閮ㄦ帶鍒堕儴闂ㄣ�佺邯妫�閮ㄩ棬銆佸叾浠栭儴闂�
+
+                // 鍐呭鏈烘瀯灞傜骇
+                QVariant intavalAuditLeval = valRows[56].toList().at(4);
+                if(intavalAuditLeval.isValid()){
+                    strcpy(curComInfo.intavalAuditLeval,intavalAuditLeval.toString().toLocal8Bit().data());
+                    qDebug()<<"intavalAuditLeval"<<intavalAuditLeval;
+                }
+
+                // 鏈�鍚庡瓨鍒癿ap涓�
+                m_nameAndComInfos[name.toString()]=curComInfo;
+
+            }
+            wbs->dynamicCall("Close()");
+            excel.dynamicCall("Quit(void)");
+
+            qDebug()<<"鍗曚綅淇℃伅鏁伴噺锛�"<<m_nameAndComInfos.size();
+        }
+    }
+
+
+//    QAxObject excel("./debug/Data/闄勪欢2_鍐呭缁�01琛╛鍗曚綅鍙婂唴閮ㄥ璁℃満鏋勫熀鏈儏鍐佃〃-1.301鐗�(1).xls");
+//    excel.setProperty("Visible",true);
+//    excel.setProperty("DisplayAlerts",false);
+
+}
+
+void ConverInfo2::addMenu()
+{
+    // 璁剧疆鑿滃崟:娣诲姞鍗曚綅銆佸垹闄ゅ崟浣�
+    if(m_menu==nullptr){
+        m_menu = new QMenu(this);
+        qDebug()<<"init menu ok";
+    }
+
+    m_menu->addAction("鍒犻櫎");
+    m_menu->addAction("澧炲姞");
+
+    ui->treeWidget->setContextMenuPolicy(Qt::CustomContextMenu);
+    connect(ui->treeWidget,SIGNAL(customContextMenuRequested(QPoint)),this,SLOT(showMenu(QPoint)));
+
+    connect(m_menu->actions().at(0),SIGNAL(triggered(bool)),this,SLOT(deleteInfo()));
+    connect(m_menu->actions().at(1),SIGNAL(triggered(bool)),this,SLOT(addInfo()));
+}
diff --git a/internal_system_v1/converinfo2.h b/internal_system_v1/converinfo2.h
index f870cc7..d539c9d 100644
--- a/internal_system_v1/converinfo2.h
+++ b/internal_system_v1/converinfo2.h
@@ -4,6 +4,8 @@
 #include <QMainWindow>
 #include <QMenu>
 #include <QTreeWidgetItem>
+#include <QAxObject>
+#include "struct_data.h"
 
 namespace Ui {
 class ConverInfo2;
@@ -17,6 +19,8 @@
     explicit ConverInfo2(QWidget *parent = 0);
     ~ConverInfo2();
     void initUi();
+    void readInfo();
+    void addMenu();
 private slots:
     void showMenu(QPoint p);
     void addInfo();
@@ -27,6 +31,7 @@
     Ui::ConverInfo2 *ui;
     QMenu *m_menu;
     QTreeWidgetItem *m_curItem;
+    QMap<QString,ComInfo> m_nameAndComInfos; // 鍗曚綅鏄犲皠淇℃伅琛�
 };
 
 #endif // CONVERINFO2_H
diff --git a/internal_system_v1/converinfo2.ui b/internal_system_v1/converinfo2.ui
index f69902e..6574486 100644
--- a/internal_system_v1/converinfo2.ui
+++ b/internal_system_v1/converinfo2.ui
@@ -38,8 +38,8 @@
       <widget class="QWidget" name="scrollAreaWidgetContents">
        <property name="geometry">
         <rect>
-         <x>0</x>
-         <y>-400</y>
+         <x>-15</x>
+         <y>-908</y>
          <width>1000</width>
          <height>3000</height>
         </rect>
@@ -1346,7 +1346,7 @@
          <set>Qt::AlignCenter</set>
         </property>
        </widget>
-       <widget class="QComboBox" name="comboBox_3">
+       <widget class="QComboBox" name="comboBox_hasUpLegal">
         <property name="geometry">
          <rect>
           <x>410</x>
@@ -1475,7 +1475,7 @@
          </rect>
         </property>
        </widget>
-       <widget class="QComboBox" name="comboBox_4">
+       <widget class="QComboBox" name="comboBox_hasChiefDesigner">
         <property name="geometry">
          <rect>
           <x>410</x>
@@ -1577,7 +1577,7 @@
          <set>Qt::AlignCenter</set>
         </property>
        </widget>
-       <widget class="QComboBox" name="comboBox_5">
+       <widget class="QComboBox" name="comboBox_ChiefDesignerLevel">
         <property name="geometry">
          <rect>
           <x>410</x>
@@ -1613,7 +1613,7 @@
          </property>
         </item>
        </widget>
-       <widget class="QComboBox" name="comboBox_6">
+       <widget class="QComboBox" name="comboBox_employmentMode">
         <property name="geometry">
          <rect>
           <x>410</x>
@@ -1687,7 +1687,7 @@
          <set>Qt::AlignCenter</set>
         </property>
        </widget>
-       <widget class="QComboBox" name="comboBox_7">
+       <widget class="QComboBox" name="comboBox_hasSetIntervalAudit">
         <property name="geometry">
          <rect>
           <x>410</x>
@@ -1780,7 +1780,7 @@
          </rect>
         </property>
        </widget>
-       <widget class="QComboBox" name="comboBox_8">
+       <widget class="QComboBox" name="comboBox_leadingOrganization">
         <property name="geometry">
          <rect>
           <x>410</x>
@@ -1859,7 +1859,7 @@
          <set>Qt::AlignCenter</set>
         </property>
        </widget>
-       <widget class="QComboBox" name="comboBox_9">
+       <widget class="QComboBox" name="comboBox_hasSetSeparateIA">
         <property name="geometry">
          <rect>
           <x>410</x>
@@ -1942,7 +1942,7 @@
          <set>Qt::AlignCenter</set>
         </property>
        </widget>
-       <widget class="QCheckBox" name="checkBox">
+       <widget class="QCheckBox" name="checkBox_financeDepartment">
         <property name="geometry">
          <rect>
           <x>100</x>
@@ -1955,7 +1955,7 @@
          <string>1 璐㈠姟閮ㄩ棬</string>
         </property>
        </widget>
-       <widget class="QCheckBox" name="checkBox_2">
+       <widget class="QCheckBox" name="checkBox_legalDepartment">
         <property name="geometry">
          <rect>
           <x>220</x>
@@ -1968,7 +1968,7 @@
          <string>2 娉曞姟閮ㄩ棬</string>
         </property>
        </widget>
-       <widget class="QCheckBox" name="checkBox_3">
+       <widget class="QCheckBox" name="checkBox_internalConDepart">
         <property name="geometry">
          <rect>
           <x>340</x>
@@ -1981,7 +1981,7 @@
          <string>3 鍐呴儴鎺у埗閮ㄩ棬</string>
         </property>
        </widget>
-       <widget class="QCheckBox" name="checkBox_4">
+       <widget class="QCheckBox" name="checkBox_disceplineInDepart">
         <property name="geometry">
          <rect>
           <x>480</x>
@@ -1994,7 +1994,7 @@
          <string>4 绾閮ㄩ棬</string>
         </property>
        </widget>
-       <widget class="QCheckBox" name="checkBox_5">
+       <widget class="QCheckBox" name="checkBox_otherDepart">
         <property name="geometry">
          <rect>
           <x>600</x>
@@ -2026,7 +2026,7 @@
          <set>Qt::AlignCenter</set>
         </property>
        </widget>
-       <widget class="QComboBox" name="comboBox_10">
+       <widget class="QComboBox" name="comboBox_intavalAuditLeval">
         <property name="geometry">
          <rect>
           <x>410</x>
@@ -2157,7 +2157,7 @@
          <set>Qt::AlignCenter</set>
         </property>
        </widget>
-       <widget class="QLineEdit" name="lineEdit_upName_2">
+       <widget class="QLineEdit" name="lineEdit_organazationNum">
         <property name="geometry">
          <rect>
           <x>420</x>
@@ -2167,7 +2167,7 @@
          </rect>
         </property>
        </widget>
-       <widget class="QLineEdit" name="lineEdit_upName_3">
+       <widget class="QLineEdit" name="lineEdit_realNum">
         <property name="geometry">
          <rect>
           <x>660</x>
@@ -2196,7 +2196,7 @@
          <set>Qt::AlignCenter</set>
         </property>
        </widget>
-       <widget class="QLineEdit" name="lineEdit_upName_4">
+       <widget class="QLineEdit" name="lineEdit_professionalNum">
         <property name="geometry">
          <rect>
           <x>920</x>
@@ -2263,7 +2263,7 @@
          <set>Qt::AlignCenter</set>
         </property>
        </widget>
-       <widget class="QLineEdit" name="lineEdit_upName_5">
+       <widget class="QLineEdit" name="lineEdit_CIANum">
         <property name="geometry">
          <rect>
           <x>420</x>
@@ -2330,7 +2330,7 @@
          <set>Qt::AlignCenter</set>
         </property>
        </widget>
-       <widget class="QLineEdit" name="lineEdit_upName_6">
+       <widget class="QLineEdit" name="lineEdit_masterNum">
         <property name="geometry">
          <rect>
           <x>420</x>
@@ -2397,7 +2397,7 @@
          <set>Qt::AlignCenter</set>
         </property>
        </widget>
-       <widget class="QLineEdit" name="lineEdit_upName_7">
+       <widget class="QLineEdit" name="lineEdit_undergraduatesNum">
         <property name="geometry">
          <rect>
           <x>420</x>
@@ -2445,7 +2445,7 @@
          <set>Qt::AlignCenter</set>
         </property>
        </widget>
-       <widget class="QLineEdit" name="lineEdit_upName_8">
+       <widget class="QLineEdit" name="lineEdit_juniorNum">
         <property name="geometry">
          <rect>
           <x>420</x>
@@ -2607,7 +2607,7 @@
          <set>Qt::AlignCenter</set>
         </property>
        </widget>
-       <widget class="QLineEdit" name="lineEdit_upName_9">
+       <widget class="QLineEdit" name="lineEdit_primaryNum">
         <property name="geometry">
          <rect>
           <x>420</x>
@@ -2617,7 +2617,7 @@
          </rect>
         </property>
        </widget>
-       <widget class="QLineEdit" name="lineEdit_upName_10">
+       <widget class="QLineEdit" name="lineEdit_intermediateNum">
         <property name="geometry">
          <rect>
           <x>420</x>
@@ -2627,7 +2627,7 @@
          </rect>
         </property>
        </widget>
-       <widget class="QLineEdit" name="lineEdit_upName_11">
+       <widget class="QLineEdit" name="lineEdit_seniorNum">
         <property name="geometry">
          <rect>
           <x>420</x>
@@ -2675,7 +2675,7 @@
          <set>Qt::AlignCenter</set>
         </property>
        </widget>
-       <widget class="QLineEdit" name="lineEdit_upName_12">
+       <widget class="QLineEdit" name="lineEdit_noTitleNum">
         <property name="geometry">
          <rect>
           <x>420</x>
@@ -2837,7 +2837,7 @@
          <set>Qt::AlignCenter</set>
         </property>
        </widget>
-       <widget class="QLineEdit" name="lineEdit_upName_13">
+       <widget class="QLineEdit" name="lineEdit_downThirtyOldNum">
         <property name="geometry">
          <rect>
           <x>420</x>
@@ -2847,7 +2847,7 @@
          </rect>
         </property>
        </widget>
-       <widget class="QLineEdit" name="lineEdit_upName_14">
+       <widget class="QLineEdit" name="lineEdit_upThirtyOldNum">
         <property name="geometry">
          <rect>
           <x>420</x>
@@ -2857,7 +2857,7 @@
          </rect>
         </property>
        </widget>
-       <widget class="QLineEdit" name="lineEdit_upName_15">
+       <widget class="QLineEdit" name="lineEdit_upFiftyOldNum">
         <property name="geometry">
          <rect>
           <x>420</x>
@@ -2905,7 +2905,7 @@
          <set>Qt::AlignCenter</set>
         </property>
        </widget>
-       <widget class="QLineEdit" name="lineEdit_upName_16">
+       <widget class="QLineEdit" name="lineEdit_economyNum">
         <property name="geometry">
          <rect>
           <x>420</x>
@@ -2934,7 +2934,7 @@
          <set>Qt::AlignCenter</set>
         </property>
        </widget>
-       <widget class="QLineEdit" name="lineEdit_upName_17">
+       <widget class="QLineEdit" name="lineEdit_auditNum">
         <property name="geometry">
          <rect>
           <x>420</x>
@@ -3039,7 +3039,7 @@
          <set>Qt::AlignCenter</set>
         </property>
        </widget>
-       <widget class="QLineEdit" name="lineEdit_upName_18">
+       <widget class="QLineEdit" name="lineEdit_accountingNum">
         <property name="geometry">
          <rect>
           <x>420</x>
@@ -3068,7 +3068,7 @@
          <set>Qt::AlignCenter</set>
         </property>
        </widget>
-       <widget class="QLineEdit" name="lineEdit_upName_19">
+       <widget class="QLineEdit" name="lineEdit_lawNum">
         <property name="geometry">
          <rect>
           <x>420</x>
@@ -3135,7 +3135,7 @@
          <set>Qt::AlignCenter</set>
         </property>
        </widget>
-       <widget class="QLineEdit" name="lineEdit_upName_20">
+       <widget class="QLineEdit" name="lineEdit_managerNum">
         <property name="geometry">
          <rect>
           <x>420</x>
@@ -3164,7 +3164,7 @@
          <set>Qt::AlignCenter</set>
         </property>
        </widget>
-       <widget class="QLineEdit" name="lineEdit_upName_21">
+       <widget class="QLineEdit" name="lineEdit_otherNum">
         <property name="geometry">
          <rect>
           <x>420</x>
@@ -3193,7 +3193,7 @@
          <set>Qt::AlignCenter</set>
         </property>
        </widget>
-       <widget class="QLineEdit" name="lineEdit_upName_22">
+       <widget class="QLineEdit" name="lineEdit_itNum">
         <property name="geometry">
          <rect>
           <x>420</x>
@@ -3279,7 +3279,7 @@
          <set>Qt::AlignCenter</set>
         </property>
        </widget>
-       <widget class="QLineEdit" name="lineEdit_upName_23">
+       <widget class="QLineEdit" name="lineEdit_engineeringNum">
         <property name="geometry">
          <rect>
           <x>420</x>
@@ -3437,7 +3437,7 @@
        <zorder>label_49</zorder>
        <zorder>label_50</zorder>
        <zorder>label_51</zorder>
-       <zorder>comboBox_3</zorder>
+       <zorder>comboBox_hasUpLegal</zorder>
        <zorder>label_52</zorder>
        <zorder>label_53</zorder>
        <zorder>label_54</zorder>
@@ -3445,57 +3445,57 @@
        <zorder>lineEdit_upCreditCode</zorder>
        <zorder>lineEdit_oldCreditCode</zorder>
        <zorder>lineEdit_upName</zorder>
-       <zorder>comboBox_4</zorder>
+       <zorder>comboBox_hasChiefDesigner</zorder>
        <zorder>label_56</zorder>
        <zorder>label_57</zorder>
        <zorder>label_58</zorder>
        <zorder>label_59</zorder>
-       <zorder>comboBox_5</zorder>
-       <zorder>comboBox_6</zorder>
+       <zorder>comboBox_ChiefDesignerLevel</zorder>
+       <zorder>comboBox_employmentMode</zorder>
        <zorder>label_60</zorder>
        <zorder>label_61</zorder>
-       <zorder>comboBox_7</zorder>
+       <zorder>comboBox_hasSetIntervalAudit</zorder>
        <zorder>label_62</zorder>
        <zorder>label_63</zorder>
        <zorder>label_64</zorder>
        <zorder>lineEdit_internalName</zorder>
-       <zorder>comboBox_8</zorder>
+       <zorder>comboBox_leadingOrganization</zorder>
        <zorder>label_65</zorder>
        <zorder>label_66</zorder>
-       <zorder>comboBox_9</zorder>
+       <zorder>comboBox_hasSetSeparateIA</zorder>
        <zorder>label_67</zorder>
        <zorder>label_68</zorder>
        <zorder>label_69</zorder>
-       <zorder>checkBox</zorder>
-       <zorder>checkBox_2</zorder>
-       <zorder>checkBox_3</zorder>
-       <zorder>checkBox_4</zorder>
-       <zorder>checkBox_5</zorder>
-       <zorder>comboBox_10</zorder>
+       <zorder>checkBox_financeDepartment</zorder>
+       <zorder>checkBox_legalDepartment</zorder>
+       <zorder>checkBox_internalConDepart</zorder>
+       <zorder>checkBox_disceplineInDepart</zorder>
+       <zorder>checkBox_otherDepart</zorder>
+       <zorder>comboBox_intavalAuditLeval</zorder>
        <zorder>label_71</zorder>
        <zorder>label_72</zorder>
        <zorder>label_73</zorder>
        <zorder>label_74</zorder>
        <zorder>label_75</zorder>
-       <zorder>lineEdit_upName_2</zorder>
-       <zorder>lineEdit_upName_3</zorder>
+       <zorder>lineEdit_organazationNum</zorder>
+       <zorder>lineEdit_realNum</zorder>
        <zorder>label_76</zorder>
-       <zorder>lineEdit_upName_4</zorder>
+       <zorder>lineEdit_professionalNum</zorder>
        <zorder>label_77</zorder>
        <zorder>label_78</zorder>
        <zorder>label_79</zorder>
-       <zorder>lineEdit_upName_5</zorder>
+       <zorder>lineEdit_CIANum</zorder>
        <zorder>label_80</zorder>
        <zorder>label_81</zorder>
        <zorder>label_82</zorder>
-       <zorder>lineEdit_upName_6</zorder>
+       <zorder>lineEdit_masterNum</zorder>
        <zorder>label_83</zorder>
        <zorder>label_84</zorder>
        <zorder>label_86</zorder>
-       <zorder>lineEdit_upName_7</zorder>
+       <zorder>lineEdit_undergraduatesNum</zorder>
        <zorder>label_87</zorder>
        <zorder>label_89</zorder>
-       <zorder>lineEdit_upName_8</zorder>
+       <zorder>lineEdit_juniorNum</zorder>
        <zorder>label_88</zorder>
        <zorder>label_85</zorder>
        <zorder>label_90</zorder>
@@ -3504,12 +3504,12 @@
        <zorder>label_93</zorder>
        <zorder>label_94</zorder>
        <zorder>label_95</zorder>
-       <zorder>lineEdit_upName_9</zorder>
-       <zorder>lineEdit_upName_10</zorder>
-       <zorder>lineEdit_upName_11</zorder>
+       <zorder>lineEdit_primaryNum</zorder>
+       <zorder>lineEdit_intermediateNum</zorder>
+       <zorder>lineEdit_seniorNum</zorder>
        <zorder>label_96</zorder>
        <zorder>label_97</zorder>
-       <zorder>lineEdit_upName_12</zorder>
+       <zorder>lineEdit_noTitleNum</zorder>
        <zorder>label_98</zorder>
        <zorder>label_99</zorder>
        <zorder>label_100</zorder>
@@ -3518,35 +3518,35 @@
        <zorder>label_103</zorder>
        <zorder>label_104</zorder>
        <zorder>label_105</zorder>
-       <zorder>lineEdit_upName_13</zorder>
-       <zorder>lineEdit_upName_14</zorder>
-       <zorder>lineEdit_upName_15</zorder>
+       <zorder>lineEdit_downThirtyOldNum</zorder>
+       <zorder>lineEdit_upThirtyOldNum</zorder>
+       <zorder>lineEdit_upFiftyOldNum</zorder>
        <zorder>label_106</zorder>
        <zorder>label_107</zorder>
-       <zorder>lineEdit_upName_16</zorder>
+       <zorder>lineEdit_economyNum</zorder>
        <zorder>label_108</zorder>
-       <zorder>lineEdit_upName_17</zorder>
+       <zorder>lineEdit_auditNum</zorder>
        <zorder>label_109</zorder>
        <zorder>label_110</zorder>
        <zorder>label_111</zorder>
        <zorder>label_112</zorder>
        <zorder>label_113</zorder>
-       <zorder>lineEdit_upName_18</zorder>
+       <zorder>lineEdit_accountingNum</zorder>
        <zorder>label_114</zorder>
-       <zorder>lineEdit_upName_19</zorder>
+       <zorder>lineEdit_lawNum</zorder>
        <zorder>label_115</zorder>
        <zorder>label_116</zorder>
        <zorder>label_117</zorder>
-       <zorder>lineEdit_upName_20</zorder>
+       <zorder>lineEdit_managerNum</zorder>
        <zorder>label_118</zorder>
-       <zorder>lineEdit_upName_21</zorder>
+       <zorder>lineEdit_otherNum</zorder>
        <zorder>label_119</zorder>
-       <zorder>lineEdit_upName_22</zorder>
+       <zorder>lineEdit_itNum</zorder>
        <zorder>label_120</zorder>
        <zorder>label_121</zorder>
        <zorder>label_122</zorder>
        <zorder>label_123</zorder>
-       <zorder>lineEdit_upName_23</zorder>
+       <zorder>lineEdit_engineeringNum</zorder>
        <zorder>label_124</zorder>
        <zorder>label_125</zorder>
        <zorder>label_228</zorder>
diff --git a/internal_system_v1/internal_system_v1.pro b/internal_system_v1/internal_system_v1.pro
index 92fb2e6..3119ced 100644
--- a/internal_system_v1/internal_system_v1.pro
+++ b/internal_system_v1/internal_system_v1.pro
@@ -52,7 +52,8 @@
     coverinfo.h \
     searchinfo.h \
     problemrectstandingbook.h \
-    converinfo2.h
+    converinfo2.h \
+    struct_data.h
 
 FORMS += \
         clientmainwindow.ui \
diff --git a/internal_system_v1/struct_data.h b/internal_system_v1/struct_data.h
new file mode 100644
index 0000000..af16cc6
--- /dev/null
+++ b/internal_system_v1/struct_data.h
@@ -0,0 +1,71 @@
+锘�#ifndef STRUCT_DATA_H
+#define STRUCT_DATA_H
+
+// 鍗曚綅鍩烘湰淇℃伅
+struct ComInfo{
+    // 鍩烘湰鎯呭喌
+    char creditCode[64]; // 缁熶竴绀句細淇$敤浠g爜
+    char name[128]; // 鍗曚綅鍚嶇О
+    char comType[64]; // 鏈烘瀯绫诲瀷 鏄竴涓笅鎷夋閫夐」
+    char business[256]; // 涓氬姟娲诲姩
+    char businessCode[32]; // 琛屼笟浠g爜
+    char addr[256]; // 娉ㄥ唽鍦板強鍖哄垝
+    char areaCode[32]; // 鍖哄煙浠g爜
+    char townCode[32]; // 鍩庝埂浠g爜
+    char scale[32]; // 鍗曚綅瑙勬ā 涓嬫媺妗嗛�夐」
+    int people; // 浠庝笟浜哄憳鏁伴噺
+    char representative[32]; // 娉曚汉
+    char standardType[32]; // 鎵ц浼氳鏍囧噯绫诲埆
+    char trunkCode[32]; // 闀块�斿尯鍙�
+    char fixedTel[32]; // 鍥哄畾鐢佃瘽
+    char postCode[32]; // 閭斂缂栫爜
+    char email[32]; // 鐢靛瓙閭
+    char webSite[128]; // 缃戝潃
+
+    // 浜屻�佸崟浣嶇粍缁囩粨鏋勬儏鍐�
+    char hasUpLegal[32]; // 鏄惁鏈変笂涓�绾ф硶浜�
+    char upCreditCode[32]; // 涓婁竴绾х粺涓�绀句細淇$敤浠g爜
+    char oldCreditCode[32]; // 鍘熺粍缁囨満鏋勪唬鐮�
+    char upName[128]; // 涓婁竴绾у崟浣嶅悕绉�
+
+    // 鎬诲璁″笀涓庡唴閮ㄥ璁℃満鏋勫熀鏈儏鍐�
+    char hasChiefDesigner[32]; // 鏄惁璁剧疆鎬诲璁″笀
+    char ChiefDesignerLevel[32]; // 鎬诲璁″笀鑱屼綅灞傜骇
+    char employmentMode[32]; // 鎬诲浠昏亴鏂瑰紡
+    char hasSetIntervalAudit[32]; // 鏄惁璁剧疆鍐呭鏈烘瀯
+    char internalName[128]; // 鍐呭鏈烘瀯鍚嶇О
+    char leadingOrganization[32]; // 棰嗗鏈烘瀯
+    char hasSetSeparateIA[32]; // 鏄惁鐙珛璁剧疆鍐呭鏈烘瀯
+    bool financeDepartment; // 璐㈠姟閮ㄩ棬
+    bool legalDepartment; // 娉曞姟閮ㄩ棬
+    bool internalConDepart; // 鍐呴儴鎺у埗閮ㄩ棬
+    bool disceplineInDepart; // 绾閮ㄩ棬
+    bool otherDepart; // 鍏朵粬閮ㄩ棬
+    char intavalAuditLeval[32]; // 鍐呭灞傜骇
+
+    // 鍐呴儴瀹¤浜哄憳閰嶅鍩烘湰鎯呭喌
+    int organazationNum; // 缂栧埗鏁伴噺
+    int realNum; // 瀹炴湁浜哄憳鏁�
+    int professionalNum; // 涓撹亴浜哄憳鏁伴噺
+    int CIANum; // 鎷ユ湁CIA浜烘暟
+    int masterNum; // 纭曞+瀛﹀巻浠ヤ笂浜烘暟
+    int undergraduatesNum; // 鏈浜烘暟
+    int juniorNum; // 涓撶鍙婁互涓嬩汉鏁�
+    int seniorNum; // 楂樼骇鑱岀О浜烘暟
+    int intermediateNum; // 涓骇鑱岀О浜烘暟
+    int primaryNum; // 鍒濈骇鑱岀О浜烘暟
+    int noTitleNum; // 鏃犺亴绉颁汉鏁�
+    int upFiftyOldNum; // 50宀佷互涓婁汉鏁�
+    int upThirtyOldNum; // 30-50宀佷汉鏁�
+    int downThirtyOldNum; // 30宀佷互涓嬩汉鏁�
+    int auditNum; // 瀹¤鏁伴噺
+    int accountingNum; // 浼氳鏁伴噺
+    int economyNum; // 缁忔祹鏁伴噺
+    int lawNum; // 娉曞緥鏁伴噺
+    int managerNum; // 绠$悊鏁伴噺
+    int itNum; // 淇℃伅鎶�鏈暟閲�
+    int engineeringNum; // 宸ョ▼鏁伴噺
+    int otherNum; // 鍏朵粬鏁伴噺
+};
+
+#endif // STRUCT_DATA_H
diff --git "a/~$\345\256\241\350\256\241\347\263\273\347\273\237.mmap.~$lock" "b/~$\345\256\241\350\256\241\347\263\273\347\273\237.mmap.~$lock"
new file mode 100644
index 0000000..2cc7c08
--- /dev/null
+++ "b/~$\345\256\241\350\256\241\347\263\273\347\273\237.mmap.~$lock"
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<Lock xmlns="http://schemas.mindjet.com/MindManager/Lock/2003"><LockOwner UserName="Windows User" UserEmail=""/></Lock>
\ No newline at end of file
diff --git "a/\345\256\241\350\256\241\347\263\273\347\273\237.mmap" "b/\345\256\241\350\256\241\347\263\273\347\273\237.mmap"
index 86cf267..e51295e 100644
--- "a/\345\256\241\350\256\241\347\263\273\347\273\237.mmap"
+++ "b/\345\256\241\350\256\241\347\263\273\347\273\237.mmap"
Binary files differ

--
Gitblit v1.8.0