lrf 9 months ago
parent
commit
9afae296a2

+ 1 - 6
.eslintrc.cjs

@@ -3,12 +3,7 @@ require('@rushstack/eslint-patch/modern-module-resolution')
 
 module.exports = {
   root: true,
-  extends: [
-    'plugin:vue/vue3-essential',
-    'eslint:recommended',
-    '@vue/eslint-config-prettier/skip-formatting',
-    './.eslintrc-auto-import.json'
-  ],
+  extends: ['plugin:vue/vue3-essential', 'eslint:recommended', '@vue/eslint-config-prettier/skip-formatting', './.eslintrc-auto-import.json'],
   parserOptions: {
     ecmaVersion: 'latest'
   },

+ 5 - 4
src/components/custom/custom-upload.vue

@@ -11,7 +11,8 @@
       :on-exceed="outLimit"
       :on-preview="filePreview"
       :on-success="onSuccess"
-      :before-remove="onRemove">
+      :before-remove="onRemove"
+    >
       <el-button type="primary">选择文件</el-button>
       <template #tip v-if="tip">
         <p style="color: #ff0000">{{ tip }}</p>
@@ -57,11 +58,11 @@ const emit = defineEmits(['change'])
 const filePreview = (file) => {
   // this.dialog = { show: true, url: file.url };
   window.open(file.url)
-};
+}
 // 只允许上传多少个文件
 const outLimit = () => {
   ElMessage.error(`只允许上传${limit.value}个文件`)
-};
+}
 // 上传成功,response:成功信息,file:图片信息,fileList:图片列表
 const onSuccess = (response, file) => {
   console.log(response)
@@ -85,7 +86,7 @@ const onRemove = () => {
   // let info = arr.value.filter((f) => f.id != file.id);
   // emit('change', info);
   return true
-};
+}
 
 // #endregion
 </script>

+ 1 - 2
src/layout/parts/Tagsbar.vue

@@ -51,14 +51,13 @@ import defaultSettings from '@/settings'
 import { storeToRefs } from 'pinia'
 import { resolve } from 'path-browserify'
 import { translateRouteTitle } from '@/utils/i18n'
-import { useTagsViewStore, useAppStore } from '@/store'
+import { useTagsViewStore } from '@/store'
 
 const { proxy } = getCurrentInstance()
 const router = useRouter()
 const route = useRoute()
 
 const tagsViewStore = useTagsViewStore()
-const appStore = useAppStore()
 
 const { visitedViews } = storeToRefs(tagsViewStore)
 const layout = computed(() => defaultSettings.layout)

+ 0 - 1
src/layout/site.js

@@ -1,4 +1,3 @@
-
 // 网站基本设置
 export const siteInfo = {
   display: false,

+ 1 - 1
src/router/guard.js

@@ -49,7 +49,7 @@ export const registerBeforeRouter = async (router) => {
 // 注册路由后置守卫
 
 export const registerAfterRouter = async (router) => {
-  router.afterEach(async (to, form) => {
+  router.afterEach(async (to) => {
     NProgress.done() //完成进度条
     if (to.path === '/login') {
       return

+ 1 - 1
src/router/register.js

@@ -40,7 +40,7 @@ const toOneDimensional = (routes) => {
 
 // 添加路由
 export const addUserRoutes = (menus, router) => {
-  return new Promise((resolve, reject) => {
+  return new Promise((resolve) => {
     // 将用户目录转换成普通对象
     const menuArr = toRaw(menus)
     // 将用户目录平铺成一维数组,并将目录过滤出去.目录不需要注册,不是组件

+ 1 - 2
src/views/account/center/parts/basic.vue

@@ -28,7 +28,6 @@ import { RoleStore } from '@/store/api/system/role'
 const roleStore = RoleStore()
 const userStore = UserStore()
 const user = computed(() => userStore.user)
-const router = useRouter()
 const $checkRes = inject('$checkRes')
 // 加载中
 const loading = ref(false)
@@ -60,7 +59,7 @@ const searchOther = async () => {
   if ($checkRes(result)) roleList.value = result.data
 }
 const search = async () => {
-  console.log(user.value);
+  console.log(user.value)
   form.value = user.value
 }
 const getRole = (i) => {

+ 9 - 9
src/views/hatch/dataV/mixin/autoResize.js

@@ -1,7 +1,7 @@
 import { debounce, observerDomResize } from '../util/index'
 
 export default {
-  data () {
+  data() {
     return {
       dom: '',
 
@@ -14,7 +14,7 @@ export default {
     }
   },
   methods: {
-    async autoResizeMixinInit () {
+    async autoResizeMixinInit() {
       const { initWH, getDebounceInitWHFun, bindDomResizeCallback, afterAutoResizeMixinInit } = this
 
       await initWH(false)
@@ -25,10 +25,10 @@ export default {
 
       if (typeof afterAutoResizeMixinInit === 'function') afterAutoResizeMixinInit()
     },
-    initWH (resize = true) {
+    initWH(resize = true) {
       const { $nextTick, $refs, ref, onResize } = this
 
-      return new Promise(resolve => {
+      return new Promise((resolve) => {
         $nextTick((_) => {
           const dom = (this.dom = $refs[ref])
           // this.width = dom ? dom.clientWidth : 0
@@ -48,19 +48,19 @@ export default {
         })
       })
     },
-    getDebounceInitWHFun () {
+    getDebounceInitWHFun() {
       const { initWH } = this
 
       this.debounceInitWHFun = debounce(100, initWH)
     },
-    bindDomResizeCallback () {
+    bindDomResizeCallback() {
       const { dom, debounceInitWHFun } = this
 
       this.domObserver = observerDomResize(dom, debounceInitWHFun)
 
       window.addEventListener('resize', debounceInitWHFun)
     },
-    unbindDomResizeCallback () {
+    unbindDomResizeCallback() {
       let { domObserver, debounceInitWHFun } = this
 
       if (!domObserver) return
@@ -72,12 +72,12 @@ export default {
       window.removeEventListener('resize', debounceInitWHFun)
     }
   },
-  mounted () {
+  mounted() {
     const { autoResizeMixinInit } = this
 
     autoResizeMixinInit()
   },
-  beforeDestroy () {
+  beforeDestroy() {
     const { unbindDomResizeCallback } = this
 
     unbindDomResizeCallback()

+ 2 - 11
src/views/hatch/index.vue

@@ -70,14 +70,7 @@
                 <div class="boxall">
                   <div class="titleall">优质企业</div>
                   <div class="list four">
-                    <vue3-seamless-scroll
-                      :list="listFour"
-                      :hover="true"
-                      :step="0.2"
-                      :wheel="true"
-                      :isWatch="true"
-                      class="scroll"
-                    >
+                    <vue3-seamless-scroll :list="listFour" :hover="true" :step="0.2" :wheel="true" :isWatch="true" class="scroll">
                       <div class="wrap" v-for="(item, index) in listFour" :key="index">
                         <div class="other">{{ item.name }}</div>
                         <div class="other">{{ item.number }}人</div>
@@ -112,9 +105,7 @@
           </div>
         </el-col>
       </el-row>
-      <div class="copyright">
-        版权所有:Copyright©2007-2024 吉林省华欣数字科技股份有限公司 │ 吉ICP备14005689号
-      </div>
+      <div class="copyright">版权所有:Copyright©2007-2024 吉林省华欣数字科技股份有限公司 │ 吉ICP备14005689号</div>
     </div>
   </myMain>
 </template>

+ 8 - 14
src/views/log/opera/index.vue

@@ -1,9 +1,7 @@
 <template>
   <div class="main animate__animated animate__backInRight" v-loading="loading">
-    <custom-search-bar :fields="fields.filter((f) => f.isSearch)" v-model="searchForm" @search="search"
-      @reset="toReset"> </custom-search-bar>
-    <custom-table :data="list" :fields="fields" @query="search" :total="total" :opera="opera" @detail="toDetail">
-    </custom-table>
+    <custom-search-bar :fields="fields.filter((f) => f.isSearch)" v-model="searchForm" @search="search" @reset="toReset"> </custom-search-bar>
+    <custom-table :data="list" :fields="fields" @query="search" :total="total" :opera="opera" @detail="toDetail"> </custom-table>
 
     <el-dialog v-model="dialogShow" :title="dialogTitle" :destroy-on-close="false" @close="toClose" :top="dialogTop">
       <el-form :data="form" label-width="150px" label-position="left">
@@ -33,9 +31,8 @@
             <el-form-item :label="$t('pages.log_opera.ip')">
               {{ getProp('ip') }}
             </el-form-item>
-
           </el-tab-pane>
-          <el-tab-pane :label="$t('pages.log_opera.viewTabs2')" name='2'>
+          <el-tab-pane :label="$t('pages.log_opera.viewTabs2')" name="2">
             <el-form-item :label="$t('pages.log_opera.params')">
               <params-table :data="form.params"></params-table>
             </el-form-item>
@@ -46,7 +43,7 @@
               <params-table :data="form.body"></params-table>
             </el-form-item>
           </el-tab-pane>
-          <el-tab-pane :label="$t('pages.log_opera.viewTabs3')" name='3'>
+          <el-tab-pane :label="$t('pages.log_opera.viewTabs3')" name="3">
             <el-row :gutter="20">
               <el-col :span="12">
                 <el-row>
@@ -67,7 +64,6 @@
             </el-row>
           </el-tab-pane>
         </el-tabs>
-
       </el-form>
     </el-dialog>
   </div>
@@ -76,12 +72,12 @@
 import dataView from './parts/dataView.vue'
 import paramsTable from './parts/paramsTable.vue'
 import { OperaLogsStore } from '@/store/api/log/opera'
-import { get } from 'lodash-es';
+import { get } from 'lodash-es'
 import { onMounted } from 'vue'
 const { t } = useI18n()
 const store = OperaLogsStore()
 const dialogShow = ref(false)
-const dialogTitle = t('pages.log_opera.dialogTitle');
+const dialogTitle = t('pages.log_opera.dialogTitle')
 const dialogTop = '15vh'
 const loading = ref(false)
 const $checkRes = inject('$checkRes')
@@ -120,14 +116,13 @@ const fields = [
 const opera = [{ label: t('common.detail'), method: 'detail' }]
 
 const toDetail = (data) => {
-  form.value = data;
-  dialogShow.value = true;
+  form.value = data
+  dialogShow.value = true
 }
 const getProp = (prop) => {
   return get(form.value, prop)
 }
 
-
 const toReset = async () => {
   searchForm.value = {}
   await search({ skip, limit })
@@ -136,6 +131,5 @@ const toClose = () => {
   form.value = {}
   dialogShow.value = false
 }
-
 </script>
 <style scoped lang="scss"></style>

+ 14 - 14
src/views/log/opera/parts/dataView.vue

@@ -1,39 +1,39 @@
 <template>
   <el-collapse v-model="acts" @change="handleChange">
-    <el-collapse-item v-for="i in list" :title="i.title" :name="i.title">
+    <el-collapse-item v-for="i in list" :key="i.title" :title="i.title" :name="i.title">
       <table-view :data="i.list"></table-view>
     </el-collapse-item>
   </el-collapse>
 </template>
 
 <script setup>
-import { isArray } from 'lodash-es';
+import { isArray } from 'lodash-es'
 import tableView from './tableView.vue'
 const props = defineProps({
-  data: Object,
+  data: Object
 })
 const { data } = toRefs(props)
 const list = ref([])
 const acts = ref([])
 const setData = () => {
-  const arr = [];
+  const arr = []
   for (const key in data.value) {
     let list = data.value[key]
     if (isArray(list) && list.length > 0) {
-      const nl = [];
-      let index = 1;
+      const nl = []
+      let index = 1
       for (const i of list) {
         const ldobj = {}
-        const ldarr = [];
+        const ldarr = []
         for (const key in i) {
-          if(key==='id')ldobj.key = i.id
+          if (key === 'id') ldobj.key = i.id
           ldarr.push({ key, value: i[key] })
         }
-        if(!ldobj.key) {
-          ldobj.key = `new data ${index}`;
-          index++;
+        if (!ldobj.key) {
+          ldobj.key = `new data ${index}`
+          index++
         }
-        ldobj.list = ldarr;
+        ldobj.list = ldarr
         nl.push(ldobj)
       }
       list = nl
@@ -41,8 +41,8 @@ const setData = () => {
     const obj = { title: key, list }
     arr.push(obj)
   }
-  list.value = arr;
+  list.value = arr
 }
-setData();
+setData()
 </script>
 <style scoped></style>

+ 2 - 2
src/views/log/opera/parts/paramsTable.vue

@@ -7,7 +7,7 @@
 
 <script setup>
 const props = defineProps({
-  data: Object,
+  data: Object
 })
 const { data } = toRefs(props)
 const list = ref([])
@@ -17,7 +17,7 @@ const setData = () => {
     const obj = { key, value: data.value[key] }
     arr.push(obj)
   }
-  list.value = arr;
+  list.value = arr
 }
 setData()
 </script>

+ 2 - 4
src/views/log/opera/parts/tableView.vue

@@ -1,21 +1,19 @@
 <template>
   <el-tabs v-model="act" type="card">
-    <el-tab-pane v-for="i in data" :label="i.key" :name="i.key">
+    <el-tab-pane v-for="i in data" :key="i.key" :label="i.key" :name="i.key">
       <el-table :data="i.list">
         <el-table-column align="center" label="键名" prop="key"></el-table-column>
         <el-table-column align="center" label="值" prop="value"></el-table-column>
       </el-table>
     </el-tab-pane>
   </el-tabs>
-
 </template>
 
 <script setup>
 const act = ref()
 const props = defineProps({
-  data: Array,
+  data: Array
 })
 const { data } = toRefs(props)
-
 </script>
 <style scoped></style>

+ 1 - 1
src/views/platform/news/index.vue

@@ -59,7 +59,7 @@ const data = ref([])
 const searchForm = ref({})
 const fields = [
   { label: t('pages.news.title'), model: 'title', isSearch: true },
-  { label: t('pages.news.tags'), model: 'tags', isSearch: true , format: (i) => getDict(i, 'tags')},
+  { label: t('pages.news.tags'), model: 'tags', isSearch: true, format: (i) => getDict(i, 'tags') },
   { label: t('pages.news.person'), model: 'person', isSearch: true },
   { label: t('pages.news.time'), model: 'time', type: 'date', isSearch: true },
   { label: t('pages.news.number'), model: 'number' },

+ 0 - 1
src/views/system/dept/parts/left-tree.vue

@@ -8,7 +8,6 @@
 </template>
 
 <script setup>
-import { Plus } from '@element-plus/icons-vue'
 import { inject } from 'vue'
 import { get } from 'lodash-es'
 const treeData = inject('treeData')

+ 1 - 1
src/views/system/dept/parts/right-view.vue

@@ -50,7 +50,7 @@ const buttonFields = [
   {
     label: t('common.create'),
     method: 'create',
-    disabled: (field) => !viewId.value
+    disabled: () => !viewId.value
   }
 ]
 </script>

+ 2 - 17
src/views/system/tags/index.vue

@@ -12,11 +12,6 @@
       <el-row>
         <el-col :span="24" v-if="dialog.type == '1'">
           <custom-form v-model="form" :fields="formFields" :rules="rules" @save="toSave">
-            <template #children>
-              <el-col :span="24" class="button">
-                <el-button type="primary" size="small" @click="toCadd()">添加</el-button>
-              </el-col>
-            </template>
             <template #is_use>
               <el-radio v-for="i in isUseList" :key="i.id" :label="i.value">{{ i.label }}</el-radio>
             </template>
@@ -28,7 +23,6 @@
 </template>
 
 <script setup>
-import moment from 'moment'
 const $checkRes = inject('$checkRes')
 import { cloneDeep, get } from 'lodash-es'
 const { t } = useI18n()
@@ -73,7 +67,7 @@ const formFields = [
   { label: t('pages.tags.remark'), model: 'remark', type: 'textarea' }
 ]
 const rules = reactive({
-  title: [{ required: true, message: t('pages.tags.titleMessage'), trigger: 'blur' }],
+  title: [{ required: true, message: t('pages.tags.titleMessage'), trigger: 'blur' }]
 })
 const dialog = ref({ type: '1', show: false, title: t('pages.tags.dialogTitle'), top: '15vh' })
 const form = ref({ type: '1', children: [] })
@@ -105,7 +99,7 @@ const getDict = (data, model) => {
     let res
     if (model == 'is_use') {
       res = isUseList.value.find((f) => f.value == data)
-    return get(res, 'label')
+      return get(res, 'label')
     }
   }
 }
@@ -125,15 +119,6 @@ const toDelete = async (data) => {
     search({ skip, limit })
   }
 }
-// 添加子目录
-const toCadd = async () => {
-  form.value.children.push({ type: '1', id: moment().valueOf() })
-}
-// 删除子目录
-const toCdel = async (item) => {
-  const children = form.value.children.filter((i) => i.id != item.id)
-  form.value.children = children
-}
 const toSave = async () => {
   const data = cloneDeep(form.value)
   let res