瀏覽代碼

增加区域业务类

daiyueteng 6 年之前
父節點
當前提交
98ed724199

+ 34 - 0
module_service/area_business_car_attendance.cpp

@@ -0,0 +1,34 @@
+#include "area_business_car_attendance.h"
+
+struct car_attendance_data:business_data
+{
+    car_attendance_data():m_is_attendance(false)
+      ,m_attendance_start_time(std::chrono::seconds(0))
+    {
+    }
+
+    ///考勤状态  0初始状态 1 没在考勤 2 考勤;参看ATTENDANCE_STATUS
+    bool m_is_attendance;
+    ///考勤开始时间
+    std::chrono::system_clock::time_point m_attendance_start_time;
+};
+
+area_business_car_attendance::area_business_car_attendance()
+{
+}
+
+
+//记录进入时间等信息,结束考勤,根据离开的时间和距离,判断是否记录一条新的考勤记录
+void on_enter(const std::shared_ptr<area_hover>&a,const std::shared_ptr<card_location_base>&c,std::shared_ptr<business_data>&ptr)
+{
+
+}
+void on_hover(const std::shared_ptr<area_hover>&a,const std::shared_ptr<card_location_base>&c,std::shared_ptr<business_data> ptr)
+{
+
+}
+//记录离开考勤区域信息,开始考勤
+void on_leave(const std::shared_ptr<area_hover>&a,const std::shared_ptr<card_location_base>&c,std::shared_ptr<business_data> ptr)
+{
+
+}

+ 26 - 0
module_service/area_business_car_attendance.h

@@ -0,0 +1,26 @@
+#ifndef AREA_BUSINESS_CAR_ATTENDANCE_H
+#define AREA_BUSINESS_CAR_ATTENDANCE_H
+
+#include"area.h"
+#include "card.h"
+#include"area_business.h"
+
+
+class area_business_car_attendance:public area_business
+{
+public:
+    area_business_car_attendance();
+
+    virtual int area_business_type()
+    {
+        return 6;
+    }
+    //记录进入时间等信息,结束考勤,根据离开的时间和距离,判断是否记录一条新的考勤记录
+    void on_enter(const std::shared_ptr<area_hover>&a,const std::shared_ptr<card_location_base>&c,std::shared_ptr<business_data>&ptr);
+    void on_hover(const std::shared_ptr<area_hover>&a,const std::shared_ptr<card_location_base>&c,std::shared_ptr<business_data> ptr);
+    //记录离开考勤区域信息,开始考勤
+    void on_leave(const std::shared_ptr<area_hover>&a,const std::shared_ptr<card_location_base>&c,std::shared_ptr<business_data> ptr);
+};
+
+
+#endif // AREA_BUSINESS_CAR_ATTENDANCE_H

+ 25 - 0
module_service/area_business_forbid.cpp

@@ -0,0 +1,25 @@
+#include "area_business_forbid.h"
+
+struct forbid_data:business_data
+{
+    forbid_data()
+    {
+    }
+};
+
+area_business_forbid::area_business_forbid()
+{
+}
+
+//记录进入时间等信息,生成告警
+void area_business_forbid::on_enter(const std::shared_ptr<area_hover>&a,const std::shared_ptr<card_location_base>&c,std::shared_ptr<business_data>&ptr)
+{
+}
+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)
+{
+
+}
+//记录退出时间等信息
+void area_business_forbid::on_leave(const std::shared_ptr<area_hover>&a,const std::shared_ptr<card_location_base>&c,std::shared_ptr<business_data> ptr)
+{
+}

+ 24 - 0
module_service/area_business_forbid.h

@@ -0,0 +1,24 @@
+#ifndef AREA_BUSINESS_FORBID_H
+#define AREA_BUSINESS_FORBID_H
+
+#include"area.h"
+#include "card.h"
+#include"area_business.h"
+
+class area_business_forbid : public area_business
+{
+public:
+    area_business_forbid();
+
+    virtual int area_business_type()
+    {
+        return 7;
+    }
+    //记录进入时间等信息,生成告警
+    void on_enter(const std::shared_ptr<area_hover>&a,const std::shared_ptr<card_location_base>&c,std::shared_ptr<business_data>&ptr);
+    void on_hover(const std::shared_ptr<area_hover>&a,const std::shared_ptr<card_location_base>&c,std::shared_ptr<business_data> ptr);
+    //记录退出时间等信息
+    void on_leave(const std::shared_ptr<area_hover>&a,const std::shared_ptr<card_location_base>&c,std::shared_ptr<business_data> ptr);
+};
+
+#endif // AREA_BUSINESS_FORBID_H

+ 32 - 0
module_service/area_business_speed_checker.cpp

@@ -0,0 +1,32 @@
+#include "area_business_speed_checker.h"
+
+struct over_speed_data:business_data
+{
+    over_speed_data()
+    {
+        m_over_speed_count=0;
+        m_normal_speed_count=0;
+        m_limit_speed=0;
+    }
+
+    int m_over_speed_count;
+    int m_normal_speed_count;
+    double m_limit_speed;
+};
+
+area_business_speed_checker::area_business_speed_checker()
+{
+}
+
+void area_business_speed_checker::on_enter(const std::shared_ptr<area_hover>&a,const std::shared_ptr<card_location_base>&c,std::shared_ptr<business_data>&ptr)
+{
+}
+
+void area_business_speed_checker::on_hover(const std::shared_ptr<area_hover>&a,const std::shared_ptr<card_location_base>&c,std::shared_ptr<business_data> ptr)
+{
+
+}
+
+void area_business_speed_checker::on_leave(const std::shared_ptr<area_hover>&a,const std::shared_ptr<card_location_base>&c,std::shared_ptr<business_data> ptr)
+{
+}

+ 24 - 0
module_service/area_business_speed_checker.h

@@ -0,0 +1,24 @@
+#ifndef AREA_BUSINESS_SPEED_CHECKER_H
+#define AREA_BUSINESS_SPEED_CHECKER_H
+
+
+#include"area.h"
+#include "card.h"
+#include"area_business.h"
+
+class area_business_speed_checker : public area_business
+{
+public:
+    area_business_speed_checker();
+
+    virtual int area_business_type()
+    {
+        return 4;
+    }
+
+    void on_enter(const std::shared_ptr<area_hover>&a,const std::shared_ptr<card_location_base>&c,std::shared_ptr<business_data>&ptr);
+    void on_hover(const std::shared_ptr<area_hover>&a,const std::shared_ptr<card_location_base>&c,std::shared_ptr<business_data> ptr);
+    void on_leave(const std::shared_ptr<area_hover>&a,const std::shared_ptr<card_location_base>&c,std::shared_ptr<business_data> ptr);
+};
+
+#endif // AREA_BUSINESS_SPEED_CHECKER_H