send_flow_alarm.py 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. from qcloudsms_py import SmsSingleSender
  2. from qcloudsms_py.httpclient import HTTPError
  3. from qcloudsms_py import SmsMultiSender
  4. import os
  5. import django
  6. import sys
  7. BASE_DIR = os.path.dirname(os.path.abspath(__file__)) # 定位到你的django根目录
  8. sys.path.append(os.path.abspath(os.path.join(BASE_DIR, os.pardir)))
  9. os.environ.setdefault("DJANGO_SETTINGS_MODULE",
  10. "yfwlw_pro.settings") # project_name 项目名称
  11. django.setup()
  12. import json
  13. import time
  14. import requests
  15. import datetime
  16. from apps.ReportManage.all_dict import mobile_list, insect_dict_new
  17. from apps.AppInfoManage.models import Equip, Equip_type, CBDphoto, Msg_Send, Msg_Conf, Equip_SimInfo, SCDstatus, CBDstatus
  18. # 短信应用 SDK AppID
  19. appid = 1400227496 # SDK AppID 以1400开头
  20. # 短信应用 SDK AppKey
  21. appkey = "c9aba961bd30072f1e1b9272077abaea"
  22. simlist = Equip_SimInfo.objects.all()
  23. for i in simlist:
  24. dateTime_p = datetime.datetime.strptime(i.expiry_date,'%Y-%m-%d %H:%M:%S')
  25. # 判断sim卡是否30天到期
  26. if dateTime_p - datetime.datetime.now() > datetime.timedelta(days=30):
  27. pass
  28. elif datetime.timedelta(days=0) > dateTime_p - datetime.datetime.now() > datetime.timedelta(days=0):
  29. print("发送短信通知")
  30. elif dateTime_p - datetime.datetime.now() < datetime.timedelta(days=0):
  31. if i.equip_id.equip_type_id == 2:
  32. print("杀虫灯")
  33. # 判断杀虫灯状态30天内是否有数据
  34. if datetime.datetime.now() - SCDstatus.objects.get(equip_id=i.equip_id).upl_time > datetime.timedelta(days=30):
  35. pass
  36. else:
  37. print("停用账号")
  38. elif i.equip_id.equip_type_id == 3:
  39. print("测报灯")
  40. # 判断测报灯状态30天内是否有数据
  41. if datetime.datetime.now() - CBDstatus.objects.get(equip_id=i.equip_id).upl_time > datetime.timedelta(days=30):
  42. pass
  43. else:
  44. print("停用账号")