module_meta_date_changed.h 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. #ifndef MODULE_META_DATE_CHANGED_H
  2. #define MODULE_META_DATE_CHANGED_H
  3. /**
  4. * @brief 简要说明
  5. * @author 戴月腾
  6. * @date 2018-10-18
  7. */
  8. #include"module_singleton_base.h"
  9. #include"websocket/sio/sio_client.h"
  10. struct card_location_base;
  11. struct area;
  12. enum EDIT_TYPE_ID
  13. {
  14. ET_INSERT = 0, // 新增
  15. ET_UPDATE, // 修改
  16. ET_DELETE // 删除
  17. };
  18. class module_meta_date_changed:public singleton_base<module_meta_date_changed>
  19. {
  20. private:
  21. friend class singleton_base<module_meta_date_changed>;
  22. module_meta_date_changed()
  23. {
  24. }
  25. ///已经实现的:'card', 'staff', 'vehicle', 'vehicle_extend', 'staff_extend', 'area', 'reader',
  26. /// map antenna path
  27. ///提供了接口未实现的: setting light lights_group
  28. ///下面的是暂时不要处理的
  29. ///'drivingface', 'drivingface_render', 'dat_drivingface_warning_point',
  30. ///'rules', 'drivingface_vehicle', 'dat_handup_vehicle', 'lights_binding'
  31. public:
  32. ///基础数据
  33. void accept(sio::message::ptr const& data);
  34. ///3.清除卡相关信息,区域相关,分站相关,考勤相关,清除定时器,
  35. ///速度,状态 呼救 呼叫 告警相关。即保留基础信息,其他的重置。
  36. static void clear_card(std::shared_ptr<card_location_base> card_ptr);
  37. private:
  38. ///id64格式为:10000001016
  39. void deal_call_edit_vehicle(int64_t id64, EDIT_TYPE_ID edit_type_id);
  40. ///id64格式为:10000001016
  41. void deal_call_edit_staff(int64_t id64, EDIT_TYPE_ID edit_type_id);
  42. ///id64格式为10000006666
  43. void deal_call_edit_card(int64_t id64, EDIT_TYPE_ID edit_type_id);
  44. void deal_call_edit_reader(int id, EDIT_TYPE_ID edit_type_id);
  45. ///待实现
  46. void deal_call_edit_path(int id, EDIT_TYPE_ID edit_type_id);
  47. void deal_call_edit_antenna(int id,EDIT_TYPE_ID edit_type_id);
  48. void deal_call_edit_area(int id, EDIT_TYPE_ID edit_type_id);
  49. void deal_call_edit_map(int id, EDIT_TYPE_ID edit_type_id);
  50. ///待实现
  51. void deal_call_edit_light(int id,EDIT_TYPE_ID edit_type_id);
  52. ///待实现
  53. void deal_call_edit_lights_group(int id,EDIT_TYPE_ID edit_type_id);
  54. ///待实现
  55. void init_setting();
  56. void remove_card(uint32_t id, int32_t type);
  57. bool try_get_edit_type_id(const std::string& op_type, EDIT_TYPE_ID& out_edit_type_id);
  58. bool is_monkeycar_area(int area_id);
  59. ///删除区域所有报警信息
  60. static void delete_area_event(std::shared_ptr<area> area_ptr);
  61. void delete_antenna(int id);
  62. bool is_cur_map(int id);
  63. int cur_map_id();
  64. void update_map_info(int id);
  65. };
  66. #endif // MODULE_META_DATE_CHANGED_H