area_business_forbid.cpp 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. #include "area_business_forbid.h"
  2. #include"vector"
  3. #include"event.h"
  4. #include"common_tool.h"
  5. #include"area.h"
  6. #include "card.h"
  7. struct forbid_data:business_data
  8. {
  9. forbid_data()
  10. {
  11. }
  12. };
  13. area_business_forbid::area_business_forbid()
  14. {
  15. }
  16. //记录进入时间等信息,生成告警
  17. void area_business_forbid::on_enter(const std::shared_ptr<area_hover>&a,
  18. const std::shared_ptr<card_location_base>&card_ptr,std::shared_ptr<business_data>&ptr)
  19. {
  20. EVENT_TYPE ev_type = ET_CARD_AREA_FORBIDDEN_PERSON;
  21. if(card_ptr->is_vehicle())
  22. {
  23. ev_type = ET_CARD_AREA_FORBIDDEN_VEHICLE;
  24. }
  25. uint64_t id = tool_other::type_id_to_u64(card_ptr->m_type, card_ptr->m_id);
  26. event_tool::instance()->handle_event(OT_CARD, ev_type, id, 0, 0, true);
  27. }
  28. void area_business_forbid::on_hover(const std::shared_ptr<area_hover>&a,const std::shared_ptr<card_location_base>&c,std::shared_ptr<business_data> ptr)
  29. {
  30. }
  31. //记录退出时间等信息
  32. void area_business_forbid::on_leave(const std::shared_ptr<area_hover>&a,
  33. const std::shared_ptr<card_location_base>&card_ptr,std::shared_ptr<business_data> ptr)
  34. {
  35. EVENT_TYPE ev_type = ET_CARD_AREA_FORBIDDEN_PERSON;
  36. if(card_ptr->is_vehicle())
  37. {
  38. ev_type = ET_CARD_AREA_FORBIDDEN_VEHICLE;
  39. }
  40. uint64_t id = tool_other::type_id_to_u64(card_ptr->m_type, card_ptr->m_id);
  41. event_tool::instance()->handle_event(OT_CARD, ev_type, id, 0, 0, false);
  42. }