casper 5 months ago
parent
commit
8db20c244b

+ 2 - 0
sri-server-bg02/lib/JobManage.py

@@ -39,6 +39,8 @@ class JobManage(object):
     def job101():
         """
         每日22点清理30天之前的日志
+
+        todo 根据UserWorkRecordList.start_at来判断过去7天的数据
         """
         # --- get list ---
         file_path_list = methods.get_file_path_list(save_dir)

+ 7 - 6
sri-server-bg02/lib/MessageListenerC001.py

@@ -80,15 +80,15 @@ def method_c001(client, userdata, message):
     # except Exception as e:
     #     pass
 
-    # --- save ---
-    # file_name = methods.now_string('v001-%Y-%m-%d-%H.log')
-    log_uuid = UserWorkRecord.get_log_uuid()
-    log_file_path = os.path.join(save_dir, f'{log_uuid}.log')
+    # --- fill log_list ---
     log_dict = json.loads(message.payload)
+    log_time = int(log_dict.get('timeStamp')) / 1000
+    user_uuid = log_dict.get('userID')
+    log_uuid = UserWorkRecord.get_log_uuid(user_uuid, log_time)
     log_list = [
 
-        f"timeStamp: {methods.ts_to_string(int(log_dict.get('timeStamp')) / 1000)}",  # 时间
-        f"timeStamp: Cockpit/CanBus/CanId001/Cop001",  # 话题
+        f"timeStamp: {methods.ts_to_string(log_time)}",  # 时间
+        f"topic: Cockpit/CanBus/CanId001/Cop001",  # 话题
         # f"userID: {log_dict.get('userID')}",  # 用户id
         # f"cockpitID: {log_dict.get('cockpitID')}",  # 舱id
         # f"vehicleID: {log_dict.get('vehicleID')}",  # 车id
@@ -145,6 +145,7 @@ def method_c001(client, userdata, message):
     LocalClass.last_log_key = log_key
 
     # --- save ---
+    log_file_path = os.path.join(save_dir, f'{log_uuid}.log')
     methods.debug_log(f"MessageListener24", f"#log_list: {log_list}")
     methods.write_text(log_file_path, ' | '.join(log_list) + '\n', 'a')
 

+ 6 - 5
sri-server-bg02/lib/MessageListenerV001.py

@@ -30,14 +30,14 @@ def method_v001(client, userdata, message):
     #     out = methods.run_command(f'mkdir -p {save_dir}', callback=True)
     #     methods.debug_log('MessageListener46', f"#out: {out}")
 
-    # --- save log ---
-    log_uuid = UserWorkRecord.get_log_uuid()
-    # file_name = methods.now_string('v001-%Y-%m-%d-%H.log')
-    log_file_path = os.path.join(save_dir, f'{log_uuid}.log')
+    # --- fill log_list ---
     log_dict = json.loads(message.payload)
+    log_time = int(log_dict.get('timestamp')) / 1000)
+    user_uuid = log_dict.get('userID')
+    log_uuid = UserWorkRecord.get_log_uuid(user_uuid, log_time)
     log_list = [
 
-        f"timestamp: {methods.ts_to_string(int(log_dict.get('timestamp')) / 1000)}",  # 时间
+        f"timestamp: {methods.ts_to_string(log_time}",  # 时间
         f"topic: Vehicle/ControlVehicle/Veh001",  # 话题
         # f"userID: {log_dict.get('userID')}",  # 用户id
         # f"VehicleID: {log_dict.get('VehicleID')}",  # 车id
@@ -97,6 +97,7 @@ def method_v001(client, userdata, message):
     LocalClass.last_log_key = log_key
 
     # --- save ---
+    log_file_path = os.path.join(save_dir, f'{log_uuid}.log')
     methods.debug_log(f"MessageListener24", f"#log_list: {log_list}")
     methods.write_text(log_file_path, ' | '.join(log_list) + '\n', 'a')
 

+ 6 - 4
sri-server-bg02/lib/UserWorkRecord.py

@@ -41,16 +41,15 @@ class UserWorkRecord(object):
             return 'error40'
 
         # --- check ---
-        r1 = user_uuid not in cls.users
-        r2 = log_time > cls.users[user_uuid].get('end_at') + 600  # 距离上次操作间隔600s,当做新的记录
-        if r1 or r2:
+        r1 = user_uuid not in cls.users or log_time > cls.users[user_uuid].get('end_at') + 600  # 距离上次操作间隔600s,当做新的记录
+        if r1:
             # --- add ---
             data = {
                 'user_uuid': user_uuid,
                 'start_at': log_time,
                 'end_at': log_time,
             }
-            log_uuid = Global.mdb.add('UserWorkRecordList')
+            log_uuid = Global.mdb.add('UserWorkRecordList', data)
 
             # --- update ---
             cls.users[user_uuid] = {
@@ -72,4 +71,7 @@ class UserWorkRecord(object):
 
         # --- check ---
         methods.debug_log(f"UserWorkRecord|74", f"#error74")
+        methods.debug_log(f"UserWorkRecord|74", f"#user_uuid: {user_uuid}")
+        methods.debug_log(f"UserWorkRecord|74", f"#log_time: {log_time}")
+        methods.debug_log(f"UserWorkRecord|74", f"#end_at: {cls.users[user_uuid].get('end_at')}")
         return 'error74'