From 5d3012abb73d659d480d0c24843c79a8bf5c8f1c Mon Sep 17 00:00:00 2001 From: lh <2334563547@qq.com> Date: Wed, 9 Sep 2026 14:07:59 +0800 Subject: [PATCH] =?UTF-8?q?fix(nmNum):=20=E4=BF=AE=E6=AD=A3=E4=B8=BB?= =?UTF-8?q?=E4=BA=95=E5=A4=9A=E7=9B=B8=E5=B7=A5=E4=BD=9C=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E7=94=9F=E6=95=88=E6=9D=A1=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 根据 Flow Gauge Code 和四向量矩阵结构决定工作数据是否生效 - 移除对流动段多相标志的额外依赖 - 精简数据上下文 Provider 和 Controller 的多相数据接口 --- Include/nmNum/nmData/nmDataAnalyzeContextProvider.h | 1 - Include/nmNum/nmSubWnd/nmSubWndDataAnalyzeController.h | 1 - Src/nmNum/nmData/nmDataAnalyzeManager.cpp | 7 ++----- Src/nmNum/nmSubWnd/nmSubWndDataAnalyzeController.cpp | 3 --- 4 files changed, 2 insertions(+), 10 deletions(-) diff --git a/Include/nmNum/nmData/nmDataAnalyzeContextProvider.h b/Include/nmNum/nmData/nmDataAnalyzeContextProvider.h index 19c0ce1..63f8770 100644 --- a/Include/nmNum/nmData/nmDataAnalyzeContextProvider.h +++ b/Include/nmNum/nmData/nmDataAnalyzeContextProvider.h @@ -28,7 +28,6 @@ class NM_DATA_EXPORT nmDataAnalyzeContextProvider { // 数据按纵向向量组织:[0]时间、[1]油、[2]气、[3]水;这里只复制窗口快照,不修改业务数据。 virtual bool getCurrentSegmentMultiPhaseData( void* pFitting, - bool& bMultiPhase, QString& sFlowCurveName, VVecDouble& vvecMultiPhaseData) = 0; diff --git a/Include/nmNum/nmSubWnd/nmSubWndDataAnalyzeController.h b/Include/nmNum/nmSubWnd/nmSubWndDataAnalyzeController.h index 15f1ce1..6df9578 100644 --- a/Include/nmNum/nmSubWnd/nmSubWndDataAnalyzeController.h +++ b/Include/nmNum/nmSubWnd/nmSubWndDataAnalyzeController.h @@ -22,7 +22,6 @@ class NM_SUB_WND_EXPORT nmSubWndDataAnalyzeController : public nmDataAnalyzeCont // 获取当前流动段分析中的多相流量矩阵 bool getCurrentSegmentMultiPhaseData( void* pFitting, - bool& bMultiPhase, QString& sFlowCurveName, VVecDouble& vvecMultiPhaseData); diff --git a/Src/nmNum/nmData/nmDataAnalyzeManager.cpp b/Src/nmNum/nmData/nmDataAnalyzeManager.cpp index a42a9d4..81897a9 100644 --- a/Src/nmNum/nmData/nmDataAnalyzeManager.cpp +++ b/Src/nmNum/nmData/nmDataAnalyzeManager.cpp @@ -1971,11 +1971,10 @@ void nmDataAnalyzeManager::initCurWellData() } // 主井必须跟随当前流动段分析实际使用的压力、流量 Gauge Code, - // 而不是默认选择工程树中的第一条记录。多相时再覆盖同 Code 工作矩阵。 + // 而不是默认选择工程树中的第一条记录。有效的四向量工作矩阵覆盖同 Code 记录。 QString sCurrentPressureGaugeCode; QString sCurrentFlowGaugeCode; int nCurrentFlowIndex = 0; - bool bCurrentMultiPhase = false; VVecDouble vvecCurrentMultiPhaseData; iSubWndFitting* pSubWndFitting = nmDataAnalyzeManager::getCurrentFitting(); nmDataAnalyzeContextProvider* pContextProvider = @@ -1989,10 +1988,8 @@ void nmDataAnalyzeManager::initCurWellData() sCurrentFlowGaugeCode); if(pContextProvider->getCurrentSegmentMultiPhaseData( pSubWndFitting, - bCurrentMultiPhase, sCurrentFlowGaugeCode, - vvecCurrentMultiPhaseData) && - bCurrentMultiPhase) { + vvecCurrentMultiPhaseData)) { applyCurrentMultiPhaseFlowData( vecFlowRecords, sCurrentFlowGaugeCode, diff --git a/Src/nmNum/nmSubWnd/nmSubWndDataAnalyzeController.cpp b/Src/nmNum/nmSubWnd/nmSubWndDataAnalyzeController.cpp index 4dfa095..d56701e 100644 --- a/Src/nmNum/nmSubWnd/nmSubWndDataAnalyzeController.cpp +++ b/Src/nmNum/nmSubWnd/nmSubWndDataAnalyzeController.cpp @@ -93,11 +93,9 @@ bool nmSubWndDataAnalyzeController::getCurrentSegmentGaugeCodes( // 复制当前流动段分析的多相流量快照,保持 nmData 与具体窗口类之间的模块边界。 bool nmSubWndDataAnalyzeController::getCurrentSegmentMultiPhaseData( void* pFitting, - bool& bMultiPhase, QString& sFlowCurveName, VVecDouble& vvecMultiPhaseData) { - bMultiPhase = false; sFlowCurveName.clear(); vvecMultiPhaseData.clear(); @@ -111,7 +109,6 @@ bool nmSubWndDataAnalyzeController::getCurrentSegmentMultiPhaseData( return false; } - bMultiPhase = pSegInfo->m_bMultiPhase; sFlowCurveName = pSegInfo->m_sCurveNameF; vvecMultiPhaseData = pSegInfo->m_vvecMpData; return true;