소스 검색

车卡考勤

daiyueteng 6 년 전
부모
커밋
935615ecda
3개의 변경된 파일25개의 추가작업 그리고 22개의 파일을 삭제
  1. 4 4
      area.cpp
  2. 15 12
      area.h
  3. 6 6
      card.cpp

+ 4 - 4
area.cpp

@@ -11,7 +11,7 @@
 #include <boost/algorithm/string/split.hpp>
 #include <boost/algorithm/string/classification.hpp>
 
-//#include"module_service/module_area.h"
+#include"module_service/module_area.h"
 
 template<> std::shared_ptr<area_list> 
 single_base<area_list, int, std::shared_ptr<area>>::m_instance=std::make_shared<area_list>();
@@ -26,7 +26,7 @@ void area::on_hover(int64_t card_id,std::shared_ptr<area_hover>&c,double speed,u
 // 		c->m_is_over_time=true;
 // 		//产生告警
 // 	}
-//    module_area::instance()->on_hover(card_id,c,speed,type);
+    module_area::instance()->on_hover(card_id,c,speed,type);
  }
 
 void area::on_enter(int64_t card_id,std::shared_ptr<area_hover>&c,double speed,uint64_t type)
@@ -38,7 +38,7 @@ void area::on_enter(int64_t card_id,std::shared_ptr<area_hover>&c,double speed,u
 //	m_card_count.store(cu);
 //	//check超员
 
-//    module_area::instance()->on_enter(card_id,c,speed,type);
+    module_area::instance()->on_enter(card_id,c,speed,type);
 }
 
 void area::on_leave(int64_t card_id,std::shared_ptr<area_hover>&c,double speed,uint64_t type)
@@ -53,7 +53,7 @@ void area::on_leave(int64_t card_id,std::shared_ptr<area_hover>&c,double speed,u
     //	{
     //		//取消告警
     //	}
-    //    module_area::instance()->on_leave(card_id,c,speed,type);
+        module_area::instance()->on_leave(card_id,c,speed,type);
 }
 bool area::in_area(const point & p)
 {

+ 15 - 12
area.h

@@ -27,15 +27,19 @@ struct point;
 
 struct area
 {
-	area(int id,int limit_count_person, int limit_time_person,double scale,int32_t mapid,int32_t type)
-		:m_id(id)
-		,m_area_type(type)
-		,m_limit_time_second(limit_time_person)
-		,m_limit_person_count(limit_count_person)
-		,m_scale(scale)
-		,m_mapid(mapid)
-	{
-	}
+    area(int id,int limit_count_person, int limit_time_person,double scale,int32_t mapid,int32_t type)
+        :m_id(id)
+        ,m_area_type(type)
+        ,m_limit_time_second(limit_time_person)
+        ,m_limit_person_count(limit_count_person)
+        ,m_scale(scale)
+        ,m_mapid(mapid)
+        ,m_limit_speed(0)
+        ,m_person_count(0)
+        ,m_vehicle_count(0)
+        ,m_is_over_person(0)
+    {
+    }
 
     virtual void on_hover(int64_t card_id,std::shared_ptr<area_hover>&c,double speed,uint64_t type);
     virtual void on_enter(int64_t card_id,std::shared_ptr<area_hover>&c,double speed,uint64_t type);
@@ -83,11 +87,10 @@ public:
     int m_limit_time_second;
     ///人数门限
     int m_limit_person_count;
-    ///速度门限
-    double m_limit_speed;
-
     double m_scale;
     int32_t m_mapid;
+    ///速度门限
+    double m_limit_speed;
 };
 
 struct area_list:single_base<area_list,int,std::shared_ptr<area>>

+ 6 - 6
card.cpp

@@ -293,11 +293,11 @@ struct car:card_location_base,private card_area
 
 	virtual void site_hover(int sid)
 	{
-//        if(m_time<=0)
-//        {
-//            return;
-//        }
-//        m_site_area->on_point(m_id,sid,0, m_type);
+        if(m_time<=0)
+        {
+            return;
+        }
+        m_site_area->on_point(m_id,sid,0, m_type);
 	}
 
     virtual std::shared_ptr<area_hover> get_area_hover()
@@ -308,7 +308,7 @@ struct car:card_location_base,private card_area
 	virtual void do_business(const point &pt)
 	{
 		m_area_tool->on_point(m_id,pt,m_speed,m_type);
-        //m_site_area->on_point(m_id,0,this, m_type);
+        m_site_area->on_point(m_id,0,this, m_type);
 	}
 
 	void set(ev::dynamic_loop * loop)