diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user
new file mode 100644
index 0000000..77ab7ad
--- /dev/null
+++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user
@@ -0,0 +1,562 @@
+
+
+
+
+
+ EnvironmentId
+ {c08df58c-84a7-4965-bca6-e98789474efa}
+
+
+ ProjectExplorer.Project.ActiveTarget
+ 0
+
+
+ ProjectExplorer.Project.EditorSettings
+
+ true
+ false
+ true
+
+ Cpp
+
+ CppGlobal
+
+
+
+ QmlJS
+
+ QmlJSGlobal
+
+
+ 2
+ UTF-8
+ false
+ 4
+ false
+ 80
+ true
+ true
+ 1
+ true
+ false
+ 0
+ true
+ true
+ 0
+ 8
+ true
+ 1
+ true
+ true
+ true
+ false
+
+
+
+ ProjectExplorer.Project.PluginSettings
+
+
+ -fno-delayed-template-parsing
+
+ true
+
+
+
+ ProjectExplorer.Project.Target.0
+
+ Desktop Qt 5.14.2 MinGW 64-bit
+ Desktop Qt 5.14.2 MinGW 64-bit
+ qt.qt5.5142.win64_mingw73_kit
+ 0
+ 0
+ 0
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Debug
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ false
+ false
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Debug
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 2
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Release
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ false
+
+ false
+ false
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Release
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Profile
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ true
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Profile
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+ 3
+
+
+ 0
+ Deploy
+ Deploy
+ ProjectExplorer.BuildSteps.Deploy
+
+ 1
+ ProjectExplorer.DefaultDeployConfiguration
+
+ 1
+
+
+ dwarf
+
+ cpu-cycles
+
+
+ 250
+
+ -e
+ cpu-cycles
+ --call-graph
+ dwarf,4096
+ -F
+ 250
+
+ -F
+ true
+ 4096
+ false
+ false
+ 1000
+
+ true
+
+ false
+ false
+ false
+ false
+ true
+ 0.01
+ 10
+ true
+ kcachegrind
+ 1
+ 25
+
+ 1
+ true
+ false
+ true
+ valgrind
+
+ 0
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+ 10
+ 11
+ 12
+ 13
+ 14
+
+ 2
+
+ Qt4ProjectManager.Qt4RunConfiguration:E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+ E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+
+ false
+
+ false
+ true
+ true
+ false
+ false
+ true
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Debug
+
+ 1
+
+
+
+ ProjectExplorer.Project.Target.1
+
+ Desktop Qt 5.14.2 MinGW 32-bit
+ Desktop Qt 5.14.2 MinGW 32-bit
+ qt.qt5.5142.win32_mingw73_kit
+ 0
+ 0
+ 0
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_32_bit-Debug
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ false
+ false
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Debug
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 2
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_32_bit-Release
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ false
+
+ false
+ false
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Release
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_32_bit-Profile
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ true
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Profile
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+ 3
+
+
+ 0
+ Deploy
+ Deploy
+ ProjectExplorer.BuildSteps.Deploy
+
+ 1
+ ProjectExplorer.DefaultDeployConfiguration
+
+ 1
+
+
+ dwarf
+
+ cpu-cycles
+
+
+ 250
+
+ -e
+ cpu-cycles
+ --call-graph
+ dwarf,4096
+ -F
+ 250
+
+ -F
+ true
+ 4096
+ false
+ false
+ 1000
+
+ true
+
+ false
+ false
+ false
+ false
+ true
+ 0.01
+ 10
+ true
+ kcachegrind
+ 1
+ 25
+
+ 1
+ true
+ false
+ true
+ valgrind
+
+ 0
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+ 10
+ 11
+ 12
+ 13
+ 14
+
+ 2
+
+ Qt4ProjectManager.Qt4RunConfiguration:E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+ E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+
+ false
+
+ false
+ true
+ true
+ false
+ false
+ true
+
+
+
+ 1
+
+
+
+ ProjectExplorer.Project.TargetCount
+ 2
+
+
+ ProjectExplorer.Project.Updater.FileVersion
+ 22
+
+
+ Version
+ 22
+
+
diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user
new file mode 100644
index 0000000..77ab7ad
--- /dev/null
+++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user
@@ -0,0 +1,562 @@
+
+
+
+
+
+ EnvironmentId
+ {c08df58c-84a7-4965-bca6-e98789474efa}
+
+
+ ProjectExplorer.Project.ActiveTarget
+ 0
+
+
+ ProjectExplorer.Project.EditorSettings
+
+ true
+ false
+ true
+
+ Cpp
+
+ CppGlobal
+
+
+
+ QmlJS
+
+ QmlJSGlobal
+
+
+ 2
+ UTF-8
+ false
+ 4
+ false
+ 80
+ true
+ true
+ 1
+ true
+ false
+ 0
+ true
+ true
+ 0
+ 8
+ true
+ 1
+ true
+ true
+ true
+ false
+
+
+
+ ProjectExplorer.Project.PluginSettings
+
+
+ -fno-delayed-template-parsing
+
+ true
+
+
+
+ ProjectExplorer.Project.Target.0
+
+ Desktop Qt 5.14.2 MinGW 64-bit
+ Desktop Qt 5.14.2 MinGW 64-bit
+ qt.qt5.5142.win64_mingw73_kit
+ 0
+ 0
+ 0
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Debug
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ false
+ false
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Debug
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 2
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Release
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ false
+
+ false
+ false
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Release
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Profile
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ true
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Profile
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+ 3
+
+
+ 0
+ Deploy
+ Deploy
+ ProjectExplorer.BuildSteps.Deploy
+
+ 1
+ ProjectExplorer.DefaultDeployConfiguration
+
+ 1
+
+
+ dwarf
+
+ cpu-cycles
+
+
+ 250
+
+ -e
+ cpu-cycles
+ --call-graph
+ dwarf,4096
+ -F
+ 250
+
+ -F
+ true
+ 4096
+ false
+ false
+ 1000
+
+ true
+
+ false
+ false
+ false
+ false
+ true
+ 0.01
+ 10
+ true
+ kcachegrind
+ 1
+ 25
+
+ 1
+ true
+ false
+ true
+ valgrind
+
+ 0
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+ 10
+ 11
+ 12
+ 13
+ 14
+
+ 2
+
+ Qt4ProjectManager.Qt4RunConfiguration:E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+ E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+
+ false
+
+ false
+ true
+ true
+ false
+ false
+ true
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Debug
+
+ 1
+
+
+
+ ProjectExplorer.Project.Target.1
+
+ Desktop Qt 5.14.2 MinGW 32-bit
+ Desktop Qt 5.14.2 MinGW 32-bit
+ qt.qt5.5142.win32_mingw73_kit
+ 0
+ 0
+ 0
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_32_bit-Debug
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ false
+ false
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Debug
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 2
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_32_bit-Release
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ false
+
+ false
+ false
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Release
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_32_bit-Profile
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ true
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Profile
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+ 3
+
+
+ 0
+ Deploy
+ Deploy
+ ProjectExplorer.BuildSteps.Deploy
+
+ 1
+ ProjectExplorer.DefaultDeployConfiguration
+
+ 1
+
+
+ dwarf
+
+ cpu-cycles
+
+
+ 250
+
+ -e
+ cpu-cycles
+ --call-graph
+ dwarf,4096
+ -F
+ 250
+
+ -F
+ true
+ 4096
+ false
+ false
+ 1000
+
+ true
+
+ false
+ false
+ false
+ false
+ true
+ 0.01
+ 10
+ true
+ kcachegrind
+ 1
+ 25
+
+ 1
+ true
+ false
+ true
+ valgrind
+
+ 0
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+ 10
+ 11
+ 12
+ 13
+ 14
+
+ 2
+
+ Qt4ProjectManager.Qt4RunConfiguration:E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+ E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+
+ false
+
+ false
+ true
+ true
+ false
+ false
+ true
+
+
+
+ 1
+
+
+
+ ProjectExplorer.Project.TargetCount
+ 2
+
+
+ ProjectExplorer.Project.Updater.FileVersion
+ 22
+
+
+ Version
+ 22
+
+
diff --git a/softwareDirectory/AutoVerScheme/TaskManager.cpp b/softwareDirectory/AutoVerScheme/TaskManager.cpp
index ed0d569..c6c6c43 100644
--- a/softwareDirectory/AutoVerScheme/TaskManager.cpp
+++ b/softwareDirectory/AutoVerScheme/TaskManager.cpp
@@ -2,11 +2,14 @@
#include "id/TaskManager.h"
#include "basecommonapi.h"
-// 定义并初始化静态成员变量
+// 定义并初始化静态成员变量 委托单编号
QMap TaskManager::dailyTaskCounts;
QDate TaskManager::currentDate;
QString TaskManager::KeyDate;
+//检定结果保存
+QMap TaskManager::saveResultdatanoList;
+QString TaskManager::ResultKeyDate;
QString TaskManager::generateTask(QString Number)
{
// 初始化当天任务单数量为0
@@ -40,24 +43,67 @@
return taskId;
}
-int TaskManager::getTaskCountForToday()
+QString TaskManager::getsaveResultdatano()
{
- // 返回当天的任务单数量
- return dailyTaskCounts.value(KeyDate, 0);
+
+ //获取结果保存ID
+ ResultKeyDate = QDate::currentDate().toString("yyyyMMdd");
+ //判断是否包含 如包含直接返回结果
+ if(!saveResultdatanoList.contains(ResultKeyDate))
+ {
+
+ //找寻数据库上次的记录
+ QString datano=BaseCommonApi::getNewResultData().data_no;
+ if(datano!=""){
+ int startIndex = datano.lastIndexOf("j")+1; // 找到 "YYYY" 的起始位置
+ int endIndex = startIndex + 8; // "YYYYMMDD" 总共8个字符
+ //截截取
+ QString result = datano.mid(startIndex, 8);
+ if(result!=ResultKeyDate){
+ saveResultdatanoList[ResultKeyDate] = 1;
+ }else
+ {
+ //获取最后一位数 并加1
+ QChar lastChar = datano.at(datano.length() - 1);
+ if (lastChar.isDigit()) {
+
+ int Count=lastChar.digitValue();
+ saveResultdatanoList[ResultKeyDate] = Count+1;
+ }
+
+ }
+
+ }else{saveResultdatanoList[ResultKeyDate] = 1;};
+
+ }
+
+ QString dateStr = ResultKeyDate;
+ // 生成结果保存编号,这里假设编号格式是 "jdsjYYYYMMDDXXXX",XXXX是顺序号 字段4 10进制 不足时0填充
+ QString taskId = QString("jdsj%1%2").arg(dateStr).arg(saveResultdatanoList[ResultKeyDate], 4, 10, QChar('0'));
+ //返回结果
+ return taskId;
}
+
bool TaskManager::AddCurrenTaskCount()
{
// 增加当天任务单数量
try {
-
dailyTaskCounts[KeyDate]++;
return true;
} catch(const std::exception &e) {
return false;
}
-
}
-
+bool TaskManager::AddResultDataNoCount()
+{
+ // 增加当天任务单数量
+ try {
+ saveResultdatanoList[ResultKeyDate]++;
+ return true;
+ } catch(const std::exception &e) {
+ return false;
+ }
+}
diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user
new file mode 100644
index 0000000..77ab7ad
--- /dev/null
+++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user
@@ -0,0 +1,562 @@
+
+
+
+
+
+ EnvironmentId
+ {c08df58c-84a7-4965-bca6-e98789474efa}
+
+
+ ProjectExplorer.Project.ActiveTarget
+ 0
+
+
+ ProjectExplorer.Project.EditorSettings
+
+ true
+ false
+ true
+
+ Cpp
+
+ CppGlobal
+
+
+
+ QmlJS
+
+ QmlJSGlobal
+
+
+ 2
+ UTF-8
+ false
+ 4
+ false
+ 80
+ true
+ true
+ 1
+ true
+ false
+ 0
+ true
+ true
+ 0
+ 8
+ true
+ 1
+ true
+ true
+ true
+ false
+
+
+
+ ProjectExplorer.Project.PluginSettings
+
+
+ -fno-delayed-template-parsing
+
+ true
+
+
+
+ ProjectExplorer.Project.Target.0
+
+ Desktop Qt 5.14.2 MinGW 64-bit
+ Desktop Qt 5.14.2 MinGW 64-bit
+ qt.qt5.5142.win64_mingw73_kit
+ 0
+ 0
+ 0
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Debug
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ false
+ false
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Debug
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 2
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Release
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ false
+
+ false
+ false
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Release
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Profile
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ true
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Profile
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+ 3
+
+
+ 0
+ Deploy
+ Deploy
+ ProjectExplorer.BuildSteps.Deploy
+
+ 1
+ ProjectExplorer.DefaultDeployConfiguration
+
+ 1
+
+
+ dwarf
+
+ cpu-cycles
+
+
+ 250
+
+ -e
+ cpu-cycles
+ --call-graph
+ dwarf,4096
+ -F
+ 250
+
+ -F
+ true
+ 4096
+ false
+ false
+ 1000
+
+ true
+
+ false
+ false
+ false
+ false
+ true
+ 0.01
+ 10
+ true
+ kcachegrind
+ 1
+ 25
+
+ 1
+ true
+ false
+ true
+ valgrind
+
+ 0
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+ 10
+ 11
+ 12
+ 13
+ 14
+
+ 2
+
+ Qt4ProjectManager.Qt4RunConfiguration:E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+ E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+
+ false
+
+ false
+ true
+ true
+ false
+ false
+ true
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Debug
+
+ 1
+
+
+
+ ProjectExplorer.Project.Target.1
+
+ Desktop Qt 5.14.2 MinGW 32-bit
+ Desktop Qt 5.14.2 MinGW 32-bit
+ qt.qt5.5142.win32_mingw73_kit
+ 0
+ 0
+ 0
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_32_bit-Debug
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ false
+ false
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Debug
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 2
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_32_bit-Release
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ false
+
+ false
+ false
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Release
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_32_bit-Profile
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ true
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Profile
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+ 3
+
+
+ 0
+ Deploy
+ Deploy
+ ProjectExplorer.BuildSteps.Deploy
+
+ 1
+ ProjectExplorer.DefaultDeployConfiguration
+
+ 1
+
+
+ dwarf
+
+ cpu-cycles
+
+
+ 250
+
+ -e
+ cpu-cycles
+ --call-graph
+ dwarf,4096
+ -F
+ 250
+
+ -F
+ true
+ 4096
+ false
+ false
+ 1000
+
+ true
+
+ false
+ false
+ false
+ false
+ true
+ 0.01
+ 10
+ true
+ kcachegrind
+ 1
+ 25
+
+ 1
+ true
+ false
+ true
+ valgrind
+
+ 0
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+ 10
+ 11
+ 12
+ 13
+ 14
+
+ 2
+
+ Qt4ProjectManager.Qt4RunConfiguration:E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+ E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+
+ false
+
+ false
+ true
+ true
+ false
+ false
+ true
+
+
+
+ 1
+
+
+
+ ProjectExplorer.Project.TargetCount
+ 2
+
+
+ ProjectExplorer.Project.Updater.FileVersion
+ 22
+
+
+ Version
+ 22
+
+
diff --git a/softwareDirectory/AutoVerScheme/TaskManager.cpp b/softwareDirectory/AutoVerScheme/TaskManager.cpp
index ed0d569..c6c6c43 100644
--- a/softwareDirectory/AutoVerScheme/TaskManager.cpp
+++ b/softwareDirectory/AutoVerScheme/TaskManager.cpp
@@ -2,11 +2,14 @@
#include "id/TaskManager.h"
#include "basecommonapi.h"
-// 定义并初始化静态成员变量
+// 定义并初始化静态成员变量 委托单编号
QMap TaskManager::dailyTaskCounts;
QDate TaskManager::currentDate;
QString TaskManager::KeyDate;
+//检定结果保存
+QMap TaskManager::saveResultdatanoList;
+QString TaskManager::ResultKeyDate;
QString TaskManager::generateTask(QString Number)
{
// 初始化当天任务单数量为0
@@ -40,24 +43,67 @@
return taskId;
}
-int TaskManager::getTaskCountForToday()
+QString TaskManager::getsaveResultdatano()
{
- // 返回当天的任务单数量
- return dailyTaskCounts.value(KeyDate, 0);
+
+ //获取结果保存ID
+ ResultKeyDate = QDate::currentDate().toString("yyyyMMdd");
+ //判断是否包含 如包含直接返回结果
+ if(!saveResultdatanoList.contains(ResultKeyDate))
+ {
+
+ //找寻数据库上次的记录
+ QString datano=BaseCommonApi::getNewResultData().data_no;
+ if(datano!=""){
+ int startIndex = datano.lastIndexOf("j")+1; // 找到 "YYYY" 的起始位置
+ int endIndex = startIndex + 8; // "YYYYMMDD" 总共8个字符
+ //截截取
+ QString result = datano.mid(startIndex, 8);
+ if(result!=ResultKeyDate){
+ saveResultdatanoList[ResultKeyDate] = 1;
+ }else
+ {
+ //获取最后一位数 并加1
+ QChar lastChar = datano.at(datano.length() - 1);
+ if (lastChar.isDigit()) {
+
+ int Count=lastChar.digitValue();
+ saveResultdatanoList[ResultKeyDate] = Count+1;
+ }
+
+ }
+
+ }else{saveResultdatanoList[ResultKeyDate] = 1;};
+
+ }
+
+ QString dateStr = ResultKeyDate;
+ // 生成结果保存编号,这里假设编号格式是 "jdsjYYYYMMDDXXXX",XXXX是顺序号 字段4 10进制 不足时0填充
+ QString taskId = QString("jdsj%1%2").arg(dateStr).arg(saveResultdatanoList[ResultKeyDate], 4, 10, QChar('0'));
+ //返回结果
+ return taskId;
}
+
bool TaskManager::AddCurrenTaskCount()
{
// 增加当天任务单数量
try {
-
dailyTaskCounts[KeyDate]++;
return true;
} catch(const std::exception &e) {
return false;
}
-
}
-
+bool TaskManager::AddResultDataNoCount()
+{
+ // 增加当天任务单数量
+ try {
+ saveResultdatanoList[ResultKeyDate]++;
+ return true;
+ } catch(const std::exception &e) {
+ return false;
+ }
+}
diff --git a/softwareDirectory/AutoVerScheme/basecommonapi.cpp b/softwareDirectory/AutoVerScheme/basecommonapi.cpp
index 874b354..47ee4da 100644
--- a/softwareDirectory/AutoVerScheme/basecommonapi.cpp
+++ b/softwareDirectory/AutoVerScheme/basecommonapi.cpp
@@ -192,6 +192,24 @@
}
return result;
}
+//查看最新结果保存数据
+SaveDeviceMeasureInfo BaseCommonApi::getNewResultData()
+{
+ SaveDeviceMeasureInfo result;
+ QSqlQuery query;
+ query.prepare("select * from biz_business_device_measure_info as bz ORDER BY bz.create_time DESC LIMIT 1");
+ if (query.exec()) {
+ while (query.next()) {
+
+ result.id = query.value("id").toString();
+ result.data_no = query.value("data_no").toString();
+
+ }
+ } else {
+ qDebug() << "Query execution failed: " << query.lastError().text();
+ }
+ return result;
+}
//查看当前最新的任务单
QList BaseCommonApi::getCreateTaskListNew()
{
@@ -800,6 +818,25 @@
*/
//根据被检设备ID获取当前设备的 检定项目及检定点
+/*
+QMap> BaseCommonApi::Search_CalibrationTable(QString DeiverId,QMap *HeadList)
+{
+
+ QMap> DataList;
+ DataList.clear();
+ QList CliTable=BaseCommonApi::getJudgeCalibrationTable(DeiverId);
+ if(CliTable.count()==0)return DataList;
+ switch (CliTable[0].belong_standard_equipment.toInt())
+ {
+ case 1:
+ //CliTable[0].id
+ //1717086652508487681
+ DataList=BaseCommonApi::getVerMultiCal(CliTable[0].id,HeadList);
+ }
+
+ return DataList;
+}*/
+//根据被检设备ID获取当前设备的 检定项目及检定点
QList BaseCommonApi::Search_CalibrationTable(QString DeiverId,QStringList *HeadList)
{
@@ -817,7 +854,6 @@
return DataList;
}
-
//核查设备对应的装置表 核查项及核查点 传参设备id
QList BaseCommonApi::Search_VerifyTable(QString DeiverId,QStringList *HeadList )
{
@@ -861,7 +897,6 @@
}
return DataList;
}
-
//被检设备管理-检定项目及检定点-多功能校准源
QList BaseCommonApi::getVerMultiCal(QString itemId,QStringList *headList)
{
@@ -912,22 +947,88 @@
<<"两线/四线模式"<<"线圈放大"<<"示值"<<"准确度a"<<"指针式仪表满量程值"<<"指针式仪表满量程值单位"<<"被检表示值"<<"准确度等级"<<"创建时间"<<"更新时间";
return resultData;
}
-bool GetDataReturnItemList(QList ResultData,QMap *DataMapList,QList *HeadMapList)
+//被检设备管理-检定项目及检定点-多功能校准源
+/*
+QMap> BaseCommonApi::getVerMultiCal(QString itemId,QMap *headList)
+{
+QMap> DataMapList;
+QList resultData;
+QStringList result;
+resultData.clear();
+
+QSqlQuery query;
+ query.prepare("SELECT * FROM biz_business_device_measure_item_data_calibrator bbdmidc WHERE item_id = :itemId ");
+ // 将参数绑定到占位符
+ query.bindValue(":itemId", itemId);
+ if (query.exec()) {
+ while (query.next()) {
+ result.clear();
+ result.append(query.value("id").toString());
+ result.append(query.value("item_id").toString()); //检定项目ID
+ result.append(query.value("params").toString()); //检查项目
+ result.append(query.value("capacity").toString());
+ result.append(query.value("unit").toString());
+ result.append(query.value("frequency").toString());
+ result.append(query.value("frequency_unit").toString());
+ result.append(query.value("range_range").toString());
+ result.append(query.value("standard_value").toString());
+ result.append(query.value("resolution").toString());
+ result.append(query.value("maximum_error").toString());
+ result.append(query.value("error_param_a").toString());
+ result.append(query.value("error_param_b").toString());
+ result.append(query.value("line_mode").toString());
+ result.append(query.value("coil_enlarge").toString());
+ result.append(query.value("indicating_value").toString());
+ result.append(query.value("accuracy_a").toString());
+ result.append(query.value("full_scale_value").toString());
+ result.append(query.value("full_scale_value_unit").toString());
+ result.append(query.value("measure_indication_value").toString());
+ result.append(query.value("accuracy_level").toString());
+ result.append(query.value("create_time").toString());
+ result.append(query.value("update_time").toString());
+ resultData.append(result);
+ }
+ } else {
+ qDebug() << "Query execution failed: " << query.lastError().text();
+ }
+ //进行检定项目列头转换
+ DataMapList= GetDataReturnItemList(resultData,DataMapList,headList);
+ return DataMapList;
+}
+*/
+QMap> BaseCommonApi::GetDataReturnItemList(QList ResultData,QMap> DataMapList,QMap *HeadMapList)
{
+ QList isFirst;
+ isFirst.append(true);
+ isFirst.append(true);
+ isFirst.append(true);
+ isFirst.append(true);
+ isFirst.append(true);
+ QList DCVList;
+ QList ACVList;
+ QList DCIList;
+ QList ACIList;
+ QList RList;
for(const QStringList &row : ResultData)
{
if (!row.isEmpty()) { // 确保行不为空
if(row[2]=="DCV")
{
- QString VerificationItem= "DCV";
+
+ QString VerificationItem=NULL;
+ if(isFirst[0])
+ {
+ VerificationItem = "DCV";
//添加列头
QStringList head;
head << "序号" << "检定项目" << "量" << "单位" << "量程"
<< "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
- HeadMapList->append(head);
-
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[0]=false;
+ }
//添加数据
+
QStringList Data;
Data.append(row[0]); //ID
Data.append(row[2]); //检定项目
@@ -946,24 +1047,167 @@
Data.append("0");
}
Data.append(row[9]); //分辨力
-
+ DCVList.append(Data);
}
else if(ResultData[2].first()=="ACV")
{
+ QString VerificationItem=NULL;
+ if(isFirst[1])
+ {
+ VerificationItem = "ACV";
+ //添加列头
+ QStringList head;
+ head << "序号" << "检定项目" << "量" << "单位" <<"频率" << "量程"
+ << "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[1]=false;
+ }
+ //添加数据
+ QStringList Data;
+ Data.append(row[0]); //ID
+ Data.append(row[2]); //检定项目
+ Data.append(row[3]); //量
+ Data.append(row[4]); //单位
+ Data.append(row[7]); //量程
+ Data.append(row[8]); //标准值
+ Data.append(row[15]); //示值
+ Data.append(""); //绝对误差 软件界面计算
+ //最大允许误差 根据公式计算 目前 先都按 a*标准值 + b*量程
+ try {
+ //保证数据库内数据没问题
+ Data.append(QString::number((row[11].toDouble()*row[8].toDouble())
+ + (row[12].toDouble()*row[7].toDouble())));
+ } catch(const std::exception &e) {
+ Data.append("0");
+ }
+ Data.append(row[9]); //分辨力
+ ACVList.append(Data);
} else if(ResultData[2].first()=="DCI")
{
+ QString VerificationItem=NULL;
+ if(isFirst[2])
+ {
+ VerificationItem = "DCI";
+ //添加列头
+ QStringList head;
+ head << "序号" << "检定项目" << "量" << "单位" <<"频率" << "量程"
+ << "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[2]=false;
+ }
+ //添加数据
+
+ QStringList Data;
+ Data.append(row[0]); //ID
+ Data.append(row[2]); //检定项目
+ Data.append(row[3]); //量
+ Data.append(row[4]); //单位
+ Data.append(row[5]); //频率
+ Data.append(row[7]); //量程
+ Data.append(row[8]); //标准值
+ Data.append(row[15]); //示值
+ Data.append(""); //绝对误差 软件界面计算
+ //最大允许误差 根据公式计算 目前 先都按 a*标准值 + b*量程
+ try {
+ //保证数据库内数据没问题
+ Data.append(QString::number((row[11].toDouble()*row[8].toDouble())
+ + (row[12].toDouble()*row[7].toDouble())));
+ } catch(const std::exception &e) {
+ Data.append("0");
+ }
+ Data.append(row[9]); //分辨力
+ DCIList.append(Data);
} else if(ResultData[2].first()=="ACI")
{
+ QString VerificationItem=NULL;
+ if(isFirst[3])
+ {
+ VerificationItem = "ACI";
+ //添加列头
+ QStringList head;
+ head << "序号" << "检定项目" << "量" << "单位" <<"频率" << "量程"
+ << "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[3]=false;
+ }
+ //添加数据
- } else if(ResultData[2].first()=="ACV")
+ QStringList Data;
+ Data.append(row[0]); //ID
+ Data.append(row[2]); //检定项目
+ Data.append(row[3]); //量
+ Data.append(row[4]); //单位
+ Data.append(row[5]); //频率
+ Data.append(row[7]); //量程
+ Data.append(row[8]); //标准值
+ Data.append(row[15]); //示值
+ Data.append(""); //绝对误差 软件界面计算
+ //最大允许误差 根据公式计算 目前 先都按 a*标准值 + b*量程
+ try {
+ //保证数据库内数据没问题
+ Data.append(QString::number((row[11].toDouble()*row[8].toDouble())
+ + (row[12].toDouble()*row[7].toDouble())));
+ } catch(const std::exception &e) {
+ Data.append("0");
+ }
+ Data.append(row[9]); //分辨力
+ ACIList.append(Data);
+ } else if(ResultData[2].first()=="R")
{
+ QString VerificationItem=NULL;
+ if(isFirst[4])
+ {
+ VerificationItem = "R";
+ //添加列头
+ QStringList head;
+ head << "序号" <<"两线/四线" << "量" << "单位" << "量程"
+ << "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[4]=false;
+ }
+ //添加数据
+ QStringList Data;
+ Data.append(row[0]); //ID
+ Data.append(row[13]); //两线/四线
+ Data.append(row[3]); //量
+ Data.append(row[4]); //单位
+ Data.append(row[7]); //量程
+ Data.append(row[8]); //标准值
+ Data.append(row[15]); //示值
+ Data.append(""); //绝对误差 软件界面计算
+ //最大允许误差 根据公式计算 目前 先都按 a*标准值 + b*量程
+ try {
+ //保证数据库内数据没问题
+ Data.append(QString::number((row[11].toDouble()*row[8].toDouble())
+ + (row[12].toDouble()*row[7].toDouble())));
+ } catch(const std::exception &e) {
+ Data.append("0");
+ }
+ Data.append(row[9]); //分辨力
+ RList.append(Data);
}
}
}
+ if(DCVList.count()!=0){
+ DataMapList.insert("DCV",DCVList);
+ };
+ if(DCVList.count()!=0){
+ DataMapList.insert("ACV",ACVList);
+ };
+ if(DCVList.count()!=0){
+ DataMapList.insert("DCI",DCIList);
+ };
+ if(DCVList.count()!=0){
+ DataMapList.insert("ACI",ACIList);
+ };
+ if(DCVList.count()!=0){
+ DataMapList.insert("R",RList);
+ };
+ return DataMapList;
}
//检定数据管理 首页
QList BaseCommonApi::getVerificationData()
@@ -1111,6 +1355,7 @@
result.append(query.value("frequency").toString());
result.append( query.value("range_range").toString());
result.append(query.value("standard_value").toString());
+ result.append(query.value("indicating_value").toString());
result.append(query.value("resolution").toString());
result.append(query.value("maximum_error").toString());
result.append(query.value("error_param_a").toString());
@@ -1123,7 +1368,7 @@
qDebug() << "Query execution failed: " << query.lastError().text();
}
*HeadList<<"id"<<"参数"<<"量"<<"单位"<<"频率"
- <<"量程"<<"标准值"<<"分辨力"<<"最大允许误差"<<"误差参数a"
+ <<"量程"<<"标准值" <<"示值" <<"分辨力"<<"最大允许误差"<<"误差参数a"
<<"误差参数b"<<"合格率";
return resultData;
@@ -1611,14 +1856,20 @@
//自动检定-结果保存-biz_business_device_measure_info 基本信息表
bool BaseCommonApi::InsertSaveDeviceMeasureInfo(SaveDeviceMeasureInfo saveInfo)
{
+ saveInfo.data_no=TaskManager::getsaveResultdatano();
+
QSqlQuery query;
query.prepare("INSERT INTO biz_business_device_measure_info "
" (id,data_no,order_id,sample_id,item_id,"
" trace_date,measure_valid_date,measure_address,temperature,humidity,data_source,"
" outcome,create_time,update_time) "
" VALUES "
- " (:id,:data_no,:order_id,:sample_id,:item_id,:trace_date,:measure_valid_date,:measure_address,:temperature,:humidity,:data_source,:outcome,:create_time,:update_time)");
+ " ("
+ ":id,:data_no,:order_id,:sample_id,:item_id,:trace_date,:measure_valid_date,"
+ ":measure_address,:temperature,:humidity,:data_source,:outcome,:create_time,:update_time"
+ ")");
QString currentDateTime = QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss");
+
query.bindValue(":id", saveInfo.id); //id 自动生成
query.bindValue(":data_no", saveInfo.data_no);
query.bindValue(":order_id", saveInfo.order_id);
@@ -1636,6 +1887,8 @@
bool isSuccess = query.exec();
if (!isSuccess) {
qDebug() << "InsertTaskBasic query failed: " << query.lastError().text();
+ }else{
+ TaskManager::AddResultDataNoCount();
}
return isSuccess;
diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user
new file mode 100644
index 0000000..77ab7ad
--- /dev/null
+++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user
@@ -0,0 +1,562 @@
+
+
+
+
+
+ EnvironmentId
+ {c08df58c-84a7-4965-bca6-e98789474efa}
+
+
+ ProjectExplorer.Project.ActiveTarget
+ 0
+
+
+ ProjectExplorer.Project.EditorSettings
+
+ true
+ false
+ true
+
+ Cpp
+
+ CppGlobal
+
+
+
+ QmlJS
+
+ QmlJSGlobal
+
+
+ 2
+ UTF-8
+ false
+ 4
+ false
+ 80
+ true
+ true
+ 1
+ true
+ false
+ 0
+ true
+ true
+ 0
+ 8
+ true
+ 1
+ true
+ true
+ true
+ false
+
+
+
+ ProjectExplorer.Project.PluginSettings
+
+
+ -fno-delayed-template-parsing
+
+ true
+
+
+
+ ProjectExplorer.Project.Target.0
+
+ Desktop Qt 5.14.2 MinGW 64-bit
+ Desktop Qt 5.14.2 MinGW 64-bit
+ qt.qt5.5142.win64_mingw73_kit
+ 0
+ 0
+ 0
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Debug
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ false
+ false
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Debug
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 2
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Release
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ false
+
+ false
+ false
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Release
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Profile
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ true
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Profile
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+ 3
+
+
+ 0
+ Deploy
+ Deploy
+ ProjectExplorer.BuildSteps.Deploy
+
+ 1
+ ProjectExplorer.DefaultDeployConfiguration
+
+ 1
+
+
+ dwarf
+
+ cpu-cycles
+
+
+ 250
+
+ -e
+ cpu-cycles
+ --call-graph
+ dwarf,4096
+ -F
+ 250
+
+ -F
+ true
+ 4096
+ false
+ false
+ 1000
+
+ true
+
+ false
+ false
+ false
+ false
+ true
+ 0.01
+ 10
+ true
+ kcachegrind
+ 1
+ 25
+
+ 1
+ true
+ false
+ true
+ valgrind
+
+ 0
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+ 10
+ 11
+ 12
+ 13
+ 14
+
+ 2
+
+ Qt4ProjectManager.Qt4RunConfiguration:E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+ E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+
+ false
+
+ false
+ true
+ true
+ false
+ false
+ true
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Debug
+
+ 1
+
+
+
+ ProjectExplorer.Project.Target.1
+
+ Desktop Qt 5.14.2 MinGW 32-bit
+ Desktop Qt 5.14.2 MinGW 32-bit
+ qt.qt5.5142.win32_mingw73_kit
+ 0
+ 0
+ 0
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_32_bit-Debug
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ false
+ false
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Debug
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 2
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_32_bit-Release
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ false
+
+ false
+ false
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Release
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_32_bit-Profile
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ true
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Profile
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+ 3
+
+
+ 0
+ Deploy
+ Deploy
+ ProjectExplorer.BuildSteps.Deploy
+
+ 1
+ ProjectExplorer.DefaultDeployConfiguration
+
+ 1
+
+
+ dwarf
+
+ cpu-cycles
+
+
+ 250
+
+ -e
+ cpu-cycles
+ --call-graph
+ dwarf,4096
+ -F
+ 250
+
+ -F
+ true
+ 4096
+ false
+ false
+ 1000
+
+ true
+
+ false
+ false
+ false
+ false
+ true
+ 0.01
+ 10
+ true
+ kcachegrind
+ 1
+ 25
+
+ 1
+ true
+ false
+ true
+ valgrind
+
+ 0
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+ 10
+ 11
+ 12
+ 13
+ 14
+
+ 2
+
+ Qt4ProjectManager.Qt4RunConfiguration:E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+ E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+
+ false
+
+ false
+ true
+ true
+ false
+ false
+ true
+
+
+
+ 1
+
+
+
+ ProjectExplorer.Project.TargetCount
+ 2
+
+
+ ProjectExplorer.Project.Updater.FileVersion
+ 22
+
+
+ Version
+ 22
+
+
diff --git a/softwareDirectory/AutoVerScheme/TaskManager.cpp b/softwareDirectory/AutoVerScheme/TaskManager.cpp
index ed0d569..c6c6c43 100644
--- a/softwareDirectory/AutoVerScheme/TaskManager.cpp
+++ b/softwareDirectory/AutoVerScheme/TaskManager.cpp
@@ -2,11 +2,14 @@
#include "id/TaskManager.h"
#include "basecommonapi.h"
-// 定义并初始化静态成员变量
+// 定义并初始化静态成员变量 委托单编号
QMap TaskManager::dailyTaskCounts;
QDate TaskManager::currentDate;
QString TaskManager::KeyDate;
+//检定结果保存
+QMap TaskManager::saveResultdatanoList;
+QString TaskManager::ResultKeyDate;
QString TaskManager::generateTask(QString Number)
{
// 初始化当天任务单数量为0
@@ -40,24 +43,67 @@
return taskId;
}
-int TaskManager::getTaskCountForToday()
+QString TaskManager::getsaveResultdatano()
{
- // 返回当天的任务单数量
- return dailyTaskCounts.value(KeyDate, 0);
+
+ //获取结果保存ID
+ ResultKeyDate = QDate::currentDate().toString("yyyyMMdd");
+ //判断是否包含 如包含直接返回结果
+ if(!saveResultdatanoList.contains(ResultKeyDate))
+ {
+
+ //找寻数据库上次的记录
+ QString datano=BaseCommonApi::getNewResultData().data_no;
+ if(datano!=""){
+ int startIndex = datano.lastIndexOf("j")+1; // 找到 "YYYY" 的起始位置
+ int endIndex = startIndex + 8; // "YYYYMMDD" 总共8个字符
+ //截截取
+ QString result = datano.mid(startIndex, 8);
+ if(result!=ResultKeyDate){
+ saveResultdatanoList[ResultKeyDate] = 1;
+ }else
+ {
+ //获取最后一位数 并加1
+ QChar lastChar = datano.at(datano.length() - 1);
+ if (lastChar.isDigit()) {
+
+ int Count=lastChar.digitValue();
+ saveResultdatanoList[ResultKeyDate] = Count+1;
+ }
+
+ }
+
+ }else{saveResultdatanoList[ResultKeyDate] = 1;};
+
+ }
+
+ QString dateStr = ResultKeyDate;
+ // 生成结果保存编号,这里假设编号格式是 "jdsjYYYYMMDDXXXX",XXXX是顺序号 字段4 10进制 不足时0填充
+ QString taskId = QString("jdsj%1%2").arg(dateStr).arg(saveResultdatanoList[ResultKeyDate], 4, 10, QChar('0'));
+ //返回结果
+ return taskId;
}
+
bool TaskManager::AddCurrenTaskCount()
{
// 增加当天任务单数量
try {
-
dailyTaskCounts[KeyDate]++;
return true;
} catch(const std::exception &e) {
return false;
}
-
}
-
+bool TaskManager::AddResultDataNoCount()
+{
+ // 增加当天任务单数量
+ try {
+ saveResultdatanoList[ResultKeyDate]++;
+ return true;
+ } catch(const std::exception &e) {
+ return false;
+ }
+}
diff --git a/softwareDirectory/AutoVerScheme/basecommonapi.cpp b/softwareDirectory/AutoVerScheme/basecommonapi.cpp
index 874b354..47ee4da 100644
--- a/softwareDirectory/AutoVerScheme/basecommonapi.cpp
+++ b/softwareDirectory/AutoVerScheme/basecommonapi.cpp
@@ -192,6 +192,24 @@
}
return result;
}
+//查看最新结果保存数据
+SaveDeviceMeasureInfo BaseCommonApi::getNewResultData()
+{
+ SaveDeviceMeasureInfo result;
+ QSqlQuery query;
+ query.prepare("select * from biz_business_device_measure_info as bz ORDER BY bz.create_time DESC LIMIT 1");
+ if (query.exec()) {
+ while (query.next()) {
+
+ result.id = query.value("id").toString();
+ result.data_no = query.value("data_no").toString();
+
+ }
+ } else {
+ qDebug() << "Query execution failed: " << query.lastError().text();
+ }
+ return result;
+}
//查看当前最新的任务单
QList BaseCommonApi::getCreateTaskListNew()
{
@@ -800,6 +818,25 @@
*/
//根据被检设备ID获取当前设备的 检定项目及检定点
+/*
+QMap> BaseCommonApi::Search_CalibrationTable(QString DeiverId,QMap *HeadList)
+{
+
+ QMap> DataList;
+ DataList.clear();
+ QList CliTable=BaseCommonApi::getJudgeCalibrationTable(DeiverId);
+ if(CliTable.count()==0)return DataList;
+ switch (CliTable[0].belong_standard_equipment.toInt())
+ {
+ case 1:
+ //CliTable[0].id
+ //1717086652508487681
+ DataList=BaseCommonApi::getVerMultiCal(CliTable[0].id,HeadList);
+ }
+
+ return DataList;
+}*/
+//根据被检设备ID获取当前设备的 检定项目及检定点
QList BaseCommonApi::Search_CalibrationTable(QString DeiverId,QStringList *HeadList)
{
@@ -817,7 +854,6 @@
return DataList;
}
-
//核查设备对应的装置表 核查项及核查点 传参设备id
QList BaseCommonApi::Search_VerifyTable(QString DeiverId,QStringList *HeadList )
{
@@ -861,7 +897,6 @@
}
return DataList;
}
-
//被检设备管理-检定项目及检定点-多功能校准源
QList BaseCommonApi::getVerMultiCal(QString itemId,QStringList *headList)
{
@@ -912,22 +947,88 @@
<<"两线/四线模式"<<"线圈放大"<<"示值"<<"准确度a"<<"指针式仪表满量程值"<<"指针式仪表满量程值单位"<<"被检表示值"<<"准确度等级"<<"创建时间"<<"更新时间";
return resultData;
}
-bool GetDataReturnItemList(QList ResultData,QMap *DataMapList,QList *HeadMapList)
+//被检设备管理-检定项目及检定点-多功能校准源
+/*
+QMap> BaseCommonApi::getVerMultiCal(QString itemId,QMap *headList)
+{
+QMap> DataMapList;
+QList resultData;
+QStringList result;
+resultData.clear();
+
+QSqlQuery query;
+ query.prepare("SELECT * FROM biz_business_device_measure_item_data_calibrator bbdmidc WHERE item_id = :itemId ");
+ // 将参数绑定到占位符
+ query.bindValue(":itemId", itemId);
+ if (query.exec()) {
+ while (query.next()) {
+ result.clear();
+ result.append(query.value("id").toString());
+ result.append(query.value("item_id").toString()); //检定项目ID
+ result.append(query.value("params").toString()); //检查项目
+ result.append(query.value("capacity").toString());
+ result.append(query.value("unit").toString());
+ result.append(query.value("frequency").toString());
+ result.append(query.value("frequency_unit").toString());
+ result.append(query.value("range_range").toString());
+ result.append(query.value("standard_value").toString());
+ result.append(query.value("resolution").toString());
+ result.append(query.value("maximum_error").toString());
+ result.append(query.value("error_param_a").toString());
+ result.append(query.value("error_param_b").toString());
+ result.append(query.value("line_mode").toString());
+ result.append(query.value("coil_enlarge").toString());
+ result.append(query.value("indicating_value").toString());
+ result.append(query.value("accuracy_a").toString());
+ result.append(query.value("full_scale_value").toString());
+ result.append(query.value("full_scale_value_unit").toString());
+ result.append(query.value("measure_indication_value").toString());
+ result.append(query.value("accuracy_level").toString());
+ result.append(query.value("create_time").toString());
+ result.append(query.value("update_time").toString());
+ resultData.append(result);
+ }
+ } else {
+ qDebug() << "Query execution failed: " << query.lastError().text();
+ }
+ //进行检定项目列头转换
+ DataMapList= GetDataReturnItemList(resultData,DataMapList,headList);
+ return DataMapList;
+}
+*/
+QMap> BaseCommonApi::GetDataReturnItemList(QList ResultData,QMap> DataMapList,QMap *HeadMapList)
{
+ QList isFirst;
+ isFirst.append(true);
+ isFirst.append(true);
+ isFirst.append(true);
+ isFirst.append(true);
+ isFirst.append(true);
+ QList DCVList;
+ QList ACVList;
+ QList DCIList;
+ QList ACIList;
+ QList RList;
for(const QStringList &row : ResultData)
{
if (!row.isEmpty()) { // 确保行不为空
if(row[2]=="DCV")
{
- QString VerificationItem= "DCV";
+
+ QString VerificationItem=NULL;
+ if(isFirst[0])
+ {
+ VerificationItem = "DCV";
//添加列头
QStringList head;
head << "序号" << "检定项目" << "量" << "单位" << "量程"
<< "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
- HeadMapList->append(head);
-
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[0]=false;
+ }
//添加数据
+
QStringList Data;
Data.append(row[0]); //ID
Data.append(row[2]); //检定项目
@@ -946,24 +1047,167 @@
Data.append("0");
}
Data.append(row[9]); //分辨力
-
+ DCVList.append(Data);
}
else if(ResultData[2].first()=="ACV")
{
+ QString VerificationItem=NULL;
+ if(isFirst[1])
+ {
+ VerificationItem = "ACV";
+ //添加列头
+ QStringList head;
+ head << "序号" << "检定项目" << "量" << "单位" <<"频率" << "量程"
+ << "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[1]=false;
+ }
+ //添加数据
+ QStringList Data;
+ Data.append(row[0]); //ID
+ Data.append(row[2]); //检定项目
+ Data.append(row[3]); //量
+ Data.append(row[4]); //单位
+ Data.append(row[7]); //量程
+ Data.append(row[8]); //标准值
+ Data.append(row[15]); //示值
+ Data.append(""); //绝对误差 软件界面计算
+ //最大允许误差 根据公式计算 目前 先都按 a*标准值 + b*量程
+ try {
+ //保证数据库内数据没问题
+ Data.append(QString::number((row[11].toDouble()*row[8].toDouble())
+ + (row[12].toDouble()*row[7].toDouble())));
+ } catch(const std::exception &e) {
+ Data.append("0");
+ }
+ Data.append(row[9]); //分辨力
+ ACVList.append(Data);
} else if(ResultData[2].first()=="DCI")
{
+ QString VerificationItem=NULL;
+ if(isFirst[2])
+ {
+ VerificationItem = "DCI";
+ //添加列头
+ QStringList head;
+ head << "序号" << "检定项目" << "量" << "单位" <<"频率" << "量程"
+ << "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[2]=false;
+ }
+ //添加数据
+
+ QStringList Data;
+ Data.append(row[0]); //ID
+ Data.append(row[2]); //检定项目
+ Data.append(row[3]); //量
+ Data.append(row[4]); //单位
+ Data.append(row[5]); //频率
+ Data.append(row[7]); //量程
+ Data.append(row[8]); //标准值
+ Data.append(row[15]); //示值
+ Data.append(""); //绝对误差 软件界面计算
+ //最大允许误差 根据公式计算 目前 先都按 a*标准值 + b*量程
+ try {
+ //保证数据库内数据没问题
+ Data.append(QString::number((row[11].toDouble()*row[8].toDouble())
+ + (row[12].toDouble()*row[7].toDouble())));
+ } catch(const std::exception &e) {
+ Data.append("0");
+ }
+ Data.append(row[9]); //分辨力
+ DCIList.append(Data);
} else if(ResultData[2].first()=="ACI")
{
+ QString VerificationItem=NULL;
+ if(isFirst[3])
+ {
+ VerificationItem = "ACI";
+ //添加列头
+ QStringList head;
+ head << "序号" << "检定项目" << "量" << "单位" <<"频率" << "量程"
+ << "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[3]=false;
+ }
+ //添加数据
- } else if(ResultData[2].first()=="ACV")
+ QStringList Data;
+ Data.append(row[0]); //ID
+ Data.append(row[2]); //检定项目
+ Data.append(row[3]); //量
+ Data.append(row[4]); //单位
+ Data.append(row[5]); //频率
+ Data.append(row[7]); //量程
+ Data.append(row[8]); //标准值
+ Data.append(row[15]); //示值
+ Data.append(""); //绝对误差 软件界面计算
+ //最大允许误差 根据公式计算 目前 先都按 a*标准值 + b*量程
+ try {
+ //保证数据库内数据没问题
+ Data.append(QString::number((row[11].toDouble()*row[8].toDouble())
+ + (row[12].toDouble()*row[7].toDouble())));
+ } catch(const std::exception &e) {
+ Data.append("0");
+ }
+ Data.append(row[9]); //分辨力
+ ACIList.append(Data);
+ } else if(ResultData[2].first()=="R")
{
+ QString VerificationItem=NULL;
+ if(isFirst[4])
+ {
+ VerificationItem = "R";
+ //添加列头
+ QStringList head;
+ head << "序号" <<"两线/四线" << "量" << "单位" << "量程"
+ << "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[4]=false;
+ }
+ //添加数据
+ QStringList Data;
+ Data.append(row[0]); //ID
+ Data.append(row[13]); //两线/四线
+ Data.append(row[3]); //量
+ Data.append(row[4]); //单位
+ Data.append(row[7]); //量程
+ Data.append(row[8]); //标准值
+ Data.append(row[15]); //示值
+ Data.append(""); //绝对误差 软件界面计算
+ //最大允许误差 根据公式计算 目前 先都按 a*标准值 + b*量程
+ try {
+ //保证数据库内数据没问题
+ Data.append(QString::number((row[11].toDouble()*row[8].toDouble())
+ + (row[12].toDouble()*row[7].toDouble())));
+ } catch(const std::exception &e) {
+ Data.append("0");
+ }
+ Data.append(row[9]); //分辨力
+ RList.append(Data);
}
}
}
+ if(DCVList.count()!=0){
+ DataMapList.insert("DCV",DCVList);
+ };
+ if(DCVList.count()!=0){
+ DataMapList.insert("ACV",ACVList);
+ };
+ if(DCVList.count()!=0){
+ DataMapList.insert("DCI",DCIList);
+ };
+ if(DCVList.count()!=0){
+ DataMapList.insert("ACI",ACIList);
+ };
+ if(DCVList.count()!=0){
+ DataMapList.insert("R",RList);
+ };
+ return DataMapList;
}
//检定数据管理 首页
QList BaseCommonApi::getVerificationData()
@@ -1111,6 +1355,7 @@
result.append(query.value("frequency").toString());
result.append( query.value("range_range").toString());
result.append(query.value("standard_value").toString());
+ result.append(query.value("indicating_value").toString());
result.append(query.value("resolution").toString());
result.append(query.value("maximum_error").toString());
result.append(query.value("error_param_a").toString());
@@ -1123,7 +1368,7 @@
qDebug() << "Query execution failed: " << query.lastError().text();
}
*HeadList<<"id"<<"参数"<<"量"<<"单位"<<"频率"
- <<"量程"<<"标准值"<<"分辨力"<<"最大允许误差"<<"误差参数a"
+ <<"量程"<<"标准值" <<"示值" <<"分辨力"<<"最大允许误差"<<"误差参数a"
<<"误差参数b"<<"合格率";
return resultData;
@@ -1611,14 +1856,20 @@
//自动检定-结果保存-biz_business_device_measure_info 基本信息表
bool BaseCommonApi::InsertSaveDeviceMeasureInfo(SaveDeviceMeasureInfo saveInfo)
{
+ saveInfo.data_no=TaskManager::getsaveResultdatano();
+
QSqlQuery query;
query.prepare("INSERT INTO biz_business_device_measure_info "
" (id,data_no,order_id,sample_id,item_id,"
" trace_date,measure_valid_date,measure_address,temperature,humidity,data_source,"
" outcome,create_time,update_time) "
" VALUES "
- " (:id,:data_no,:order_id,:sample_id,:item_id,:trace_date,:measure_valid_date,:measure_address,:temperature,:humidity,:data_source,:outcome,:create_time,:update_time)");
+ " ("
+ ":id,:data_no,:order_id,:sample_id,:item_id,:trace_date,:measure_valid_date,"
+ ":measure_address,:temperature,:humidity,:data_source,:outcome,:create_time,:update_time"
+ ")");
QString currentDateTime = QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss");
+
query.bindValue(":id", saveInfo.id); //id 自动生成
query.bindValue(":data_no", saveInfo.data_no);
query.bindValue(":order_id", saveInfo.order_id);
@@ -1636,6 +1887,8 @@
bool isSuccess = query.exec();
if (!isSuccess) {
qDebug() << "InsertTaskBasic query failed: " << query.lastError().text();
+ }else{
+ TaskManager::AddResultDataNoCount();
}
return isSuccess;
diff --git a/softwareDirectory/AutoVerScheme/basecommonapi.h b/softwareDirectory/AutoVerScheme/basecommonapi.h
index bf0f724..479d8ba 100644
--- a/softwareDirectory/AutoVerScheme/basecommonapi.h
+++ b/softwareDirectory/AutoVerScheme/basecommonapi.h
@@ -828,7 +828,8 @@
QString encrypt(const QString &str, const QString &publicKey);
//判断检定装置表并查询 参数设备id
- static QList Search_CalibrationTable(QString DeiverId,QStringList *HeadList);
+ static QList Search_CalibrationTable(QString DeiverId,QStringList *HeadList);
+ //static QMap> Search_CalibrationTable(QString DeiverId,QMap *HeadList);
//判断核查装置表并查询 参数设备id
static QList Search_VerifyTable(QString DeiverId,QStringList *HeadList );
@@ -891,6 +892,10 @@
static JudgeCalibrationTable getJudgeVerifyTable(QString id);
//被检设备管理-检定项目及检定点-多功能校准源
static QList getVerMultiCal(QString itemId,QStringList *headList);
+ //static QMap> getVerMultiCal(QString itemId,QMap *headList);
+ static QMap> GetDataReturnItemList(QList ResultData,
+ QMap> DataMapList,
+ QMap *HeadMapList);
// 获取检定数据管理 首页
static QList getVerificationData();
// 检定数据管理-检定基本信息-标准设备
@@ -993,7 +998,8 @@
static bool InsertCheckModifyRecord(MeasureModifyRecord record);
//设备与装置-标准装置管理-核查数据管理核查数据历史修改记录[查询] 参数 检定数据管理基础信息表id
static QList getMeasureModifyRecord(QString data_id);
-
+ //查询最新结果保存记录
+ static SaveDeviceMeasureInfo getNewResultData();
};
diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user
new file mode 100644
index 0000000..77ab7ad
--- /dev/null
+++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user
@@ -0,0 +1,562 @@
+
+
+
+
+
+ EnvironmentId
+ {c08df58c-84a7-4965-bca6-e98789474efa}
+
+
+ ProjectExplorer.Project.ActiveTarget
+ 0
+
+
+ ProjectExplorer.Project.EditorSettings
+
+ true
+ false
+ true
+
+ Cpp
+
+ CppGlobal
+
+
+
+ QmlJS
+
+ QmlJSGlobal
+
+
+ 2
+ UTF-8
+ false
+ 4
+ false
+ 80
+ true
+ true
+ 1
+ true
+ false
+ 0
+ true
+ true
+ 0
+ 8
+ true
+ 1
+ true
+ true
+ true
+ false
+
+
+
+ ProjectExplorer.Project.PluginSettings
+
+
+ -fno-delayed-template-parsing
+
+ true
+
+
+
+ ProjectExplorer.Project.Target.0
+
+ Desktop Qt 5.14.2 MinGW 64-bit
+ Desktop Qt 5.14.2 MinGW 64-bit
+ qt.qt5.5142.win64_mingw73_kit
+ 0
+ 0
+ 0
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Debug
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ false
+ false
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Debug
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 2
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Release
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ false
+
+ false
+ false
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Release
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Profile
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ true
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Profile
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+ 3
+
+
+ 0
+ Deploy
+ Deploy
+ ProjectExplorer.BuildSteps.Deploy
+
+ 1
+ ProjectExplorer.DefaultDeployConfiguration
+
+ 1
+
+
+ dwarf
+
+ cpu-cycles
+
+
+ 250
+
+ -e
+ cpu-cycles
+ --call-graph
+ dwarf,4096
+ -F
+ 250
+
+ -F
+ true
+ 4096
+ false
+ false
+ 1000
+
+ true
+
+ false
+ false
+ false
+ false
+ true
+ 0.01
+ 10
+ true
+ kcachegrind
+ 1
+ 25
+
+ 1
+ true
+ false
+ true
+ valgrind
+
+ 0
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+ 10
+ 11
+ 12
+ 13
+ 14
+
+ 2
+
+ Qt4ProjectManager.Qt4RunConfiguration:E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+ E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+
+ false
+
+ false
+ true
+ true
+ false
+ false
+ true
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Debug
+
+ 1
+
+
+
+ ProjectExplorer.Project.Target.1
+
+ Desktop Qt 5.14.2 MinGW 32-bit
+ Desktop Qt 5.14.2 MinGW 32-bit
+ qt.qt5.5142.win32_mingw73_kit
+ 0
+ 0
+ 0
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_32_bit-Debug
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ false
+ false
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Debug
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 2
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_32_bit-Release
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ false
+
+ false
+ false
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Release
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_32_bit-Profile
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ true
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Profile
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+ 3
+
+
+ 0
+ Deploy
+ Deploy
+ ProjectExplorer.BuildSteps.Deploy
+
+ 1
+ ProjectExplorer.DefaultDeployConfiguration
+
+ 1
+
+
+ dwarf
+
+ cpu-cycles
+
+
+ 250
+
+ -e
+ cpu-cycles
+ --call-graph
+ dwarf,4096
+ -F
+ 250
+
+ -F
+ true
+ 4096
+ false
+ false
+ 1000
+
+ true
+
+ false
+ false
+ false
+ false
+ true
+ 0.01
+ 10
+ true
+ kcachegrind
+ 1
+ 25
+
+ 1
+ true
+ false
+ true
+ valgrind
+
+ 0
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+ 10
+ 11
+ 12
+ 13
+ 14
+
+ 2
+
+ Qt4ProjectManager.Qt4RunConfiguration:E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+ E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+
+ false
+
+ false
+ true
+ true
+ false
+ false
+ true
+
+
+
+ 1
+
+
+
+ ProjectExplorer.Project.TargetCount
+ 2
+
+
+ ProjectExplorer.Project.Updater.FileVersion
+ 22
+
+
+ Version
+ 22
+
+
diff --git a/softwareDirectory/AutoVerScheme/TaskManager.cpp b/softwareDirectory/AutoVerScheme/TaskManager.cpp
index ed0d569..c6c6c43 100644
--- a/softwareDirectory/AutoVerScheme/TaskManager.cpp
+++ b/softwareDirectory/AutoVerScheme/TaskManager.cpp
@@ -2,11 +2,14 @@
#include "id/TaskManager.h"
#include "basecommonapi.h"
-// 定义并初始化静态成员变量
+// 定义并初始化静态成员变量 委托单编号
QMap TaskManager::dailyTaskCounts;
QDate TaskManager::currentDate;
QString TaskManager::KeyDate;
+//检定结果保存
+QMap TaskManager::saveResultdatanoList;
+QString TaskManager::ResultKeyDate;
QString TaskManager::generateTask(QString Number)
{
// 初始化当天任务单数量为0
@@ -40,24 +43,67 @@
return taskId;
}
-int TaskManager::getTaskCountForToday()
+QString TaskManager::getsaveResultdatano()
{
- // 返回当天的任务单数量
- return dailyTaskCounts.value(KeyDate, 0);
+
+ //获取结果保存ID
+ ResultKeyDate = QDate::currentDate().toString("yyyyMMdd");
+ //判断是否包含 如包含直接返回结果
+ if(!saveResultdatanoList.contains(ResultKeyDate))
+ {
+
+ //找寻数据库上次的记录
+ QString datano=BaseCommonApi::getNewResultData().data_no;
+ if(datano!=""){
+ int startIndex = datano.lastIndexOf("j")+1; // 找到 "YYYY" 的起始位置
+ int endIndex = startIndex + 8; // "YYYYMMDD" 总共8个字符
+ //截截取
+ QString result = datano.mid(startIndex, 8);
+ if(result!=ResultKeyDate){
+ saveResultdatanoList[ResultKeyDate] = 1;
+ }else
+ {
+ //获取最后一位数 并加1
+ QChar lastChar = datano.at(datano.length() - 1);
+ if (lastChar.isDigit()) {
+
+ int Count=lastChar.digitValue();
+ saveResultdatanoList[ResultKeyDate] = Count+1;
+ }
+
+ }
+
+ }else{saveResultdatanoList[ResultKeyDate] = 1;};
+
+ }
+
+ QString dateStr = ResultKeyDate;
+ // 生成结果保存编号,这里假设编号格式是 "jdsjYYYYMMDDXXXX",XXXX是顺序号 字段4 10进制 不足时0填充
+ QString taskId = QString("jdsj%1%2").arg(dateStr).arg(saveResultdatanoList[ResultKeyDate], 4, 10, QChar('0'));
+ //返回结果
+ return taskId;
}
+
bool TaskManager::AddCurrenTaskCount()
{
// 增加当天任务单数量
try {
-
dailyTaskCounts[KeyDate]++;
return true;
} catch(const std::exception &e) {
return false;
}
-
}
-
+bool TaskManager::AddResultDataNoCount()
+{
+ // 增加当天任务单数量
+ try {
+ saveResultdatanoList[ResultKeyDate]++;
+ return true;
+ } catch(const std::exception &e) {
+ return false;
+ }
+}
diff --git a/softwareDirectory/AutoVerScheme/basecommonapi.cpp b/softwareDirectory/AutoVerScheme/basecommonapi.cpp
index 874b354..47ee4da 100644
--- a/softwareDirectory/AutoVerScheme/basecommonapi.cpp
+++ b/softwareDirectory/AutoVerScheme/basecommonapi.cpp
@@ -192,6 +192,24 @@
}
return result;
}
+//查看最新结果保存数据
+SaveDeviceMeasureInfo BaseCommonApi::getNewResultData()
+{
+ SaveDeviceMeasureInfo result;
+ QSqlQuery query;
+ query.prepare("select * from biz_business_device_measure_info as bz ORDER BY bz.create_time DESC LIMIT 1");
+ if (query.exec()) {
+ while (query.next()) {
+
+ result.id = query.value("id").toString();
+ result.data_no = query.value("data_no").toString();
+
+ }
+ } else {
+ qDebug() << "Query execution failed: " << query.lastError().text();
+ }
+ return result;
+}
//查看当前最新的任务单
QList BaseCommonApi::getCreateTaskListNew()
{
@@ -800,6 +818,25 @@
*/
//根据被检设备ID获取当前设备的 检定项目及检定点
+/*
+QMap> BaseCommonApi::Search_CalibrationTable(QString DeiverId,QMap *HeadList)
+{
+
+ QMap> DataList;
+ DataList.clear();
+ QList CliTable=BaseCommonApi::getJudgeCalibrationTable(DeiverId);
+ if(CliTable.count()==0)return DataList;
+ switch (CliTable[0].belong_standard_equipment.toInt())
+ {
+ case 1:
+ //CliTable[0].id
+ //1717086652508487681
+ DataList=BaseCommonApi::getVerMultiCal(CliTable[0].id,HeadList);
+ }
+
+ return DataList;
+}*/
+//根据被检设备ID获取当前设备的 检定项目及检定点
QList BaseCommonApi::Search_CalibrationTable(QString DeiverId,QStringList *HeadList)
{
@@ -817,7 +854,6 @@
return DataList;
}
-
//核查设备对应的装置表 核查项及核查点 传参设备id
QList BaseCommonApi::Search_VerifyTable(QString DeiverId,QStringList *HeadList )
{
@@ -861,7 +897,6 @@
}
return DataList;
}
-
//被检设备管理-检定项目及检定点-多功能校准源
QList BaseCommonApi::getVerMultiCal(QString itemId,QStringList *headList)
{
@@ -912,22 +947,88 @@
<<"两线/四线模式"<<"线圈放大"<<"示值"<<"准确度a"<<"指针式仪表满量程值"<<"指针式仪表满量程值单位"<<"被检表示值"<<"准确度等级"<<"创建时间"<<"更新时间";
return resultData;
}
-bool GetDataReturnItemList(QList ResultData,QMap *DataMapList,QList *HeadMapList)
+//被检设备管理-检定项目及检定点-多功能校准源
+/*
+QMap> BaseCommonApi::getVerMultiCal(QString itemId,QMap *headList)
+{
+QMap> DataMapList;
+QList resultData;
+QStringList result;
+resultData.clear();
+
+QSqlQuery query;
+ query.prepare("SELECT * FROM biz_business_device_measure_item_data_calibrator bbdmidc WHERE item_id = :itemId ");
+ // 将参数绑定到占位符
+ query.bindValue(":itemId", itemId);
+ if (query.exec()) {
+ while (query.next()) {
+ result.clear();
+ result.append(query.value("id").toString());
+ result.append(query.value("item_id").toString()); //检定项目ID
+ result.append(query.value("params").toString()); //检查项目
+ result.append(query.value("capacity").toString());
+ result.append(query.value("unit").toString());
+ result.append(query.value("frequency").toString());
+ result.append(query.value("frequency_unit").toString());
+ result.append(query.value("range_range").toString());
+ result.append(query.value("standard_value").toString());
+ result.append(query.value("resolution").toString());
+ result.append(query.value("maximum_error").toString());
+ result.append(query.value("error_param_a").toString());
+ result.append(query.value("error_param_b").toString());
+ result.append(query.value("line_mode").toString());
+ result.append(query.value("coil_enlarge").toString());
+ result.append(query.value("indicating_value").toString());
+ result.append(query.value("accuracy_a").toString());
+ result.append(query.value("full_scale_value").toString());
+ result.append(query.value("full_scale_value_unit").toString());
+ result.append(query.value("measure_indication_value").toString());
+ result.append(query.value("accuracy_level").toString());
+ result.append(query.value("create_time").toString());
+ result.append(query.value("update_time").toString());
+ resultData.append(result);
+ }
+ } else {
+ qDebug() << "Query execution failed: " << query.lastError().text();
+ }
+ //进行检定项目列头转换
+ DataMapList= GetDataReturnItemList(resultData,DataMapList,headList);
+ return DataMapList;
+}
+*/
+QMap> BaseCommonApi::GetDataReturnItemList(QList ResultData,QMap> DataMapList,QMap *HeadMapList)
{
+ QList isFirst;
+ isFirst.append(true);
+ isFirst.append(true);
+ isFirst.append(true);
+ isFirst.append(true);
+ isFirst.append(true);
+ QList DCVList;
+ QList ACVList;
+ QList DCIList;
+ QList ACIList;
+ QList RList;
for(const QStringList &row : ResultData)
{
if (!row.isEmpty()) { // 确保行不为空
if(row[2]=="DCV")
{
- QString VerificationItem= "DCV";
+
+ QString VerificationItem=NULL;
+ if(isFirst[0])
+ {
+ VerificationItem = "DCV";
//添加列头
QStringList head;
head << "序号" << "检定项目" << "量" << "单位" << "量程"
<< "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
- HeadMapList->append(head);
-
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[0]=false;
+ }
//添加数据
+
QStringList Data;
Data.append(row[0]); //ID
Data.append(row[2]); //检定项目
@@ -946,24 +1047,167 @@
Data.append("0");
}
Data.append(row[9]); //分辨力
-
+ DCVList.append(Data);
}
else if(ResultData[2].first()=="ACV")
{
+ QString VerificationItem=NULL;
+ if(isFirst[1])
+ {
+ VerificationItem = "ACV";
+ //添加列头
+ QStringList head;
+ head << "序号" << "检定项目" << "量" << "单位" <<"频率" << "量程"
+ << "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[1]=false;
+ }
+ //添加数据
+ QStringList Data;
+ Data.append(row[0]); //ID
+ Data.append(row[2]); //检定项目
+ Data.append(row[3]); //量
+ Data.append(row[4]); //单位
+ Data.append(row[7]); //量程
+ Data.append(row[8]); //标准值
+ Data.append(row[15]); //示值
+ Data.append(""); //绝对误差 软件界面计算
+ //最大允许误差 根据公式计算 目前 先都按 a*标准值 + b*量程
+ try {
+ //保证数据库内数据没问题
+ Data.append(QString::number((row[11].toDouble()*row[8].toDouble())
+ + (row[12].toDouble()*row[7].toDouble())));
+ } catch(const std::exception &e) {
+ Data.append("0");
+ }
+ Data.append(row[9]); //分辨力
+ ACVList.append(Data);
} else if(ResultData[2].first()=="DCI")
{
+ QString VerificationItem=NULL;
+ if(isFirst[2])
+ {
+ VerificationItem = "DCI";
+ //添加列头
+ QStringList head;
+ head << "序号" << "检定项目" << "量" << "单位" <<"频率" << "量程"
+ << "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[2]=false;
+ }
+ //添加数据
+
+ QStringList Data;
+ Data.append(row[0]); //ID
+ Data.append(row[2]); //检定项目
+ Data.append(row[3]); //量
+ Data.append(row[4]); //单位
+ Data.append(row[5]); //频率
+ Data.append(row[7]); //量程
+ Data.append(row[8]); //标准值
+ Data.append(row[15]); //示值
+ Data.append(""); //绝对误差 软件界面计算
+ //最大允许误差 根据公式计算 目前 先都按 a*标准值 + b*量程
+ try {
+ //保证数据库内数据没问题
+ Data.append(QString::number((row[11].toDouble()*row[8].toDouble())
+ + (row[12].toDouble()*row[7].toDouble())));
+ } catch(const std::exception &e) {
+ Data.append("0");
+ }
+ Data.append(row[9]); //分辨力
+ DCIList.append(Data);
} else if(ResultData[2].first()=="ACI")
{
+ QString VerificationItem=NULL;
+ if(isFirst[3])
+ {
+ VerificationItem = "ACI";
+ //添加列头
+ QStringList head;
+ head << "序号" << "检定项目" << "量" << "单位" <<"频率" << "量程"
+ << "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[3]=false;
+ }
+ //添加数据
- } else if(ResultData[2].first()=="ACV")
+ QStringList Data;
+ Data.append(row[0]); //ID
+ Data.append(row[2]); //检定项目
+ Data.append(row[3]); //量
+ Data.append(row[4]); //单位
+ Data.append(row[5]); //频率
+ Data.append(row[7]); //量程
+ Data.append(row[8]); //标准值
+ Data.append(row[15]); //示值
+ Data.append(""); //绝对误差 软件界面计算
+ //最大允许误差 根据公式计算 目前 先都按 a*标准值 + b*量程
+ try {
+ //保证数据库内数据没问题
+ Data.append(QString::number((row[11].toDouble()*row[8].toDouble())
+ + (row[12].toDouble()*row[7].toDouble())));
+ } catch(const std::exception &e) {
+ Data.append("0");
+ }
+ Data.append(row[9]); //分辨力
+ ACIList.append(Data);
+ } else if(ResultData[2].first()=="R")
{
+ QString VerificationItem=NULL;
+ if(isFirst[4])
+ {
+ VerificationItem = "R";
+ //添加列头
+ QStringList head;
+ head << "序号" <<"两线/四线" << "量" << "单位" << "量程"
+ << "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[4]=false;
+ }
+ //添加数据
+ QStringList Data;
+ Data.append(row[0]); //ID
+ Data.append(row[13]); //两线/四线
+ Data.append(row[3]); //量
+ Data.append(row[4]); //单位
+ Data.append(row[7]); //量程
+ Data.append(row[8]); //标准值
+ Data.append(row[15]); //示值
+ Data.append(""); //绝对误差 软件界面计算
+ //最大允许误差 根据公式计算 目前 先都按 a*标准值 + b*量程
+ try {
+ //保证数据库内数据没问题
+ Data.append(QString::number((row[11].toDouble()*row[8].toDouble())
+ + (row[12].toDouble()*row[7].toDouble())));
+ } catch(const std::exception &e) {
+ Data.append("0");
+ }
+ Data.append(row[9]); //分辨力
+ RList.append(Data);
}
}
}
+ if(DCVList.count()!=0){
+ DataMapList.insert("DCV",DCVList);
+ };
+ if(DCVList.count()!=0){
+ DataMapList.insert("ACV",ACVList);
+ };
+ if(DCVList.count()!=0){
+ DataMapList.insert("DCI",DCIList);
+ };
+ if(DCVList.count()!=0){
+ DataMapList.insert("ACI",ACIList);
+ };
+ if(DCVList.count()!=0){
+ DataMapList.insert("R",RList);
+ };
+ return DataMapList;
}
//检定数据管理 首页
QList BaseCommonApi::getVerificationData()
@@ -1111,6 +1355,7 @@
result.append(query.value("frequency").toString());
result.append( query.value("range_range").toString());
result.append(query.value("standard_value").toString());
+ result.append(query.value("indicating_value").toString());
result.append(query.value("resolution").toString());
result.append(query.value("maximum_error").toString());
result.append(query.value("error_param_a").toString());
@@ -1123,7 +1368,7 @@
qDebug() << "Query execution failed: " << query.lastError().text();
}
*HeadList<<"id"<<"参数"<<"量"<<"单位"<<"频率"
- <<"量程"<<"标准值"<<"分辨力"<<"最大允许误差"<<"误差参数a"
+ <<"量程"<<"标准值" <<"示值" <<"分辨力"<<"最大允许误差"<<"误差参数a"
<<"误差参数b"<<"合格率";
return resultData;
@@ -1611,14 +1856,20 @@
//自动检定-结果保存-biz_business_device_measure_info 基本信息表
bool BaseCommonApi::InsertSaveDeviceMeasureInfo(SaveDeviceMeasureInfo saveInfo)
{
+ saveInfo.data_no=TaskManager::getsaveResultdatano();
+
QSqlQuery query;
query.prepare("INSERT INTO biz_business_device_measure_info "
" (id,data_no,order_id,sample_id,item_id,"
" trace_date,measure_valid_date,measure_address,temperature,humidity,data_source,"
" outcome,create_time,update_time) "
" VALUES "
- " (:id,:data_no,:order_id,:sample_id,:item_id,:trace_date,:measure_valid_date,:measure_address,:temperature,:humidity,:data_source,:outcome,:create_time,:update_time)");
+ " ("
+ ":id,:data_no,:order_id,:sample_id,:item_id,:trace_date,:measure_valid_date,"
+ ":measure_address,:temperature,:humidity,:data_source,:outcome,:create_time,:update_time"
+ ")");
QString currentDateTime = QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss");
+
query.bindValue(":id", saveInfo.id); //id 自动生成
query.bindValue(":data_no", saveInfo.data_no);
query.bindValue(":order_id", saveInfo.order_id);
@@ -1636,6 +1887,8 @@
bool isSuccess = query.exec();
if (!isSuccess) {
qDebug() << "InsertTaskBasic query failed: " << query.lastError().text();
+ }else{
+ TaskManager::AddResultDataNoCount();
}
return isSuccess;
diff --git a/softwareDirectory/AutoVerScheme/basecommonapi.h b/softwareDirectory/AutoVerScheme/basecommonapi.h
index bf0f724..479d8ba 100644
--- a/softwareDirectory/AutoVerScheme/basecommonapi.h
+++ b/softwareDirectory/AutoVerScheme/basecommonapi.h
@@ -828,7 +828,8 @@
QString encrypt(const QString &str, const QString &publicKey);
//判断检定装置表并查询 参数设备id
- static QList Search_CalibrationTable(QString DeiverId,QStringList *HeadList);
+ static QList Search_CalibrationTable(QString DeiverId,QStringList *HeadList);
+ //static QMap> Search_CalibrationTable(QString DeiverId,QMap *HeadList);
//判断核查装置表并查询 参数设备id
static QList Search_VerifyTable(QString DeiverId,QStringList *HeadList );
@@ -891,6 +892,10 @@
static JudgeCalibrationTable getJudgeVerifyTable(QString id);
//被检设备管理-检定项目及检定点-多功能校准源
static QList getVerMultiCal(QString itemId,QStringList *headList);
+ //static QMap> getVerMultiCal(QString itemId,QMap *headList);
+ static QMap> GetDataReturnItemList(QList ResultData,
+ QMap> DataMapList,
+ QMap *HeadMapList);
// 获取检定数据管理 首页
static QList getVerificationData();
// 检定数据管理-检定基本信息-标准设备
@@ -993,7 +998,8 @@
static bool InsertCheckModifyRecord(MeasureModifyRecord record);
//设备与装置-标准装置管理-核查数据管理核查数据历史修改记录[查询] 参数 检定数据管理基础信息表id
static QList getMeasureModifyRecord(QString data_id);
-
+ //查询最新结果保存记录
+ static SaveDeviceMeasureInfo getNewResultData();
};
diff --git a/softwareDirectory/AutoVerScheme/beexamined_deviceitem.cpp b/softwareDirectory/AutoVerScheme/beexamined_deviceitem.cpp
index 4cfa1b6..fef3880 100644
--- a/softwareDirectory/AutoVerScheme/beexamined_deviceitem.cpp
+++ b/softwareDirectory/AutoVerScheme/beexamined_deviceitem.cpp
@@ -199,7 +199,7 @@
QStringList headlist;
QList Data=dbManager.Search_CalibrationTable(id,&headlist);
-
+ //QList Data;
//tableWidgetItem
ui->tableWidgetItem->setRowCount(0);
ui->tableWidgetItem->setColumnCount(headlist.count());
diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user
new file mode 100644
index 0000000..77ab7ad
--- /dev/null
+++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user
@@ -0,0 +1,562 @@
+
+
+
+
+
+ EnvironmentId
+ {c08df58c-84a7-4965-bca6-e98789474efa}
+
+
+ ProjectExplorer.Project.ActiveTarget
+ 0
+
+
+ ProjectExplorer.Project.EditorSettings
+
+ true
+ false
+ true
+
+ Cpp
+
+ CppGlobal
+
+
+
+ QmlJS
+
+ QmlJSGlobal
+
+
+ 2
+ UTF-8
+ false
+ 4
+ false
+ 80
+ true
+ true
+ 1
+ true
+ false
+ 0
+ true
+ true
+ 0
+ 8
+ true
+ 1
+ true
+ true
+ true
+ false
+
+
+
+ ProjectExplorer.Project.PluginSettings
+
+
+ -fno-delayed-template-parsing
+
+ true
+
+
+
+ ProjectExplorer.Project.Target.0
+
+ Desktop Qt 5.14.2 MinGW 64-bit
+ Desktop Qt 5.14.2 MinGW 64-bit
+ qt.qt5.5142.win64_mingw73_kit
+ 0
+ 0
+ 0
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Debug
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ false
+ false
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Debug
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 2
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Release
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ false
+
+ false
+ false
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Release
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Profile
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ true
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Profile
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+ 3
+
+
+ 0
+ Deploy
+ Deploy
+ ProjectExplorer.BuildSteps.Deploy
+
+ 1
+ ProjectExplorer.DefaultDeployConfiguration
+
+ 1
+
+
+ dwarf
+
+ cpu-cycles
+
+
+ 250
+
+ -e
+ cpu-cycles
+ --call-graph
+ dwarf,4096
+ -F
+ 250
+
+ -F
+ true
+ 4096
+ false
+ false
+ 1000
+
+ true
+
+ false
+ false
+ false
+ false
+ true
+ 0.01
+ 10
+ true
+ kcachegrind
+ 1
+ 25
+
+ 1
+ true
+ false
+ true
+ valgrind
+
+ 0
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+ 10
+ 11
+ 12
+ 13
+ 14
+
+ 2
+
+ Qt4ProjectManager.Qt4RunConfiguration:E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+ E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+
+ false
+
+ false
+ true
+ true
+ false
+ false
+ true
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Debug
+
+ 1
+
+
+
+ ProjectExplorer.Project.Target.1
+
+ Desktop Qt 5.14.2 MinGW 32-bit
+ Desktop Qt 5.14.2 MinGW 32-bit
+ qt.qt5.5142.win32_mingw73_kit
+ 0
+ 0
+ 0
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_32_bit-Debug
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ false
+ false
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Debug
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 2
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_32_bit-Release
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ false
+
+ false
+ false
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Release
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_32_bit-Profile
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ true
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Profile
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+ 3
+
+
+ 0
+ Deploy
+ Deploy
+ ProjectExplorer.BuildSteps.Deploy
+
+ 1
+ ProjectExplorer.DefaultDeployConfiguration
+
+ 1
+
+
+ dwarf
+
+ cpu-cycles
+
+
+ 250
+
+ -e
+ cpu-cycles
+ --call-graph
+ dwarf,4096
+ -F
+ 250
+
+ -F
+ true
+ 4096
+ false
+ false
+ 1000
+
+ true
+
+ false
+ false
+ false
+ false
+ true
+ 0.01
+ 10
+ true
+ kcachegrind
+ 1
+ 25
+
+ 1
+ true
+ false
+ true
+ valgrind
+
+ 0
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+ 10
+ 11
+ 12
+ 13
+ 14
+
+ 2
+
+ Qt4ProjectManager.Qt4RunConfiguration:E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+ E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+
+ false
+
+ false
+ true
+ true
+ false
+ false
+ true
+
+
+
+ 1
+
+
+
+ ProjectExplorer.Project.TargetCount
+ 2
+
+
+ ProjectExplorer.Project.Updater.FileVersion
+ 22
+
+
+ Version
+ 22
+
+
diff --git a/softwareDirectory/AutoVerScheme/TaskManager.cpp b/softwareDirectory/AutoVerScheme/TaskManager.cpp
index ed0d569..c6c6c43 100644
--- a/softwareDirectory/AutoVerScheme/TaskManager.cpp
+++ b/softwareDirectory/AutoVerScheme/TaskManager.cpp
@@ -2,11 +2,14 @@
#include "id/TaskManager.h"
#include "basecommonapi.h"
-// 定义并初始化静态成员变量
+// 定义并初始化静态成员变量 委托单编号
QMap TaskManager::dailyTaskCounts;
QDate TaskManager::currentDate;
QString TaskManager::KeyDate;
+//检定结果保存
+QMap TaskManager::saveResultdatanoList;
+QString TaskManager::ResultKeyDate;
QString TaskManager::generateTask(QString Number)
{
// 初始化当天任务单数量为0
@@ -40,24 +43,67 @@
return taskId;
}
-int TaskManager::getTaskCountForToday()
+QString TaskManager::getsaveResultdatano()
{
- // 返回当天的任务单数量
- return dailyTaskCounts.value(KeyDate, 0);
+
+ //获取结果保存ID
+ ResultKeyDate = QDate::currentDate().toString("yyyyMMdd");
+ //判断是否包含 如包含直接返回结果
+ if(!saveResultdatanoList.contains(ResultKeyDate))
+ {
+
+ //找寻数据库上次的记录
+ QString datano=BaseCommonApi::getNewResultData().data_no;
+ if(datano!=""){
+ int startIndex = datano.lastIndexOf("j")+1; // 找到 "YYYY" 的起始位置
+ int endIndex = startIndex + 8; // "YYYYMMDD" 总共8个字符
+ //截截取
+ QString result = datano.mid(startIndex, 8);
+ if(result!=ResultKeyDate){
+ saveResultdatanoList[ResultKeyDate] = 1;
+ }else
+ {
+ //获取最后一位数 并加1
+ QChar lastChar = datano.at(datano.length() - 1);
+ if (lastChar.isDigit()) {
+
+ int Count=lastChar.digitValue();
+ saveResultdatanoList[ResultKeyDate] = Count+1;
+ }
+
+ }
+
+ }else{saveResultdatanoList[ResultKeyDate] = 1;};
+
+ }
+
+ QString dateStr = ResultKeyDate;
+ // 生成结果保存编号,这里假设编号格式是 "jdsjYYYYMMDDXXXX",XXXX是顺序号 字段4 10进制 不足时0填充
+ QString taskId = QString("jdsj%1%2").arg(dateStr).arg(saveResultdatanoList[ResultKeyDate], 4, 10, QChar('0'));
+ //返回结果
+ return taskId;
}
+
bool TaskManager::AddCurrenTaskCount()
{
// 增加当天任务单数量
try {
-
dailyTaskCounts[KeyDate]++;
return true;
} catch(const std::exception &e) {
return false;
}
-
}
-
+bool TaskManager::AddResultDataNoCount()
+{
+ // 增加当天任务单数量
+ try {
+ saveResultdatanoList[ResultKeyDate]++;
+ return true;
+ } catch(const std::exception &e) {
+ return false;
+ }
+}
diff --git a/softwareDirectory/AutoVerScheme/basecommonapi.cpp b/softwareDirectory/AutoVerScheme/basecommonapi.cpp
index 874b354..47ee4da 100644
--- a/softwareDirectory/AutoVerScheme/basecommonapi.cpp
+++ b/softwareDirectory/AutoVerScheme/basecommonapi.cpp
@@ -192,6 +192,24 @@
}
return result;
}
+//查看最新结果保存数据
+SaveDeviceMeasureInfo BaseCommonApi::getNewResultData()
+{
+ SaveDeviceMeasureInfo result;
+ QSqlQuery query;
+ query.prepare("select * from biz_business_device_measure_info as bz ORDER BY bz.create_time DESC LIMIT 1");
+ if (query.exec()) {
+ while (query.next()) {
+
+ result.id = query.value("id").toString();
+ result.data_no = query.value("data_no").toString();
+
+ }
+ } else {
+ qDebug() << "Query execution failed: " << query.lastError().text();
+ }
+ return result;
+}
//查看当前最新的任务单
QList BaseCommonApi::getCreateTaskListNew()
{
@@ -800,6 +818,25 @@
*/
//根据被检设备ID获取当前设备的 检定项目及检定点
+/*
+QMap> BaseCommonApi::Search_CalibrationTable(QString DeiverId,QMap *HeadList)
+{
+
+ QMap> DataList;
+ DataList.clear();
+ QList CliTable=BaseCommonApi::getJudgeCalibrationTable(DeiverId);
+ if(CliTable.count()==0)return DataList;
+ switch (CliTable[0].belong_standard_equipment.toInt())
+ {
+ case 1:
+ //CliTable[0].id
+ //1717086652508487681
+ DataList=BaseCommonApi::getVerMultiCal(CliTable[0].id,HeadList);
+ }
+
+ return DataList;
+}*/
+//根据被检设备ID获取当前设备的 检定项目及检定点
QList BaseCommonApi::Search_CalibrationTable(QString DeiverId,QStringList *HeadList)
{
@@ -817,7 +854,6 @@
return DataList;
}
-
//核查设备对应的装置表 核查项及核查点 传参设备id
QList BaseCommonApi::Search_VerifyTable(QString DeiverId,QStringList *HeadList )
{
@@ -861,7 +897,6 @@
}
return DataList;
}
-
//被检设备管理-检定项目及检定点-多功能校准源
QList BaseCommonApi::getVerMultiCal(QString itemId,QStringList *headList)
{
@@ -912,22 +947,88 @@
<<"两线/四线模式"<<"线圈放大"<<"示值"<<"准确度a"<<"指针式仪表满量程值"<<"指针式仪表满量程值单位"<<"被检表示值"<<"准确度等级"<<"创建时间"<<"更新时间";
return resultData;
}
-bool GetDataReturnItemList(QList ResultData,QMap *DataMapList,QList *HeadMapList)
+//被检设备管理-检定项目及检定点-多功能校准源
+/*
+QMap> BaseCommonApi::getVerMultiCal(QString itemId,QMap *headList)
+{
+QMap> DataMapList;
+QList resultData;
+QStringList result;
+resultData.clear();
+
+QSqlQuery query;
+ query.prepare("SELECT * FROM biz_business_device_measure_item_data_calibrator bbdmidc WHERE item_id = :itemId ");
+ // 将参数绑定到占位符
+ query.bindValue(":itemId", itemId);
+ if (query.exec()) {
+ while (query.next()) {
+ result.clear();
+ result.append(query.value("id").toString());
+ result.append(query.value("item_id").toString()); //检定项目ID
+ result.append(query.value("params").toString()); //检查项目
+ result.append(query.value("capacity").toString());
+ result.append(query.value("unit").toString());
+ result.append(query.value("frequency").toString());
+ result.append(query.value("frequency_unit").toString());
+ result.append(query.value("range_range").toString());
+ result.append(query.value("standard_value").toString());
+ result.append(query.value("resolution").toString());
+ result.append(query.value("maximum_error").toString());
+ result.append(query.value("error_param_a").toString());
+ result.append(query.value("error_param_b").toString());
+ result.append(query.value("line_mode").toString());
+ result.append(query.value("coil_enlarge").toString());
+ result.append(query.value("indicating_value").toString());
+ result.append(query.value("accuracy_a").toString());
+ result.append(query.value("full_scale_value").toString());
+ result.append(query.value("full_scale_value_unit").toString());
+ result.append(query.value("measure_indication_value").toString());
+ result.append(query.value("accuracy_level").toString());
+ result.append(query.value("create_time").toString());
+ result.append(query.value("update_time").toString());
+ resultData.append(result);
+ }
+ } else {
+ qDebug() << "Query execution failed: " << query.lastError().text();
+ }
+ //进行检定项目列头转换
+ DataMapList= GetDataReturnItemList(resultData,DataMapList,headList);
+ return DataMapList;
+}
+*/
+QMap> BaseCommonApi::GetDataReturnItemList(QList ResultData,QMap> DataMapList,QMap *HeadMapList)
{
+ QList isFirst;
+ isFirst.append(true);
+ isFirst.append(true);
+ isFirst.append(true);
+ isFirst.append(true);
+ isFirst.append(true);
+ QList DCVList;
+ QList ACVList;
+ QList DCIList;
+ QList ACIList;
+ QList RList;
for(const QStringList &row : ResultData)
{
if (!row.isEmpty()) { // 确保行不为空
if(row[2]=="DCV")
{
- QString VerificationItem= "DCV";
+
+ QString VerificationItem=NULL;
+ if(isFirst[0])
+ {
+ VerificationItem = "DCV";
//添加列头
QStringList head;
head << "序号" << "检定项目" << "量" << "单位" << "量程"
<< "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
- HeadMapList->append(head);
-
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[0]=false;
+ }
//添加数据
+
QStringList Data;
Data.append(row[0]); //ID
Data.append(row[2]); //检定项目
@@ -946,24 +1047,167 @@
Data.append("0");
}
Data.append(row[9]); //分辨力
-
+ DCVList.append(Data);
}
else if(ResultData[2].first()=="ACV")
{
+ QString VerificationItem=NULL;
+ if(isFirst[1])
+ {
+ VerificationItem = "ACV";
+ //添加列头
+ QStringList head;
+ head << "序号" << "检定项目" << "量" << "单位" <<"频率" << "量程"
+ << "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[1]=false;
+ }
+ //添加数据
+ QStringList Data;
+ Data.append(row[0]); //ID
+ Data.append(row[2]); //检定项目
+ Data.append(row[3]); //量
+ Data.append(row[4]); //单位
+ Data.append(row[7]); //量程
+ Data.append(row[8]); //标准值
+ Data.append(row[15]); //示值
+ Data.append(""); //绝对误差 软件界面计算
+ //最大允许误差 根据公式计算 目前 先都按 a*标准值 + b*量程
+ try {
+ //保证数据库内数据没问题
+ Data.append(QString::number((row[11].toDouble()*row[8].toDouble())
+ + (row[12].toDouble()*row[7].toDouble())));
+ } catch(const std::exception &e) {
+ Data.append("0");
+ }
+ Data.append(row[9]); //分辨力
+ ACVList.append(Data);
} else if(ResultData[2].first()=="DCI")
{
+ QString VerificationItem=NULL;
+ if(isFirst[2])
+ {
+ VerificationItem = "DCI";
+ //添加列头
+ QStringList head;
+ head << "序号" << "检定项目" << "量" << "单位" <<"频率" << "量程"
+ << "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[2]=false;
+ }
+ //添加数据
+
+ QStringList Data;
+ Data.append(row[0]); //ID
+ Data.append(row[2]); //检定项目
+ Data.append(row[3]); //量
+ Data.append(row[4]); //单位
+ Data.append(row[5]); //频率
+ Data.append(row[7]); //量程
+ Data.append(row[8]); //标准值
+ Data.append(row[15]); //示值
+ Data.append(""); //绝对误差 软件界面计算
+ //最大允许误差 根据公式计算 目前 先都按 a*标准值 + b*量程
+ try {
+ //保证数据库内数据没问题
+ Data.append(QString::number((row[11].toDouble()*row[8].toDouble())
+ + (row[12].toDouble()*row[7].toDouble())));
+ } catch(const std::exception &e) {
+ Data.append("0");
+ }
+ Data.append(row[9]); //分辨力
+ DCIList.append(Data);
} else if(ResultData[2].first()=="ACI")
{
+ QString VerificationItem=NULL;
+ if(isFirst[3])
+ {
+ VerificationItem = "ACI";
+ //添加列头
+ QStringList head;
+ head << "序号" << "检定项目" << "量" << "单位" <<"频率" << "量程"
+ << "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[3]=false;
+ }
+ //添加数据
- } else if(ResultData[2].first()=="ACV")
+ QStringList Data;
+ Data.append(row[0]); //ID
+ Data.append(row[2]); //检定项目
+ Data.append(row[3]); //量
+ Data.append(row[4]); //单位
+ Data.append(row[5]); //频率
+ Data.append(row[7]); //量程
+ Data.append(row[8]); //标准值
+ Data.append(row[15]); //示值
+ Data.append(""); //绝对误差 软件界面计算
+ //最大允许误差 根据公式计算 目前 先都按 a*标准值 + b*量程
+ try {
+ //保证数据库内数据没问题
+ Data.append(QString::number((row[11].toDouble()*row[8].toDouble())
+ + (row[12].toDouble()*row[7].toDouble())));
+ } catch(const std::exception &e) {
+ Data.append("0");
+ }
+ Data.append(row[9]); //分辨力
+ ACIList.append(Data);
+ } else if(ResultData[2].first()=="R")
{
+ QString VerificationItem=NULL;
+ if(isFirst[4])
+ {
+ VerificationItem = "R";
+ //添加列头
+ QStringList head;
+ head << "序号" <<"两线/四线" << "量" << "单位" << "量程"
+ << "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[4]=false;
+ }
+ //添加数据
+ QStringList Data;
+ Data.append(row[0]); //ID
+ Data.append(row[13]); //两线/四线
+ Data.append(row[3]); //量
+ Data.append(row[4]); //单位
+ Data.append(row[7]); //量程
+ Data.append(row[8]); //标准值
+ Data.append(row[15]); //示值
+ Data.append(""); //绝对误差 软件界面计算
+ //最大允许误差 根据公式计算 目前 先都按 a*标准值 + b*量程
+ try {
+ //保证数据库内数据没问题
+ Data.append(QString::number((row[11].toDouble()*row[8].toDouble())
+ + (row[12].toDouble()*row[7].toDouble())));
+ } catch(const std::exception &e) {
+ Data.append("0");
+ }
+ Data.append(row[9]); //分辨力
+ RList.append(Data);
}
}
}
+ if(DCVList.count()!=0){
+ DataMapList.insert("DCV",DCVList);
+ };
+ if(DCVList.count()!=0){
+ DataMapList.insert("ACV",ACVList);
+ };
+ if(DCVList.count()!=0){
+ DataMapList.insert("DCI",DCIList);
+ };
+ if(DCVList.count()!=0){
+ DataMapList.insert("ACI",ACIList);
+ };
+ if(DCVList.count()!=0){
+ DataMapList.insert("R",RList);
+ };
+ return DataMapList;
}
//检定数据管理 首页
QList BaseCommonApi::getVerificationData()
@@ -1111,6 +1355,7 @@
result.append(query.value("frequency").toString());
result.append( query.value("range_range").toString());
result.append(query.value("standard_value").toString());
+ result.append(query.value("indicating_value").toString());
result.append(query.value("resolution").toString());
result.append(query.value("maximum_error").toString());
result.append(query.value("error_param_a").toString());
@@ -1123,7 +1368,7 @@
qDebug() << "Query execution failed: " << query.lastError().text();
}
*HeadList<<"id"<<"参数"<<"量"<<"单位"<<"频率"
- <<"量程"<<"标准值"<<"分辨力"<<"最大允许误差"<<"误差参数a"
+ <<"量程"<<"标准值" <<"示值" <<"分辨力"<<"最大允许误差"<<"误差参数a"
<<"误差参数b"<<"合格率";
return resultData;
@@ -1611,14 +1856,20 @@
//自动检定-结果保存-biz_business_device_measure_info 基本信息表
bool BaseCommonApi::InsertSaveDeviceMeasureInfo(SaveDeviceMeasureInfo saveInfo)
{
+ saveInfo.data_no=TaskManager::getsaveResultdatano();
+
QSqlQuery query;
query.prepare("INSERT INTO biz_business_device_measure_info "
" (id,data_no,order_id,sample_id,item_id,"
" trace_date,measure_valid_date,measure_address,temperature,humidity,data_source,"
" outcome,create_time,update_time) "
" VALUES "
- " (:id,:data_no,:order_id,:sample_id,:item_id,:trace_date,:measure_valid_date,:measure_address,:temperature,:humidity,:data_source,:outcome,:create_time,:update_time)");
+ " ("
+ ":id,:data_no,:order_id,:sample_id,:item_id,:trace_date,:measure_valid_date,"
+ ":measure_address,:temperature,:humidity,:data_source,:outcome,:create_time,:update_time"
+ ")");
QString currentDateTime = QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss");
+
query.bindValue(":id", saveInfo.id); //id 自动生成
query.bindValue(":data_no", saveInfo.data_no);
query.bindValue(":order_id", saveInfo.order_id);
@@ -1636,6 +1887,8 @@
bool isSuccess = query.exec();
if (!isSuccess) {
qDebug() << "InsertTaskBasic query failed: " << query.lastError().text();
+ }else{
+ TaskManager::AddResultDataNoCount();
}
return isSuccess;
diff --git a/softwareDirectory/AutoVerScheme/basecommonapi.h b/softwareDirectory/AutoVerScheme/basecommonapi.h
index bf0f724..479d8ba 100644
--- a/softwareDirectory/AutoVerScheme/basecommonapi.h
+++ b/softwareDirectory/AutoVerScheme/basecommonapi.h
@@ -828,7 +828,8 @@
QString encrypt(const QString &str, const QString &publicKey);
//判断检定装置表并查询 参数设备id
- static QList Search_CalibrationTable(QString DeiverId,QStringList *HeadList);
+ static QList Search_CalibrationTable(QString DeiverId,QStringList *HeadList);
+ //static QMap> Search_CalibrationTable(QString DeiverId,QMap *HeadList);
//判断核查装置表并查询 参数设备id
static QList Search_VerifyTable(QString DeiverId,QStringList *HeadList );
@@ -891,6 +892,10 @@
static JudgeCalibrationTable getJudgeVerifyTable(QString id);
//被检设备管理-检定项目及检定点-多功能校准源
static QList getVerMultiCal(QString itemId,QStringList *headList);
+ //static QMap> getVerMultiCal(QString itemId,QMap *headList);
+ static QMap> GetDataReturnItemList(QList ResultData,
+ QMap> DataMapList,
+ QMap *HeadMapList);
// 获取检定数据管理 首页
static QList getVerificationData();
// 检定数据管理-检定基本信息-标准设备
@@ -993,7 +998,8 @@
static bool InsertCheckModifyRecord(MeasureModifyRecord record);
//设备与装置-标准装置管理-核查数据管理核查数据历史修改记录[查询] 参数 检定数据管理基础信息表id
static QList getMeasureModifyRecord(QString data_id);
-
+ //查询最新结果保存记录
+ static SaveDeviceMeasureInfo getNewResultData();
};
diff --git a/softwareDirectory/AutoVerScheme/beexamined_deviceitem.cpp b/softwareDirectory/AutoVerScheme/beexamined_deviceitem.cpp
index 4cfa1b6..fef3880 100644
--- a/softwareDirectory/AutoVerScheme/beexamined_deviceitem.cpp
+++ b/softwareDirectory/AutoVerScheme/beexamined_deviceitem.cpp
@@ -199,7 +199,7 @@
QStringList headlist;
QList Data=dbManager.Search_CalibrationTable(id,&headlist);
-
+ //QList Data;
//tableWidgetItem
ui->tableWidgetItem->setRowCount(0);
ui->tableWidgetItem->setColumnCount(headlist.count());
diff --git a/softwareDirectory/AutoVerScheme/checkwindow.cpp b/softwareDirectory/AutoVerScheme/checkwindow.cpp
index a89e7db..bf56963 100644
--- a/softwareDirectory/AutoVerScheme/checkwindow.cpp
+++ b/softwareDirectory/AutoVerScheme/checkwindow.cpp
@@ -534,6 +534,7 @@
}
}
item.measure_indication_value = sRet;
+ ui->tableWidgetCheck->setItem(i,15,new QTableWidgetItem(sRet)); //示值
ui->tableWidgetCheck->setItem(i,19,new QTableWidgetItem(sRet));
}
}
diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user
new file mode 100644
index 0000000..77ab7ad
--- /dev/null
+++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user
@@ -0,0 +1,562 @@
+
+
+
+
+
+ EnvironmentId
+ {c08df58c-84a7-4965-bca6-e98789474efa}
+
+
+ ProjectExplorer.Project.ActiveTarget
+ 0
+
+
+ ProjectExplorer.Project.EditorSettings
+
+ true
+ false
+ true
+
+ Cpp
+
+ CppGlobal
+
+
+
+ QmlJS
+
+ QmlJSGlobal
+
+
+ 2
+ UTF-8
+ false
+ 4
+ false
+ 80
+ true
+ true
+ 1
+ true
+ false
+ 0
+ true
+ true
+ 0
+ 8
+ true
+ 1
+ true
+ true
+ true
+ false
+
+
+
+ ProjectExplorer.Project.PluginSettings
+
+
+ -fno-delayed-template-parsing
+
+ true
+
+
+
+ ProjectExplorer.Project.Target.0
+
+ Desktop Qt 5.14.2 MinGW 64-bit
+ Desktop Qt 5.14.2 MinGW 64-bit
+ qt.qt5.5142.win64_mingw73_kit
+ 0
+ 0
+ 0
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Debug
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ false
+ false
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Debug
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 2
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Release
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ false
+
+ false
+ false
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Release
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Profile
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ true
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Profile
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+ 3
+
+
+ 0
+ Deploy
+ Deploy
+ ProjectExplorer.BuildSteps.Deploy
+
+ 1
+ ProjectExplorer.DefaultDeployConfiguration
+
+ 1
+
+
+ dwarf
+
+ cpu-cycles
+
+
+ 250
+
+ -e
+ cpu-cycles
+ --call-graph
+ dwarf,4096
+ -F
+ 250
+
+ -F
+ true
+ 4096
+ false
+ false
+ 1000
+
+ true
+
+ false
+ false
+ false
+ false
+ true
+ 0.01
+ 10
+ true
+ kcachegrind
+ 1
+ 25
+
+ 1
+ true
+ false
+ true
+ valgrind
+
+ 0
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+ 10
+ 11
+ 12
+ 13
+ 14
+
+ 2
+
+ Qt4ProjectManager.Qt4RunConfiguration:E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+ E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+
+ false
+
+ false
+ true
+ true
+ false
+ false
+ true
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Debug
+
+ 1
+
+
+
+ ProjectExplorer.Project.Target.1
+
+ Desktop Qt 5.14.2 MinGW 32-bit
+ Desktop Qt 5.14.2 MinGW 32-bit
+ qt.qt5.5142.win32_mingw73_kit
+ 0
+ 0
+ 0
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_32_bit-Debug
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ false
+ false
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Debug
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 2
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_32_bit-Release
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ false
+
+ false
+ false
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Release
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_32_bit-Profile
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ true
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Profile
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+ 3
+
+
+ 0
+ Deploy
+ Deploy
+ ProjectExplorer.BuildSteps.Deploy
+
+ 1
+ ProjectExplorer.DefaultDeployConfiguration
+
+ 1
+
+
+ dwarf
+
+ cpu-cycles
+
+
+ 250
+
+ -e
+ cpu-cycles
+ --call-graph
+ dwarf,4096
+ -F
+ 250
+
+ -F
+ true
+ 4096
+ false
+ false
+ 1000
+
+ true
+
+ false
+ false
+ false
+ false
+ true
+ 0.01
+ 10
+ true
+ kcachegrind
+ 1
+ 25
+
+ 1
+ true
+ false
+ true
+ valgrind
+
+ 0
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+ 10
+ 11
+ 12
+ 13
+ 14
+
+ 2
+
+ Qt4ProjectManager.Qt4RunConfiguration:E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+ E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+
+ false
+
+ false
+ true
+ true
+ false
+ false
+ true
+
+
+
+ 1
+
+
+
+ ProjectExplorer.Project.TargetCount
+ 2
+
+
+ ProjectExplorer.Project.Updater.FileVersion
+ 22
+
+
+ Version
+ 22
+
+
diff --git a/softwareDirectory/AutoVerScheme/TaskManager.cpp b/softwareDirectory/AutoVerScheme/TaskManager.cpp
index ed0d569..c6c6c43 100644
--- a/softwareDirectory/AutoVerScheme/TaskManager.cpp
+++ b/softwareDirectory/AutoVerScheme/TaskManager.cpp
@@ -2,11 +2,14 @@
#include "id/TaskManager.h"
#include "basecommonapi.h"
-// 定义并初始化静态成员变量
+// 定义并初始化静态成员变量 委托单编号
QMap TaskManager::dailyTaskCounts;
QDate TaskManager::currentDate;
QString TaskManager::KeyDate;
+//检定结果保存
+QMap TaskManager::saveResultdatanoList;
+QString TaskManager::ResultKeyDate;
QString TaskManager::generateTask(QString Number)
{
// 初始化当天任务单数量为0
@@ -40,24 +43,67 @@
return taskId;
}
-int TaskManager::getTaskCountForToday()
+QString TaskManager::getsaveResultdatano()
{
- // 返回当天的任务单数量
- return dailyTaskCounts.value(KeyDate, 0);
+
+ //获取结果保存ID
+ ResultKeyDate = QDate::currentDate().toString("yyyyMMdd");
+ //判断是否包含 如包含直接返回结果
+ if(!saveResultdatanoList.contains(ResultKeyDate))
+ {
+
+ //找寻数据库上次的记录
+ QString datano=BaseCommonApi::getNewResultData().data_no;
+ if(datano!=""){
+ int startIndex = datano.lastIndexOf("j")+1; // 找到 "YYYY" 的起始位置
+ int endIndex = startIndex + 8; // "YYYYMMDD" 总共8个字符
+ //截截取
+ QString result = datano.mid(startIndex, 8);
+ if(result!=ResultKeyDate){
+ saveResultdatanoList[ResultKeyDate] = 1;
+ }else
+ {
+ //获取最后一位数 并加1
+ QChar lastChar = datano.at(datano.length() - 1);
+ if (lastChar.isDigit()) {
+
+ int Count=lastChar.digitValue();
+ saveResultdatanoList[ResultKeyDate] = Count+1;
+ }
+
+ }
+
+ }else{saveResultdatanoList[ResultKeyDate] = 1;};
+
+ }
+
+ QString dateStr = ResultKeyDate;
+ // 生成结果保存编号,这里假设编号格式是 "jdsjYYYYMMDDXXXX",XXXX是顺序号 字段4 10进制 不足时0填充
+ QString taskId = QString("jdsj%1%2").arg(dateStr).arg(saveResultdatanoList[ResultKeyDate], 4, 10, QChar('0'));
+ //返回结果
+ return taskId;
}
+
bool TaskManager::AddCurrenTaskCount()
{
// 增加当天任务单数量
try {
-
dailyTaskCounts[KeyDate]++;
return true;
} catch(const std::exception &e) {
return false;
}
-
}
-
+bool TaskManager::AddResultDataNoCount()
+{
+ // 增加当天任务单数量
+ try {
+ saveResultdatanoList[ResultKeyDate]++;
+ return true;
+ } catch(const std::exception &e) {
+ return false;
+ }
+}
diff --git a/softwareDirectory/AutoVerScheme/basecommonapi.cpp b/softwareDirectory/AutoVerScheme/basecommonapi.cpp
index 874b354..47ee4da 100644
--- a/softwareDirectory/AutoVerScheme/basecommonapi.cpp
+++ b/softwareDirectory/AutoVerScheme/basecommonapi.cpp
@@ -192,6 +192,24 @@
}
return result;
}
+//查看最新结果保存数据
+SaveDeviceMeasureInfo BaseCommonApi::getNewResultData()
+{
+ SaveDeviceMeasureInfo result;
+ QSqlQuery query;
+ query.prepare("select * from biz_business_device_measure_info as bz ORDER BY bz.create_time DESC LIMIT 1");
+ if (query.exec()) {
+ while (query.next()) {
+
+ result.id = query.value("id").toString();
+ result.data_no = query.value("data_no").toString();
+
+ }
+ } else {
+ qDebug() << "Query execution failed: " << query.lastError().text();
+ }
+ return result;
+}
//查看当前最新的任务单
QList BaseCommonApi::getCreateTaskListNew()
{
@@ -800,6 +818,25 @@
*/
//根据被检设备ID获取当前设备的 检定项目及检定点
+/*
+QMap> BaseCommonApi::Search_CalibrationTable(QString DeiverId,QMap *HeadList)
+{
+
+ QMap> DataList;
+ DataList.clear();
+ QList CliTable=BaseCommonApi::getJudgeCalibrationTable(DeiverId);
+ if(CliTable.count()==0)return DataList;
+ switch (CliTable[0].belong_standard_equipment.toInt())
+ {
+ case 1:
+ //CliTable[0].id
+ //1717086652508487681
+ DataList=BaseCommonApi::getVerMultiCal(CliTable[0].id,HeadList);
+ }
+
+ return DataList;
+}*/
+//根据被检设备ID获取当前设备的 检定项目及检定点
QList BaseCommonApi::Search_CalibrationTable(QString DeiverId,QStringList *HeadList)
{
@@ -817,7 +854,6 @@
return DataList;
}
-
//核查设备对应的装置表 核查项及核查点 传参设备id
QList BaseCommonApi::Search_VerifyTable(QString DeiverId,QStringList *HeadList )
{
@@ -861,7 +897,6 @@
}
return DataList;
}
-
//被检设备管理-检定项目及检定点-多功能校准源
QList BaseCommonApi::getVerMultiCal(QString itemId,QStringList *headList)
{
@@ -912,22 +947,88 @@
<<"两线/四线模式"<<"线圈放大"<<"示值"<<"准确度a"<<"指针式仪表满量程值"<<"指针式仪表满量程值单位"<<"被检表示值"<<"准确度等级"<<"创建时间"<<"更新时间";
return resultData;
}
-bool GetDataReturnItemList(QList ResultData,QMap *DataMapList,QList *HeadMapList)
+//被检设备管理-检定项目及检定点-多功能校准源
+/*
+QMap> BaseCommonApi::getVerMultiCal(QString itemId,QMap *headList)
+{
+QMap> DataMapList;
+QList resultData;
+QStringList result;
+resultData.clear();
+
+QSqlQuery query;
+ query.prepare("SELECT * FROM biz_business_device_measure_item_data_calibrator bbdmidc WHERE item_id = :itemId ");
+ // 将参数绑定到占位符
+ query.bindValue(":itemId", itemId);
+ if (query.exec()) {
+ while (query.next()) {
+ result.clear();
+ result.append(query.value("id").toString());
+ result.append(query.value("item_id").toString()); //检定项目ID
+ result.append(query.value("params").toString()); //检查项目
+ result.append(query.value("capacity").toString());
+ result.append(query.value("unit").toString());
+ result.append(query.value("frequency").toString());
+ result.append(query.value("frequency_unit").toString());
+ result.append(query.value("range_range").toString());
+ result.append(query.value("standard_value").toString());
+ result.append(query.value("resolution").toString());
+ result.append(query.value("maximum_error").toString());
+ result.append(query.value("error_param_a").toString());
+ result.append(query.value("error_param_b").toString());
+ result.append(query.value("line_mode").toString());
+ result.append(query.value("coil_enlarge").toString());
+ result.append(query.value("indicating_value").toString());
+ result.append(query.value("accuracy_a").toString());
+ result.append(query.value("full_scale_value").toString());
+ result.append(query.value("full_scale_value_unit").toString());
+ result.append(query.value("measure_indication_value").toString());
+ result.append(query.value("accuracy_level").toString());
+ result.append(query.value("create_time").toString());
+ result.append(query.value("update_time").toString());
+ resultData.append(result);
+ }
+ } else {
+ qDebug() << "Query execution failed: " << query.lastError().text();
+ }
+ //进行检定项目列头转换
+ DataMapList= GetDataReturnItemList(resultData,DataMapList,headList);
+ return DataMapList;
+}
+*/
+QMap> BaseCommonApi::GetDataReturnItemList(QList ResultData,QMap> DataMapList,QMap *HeadMapList)
{
+ QList isFirst;
+ isFirst.append(true);
+ isFirst.append(true);
+ isFirst.append(true);
+ isFirst.append(true);
+ isFirst.append(true);
+ QList DCVList;
+ QList ACVList;
+ QList DCIList;
+ QList ACIList;
+ QList RList;
for(const QStringList &row : ResultData)
{
if (!row.isEmpty()) { // 确保行不为空
if(row[2]=="DCV")
{
- QString VerificationItem= "DCV";
+
+ QString VerificationItem=NULL;
+ if(isFirst[0])
+ {
+ VerificationItem = "DCV";
//添加列头
QStringList head;
head << "序号" << "检定项目" << "量" << "单位" << "量程"
<< "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
- HeadMapList->append(head);
-
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[0]=false;
+ }
//添加数据
+
QStringList Data;
Data.append(row[0]); //ID
Data.append(row[2]); //检定项目
@@ -946,24 +1047,167 @@
Data.append("0");
}
Data.append(row[9]); //分辨力
-
+ DCVList.append(Data);
}
else if(ResultData[2].first()=="ACV")
{
+ QString VerificationItem=NULL;
+ if(isFirst[1])
+ {
+ VerificationItem = "ACV";
+ //添加列头
+ QStringList head;
+ head << "序号" << "检定项目" << "量" << "单位" <<"频率" << "量程"
+ << "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[1]=false;
+ }
+ //添加数据
+ QStringList Data;
+ Data.append(row[0]); //ID
+ Data.append(row[2]); //检定项目
+ Data.append(row[3]); //量
+ Data.append(row[4]); //单位
+ Data.append(row[7]); //量程
+ Data.append(row[8]); //标准值
+ Data.append(row[15]); //示值
+ Data.append(""); //绝对误差 软件界面计算
+ //最大允许误差 根据公式计算 目前 先都按 a*标准值 + b*量程
+ try {
+ //保证数据库内数据没问题
+ Data.append(QString::number((row[11].toDouble()*row[8].toDouble())
+ + (row[12].toDouble()*row[7].toDouble())));
+ } catch(const std::exception &e) {
+ Data.append("0");
+ }
+ Data.append(row[9]); //分辨力
+ ACVList.append(Data);
} else if(ResultData[2].first()=="DCI")
{
+ QString VerificationItem=NULL;
+ if(isFirst[2])
+ {
+ VerificationItem = "DCI";
+ //添加列头
+ QStringList head;
+ head << "序号" << "检定项目" << "量" << "单位" <<"频率" << "量程"
+ << "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[2]=false;
+ }
+ //添加数据
+
+ QStringList Data;
+ Data.append(row[0]); //ID
+ Data.append(row[2]); //检定项目
+ Data.append(row[3]); //量
+ Data.append(row[4]); //单位
+ Data.append(row[5]); //频率
+ Data.append(row[7]); //量程
+ Data.append(row[8]); //标准值
+ Data.append(row[15]); //示值
+ Data.append(""); //绝对误差 软件界面计算
+ //最大允许误差 根据公式计算 目前 先都按 a*标准值 + b*量程
+ try {
+ //保证数据库内数据没问题
+ Data.append(QString::number((row[11].toDouble()*row[8].toDouble())
+ + (row[12].toDouble()*row[7].toDouble())));
+ } catch(const std::exception &e) {
+ Data.append("0");
+ }
+ Data.append(row[9]); //分辨力
+ DCIList.append(Data);
} else if(ResultData[2].first()=="ACI")
{
+ QString VerificationItem=NULL;
+ if(isFirst[3])
+ {
+ VerificationItem = "ACI";
+ //添加列头
+ QStringList head;
+ head << "序号" << "检定项目" << "量" << "单位" <<"频率" << "量程"
+ << "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[3]=false;
+ }
+ //添加数据
- } else if(ResultData[2].first()=="ACV")
+ QStringList Data;
+ Data.append(row[0]); //ID
+ Data.append(row[2]); //检定项目
+ Data.append(row[3]); //量
+ Data.append(row[4]); //单位
+ Data.append(row[5]); //频率
+ Data.append(row[7]); //量程
+ Data.append(row[8]); //标准值
+ Data.append(row[15]); //示值
+ Data.append(""); //绝对误差 软件界面计算
+ //最大允许误差 根据公式计算 目前 先都按 a*标准值 + b*量程
+ try {
+ //保证数据库内数据没问题
+ Data.append(QString::number((row[11].toDouble()*row[8].toDouble())
+ + (row[12].toDouble()*row[7].toDouble())));
+ } catch(const std::exception &e) {
+ Data.append("0");
+ }
+ Data.append(row[9]); //分辨力
+ ACIList.append(Data);
+ } else if(ResultData[2].first()=="R")
{
+ QString VerificationItem=NULL;
+ if(isFirst[4])
+ {
+ VerificationItem = "R";
+ //添加列头
+ QStringList head;
+ head << "序号" <<"两线/四线" << "量" << "单位" << "量程"
+ << "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[4]=false;
+ }
+ //添加数据
+ QStringList Data;
+ Data.append(row[0]); //ID
+ Data.append(row[13]); //两线/四线
+ Data.append(row[3]); //量
+ Data.append(row[4]); //单位
+ Data.append(row[7]); //量程
+ Data.append(row[8]); //标准值
+ Data.append(row[15]); //示值
+ Data.append(""); //绝对误差 软件界面计算
+ //最大允许误差 根据公式计算 目前 先都按 a*标准值 + b*量程
+ try {
+ //保证数据库内数据没问题
+ Data.append(QString::number((row[11].toDouble()*row[8].toDouble())
+ + (row[12].toDouble()*row[7].toDouble())));
+ } catch(const std::exception &e) {
+ Data.append("0");
+ }
+ Data.append(row[9]); //分辨力
+ RList.append(Data);
}
}
}
+ if(DCVList.count()!=0){
+ DataMapList.insert("DCV",DCVList);
+ };
+ if(DCVList.count()!=0){
+ DataMapList.insert("ACV",ACVList);
+ };
+ if(DCVList.count()!=0){
+ DataMapList.insert("DCI",DCIList);
+ };
+ if(DCVList.count()!=0){
+ DataMapList.insert("ACI",ACIList);
+ };
+ if(DCVList.count()!=0){
+ DataMapList.insert("R",RList);
+ };
+ return DataMapList;
}
//检定数据管理 首页
QList BaseCommonApi::getVerificationData()
@@ -1111,6 +1355,7 @@
result.append(query.value("frequency").toString());
result.append( query.value("range_range").toString());
result.append(query.value("standard_value").toString());
+ result.append(query.value("indicating_value").toString());
result.append(query.value("resolution").toString());
result.append(query.value("maximum_error").toString());
result.append(query.value("error_param_a").toString());
@@ -1123,7 +1368,7 @@
qDebug() << "Query execution failed: " << query.lastError().text();
}
*HeadList<<"id"<<"参数"<<"量"<<"单位"<<"频率"
- <<"量程"<<"标准值"<<"分辨力"<<"最大允许误差"<<"误差参数a"
+ <<"量程"<<"标准值" <<"示值" <<"分辨力"<<"最大允许误差"<<"误差参数a"
<<"误差参数b"<<"合格率";
return resultData;
@@ -1611,14 +1856,20 @@
//自动检定-结果保存-biz_business_device_measure_info 基本信息表
bool BaseCommonApi::InsertSaveDeviceMeasureInfo(SaveDeviceMeasureInfo saveInfo)
{
+ saveInfo.data_no=TaskManager::getsaveResultdatano();
+
QSqlQuery query;
query.prepare("INSERT INTO biz_business_device_measure_info "
" (id,data_no,order_id,sample_id,item_id,"
" trace_date,measure_valid_date,measure_address,temperature,humidity,data_source,"
" outcome,create_time,update_time) "
" VALUES "
- " (:id,:data_no,:order_id,:sample_id,:item_id,:trace_date,:measure_valid_date,:measure_address,:temperature,:humidity,:data_source,:outcome,:create_time,:update_time)");
+ " ("
+ ":id,:data_no,:order_id,:sample_id,:item_id,:trace_date,:measure_valid_date,"
+ ":measure_address,:temperature,:humidity,:data_source,:outcome,:create_time,:update_time"
+ ")");
QString currentDateTime = QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss");
+
query.bindValue(":id", saveInfo.id); //id 自动生成
query.bindValue(":data_no", saveInfo.data_no);
query.bindValue(":order_id", saveInfo.order_id);
@@ -1636,6 +1887,8 @@
bool isSuccess = query.exec();
if (!isSuccess) {
qDebug() << "InsertTaskBasic query failed: " << query.lastError().text();
+ }else{
+ TaskManager::AddResultDataNoCount();
}
return isSuccess;
diff --git a/softwareDirectory/AutoVerScheme/basecommonapi.h b/softwareDirectory/AutoVerScheme/basecommonapi.h
index bf0f724..479d8ba 100644
--- a/softwareDirectory/AutoVerScheme/basecommonapi.h
+++ b/softwareDirectory/AutoVerScheme/basecommonapi.h
@@ -828,7 +828,8 @@
QString encrypt(const QString &str, const QString &publicKey);
//判断检定装置表并查询 参数设备id
- static QList Search_CalibrationTable(QString DeiverId,QStringList *HeadList);
+ static QList Search_CalibrationTable(QString DeiverId,QStringList *HeadList);
+ //static QMap> Search_CalibrationTable(QString DeiverId,QMap *HeadList);
//判断核查装置表并查询 参数设备id
static QList Search_VerifyTable(QString DeiverId,QStringList *HeadList );
@@ -891,6 +892,10 @@
static JudgeCalibrationTable getJudgeVerifyTable(QString id);
//被检设备管理-检定项目及检定点-多功能校准源
static QList getVerMultiCal(QString itemId,QStringList *headList);
+ //static QMap> getVerMultiCal(QString itemId,QMap *headList);
+ static QMap> GetDataReturnItemList(QList ResultData,
+ QMap> DataMapList,
+ QMap *HeadMapList);
// 获取检定数据管理 首页
static QList getVerificationData();
// 检定数据管理-检定基本信息-标准设备
@@ -993,7 +998,8 @@
static bool InsertCheckModifyRecord(MeasureModifyRecord record);
//设备与装置-标准装置管理-核查数据管理核查数据历史修改记录[查询] 参数 检定数据管理基础信息表id
static QList getMeasureModifyRecord(QString data_id);
-
+ //查询最新结果保存记录
+ static SaveDeviceMeasureInfo getNewResultData();
};
diff --git a/softwareDirectory/AutoVerScheme/beexamined_deviceitem.cpp b/softwareDirectory/AutoVerScheme/beexamined_deviceitem.cpp
index 4cfa1b6..fef3880 100644
--- a/softwareDirectory/AutoVerScheme/beexamined_deviceitem.cpp
+++ b/softwareDirectory/AutoVerScheme/beexamined_deviceitem.cpp
@@ -199,7 +199,7 @@
QStringList headlist;
QList Data=dbManager.Search_CalibrationTable(id,&headlist);
-
+ //QList Data;
//tableWidgetItem
ui->tableWidgetItem->setRowCount(0);
ui->tableWidgetItem->setColumnCount(headlist.count());
diff --git a/softwareDirectory/AutoVerScheme/checkwindow.cpp b/softwareDirectory/AutoVerScheme/checkwindow.cpp
index a89e7db..bf56963 100644
--- a/softwareDirectory/AutoVerScheme/checkwindow.cpp
+++ b/softwareDirectory/AutoVerScheme/checkwindow.cpp
@@ -534,6 +534,7 @@
}
}
item.measure_indication_value = sRet;
+ ui->tableWidgetCheck->setItem(i,15,new QTableWidgetItem(sRet)); //示值
ui->tableWidgetCheck->setItem(i,19,new QTableWidgetItem(sRet));
}
}
diff --git a/softwareDirectory/AutoVerScheme/dialogcheckresult.cpp b/softwareDirectory/AutoVerScheme/dialogcheckresult.cpp
index a23f7d4..3210be8 100644
--- a/softwareDirectory/AutoVerScheme/dialogcheckresult.cpp
+++ b/softwareDirectory/AutoVerScheme/dialogcheckresult.cpp
@@ -59,7 +59,7 @@
SaveDeviceMeasureInfo measInfo;
BaseCommonApi api;
measInfo.id = QString::number(api.generateId());
- measInfo.data_no = "jdsj"+QDateTime::currentDateTime().toString("yyyyMMdd")+"0003";
+ //measInfo.data_no;
measInfo.order_id = taskList[0].id;
measInfo.sample_id=deviceId;
measInfo.item_id=measureCalList[0].item_data_id;
@@ -86,6 +86,7 @@
item.data_id = measInfo.id;
BaseCommonApi::InsertVerMultiCal(item);
}
+ QMessageBox::information(this, "提示", "保存成功!");
}
else
{
diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user
new file mode 100644
index 0000000..77ab7ad
--- /dev/null
+++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user
@@ -0,0 +1,562 @@
+
+
+
+
+
+ EnvironmentId
+ {c08df58c-84a7-4965-bca6-e98789474efa}
+
+
+ ProjectExplorer.Project.ActiveTarget
+ 0
+
+
+ ProjectExplorer.Project.EditorSettings
+
+ true
+ false
+ true
+
+ Cpp
+
+ CppGlobal
+
+
+
+ QmlJS
+
+ QmlJSGlobal
+
+
+ 2
+ UTF-8
+ false
+ 4
+ false
+ 80
+ true
+ true
+ 1
+ true
+ false
+ 0
+ true
+ true
+ 0
+ 8
+ true
+ 1
+ true
+ true
+ true
+ false
+
+
+
+ ProjectExplorer.Project.PluginSettings
+
+
+ -fno-delayed-template-parsing
+
+ true
+
+
+
+ ProjectExplorer.Project.Target.0
+
+ Desktop Qt 5.14.2 MinGW 64-bit
+ Desktop Qt 5.14.2 MinGW 64-bit
+ qt.qt5.5142.win64_mingw73_kit
+ 0
+ 0
+ 0
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Debug
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ false
+ false
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Debug
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 2
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Release
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ false
+
+ false
+ false
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Release
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Profile
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ true
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Profile
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+ 3
+
+
+ 0
+ Deploy
+ Deploy
+ ProjectExplorer.BuildSteps.Deploy
+
+ 1
+ ProjectExplorer.DefaultDeployConfiguration
+
+ 1
+
+
+ dwarf
+
+ cpu-cycles
+
+
+ 250
+
+ -e
+ cpu-cycles
+ --call-graph
+ dwarf,4096
+ -F
+ 250
+
+ -F
+ true
+ 4096
+ false
+ false
+ 1000
+
+ true
+
+ false
+ false
+ false
+ false
+ true
+ 0.01
+ 10
+ true
+ kcachegrind
+ 1
+ 25
+
+ 1
+ true
+ false
+ true
+ valgrind
+
+ 0
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+ 10
+ 11
+ 12
+ 13
+ 14
+
+ 2
+
+ Qt4ProjectManager.Qt4RunConfiguration:E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+ E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+
+ false
+
+ false
+ true
+ true
+ false
+ false
+ true
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_64_bit-Debug
+
+ 1
+
+
+
+ ProjectExplorer.Project.Target.1
+
+ Desktop Qt 5.14.2 MinGW 32-bit
+ Desktop Qt 5.14.2 MinGW 32-bit
+ qt.qt5.5142.win32_mingw73_kit
+ 0
+ 0
+ 0
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_32_bit-Debug
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ false
+ false
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Debug
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 2
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_32_bit-Release
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ false
+
+ false
+ false
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Release
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+
+ E:/Desktop/SVN/software/softwareDirectory/build-AutoVerScheme-Desktop_Qt_5_14_2_MinGW_32_bit-Profile
+
+
+ true
+ QtProjectManager.QMakeBuildStep
+ true
+
+ false
+ true
+ true
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ false
+
+
+ false
+
+ 2
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+ true
+ Qt4ProjectManager.MakeStep
+
+ true
+ clean
+
+ false
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ Profile
+ Qt4ProjectManager.Qt4BuildConfiguration
+ 0
+
+ 3
+
+
+ 0
+ Deploy
+ Deploy
+ ProjectExplorer.BuildSteps.Deploy
+
+ 1
+ ProjectExplorer.DefaultDeployConfiguration
+
+ 1
+
+
+ dwarf
+
+ cpu-cycles
+
+
+ 250
+
+ -e
+ cpu-cycles
+ --call-graph
+ dwarf,4096
+ -F
+ 250
+
+ -F
+ true
+ 4096
+ false
+ false
+ 1000
+
+ true
+
+ false
+ false
+ false
+ false
+ true
+ 0.01
+ 10
+ true
+ kcachegrind
+ 1
+ 25
+
+ 1
+ true
+ false
+ true
+ valgrind
+
+ 0
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+ 10
+ 11
+ 12
+ 13
+ 14
+
+ 2
+
+ Qt4ProjectManager.Qt4RunConfiguration:E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+ E:/Desktop/SVN/software/softwareDirectory/AutoVerScheme/AutoVerScheme.pro
+
+ false
+
+ false
+ true
+ true
+ false
+ false
+ true
+
+
+
+ 1
+
+
+
+ ProjectExplorer.Project.TargetCount
+ 2
+
+
+ ProjectExplorer.Project.Updater.FileVersion
+ 22
+
+
+ Version
+ 22
+
+
diff --git a/softwareDirectory/AutoVerScheme/TaskManager.cpp b/softwareDirectory/AutoVerScheme/TaskManager.cpp
index ed0d569..c6c6c43 100644
--- a/softwareDirectory/AutoVerScheme/TaskManager.cpp
+++ b/softwareDirectory/AutoVerScheme/TaskManager.cpp
@@ -2,11 +2,14 @@
#include "id/TaskManager.h"
#include "basecommonapi.h"
-// 定义并初始化静态成员变量
+// 定义并初始化静态成员变量 委托单编号
QMap TaskManager::dailyTaskCounts;
QDate TaskManager::currentDate;
QString TaskManager::KeyDate;
+//检定结果保存
+QMap TaskManager::saveResultdatanoList;
+QString TaskManager::ResultKeyDate;
QString TaskManager::generateTask(QString Number)
{
// 初始化当天任务单数量为0
@@ -40,24 +43,67 @@
return taskId;
}
-int TaskManager::getTaskCountForToday()
+QString TaskManager::getsaveResultdatano()
{
- // 返回当天的任务单数量
- return dailyTaskCounts.value(KeyDate, 0);
+
+ //获取结果保存ID
+ ResultKeyDate = QDate::currentDate().toString("yyyyMMdd");
+ //判断是否包含 如包含直接返回结果
+ if(!saveResultdatanoList.contains(ResultKeyDate))
+ {
+
+ //找寻数据库上次的记录
+ QString datano=BaseCommonApi::getNewResultData().data_no;
+ if(datano!=""){
+ int startIndex = datano.lastIndexOf("j")+1; // 找到 "YYYY" 的起始位置
+ int endIndex = startIndex + 8; // "YYYYMMDD" 总共8个字符
+ //截截取
+ QString result = datano.mid(startIndex, 8);
+ if(result!=ResultKeyDate){
+ saveResultdatanoList[ResultKeyDate] = 1;
+ }else
+ {
+ //获取最后一位数 并加1
+ QChar lastChar = datano.at(datano.length() - 1);
+ if (lastChar.isDigit()) {
+
+ int Count=lastChar.digitValue();
+ saveResultdatanoList[ResultKeyDate] = Count+1;
+ }
+
+ }
+
+ }else{saveResultdatanoList[ResultKeyDate] = 1;};
+
+ }
+
+ QString dateStr = ResultKeyDate;
+ // 生成结果保存编号,这里假设编号格式是 "jdsjYYYYMMDDXXXX",XXXX是顺序号 字段4 10进制 不足时0填充
+ QString taskId = QString("jdsj%1%2").arg(dateStr).arg(saveResultdatanoList[ResultKeyDate], 4, 10, QChar('0'));
+ //返回结果
+ return taskId;
}
+
bool TaskManager::AddCurrenTaskCount()
{
// 增加当天任务单数量
try {
-
dailyTaskCounts[KeyDate]++;
return true;
} catch(const std::exception &e) {
return false;
}
-
}
-
+bool TaskManager::AddResultDataNoCount()
+{
+ // 增加当天任务单数量
+ try {
+ saveResultdatanoList[ResultKeyDate]++;
+ return true;
+ } catch(const std::exception &e) {
+ return false;
+ }
+}
diff --git a/softwareDirectory/AutoVerScheme/basecommonapi.cpp b/softwareDirectory/AutoVerScheme/basecommonapi.cpp
index 874b354..47ee4da 100644
--- a/softwareDirectory/AutoVerScheme/basecommonapi.cpp
+++ b/softwareDirectory/AutoVerScheme/basecommonapi.cpp
@@ -192,6 +192,24 @@
}
return result;
}
+//查看最新结果保存数据
+SaveDeviceMeasureInfo BaseCommonApi::getNewResultData()
+{
+ SaveDeviceMeasureInfo result;
+ QSqlQuery query;
+ query.prepare("select * from biz_business_device_measure_info as bz ORDER BY bz.create_time DESC LIMIT 1");
+ if (query.exec()) {
+ while (query.next()) {
+
+ result.id = query.value("id").toString();
+ result.data_no = query.value("data_no").toString();
+
+ }
+ } else {
+ qDebug() << "Query execution failed: " << query.lastError().text();
+ }
+ return result;
+}
//查看当前最新的任务单
QList BaseCommonApi::getCreateTaskListNew()
{
@@ -800,6 +818,25 @@
*/
//根据被检设备ID获取当前设备的 检定项目及检定点
+/*
+QMap> BaseCommonApi::Search_CalibrationTable(QString DeiverId,QMap *HeadList)
+{
+
+ QMap> DataList;
+ DataList.clear();
+ QList CliTable=BaseCommonApi::getJudgeCalibrationTable(DeiverId);
+ if(CliTable.count()==0)return DataList;
+ switch (CliTable[0].belong_standard_equipment.toInt())
+ {
+ case 1:
+ //CliTable[0].id
+ //1717086652508487681
+ DataList=BaseCommonApi::getVerMultiCal(CliTable[0].id,HeadList);
+ }
+
+ return DataList;
+}*/
+//根据被检设备ID获取当前设备的 检定项目及检定点
QList BaseCommonApi::Search_CalibrationTable(QString DeiverId,QStringList *HeadList)
{
@@ -817,7 +854,6 @@
return DataList;
}
-
//核查设备对应的装置表 核查项及核查点 传参设备id
QList BaseCommonApi::Search_VerifyTable(QString DeiverId,QStringList *HeadList )
{
@@ -861,7 +897,6 @@
}
return DataList;
}
-
//被检设备管理-检定项目及检定点-多功能校准源
QList BaseCommonApi::getVerMultiCal(QString itemId,QStringList *headList)
{
@@ -912,22 +947,88 @@
<<"两线/四线模式"<<"线圈放大"<<"示值"<<"准确度a"<<"指针式仪表满量程值"<<"指针式仪表满量程值单位"<<"被检表示值"<<"准确度等级"<<"创建时间"<<"更新时间";
return resultData;
}
-bool GetDataReturnItemList(QList ResultData,QMap *DataMapList,QList *HeadMapList)
+//被检设备管理-检定项目及检定点-多功能校准源
+/*
+QMap> BaseCommonApi::getVerMultiCal(QString itemId,QMap *headList)
+{
+QMap> DataMapList;
+QList resultData;
+QStringList result;
+resultData.clear();
+
+QSqlQuery query;
+ query.prepare("SELECT * FROM biz_business_device_measure_item_data_calibrator bbdmidc WHERE item_id = :itemId ");
+ // 将参数绑定到占位符
+ query.bindValue(":itemId", itemId);
+ if (query.exec()) {
+ while (query.next()) {
+ result.clear();
+ result.append(query.value("id").toString());
+ result.append(query.value("item_id").toString()); //检定项目ID
+ result.append(query.value("params").toString()); //检查项目
+ result.append(query.value("capacity").toString());
+ result.append(query.value("unit").toString());
+ result.append(query.value("frequency").toString());
+ result.append(query.value("frequency_unit").toString());
+ result.append(query.value("range_range").toString());
+ result.append(query.value("standard_value").toString());
+ result.append(query.value("resolution").toString());
+ result.append(query.value("maximum_error").toString());
+ result.append(query.value("error_param_a").toString());
+ result.append(query.value("error_param_b").toString());
+ result.append(query.value("line_mode").toString());
+ result.append(query.value("coil_enlarge").toString());
+ result.append(query.value("indicating_value").toString());
+ result.append(query.value("accuracy_a").toString());
+ result.append(query.value("full_scale_value").toString());
+ result.append(query.value("full_scale_value_unit").toString());
+ result.append(query.value("measure_indication_value").toString());
+ result.append(query.value("accuracy_level").toString());
+ result.append(query.value("create_time").toString());
+ result.append(query.value("update_time").toString());
+ resultData.append(result);
+ }
+ } else {
+ qDebug() << "Query execution failed: " << query.lastError().text();
+ }
+ //进行检定项目列头转换
+ DataMapList= GetDataReturnItemList(resultData,DataMapList,headList);
+ return DataMapList;
+}
+*/
+QMap> BaseCommonApi::GetDataReturnItemList(QList ResultData,QMap> DataMapList,QMap *HeadMapList)
{
+ QList isFirst;
+ isFirst.append(true);
+ isFirst.append(true);
+ isFirst.append(true);
+ isFirst.append(true);
+ isFirst.append(true);
+ QList DCVList;
+ QList ACVList;
+ QList DCIList;
+ QList ACIList;
+ QList RList;
for(const QStringList &row : ResultData)
{
if (!row.isEmpty()) { // 确保行不为空
if(row[2]=="DCV")
{
- QString VerificationItem= "DCV";
+
+ QString VerificationItem=NULL;
+ if(isFirst[0])
+ {
+ VerificationItem = "DCV";
//添加列头
QStringList head;
head << "序号" << "检定项目" << "量" << "单位" << "量程"
<< "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
- HeadMapList->append(head);
-
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[0]=false;
+ }
//添加数据
+
QStringList Data;
Data.append(row[0]); //ID
Data.append(row[2]); //检定项目
@@ -946,24 +1047,167 @@
Data.append("0");
}
Data.append(row[9]); //分辨力
-
+ DCVList.append(Data);
}
else if(ResultData[2].first()=="ACV")
{
+ QString VerificationItem=NULL;
+ if(isFirst[1])
+ {
+ VerificationItem = "ACV";
+ //添加列头
+ QStringList head;
+ head << "序号" << "检定项目" << "量" << "单位" <<"频率" << "量程"
+ << "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[1]=false;
+ }
+ //添加数据
+ QStringList Data;
+ Data.append(row[0]); //ID
+ Data.append(row[2]); //检定项目
+ Data.append(row[3]); //量
+ Data.append(row[4]); //单位
+ Data.append(row[7]); //量程
+ Data.append(row[8]); //标准值
+ Data.append(row[15]); //示值
+ Data.append(""); //绝对误差 软件界面计算
+ //最大允许误差 根据公式计算 目前 先都按 a*标准值 + b*量程
+ try {
+ //保证数据库内数据没问题
+ Data.append(QString::number((row[11].toDouble()*row[8].toDouble())
+ + (row[12].toDouble()*row[7].toDouble())));
+ } catch(const std::exception &e) {
+ Data.append("0");
+ }
+ Data.append(row[9]); //分辨力
+ ACVList.append(Data);
} else if(ResultData[2].first()=="DCI")
{
+ QString VerificationItem=NULL;
+ if(isFirst[2])
+ {
+ VerificationItem = "DCI";
+ //添加列头
+ QStringList head;
+ head << "序号" << "检定项目" << "量" << "单位" <<"频率" << "量程"
+ << "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[2]=false;
+ }
+ //添加数据
+
+ QStringList Data;
+ Data.append(row[0]); //ID
+ Data.append(row[2]); //检定项目
+ Data.append(row[3]); //量
+ Data.append(row[4]); //单位
+ Data.append(row[5]); //频率
+ Data.append(row[7]); //量程
+ Data.append(row[8]); //标准值
+ Data.append(row[15]); //示值
+ Data.append(""); //绝对误差 软件界面计算
+ //最大允许误差 根据公式计算 目前 先都按 a*标准值 + b*量程
+ try {
+ //保证数据库内数据没问题
+ Data.append(QString::number((row[11].toDouble()*row[8].toDouble())
+ + (row[12].toDouble()*row[7].toDouble())));
+ } catch(const std::exception &e) {
+ Data.append("0");
+ }
+ Data.append(row[9]); //分辨力
+ DCIList.append(Data);
} else if(ResultData[2].first()=="ACI")
{
+ QString VerificationItem=NULL;
+ if(isFirst[3])
+ {
+ VerificationItem = "ACI";
+ //添加列头
+ QStringList head;
+ head << "序号" << "检定项目" << "量" << "单位" <<"频率" << "量程"
+ << "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[3]=false;
+ }
+ //添加数据
- } else if(ResultData[2].first()=="ACV")
+ QStringList Data;
+ Data.append(row[0]); //ID
+ Data.append(row[2]); //检定项目
+ Data.append(row[3]); //量
+ Data.append(row[4]); //单位
+ Data.append(row[5]); //频率
+ Data.append(row[7]); //量程
+ Data.append(row[8]); //标准值
+ Data.append(row[15]); //示值
+ Data.append(""); //绝对误差 软件界面计算
+ //最大允许误差 根据公式计算 目前 先都按 a*标准值 + b*量程
+ try {
+ //保证数据库内数据没问题
+ Data.append(QString::number((row[11].toDouble()*row[8].toDouble())
+ + (row[12].toDouble()*row[7].toDouble())));
+ } catch(const std::exception &e) {
+ Data.append("0");
+ }
+ Data.append(row[9]); //分辨力
+ ACIList.append(Data);
+ } else if(ResultData[2].first()=="R")
{
+ QString VerificationItem=NULL;
+ if(isFirst[4])
+ {
+ VerificationItem = "R";
+ //添加列头
+ QStringList head;
+ head << "序号" <<"两线/四线" << "量" << "单位" << "量程"
+ << "标准值" << "示值" << "绝对误差" << "最大允许误差" << "分辨力";
+ HeadMapList->insert(VerificationItem,head);
+ isFirst[4]=false;
+ }
+ //添加数据
+ QStringList Data;
+ Data.append(row[0]); //ID
+ Data.append(row[13]); //两线/四线
+ Data.append(row[3]); //量
+ Data.append(row[4]); //单位
+ Data.append(row[7]); //量程
+ Data.append(row[8]); //标准值
+ Data.append(row[15]); //示值
+ Data.append(""); //绝对误差 软件界面计算
+ //最大允许误差 根据公式计算 目前 先都按 a*标准值 + b*量程
+ try {
+ //保证数据库内数据没问题
+ Data.append(QString::number((row[11].toDouble()*row[8].toDouble())
+ + (row[12].toDouble()*row[7].toDouble())));
+ } catch(const std::exception &e) {
+ Data.append("0");
+ }
+ Data.append(row[9]); //分辨力
+ RList.append(Data);
}
}
}
+ if(DCVList.count()!=0){
+ DataMapList.insert("DCV",DCVList);
+ };
+ if(DCVList.count()!=0){
+ DataMapList.insert("ACV",ACVList);
+ };
+ if(DCVList.count()!=0){
+ DataMapList.insert("DCI",DCIList);
+ };
+ if(DCVList.count()!=0){
+ DataMapList.insert("ACI",ACIList);
+ };
+ if(DCVList.count()!=0){
+ DataMapList.insert("R",RList);
+ };
+ return DataMapList;
}
//检定数据管理 首页
QList BaseCommonApi::getVerificationData()
@@ -1111,6 +1355,7 @@
result.append(query.value("frequency").toString());
result.append( query.value("range_range").toString());
result.append(query.value("standard_value").toString());
+ result.append(query.value("indicating_value").toString());
result.append(query.value("resolution").toString());
result.append(query.value("maximum_error").toString());
result.append(query.value("error_param_a").toString());
@@ -1123,7 +1368,7 @@
qDebug() << "Query execution failed: " << query.lastError().text();
}
*HeadList<<"id"<<"参数"<<"量"<<"单位"<<"频率"
- <<"量程"<<"标准值"<<"分辨力"<<"最大允许误差"<<"误差参数a"
+ <<"量程"<<"标准值" <<"示值" <<"分辨力"<<"最大允许误差"<<"误差参数a"
<<"误差参数b"<<"合格率";
return resultData;
@@ -1611,14 +1856,20 @@
//自动检定-结果保存-biz_business_device_measure_info 基本信息表
bool BaseCommonApi::InsertSaveDeviceMeasureInfo(SaveDeviceMeasureInfo saveInfo)
{
+ saveInfo.data_no=TaskManager::getsaveResultdatano();
+
QSqlQuery query;
query.prepare("INSERT INTO biz_business_device_measure_info "
" (id,data_no,order_id,sample_id,item_id,"
" trace_date,measure_valid_date,measure_address,temperature,humidity,data_source,"
" outcome,create_time,update_time) "
" VALUES "
- " (:id,:data_no,:order_id,:sample_id,:item_id,:trace_date,:measure_valid_date,:measure_address,:temperature,:humidity,:data_source,:outcome,:create_time,:update_time)");
+ " ("
+ ":id,:data_no,:order_id,:sample_id,:item_id,:trace_date,:measure_valid_date,"
+ ":measure_address,:temperature,:humidity,:data_source,:outcome,:create_time,:update_time"
+ ")");
QString currentDateTime = QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss");
+
query.bindValue(":id", saveInfo.id); //id 自动生成
query.bindValue(":data_no", saveInfo.data_no);
query.bindValue(":order_id", saveInfo.order_id);
@@ -1636,6 +1887,8 @@
bool isSuccess = query.exec();
if (!isSuccess) {
qDebug() << "InsertTaskBasic query failed: " << query.lastError().text();
+ }else{
+ TaskManager::AddResultDataNoCount();
}
return isSuccess;
diff --git a/softwareDirectory/AutoVerScheme/basecommonapi.h b/softwareDirectory/AutoVerScheme/basecommonapi.h
index bf0f724..479d8ba 100644
--- a/softwareDirectory/AutoVerScheme/basecommonapi.h
+++ b/softwareDirectory/AutoVerScheme/basecommonapi.h
@@ -828,7 +828,8 @@
QString encrypt(const QString &str, const QString &publicKey);
//判断检定装置表并查询 参数设备id
- static QList Search_CalibrationTable(QString DeiverId,QStringList *HeadList);
+ static QList Search_CalibrationTable(QString DeiverId,QStringList *HeadList);
+ //static QMap> Search_CalibrationTable(QString DeiverId,QMap *HeadList);
//判断核查装置表并查询 参数设备id
static QList Search_VerifyTable(QString DeiverId,QStringList *HeadList );
@@ -891,6 +892,10 @@
static JudgeCalibrationTable getJudgeVerifyTable(QString id);
//被检设备管理-检定项目及检定点-多功能校准源
static QList getVerMultiCal(QString itemId,QStringList *headList);
+ //static QMap> getVerMultiCal(QString itemId,QMap *headList);
+ static QMap> GetDataReturnItemList(QList ResultData,
+ QMap> DataMapList,
+ QMap *HeadMapList);
// 获取检定数据管理 首页
static QList getVerificationData();
// 检定数据管理-检定基本信息-标准设备
@@ -993,7 +998,8 @@
static bool InsertCheckModifyRecord(MeasureModifyRecord record);
//设备与装置-标准装置管理-核查数据管理核查数据历史修改记录[查询] 参数 检定数据管理基础信息表id
static QList getMeasureModifyRecord(QString data_id);
-
+ //查询最新结果保存记录
+ static SaveDeviceMeasureInfo getNewResultData();
};
diff --git a/softwareDirectory/AutoVerScheme/beexamined_deviceitem.cpp b/softwareDirectory/AutoVerScheme/beexamined_deviceitem.cpp
index 4cfa1b6..fef3880 100644
--- a/softwareDirectory/AutoVerScheme/beexamined_deviceitem.cpp
+++ b/softwareDirectory/AutoVerScheme/beexamined_deviceitem.cpp
@@ -199,7 +199,7 @@
QStringList headlist;
QList Data=dbManager.Search_CalibrationTable(id,&headlist);
-
+ //QList Data;
//tableWidgetItem
ui->tableWidgetItem->setRowCount(0);
ui->tableWidgetItem->setColumnCount(headlist.count());
diff --git a/softwareDirectory/AutoVerScheme/checkwindow.cpp b/softwareDirectory/AutoVerScheme/checkwindow.cpp
index a89e7db..bf56963 100644
--- a/softwareDirectory/AutoVerScheme/checkwindow.cpp
+++ b/softwareDirectory/AutoVerScheme/checkwindow.cpp
@@ -534,6 +534,7 @@
}
}
item.measure_indication_value = sRet;
+ ui->tableWidgetCheck->setItem(i,15,new QTableWidgetItem(sRet)); //示值
ui->tableWidgetCheck->setItem(i,19,new QTableWidgetItem(sRet));
}
}
diff --git a/softwareDirectory/AutoVerScheme/dialogcheckresult.cpp b/softwareDirectory/AutoVerScheme/dialogcheckresult.cpp
index a23f7d4..3210be8 100644
--- a/softwareDirectory/AutoVerScheme/dialogcheckresult.cpp
+++ b/softwareDirectory/AutoVerScheme/dialogcheckresult.cpp
@@ -59,7 +59,7 @@
SaveDeviceMeasureInfo measInfo;
BaseCommonApi api;
measInfo.id = QString::number(api.generateId());
- measInfo.data_no = "jdsj"+QDateTime::currentDateTime().toString("yyyyMMdd")+"0003";
+ //measInfo.data_no;
measInfo.order_id = taskList[0].id;
measInfo.sample_id=deviceId;
measInfo.item_id=measureCalList[0].item_data_id;
@@ -86,6 +86,7 @@
item.data_id = measInfo.id;
BaseCommonApi::InsertVerMultiCal(item);
}
+ QMessageBox::information(this, "提示", "保存成功!");
}
else
{
diff --git a/softwareDirectory/AutoVerScheme/id/TaskManager.h b/softwareDirectory/AutoVerScheme/id/TaskManager.h
index 9bf1935..3d9b474 100644
--- a/softwareDirectory/AutoVerScheme/id/TaskManager.h
+++ b/softwareDirectory/AutoVerScheme/id/TaskManager.h
@@ -10,15 +10,19 @@
class TaskManager {
private:
static QMap dailyTaskCounts; // 日期 -> 任务单数量
+ static QMap saveResultdatanoList; // 日期 -> 结果保存
static QDate currentDate;
static QString KeyDate;
-
+ //ResultKeyDate
+ static QString ResultKeyDate;
public:
static int getTaskCountForToday();
static bool AddCurrenTaskCount();
static QString generateTask(QString Number);
+ static bool AddResultDataNoCount();
+ static QString getsaveResultdatano();
};
diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user
new file mode 100644
index 0000000..77ab7ad
--- /dev/null
+++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user
@@ -0,0 +1,562 @@
+
+
+
+
+
+ EnvironmentId
+ {c08df58c-84a7-4965-bca6-e98789474efa}
+
+
+ ProjectExplorer.Project.ActiveTarget
+ 0
+
+
+ ProjectExplorer.Project.EditorSettings
+
+ true
+ false
+ true
+
+