bidopentime.py 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. class BidopentimeChecker(object):
  2. """
  3. 开标日期字段检查
  4. """
  5. def __init__(self):
  6. self.errors_tables = {
  7. "0201": {
  8. "name": "发布时间 > 开标时间",
  9. "parent_name": "数据范围类型",
  10. "parent_code": "02",
  11. "checkFn": self.check0201
  12. },
  13. "0202": {
  14. "name": "开标时间 < 投标文件递交截止时间",
  15. "parent_name": "数据范围类型",
  16. "parent_code": "02",
  17. "checkFn": self.check0202
  18. }
  19. }
  20. def check0201(self, subtype:str,bidopentime: int, publishtime:int ) -> bool:
  21. """
  22. return true 代表返回异常
  23. """
  24. if subtype in ["招标", "邀标", "询价", "竞谈","单一","竞价","变更"]:
  25. if bidopentime and publishtime:
  26. if bidopentime < publishtime :
  27. return True
  28. else:
  29. return False
  30. else:
  31. # 两者中有一方为空不判断
  32. return False
  33. else:
  34. return False
  35. def check0202(self, subtype:str,bidopentime: int, bidendtime:int ) -> bool:
  36. """
  37. return true 代表返回异常
  38. """
  39. if subtype in ["招标", "邀标", "询价", "竞谈","单一","竞价","变更"]:
  40. if bidopentime and bidendtime:
  41. if bidopentime < bidendtime :
  42. return True
  43. else:
  44. return False
  45. else:
  46. # 两者中有一方为空不判断
  47. return False
  48. else:
  49. return False