王旭
2022-09-21 635d21ef52504980fe4cfce4acc4fc1717de4298
Merge branch 'master' of ssh://192.168.20.39:29418/LFWEB

# Conflicts:
# public/config/config.js
已添加3个文件
已修改11个文件
1778 ■■■■ 文件已修改
public/config/config.js 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/assets/lang/en.js 147 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/assets/lang/zh.js 145 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/navMenu.vue 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/router/index.js 193 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/Archive/index.vue 43 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/Thematic/index.vue 124 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/maintenance/blackwhiteList.vue 317 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/maintenance/databaseMonitoring.vue 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/maintenance/eventlogManage.vue 306 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/maintenance/logLog.vue 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/maintenance/operationLog.vue 72 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/maintenance/tokentool.vue 358 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
vue.config.js 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
public/config/config.js
@@ -5,4 +5,5 @@
var serverUrl = 'http://192.168.20.106/LFServer/';
var api_Url = 'http://192.168.20.106/';
var sql_Url = 'http://192.168.20.39:8081/admin/druid/sql.html'; //数据库监控地址
var sql_Url = 'http://192.168.20.39:8081/admin/druid/sql.html';
src/assets/lang/en.js
@@ -4,12 +4,13 @@
    choose: 'Please choose',
    name: 'name',
    edit: 'edit',
    delete: 'delete',
    delete: 'Delete',
    username: 'UserName',
    empty: 'Empty',
    iquery: 'IQuery',
    selectdate: 'Please select a date',
    pleaseInput: 'Please input',
    update: 'Modify',
  },
  dataManage: {
    dataManage: 'Data Manage',
@@ -24,6 +25,31 @@
  },
  operatManage: {
    operatManage: 'Operat Manage',
    eventlogManage: 'Event Log Manage',
    ELM: {
      username: 'username',
      ownedSystem: 'ownedSystem',
      operationType: 'operationType',
      date: 'date',
      startDate: 'startdate',
      endDate: 'enddate',
      to: 'to',
      ip: 'The client IP',
      search: 'search',
      reset: 'reset',
      all: 'all',
      one: "one",
      add: "add",
      delete: "delete",
      edit: "edit",
      query: "query",
      please: 'please choose',
      usernameInfo: 'username,Chinese name,or phonetic initial',
      index: 'index',
      largeModuleName: 'largeModuleName',
      smallModuleName: 'smallModuleName',
      resourceName: 'resourceName',
    },
    userManagement: 'User Management',
    systemLayout: 'System Layout',
    menuSettings: 'Menu Settings',
@@ -65,22 +91,91 @@
    logLog: 'ConLog',
    operationLog: 'Operation Log',
    databaseMonitoring: 'Database Monitoring',
    operationLogObj:{
      queryRegion:"queryRegion",
      resourceName:"resourceName",
      operationType:"operationType",
      operatingTime:"operatingTime",
      inquire:"inquire",
      empty:"empty",
      num:"num",
      username:"username",
      systematicName:"systematicName",
      IP:" IP",
      pleaseInput:"pleaseInput",
      pleaseSelect:"pleaseSelect",
      optionDate:"optionDate",
      selectTime:"selectTime",
    }
    blackwhiteList: "Black/White List",
    BWL: {
      blackList: "blackList",
      whiteList: "whiteList",
      blackListIP: 'blackListIP',
      whiteListIP: 'whiteListIP',
      listIPInfo: 'listIPInfo',
      IPState: 'IPState',
      all: 'all',
      validity: 'validity',
      invalidity: 'invalidity',
      interceptionCycle: 'interceptionCycle',
      seconds: 'seconds',
      mins: 'mins',
      hours: 'hours',
      interceptionNumber: 'interceptionNumber',
      change: 'change',
      search: 'search',
      reset: 'reset',
      index: "index",
      serviceName: 'serviceName',
      accessSourceSystem: 'accessSourceSystem',
      IPRequest: 'IPRequest',
      servicesRequestUrl: 'servicesRequestUrl',
      resourceIDRequest: 'resourceIDRequest',
      serviceSystemRequest: 'serviceSystemRequest',
      blackListStatus: 'blackListStatus',
      operate: 'operate',
      effectiveDate: "effectiveDate",
      requestUser: "requestUser",
      tokenInfo: "tokenInfo",
      whiteListStatus: 'whiteListStatus',
    },
    tokentool: 'Token Tool',
    tokentoolObj: {
      first: 'Service List',
      second: 'Token management',
      serviceid: 'Resource ID',
      serviceName: 'Service name',
      excelTemplate: 'Excel Template',
      uploadExcel: 'Upload Excel',
      serviceToken: 'Token generation place',
      pleaseInput: 'After applying for a token, you can copy it here',
      copy: 'Copy',
      tokenName: 'Token Name',
      tokenStatus: 'Token Status',
      tokenAll: 'All',
      tokeNormal: 'Normal',
      tokenInvalid: 'Invalid',
      tokenRenewal: 'Renewal',
      serialnumber: 'Serial Number',
      applysystem: 'Apply to use the system',
      applicantIP: 'Applicant IP',
      applicationtime: 'Application time',
      applytime: 'Apply for use time (s)',
      tokenstring: 'Token string',
      serviceAddress: 'Service address',
      porstServiceAddress: 'Post proxy service address',
      sourcesystem: 'sourcesystem',
      pubicnot: 'Public or not',
      suffixID: 'Suffix ID',
      goonlinenot: 'Go online or not',
      primaryKey: 'Primary key',
      applyToken: 'Apply for Token',
      operation: 'Operation',
      resourcetoken: 'Resource ID of the token',
      tokeninformation: 'Token information',
      autorenew: 'Auto renew',
    },
    operationLogObj: {
      queryRegion: 'QueryRegion',
      resourceName: 'resourceName',
      operationType: 'operationType',
      operatingTime: 'operatingTime',
      inquire: 'inquire',
      empty: 'empty',
      num: 'num',
      username: 'username',
      systematicName: 'systematicName',
      IP: ' IP',
      pleaseInput: 'pleaseInput',
      pleaseSelect: 'pleaseSelect',
      optionDate: 'optionDate',
      selectTime: 'selectTime',
    },
  },
  synthesis: {
    synthesis: 'Comprehensive Display',
@@ -149,6 +244,24 @@
    operationtype: 'Operation Type',
    operationStatus: 'Operation Status',
  },
  themaic: {
    name: 'Themaic Map',
    maptltle: 'Map Title',
    all: 'All',
    sortbytime: 'Sort by Time',
    sortbyviews: 'Sort by Views',
    find: 'Find',
    record: 'pieces of data',
  },
  archive: {
    name: 'Piping materials',
    keyword: 'Keyword',
    uname: 'Name',
    type: 'Type',
    modifications: 'Revision number',
    creationtime: 'Creation Time',
    state: 'State',
  },
};
export default en;
src/assets/lang/zh.js
@@ -10,6 +10,7 @@
    iquery: '查询',
    selectdate: '请选择日期',
    pleaseInput: '请输入',
    update: '修改',
  },
  dataManage: {
    dataManage: '数据管理',
@@ -24,6 +25,31 @@
  },
  operatManage: {
    operatManage: '运维管理',
    eventlogManage: '事件日志管理',
    ELM: {
      username: '用户名称',
      ownedSystem: '所属系统',
      operationType: '操作类型',
      date: '时间',
      startDate: '开始时间',
      endDate: '结束时间',
      to: 'zhi',
      ip: '客户端IP',
      search: '搜索',
      reset: '重置',
      all: '全部',
      one: "一张图",
      add: "新增",
      delete: "删除",
      edit: "修改",
      query: "查询",
      please: '请选择',
      usernameInfo: '输入用户名、中文名或拼音首字母查询',
      index: '序号',
      largeModuleName: '大模块名称',
      smallModuleName: '小模块名称',
      resourceName: '资源名称',
    },
    userManagement: '用户管理',
    systemLayout: '系统配置',
    menuSettings: '菜单设置',
@@ -65,22 +91,91 @@
    logLog: '登录日志',
    operationLog: '操作日志',
    databaseMonitoring: '数据库监控',
    operationLogObj:{
      queryRegion:"查询区",
      resourceName:"资源名称",
      operationType:"操作类型",
      operatingTime:"操作时间",
      inquire:"查询",
      empty:"清空",
      num:"序号",
      username:"用户名",
      systematicName:"系统名称",
      IP:" IP",
      pleaseInput:"请输入",
      pleaseSelect:"请选择",
      optionDate:"选择日期",
      selectTime:"选择时间",
    }
    blackwhiteList: "黑/白名单",
    BWL: {
      blackList: "黑名单",
      whiteList: "白名单",
      blackListIP: '黑名单IP',
      whiteListIP: '白名单IP',
      listIPInfo: '输入IP查询',
      IPState: 'IP状态',
      all: '全部',
      validity: '生效',
      invalidity: '失效',
      interceptionCycle: '拦截周期',
      seconds: '秒',
      mins: '分',
      hours: '时',
      interceptionNumber: '拦截次数',
      change: '修改',
      search: '搜索',
      reset: '重置',
      index: "序号",
      serviceName: '服务名称',
      accessSourceSystem: '访问来源系统',
      IPRequest: '申请IP',
      servicesRequestUrl: '申请服务Url',
      resourceIDRequest: '申请资源Id',
      serviceSystemRequest: '申请服务系统',
      blackListStatus: '黑名单状态',
      operate: '操作',
      effectiveDate: "生效日期",
      requestUser: "申请人",
      tokenInfo: "token信息",
      whiteListStatus: '白名单状态',
    },
    tokentool: 'Token工具',
    tokentoolObj: {
      first: '服务列表',
      second: 'Token管理',
      serviceid: '资源ID',
      serviceName: '服务名称',
      excelTemplate: 'Excel模板',
      uploadExcel: '上传Excel',
      serviceToken: 'Token ç”Ÿæˆå¤„',
      pleaseInput: '申请Token后此处可复制',
      copy: '复制',
      tokenName: 'Token查询',
      tokenStatus: 'Token状态',
      tokenAll: '全部',
      tokeNormal: '正常',
      tokenInvalid: '失效',
      tokenRenewal: '续期',
      serialnumber: '序号',
      applysystem: '申请使用系统',
      applicantIP: '申请者IP',
      applicationtime: '申请时间',
      applytime: '申请使用时间(s)',
      tokenstring: 'Token串',
      serviceAddress: '服务地址',
      porstServiceAddress: '代理后服务地址',
      sourcesystem: '来源系统',
      pubicnot: '是否公开',
      suffixID: '后缀ID',
      goonlinenot: '是否上线',
      primaryKey: '主键',
      applyToken: '申请Token',
      operation: '操作',
      resourcetoken: 'Token所属资源ID',
      tokeninformation: 'Token信息',
      autorenew: '自动续约',
    },
    operationLogObj: {
      queryRegion: '查询区',
      resourceName: '资源名称',
      operationType: '操作类型',
      operatingTime: '操作时间',
      inquire: '查询',
      empty: '清空',
      num: '序号',
      username: '用户名',
      systematicName: '系统名称',
      IP: ' IP',
      pleaseInput: '请输入',
      pleaseSelect: '请选择',
      optionDate: '选择日期',
      selectTime: '选择时间',
    },
  },
  synthesis: {
    synthesis: '综合展示',
@@ -149,6 +244,24 @@
    operationtype: '操作类型',
    operationStatus: '操作状态',
  },
  themaic: {
    name: '专题地图',
    maptltle: '地图名称',
    all: '全部',
    sortbytime: '按时间排序',
    sortbyviews: '按浏览次数排序',
    find: '共找到',
    record: '条数据',
  },
  archive: {
    name: '管道资料',
    keyword: '关键字',
    uname: '名称',
    type: '类型',
    modifications: '修改次数',
    creationtime: '创建时间',
    state: '状态',
  },
};
export default zh;
src/components/navMenu.vue
@@ -16,6 +16,20 @@
          @close="handleClose"
          @select="handleselect"
        >
          <el-submenu index="3" class="faSub">
            <template slot="title">
              <span>{{ $t("synthesis.synthesis") }}</span>
            </template>
            <el-menu-item index="Synthesis">{{
              $t("synthesis.synthesis")
            }}</el-menu-item>
            <el-menu-item index="Thematic">{{
              $t("synthesis.themaic")
            }}</el-menu-item>
            <el-menu-item index="Archive">{{
              $t("synthesis.archive")
            }}</el-menu-item>
          </el-submenu>
          <el-submenu index="1" class="faSub">
            <template slot="title">
              <span>{{ $t("dataManage.dataManage") }}</span>
@@ -76,8 +90,8 @@
              <template slot="title">{{
                $t("operatManage.operationMonitoring")
              }}</template>
              <el-menu-item index="systemMonitoring">{{
                $t("operatManage.systemMonitoring")
              <el-menu-item index="eventlogManage">{{
                $t("operatManage.eventlogManage")
              }}</el-menu-item>
              <el-menu-item index="logLog">{{
                $t("operatManage.logLog")
@@ -88,22 +102,16 @@
              <el-menu-item index="databaseMonitoring">{{
                $t("operatManage.databaseMonitoring")
              }}</el-menu-item>
              <el-menu-item index="blackwhiteList"
                >{{ $t("operatManage.blackwhiteList") }}
              </el-menu-item>
              <el-menu-item index="tokentool">{{
                $t("operatManage.tokentool")
              }}</el-menu-item>
            </el-submenu>
          </el-submenu>
          <el-submenu index="3" class="faSub">
            <template slot="title">
              <span>{{ $t("synthesis.synthesis") }}</span>
            </template>
            <el-menu-item index="Synthesis">{{
              $t("synthesis.synthesis")
            }}</el-menu-item>
            <el-menu-item index="Thematic">{{
              $t("synthesis.themaic")
            }}</el-menu-item>
            <el-menu-item index="Archive">{{
              $t("synthesis.archive")
            }}</el-menu-item>
          </el-submenu>
          <!-- <el-submenu index="4" class="faSub">
            <template slot="title">数据质检</template>
            <el-menu-item index="4-1">数据质检</el-menu-item>
src/router/index.js
@@ -11,232 +11,265 @@
import authorityManagement from "@/views/maintenance/authorityManagement.vue"; //权限管理
import safetyManagement from "@/views/maintenance/safetyManagement.vue"; //安全管理
import operationLog from "@/views/maintenance/operationLog.vue"; //操作日志
import eventlogManage from "@/views/maintenance/eventlogManage.vue"; //事件日志管理
import blackwhiteList from "@/views/maintenance/blackwhiteList.vue"; //登录日志
import logLog from "@/views/maintenance/logLog.vue"; //登录日志
import systemMonitoring from "@/views/maintenance/systemMonitoring.vue"; //系统监控
import databaseMonitoring from "@/views/maintenance/databaseMonitoring.vue"; //数据库监控
import parameterConfiguration from "@/views/maintenance/parameterConfiguration.vue"; //参数配置
//数据管理模块
import catalogueManage from "../views/datamanage/catalogueManage.vue"; //数据管理-目录管理
import tokentool from '@/views/maintenance/tokentool.vue'; //token å·¥å…·
import dataUpdata from "../views/datamanage/dataUpdata.vue"; //数据管理-数据上传
import dataLoading from "../views/datamanage/dataLoading.vue"; //数据管理-数据入库
import metadataManage from "../views/datamanage/metadataManage.vue"; //数据管理-元数据管理
import SpatialData from "../views/datamanage/SpatialData.vue"; //数据管理-空间数据
import versionManage from "../views/datamanage/versionManage.vue"; //数据管理-版本管理
import dictionaryManage from "../views/datamanage/dictionaryManage.vue"; //数据管理-字典管理
import styleManage from "../views/datamanage/styleManage.vue"; //数据管理-样式管理
import addStyle from "../views/datamanage/addStyle.vue"; //数据管理-样式管理-添加样式
//数据管理模块
import catalogueManage from '../views/datamanage/catalogueManage.vue'; //数据管理-目录管理
import dataUpdata from '../views/datamanage/dataUpdata.vue'; //数据管理-数据上传
import dataLoading from '../views/datamanage/dataLoading.vue'; //数据管理-数据入库
import metadataManage from '../views/datamanage/metadataManage.vue'; //数据管理-元数据管理
import SpatialData from '../views/datamanage/SpatialData.vue'; //数据管理-空间数据
import versionManage from '../views/datamanage/versionManage.vue'; //数据管理-版本管理
import dictionaryManage from '../views/datamanage/dictionaryManage.vue'; //数据管理-字典管理
import styleManage from '../views/datamanage/styleManage.vue'; //数据管理-样式管理
import addStyle from '../views/datamanage/addStyle.vue'; //数据管理-样式管理-添加样式
Vue.use(VueRouter);
const routes = [
  {
    path: "/",
    name: "login",
    path: '/',
    name: 'login',
    component: login,
  },
  {
    path: "/Home",
    name: "Home",
    path: '/Home',
    name: 'Home',
    component: Home,
    children: [
      {
        path: "/Synthesis",
        name: "Synthesis",
        path: '/Synthesis',
        name: 'Synthesis',
        component: Synthesis,
        meta: {
          title: "综合展示",
          title: '综合展示',
          requireAuth: true, // æ ‡è¯†è¯¥è·¯ç”±æ˜¯å¦éœ€è¦ç™»å½•
        },
      },
      {
        path: "/Thematic",
        name: "Thematic",
        path: '/Thematic',
        name: 'Thematic',
        component: Thematic,
        meta: {
          title: "专题地图",
          title: '专题地图',
          requireAuth: true, // æ ‡è¯†è¯¥è·¯ç”±æ˜¯å¦éœ€è¦ç™»å½•
        },
      },
      {
        path: "/Archive",
        name: "Archive",
        path: '/Archive',
        name: 'Archive',
        component: Archive,
        meta: {
          title: "资料馆",
          title: '资料馆',
          requireAuth: true, // æ ‡è¯†è¯¥è·¯ç”±æ˜¯å¦éœ€è¦ç™»å½•
        },
      },
      {
        path: "/catalogueManage",
        name: "catalogueManage",
        path: '/catalogueManage',
        name: 'catalogueManage',
        component: catalogueManage,
        meta: {
          title: "目录管理",
          title: '目录管理',
          requireAuth: true, // æ ‡è¯†è¯¥è·¯ç”±æ˜¯å¦éœ€è¦ç™»å½•
        },
      },
      {
        path: "/dataUpdata",
        name: "dataUpdata",
        path: '/dataUpdata',
        name: 'dataUpdata',
        component: dataUpdata,
        meta: {
          title: "数据上传",
          title: '数据上传',
          requireAuth: true, // æ ‡è¯†è¯¥è·¯ç”±æ˜¯å¦éœ€è¦ç™»å½•
        },
      },
      {
        path: "/metadataManage",
        path: '/metadataManage',
        component: metadataManage,
        name: "metadataManage",
        name: 'metadataManage',
        meta: {
          title: "元数据管理",
          title: '元数据管理',
          requireAuth: true, // æ ‡è¯†è¯¥è·¯ç”±æ˜¯å¦éœ€è¦ç™»å½•
        },
      },
      {
        path: "/dataLoading",
        name: "dataLoading",
        path: '/dataLoading',
        name: 'dataLoading',
        component: dataLoading,
        meta: {
          title: "数据入库",
          title: '数据入库',
          requireAuth: true, // æ ‡è¯†è¯¥è·¯ç”±æ˜¯å¦éœ€è¦ç™»å½•
        },
      },
      {
        path: "/SpatialData",
        path: '/SpatialData',
        component: SpatialData,
        name: "SpatialData",
        name: 'SpatialData',
        meta: {
          title: "空间数据",
          title: '空间数据',
          requireAuth: true, // æ ‡è¯†è¯¥è·¯ç”±æ˜¯å¦éœ€è¦ç™»å½•
        },
      },
      {
        path: "/versionManage",
        path: '/versionManage',
        component: versionManage,
        name: "versionManage",
        name: 'versionManage',
        meta: {
          title: "版本管理",
          title: '版本管理',
          requireAuth: true, // æ ‡è¯†è¯¥è·¯ç”±æ˜¯å¦éœ€è¦ç™»å½•
        },
      },
      {
        path: "/dictionaryManage",
        path: '/dictionaryManage',
        component: dictionaryManage,
        name: "dictionaryManage",
        name: 'dictionaryManage',
        meta: {
          title: "字典管理",
          title: '字典管理',
          requireAuth: true, // æ ‡è¯†è¯¥è·¯ç”±æ˜¯å¦éœ€è¦ç™»å½•
        },
      },
      {
        path: "/styleManage",
        path: '/styleManage',
        component: styleManage,
        name: "styleManage",
        name: 'styleManage',
        meta: {
          title: "样式管理",
          title: '样式管理',
          requireAuth: true, // æ ‡è¯†è¯¥è·¯ç”±æ˜¯å¦éœ€è¦ç™»å½•
        },
      },
      {
        path: "/addStyle",
        path: '/addStyle',
        component: addStyle,
        name: "addStyle",
        name: 'addStyle',
        meta: {
          title: "样式管理",
          title: '样式管理',
          requireAuth: true, // æ ‡è¯†è¯¥è·¯ç”±æ˜¯å¦éœ€è¦ç™»å½•
        },
      },
      {
        path: "/userManagement",
        path: '/userManagement',
        component: userManagement,
        name: "userManagement",
        name: 'userManagement',
        meta: {
          title: "用户管理",
          title: '用户管理',
          requireAuth: true, // æ ‡è¯†è¯¥è·¯ç”±æ˜¯å¦éœ€è¦ç™»å½•
        },
      },
      {
        path: "/menuSettings",
        path: '/menuSettings',
        component: menuSettings,
        name: "menuSettings",
        name: 'menuSettings',
        meta: {
          title: "菜单设置",
          title: '菜单设置',
          requireAuth: true, // æ ‡è¯†è¯¥è·¯ç”±æ˜¯å¦éœ€è¦ç™»å½•
        },
      },
      {
        path: "/rests",
        path: '/rests',
        component: rests,
        name: "rests",
        name: 'rests',
        meta: {
          title: "其他设置",
          title: '其他设置',
          requireAuth: true, // æ ‡è¯†è¯¥è·¯ç”±æ˜¯å¦éœ€è¦ç™»å½•
        },
      },
      {
        path: "/authorityManagement",
        path: '/authorityManagement',
        component: authorityManagement,
        name: "authorityManagement",
        name: 'authorityManagement',
        meta: {
          title: "权限管理",
          title: '权限管理',
          requireAuth: true, // æ ‡è¯†è¯¥è·¯ç”±æ˜¯å¦éœ€è¦ç™»å½•
        },
      },
      {
        path: "/safetyManagement",
        path: '/safetyManagement',
        component: safetyManagement,
        name: "safetyManagement",
        name: 'safetyManagement',
        meta: {
          title: "安全管理",
          title: '安全管理',
          requireAuth: true, // æ ‡è¯†è¯¥è·¯ç”±æ˜¯å¦éœ€è¦ç™»å½•
        },
      },
      {
        path: "/operationLog",
        path: '/operationLog',
        component: operationLog,
        name: "operationLog",
        name: 'operationLog',
        meta: {
          title: "操作日志",
          title: '操作日志',
          requireAuth: true, // æ ‡è¯†è¯¥è·¯ç”±æ˜¯å¦éœ€è¦ç™»å½•
        },
      },
      {
        path: "/eventlogManage",
        component: eventlogManage,
        name: "eventlogManage",
        meta: {
          title: "事件日志管理",
          requireAuth: true, // æ ‡è¯†è¯¥è·¯ç”±æ˜¯å¦éœ€è¦ç™»å½•
        },
      },
      {
        path: "/logLog",
        path: '/logLog',
        component: logLog,
        name: "logLog",
        name: 'logLog',
        meta: {
          title: "登录日志",
          title: "事件日志管理",
          requireAuth: true, // æ ‡è¯†è¯¥è·¯ç”±æ˜¯å¦éœ€è¦ç™»å½•
        },
      },
      {
        path: "/systemMonitoring",
        path: "/blackwhiteList",
        component: blackwhiteList,
        name: "blackwhiteList",
        meta: {
          title: "黑/白名单",
          title: '登录日志',
          requireAuth: true, // æ ‡è¯†è¯¥è·¯ç”±æ˜¯å¦éœ€è¦ç™»å½•
        },
      },
      {
        path: '/systemMonitoring',
        component: systemMonitoring,
        name: "systemMonitoring",
        name: 'systemMonitoring',
        meta: {
          title: "系统监控",
          title: '系统监控',
          requireAuth: true, // æ ‡è¯†è¯¥è·¯ç”±æ˜¯å¦éœ€è¦ç™»å½•
        },
      },
      {
        path: "/databaseMonitoring",
        path: '/databaseMonitoring',
        component: databaseMonitoring,
        name: "databaseMonitoring",
        name: 'databaseMonitoring',
        meta: {
          title: "数据库监控",
          title: '数据库监控',
          requireAuth: true, // æ ‡è¯†è¯¥è·¯ç”±æ˜¯å¦éœ€è¦ç™»å½•
        },
      },
      {
        path: "/parameterConfiguration",
        component: parameterConfiguration,
        name: "parameterConfiguration",
        path: '/tokentool',
        component: tokentool,
        name: 'tokentool',
        meta: {
          title: "参数配置",
          title: 'Token工具',
          requireAuth: true, // æ ‡è¯†è¯¥è·¯ç”±æ˜¯å¦éœ€è¦ç™»å½•
        },
      },
      {
        path: '/parameterConfiguration',
        component: parameterConfiguration,
        name: 'parameterConfiguration',
        meta: {
          title: '参数配置',
          requireAuth: true, // æ ‡è¯†è¯¥è·¯ç”±æ˜¯å¦éœ€è¦ç™»å½•
        },
      },
src/views/Archive/index.vue
@@ -2,7 +2,7 @@
  <div class="archive">
    <div class="left_active">
      <el-card class="arch_card">
        <div class="title_active">管道资料</div>
        <div class="title_active">{{ $t("archive.name") }}</div>
        <el-divider />
        <el-tree
          :data="tree"
@@ -17,25 +17,50 @@
        <el-row :gutter="20">
          <el-col :span="6"></el-col>
          <el-col :span="4"
            ><div style="text-align: right; margin-top: 6px">关键字:</div>
            ><div style="text-align: right; margin-top: 6px">
              {{ $t("archive.keyword") }}:
            </div>
          </el-col>
          <el-col :span="4"> <el-input placeholder="请输入...." /></el-col>
          <el-col :span="4"><el-button type="primary">查询</el-button></el-col>
          <el-col :span="4">
            <el-input :placeholder="$t('common.pleaseInput')"
          /></el-col>
          <el-col :span="4"
            ><el-button type="primary">{{
              $t("common.iquery")
            }}</el-button></el-col
          >
          <el-col :span="6"></el-col>
        </el-row>
        <el-divider />
        <el-card shadow="never" class="middle_card">
          <el-table :data="tableData" style="width: 10000px" stripe>
            <el-table-column prop="name" label="名称" width="180" />
            <el-table-column prop="type" sortable label="类型" width="180" />
            <el-table-column
              prop="name"
              :label="$t('archive.uname')"
              width="180"
            />
            <el-table-column
              prop="type"
              sortable
              :label="$t('archive.type')"
              width="180"
            />
            <el-table-column
              prop="count"
              sortable
              label="修改次数"
              :label="$t('archive.modifications')"
              width="180"
            />
            <el-table-column prop="timer" sortable label="创建时间" />
            <el-table-column prop="state" label="状态" width="180" />
            <el-table-column
              prop="timer"
              sortable
              :label="$t('archive.creationtime')"
            />
            <el-table-column
              prop="state"
              :label="$t('archive.state')"
              width="180"
            />
          </el-table>
        </el-card>
        <el-divider />
src/views/Thematic/index.vue
@@ -3,54 +3,98 @@
    <el-card style="height: 100%">
      <el-row :gutter="20">
        <el-col :span="6">
          <div class="th_title">专题地图</div>
          <div class="th_title">{{ $t("themaic.name") }}</div>
        </el-col>
        <el-col :span="4" :offset="14">
          <el-input size="small" placeholder="请输入内容" suffix-icon="el-icon-search" v-model="input3">
          <el-input
            size="small"
            :placeholder="$t('common.pleaseInput')"
            suffix-icon="el-icon-search"
            v-model="input3"
          >
          </el-input>
        </el-col>
      </el-row>
      <el-divider />
      <el-row>
        <el-col :span="5">
          <label style="margin-right: 10px">地图名称:</label>
          <el-select v-model="selvalue" class="m-2" placeholder="Select" style="width: 150px">
            <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" />
          <label style="margin-right: 10px"
            >{{ $t("themaic.maptltle") }}:</label
          >
          <el-select
            v-model="selvalue"
            class="m-2"
            placeholder="Select"
            style="width: 150px"
          >
            <el-option
              v-for="item in options"
              :key="item.value"
              :label="item.label"
              :value="item.value"
            />
          </el-select>
        </el-col>
        <el-col :span="3">
          <div style="margin-top: 5px">
            <label style="margin-right: 10px">按时间排序:</label>
            <label style="margin-right: 10px"
              >{{ $t("themaic.sortbytime") }}:</label
            >
            <i @click="changetime(1)" :class="{ active: timeindex == 1 }" class="el-icon-caret-bottom"></i>
            <i
              @click="changetime(1)"
              :class="{ active: timeindex == 1 }"
              class="el-icon-caret-bottom"
            ></i>
            <i @click="changetime(2)" :class="{ active: timeindex == 2 }" class="el-icon-caret-top"></i>
            <i
              @click="changetime(2)"
              :class="{ active: timeindex == 2 }"
              class="el-icon-caret-top"
            ></i>
          </div>
        </el-col>
        <el-col :span="3">
          <div style="margin-top: 5px">
            <label style="margin-right: 10px">按浏览次数排序:</label>
            <label style="margin-right: 10px"
              >{{ $t("themaic.sortbyviews") }}:</label
            >
            <i @click="changeChecked(1)" :class="{ active: checkindex == 1 }" class="el-icon-caret-bottom"></i>
            <i
              @click="changeChecked(1)"
              :class="{ active: checkindex == 1 }"
              class="el-icon-caret-bottom"
            ></i>
            <i @click="changeChecked(2)" :class="{ active: checkindex == 2 }" class="el-icon-caret-top"></i>
            <i
              @click="changeChecked(2)"
              :class="{ active: checkindex == 2 }"
              class="el-icon-caret-top"
            ></i>
          </div>
        </el-col>
        <el-col :span="10"> </el-col>
        <el-col :span="3">
          <div style="margin-top: 5px">
            <label style="margin-right: 10px">共找到{{ listcount }}个结果</label>
            {{ $t("themaic.find") }}
            <label style="magin: 0% 15px">{{ listcount }}</label>
            {{ $t("themaic.record") }}
          </div>
        </el-col>
      </el-row>
      <el-divider />
      <el-card shadow="never" class="themic_middle_card">
        <div @click="showThematic(item)" v-for="(item, i) in middleList" class="midedle_div" :key="i">
        <div
          @click="showThematic(item)"
          v-for="(item, i) in middleList"
          class="midedle_div"
          :key="i"
        >
          <el-card class="middle_card">
            <!-- <div>
           </div> -->
            <table>
@@ -61,31 +105,43 @@
              </tr>
              <tr>
                <td>
                  <div class="middle_image"
                    :style="{ background: 'url(' + item.url + ') no-repeat center', 'background-size': '100% 100%', }">
                  </div>
                  <div
                    class="middle_image"
                    :style="{
                      background: 'url(' + item.url + ') no-repeat center',
                      'background-size': '100% 100%',
                    }"
                  ></div>
                </td>
              </tr>
              <tr>
                <td>
                  <div style="position: absolute;
    bottom: 2%;
    right: 4%;"><label class="t2">{{ item.time }}</label><label class="t2">浏览{{ item.count }}次</label></div>
                  <div style="position: absolute; bottom: 2%; right: 4%">
                    <label class="t2">{{ item.time }}</label
                    ><label class="t2">浏览{{ item.count }}次</label>
                  </div>
                </td>
              </tr>
            </table>
          </el-card>
        </div>
      </el-card>
      <el-pagination layout="prev, pager, next, jumper" :total="pagesize" @size-change="handleSizeChange"
        @current-change="handleCurrentChange" />
      <el-pagination
        layout="prev, pager, next, jumper"
        :total="pagesize"
        @size-change="handleSizeChange"
        @current-change="handleCurrentChange"
      />
    </el-card>
    <el-dialog class="themaic_dialog" :modal-append-to-body="true" :append-to-body="true" :show-close="false"
      :visible.sync="dialogVisible" width="99%" :before-close="handleClose">
    <el-dialog
      class="themaic_dialog"
      :modal-append-to-body="true"
      :append-to-body="true"
      :show-close="false"
      :visible.sync="dialogVisible"
      width="99%"
      :before-close="handleClose"
    >
      <map-View @close="close" :typeIndex="typeIndex"></map-View>
    </el-dialog>
  </div>
@@ -173,8 +229,8 @@
      typeIndex: "",
    };
  },
  mounted(){
     this.timeindex = 7888;
  mounted() {
  },
  methods: {
    close() {
@@ -210,8 +266,8 @@
    showThematic(res) {
      this.typeIndex = res.index;
      this.dialogVisible = true;
      // var url = "http://localhost/" + res.pop;
      // window.open(
src/views/maintenance/blackwhiteList.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,317 @@
<template>
  <div class="logLog_box">
    <My-bread
      :list="[
        `${$t('operatManage.operatManage')}`,
        `${$t('operatManage.blackwhiteList')}`,
      ]"
    ></My-bread>
    <el-divider />
    <el-tabs v-model="activeName" @tab-click="handleClick">
      <el-tab-pane :label="$t('operatManage.BWL.blackList')" name="first">
        <div class="inquire">
          <el-form ref="ruleForm" :model="form" :inline="true">
            <el-form-item
              :label="$t('operatManage.BWL.blackListIP')"
              prop="blackListIP"
            >
              <el-input
                v-model="form.blackListIP"
                :placeholder="$t('operatManage.BWL.listIPInfo')"
              />
            </el-form-item>
            <el-form-item
              :label="$t('operatManage.BWL.IPState')"
              prop="IPState"
            >
              <el-select v-model="form.IPState">
                <el-option :label="$t('operatManage.BWL.all')" value="0" />
                <el-option :label="$t('operatManage.BWL.validity')" value="1" />
                <el-option
                  :label="$t('operatManage.BWL.invalidity')"
                  value="2"
                />
              </el-select>
            </el-form-item>
            <el-form-item
              :label="$t('operatManage.BWL.interceptionCycle')"
              prop="interceptionCycle"
            >
              <el-input
                v-model="form.interceptionCycle"
                :placeholder="$t('operatManage.BWL.interceptionCycle')"
              />
            </el-form-item>
            <el-form-item prop="unit">
              <el-select v-model="form.unit">
                <el-option :label="$t('operatManage.BWL.seconds')" value="0" />
                <el-option :label="$t('operatManage.BWL.mins')" value="1" />
                <el-option :label="$t('operatManage.BWL.hours')" value="2" />
              </el-select>
            </el-form-item>
            <el-form-item
              :label="$t('operatManage.BWL.interceptionNumber')"
              prop="interceptionNumber"
            >
              <el-input
                v-model="form.interceptionNumber"
                :placeholder="$t('operatManage.BWL.interceptionNumber')"
              />
            </el-form-item>
            <el-form-item>
              <el-button @click="onSubmit">{{
                $t("operatManage.BWL.change")
              }}</el-button>
            </el-form-item>
            <el-form-item>
              <el-button @click="onSubmit"
                ><i class="el-icon-search"></i> &nbsp;{{
                  $t("operatManage.BWL.search")
                }}</el-button
              >
            </el-form-item>
            <el-form-item>
              <el-button @click="onSubmit"
                ><i class="el-icon-delete"></i> &nbsp;{{
                  $t("operatManage.BWL.reset")
                }}</el-button
              >
            </el-form-item>
          </el-form>
        </div>
        <div class="table_box">
          <el-table :data="tableData" stripe style="width: 100%" height="99%">
            <el-table-column
              align="center"
              type="index"
              :label="$t('operatManage.BWL.index')"
              width="70px"
            />
            <el-table-column
              align="center"
              prop="serviceName"
              :label="$t('operatManage.BWL.serviceName')"
            />
            <el-table-column
              align="center"
              prop="accessSourceSystem"
              :label="$t('operatManage.BWL.accessSourceSystem')"
            />
            <el-table-column
              align="center"
              prop="IPRequest"
              :label="$t('operatManage.BWL.IPRequest')"
            />
            <el-table-column
              align="center"
              prop="servicesRequestUrl"
              :label="$t('operatManage.BWL.servicesRequestUrl')"
            />
            <el-table-column
              align="center"
              prop="resourceIDRequest"
              :label="$t('operatManage.BWL.resourceIDRequest')"
            />
            <el-table-column
              align="center"
              prop="serviceSystemRequest"
              :label="$t('operatManage.BWL.serviceSystemRequest')"
            />
            <el-table-column
              align="center"
              prop="blackListStatus"
              :label="$t('operatManage.BWL.blackListStatus')"
            />
            <el-table-column
              align="center"
              prop="operate"
              :label="$t('operatManage.BWL.operate')"
            />
          </el-table>
          <div style="margin-top: 40px" class="pagination_box">
            <el-pagination
              @size-change="handleSizeChange"
              @current-change="handleCurrentChange"
              :current-page="currentPage"
              :page-sizes="[10, 20, 30, 40]"
              :page-size="10"
              layout="total, sizes, prev, pager, next, jumper"
              :total="0"
            >
            </el-pagination>
          </div>
        </div>
      </el-tab-pane>
      <el-tab-pane :label="$t('operatManage.BWL.whiteList')" name="second"
        ><div class="inquire">
          <el-form ref="ruleForm" :model="form" :inline="true">
            <el-form-item
              :label="$t('operatManage.BWL.whiteListIP')"
              prop="whiteListIP"
            >
              <el-input
                v-model="form.blackListIP"
                :placeholder="$t('operatManage.BWL.listIPInfo')"
              />
            </el-form-item>
            <el-form-item
              :label="$t('operatManage.BWL.IPState')"
              prop="IPState"
            >
              <el-select v-model="form.IPState">
                <el-option :label="$t('operatManage.BWL.all')" value="0" />
                <el-option :label="$t('operatManage.BWL.validity')" value="1" />
                <el-option
                  :label="$t('operatManage.BWL.invalidity')"
                  value="2"
                />
              </el-select>
            </el-form-item>
            <el-form-item>
              <el-button @click="onSubmit"
                ><i class="el-icon-search"></i> &nbsp;{{
                  $t("operatManage.BWL.search")
                }}</el-button
              >
            </el-form-item>
            <el-form-item>
              <el-button @click="onSubmit"
                ><i class="el-icon-delete"></i> &nbsp;{{
                  $t("operatManage.BWL.reset")
                }}</el-button
              >
            </el-form-item>
          </el-form>
        </div>
        <div class="table_box">
          <el-table :data="tableData" stripe style="width: 100%" height="99%">
            <el-table-column
              align="center"
              type="index"
              :label="$t('operatManage.BWL.index')"
              width="70px"
            />
            <el-table-column
              align="center"
              prop="whiteListIP"
              :label="$t('operatManage.BWL.whiteListIP')"
            />
            <el-table-column
              align="center"
              prop="effectiveDate"
              :label="$t('operatManage.BWL.effectiveDate')"
            />
            <el-table-column
              align="center"
              prop="requestUser"
              :label="$t('operatManage.BWL.requestUser')"
            />
            <el-table-column
              align="center"
              prop="tokenInfo"
              :label="$t('operatManage.BWL.tokenInfo')"
            />
            <el-table-column
              align="center"
              prop="whiteListStatus"
              :label="$t('operatManage.BWL.whiteListStatus')"
            />
            <el-table-column
              align="center"
              prop="operate"
              :label="$t('operatManage.BWL.operate')"
            />
          </el-table>
          <div style="margin-top: 40px" class="pagination_box">
            <el-pagination
              @size-change="handleSizeChange"
              @current-change="handleCurrentChange"
              :current-page="currentPage"
              :page-sizes="[10, 20, 30, 40]"
              :page-size="10"
              layout="total, sizes, prev, pager, next, jumper"
              :total="0"
            >
            </el-pagination>
          </div></div
      ></el-tab-pane>
    </el-tabs>
  </div>
</template>
  <script>
import MyBread from "../../components/MyBread.vue";
export default {
  //import引入的组件需要注入到对象中才能使用
  components: {
    MyBread,
  },
  data() {
    return {
      activeName: "first",
      currentPage: 1,
      form: {
        blackListIP: "",
        IPState: "",
        interceptionCycle: "",
        unit: "",
        interceptionNumber: "",
      },
      tableData: [],
    };
  },
  methods: {
    handleClick(tab, event) {
      console.log(tab, event);
    },
    handleSizeChange(val) {
      console.log(`每页 ${val} æ¡`);
    },
    handleCurrentChange(val) {
      console.log(`当前页: ${val}`);
    },
    onSubmit() {
      console.log("submit!");
    },
    resetForm(formName) {
      this.$refs[formName].resetFields();
    },
  },
  created() {},
};
</script>
  <style lang="less" scoped>
//@import url(); å¼•入公共cssç±»
.logLog_box {
  background: rgb(240, 242, 245);
  border-radius: 10px;
  height: 100%;
  padding: 10px;
  box-sizing: border-box;
  .el-input {
    width: 300px;
  }
  .inquire {
    padding: 10px;
    margin-top: 20px;
    background: #fff;
    border-radius: 5px;
    border: 1px solid rgb(202, 201, 204);
    margin-bottom: 20px;
  }
  .table_box {
    padding: 10px;
    background: #fff;
    border-radius: 5px;
    border: 1px solid rgb(202, 201, 204);
  }
  .text-center {
    text-align: center;
  }
}
</style>
src/views/maintenance/databaseMonitoring.vue
@@ -1,6 +1,11 @@
<template>
  <div class="databaseMonitoring_box">
    <My-bread :list="['运维管理', '数据库监控']"></My-bread>
    <My-bread
      :list="[
        `${$t('operatManage.operatManage')}`,
        `${$t('operatManage.databaseMonitoring')}`,
      ]"
    ></My-bread>
    <el-divider />
    <div class="table_box">
      <iframe
src/views/maintenance/eventlogManage.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,306 @@
<template>
  <div class="logLog_box">
    <My-bread
      :list="[
        `${$t('operatManage.operatManage')}`,
        `${$t('operatManage.eventlogManage')}`,
      ]"
    ></My-bread>
    <el-divider />
    <div class="inquire">
      <el-form ref="ruleForm" :model="form" :inline="true">
        <el-form-item :label="$t('operatManage.ELM.username')" prop="username">
          <el-input
            v-model="form.username"
            :placeholder="$t('operatManage.ELM.usernameInfo')"
          />
        </el-form-item>
        <el-form-item
          :label="$t('operatManage.ELM.ownedSystem')"
          prop="ownedSystem"
        >
          <el-select
            v-model="form.ownedSystem"
            :placeholder="$t('operatManage.ELM.please')"
          >
            <el-option :label="$t('operatManage.ELM.all')" value="all" />
            <el-option :label="$t('operatManage.ELM.one')" value="one" />
          </el-select>
        </el-form-item>
        <el-form-item
          :label="$t('operatManage.ELM.operationType')"
          prop="operationType"
        >
          <el-select
            v-model="form.operationType"
            :placeholder="$t('operatManage.ELM.please')"
          >
            <el-option :label="$t('operatManage.ELM.all')" value="all" />
            <el-option :label="$t('operatManage.ELM.add')" value="add" />
            <el-option :label="$t('operatManage.ELM.delete')" value="delete" />
            <el-option :label="$t('operatManage.ELM.edit')" value="edit" />
            <el-option :label="$t('operatManage.ELM.query')" value="query" />
          </el-select>
        </el-form-item>
        <el-form-item :label="$t('operatManage.ELM.date')" prop="date">
          <el-date-picker
            v-model="form.date"
            type="daterange"
            align="right"
            unlink-panels
            :range-separator="$t('operatManage.ELM.to')"
            :start-placeholder="$t('operatManage.ELM.startDate')"
            :end-placeholder="$t('operatManage.ELM.endDate')"
          >
          </el-date-picker>
        </el-form-item>
        <el-form-item :label="$t('operatManage.ELM.ip')" prop="requestIp">
          <el-input v-model="form.requestIp" placeholder="请输入" />
        </el-form-item>
        <el-form-item>
          <el-button @click="onSubmit"
            ><i class="el-icon-search"></i> &nbsp;{{
              $t("operatManage.ELM.search")
            }}</el-button
          >
        </el-form-item>
        <el-form-item>
          <el-button @click="resetForm('ruleForm')"
            ><i class="el-icon-delete"></i>&nbsp;{{
              $t("operatManage.ELM.reset")
            }}</el-button
          >
        </el-form-item>
      </el-form>
    </div>
    <div class="table_box">
      <el-table :data="tableData" stripe style="width: 100%" height="99%">
        <el-table-column
          align="center"
          type="index"
          :label="$t('operatManage.ELM.index')"
          width="70px"
        />
        <el-table-column
          align="center"
          prop="username"
          :label="$t('operatManage.ELM.username')"
        />
        <el-table-column
          align="center"
          prop="ip"
          :label="$t('operatManage.ELM.ip')"
        />
        <el-table-column
          align="center"
          prop="ownedSystem"
          :label="$t('operatManage.ELM.ownedSystem')"
        />
        <el-table-column
          align="center"
          prop="largeModuleName"
          :label="$t('operatManage.ELM.largeModuleName')"
        />
        <el-table-column
          align="center"
          prop="smallModuleName"
          :label="$t('operatManage.ELM.smallModuleName')"
        />
        <el-table-column
          align="center"
          prop="resourceName"
          :label="$t('operatManage.ELM.resourceName')"
        />
        <el-table-column
          align="center"
          prop="date"
          :label="$t('operatManage.ELM.date')"
        />
        <el-table-column
          align="center"
          prop="operationType"
          :label="$t('operatManage.ELM.operationType')"
        />
      </el-table>
      <div style="margin-top: 40px" class="pagination_box">
        <el-pagination
          @size-change="handleSizeChange"
          @current-change="handleCurrentChange"
          :current-page="currentPage"
          :page-sizes="[10, 20, 30, 40]"
          :page-size="10"
          layout="total, sizes, prev, pager, next, jumper"
          :total="9"
        >
        </el-pagination>
      </div>
    </div>
  </div>
</template>
<script>
import MyBread from "../../components/MyBread.vue";
export default {
  //import引入的组件需要注入到对象中才能使用
  components: {
    MyBread,
  },
  data() {
    return {
      currentPage: 1,
      form: {
        username: "",
        ownedSystem: "",
        requestIp: "",
        operationType: "",
        date: "",
      },
      tableData: [
        {
          username: "管理员",
          ip: "221.182.31.12",
          date: "2022-08-05",
          ownedSystem: "",
          largeModuleName: "运维监控",
          smallModuleName: "资源操作日志",
          resourceName: "",
          operationType: "查询",
        },
        {
          date: "2022-08-05",
          username: "管理员",
          ownedSystem: "",
          largeModuleName: "运维监控",
          smallModuleName: "资源操作日志",
          resourceName: "",
          operationType: "查询",
          ip: "221.182.31.12",
        },
        {
          date: "2022-08-05",
          username: "管理员",
          ownedSystem: "",
          largeModuleName: "运维监控",
          smallModuleName: "资源操作日志",
          resourceName: "",
          operationType: "查询",
          ip: "221.182.31.12",
        },
        {
          date: "2022-08-05",
          username: "管理员",
          ownedSystem: "",
          largeModuleName: "运维监控",
          smallModuleName: "资源操作日志",
          resourceName: "",
          operationType: "查询",
          ip: "221.182.31.12",
        },
        {
          date: "2022-08-05",
          username: "管理员",
          ownedSystem: "",
          largeModuleName: "运维监控",
          smallModuleName: "资源操作日志",
          resourceName: "",
          operationType: "查询",
          ip: "221.182.31.12",
        },
        {
          date: "2022-08-05",
          username: "管理员",
          ownedSystem: "",
          largeModuleName: "运维监控",
          smallModuleName: "资源操作日志",
          resourceName: "",
          operationType: "查询",
          ip: "221.182.31.12",
        },
        {
          date: "2022-08-05",
          username: "管理员",
          ownedSystem: "",
          largeModuleName: "运维监控",
          smallModuleName: "资源操作日志",
          resourceName: "",
          operationType: "查询",
          ip: "221.182.31.12",
        },
        {
          date: "2022-08-05",
          username: "管理员",
          ownedSystem: "",
          largeModuleName: "运维监控",
          smallModuleName: "资源操作日志",
          resourceName: "",
          operationType: "查询",
          ip: "221.182.31.12",
        },
        {
          date: "2022-08-05",
          username: "管理员",
          ownedSystem: "",
          largeModuleName: "运维监控",
          smallModuleName: "资源操作日志",
          resourceName: "",
          operationType: "查询",
          ip: "221.182.31.12",
        },
      ],
    };
  },
  methods: {
    handleSizeChange(val) {
      console.log(`每页 ${val} æ¡`);
    },
    handleCurrentChange(val) {
      console.log(`当前页: ${val}`);
    },
    onSubmit() {
      console.log("submit!");
    },
    resetForm(formName) {
      this.$refs[formName].resetFields();
    },
  },
  created() {},
};
</script>
<style lang="less" scoped>
//@import url(); å¼•入公共cssç±»
.logLog_box {
  background: rgb(240, 242, 245);
  border-radius: 10px;
  height: 100%;
  padding: 10px;
  box-sizing: border-box;
  .el-input {
    width: 300px;
  }
  .inquire {
    height: 110px;
    overflow: auto;
    padding: 10px;
    margin-top: 20px;
    background: #fff;
    border-radius: 5px;
    border: 1px solid rgb(202, 201, 204);
    margin-bottom: 20px;
    .el-form-item {
      margin: 7px;
    }
  }
  .table_box {
    height: 65%;
    padding: 10px;
    background: #fff;
    border-radius: 5px;
    border: 1px solid rgb(202, 201, 204);
  }
  .text-center {
    text-align: center;
  }
}
</style>
src/views/maintenance/logLog.vue
@@ -1,8 +1,16 @@
<template>
  <div class="logLog_box">
    <My-bread :list="['运维管理', '操作日志']"></My-bread>
    <My-bread
      :list="[
        `${$t('operatManage.operatManage')}`,
        `${$t('operatManage.logLog')}`,
      ]"
    ></My-bread>
    <el-divider />
    <div class="inquire">
      <div class="herder_box">
        {{ $t("operatManage.operationLogObj.queryRegion") }}
      </div>
      <el-form ref="formData1" :model="form" :inline="true">
        <!-- ç”¨æˆ·å -->
        <el-form-item :label="$t('common.username')" prop="name">
@@ -135,6 +143,12 @@
    border-radius: 5px;
    border: 1px solid rgb(202, 201, 204);
    margin-bottom: 20px;
    .herder_box {
      padding: 10px;
      border-bottom: 1px solid #ccc;
      margin-bottom: 20px;
      font-size: 14px;
    }
  }
  .table_box {
    padding: 10px;
src/views/maintenance/operationLog.vue
@@ -8,16 +8,28 @@
    ></My-bread>
    <el-divider />
    <div class="inquire">
    <div class="herder_box">
      {{$t('operatManage.operationLogObj.queryRegion')}}
    </div>
      <div class="herder_box">
        {{ $t("operatManage.operationLogObj.queryRegion") }}
      </div>
      <el-form ref="formData1" :model="form" :inline="true">
        <el-form-item :label="$t('operatManage.operationLogObj.resourceName')" prop="name">
          <el-input v-model="form.name" :placeholder="$t('operatManage.operationLogObj.pleaseInput')" />
        <el-form-item
          :label="$t('operatManage.operationLogObj.resourceName')"
          prop="name"
        >
          <el-input
            v-model="form.name"
            :placeholder="$t('operatManage.operationLogObj.pleaseInput')"
          />
        </el-form-item>
        <el-form-item :label="$t('operatManage.operationLogObj.operationType')" prop="region">
          <el-select v-model="form.region" :placeholder="$t('operatManage.operationLogObj.pleaseSelect')">
        <el-form-item
          :label="$t('operatManage.operationLogObj.operationType')"
          prop="region"
        >
          <el-select
            v-model="form.region"
            :placeholder="$t('operatManage.operationLogObj.pleaseSelect')"
          >
            <el-option label="全部" value="shanghai" />
            <el-option label="浏览" value="beijing" />
            <el-option label="下载" value="shanghai" />
@@ -44,28 +56,52 @@
          </el-col>
        </el-form-item>
        <el-form-item>
          <el-button @click="onSubmit" icon="el-icon-search">{{$t('operatManage.operationLogObj.inquire')}}</el-button>
          <el-button icon="el-icon-delete">{{$t('operatManage.operationLogObj.empty')}}</el-button>
          <el-button @click="onSubmit" icon="el-icon-search">{{
            $t("operatManage.operationLogObj.inquire")
          }}</el-button>
          <el-button icon="el-icon-delete">{{
            $t("operatManage.operationLogObj.empty")
          }}</el-button>
        </el-form-item>
      </el-form>
    </div>
    <div class="table_box">
      <el-table :data="tableData" stripe style="width: 100%">
        <!-- <el-table-column type="selection" width="55" /> -->
        <el-table-column :label="$t('operatManage.operationLogObj.num')" type="index" width="80"> </el-table-column>
        <el-table-column
          :label="$t('operatManage.operationLogObj.num')"
          type="index"
          width="80"
        >
        </el-table-column>
        <!-- <el-table-column prop="Accessnumber" label="访问编号" /> -->
        <el-table-column prop="name" :label="$t('operatManage.operationLogObj.resourceName')" />
        <el-table-column prop="operatingsystem" :label="$t('operatManage.operationLogObj.operationType')" />
        <el-table-column
          prop="name"
          :label="$t('operatManage.operationLogObj.resourceName')"
        />
        <el-table-column
          prop="operatingsystem"
          :label="$t('operatManage.operationLogObj.operationType')"
        />
        <!-- <el-table-column prop="loginaddress" label="登录地点" /> -->
        <el-table-column prop="browser" :label="$t('operatManage.operationLogObj.username')" />
        <el-table-column prop="operatinginformation" :label="$t('operatManage.operationLogObj.systematicName')" />
        <el-table-column
          prop="browser"
          :label="$t('operatManage.operationLogObj.username')"
        />
        <el-table-column
          prop="operatinginformation"
          :label="$t('operatManage.operationLogObj.systematicName')"
        />
        <el-table-column prop="ip" label="IP" />
        <el-table-column prop="date" :label="$t('operatManage.operationLogObj.operatingTime')" />
        <el-table-column
          prop="date"
          :label="$t('operatManage.operationLogObj.operatingTime')"
        />
        <!-- <el-table-column fixed="right" label="操作" width="100">
          <template #default>
            <el-button type="primary" size="small">删除</el-button>
          </template>
        </el-table-column> -->
@@ -217,7 +253,7 @@
      console.log("submit!");
    },
  },
  created() {},
  created() { },
};
</script>
<style lang="less" scoped>
@@ -235,7 +271,7 @@
    border-radius: 5px;
    border: 1px solid rgb(202, 201, 204);
    margin-bottom: 20px;
    .herder_box{
    .herder_box {
      padding: 10px;
      border-bottom: 1px solid #ccc;
      margin-bottom: 20px;
src/views/maintenance/tokentool.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,358 @@
<template>
  <div class="tokentool_box">
    <My-bread
      :list="[
        `${$t('operatManage.operatManage')}`,
        `${$t('operatManage.tokentool')}`,
      ]"
    ></My-bread>
    <el-divider />
    <div class="inquire">
      <el-tabs v-model="activeName" @tab-click="handleClick">
        <el-tab-pane
          :label="$t('operatManage.tokentoolObj.first')"
          name="first"
        >
          <div class="herder_box">
            {{ $t("operatManage.operationLogObj.queryRegion") }}
          </div>
          <el-form ref="formData1" :model="serviceform" :inline="true">
            <el-form-item
              :label="$t('operatManage.tokentoolObj.serviceid')"
              prop="name"
            >
              <el-input
                style="width: 200px"
                v-model="serviceform.serviceId"
                :placeholder="$t('common.pleaseInput')"
              />
            </el-form-item>
            <el-form-item
              :label="$t('operatManage.tokentoolObj.serviceName')"
              prop="region"
            >
              <el-input
                style="width: 200px"
                v-model="serviceform.serviceId"
                :placeholder="$t('common.pleaseInput')"
              />
            </el-form-item>
            <el-form-item>
              <el-button size="small" @click="onSubmit">{{
                $t("operatManage.tokentoolObj.excelTemplate")
              }}</el-button>
              <el-button size="small" @click="onSubmit">{{
                $t("operatManage.tokentoolObj.uploadExcel")
              }}</el-button>
            </el-form-item>
            <br />
            <el-form-item
              :label="$t('operatManage.tokentoolObj.serviceToken')"
              prop="region"
            >
              <el-input
                style="width: 200px"
                v-model="serviceform.serviceToken"
                :disabled="true"
                :title="$t('operatManage.tokentoolObj.pleaseInput')"
                :placeholder="$t('operatManage.tokentoolObj.pleaseInput')"
              />
            </el-form-item>
            <el-form-item>
              <el-button
                icon="el-icon-document-copy"
                size="small"
                @click="oncopy"
                >{{ $t("operatManage.tokentoolObj.copy") }}</el-button
              >
            </el-form-item>
            <!-- æŸ¥è¯¢ æ¸…空 -->
            <el-form-item>
              <el-button icon="el-icon-search" @click="onSubmit">{{
                $t("common.iquery")
              }}</el-button>
              <el-button icon="el-icon-delete" @click="onEmpty('formData1')">{{
                $t("common.empty")
              }}</el-button>
            </el-form-item>
          </el-form>
          <el-table :data="tableData" stripe style="width: 100%">
            <el-table-column
              width="120"
              type="index"
              :label="$t('operatManage.tokentoolObj.serialnumber')"
            />
            <el-table-column
              prop="creationtime"
              :label="$t('operatManage.tokentoolObj.serviceName')"
            />
            <el-table-column
              prop="creationtime"
              :label="$t('operatManage.tokentoolObj.serviceAddress')"
            />
            <el-table-column
              prop="creationtime"
              :label="$t('operatManage.tokentoolObj.porstServiceAddress')"
            />
            <el-table-column
              prop="creationtime"
              :label="$t('operatManage.tokentoolObj.serviceid')"
            />
            <el-table-column
              prop="creationtime"
              :label="$t('operatManage.tokentoolObj.sourcesystem')"
            />
            <el-table-column
              prop="creationtime"
              :label="$t('operatManage.tokentoolObj.pubicnot')"
            />
            <el-table-column
              prop="creationtime"
              :label="$t('operatManage.tokentoolObj.suffixID')"
            />
            <el-table-column
              prop="creationtime"
              :label="$t('operatManage.tokentoolObj.goonlinenot')"
            />
            <el-table-column
              prop="creationtime"
              :label="$t('operatManage.tokentoolObj.primaryKey')"
            />
            <el-table-column
              fixed="right"
              :label="$t('operatManage.tokentoolObj.operation')"
              width="300"
            >
              <template #default>
                <!-- <el-button type="primary" size="small">修改</el-button> -->
                <el-button type="danger" size="small">{{
                  $t("common.delete")
                }}</el-button>
                <el-button type="warning" size="small">{{
                  $t("common.update")
                }}</el-button>
                <el-button type="primary" size="small">{{
                  $t("operatManage.tokentoolObj.applyToken")
                }}</el-button>
              </template>
            </el-table-column>
          </el-table>
        </el-tab-pane>
        <el-tab-pane
          :label="$t('operatManage.tokentoolObj.second')"
          name="second"
        >
          <div class="herder_box">
            {{ $t("operatManage.operationLogObj.queryRegion") }}
          </div>
          <el-form ref="formData1" :model="tokenform" :inline="true">
            <el-form-item
              :label="$t('operatManage.tokentoolObj.serviceid')"
              prop="name"
            >
              <el-input
                style="width: 200px"
                v-model="tokenform.tokenId"
                :placeholder="$t('common.pleaseInput')"
              />
            </el-form-item>
            <el-form-item
              :label="$t('operatManage.tokentoolObj.tokenName')"
              prop="region"
            >
              <el-input
                style="width: 200px"
                v-model="tokenform.tokenName"
                :placeholder="$t('common.pleaseInput')"
              />
            </el-form-item>
            <el-form-item
              :label="$t('operatManage.tokentoolObj.tokenStatus')"
              prop="region"
            >
              <el-select
                v-model="tokenform.region"
                :placeholder="$t('common.choose')"
              >
                <el-option
                  :label="$t('operatManage.tokentoolObj.tokenAll')"
                  value="1"
                />
                <el-option
                  :label="$t('operatManage.tokentoolObj.tokeNormal')"
                  value="2"
                />
                <el-option
                  :label="$t('operatManage.tokentoolObj.tokenInvalid')"
                  value="3"
                />
              </el-select>
            </el-form-item>
            <!-- æŸ¥è¯¢ æ¸…空 -->
            <el-form-item>
              <el-button icon="el-icon-search" @click="onSubmit">{{
                $t("common.iquery")
              }}</el-button>
              <el-button icon="el-icon-delete" @click="onEmpty('formData1')">{{
                $t("common.empty")
              }}</el-button>
            </el-form-item>
          </el-form>
          <el-table :data="tableData1" stripe style="width: 100%">
            <el-table-column
              width="120"
              type="index"
              :label="$t('operatManage.tokentoolObj.serialnumber')"
            />
            <el-table-column
              prop="creationtime"
              :label="$t('operatManage.tokentoolObj.serviceName')"
            />
            <el-table-column
              prop="creationtime"
              :label="$t('operatManage.tokentoolObj.applysystem')"
            />
            <el-table-column
              prop="creationtime"
              :label="$t('operatManage.tokentoolObj.applicantIP')"
            />
            <el-table-column
              prop="creationtime"
              :label="$t('operatManage.tokentoolObj.applicationtime')"
            />
            <el-table-column
              prop="creationtime"
              :label="$t('operatManage.tokentoolObj.applytime')"
            />
            <el-table-column
              prop="creationtime"
              :label="$t('operatManage.tokentoolObj.tokenstring')"
            />
            <el-table-column
              prop="creationtime"
              :label="$t('operatManage.tokentoolObj.resourcetoken')"
            />
            <el-table-column
              prop="creationtime"
              :label="$t('operatManage.tokentoolObj.tokeninformation')"
            />
            <el-table-column
              prop="creationtime"
              :label="$t('operatManage.tokentoolObj.tokenStatus')"
            />
            <el-table-column
              fixed="right"
              :label="$t('operatManage.tokentoolObj.autorenew')"
            >
            </el-table-column>
            <el-table-column
              fixed="right"
              :label="$t('operatManage.tokentoolObj.operation')"
              width="200"
            >
              <template #default>
                <el-button type="danger" size="small">{{
                  $t("operatManage.tokentoolObj.tokenInvalid")
                }}</el-button>
                <el-button type="warning" size="small">{{
                  $t("operatManage.tokentoolObj.tokenRenewal")
                }}</el-button>
              </template>
            </el-table-column>
          </el-table>
        </el-tab-pane>
      </el-tabs>
      <div style="margin-top: 40px" class="pagination_box">
        <el-pagination
          @size-change="handleSizeChange"
          @current-change="handleCurrentChange"
          :current-page="currentPage4"
          :page-sizes="[10, 20, 30, 40]"
          :page-size="10"
          layout="total, sizes, prev, pager, next, jumper"
          :total="9"
        >
        </el-pagination>
      </div>
    </div>
  </div>
</template>
<script>
import MyBread from "../../components/MyBread.vue";
export default {
  //import引入的组件需要注入到对象中才能使用
  components: {
    MyBread,
  },
  data() {
    return {
      currentPage4: 1,
      activeName: 'first',
      serviceform: {
        serviceId: "",
        serviceName: "",
        serviceToken: "",
      },
      tokenform: {
        tokenId: "",
        tokenName: "",
        tokenStatus: ""
      },
      tableData: [{}],
      tableData1: [{}]
    };
  },
  methods: {
    handleSizeChange(val) {
      console.log(`每页 ${val} æ¡`);
    },
    handleCurrentChange(val) {
      console.log(`当前页: ${val}`);
    },
    onSubmit() {
      console.log("submit!");
    },
    onEmpty(formData1) {
      this.$refs[formData1].resetFields()//重置表单数据
    }
  },
  created() { },
};
</script>
<style scoped>
/deep/ .el-table__fixed-right {
  height: 100% !important;
}
</style>
<style lang="less" scoped>
//@import url(); å¼•入公共cssç±»
.tokentool_box {
  background: rgb(240, 242, 245);
  border-radius: 10px;
  height: 100%;
  padding: 10px;
  box-sizing: border-box;
  .inquire {
    padding: 10px;
    margin-top: 20px;
    background: #fff;
    border-radius: 5px;
    border: 1px solid rgb(202, 201, 204);
    margin-bottom: 20px;
    .herder_box {
      padding: 10px;
      border-bottom: 1px solid #ccc;
      margin-bottom: 20px;
      font-size: 14px;
    }
  }
}
</style>
vue.config.js
@@ -1,4 +1,9 @@
module.exports = {
  lintOnSave: false,
  publicPath: "./",
  publicPath: './',
  devServer: {
    host: '0.0.0.0', //指定要使用的 host
    port: 12315, //指定端口号以侦听
    hotOnly: false, //启用热模块替换,而无需页面刷新作为构建失败时的回退。
  },
};