项目优化 图片等信息回显
This commit is contained in:
parent
b7fe30976d
commit
ad3c059115
|
|
@ -5,4 +5,4 @@ VUE_APP_TITLE = 市场部投标信息检索工具
|
||||||
ENV = 'production'
|
ENV = 'production'
|
||||||
|
|
||||||
# 市场部投标信息检索工具/生产环境
|
# 市场部投标信息检索工具/生产环境
|
||||||
VUE_APP_BASE_API = '/prod-api'
|
VUE_APP_BASE_API = '/search-tool-api'
|
||||||
|
|
|
||||||
|
|
@ -136,12 +136,12 @@ export default {
|
||||||
this.$modal.msgError(`文件格式不正确, 请上传${this.fileType.join('、')}格式的文件!`)
|
this.$modal.msgError(`文件格式不正确, 请上传${this.fileType.join('、')}格式的文件!`)
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
const isLt = file.size / 1024 / 1024 < this.fileSize
|
// const isLt = file.size / 1024 / 1024 < this.fileSize
|
||||||
if (!isLt) {
|
// if (!isLt) {
|
||||||
this.$modal.msgError(`图片大小不能超过 ${this.fileSize} MB`)
|
// this.$modal.msgError(`图片大小不能超过 ${this.fileSize} MB`)
|
||||||
|
|
||||||
return false
|
// return false
|
||||||
}
|
// }
|
||||||
this.$modal.loading('图片正在上传,请稍候...')
|
this.$modal.loading('图片正在上传,请稍候...')
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,49 +1,53 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="navbar">
|
<div class="navbar">
|
||||||
<hamburger id="hamburger-container" :is-active="sidebar.opened" class="hamburger-container" @toggleClick="toggleSideBar" />
|
<hamburger
|
||||||
|
id="hamburger-container"
|
||||||
|
:is-active="sidebar.opened"
|
||||||
|
class="hamburger-container"
|
||||||
|
@toggleClick="toggleSideBar"
|
||||||
|
/>
|
||||||
|
|
||||||
<breadcrumb v-if="!topNav" id="breadcrumb-container" class="breadcrumb-container" />
|
<breadcrumb v-if="!topNav" id="breadcrumb-container" class="breadcrumb-container" />
|
||||||
<top-nav v-if="topNav" id="topmenu-container" class="topmenu-container" />
|
<top-nav v-if="topNav" id="topmenu-container" class="topmenu-container" />
|
||||||
|
|
||||||
<div class="right-menu">
|
<div class="right-menu">
|
||||||
<template v-if="device!=='mobile'">
|
<template v-if="device !== 'mobile'">
|
||||||
<search id="header-search" class="right-menu-item" />
|
<search id="header-search" class="right-menu-item" />
|
||||||
|
|
||||||
<el-tooltip content="源码地址" effect="dark" placement="bottom">
|
<el-tooltip content="源码地址" effect="dark" placement="bottom">
|
||||||
<ruo-yi-git id="ruoyi-git" class="right-menu-item hover-effect" />
|
<ruo-yi-git id="ruoyi-git" class="right-menu-item hover-effect" />
|
||||||
</el-tooltip>
|
</el-tooltip>
|
||||||
|
|
||||||
<el-tooltip content="文档地址" effect="dark" placement="bottom">
|
<el-tooltip content="文档地址" effect="dark" placement="bottom">
|
||||||
<ruo-yi-doc id="ruoyi-doc" class="right-menu-item hover-effect" />
|
<ruo-yi-doc id="ruoyi-doc" class="right-menu-item hover-effect" />
|
||||||
</el-tooltip>
|
</el-tooltip>
|
||||||
|
|
||||||
<screenfull id="screenfull" class="right-menu-item hover-effect" />
|
<screenfull id="screenfull" class="right-menu-item hover-effect" />
|
||||||
|
|
||||||
<el-tooltip content="布局大小" effect="dark" placement="bottom">
|
<el-tooltip content="布局大小" effect="dark" placement="bottom">
|
||||||
<size-select id="size-select" class="right-menu-item hover-effect" />
|
<size-select id="size-select" class="right-menu-item hover-effect" />
|
||||||
</el-tooltip>
|
</el-tooltip>
|
||||||
|
</template>
|
||||||
|
|
||||||
</template>
|
<el-dropdown class="avatar-container right-menu-item hover-effect" trigger="click">
|
||||||
|
<div class="avatar-wrapper">
|
||||||
<el-dropdown class="avatar-container right-menu-item hover-effect" trigger="click">
|
<img :src="avatar" class="user-avatar" />
|
||||||
<div class="avatar-wrapper">
|
<i class="el-icon-caret-bottom" />
|
||||||
<img :src="avatar" class="user-avatar">
|
</div>
|
||||||
<i class="el-icon-caret-bottom" />
|
<el-dropdown-menu slot="dropdown">
|
||||||
|
<router-link to="/user/profile">
|
||||||
|
<el-dropdown-item>个人中心</el-dropdown-item>
|
||||||
|
</router-link>
|
||||||
|
<el-dropdown-item @click.native="setting = true">
|
||||||
|
<span>布局设置</span>
|
||||||
|
</el-dropdown-item>
|
||||||
|
<el-dropdown-item divided @click.native="logout">
|
||||||
|
<span>退出登录</span>
|
||||||
|
</el-dropdown-item>
|
||||||
|
</el-dropdown-menu>
|
||||||
|
</el-dropdown>
|
||||||
</div>
|
</div>
|
||||||
<el-dropdown-menu slot="dropdown">
|
|
||||||
<router-link to="/user/profile">
|
|
||||||
<el-dropdown-item>个人中心</el-dropdown-item>
|
|
||||||
</router-link>
|
|
||||||
<el-dropdown-item @click.native="setting = true">
|
|
||||||
<span>布局设置</span>
|
|
||||||
</el-dropdown-item>
|
|
||||||
<el-dropdown-item divided @click.native="logout">
|
|
||||||
<span>退出登录</span>
|
|
||||||
</el-dropdown-item>
|
|
||||||
</el-dropdown-menu>
|
|
||||||
</el-dropdown>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
|
@ -58,143 +62,141 @@ import RuoYiGit from '@/components/RuoYi/Git'
|
||||||
import RuoYiDoc from '@/components/RuoYi/Doc'
|
import RuoYiDoc from '@/components/RuoYi/Doc'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
Breadcrumb,
|
Breadcrumb,
|
||||||
TopNav,
|
TopNav,
|
||||||
Hamburger,
|
Hamburger,
|
||||||
Screenfull,
|
Screenfull,
|
||||||
SizeSelect,
|
SizeSelect,
|
||||||
Search,
|
Search,
|
||||||
RuoYiGit,
|
RuoYiGit,
|
||||||
RuoYiDoc
|
RuoYiDoc,
|
||||||
},
|
|
||||||
computed: {
|
|
||||||
...mapGetters([
|
|
||||||
'sidebar',
|
|
||||||
'avatar',
|
|
||||||
'device'
|
|
||||||
]),
|
|
||||||
setting: {
|
|
||||||
get() {
|
|
||||||
return this.$store.state.settings.showSettings
|
|
||||||
},
|
|
||||||
set(val) {
|
|
||||||
this.$store.dispatch('settings/changeSetting', {
|
|
||||||
key: 'showSettings',
|
|
||||||
value: val
|
|
||||||
})
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
topNav: {
|
computed: {
|
||||||
get() {
|
...mapGetters(['sidebar', 'avatar', 'device']),
|
||||||
return this.$store.state.settings.topNav
|
setting: {
|
||||||
}
|
get() {
|
||||||
}
|
return this.$store.state.settings.showSettings
|
||||||
},
|
},
|
||||||
methods: {
|
set(val) {
|
||||||
toggleSideBar() {
|
this.$store.dispatch('settings/changeSetting', {
|
||||||
this.$store.dispatch('app/toggleSideBar')
|
key: 'showSettings',
|
||||||
|
value: val,
|
||||||
|
})
|
||||||
|
},
|
||||||
|
},
|
||||||
|
topNav: {
|
||||||
|
get() {
|
||||||
|
return this.$store.state.settings.topNav
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
toggleSideBar() {
|
||||||
|
this.$store.dispatch('app/toggleSideBar')
|
||||||
|
},
|
||||||
|
logout() {
|
||||||
|
this.$confirm('确定注销并退出系统吗?', '提示', {
|
||||||
|
confirmButtonText: '确定',
|
||||||
|
cancelButtonText: '取消',
|
||||||
|
type: 'warning',
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
this.$store.dispatch('LogOut').then(() => {
|
||||||
|
location.href = process.env.NODE_ENV === 'production' ? '/search-tool/index' : '/index'
|
||||||
|
})
|
||||||
|
})
|
||||||
|
.catch(() => {})
|
||||||
|
},
|
||||||
},
|
},
|
||||||
logout() {
|
|
||||||
this.$confirm('确定注销并退出系统吗?', '提示', {
|
|
||||||
confirmButtonText: '确定',
|
|
||||||
cancelButtonText: '取消',
|
|
||||||
type: 'warning'
|
|
||||||
}).then(() => {
|
|
||||||
this.$store.dispatch('LogOut').then(() => {
|
|
||||||
location.href = '/index'
|
|
||||||
})
|
|
||||||
}).catch(() => {})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.navbar {
|
.navbar {
|
||||||
height: 50px;
|
height: 50px;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
position: relative;
|
position: relative;
|
||||||
background: #fff;
|
background: #fff;
|
||||||
box-shadow: 0 1px 4px rgba(0,21,41,.08);
|
box-shadow: 0 1px 4px rgba(0, 21, 41, 0.08);
|
||||||
|
|
||||||
.hamburger-container {
|
.hamburger-container {
|
||||||
line-height: 46px;
|
line-height: 46px;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
float: left;
|
float: left;
|
||||||
cursor: pointer;
|
|
||||||
transition: background .3s;
|
|
||||||
-webkit-tap-highlight-color:transparent;
|
|
||||||
|
|
||||||
&:hover {
|
|
||||||
background: rgba(0, 0, 0, .025)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.breadcrumb-container {
|
|
||||||
float: left;
|
|
||||||
}
|
|
||||||
|
|
||||||
.topmenu-container {
|
|
||||||
position: absolute;
|
|
||||||
left: 50px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.errLog-container {
|
|
||||||
display: inline-block;
|
|
||||||
vertical-align: top;
|
|
||||||
}
|
|
||||||
|
|
||||||
.right-menu {
|
|
||||||
float: right;
|
|
||||||
height: 100%;
|
|
||||||
line-height: 50px;
|
|
||||||
|
|
||||||
&:focus {
|
|
||||||
outline: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.right-menu-item {
|
|
||||||
display: inline-block;
|
|
||||||
padding: 0 8px;
|
|
||||||
height: 100%;
|
|
||||||
font-size: 18px;
|
|
||||||
color: #5a5e66;
|
|
||||||
vertical-align: text-bottom;
|
|
||||||
|
|
||||||
&.hover-effect {
|
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
transition: background .3s;
|
transition: background 0.3s;
|
||||||
|
-webkit-tap-highlight-color: transparent;
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
background: rgba(0, 0, 0, .025)
|
background: rgba(0, 0, 0, 0.025);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.avatar-container {
|
.breadcrumb-container {
|
||||||
margin-right: 30px;
|
float: left;
|
||||||
|
}
|
||||||
.avatar-wrapper {
|
|
||||||
margin-top: 5px;
|
.topmenu-container {
|
||||||
position: relative;
|
position: absolute;
|
||||||
|
left: 50px;
|
||||||
.user-avatar {
|
}
|
||||||
cursor: pointer;
|
|
||||||
width: 40px;
|
.errLog-container {
|
||||||
height: 40px;
|
display: inline-block;
|
||||||
border-radius: 10px;
|
vertical-align: top;
|
||||||
}
|
}
|
||||||
|
|
||||||
.el-icon-caret-bottom {
|
.right-menu {
|
||||||
cursor: pointer;
|
float: right;
|
||||||
position: absolute;
|
height: 100%;
|
||||||
right: -20px;
|
line-height: 50px;
|
||||||
top: 25px;
|
|
||||||
font-size: 12px;
|
&:focus {
|
||||||
}
|
outline: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.right-menu-item {
|
||||||
|
display: inline-block;
|
||||||
|
padding: 0 8px;
|
||||||
|
height: 100%;
|
||||||
|
font-size: 18px;
|
||||||
|
color: #5a5e66;
|
||||||
|
vertical-align: text-bottom;
|
||||||
|
|
||||||
|
&.hover-effect {
|
||||||
|
cursor: pointer;
|
||||||
|
transition: background 0.3s;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background: rgba(0, 0, 0, 0.025);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.avatar-container {
|
||||||
|
margin-right: 30px;
|
||||||
|
|
||||||
|
.avatar-wrapper {
|
||||||
|
margin-top: 5px;
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
.user-avatar {
|
||||||
|
cursor: pointer;
|
||||||
|
width: 40px;
|
||||||
|
height: 40px;
|
||||||
|
border-radius: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.el-icon-caret-bottom {
|
||||||
|
cursor: pointer;
|
||||||
|
position: absolute;
|
||||||
|
right: -20px;
|
||||||
|
top: 25px;
|
||||||
|
font-size: 12px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
||||||
|
|
@ -30,154 +30,155 @@ import Layout from '@/layout'
|
||||||
|
|
||||||
// 公共路由
|
// 公共路由
|
||||||
export const constantRoutes = [
|
export const constantRoutes = [
|
||||||
{
|
{
|
||||||
path: '/redirect',
|
path: '/redirect',
|
||||||
component: Layout,
|
component: Layout,
|
||||||
hidden: true,
|
hidden: true,
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
path: '/redirect/:path(.*)',
|
path: '/redirect/:path(.*)',
|
||||||
component: () => import('@/views/redirect')
|
component: () => import('@/views/redirect'),
|
||||||
}
|
},
|
||||||
]
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/login',
|
path: '/login',
|
||||||
component: () => import('@/views/login'),
|
component: () => import('@/views/login'),
|
||||||
hidden: true
|
hidden: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/register',
|
path: '/register',
|
||||||
component: () => import('@/views/register'),
|
component: () => import('@/views/register'),
|
||||||
hidden: true
|
hidden: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/404',
|
path: '/404',
|
||||||
component: () => import('@/views/error/404'),
|
component: () => import('@/views/error/404'),
|
||||||
hidden: true
|
hidden: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/401',
|
path: '/401',
|
||||||
component: () => import('@/views/error/401'),
|
component: () => import('@/views/error/401'),
|
||||||
hidden: true
|
hidden: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '',
|
path: '',
|
||||||
component: Layout,
|
component: Layout,
|
||||||
redirect: 'index',
|
redirect: 'index',
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
path: 'index',
|
path: 'index',
|
||||||
component: () => import('@/views/index'),
|
component: () => import('@/views/index'),
|
||||||
name: 'Index',
|
name: 'Index',
|
||||||
meta: { title: '首页', icon: 'dashboard', affix: true }
|
meta: { title: '首页', icon: 'dashboard', affix: true },
|
||||||
}
|
},
|
||||||
]
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/user',
|
path: '/user',
|
||||||
component: Layout,
|
component: Layout,
|
||||||
hidden: true,
|
hidden: true,
|
||||||
redirect: 'noredirect',
|
redirect: 'noredirect',
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
path: 'profile',
|
path: 'profile',
|
||||||
component: () => import('@/views/system/user/profile/index'),
|
component: () => import('@/views/system/user/profile/index'),
|
||||||
name: 'Profile',
|
name: 'Profile',
|
||||||
meta: { title: '个人中心', icon: 'user' }
|
meta: { title: '个人中心', icon: 'user' },
|
||||||
}
|
},
|
||||||
]
|
],
|
||||||
}
|
},
|
||||||
]
|
]
|
||||||
|
|
||||||
// 动态路由,基于用户权限动态去加载
|
// 动态路由,基于用户权限动态去加载
|
||||||
export const dynamicRoutes = [
|
export const dynamicRoutes = [
|
||||||
{
|
{
|
||||||
path: '/system/user-auth',
|
path: '/system/user-auth',
|
||||||
component: Layout,
|
component: Layout,
|
||||||
hidden: true,
|
hidden: true,
|
||||||
permissions: ['system:user:edit'],
|
permissions: ['system:user:edit'],
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
path: 'role/:userId(\\d+)',
|
path: 'role/:userId(\\d+)',
|
||||||
component: () => import('@/views/system/user/authRole'),
|
component: () => import('@/views/system/user/authRole'),
|
||||||
name: 'AuthRole',
|
name: 'AuthRole',
|
||||||
meta: { title: '分配角色', activeMenu: '/system/user' }
|
meta: { title: '分配角色', activeMenu: '/system/user' },
|
||||||
}
|
},
|
||||||
]
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/system/role-auth',
|
path: '/system/role-auth',
|
||||||
component: Layout,
|
component: Layout,
|
||||||
hidden: true,
|
hidden: true,
|
||||||
permissions: ['system:role:edit'],
|
permissions: ['system:role:edit'],
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
path: 'user/:roleId(\\d+)',
|
path: 'user/:roleId(\\d+)',
|
||||||
component: () => import('@/views/system/role/authUser'),
|
component: () => import('@/views/system/role/authUser'),
|
||||||
name: 'AuthUser',
|
name: 'AuthUser',
|
||||||
meta: { title: '分配用户', activeMenu: '/system/role' }
|
meta: { title: '分配用户', activeMenu: '/system/role' },
|
||||||
}
|
},
|
||||||
]
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/system/dict-data',
|
path: '/system/dict-data',
|
||||||
component: Layout,
|
component: Layout,
|
||||||
hidden: true,
|
hidden: true,
|
||||||
permissions: ['system:dict:list'],
|
permissions: ['system:dict:list'],
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
path: 'index/:dictId(\\d+)',
|
path: 'index/:dictId(\\d+)',
|
||||||
component: () => import('@/views/system/dict/data'),
|
component: () => import('@/views/system/dict/data'),
|
||||||
name: 'Data',
|
name: 'Data',
|
||||||
meta: { title: '字典数据', activeMenu: '/system/dict' }
|
meta: { title: '字典数据', activeMenu: '/system/dict' },
|
||||||
}
|
},
|
||||||
]
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/monitor/job-log',
|
path: '/monitor/job-log',
|
||||||
component: Layout,
|
component: Layout,
|
||||||
hidden: true,
|
hidden: true,
|
||||||
permissions: ['monitor:job:list'],
|
permissions: ['monitor:job:list'],
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
path: 'index/:jobId(\\d+)',
|
path: 'index/:jobId(\\d+)',
|
||||||
component: () => import('@/views/monitor/job/log'),
|
component: () => import('@/views/monitor/job/log'),
|
||||||
name: 'JobLog',
|
name: 'JobLog',
|
||||||
meta: { title: '调度日志', activeMenu: '/monitor/job' }
|
meta: { title: '调度日志', activeMenu: '/monitor/job' },
|
||||||
}
|
},
|
||||||
]
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/tool/gen-edit',
|
path: '/tool/gen-edit',
|
||||||
component: Layout,
|
component: Layout,
|
||||||
hidden: true,
|
hidden: true,
|
||||||
permissions: ['tool:gen:edit'],
|
permissions: ['tool:gen:edit'],
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
path: 'index/:tableId(\\d+)',
|
path: 'index/:tableId(\\d+)',
|
||||||
component: () => import('@/views/tool/gen/editTable'),
|
component: () => import('@/views/tool/gen/editTable'),
|
||||||
name: 'GenEdit',
|
name: 'GenEdit',
|
||||||
meta: { title: '修改生成配置', activeMenu: '/tool/gen' }
|
meta: { title: '修改生成配置', activeMenu: '/tool/gen' },
|
||||||
}
|
},
|
||||||
]
|
],
|
||||||
}
|
},
|
||||||
]
|
]
|
||||||
|
|
||||||
// 防止连续点击多次路由报错
|
// 防止连续点击多次路由报错
|
||||||
let routerPush = Router.prototype.push;
|
let routerPush = Router.prototype.push
|
||||||
let routerReplace = Router.prototype.replace;
|
let routerReplace = Router.prototype.replace
|
||||||
// push
|
// push
|
||||||
Router.prototype.push = function push(location) {
|
Router.prototype.push = function push(location) {
|
||||||
return routerPush.call(this, location).catch(err => err)
|
return routerPush.call(this, location).catch((err) => err)
|
||||||
}
|
}
|
||||||
// replace
|
// replace
|
||||||
Router.prototype.replace = function push(location) {
|
Router.prototype.replace = function push(location) {
|
||||||
return routerReplace.call(this, location).catch(err => err)
|
return routerReplace.call(this, location).catch((err) => err)
|
||||||
}
|
}
|
||||||
|
|
||||||
export default new Router({
|
export default new Router({
|
||||||
mode: 'history', // 去掉url中的#
|
mode: 'history', // 去掉url中的#
|
||||||
scrollBehavior: () => ({ y: 0 }),
|
scrollBehavior: () => ({ y: 0 }),
|
||||||
routes: constantRoutes
|
routes: constantRoutes,
|
||||||
|
base: process.env.NODE_ENV === 'production' ? '/search-tool' : '', //根据运行环境设置
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -96,7 +96,7 @@ service.interceptors.response.use(
|
||||||
.then(() => {
|
.then(() => {
|
||||||
isRelogin.show = false
|
isRelogin.show = false
|
||||||
store.dispatch('LogOut').then(() => {
|
store.dispatch('LogOut').then(() => {
|
||||||
location.href = '/index'
|
location.href = process.env.NODE_ENV === 'production' ? '/search-tool/index' : '/index'
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
.catch(() => {
|
.catch(() => {
|
||||||
|
|
|
||||||
|
|
@ -224,6 +224,7 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import UploadImg from '@/components/UploadImg'
|
import UploadImg from '@/components/UploadImg'
|
||||||
|
import { getToken } from '@/utils/auth'
|
||||||
import { addKeyPersonAPI, editKeyPersonAPI } from '@/api/company-manage/key-person'
|
import { addKeyPersonAPI, editKeyPersonAPI } from '@/api/company-manage/key-person'
|
||||||
import { deleteImgAPI } from '@/api/common'
|
import { deleteImgAPI } from '@/api/common'
|
||||||
export default {
|
export default {
|
||||||
|
|
@ -245,6 +246,7 @@ export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
uploadFileUrl: process.env.VUE_APP_BASE_API + '/system/file/uploadFiles',
|
uploadFileUrl: process.env.VUE_APP_BASE_API + '/system/file/uploadFiles',
|
||||||
|
fileViewUrl: process.env.VUE_APP_BASE_API + '/files',
|
||||||
deleteFileList: [],
|
deleteFileList: [],
|
||||||
uploadOuterVisible: false,
|
uploadOuterVisible: false,
|
||||||
addAndEditForm: {
|
addAndEditForm: {
|
||||||
|
|
@ -550,7 +552,7 @@ export default {
|
||||||
.map((e) => {
|
.map((e) => {
|
||||||
return {
|
return {
|
||||||
...e,
|
...e,
|
||||||
url: e.filePath,
|
url: this.fileViewUrl + e.filePath.split('oadPath')[1] + '?file_token=' + getToken(),
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
this.addAndEditForm.idCardBack = this.addAndEditForm.tbFileSourceVoList
|
this.addAndEditForm.idCardBack = this.addAndEditForm.tbFileSourceVoList
|
||||||
|
|
@ -558,7 +560,7 @@ export default {
|
||||||
.map((e) => {
|
.map((e) => {
|
||||||
return {
|
return {
|
||||||
...e,
|
...e,
|
||||||
url: e.filePath,
|
url: this.fileViewUrl + e.filePath.split('oadPath')[1] + '?file_token=' + getToken(),
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
this.addAndEditForm.diplomaImg = this.addAndEditForm.tbFileSourceVoList
|
this.addAndEditForm.diplomaImg = this.addAndEditForm.tbFileSourceVoList
|
||||||
|
|
@ -566,7 +568,7 @@ export default {
|
||||||
.map((e) => {
|
.map((e) => {
|
||||||
return {
|
return {
|
||||||
...e,
|
...e,
|
||||||
url: e.filePath,
|
url: this.fileViewUrl + e.filePath.split('oadPath')[1] + '?file_token=' + getToken(),
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
this.addAndEditForm.otherImg = this.addAndEditForm.tbFileSourceVoList
|
this.addAndEditForm.otherImg = this.addAndEditForm.tbFileSourceVoList
|
||||||
|
|
@ -574,7 +576,7 @@ export default {
|
||||||
.map((e) => {
|
.map((e) => {
|
||||||
return {
|
return {
|
||||||
...e,
|
...e,
|
||||||
url: e.filePath,
|
url: this.fileViewUrl + e.filePath.split('oadPath')[1] + '?file_token=' + getToken(),
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -205,6 +205,7 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import UploadImg from '@/components/UploadImg'
|
import UploadImg from '@/components/UploadImg'
|
||||||
|
import { getToken } from '@/utils/auth'
|
||||||
import { addOtherPersonAPI, editOtherPersonAPI } from '@/api/company-manage/other-person'
|
import { addOtherPersonAPI, editOtherPersonAPI } from '@/api/company-manage/other-person'
|
||||||
import { deleteImgAPI } from '@/api/common'
|
import { deleteImgAPI } from '@/api/common'
|
||||||
export default {
|
export default {
|
||||||
|
|
@ -227,6 +228,7 @@ export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
uploadFileUrl: process.env.VUE_APP_BASE_API + '/system/file/uploadFiles',
|
uploadFileUrl: process.env.VUE_APP_BASE_API + '/system/file/uploadFiles',
|
||||||
|
fileViewUrl: process.env.VUE_APP_BASE_API + '/files',
|
||||||
uploadOuterVisible: false,
|
uploadOuterVisible: false,
|
||||||
addAndEditForm: {
|
addAndEditForm: {
|
||||||
userName: '', // 姓名
|
userName: '', // 姓名
|
||||||
|
|
@ -512,7 +514,7 @@ export default {
|
||||||
.map((e) => {
|
.map((e) => {
|
||||||
return {
|
return {
|
||||||
...e,
|
...e,
|
||||||
url: e.filePath,
|
url: this.fileViewUrl + e.filePath.split('oadPath')[1] + '?file_token=' + getToken(),
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
this.addAndEditForm.idCardBack = this.addAndEditForm.tbFileSourceVoList
|
this.addAndEditForm.idCardBack = this.addAndEditForm.tbFileSourceVoList
|
||||||
|
|
@ -520,7 +522,7 @@ export default {
|
||||||
.map((e) => {
|
.map((e) => {
|
||||||
return {
|
return {
|
||||||
...e,
|
...e,
|
||||||
url: e.filePath,
|
url: this.fileViewUrl + e.filePath.split('oadPath')[1] + '?file_token=' + getToken(),
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
this.addAndEditForm.diplomaImg = this.addAndEditForm.tbFileSourceVoList
|
this.addAndEditForm.diplomaImg = this.addAndEditForm.tbFileSourceVoList
|
||||||
|
|
@ -528,7 +530,7 @@ export default {
|
||||||
.map((e) => {
|
.map((e) => {
|
||||||
return {
|
return {
|
||||||
...e,
|
...e,
|
||||||
url: e.filePath,
|
url: this.fileViewUrl + e.filePath.split('oadPath')[1] + '?file_token=' + getToken(),
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
this.addAndEditForm.otherImg = this.addAndEditForm.tbFileSourceVoList
|
this.addAndEditForm.otherImg = this.addAndEditForm.tbFileSourceVoList
|
||||||
|
|
@ -536,7 +538,7 @@ export default {
|
||||||
.map((e) => {
|
.map((e) => {
|
||||||
return {
|
return {
|
||||||
...e,
|
...e,
|
||||||
url: e.filePath,
|
url: this.fileViewUrl + e.filePath.split('oadPath')[1] + '?file_token=' + getToken(),
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -179,7 +179,15 @@
|
||||||
margin-bottom: 4px;
|
margin-bottom: 4px;
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
<span>材料{{ index + 1 }}</span>
|
<!-- <span>材料{{ index + 1 }}</span> -->
|
||||||
|
|
||||||
|
<el-image
|
||||||
|
:src="item.url"
|
||||||
|
:preview-src-list="[item.url]"
|
||||||
|
style="width: 48px; height: 48px; margin-right: 4px"
|
||||||
|
>
|
||||||
|
</el-image>
|
||||||
|
|
||||||
<el-button
|
<el-button
|
||||||
type="text"
|
type="text"
|
||||||
size="mini"
|
size="mini"
|
||||||
|
|
@ -279,6 +287,7 @@
|
||||||
<script>
|
<script>
|
||||||
import moment from 'moment'
|
import moment from 'moment'
|
||||||
import UploadImg from '@/components/UploadImg'
|
import UploadImg from '@/components/UploadImg'
|
||||||
|
import { getToken } from '@/utils/auth'
|
||||||
import { getKeyPersonListAPI } from '@/api/common'
|
import { getKeyPersonListAPI } from '@/api/common'
|
||||||
import { addCompanyPerformanceAPI, editCompanyPerformanceAPI } from '@/api/company-manage/performance-manage'
|
import { addCompanyPerformanceAPI, editCompanyPerformanceAPI } from '@/api/company-manage/performance-manage'
|
||||||
export default {
|
export default {
|
||||||
|
|
@ -314,6 +323,8 @@ export default {
|
||||||
return {
|
return {
|
||||||
uploadOuterVisible: false,
|
uploadOuterVisible: false,
|
||||||
uploadFileUrl: process.env.VUE_APP_BASE_API + '/system/file/uploadFiles',
|
uploadFileUrl: process.env.VUE_APP_BASE_API + '/system/file/uploadFiles',
|
||||||
|
fileViewUrl: process.env.VUE_APP_BASE_API + '/files',
|
||||||
|
token: getToken(),
|
||||||
deleteFileList: [],
|
deleteFileList: [],
|
||||||
addAndEditForm: {
|
addAndEditForm: {
|
||||||
proName: '', // 工程名称
|
proName: '', // 工程名称
|
||||||
|
|
@ -522,6 +533,7 @@ export default {
|
||||||
filePath,
|
filePath,
|
||||||
fileName,
|
fileName,
|
||||||
fileType: 1,
|
fileType: 1,
|
||||||
|
url: this.fileViewUrl + filePath.split('oadPath')[1] + '?file_token=' + getToken(),
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
this.addTableList[this.keyTbCurrentIndex].tbFileSourceVoList.push({
|
this.addTableList[this.keyTbCurrentIndex].tbFileSourceVoList.push({
|
||||||
|
|
@ -529,9 +541,15 @@ export default {
|
||||||
filePath: item.filePath,
|
filePath: item.filePath,
|
||||||
fileName: item.fileName,
|
fileName: item.fileName,
|
||||||
fileType: 1,
|
fileType: 1,
|
||||||
|
url: this.fileViewUrl + item.filePath.split('oadPath')[1] + '?file_token=' + getToken(),
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
console.log(
|
||||||
|
'this.addTableList[this.keyTbCurrentIndex].tbFileSourceVoList',
|
||||||
|
this.addTableList[this.keyTbCurrentIndex].tbFileSourceVoList,
|
||||||
|
)
|
||||||
this.uploadOuterVisible = false
|
this.uploadOuterVisible = false
|
||||||
},
|
},
|
||||||
onHandleDeleteFile(index, fileIndex) {
|
onHandleDeleteFile(index, fileIndex) {
|
||||||
|
|
@ -543,7 +561,7 @@ export default {
|
||||||
this.proveFileList = this.addTableList[index].tbFileSourceVoList.map((e) => {
|
this.proveFileList = this.addTableList[index].tbFileSourceVoList.map((e) => {
|
||||||
return {
|
return {
|
||||||
...e,
|
...e,
|
||||||
url: e.filePath,
|
url: this.fileViewUrl + e.filePath.split('oadPath')[1] + '?file_token=' + getToken(),
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
this.uploadOuterVisible = true
|
this.uploadOuterVisible = true
|
||||||
|
|
@ -559,10 +577,19 @@ export default {
|
||||||
this.addTableList = []
|
this.addTableList = []
|
||||||
this.addTableList = newValueObj.tbCompanyPerfRelList
|
this.addTableList = newValueObj.tbCompanyPerfRelList
|
||||||
|
|
||||||
|
this.addTableList.forEach((e) => {
|
||||||
|
e.tbFileSourceVoList = e.tbFileSourceVoList.map((item) => {
|
||||||
|
return {
|
||||||
|
...item,
|
||||||
|
url: this.fileViewUrl + item.filePath.split('oadPath')[1] + '?file_token=' + getToken(),
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
this.addAndEditForm.htKeyFileList = newVal.tbFileSourceVoList.map((e) => {
|
this.addAndEditForm.htKeyFileList = newVal.tbFileSourceVoList.map((e) => {
|
||||||
return {
|
return {
|
||||||
...e,
|
...e,
|
||||||
url: e.filePath,
|
url: this.fileViewUrl + e.filePath.split('oadPath')[1] + '?file_token=' + getToken(),
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -89,6 +89,7 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import UploadImg from '@/components/UploadImg'
|
import UploadImg from '@/components/UploadImg'
|
||||||
|
import { getToken } from '@/utils/auth'
|
||||||
import { addSubManageAPI, editSubManageAPI } from '@/api/sub-manage/sub-manage'
|
import { addSubManageAPI, editSubManageAPI } from '@/api/sub-manage/sub-manage'
|
||||||
import { deleteImgAPI } from '@/api/common'
|
import { deleteImgAPI } from '@/api/common'
|
||||||
export default {
|
export default {
|
||||||
|
|
@ -111,6 +112,7 @@ export default {
|
||||||
return {
|
return {
|
||||||
uploadOuterVisible: false,
|
uploadOuterVisible: false,
|
||||||
uploadFileUrl: process.env.VUE_APP_BASE_API + '/system/file/uploadFiles',
|
uploadFileUrl: process.env.VUE_APP_BASE_API + '/system/file/uploadFiles',
|
||||||
|
fileViewUrl: process.env.VUE_APP_BASE_API + '/files',
|
||||||
addAndEditForm: {
|
addAndEditForm: {
|
||||||
subName: '',
|
subName: '',
|
||||||
address: '',
|
address: '',
|
||||||
|
|
@ -236,7 +238,7 @@ export default {
|
||||||
.map((e) => {
|
.map((e) => {
|
||||||
return {
|
return {
|
||||||
...e,
|
...e,
|
||||||
url: e.filePath,
|
url: this.fileViewUrl + e.filePath.split('oadPath')[1] + '?file_token=' + getToken(),
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -190,6 +190,7 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import UploadImg from '@/components/UploadImg'
|
import UploadImg from '@/components/UploadImg'
|
||||||
|
import { getToken } from '@/utils/auth'
|
||||||
import { getSubListAPI, getSubKeyPersonListAPI, deleteImgAPI } from '@/api/common'
|
import { getSubListAPI, getSubKeyPersonListAPI, deleteImgAPI } from '@/api/common'
|
||||||
import { addSubPerformanceManageAPI, editSubPerformanceManageAPI } from '@/api/sub-manage/sub-performance-manage'
|
import { addSubPerformanceManageAPI, editSubPerformanceManageAPI } from '@/api/sub-manage/sub-performance-manage'
|
||||||
export default {
|
export default {
|
||||||
|
|
@ -212,6 +213,7 @@ export default {
|
||||||
return {
|
return {
|
||||||
uploadOuterVisible: false,
|
uploadOuterVisible: false,
|
||||||
uploadFileUrl: process.env.VUE_APP_BASE_API + '/system/file/uploadFiles',
|
uploadFileUrl: process.env.VUE_APP_BASE_API + '/system/file/uploadFiles',
|
||||||
|
fileViewUrl: process.env.VUE_APP_BASE_API + '/files',
|
||||||
addAndEditForm: {
|
addAndEditForm: {
|
||||||
subId: '', // 所属分包商
|
subId: '', // 所属分包商
|
||||||
proName: '', // 项目名称
|
proName: '', // 项目名称
|
||||||
|
|
@ -465,7 +467,7 @@ export default {
|
||||||
this.addAndEditForm.imgList = newVal.tbFileSourceVoList.map((e) => {
|
this.addAndEditForm.imgList = newVal.tbFileSourceVoList.map((e) => {
|
||||||
return {
|
return {
|
||||||
...e,
|
...e,
|
||||||
url: e.filePath,
|
url: this.fileViewUrl + e.filePath.split('oadPath')[1] + '?file_token=' + getToken(),
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -52,6 +52,7 @@
|
||||||
<el-form-item prop="idCardFront">
|
<el-form-item prop="idCardFront">
|
||||||
<UploadImg
|
<UploadImg
|
||||||
:limit="4"
|
:limit="4"
|
||||||
|
:multiple="true"
|
||||||
:file-size="10"
|
:file-size="10"
|
||||||
@deleteFile="deleteFile"
|
@deleteFile="deleteFile"
|
||||||
:upload-file-url="uploadFileUrl"
|
:upload-file-url="uploadFileUrl"
|
||||||
|
|
@ -64,6 +65,7 @@
|
||||||
<el-form-item prop="idCardBack">
|
<el-form-item prop="idCardBack">
|
||||||
<UploadImg
|
<UploadImg
|
||||||
:limit="4"
|
:limit="4"
|
||||||
|
:multiple="true"
|
||||||
:file-size="10"
|
:file-size="10"
|
||||||
@deleteFile="deleteFile"
|
@deleteFile="deleteFile"
|
||||||
:upload-file-url="uploadFileUrl"
|
:upload-file-url="uploadFileUrl"
|
||||||
|
|
@ -126,6 +128,7 @@
|
||||||
</template>
|
</template>
|
||||||
<UploadImg
|
<UploadImg
|
||||||
:limit="5"
|
:limit="5"
|
||||||
|
:multiple="true"
|
||||||
:file-size="10"
|
:file-size="10"
|
||||||
@deleteFile="deleteFile"
|
@deleteFile="deleteFile"
|
||||||
:upload-file-url="uploadFileUrl"
|
:upload-file-url="uploadFileUrl"
|
||||||
|
|
@ -145,6 +148,7 @@
|
||||||
</template>
|
</template>
|
||||||
<UploadImg
|
<UploadImg
|
||||||
:limit="5"
|
:limit="5"
|
||||||
|
:multiple="true"
|
||||||
:file-size="10"
|
:file-size="10"
|
||||||
@deleteFile="deleteFile"
|
@deleteFile="deleteFile"
|
||||||
:upload-file-url="uploadFileUrl"
|
:upload-file-url="uploadFileUrl"
|
||||||
|
|
@ -165,6 +169,7 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import UploadImg from '@/components/UploadImg'
|
import UploadImg from '@/components/UploadImg'
|
||||||
|
import { getToken } from '@/utils/auth'
|
||||||
import { getSubListAPI, deleteImgAPI } from '@/api/common'
|
import { getSubListAPI, deleteImgAPI } from '@/api/common'
|
||||||
import { addSubPersonManageAPI, editSubPersonManageAPI } from '@/api/sub-manage/sub-person-manage'
|
import { addSubPersonManageAPI, editSubPersonManageAPI } from '@/api/sub-manage/sub-person-manage'
|
||||||
export default {
|
export default {
|
||||||
|
|
@ -186,6 +191,7 @@ export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
uploadFileUrl: process.env.VUE_APP_BASE_API + '/system/file/uploadFiles',
|
uploadFileUrl: process.env.VUE_APP_BASE_API + '/system/file/uploadFiles',
|
||||||
|
fileViewUrl: process.env.VUE_APP_BASE_API + '/files',
|
||||||
deleteFileList: [],
|
deleteFileList: [],
|
||||||
uploadOuterVisible: false,
|
uploadOuterVisible: false,
|
||||||
addAndEditForm: {
|
addAndEditForm: {
|
||||||
|
|
@ -460,7 +466,7 @@ export default {
|
||||||
.map((e) => {
|
.map((e) => {
|
||||||
return {
|
return {
|
||||||
...e,
|
...e,
|
||||||
url: e.filePath,
|
url: this.fileViewUrl + e.filePath.split('oadPath')[1] + '?file_token=' + getToken(),
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
this.addAndEditForm.idCardBack = this.addAndEditForm.tbFileSourceVoList
|
this.addAndEditForm.idCardBack = this.addAndEditForm.tbFileSourceVoList
|
||||||
|
|
@ -468,7 +474,7 @@ export default {
|
||||||
.map((e) => {
|
.map((e) => {
|
||||||
return {
|
return {
|
||||||
...e,
|
...e,
|
||||||
url: e.filePath,
|
url: this.fileViewUrl + e.filePath.split('oadPath')[1] + '?file_token=' + getToken(),
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
this.addAndEditForm.diplomaImg = this.addAndEditForm.tbFileSourceVoList
|
this.addAndEditForm.diplomaImg = this.addAndEditForm.tbFileSourceVoList
|
||||||
|
|
@ -476,7 +482,7 @@ export default {
|
||||||
.map((e) => {
|
.map((e) => {
|
||||||
return {
|
return {
|
||||||
...e,
|
...e,
|
||||||
url: e.filePath,
|
url: this.fileViewUrl + e.filePath.split('oadPath')[1] + '?file_token=' + getToken(),
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
this.addAndEditForm.otherImg = this.addAndEditForm.tbFileSourceVoList
|
this.addAndEditForm.otherImg = this.addAndEditForm.tbFileSourceVoList
|
||||||
|
|
@ -484,7 +490,7 @@ export default {
|
||||||
.map((e) => {
|
.map((e) => {
|
||||||
return {
|
return {
|
||||||
...e,
|
...e,
|
||||||
url: e.filePath,
|
url: this.fileViewUrl + e.filePath.split('oadPath')[1] + '?file_token=' + getToken(),
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue