Bladeren bron

Merge branch 'dev-python' into dev-smartshooter5

rambo 4 maanden geleden
bovenliggende
commit
0891a181a4
2 gewijzigde bestanden met toevoegingen van 14 en 14 verwijderingen
  1. 6 10
      python/api.py
  2. 8 4
      python/mcu/DeviceControl.py

+ 6 - 10
python/api.py

@@ -150,18 +150,16 @@ def fromExcelHandler(params: HandlerDetail):
                 "\\", "/"
             )
             check_path(image_dir)
-            for itemImg in images:
+            for idx, itemImg in enumerate(images):
                 if itemImg.image_path == "" or itemImg.image_path == None:
                     raise UnicornException(
                         f"货号【{goods_art_no}】存在没有拍摄完成的图片,请重拍或删除后重试"
                     )
-                new_file_name = (
-                    str(itemImg.goods_art_no) + "_" + str(itemImg.id) + ".jpg"
-                )
+                new_file_name = str(itemImg.goods_art_no) + "_" + str(idx) + ".jpg"
                 if not os.path.exists(
                     image_dir + "/" + os.path.basename(new_file_name)
                 ):
-                    shutil.copy(itemImg.image_path, image_dir + "/" + new_file_name)
+                    shutil.copy(itemImg.image_path, image_dir + new_file_name)
             dealImage = DealImage(image_dir)
             resFlag, path = dealImage.dealMoveImage(
                 image_dir=image_dir,
@@ -321,18 +319,16 @@ async def handle_detail(request: Request, params: HandlerDetail):
         if move_folder_array.get(goods_art_no) == None:
             image_dir = "{}/data/".format(os.getcwd()).replace("\\", "/")
             check_path(image_dir)
-            for itemImg in images:
+            for idx, itemImg in enumerate(images):
                 if itemImg.image_path == "" or itemImg.image_path == None:
                     raise UnicornException(
                         f"货号【{goods_art_no}】存在没有拍摄完成的图片,请重拍或删除后重试"
                     )
-                new_file_name = (
-                    str(itemImg.goods_art_no) + "_" + str(itemImg.id) + ".jpg"
-                )
+                new_file_name = str(itemImg.goods_art_no) + "_" + str(idx) + ".jpg"
                 if not os.path.exists(
                     image_dir + "/" + os.path.basename(new_file_name)
                 ):
-                    shutil.copy(itemImg.image_path, image_dir + "/" + new_file_name)
+                    shutil.copy(itemImg.image_path, image_dir + new_file_name)
             dealImage = DealImage(image_dir)
             resFlag, path = dealImage.dealMoveImage(
                 image_dir=image_dir, callback_func=None, goods_art_no=goods_art_no

+ 8 - 4
python/mcu/DeviceControl.py

@@ -930,7 +930,7 @@ class DeviceControl(BaseClass, metaclass=SingletonType):
                 device_status=-1,
             )
             print("串口:{} 被占用".format(port_name))
-            return
+            return False
 
         await asyncio.sleep(2)
         print("开始发送命令")
@@ -945,7 +945,7 @@ class DeviceControl(BaseClass, metaclass=SingletonType):
                 data=None,
             )
             serial_handle.close()
-            return
+            return False
         print("尝试写入数据")
 
         buf = bytearray(b"")
@@ -958,7 +958,7 @@ class DeviceControl(BaseClass, metaclass=SingletonType):
         except serial.SerialTimeoutException:
             print("写入数据错误")
             serial_handle.close()
-            return
+            return False
 
         await asyncio.sleep(0.3)
         print("尝试接收命令")
@@ -1039,12 +1039,14 @@ class DeviceControl(BaseClass, metaclass=SingletonType):
             #         # 异步循环获取设备信息
             #         self.to_get_mcu_base_info()
             # asyncio.gather(getBaseInfo())
+            return True
         else:
             print("串口无法识别")
             self.sendSocketMessage(
                 code=1,
                 msg="串口无法识别,请重新插拔拍照机USB", data=message_data, device_status=-1
             )
+            return False
             # 走其他途径处理
 
         # 检查当前MCU链接是否正常
@@ -1685,8 +1687,10 @@ async def checkMcuConnection(device_ctrl: DeviceControl):
             for _port_name, _port_value in ports_dict.items():
                 if _port_name not in device_ctrl.p_list:
                     try:
+                        flag = await device_ctrl.add_port_by_linkage(_port_name)
+                        if flag == False:
+                            continue
                         device_ctrl.p_list.append(_port_name)
-                        await device_ctrl.add_port_by_linkage(_port_name)
                     except BaseException as e:
                         print("串口不存在{} {}".format(_port_name, e))
     print("MCU断开连接,已释放")