瀏覽代碼

更新选中项

rambo 7 月之前
父節點
當前提交
201eb40723
共有 2 個文件被更改,包括 30 次插入4 次删除
  1. 23 4
      python/api.py
  2. 7 0
      python/models.py

+ 23 - 4
python/api.py

@@ -378,9 +378,6 @@ def update_tab_name(params: DeviceConfigTabsReq):
     kwargs = {"mode_name": params.mode_name}
     tabModel.updateConditions(session, conditions={"id": params.id}, **kwargs)
     session.close()
-    sys = CRUD(SysConfigs)
-    action_configs = sys.read(session, conditions={"key": "action_configs"})
-    session.close()
     return {
         "code": 0,
         "msg": "",
@@ -421,11 +418,11 @@ def get_device_configs(params: ModelGetDeviceConfigDetail):
 def device_config_detail_query():
     # tab_id = params.tab_id
     # action_name = params.action_name
+    session = SqlQuery()
     sys = CRUD(SysConfigs)
     action_configs = sys.read(session, conditions={"key": "action_configs"})
     action_configs_value = json.loads(action_configs.value)
     left_config = action_configs_value.get("left")
-    session = SqlQuery()
     configModel = CRUD(DeviceConfig)
     model = configModel.read(
         session, conditions={"tab_id": left_config, "action_name": "侧视"}
@@ -447,6 +444,9 @@ def get_device_configs(params: ModelGetDeviceConfigDetail):
         return {"code": 1, "msg": "数据不存在", "data": None}
     if model.is_system == True:
         return {"code": 1, "msg": "系统配置不允许删除", "data": None}
+    configArray = configModel.read_all(session, conditions={"tab_id": model.tab_id})
+    if len(configArray) == 1:
+        return {"code": 1, "msg": "请至少保留一个配置", "data": None}
     configModel.delete(session, obj_id=action_id)
     return {"code": 0, "msg": "删除成功", "data": None}
 
@@ -582,6 +582,25 @@ def get_sys_config(key: str = None):
     }
 
 
+@app.post("/update_left_right_config", description="更新左右脚配置")
+def update_left_right_config(params: LeftRightParams):
+    session = SqlQuery()
+    sysConfig = CRUD(SysConfigs)
+    model = sysConfig.read(session, conditions={"key": "action_configs"})
+    if model == None:
+        return {"code": 1, "msg": "配置不存在", "data": None}
+    config_value = json.loads(model.value)
+    config_value[params.type] = params.id
+    update_value = json.dumps(config_value)
+    # 走编辑逻辑
+    kwargs = {"key": "action_configs", "value": update_value}
+    save_device_config = sysConfig.updateConditions(
+        session, conditions={"key": "action_configs"}, **kwargs
+    )
+    # return {"code": 0, "msg": "操作成功", "data": save_device_config}
+    return {"code": 0, "msg": "操作成功", "data": None}
+
+
 @app.post("/update_sys_configs", description="创建或修改系统配置")
 def save_sys_configs(params: SysConfigParams):
     session = SqlQuery()

+ 7 - 0
python/models.py

@@ -65,6 +65,13 @@ class SysConfigParams(BaseModel):
     value: str = Field(default=None, description="json数据")
 
 
+class LeftRightParams(BaseModel):
+    """系统配置"""
+
+    id: int = Field(default=0, description="配置id")
+    type: str = Field(default="left", description="类型,left左;right:右边")
+
+
 class TemplateItem(BaseModel):
     """模板项"""