|
|
#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, double& f);
|
|
|
|
|
|
// 判断数据是否在两者之间
|
|
|
static bool judgeNewData(int nCurRow,
|
|
|
VVecVariant& vvec, QString& sError);
|
|
|
|
|
|
// 检查压力数据是否有问题
|
|
|
static bool checkPressDateData(VecDouble vecX, QVector<TableRowState>& vecRowState);
|
|
|
static bool checkPressDateData(VVecVariant& vvecData, QVector<TableRowState>& vecRowState);
|
|
|
|
|
|
//检查流量数据是否有相同的两段是一起的
|
|
|
static bool checkFluidData(VecDouble vecY);
|
|
|
|
|
|
// 合并流量段相同的
|
|
|
static bool mergeFluidData(VecDouble& vecY, VecDouble& 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;
|
|
|
|
|
|
};
|