#ifndef _ITEM_COMMON_H_ #define _ITEM_COMMON_H_ #include "ViewModels.h" #include #include #include #include "BarcodeEditor.h" QString generateTxtFromDateItemModel(const DateItemModel& model, const QDateTime& time); /** * @brief 根据条形码视图模型的内容模版生成字符串, * 生成的字符串可用于创建条形码或二维码 * * @example * input: "ABC_{c}_{t}" * output: "ABC_1230_2026/04/30" * * @remark * 函数根据vm中的 contentPattern 是否存在变量模版,如果存在计数器变量,则使用 counterViewModel 格式化,同理也处理时间变量。 * * @param vm 包含格式化所需的内容模版及相关配置 * @param counterValues 所有计数器的当前值,counterValues[0] 为计数器1的当前值,counterValues[1]为计数器2的当前值...... * @param time 要用于格式化的时间,通常是当前时间 * @return QString 格式化后的字符串 * */ QString generateTxtFromBarcodeViewModel(const BarcodeViewModel& vm, const std::array counterValues, const QDateTime& time); #endif // _ITEM_COMMON_H_