1
李喆(开发组)
2025-07-30 8850d55ebadd112b30ef7783e2f6cb382cd130af
src/views/basesetting/machine.vue
@@ -17,8 +17,8 @@
    >
      <template #menu-left>
        <el-button type="primary" size="default" icon="el-icon-circle-plus" plain @click="handleExport">导出</el-button>
        <el-button type="primary" size="default" icon="el-icon-circle-plus" plain @click="handleView">导入</el-button>
        <!-- <el-button type="primary" size="default" icon="el-icon-circle-plus" plain @click="handleAdd">新增</el-button> -->
        <!-- <el-button type="primary" size="default" icon="el-icon-circle-plus" plain @click="handleView">导入</el-button> -->
        <el-button type="primary" size="default" icon="el-icon-circle-plus" plain @click="handleAdd">新增</el-button>
      </template>
      <template #menu="scope">
        <el-button type="primary" text size="default" icon="el-icon-upload" @click.stop="handleEdit(scope.row, scope.index)">编辑</el-button>
@@ -32,7 +32,11 @@
    </avue-crud>
    <el-dialog :title="machineTitle" append-to-body v-model="editBox" width="60%">
      <avue-form ref="editFormModal1" :option="editFormModal" v-model="editForm" @submit="formSubmit" @resetForm="resetForm"/>
      <avue-form ref="editFormModal1" :option="editFormModal" v-model="editForm" @submit="formSubmit" @resetForm="resetForm">
        <template #ownerDept="{}">
          <el-tree-select v-model="editForm.ownerDept" :data="organizationTreeList"/>
        </template>
      </avue-form>
    </el-dialog>
  </basic-container>
</template>
@@ -47,6 +51,7 @@
  data() {
    var that = this;
    return {
      organizationTreeList: [],
      machineTitle: "新增",
      isAdd: true,
      editBox: false,
@@ -78,7 +83,7 @@
            hide: true
          },
          {
            label: '机床编号',
            label: '机床编号4',
            prop: 'code'
          },
          {
@@ -128,6 +133,13 @@
            type: 'input',
            span: 12,
            dataType: 'string',
            rules: [
              {
                required: true,
                message: '请输入机床编号',
                trigger: 'blur'
              }
            ]
          },
          {
            label: '机床型号',
@@ -135,6 +147,13 @@
            type: 'input',
            span: 12,
            dataType: 'string',
            rules: [
              {
                required: true,
                message: '请输入机床型号',
                trigger: 'blur'
              }
            ]
          },
          {
            label: '机床类型',
@@ -145,7 +164,14 @@
            props: {
              label: 'dictValue',
              value: 'dictKey',
            }
            },
            rules: [
              {
                required: true,
                message: '请选择机床类型',
                trigger: 'change'
              }
            ]
          },
          {
            label: '所属机床组',
@@ -156,7 +182,14 @@
            props: {
              label: 'dictValue',
              value: 'dictKey',
            }
            },
            rules: [
              {
                required: true,
                message: '请选择所属机床组',
                trigger: 'change'
              }
            ]
          },
          {
            label: '操作员',
@@ -168,13 +201,7 @@
          {
            label: '所属组织',
            prop: 'ownerDept',
            type: 'tree',
            span: 12,
            props: {
              label: 'deptName',
              value: 'id'
            },
            dicUrl: `/blade-system/dept/lazy-list`
            span: 12
          },
          {
            label: '生产商',
@@ -332,25 +359,17 @@
        var url = '/blade-mdm/machine/update';
      }
      this.loading = true;
      axios({
        url: url,
        method: 'post',
        data: obj,
      }).then(
        res => {
          this.loading = false;
          this.$message({
            type: 'success',
            message: '操作成功!',
          });
      axios({url: url,method: 'post',data: obj}).then(res => {
        this.loading = false;
        if(res,res.data.success) {
          this.editBox = false;
          this.$message({type: 'success',message: '操作成功!'});
          this.onLoad();
          done();
        },
        error => {
        }else {
          this.$message({type: 'error',message: res.data.msg});
        }
      );
        done();
      });
    },
    handleView() {
@@ -395,9 +414,40 @@
            
        }
      );
    },
    traversalLabelValueToTree(tree) {  //遍历数组
      return tree.map(node => {
        // 1. 添加 label 和 value 字段
        const newNode = {
          ...node,
          label: node.fullName,
          value: node.id,
        };
        // 2. 如果有 children,递归处理
        if (node.children && node.children.length > 0) {
          newNode.children = this.traversalLabelValueToTree(node.children);
        }
        return newNode;
      });
    }
  },
  mounted() {
    //判断版本  0:涉密网,1:工控网;//工控网5个,涉密网4个  工控网不做了
    // 工控网是/blade-mdm/system/dept/lazy-list
    // 涉密网是/blade-mdm/dept/lazy-list
    axios({url: '/blade-mdm/system/param/getValue?paramKey=networkType',method: 'get'}).then(res => {
        // if(res.data.data === "0") {
        //   var aurl = "/blade-mdm/dept/lazy-list";
        // }else {
        //   var aurl = "/blade-mdm/system/dept/lazy-list";
        // }
        var aurl = "/blade-mdm/system/dept/lazy-list";
        axios({url: aurl,method: 'get'}).then(resp => {
          this.organizationTreeList = this.traversalLabelValueToTree(resp.data.data);
        })
      }
    );
  }
};
</script>