diff --git a/softwareDirectory/AutoVerScheme/basecommonapi.cpp b/softwareDirectory/AutoVerScheme/basecommonapi.cpp index f587b64..7d1524a 100644 --- a/softwareDirectory/AutoVerScheme/basecommonapi.cpp +++ b/softwareDirectory/AutoVerScheme/basecommonapi.cpp @@ -1183,4 +1183,60 @@ { return this->idWorker.nextId(); } +//自动检定-结果保存-biz_business_device_measure_info 基本信息表 +bool BaseCommonApi::InsertSaveDeviceMeasureInfo(SaveDeviceMeasureInfo saveInfo) +{ + 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)"); + query.bindValue(":id", saveInfo.id); //id 自动生成 + query.bindValue(":data_no", saveInfo.data_no); + query.bindValue(":order_id", saveInfo.order_id); + query.bindValue(":sample_id", saveInfo.sample_id); + query.bindValue(":item_id", saveInfo.item_id); + query.bindValue(":trace_date", saveInfo.trace_date); + query.bindValue(":measure_valid_date", saveInfo.measure_valid_date); + query.bindValue(":measure_address", saveInfo.measure_address); + query.bindValue(":temperature", saveInfo.temperature); + query.bindValue(":humidity", saveInfo.humidity); + query.bindValue(":data_source", saveInfo.data_source); + query.bindValue(":outcome", saveInfo.outcome); + query.bindValue(":create_time", saveInfo.create_time); + query.bindValue(":update_time", saveInfo.update_time); + bool isSuccess = query.exec(); + if (!isSuccess) { + qDebug() << "InsertTaskBasic query failed: " << query.lastError().text(); + } + + return isSuccess; +} + +//自动检定-结果保存-检定数据管理多功能校准源数据(自动检定输出或业务创建) +bool BaseCommonApi::UpdateVerMultiCal(SaveDeviceMeasureCalibrator measureCalibrator) +{ + QSqlQuery query; + query.prepare("UPDATE biz_business_device_measure_item_data_calibrator" + " SET indicating_value = :indicating_value," + " SET absolute_error = :absolute_error," + " SET update_time = :update_time," + " SET remark = :remark " + " WHERE id = :id;"); + + QString formattedUpdateDateTime = measureCalibrator.update_time.toString("yyyy-MM-dd HH:mm:ss"); + query.bindValue(":indicating_value", measureCalibrator.indicating_value); + query.bindValue(":absolute_error", measureCalibrator.absolute_error); + query.bindValue(":remark", measureCalibrator.remark); + query.bindValue(":update_time", formattedUpdateDateTime); + query.bindValue(":id",measureCalibrator.id); + + bool isSuccess = query.exec(); + if (!isSuccess) { + qDebug() << "InsertOrderSampleRelation query failed: " << query.lastError().text(); + } + return isSuccess; +} diff --git a/softwareDirectory/AutoVerScheme/basecommonapi.cpp b/softwareDirectory/AutoVerScheme/basecommonapi.cpp index f587b64..7d1524a 100644 --- a/softwareDirectory/AutoVerScheme/basecommonapi.cpp +++ b/softwareDirectory/AutoVerScheme/basecommonapi.cpp @@ -1183,4 +1183,60 @@ { return this->idWorker.nextId(); } +//自动检定-结果保存-biz_business_device_measure_info 基本信息表 +bool BaseCommonApi::InsertSaveDeviceMeasureInfo(SaveDeviceMeasureInfo saveInfo) +{ + 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)"); + query.bindValue(":id", saveInfo.id); //id 自动生成 + query.bindValue(":data_no", saveInfo.data_no); + query.bindValue(":order_id", saveInfo.order_id); + query.bindValue(":sample_id", saveInfo.sample_id); + query.bindValue(":item_id", saveInfo.item_id); + query.bindValue(":trace_date", saveInfo.trace_date); + query.bindValue(":measure_valid_date", saveInfo.measure_valid_date); + query.bindValue(":measure_address", saveInfo.measure_address); + query.bindValue(":temperature", saveInfo.temperature); + query.bindValue(":humidity", saveInfo.humidity); + query.bindValue(":data_source", saveInfo.data_source); + query.bindValue(":outcome", saveInfo.outcome); + query.bindValue(":create_time", saveInfo.create_time); + query.bindValue(":update_time", saveInfo.update_time); + bool isSuccess = query.exec(); + if (!isSuccess) { + qDebug() << "InsertTaskBasic query failed: " << query.lastError().text(); + } + + return isSuccess; +} + +//自动检定-结果保存-检定数据管理多功能校准源数据(自动检定输出或业务创建) +bool BaseCommonApi::UpdateVerMultiCal(SaveDeviceMeasureCalibrator measureCalibrator) +{ + QSqlQuery query; + query.prepare("UPDATE biz_business_device_measure_item_data_calibrator" + " SET indicating_value = :indicating_value," + " SET absolute_error = :absolute_error," + " SET update_time = :update_time," + " SET remark = :remark " + " WHERE id = :id;"); + + QString formattedUpdateDateTime = measureCalibrator.update_time.toString("yyyy-MM-dd HH:mm:ss"); + query.bindValue(":indicating_value", measureCalibrator.indicating_value); + query.bindValue(":absolute_error", measureCalibrator.absolute_error); + query.bindValue(":remark", measureCalibrator.remark); + query.bindValue(":update_time", formattedUpdateDateTime); + query.bindValue(":id",measureCalibrator.id); + + bool isSuccess = query.exec(); + if (!isSuccess) { + qDebug() << "InsertOrderSampleRelation query failed: " << query.lastError().text(); + } + return isSuccess; +} diff --git a/softwareDirectory/AutoVerScheme/basecommonapi.h b/softwareDirectory/AutoVerScheme/basecommonapi.h index a113006..7a15793 100644 --- a/softwareDirectory/AutoVerScheme/basecommonapi.h +++ b/softwareDirectory/AutoVerScheme/basecommonapi.h @@ -257,6 +257,7 @@ QString maximum_error; QString error_param_a; QString error_param_b; + QDateTime update_time; }; //检定数据管理 首页 @@ -437,6 +438,35 @@ QDateTime create_time; QDateTime update_time; }; +//自动检定-结果保存-biz_business_device_measure_info 基本信息表 +class SaveDeviceMeasureInfo +{ +public: + QString id; //id + QString data_no; //数据编号 jdsj+年月+当天顺序自动生成编号 例如:jdsj202310020001、jdsj202310020002 + QString order_id;//任务单id + QString sample_id;//受检设备id + QString item_id;//具体检定项表的id 例如:多功能校准源检定项的id + QDate trace_date;//测试、校准或检定日期 + QDateTime measure_valid_date;//检定有效期 + QString measure_address;//测试、校准或检定地址 + QString temperature; //温度 + QString humidity;//湿度 + QString data_source; //数据来源(自动检定系统/计量业务系统) + QString outcome; //结果(合格/不合格) + QDateTime create_time; + QDateTime update_time; +}; +//自动检定-结果保存-检定数据管理多功能校准源数据(自动检定输出或业务创建) +class SaveDeviceMeasureCalibrator +{ +public: + QString id; + QString indicating_value;//示值(输出字段,特殊:指针式万用表输入字段) + QString absolute_error;//绝对误差 + QDateTime update_time;//更新时间 + QString remark;//输出备注 +}; using namespace Jiawa::Core; @@ -530,8 +560,10 @@ qint64 generateId(); //雪花算法生成id IdWorker &idWorker = Singleton::instance(); - //自动检定 - + //自动检定-结果保存-基本信息 + static bool InsertSaveDeviceMeasureInfo(SaveDeviceMeasureInfo saveInfo); + //自动检定-结果保存-更新检定结果信息-多功能校准源检定装置 只更新 示值和绝对误差 + static bool UpdateVerMultiCal(SaveDeviceMeasureCalibrator measureCalibrator); };