|
@@ -39,6 +39,18 @@ class BidAmountChecker(object):
|
|
|
"parent_name": "金额错误",
|
|
|
"parent_code": "01",
|
|
|
"checkFn": self.check0301
|
|
|
+ },
|
|
|
+ "0601": {
|
|
|
+ "name": "中标金额 > 预算金额",
|
|
|
+ "parent_name": "金额错误",
|
|
|
+ "parent_code": "01",
|
|
|
+ "checkFn": self.check0601
|
|
|
+ },
|
|
|
+ "0701": {
|
|
|
+ "name": "建筑行业中标金额不在预算的 70%-130%范围",
|
|
|
+ "parent_name": "金额错误",
|
|
|
+ "parent_code": "01",
|
|
|
+ "checkFn": self.check0701
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -109,4 +121,30 @@ class BidAmountChecker(object):
|
|
|
"""
|
|
|
if bidamount < 0:
|
|
|
return True
|
|
|
- return False
|
|
|
+ return False
|
|
|
+
|
|
|
+ @staticmethod
|
|
|
+ def check0601(bidamount: float,budget:float) -> bool:
|
|
|
+ """
|
|
|
+ 中标金额>预算,视为异常
|
|
|
+ :return: 返回true 代表异常
|
|
|
+ """
|
|
|
+ if bidamount > budget:
|
|
|
+ return True
|
|
|
+ return False
|
|
|
+
|
|
|
+ @staticmethod
|
|
|
+ def check0701(bidamount: float, budget: float,s_topscopeclass:str) -> bool:
|
|
|
+ """
|
|
|
+ 建筑行业中标金额不在预算的 70%-130%范围,视为异常
|
|
|
+ :return: 返回true 代表异常
|
|
|
+ """
|
|
|
+ if s_topscopeclass in ["建筑", "建筑工程"]:
|
|
|
+ # 独立判断1:低于70%
|
|
|
+ if bidamount < budget * 0.7:
|
|
|
+ return True
|
|
|
+ # 独立判断2:高于130%
|
|
|
+ if bidamount > budget * 1.3:
|
|
|
+ return True
|
|
|
+ return False
|
|
|
+
|