From f35a5b36bf85e6894bca1296c64a7418ccb3f4c1 Mon Sep 17 00:00:00 2001
From: rislai <risheng.lai@capgemini.com>
Date: 星期一, 30 十月 2023 20:00:44 +0800
Subject: [PATCH] 修复优先级因子计算BUG
---
_Main/BL/Type_PriorityResult/StaticMethod_CalculateScore.qbl | 40 +++++++++++++---------------------------
1 files changed, 13 insertions(+), 27 deletions(-)
diff --git a/_Main/BL/Type_PriorityResult/StaticMethod_CalculateScore.qbl b/_Main/BL/Type_PriorityResult/StaticMethod_CalculateScore.qbl
index 09624f6..9794c76 100644
--- a/_Main/BL/Type_PriorityResult/StaticMethod_CalculateScore.qbl
+++ b/_Main/BL/Type_PriorityResult/StaticMethod_CalculateScore.qbl
@@ -16,53 +16,42 @@
score := 0.0;
remindFormula := formula;
-
// 閬嶅巻浼樺厛绾у洜瀛愰厤缃�
- if( not remindFormula = '' )
- {
+ if( not remindFormula = '' ){
// 浠庤捣濮嬩綅缃紑濮嬪尮閰�
- if(remindFormula.StartsWith( "+" ))
- {
+ if(remindFormula.StartsWith( "+" )){
remindFormula := remindFormula.SubString( 1,remindFormula.Length()-1);
score := PriorityResult::GetDetailsValue( customerOrder,remindFormula,macroPlan,globalOTDTable);
score := lastScore + score;
-
+
// 鎴彇鎺夊凡缁忚绠楃殑浼樺厛绾у洜瀛� 閫掑綊璁$畻
remindFormula := PriorityResult::GetRemindFormula( remindFormula,macroPlan);
- PriorityResult::CalculateScore( remindFormula,customerOrder,businessType,macroPlan,score,globalOTDTable);
- }
- else if( remindFormula.StartsWith( "-" ))
- {
+ score := score + PriorityResult::CalculateScore( remindFormula,customerOrder,businessType,macroPlan,score,globalOTDTable);
+ }else if( remindFormula.StartsWith( "-" )){
remindFormula := remindFormula.SubString( 1,remindFormula.Length()-1);
score := PriorityResult::GetDetailsValue( customerOrder,remindFormula,macroPlan,globalOTDTable);
score := lastScore - score;
// 鎴彇鎺夊凡缁忚绠楃殑浼樺厛绾у洜瀛� 閫掑綊璁$畻
remindFormula := PriorityResult::GetRemindFormula( remindFormula,macroPlan);
- PriorityResult::CalculateScore( remindFormula,customerOrder,businessType,macroPlan,score,globalOTDTable);
- }
- else if( remindFormula.StartsWith( "*" ) )
- {
+ score := score + PriorityResult::CalculateScore( remindFormula,customerOrder,businessType,macroPlan,score,globalOTDTable);
+ }else if( remindFormula.StartsWith( "*" ) ){
remindFormula := remindFormula.SubString( 1,remindFormula.Length()-1);
score := PriorityResult::GetDetailsValue( customerOrder,remindFormula,macroPlan,globalOTDTable);
score := lastScore * score;
// 鎴彇鎺夊凡缁忚绠楃殑浼樺厛绾у洜瀛� 閫掑綊璁$畻
remindFormula := PriorityResult::GetRemindFormula( remindFormula,macroPlan);
- PriorityResult::CalculateScore( remindFormula,customerOrder,businessType,macroPlan,score,globalOTDTable);
- }
- else if( remindFormula.StartsWith( "/" ) )
- {
+ score := score + PriorityResult::CalculateScore( remindFormula,customerOrder,businessType,macroPlan,score,globalOTDTable);
+ }else if( remindFormula.StartsWith( "/" ) ){
remindFormula := remindFormula.SubString( 1,remindFormula.Length()-1);
score := PriorityResult::GetDetailsValue( customerOrder,remindFormula,macroPlan,globalOTDTable);
score := lastScore / score;
// 鎴彇鎺夊凡缁忚绠楃殑浼樺厛绾у洜瀛� 閫掑綊璁$畻
remindFormula := PriorityResult::GetRemindFormula( remindFormula,macroPlan);
- PriorityResult::CalculateScore( remindFormula,customerOrder,businessType,macroPlan,score,globalOTDTable);
- }
- else if( remindFormula.StartsWith( "(" ) )
- {
+ score := score + PriorityResult::CalculateScore( remindFormula,customerOrder,businessType,macroPlan,score,globalOTDTable);
+ }else if( remindFormula.StartsWith( "(" ) ){
// 鎵惧埌绗竴涓粨鏉熺殑 )
// 璁$畻鎷彿涓殑鍐呭
rightBracket := remindFormula.FindString( ")",0);
@@ -71,17 +60,14 @@
// 鎴彇 ) 鍚庣殑瀛楃缁х画杩涜璁$畻
remindFormula := remindFormula.SubString( rightBracket,remindFormula.Length()-1);
- }
- else
- {
+ }else{
// 涓嶆槸绗﹀彿 鐩存帴鑾峰彇璁$畻鍚庣殑鏁板��
score := PriorityResult::GetDetailsValue( customerOrder,remindFormula,macroPlan,globalOTDTable);
// 鎴彇鎺夊凡缁忚绠楃殑浼樺厛绾у洜瀛� 閫掑綊璁$畻
remindFormula := PriorityResult::GetRemindFormula( remindFormula,macroPlan);
- PriorityResult::CalculateScore( remindFormula,customerOrder,businessType,macroPlan,score,globalOTDTable);
+ score := PriorityResult::CalculateScore( remindFormula,customerOrder,businessType,macroPlan,score,globalOTDTable);
}
}
-
// 娌℃湁鍖归厤 鍏紡璁$畻瀹屾垚
return score;
*]
--
Gitblit v1.9.3