Browse Source

change tool_service_maintain. send data to fix ip 192.168.1.102. can change device ip, password adc.

yuchuli 1 year ago
parent
commit
af1450c986

+ 72 - 0
src/tool/tool_service_maintain/main.cpp

@@ -1,9 +1,81 @@
 #include "mainwindow.h"
 #include <QApplication>
 
+#include <QFile>
+
+
+#ifdef Android
+#include <QtAndroid>
+//#include <QAndr
+
+#endif
+
+std::string gstrserverip = "192.168.1.102";
+
+void LoadServerIP()
+{
+    QString strpath = "tool_service_maintain.txt";
+#ifdef Android
+    strpath = "/storage/emulated/0/tool_service_maintain.txt";
+#endif
+    QFile xFile;
+    xFile.setFileName(strpath);
+    if(!xFile.open(QIODevice::ReadOnly))
+    {
+        return;
+    }
+    std::string strip = xFile.readAll().toStdString();
+    xFile.close();
+    if(strip.length()<7)
+    {
+        return;
+    }
+    gstrserverip = strip;
+
+}
+
+void SaveServerIP()
+{
+    QString strpath = "tool_service_maintain.txt";
+#ifdef Android
+    strpath = "/storage/emulated/0/tool_service_maintain.txt";
+#endif
+    QFile xFile;
+    xFile.setFileName(strpath);
+    if(!xFile.open(QIODevice::ReadWrite))
+    {
+        return;
+    }
+    xFile.resize(0);
+    xFile.write(gstrserverip.data(),static_cast<qint64>(gstrserverip.length()) );
+    xFile.close();
+}
+
+#ifdef Android
+
+bool requestPermission() {
+   QtAndroid::PermissionResult  r = QtAndroid::checkPermission("android.permission.WRITE_EXTERNAL_STORAGE");
+    if(r == QtAndroid::PermissionResult::Denied) {
+        QtAndroid::requestPermissionsSync( QStringList() << "android.permission.WRITE_EXTERNAL_STORAGE" );
+        r = QtAndroid::checkPermission("android.permission.WRITE_EXTERNAL_STORAGE");
+        if(r == QtAndroid::PermissionResult::Denied) {
+             return false;
+        }
+   }
+   return true;
+}
+
+#endif
+
 int main(int argc, char *argv[])
 {
     QApplication a(argc, argv);
+
+#ifdef Android
+    requestPermission();
+#endif
+
+    LoadServerIP();
     MainWindow w;
     w.show();
 

+ 45 - 6
src/tool/tool_service_maintain/mainwindow.cpp

@@ -2,6 +2,11 @@
 #include "ui_mainwindow.h"
 
 #include <memory>
+#include <QInputDialog>
+#include <QMessageBox>
+
+extern std::string gstrserverip;
+extern void SaveServerIP();
 
 MainWindow::MainWindow(QWidget *parent) :
     QMainWindow(parent),
@@ -23,6 +28,8 @@ MainWindow::MainWindow(QWidget *parent) :
     ui->plainTextEdit->setGeometry(100,800,600,600);
 #endif
 
+    setWindowTitle("Service MainTain Tool");
+
 }
 
 MainWindow::~MainWindow()
@@ -36,8 +43,8 @@ void MainWindow::on_pushButton_Start_clicked()
     int nCode = 1;
     char strout[100];
     memcpy(strout,&nCode,sizeof(int));
-    mpSocket->writeDatagram(strout,sizeof(int),QHostAddress::Broadcast,60009);
-    mpSocket->writeDatagram(strout,sizeof(int),QHostAddress("10.16.0.107"),60009);
+//    mpSocket->writeDatagram(strout,sizeof(int),QHostAddress::Broadcast,60009);
+    mpSocket->writeDatagram(strout,sizeof(int),QHostAddress(gstrserverip.data()),60009);
 }
 
 void MainWindow::on_pushButton_Stop_clicked()
@@ -46,8 +53,8 @@ void MainWindow::on_pushButton_Stop_clicked()
     int nCode = 0;
     char strout[100];
     memcpy(strout,&nCode,sizeof(int));
-    mpSocket->writeDatagram(strout,sizeof(int),QHostAddress::Broadcast,60009);
-    mpSocket->writeDatagram(strout,sizeof(int),QHostAddress("10.16.0.107"),60009);
+//    mpSocket->writeDatagram(strout,sizeof(int),QHostAddress::Broadcast,60009);
+    mpSocket->writeDatagram(strout,sizeof(int),QHostAddress(gstrserverip.data()),60009);
 }
 
 void MainWindow::on_pushButton_Query_clicked()
@@ -56,8 +63,8 @@ void MainWindow::on_pushButton_Query_clicked()
     int nCode = 2;
     char strout[100];
     memcpy(strout,&nCode,sizeof(int));
-    mpSocket->writeDatagram(strout,sizeof(int),QHostAddress::Broadcast,60009);
-    mpSocket->writeDatagram(strout,sizeof(int),QHostAddress("10.16.0.107"),60009);
+//    mpSocket->writeDatagram(strout,sizeof(int),QHostAddress::Broadcast,60009);
+    mpSocket->writeDatagram(strout,sizeof(int),QHostAddress(gstrserverip.data()),60009);
 }
 
 void MainWindow::onRecvData()
@@ -110,3 +117,35 @@ void MainWindow::onRecvData()
         }
     }
 }
+
+void MainWindow::on_actionSet_Device_IP_triggered()
+{
+    bool ok;
+    QString strpass = QInputDialog::getText(this,tr("Check PassWord"),tr("password:"),QLineEdit::Password,
+                                                   tr(""), &ok);
+    if(ok == false)
+    {
+        return;
+    }
+
+    if(strpass != "adc")
+    {
+        QMessageBox::warning(this,tr("Warning"),tr("Password Error."),QMessageBox::YesAll);
+        return;
+    }
+
+    QString strstationname = QInputDialog::getText(this,tr("SetServerIP"),tr("Device IP:"),QLineEdit::Normal,
+                                                   gstrserverip.data(), &ok);
+    if(ok == false)
+    {
+        return;
+    }
+
+    gstrserverip = strstationname.toStdString();
+    SaveServerIP();
+}
+
+void MainWindow::on_actionExit_triggered()
+{
+    this->close();
+}

+ 4 - 0
src/tool/tool_service_maintain/mainwindow.h

@@ -25,6 +25,10 @@ private slots:
 
     void onRecvData();
 
+    void on_actionSet_Device_IP_triggered();
+
+    void on_actionExit_triggered();
+
 private:
     Ui::MainWindow *ui;
 

+ 18 - 0
src/tool/tool_service_maintain/mainwindow.ui

@@ -73,6 +73,14 @@
      <height>28</height>
     </rect>
    </property>
+   <widget class="QMenu" name="menuSet">
+    <property name="title">
+     <string>Set</string>
+    </property>
+    <addaction name="actionSet_Device_IP"/>
+    <addaction name="actionExit"/>
+   </widget>
+   <addaction name="menuSet"/>
   </widget>
   <widget class="QToolBar" name="mainToolBar">
    <attribute name="toolBarArea">
@@ -83,6 +91,16 @@
    </attribute>
   </widget>
   <widget class="QStatusBar" name="statusBar"/>
+  <action name="actionSet_Device_IP">
+   <property name="text">
+    <string>Set Device IP</string>
+   </property>
+  </action>
+  <action name="actionExit">
+   <property name="text">
+    <string>Exit</string>
+   </property>
+  </action>
  </widget>
  <layoutdefault spacing="6" margin="11"/>
  <resources/>