#ifndef EQUIPMENTDAO_H #define EQUIPMENTDAO_H #include "BaseDao.h" // 标准设备 设备信息 class BizEquipmentInfoDto { public: QString id; QString labCode; // 实验室代码 QString groupCode; // 组别代码 QString equipmentNo; // 设备编号 QString equipmentName; // 设备名称 QString model; // 规格型号 QString manufactureNo; // 出厂编号 QDate measureValidDate; // 检定有效期 QString productCountry; // 生产国家 QString manufacturer; // 生产厂家 QString produceDate; // 生产日期 QString purchaseDate; // 购进日期 QString unitPrice; // 设备单价 QString usageStatus; // 使用状态 QString qualityStatus; // 质量状况 QString deptName; // 所属部门 QString directorName; // 负责人 QString supplierName; // 设备供方 QString location; // 位置信息 QString testRange; // 测量范围 QString type; // 设备类型 QString standardType; // 标准类型 QString category; // 设备分类 QString level; // 重要等级 QString measureCycle; // 检定周期 QString unpackRecordName; // 对应开箱记录 QString remark; // 备注 QString standardName; // 所属标准装置名称 QStringList belongStandardIdList; // 所属标准装置ID QStringList belongStandardNameList; // 所属标准装置ID }; /** * @brief The BizEquipmentRequest class * 标准设备查询条件 */ class BizEquipmentRequest { public: QString equipmentName; // 设备名称 QString model; // 规格型号 QString manufactureNo; // 出厂编号 QString groupCode; // 专业代码(电学、脉冲、信号源、时间频率等) QString labCode; // 实验室组织代码(北京实验室) QString validDateStart; // 有效期开始日期 QString validDateEnd; // 有效期结束日期 }; /** * @brief The BizEquipmentUncertaintyDto class * 标准设备不确定度zd_standard_equipment_uncertainty表 */ class BizEquipmentUncertaintyDto { public: QString id; QString equId; //标准设备ID QString standardValue; //标准值 QString standardUnit; //标准值单位 QString uncertainty; //不确定度值 QString uncertaintyUnit; //不确定度单位 QString uncertaintyType; //不确定度类型 QString uncertaintyTypeName; QString kValue; //k_value }; class EquipmentDao : public BaseDao { public: EquipmentDao(); QStringList getEquipmentModelByIds(QStringList deviceIds); BizEquipmentInfoDto getBizEqptInfoById(QString bizEqptId); // 【查询符合条件的设备记录总数】 quint32 getBizEqptInfoCount(const BizEquipmentRequest request); // 【分页查询符合条件的设备记录】 QList<BizEquipmentInfoDto> getBizEqptInfoListPage(const BizEquipmentRequest request, PageUtil & page); // 【查询所有有效期范围内的标准设备】 QList<BizEquipmentInfoDto> getValidBizEqptInfoList(const BizEquipmentRequest request); // 【查询标准设备查询所属的标准装置ID】 QStringList getBelongStandardIdByStdEquipmentId(const QString stdEqptId); // 【根据设备id删除设备】 bool deleteBizEquipment(const QString bizEqptId); // 【新增标准设备】 QString createBizStandardEquipment(const BizEquipmentInfoDto newBizEqpt, const QStringList stdIdList, const QList<BizEquipmentUncertaintyDto> beuDataList); // 【编辑标准设备】 bool editBizStandardEquipment(const BizEquipmentInfoDto bizEqpt, const QStringList relRemoveList, const QStringList relAddList, const QList<BizEquipmentUncertaintyDto> beuDataList); // 【编辑标准设备所属标准装置信息】 bool updateBelongStandardRelation(const QString bizEqptId, const QStringList stdIdList); //【查询】查询标准设备不确定度By标准设备ID QList<BizEquipmentUncertaintyDto> getBizEquipmentUncertaintyByEqpt(QString bizEquId); //【新增】标准设备不确定度新增 bool insertBizEquipmentUncertainty(BizEquipmentUncertaintyDto beuData); //【删除】标准设备不确定度删除 bool deleteBizEquipmentUncertainty(QString bizEquId); // 【查询所有的标准装置 ID和装置名】 QList<QStringList> getBizEqptStandardList(); private: QString generateBizEqptInfoListPageWhereClause(BizEquipmentRequest request); void bindValueBizEqptInfoListPage(QSqlQuery query, BizEquipmentRequest request); }; #endif // EQUIPMENTDAO_H