wangting
2025-01-03 807097a9a8db81475ac1820c60175ae382b26928
Source/plt-web/plt-web-ui/src/views/systemModel/businessModel/index.vue
@@ -6,8 +6,9 @@
          <avue-tree :key="refresh" ref="tree" :data="treeData" :option="treeOption" node-key="id"
                     @node-click="nodeClick">
          <span slot-scope="{ node, data }" class="el-tree-node__label">
           <span>
              <i :class="data.icon"></i>
            <span style="display: flex">
              <icon-show v-if="data.iconType=='svg'" :name="data.icon"></icon-show>
              <i v-else :class="data.icon"></i>
                {{ (node || {}).label }}
            </span>
          </span>
@@ -69,15 +70,23 @@
          <el-button icon="el-icon-close" plain size="small" type="danger" @click="deleteOperationClickHandler">删除
          </el-button>
        </div>
        <el-form ref="form" :model="form" label-width="85px" style="max-height: calc(100vh - 200px);overflow: auto;">
        <el-form ref="form" :model="form" label-width="100px" size="small"
                 style="max-height: calc(100vh - 200px);overflow: auto;">
          <span v-if="form.category !== 1">
            <el-form-item label="模块名:">
            <el-input v-model="form.name" :disabled="!editStatus && !addStatus" placeholder="请输入模块名"></el-input>
          </el-form-item>
          <el-form-item label="模块别名:">
            <el-input v-model="form.alias" :disabled="!editStatus && !addStatus" placeholder="模块别名用来记录日志使用"></el-input>
          </el-form-item>
                <el-form-item v-if="form.functionType === 0" label="C/S:">
            <el-form-item class="is-required">
              <span slot="label">模块名:</span>
              <el-input v-model="form.name" :disabled="!editStatus && !addStatus" placeholder="请输入模块名"></el-input>
            </el-form-item>
            <el-form-item class="is-required">
              <span slot="label">模块别名:</span>
              <el-input v-model="form.alias" :disabled="!editStatus && !addStatus"  placeholder="请输入模块别名"></el-input>
            </el-form-item>
           <el-form-item class="is-required">
              <span slot="label">序号:</span>
              <el-input-number v-model="form.sort" :disabled="!editStatus && !addStatus"></el-input-number>
              <el-link :underline="false" style="margin-left: 20px" type="danger">数字,描述该模块在其父模块下的显示顺序</el-link>
            </el-form-item>
            <el-form-item v-if="form.functionType === 0" label="C/S:">
            <el-input v-model="form.pathC" :disabled="!editStatus && !addStatus" :rows="2" placeholder="请输入C/S路径"
                      type="textarea"></el-input>
          </el-form-item>
@@ -89,14 +98,9 @@
            <el-input v-model="form.resourceDotNet" :disabled="!editStatus && !addStatus" :rows="2"
                      placeholder="请输入.NET" type="textarea"></el-input>
          </el-form-item>
          <el-form-item label="序号:">
            <el-input v-model="form.sort" :disabled="!editStatus && !addStatus"
                      placeholder="数字,描述该模块在其父模块下的显示顺序"></el-input>
          </el-form-item>
          <el-form-item label="图标:">
              <avue-input-icon v-model="form.source" :disabled="!editStatus && !addStatus" :icon-list="iconList"
                               placeholder="请选择图标">
              </avue-input-icon>
              <input-icon v-model="form.source" :disabled="!editStatus && !addStatus" placeholder="请选择图标">
              </input-icon>
          </el-form-item>
          <el-form-item label="描述:">
            <el-input v-model="form.remark" :disabled="!editStatus && !addStatus" :rows="3" placeholder="请输入描述"
@@ -123,28 +127,27 @@
          </el-form-item>
          </span>
          <span v-if="form.category === 1">
            <el-form-item label="名称:">
            <el-input v-model="form.name" :disabled="form.category === 1" placeholder="请输入名称"></el-input>
            <el-form-item label="名称:" class="is-required">
              <el-input v-model="form.name" :disabled="form.category === 1" placeholder="请输入名称"></el-input>
            </el-form-item>
            <el-form-item label="标识:">
            <el-input v-model="form.code" :disabled="form.category === 1" placeholder="请输入标识"></el-input>
            <el-form-item label="标识:" class="is-required">
              <el-input v-model="form.code" :disabled="form.category === 1" placeholder="请输入标识"></el-input>
            </el-form-item>
            <el-form-item label="别名:">
            <el-input v-model="form.alias" placeholder="请输入别名"></el-input>
            <el-form-item label="别名:" class="is-required">
              <el-input v-model="form.alias" placeholder="请输入别名"></el-input>
            </el-form-item>
            <el-form-item label="编号:">
            <el-input v-model="form.sort" :disabled="form.category === 1" placeholder="请输入编号"></el-input>
            <el-form-item label="编号:" class="is-required">
              <el-input-number v-model="form.sort" :disabled="form.category === 1" :max="63" :min="1"></el-input-number>
            </el-form-item>
            <el-form-item label="描述:">
            <el-input v-model="form.remark" :disabled="form.category === 1" placeholder="请输入描述"></el-input>
              <el-input v-model="form.remark" :disabled="form.category === 1" placeholder="请输入描述"></el-input>
            </el-form-item>
            <el-form-item label="是否有效:">
            <el-switch
              v-model="form.isValid"
              active-color="#13ce66"
              inactive-color="#ff4949">
            </el-switch>
              <el-switch
                v-model="form.isValid"
                active-color="#13ce66"
                inactive-color="#ff4949">
              </el-switch>
          </el-form-item>
          </span>
        </el-form>
@@ -156,7 +159,7 @@
      append-to-body="true"
      class="avue-dialog"
      title="操作分类"
      width="500px"
      width="900px"
    >
      <avue-crud
        ref="methodsCrud"
@@ -192,13 +195,11 @@
} from "@/api/systemModel/mangeModel/api"
import func from "@/util/func";
import basicOption from "@/util/basic-option";
import iconList from "@/config/iconList";
export default {
  name: "index",
  data() {
    return {
      iconList: iconList,
      tipList: [],
      upFileType: ['xls', 'xlsx'],
      fileUrl: 'api/hmSysModConfigController/importModule',
@@ -212,13 +213,19 @@
        menu: false,
        height: 500,
        header: false,
        column: [
          {
            label: '操作分类',
            prop: 'name',
            sortable: true,
          }
        ]
        column: [{
          label: '名称',
          prop: 'name',
          width:180,
          sortable: true,
        }, {
          label: '标识',
          prop: 'code',
          width:180,
        }, {
          label: '描述',
          prop: 'remark'
        }]
      },
      methodsLoading: false,
      methodsVisble: false,
@@ -236,7 +243,7 @@
        addBtn: false,
        defaultExpandAll: false,
        props: {
          label: 'name',
          label: 'label',
          value: 'id',
          children: 'children',
        },
@@ -250,10 +257,10 @@
            resolve(res.data.data.map(item => {
              return {
                ...item,
                id: item.id,
                name: item.name,
                label: item.category!=1?item.name:item.alias,
                leaf: !item.hasChildren,
                icon: item.source || 'el-icon-s-home'
                icon: item.source || (node.level === 0?'el-icon-s-home':'el-icon-s-tools'),
                iconType:item.source?'svg':'iconfont'
              }
            }))
          })
@@ -314,6 +321,10 @@
        this.$message.error('模块名不能为空');
        return
      }
      if (!this.form.alias) {
        this.$message.error('菜单标识不能为空');
        return
      }
      if (this.form.name.length > 128) {
        this.$message.error('模块名长度不能超过128!');
        return
@@ -356,6 +367,10 @@
    editSaveClickHandler() {
      if (!this.form.name) {
        this.$message.error('模块名不能为空');
        return
      }
      if (!this.form.alias) {
        this.$message.error('菜单标识不能为空');
        return
      }
      if (this.form.name.length > 128) {
@@ -472,7 +487,7 @@
          this.lastIndex = newIndex;
        },
        () => {
          this.methodsList = [];
          this.methodsList = [row];
        }
      );
    },