ya_setting.cpp 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. #include "ya_setting.h"
  2. #include "db/db_api/CDBSingletonDefine.h"
  3. #include "log.h"
  4. #include <config_file.h>
  5. extern config_file config;
  6. SSys_setting CYaSetting::m_sys_setting;
  7. int CYaSetting::g_load_person_his_data_interval = 48;
  8. /*
  9. * 从数据库的dat_setting表初始化系统阈值,
  10. * 包括:井下人员阈值,井下车辆阈值,人员超时阈值,车辆超时阈值,车辆超速阈值
  11. */
  12. bool CYaSetting::Init_sys_setting()
  13. {
  14. {
  15. g_load_person_his_data_interval = config.get("service.load_his_person_data_interval",48);
  16. m_sys_setting.rav_disable=config.get("service.rav_disable","");
  17. log_info("rav_disable:%s",m_sys_setting.rav_disable.c_str());
  18. }
  19. std::string Error;
  20. YADB::CDBResultSet DBRes;
  21. std::string sql = "select setting_id, name, type, value from dat_setting;";
  22. sDBConnPool.Query(sql.c_str(),DBRes,Error);
  23. int nCount = DBRes.GetRecordCount( Error );
  24. if (nCount > 0)
  25. {
  26. while ( DBRes.GetNextRecod(Error) )
  27. {
  28. std::string strVal = "";
  29. std::string val="";
  30. DBRes.GetField("name",strVal, Error );
  31. #define D_GetValue(K,N,X,PS) \
  32. if(strVal==N)\
  33. {DBRes.GetField("value",val, Error);\
  34. log_info("init_setting:%s,%s",N,val.c_str());\
  35. K = atoi(val.c_str())*X;}\
  36. D_GetValue(m_sys_setting.over_count_person,"over_count_person",1,"人员井下超员")
  37. D_GetValue(m_sys_setting.over_count_vehicle,"over_count_vehicle",1,"车辆井下超员")
  38. D_GetValue(m_sys_setting.over_time_person,"over_time_person",60,"人员井下超时")
  39. D_GetValue(m_sys_setting.over_time_vehicle,"over_time_vehicle",60,"车辆井下超时")
  40. D_GetValue(m_sys_setting.over_speed,"over_speed",1,"车辆超速限值")
  41. D_GetValue(m_sys_setting.att_starttime_offset_staff,"att_starttime_offset_staff",60,"考勤开始时间向前偏移分钟数")
  42. D_GetValue(m_sys_setting.att_endtime_offset_staff,"att_endtime_offset_staff",60,"车辆考勤开始时间向前偏移分钟数")
  43. D_GetValue(m_sys_setting.att_starttime_offset_vehicle,"att_starttime_offset_vehicle",60,"车辆考勤结束时间向后偏移分钟数")
  44. D_GetValue(m_sys_setting.att_endtime_offset_vehicle,"att_endtime_offset_vehicle",60,"车辆考勤结束时间向后偏移分钟数")
  45. D_GetValue(m_sys_setting.att_person_thre_hour,"att_person_thre_hour",60*60,"")
  46. D_GetValue(m_sys_setting.rear_end_d,"rear_end_distance",1,"")
  47. D_GetValue(m_sys_setting.rear_end_t,"rear_end_time",1,"")
  48. D_GetValue(m_sys_setting.geofault_warn_dis,"geofault_warn",1,"")
  49. #undef D_GetValue
  50. }
  51. log_info("init_setting:rear_end_d:%f,t:%ld,person:%u,v:%u,tp:%u,tv:%u,s:%f",m_sys_setting.rear_end_d,m_sys_setting.rear_end_t,
  52. m_sys_setting.over_count_person,m_sys_setting.over_count_vehicle,m_sys_setting.over_time_person,m_sys_setting.over_time_vehicle,m_sys_setting.over_speed);
  53. }
  54. return true;
  55. }