From 761bab9839b0ed9733fbff48e27913a89a9945ed Mon Sep 17 00:00:00 2001
From: ccy <3140717620@qq.com>
Date: 星期四, 14 五月 2026 11:58:13 +0800
Subject: [PATCH] 提交 1.保存excel文件时表头设置为中文 2.授权时设置为从当前时间添加对应时限

---
 mainwindow.cpp |   96 +++++++++++++++++++++++------------------------
 mainwindow.ui  |   13 ++++++
 2 files changed, 60 insertions(+), 49 deletions(-)

diff --git a/mainwindow.cpp b/mainwindow.cpp
index de265c1..86262a6 100644
--- a/mainwindow.cpp
+++ b/mainwindow.cpp
@@ -39,6 +39,14 @@
     ui->pushButton_dateset->setVisible(false);
     ui->pushButton_adddate->setVisible(false);
     ui->pushButton_reducedate->setVisible(false);
+    ui->lineEdit_basenum->setVisible(false);
+    ui->lineEdit_biosnum->setVisible(false);
+    ui->lineEdit_basenum_2->setVisible(false);
+    ui->lineEdit_biosnum_2->setVisible(false);
+    ui->label_basenum->setVisible(false);
+    ui->label_biosnum->setVisible(false);
+    ui->label_basenum_2->setVisible(false);
+    ui->label_biosnum_2->setVisible(false);
     //鍓嶄竷鏉℃槸绠�鍖栧姞瀵嗘暟鎹繀鐢ㄧ殑,鍦ㄨ繖閲岃瀹氬ソ鏂逛究瀵瑰簲
     m_numToInfo.insert("1","Baseboard_Uuid");
     m_numToInfo.insert("2","CPU_Processorid");
@@ -143,12 +151,9 @@
     QString hashkey32 = EncryptData(hashkey64,QCryptographicHash::Md5);
     QString AESresult = AES_decryption(b64result,hashkey32);
     decodedText = DecodebyBase64(AESresult);
-    qDebug()<<"AESresult"<<AESresult;
-    qDebug()<<"decodedText"<<decodedText;
     //娣诲姞瑙e帇缂╃殑鎿嶄綔
     QByteArray text = decodedText.toLocal8Bit();
     QByteArray jsonData = qUncompress(text.fromBase64(text));
-    qDebug()<<"jsonData"<<jsonData;
 //    decodedText = DecodebyBase64(QString::fromLocal8Bit(jsonData));
     decodedText = QString(jsonData);
     return decodedText;
@@ -252,10 +257,10 @@
 //        ui->label_isaquifer_2->setText(licenseinfo.IsEnabled_aquifer==0?QStringLiteral("鏈縺娲�"):QStringLiteral("宸叉縺娲�"));
 //        ui->label_ispipe_2->setText(licenseinfo.IsEnabled_pipe==0?QStringLiteral("鏈縺娲�"):QStringLiteral("宸叉縺娲�"));
 //        ui->label_isnetwork_2->setText(licenseinfo.IsEnabled_network==0?QStringLiteral("鏈縺娲�"):QStringLiteral("宸叉縺娲�"));
-        ui->label_iscell_2->setText(localinfo.ActiveState==0?QStringLiteral("鏈縺娲�"):QStringLiteral("宸叉縺娲�"));
-        ui->label_isaquifer_2->setText(localinfo.ActiveState==0?QStringLiteral("鏈縺娲�"):QStringLiteral("宸叉縺娲�"));
-        ui->label_ispipe_2->setText(localinfo.ActiveState==0?QStringLiteral("鏈縺娲�"):QStringLiteral("宸叉縺娲�"));
-        ui->label_isnetwork_2->setText(localinfo.ActiveState==0?QStringLiteral("鏈縺娲�"):QStringLiteral("宸叉縺娲�"));
+        ui->label_iscell_2->setText(licenseinfo.ActiveState==0?QStringLiteral("鏈縺娲�"):QStringLiteral("宸叉縺娲�"));
+        ui->label_isaquifer_2->setText(licenseinfo.ActiveState==0?QStringLiteral("鏈縺娲�"):QStringLiteral("宸叉縺娲�"));
+        ui->label_ispipe_2->setText(licenseinfo.ActiveState==0?QStringLiteral("鏈縺娲�"):QStringLiteral("宸叉縺娲�"));
+        ui->label_isnetwork_2->setText(licenseinfo.ActiveState==0?QStringLiteral("鏈縺娲�"):QStringLiteral("宸叉縺娲�"));
     }
 }
 
@@ -263,9 +268,7 @@
 {
     QString encryptlocalid = ui->textEdit_localid->toPlainText();
     QString localid = getDecrypt(encryptlocalid,key);
-    qDebug()<<"localid"<<localid;
     QByteArray localidbyte = localid.toLocal8Bit();
-    qDebug()<<"localidbyte"<<localidbyte;
     QJsonParseError err_rpt;
     QJsonDocument localidjsondoc(QJsonDocument::fromJson(localid.toUtf8(), &err_rpt));//瀛楃涓叉牸寮忓寲涓篔SON
     if(err_rpt.error != QJsonParseError::NoError)
@@ -304,15 +307,9 @@
 //        localinfo.Versionid = localid_Obj.value("Versionid").toString();
 
         //涓庝箣鍓嶇殑鍔犲瘑瀵瑰簲,涓斿幓鎺夊啑浣欎俊鎭�
-//        localinfo.Baseboard_Serialnumber = localid_Obj.value(m_numToInfo.key("Baseboard_Serialnumber")).toString();
         localinfo.Baseboard_Uuid = localid_Obj.value(m_numToInfo.key("Baseboard_Uuid")).toString();
-//        localinfo.Bios_Serialnumber = localid_Obj.value(m_numToInfo.key("Bios_Serialnumber")).toString();
         localinfo.CPU_Processorid = localid_Obj.value(m_numToInfo.key("CPU_Processorid")).toString();
         localinfo.Username = localid_Obj.value(m_numToInfo.key("Username")).toString();
-//        localinfo.IsEnabled_cell = localid_Obj.value(m_numToInfo.key("IsEnabled_cell")).toInt();
-//        localinfo.IsEnabled_aquifer = localid_Obj.value(m_numToInfo.key("IsEnabled_aquifer")).toInt();
-//        localinfo.IsEnabled_pipe = localid_Obj.value(m_numToInfo.key("IsEnabled_pipe")).toInt();
-//        localinfo.IsEnabled_network = localid_Obj.value(m_numToInfo.key("IsEnabled_network")).toInt();
         localinfo.LicensedDuration_end = localid_Obj.value(m_numToInfo.key("LicensedDuration_end")).toString();
         localinfo.LicensedDuration_start = localid_Obj.value(m_numToInfo.key("LicensedDuration_start")).toString();
         localinfo.Productid = localid_Obj.value(m_numToInfo.key("Productid")).toString();
@@ -512,11 +509,13 @@
 //    licensekey_Obj[m_numToInfo.key("IsEnabled_pipe")] = 1;
 //    licensekey_Obj[m_numToInfo.key("IsEnabled_network")] = 1;
     licensekey_Obj[m_numToInfo.key("ActiveState")] = 1;
-    QDateTime licensedate = QDateTime::fromString(licensekey_Obj[m_numToInfo.key("LicensedDuration_end")].toString(),"yyyy-MM-dd hh:mm:ss");
-    if(licensedate.isNull()){
-        qDebug()<<"licenseTime is Null";
-        licensedate = QDateTime::currentDateTime();
-    }
+//    QDateTime licensedate = QDateTime::fromString(licensekey_Obj[m_numToInfo.key("LicensedDuration_end")].toString(),"yyyy-MM-dd hh:mm:ss");
+//    if(licensedate.isNull()){
+//        qDebug()<<"licenseTime is Null";
+//        licensedate = QDateTime::currentDateTime();
+//    }
+    //鐜板湪鐐瑰嚮鎺堟潈鏄粠褰撳墠鐨勬椂闂村姞鎺堟潈鏃堕棿
+    QDateTime licensedate = QDateTime::currentDateTime();
     QDateTime newlicensedate = licensedate.addMonths(time);
     QString licensedatestr = newlicensedate.toString("yyyy-MM-dd hh:mm:ss");
     licensekey_Obj[m_numToInfo.key("LicensedDuration_end")] = licensedatestr;
@@ -531,18 +530,17 @@
     //灏嗘巿鏉冧俊鎭褰曞埌excel琛ㄤ腑
     QString edition ="";
     if(time == 3){
-        edition = "normal";
+        edition = QStringLiteral("鏅�氱増");
     }else if(time == 6){
-        edition = "educational";
+        edition = QStringLiteral("鏁欒偛鐗�");
     }else if(time == 12){
-        edition = "professional";
+        edition = QStringLiteral("涓撲笟鐗�");
     }
     ActiveRecord(licensekey_Obj,edition,ui->textEdit_licensekey->toPlainText());
 }
 
 void MainWindow::ActiveRecord(QJsonObject jsonObj,QString edition, QString licenseKey)
 {
-    qDebug()<<"ActiveRecord"<<edition<<licenseKey;
     QString Baseboard_Uuid = jsonObj[m_numToInfo.key("Baseboard_Uuid")].toString();
     QString src = QApplication::applicationDirPath();
     QDir dir(src);
@@ -552,13 +550,14 @@
         Document xlsx;
         // 璁剧疆鍒楁爣棰�
         QStringList headers = {
-            "Baseboard_Uuid",
-            "edition",
-            "LicensedDuration_start",
-            "LicensedDuration_end",
-            "Productid",
-            "Versionid",
-            "licenseKey"
+            "id",
+            QStringLiteral("涓绘澘鍞竴鏍囪瘑"),
+            QStringLiteral("鐗堟湰"),
+            QStringLiteral("璁稿彲璧峰鏃堕棿"),
+            QStringLiteral("璁稿彲鎴鏃堕棿"),
+            QStringLiteral("浜у搧鍙�"),
+            QStringLiteral("鐗堟湰鍙�"),
+            QStringLiteral("璁稿彲瀵嗛挜")
         };
         // 鍐欏叆鏍囬琛�
         for (int col = 1; col <= headers.size(); ++col) {
@@ -571,37 +570,36 @@
     int uuidColumn = -1;
     //鍏堟煡鎵炬槸鍚﹀凡缁忓瓨鍦ㄨ椤硅褰�
     for(int i = 2; i <= xlsx.dimension().rowCount(); i++){
-        QXlsx::Cell* headerCell = xlsx.cellAt(i, 1);
+        QXlsx::Cell* headerCell = xlsx.cellAt(i, 2);
         if (headerCell) {
             QString headerValue = headerCell->value().toString();
-            qDebug()<<"headerValue"<<headerValue<<Baseboard_Uuid;
             if (headerValue.compare(Baseboard_Uuid, Qt::CaseInsensitive) == 0) {
                 uuidColumn = i;
                 break;
             }
         }
     }
-    qDebug()<<"uuidColumn"<<uuidColumn;
     if(uuidColumn == -1){
         //濡傛灉娌℃湁杩欐潯璁板綍灏卞啓鍏ユ柊鐨�
-        qDebug()<<"here";
         int rowCount = xlsx.dimension().rowCount()+1;
-        xlsx.write(rowCount, 1, jsonObj[m_numToInfo.key("Baseboard_Uuid")].toString());
-        xlsx.write(rowCount, 2, edition);
-        xlsx.write(rowCount, 3, jsonObj[m_numToInfo.key("LicensedDuration_start")].toString());
-        xlsx.write(rowCount, 4, jsonObj[m_numToInfo.key("LicensedDuration_end")].toString());
-        xlsx.write(rowCount, 5, jsonObj[m_numToInfo.key("Productid")].toString());
-        xlsx.write(rowCount, 6, jsonObj[m_numToInfo.key("Versionid")].toString());
-        xlsx.write(rowCount, 7, licenseKey);
+        int id = xlsx.read(rowCount-1,1).toInt();
+        xlsx.write(rowCount, 1, id+1);
+        xlsx.write(rowCount, 2, jsonObj[m_numToInfo.key("Baseboard_Uuid")].toString());
+        xlsx.write(rowCount, 3, edition);
+        xlsx.write(rowCount, 4, jsonObj[m_numToInfo.key("LicensedDuration_start")].toString());
+        xlsx.write(rowCount, 5, jsonObj[m_numToInfo.key("LicensedDuration_end")].toString());
+        xlsx.write(rowCount, 6, jsonObj[m_numToInfo.key("Productid")].toString());
+        xlsx.write(rowCount, 7, jsonObj[m_numToInfo.key("Versionid")].toString());
+        xlsx.write(rowCount, 8, licenseKey);
     }else{
         //濡傛灉瀛樺湪杩欐潯璁板綍灏辨洿鏂版暟鎹俊鎭�
-        xlsx.write(uuidColumn, 1, jsonObj[m_numToInfo.key("Baseboard_Uuid")].toString());
-        xlsx.write(uuidColumn, 2, edition);
-        xlsx.write(uuidColumn, 3, jsonObj[m_numToInfo.key("LicensedDuration_start")].toString());
-        xlsx.write(uuidColumn, 4, jsonObj[m_numToInfo.key("LicensedDuration_end")].toString());
-        xlsx.write(uuidColumn, 5, jsonObj[m_numToInfo.key("Productid")].toString());
-        xlsx.write(uuidColumn, 6, jsonObj[m_numToInfo.key("Versionid")].toString());
-        xlsx.write(uuidColumn, 7, licenseKey);
+        xlsx.write(uuidColumn, 2, jsonObj[m_numToInfo.key("Baseboard_Uuid")].toString());
+        xlsx.write(uuidColumn, 3, edition);
+        xlsx.write(uuidColumn, 4, jsonObj[m_numToInfo.key("LicensedDuration_start")].toString());
+        xlsx.write(uuidColumn, 5, jsonObj[m_numToInfo.key("LicensedDuration_end")].toString());
+        xlsx.write(uuidColumn, 6, jsonObj[m_numToInfo.key("Productid")].toString());
+        xlsx.write(uuidColumn, 7, jsonObj[m_numToInfo.key("Versionid")].toString());
+        xlsx.write(uuidColumn, 8, licenseKey);
     }
     xlsx.save();
 }
diff --git a/mainwindow.ui b/mainwindow.ui
index bd57ac5..ae048f8 100644
--- a/mainwindow.ui
+++ b/mainwindow.ui
@@ -732,6 +732,19 @@
           </item>
          </layout>
         </item>
+        <item row="0" column="1">
+         <spacer name="verticalSpacer_3">
+          <property name="orientation">
+           <enum>Qt::Vertical</enum>
+          </property>
+          <property name="sizeHint" stdset="0">
+           <size>
+            <width>20</width>
+            <height>40</height>
+           </size>
+          </property>
+         </spacer>
+        </item>
        </layout>
       </widget>
      </item>

--
Gitblit v1.9.1