Newer
Older
AutomaticVerification / softwareDirectory / AutoVerScheme / basecommonapi.cpp
李现川 on 14 Mar 2024 56 KB no commit message
#include "basecommonapi.h"

BaseCommonApi::BaseCommonApi()
{

}

//获取部门任务数据  “1640229293790650370”
QList<Dept> BaseCommonApi::getAllData(QString userId) {
    QList<Dept> result;
    QSqlQuery query;

    query.prepare("SELECT  bi.id ,br.sample_name , br.sample_model ,ei.help_instruction ,ei.manufacture_no ,"
               " ei.manufacturer ,bi.customer_name ,dept.FULL_NAME,bi.require_over_time ,bi.is_urgent   "
               " FROM biz_business_order_info bi LEft JOIN biz_business_order_sample_relation br ON bi.id = br.order_id   "
               " LEft JOIN eqpt_equipment_info ei ON br.sample_no = ei.equipment_no LEft JOIN sys_dept dept ON ei.dept_id = dept.ID   "
               " LEft JOIN sys_user ON bi.create_user_id = sys_user.ID "
               " WHERE sys_user.ID = :userId");
    // 将参数绑定到占位符
     query.bindValue(":userId", userId);
if (query.exec()) {
    while (query.next()) {
        Dept Dept;
        Dept.id = query.value("id").toString();
        Dept.sample_name = query.value("sample_name").toString();
        Dept.sample_model = query.value("sample_model").toString();
        Dept.help_instruction = query.value("help_instruction").toString();
        Dept.manufacture_no = query.value("manufacture_no").toString();
        Dept.manufacturer = query.value("manufacturer").toString();
        Dept.customer_name = query.value("customer_name").toString();
        Dept.FULL_NAME = query.value("FULL_NAME").toString();
        Dept.require_over_time = query.value("require_over_time").toDateTime();
        Dept.is_urgent = query.value("is_urgent").toString();
        result.append(Dept);
    }
    }else {
    qDebug() << "Query execution failed: " << query.lastError().text();
}

    return result;
}
//获取我的任务
QList<MyTask> BaseCommonApi::getMyTasks(QString userId){
    QList<MyTask> result;
    QSqlQuery query;
    query.prepare("SELECT "
               "bi.id, br.sample_name, br.sample_model, ei.help_instruction, ei.manufacture_no,"
               "ei.manufacturer, bi.customer_name,"
               "dept.FULL_NAME, bi.require_over_time,"
               "bi.is_urgent  FROM biz_business_order_info bi"
              " LEfT JOIN  biz_business_order_sample_relation br ON bi.id = br.order_id"
              " LEfT JOIN  eqpt_equipment_info ei ON br.sample_no = ei.equipment_no LEfT JOIN "
               "sys_dept dept ON ei.dept_id = dept.ID WHERE bi.create_user_id = :user_id");

    // 将参数绑定到占位符
     query.bindValue(":user_id", userId);
if (query.exec()) {
    while (query.next()) {
        MyTask task;
          task.id = query.value("id").toString();
          task.sample_name = query.value("sample_name").toString();
          task.sample_model = query.value("sample_model").toString();
          task.help_instruction = query.value("help_instruction").toString();
          task.manufacture_no = query.value("manufacture_no").toString();
          task.manufacturer = query.value("manufacturer").toString();
          task.customer_name = query.value("customer_name").toString();
          task.FULL_NAME = query.value("FULL_NAME").toString();
          task.require_over_time = query.value("require_over_time").toDateTime();
          task.is_urgent = query.value("is_urgent").toString();
          result.append(task);
    }
}
else {
        qDebug() << "Query execution failed: " << query.lastError().text();
    }
    return result;
}

//获取创建任务首页数据
QList<CreateTaskList> BaseCommonApi::getCreateTaskList(QString userId)
{
    userId="1640229293790650370";
    QList<CreateTaskList> result;
    QSqlQuery query;
    query.prepare("SELECT bi.id,bi.order_no,bi.customer_name,dept.FULL_NAME,bi.require_over_time,bi.deliverer,bi.is_urgent "
                  " FROM biz_business_order_info bi LEFT JOIN sys_dept dept ON bi.customer_id = dept.ID "
                  " WHERE bi.create_user_id = :userId");
    // 将参数绑定到占位符
     query.bindValue(":userId", userId);
     if (query.exec()) {
            while (query.next()) {
                CreateTaskList task;
                task.id = query.value("id").toString();
                task.order_no = query.value("order_no").toString();
                task.customer_name = query.value("customer_name").toString();
                task.DEPT_FULL_NAME = query.value("FULL_NAME").toString();
                task.require_over_time = query.value("require_over_time").toDateTime();
                task.deliverer = query.value("deliverer").toString();
                task.is_urgent = query.value("is_urgent").toString();
                result.append(task);
            }
        } else {
            qDebug() << "Query execution failed: " << query.lastError().text();
        }
     return result;
}
//获取创建任务首页数据
QList<CreateTaskList>getCreateTaskList(QString userId)
{
    QList<CreateTaskList> result;
    QSqlQuery query;
    query.prepare("SELECT bi.id,bi.order_no,bi.customer_name,dept.FULL_NAME,bi.require_over_time,bi.deliverer,bi.is_urgent "
                  " FROM biz_business_order_info bi LEFT JOIN sys_dept dept ON bi.customer_id = dept.ID "
                  " WHERE bi.create_user_id =  :userId  ");
    // 将参数绑定到占位符
     query.bindValue(":userId", userId);
     if (query.exec()) {
            while (query.next()) {
                CreateTaskList task;
                task.id = query.value("id").toString();
                task.order_no = query.value("order_no").toString();
                task.customer_name = query.value("customer_name").toString();
                task.DEPT_FULL_NAME = query.value("FULL_NAME").toString();
                task.require_over_time = query.value("require_over_time").toDateTime();
                task.deliverer = query.value("deliverer").toString();
                task.is_urgent = query.value("is_urgent").toString();
                result.append(task);
            }
        } else {
            qDebug() << "Query execution failed: " << query.lastError().text();
        }

        return result;
}

//创建任务单-查看/编辑 顶部数据  传参该条数据的id
QList<CatTask>BaseCommonApi::getCatTask(QString id)
{
    QList<CatTask> result;
    QSqlQuery query;
    query.prepare("SELECT  bi.order_no ,bi.customer_name ,dept.FULL_NAME ,bi.require_over_time ,"
                  " bi.deliverer ,bi.deliverer_tel ,bi.undertaker_name ,bi.undertake_time ,  bi.is_urgent AS ,"
                  " bi.receive_illustrate  FROM biz_business_order_info bi LEFT JOIN sys_dept dept ON bi.customer_id = dept.ID"
                  " WHERE  bi.id =   :id  ");
    // 将参数绑定到占位符
     query.bindValue(":id", id);
     if (query.exec()) {
            while (query.next()) {
                CatTask task;
                task.order_no = query.value("order_no").toString();
                task.customer_name = query.value("customer_name").toString();
                task.DEPT_FULL_NAME = query.value("FULL_NAME").toString();
                task.require_over_time = query.value("require_over_time").toDateTime();
                task.deliverer = query.value("deliverer").toString();
                task.deliverer_tel = query.value("deliverer_tel").toString();
                task.undertaker_name = query.value("undertaker_name").toString();
                task.undertake_time = query.value("undertake_time").toDateTime();
                task.is_urgent = query.value("is_urgent").toString();
                task.receive_illustrate = query.value("receive_illustrate").toString();
                result.append(task);
            }
        } else {
            qDebug() << "Query execution failed: " << query.lastError().text();
        }

        return result;
}




//获取创建任务 -任务单列表

QList<CatTaskList>BaseCommonApi::getCatTaskList(QString orderId)
{
    QList<CatTaskList> result;
    QSqlQuery query;
     query.prepare("SELECT br.id , br.sample_name ,br.sample_model ,ei.manufacture_no,ei.manufacturer ,br.appendix_descn ,"
                "br.special_require ,br.measure_complete_time ,bbdmi.conclusion ,ei.limit_instruction FROM biz_business_order_sample_relation br"
                " Left JOIN eqpt_equipment_info ei ON br.sample_no = ei.equipment_no "
                "Left JOIN biz_business_device_measure_info bbdmi ON  br.order_id = bbdmi.order_id "
                "WHERE br.order_id = :order_id");
     // 将参数绑定到占位符
      query.bindValue(":order_id", orderId);
      if (query.exec()) {
             while (query.next()) {
                 CatTaskList task;
                 task.id = query.value("id").toString();
                 task.sample_name = query.value("sample_name").toString();
                 task.sample_model = query.value("sample_model").toString();
                 task.manufacture_no = query.value("manufacture_no").toString();
                 task.manufacturer = query.value("manufacturer").toString();
                 task.appendix_descn = query.value("appendix_descn").toString();
                 task.special_require = query.value("special_require").toString();
                 task.measure_complete_time = query.value("measure_complete_time").toDateTime();
                 task.conclusion = query.value("conclusion").toString();
                 task.limit_instruction = query.value("limit_instruction").toString();
                 result.append(task);
             }
         } else {
             qDebug() << "Query execution failed: " << query.lastError().text();
         }

         return result;
}

//先查询指定下拉框的字段
 QList<SelectSpecifyFields> BaseCommonApi::getSelectSpecifyFields()
 {
     QList<SelectSpecifyFields> result;

      QSqlQuery query("SELECT bi.id,bi.order_no  ,bi.customer_name ,dept.FULL_NAME ,"
                  "bi.require_over_time , bi.deliverer ,bi.is_urgent  FROM biz_business_order_info bi,sys_dept dept WHERE bi.customer_id = dept.ID");
       if (query.exec()) {
              while (query.next()) {
                  SelectSpecifyFields customerInfo;
                  customerInfo.id = query.value("id").toString();
                  customerInfo.customer_no = query.value("customer_no").toString();
                  customerInfo.customer_name = query.value("customer_name").toString();
                  customerInfo.FULL_NAME = query.value("FULL_NAME").toString();
                  result.append(customerInfo);
              }
          } else {
              qDebug() << "Query execution failed: " << query.lastError().text();
          }

          return result;
 }
//新增任务单
bool BaseCommonApi::InsertTaskBasic(InsertTask insertTask)
 {
     QSqlQuery query;
     query.prepare("INSERT INTO biz_business_order_info "
                      "(id,order_no, customer_name, require_over_time, deliverer, deliverer_tel, "
                      "undertaker_name, undertake_time, is_urgent, receive_illustrate, customer_id) "
                      "VALUES "
                      "(:id,:order_no, :customer_name, :require_over_time, :deliverer, :deliverer_tel, "
                      ":undertaker_name, :undertake_time, :is_urgent, :receive_illustrate, :receive_illustrate)");

        query.bindValue(":id", insertTask.id);
        query.bindValue(":order_no", insertTask.order_no);
        query.bindValue(":customer_name", insertTask.customer_name);
        query.bindValue(":require_over_time", insertTask.require_over_time);
        query.bindValue(":deliverer", insertTask.deliverer);
        query.bindValue(":deliverer_tel", insertTask.deliverer_tel);
        query.bindValue(":undertaker_name", insertTask.undertaker_name);
        query.bindValue(":undertake_time", insertTask.undertake_time);
        query.bindValue(":is_urgent", insertTask.is_urgent);
        query.bindValue(":receive_illustrate", insertTask.receive_illustrate);
        query.bindValue(":customer_id", insertTask.customer_id);

        bool isSuccess = query.exec();
        if (!isSuccess) {
            qDebug() << "InsertTaskBasic query failed: " << query.lastError().text();
        }

        return isSuccess;
 }
//新增任务单样品表
bool BaseCommonApi::InsertOrderSampleRelation(OrderSampleRelation orderSample)
{
    QSqlQuery query;
       query.prepare("INSERT INTO biz_business_order_sample_relation "
                     "(id, order_id, sample_id, sample_name, sample_model, measure_complete_time) "
                     "VALUES "
                     "(:id, :order_id, :sample_id, :sample_name, :sample_model, :measure_complete_time)");

       // Bind values to the parameters
       query.bindValue(":id", orderSample.id);
       query.bindValue(":order_id", orderSample.order_id);
       query.bindValue(":sample_id", orderSample.sample_id);
       query.bindValue(":sample_name", orderSample.sample_name);
       query.bindValue(":sample_model", orderSample.sample_model);
       query.bindValue(":measure_complete_time", orderSample.measure_complete_time);

       bool isSuccess = query.exec();

       if (!isSuccess) {
           qDebug() << "InsertOrderSampleRelation query failed: " << query.lastError().text();
       }

       return isSuccess;
}

//更新 任务单
bool BaseCommonApi::UpdateTask(InsertTask updateTask)
{
    QSqlQuery query;
       query.prepare("UPDATE biz_business_order_info"
                     " SET order_no = :order_no,customer_name = :customer_name,"
                     " require_over_time = :require_over_time,deliverer = :deliverer,"
                      "   deliverer_tel = :deliverer_tel,undertaker_name = :undertaker_name,"
                        " undertake_time = :undertake_time, is_urgent = :is_urgent,"
                       "  receive_illustrate = :receive_illustrate, customer_id = :customer_id "
                    " WHERE id = :id;");
       query.bindValue(":order_no", updateTask.order_no);
         query.bindValue(":customer_name", updateTask.customer_name);
         query.bindValue(":require_over_time", updateTask.require_over_time);
         query.bindValue(":deliverer", updateTask.deliverer);
         query.bindValue(":deliverer_tel", updateTask.deliverer_tel);
         query.bindValue(":undertaker_name", updateTask.undertaker_name);
         query.bindValue(":undertake_time", updateTask.undertake_time);
         query.bindValue(":is_urgent", updateTask.is_urgent);
         query.bindValue(":receive_illustrate", updateTask.receive_illustrate);
         query.bindValue(":customer_id", updateTask.customer_id);
         query.bindValue(":id", updateTask.id);

         bool isSuccess = query.exec();
         if (!isSuccess) {
             qDebug() << "InsertOrderSampleRelation query failed: " << query.lastError().text();
         }

         return isSuccess;
}
//删除任务单
bool BaseCommonApi::DeleteTask(QString id)
{
    QSqlQuery query;
      //删除任务单表
      query.prepare("DELETE FROM biz_business_order_info WHERE id = :id");
      query.bindValue(":id", id);

      if (!query.exec()) {
          qDebug() << "删除失败: " << query.lastError().text();
          return false;
      }

      //删除任务单样品表
      query.prepare("DELETE FROM biz_business_order_sample_relation WHERE order_id = :id");
      query.bindValue(":id", id);

      if (!query.exec()) {
          qDebug() << "删除失败 " << query.lastError().text();
          return false;
      }

      return true;
}
//获取标准设备管理 首页
QList<BizDevice>BaseCommonApi::getBizDeviceManage()
{
    QList<BizDevice> result;
    QSqlQuery query;
       bool isSuccess = query.exec("SELECT bei.id ,bei.equipment_name ,bei.model ,bei.manufacture_no ,bei.manufacturer  FROM biz_equipment_info bei");
     if (isSuccess) {
             while (query.next()) {
                 BizDevice device;
                 device.id = query.value("id").toString();
                 device.equipment_name = query.value("equipment_name").toString();
                 device.model = query.value("model").toString();
                 device.manufacture_no = query.value("manufacture_no").toString();
                 device.manufacturer = query.value("manufacturer").toString();
                 result.append(device);
             }
         } else {
             qDebug() << "Query execution failed: " << query.lastError().text();
         }

         return result;
}
//获取标准设备管理-基本信息
QList<CatDeviceInfor>BaseCommonApi::getCatDeviceInfor(QString id)
{
    QList<CatDeviceInfor> result;
    QSqlQuery query;
     query.prepare("SELECT bei.equipment_name ,bei.model ,bei.manufacture_no ,bei.measure_valid_date ,"
                "bei.product_country , bei.manufacturer , bei.produce_date, bei.purchase_date ,bei.unit_price , bei.usage_status , bei.quality_status , "
                "bei.dept_name , bei.director_name , bei.supplier_name , bei.location , bei.type , bei.standard_type , bei.category , bei.level , "
                "bei.measure_cycle , bei.unpack_record_name , bei.remark  FROM biz_equipment_info bei WHERE bei.id = :id");
     // 将参数绑定到占位符
      query.bindValue(":id", id);
      if (query.exec()) {
              while (query.next()) {
                  CatDeviceInfor device;
                  device.equipment_name = query.value("equipment_name").toString();
                  device.model = query.value("model").toString();
                  device.manufacture_no = query.value("manufacture_no").toString();
                  device.measure_valid_date = query.value("measure_valid_date").toString();
                  device.product_country = query.value("product_country").toString();
                  device.manufacturer = query.value("manufacturer").toString();
                  device.produce_date = query.value("produce_date").toString();
                  device.purchase_date = query.value("purchase_date").toString();
                  device.unit_price = query.value("unit_price").toString();
                  device.usage_status = query.value("usage_status").toString();
                  device.quality_status = query.value("quality_status").toString();
                  device.dept_name = query.value("dept_name").toString();
                  device.director_name = query.value("director_name").toString();
                  device.supplier_name = query.value("supplier_name").toString();
                  device.location = query.value("location").toString();
                  device.type = query.value("type").toString();
                  device.standard_type = query.value("standard_type").toString();
                  device.category = query.value("category").toString();
                  device.level = query.value("level").toString();
                  device.measure_cycle = query.value("measure_cycle").toString();
                  device.unpack_record_name = query.value("unpack_record_name").toString();
                  device.remark = query.value("remark").toString();

                  result.append(device);
              }
          } else {
              qDebug() << "Query execution failed: " << query.lastError().text();
          }

          return result;
}




   //核查直流稳压电源检定装置
QList<CheckDCPower>BaseCommonApi::getCheckDCPower(QString equipment_id,QStringList *headList)
{

    equipment_id="1693435753272557570";
    QList<CheckDCPower> result;
    QSqlQuery query;
     query.prepare("SELECT besciddp.id ,besciddp.params,besciddp.unit,resolution,besciddp.urel,besciddp.check_type,datum_point,cycle_number "
                  " ,datum_point,resistance_value,resistance_value_unit,remark FROM biz_equipment_standard_check_item_data_dc_power besciddp WHERE equipment_id = :equipment_id ");
     // 将参数绑定到占位符  1693435753272557570
      query.bindValue(":equipment_id", equipment_id);
      if (query.exec()) {
             while (query.next()) {
                 CheckDCPower checkDCPower;
                 checkDCPower.id = query.value("id").toString();
                 checkDCPower.params = query.value("params").toString();
                 checkDCPower.check_point = query.value("check_point").toString();
                 checkDCPower.unit = query.value("unit").toString();
                 checkDCPower.resolution = query.value("resolution").toString();
                 checkDCPower.urel = query.value("urel").toString();
                 checkDCPower.check_type = query.value("check_type").toString();
                 checkDCPower.datum_point = query.value("datum_point").toString();
                 checkDCPower.cycle_number = query.value("cycle_number").toString();
                 checkDCPower.resistance_value = query.value("resistance_value").toString();
                 checkDCPower.resistance_value_unit = query.value("resistance_value_unit").toString();
                 checkDCPower.remark = query.value("remark").toString();

                 result.append(checkDCPower);
             }
         } else {
             qDebug() << "Query execution failed: " << query.lastError().text();
         }

      *headList <<"序号"<<"核查项目"<<"核查点"<<"单位"<<"分辨力"<<"Urel"<<"核查类型"<<"是否为基准点(1/0)"<<"循环次数"
               <<"电阻值/频率"<<"电阻值单位/频率单位"<<"核查项备注";


         return result;
}
    //根据id获取装置名称
QString BaseCommonApi::getApparatus(QString id)
{
    QString result;
    QSqlQuery query;
    query.prepare("SELECT besi.standard_name FROM biz_equipment_standard_info besi WHERE besi.id = ( "
                   "SELECT bei.meter_standard_id FROM biz_equipment_info bei WHERE bei.id = :id )");
        // 将参数绑定到占位符
         query.bindValue(":id", id);
         if (query.exec()) {
                while (query.next()) {
                     result = query.value("standard_name").toString();
                }
         }   else {
             result = "Not Found";
         }
         return  result;
}

//  被检设备管理 首页
QList<TestedDevice> BaseCommonApi::getTestedDevice()
{
QList<TestedDevice> result;
QSqlQuery query;
bool isSuccess = query.exec("SELECT eei.id ,eei.equipment_name ,eei.model ,eei.help_instruction ,eei.manufacture_no ,eei.manufacturer ,bboi.customer_name ,sys_dept.FULL_NAME ,eei.meter_identify ,eei.check_cycle ,eei.certificate_valid   from eqpt_equipment_info eei "
                           "  JOIN sys_dept ON sys_dept.ID = eei.dept_id "
                            "  JOIN biz_business_order_info bboi ON bboi.customer_id = eei.company_id");
 if (isSuccess) {
         while (query.next()) {
             TestedDevice testedDevice;
             testedDevice.id = query.value("id").toString();
             testedDevice.equipment_name = query.value("equipment_name").toString();
             testedDevice.model = query.value("model").toString();
             testedDevice.help_instruction = query.value("help_instruction").toString();
             testedDevice.manufacture_no = query.value("manufacture_no").toString();
             testedDevice.manufacturer = query.value("manufacturer").toString();
             testedDevice.FULL_NAME = query.value("FULL_NAME").toString();
             testedDevice.customer_name = query.value("customer_name").toString();
             testedDevice.meter_identify = query.value("meter_identify").toString();
             testedDevice.check_cycle = query.value("check_cycle").toString();
             testedDevice.certificate_valid = query.value("certificate_valid").toString();

             result.append(testedDevice);
         }
     } else {
         qDebug() << "Query execution failed: " << query.lastError().text();
     }

     return result;
}


// 被检设备管理查看设备信息
QList<TestedCatDevice> BaseCommonApi::getTestedCatDevice(QString id)
{
QList<TestedCatDevice> result;
QSqlQuery query;
 query.prepare("SELECT eei.equipment_name ,eei.model ,eei.help_instruction ,eei.manufacture_no ,eei.product_country ,eei.manufacturer ,eei.product_date ,eei.purchase_date ,eei.unit_price ,eei.usage_status ,eei.quality_condition ,sys_dept.FULL_NAME ,"
            "eei.category , eei.check_cycle ,eei.level , eei.remark  from eqpt_equipment_info eei LEFT JOIN sys_dept ON sys_dept.ID = eei.dept_id WHERE eei.id = :id ");
 // 将参数绑定到占位符
  query.bindValue(":id", id);
  if (query.exec()) {
        while (query.next()) {
            TestedCatDevice testedCatDevice;
            testedCatDevice.equipment_name = query.value("equipment_name").toString();
            testedCatDevice.model = query.value("model").toString();
            testedCatDevice.help_instruction = query.value("help_instruction").toString();
            testedCatDevice.manufacture_no = query.value("manufacture_no").toString();
            testedCatDevice.product_country = query.value("product_country").toString();
            testedCatDevice.manufacturer = query.value("manufacturer").toString();
            testedCatDevice.product_date = query.value("product_date").toString();
            testedCatDevice.purchase_date = query.value("purchase_date").toString();
            testedCatDevice.unit_price = query.value("unit_price").toString();
            testedCatDevice.usage_status = query.value("usage_status").toString();
            testedCatDevice.quality_condition = query.value("quality_condition").toString();
            testedCatDevice.FULL_NAME = query.value("FULL_NAME").toString();
            testedCatDevice.category = query.value("category").toString();
            testedCatDevice.check_cycle = query.value("check_cycle").toString();
            testedCatDevice.level = query.value("level").toString();
            testedCatDevice.remark = query.value("remark").toString();

            result.append(testedCatDevice);
        }
    } else {
        qDebug() << "Query execution failed: " << query.lastError().text();
    }

    return result;
}
//判断 哪个 装置表 传参 设备id
QList<JudgeCalibrationTable> BaseCommonApi::getJudgeCalibrationTable(QString id)
{
    id="1716997603953311746";
QList<JudgeCalibrationTable> result;
QSqlQuery query;
 query.prepare("SELECT id,belong_standard_equipment  FROM biz_business_device_measure_item_info bbdmii WHERE bbdmii.device_model_id =(SELECT eei.model_id  from eqpt_equipment_info eei WHERE eei.id =  :id )");
 // 将参数绑定到占位符
  query.bindValue(":id", id);
  if (query.exec()) {
      while (query.next()) {
          JudgeCalibrationTable calibration;
          calibration.item_category_id = query.value("item_category_id").toString();
          calibration.belong_standard_equipment = query.value("belong_standard_equipment").toString();
          QString equipmentValue = query.value("belong_standard_equipment").toString();

          result.append(calibration);
      }
  } else {
      qDebug() << "Query execution failed: " << query.lastError().text();
  }


  return result;
}

//标准装置字典类型
/**
 * 多功能校准源标准装置 = 1
 * 直流稳压电源检定装置 = 2
 * 多功能电气安全校准器标准装置 = 3
 * 0.02级活塞式压力计标准装置 = 4
 * 二等铂电阻温度计标准装置 = 5
 * 安全阀校验装置 = 6
 * 精密露点仪标准装置 = 7
 * E2等级砝码标准装置 = 8
 * 频谱分析仪标准装置 = 9
 * 信号发生器标准装置 = 10
 * 微波衰减标准装置 = 11
 * 频率短期稳定度标准装置 =12
 * 示波器标准装置 = 13
 * 铯原子频率标准装置 =14
 * 小功率标准装置 = 15
 * 低频信号发生器标准装置 = 16
 * S参数标准装置 = 17
 * 失真度标准装置 = 18
 */

//根据被检设备ID获取当前设备的 核查项目及核查点

QList<QStringList> BaseCommonApi::Search_CalibrationTable(QString DeiverId,QStringList *HeadList)
{

     QList<QStringList> DataList;
     DataList.clear();
     QList<JudgeCalibrationTable> CliTable=BaseCommonApi::getJudgeCalibrationTable(DeiverId);
     if(CliTable.count()==0)return DataList;
     switch (CliTable[0].belong_standard_equipment.toInt())
     {
        case 1:

         //CliTable[0].item_category_id
         DataList=BaseCommonApi::getVerMultiCal("1717086652508487681",HeadList);
         break;
     }

     return  DataList;
}

//被检设备管理-检定项目及检定点-多功能校准源
QList<QStringList> BaseCommonApi::getVerMultiCal(QString itemId,QStringList *headList)
{
QList<QStringList> resultData;
QStringList result;
resultData.clear();

QSqlQuery query;
 query.prepare("SELECT bbdmidc.id ,bbdmidc.params ,bbdmidc.capacity ,bbdmidc.unit ,bbdmidc.frequency , bbdmidc.range_range , bbdmidc.standard_value , bbdmidc.resolution , bbdmidc.maximum_error , bbdmidc.error_param_a , bbdmidc.error_param_b "
            " 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("params").toString());
          result.append(query.value("capacity").toString());
          result.append(query.value("unit").toString());
          result.append(query.value("frequency").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());
        resultData.append(result);
      }
  } else {
      qDebug() << "Query execution failed: " << query.lastError().text();
  }
    *headList<<"序号"<<"参数"<<"量"<<"单位"<<"频率"<<"量程"<<"标准值"<<"分辨力"<<"最大允许误差"<<"误差参数a"<<"误差参数b";
}

//检定数据管理 首页
QList<VerificationData> BaseCommonApi::getVerificationData()
{
QList<VerificationData> result;
QSqlQuery query;
  bool isSuccess = query.exec("SELECT bbdmi.id , bbdmi.sample_name ,bbdmi.model ,eei.help_instruction ,bbdmi.manufacture_no ,"
            "bbdmi.manufacturer , bboi.customer_name , dept.FULL_NAME , _user.NAME , bbdmi.trace_date ,"
            "bbdmi.measure_valid_date , eei.meter_identify , bbdmi.restriction_instruction "
            "FROM biz_business_device_measure_info bbdmi LEFT JOIN eqpt_equipment_info eei ON bbdmi.sample_id = eei.id "
            " LEFT JOIN biz_business_order_info bboi ON bbdmi.order_id = bboi.id LEFT JOIN sys_dept dept ON eei.dept_id = dept.ID "
            " LEFT JOIN sys_user _user ON bbdmi.create_user_id = _user.id");

 if (isSuccess) {
        while (query.next()) {
            VerificationData verificationData;
            verificationData.id = query.value("id").toString();
            verificationData.sample_name = query.value("sample_name").toString();
            verificationData.model = query.value("model").toString();
            verificationData.help_instruction = query.value("help_instruction").toString();
            verificationData.manufacture_no = query.value("manufacture_no").toString();
            verificationData.manufacturer = query.value("manufacturer").toString();
            verificationData.FULL_NAME = query.value("FULL_NAME").toString();
            verificationData.NAME = query.value("NAME").toString();
            verificationData.trace_date = query.value("trace_date").toDate();
            verificationData.measure_valid_date = query.value("measure_valid_date").toDateTime();
            verificationData.meter_identify = query.value("meter_identify").toString();
            verificationData.restriction_instruction = query.value("restriction_instruction").toString();

            result.append(verificationData);
        }
    } else {
        qDebug() << "Query execution failed: " << query.lastError().text();
    }

    return result;
}
//检定数据管理-检定基本信息
QList<VerificationBasicDataDetails> BaseCommonApi::getVerificationBasicDataDetails(QString id)
{
QList<VerificationBasicDataDetails> result;
QSqlQuery query;
 query.prepare("SELECT bbdmi.sample_name ,bbdmi.model ,eei.help_instruction ,bbdmi.manufacture_no ,bbdmi.manufacturer ,"
            " bboi.customer_name, eemtte.based_documents, bbdmi.trace_date , bbdmi.temperature , bbdmi.humidity ,"
            "bbdmi.measure_address , bbdmi.measure_valid_date , _user.NAME , bbdmi.conclusion , bbdmi.restriction_instruction "
            "FROM biz_business_device_measure_info bbdmi LEFT JOIN eqpt_equipment_info eei ON bbdmi.sample_id = eei.id "
            " LEFT JOIN biz_business_order_info bboi ON bbdmi.order_id = bboi.id "
            " LEFT JOIN biz_business_device_measure_item_info bbdmii ON bbdmi.item_id = bbdmii.id "
            " LEFT JOIN eqpt_equipment_model_technical_target eemtte ON bbdmii.device_model_id = eemtte.model_id "
            " LEFT JOIN sys_user _user ON bbdmi.create_user_id = _user.id WHERE bbdmi.id = :id ");
 // 将参数绑定到占位符
  query.bindValue(":id", id);
  if (query.exec()) {
         while (query.next()) {
             VerificationBasicDataDetails dataDetails;
             dataDetails.sample_name = query.value("sample_name").toString();
             dataDetails.model = query.value("model").toString();
             dataDetails.help_instruction = query.value("help_instruction").toString();
             dataDetails.manufacture_no = query.value("manufacture_no").toString();
             dataDetails.manufacturer = query.value("manufacturer").toString();
             dataDetails.customer_name = query.value("customer_name").toString();
             dataDetails.trace_date = query.value("trace_date").toDate();
             dataDetails.temperature = query.value("temperature").toString();
             dataDetails.humidity = query.value("humidity").toString();
             dataDetails.measure_address = query.value("measure_address").toString();
             dataDetails.measure_valid_date = query.value("measure_valid_date").toDateTime();
             dataDetails.based_documents = query.value("based_documents").toString();
             dataDetails.NAME = query.value("NAME").toString();
             dataDetails.conclusion = query.value("conclusion").toString();
             dataDetails.restriction_instruction = query.value("restriction_instruction").toString();

             result.append(dataDetails);
         }
     } else {
         qDebug() << "Query execution failed: " << query.lastError().text();
     }

     return result;
}
//检定数据管理-检定结果信息
QList<VerificationResultData> BaseCommonApi::getVerificationResultData(QString sampleId)
{
QList<VerificationResultData> result;
QSqlQuery query;
 query.prepare("SELECT  bbdmidc.id ,bbdmidc.params ,bbdmidc.capacity ,bbdmidc.unit ,"
            " bbdmidc.frequency , bbdmidc.range_range , bbdmidc.standard_value , bbdmidc.resolution , bbdmidc.maximum_error , "
             " bbdmidc.error_param_a , bbdmidc.error_param_b ,bbdmi.other_outcome "
             " FROM biz_business_device_measure_item_data_calibrator bbdmidc  "
             " LEFT JOIN biz_business_device_measure_info bbdmi ON bbdmi.item_id = bbdmidc.item_id "
             "WHERE  bbdmidc.item_id  = (SELECT CONVERT(item_id USING utf8mb4) COLLATE utf8mb4_0900_ai_ci   FROM biz_business_device_measure_info bbdmi "
               "  WHERE sample_id = :sampleId  )");
 // 将参数绑定到占位符
  query.bindValue(":sampleId", sampleId);
  if (query.exec()) {
        while (query.next()) {
            VerificationResultData resultData;
            resultData.id = query.value("id").toString();
            resultData.params = query.value("params").toString();
            resultData.capacity = query.value("capacity").toString();
            resultData.unit = query.value("unit").toString();
            resultData.frequency = query.value("frequency").toString();
            resultData.range_range = query.value("range_range").toString();
            resultData.standard_value = query.value("standard_value").toString();
            resultData.resolution = query.value("resolution").toString();
            resultData.maximum_error = query.value("maximum_error").toString();
            resultData.error_param_a = query.value("error_param_a").toString();
            resultData.error_param_b = query.value("error_param_b").toString();
            resultData.other_outcome = query.value("other_outcome").toString();

            result.append(resultData);
        }
    } else {
        qDebug() << "Query execution failed: " << query.lastError().text();
    }

    return result;
}

//核查数据管理 首页
QList<CheckData> BaseCommonApi::getCheckData()
{
QList<CheckData> result;
QSqlQuery query;
 bool isSuccess = query.exec("SELECT bei.id , bei.equipment_name ,bei.model ,bei.manufacture_no ,bei.meter_standard_name ,bei.meter_standard_id ,"
            " besci.create_user_name , besci.check_date , bei.dept_name,blrd.biz_lab_code "
            " FROM biz_equipment_info bei LEFT JOIN biz_equipment_standard_check_info besci ON besci.equipment_id = bei.id"
                             " LEFT JOIN biz_lab_rel_dept blrd ON blrd.dept_id = bei.dept_id");
 if (isSuccess) {
         while (query.next()) {
             CheckData dataManage;
             dataManage.id = query.value("id").toString();
             dataManage.equipment_name = query.value("equipment_name").toString();
             dataManage.model = query.value("model").toString();
             dataManage.manufacture_no = query.value("manufacture_no").toString();
             dataManage.meter_standard_name = query.value("meter_standard_name").toString();
             dataManage.meter_standard_id = query.value("meter_standard_id").toString();
             dataManage.create_user_name = query.value("create_user_name").toString();
             dataManage.check_date = query.value("check_date").toDate();
             dataManage.dept_name = query.value("dept_name").toString();

             result.append(dataManage);
         }
     } else {
         qDebug() << "Query execution failed: " << query.lastError().text();
     }

     return result;
}
//核查数据管理-核查基本信息
QList<CheckDataManageBasicInfo> BaseCommonApi::getCheckDataManageBasicInfo(QString id)
{
QList<CheckDataManageBasicInfo> result;
QSqlQuery query;
 query.prepare("SELECT bei.equipment_name ,bei.model ,bei.manufacture_no ,bei.manufacturer ,besci.temperature ,besci.humidity ,besci.check_date ,"
            " besci.check_address , besci.create_user_name , besci.conclusion  "
            "FROM biz_equipment_info bei LEFT JOIN biz_equipment_standard_check_info besci ON besci.equipment_id = bei.id "
            " LEFT JOIN biz_equipment_standard_check_info_equipment bescie ON bei.id = bescie.check_equipment_id"
            " WHERE bei.id = :id ");

 // 将参数绑定到占位符
  query.bindValue(":id", id);
  if (query.exec()) {
         while (query.next()) {
             CheckDataManageBasicInfo basicInfo;
             basicInfo.equipment_name = query.value("equipment_name").toString();
             basicInfo.model = query.value("model").toString();
             basicInfo.manufacture_no = query.value("manufacture_no").toString();
             basicInfo.manufacturer = query.value("manufacturer").toString();
             basicInfo.temperature = query.value("temperature").toString();
             basicInfo.humidity = query.value("humidity").toString();
             basicInfo.check_date = query.value("check_date").toDate();
             basicInfo.check_address = query.value("check_address").toString();
             basicInfo.create_user_name = query.value("create_user_name").toString();
             basicInfo.conclusion = query.value("conclusion").toString();

             result.append(basicInfo);
         }
     } else {
         qDebug() << "Query execution failed: " << query.lastError().text();
     }

     return result;
}
//核查数据管理-核查结果信息-核查项多功能校准源数据
QList<CheckDataManageResultManageMult> BaseCommonApi::getCheckDataManageResultManageMult(QString equipment_id)
{
QList<CheckDataManageResultManageMult> result;
QSqlQuery query;
 query.prepare("SELECT bescidc.id , bescidc.check_type ,bescidc.params ,bescidc.unit ,bescidc.frequency ,bescidc.check_point ,besci.check_date ,bescidc.urel ,"
            " bescidc.tfer ,bescidc.dccp ,bescidc.flit  "
            " FROM biz_equipment_standard_check_item_data_calibrator bescidc "
            " LEFT JOIN biz_equipment_standard_check_info besci ON besci.item_category_id = bescidc.item_category_id "
            " WHERE bescidc.equipment_id = :equipment_id ");

 // 将参数绑定到占位符  1692796512381222914
  query.bindValue(":equipment_id", equipment_id);
  if (query.exec()) {
         while (query.next()) {
             CheckDataManageResultManageMult dataCalibrator;
             dataCalibrator.id = query.value("id").toString();
             dataCalibrator.check_type = query.value("check_type").toString();
             dataCalibrator.params = query.value("params").toString();
             dataCalibrator.unit = query.value("unit").toString();
             dataCalibrator.frequency = query.value("frequency").toString();
             dataCalibrator.check_point = query.value("check_point").toString();
             dataCalibrator.check_date = query.value("check_date").toDate();
             dataCalibrator.urel = query.value("urel").toString();
             dataCalibrator.tfer = query.value("tfer").toString();
             dataCalibrator.dccp = query.value("dccp").toString();
             dataCalibrator.flit = query.value("flit").toString();

             result.append(dataCalibrator);
         }
     } else {
         qDebug() << "Query execution failed: " << query.lastError().text();
     }

     return result;

}
//技术文件管理
QList<Technique_File> BaseCommonApi::getTechnique_File()
{
    QList<Technique_File> result;
    QSqlQuery query;
     bool isSuccess = query.exec("SELECT brtf.id,brtf.file_distribute_no ,brtf.file_name ,brtf.version_no ,brtf.active_date ,brtf.remark "
                " FROM biz_resource_technique_file brtf");

     if (isSuccess) {
          while (query.next()) {
              Technique_File file;
              file.id=query.value("id").toString();
              file.file_distribute_no = query.value("file_distribute_no").toString();
              file.file_name = query.value("file_name").toString();
              file.version_no = query.value("version_no").toString();
              file.active_date = query.value("active_date").toDateTime();
              file.remark = query.value("remark").toString();

              result.append(file);
          }
      } else {
          qDebug() << "Query execution failed: " << query.lastError().text();
      }

      return result;

}
//检定程序管理首页查询
QList<VerificationProgramInfo> BaseCommonApi::getVerificationProgramInfoMain()
{
    QList<VerificationProgramInfo> result;
    QSqlQuery query;
    bool isSuccess = query.exec("SELECT id,program_name ,create_name ,create_time ,remark  FROM zd_verification_program_info");
    if (isSuccess) {
        while (query.next()) {
            VerificationProgramInfo programInfo;
            programInfo.id = query.value("id").toString();
            programInfo.program_name = query.value("program_name").toString();
            programInfo.create_name = query.value("create_name").toString();
            programInfo.create_time = query.value("create_time").toDateTime();
            programInfo.remark = query.value("remark").toString();
            result.append(programInfo);
        }
    } else {
        qDebug() << "Query execution failed: " << query.lastError().text();
    }
   return result;

}

//检定程序管理-编辑 查询
VerificationProgramInfo BaseCommonApi::getVerificationProgramInfo(QString id)
{
    VerificationProgramInfo result;
    QSqlQuery query;
    query.prepare("SELECT zvpi.id,zvpi.program_name ,zvpi.create_name ,zvpi.create_time ,zvpi.remark ,zvpi.img_path ,zvpi.tested_device_id ,zvpi.standard_device_id ,eei.equipment_name ,eei.model ,eei.help_instruction ,eei.manufacture_no ,eei.manufacturer  "
                  " FROM zd_verification_program_info zvpi "
                  " LEFT JOIN eqpt_equipment_info eei ON eei.id = zvpi.tested_device_id WHERE zvpi.id = :id "
                  "UNION ALL  "
                  " SELECT zvpi.id,zvpi.program_name ,zvpi.create_name ,zvpi.create_time ,zvpi.remark ,zvpi.img_path,zvpi.tested_device_id ,zvpi.standard_device_id ,bei.equipment_name ,bei.model ,NULL ,bei.manufacture_no ,bei.manufacturer "
                  " FROM zd_verification_program_info zvpi "
                 " LEFT JOIN biz_equipment_info bei ON bei.id = zvpi.standard_device_id "
                 " WHERE zvpi.id = :id ");
    query.bindValue(":id", id);
    if (query.exec()) {
        while (query.next()) {
            VerificationProgramInfo programInfo;
            programInfo.id = query.value("id").toString();
            programInfo.program_name = query.value("program_name").toString();
            programInfo.create_name = query.value("create_name").toString();
            programInfo.create_time = query.value("create_time").toDateTime();
            programInfo.remark = query.value("remark").toString();
            programInfo.img_path = query.value("img_path").toString();
            programInfo.tested_device_id = query.value("tested_device_id").toString();
            programInfo.standard_device_id = query.value("standard_device_id").toString();
            programInfo.equipment_name = query.value("equipment_name").toString();
            programInfo.model = query.value("model").toString();
            programInfo.help_instruction = query.value("help_instruction").toString();
            programInfo.manufacture_no = query.value("manufacture_no").toString();
            programInfo.manufacturer = query.value("manufacturer").toString();

            result = programInfo;
        }
    } else {
        qDebug() << "Query execution failed: " << query.lastError().text();
    }
              return result;
}
//查询设备通信接口
QList<VerificationProgramConfigInterface> BaseCommonApi::getVerificationProgramConfigInterface(QString deviceId)
{
    QList<VerificationProgramConfigInterface> result;
    QSqlQuery query;
    query.prepare("SELECT id,device_id ,communication_type ,serial_port ,visa ,create_time ,update_time "
     "FROM zd_communication_setting WHERE device_id =   :deviceId  ");
    query.bindValue(":deviceId", deviceId);
    if (query.exec()) {
        while (query.next()) {
            VerificationProgramConfigInterface configInterface;
            configInterface.id = query.value("id").toString();
            configInterface.device_id = query.value("device_id").toString();
            configInterface.communication_type = query.value("communication_type").toString();
            configInterface.serial_port = query.value("serial_port").toString();
            configInterface.visa = query.value("visa").toString();
            configInterface.create_time = query.value("create_time").toDateTime();
            configInterface.update_time = query.value("update_time").toDateTime();

            result.append(configInterface);
        }
    } else {
        qDebug() << "Query execution failed: " << query.lastError().text();
    }
                  return result;
}
//查询指令库
QList<InstructionLib> BaseCommonApi::getInstructionLib(QString device_id)
{
    QList<InstructionLib> result;
    QSqlQuery query;
    query.prepare("SELECT id,device_id,device_name,instruct_config,instruct_read,type,belong_vername,belong_checkname,create_time,update_time FROM zd_instruction_library WHERE device_id = :device_id ");
    query.bindValue(":device_id", device_id);
    if (query.exec()) {
        while (query.next()) {
            InstructionLib instruction;
            instruction.id = query.value("id").toString();
            instruction.device_id = query.value("device_id").toString();
            instruction.device_name = query.value("device_name").toString();
            instruction.instruct_config = query.value("instruct_config").toString();
            instruction.instruct_read = query.value("instruct_read").toString();
            instruction.type = query.value("type").toString();
            instruction.belong_vername = query.value("belong_vername").toString();
            instruction.belong_checkname = query.value("belong_checkname").toString();
            instruction.create_time = query.value("create_time").toDateTime();
            instruction.update_time = query.value("update_time").toDateTime();

            result.append(instruction);
        }
    } else {
        qDebug() << "Query execution failed: " << query.lastError().text();
    }
            return result;
}



//新建检定程序
bool BaseCommonApi::InsertVerificationProgramInfo(VerificationProgramInfo verInfo)
{
    QSqlQuery query;
    query.prepare("INSERT INTO zd_verification_program_info (id, program_name, create_name, create_time, remark, img_path, tested_device_id, standard_device_id)"

                  " VALUES (:id, :program_name, :create_name, :create_time, :remark, :img_path, :tested_device_id, :standard_device_id);");
       QString formattedDateTime = verInfo.create_time.toString("yyyy-MM-dd HH:mm:ss");
       query.bindValue(":id", verInfo.id);
       query.bindValue(":program_name", verInfo.program_name);
       query.bindValue(":create_name", verInfo.create_name);
       query.bindValue(":create_time", formattedDateTime);
       query.bindValue(":remark", verInfo.remark);
       query.bindValue(":img_path", verInfo.img_path);
       query.bindValue(":tested_device_id", verInfo.tested_device_id);
       query.bindValue(":standard_device_id", verInfo.standard_device_id);

       bool isSuccess = query.exec();
       if (!isSuccess) {
           qDebug() << "InsertTaskBasic query failed: " << query.lastError().text();
       }

       return isSuccess;
}

//新增通讯接口
bool BaseCommonApi::InsertVerificationProgramConfigInterface(VerificationProgramConfigInterface configInterdace)
{
    QSqlQuery query;
    query.prepare("INSERT INTO zd_communication_setting (id,device_id,communication_type,serial_port,visa,create_time,update_time) "
                "  VALUES (:id,:device_id,:communication_type,:serial_port,:visa,:create_time,:update_time)");
        QString formattedDateTime = configInterdace.create_time.toString("yyyy-MM-dd HH:mm:ss");
        QString formattedUpdateDateTime = configInterdace.update_time.toString("yyyy-MM-dd HH:mm:ss");
       query.bindValue(":id", configInterdace.id);
       query.bindValue(":device_id", configInterdace.device_id);
       query.bindValue(":communication_type", configInterdace.communication_type);
       query.bindValue(":serial_port", configInterdace.serial_port);
       query.bindValue(":visa", configInterdace.visa);
       query.bindValue(":create_time", formattedDateTime);
       query.bindValue(":update_time", formattedUpdateDateTime);
       bool isSuccess = query.exec();
       if (!isSuccess) {
           qDebug() << "InsertTaskBasic query failed: " << query.lastError().text();
       }

       return isSuccess;
}
//更新检定程序
bool BaseCommonApi::UpdateVerificationProgramInfo(VerificationProgramInfo verInfo)
{
    QSqlQuery query;
       query.prepare("UPDATE zd_verification_program_info "
                     " SET program_name = :program_name,create_name = :create_name, "
                        "  create_time = :create_time, remark = :remark,img_path = :img_path,tested_device_id = :tested_device_id,standard_device_id = :standard_device_id "
                     "WHERE id = :id;");
         query.bindValue(":program_name", verInfo.program_name);
         query.bindValue(":create_name", verInfo.create_name);
         query.bindValue(":create_time", verInfo.create_time);
         query.bindValue(":remark", verInfo.remark);
         query.bindValue(":img_path", verInfo.img_path);
         query.bindValue(":tested_device_id", verInfo.tested_device_id);
         query.bindValue(":standard_device_id", verInfo.standard_device_id);
         query.bindValue(":id", verInfo.id);
         bool isSuccess = query.exec();
         if (!isSuccess) {
             qDebug() << "InsertOrderSampleRelation query failed: " << query.lastError().text();
         }
         return isSuccess;
}
//更新通讯接口
bool BaseCommonApi::UpdateVerificationProgramConfigInterface(VerificationProgramConfigInterface configInterdace)
{
    QSqlQuery query;
       query.prepare("UPDATE zd_communication_setting SET communication_type = :communication_type, "
                             " serial_port = :serial_port,visa = :visa,update_time = :update_time "
                     " WHERE device_id = :device_id;");
       QString formattedDateTime = configInterdace.update_time.toString("yyyy-MM-dd HH:mm:ss");
         query.bindValue(":communication_type", configInterdace.communication_type);
         query.bindValue(":serial_port", configInterdace.serial_port);
         query.bindValue(":visa", configInterdace.visa);
         query.bindValue(":update_time", formattedDateTime);
         query.bindValue(":device_id", configInterdace.device_id);
         bool isSuccess = query.exec();
         if (!isSuccess) {
             qDebug() << "InsertOrderSampleRelation query failed: " << query.lastError().text();
         }
         return isSuccess;
}
//删除检定程序
bool BaseCommonApi::DeleteVerificationProgramInfo(QString id)
{
    QSqlQuery query;
      //删除检定程序
      query.prepare("DELETE FROM zd_verification_program_info WHERE id = :id");
      query.bindValue(":id", id);

      if (!query.exec()) {
          qDebug() << "删除失败: " << query.lastError().text();
          return false;
      }
      return true;
}
//新增指令库
bool BaseCommonApi::InsertInstructionLib(InstructionLib instructionLib)
{
    QSqlQuery query;
    query.prepare("INSERT INTO zd_instruction_library (id,device_id,device_name,instruct_config,instruct_read,type,verification_id,check_id,create_time,update_time) "
                  " VALUES (:id,:device_id,:device_name,:instruct_config,:instruct_read,:type,:belong_vername,:belong_checkname,:create_time,:update_time)");

       query.bindValue(":id", instructionLib.id);
       query.bindValue(":device_id", instructionLib.device_id);
       query.bindValue(":device_name", instructionLib.device_name);
       query.bindValue(":instruct_config", instructionLib.instruct_config);
       query.bindValue(":instruct_read", instructionLib.instruct_read);
       query.bindValue(":type", instructionLib.type);
       query.bindValue(":belong_vername", instructionLib.belong_vername);
       query.bindValue(":belong_checkname", instructionLib.belong_checkname);
       query.bindValue(":create_time", instructionLib.create_time);
       query.bindValue(":update_time", instructionLib.update_time);
       bool isSuccess = query.exec();
       if (!isSuccess) {
           qDebug() << "InsertTaskBasic query failed: " << query.lastError().text();
       }

       return isSuccess;
}
//删除指令库
bool BaseCommonApi::DeleteInstructionLib(QString device_id)
{
    QSqlQuery query;
      //删除检定程序
      query.prepare("DELETE FROM zd_instruction_library WHERE device_id =  :device_id ");
      query.bindValue(":device_id", device_id);

      if (!query.exec()) {
          qDebug() << "删除失败: " << query.lastError().text();
          return false;
      }
      return true;
}
//更新指令库
bool BaseCommonApi::UpdateInstructionLib(InstructionLib instructionLib)
{
    QSqlQuery query;
       query.prepare("UPDATE zd_instruction_library SET device_id=:device_id,"
                     "device_name = :device_name,instruct_config = :instruct_config,instruct_read = :instruct_read,"
                     " type = :type,belong_vername = :belong_vername,belong_checkname = :belong_checkname,"
                     "update_time = :update_time WHERE id = :id");

       QString formattedUpdateDateTime = instructionLib.update_time.toString("yyyy-MM-dd HH:mm:ss");
         query.bindValue(":device_id", instructionLib.device_id);
         query.bindValue(":device_name", instructionLib.device_name);
         query.bindValue(":instruct_config", instructionLib.instruct_config);
         query.bindValue(":instruct_read", instructionLib.instruct_read);
         query.bindValue(":type", instructionLib.type);
         query.bindValue(":belong_vername", instructionLib.belong_vername);
         query.bindValue(":belong_checkname", instructionLib.belong_checkname);
         query.bindValue(":update_time", formattedUpdateDateTime);
         query.bindValue(":id", instructionLib.id);
         bool isSuccess = query.exec();
         if (!isSuccess) {
             qDebug() << "InsertOrderSampleRelation query failed: " << query.lastError().text();
         }
         return isSuccess;
}
//雪花算法生成id
qint64 BaseCommonApi::generateId()
{
    return this->idWorker.nextId();
}