plt_service.py 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. # -*- coding: utf-8 -*-
  2. # @Time : 2024/6/7
  3. # @Author : 魏志亮
  4. import datetime
  5. from service.common_connect import plt
  6. def get_all_wind(field_code, need_rated_param=True):
  7. query_sql = """
  8. SELECT t.engine_code,t.engine_name,t.rated_capacity,a.rated_cut_out_windspeed
  9. from wind_engine_group t LEFT JOIN wind_engine_mill a on t.mill_type_code = a.mill_type_code
  10. where t.field_code = %s and t.del_state = 0
  11. """
  12. dict_datas = plt.execute(query_sql, (field_code,))
  13. wind_result = dict()
  14. power_result = dict()
  15. for data in dict_datas:
  16. wind_result[str(data['engine_name'])] = str(data['engine_code'])
  17. if need_rated_param:
  18. power_result[str(data['engine_code'])] = (
  19. float(data['rated_capacity']), float(data['rated_cut_out_windspeed']))
  20. return wind_result, power_result
  21. def get_all_wind_company():
  22. query_sql = "SELECT t.field_name FROM wind_field t where t.del_state = 0"
  23. datas = plt.execute(query_sql)
  24. if datas:
  25. return [v for data in datas for k, v in data.items()]
  26. else:
  27. return ['吉山风电场', '和风元宝山', '唐龙三期风电场', '密马风电场', '招远风电场', '昌平坳风场', '昌西一风电场',
  28. '虹梯官风电场', '长清风电场']
  29. def get_base_wind_and_power(wind_turbine_number):
  30. query_sql = "SELECT rated_wind_speed,rated_capacity FROM wind_engine_group where engine_code = %s order by rated_wind_speed"
  31. dict_datas = plt.execute(query_sql, (wind_turbine_number,))
  32. if type(dict_datas) == tuple:
  33. return None
  34. return dict_datas