area_business_forbid.cpp 1.9 KB

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