Merge remote-tracking branch 'origin/develop' into develop
@@ -4,7 +4,34 @@
|
||||
<div class="content-box" v-if="isBoolean">
|
||||
<nav-menu></nav-menu>
|
||||
<div class="sub-container">
|
||||
<com-header></com-header>
|
||||
<div style="background-color: #171E4A; height: 65px; width: 100%">
|
||||
<span style="color: #fff; line-height: 65px; float: left; font-size: 20px;">
|
||||
标准法规管理系统 standard and regulations management system
|
||||
</span>
|
||||
<!-- header头部 右侧内容 当前登录人和退出-->
|
||||
<div class="header-right" style="display: inline-block; float: right; margin-right: 20px; color: #fff">
|
||||
<div class="user-info">
|
||||
<el-dropdown
|
||||
trigger="click"
|
||||
@command="handleCommand"
|
||||
>
|
||||
<div class="user-box" style="margin-top: 23px;">
|
||||
<img :src="userAvator" v-if="$store.getters.userInfo.avator">
|
||||
<span class="iconfont" v-else style="color: #FFFFFF;"></span>
|
||||
<span style="color: #FFFFFF;">{{ $store.getters.userInfo.uName }}</span>
|
||||
<i style="color: #FFFFFF;" class="el-icon-arrow-down"/>
|
||||
</div>
|
||||
<el-dropdown-menu slot="dropdown">
|
||||
<el-dropdown-item command="loginOut">退出</el-dropdown-item>
|
||||
</el-dropdown-menu>
|
||||
</el-dropdown>
|
||||
</div>
|
||||
</div>
|
||||
<div class="logo">
|
||||
<img :src="logo" />
|
||||
</div>
|
||||
</div>
|
||||
<!-- <com-header></com-header>-->
|
||||
<div class="container-box">
|
||||
<router-view />
|
||||
</div>
|
||||
@@ -14,198 +41,228 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {mapGetters, mapState} from 'vuex'
|
||||
export default {
|
||||
name: 'App',
|
||||
data () {
|
||||
return {
|
||||
isBoolean: false
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
/**
|
||||
* @description: 主题设置
|
||||
* @author: xx
|
||||
* @date: 2018-08-29 14:56:39
|
||||
*/
|
||||
setTheme (theme) {
|
||||
document.getElementById('app').className = theme
|
||||
},
|
||||
|
||||
/**
|
||||
* @description: backSpace回退禁用
|
||||
* @date: 2021-03-01 16:36:55
|
||||
* @auth: chenxiaoxi
|
||||
*/
|
||||
banBackSpace(e) {
|
||||
var ev = e || window.event;
|
||||
//各种浏览器下获取事件对象
|
||||
var obj = ev.relatedTarget || ev.srcElement || ev.target ||ev.currentTarget;
|
||||
//按下Backspace键
|
||||
if(ev.keyCode == 8){
|
||||
var tagName = obj.nodeName //标签名称
|
||||
//如果标签不是input或者textarea则阻止Backspace
|
||||
if(tagName!='INPUT' && tagName!='TEXTAREA'){
|
||||
return this.stopIt(ev);
|
||||
}
|
||||
var tagType = obj.type.toUpperCase();//标签类型
|
||||
//input标签除了下面几种类型,全部阻止Backspace
|
||||
if(tagName=='INPUT' && (tagType!='TEXT' && tagType!='TEXTAREA' && tagType!='PASSWORD')){
|
||||
return this.stopIt(ev);
|
||||
}
|
||||
//input或者textarea输入框如果不可编辑则阻止Backspace
|
||||
if((tagName=='INPUT' || tagName=='TEXTAREA') && (obj.readOnly==true || obj.disabled ==true)){
|
||||
return this.stopIt(ev);
|
||||
}
|
||||
import {mapGetters, mapState} from 'vuex'
|
||||
export default {
|
||||
name: 'App',
|
||||
data () {
|
||||
return {
|
||||
isBoolean: false
|
||||
}
|
||||
},
|
||||
|
||||
stopIt(ev) {
|
||||
if(ev.preventDefault){
|
||||
//preventDefault()方法阻止元素发生默认的行为
|
||||
ev.preventDefault();
|
||||
}
|
||||
if(ev.returnValue){
|
||||
//IE浏览器下用window.event.returnValue = false;实现阻止元素发生默认的行为
|
||||
ev.returnValue = false;
|
||||
}
|
||||
return false;
|
||||
},
|
||||
// 其他标签页修改用户 或者 退出登录
|
||||
refresh() {
|
||||
//执行刷新操作,这里我没有写this.$route.go(0),因为整个页面抖动不是很友好
|
||||
//现将app.vue下面的 头部组件,菜单组件,内容组件隐藏再放出来,实现刷新一样的效果
|
||||
console.log('我要刷新页面了')
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
...mapGetters([
|
||||
'getWebSocketList', 'getTheme', 'getMenuList'
|
||||
]),
|
||||
...mapState(['userInfoModifyTime'])
|
||||
},
|
||||
watch: {
|
||||
// 'userInfoModifyTime'() {
|
||||
// // console.log('watch global, userInfoModifyTime')
|
||||
// this.refresh()
|
||||
// },
|
||||
getTheme (val) {
|
||||
// 主题修改
|
||||
this.setTheme(val)
|
||||
},
|
||||
// 监听路由 控制isBoolean
|
||||
$route () {
|
||||
if (this.$route.name !== 'Login' && this.$route.name !== 'Home' && !this.$route.meta.isBoolean && this.$route.name !== 'beeEChungLogin' && this.$route.name !== 'beeEnergyLogin' && this.$route.name !== 'mdLawLogin' && this.$route.name !== 'nuoBLogin' && this.$route.name !== 'sTLogin' && this.$route.name !== 'StandardSearch') {
|
||||
this.isBoolean = true
|
||||
} else {
|
||||
this.isBoolean = false
|
||||
}
|
||||
}
|
||||
},
|
||||
mounted () {
|
||||
this.setTheme(this.getTheme)
|
||||
//实现对字符码的截获,keypress中屏蔽了这些功能按键
|
||||
document.onkeypress = this.banBackSpace
|
||||
//对功能按键的获取
|
||||
document.onkeydown = this.banBackSpace
|
||||
this.visibilitychangeFn = (e) => { //这个方法是监测浏览器窗口发生变化的时候执行
|
||||
// 切换到当前页面
|
||||
if (document.hidden == false) {
|
||||
const userInfoModifyTime = this.userInfoModifyTime
|
||||
const userInfoModifyTimeInLocalStorage = localStorage.getItem('userInfoModifyTime')
|
||||
|
||||
// 用户未切换 不执行任何操作
|
||||
if (userInfoModifyTime === userInfoModifyTimeInLocalStorage) {
|
||||
return
|
||||
}
|
||||
|
||||
if (userInfoModifyTimeInLocalStorage === null) {
|
||||
this.$store.dispatch('syncStorageData')
|
||||
|
||||
const currentPage = this.$route.name
|
||||
if (currentPage === 'Login') {return}
|
||||
this.currentMinute = 3
|
||||
this.loading && this.loading.close()
|
||||
this.loading = this.$loading({
|
||||
lock: true,
|
||||
// text: 'Loading',
|
||||
// spinner: 'el-icon-loading',
|
||||
// background: 'rgba(0, 0, 0, 0.7)'
|
||||
});
|
||||
this.messageForLogin && this.messageForLogin.close()
|
||||
this.messageForLogin = this.$message({
|
||||
message: `用户已退出,${this.currentMinute}秒后将跳转到登录页面`,
|
||||
type: 'warning'
|
||||
})
|
||||
|
||||
|
||||
this.intervalForLogin = setInterval(() => {
|
||||
if (this.currentMinute === 0) {
|
||||
clearInterval(this.intervalForLogin)
|
||||
this.loading.close()
|
||||
|
||||
methods: {
|
||||
// 点击下拉选项事件
|
||||
handleCommand (command) {
|
||||
// 退出登录
|
||||
if (command === 'loginOut') {
|
||||
this.$confirm('您确认要退出吗?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning',
|
||||
confirmButtonClass: 'common-button-primary',
|
||||
roundButton: false
|
||||
}).then(() => {
|
||||
// this.$http.post('/logout', {}, res => {
|
||||
// window.location.href = 'http://testsso1.foton.com.cn/oauth2.0/authorize?client_id=app_slrs&redirect_uri=http://127.0.0.1:9090&response_type=code'
|
||||
// })
|
||||
// return
|
||||
this.$store.commit('setTypeFlag', 'loginOut')
|
||||
this.$http.get('logout', {}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.$store.dispatch('logout')
|
||||
this.$router.push('/login')
|
||||
console.log('切换到登录页面', currentPage)
|
||||
}
|
||||
this.currentMinute--
|
||||
this.messageForLogin.message = `用户已退出,${this.currentMinute}秒后将跳转到登录页面`
|
||||
}, 1000)
|
||||
|
||||
} else if (userInfoModifyTime !== userInfoModifyTimeInLocalStorage) {
|
||||
this.$store.dispatch('syncStorageData')
|
||||
|
||||
console.log('用户信息已更改,同步数据')
|
||||
|
||||
this.currentMinute = 3
|
||||
|
||||
this.loading && this.loading.close()
|
||||
this.loading = this.$loading({
|
||||
lock: true,
|
||||
// text: 'Loading',
|
||||
// spinner: 'el-icon-loading',
|
||||
// background: 'rgba(0, 0, 0, 0.7)'
|
||||
});
|
||||
|
||||
this.messageForHome && this.messageForHome.close()
|
||||
this.messageForHome = this.$message({
|
||||
message: `用户已切换,${this.currentMinute}秒后将跳转到用户首页`,
|
||||
type: 'warning'
|
||||
}, e => {})
|
||||
}).catch(() => {
|
||||
})
|
||||
this.intervalForHome = setInterval(() => {
|
||||
if (this.currentMinute === 0) {
|
||||
clearInterval(this.intervalForHome)
|
||||
this.loading.close()
|
||||
|
||||
this.$router.push({
|
||||
path: '/redirect',
|
||||
query: '/home'
|
||||
})
|
||||
}
|
||||
this.currentMinute--
|
||||
this.messageForHome.message = `用户已切换,${this.currentMinute}秒后将跳转到用户首页`
|
||||
}, 1000)
|
||||
|
||||
// const route = this.$router.resolve('/home')
|
||||
// this.$router.push({
|
||||
// path: '/redirect',
|
||||
// query: '/home'
|
||||
// })
|
||||
// location.reload();
|
||||
}
|
||||
},
|
||||
/**
|
||||
* @description: 主题设置
|
||||
* @author: xx
|
||||
* @date: 2018-08-29 14:56:39
|
||||
*/
|
||||
setTheme (theme) {
|
||||
document.getElementById('app').className = theme
|
||||
},
|
||||
|
||||
/**
|
||||
* @description: backSpace回退禁用
|
||||
* @date: 2021-03-01 16:36:55
|
||||
* @auth: chenxiaoxi
|
||||
*/
|
||||
banBackSpace(e) {
|
||||
var ev = e || window.event;
|
||||
//各种浏览器下获取事件对象
|
||||
var obj = ev.relatedTarget || ev.srcElement || ev.target ||ev.currentTarget;
|
||||
//按下Backspace键
|
||||
if(ev.keyCode == 8){
|
||||
var tagName = obj.nodeName //标签名称
|
||||
//如果标签不是input或者textarea则阻止Backspace
|
||||
if(tagName!='INPUT' && tagName!='TEXTAREA'){
|
||||
return this.stopIt(ev);
|
||||
}
|
||||
var tagType = obj.type.toUpperCase();//标签类型
|
||||
//input标签除了下面几种类型,全部阻止Backspace
|
||||
if(tagName=='INPUT' && (tagType!='TEXT' && tagType!='TEXTAREA' && tagType!='PASSWORD')){
|
||||
return this.stopIt(ev);
|
||||
}
|
||||
//input或者textarea输入框如果不可编辑则阻止Backspace
|
||||
if((tagName=='INPUT' || tagName=='TEXTAREA') && (obj.readOnly==true || obj.disabled ==true)){
|
||||
return this.stopIt(ev);
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
stopIt(ev) {
|
||||
if(ev.preventDefault){
|
||||
//preventDefault()方法阻止元素发生默认的行为
|
||||
ev.preventDefault();
|
||||
}
|
||||
if(ev.returnValue){
|
||||
//IE浏览器下用window.event.returnValue = false;实现阻止元素发生默认的行为
|
||||
ev.returnValue = false;
|
||||
}
|
||||
return false;
|
||||
},
|
||||
// 其他标签页修改用户 或者 退出登录
|
||||
refresh() {
|
||||
//执行刷新操作,这里我没有写this.$route.go(0),因为整个页面抖动不是很友好
|
||||
//现将app.vue下面的 头部组件,菜单组件,内容组件隐藏再放出来,实现刷新一样的效果
|
||||
console.log('我要刷新页面了')
|
||||
}
|
||||
}
|
||||
document.addEventListener('visibilitychange', this.visibilitychangeFn);
|
||||
},
|
||||
computed: {
|
||||
// 获取用户头像
|
||||
userAvator () {
|
||||
return this.$store.getters.userInfo.avator || require('@/assets/images/avator_default.png')
|
||||
},
|
||||
...mapGetters([
|
||||
'getWebSocketList', 'getTheme', 'getMenuList'
|
||||
]),
|
||||
...mapState(['userInfoModifyTime','isCollapse'])
|
||||
},
|
||||
watch: {
|
||||
// 'userInfoModifyTime'() {
|
||||
// // console.log('watch global, userInfoModifyTime')
|
||||
// this.refresh()
|
||||
// },
|
||||
getTheme (val) {
|
||||
// 主题修改
|
||||
this.setTheme(val)
|
||||
},
|
||||
// 监听路由 控制isBoolean
|
||||
$route () {
|
||||
if (this.$route.name !== 'Login' && this.$route.name !== 'Home' && !this.$route.meta.isBoolean && this.$route.name !== 'beeEChungLogin' && this.$route.name !== 'beeEnergyLogin' && this.$route.name !== 'mdLawLogin' && this.$route.name !== 'nuoBLogin' && this.$route.name !== 'sTLogin' && this.$route.name !== 'StandardSearch') {
|
||||
this.isBoolean = true
|
||||
} else {
|
||||
this.isBoolean = false
|
||||
}
|
||||
}
|
||||
},
|
||||
mounted () {
|
||||
this.setTheme(this.getTheme)
|
||||
//实现对字符码的截获,keypress中屏蔽了这些功能按键
|
||||
document.onkeypress = this.banBackSpace
|
||||
//对功能按键的获取
|
||||
document.onkeydown = this.banBackSpace
|
||||
this.visibilitychangeFn = (e) => { //这个方法是监测浏览器窗口发生变化的时候执行
|
||||
// 切换到当前页面
|
||||
if (document.hidden == false) {
|
||||
const userInfoModifyTime = this.userInfoModifyTime
|
||||
const userInfoModifyTimeInLocalStorage = localStorage.getItem('userInfoModifyTime')
|
||||
|
||||
},
|
||||
beforeDestroy() {
|
||||
document.onkeypress = null
|
||||
document.onkeydown = null
|
||||
document.removeEventListener('visibilitychange', this.visibilitychangeFn)
|
||||
clearInterval(this.intervalForLogin)
|
||||
clearInterval(this.intervalForHome)
|
||||
// 用户未切换 不执行任何操作
|
||||
if (userInfoModifyTime === userInfoModifyTimeInLocalStorage) {
|
||||
return
|
||||
}
|
||||
|
||||
if (userInfoModifyTimeInLocalStorage === null) {
|
||||
this.$store.dispatch('syncStorageData')
|
||||
|
||||
const currentPage = this.$route.name
|
||||
if (currentPage === 'Login') {return}
|
||||
this.currentMinute = 3
|
||||
this.loading && this.loading.close()
|
||||
this.loading = this.$loading({
|
||||
lock: true,
|
||||
// text: 'Loading',
|
||||
// spinner: 'el-icon-loading',
|
||||
// background: 'rgba(0, 0, 0, 0.7)'
|
||||
});
|
||||
this.messageForLogin && this.messageForLogin.close()
|
||||
this.messageForLogin = this.$message({
|
||||
message: `用户已退出,${this.currentMinute}秒后将跳转到登录页面`,
|
||||
type: 'warning'
|
||||
})
|
||||
|
||||
|
||||
this.intervalForLogin = setInterval(() => {
|
||||
if (this.currentMinute === 0) {
|
||||
clearInterval(this.intervalForLogin)
|
||||
this.loading.close()
|
||||
|
||||
this.$router.push('/login')
|
||||
console.log('切换到登录页面', currentPage)
|
||||
}
|
||||
this.currentMinute--
|
||||
this.messageForLogin.message = `用户已退出,${this.currentMinute}秒后将跳转到登录页面`
|
||||
}, 1000)
|
||||
|
||||
} else if (userInfoModifyTime !== userInfoModifyTimeInLocalStorage) {
|
||||
this.$store.dispatch('syncStorageData')
|
||||
|
||||
console.log('用户信息已更改,同步数据')
|
||||
|
||||
this.currentMinute = 3
|
||||
|
||||
this.loading && this.loading.close()
|
||||
this.loading = this.$loading({
|
||||
lock: true,
|
||||
// text: 'Loading',
|
||||
// spinner: 'el-icon-loading',
|
||||
// background: 'rgba(0, 0, 0, 0.7)'
|
||||
});
|
||||
|
||||
this.messageForHome && this.messageForHome.close()
|
||||
this.messageForHome = this.$message({
|
||||
message: `用户已切换,${this.currentMinute}秒后将跳转到用户首页`,
|
||||
type: 'warning'
|
||||
})
|
||||
this.intervalForHome = setInterval(() => {
|
||||
if (this.currentMinute === 0) {
|
||||
clearInterval(this.intervalForHome)
|
||||
this.loading.close()
|
||||
|
||||
this.$router.push({
|
||||
path: '/redirect',
|
||||
query: '/home'
|
||||
})
|
||||
}
|
||||
this.currentMinute--
|
||||
this.messageForHome.message = `用户已切换,${this.currentMinute}秒后将跳转到用户首页`
|
||||
}, 1000)
|
||||
|
||||
// const route = this.$router.resolve('/home')
|
||||
// this.$router.push({
|
||||
// path: '/redirect',
|
||||
// query: '/home'
|
||||
// })
|
||||
// location.reload();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
document.addEventListener('visibilitychange', this.visibilitychangeFn);
|
||||
|
||||
},
|
||||
beforeDestroy() {
|
||||
document.onkeypress = null
|
||||
document.onkeydown = null
|
||||
document.removeEventListener('visibilitychange', this.visibilitychangeFn)
|
||||
clearInterval(this.intervalForLogin)
|
||||
clearInterval(this.intervalForHome)
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less">
|
||||
|
||||
|
Before Width: | Height: | Size: 827 B After Width: | Height: | Size: 4.1 KiB |
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 3.4 KiB |
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 4.0 KiB |
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 2.0 KiB |
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 6.7 KiB |
|
Before Width: | Height: | Size: 787 B After Width: | Height: | Size: 5.4 KiB |
|
Before Width: | Height: | Size: 899 B After Width: | Height: | Size: 4.2 KiB |
@@ -7,102 +7,102 @@
|
||||
<!--面包屑-->
|
||||
<el-breadcrumb separator="/">
|
||||
<el-breadcrumb-item
|
||||
v-for="(item, index) in routerList"
|
||||
:key="index"
|
||||
v-for="(item, index) in routerList"
|
||||
:key="index"
|
||||
>
|
||||
{{ item.meta.title }}
|
||||
</el-breadcrumb-item>
|
||||
</el-breadcrumb>
|
||||
</div>
|
||||
<!-- header头部 右侧内容 当前登录人和退出-->
|
||||
<div class="header-right">
|
||||
<div class="user-info">
|
||||
<el-dropdown
|
||||
trigger="click"
|
||||
@command="handleCommand"
|
||||
>
|
||||
<div class="user-box">
|
||||
<img :src="userAvator" v-if="$store.getters.userInfo.avator">
|
||||
<span class="iconfont" v-else style="color: #333333;"></span>
|
||||
<span>您好,{{ $store.getters.userInfo.uName }}</span>
|
||||
<i class="el-icon-arrow-down"/>
|
||||
</div>
|
||||
<el-dropdown-menu slot="dropdown">
|
||||
<el-dropdown-item command="loginOut">退出</el-dropdown-item>
|
||||
</el-dropdown-menu>
|
||||
</el-dropdown>
|
||||
</div>
|
||||
</div>
|
||||
<!-- <div class="header-right">-->
|
||||
<!-- <div class="user-info">-->
|
||||
<!-- <el-dropdown-->
|
||||
<!-- trigger="click"-->
|
||||
<!-- @command="handleCommand"-->
|
||||
<!-- >-->
|
||||
<!-- <div class="user-box">-->
|
||||
<!-- <img :src="userAvator" v-if="$store.getters.userInfo.avator">-->
|
||||
<!-- <span class="iconfont" v-else style="color: #333333;"></span>-->
|
||||
<!-- <span>您好,{{ $store.getters.userInfo.uName }}</span>-->
|
||||
<!-- <i class="el-icon-arrow-down"/>-->
|
||||
<!-- </div>-->
|
||||
<!-- <el-dropdown-menu slot="dropdown">-->
|
||||
<!-- <el-dropdown-item command="loginOut">退出</el-dropdown-item>-->
|
||||
<!-- </el-dropdown-menu>-->
|
||||
<!-- </el-dropdown>-->
|
||||
<!-- </div>-->
|
||||
<!-- </div>-->
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { mapMutations, mapGetters } from 'vuex'
|
||||
export default {
|
||||
name: 'ComHeader',
|
||||
data () {
|
||||
return {
|
||||
routerList: [] // 面包屑数组
|
||||
}
|
||||
},
|
||||
created () {
|
||||
// 渲染面包屑数组
|
||||
this.routerList = this.$route.matched
|
||||
},
|
||||
computed: {
|
||||
// 获取用户头像
|
||||
userAvator () {
|
||||
return this.$store.getters.userInfo.avator || require('@/assets/images/avator_default.png')
|
||||
},
|
||||
...mapGetters(['isCollapse'])
|
||||
},
|
||||
watch: {
|
||||
// 监听路由 重新渲染面包屑
|
||||
$route () {
|
||||
this.routerList = this.$route.matched
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
// 点击下拉选项事件
|
||||
handleCommand (command) {
|
||||
// 退出登录
|
||||
if (command === 'loginOut') {
|
||||
this.$confirm('您确认要退出吗?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning',
|
||||
confirmButtonClass: 'common-button-primary',
|
||||
roundButton: false
|
||||
}).then(() => {
|
||||
// this.$http.post('/logout', {}, res => {
|
||||
// window.location.href = 'http://testsso1.foton.com.cn/oauth2.0/authorize?client_id=app_slrs&redirect_uri=http://127.0.0.1:9090&response_type=code'
|
||||
// })
|
||||
// return
|
||||
this.$store.commit('setTypeFlag', 'loginOut')
|
||||
this.$http.get('logout', {}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.$store.dispatch('logout')
|
||||
this.$router.push('/login')
|
||||
}, e => {})
|
||||
}).catch(() => {
|
||||
})
|
||||
import { mapMutations, mapGetters } from 'vuex'
|
||||
export default {
|
||||
name: 'ComHeader',
|
||||
data () {
|
||||
return {
|
||||
routerList: [] // 面包屑数组
|
||||
}
|
||||
},
|
||||
|
||||
handleToggleSideBar() {
|
||||
this.toggleSideBar(!this.isCollapse)
|
||||
created () {
|
||||
// 渲染面包屑数组
|
||||
this.routerList = this.$route.matched
|
||||
},
|
||||
computed: {
|
||||
// 获取用户头像
|
||||
userAvator () {
|
||||
return this.$store.getters.userInfo.avator || require('@/assets/images/avator_default.png')
|
||||
},
|
||||
...mapGetters(['isCollapse'])
|
||||
},
|
||||
watch: {
|
||||
// 监听路由 重新渲染面包屑
|
||||
$route () {
|
||||
this.routerList = this.$route.matched
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
// 点击下拉选项事件
|
||||
handleCommand (command) {
|
||||
// 退出登录
|
||||
if (command === 'loginOut') {
|
||||
this.$confirm('您确认要退出吗?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning',
|
||||
confirmButtonClass: 'common-button-primary',
|
||||
roundButton: false
|
||||
}).then(() => {
|
||||
// this.$http.post('/logout', {}, res => {
|
||||
// window.location.href = 'http://testsso1.foton.com.cn/oauth2.0/authorize?client_id=app_slrs&redirect_uri=http://127.0.0.1:9090&response_type=code'
|
||||
// })
|
||||
// return
|
||||
this.$store.commit('setTypeFlag', 'loginOut')
|
||||
this.$http.get('logout', {}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.$store.dispatch('logout')
|
||||
this.$router.push('/login')
|
||||
}, e => {})
|
||||
}).catch(() => {
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
...mapMutations(['toggleSideBar'])
|
||||
handleToggleSideBar() {
|
||||
this.toggleSideBar(!this.isCollapse)
|
||||
},
|
||||
|
||||
...mapMutations(['toggleSideBar'])
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
.com-header{
|
||||
padding: 0 10px;
|
||||
height: 50px;
|
||||
background: #ffffff;
|
||||
background: #fff;
|
||||
border-bottom: 1px solid #e5e5e5;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
@@ -1,482 +1,511 @@
|
||||
<!--左侧导航菜单 liuyan -->
|
||||
<template>
|
||||
<div class="nav-menu v-class" :class="{'is-collapse': isCollapse}">
|
||||
<div class="logo">
|
||||
<img :src="logo" />
|
||||
<div class="nav-menu-header" style="height: 65px; background-color: #171E4A;">
|
||||
<div class="header-left">
|
||||
<div class="logo">
|
||||
<img :src="logo" height="58" width="149" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<el-menu
|
||||
unique-opened
|
||||
:default-active="defaultActive"
|
||||
background-color="#013483"
|
||||
text-color="#ffffff"
|
||||
active-text-color="#ffd04b"
|
||||
router
|
||||
:collapse="isCollapse"
|
||||
>
|
||||
<template v-for="(item, index) in navMenuList">
|
||||
<el-submenu
|
||||
:key="index"
|
||||
:index="item.path"
|
||||
popper-class="nav-menu-popper"
|
||||
v-if="!item.isChildren && (!item.menuId || $hasPermission(item.menuId))"
|
||||
>
|
||||
<template slot="title">
|
||||
<i class="shangqi-icon" :class="item['icon-class']"></i>
|
||||
<span>{{ item.title }}</span>
|
||||
<el-badge is-dot class="has-no-read" v-if="item.title === '个人中心' && getDynamicTotal.allCount">
|
||||
</el-badge>
|
||||
</template>
|
||||
<el-menu-item
|
||||
v-for="(children, childrenIndex) in item.children"
|
||||
:key="childrenIndex"
|
||||
:index="children.path"
|
||||
v-if="!children.menuId || $hasPermission(children.menuId)"itemSplitInfo
|
||||
<div class="toggle-btn iconfont" style="display: flex;justify-content: center; font-size: 30px; color: #333333;" @click="handleToggleSideBar"><div style="font-size: 14px; line-height: 30px;">{{ this.isCollapse ? '' : '' }}</div></div>
|
||||
<div class="left-tree">
|
||||
<el-menu
|
||||
unique-opened
|
||||
:default-active="defaultActive"
|
||||
background-color="#013483"
|
||||
text-color="#000"
|
||||
active-text-color="#ffd04b"
|
||||
router
|
||||
:collapse="isCollapse"
|
||||
>
|
||||
<template v-for="(item, index) in navMenuList">
|
||||
<el-submenu
|
||||
:key="index"
|
||||
:index="item.path"
|
||||
popper-class="nav-menu-popper"
|
||||
v-if="!item.isChildren && (!item.menuId || $hasPermission(item.menuId))"
|
||||
>
|
||||
<el-badge :value="getDynamicTotal.msgCount" class="item" v-if="children.title === '我的消息' && getDynamicTotal.msgCount !== 0">
|
||||
{{ children.title }}
|
||||
</el-badge>
|
||||
<el-badge :value="getDynamicTotal.shareCount" class="item" v-else-if="children.title === '我的推送' && getDynamicTotal.shareCount !== 0">
|
||||
{{ children.title }}
|
||||
</el-badge>
|
||||
<el-badge :value="getDynamicTotal.myStandCount" class="item" v-else-if="children.title === '我的企标' && getDynamicTotal.myStandCount !== 0">
|
||||
{{ children.title }}
|
||||
</el-badge>
|
||||
<div v-else>
|
||||
{{ children.title }}
|
||||
</div>
|
||||
<template slot="title">
|
||||
<i class="shangqi-icon" :class="item['icon-class']"></i>
|
||||
<span>{{ item.title }}</span>
|
||||
<el-badge is-dot class="has-no-read" v-if="item.title === '个人中心' && getDynamicTotal.allCount">
|
||||
</el-badge>
|
||||
</template>
|
||||
<el-menu-item
|
||||
v-for="(children, childrenIndex) in item.children"
|
||||
:key="childrenIndex"
|
||||
:index="children.path"
|
||||
v-if="!children.menuId || $hasPermission(children.menuId)"itemSplitInfo
|
||||
>
|
||||
<el-badge :value="getDynamicTotal.msgCount" class="item" v-if="children.title === '我的消息' && getDynamicTotal.msgCount !== 0">
|
||||
{{ children.title }}
|
||||
</el-badge>
|
||||
<el-badge :value="getDynamicTotal.shareCount" class="item" v-else-if="children.title === '我的推送' && getDynamicTotal.shareCount !== 0">
|
||||
{{ children.title }}
|
||||
</el-badge>
|
||||
<el-badge :value="getDynamicTotal.myStandCount" class="item" v-else-if="children.title === '我的企标' && getDynamicTotal.myStandCount !== 0">
|
||||
{{ children.title }}
|
||||
</el-badge>
|
||||
<div v-else>
|
||||
{{ children.title }}
|
||||
</div>
|
||||
</el-menu-item>
|
||||
</el-submenu>
|
||||
<el-menu-item
|
||||
:key="index"
|
||||
:index="item.path"
|
||||
v-if="item.isChildren && (!item.menuId || $hasPermission(item.menuId))"
|
||||
>
|
||||
<i class="shangqi-icon" :class="item['icon-class']"></i>
|
||||
<span slot="title">{{ item.title }}</span>
|
||||
</el-menu-item>
|
||||
</el-submenu>
|
||||
<el-menu-item
|
||||
:key="index"
|
||||
:index="item.path"
|
||||
v-if="item.isChildren && (!item.menuId || $hasPermission(item.menuId))"
|
||||
>
|
||||
<i class="shangqi-icon" :class="item['icon-class']"></i>
|
||||
<span slot="title">{{ item.title }}</span>
|
||||
</el-menu-item>
|
||||
</template>
|
||||
</el-menu>
|
||||
</template>
|
||||
</el-menu>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { mapGetters } from 'vuex'
|
||||
export default {
|
||||
name: 'NavMenu',
|
||||
data () {
|
||||
return {
|
||||
defaultActive: null, // 当前激活菜单的 index
|
||||
navMenuList: [
|
||||
{
|
||||
title: '首页',
|
||||
path: '/home1',
|
||||
isChildren: true, // 判断没有子菜单
|
||||
'icon-class': 'home'
|
||||
},
|
||||
{
|
||||
title: '标准法规库',
|
||||
path: '/regulatoryRepository',
|
||||
'icon-class': 'fagui',
|
||||
menuId: '2ewfwfa',
|
||||
children: [
|
||||
// {
|
||||
// title: '动态&资料',
|
||||
// path: '/dynamicInformation',
|
||||
// menuId: 'RAFQ4N4ARF'
|
||||
// },
|
||||
{
|
||||
title: '国内标准法规',
|
||||
path: '/domesticStandardsAndRegulations',
|
||||
menuId: '3e3657498664beaa0dc1de1ecb3ae0da'
|
||||
},
|
||||
// {
|
||||
// title: '零部件编号申请',
|
||||
// path: '/partCodeApply',
|
||||
// menuId: 'ad9db496772c075f78495382b7581fe9'
|
||||
// },
|
||||
// {
|
||||
// title: '标准法规工作组数据统计',
|
||||
// path: '/dataStatisComments',
|
||||
// menuId: ''
|
||||
// },
|
||||
{
|
||||
title: '海外标准法规',
|
||||
path: '/foreignStandardsAndRegulations',
|
||||
menuId: '18c1e5134ea0cf865e8960b26b81fd8c'
|
||||
},
|
||||
{
|
||||
title: '标准征求意见',
|
||||
path: '/standardForComments',
|
||||
menuId: '2b25c67f10abbbadf37d60daaaec54d3'
|
||||
},
|
||||
import { mapGetters, mapMutations } from 'vuex'
|
||||
export default {
|
||||
name: 'NavMenu',
|
||||
data () {
|
||||
return {
|
||||
defaultActive: null, // 当前激活菜单的 index
|
||||
navMenuList: [
|
||||
// {
|
||||
// title: '首页',
|
||||
// path: '/home1',
|
||||
// isChildren: true, // 判断没有子菜单
|
||||
// 'icon-class': 'home'
|
||||
// },
|
||||
{
|
||||
title: '首页',
|
||||
path: '/home2',
|
||||
isChildren: true, // 判断没有子菜单
|
||||
'icon-class': 'home'
|
||||
},
|
||||
{
|
||||
title: '标准法规库',
|
||||
path: '/regulatoryRepository',
|
||||
'icon-class': 'fagui',
|
||||
menuId: '2ewfwfa',
|
||||
children: [
|
||||
// {
|
||||
// title: '动态&资料',
|
||||
// path: '/dynamicInformation',
|
||||
// menuId: 'RAFQ4N4ARF'
|
||||
// },
|
||||
{
|
||||
title: '国内标准法规',
|
||||
path: '/domesticStandardsAndRegulations',
|
||||
menuId: '3e3657498664beaa0dc1de1ecb3ae0da'
|
||||
},
|
||||
// {
|
||||
// title: '零部件编号申请',
|
||||
// path: '/partCodeApply',
|
||||
// menuId: 'ad9db496772c075f78495382b7581fe9'
|
||||
// },
|
||||
// {
|
||||
// title: '标准法规工作组数据统计',
|
||||
// path: '/dataStatisComments',
|
||||
// menuId: ''
|
||||
// },
|
||||
{
|
||||
title: '海外标准法规',
|
||||
path: '/foreignStandardsAndRegulations',
|
||||
menuId: '18c1e5134ea0cf865e8960b26b81fd8c'
|
||||
},
|
||||
{
|
||||
title: '标准征求意见',
|
||||
path: '/standardForComments',
|
||||
menuId: '2b25c67f10abbbadf37d60daaaec54d3'
|
||||
},
|
||||
|
||||
// {
|
||||
// title: '国内外政策',
|
||||
// path: '/foreignRegulationsDatabase',
|
||||
// menuId: '4DB4Y2H3NH'
|
||||
// },
|
||||
// // // {
|
||||
// // // title: '标准制修订管理',
|
||||
// // // path: '/demo2One'
|
||||
// // // },
|
||||
{
|
||||
title: '标准法规清单',
|
||||
path: '/accessStandardsAndRegulations',
|
||||
menuId: '08dbd417864b08426034ca56d1fa3d02'
|
||||
},
|
||||
// // {
|
||||
// // title: '标准法规清单详情',
|
||||
// // path: '/details'
|
||||
// // }
|
||||
// // // {
|
||||
// // // title: '试验项目库',
|
||||
// // // path: '/demo2One'
|
||||
// // // },
|
||||
// // // {
|
||||
// // // title: '本地产品/项目库',
|
||||
// // // path: '/localProductsOrProjectLibrary'
|
||||
// // // },
|
||||
{
|
||||
title: '企业标准库',
|
||||
path: '/enterpriseStandardDatabase',
|
||||
menuId: '7feeb73929c25a6f1fd67952704ec02b'
|
||||
},
|
||||
// {
|
||||
// title: '企标制修订计划',
|
||||
// path: '/enterBSysRevPlanManaLib',
|
||||
// menuId: 'WW7YDHQ9Z679TGMDZMUS'
|
||||
// },
|
||||
// // {
|
||||
// // title: '子公司标准库',
|
||||
// // path: '/subsidiaryStandardLibrary'
|
||||
// // }
|
||||
/* {
|
||||
title: '车型/项目库',
|
||||
path: '/localProductsOrProjectLibrary',
|
||||
menuId: '42ce39c9f953be65a3e5643a4a2c786f'
|
||||
},*/
|
||||
{
|
||||
title: '未符合项整改',
|
||||
path: '/nonConfomity',
|
||||
menuId: '0119abd677e0204e061eb0f0b8cafda0'
|
||||
},
|
||||
{
|
||||
title: '工作组',
|
||||
path: '/workingGroup',
|
||||
},
|
||||
// {
|
||||
// title: '备案产品标准库',
|
||||
// path: '/enterpriseStandardFiling',
|
||||
// menuId: 'MQBAGJQMSRZDRX3X5AVR'
|
||||
// },
|
||||
{
|
||||
title: '标准合规评估结果', // 把 标准涉及项目 这几个字 改成 标准合规评估结果
|
||||
path: '/standInvolveProject',
|
||||
menuId: '8a9c87fe06244fb9d55e78fb281f625b'
|
||||
}
|
||||
// {
|
||||
// title: '动态信息',
|
||||
// path: '/information',
|
||||
// menuId: 'ULUBXHYQB8M3XQ9HS9QG'
|
||||
// }
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '工作台',
|
||||
path: '/processCenter',
|
||||
'icon-class': 'liucheng',
|
||||
menuId: '3fadf',
|
||||
children: [
|
||||
{
|
||||
title: '流程中心',
|
||||
path: '/processCenter',
|
||||
menuId: '7455dc97eac2933341e18be659f07e89'
|
||||
},
|
||||
{
|
||||
title: '新建流程',
|
||||
path: '/createProcessNew',
|
||||
menuId: 'b53e6722b33a37c0fa2d87a9b06cca40'
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '本地工具',
|
||||
path: '/localTool',
|
||||
'icon-class': 'tools',
|
||||
menuId: 'afsd12',
|
||||
children: [
|
||||
// {
|
||||
// title: '标准预警',
|
||||
// path: '/standardWarning'
|
||||
// },
|
||||
{
|
||||
title: '标准内容自动识别',
|
||||
path: '/standardRecognition',
|
||||
menuId: '3db80f62af9d96d6dfc6d429eea4b29b'
|
||||
},
|
||||
{
|
||||
title: '标准拆分',
|
||||
path: '/standAutoSplit',
|
||||
menuId: '0062e261bc65e27e0a968dac67e16a3c'
|
||||
},
|
||||
{
|
||||
title: '标准比对',
|
||||
path: '/standContrast',
|
||||
menuId: '1d83a6278f781419f628e9f5560f5c86'
|
||||
},
|
||||
// {
|
||||
// title: '标准比对库',
|
||||
// path: '/standardComparisonLibrary',
|
||||
// menuId: 'AH56UDHHBVF5V7WZFWJQ'
|
||||
// }
|
||||
// {
|
||||
// title: '预警管理',
|
||||
// path: '/warningManage'
|
||||
// },
|
||||
// {
|
||||
// title: '动态&通知管理',
|
||||
// path: '/dynamicInformationManage'
|
||||
// },
|
||||
// {
|
||||
// title: '标准编号申领',
|
||||
// path: '/applicationStandardNumber'
|
||||
// },
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '标准预警',
|
||||
path: '/standardWarning',
|
||||
'icon-class': 'warning',
|
||||
menuId: 'asfdew33',
|
||||
isChildren: true // 判断没有子菜单
|
||||
},
|
||||
// {
|
||||
// title: '技术要求清单',
|
||||
// path: '/skillReq',
|
||||
// children: [
|
||||
// {
|
||||
// title: '技术要求清单查看',
|
||||
// path: '/SkillReqSee'
|
||||
// },
|
||||
// {
|
||||
// title: '技术要求清单管理',
|
||||
// path: '/SkillReqAdd'
|
||||
// }
|
||||
// ]
|
||||
// },
|
||||
{
|
||||
title: '配置管理',
|
||||
path: '/config',
|
||||
'icon-class': 'conf',
|
||||
menuId: 'adff323',
|
||||
children: [
|
||||
{
|
||||
title: '标准法规属性管理',
|
||||
path: '/standLawsAttrManage',
|
||||
menuId: '72a24657972d286b8b5d80735cf4eee2'
|
||||
},
|
||||
// {
|
||||
// title: '资料中心管理',
|
||||
// path: '/dynamicInformationManage',
|
||||
// menuId: '6V2QZ9STRZ'
|
||||
// },
|
||||
{
|
||||
title: '机构管理',
|
||||
path: '/MechanismManage',
|
||||
menuId: '5a09164da97760846509c5c9dd86b80c'
|
||||
},
|
||||
{
|
||||
title: '角色管理',
|
||||
path: '/roleManage',
|
||||
menuId: 'd73d0e230eafdb2ddefe1c97daf657ea'
|
||||
},
|
||||
{
|
||||
title: '岗位管理',
|
||||
path: '/postManage',
|
||||
menuId: 'd2954be3abaaf2de3dc79add4c8ab8cd'
|
||||
},
|
||||
// {
|
||||
// title: '用户管理',
|
||||
// path: '/userManage',
|
||||
// menuId: 'YRJUEVJVUJ'
|
||||
// },
|
||||
// {
|
||||
// title: '系统配置管理',
|
||||
// path: '/warningTimeSetting',
|
||||
// menuId: 'H2KC6P3PPM'
|
||||
// },
|
||||
// {
|
||||
// title: '文档转换监控',
|
||||
// path: '/convertDocView',
|
||||
// menuId: '3F52K25546'
|
||||
// },
|
||||
// {
|
||||
// title: '菜单管理',
|
||||
// path: '/menuManage',
|
||||
// menuId: '87b8b4f5817a7829696e63185c744d52'
|
||||
// },
|
||||
{
|
||||
title: '链接管理',
|
||||
path: '/linkManage',
|
||||
menuId: 'd3ff92078c53a4d9d1f1a94450fee91e'
|
||||
},
|
||||
// // {
|
||||
// // title: '保密管理',
|
||||
// // path: '/convertDocView'
|
||||
// // },
|
||||
// {
|
||||
// title: '动态信息管理',
|
||||
// path: '/DynamicInformations',
|
||||
// menuId: '3C87BSHJUF'
|
||||
// },
|
||||
{
|
||||
title: '标准属性自定义',
|
||||
path: '/attributeCustom',
|
||||
menuId: '9cdb9b40157dd967b664b9af462b960b'
|
||||
},
|
||||
// // {
|
||||
// // title: '流程分类管理',
|
||||
// // path: '/processClassificationManage',
|
||||
// // menuId: 'N323F2UB9FTUV5SD3GTD'
|
||||
// // },
|
||||
// // {
|
||||
// // title: '流程管理',
|
||||
// // path: '/processManage',
|
||||
// // menuId: 'K5KXSS3X9CF7CS8AMFJ5'
|
||||
// // },
|
||||
// {
|
||||
// title: 'SVPPS',
|
||||
// path: '/svpps',
|
||||
// menuId: 'AR52RX586LQHVZSVV83K'
|
||||
// },
|
||||
// {
|
||||
// title: '企标编号管理体系',
|
||||
// path: '/enterpriseStandardNumberManagement',
|
||||
// menuId: '9YSFG39S3CBFUJCEU3QX'
|
||||
// }
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '个人中心',
|
||||
path: '/personal',
|
||||
'icon-class': 'ucenter',
|
||||
menuId: '32143ffasdf',
|
||||
children: [
|
||||
// {
|
||||
// title: '我的消息',
|
||||
// path: '/dynamics',
|
||||
// menuId: 'JCEV4AEV32'
|
||||
// },
|
||||
// {
|
||||
// title: '我的企标',
|
||||
// path: '/MyEnterpriseStandard',
|
||||
// menuId: 'LKU3W23UMEHDM9VLDHGK'
|
||||
// },
|
||||
{
|
||||
title: '我的收藏',
|
||||
path: '/collection',
|
||||
menuId: '63e999c65b1f2b1339119a00eb1d50cf'
|
||||
},
|
||||
// {
|
||||
// title: '我的浏览',
|
||||
// path: '/browsing',
|
||||
// menuId: 'HAEY2A4LMX'
|
||||
// },
|
||||
// {
|
||||
// title: '已收分享',
|
||||
// path: '/push',
|
||||
// menuId: '9F8T7DPYHE'
|
||||
// },
|
||||
// {
|
||||
// title: '已发分享',
|
||||
// path: '/forward',
|
||||
// menuId: 'K45Y9TGKZV2K4XP4CETD'
|
||||
// },
|
||||
// {
|
||||
// title: '我的问答',
|
||||
// path: '/questionsAndAnswers',
|
||||
// menuId: '8VKLZATQQG4NQHXV9UDS'
|
||||
// },
|
||||
{
|
||||
title: '我的板块',
|
||||
path: '/plate',
|
||||
menuId: 'e4a94f03223df6f4ad70732b96f07221'
|
||||
}
|
||||
// {
|
||||
// title: '个人信息',
|
||||
// path: '/info',
|
||||
// menuId: '8K7FDHG89G'
|
||||
// }
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '搜索中心',
|
||||
path: '/advancedSearch',
|
||||
'icon-class': 'search',
|
||||
menuId: '1332FSFAD',
|
||||
isChildren: true // 判断没有子菜单
|
||||
},
|
||||
// {
|
||||
// title: '标准比对库',
|
||||
// path: '/standardComparisonLibrary',
|
||||
// 'icon-class': 'search',
|
||||
// menuId: 'Q32VBYVGCAE4XXN3XZ8T',
|
||||
// isChildren: true // 判断没有子菜单
|
||||
// }
|
||||
// {
|
||||
// title: '自定义报表',
|
||||
// path: '/customReport',
|
||||
// 'icon-class': 'baobiao',
|
||||
// isChildren: true // 判断没有子菜单
|
||||
// }
|
||||
]
|
||||
}
|
||||
},
|
||||
created () {
|
||||
// 获取当前页的path,赋值没左侧菜单,并展开
|
||||
if (this.$route.meta.parentPath) {
|
||||
this.defaultActive = this.$route.meta.parentPath
|
||||
} else {
|
||||
this.defaultActive = this.$route.path
|
||||
}
|
||||
},
|
||||
mounted () {
|
||||
},
|
||||
computed: {
|
||||
logo () {
|
||||
return this.isCollapse ? require('assets/images/shangqi/img/logo4.png') : require('assets/images/shangqi/img/logo2.png')
|
||||
// {
|
||||
// title: '国内外政策',
|
||||
// path: '/foreignRegulationsDatabase',
|
||||
// menuId: '4DB4Y2H3NH'
|
||||
// },
|
||||
// // // {
|
||||
// // // title: '标准制修订管理',
|
||||
// // // path: '/demo2One'
|
||||
// // // },
|
||||
{
|
||||
title: '标准法规清单',
|
||||
path: '/accessStandardsAndRegulations',
|
||||
menuId: '08dbd417864b08426034ca56d1fa3d02'
|
||||
},
|
||||
// // {
|
||||
// // title: '标准法规清单详情',
|
||||
// // path: '/details'
|
||||
// // }
|
||||
// // // {
|
||||
// // // title: '试验项目库',
|
||||
// // // path: '/demo2One'
|
||||
// // // },
|
||||
// // // {
|
||||
// // // title: '本地产品/项目库',
|
||||
// // // path: '/localProductsOrProjectLibrary'
|
||||
// // // },
|
||||
{
|
||||
title: '企业标准库',
|
||||
path: '/enterpriseStandardDatabase',
|
||||
menuId: '7feeb73929c25a6f1fd67952704ec02b'
|
||||
},
|
||||
// {
|
||||
// title: '企标制修订计划',
|
||||
// path: '/enterBSysRevPlanManaLib',
|
||||
// menuId: 'WW7YDHQ9Z679TGMDZMUS'
|
||||
// },
|
||||
// // {
|
||||
// // title: '子公司标准库',
|
||||
// // path: '/subsidiaryStandardLibrary'
|
||||
// // }
|
||||
/* {
|
||||
title: '车型/项目库',
|
||||
path: '/localProductsOrProjectLibrary',
|
||||
menuId: '42ce39c9f953be65a3e5643a4a2c786f'
|
||||
},*/
|
||||
{
|
||||
title: '未符合项整改',
|
||||
path: '/nonConfomity',
|
||||
menuId: '0119abd677e0204e061eb0f0b8cafda0'
|
||||
},
|
||||
{
|
||||
title: '工作组',
|
||||
path: '/workingGroup',
|
||||
},
|
||||
// {
|
||||
// title: '备案产品标准库',
|
||||
// path: '/enterpriseStandardFiling',
|
||||
// menuId: 'MQBAGJQMSRZDRX3X5AVR'
|
||||
// },
|
||||
{
|
||||
title: '标准合规评估结果', // 把 标准涉及项目 这几个字 改成 标准合规评估结果
|
||||
path: '/standInvolveProject',
|
||||
menuId: '8a9c87fe06244fb9d55e78fb281f625b'
|
||||
}
|
||||
// {
|
||||
// title: '动态信息',
|
||||
// path: '/information',
|
||||
// menuId: 'ULUBXHYQB8M3XQ9HS9QG'
|
||||
// }
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '我的工作',
|
||||
path: '/processCenter',
|
||||
'icon-class': 'liucheng',
|
||||
menuId: '3fadf',
|
||||
children: [
|
||||
{
|
||||
title: '流程中心',
|
||||
path: '/processCenter',
|
||||
menuId: '7455dc97eac2933341e18be659f07e89'
|
||||
},
|
||||
{
|
||||
title: '新建流程',
|
||||
path: '/createProcessNew',
|
||||
menuId: 'b53e6722b33a37c0fa2d87a9b06cca40'
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '本地工具',
|
||||
path: '/localTool',
|
||||
'icon-class': 'tools',
|
||||
menuId: 'afsd12',
|
||||
children: [
|
||||
// {
|
||||
// title: '标准预警',
|
||||
// path: '/standardWarning'
|
||||
// },
|
||||
{
|
||||
title: '标准内容自动识别',
|
||||
path: '/standardRecognition',
|
||||
menuId: '3db80f62af9d96d6dfc6d429eea4b29b'
|
||||
},
|
||||
{
|
||||
title: '标准拆分',
|
||||
path: '/standAutoSplit',
|
||||
menuId: '0062e261bc65e27e0a968dac67e16a3c'
|
||||
},
|
||||
{
|
||||
title: '标准比对',
|
||||
path: '/standContrast',
|
||||
menuId: '1d83a6278f781419f628e9f5560f5c86'
|
||||
},
|
||||
// {
|
||||
// title: '标准比对库',
|
||||
// path: '/standardComparisonLibrary',
|
||||
// menuId: 'AH56UDHHBVF5V7WZFWJQ'
|
||||
// }
|
||||
// {
|
||||
// title: '预警管理',
|
||||
// path: '/warningManage'
|
||||
// },
|
||||
// {
|
||||
// title: '动态&通知管理',
|
||||
// path: '/dynamicInformationManage'
|
||||
// },
|
||||
// {
|
||||
// title: '标准编号申领',
|
||||
// path: '/applicationStandardNumber'
|
||||
// },
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '标准预警',
|
||||
path: '/standardWarning',
|
||||
'icon-class': 'warning',
|
||||
menuId: 'asfdew33',
|
||||
isChildren: true // 判断没有子菜单
|
||||
},
|
||||
// {
|
||||
// title: '技术要求清单',
|
||||
// path: '/skillReq',
|
||||
// children: [
|
||||
// {
|
||||
// title: '技术要求清单查看',
|
||||
// path: '/SkillReqSee'
|
||||
// },
|
||||
// {
|
||||
// title: '技术要求清单管理',
|
||||
// path: '/SkillReqAdd'
|
||||
// }
|
||||
// ]
|
||||
// },
|
||||
{
|
||||
title: '配置管理',
|
||||
path: '/config',
|
||||
'icon-class': 'conf',
|
||||
menuId: 'adff323',
|
||||
children: [
|
||||
{
|
||||
title: '标准法规属性管理',
|
||||
path: '/standLawsAttrManage',
|
||||
menuId: '72a24657972d286b8b5d80735cf4eee2'
|
||||
},
|
||||
// {
|
||||
// title: '资料中心管理',
|
||||
// path: '/dynamicInformationManage',
|
||||
// menuId: '6V2QZ9STRZ'
|
||||
// },
|
||||
{
|
||||
title: '机构管理',
|
||||
path: '/MechanismManage',
|
||||
menuId: '5a09164da97760846509c5c9dd86b80c'
|
||||
},
|
||||
{
|
||||
title: '角色管理',
|
||||
path: '/roleManage',
|
||||
menuId: 'd73d0e230eafdb2ddefe1c97daf657ea'
|
||||
},
|
||||
{
|
||||
title: '岗位管理',
|
||||
path: '/postManage',
|
||||
menuId: 'd2954be3abaaf2de3dc79add4c8ab8cd'
|
||||
},
|
||||
// {
|
||||
// title: '用户管理',
|
||||
// path: '/userManage',
|
||||
// menuId: 'YRJUEVJVUJ'
|
||||
// },
|
||||
// {
|
||||
// title: '系统配置管理',
|
||||
// path: '/warningTimeSetting',
|
||||
// menuId: 'H2KC6P3PPM'
|
||||
// },
|
||||
// {
|
||||
// title: '文档转换监控',
|
||||
// path: '/convertDocView',
|
||||
// menuId: '3F52K25546'
|
||||
// },
|
||||
// {
|
||||
// title: '菜单管理',
|
||||
// path: '/menuManage',
|
||||
// menuId: '87b8b4f5817a7829696e63185c744d52'
|
||||
// },
|
||||
{
|
||||
title: '链接管理',
|
||||
path: '/linkManage',
|
||||
menuId: 'd3ff92078c53a4d9d1f1a94450fee91e'
|
||||
},
|
||||
// // {
|
||||
// // title: '保密管理',
|
||||
// // path: '/convertDocView'
|
||||
// // },
|
||||
// {
|
||||
// title: '动态信息管理',
|
||||
// path: '/DynamicInformations',
|
||||
// menuId: '3C87BSHJUF'
|
||||
// },
|
||||
{
|
||||
title: '标准属性自定义',
|
||||
path: '/attributeCustom',
|
||||
menuId: '9cdb9b40157dd967b664b9af462b960b'
|
||||
},
|
||||
// // {
|
||||
// // title: '流程分类管理',
|
||||
// // path: '/processClassificationManage',
|
||||
// // menuId: 'N323F2UB9FTUV5SD3GTD'
|
||||
// // },
|
||||
// // {
|
||||
// // title: '流程管理',
|
||||
// // path: '/processManage',
|
||||
// // menuId: 'K5KXSS3X9CF7CS8AMFJ5'
|
||||
// // },
|
||||
// {
|
||||
// title: 'SVPPS',
|
||||
// path: '/svpps',
|
||||
// menuId: 'AR52RX586LQHVZSVV83K'
|
||||
// },
|
||||
// {
|
||||
// title: '企标编号管理体系',
|
||||
// path: '/enterpriseStandardNumberManagement',
|
||||
// menuId: '9YSFG39S3CBFUJCEU3QX'
|
||||
// }
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '个人中心',
|
||||
path: '/personal',
|
||||
'icon-class': 'ucenter',
|
||||
menuId: '32143ffasdf',
|
||||
children: [
|
||||
// {
|
||||
// title: '我的消息',
|
||||
// path: '/dynamics',
|
||||
// menuId: 'JCEV4AEV32'
|
||||
// },
|
||||
// {
|
||||
// title: '我的企标',
|
||||
// path: '/MyEnterpriseStandard',
|
||||
// menuId: 'LKU3W23UMEHDM9VLDHGK'
|
||||
// },
|
||||
{
|
||||
title: '我的收藏',
|
||||
path: '/collection',
|
||||
menuId: '63e999c65b1f2b1339119a00eb1d50cf'
|
||||
},
|
||||
// {
|
||||
// title: '我的浏览',
|
||||
// path: '/browsing',
|
||||
// menuId: 'HAEY2A4LMX'
|
||||
// },
|
||||
// {
|
||||
// title: '已收分享',
|
||||
// path: '/push',
|
||||
// menuId: '9F8T7DPYHE'
|
||||
// },
|
||||
// {
|
||||
// title: '已发分享',
|
||||
// path: '/forward',
|
||||
// menuId: 'K45Y9TGKZV2K4XP4CETD'
|
||||
// },
|
||||
// {
|
||||
// title: '我的问答',
|
||||
// path: '/questionsAndAnswers',
|
||||
// menuId: '8VKLZATQQG4NQHXV9UDS'
|
||||
// },
|
||||
{
|
||||
title: '我的板块',
|
||||
path: '/plate',
|
||||
menuId: 'e4a94f03223df6f4ad70732b96f07221'
|
||||
}
|
||||
// {
|
||||
// title: '个人信息',
|
||||
// path: '/info',
|
||||
// menuId: '8K7FDHG89G'
|
||||
// }
|
||||
]
|
||||
},
|
||||
// {
|
||||
// title: '搜索中心',
|
||||
// path: '/advancedSearch',
|
||||
// 'icon-class': 'search',
|
||||
// menuId: '1332FSFAD',
|
||||
// isChildren: true // 判断没有子菜单
|
||||
// },
|
||||
// {
|
||||
// title: '标准比对库',
|
||||
// path: '/standardComparisonLibrary',
|
||||
// 'icon-class': 'search',
|
||||
// menuId: 'Q32VBYVGCAE4XXN3XZ8T',
|
||||
// isChildren: true // 判断没有子菜单
|
||||
// }
|
||||
// {
|
||||
// title: '自定义报表',
|
||||
// path: '/customReport',
|
||||
// 'icon-class': 'baobiao',
|
||||
// isChildren: true // 判断没有子菜单
|
||||
// }
|
||||
]
|
||||
}
|
||||
},
|
||||
...mapGetters(['getDynamicTotal', 'isCollapse'])
|
||||
},
|
||||
watch: {
|
||||
// 监听路由 重新渲染面包屑
|
||||
$route () {
|
||||
created () {
|
||||
// 获取当前页的path,赋值没左侧菜单,并展开
|
||||
if (this.$route.meta.parentPath) {
|
||||
this.defaultActive = this.$route.meta.parentPath
|
||||
} else {
|
||||
this.defaultActive = this.$route.path
|
||||
}
|
||||
},
|
||||
mounted () {
|
||||
},
|
||||
methods: {
|
||||
handleToggleSideBar () {
|
||||
this.toggleSideBar(!this.isCollapse)
|
||||
},
|
||||
...mapMutations(['toggleSideBar'])
|
||||
},
|
||||
computed: {
|
||||
logo () {
|
||||
return this.isCollapse ? require('assets/images/shangqi/img/logo4.png') : require('assets/images/shangqi/img/logo2.png')
|
||||
},
|
||||
...mapGetters(['getDynamicTotal', 'isCollapse'])
|
||||
},
|
||||
watch: {
|
||||
// 监听路由 重新渲染面包屑
|
||||
$route () {
|
||||
// 获取当前页的path,赋值没左侧菜单,并展开
|
||||
if (this.$route.meta.parentPath) {
|
||||
this.defaultActive = this.$route.meta.parentPath
|
||||
} else {
|
||||
this.defaultActive = this.$route.path
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/mixins';
|
||||
.nav-menu {
|
||||
width: 58px;
|
||||
height: 100%;
|
||||
overflow-y: auto;
|
||||
user-select: none;
|
||||
box-sizing: border-box;
|
||||
background: url("~assets/images/shangqi/sideBar/newside-bar-bg1.png") no-repeat;
|
||||
background: rgb(255, 255, 255);
|
||||
background-size: 100% 100%;
|
||||
.left-tree {
|
||||
height: calc(~'100% - 95px');
|
||||
overflow-y: auto;
|
||||
}
|
||||
.left-tree::-webkit-scrollbar {
|
||||
display: none;
|
||||
}
|
||||
&:not(.is-collapse) {
|
||||
width: 212px;
|
||||
background: url("~assets/images/shangqi/sideBar/side-bar-bg1.png") no-repeat;
|
||||
background: rgb(255, 255, 255);
|
||||
background-size: 100% 100%;
|
||||
.logo {
|
||||
padding: 10px;
|
||||
text-align: left;
|
||||
img {
|
||||
width: 115px;
|
||||
height: 43px;
|
||||
height: 45px;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -488,12 +517,18 @@ export default {
|
||||
height: 35px;
|
||||
}
|
||||
}
|
||||
.nav-menu-header{
|
||||
/*background:url("../../assets/images/shangqi/home/logo3.png");*/
|
||||
}
|
||||
}
|
||||
.has-no-read{
|
||||
position: relative;
|
||||
top:-15px;
|
||||
left:10px
|
||||
}
|
||||
.nav-menu /deep/.el-submenu__title i {
|
||||
color: #000;
|
||||
}
|
||||
.nav-menu{
|
||||
scrollbar-width: none;
|
||||
-ms-overflow-style: none; /* IE 10+ */
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
<span class="date">{{currentTime}}</span>
|
||||
<span class="divide-line"> | </span>
|
||||
<span class="user-img"></span>
|
||||
<span class="user">您好,{{ $store.getters.userInfo.uName }}</span>
|
||||
<span class="user">{{ $store.getters.userInfo.uName }}</span>
|
||||
<div class="user-info-panel-setting" @click.prevent="userInfoVisible = !userInfoVisible">
|
||||
<el-dropdown
|
||||
trigger="click"
|
||||
@@ -37,7 +37,7 @@ export default {
|
||||
},
|
||||
methods: {
|
||||
toHome () {
|
||||
this.$router.push('/home1')
|
||||
this.$router.push('/home2')
|
||||
},
|
||||
// 获取当前时间
|
||||
getTime () {
|
||||
|
||||
@@ -59,15 +59,19 @@ router.beforeEach(function (to, from, next) {
|
||||
let prcNum = to.query.prcNum;
|
||||
let prcName = to.query.prcName;
|
||||
let prcType = to.query.prcType;
|
||||
let param = "?taskIds="+taskId+"&prcId="+prcId
|
||||
+"&prcNum="+prcNum+"&prcName="+prcName+"&prcType="+prcType;
|
||||
if(taskId !== undefined && taskId !== null && prcId !== undefined && prcId !== null){
|
||||
get_verify_by_instance({
|
||||
taskId: taskId, // 任务id
|
||||
pId: prcId // 流程实例
|
||||
}).then(res => {
|
||||
if(res && res > 0){
|
||||
let param = "?taskIds="+taskId+"&prcId="+prcId
|
||||
+"&prcNum="+prcNum+"&prcName="+prcName+"&prcType="+prcType;
|
||||
// 根据type判断跳转具体流程页面
|
||||
let hisCount = res.hisCount === undefined ? 0 : res.hisCount;
|
||||
let commitStatus = res.commitStatus === undefined ? 0 : res.commitStatus;
|
||||
let isNotFinished = res.isNotFinished === undefined ? 0 :res.isNotFinished;
|
||||
|
||||
if(hisCount && hisCount > 0){ // 业务系统 当前节点已完成
|
||||
// 根据type判断跳转具体流程页面
|
||||
if (prcType === '1') {
|
||||
// 标准入库流程数据
|
||||
next({path:"bzrkStep5"+param})
|
||||
@@ -103,6 +107,18 @@ router.beforeEach(function (to, from, next) {
|
||||
//项目清单确认
|
||||
next({path:"xmqdqrStep1-3"+param})
|
||||
}
|
||||
}else { // 业务系统 当前节点未完成
|
||||
// commitStatus 大于0 表示当前节点存在未完成干活流程
|
||||
if(isNotFinished && isNotFinished > 0 && commitStatus && commitStatus > 0){
|
||||
if(prcType === '3'){
|
||||
//标准征求意见 接受节点 未完成 oa已办 跳转详情页面
|
||||
if(path === '/bzzqyjStep3'){
|
||||
next({path:"processAcceptDetail?prcNum="+prcNum+"&tabsName=AlreadyProcess"})
|
||||
}
|
||||
}
|
||||
}else{
|
||||
next()
|
||||
}
|
||||
}
|
||||
console.log("res : res =>", res);
|
||||
})
|
||||
|
||||
@@ -0,0 +1,81 @@
|
||||
<!--外部会议资料-->
|
||||
<template>
|
||||
<div class="conference-materials">
|
||||
<ul>
|
||||
<li v-for="item in materialsList" :key="item.id" class="time-title">
|
||||
<a class="title" :title="item.title">{{item.name}}</a>
|
||||
<span class="time">{{putTime}}</span>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "ConferenceMaterials",
|
||||
data () {
|
||||
return {
|
||||
putTime: '',
|
||||
materialsList: [
|
||||
{
|
||||
id: 1,
|
||||
name: '外部会议资料1',
|
||||
},
|
||||
{
|
||||
id: 2,
|
||||
name: '外部会议资料2',
|
||||
},{
|
||||
id: 3,
|
||||
name: '外部会议资料3',
|
||||
},
|
||||
{
|
||||
id: 4,
|
||||
name: '外部会议资料4',
|
||||
},
|
||||
|
||||
], //会议资料数据
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
//获取当前时间
|
||||
getDate () {
|
||||
var date = new Date()
|
||||
var year = date.getFullYear()
|
||||
var month = date.getMonth() + 1
|
||||
var day = date.getDate()
|
||||
if (month < 10) {
|
||||
month = '0' + month
|
||||
}
|
||||
if (day < 10) {
|
||||
day = '0' + day
|
||||
}
|
||||
var nowDate = year + '-' + month + '-' + day
|
||||
this.putTime = nowDate
|
||||
}
|
||||
|
||||
},
|
||||
mounted() {
|
||||
this.getDate()
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
.conference-materials {
|
||||
.time-title {
|
||||
margin: 15px;
|
||||
.time {
|
||||
float: right;
|
||||
color:#FFFFFF;
|
||||
}
|
||||
a {
|
||||
color: #FFFFFF;
|
||||
&:hover {
|
||||
color: #e9c851;
|
||||
cursor:pointer;
|
||||
text-decoration: underline;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,90 @@
|
||||
<!-- 尾部链接 -->
|
||||
<template>
|
||||
<div class="link">
|
||||
<div class="title">友情链接</div>
|
||||
<ul>
|
||||
<li v-for="(link, index) in linkList" v-if="index<5" :key="index" @click="openLinkUrl(link.url)">
|
||||
<a v-if="link.name.length>13" v-html="link.name.substring(0,13)+'...'" :title="link.name"></a>
|
||||
<a v-else v-html="link.name" :title="link.name"></a>
|
||||
</li>
|
||||
<li>
|
||||
<router-link to="/linkManage">更多链接></router-link>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'Empennage',
|
||||
components: {},
|
||||
mixins: [],
|
||||
data() {
|
||||
return {
|
||||
linkList: [],
|
||||
}
|
||||
},
|
||||
computed: {},
|
||||
watch: {},
|
||||
mounted() {
|
||||
this.getLink();
|
||||
},
|
||||
methods: {
|
||||
// 跳转链接
|
||||
openLinkUrl (linkUri) {
|
||||
let getHttp = linkUri.substring(0, 7)
|
||||
let getHttps = linkUri.substring(0, 8)
|
||||
if (getHttp === 'http://' || getHttps === 'https://') {
|
||||
window.open(linkUri)
|
||||
} else {
|
||||
window.open('https://' + linkUri)
|
||||
}
|
||||
},
|
||||
// 获取链接数据
|
||||
getLink () {
|
||||
this.$http.get('sarUrl/tsUrl', {
|
||||
}, {
|
||||
_this: this,
|
||||
loading: 'Loading'
|
||||
}, res=> {
|
||||
this.linkList = res.data
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
.link {
|
||||
display: flex;
|
||||
border-radius: 3px;
|
||||
height: 100%;
|
||||
.title {
|
||||
padding-left: 10px;
|
||||
width: 80px;
|
||||
}
|
||||
ul {
|
||||
width: calc(~'100% - 80px');
|
||||
display: flex;
|
||||
height: 100%;
|
||||
text-align: center;
|
||||
user-select: none;
|
||||
li {
|
||||
border-right: 1px solid #f4f4f4;
|
||||
flex: 1;
|
||||
a {
|
||||
color: #333333;
|
||||
}
|
||||
}
|
||||
li:hover {
|
||||
background: #5ea9f6;
|
||||
a {
|
||||
color: #e9ca32;
|
||||
text-decoration: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -0,0 +1,116 @@
|
||||
<!-- 右侧导航 -->
|
||||
<template>
|
||||
<div class="nav-menu">
|
||||
<div class="lattice">
|
||||
<div class="title">快捷入口</div>
|
||||
<div class="menu-wrap">
|
||||
<enter-card v-for="(item, index) in list"
|
||||
:key="index"
|
||||
:label="item.label"
|
||||
:path="item.path"
|
||||
:class="list.length === 1 ? 'wx-card1' : (list.length == 2 ? 'wx-card2' :'')">
|
||||
</enter-card>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import EnterCard from '@/pages/home/components/EnterCard'
|
||||
export default {
|
||||
name: 'NavMenu',
|
||||
components: {EnterCard},
|
||||
mixins: [],
|
||||
data() {
|
||||
return {
|
||||
list: []
|
||||
}
|
||||
},
|
||||
computed: {},
|
||||
watch: {},
|
||||
mounted() {
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
getData (){
|
||||
this.$http.get('/sarPersonalCenter/sar-user-personal-menu/getList',
|
||||
{
|
||||
userId: this.$store.getters.userInfo.userId
|
||||
}, {_this: this}, res => {
|
||||
if (res.ok) {
|
||||
res.data.records.forEach( item => {
|
||||
if (item.state == 1) {
|
||||
var json = {}
|
||||
json.label = item.menuName
|
||||
json.path = item.menuUrl
|
||||
this.list.push(json)
|
||||
}
|
||||
})
|
||||
for (let a = this.list.length; a < 9; a++) {
|
||||
var json = {}
|
||||
json.label = ''
|
||||
json.path = '/plate'
|
||||
this.list.push(json)
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
toPage() {
|
||||
this.$router.push(this.path)
|
||||
}
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
.nav-menu {
|
||||
.lattice {
|
||||
.title {
|
||||
margin-bottom: 10px;
|
||||
padding-left: 10px;
|
||||
height: 40px;
|
||||
line-height: 40px;
|
||||
background: #fff;
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
}
|
||||
.menu-wrap {
|
||||
height: 240px;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
justify-content:space-between;
|
||||
font-size: 18px;
|
||||
color: #333333;
|
||||
margin-bottom: 10px;
|
||||
text-align: center;
|
||||
&:last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
.wx-card {
|
||||
height: 70px;
|
||||
background-color: #FFFFFF;
|
||||
width: 32%;
|
||||
margin: 0 0 10px 0;
|
||||
}
|
||||
.wx-card1 {
|
||||
width: 100%;
|
||||
}
|
||||
.wx-card2 {
|
||||
width: 49%;
|
||||
}
|
||||
.menu-item {
|
||||
flex: 1;
|
||||
height: 70px;
|
||||
line-height: 70px;
|
||||
text-align: center;
|
||||
margin-right: 10px;
|
||||
background: #FFFFFF;
|
||||
&:last-child {
|
||||
margin-right: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
<!--会议通知-->
|
||||
<template>
|
||||
<div class="notice-of-meeting">
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "NoticeOfMeeting",
|
||||
data () {
|
||||
return {
|
||||
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
.notice-of-meeting {
|
||||
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,70 @@
|
||||
<!-- 资讯 -->
|
||||
<template>
|
||||
<div class="realimeinfo">
|
||||
<ul>
|
||||
<li v-for="item in realimeinfoList" :key="item.id" class="time-title">
|
||||
<a class="title" :title="item.title">{{ item.title }}</a>
|
||||
<span class="time">{{ getDate(item.pubTime) }}</span>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'Realimeinfo',
|
||||
components: {},
|
||||
mixins: [],
|
||||
data() {
|
||||
return {
|
||||
putTime: '',
|
||||
realimeinfoList: [], //资讯数据
|
||||
}
|
||||
},
|
||||
computed: {},
|
||||
watch: {},
|
||||
mounted() {
|
||||
this.getDate()
|
||||
this.getDynamicInformation()
|
||||
},
|
||||
methods: {
|
||||
//截取时间
|
||||
getDate (date) {
|
||||
return date != null ? date.substring(0, date.indexOf(' ')) : ''
|
||||
},
|
||||
//获取数据
|
||||
getDynamicInformation () {
|
||||
let obj = {}
|
||||
obj.msgType = 'RESOURCE'
|
||||
obj.rowLimit = 8
|
||||
this.$http.get('lawss/msgDynamicInfo/page', obj, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.realimeinfoList = res.data.list
|
||||
}, e => {
|
||||
})
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
.realimeinfo {
|
||||
.time-title {
|
||||
margin: 15px;
|
||||
.time {
|
||||
float: right;
|
||||
color: #FFFFFF;
|
||||
}
|
||||
a {
|
||||
color: #ffffff;
|
||||
&:hover {
|
||||
color: #e9c851;
|
||||
cursor:pointer;
|
||||
text-decoration: underline;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -0,0 +1,115 @@
|
||||
<!-- 标准发布 -->
|
||||
<template>
|
||||
<div class="release">
|
||||
<!-- <ul>-->
|
||||
<!-- <li v-for="item in standardReleaseList" :key="item.id" class="time-title" >-->
|
||||
<!-- <div style="height: 18px;">-->
|
||||
<!-- <a @click="handlePreview(item)" style="color: #333333" class="table-jump">{{ item.standName }}</a>-->
|
||||
<!-- <span class="time">{{item.issueTime ? $moment(item.issueTime).format('YYYY-MM-DD') : '' }}</span>-->
|
||||
<!-- </div>-->
|
||||
<!-- </li>-->
|
||||
<!-- </ul>-->
|
||||
<el-table
|
||||
ref="selection"
|
||||
:data="standardReleaseList"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%;padding:0 0 20px 0;"
|
||||
border
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
||||
style="width: 100%">
|
||||
<el-table-column
|
||||
type="index"
|
||||
width="50">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="standName"
|
||||
label="名称">
|
||||
<template slot-scope="scope">
|
||||
<span @click="handlePreview(scope.row)">{{ scope.row.standName }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
width="120"
|
||||
label="结束时间">
|
||||
<template slot-scope="scope">
|
||||
<span>{{scope.row.issueTime ? $moment(scope.row.issueTime).format('YYYY-MM-DD') : '' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'Release',
|
||||
components: {},
|
||||
mixins: [],
|
||||
data() {
|
||||
return {
|
||||
putTime: '',
|
||||
standardReleaseList: [], //标准发布数据
|
||||
}
|
||||
},
|
||||
computed: {},
|
||||
watch: {},
|
||||
mounted() {
|
||||
this.getDate()
|
||||
this.getAdvice()
|
||||
this.addDate()
|
||||
},
|
||||
methods: {
|
||||
// 点击查看
|
||||
handlePreview (item) {
|
||||
let routeUrl = this.$router.resolve({
|
||||
name: 'OtherStandardDetails',
|
||||
params: {
|
||||
id: item.id,
|
||||
pageType: item.standType + '_STAND'
|
||||
}
|
||||
})
|
||||
window.open(routeUrl.href, '_blank')
|
||||
},
|
||||
//截取时间
|
||||
getDate (date) {
|
||||
return date != null ? date.substring(0, date.indexOf(' ')) : ''
|
||||
},
|
||||
//获取数据
|
||||
getAdvice() {
|
||||
let obj = {}
|
||||
obj.limit = 10
|
||||
this.$http.get('sarStandardsInfo/sar-standards-info/getStandInfoByList', obj, {
|
||||
_this: this
|
||||
}, res => {
|
||||
let arr = res.data
|
||||
arr.forEach(item => {
|
||||
if(item.standName !== ""){
|
||||
this.standardReleaseList.push(item)
|
||||
}
|
||||
})
|
||||
}, e => {
|
||||
})
|
||||
},
|
||||
},
|
||||
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
.release {
|
||||
.time-title {
|
||||
margin: 15px;
|
||||
.time {
|
||||
float: right;
|
||||
color:#333333;
|
||||
}
|
||||
a {
|
||||
color: #ffffff;
|
||||
&:hover {
|
||||
color: #e9c851;
|
||||
cursor:pointer;
|
||||
text-decoration: underline;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,127 @@
|
||||
<!-- 搜索栏 -->
|
||||
<template>
|
||||
<div class="search-group">
|
||||
<el-select
|
||||
v-model="checkState"
|
||||
class="search-group-item"
|
||||
placeholder="请选择"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in jumpPage"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
></el-option>
|
||||
</el-select>
|
||||
|
||||
<div class="search-condition">
|
||||
<el-input
|
||||
@keyup.native.enter="search"
|
||||
v-model="checkContent">
|
||||
type="text"
|
||||
placeholder="请输入关键词"
|
||||
clearable
|
||||
></el-input>
|
||||
<el-button class="primary_button" type="primary" @click="search">搜索</el-button>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'SearchGroup',
|
||||
components: {},
|
||||
mixins: [],
|
||||
data() {
|
||||
return {
|
||||
// 当前查询状态
|
||||
checkState: 'All',
|
||||
// 查询内容
|
||||
checkContent: '',
|
||||
jumpPage: [
|
||||
{
|
||||
label: '全部',
|
||||
value: 'All'
|
||||
},
|
||||
{
|
||||
label: '国内标准法规',
|
||||
value: 'stand'
|
||||
},
|
||||
{
|
||||
label: '海外标准法规', // value没改
|
||||
value: 'bussstand'
|
||||
},
|
||||
// {
|
||||
// label: '国内外政策',
|
||||
// value: 'laws'
|
||||
// },
|
||||
{
|
||||
label: '企业标准',
|
||||
value: 'enterprise'
|
||||
}
|
||||
],
|
||||
}
|
||||
},
|
||||
computed: {},
|
||||
watch: {},
|
||||
methods: {
|
||||
search() {
|
||||
this.$router.push({
|
||||
name: 'StandardSearch',
|
||||
params: {
|
||||
selectKey: this.checkState,
|
||||
searchValue: this.checkContent || undefined
|
||||
}
|
||||
})
|
||||
},
|
||||
},
|
||||
mounted(){
|
||||
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
.search-group {
|
||||
display: flex;
|
||||
width: 100%;
|
||||
height: 40px;
|
||||
margin-bottom: 10px;
|
||||
.search-group-item {
|
||||
margin-right: 20px;
|
||||
border-radius: 5px;
|
||||
::v-deep {
|
||||
.el-input__inner {
|
||||
width: 18vm;
|
||||
height: 40px;
|
||||
color: #333333;
|
||||
font-size: 16px;
|
||||
border: 0;
|
||||
border-radius: 3px;
|
||||
background-color: #FFFFFF;
|
||||
}
|
||||
}
|
||||
}
|
||||
.search-condition {
|
||||
display: flex;
|
||||
flex: 1;
|
||||
::v-deep {
|
||||
.el-input__inner {
|
||||
height: 40px;
|
||||
font-size: 16px;
|
||||
color: #333333;
|
||||
border: 0;
|
||||
border-radius: 3px;
|
||||
background: #FFFFFF;
|
||||
}
|
||||
}
|
||||
}
|
||||
.primary_button {
|
||||
width: 7.2vw;
|
||||
height: 40px;
|
||||
border: 0;
|
||||
border-radius: 3px;
|
||||
background-color: #5ea9f6;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,113 @@
|
||||
<!-- 标准征求意见 -->
|
||||
<template>
|
||||
<div class="solicitopinions">
|
||||
<!-- <ul>-->
|
||||
<!-- <li v-for="item in domesticDynamics" :key="item.id" class="time-title">-->
|
||||
<!-- <div style="height: 18px; border-bottom: dashed 1px #cccccc">-->
|
||||
<!-- <a class="title" style="color: #333333;" :title="item.cname" @click="standForComments(item)">{{ item.cid }}</a>-->
|
||||
<!-- <span class="time">{{ item.endTime }}</span>-->
|
||||
<!-- </div>-->
|
||||
<!-- </li>-->
|
||||
<!-- </ul>-->
|
||||
<el-table
|
||||
ref="selection"
|
||||
:data="domesticDynamics"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%;padding:0 0 20px 0;"
|
||||
border
|
||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
||||
style="width: 100%">
|
||||
<el-table-column
|
||||
type="index"
|
||||
width="50">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="cid"
|
||||
label="标准名称/政策名称">
|
||||
<template slot-scope="scope">
|
||||
<span @click="standForComments(scope.row)">{{ scope.row.cid }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="endTime"
|
||||
width="120"
|
||||
label="结束时间">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "Solicitopinions",
|
||||
components: {},
|
||||
mixins: [],
|
||||
data() {
|
||||
return {
|
||||
updateTime: "",
|
||||
putTime: "",
|
||||
domesticDynamics: [] //标准征求意见数据
|
||||
};
|
||||
},
|
||||
computed: {},
|
||||
watch: {},
|
||||
mounted() {
|
||||
this.getDate();
|
||||
this.getAdvice();
|
||||
// this.addDate();
|
||||
},
|
||||
methods: {
|
||||
//截取时间
|
||||
getDate(date) {
|
||||
return date != null ? date.substring(0, date.indexOf(" ")) : "";
|
||||
},
|
||||
//获取数据
|
||||
getAdvice() {
|
||||
this.$http.get("slrs/sar-public-idea/SelectAllPage", {
|
||||
page: 1,
|
||||
size: 10
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.domesticDynamics = res.data.records
|
||||
}, e => {
|
||||
|
||||
});
|
||||
},
|
||||
standForComments(item) {
|
||||
this.$store.commit("setDetailMap", this.$router.path);
|
||||
this.$router.push({
|
||||
name: "consultationDetails",
|
||||
query: {
|
||||
item: item
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
.solicitopinions {
|
||||
height: 100%;
|
||||
|
||||
.time-title {
|
||||
margin: 15px;
|
||||
color: #333333;
|
||||
.time {
|
||||
float: right;
|
||||
color: #333333;
|
||||
}
|
||||
|
||||
a {
|
||||
color: #ffffff;
|
||||
|
||||
&:hover {
|
||||
color: #e9c851;
|
||||
cursor: pointer;
|
||||
text-decoration: underline;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,680 @@
|
||||
<!-- 待办任务 -->
|
||||
<template>
|
||||
<div class="to-do-list">
|
||||
<div>
|
||||
<span class="task">待办任务</span>
|
||||
<div class="more" @click="togo">更多</div>
|
||||
</div>
|
||||
<ul>
|
||||
<li v-for="item in toDoTaskList" :key="item.id" class="time-title">
|
||||
<div style="height: 18px">
|
||||
<a style="color: #333333" @click="dealWith(item)">{{ item.prcName }}</a>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'ToDoList',
|
||||
components: {},
|
||||
mixins: [],
|
||||
data() {
|
||||
return {
|
||||
toDoTaskList: [],// 代办数据
|
||||
total: 0,
|
||||
pageNo: 1,
|
||||
}
|
||||
},
|
||||
computed: {},
|
||||
watch: {},
|
||||
mounted() {this.queryProcess()},
|
||||
methods: {
|
||||
togo () {
|
||||
this.$router.push('/processCenter')
|
||||
},
|
||||
queryProcess () { // 查询待办流程
|
||||
this.$http.postData('lawss/activiti/todoTaskList', {
|
||||
current: this.pageNo,
|
||||
size: parseInt(this.$store.getters.userInfo.configContent),
|
||||
userId: this.$store.getters.userInfo.usid || this.$store.getters.userInfo.userId,
|
||||
},
|
||||
{
|
||||
loading: 'loading',
|
||||
_this: this
|
||||
}, res => {
|
||||
this.toDoTaskList = res.list
|
||||
}, e => {
|
||||
})
|
||||
},
|
||||
toPage() {
|
||||
this.$router.push(this.path)
|
||||
},
|
||||
dealWith (row) { // 办理
|
||||
const prcType = row.prcType
|
||||
switch(prcType) {
|
||||
case '1':
|
||||
if (row.taskInfo === '标准法规业务经理审批') {
|
||||
this.$router.push({
|
||||
name: 'bzrkStep2',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
}else if (row.taskInfo === '责任人会签'){
|
||||
this.$router.push({
|
||||
name: 'bzrkStep3',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
}else if (row.taskInfo === '申请人修订'){
|
||||
this.$router.push({
|
||||
name: 'bzrkStep4',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
}
|
||||
break
|
||||
case '2':
|
||||
if (row.taskInfo === '责任对接人选择责任人') {
|
||||
this.$router.push({
|
||||
name: 'bzdyStep2',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if (row.taskInfo === '责任人上传调研结果') {
|
||||
this.$router.push({
|
||||
name: 'bzdyStep3',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if (row.taskInfo === '责任对接人审批') {
|
||||
this.$router.push({
|
||||
name: 'bzdyStep4',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if (row.taskInfo === '标准法规工程师调研汇总'){
|
||||
this.$router.push({
|
||||
name: 'bzdyStep5',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if (row.taskInfo === '责任人会签'){
|
||||
this.$router.push({
|
||||
name: 'bzdyStep6',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if (row.taskInfo === '部长+对接人审核') {
|
||||
this.$router.push({
|
||||
name: 'bzdyStep7',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if (row.taskInfo.indexOf('工程研究总院院长') == 0 ) {
|
||||
this.$router.push({
|
||||
name: 'bzdyStep9',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else {
|
||||
this.$router.push({
|
||||
name: 'bzdyStep8',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
}
|
||||
break;
|
||||
case '3':
|
||||
if (row.taskInfo === '责任对接人选择责任人') {
|
||||
this.$router.push({
|
||||
name: 'bzzqyjStep2',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if (row.taskInfo === '责任人填写征求意见'){
|
||||
this.$router.push({
|
||||
name: 'bzzqyjStep3',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if (row.taskInfo === '责任对接人审批') {
|
||||
this.$router.push({
|
||||
name: 'bzzqyjStep4',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if (row.taskInfo === '标准法规工程师汇总填写处理意见') {
|
||||
this.$router.push({
|
||||
name: 'bzzqyjStep5',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if (row.taskInfo === '责任人会签') {
|
||||
this.$router.push({
|
||||
name: 'bzzqyjStep6',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if (row.taskInfo === '部长+对接人审核') {
|
||||
this.$router.push({
|
||||
name: 'bzzqyjStep7',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if (row.taskInfo.indexOf('技术委员会相关专委会主任') == 0 ) {
|
||||
this.$router.push({
|
||||
name: 'bzzqyjStep8',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else {
|
||||
this.$router.push({
|
||||
name: 'bzzqyjStep9',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
}
|
||||
break
|
||||
//标准清单更新/发布流程
|
||||
case'4' :
|
||||
if (row.taskInfo === '进行会签,填写意见') {
|
||||
this.$router.push({
|
||||
name: 'bzqdfbStep2',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if (row.taskInfo === '根据会签意见修订') {
|
||||
this.$router.push({
|
||||
name: 'bzqdfbStep3',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
}else if (row.taskInfo === '业务经理审批') {
|
||||
this.$router.push({
|
||||
name: 'bzqdfbStep4',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
}
|
||||
break
|
||||
//项目合规评估流程
|
||||
case '5' :
|
||||
if(row.taskInfo === '标准法规部业务经理审批'){
|
||||
this.$router.push({
|
||||
name: 'xmpgStep2',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
}else if(row.taskInfo === '标准评估任务下发'){
|
||||
this.$router.push({
|
||||
name: 'xmpgStep3',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
}else if(row.taskInfo === '合规性评估'){
|
||||
this.$router.push({
|
||||
name: 'xmpgStep4',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
}else if(row.taskInfo === '分发责任人审核'){
|
||||
this.$router.push({
|
||||
name: 'xmpgStep5',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
}else if(row.taskInfo === '汇总审核'){
|
||||
this.$router.push({
|
||||
name: 'xmpgStep6',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
}else if(row.taskInfo === '标准法规部领导审核'){
|
||||
this.$router.push({
|
||||
name: 'xmpgStep7',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
}
|
||||
break
|
||||
//项目评估流程-项目
|
||||
case '6':
|
||||
if(row.taskInfo === '标准法规部业务经理审批'){
|
||||
this.$router.push({
|
||||
name: 'xmpg2Step2',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
}else if(row.taskInfo === '工程经理转办'){
|
||||
this.$router.push({
|
||||
name: 'xmpg2Step3',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if(row.taskInfo === '架构经理任务分发') {
|
||||
this.$router.push({
|
||||
name: 'xmpg2Step4',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if(row.taskInfo === '分发责任人下发') {
|
||||
this.$router.push({
|
||||
name: 'xmpg2Step5',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if(row.taskInfo === '合规性评估') {
|
||||
this.$router.push({
|
||||
name: 'xmpg2Step6',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if(row.taskInfo === '分发负责人审批') {
|
||||
this.$router.push({
|
||||
name: 'xmpg2Step7',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if(row.taskInfo === '架构经理审批') {
|
||||
this.$router.push({
|
||||
name: 'xmpg2Step8',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if(row.taskInfo === '工程经理审批') {
|
||||
this.$router.push({
|
||||
name: 'xmpg2Step9',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if(row.taskInfo === '标准法规部经理审批') {
|
||||
this.$router.push({
|
||||
name: 'xmpg2Step10',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if(row.taskInfo === '汇总审批') {
|
||||
this.$router.push({
|
||||
name: 'xmpg2Step11',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if(row.taskInfo === '标准法规部部长审批') {
|
||||
this.$router.push({
|
||||
name: 'xmpg2Step12',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
}
|
||||
break
|
||||
//未符合项整改流程
|
||||
case '8' :
|
||||
if(row.taskInfo === '下发至标准法规工程师'){
|
||||
this.$router.push({
|
||||
name: 'wfhxzgStep2',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if (row.taskInfo === '确认+选择责任人') {
|
||||
this.$router.push({
|
||||
name: 'wfhxzgStep3',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
}else if (row.taskInfo === '上传佐证材料填写信息') {
|
||||
this.$router.push({
|
||||
name: 'wfhxzgStep4',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
}else {
|
||||
this.$router.push({
|
||||
name: 'wfhxzgStep5',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
}
|
||||
break
|
||||
case '9':
|
||||
if (row.taskInfo === '选择执行人') {
|
||||
this.$router.push({
|
||||
name: 'bzjdStep2',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if (row.taskInfo === '填写解读分析') {
|
||||
this.$router.push({
|
||||
name: 'bzjdStep3',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if (row.taskInfo === '责任人审核') {
|
||||
this.$router.push({
|
||||
name: 'bzjdStep4',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if (row.taskInfo === '工程师审核') {
|
||||
this.$router.push({
|
||||
name: 'bzjdStep5',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if (row.taskInfo === '部长审批') {
|
||||
this.$router.push({
|
||||
name: 'bzjdStep6',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
}
|
||||
break
|
||||
//项目清单确认流程
|
||||
case '10' :
|
||||
if(row.taskInfo === '确认人确认'){
|
||||
this.$router.push({
|
||||
name: 'xmqdqrStep2',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
} else if (row.taskInfo === '标准法规部经理审批') {
|
||||
this.$router.push({
|
||||
name: 'xmqdqrStep3',
|
||||
query: {
|
||||
taskIds: row.taskIds,
|
||||
prcId: row.prcId,
|
||||
prcNum: row.prcNum,
|
||||
prcName: row.prcName,
|
||||
prcType: row.prcType
|
||||
}
|
||||
})
|
||||
}
|
||||
break
|
||||
|
||||
}
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
.to-do-list {
|
||||
border-radius: 3px;
|
||||
//flex: 1;
|
||||
height: calc(~'100% - 300px');
|
||||
overflow: hidden;
|
||||
background: #FFFFFF;
|
||||
.task {
|
||||
display: inline-block;
|
||||
margin: 15px;
|
||||
color: #333333;
|
||||
font-size: 18px;
|
||||
}
|
||||
.more {
|
||||
float: right;
|
||||
color: #333333;
|
||||
margin: 15px 15px;
|
||||
&:hover {
|
||||
color: #5ea9f6;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
.time-title {
|
||||
margin: 15px;
|
||||
border-bottom: 1px dashed #cccccc;
|
||||
}
|
||||
a {
|
||||
color: #333333;
|
||||
&:hover {
|
||||
color: #e9c851;
|
||||
text-decoration: underline;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,187 @@
|
||||
<template>
|
||||
<div class="home">
|
||||
<div class="home_main">
|
||||
<div class="left_wrapper">
|
||||
<search-group></search-group>
|
||||
<div class="main-tabs" style="border-radius: 3px;">
|
||||
<div class="main-left-wrap" >
|
||||
<!-- <el-button type="text" style="font-size: 14px" class="more" @click="MORE">MORE</el-button>-->
|
||||
<el-tabs
|
||||
v-model="activeName"
|
||||
class="home-tabs"
|
||||
@tab-click="handleTabClick"
|
||||
>
|
||||
<el-tab-pane label="标准征求意见" name="solicitOpinions">
|
||||
<solicitOpinions></solicitOpinions>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="标准发布" name="release">
|
||||
<release></release>
|
||||
</el-tab-pane>
|
||||
</el-tabs>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="right_wrapper">
|
||||
<nav-menu></nav-menu>
|
||||
<todo-list></todo-list>
|
||||
</div>
|
||||
</div>
|
||||
<div calss="home_footer">
|
||||
<div class="footer">
|
||||
<Empennage></Empennage>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import searchGroup from './components/searchGroup'
|
||||
import release from './components/release'
|
||||
import solicitOpinions from './components/solicitopinions'
|
||||
import navMenu from './components/navMenu'
|
||||
import todoList from './components/todoList'
|
||||
import Empennage from "./components/empennage"
|
||||
export default {
|
||||
name: "Home2",
|
||||
components: {
|
||||
searchGroup,
|
||||
solicitOpinions,
|
||||
release,
|
||||
navMenu,
|
||||
todoList,
|
||||
Empennage,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
activeName: 'solicitOpinions',
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
handleTabClick(tab, event) {},
|
||||
//退出登录
|
||||
logout(){
|
||||
this.$confirm('您确认要退出吗?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning',
|
||||
confirmButtonClass: 'common-button-primary',
|
||||
roundButton: false
|
||||
}).then(() => {
|
||||
this.$store.commit('setTypeFlag', 'loginOut')
|
||||
this.$http.get('logout', {}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.$store.dispatch('logout')
|
||||
this.$router.push('/login')
|
||||
}, e => {})
|
||||
}).catch(() => {
|
||||
})
|
||||
},
|
||||
MORE() {
|
||||
switch (this.activeName) {
|
||||
case 'solicitOpinions':
|
||||
this.$router.push({name: 'standardForComments'})
|
||||
break
|
||||
case 'release':
|
||||
this.$confirm('请选择国内/海外标准', {
|
||||
confirmButtonText: '国内标准',
|
||||
cancelButtonText: '海外标准',
|
||||
type: 'warning',
|
||||
center: true
|
||||
}).then(() => {
|
||||
this.$router.push({name: 'domesticStandardsAndRegulations'})
|
||||
}).catch(() => {
|
||||
this.$router.push({name: 'foreignStandardsAndRegulations'})
|
||||
});
|
||||
break
|
||||
default:
|
||||
break
|
||||
}
|
||||
}
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
.home{
|
||||
height: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
background-color: #F0F2F5;
|
||||
background-size: 100% 100%;
|
||||
.home_main {
|
||||
display: flex;
|
||||
flex: 1;
|
||||
overflow: hidden;
|
||||
.left_wrapper {
|
||||
display: flex;
|
||||
flex: 1;
|
||||
flex-direction: column;
|
||||
width: 53.5vw;
|
||||
height: calc(~'100% - 10px');
|
||||
margin-right: 10px;
|
||||
.more {
|
||||
float: right;
|
||||
color: #333333;
|
||||
margin: 0px 15px;
|
||||
&:hover {
|
||||
color: red;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
.home-tabs {
|
||||
/deep/.el-tabs__content {
|
||||
height: calc(~'100% - 55px');
|
||||
}
|
||||
::v-deep.el-tabs__header{
|
||||
margin: 0 70px 15px 10px
|
||||
}
|
||||
::v-deep {
|
||||
.el-tabs__item {
|
||||
font-size: 16px;
|
||||
font-weight: 500;
|
||||
color: #333333;
|
||||
}
|
||||
.el-tabs__nav-wrap::after {
|
||||
background-color: transparent;
|
||||
}
|
||||
}
|
||||
}
|
||||
.main-tabs {
|
||||
display: flex;
|
||||
flex: 1;
|
||||
flex-direction: column;
|
||||
width: 100%;
|
||||
height: 40vh;
|
||||
margin-right: 10px;
|
||||
background:#FFFFFF;
|
||||
.main-left-wrap {
|
||||
height: 100%;
|
||||
.home-tabs {
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
.right_wrapper {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
width: 37vw;
|
||||
height: 100%;
|
||||
}
|
||||
.search-condition {
|
||||
display: block;
|
||||
.el-input {
|
||||
width: 300px;
|
||||
}
|
||||
}
|
||||
}
|
||||
.footer {
|
||||
height: 49px;
|
||||
line-height: 49px;
|
||||
//margin-top: 0.3vh;
|
||||
//line-height: 5.2vh;
|
||||
background: #FFFFFF;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -60,7 +60,7 @@
|
||||
} else if (this.password === '') {
|
||||
this.$message.warning('密码不能为空')
|
||||
} else {
|
||||
// this.$router.push('/home1')
|
||||
// this.$router.push('/home2')
|
||||
this.loginUser(this.username, this.password)
|
||||
this.getEditPermission()
|
||||
}
|
||||
@@ -124,7 +124,7 @@
|
||||
if (hasHomeMenu) {
|
||||
this.setMenu(JSON.stringify(menuList)).then(res => {
|
||||
this.loading = false
|
||||
this.$router.push('/home1')
|
||||
this.$router.push('/home2')
|
||||
}, e => {
|
||||
this.loading = false
|
||||
this.$message.warning('未获取到菜单')
|
||||
@@ -165,7 +165,7 @@
|
||||
})
|
||||
if (hasHomeMenu) {
|
||||
this.setMenu(JSON.stringify(menuList)).then(res => {
|
||||
this.$router.push('/home1')
|
||||
this.$router.push('/home2')
|
||||
}, e => {
|
||||
this.$message.warning('未获取到菜单')
|
||||
})
|
||||
@@ -208,7 +208,7 @@
|
||||
})
|
||||
if (hasHomeMenu) {
|
||||
this.setMenu(JSON.stringify(menuList)).then(res => {
|
||||
this.$router.push('/home1')
|
||||
this.$router.push('/home2')
|
||||
}, e => {
|
||||
this.$message.warning('未获取到菜单')
|
||||
})
|
||||
@@ -323,7 +323,7 @@
|
||||
window.sessionStorage.setItem('menuList', menuList); // del
|
||||
if (hasHomeMenu) {
|
||||
this.setMenu(JSON.stringify(menuList)).then(res => {
|
||||
this.$router.push('/home1')
|
||||
this.$router.push('/home2')
|
||||
}, e => {
|
||||
this.$message.warning('未获取到菜单')
|
||||
})
|
||||
|
||||
@@ -0,0 +1,825 @@
|
||||
<template>
|
||||
<div class="xmqdqr-step1">
|
||||
<ProcessHeader toggle>
|
||||
<template slot="proName">项目清单确认流程</template>
|
||||
<template slot="proNode">申请人发起流程</template>
|
||||
</ProcessHeader>
|
||||
<div class="headerTabs">
|
||||
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||
<div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">人员信息</div>
|
||||
</div>
|
||||
<div class="content" v-show="active === '1'">
|
||||
<div style="flex: auto; overflow: auto;">
|
||||
<el-form
|
||||
ref="qdqrForm"
|
||||
:model="qdform"
|
||||
:rules="formRules"
|
||||
class="label-input-form"
|
||||
label-width="210px"
|
||||
>
|
||||
<ProcessTitle>
|
||||
<template slot="title">基础信息</template>
|
||||
</ProcessTitle>
|
||||
<div class="prc-content-border">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24">
|
||||
<!-- <el-form-item label="选择项目" prop="orgName" class="add-form-item form-item-disabled">-->
|
||||
<!-- <el-button size="mini" type="primary" style="margin-left: 10px;" @click="choiceProject">选择项目-->
|
||||
<!-- </el-button>-->
|
||||
<!-- </el-form-item>-->
|
||||
<el-form-item label="项目编号" prop="projectNumber" class="add-form-item form-item-disabled" style="float: left">
|
||||
<el-input
|
||||
v-model="qdform.projectNumber"
|
||||
placeholder="请输入项目编号"
|
||||
disabled
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-button size="mini" type="primary" style="margin-top: 1%;" @click="choiceProject">选择项目
|
||||
</el-button>
|
||||
<el-form-item label="项目名称" prop="projectName" class="add-form-item form-item-disabled">
|
||||
<el-input
|
||||
v-model="qdform.projectName"
|
||||
placeholder="请输入项目名称"
|
||||
disabled
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="清单名称" prop="detailedListName" class="add-form-item form-item-disabled" style="float: left">
|
||||
<el-input
|
||||
v-model="qdform.detailedListName"
|
||||
placeholder="请输入清单名称"
|
||||
disabled
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-button size="mini" type="primary" style="margin-top: 1%;" @click="choiceList">选择清单</el-button>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-form>
|
||||
</div>
|
||||
<el-collapse accordion>
|
||||
<el-collapse-item title="意见填写">
|
||||
<div style="margin: 10px 0;">
|
||||
<el-input
|
||||
type="textarea"
|
||||
:rows="3"
|
||||
resize="none"
|
||||
placeholder="请输入意见"
|
||||
v-model="commentText">
|
||||
</el-input>
|
||||
</div>
|
||||
</el-collapse-item>
|
||||
</el-collapse>
|
||||
</div>
|
||||
<div class="content" v-show="active === '2'">
|
||||
<div class="block" style="padding-top: 20px;">
|
||||
<el-timeline>
|
||||
<el-form
|
||||
ref="Form"
|
||||
:model="roleForm"
|
||||
:rules="roleFormRules"
|
||||
class="label-input-form myForm">
|
||||
<el-timeline-item timestamp="发起流程" placement="top" :color="roleForm.startUser ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="startUserName" style="margin-bottom: 0">
|
||||
<h4>流程发起人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.startUser" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.startUserName" placeholder="流程发起人" disabled></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="选择确认人" placement="top"
|
||||
:color="roleForm.confirmId ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="confirmName" style="margin-bottom: 0">
|
||||
<h4>确认人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.confirmId" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.confirmName" placeholder="选择确认人"
|
||||
@click.native="choiceZRR('confirmId', '选择确认人', roleForm.confirmId)"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
<el-timeline-item timestamp="选择审批人" placement="top"
|
||||
:color="roleForm.approveId ? '#66b1ff' : ''">
|
||||
<el-card>
|
||||
<el-form-item prop="approveName" style="margin-bottom: 0">
|
||||
<h4>审批人</h4>
|
||||
<div style="margin-top: 10px;width: 300px;">
|
||||
<el-input v-model="roleForm.approveId" style="display: none;"></el-input>
|
||||
<el-input v-model="roleForm.approveName" placeholder="选择法规部经理"
|
||||
@click.native="choiceZRR('approveId', '选择法规部经理', roleForm.approveId)"></el-input>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
</el-timeline-item>
|
||||
</el-form>
|
||||
</el-timeline>
|
||||
</div>
|
||||
</div>
|
||||
<Role-tree
|
||||
check-box
|
||||
:is-title="drawerTitle"
|
||||
:is-visible.sync="modalshowflag"
|
||||
@checkedRole="checkedRole"
|
||||
:nodeList="nodeList"
|
||||
></Role-tree>
|
||||
<ProcessFooter
|
||||
show-save
|
||||
show-submit
|
||||
:submitLoading="isSubmit"
|
||||
:saveLoading="saveLoading"
|
||||
@save="handleSave"
|
||||
@submit="handleSubmit"
|
||||
>
|
||||
</ProcessFooter>
|
||||
<!-- 选择项目弹窗-->
|
||||
<el-drawer
|
||||
title="选择项目"
|
||||
:visible.sync="projectModel"
|
||||
size="900px"
|
||||
custom-class="demo-drawer"
|
||||
>
|
||||
<div class="demo-drawer-content">
|
||||
<div style="position: absolute;bottom: 48px;top:60px;left: 0;right: 0">
|
||||
<div style="position: absolute;bottom: 55px;top: 0;right: 0;left: 0">
|
||||
<div class="left">
|
||||
<el-form :modal="projectSearch" :inline="true" class="label-input-form" style="margin-left:10px">
|
||||
<el-form-item label="项目编号" class="search-item search-item-last">
|
||||
<el-input
|
||||
v-model="projectSearch.projectNumber"
|
||||
placeholder="请输入项目编号"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="项目名称" class="search-item search-item-last">
|
||||
<el-input
|
||||
v-model="projectSearch.projectName"
|
||||
placeholder="请输入项目名称"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item class="search-item btn-box">
|
||||
<el-button
|
||||
type="primary"
|
||||
class="common-button-primary"
|
||||
size="small"
|
||||
v-btn-permission=""
|
||||
@click="getProjectDataBtn">
|
||||
查询
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
<el-form-item class="search-item btn-box">
|
||||
<el-button
|
||||
class="common-button-default"
|
||||
size="small"
|
||||
v-btn-permission=""
|
||||
@click="clearSearch">清空
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
<el-table
|
||||
:data="ProjectDatas"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
border
|
||||
height="100%"
|
||||
:header-cell-style="{background: '#f5f1f1', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}"
|
||||
@selection-change="selectProjectChange"
|
||||
ref="projectSelection"
|
||||
>
|
||||
<el-table-column
|
||||
type="selection"
|
||||
width="55"
|
||||
align="center" />
|
||||
<el-table-column
|
||||
prop="projectNumber"
|
||||
align="center"
|
||||
label="项目编号"
|
||||
/>
|
||||
<el-table-column
|
||||
prop="projectName"
|
||||
align="center"
|
||||
label="项目名称"
|
||||
/>
|
||||
<el-table-column
|
||||
prop="projectClassification"
|
||||
align="center"
|
||||
label="项目分类"
|
||||
/>
|
||||
<el-table-column
|
||||
prop="uname"
|
||||
align="center"
|
||||
label="项目经理"
|
||||
/>
|
||||
</el-table>
|
||||
</div>
|
||||
<pagination
|
||||
:page="page"
|
||||
:pageSize="pageSize"
|
||||
:total="total"
|
||||
@pageChange="pageChange"
|
||||
@pageSizeChange="pageSizeChange"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="demo-drawer-footer">
|
||||
<el-button size="mini" @click="cancelProject">取消</el-button>
|
||||
<el-button type="primary" size="mini" @click="OkProject">带入</el-button>
|
||||
</div>
|
||||
</el-drawer>
|
||||
<!-- 选择清单弹窗-->
|
||||
<el-drawer
|
||||
title="选择清单"
|
||||
:visible.sync="detailedListModel"
|
||||
size="900px"
|
||||
custom-class="demo-drawer"
|
||||
>
|
||||
<div class="demo-drawer-content">
|
||||
<div style="position: absolute;bottom: 48px;top:60px;left: 0;right: 0">
|
||||
<div style="position: absolute;bottom: 55px;top: 0;right: 0;left: 0">
|
||||
<div class="left">
|
||||
<el-form :modal="sarSarAccessEOSearch" :inline="true" class="label-input-form">
|
||||
<el-form-item label="车型类别" prop="carType" label-width="100px" class="search-item">
|
||||
<el-select
|
||||
v-model="sarSarAccessEOSearch.carType"
|
||||
placeholder="请选择"
|
||||
filterable
|
||||
size="small"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in energyKindOptions"
|
||||
:value="item.value"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="清单名称" class="search-item search-item-last">
|
||||
<el-input
|
||||
v-model="sarSarAccessEOSearch.detailedListName"
|
||||
placeholder="请输入清单名称"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item class="search-item btn-box">
|
||||
<el-button
|
||||
type="primary"
|
||||
class="common-button-primary"
|
||||
size="small"
|
||||
@click="searchSarAccess">
|
||||
查询
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
<el-form-item class="search-item btn-box">
|
||||
<el-button
|
||||
class="common-button-default"
|
||||
size="small"
|
||||
@click="clearSearchAccess">清空
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
<el-table
|
||||
:data="sarAccessListDatas"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%; padding: 0 3px"
|
||||
border
|
||||
height="100%"
|
||||
:header-cell-style="{background: '#f5f1f1', color: '#333333', fontSize: '16px',
|
||||
fontWeight: 'bold', height: '48px'}"
|
||||
@selection-change="selectListChange"
|
||||
ref="listSelection"
|
||||
>
|
||||
<el-table-column
|
||||
type="selection"
|
||||
width="55"
|
||||
align="center" />
|
||||
<el-table-column
|
||||
prop="carTypeShow"
|
||||
label="车型类别"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="detailedListName"
|
||||
label="清单名称"
|
||||
align="center"
|
||||
width="260px"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="detailedListState"
|
||||
label="清单状态"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.detailedListState === '0'">未发布</span>
|
||||
<span v-if="scope.row.detailedListState === '1'">已发布</span>
|
||||
<span v-if="scope.row.detailedListState === '3'">审核中</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="detailedListVision"
|
||||
label="清单版本"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<span
|
||||
v-if="scope.row.detailedListVision != null && scope.row.detailedListVision !== ''">{{ scope.row.detailedListVision
|
||||
}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="updateTime"
|
||||
label="更新时间"
|
||||
align="center">
|
||||
<template slot-scope="scope">
|
||||
<div>
|
||||
{{ scope.row.updateTime ? $moment(scope.row.updateTime).format("YYYY-MM-DD") : scope.row.updateTime
|
||||
}}
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="updatePeople"
|
||||
label="更新人"
|
||||
align="center">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<pagination
|
||||
:page="pageNo"
|
||||
:pageSize="pageSizeNo"
|
||||
:total="totalNo"
|
||||
@pageChange="pageChangeNo"
|
||||
@pageSizeChange="pageSizeChangeNo"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="demo-drawer-footer">
|
||||
<el-button size="mini" @click="closeDrawer">取消</el-button>
|
||||
<el-button type="primary" size="mini" @click="OkDrawer">带入</el-button>
|
||||
</div>
|
||||
</el-drawer>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import ProcessHeader from "../../components/ProcessHeader";
|
||||
import ProcessFooter from "../../components/ProcessFooter";
|
||||
import ProcessTitle from "../../components/ProcessTitle";
|
||||
import { saveTaskFirst } from "api/process";
|
||||
|
||||
export default {
|
||||
name: "xmqdqrStep1-4",
|
||||
components: {
|
||||
ProcessHeader,
|
||||
ProcessFooter,
|
||||
ProcessTitle
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
multipleSelection: [],
|
||||
active: "1", //默认显示
|
||||
commentText: "",
|
||||
modalshowflag: false,
|
||||
drawerTitle: "",
|
||||
nodeList: [],
|
||||
isSubmit: false,
|
||||
saveLoading: false,
|
||||
detailedListModel: false,
|
||||
projectModel: false,
|
||||
sarAccessListDatas: [],
|
||||
ProjectDatas: [],
|
||||
selectProject: [],
|
||||
selectedList: [],
|
||||
total: 0,
|
||||
page: 1,
|
||||
pageSize: this.$store.getters.userInfo.configContent,
|
||||
totalNo: 0,
|
||||
pageNo: 1,
|
||||
pageSizeNo: this.$store.getters.userInfo.configContent,
|
||||
energyKindOptions: [], //存放适用车型数据
|
||||
// 查询相关参数
|
||||
sarSarAccessEOSearch: {
|
||||
carType: "",
|
||||
detailedListName: ""
|
||||
},
|
||||
projectSearch: {
|
||||
projectNumber: "",
|
||||
projectName: ""
|
||||
|
||||
},
|
||||
qdform: {
|
||||
projectNumber: "",
|
||||
projectName: "",
|
||||
detailedListName: ""
|
||||
},
|
||||
roleForm: {
|
||||
startUserName: this.$store.getters.userInfo.userName,
|
||||
startUser: this.$store.getters.userInfo.userId,
|
||||
confirmId: "",
|
||||
confirmName: "",
|
||||
approveId: "",
|
||||
approveName:"",
|
||||
},
|
||||
//表单验证
|
||||
formRules: {
|
||||
projectName: [
|
||||
{ required: true, message: "请输入项目名称", trigger: "blur" }
|
||||
],
|
||||
projectNumber: [
|
||||
{ type: "string", required: true, message: "请输入项目编号", trigger: "change" }
|
||||
],
|
||||
detailedListName: [
|
||||
{ required: true, message: "请输入清单名称", trigger: "blur" },
|
||||
{trigger: 'change'}
|
||||
]
|
||||
},
|
||||
// 角色验证
|
||||
roleFormRules: {
|
||||
confirmName: [
|
||||
{ required: true, message: "请选择确认人", trigger: "change" }
|
||||
],
|
||||
approveName: [
|
||||
{ required: true, message: "请选择审批人", trigger: "change" }
|
||||
]
|
||||
}
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
// 表格勾选
|
||||
handleSelectionChange(val) {
|
||||
// 单选
|
||||
if (val.length > 1) {
|
||||
this.$refs.table.clearSelection();
|
||||
this.$refs.table.toggleRowSelection(val.pop());
|
||||
}
|
||||
this.multipleSelection = val;
|
||||
},
|
||||
handleTabs(type) {
|
||||
this.active = type;
|
||||
},
|
||||
getProjectDataBtn() {
|
||||
this.page = 1;
|
||||
this.getProjectData();
|
||||
},
|
||||
//查询项目列表
|
||||
getProjectData() {
|
||||
this.$http.get("sarStandProjectLibrary/queryProjectConfirm", {
|
||||
PageSize: this.pageSize,
|
||||
Page: this.page,
|
||||
...this.projectSearch
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
this.ProjectDatas = res.data.total.records;
|
||||
this.total = res.data.total.total;
|
||||
this.page = 1;
|
||||
}, e => {
|
||||
|
||||
});
|
||||
},
|
||||
//清空查询列表
|
||||
clearSearch() {
|
||||
this.projectSearch = {
|
||||
projectName: "",
|
||||
projectNumber: ""
|
||||
};
|
||||
this.getProjectData();
|
||||
},
|
||||
//项目带入取消事件
|
||||
cancelProject() {
|
||||
this.projectModel = false;
|
||||
},
|
||||
//项目带入确定事件
|
||||
OkProject() {
|
||||
if (this.selectProject.length < 1) {
|
||||
this.$message.warning("请至少选择一条数据进行带入");
|
||||
} else if (this.selectProject.length > 1) {
|
||||
this.$message.warning("您只能选择一条数据进行带入");
|
||||
} else {
|
||||
console.log(this.selectProject[0])
|
||||
this.qdform.projectNumber = this.selectProject[0].projectNumber;
|
||||
this.qdform.projectName = this.selectProject[0].projectName;
|
||||
this.qdform.projectId = this.selectProject[0].id;
|
||||
this.projectModel = false;
|
||||
}
|
||||
|
||||
},
|
||||
//清单查询按钮
|
||||
searchSarAccessBtn() {
|
||||
this.pageNo = 1;
|
||||
this.searchSarAccess();
|
||||
},
|
||||
//查询清单列表
|
||||
searchSarAccess() {
|
||||
this.$http.get("sarLawsDetailedList/sar-laws-detailed-list/getAllStand", {
|
||||
page: this.pageNo,
|
||||
pageSize: this.pageSizeNo,
|
||||
...this.sarSarAccessEOSearch,
|
||||
sortKey: 2
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
let arr = res.data.records;
|
||||
arr.forEach(item => {
|
||||
// 适用车型转换
|
||||
if (item.carType !== null) {
|
||||
let k = (item.carType || "").split(",");
|
||||
for (let i in this.energyKindOptions) {
|
||||
for (let m = 0; m < k.length; m++) {
|
||||
if (this.energyKindOptions[i].value === k[m]) {
|
||||
k[m] = this.energyKindOptions[i].label;
|
||||
}
|
||||
item.carTypeShow = k.join(",");
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
this.sarAccessListDatas = arr;
|
||||
this.tableLoading = false;
|
||||
this.toatl = res.data.total;
|
||||
}, e => {
|
||||
});
|
||||
|
||||
},
|
||||
//清空查询清单
|
||||
clearSearchAccess() {
|
||||
this.sarSarAccessEOSearch = {
|
||||
carType: "",
|
||||
detailedListName: ""
|
||||
};
|
||||
this.searchSarAccess();
|
||||
},
|
||||
//选择项目点击事件
|
||||
choiceProject() {
|
||||
this.projectModel = true;
|
||||
},
|
||||
//选择清单点击事件
|
||||
choiceList() {
|
||||
this.detailedListModel = true;
|
||||
},
|
||||
//清单带入取消事件
|
||||
closeDrawer() {
|
||||
this.detailedListModel = false;
|
||||
},
|
||||
//清单带入确定事件
|
||||
OkDrawer() {
|
||||
if (this.selectedList.length < 1) {
|
||||
this.$message.warning("请至少选择一条数据进行带入");
|
||||
} else if (this.selectedList.length > 1) {
|
||||
this.$message.warning("您只能选择一条数据进行带入");
|
||||
} else {
|
||||
this.qdform.detailedListName = this.selectedList[0].detailedListName;
|
||||
this.qdform.detailedListId = this.selectedList[0].id;
|
||||
this.qdform.detailedListVision = this.selectedList[0].detailedListVision;
|
||||
this.detailedListModel = false;
|
||||
}
|
||||
},
|
||||
cancleUserInfo() {
|
||||
this.modalshowflag = false;
|
||||
},
|
||||
choiceZRR(type, title, id) {
|
||||
this.nodeList = [];
|
||||
this.nodeList.push(id);
|
||||
this.type = type;
|
||||
this.drawerTitle = title;
|
||||
this.modalshowflag = true;
|
||||
},
|
||||
checkedRole(data) {
|
||||
if (this.type === "confirmId") {
|
||||
this.roleForm.confirmId = data[0].id;
|
||||
this.roleForm.confirmName = data[0].name;
|
||||
}else if(this.type === "approveId"){
|
||||
this.roleForm.approveId = data[0].id;
|
||||
this.roleForm.approveName = data[0].name;
|
||||
}
|
||||
this.modalshowflag = false;
|
||||
},
|
||||
//项目分页器
|
||||
pageChange(page) {
|
||||
this.page = page;
|
||||
this.getProjectData();
|
||||
},
|
||||
pageSizeChange(pageSize) {
|
||||
this.pageSize = pageSize;
|
||||
this.getProjectData();
|
||||
},
|
||||
//清单分页器
|
||||
pageChangeNo(pageNo) {
|
||||
this.pageNO = pageNo;
|
||||
this.searchSarAccess();
|
||||
},
|
||||
pageSizeChangeNo(pageSizeNo) {
|
||||
this.pageSizeNo = pageSizeNo;
|
||||
this.searchSarAccess();
|
||||
},
|
||||
//清单勾选框数据
|
||||
selectListChange(data) {
|
||||
// 单选
|
||||
if (data.length > 1) {
|
||||
this.$refs.selection.clearSelection();
|
||||
this.$refs.selection.toggleRowSelection(data.pop());
|
||||
}
|
||||
this.multipleSelection = data
|
||||
|
||||
this.selectedList = data;
|
||||
},
|
||||
//项目勾选框数据
|
||||
selectProjectChange(data) {
|
||||
// 单选
|
||||
if (data.length > 1) {
|
||||
this.$refs.selection.clearSelection();
|
||||
this.$refs.selection.toggleRowSelection(data.pop());
|
||||
}
|
||||
this.multipleSelection = data
|
||||
|
||||
this.selectProject = data;
|
||||
},
|
||||
//提交事件
|
||||
handleSubmit() {
|
||||
this.qdform.commentText = this.commentText;
|
||||
var json = Object.assign(this.qdform, this.roleForm);
|
||||
this.$refs["qdqrForm"].validate((valid) => {
|
||||
if (valid) {
|
||||
this.$refs["Form"].validate((valid) => {
|
||||
if (valid) {
|
||||
this.isSubmit = true;
|
||||
this.$http.get("lawss/activiti/startProcess", { type: "10" }, {
|
||||
_this: this
|
||||
}, res => {
|
||||
if (res.ok) {
|
||||
this.$http.post("lawss/activiti/completeTask", {
|
||||
taskIds: res.data,
|
||||
userId: this.$store.getters.userInfo.userId,
|
||||
json: JSON.stringify(json)
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
if (res.success) {
|
||||
this.$message.success(res.message);
|
||||
this.$router.push("/processCenter");
|
||||
}
|
||||
this.isSubmit = false;
|
||||
});
|
||||
}
|
||||
});
|
||||
} else {
|
||||
return this.$message.warning("请完善人员信息");
|
||||
}
|
||||
});
|
||||
} else {
|
||||
return this.$message.warning("请完善基础信息");
|
||||
}
|
||||
});
|
||||
},
|
||||
//保存事件
|
||||
handleSave() {
|
||||
this.saveLoading = true;
|
||||
let _formData = new FormData();
|
||||
_formData.append("id", this.bpnId || "");
|
||||
_formData.append("createUser", this.$store.getters.userInfo.userId);
|
||||
_formData.append("createUserName", this.$store.getters.userInfo.userName);
|
||||
_formData.append("prcType", "10");
|
||||
_formData.append("json", JSON.stringify({
|
||||
taskInfo: "确认人确认",
|
||||
form: this.qdform,
|
||||
roleForm: this.roleForm,
|
||||
commentText: this.commentText
|
||||
}));
|
||||
saveTaskFirst(_formData).then(res => {
|
||||
this.saveLoading = false;
|
||||
this.$message.success("保存成功");
|
||||
this.bpnId = res.result;
|
||||
}).catch(e => {
|
||||
this.saveLoading = false;
|
||||
});
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.qdform.projectNumber = this.$route.query.row.projectNumber;
|
||||
this.qdform.projectName = this.$route.query.row.projectName;
|
||||
this.qdform.projectId = this.$route.query.row.id
|
||||
// 查询各下拉框数据
|
||||
this.$http.get("sys/dictype/getDicTypeListCode", "", {
|
||||
_this: this,
|
||||
loading: "loading"
|
||||
}, res => {
|
||||
this.energyKindOptions = res.data.ENERGYTYPES; //适用车型
|
||||
this.$http.get("sarLawsDetailedList/sar-laws-detailed-list/getAllStand", {
|
||||
page: 1,
|
||||
pageSize: this.pageSize,
|
||||
...this.sarSarAccessEOSearch,
|
||||
sortKey: 2
|
||||
}, {
|
||||
_this: this
|
||||
}, res => {
|
||||
let arr = res.data.records;
|
||||
arr.forEach(item => {
|
||||
// 适用车型转换
|
||||
if (item.carType !== null) {
|
||||
let k = (item.carType || "").split(",");
|
||||
for (let i in this.energyKindOptions) {
|
||||
for (let m = 0; m < k.length; m++) {
|
||||
if (this.energyKindOptions[i].value === k[m]) {
|
||||
k[m] = this.energyKindOptions[i].label;
|
||||
}
|
||||
item.carTypeShow = k.join(",");
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
this.sarAccessListDatas = arr;
|
||||
this.tableLoading = false;
|
||||
this.sarSarAccessEOSearch.page = 1;
|
||||
this.totalNo = res.data.total;
|
||||
}, e => {
|
||||
});
|
||||
}, e => {
|
||||
});
|
||||
this.getProjectData();
|
||||
this.searchSarAccess();
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/style';
|
||||
|
||||
.xmqdqr-step1 {
|
||||
.myForm {
|
||||
/deep/ .el-form-item__content {
|
||||
line-height: 10px;
|
||||
}
|
||||
}
|
||||
|
||||
/deep/ .el-drawer__container {
|
||||
.prc-content-border {
|
||||
border: none;
|
||||
padding: 0 20px 0;
|
||||
}
|
||||
}
|
||||
|
||||
position: relative;
|
||||
height: 100%;
|
||||
|
||||
.fileClass {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.fileClass:hover {
|
||||
color: #0c91e5;
|
||||
}
|
||||
|
||||
.headerTabs {
|
||||
height: 52px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 10px;
|
||||
|
||||
.headerTabsItem {
|
||||
border: 1px solid #c1c1c1;
|
||||
padding: 0 5px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.active {
|
||||
border: 1px solid #E6A23C;
|
||||
color: #fff;
|
||||
background: #E6A23C;
|
||||
}
|
||||
}
|
||||
|
||||
.content {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
height: calc(~'100% - 103px');
|
||||
overflow: auto;
|
||||
|
||||
.tableTitle {
|
||||
margin-bottom: 10px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
position: relative;
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
|
||||
.tableButton {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -88,7 +88,7 @@ export default {
|
||||
this.tabValue = this.list[0].name;
|
||||
},
|
||||
beforeRouteLeave(to, from, next) {
|
||||
const toName = ["ListOfStandardsAndRegulationsDetails", "AccessStandardDetails", "ProjectAddEit", "OtherAddEit"];
|
||||
const toName = ["ListOfStandardsAndRegulationsDetails", "AccessStandardDetails", "LocalProductDetail", "OtherAddEit"];
|
||||
// 离开此页面之前,记录tabName以便返回使用,如果将要访问的页面不是这两个,则清空tabName
|
||||
if (toName.includes(to.name)) {
|
||||
this.$store.commit("SET_ACCESS_STANDARD_REG_TABS", this.tabValue);
|
||||
|
||||
@@ -198,6 +198,9 @@
|
||||
<el-dropdown-item :command="[scope.row, '查看']" v-btn-permission="'633e82816590af9027dc2fddc562d046'">
|
||||
查看
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item :command="[scope.row, '发起确认流程']" v-btn-permission="'91ed4c216c019e869aad04baf7bc7db4'">
|
||||
发起确认流程
|
||||
</el-dropdown-item>
|
||||
</el-dropdown-menu>
|
||||
</el-dropdown>
|
||||
</div>
|
||||
@@ -891,6 +894,9 @@ export default {
|
||||
case "查看":
|
||||
this.handlePreview(command[0]);
|
||||
break;
|
||||
case "发起确认流程":
|
||||
this.handleProcess(command[0]);
|
||||
break;
|
||||
}
|
||||
},
|
||||
/**
|
||||
@@ -1394,19 +1400,15 @@ export default {
|
||||
}
|
||||
});
|
||||
},
|
||||
// 关联
|
||||
handleRelation(row) {
|
||||
this.row = row;
|
||||
this.rowId = this.row.id;
|
||||
this.getSearchInforList();
|
||||
this.getRelectiontTable();
|
||||
this.showModelRelation = true;
|
||||
this.$nextTick(() => {
|
||||
this.relationTableHeight = $(".demo-drawer-content").height() - 52 - 60;
|
||||
window.onresize = function() {
|
||||
this.relationTableHeight = $(".demo-drawer-content").height() - 52 - 60;
|
||||
}.bind(this);
|
||||
});
|
||||
// 发起确认流程
|
||||
handleProcess(row) {
|
||||
// 项目清单确认流程
|
||||
this.$router.push({
|
||||
name:'xmqdqrStep1-4',
|
||||
query: {
|
||||
row
|
||||
}
|
||||
})
|
||||
},
|
||||
// 关联里面条件查询的下拉列表数据获取
|
||||
getSearchInforList() {
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<router-link to="/advancedSearch" class="router-link">
|
||||
<div>高级检索</div>
|
||||
</router-link>
|
||||
<router-link to="/home1" class="router-link1">
|
||||
<router-link to="/home2" class="router-link1">
|
||||
<div>首页</div>
|
||||
</router-link>
|
||||
</div>
|
||||
|
||||
@@ -59,6 +59,18 @@ const routes = [
|
||||
isBoolean: true
|
||||
}
|
||||
},
|
||||
// {
|
||||
// path: '/home2',
|
||||
// name: 'Home2',
|
||||
// component: () =>
|
||||
// import('@/pages/home2'),
|
||||
// meta: {
|
||||
// requireAuth: true,
|
||||
// title: '福田首页',
|
||||
// menuId: '',
|
||||
// isBoolean: true
|
||||
// }
|
||||
// },
|
||||
// 个人中心
|
||||
{
|
||||
path: '/personal',
|
||||
@@ -231,15 +243,6 @@ const routes = [
|
||||
title: '流程详情'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/processAcceptDetail',
|
||||
name: 'ProcessAcceptDetail',
|
||||
component: () => import('@/pages/processCenter/pages/processAcceptDetail/index.vue'),
|
||||
meta: {
|
||||
requireAuth: true,
|
||||
title: '流程详情'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/bzffStep1',
|
||||
name: 'bzffStep1',
|
||||
@@ -574,6 +577,15 @@ const routes = [
|
||||
title: '项目清单确认流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/xmqdqrStep1-4',
|
||||
name: 'xmqdqrStep1-4',
|
||||
component: () => import('@/pages/processCenter/pages/creatProcess/xmqdqr/step1-4.vue'),
|
||||
meta: {
|
||||
requireAuth: true,
|
||||
title: '项目清单确认流程'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/xmqdqrStep3',
|
||||
name: 'xmqdqrStep3',
|
||||
@@ -1164,6 +1176,17 @@ const routes = [
|
||||
menuId: 'RAFQ4N4ARF'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/home2',
|
||||
name: 'Home2',
|
||||
component: () =>
|
||||
import('@/pages/home2/index'),
|
||||
meta: {
|
||||
requireAuth: true,
|
||||
title: '首页',
|
||||
menuId: 'RAFQ4N4ARF'
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/dynamicInformationMore',
|
||||
name: 'DynamicInformationMore',
|
||||
|
||||