From 683b1595260e638d1d3c6cc0d6543a72f6d6f925 Mon Sep 17 00:00:00 2001
From: yy1717 <fctom1215@outlook.com>
Date: 星期二, 12 一月 2021 14:36:42 +0800
Subject: [PATCH] 扣分码标准化

---
 lib/src/main/cpp/test_items2/stop_car.cpp |   23 +++++++++++++++--------
 1 files changed, 15 insertions(+), 8 deletions(-)

diff --git a/lib/src/main/cpp/test_items2/stop_car.cpp b/lib/src/main/cpp/test_items2/stop_car.cpp
index 8071814..a894626 100644
--- a/lib/src/main/cpp/test_items2/stop_car.cpp
+++ b/lib/src/main/cpp/test_items2/stop_car.cpp
@@ -43,7 +43,7 @@
 
     if (roadIndex < 0) {
         DEBUG("鍋滆溅璺濈瓒呮爣锛岄潬杈瑰仠杞︾粨鏉�");
-        AddExamFault(33, rtkTime);
+        AddExamFault(40602, rtkTime);
         return false;
     }
 
@@ -69,15 +69,16 @@
                     DistanceOf(p2, car->carXY[ car->right_rear_tire[TIRE_OUTSIDE] ]) > examParam.stop_car_edge_red_distance) {
                 DEBUG("鍋滆溅瓒呭嚭璺竟0.5绫�");
                 // 鍋滆溅璺濈瓒呰繃50鍘樼背锛屼笉鍚堟牸
-                AddExamFault(36, rtkTime);
+                AddExamFault(40606, rtkTime);
                 return false;
             } else if (DistanceOf(p1, car->carXY[ car->right_front_tire[TIRE_OUTSIDE] ]) > examParam.stop_car_edge_yellow_distance ||
                        DistanceOf(p2, car->carXY[ car->right_rear_tire[TIRE_OUTSIDE] ]) > examParam.stop_car_edge_yellow_distance) {
                 DEBUG("鍋滆溅瓒呭嚭璺竟0.3绫�");
                 // 鍋滆溅璺濈瓒呰繃30鍘樼背锛屾墸10鍒�
-                AddExamFault(37, rtkTime);
+                AddExamFault(40607, rtkTime);
             }
 
+            time = *rtkTime;
             setup = 4;
         }
     } else if (setup == 4) {
@@ -89,7 +90,7 @@
         if (!BreakHandbreakReleaseSametime && brk.value == BREAK_INACTIVE && hbrk.value == BREAK_INACTIVE) {
             // 鎷夋墜鍒瑰墠锛屾澗鑴氬埞锛屾墸10鍒�
             DEBUG("鎷夋墜鍒瑰墠锛屾澗鑴氬埞");
-            AddExamFault(39, rtkTime);
+            AddExamFault(40609, rtkTime);
             BreakHandbreakReleaseSametime = true;
         }
 
@@ -98,12 +99,12 @@
                 if (rpm.value > ENGINE_MIN_ROTATE) {
                     // 涓嬭溅鍓嶏紝涓嶇唲鐏紝鎵�5鍒�
                     DEBUG("涓嬭溅鍓嶏紝涓嶇唲鐏�");
-                    AddExamFault(40, rtkTime);
+                    AddExamFault(40610, rtkTime);
                 }
                 if (hbrk.value == BREAK_INACTIVE) {
                     // 寮�闂ㄥ墠锛屾湭鎷夋墜鍒癸紝 鎵�10鍒�
                     DEBUG("寮�闂ㄥ墠锛屾湭鎷夋墜鍒�");
-                    AddExamFault(38, rtkTime);
+                    AddExamFault(40608, rtkTime);
                 }
                 time = *rtkTime;
                 OpenDoor = true;
@@ -112,7 +113,13 @@
             if (TimeGetDiff(rtkTime, &time) > examParam.stop_car_open_door_allow_time) {
                 // 寮�闂ㄦ椂闂磋秴杩�15绉掞紝涓嶅悎鏍�
                 DEBUG("寮�闂ㄦ椂闂磋秴杩�15绉�");
-                AddExamFault(35, rtkTime);
+                AddExamFault(40605, rtkTime);
+                return false;
+            }
+        } else {
+            if (TimeGetDiff(rtkTime, &time) > D_SEC(30)) {
+                DEBUG("瀹屾垚鍋滆溅瓒呮椂");
+                PlayTTS(examParam.stop_car_end_tts, NULL);
                 return false;
             }
         }
@@ -127,7 +134,7 @@
     if (ReadOdo() - beginOdo > examParam.stop_car_limit_distance) {
         // 150绫冲唴鏈仠杞︼紝涓嶅悎鏍�
         DEBUG("鍋滆溅璺濈瓒呮爣锛岄潬杈瑰仠杞︾粨鏉�");
-        AddExamFault(33, rtkTime);
+        AddExamFault(40602, rtkTime);
         return false;
     }
 

--
Gitblit v1.8.0