增加设置设备型号功能

This commit is contained in:
yangjiaxuan 2023-11-02 14:48:51 +08:00
parent 2dd0c06078
commit f98e28b40c
4 changed files with 150 additions and 66 deletions

View File

@ -130,35 +130,35 @@
<translation type="vanished"></translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="462"/>
<location filename="dialog_inputserialnum.cpp" line="469"/>
<location filename="dialog_inputserialnum.cpp" line="478"/>
<location filename="dialog_inputserialnum.cpp" line="485"/>
<location filename="dialog_inputserialnum.cpp" line="517"/>
<location filename="dialog_inputserialnum.cpp" line="524"/>
<location filename="dialog_inputserialnum.cpp" line="533"/>
<location filename="dialog_inputserialnum.cpp" line="540"/>
<source>tips</source>
<translation></translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="410"/>
<location filename="dialog_inputserialnum.cpp" line="465"/>
<source>Speed mode</source>
<translation></translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="377"/>
<location filename="dialog_inputserialnum.cpp" line="419"/>
<source>Failed!</source>
<translation>!</translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="384"/>
<location filename="dialog_inputserialnum.cpp" line="426"/>
<source>Succeed!</source>
<translation>!</translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="420"/>
<location filename="dialog_inputserialnum.cpp" line="475"/>
<source>Sleep time</source>
<translation></translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="429"/>
<location filename="dialog_inputserialnum.cpp" line="484"/>
<source>Vid and Pid</source>
<translation>Vid和Pid</translation>
</message>
@ -171,32 +171,32 @@
<translation type="vanished">%1</translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="448"/>
<location filename="dialog_inputserialnum.cpp" line="503"/>
<source>Consistent configuration</source>
<translation></translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="462"/>
<location filename="dialog_inputserialnum.cpp" line="517"/>
<source>device is lost</source>
<translation></translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="469"/>
<location filename="dialog_inputserialnum.cpp" line="524"/>
<source>Serial num is empty</source>
<translation></translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="478"/>
<location filename="dialog_inputserialnum.cpp" line="533"/>
<source>sn is illegal</source>
<translation></translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="485"/>
<location filename="dialog_inputserialnum.cpp" line="540"/>
<source>The device is testing</source>
<translation></translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="378"/>
<location filename="dialog_inputserialnum.cpp" line="420"/>
<source>set sn failed</source>
<translation></translation>
</message>
@ -206,7 +206,7 @@
<translation> %1</translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="259"/>
<location filename="dialog_inputserialnum.cpp" line="292"/>
<source>Target Configration:</source>
<oldsource>Target Configration:
</oldsource>
@ -214,16 +214,16 @@
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="125"/>
<location filename="dialog_inputserialnum.cpp" line="260"/>
<location filename="dialog_inputserialnum.cpp" line="287"/>
<location filename="dialog_inputserialnum.cpp" line="512"/>
<location filename="dialog_inputserialnum.cpp" line="297"/>
<location filename="dialog_inputserialnum.cpp" line="329"/>
<location filename="dialog_inputserialnum.cpp" line="579"/>
<source>Speep mode: %1PPM</source>
<oldsource>Speep mode: %1PPM
</oldsource>
<translation>: %1PPM</translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="353"/>
<location filename="dialog_inputserialnum.cpp" line="395"/>
<source>Pass</source>
<translation>Pass</translation>
</message>
@ -231,14 +231,15 @@
<location filename="dialog_inputserialnum.cpp" line="125"/>
<location filename="dialog_inputserialnum.cpp" line="142"/>
<location filename="dialog_inputserialnum.cpp" line="166"/>
<location filename="dialog_inputserialnum.cpp" line="182"/>
<source>Set</source>
<translation></translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="142"/>
<location filename="dialog_inputserialnum.cpp" line="261"/>
<location filename="dialog_inputserialnum.cpp" line="288"/>
<location filename="dialog_inputserialnum.cpp" line="513"/>
<location filename="dialog_inputserialnum.cpp" line="298"/>
<location filename="dialog_inputserialnum.cpp" line="330"/>
<location filename="dialog_inputserialnum.cpp" line="580"/>
<source>Sleep time: %1minute</source>
<oldsource>Sleep time: %1minute
</oldsource>
@ -246,40 +247,53 @@
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="166"/>
<location filename="dialog_inputserialnum.cpp" line="262"/>
<location filename="dialog_inputserialnum.cpp" line="289"/>
<location filename="dialog_inputserialnum.cpp" line="514"/>
<location filename="dialog_inputserialnum.cpp" line="299"/>
<location filename="dialog_inputserialnum.cpp" line="331"/>
<location filename="dialog_inputserialnum.cpp" line="581"/>
<source>Vid: %1 Pid: %2</source>
<oldsource>Vid: %1 Pid: %2
</oldsource>
<translation>Vid: %1 Pid: %2</translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="286"/>
<location filename="dialog_inputserialnum.cpp" line="182"/>
<location filename="dialog_inputserialnum.cpp" line="295"/>
<location filename="dialog_inputserialnum.cpp" line="327"/>
<location filename="dialog_inputserialnum.cpp" line="577"/>
<source>Device model: %1</source>
<translation>: %1</translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="324"/>
<source>Current Configration of device:</source>
<translation>:</translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="358"/>
<location filename="dialog_inputserialnum.cpp" line="400"/>
<source>Fail</source>
<translation>Fail</translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="373"/>
<location filename="dialog_inputserialnum.cpp" line="377"/>
<location filename="dialog_inputserialnum.cpp" line="384"/>
<location filename="dialog_inputserialnum.cpp" line="415"/>
<location filename="dialog_inputserialnum.cpp" line="419"/>
<location filename="dialog_inputserialnum.cpp" line="426"/>
<source>Set serial number: %1 </source>
<translation>: %1 </translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="440"/>
<location filename="dialog_inputserialnum.cpp" line="524"/>
<location filename="dialog_inputserialnum.cpp" line="455"/>
<source>Device model</source>
<translation></translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="495"/>
<location filename="dialog_inputserialnum.cpp" line="591"/>
<source>Detected that the current device&apos;s vid-pid and device object are not consistent. </source>
<translation>vid-pid和设备对象不一致. </translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="441"/>
<location filename="dialog_inputserialnum.cpp" line="525"/>
<location filename="dialog_inputserialnum.cpp" line="496"/>
<location filename="dialog_inputserialnum.cpp" line="592"/>
<source>Please reboot device to update. </source>
<translation>. </translation>
</message>
@ -300,23 +314,24 @@
<translation type="vanished"></translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="414"/>
<location filename="dialog_inputserialnum.cpp" line="423"/>
<location filename="dialog_inputserialnum.cpp" line="459"/>
<location filename="dialog_inputserialnum.cpp" line="469"/>
<location filename="dialog_inputserialnum.cpp" line="478"/>
<source>Inconsistent configuration %1detected, please reconfigure, and check again</source>
<translation> %1</translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="432"/>
<location filename="dialog_inputserialnum.cpp" line="487"/>
<source>Inconsistent configuration %1detected, please reboot and reconfigure, and check again</source>
<translation> %1</translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="516"/>
<location filename="dialog_inputserialnum.cpp" line="583"/>
<source>Set configuration to device </source>
<translation> </translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="517"/>
<location filename="dialog_inputserialnum.cpp" line="584"/>
<source>Test content: </source>
<translation> </translation>
</message>
@ -326,20 +341,20 @@
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="142"/>
<location filename="dialog_inputserialnum.cpp" line="261"/>
<location filename="dialog_inputserialnum.cpp" line="288"/>
<location filename="dialog_inputserialnum.cpp" line="513"/>
<location filename="dialog_inputserialnum.cpp" line="298"/>
<location filename="dialog_inputserialnum.cpp" line="330"/>
<location filename="dialog_inputserialnum.cpp" line="580"/>
<source>Sleep time: Not sleeping</source>
<translation>休眠时间: 不休眠</translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="373"/>
<location filename="dialog_inputserialnum.cpp" line="516"/>
<location filename="dialog_inputserialnum.cpp" line="415"/>
<location filename="dialog_inputserialnum.cpp" line="583"/>
<source>Tester: %1, Test item: %2</source>
<translation>: %1, : %2</translation>
</message>
<message>
<location filename="dialog_inputserialnum.cpp" line="385"/>
<location filename="dialog_inputserialnum.cpp" line="427"/>
<source>set sn succeed</source>
<translation></translation>
</message>
@ -457,7 +472,7 @@
<translation></translation>
</message>
<message>
<location filename="dialog_setlogpath.cpp" line="39"/>
<location filename="dialog_setlogpath.cpp" line="42"/>
<source>tips</source>
<translation></translation>
</message>
@ -466,12 +481,12 @@
<translation type="vanished"></translation>
</message>
<message>
<location filename="dialog_setlogpath.cpp" line="39"/>
<location filename="dialog_setlogpath.cpp" line="42"/>
<source>Create logPath failed</source>
<translation></translation>
</message>
<message>
<location filename="dialog_setlogpath.cpp" line="55"/>
<location filename="dialog_setlogpath.cpp" line="58"/>
<source>Browse directory</source>
<translation></translation>
</message>
@ -1694,38 +1709,38 @@
<translation type="vanished"></translation>
</message>
<message>
<location filename="mainwindow.cpp" line="322"/>
<location filename="mainwindow.cpp" line="550"/>
<location filename="mainwindow.cpp" line="590"/>
<location filename="mainwindow.cpp" line="602"/>
<location filename="mainwindow.cpp" line="679"/>
<location filename="mainwindow.cpp" line="323"/>
<location filename="mainwindow.cpp" line="551"/>
<location filename="mainwindow.cpp" line="591"/>
<location filename="mainwindow.cpp" line="603"/>
<location filename="mainwindow.cpp" line="680"/>
<source>tips</source>
<translation></translation>
</message>
<message>
<location filename="mainwindow.cpp" line="58"/>
<location filename="mainwindow.cpp" line="59"/>
<source>production tool-burn station</source>
<translation>-</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="102"/>
<location filename="mainwindow.cpp" line="103"/>
<source>production tool-init test station</source>
<translation>-</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="104"/>
<location filename="mainwindow.cpp" line="105"/>
<source>production tool-image test station</source>
<translation>-</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="106"/>
<location filename="mainwindow.cpp" line="107"/>
<source>production tool-pressure test station</source>
<translation>-</translation>
</message>
<message>
<location filename="mainwindow.cpp" line="322"/>
<location filename="mainwindow.cpp" line="590"/>
<location filename="mainwindow.cpp" line="602"/>
<location filename="mainwindow.cpp" line="323"/>
<location filename="mainwindow.cpp" line="591"/>
<location filename="mainwindow.cpp" line="603"/>
<source>Is testing, do not close!</source>
<translation></translation>
</message>
@ -1747,8 +1762,8 @@
<translation type="vanished"></translation>
</message>
<message>
<location filename="mainwindow.cpp" line="550"/>
<location filename="mainwindow.cpp" line="679"/>
<location filename="mainwindow.cpp" line="551"/>
<location filename="mainwindow.cpp" line="680"/>
<source>cannot create more table</source>
<translation></translation>
</message>

View File

@ -167,6 +167,23 @@ void Dialog_InputSerialNum::setVidPid()
addInteractInfo(info, true);
}
void Dialog_InputSerialNum::setDevceModel()
{
AnalysisJson analysisJson(m_profileName);
AnalysisJson::json_global jsonGlobal = analysisJson.GetGlobal();
std::string deviceModel = jsonGlobal.device_model.toStdString();
unsigned int len = deviceModel.size();
SANE_Status ret = sane_io_control(m_handle, IO_CTRL_CODE_SET_DEVS_MODEL, &deviceModel[0], &len);
QString info("");
if (ret = SANE_STATUS_GOOD)
{
info = tr("Set") + tr("Device model: %1").arg(QString::fromStdString(deviceModel));
}
addInteractInfo(info, true);
}
void Dialog_InputSerialNum::rebootDevice()
{
const wchar_t *p = L"0";
@ -237,6 +254,21 @@ int Dialog_InputSerialNum::getDevPid()
return pid;
}
QString Dialog_InputSerialNum::getDeviceModel()
{
std::string devs_model;
unsigned int devs_len = 0;
SANE_Status ret = sane_io_control(m_handle, IO_CTRL_CODE_GET_DEVS_MODEL, &devs_model[0], &devs_len);
if (ret == SANE_STATUS_NO_MEM)
{
devs_model.resize(devs_len);
ret = sane_io_control(m_handle, IO_CTRL_CODE_GET_DEVS_MODEL, &devs_model[0], &devs_len);
}
return QString::fromStdString(devs_model);
}
void Dialog_InputSerialNum::updateTargetCfg()
{
ui->textBrowser_target->clear();
@ -248,6 +280,7 @@ void Dialog_InputSerialNum::updateTargetCfg()
int sleepTime = jsonGlobal.sleep_time;
int vid_to = jsonGlobal.vid_to;
int pid_to = jsonGlobal.pid_to;
QString devideModel = jsonGlobal.device_model;
char buf[10];
sprintf(buf, "%x", vid_to);
@ -257,6 +290,10 @@ void Dialog_InputSerialNum::updateTargetCfg()
QString content;
content.append(tr("Target Configration:") + "\n\n");
if (!devideModel.isEmpty())
content.append(tr("Device model: %1").arg(devideModel) + "\n");
content.append(tr("Speep mode: %1PPM").arg(QString::number(speedMode)) + "\n");
content.append((sleepTime > 0 ? tr("Sleep time: %1minute").arg(QString::number(sleepTime)) : tr("Sleep time: Not sleeping")) + "\n");
content.append(tr("Vid: %1 Pid: %2").arg(QString::fromStdString(buf)).arg(QString::fromStdString(buf2)) + "\n");
@ -275,6 +312,7 @@ void Dialog_InputSerialNum::updateCurDeviceCfg()
int sleepTime = getSleepTime();
int vid_to = getDevVid();
int pid_to = getDevPid();
QString devideModel = getDeviceModel();
char buf[10];
sprintf(buf, "%x", vid_to);
@ -284,6 +322,10 @@ void Dialog_InputSerialNum::updateCurDeviceCfg()
QString content;
content.append(tr("Current Configration of device:") + "\n\n");
if (!devideModel.isEmpty())
content.append(tr("Device model: %1").arg(devideModel) + "\n");
content.append(tr("Speep mode: %1PPM").arg(QString::number(speedMode)) + "\n");
content.append(sleepTime > 0 ? tr("Sleep time: %1minute").arg(QString::number(sleepTime)) + "\n" : tr("Sleep time: Not sleeping") + "\n");
content.append(tr("Vid: %1 Pid: %2").arg(QString::fromStdString(buf)).arg(QString::fromStdString(buf2)) + "\n");
@ -396,15 +438,28 @@ void Dialog_InputSerialNum::on_pbtn_checkConfig_clicked()
int sleepTime_to = jsonGlobal.sleep_time;
int vid_to = jsonGlobal.vid_to;
int pid_to = jsonGlobal.pid_to;
QString deviceModel_to = jsonGlobal.device_model;
int speedMode = getSpeedMode();
int sleepTime = getSleepTime();
int vid = getDevVid();
int pid = getDevPid();
QString deviceModel = getDeviceModel();
QString item;
bool right = true;
LPWRITECFG lp = new WRITECFG;
if (deviceModel_to != deviceModel)
{
item.append(tr("Device model"));
item.append(" ");
right = false;
QString info = tr("Inconsistent configuration %1detected, please reconfigure, and check again").arg(item);
addInteractInfo(info, false);
}
if (speedMode_to != speedMode)
{
item.append(tr("Speed mode"));
@ -491,13 +546,21 @@ void Dialog_InputSerialNum::on_pbtn_enterTest_clicked()
void Dialog_InputSerialNum::on_pbtn_setConfig_clicked()
{
AnalysisJson analysisJson(m_profileName);
AnalysisJson::json_global jsonGlobal = analysisJson.GetGlobal();
bool supportDevModel = false;
QString deviceModel = jsonGlobal.device_model;
if (!deviceModel.isEmpty())
{
supportDevModel = true;
setDevceModel();
}
setSpeedMode();
setSleepTime();
setVidPid();
AnalysisJson analysisJson(m_profileName);
AnalysisJson::json_global jsonGlobal = analysisJson.GetGlobal();
int speedMode = jsonGlobal.speed_mode;
int sleepTime = jsonGlobal.sleep_time;
int vid_to = jsonGlobal.vid_to;
@ -509,6 +572,10 @@ void Dialog_InputSerialNum::on_pbtn_setConfig_clicked()
sprintf(buf2, "%x", pid_to);
QString content;
if (supportDevModel)
content.append(tr("Device model: %1").arg(deviceModel) + " ");
content.append(tr("Speep mode: %1PPM").arg(QString::number(speedMode)) + " ");
content.append((sleepTime > 0 ? tr("Sleep time: %1minute").arg(QString::number(sleepTime)) : tr("Sleep time: Not sleeping")) + " ");
content.append(tr("Vid: %1 Pid: %2").arg(QString::fromStdString(buf)).arg(QString::fromStdString(buf2)));

View File

@ -27,12 +27,14 @@ public:
void setSpeedMode();
void setSleepTime();
void setVidPid();
void setDevceModel();
void rebootDevice();
int getSpeedMode();
int getSleepTime();
int getDevVid();
int getDevPid();
QString getDeviceModel();
private:
void updateTargetCfg();