card.h 1.1 KB

1234567891011121314151617181920212223242526272829303132333435
  1. #ifndef _CARD_HPP_
  2. #define _CARD_HPP_
  3. #include <thread>
  4. #include <ev++.h>
  5. #include "card_base.h"
  6. #include "write-copy.h"
  7. extern int three_rates_flag;
  8. extern int traffic_light_flag;
  9. struct card_list_visit:visitor<std::shared_ptr<card_location_base>>
  10. {
  11. bool visit(std::shared_ptr<card_location_base> c);
  12. bool _flag{false};
  13. };
  14. struct card_list:single_base<card_list,uint64_t,std::shared_ptr<card_location_base>>
  15. {
  16. ///lszId64=为初始化所有卡, lszId64格式为:0010000001016
  17. void init_staffer(const std::string & lszId64);
  18. void init_vehicle(const std::string & lszId64);
  19. void on_message(zloop<task*> *loop,message_locinfo&loc,bool is_history);
  20. void on_message(zloop<task*> *loop, message_tdoa_locinfo& loc, bool is_history);
  21. void on_message(zloop<task*> *loop, message_pdoa_locinfo& loc, bool is_history);
  22. void init_card_from_db();
  23. void load_his_card_postion_vehicle();
  24. void load_his_card_postion_staff();
  25. void load_his_card_postion_from_db();
  26. //获取卡数据 //标识id 人staff_id 车 vehicle_id
  27. const std::shared_ptr<card_location_base> get_card_by_cid(int cid);
  28. ~card_list(){}
  29. };
  30. #endif