zhudie 2 лет назад
Родитель
Сommit
6f6cce57f4

+ 6 - 7
src/api/scene/sceneOperate.ts

@@ -61,6 +61,7 @@ export interface workshopAddDatas {
   remark?: string;
   status?: number;
   updatedAt?: string;
+  serial?: number;
   // templete?: string; //车间模板
   // tag?: string; //场景标签
 }
@@ -90,11 +91,10 @@ export const editWorkshop = (data: workshopAddDatas): Promise<number> => {
 /**
  * @description: 删除车间
  */
-export const delWorkshop = (data: number): Promise<number> => {
+export const delWorkshop = (workshopId: number) => {
   return http.request({
-    url: '/scene/deleteWorkshop',
+    url: `/scene/deleteWorkshop?workshopId=${workshopId}`,
     method: 'DELETE',
-    data,
   });
 };
 
@@ -108,7 +108,7 @@ export interface workspaceAddDatas {
   principal?: string; //工位负责人
   remark?: string;
   status?: number;
-  serial: number;
+  serial?: number;
   updatedAt?: string;
   workshopId?: number; //车间id
   // tag?: string; //场景标签
@@ -139,11 +139,10 @@ export const editWorkspace = (data: workspaceAddDatas): Promise<number> => {
 /**
  * @description: 删除工位
  */
-export const delWorkspace = (data: number): Promise<number> => {
+export const delWorkspace = (workspaceId: number) => {
   return http.request({
-    url: '/scene/deleteWorkspace',
+    url: `/scene/deleteWorkspace?workspaceId=${workspaceId}`,
     method: 'DELETE',
-    data,
   });
 };
 

+ 10 - 2
src/api/scene/secene-templet.ts

@@ -115,15 +115,23 @@ export interface workShopTempleteType {
   workshopId?: number;
   workshopModuleId?: number;
   remark?: string;
-  createdAt: string;
+  createdAt?: string;
   isDeleted?: number;
   updatedAt?: string;
 }
 
-export const addWorkshopModuleLabel = (data: workShopTempleteType): Promise<number> => {
+export const addWorkshopModuleLabel = (data: workShopTempleteType) => {
   return http.request({
     url: '/template/saveWorkshopModuleRel',
     method: 'post',
     data,
   });
 };
+
+export const editWorkshopModuleLabel = (data: workShopTempleteType) => {
+  return http.request({
+    url: '/template/updateWorkshopModuleRel',
+    method: 'put',
+    data,
+  });
+};

+ 166 - 109
src/views/dashboard/monitor/monitor.vue

@@ -176,12 +176,16 @@
             size="10px"
             style="display: flex; justify-content: space-between"
           >
-            <el-radio-button
-              :label="item.name"
-              :key="item.code"
+            <el-radio-button v-for="item in tagList" :label="item.id!" class="tag-select">{{
+              item.name
+            }}</el-radio-button>
+            <!-- <el-radio-button
               v-for="item in tagList"
+              :label="item.name"
+              :key="item.id"
+              :value="item.id"
               class="tag-select"
-            />
+            /> -->
           </el-radio-group>
         </el-form-item>
         <el-form-item v-if="level === 0" label="车间模板" prop="templateWorkshop">
@@ -191,12 +195,18 @@
             style="display: flex; justify-content: space-between"
           >
             <el-radio-button
+              v-for="item in workshopTemplateList"
+              :label="item.id!"
+              class="tag-select"
+              >{{ item.name }}</el-radio-button
+            >
+            <!-- <el-radio-button
+              v-for="item in workshopTemplateList"
               :label="item.name"
               :key="item.id"
               :value="item.id"
-              v-for="item in workshopTemplateList"
               class="tag-select"
-            />
+            /> -->
           </el-radio-group>
         </el-form-item>
         <el-form-item v-if="level === 1" label="负责人" prop="principal">
@@ -274,7 +284,12 @@
     labelModuleListType,
   } from '@/api/scene/sceneOperate';
   import useScene from './use-scene';
-  import { addCompanyModuleLabel } from '@/api/scene/secene-templet';
+  import {
+    addCompanyModuleLabel,
+    editCompanyModuleLabel,
+    addWorkshopModuleLabel,
+    editWorkshopModuleLabel,
+  } from '@/api/scene/secene-templet';
   import useSceneTemplete from './use-sence-templete';
   import { storeToRefs } from 'pinia';
 
@@ -306,7 +321,7 @@
     tagCom?: string[]; //公司场景标签 可选多个
     templateCom?: string[]; //公司场景模板 可选多个
     tagWorkshop?: number; //场景标签  车间
-    templateWorkshop?: string; //车间模板
+    templateWorkshop?: number; //车间模板
     principal?: string; //负责人
   }
   const ruleForm = reactive<RuleForm>({
@@ -316,8 +331,8 @@
     sceneCode: '',
     tagCom: [],
     templateCom: [],
-    tagWorkshop: 0,
-    templateWorkshop: '',
+    tagWorkshop: undefined,
+    templateWorkshop: undefined,
     principal: '',
   });
   const rules = reactive<FormRules<RuleForm>>({
@@ -376,17 +391,23 @@
     //获取tableData数据
     getSceneDetail();
   });
-
-  //用于新增数据后,将新增数据加入父级
   watch(
-    tableData.value,
+    () => tableData.value,
     () => {
       dataSourceWithParent(tableData.value, null);
-      console.log(tableData.value);
     },
-    { deep: true },
   );
 
+  //用于新增数据后,将新增数据加入父级
+  // watch(
+  //   tableData.value,
+  //   () => {
+  //     dataSourceWithParent(tableData.value, null);
+  //     console.log(tableData.value);
+  //   },
+  //   { deep: true },
+  // );
+
   function onCheckedRow(rowKeys) {
     console.log(rowKeys);
   }
@@ -418,10 +439,10 @@
     // ruleForm.seniorScene = '';
     ruleForm.code = '';
     ruleForm.sceneCode = '';
-    addEnable.value = 1;
+    addEnable.value = 0;
     selectItems.value = [{ tag: '', template: '' }];
     ruleForm.principal = '';
-    ruleForm.templateWorkshop = '';
+    ruleForm.templateWorkshop = undefined;
     ruleForm.tagWorkshop = undefined;
   };
 
@@ -509,6 +530,7 @@
       addCompany(newComData)
         .then((res) => {
           console.log('res', res);
+          // dataSourceWithParent(tableData.value, null);
 
           //将selectItems加工成保存公司-模板的数据类型
           const newModuleLabel = selectItems.value.map((item) => {
@@ -541,7 +563,12 @@
   const addNewType = (formEl: FormInstance | undefined) => {
     if (!formEl) return;
 
+    console.log('tagList', tagList.value);
+    console.log('workshopTemplateList', workshopTemplateList.value);
+
+    // console.log('tagList', tagList.value.id);
     console.log('ruleForm.tagWorkshop', ruleForm.tagWorkshop);
+    console.log('ruleForm.templateWorkshop', ruleForm.templateWorkshop);
 
     level.value = findItemLevel(tableData.value, editedItem.value.id, editedItem.value.name);
     const newAddData = ref({});
@@ -555,10 +582,10 @@
         isDeleted: 0,
         name: ruleForm.name,
         status: Number(addEnable.value),
-        templete: ruleForm.templateWorkshop,
+        serial: 0,
+        // templete: ruleForm.templateWorkshop,
       };
     } else {
-      console.log(22222);
       newAddData.value = {
         code: ruleForm.code,
         workshopId: editedItem.value.id,
@@ -566,20 +593,21 @@
         name: ruleForm.name,
         principal: ruleForm.principal,
         status: Number(addEnable.value),
+        serial: 0,
       };
     }
+    console.log('newAddData.value', newAddData.value);
 
     //添加上传接口
-    //   addWorkspace(newAddData.value)
-    //     .then(() => {
-    //       getSceneDetail();
-    //       resetDraw();
-    //       table.value = false;
-    //     })
-    //     .catch((err) => {
-    //       console.log(err);
-    //     });
-    // }
+    // addWorkspace(newAddData.value)
+    //   .then(() => {
+    //     getSceneDetail();
+    //     resetDraw();
+    //     table.value = false;
+    //   })
+    //   .catch((err) => {
+    //     console.log(err);
+    //   });
 
     // const tegNum = tagList.value.indexOf(ruleForm.tagWorkshop!);
     // console.log('tegNum', tegNum);
@@ -619,9 +647,40 @@
           console.log('取消删除物件');
         });
     } else {
-      updateData(tableData.value, ruleForm.seniorScene, newAddData.value);
-      resetDraw();
-      table.value = false;
+      if (level.value === 0) {
+        addWorkshop(newAddData.value)
+          .then((res) => {
+            // dataSourceWithParent(tableData.value, null);
+            const newWorkshopModule = {
+              workshopId: res,
+              isDeleted: 0,
+              workshopModuleId: ruleForm.templateWorkshop!,
+            };
+            return addWorkshopModuleLabel(newWorkshopModule);
+          })
+          .catch((err) => {
+            console.log(err);
+          })
+          .finally(() => {
+            getSceneDetail();
+            resetDraw();
+            table.value = false;
+          });
+      } else {
+        addWorkspace(newAddData.value)
+          .catch((err) => {
+            console.log(err);
+          })
+          .finally(() => {
+            getSceneDetail();
+            resetDraw();
+            table.value = false;
+          });
+      }
+
+      // updateData(tableData.value, ruleForm.seniorScene, newAddData.value);
+      // resetDraw();
+      // table.value = false;
     }
   };
 
@@ -740,10 +799,17 @@
         .then(() => {
           //删除接口的调用
           if (level.value === 0) {
+            console.log('00');
+
             return delCompany(row.id);
           } else if (level.value === 1) {
+            console.log('11');
+            console.log('row.id', row.id);
+
             return delWorkshop(row.id);
           } else {
+            console.log('22');
+
             return delWorkspace(row.id);
           }
         })
@@ -782,6 +848,8 @@
 
       // ruleForm.seniorScene = editedItem.value.Toptag!;
     } else if (level.value === 1) {
+      console.log('editedItem.value', editedItem.value);
+
       level.value = level.value - 1;
       addTitle.value = '编辑车间';
       addName.value = '车间名称';
@@ -790,8 +858,11 @@
       ruleForm.seniorScene = editedItem.value.parent.name;
       ruleForm.code = editedItem.value.code!;
       addEnable.value = editedItem.value.status!;
-      ruleForm.tagWorkshop = editedItem.value.parent.labelList[editedItem.value.sceneLabelId];
-      ruleForm.templateWorkshop = editedItem.value.templete!;
+      // ruleForm.tagWorkshop = editedItem.value.parent.labelList[editedItem.value.sceneLabelId];
+      // ruleForm.templateWorkshop = editedItem.value.templete!;
+      tagList.value = editedItem.value.parent.labelList;
+      ruleForm.tagWorkshop = editedItem.value.sceneLabelId;
+      ruleForm.templateWorkshop = editedItem.value.workshopModule.id;
       // tagList.value = editedItem.value.Toptag!;
     } else if (level.value === 2) {
       level.value = level.value - 1;
@@ -835,19 +906,7 @@
       selectItems.value = selectItems.value.filter((item) => {
         return item.tag && item.template;
       });
-      // ruleForm.tagCom = selectItems.value.map((item) => {
-      //   return item.tag + '-' + item.template;
-      // });
-
-      //使用接口来编辑
-
-      //选出不为空字符串的数据
-      // selectItems.value = selectItems.value.filter((item) => {
-      //   return item.tag && item.template;
-      // });
-      // ruleForm.tagCom = selectItems.value.map((item) => {
-      //   return item.tag + '-' + item.template;
-      // });
+
       console.log('addEnable.value', addEnable.value);
 
       //新增的数据
@@ -870,13 +929,45 @@
               sceneModuleId: Number(item.template), ///item.template
             };
           });
-          addCompanyModuleLabel(editModuleLabel);
+          return editCompanyModuleLabel(editModuleLabel);
         })
         .finally(() => {
-          getSceneDetail();
           resetDraw();
+          getSceneDetail();
           tableCom.value = false;
         });
+    } else if (level.value === 1) {
+      console.log(111111, ruleForm.templateWorkshop, ruleForm.tagWorkshop);
+
+      //用接口来编辑
+      // const tegNum = tagList.value.indexOf(ruleForm.tagWorkshop!);
+      const editNewWorkshopData = {
+        code: ruleForm.code,
+        sceneLabelId: ruleForm.tagWorkshop,
+        name: ruleForm.name,
+        status: Number(addEnable.value),
+        id: editedItem.value.id,
+      };
+      console.log('editNewWorkshopData', editNewWorkshopData);
+
+      //编辑车间并上传
+      editWorkshop(editNewWorkshopData)
+        .then(() => {
+          const editWorkshopModule = {
+            isDeleted: 0,
+            workshopId: editedItem.value.id,
+            workshopModuleId: ruleForm.templateWorkshop,
+          };
+          return editWorkshopModuleLabel(editWorkshopModule);
+        })
+        .catch((err) => {
+          console.log(err);
+        })
+        .finally(() => {
+          resetDraw();
+          getSceneDetail();
+          table.value = false;
+        });
 
       // editTableRow(
       //   tableData.value,
@@ -886,57 +977,18 @@
       //   ruleForm.code,
       //   addEnable.value,
       //   '',
-      //   '',
-      //   0,
-      //   ruleForm.tagCom!,
+      //   ruleForm.templateWorkshop,
+      //   editedItem.value.parent.labelList.indexOf(ruleForm.tagWorkshop),
+      //   [],
       // );
-
-      // tableCom.value = false;
-    } else if (level.value === 1) {
-      console.log(111111, ruleForm.templateWorkshop, ruleForm.tagWorkshop);
-
-      //用接口来编辑
-      // const tegNum = tagList.value.indexOf(ruleForm.tagWorkshop!);
-      // const editNewWorkshopData = {
-      //   code: ruleForm.code,
-      //   sceneLabelId: tegNum,
-      //   name: ruleForm.name,
-      //   status: addEnable.value,
-      //   templete: ruleForm.templateWorkshop,
-      // };
-
-      //编辑车间并上传
-      // editWorkshop(editNewWorkshopData)
-      //   .then(() => {
-      //     getSceneList().then(() => {
-      //       resetDraw();
-      //       table.value = false;
-      //     });
-      //   })
-      //   .catch((err) => {
-      //     console.log(err);
-      //   });
-
-      editTableRow(
-        tableData.value,
-        level.value,
-        editedItem.value.name,
-        ruleForm.name,
-        ruleForm.code,
-        addEnable.value,
-        '',
-        ruleForm.templateWorkshop,
-        editedItem.value.parent.labelList.indexOf(ruleForm.tagWorkshop),
-        [],
-      );
-      table.value = false;
+      // table.value = false;
     } else if (level.value === 2) {
       //用接口来编辑
       // const editNewWorkspaceData = {
-      //   code: ruleForm.code,
-      //   name: ruleForm.name,
-      //   status: addEnable.value,
-      //   principal: ruleForm.principal,
+      // code: ruleForm.code,
+      // name: ruleForm.name,
+      // status: addEnable.value,
+      // principal: ruleForm.principal,
       // };
 
       // 编辑车间并上传
@@ -951,19 +1003,24 @@
       //     console.log(err);
       //   });
 
-      editTableRow(
-        tableData.value,
-        level.value,
-        editedItem.value.name,
-        ruleForm.name,
-        ruleForm.code,
-        addEnable.value,
-        ruleForm.principal,
-        '',
-        0,
-        [],
-      );
-      table.value = false;
+      const editNewWorkspaceData = {
+        code: ruleForm.code,
+        name: ruleForm.name,
+        status: Number(addEnable.value),
+        id: editedItem.value.id,
+        principal: ruleForm.principal,
+      };
+
+      //编辑车间并上传
+      editWorkspace(editNewWorkspaceData)
+        .catch((err) => {
+          console.log(err);
+        })
+        .finally(() => {
+          resetDraw();
+          getSceneDetail();
+          table.value = false;
+        });
     }
   };
   //表单中的启动状态

+ 1 - 3
src/views/dashboard/monitor/use-method.ts

@@ -9,7 +9,7 @@ import { workShopTempleteType } from '@/api/scene/secene-templet';
 
 export const colomns = [
   { label: '场景名称', prop: 'name', width: 300 },
-  { label: '场景标签', prop: 'companyLabelId', width: 300 },
+  { label: '场景标签', prop: 'labelName', width: 300 },
   { label: '代码', prop: 'code' },
 ];
 
@@ -76,8 +76,6 @@ export const updateData = (data, targetId, newAdd) => {
 //判断该条数据的层级
 export const findItemLevel = (data, targetId, targetName, currentLevel = 0) => {
   for (let i = 0; i < data.length; i++) {
-    console.log('i', i);
-
     const item = data[i];
 
     if (item.id === targetId && item.name === targetName) {