wangting
2025-01-08 354cad3d3ab22ba147169beb6a0f6f51b9bab3a8
Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Icons/index.vue
@@ -4,7 +4,7 @@
      <basic-container>
        <div style="display: flex;justify-content: space-between;flex-wrap: wrap">
          <div class="tag-group">
            <span class="tag-group__title">分组</span>
            <span class="tag-group__title" v-if="types.length>0">分组</span>
            <el-tag
              v-for="item in types"
              :key="item.key"
@@ -17,8 +17,14 @@
        </div>
        <div style="height: calc(100vh - 190px)">
          <div>
            <el-button icon="el-icon-plus" type="primary" size="mini" @click="addHandler">添加</el-button>
            <el-button icon="el-icon-upload" type="primary" size="mini" @click="uploadHandler">上传</el-button>
            <el-button v-if="permissionList.addBtn" class="button-custom-icon" type="primary" size="small" @click="addHandler">
              <icon-show :name="permissionList.addBtn.source"></icon-show>
              添加
            </el-button>
            <el-button v-if="permissionList.uploadBtn" class="button-custom-icon" type="primary" size="small" @click="uploadHandler">
              <icon-show :name="permissionList.uploadBtn.source"></icon-show>
              上传
            </el-button>
          </div>
          <el-tabs v-model="activeName" @tab-click="handleClick">
@@ -51,11 +57,11 @@
          <pre style="font-size: 12px;color: #909399;margin-top: 0;padding:5px;background-color: #F5F7FA">上传文件为json文件,示例如下
[{
    "name": "图标库名:图标名称",
    "svg": "html代码"
    "svg": "svg的html代码"
  },
  {
    "name": "图标库名:图标名称",
    "svg": "html代码"
    "svg": "svg的html代码"
 }]
 文件内容须严格按照示例格式,name为图标库名+图标名称,以“:”分隔,svg为图标html代码</pre>
        </el-dialog>
@@ -87,6 +93,7 @@
import {getStore} from "@/util/store";
import store from "@/store";
import {getToken} from "@/util/auth";
import {mapGetters} from "vuex";
export default {
name: "index",
@@ -215,6 +222,13 @@
        "Authorizationtoken":getToken(),
      };
    },
    ...mapGetters(["permission"]),
    permissionList() {
      return {
        addBtn: this.vaildData(this.permission[this.$route.query.id].ADD, false),
        uploadBtn: this.vaildData(this.permission[this.$route.query.id].UPLOAD, false),
      };
    },
  },
  watch:{
    'form.groups'(val){
@@ -226,7 +240,8 @@
  },
  created() {
    this.getGroups();
    this.initList();  },
    this.initList();
  },
  methods:{
    getGroups() {
      getDicts('EnumIconGroups').then(res => {
@@ -472,7 +487,14 @@
}
</script>
<style scoped>
<style scoped lang="scss">
::v-deep{
  svg{
    font-size: inherit;
    height: 100%;
    width:100%;
  }
}
.tag-group{font-size: 14px;}
.el-tag{
  margin: 0 0 10px 10px;
@@ -489,7 +511,10 @@
  text-align: center;
}
.iconList .iconItem .svgContent{
  font-size: 26px;
  font-size: 24px;
  width: 24px;
  height: 24px;
  margin: 0 auto;
}
.iconList .iconItem .svgContent:hover{
  transform: scale(1.5);