You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
nmWATI/Include/mData/mProjectManager/iModuleHelper.h

79 lines
2.9 KiB
C

#pragma once
#include "mProjectManager_global.h"
#include "iBase_global.h"
#include "mModuleDefines.h"
class ZxDataObjectEx;
/// @brief 该类是模块层级如MPA/WTAI
/// 公有函数库的实现,比较杂
/// @note 尽量以静态函数实现,避免成员变量
class M_PROJECTMANAGER_EXPORT iModuleHelper
{
public:
iModuleHelper();
// 转换 Just for test
static bool convertValue(QString s, float& f);
// 判断数据是否在两者之间
static bool judgeNewData(int nCurRow,
VVecVariant& vvec, QString& sError);
// 检查压力数据是否有问题
static bool checkPressDateData(VecFloat vecX, QVector<TableRowState>& vecRowState);
static bool checkPressDateData(VVecVariant& vvecData, QVector<TableRowState>& vecRowState);
//检查流量数据是否有相同的两段是一起的
static bool checkFluidData(VecFloat vecY);
// 合并流量段相同的
static bool mergeFluidData(VecFloat& vecY, VecFloat& vecX);
static bool mergeFluidData(VVecVariant& vvecData);
// 如果表格里面需要填的数据都有数值了开始刷新图(否则不刷新)
static bool isTableDataValid(VVecVariant vvec, bool bIgnoreNullRows = false);
// 判断正式还是临时(目前临时版本指的是新疆版本)
static bool isAppStandardVer();
static bool isAppTempVer();
/// @brief 获取模块编译日期请每次打包时务必重新编译iProjectManager
/// 否则,版本日期可能会不对
/// @note 代码来自框架
static int getModuleCompiledDate();
// 判断是否模型系列主要为了区分IPR等
static bool isMpaSeries(QString s);
// 中英文转换,仅仅限于iModuleDefines中定义的
static QString getStrENOf(QString s);
static QString getStrCNOf(QString s);
static void setCurJobRun(QObject* p, QString sJobId);
static QObject* getCurJobRun();
static QString getCurJobId();
/// @brief 考虑修改人及修改时间,对数据进行统一调整
/// @param sTable具体表为了查找表定义
/// @param vvecData 待调整修改的数据
/// @param bForceFilled 是否强制填写 修改人及修改时间,否则,只有 修改人 非空时才填写时间
static bool adjustDataWithModifier(QString sTable, \
VVecVariant& vvecData, \
bool bForceFilled);
/// @brief 考虑修改人及修改时间,对数据进行调整
/// @param pObj具体的数据对象
/// @param bForceFilled 是否强制填写 修改人及修改时间,否则,只有 修改人 非空时才填写时间
static bool adjustDataWithModifier(ZxDataObjectEx* pObj, \
bool bForceFilled);
public:
/// @brief Excel比较特殊特定把过滤条件封装
const static QString gExcelFileFilterOpen;
const static QString gExcelFileFilterSave;
};