1
0

area_business_forbid.cpp 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  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. #include "module_call.h"
  8. //记录进入时间等信息,生成告警
  9. void area_business_forbid::on_enter(const std::shared_ptr<area_hover>&a,
  10. const std::shared_ptr<card_location_base>&card_ptr,std::shared_ptr<business_data>&ptr)
  11. {
  12. EVENT_TYPE ev_type = ET_CARD_AREA_FORBIDDEN_PERSON;
  13. if(card_ptr->is_vehicle())
  14. {
  15. ev_type = ET_CARD_AREA_FORBIDDEN_VEHICLE;
  16. }
  17. uint64_t id = tool_other::type_id_to_u64(card_ptr->m_type, card_ptr->m_id);
  18. event_tool::instance()->handle_event(OT_CARD, ev_type, id, 0, 0, true);
  19. //呼叫
  20. module_call::instance()->system_call_apoint(card_ptr->m_id,card_ptr->m_type);
  21. }
  22. 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)
  23. {
  24. }
  25. //记录退出时间等信息
  26. void area_business_forbid::on_leave(const std::shared_ptr<area_hover>&a,
  27. const std::shared_ptr<card_location_base>&card_ptr,std::shared_ptr<business_data> ptr)
  28. {
  29. EVENT_TYPE ev_type = ET_CARD_AREA_FORBIDDEN_PERSON;
  30. if(card_ptr->is_vehicle())
  31. {
  32. ev_type = ET_CARD_AREA_FORBIDDEN_VEHICLE;
  33. }
  34. uint64_t id = tool_other::type_id_to_u64(card_ptr->m_type, card_ptr->m_id);
  35. event_tool::instance()->handle_event(OT_CARD, ev_type, id, 0, 0, false);
  36. //取消呼叫
  37. module_call::instance()->system_cancel_call_apoint(card_ptr->m_id,card_ptr->m_type);
  38. }