site_area.cpp 942 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. #include "site_area.h"
  2. #include "card.h"
  3. //每张卡包含这样一个对象,保存最后一个分站区域
  4. //1、记录卡进出分站的时间,地点
  5. //2、用于考勤
  6. site_area_hover::site_area_hover()
  7. :m_site_id(-1)
  8. ,m_enter_time(0)
  9. ,m_last_time(0)
  10. {
  11. }
  12. void site_area_hover::on_point(int64_t card_id,int site_id,const point*pt)
  13. {
  14. if(pt!=nullptr)
  15. {
  16. if(m_enter_point.empty())
  17. m_enter_point=*pt;
  18. m_last_point=*pt;
  19. }
  20. else
  21. {
  22. if(m_site_id==site_id)
  23. return;
  24. //离开现有分站处理,记录现有分站的进出时间和地点
  25. leave_site(card_id,m_site_id);
  26. //进入分站覆盖区域处理,考勤
  27. enter_site(card_id,site_id);
  28. m_site_id=site_id;
  29. m_enter_time=m_last_time=time(nullptr);
  30. m_enter_point.set(0,0);
  31. m_last_point.set(0,0);
  32. }
  33. }
  34. void site_area_hover::enter_site(int64_t card_id,int enter_site)
  35. {
  36. }
  37. void site_area_hover::leave_site(int64_t card_id,int enter_site)
  38. {
  39. }