Merge branch 'hi-ucs-dev' of http://192.168.124.50:80/wuhongjian/hi-ucs into hi-ucs-dev
This commit is contained in:
commit
7a0d2ba101
|
@ -107,7 +107,6 @@ export default {
|
||||||
} else {
|
} else {
|
||||||
this.total = this.mixinViewModuleOptions.getDataListIsPage ? res.data.total : 0
|
this.total = this.mixinViewModuleOptions.getDataListIsPage ? res.data.total : 0
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log('数据列表', this.dataList, this.mixinViewModuleOptions.getDataListURL)
|
console.log('数据列表', this.dataList, this.mixinViewModuleOptions.getDataListURL)
|
||||||
if (this.dataList[0].type === '组件服务') {
|
if (this.dataList[0].type === '组件服务') {
|
||||||
this.dataList.map(val => {
|
this.dataList.map(val => {
|
||||||
|
|
|
@ -104,7 +104,7 @@ router.beforeEach((to, from, next) => {
|
||||||
Vue.prototype.$message.error(res.msg)
|
Vue.prototype.$message.error(res.msg)
|
||||||
return next({ name: 'login' })
|
return next({ name: 'login' })
|
||||||
}
|
}
|
||||||
window.SITE_CONFIG.menuList = res.data
|
window.SITE_CONFIG.menuList = res.data.filter(item => item.site === 0)
|
||||||
fnAddDynamicMenuRoutes(window.SITE_CONFIG.menuList)
|
fnAddDynamicMenuRoutes(window.SITE_CONFIG.menuList)
|
||||||
next({ ...to, replace: true })
|
next({ ...to, replace: true })
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
/*
|
/*
|
||||||
* @Author: hisense.guoyue
|
* @Author: hisense.guoyue
|
||||||
* @Date: 2022-08-23 10:30:11
|
* @Date: 2022-08-23 10:30:11
|
||||||
* @LastEditors: hisense.guoyue
|
* @LastEditors: hisense.wuhongjian
|
||||||
* @LastEditTime: 2022-10-02 14:47:05
|
* @LastEditTime: 2022-10-18 17:44:33
|
||||||
* @Description: 判断当前环境是西海岸还是青岛市局
|
* @Description: 判断当前环境是西海岸还是青岛市局
|
||||||
*/
|
*/
|
||||||
const returnLocationStr = () => {
|
const returnLocationStr = () => {
|
||||||
return CONFIGITEM.version
|
return CONFIGITEM.version === 'xihaian' ? 'xihaian' : 'qingdao'
|
||||||
}
|
}
|
||||||
|
|
||||||
export default returnLocationStr
|
export default returnLocationStr
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
<!--
|
<!--
|
||||||
* @Author: kongjun qdkongjun@gmail.com
|
* @Author: kongjun qdkongjun@gmail.com
|
||||||
* @Date: 2022-06-20 09:29:59
|
* @Date: 2022-06-20 09:29:59
|
||||||
* @LastEditors: kongjun qdkongjun@gmail.com
|
* @LastEditors: hisense.wuhongjian
|
||||||
* @LastEditTime: 2022-06-22 10:04:56
|
* @LastEditTime: 2022-10-18 15:46:51
|
||||||
* @FilePath: \back\src\views\main-sidebar.vue
|
* @FilePath: \back\src\views\main-sidebar.vue
|
||||||
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||||
-->
|
-->
|
||||||
|
@ -35,52 +35,60 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import http from '@/utils/request'
|
import http from '@/utils/request'
|
||||||
import SubMenu from "./main-sidebar-sub-menu";
|
import SubMenu from './main-sidebar-sub-menu'
|
||||||
import returnLocationStr from '@/utils/location';
|
import returnLocationStr from '@/utils/location'
|
||||||
|
import bus from '@/views/bus.js'
|
||||||
export default {
|
export default {
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
numObject: {}
|
numObject: {}
|
||||||
};
|
}
|
||||||
},
|
},
|
||||||
components: {
|
components: {
|
||||||
SubMenu,
|
SubMenu
|
||||||
},
|
},
|
||||||
created () {
|
created () {
|
||||||
this.getNum()
|
this.getNum()
|
||||||
//this.$store.state.sidebarMenuList = window.SITE_CONFIG["menuList"];
|
// this.$store.state.sidebarMenuList = window.SITE_CONFIG.menuList
|
||||||
|
// 更新我的待办得数量
|
||||||
|
bus.$off('updateTaskNum')
|
||||||
|
bus.$on('updateTaskNum', () => {
|
||||||
|
this.getNum()
|
||||||
|
})
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
getNum () {
|
getNum () {
|
||||||
http.get('/act/task/myToDoTaskNum').then(({ data: res }) => {
|
http.get('/act/task/myToDoTaskNum').then(({ data: res }) => {
|
||||||
this.numObject = res.data
|
this.numObject = res.data
|
||||||
let menuList= window.SITE_CONFIG["menuList"];
|
const menuList = window.SITE_CONFIG.menuList
|
||||||
|
console.log('menuList====>', menuList)
|
||||||
|
console.log('this.numObject====>', this.numObject)
|
||||||
for (var i = 0; i < menuList.length; i++) {
|
for (var i = 0; i < menuList.length; i++) {
|
||||||
let menu=menuList[i];
|
const menu = menuList[i]
|
||||||
if (menu.id == '1541261628388888578') { // 我的待办
|
if (menu.id == '1541261628388888578') { // 我的待办
|
||||||
let daibanNum = 0
|
let daibanNum = 0
|
||||||
for (let j = 0; j < menu.children.length; j++) {
|
for (let j = 0; j < menu.children.length; j++) {
|
||||||
let children=menu.children[j]
|
const children = menu.children[j]
|
||||||
if(children.id=="1541261780432408577"){//能力申请 v2
|
if (children.id == '1541261780432408577') { // 能力申请 v2
|
||||||
// 西海岸 v2 市局v3
|
// 西海岸 v2 市局v3
|
||||||
children.total = returnLocationStr() == 'qingdao' ? Number(this.numObject.abilityprocess_v3) : Number(this.numObject.abilityprocess_v2)
|
children.total = returnLocationStr() == 'qingdao' ? Number(this.numObject.abilityprocess_v3) : Number(this.numObject.abilityprocess_v2)
|
||||||
daibanNum = Number(daibanNum) + Number(children.total)
|
daibanNum = Number(daibanNum) + Number(children.total)
|
||||||
} if(children.id=="1559376285703081986"){//会议室审核
|
} if (children.id == '1559376285703081986') { // 会议室审核
|
||||||
children.total = Number(this.numObject.meetingroom_book)
|
children.total = Number(this.numObject.meetingroom_book)
|
||||||
daibanNum = Number(daibanNum) + Number(children.total)
|
daibanNum = Number(daibanNum) + Number(children.total)
|
||||||
}if(children.id=="1545292602084827138"){//能力资源上架
|
} if (children.id == '1545292602084827138') { // 能力资源上架
|
||||||
children.total = Number(this.numObject.resourcemountapply)
|
children.total = Number(this.numObject.resourcemountapply)
|
||||||
daibanNum = Number(daibanNum) + Number(children.total)
|
daibanNum = Number(daibanNum) + Number(children.total)
|
||||||
}if(children.id=="1545312045695377410"){//能力需求申请
|
} if (children.id == '1545312045695377410') { // 能力需求申请
|
||||||
children.total = Number(this.numObject.abilitydemandapply)
|
children.total = Number(this.numObject.abilitydemandapply)
|
||||||
daibanNum = Number(daibanNum) + Number(children.total)
|
daibanNum = Number(daibanNum) + Number(children.total)
|
||||||
}if(children.id=="1545313018614521857"){//能力需求下架
|
} if (children.id == '1545313018614521857') { // 能力需求下架
|
||||||
children.total = Number(this.numObject.resourcundercarriageapply)
|
children.total = Number(this.numObject.resourcundercarriageapply)
|
||||||
daibanNum = Number(daibanNum) + Number(children.total)
|
daibanNum = Number(daibanNum) + Number(children.total)
|
||||||
}if(children.id=="1545313754106699777"){//评论审核
|
} if (children.id == '1545313754106699777') { // 评论审核
|
||||||
children.total = Number(this.numObject.comment_review)
|
children.total = Number(this.numObject.comment_review)
|
||||||
daibanNum = Number(daibanNum) + Number(children.total)
|
daibanNum = Number(daibanNum) + Number(children.total)
|
||||||
}if(children.id=="1554294862931562498"){//会议室 暂无
|
} if (children.id == '1554294862931562498') { // 会议室 暂无
|
||||||
children.total = 0
|
children.total = 0
|
||||||
daibanNum = Number(daibanNum) + Number(children.total)
|
daibanNum = Number(daibanNum) + Number(children.total)
|
||||||
}
|
}
|
||||||
|
@ -91,7 +99,8 @@ export default {
|
||||||
this.$store.state.sidebarMenuList = menuList
|
this.$store.state.sidebarMenuList = menuList
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}};
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
.aui-sidebar {
|
.aui-sidebar {
|
||||||
|
|
|
@ -116,7 +116,6 @@ import CommonQuestion from '../components/common-question.vue'
|
||||||
import InfrastructureModal from './components/infrastructure-modal.vue'
|
import InfrastructureModal from './components/infrastructure-modal.vue'
|
||||||
import Cookies from 'js-cookie'
|
import Cookies from 'js-cookie'
|
||||||
import upload from '@/views/modules/components/upload'
|
import upload from '@/views/modules/components/upload'
|
||||||
|
|
||||||
const btnArray = ['基本信息', '场景痛点', '解决方案', '组合能力', '更多能力', '使用步骤']
|
const btnArray = ['基本信息', '场景痛点', '解决方案', '组合能力', '更多能力', '使用步骤']
|
||||||
// 数据资源\组件服务
|
// 数据资源\组件服务
|
||||||
export const getJson = (type) => {
|
export const getJson = (type) => {
|
||||||
|
@ -163,7 +162,6 @@ export const modalTypeText = {
|
||||||
}
|
}
|
||||||
|
|
||||||
export const getFuseResourceList = (abilityListObj) => {
|
export const getFuseResourceList = (abilityListObj) => {
|
||||||
console.log('abilityListObjabilityListObj',abilityListObj);
|
|
||||||
const arr = []
|
const arr = []
|
||||||
let length = 0
|
let length = 0
|
||||||
for (const key in abilityListObj) {
|
for (const key in abilityListObj) {
|
||||||
|
@ -176,7 +174,7 @@ export const getFuseResourceList = (abilityListObj) => {
|
||||||
resourceId: v.id,
|
resourceId: v.id,
|
||||||
type: key,
|
type: key,
|
||||||
sequence: index,
|
sequence: index,
|
||||||
resourceName:v.resourceName,
|
resourceName:v.resourceName|| v.name ,
|
||||||
deptName:v.deptName,
|
deptName:v.deptName,
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
@ -331,9 +329,10 @@ export default {
|
||||||
},
|
},
|
||||||
// 更新表单
|
// 更新表单
|
||||||
updateDataForm (data) {
|
updateDataForm (data) {
|
||||||
console.log('datadatadata',data);
|
//console.log('datadatadata',data);
|
||||||
if (Object.keys(this.getListParams).includes(data.title)) {
|
if (Object.keys(this.getListParams).includes(data.title)) {
|
||||||
this.abilityListObj[data.title] = data.list
|
this.abilityListObj[data.title] = data.list
|
||||||
|
console.log(' this.abilityListObj[data.title]3333', this.abilityListObj[data.title]);
|
||||||
} else {
|
} else {
|
||||||
// 更多能力、使用步骤
|
// 更多能力、使用步骤
|
||||||
this.operateFuseAttrList(data.title, data)
|
this.operateFuseAttrList(data.title, data)
|
||||||
|
@ -363,6 +362,7 @@ export default {
|
||||||
// 表单提交
|
// 表单提交
|
||||||
dataFormSubmitHandle: debounce(
|
dataFormSubmitHandle: debounce(
|
||||||
function () {
|
function () {
|
||||||
|
console.log('this.dataForm------表单提交------>111111', this.dataForm)
|
||||||
this.$refs.dataForm.validate((valid) => {
|
this.$refs.dataForm.validate((valid) => {
|
||||||
if (!valid) {
|
if (!valid) {
|
||||||
this.$message.error('请检查表单是否填写完整')
|
this.$message.error('请检查表单是否填写完整')
|
||||||
|
|
|
@ -16,19 +16,20 @@
|
||||||
</el-transfer>
|
</el-transfer>
|
||||||
</div>
|
</div>
|
||||||
<div v-else-if="type==='数据资源'" class="dataTransfer">
|
<div v-else-if="type==='数据资源'" class="dataTransfer">
|
||||||
<el-transfer v-model="selectedArray" filterable :filter-method="filterMethod" filter-placeholder="请输入名称"
|
<!-- <el-transfer v-model="selectedArray" filter-placeholder="请输入名称"
|
||||||
:titles="nameArray" :props="{
|
:titles="nameArray" :props="{
|
||||||
key: 'id',
|
key: 'id',
|
||||||
label: 'name',
|
label: 'name',
|
||||||
}" :data="transferData">
|
}" :data="transferData">
|
||||||
</el-transfer>
|
</el-transfer>
|
||||||
<!-- <el-input
|
<el-input
|
||||||
v-model="searchValue"
|
v-model="searchValue"
|
||||||
placeholder="请输入名称"
|
placeholder="请输入名称"
|
||||||
></el-input>
|
></el-input>
|
||||||
<el-button @click="rest" class="restClick">重置</el-button> -->
|
<el-button @click="rest" class="restClick">重置</el-button> -->
|
||||||
|
<data-resource-tranfer @updateData="updateResourceDataForm" :selected-data="selectedData" :type="type"></data-resource-tranfer>
|
||||||
</div>
|
</div>
|
||||||
<el-pagination
|
<!-- <el-pagination
|
||||||
v-if="type==='数据资源'"
|
v-if="type==='数据资源'"
|
||||||
:current-page="currentPage"
|
:current-page="currentPage"
|
||||||
:page-size="15"
|
:page-size="15"
|
||||||
|
@ -36,7 +37,7 @@
|
||||||
:total="total"
|
:total="total"
|
||||||
@current-change="pageCurrentChangeHandle"
|
@current-change="pageCurrentChangeHandle"
|
||||||
>
|
>
|
||||||
</el-pagination>
|
</el-pagination> -->
|
||||||
<template slot="footer">
|
<template slot="footer">
|
||||||
<el-button @click="showModal = false">{{ $t("cancel") }}</el-button>
|
<el-button @click="showModal = false">{{ $t("cancel") }}</el-button>
|
||||||
<el-button type="primary" @click="confirmSubmitHandle()">{{
|
<el-button type="primary" @click="confirmSubmitHandle()">{{
|
||||||
|
@ -52,7 +53,7 @@
|
||||||
<script>
|
<script>
|
||||||
import InfrastructureModal from '../assignedScene/components/infrastructure-modal.vue'
|
import InfrastructureModal from '../assignedScene/components/infrastructure-modal.vue'
|
||||||
import DisplayList from '../assignedScene/components/display-list.vue'
|
import DisplayList from '../assignedScene/components/display-list.vue'
|
||||||
|
import dataResourceTranfer from './data-resource-tranfer.vue'
|
||||||
const sjzyArray = [
|
const sjzyArray = [
|
||||||
{
|
{
|
||||||
zyname: '城阳区图书馆总分馆、社区图书室明细信息',
|
zyname: '城阳区图书馆总分馆、社区图书室明细信息',
|
||||||
|
@ -199,7 +200,9 @@ export default {
|
||||||
total: 0,
|
total: 0,
|
||||||
currentPage: 1,
|
currentPage: 1,
|
||||||
newNum: 1,
|
newNum: 1,
|
||||||
searchValue: ''
|
searchValue: '',
|
||||||
|
selectedData:[],
|
||||||
|
newResourceData:[]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
|
@ -223,10 +226,12 @@ export default {
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
async getDataInfo (dataForm) {
|
async getDataInfo (dataForm) {
|
||||||
|
console.log('dataForm-----====',dataForm);
|
||||||
|
console.log('this.type',this.type);
|
||||||
await this.getData()
|
await this.getData()
|
||||||
const arr = []
|
const arr = []
|
||||||
const attrValue = dataForm.fuseResourceList.filter(v => v.type == this.type);
|
const attrValue = dataForm.fuseResourceList.filter(v => v.type == this.type);
|
||||||
console.log('attrValue22',attrValue);
|
this.selectedData = attrValue;
|
||||||
if (attrValue.length > 0) {
|
if (attrValue.length > 0) {
|
||||||
attrValue.map(val => {
|
attrValue.map(val => {
|
||||||
if(val.type==="数据资源"){
|
if(val.type==="数据资源"){
|
||||||
|
@ -248,6 +253,7 @@ export default {
|
||||||
}
|
}
|
||||||
// 展示
|
// 展示
|
||||||
this.displayList = JSON.parse(JSON.stringify(arr));
|
this.displayList = JSON.parse(JSON.stringify(arr));
|
||||||
|
this.displayList = Array.from(new Set(this.displayList))
|
||||||
// 已选中
|
// 已选中
|
||||||
this.selectedArray = arr.map(v => v.id)
|
this.selectedArray = arr.map(v => v.id)
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
|
@ -286,7 +292,7 @@ export default {
|
||||||
this.$http[this.getDataParams.methods](this.getDataParams.url,
|
this.$http[this.getDataParams.methods](this.getDataParams.url,
|
||||||
this.getDataParams.postData
|
this.getDataParams.postData
|
||||||
).then(res => {
|
).then(res => {
|
||||||
console.log('res.data----获取列表-------->', res.data)
|
console.log('res.data----数据资源获取列表-------->', res.data)
|
||||||
this.total = Number(res.data.data.rows)
|
this.total = Number(res.data.data.rows)
|
||||||
if (res.data.code !== 0) {
|
if (res.data.code !== 0) {
|
||||||
return this.$message.error(res.msg)
|
return this.$message.error(res.msg)
|
||||||
|
@ -302,37 +308,56 @@ export default {
|
||||||
resourceName:v.zyname
|
resourceName:v.zyname
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
this.allData = JSON.parse(JSON.stringify(this.transferData))
|
this.allData = JSON.parse(JSON.stringify(this.transferData));
|
||||||
|
//console.log('this.transferData======43434',this.transferData);
|
||||||
|
//console.log('res.data----retretryry-------->', this.transferData)
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
this.$message.error('未搜索到相关数据资源')
|
this.$message.error('未搜索到相关数据资源')
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
//接受数据资源数据
|
||||||
|
updateResourceDataForm(data){
|
||||||
|
let obj = {};
|
||||||
|
data = data.list.reduce(function(item, next) {
|
||||||
|
obj[next.id] ? '' : obj[next.id] = true && item.push(next);
|
||||||
|
return item;
|
||||||
|
}, []);
|
||||||
|
console.log('变化后的数据222',data);
|
||||||
|
this.newResourceData = data;
|
||||||
|
},
|
||||||
filterMethod (query, item) {
|
filterMethod (query, item) {
|
||||||
console.log('1111111111111111111111111')
|
console.log('1111111111111111111111111')
|
||||||
return item.name && item.name.indexOf(query) > -1
|
return item.name && item.name.indexOf(query) > -1
|
||||||
},
|
},
|
||||||
confirmSubmitHandle () {
|
confirmSubmitHandle () {
|
||||||
console.log('tttttt',this.selectedArray)
|
|
||||||
if(this.type === "数据资源"){
|
if(this.type === "数据资源"){
|
||||||
//通过选中的数据去查找原始列表数据
|
//通过选中的数据去查找原始列表数据
|
||||||
let selectedObjectList = [];
|
// let selectedObjectList = [];
|
||||||
this.selectedArray.forEach((item)=>{
|
// this.selectedArray.forEach((item)=>{
|
||||||
let filterData = [];
|
// let filterData = [];
|
||||||
filterData = this.allData.filter(v => v.id == item);
|
// filterData = this.allData.filter(v => v.id == item);
|
||||||
//console.log('filterDatafilterData',filterData);
|
// //console.log('filterDatafilterData',filterData);
|
||||||
selectedObjectList.push(filterData[0]);
|
// selectedObjectList.push(filterData[0]);
|
||||||
});
|
// });
|
||||||
|
// this.$emit('update', {
|
||||||
|
// title: this.type,
|
||||||
|
// list: selectedObjectList
|
||||||
|
// })
|
||||||
|
if (this.newResourceData.length > this.maxNum) {
|
||||||
|
return this.$message.error('最多选择十条数据!')
|
||||||
|
}
|
||||||
this.$emit('update', {
|
this.$emit('update', {
|
||||||
title: this.type,
|
title: this.type,
|
||||||
list: selectedObjectList
|
list: this.newResourceData
|
||||||
})
|
});
|
||||||
|
this.displayList = this.newResourceData;
|
||||||
|
this.showModal = false
|
||||||
}else{
|
}else{
|
||||||
this.$emit('update', {
|
this.$emit('update', {
|
||||||
title: this.type,
|
title: this.type,
|
||||||
list: this.selectedArray
|
list: this.selectedArray
|
||||||
})
|
})
|
||||||
}
|
|
||||||
if (this.selectedArray.length > this.maxNum) {
|
if (this.selectedArray.length > this.maxNum) {
|
||||||
return this.$message.error('最多选择十条数据!')
|
return this.$message.error('最多选择十条数据!')
|
||||||
}
|
}
|
||||||
|
@ -343,7 +368,9 @@ export default {
|
||||||
this.displayList.push(v)
|
this.displayList.push(v)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
this.displayList = Array.from(new Set(this.displayList))
|
||||||
console.log(this.selectedArray, this.displayList, 'this.displayList')
|
console.log(this.selectedArray, this.displayList, 'this.displayList')
|
||||||
|
}
|
||||||
},
|
},
|
||||||
handleChange(){
|
handleChange(){
|
||||||
//console.log('222222',this.selectedArray);
|
//console.log('222222',this.selectedArray);
|
||||||
|
@ -376,9 +403,10 @@ export default {
|
||||||
this.getData()
|
this.getData()
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
components: { InfrastructureModal, DisplayList },
|
components: { InfrastructureModal, DisplayList,dataResourceTranfer },
|
||||||
mounted () {
|
mounted () {
|
||||||
console.log(this.type, 'this.type')
|
console.log(this.type, 'this.type')
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
@ -493,7 +521,7 @@ export default {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
width: 80%;
|
width: 30%;
|
||||||
top: 52px;
|
top: 52px;
|
||||||
left: 12px;
|
left: 12px;
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,415 @@
|
||||||
|
<template>
|
||||||
|
<div class="transfer">
|
||||||
|
<div class="leftTransfer">
|
||||||
|
<div class="leftTransfer_title">
|
||||||
|
<el-checkbox
|
||||||
|
:indeterminate="left.isIndeterminate"
|
||||||
|
v-model="left.checkAll"
|
||||||
|
@change="leftHandleCheckAllChange"
|
||||||
|
>{{ titles[0] }}</el-checkbox
|
||||||
|
>
|
||||||
|
<span
|
||||||
|
>{{ left.transferDataChecked.length }}/{{
|
||||||
|
left.transferData.length
|
||||||
|
}}</span
|
||||||
|
>
|
||||||
|
</div>
|
||||||
|
<el-input
|
||||||
|
@input="transferInputLeft"
|
||||||
|
class="transfer_input"
|
||||||
|
placeholder="请输入内容"
|
||||||
|
prefix-icon="el-icon-search"
|
||||||
|
v-model="left.inputValue"
|
||||||
|
>
|
||||||
|
</el-input>
|
||||||
|
<el-checkbox-group
|
||||||
|
class="transfer_group"
|
||||||
|
v-model="left.transferDataChecked"
|
||||||
|
@change="leftHandleCheckedCitiesChange"
|
||||||
|
>
|
||||||
|
<el-checkbox
|
||||||
|
v-for="item in left.transferData"
|
||||||
|
:label="item"
|
||||||
|
:key="item[defaultProps.id]"
|
||||||
|
>{{ item[defaultProps.label] }}</el-checkbox
|
||||||
|
>
|
||||||
|
</el-checkbox-group>
|
||||||
|
<el-pagination
|
||||||
|
:current-page="currentPage"
|
||||||
|
:page-size="15"
|
||||||
|
layout="total, prev, pager, next"
|
||||||
|
:total="total"
|
||||||
|
@current-change="handleCurrentChange"
|
||||||
|
>
|
||||||
|
</el-pagination>
|
||||||
|
</div>
|
||||||
|
<div class="transferButton">
|
||||||
|
<el-button type="primary" @click="push">></el-button>
|
||||||
|
<el-button type="primary" @click="del">{{ "<" }}</el-button>
|
||||||
|
</div>
|
||||||
|
<div class="rightTransfer">
|
||||||
|
<div class="rightTransfer_title">
|
||||||
|
<el-checkbox
|
||||||
|
:indeterminate="right.isIndeterminate"
|
||||||
|
v-model="right.checkAll"
|
||||||
|
@change="rightHandleCheckAllChange"
|
||||||
|
>{{ titles[1] }}</el-checkbox
|
||||||
|
>
|
||||||
|
<span
|
||||||
|
>{{ right.transferDataChecked.length }}/{{
|
||||||
|
right.transferData.length
|
||||||
|
}}</span
|
||||||
|
>
|
||||||
|
</div>
|
||||||
|
<el-input
|
||||||
|
@input="transferInputRight"
|
||||||
|
class="transfer_input"
|
||||||
|
placeholder="请输入内容"
|
||||||
|
prefix-icon="el-icon-search"
|
||||||
|
v-model="right.inputValue"
|
||||||
|
>
|
||||||
|
</el-input>
|
||||||
|
<div style="margin: 5px 0"></div>
|
||||||
|
<el-checkbox-group
|
||||||
|
class="transfer_group"
|
||||||
|
v-model="right.transferDataChecked"
|
||||||
|
@change="rightHandleCheckedCitiesChange"
|
||||||
|
>
|
||||||
|
<el-checkbox
|
||||||
|
v-for="item in right.transferData"
|
||||||
|
:label="item"
|
||||||
|
:key="item[defaultProps.id]"
|
||||||
|
>{{ item[defaultProps.label] }}</el-checkbox
|
||||||
|
>
|
||||||
|
</el-checkbox-group>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
//import { listUser } from "@/api/system/user";
|
||||||
|
export default {
|
||||||
|
name: "transferPage",
|
||||||
|
props: {
|
||||||
|
titles: {
|
||||||
|
type: Array,
|
||||||
|
default: () => ["待选列表", "已选列表"],
|
||||||
|
},
|
||||||
|
selectedData: {
|
||||||
|
type: Array,
|
||||||
|
default: () => []
|
||||||
|
},
|
||||||
|
type: {
|
||||||
|
type: String,
|
||||||
|
default: ''
|
||||||
|
},
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
left: {
|
||||||
|
inputValue: "",
|
||||||
|
isIndeterminate: false, //半选按钮
|
||||||
|
checkAll: false, //是否点击全选
|
||||||
|
transferData: [], //穿梭框左侧全部数据
|
||||||
|
transferDataAll: [], //穿梭框左侧全部数据记录
|
||||||
|
transferDataChecked: [], //穿梭框左侧选中数据
|
||||||
|
},
|
||||||
|
right: {
|
||||||
|
inputValue: "",
|
||||||
|
isIndeterminate: false, //半选按钮
|
||||||
|
checkAll: false, //是否点击全选
|
||||||
|
transferData: [], //穿梭框右侧全部数据
|
||||||
|
transferDataAll: [], //穿梭框左侧全部数据记录
|
||||||
|
transferDataChecked: [], //穿梭框右侧选中数据
|
||||||
|
},
|
||||||
|
total: 0,
|
||||||
|
currentPage: 1,
|
||||||
|
queryParams: {
|
||||||
|
current: 1,
|
||||||
|
size: 10,
|
||||||
|
},
|
||||||
|
getDataParams:{
|
||||||
|
methods: "post",
|
||||||
|
url: "/resource/getDataResource",
|
||||||
|
postData: {
|
||||||
|
serviceName: "",
|
||||||
|
orderField: "fbrq",
|
||||||
|
orderType: "desc",
|
||||||
|
pageNum: 1,
|
||||||
|
pageSize: 15
|
||||||
|
}
|
||||||
|
},
|
||||||
|
defaultProps: {
|
||||||
|
label: "name",
|
||||||
|
id: "id",
|
||||||
|
},
|
||||||
|
};
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
this.initTransferData();
|
||||||
|
},
|
||||||
|
watch: {
|
||||||
|
// selectedData:{
|
||||||
|
// handler (newName, oldName) {
|
||||||
|
// console.log('接受到的已经选中的值',newName);
|
||||||
|
// this.right.transferData = newName
|
||||||
|
// }
|
||||||
|
// },
|
||||||
|
right: {
|
||||||
|
handler (newName, oldName) {
|
||||||
|
//console.log('nnnnnn传递过去的值',newName);
|
||||||
|
this.$emit('updateData', {
|
||||||
|
title: "选中的数据资源",
|
||||||
|
list: newName.transferData
|
||||||
|
})
|
||||||
|
},
|
||||||
|
immediate: false,
|
||||||
|
deep: true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
// 初始化数据
|
||||||
|
initTransferData() {
|
||||||
|
this.$http[this.getDataParams.methods](this.getDataParams.url,
|
||||||
|
this.getDataParams.postData
|
||||||
|
).then(response => {
|
||||||
|
console.log('数据资源response---->',response.data.data.data);
|
||||||
|
let responseDataList = [];
|
||||||
|
(response.data.data.data || []).map(v => {
|
||||||
|
responseDataList.push({
|
||||||
|
type: this.type,
|
||||||
|
id: v.guid,
|
||||||
|
name: v.zyname || '--',
|
||||||
|
deptName:v.TGBM,
|
||||||
|
resourceName:v.zyname
|
||||||
|
})
|
||||||
|
});
|
||||||
|
this.left.transferData = responseDataList;
|
||||||
|
this.left.transferData.map((item, index) => {
|
||||||
|
item.current = this.currentPage;
|
||||||
|
});
|
||||||
|
this.total = Number(response.data.data.rows);
|
||||||
|
this.left.transferDataAll = this.left.transferData;
|
||||||
|
// 获得一个右边的数据,只有纯id
|
||||||
|
let checkedIdArr = this.right.transferData.map((item) => {
|
||||||
|
return item[this.defaultProps.id];
|
||||||
|
});
|
||||||
|
// 左侧数据删除
|
||||||
|
this.left.transferData = this.left.transferData.filter((item) => {
|
||||||
|
if (!checkedIdArr.includes(item[this.defaultProps.id])) {
|
||||||
|
return item;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
let selectedDataRight = [];
|
||||||
|
this.selectedData = JSON.parse(JSON.stringify(this.selectedData));
|
||||||
|
(this.selectedData || []).map(v => {
|
||||||
|
selectedDataRight.push({
|
||||||
|
type: v.resource.type,
|
||||||
|
id: v.resource.resourceId,
|
||||||
|
name: v.resource.resourceName,
|
||||||
|
deptName:v.resource.deptName,
|
||||||
|
})
|
||||||
|
});
|
||||||
|
selectedDataRight.map(v => {
|
||||||
|
this.right.transferData.push(v);
|
||||||
|
});
|
||||||
|
let obj = {};
|
||||||
|
this.right.transferData = this.right.transferData.reduce(function(item, next) {
|
||||||
|
obj[next.id] ? '' : obj[next.id] = true && item.push(next);
|
||||||
|
return item;
|
||||||
|
}, []);
|
||||||
|
this.right.transferDataAll = this.right.transferData;
|
||||||
|
//console.log('this.selectedData',this.selectedData);
|
||||||
|
//console.log('left',this.left);
|
||||||
|
//console.log('rigth',this.right);
|
||||||
|
},
|
||||||
|
// 左侧是否点击全选
|
||||||
|
leftHandleCheckAllChange(val) {
|
||||||
|
this.left.transferDataChecked = val ? this.left.transferData : [];
|
||||||
|
this.left.isIndeterminate = false;
|
||||||
|
},
|
||||||
|
// 左侧勾选数据
|
||||||
|
leftHandleCheckedCitiesChange(value) {
|
||||||
|
let checkedCount = value.length;
|
||||||
|
this.left.checkAll = checkedCount === this.left.transferData.length;
|
||||||
|
this.left.isIndeterminate =
|
||||||
|
checkedCount > 0 && checkedCount < this.left.transferData.length;
|
||||||
|
},
|
||||||
|
// 左侧是否点击全选
|
||||||
|
rightHandleCheckAllChange(val) {
|
||||||
|
this.right.transferDataChecked = val ? this.right.transferData : [];
|
||||||
|
this.right.isIndeterminate = false;
|
||||||
|
},
|
||||||
|
// 右侧勾选数据
|
||||||
|
rightHandleCheckedCitiesChange(value) {
|
||||||
|
let checkedCount = value.length;
|
||||||
|
this.right.checkAll = checkedCount === this.right.transferData.length;
|
||||||
|
this.right.isIndeterminate =
|
||||||
|
checkedCount > 0 && checkedCount < this.right.transferData.length;
|
||||||
|
},
|
||||||
|
// 穿梭框选中数据
|
||||||
|
push() {
|
||||||
|
// 数据移到右侧
|
||||||
|
this.right.transferData = [
|
||||||
|
...this.right.transferData,
|
||||||
|
...this.left.transferDataChecked,
|
||||||
|
].sort((a, b) => {
|
||||||
|
return a[this.defaultProps.id] - b[this.defaultProps.id];
|
||||||
|
});
|
||||||
|
this.right.transferDataAll = this.right.transferData;
|
||||||
|
// 获得一个右边的数据,只有纯id
|
||||||
|
let checkedIdArr = this.right.transferData.map((item) => {
|
||||||
|
return item[this.defaultProps.id];
|
||||||
|
});
|
||||||
|
// 左侧数据删除
|
||||||
|
this.left.transferData = this.left.transferData.filter((item) => {
|
||||||
|
if (!checkedIdArr.includes(item[this.defaultProps.id])) {
|
||||||
|
return item;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
this.left.transferDataAll = this.left.transferData;
|
||||||
|
// 每次推送完之后,重置选中框
|
||||||
|
this.left.transferDataChecked = [];
|
||||||
|
this.left.isIndeterminate = false;
|
||||||
|
this.left.checkAll = false;
|
||||||
|
},
|
||||||
|
// 穿梭框删除数据 回显的时候根据current回显到当前
|
||||||
|
del() {
|
||||||
|
//过滤当前页选中的数据
|
||||||
|
let arr = this.right.transferDataChecked.filter((item) => {
|
||||||
|
if (this.queryParams.current == item.current) {
|
||||||
|
return item;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
// 数据移到左侧
|
||||||
|
this.left.transferData = [...this.left.transferData, ...arr].sort(
|
||||||
|
(a, b) => {
|
||||||
|
return a[this.defaultProps.id] - b[this.defaultProps.id];
|
||||||
|
}
|
||||||
|
);
|
||||||
|
this.left.transferDataAll = this.left.transferData;
|
||||||
|
// 获得一个右边的数据,只有纯id
|
||||||
|
let checkedIdArr = this.right.transferDataChecked.map((item) => {
|
||||||
|
return item[this.defaultProps.id];
|
||||||
|
});
|
||||||
|
// 删除选中的数据
|
||||||
|
this.right.transferData = this.right.transferData.filter((item) => {
|
||||||
|
if (!checkedIdArr.includes(item[this.defaultProps.id])) {
|
||||||
|
return item;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
this.right.transferDataAll = this.right.transferData;
|
||||||
|
// 每次推送完之后,重置选中框
|
||||||
|
this.right.transferDataChecked = [];
|
||||||
|
this.right.isIndeterminate = false;
|
||||||
|
this.right.checkAll = false;
|
||||||
|
},
|
||||||
|
handleCurrentChange(val) {
|
||||||
|
//console.log('valval',val);
|
||||||
|
this.getDataParams.postData.pageNum = val;
|
||||||
|
this.initTransferData();
|
||||||
|
},
|
||||||
|
transferInputLeft() {
|
||||||
|
if (this.left.inputValue) {
|
||||||
|
this.left.transferData = this.left.transferData.filter(
|
||||||
|
(p) => p[this.defaultProps.label].indexOf(this.left.inputValue) !== -1
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
this.left.transferData = this.left.transferDataAll;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
transferInputRight() {
|
||||||
|
if (this.right.inputValue) {
|
||||||
|
this.right.transferData = this.right.transferData.filter(
|
||||||
|
(p) =>
|
||||||
|
p[this.defaultProps.label].indexOf(this.right.inputValue) !== -1
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
this.right.transferData = this.right.transferDataAll;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.transfer {
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
margin: 0 auto;
|
||||||
|
.transferButton {
|
||||||
|
.el-button {
|
||||||
|
display: block;
|
||||||
|
margin: 10px 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.el-checkbox {
|
||||||
|
line-height: 30px;
|
||||||
|
}
|
||||||
|
.transfer_input {
|
||||||
|
margin: 10px 15px 0 15px;
|
||||||
|
width: 85%;
|
||||||
|
.el-input--medium .el-input__inner {
|
||||||
|
height: 36px;
|
||||||
|
line-height: 36px;
|
||||||
|
border-radius: 16px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.leftTransfer,
|
||||||
|
.rightTransfer {
|
||||||
|
height: 510px;
|
||||||
|
border: 1px solid #e6ebf5;
|
||||||
|
border-radius: 4px;
|
||||||
|
overflow: hidden;
|
||||||
|
background: #ffffff;
|
||||||
|
display: inline-block;
|
||||||
|
vertical-align: middle;
|
||||||
|
width: 360px;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
position: relative;
|
||||||
|
margin: 0 10px;
|
||||||
|
|
||||||
|
.el-checkbox {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
.el-input {
|
||||||
|
position: absolute;
|
||||||
|
font-size: 14px;
|
||||||
|
display: inline-block;
|
||||||
|
width: 70%;
|
||||||
|
top: 40px;
|
||||||
|
}
|
||||||
|
.pagination {
|
||||||
|
position: absolute;
|
||||||
|
bottom: -8px;
|
||||||
|
right: 0;
|
||||||
|
}
|
||||||
|
.leftTransfer_title,
|
||||||
|
.rightTransfer_title {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
height: 40px;
|
||||||
|
line-height: 40px;
|
||||||
|
background: #f5f7fa;
|
||||||
|
margin: 0;
|
||||||
|
padding-left: 15px;
|
||||||
|
border-bottom: 1px solid #e6ebf5;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
color: #000000;
|
||||||
|
padding-right: 15px;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.transfer_group {
|
||||||
|
padding-left: 15px;
|
||||||
|
margin-top: 50px;
|
||||||
|
height: 390px;
|
||||||
|
overflow-y: auto;
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -58,6 +58,7 @@
|
||||||
<el-select
|
<el-select
|
||||||
v-model="abilityDepartment"
|
v-model="abilityDepartment"
|
||||||
placeholder="请选择部门"
|
placeholder="请选择部门"
|
||||||
|
filterable
|
||||||
clearable
|
clearable
|
||||||
>
|
>
|
||||||
<el-option label="全部" value=""></el-option>
|
<el-option label="全部" value=""></el-option>
|
||||||
|
@ -94,6 +95,11 @@
|
||||||
$t('reset')
|
$t('reset')
|
||||||
}}</el-button>
|
}}</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
<!-- 导出 -->
|
||||||
|
<a class='export' :href="exportExcel+exportExcelType+'?'+exportExcelCondition+'&token='+token">导出</a>
|
||||||
|
<!-- <el-form-item>
|
||||||
|
<el-button type="primary" @click="exportExcel()">导出</el-button>
|
||||||
|
</el-form-item> -->
|
||||||
</el-form>
|
</el-form>
|
||||||
<el-card shadow="never" class="aui-card--fill" v-if="homeIsShow">
|
<el-card shadow="never" class="aui-card--fill" v-if="homeIsShow">
|
||||||
<div class="mod-demand__bsdemand">
|
<div class="mod-demand__bsdemand">
|
||||||
|
@ -213,6 +219,8 @@
|
||||||
|
|
||||||
<el-table
|
<el-table
|
||||||
:data="tableData"
|
:data="tableData"
|
||||||
|
:header-cell-style="{ textAlign: 'center',height:'96px' }"
|
||||||
|
:cell-style="{ textAlign: 'center' }"
|
||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
v-show="this.departmentId === 3 || this.departmentId === 4"
|
v-show="this.departmentId === 3 || this.departmentId === 4"
|
||||||
>
|
>
|
||||||
|
@ -273,12 +281,13 @@
|
||||||
|
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
|
import Cookies from 'js-cookie'
|
||||||
import componentServices from './componentServices.vue'
|
import componentServices from './componentServices.vue'
|
||||||
import AbilityDetail from './components/abilityDetails'
|
import AbilityDetail from './components/abilityDetails'
|
||||||
import applicationResources from './applicationResources.vue'
|
import applicationResources from './applicationResources.vue'
|
||||||
import ComponentUsed from './componentUsed.vue'
|
import ComponentUsed from './componentUsed.vue'
|
||||||
|
import qs from 'qs'
|
||||||
import { mapState } from 'vuex'
|
// import { mapState } from 'vuex'
|
||||||
// const props = defineProps({
|
// const props = defineProps({
|
||||||
// processDefinitionName: { type: String, default: null },
|
// processDefinitionName: { type: String, default: null },
|
||||||
// businessKey: { type: String, default: null },
|
// businessKey: { type: String, default: null },
|
||||||
|
@ -291,6 +300,11 @@ export default {
|
||||||
components: { componentServices, applicationResources, ComponentUsed, AbilityDetail },
|
components: { componentServices, applicationResources, ComponentUsed, AbilityDetail },
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
|
departmentSelects: [],
|
||||||
|
exportExcel: CONFIGITEM.configData[CONFIGITEM.version].apiURL + '/census/center/export',
|
||||||
|
exportExcelCondition: '',
|
||||||
|
exportExcelType: '',
|
||||||
|
token: Cookies.get('ucsToken'),
|
||||||
detailType: '',
|
detailType: '',
|
||||||
detailParamss: {},
|
detailParamss: {},
|
||||||
isBack: true,
|
isBack: true,
|
||||||
|
@ -407,6 +421,13 @@ export default {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created () {
|
created () {
|
||||||
|
this.$http.get('/sys/dept/all').then(res => {
|
||||||
|
console.log('获取部门=========>', res)
|
||||||
|
this.departmentSelects = []
|
||||||
|
res.data.data.map(val => {
|
||||||
|
this.departmentSelects.push({ label: val.name, value: val.name })
|
||||||
|
})
|
||||||
|
})
|
||||||
// 当前设定的日期时间
|
// 当前设定的日期时间
|
||||||
// const d = new Date()
|
// const d = new Date()
|
||||||
// let year1, month1, day1
|
// let year1, month1, day1
|
||||||
|
@ -432,7 +453,7 @@ export default {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
...mapState(['departmentSelects'])
|
// ...mapState(['departmentSelects'])
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
closeModal () {
|
closeModal () {
|
||||||
|
@ -530,6 +551,12 @@ export default {
|
||||||
}
|
}
|
||||||
this.tableData = res.data.data
|
this.tableData = res.data.data
|
||||||
this.total = res.data.data.total
|
this.total = res.data.data.total
|
||||||
|
this.exportExcelCondition = qs.stringify({
|
||||||
|
approveStatus: this.status,
|
||||||
|
deptId: this.abilityDepartment,
|
||||||
|
startDate: this.startDate,
|
||||||
|
endDate: this.endDate
|
||||||
|
})
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
// 组件服务部门使用情况列表-改为能力使用统计
|
// 组件服务部门使用情况列表-改为能力使用统计
|
||||||
|
@ -588,6 +615,12 @@ export default {
|
||||||
}
|
}
|
||||||
this.tableData = res.data.data
|
this.tableData = res.data.data
|
||||||
this.total = res.data.data.total
|
this.total = res.data.data.total
|
||||||
|
this.exportExcelCondition = qs.stringify({
|
||||||
|
approveStatus: this.status,
|
||||||
|
deptId: this.abilityDepartment,
|
||||||
|
startDate: this.startDate,
|
||||||
|
endDate: this.endDate
|
||||||
|
})
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
// 点击查看详情
|
// 点击查看详情
|
||||||
|
@ -662,6 +695,12 @@ export default {
|
||||||
console.log('111111', this.tableData, res.data.data)
|
console.log('111111', this.tableData, res.data.data)
|
||||||
this.tableData = res.data.data
|
this.tableData = res.data.data
|
||||||
this.total = res.data.data.total
|
this.total = res.data.data.total
|
||||||
|
this.exportExcelCondition = qs.stringify({
|
||||||
|
approveStatus: this.status,
|
||||||
|
deptId: this.abilityDepartment,
|
||||||
|
startDate: this.startDate,
|
||||||
|
endDate: this.endDate
|
||||||
|
})
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
// 能力使用明细
|
// 能力使用明细
|
||||||
|
@ -693,6 +732,12 @@ export default {
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
this.tableData = res.data.data
|
this.tableData = res.data.data
|
||||||
this.total = res.data.data.total
|
this.total = res.data.data.total
|
||||||
|
this.exportExcelCondition = qs.stringify({
|
||||||
|
approveStatus: this.status,
|
||||||
|
deptId: this.abilityDepartment,
|
||||||
|
startDate: this.startDate,
|
||||||
|
endDate: this.endDate
|
||||||
|
})
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
getReleaseTree (page) {
|
getReleaseTree (page) {
|
||||||
|
@ -799,6 +844,7 @@ export default {
|
||||||
if (!this.detailFlag) {
|
if (!this.detailFlag) {
|
||||||
this.detailFlag = !this.detailFlag
|
this.detailFlag = !this.detailFlag
|
||||||
}
|
}
|
||||||
|
this.exportExcelType = 'SelectDeptDetailTypeCountList'
|
||||||
this.getFirstTree()
|
this.getFirstTree()
|
||||||
} else if (this.choseId === 1) {
|
} else if (this.choseId === 1) {
|
||||||
// this.getReleaseTree()
|
// this.getReleaseTree()
|
||||||
|
@ -808,6 +854,7 @@ export default {
|
||||||
if (!this.detailFlag) {
|
if (!this.detailFlag) {
|
||||||
this.detailFlag = !this.detailFlag
|
this.detailFlag = !this.detailFlag
|
||||||
}
|
}
|
||||||
|
this.exportExcelType = 'SelectApplyDeptDetailTypeCountList'
|
||||||
this.getSecondTree()
|
this.getSecondTree()
|
||||||
} else {
|
} else {
|
||||||
// this.getUsedTree()
|
// this.getUsedTree()
|
||||||
|
@ -815,6 +862,7 @@ export default {
|
||||||
} else if (index === 3) {
|
} else if (index === 3) {
|
||||||
this.detailFlag = false
|
this.detailFlag = false
|
||||||
if (this.choseId === 0) {
|
if (this.choseId === 0) {
|
||||||
|
this.exportExcelType = 'SelectCensusResourceTable'
|
||||||
this.getOneDetail()
|
this.getOneDetail()
|
||||||
} else {
|
} else {
|
||||||
// this.getUsedTree()
|
// this.getUsedTree()
|
||||||
|
@ -822,6 +870,7 @@ export default {
|
||||||
} else if (index === 4) {
|
} else if (index === 4) {
|
||||||
this.detailFlag = false
|
this.detailFlag = false
|
||||||
if (this.choseId === 0) {
|
if (this.choseId === 0) {
|
||||||
|
this.exportExcelType = 'SelectCensusApplyTable'
|
||||||
this.getTwoDetail()
|
this.getTwoDetail()
|
||||||
} else {
|
} else {
|
||||||
// this.getUsedTree()
|
// this.getUsedTree()
|
||||||
|
@ -911,6 +960,13 @@ export default {
|
||||||
this.examineStatus = ''
|
this.examineStatus = ''
|
||||||
this.abilityDepartment = ''
|
this.abilityDepartment = ''
|
||||||
this.abilityType = ''
|
this.abilityType = ''
|
||||||
|
this.approveStatus = ''
|
||||||
|
this.exportExcelCondition = qs.stringify({
|
||||||
|
approveStatus: this.status,
|
||||||
|
deptId: this.abilityDepartment,
|
||||||
|
startDate: this.startDate,
|
||||||
|
endDate: this.endDate
|
||||||
|
})
|
||||||
if (this.departmentId === 1) {
|
if (this.departmentId === 1) {
|
||||||
// if (this.detailFlag) {
|
// if (this.detailFlag) {
|
||||||
// this.handleChose(3)
|
// this.handleChose(3)
|
||||||
|
@ -1100,4 +1156,31 @@ input::placeholder {
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
word-break: break-all;
|
word-break: break-all;
|
||||||
}
|
}
|
||||||
|
.export {
|
||||||
|
display: inline-block;
|
||||||
|
width: 70px;
|
||||||
|
height: 40px;
|
||||||
|
line-height: 40px;
|
||||||
|
text-align: center;
|
||||||
|
border-radius: 5px;
|
||||||
|
background: #fff;
|
||||||
|
border: 1px solid #dcdfe6;
|
||||||
|
color: #000;
|
||||||
|
}
|
||||||
|
.export:hover {
|
||||||
|
border-color: #c5ddfd;
|
||||||
|
background-color: #ecf4fe;
|
||||||
|
color: #0058e1;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
.export:active {
|
||||||
|
border-color: #c5ddfd;
|
||||||
|
background-color: #ecf4fe;
|
||||||
|
color: #0058e1;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
.export:visited {
|
||||||
|
color: #fff;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -81,7 +81,7 @@ export default {
|
||||||
init () {
|
init () {
|
||||||
this.visible = true
|
this.visible = true
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.$refs['dataForm'].resetFields()
|
this.$refs.dataForm.resetFields()
|
||||||
this.iconList = getIconList()
|
this.iconList = getIconList()
|
||||||
this.dataForm.parentName = this.$t('menu.parentNameDefault')
|
this.dataForm.parentName = this.$t('menu.parentNameDefault')
|
||||||
this.getMenuList()
|
this.getMenuList()
|
||||||
|
@ -89,11 +89,12 @@ export default {
|
||||||
},
|
},
|
||||||
// 获取菜单列表
|
// 获取菜单列表
|
||||||
getMenuList () {
|
getMenuList () {
|
||||||
|
console.log('获取菜单位置1')
|
||||||
return this.$http.get('/sys/menu/list?type=0').then(({ data: res }) => {
|
return this.$http.get('/sys/menu/list?type=0').then(({ data: res }) => {
|
||||||
if (res.code !== 0) {
|
if (res.code !== 0) {
|
||||||
return this.$message.error(res.msg)
|
return this.$message.error(res.msg)
|
||||||
}
|
}
|
||||||
this.menuList = res.data
|
this.menuList = res.data.filter(item => item.site === 0)
|
||||||
}).catch(() => {})
|
}).catch(() => {})
|
||||||
},
|
},
|
||||||
// 上级菜单树, 设置默认值
|
// 上级菜单树, 设置默认值
|
||||||
|
@ -114,11 +115,11 @@ export default {
|
||||||
},
|
},
|
||||||
// 表单提交
|
// 表单提交
|
||||||
dataFormSubmitHandle: debounce(function () {
|
dataFormSubmitHandle: debounce(function () {
|
||||||
this.$refs['dataForm'].validate((valid) => {
|
this.$refs.dataForm.validate((valid) => {
|
||||||
if (!valid) {
|
if (!valid) {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
this.$http['post']('/devtools/menu', this.dataForm).then(({ data: res }) => {
|
this.$http.post('/devtools/menu', this.dataForm).then(({ data: res }) => {
|
||||||
if (res.code !== 0) {
|
if (res.code !== 0) {
|
||||||
return this.$message.error(res.msg)
|
return this.$message.error(res.msg)
|
||||||
}
|
}
|
||||||
|
@ -133,7 +134,7 @@ export default {
|
||||||
})
|
})
|
||||||
}).catch(() => {})
|
}).catch(() => {})
|
||||||
})
|
})
|
||||||
}, 1000, { 'leading': true, 'trailing': false })
|
}, 1000, { leading: true, trailing: false })
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -38,6 +38,9 @@
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
|
<el-table-column prop="createDate" label="创建时间" header-align="center" align="center"></el-table-column>
|
||||||
|
<el-table-column prop="auditTime" label="审核时间" header-align="center" align="center"></el-table-column>
|
||||||
|
|
||||||
<el-table-column label="应用领域" header-align="center" align="center">
|
<el-table-column label="应用领域" header-align="center" align="center">
|
||||||
<template slot-scope="scope" v-if="scope.row.applicationArea">
|
<template slot-scope="scope" v-if="scope.row.applicationArea">
|
||||||
<span class="area-text" v-for="(x,i) in JSON.parse(scope.row.applicationArea)"
|
<span class="area-text" v-for="(x,i) in JSON.parse(scope.row.applicationArea)"
|
||||||
|
|
|
@ -47,6 +47,13 @@
|
||||||
}}</span>
|
}}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
<el-table-column label="申请人所属部门" header-align="center" align="center">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span>{{
|
||||||
|
(scope.row.params && scope.row.params.tAbilityApplicationDTOList[0].unit)
|
||||||
|
}}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
:label="$t('process.system')"
|
:label="$t('process.system')"
|
||||||
header-align="center"
|
header-align="center"
|
||||||
|
@ -161,7 +168,8 @@ export default {
|
||||||
created () {
|
created () {
|
||||||
bus.$off('competencyApplicationInit')
|
bus.$off('competencyApplicationInit')
|
||||||
bus.$on('competencyApplicationInit', () => {
|
bus.$on('competencyApplicationInit', () => {
|
||||||
this.getDataList()
|
this.getDataList();
|
||||||
|
bus.$emit('updateTaskNum')
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,15 +12,23 @@
|
||||||
<el-table v-loading="dataListLoading" :data="dataList" border style="width: 100%">
|
<el-table v-loading="dataListLoading" :data="dataList" border style="width: 100%">
|
||||||
<el-table-column prop="title" label="申请标题" header-align="center" align="center"></el-table-column>
|
<el-table-column prop="title" label="申请标题" header-align="center" align="center"></el-table-column>
|
||||||
<el-table-column prop="name" label="申请人信息" header-align="center" align="center"></el-table-column>
|
<el-table-column prop="name" label="申请人信息" header-align="center" align="center"></el-table-column>
|
||||||
|
<el-table-column label="设备名称" header-align="center" align="center">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span class="demand-text">{{
|
||||||
|
(scope.row && scope.row.tbDeviceDTO && scope.row.tbDeviceDTO.name)
|
||||||
|
}}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
<el-table-column prop="state" label="审批状态" header-align="center" align="center">
|
<el-table-column prop="state" label="审批状态" header-align="center" align="center">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span>{{wrjStateObj[scope.row.state]}}</span>
|
<span>{{wrjStateObj[scope.row.state]}}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="phone" label="电话" header-align="center" align="center"></el-table-column>
|
<el-table-column prop="createDate" label="创建时间" header-align="center" align="center"></el-table-column>
|
||||||
|
<!-- <el-table-column prop="phone" label="电话" header-align="center" align="center"></el-table-column>
|
||||||
<el-table-column prop="dept" label="单位" header-align="center" align="center"></el-table-column>
|
<el-table-column prop="dept" label="单位" header-align="center" align="center"></el-table-column>
|
||||||
<el-table-column prop="applicationSystem" label="应用系统" header-align="center" align="center">
|
<el-table-column prop="applicationSystem" label="应用系统" header-align="center" align="center">
|
||||||
</el-table-column>
|
</el-table-column> -->
|
||||||
<el-table-column label="应用领域" header-align="center" align="center">
|
<el-table-column label="应用领域" header-align="center" align="center">
|
||||||
<template slot-scope="scope" v-if="scope.row.applicationArea">
|
<template slot-scope="scope" v-if="scope.row.applicationArea">
|
||||||
<span class="area-text" v-for="(x,i) in JSON.parse(scope.row.applicationArea)"
|
<span class="area-text" v-for="(x,i) in JSON.parse(scope.row.applicationArea)"
|
||||||
|
|
|
@ -13,40 +13,32 @@
|
||||||
<h3>申请人信息</h3>
|
<h3>申请人信息</h3>
|
||||||
<div class="big-BOX">
|
<div class="big-BOX">
|
||||||
<p>
|
<p>
|
||||||
<span class="text"
|
<span class="text">申请人:<span> {{ dataForm.content.user || '--' }}</span></span>
|
||||||
>申请人:<span> {{ dataForm.content.user || '--' }}</span></span
|
<span class="text">电话:<span>{{ dataForm.content.phone || '--' }}</span></span>
|
||||||
>
|
<span class="text">单位:<span>{{ dataForm.content.unit || '--' }}</span></span>
|
||||||
<span class="text"
|
|
||||||
>电话:<span>{{ dataForm.content.phone || '--' }}</span></span
|
|
||||||
>
|
|
||||||
<span class="text"
|
|
||||||
>单位:<span>{{ dataForm.content.unit || '--' }}</span></span
|
|
||||||
>
|
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
<span class="text">
|
<span class="text">
|
||||||
能力申请标题:<span>
|
能力申请标题:<span>
|
||||||
{{ dataForm.content.title || '--' }}</span
|
{{ dataForm.content.title || '--' }}</span></span>
|
||||||
></span
|
<span class="text" v-if="dataForm.content.applicationSystem">应用系统:<span>{{
|
||||||
>
|
|
||||||
<span class="text" v-if="dataForm.content.applicationSystem"
|
|
||||||
>应用系统:<span>{{
|
|
||||||
dataForm.content.applicationSystem || '--'
|
dataForm.content.applicationSystem || '--'
|
||||||
}}</span></span
|
}}</span></span>
|
||||||
>
|
|
||||||
<span class="text"></span>
|
<span class="text"></span>
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
<span v-if="dataForm.content.applicationSceneStr"
|
<span v-if="dataForm.content.applicationSceneStr">应用场景:<span>
|
||||||
>应用场景:<span>
|
{{ dataForm.content.applicationSceneStr || '--' }}</span></span>
|
||||||
{{ dataForm.content.applicationSceneStr || '--' }}</span
|
|
||||||
></span>
|
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
<span>
|
<span>
|
||||||
需求依据:<span>
|
需求依据:<span>
|
||||||
{{ dataForm.content.applicationBackground || '--' }}</span
|
{{ dataForm.content.applicationBackground || '--' }}</span></span>
|
||||||
></span>
|
</p>
|
||||||
|
<p>
|
||||||
|
<div>
|
||||||
|
<el-button type="primary" v-if="dataForm.content.attachment" size="small" @click="download(dataForm.content)">附件下载</el-button>
|
||||||
|
</div>
|
||||||
</p>
|
</p>
|
||||||
<!-- <p>
|
<!-- <p>
|
||||||
<span>
|
<span>
|
||||||
|
@ -102,9 +94,7 @@
|
||||||
<el-radio-button label="退回" class="redAll" @click="showDialog('退回')">退回</el-radio-button>
|
<el-radio-button label="退回" class="redAll" @click="showDialog('退回')">退回</el-radio-button>
|
||||||
</el-radio-group> -->
|
</el-radio-group> -->
|
||||||
<el-button type="primary" @click="showDialog('同意')">同意</el-button>
|
<el-button type="primary" @click="showDialog('同意')">同意</el-button>
|
||||||
<el-button type="danger" plain @click="showDialog('驳回')"
|
<el-button type="danger" plain @click="showDialog('驳回')">驳回</el-button>
|
||||||
>驳回</el-button
|
|
||||||
>
|
|
||||||
<!-- <el-input v-if="agreeOrList ==='同意' " v-model="inputAgree" placeholder="请输入同意意见"></el-input>
|
<!-- <el-input v-if="agreeOrList ==='同意' " v-model="inputAgree" placeholder="请输入同意意见"></el-input>
|
||||||
<el-input v-if="agreeOrList ==='退回'" v-model="inputNo" placeholder="请输入退回意见"></el-input>
|
<el-input v-if="agreeOrList ==='退回'" v-model="inputNo" placeholder="请输入退回意见"></el-input>
|
||||||
<el-button class="inputBule" @click="agreeOrNot">提交</el-button> -->
|
<el-button class="inputBule" @click="agreeOrNot">提交</el-button> -->
|
||||||
|
@ -113,21 +103,12 @@
|
||||||
|
|
||||||
<!-- 流程详情 -->
|
<!-- 流程详情 -->
|
||||||
<ren-process-detail></ren-process-detail>
|
<ren-process-detail></ren-process-detail>
|
||||||
<el-dialog
|
<el-dialog title="审批意见" :close-on-click-modal="false" :visible.sync="dialogVisible" width="30%"
|
||||||
title="审批意见"
|
:before-close="handleClose">
|
||||||
:close-on-click-modal="false"
|
|
||||||
:visible.sync="dialogVisible"
|
|
||||||
width="30%"
|
|
||||||
:before-close="handleClose"
|
|
||||||
>
|
|
||||||
<el-input v-model="input" placeholder="请输入审批意见"></el-input>
|
<el-input v-model="input" placeholder="请输入审批意见"></el-input>
|
||||||
<span slot="footer" class="dialog-footer">
|
<span slot="footer" class="dialog-footer">
|
||||||
<el-button @click="handleClose2">取 消</el-button>
|
<el-button @click="handleClose2">取 消</el-button>
|
||||||
<el-button
|
<el-button type="primary" @click.native="agreeOrNot($store.state.contentTabsActiveName)">确 定</el-button>
|
||||||
type="primary"
|
|
||||||
@click.native="agreeOrNot($store.state.contentTabsActiveName)"
|
|
||||||
>确 定</el-button
|
|
||||||
>
|
|
||||||
</span>
|
</span>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
</el-card>
|
</el-card>
|
||||||
|
@ -486,7 +467,13 @@ export default {
|
||||||
console.log(data)
|
console.log(data)
|
||||||
},
|
},
|
||||||
// 任务处理出错回调
|
// 任务处理出错回调
|
||||||
taskHandleErrorCallback (data) {}
|
taskHandleErrorCallback(data) { },
|
||||||
|
download(data) {
|
||||||
|
const alink = document.createElement('a')
|
||||||
|
alink.download = '附件' // 文件名,大部分浏览器兼容,IE10及以下不兼容
|
||||||
|
alink.href = data.attachment // 创建 url地址
|
||||||
|
alink.click() // 自动点击
|
||||||
|
},
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
// this.applyData()
|
// this.applyData()
|
||||||
|
@ -497,38 +484,47 @@ export default {
|
||||||
::v-deep .big-BOX {
|
::v-deep .big-BOX {
|
||||||
background: rgba(244, 245, 248, 0.8);
|
background: rgba(244, 245, 248, 0.8);
|
||||||
padding: 24px;
|
padding: 24px;
|
||||||
|
|
||||||
h3 {
|
h3 {
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
color: #212121;
|
color: #212121;
|
||||||
}
|
}
|
||||||
|
|
||||||
p {
|
p {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
color: #212121;
|
color: #212121;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
|
|
||||||
span {
|
span {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
margin-left: 8px;
|
margin-left: 8px;
|
||||||
line-height: 32px;
|
line-height: 32px;
|
||||||
|
|
||||||
span {
|
span {
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.text {
|
.text {
|
||||||
width: 500px;
|
width: 500px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.lastP {
|
.lastP {
|
||||||
margin-top: 16px;
|
margin-top: 16px;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
|
||||||
span {
|
span {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|
||||||
span {
|
span {
|
||||||
padding: 0 12px;
|
padding: 0 12px;
|
||||||
height: 32px;
|
height: 32px;
|
||||||
background: rgba(232, 234, 239, 1);
|
background: rgba(232, 234, 239, 1);
|
||||||
border-radius: 2px;
|
border-radius: 2px;
|
||||||
|
|
||||||
button {
|
button {
|
||||||
background: unset;
|
background: unset;
|
||||||
border: 0;
|
border: 0;
|
||||||
|
@ -539,6 +535,7 @@ export default {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep .AbilityApply {
|
::v-deep .AbilityApply {
|
||||||
margin-top: 32px;
|
margin-top: 32px;
|
||||||
|
|
||||||
|
@ -548,27 +545,33 @@ export default {
|
||||||
border-bottom: 1px solid #dddee1;
|
border-bottom: 1px solid #dddee1;
|
||||||
padding-bottom: 10px;
|
padding-bottom: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
ul {
|
ul {
|
||||||
padding-left: 0px;
|
padding-left: 0px;
|
||||||
|
|
||||||
li {
|
li {
|
||||||
list-style: none;
|
list-style: none;
|
||||||
padding: 30px 0;
|
padding: 30px 0;
|
||||||
border-bottom: 1px solid #dddee1;
|
border-bottom: 1px solid #dddee1;
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|
||||||
img {
|
img {
|
||||||
width: 100px;
|
width: 100px;
|
||||||
height: 100px;
|
height: 100px;
|
||||||
}
|
}
|
||||||
|
|
||||||
div {
|
div {
|
||||||
margin-left: 16px;
|
margin-left: 16px;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
|
|
||||||
h2 {
|
h2 {
|
||||||
margin-bottom: 20px;
|
margin-bottom: 20px;
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
color: #000;
|
color: #000;
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|
||||||
span {
|
span {
|
||||||
display: block;
|
display: block;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
|
@ -581,22 +584,26 @@ export default {
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
p {
|
p {
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.clearfix:after {
|
.clearfix:after {
|
||||||
display: block;
|
display: block;
|
||||||
content: "";
|
content: "";
|
||||||
clear: both;
|
clear: both;
|
||||||
}
|
}
|
||||||
|
|
||||||
.title {
|
.title {
|
||||||
color: #0558e1;
|
color: #0558e1;
|
||||||
font-size: 18px;
|
font-size: 18px;
|
||||||
padding-bottom: 0;
|
padding-bottom: 0;
|
||||||
border-bottom: 0;
|
border-bottom: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.title:before {
|
.title:before {
|
||||||
content: "";
|
content: "";
|
||||||
width: 6px;
|
width: 6px;
|
||||||
|
@ -610,17 +617,21 @@ export default {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep .agreeOr>div {
|
::v-deep .agreeOr>div {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
|
||||||
.el-input {
|
.el-input {
|
||||||
margin-right: 10px;
|
margin-right: 10px;
|
||||||
margin-left: 32px;
|
margin-left: 32px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep .agreeOr>div:last-of-type {
|
::v-deep .agreeOr>div:last-of-type {
|
||||||
margin-top: 15px;
|
margin-top: 15px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.blueAll {
|
.blueAll {
|
||||||
::v-deep .el-radio-button__inner {
|
::v-deep .el-radio-button__inner {
|
||||||
width: 80px;
|
width: 80px;
|
||||||
|
@ -632,12 +643,14 @@ export default {
|
||||||
color: #0558e1;
|
color: #0558e1;
|
||||||
border: 1px solid #0558e1;
|
border: 1px solid #0558e1;
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep .el-radio-button__orig-radio:checked+.el-radio-button__inner {
|
::v-deep .el-radio-button__orig-radio:checked+.el-radio-button__inner {
|
||||||
box-shadow: unset !important;
|
box-shadow: unset !important;
|
||||||
background: #0558e1;
|
background: #0558e1;
|
||||||
color: #ffffff;
|
color: #ffffff;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.inputBule {
|
.inputBule {
|
||||||
width: 55px;
|
width: 55px;
|
||||||
height: 32px;
|
height: 32px;
|
||||||
|
@ -648,8 +661,10 @@ export default {
|
||||||
color: #ffffff;
|
color: #ffffff;
|
||||||
border: 1px solid #0558e1;
|
border: 1px solid #0558e1;
|
||||||
}
|
}
|
||||||
|
|
||||||
.redAll {
|
.redAll {
|
||||||
margin-left: 10px;
|
margin-left: 10px;
|
||||||
|
|
||||||
::v-deep .el-radio-button__inner {
|
::v-deep .el-radio-button__inner {
|
||||||
width: 80px;
|
width: 80px;
|
||||||
height: 32px;
|
height: 32px;
|
||||||
|
@ -661,12 +676,14 @@ export default {
|
||||||
color: #e83a48;
|
color: #e83a48;
|
||||||
margin-left: 10px;
|
margin-left: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep .el-radio-button__orig-radio:checked+.el-radio-button__inner {
|
::v-deep .el-radio-button__orig-radio:checked+.el-radio-button__inner {
|
||||||
box-shadow: unset !important;
|
box-shadow: unset !important;
|
||||||
color: #ffffff;
|
color: #ffffff;
|
||||||
background: #e83a48;
|
background: #e83a48;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.blueInput {
|
.blueInput {
|
||||||
width: 55px;
|
width: 55px;
|
||||||
}
|
}
|
||||||
|
|
|
@ -123,11 +123,12 @@ export default {
|
||||||
},
|
},
|
||||||
// 获取菜单列表
|
// 获取菜单列表
|
||||||
getMenuList () {
|
getMenuList () {
|
||||||
|
console.log('获取菜单位置2')
|
||||||
return this.$http.get('/sys/menu/list?type=0').then(({ data: res }) => {
|
return this.$http.get('/sys/menu/list?type=0').then(({ data: res }) => {
|
||||||
if (res.code !== 0) {
|
if (res.code !== 0) {
|
||||||
return this.$message.error(res.msg)
|
return this.$message.error(res.msg)
|
||||||
}
|
}
|
||||||
this.menuList = res.data
|
this.menuList = res.data.filter(item => item.site === 0)
|
||||||
}).catch(() => {})
|
}).catch(() => {})
|
||||||
},
|
},
|
||||||
// 获取信息
|
// 获取信息
|
||||||
|
|
|
@ -1,3 +1,10 @@
|
||||||
|
<!--
|
||||||
|
* @Author: hisense.wuhongjian
|
||||||
|
* @Date: 2022-06-14 09:30:23
|
||||||
|
* @LastEditors: hisense.wuhongjian
|
||||||
|
* @LastEditTime: 2022-10-17 14:54:26
|
||||||
|
* @Description: 告诉大家这是什么
|
||||||
|
-->
|
||||||
<template>
|
<template>
|
||||||
<el-card shadow="never" class="aui-card--fill">
|
<el-card shadow="never" class="aui-card--fill">
|
||||||
<div class="mod-sys__menu">
|
<div class="mod-sys__menu">
|
||||||
|
|
|
@ -8,8 +8,8 @@
|
||||||
var _global = {}
|
var _global = {}
|
||||||
var CONFIGITEM = {
|
var CONFIGITEM = {
|
||||||
// version: 'qingdao', //青岛
|
// version: 'qingdao', //青岛
|
||||||
// version: 'xihaian', // 西海岸
|
version: 'xihaian', // 西海岸
|
||||||
version: 'qingdao', // 开发
|
// version: 'qingdao', // 开发
|
||||||
// version: 'zhanTingDev', // 展厅dev (2022-09-13:姜永超让添加)
|
// version: 'zhanTingDev', // 展厅dev (2022-09-13:姜永超让添加)
|
||||||
// version: 'qingdao', // 测试
|
// version: 'qingdao', // 测试
|
||||||
//version: 'frp', // 内网穿透
|
//version: 'frp', // 内网穿透
|
||||||
|
@ -28,7 +28,8 @@ var CONFIGITEM = {
|
||||||
previewUrl: 'http://15.72.183.90:7008/',
|
previewUrl: 'http://15.72.183.90:7008/',
|
||||||
//frontUrl: 'http://15.72.183.90:7008/document/#/devModelFile/',
|
//frontUrl: 'http://15.72.183.90:7008/document/#/devModelFile/',
|
||||||
//apiURL: 'http://15.72.183.90:8000/renren-admin',
|
//apiURL: 'http://15.72.183.90:8000/renren-admin',
|
||||||
websocketURL: '15.72.183.90:8000/renren-admin',
|
// websocketURL: '15.72.183.90:8000/renren-admin',
|
||||||
|
// websocketURL: '192.168.124.233:8888/renren-admin',
|
||||||
POI_URL:
|
POI_URL:
|
||||||
'http://15.72.178.129:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address',
|
'http://15.72.178.129:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address',
|
||||||
},
|
},
|
||||||
|
@ -62,8 +63,9 @@ var CONFIGITEM = {
|
||||||
},
|
},
|
||||||
// 获取摄像头的后端接口地址
|
// 获取摄像头的后端接口地址
|
||||||
camreaInfo: {
|
camreaInfo: {
|
||||||
// cameraUrl: '10.134.135.92:9537', // 测试环境
|
// cameraUrl: '10.134.135.92:9537', // 西海岸-测试环境
|
||||||
cameraUrl: '10.134.135.9:9537', // 生产环境
|
// cameraUrl: '10.134.135.9:9537', // 西海岸-生产环境
|
||||||
|
cameraUrl: '192.168.124.236:9537', // 远雄(不挂vpn可直接连)
|
||||||
},
|
},
|
||||||
backUrl: 'http://10.134.135.9:9797',
|
backUrl: 'http://10.134.135.9:9797',
|
||||||
previewUrl: 'http://10.134.135.9:9796/',
|
previewUrl: 'http://10.134.135.9:9796/',
|
||||||
|
|
|
@ -15,6 +15,7 @@ const state = () => ({
|
||||||
accessToken: getAccessToken(),
|
accessToken: getAccessToken(),
|
||||||
username: '',
|
username: '',
|
||||||
realName: '',
|
realName: '',
|
||||||
|
deptName: '',
|
||||||
userId: '',
|
userId: '',
|
||||||
avatar: '',
|
avatar: '',
|
||||||
role: 0, // 用户管理员权限
|
role: 0, // 用户管理员权限
|
||||||
|
@ -26,6 +27,7 @@ const getters = {
|
||||||
avatar: (state) => state.avatar,
|
avatar: (state) => state.avatar,
|
||||||
role: (state) => state.role,
|
role: (state) => state.role,
|
||||||
userId: (state) => state.userId,
|
userId: (state) => state.userId,
|
||||||
|
deptName: (state) => state.deptName,
|
||||||
}
|
}
|
||||||
const mutations = {
|
const mutations = {
|
||||||
/**
|
/**
|
||||||
|
@ -64,6 +66,10 @@ const mutations = {
|
||||||
setUserId(state, id) {
|
setUserId(state, id) {
|
||||||
state.userId = id
|
state.userId = id
|
||||||
},
|
},
|
||||||
|
// 设置用户单位
|
||||||
|
setDeptName(state, name) {
|
||||||
|
state.deptName = name
|
||||||
|
},
|
||||||
/**
|
/**
|
||||||
* @author chuzhixin 1204505056@qq.com
|
* @author chuzhixin 1204505056@qq.com
|
||||||
* @description 设置头像
|
* @description 设置头像
|
||||||
|
@ -136,6 +142,7 @@ const actions = {
|
||||||
commit('setRealname', res.data.data.realName)
|
commit('setRealname', res.data.data.realName)
|
||||||
commit('setRole', res.data.data.roleIdList.length)
|
commit('setRole', res.data.data.roleIdList.length)
|
||||||
commit('setUserId', res.data.data.id)
|
commit('setUserId', res.data.data.id)
|
||||||
|
commit('setDeptName', res.data.data.deptName)
|
||||||
// TODO 获取用户信息,后续执行部分操作
|
// TODO 获取用户信息,后续执行部分操作
|
||||||
// let { username, avatar, roles, ability } = data
|
// let { username, avatar, roles, ability } = data
|
||||||
// if (username && roles && Array.isArray(roles)) {
|
// if (username && roles && Array.isArray(roles)) {
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
/*
|
/*
|
||||||
* @Author: hisense.wuhongjian
|
* @Author: hisense.wuhongjian
|
||||||
* @Date: 2022-04-01 17:23:11
|
* @Date: 2022-04-01 17:23:11
|
||||||
* @LastEditors: hisense.wuhongjian
|
* @LastEditors: Light
|
||||||
* @LastEditTime: 2022-10-11 13:59:18
|
* @LastEditTime: 2022-10-17 09:25:32
|
||||||
* @Description: 告诉大家这是什么
|
* @Description: 告诉大家这是什么
|
||||||
*/
|
*/
|
||||||
/**
|
/**
|
||||||
|
@ -26,7 +26,6 @@ router.beforeEach(async (to, from, next) => {
|
||||||
// if (SSOTOKEN) {
|
// if (SSOTOKEN) {
|
||||||
// setAccessToken(SSOTOKEN)
|
// setAccessToken(SSOTOKEN)
|
||||||
// }
|
// }
|
||||||
console.log('验证白名单', routesWhiteList)
|
|
||||||
const token = getAccessToken()
|
const token = getAccessToken()
|
||||||
console.log('token', token)
|
console.log('token', token)
|
||||||
let hasToken = token
|
let hasToken = token
|
||||||
|
@ -44,6 +43,7 @@ router.beforeEach(async (to, from, next) => {
|
||||||
accessRoutes.forEach((item) => {
|
accessRoutes.forEach((item) => {
|
||||||
router.addRoute(item)
|
router.addRoute(item)
|
||||||
})
|
})
|
||||||
|
console.log('验证白名单', routesWhiteList)
|
||||||
if (routesWhiteList.indexOf(to.path) !== -1) {
|
if (routesWhiteList.indexOf(to.path) !== -1) {
|
||||||
debugger
|
debugger
|
||||||
next()
|
next()
|
||||||
|
|
|
@ -318,7 +318,7 @@
|
||||||
//来源部门漏斗图
|
//来源部门漏斗图
|
||||||
const funnelPlot = (dataList) => {
|
const funnelPlot = (dataList) => {
|
||||||
// 排序
|
// 排序
|
||||||
let arrCopy = ['0-5', '5-10', '10-15', '15-20', '20以上']
|
let arrCopy = ['1-5', '5-10', '10-15', '15-20', '20以上']
|
||||||
// 真实数据
|
// 真实数据
|
||||||
dataList.sort((a, b) => {
|
dataList.sort((a, b) => {
|
||||||
return Number(a.value) - Number(b.value)
|
return Number(a.value) - Number(b.value)
|
||||||
|
|
|
@ -2,7 +2,11 @@
|
||||||
<div class="ability-to-apply-for" :class="{ all: falg }">
|
<div class="ability-to-apply-for" :class="{ all: falg }">
|
||||||
<div class="title">
|
<div class="title">
|
||||||
<span>申请能力</span>
|
<span>申请能力</span>
|
||||||
<div class="btnBox" v-show="!falg">
|
<div
|
||||||
|
class="btnBox"
|
||||||
|
v-show="!falg"
|
||||||
|
v-if="dataForm[0].arr.length > 1 || dataForm.length > 1"
|
||||||
|
>
|
||||||
<svg
|
<svg
|
||||||
t="1659419933164"
|
t="1659419933164"
|
||||||
class="btn"
|
class="btn"
|
||||||
|
@ -97,7 +101,10 @@
|
||||||
{{
|
{{
|
||||||
val.description ||
|
val.description ||
|
||||||
((val.note1 || '') &&
|
((val.note1 || '') &&
|
||||||
(JSON.parse(val.note1) && JSON.parse(val.note1)[0] && JSON.parse(val.note1)[0].channelName || '--') +
|
((JSON.parse(val.note1) &&
|
||||||
|
JSON.parse(val.note1)[0] &&
|
||||||
|
JSON.parse(val.note1)[0].channelName) ||
|
||||||
|
'--') +
|
||||||
'等' +
|
'等' +
|
||||||
JSON.parse(val.note1).length +
|
JSON.parse(val.note1).length +
|
||||||
'个摄像头') ||
|
'个摄像头') ||
|
||||||
|
@ -105,7 +112,11 @@
|
||||||
}}
|
}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="remove" v-if="item.arr.length>1" @click="removeFunction(val)"></div>
|
<div
|
||||||
|
class="remove"
|
||||||
|
v-if="item.arr.length > 1"
|
||||||
|
@click="removeFunction(val)"
|
||||||
|
></div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
</div>
|
</div>
|
||||||
|
@ -115,11 +126,17 @@
|
||||||
title="已申请摄像头列表"
|
title="已申请摄像头列表"
|
||||||
@ok="videoVisible = false"
|
@ok="videoVisible = false"
|
||||||
>
|
>
|
||||||
|
<a-select placeholder="请选择归属部门" v-model:value="deptName" :getPopupContainer="(triggerNode) => triggerNode.parentNode" show-search option-filter-prop="children" :filterOption="filterOption" @change="deptIdChangeFunction">
|
||||||
|
<a-select-option v-for="(item, index) in deptNameAll" :key="`${index}-${item}`" :value="item.name">
|
||||||
|
{{ item.name }}
|
||||||
|
</a-select-option>
|
||||||
|
</a-select>
|
||||||
<a-table
|
<a-table
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
:data-source="xVideoList"
|
:data-source="xVideoList"
|
||||||
bordered
|
bordered
|
||||||
:pagination="{ defaultPageSize: 6 }"
|
:pagination="{ defaultPageSize: 6 }"
|
||||||
|
style="margin-top:10px"
|
||||||
>
|
>
|
||||||
<template #bodyCell="{ column, text }">
|
<template #bodyCell="{ column, text }">
|
||||||
<!-- <template>
|
<!-- <template>
|
||||||
|
@ -135,6 +152,7 @@
|
||||||
import { message } from 'ant-design-vue'
|
import { message } from 'ant-design-vue'
|
||||||
import { ref, defineProps } from 'vue'
|
import { ref, defineProps } from 'vue'
|
||||||
import mybus from '@/myplugins/mybus'
|
import mybus from '@/myplugins/mybus'
|
||||||
|
import { getDeptAll } from '@/api/user'
|
||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
dataList: { type: Array, default: null },
|
dataList: { type: Array, default: null },
|
||||||
|
@ -143,12 +161,19 @@
|
||||||
let dataForm = ref([])
|
let dataForm = ref([])
|
||||||
const videoVisible = ref(false)
|
const videoVisible = ref(false)
|
||||||
const xVideoList = ref([])
|
const xVideoList = ref([])
|
||||||
|
const xVideoListAll = ref([])
|
||||||
|
const deptNameAll = ref([]) //所有部门名称
|
||||||
|
const deptFlage = ref(true) //判断是否存在默认部门名称
|
||||||
|
const deptName = ref(null)
|
||||||
const columns = ref([
|
const columns = ref([
|
||||||
{
|
{
|
||||||
title: '摄像头名称',
|
title: '摄像头名称',
|
||||||
dataIndex: 'name',
|
dataIndex: 'name',
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
title: '归属部门',
|
||||||
|
dataIndex: 'managementUnitName',
|
||||||
|
}
|
||||||
])
|
])
|
||||||
// eslint-disable-next-line vue/no-setup-props-destructure
|
// eslint-disable-next-line vue/no-setup-props-destructure
|
||||||
dataForm.value = props.dataList
|
dataForm.value = props.dataList
|
||||||
|
@ -178,11 +203,16 @@
|
||||||
// 详情
|
// 详情
|
||||||
const showItem = (id, type, delFlag, note1) => {
|
const showItem = (id, type, delFlag, note1) => {
|
||||||
if (type == '基础设施') {
|
if (type == '基础设施') {
|
||||||
let arr = JSON.parse(note1)
|
let arr = JSON.parse(note1);
|
||||||
xVideoList.value = []
|
xVideoList.value = []
|
||||||
arr.map((val) => {
|
arr.map((val) => {
|
||||||
xVideoList.value.push({ name: val.channelName || '', key: val.channelId })
|
xVideoList.value.push({
|
||||||
|
name: val.channelName || '',
|
||||||
|
key: val.channelId,
|
||||||
|
managementUnitName:val.managementUnitName || '',
|
||||||
})
|
})
|
||||||
|
})
|
||||||
|
xVideoListAll.value = xVideoList.value;
|
||||||
videoVisible.value = true
|
videoVisible.value = true
|
||||||
} else {
|
} else {
|
||||||
if (delFlag == 0) {
|
if (delFlag == 0) {
|
||||||
|
@ -197,6 +227,27 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
//归属部门选中改变事件
|
||||||
|
const deptIdChangeFunction = (name) => {
|
||||||
|
//console.log('nnnndddd',name);
|
||||||
|
//console.log('过滤前xVideoList',xVideoList);
|
||||||
|
//通过name过滤xVideoList
|
||||||
|
xVideoList.value = xVideoListAll.value.filter((item) => {
|
||||||
|
if (name && item.managementUnitName.indexOf(name) < 0) return false
|
||||||
|
return true
|
||||||
|
});
|
||||||
|
}
|
||||||
|
//获取所有的归属部门列表
|
||||||
|
const getDeptAllData = () =>{
|
||||||
|
getDeptAll().then((res) => {
|
||||||
|
deptNameAll.value = res.data.data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
getDeptAllData();
|
||||||
|
//select搜索过滤
|
||||||
|
const filterOption = (input, option) => {
|
||||||
|
return option.value.toLowerCase().indexOf(input.toLowerCase()) >= 0
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped lang="less">
|
<style scoped lang="less">
|
||||||
|
@ -337,4 +388,11 @@
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
|
::v-deep .ant-table-thead > tr > th {
|
||||||
|
//padding-left: px;
|
||||||
|
font-size: 18px;
|
||||||
|
font-weight: bold;
|
||||||
|
color:#000000 ;
|
||||||
|
//background: # !important;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -8,36 +8,93 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="form-container">
|
<div class="form-container">
|
||||||
<div v-if="applySuccess">
|
<div v-if="applySuccess">
|
||||||
<a-form ref="formRef" :model="formName" name="basic" :label-col="{ style: { width: '106px' } }"
|
<a-form
|
||||||
:wrapper-col="{ style: { width: '230px' } }" labelAlign="left" autocomplete="off">
|
ref="formRef"
|
||||||
|
:model="formName"
|
||||||
|
name="basic"
|
||||||
|
:label-col="{ style: { width: '106px' } }"
|
||||||
|
:wrapper-col="{ style: { width: '230px' } }"
|
||||||
|
labelAlign="left"
|
||||||
|
autocomplete="off"
|
||||||
|
>
|
||||||
<div class="base-info flex-row-start">
|
<div class="base-info flex-row-start">
|
||||||
<a-form-item label="申请标题" name="title" :rules="[{ required: true, message: '请输入申请标题' }]">
|
<a-form-item
|
||||||
<a-input placeholder="请输入能力申请标题" v-model:value="formName.title" />
|
label="申请标题"
|
||||||
|
name="title"
|
||||||
|
:rules="[{ required: true, message: '请输入申请标题' }]"
|
||||||
|
>
|
||||||
|
<a-input
|
||||||
|
placeholder="请输入能力申请标题"
|
||||||
|
v-model:value="formName.title"
|
||||||
|
/>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
<!-- 西海岸-摄像头-增加过期时间 -->
|
<!-- 西海岸-摄像头-增加过期时间 -->
|
||||||
<a-form-item v-if="isCamera && isXiHaiAn" label="过期时间" name="expireDate"
|
<a-form-item
|
||||||
:rules="[{ required: true, message: '请选择过期时间' }]" style="margin-left: 22px">
|
v-if="isCamera && isXiHaiAn"
|
||||||
<a-select v-model:value="formName.expireDate" placeholder="请选择过期时间" style="width: 200px"
|
label="过期时间"
|
||||||
:options="expireDateOptions"></a-select>
|
name="expireDate"
|
||||||
|
:rules="[{ required: true, message: '请选择过期时间' }]"
|
||||||
|
style="margin-left: 22px"
|
||||||
|
>
|
||||||
|
<a-select
|
||||||
|
v-model:value="formName.expireDate"
|
||||||
|
placeholder="请选择过期时间"
|
||||||
|
style="width: 200px"
|
||||||
|
:options="expireDateOptions"
|
||||||
|
></a-select>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</div>
|
</div>
|
||||||
<div class="base-info">
|
<div class="base-info">
|
||||||
<a-form-item label="申请人信息" name="user" :rules="[{ required: true, message: '请输入申请人' }]">
|
<a-form-item
|
||||||
<a-input placeholder="请输入申请人" v-model:value="formName.user" disabled />
|
label="申请人信息"
|
||||||
|
name="user"
|
||||||
|
:rules="[{ required: true, message: '请输入申请人' }]"
|
||||||
|
>
|
||||||
|
<a-input
|
||||||
|
placeholder="请输入申请人"
|
||||||
|
v-model:value="formName.user"
|
||||||
|
disabled
|
||||||
|
/>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
<a-form-item style="margin: 0 22px" label="电话" name="phone" :rules="[
|
<a-form-item
|
||||||
|
style="margin: 0 22px"
|
||||||
|
label="电话"
|
||||||
|
name="phone"
|
||||||
|
:rules="[
|
||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
pattern: /^1[3456789]\d{9}$/,
|
pattern: /^1[3456789]\d{9}$/,
|
||||||
message: '请输入正确的电话号码',
|
message: '请输入正确的电话号码',
|
||||||
},
|
},
|
||||||
]">
|
]"
|
||||||
<a-input placeholder="请输入申请人电话" v-model:value="formName.phone" />
|
>
|
||||||
|
<a-input
|
||||||
|
placeholder="请输入申请人电话"
|
||||||
|
v-model:value="formName.phone"
|
||||||
|
/>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
<a-form-item label="单位" name="unit" :rules="[{ required: true, message: '请输入单位' }]">
|
<a-form-item
|
||||||
<a-input placeholder="请输入单位" v-model:value="formName.unit" disabled v-if="deptFlage" />
|
label="单位"
|
||||||
<a-select v-else placeholder="请选择归属部门" v-model:value="formName.unit" @change="deptIdChangeFunction">
|
name="unit"
|
||||||
<a-select-option v-for="(item, index) in deptNameAll" :key="`${index}-${item}`" :value="item.name">
|
:rules="[{ required: true, message: '请输入单位' }]"
|
||||||
|
>
|
||||||
|
<a-input
|
||||||
|
placeholder="请输入单位"
|
||||||
|
v-model:value="formName.unit"
|
||||||
|
disabled
|
||||||
|
v-if="deptFlage"
|
||||||
|
/>
|
||||||
|
<a-select
|
||||||
|
v-else
|
||||||
|
placeholder="请选择归属部门"
|
||||||
|
v-model:value="formName.unit"
|
||||||
|
@change="deptIdChangeFunction"
|
||||||
|
>
|
||||||
|
<a-select-option
|
||||||
|
v-for="(item, index) in deptNameAll"
|
||||||
|
:key="`${index}-${item}`"
|
||||||
|
:value="item.name"
|
||||||
|
>
|
||||||
{{ item.name }}
|
{{ item.name }}
|
||||||
</a-select-option>
|
</a-select-option>
|
||||||
</a-select>
|
</a-select>
|
||||||
|
@ -45,29 +102,63 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="base-info" v-if="flag">
|
<div class="base-info" v-if="flag">
|
||||||
<div style="margin-bottom: 24px">
|
<div style="margin-bottom: 24px">
|
||||||
<a-form-item style="margin-bottom: 0" label="应用系统" name="applicationSystem"
|
<a-form-item
|
||||||
:rules="[{ required: true, message: '请选择应用系统' }]">
|
style="margin-bottom: 0"
|
||||||
<a-select v-model:value="formName.applicationSystem" show-search placeholder="请选择应用系统"
|
label="应用系统"
|
||||||
style="width: 230px" :options="systemOptions" @focus="handleFocus" @blur="handleBlur"
|
name="applicationSystem"
|
||||||
@change="systemHandleChange" @search="systemHandleSearch"></a-select>
|
:rules="[{ required: true, message: '请选择应用系统' }]"
|
||||||
|
>
|
||||||
|
<a-select
|
||||||
|
v-model:value="formName.applicationSystem"
|
||||||
|
show-search
|
||||||
|
placeholder="请选择应用系统"
|
||||||
|
style="width: 230px"
|
||||||
|
:options="systemOptions"
|
||||||
|
@focus="handleFocus"
|
||||||
|
@blur="handleBlur"
|
||||||
|
@change="systemHandleChange"
|
||||||
|
@search="systemHandleSearch"
|
||||||
|
></a-select>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
<span style="font-size: 12px; color: #666; padding-left: 106px">
|
<span
|
||||||
|
style="font-size: 12px; color: #666; padding-left: 106px"
|
||||||
|
>
|
||||||
如选项没有系统请新增
|
如选项没有系统请新增
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<a-form-item class="applicationScene" label="应用领域" name="applicationScene"
|
<a-form-item
|
||||||
:rules="[{ required: true, message: '请选择应用领域' }]" style="width: 6.93rem">
|
class="applicationScene"
|
||||||
<a-select v-model:value="formName.applicationScene" :options="applicationSceneOpthion" mode="tags"
|
label="应用领域"
|
||||||
:size="size" placeholder="请选择应用领域" :filterOption="false" :searchValue="false"
|
name="applicationScene"
|
||||||
style="width: 5.87rem"></a-select>
|
:rules="[{ required: true, message: '请选择应用领域' }]"
|
||||||
|
style="width: 6.93rem"
|
||||||
|
>
|
||||||
|
<a-select
|
||||||
|
v-model:value="formName.applicationScene"
|
||||||
|
:options="applicationSceneOpthion"
|
||||||
|
mode="tags"
|
||||||
|
:size="size"
|
||||||
|
placeholder="请选择应用领域"
|
||||||
|
:filterOption="false"
|
||||||
|
:searchValue="false"
|
||||||
|
style="width: 5.87rem"
|
||||||
|
></a-select>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<a-form-item label="需求依据" name="applicationBackground" :rules="[
|
<a-form-item
|
||||||
|
label="需求依据"
|
||||||
|
name="applicationBackground"
|
||||||
|
:rules="[
|
||||||
{ required: true, message: '请输入需求依据' },
|
{ required: true, message: '请输入需求依据' },
|
||||||
{ min: 50, message: '需求依据最少为50个字' },
|
{ min: 50, message: '需求依据最少为50个字' },
|
||||||
]">
|
]"
|
||||||
<a-textarea placeholder="请输入需求依据" v-model:value="formName.applicationBackground" :rows="4" />
|
>
|
||||||
|
<a-textarea
|
||||||
|
placeholder="请输入需求依据"
|
||||||
|
v-model:value="formName.applicationBackground"
|
||||||
|
:rows="4"
|
||||||
|
/>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@ -75,9 +166,20 @@
|
||||||
<div v-if="iskfq && isXiHaiAn">
|
<div v-if="iskfq && isXiHaiAn">
|
||||||
<a-row style="margin-top: 0.4rem">
|
<a-row style="margin-top: 0.4rem">
|
||||||
<a-col :span="24">
|
<a-col :span="24">
|
||||||
<a-form-item name="attachment" label="附件上传" class="introduction">
|
<a-form-item
|
||||||
<a-upload :max-count="1" accept=".doc,.docx,pdf" v-model:file-list="fileList"
|
name="attachment"
|
||||||
:action="`${apiURL}/upload`" @remove="handleRemove" @change="roomUpload">
|
label="附件上传"
|
||||||
|
class="introduction"
|
||||||
|
:rules="[{ required: true, message: '请上传附件' }]"
|
||||||
|
>
|
||||||
|
<a-upload
|
||||||
|
:max-count="1"
|
||||||
|
accept=".doc,.docx,pdf"
|
||||||
|
v-model:file-list="fileList"
|
||||||
|
:action="`${apiURL}/upload`"
|
||||||
|
@remove="handleRemove"
|
||||||
|
@change="roomUpload"
|
||||||
|
>
|
||||||
<a-button>
|
<a-button>
|
||||||
<upload-outlined>选择上传附件</upload-outlined>
|
<upload-outlined>选择上传附件</upload-outlined>
|
||||||
</a-button>
|
</a-button>
|
||||||
|
@ -90,16 +192,31 @@
|
||||||
</a-row>
|
</a-row>
|
||||||
<a-row>
|
<a-row>
|
||||||
<a-col :span="24" style="margin-left: 106px">
|
<a-col :span="24" style="margin-left: 106px">
|
||||||
<a href="/static/download/感知资源申请表.doc" download="感知资源申请表">感知资源申请表模板下载</a>
|
<a
|
||||||
|
href="/static/download/感知资源申请表.doc"
|
||||||
|
download="感知资源申请表"
|
||||||
|
>
|
||||||
|
感知资源申请表模板下载
|
||||||
|
</a>
|
||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="bottom-btn">
|
<div class="bottom-btn">
|
||||||
<a-button class="cancel-apply" type="primary" html-type="cancle" @click="resetFields()">
|
<a-button
|
||||||
|
class="cancel-apply"
|
||||||
|
type="primary"
|
||||||
|
html-type="cancle"
|
||||||
|
@click="resetFields()"
|
||||||
|
>
|
||||||
退出申请
|
退出申请
|
||||||
</a-button>
|
</a-button>
|
||||||
<a-button class="confirm-apply" type="primary" html-type="submit" @click="processStartHandle()">
|
<a-button
|
||||||
|
class="confirm-apply"
|
||||||
|
type="primary"
|
||||||
|
html-type="submit"
|
||||||
|
@click="processStartHandle()"
|
||||||
|
>
|
||||||
提交申请
|
提交申请
|
||||||
</a-button>
|
</a-button>
|
||||||
</div>
|
</div>
|
||||||
|
@ -143,6 +260,7 @@ import { sgcDel, getApplyForm } from '@/api/personalCenter'
|
||||||
import { pageWithAttrs, updateIntegrationServices } from '@/api/home'
|
import { pageWithAttrs, updateIntegrationServices } from '@/api/home'
|
||||||
import { DETAIL_PAGE_CONTENT_DEFAULT_TAB } from '@/global/GlobalConfig.js'
|
import { DETAIL_PAGE_CONTENT_DEFAULT_TAB } from '@/global/GlobalConfig.js'
|
||||||
import { getIntegrationDetail, soldierApply } from '@/api/home'
|
import { getIntegrationDetail, soldierApply } from '@/api/home'
|
||||||
|
import { useStore } from 'vuex'
|
||||||
import * as moment from 'moment'
|
import * as moment from 'moment'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
|
@ -154,6 +272,8 @@ export default {
|
||||||
},
|
},
|
||||||
setup() {
|
setup() {
|
||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
|
const store = useStore()
|
||||||
|
const deptName = store.getters['user/deptName']
|
||||||
const disabled = ref(false)
|
const disabled = ref(false)
|
||||||
const flag = ref(false)
|
const flag = ref(false)
|
||||||
const list = ref(JSON.parse(localStorage.getItem('applyList')))
|
const list = ref(JSON.parse(localStorage.getItem('applyList')))
|
||||||
|
@ -211,8 +331,17 @@ export default {
|
||||||
// 西海岸-判断是否是基础设施-摄像头
|
// 西海岸-判断是否是基础设施-摄像头
|
||||||
const isCamera = ref(false)
|
const isCamera = ref(false)
|
||||||
// 西海岸-是否是开发区公安分局,是的话,增加上传附件字段
|
// 西海岸-是否是开发区公安分局,是的话,增加上传附件字段
|
||||||
let note1 = JSON.parse(list.value[0] && list.value[0].arr && list.value[0].arr[0].note1 || "[]");
|
let note1 = JSON.parse(
|
||||||
let iskfq = ref(note1.some(v => v.managementUnitName == '开发区公安局' || v.managementUnitName == '开发区公安分局'))
|
(list.value[0] && list.value[0].arr && list.value[0].arr[0].note1) ||
|
||||||
|
'[]'
|
||||||
|
)
|
||||||
|
let iskfq = ref(
|
||||||
|
note1.some(
|
||||||
|
(v) =>
|
||||||
|
v.managementUnitName == '开发区公安局' ||
|
||||||
|
v.managementUnitName == '开发区公安分局'
|
||||||
|
)
|
||||||
|
)
|
||||||
if (
|
if (
|
||||||
list.value[0] &&
|
list.value[0] &&
|
||||||
list.value[0].arr &&
|
list.value[0].arr &&
|
||||||
|
@ -661,11 +790,14 @@ export default {
|
||||||
if (res.data.data.records.length == 0) {
|
if (res.data.data.records.length == 0) {
|
||||||
message.warning('该关键词,暂无应用资源!')
|
message.warning('该关键词,暂无应用资源!')
|
||||||
} else {
|
} else {
|
||||||
|
// 过滤本单位的应用系统
|
||||||
res.data.data.records.map((val) => {
|
res.data.data.records.map((val) => {
|
||||||
|
if (val.deptName === deptName) {
|
||||||
systemOptions2.value.push({
|
systemOptions2.value.push({
|
||||||
value: val.name,
|
value: val.name,
|
||||||
label: val.name,
|
label: val.name,
|
||||||
})
|
})
|
||||||
|
}
|
||||||
})
|
})
|
||||||
// console.log('第一次获取===================>', systemOptions2.value)
|
// console.log('第一次获取===================>', systemOptions2.value)
|
||||||
}
|
}
|
||||||
|
@ -755,7 +887,11 @@ export default {
|
||||||
query: {
|
query: {
|
||||||
select: DETAIL_PAGE_CONTENT_DEFAULT_TAB,
|
select: DETAIL_PAGE_CONTENT_DEFAULT_TAB,
|
||||||
// 基础设施类型
|
// 基础设施类型
|
||||||
facilitiesType: list.value[0] && list.value[0].arr && list.value[0].arr[0] && list.value[0].arr[0].type
|
facilitiesType:
|
||||||
|
list.value[0] &&
|
||||||
|
list.value[0].arr &&
|
||||||
|
list.value[0].arr[0] &&
|
||||||
|
list.value[0].arr[0].type,
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
}, 1000)
|
}, 1000)
|
||||||
|
|
|
@ -1,11 +1,8 @@
|
||||||
<template>
|
<template>
|
||||||
<div
|
<div class="home-header" :class="[
|
||||||
class="home-header"
|
|
||||||
:class="[
|
|
||||||
select !== 'home' || scrollTop > 500 ? 'white' : '',
|
select !== 'home' || scrollTop > 500 ? 'white' : '',
|
||||||
props.showView === 'algorithm-details' ? '' : '',
|
props.showView === 'algorithm-details' ? '' : '',
|
||||||
]"
|
]">
|
||||||
>
|
|
||||||
<div class="name" @click="goToHome">
|
<div class="name" @click="goToHome">
|
||||||
<div class="name-bg" v-if="!itShowXiHaiAn"></div>
|
<div class="name-bg" v-if="!itShowXiHaiAn"></div>
|
||||||
<div class="name-bg-xihaian" v-else></div>
|
<div class="name-bg-xihaian" v-else></div>
|
||||||
|
@ -14,52 +11,26 @@
|
||||||
<p>(United Capacity System)</p>
|
<p>(United Capacity System)</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div v-for="item in navList" :key="item.key" @click="jumpPage(item)" class="nav"
|
||||||
v-for="item in navList"
|
:class="item.key == select ? 'select' : ''">
|
||||||
:key="item.key"
|
|
||||||
@click="jumpPage(item)"
|
|
||||||
class="nav"
|
|
||||||
:class="item.key == select ? 'select' : ''"
|
|
||||||
>
|
|
||||||
{{ item.name }}
|
{{ item.name }}
|
||||||
</div>
|
</div>
|
||||||
<!-- 购物车 -->
|
<!-- 购物车 -->
|
||||||
<a-badge :count="sgcNum">
|
<a-badge :count="sgcNum">
|
||||||
<svg
|
<svg t="1650455446850" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"
|
||||||
t="1650455446850"
|
p-id="2069" width="0.4rem" height="0.4rem" @click="goToSgc">
|
||||||
class="icon"
|
|
||||||
viewBox="0 0 1024 1024"
|
|
||||||
version="1.1"
|
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
|
||||||
p-id="2069"
|
|
||||||
width="0.4rem"
|
|
||||||
height="0.4rem"
|
|
||||||
@click="goToSgc"
|
|
||||||
>
|
|
||||||
<path
|
<path
|
||||||
d="M384 832v85.333333h-85.333333v-85.333333h85.333333z m405.333333 0v85.333333h-85.333333v-85.333333h85.333333zM240.32 185.002667l24.149333 140.928h633.173334L835.285333 746.666667h-563.626666l-85.333334-497.685334H94.485333v-64h145.834667z m583.104 204.928H275.434667L325.632 682.666667h454.464l43.328-292.736z"
|
d="M384 832v85.333333h-85.333333v-85.333333h85.333333z m405.333333 0v85.333333h-85.333333v-85.333333h85.333333zM240.32 185.002667l24.149333 140.928h633.173334L835.285333 746.666667h-563.626666l-85.333334-497.685334H94.485333v-64h145.834667z m583.104 204.928H275.434667L325.632 682.666667h454.464l43.328-292.736z"
|
||||||
:fill="props.showView === 'algorithm-details' ? '#1296db' : '#1296db'"
|
:fill="props.showView === 'algorithm-details' ? '#1296db' : '#1296db'" p-id="2070"></path>
|
||||||
p-id="2070"
|
|
||||||
></path>
|
|
||||||
</svg>
|
</svg>
|
||||||
</a-badge>
|
</a-badge>
|
||||||
<a-badge :count="mynoticeNum" style="margin-left: 0.2rem">
|
<a-badge :count="mynoticeNum" style="margin-left: 0.2rem">
|
||||||
<!-- 消息提醒 -->
|
<!-- 消息提醒 -->
|
||||||
<svg
|
<svg t="1654051054113" class="icon2" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"
|
||||||
t="1654051054113"
|
p-id="2187" width="0.35rem" height="0.35rem">
|
||||||
class="icon2"
|
|
||||||
viewBox="0 0 1024 1024"
|
|
||||||
version="1.1"
|
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
|
||||||
p-id="2187"
|
|
||||||
width="0.35rem"
|
|
||||||
height="0.35rem"
|
|
||||||
>
|
|
||||||
<path
|
<path
|
||||||
d="M544 161.536a330.666667 330.666667 0 0 1 298.666667 329.130667h-0.341334c0.213333 1.493333 0.341333 2.986667 0.341334 4.565333v219.434667h39.68a32 32 0 0 1 0 64h-212.053334a160 160 0 0 1-316.586666 0H141.909333a32 32 0 1 1 0-64h39.424v-219.434667c0-1.578667 0.128-3.072 0.341334-4.565333H181.333333a330.666667 330.666667 0 0 1 298.666667-329.130667V128a32 32 0 1 1 64 0v33.536z m-298.666667 553.130667h533.333334v-219.434667c0-1.578667 0.128-3.072 0.341333-4.565333h-0.341333a266.666667 266.666667 0 1 0-533.333334 0h-0.341333c0.213333 1.493333 0.341333 2.986667 0.341333 4.565333v219.434667z m359.765334 64H418.901333a96 96 0 0 0 186.197334 0z"
|
d="M544 161.536a330.666667 330.666667 0 0 1 298.666667 329.130667h-0.341334c0.213333 1.493333 0.341333 2.986667 0.341334 4.565333v219.434667h39.68a32 32 0 0 1 0 64h-212.053334a160 160 0 0 1-316.586666 0H141.909333a32 32 0 1 1 0-64h39.424v-219.434667c0-1.578667 0.128-3.072 0.341334-4.565333H181.333333a330.666667 330.666667 0 0 1 298.666667-329.130667V128a32 32 0 1 1 64 0v33.536z m-298.666667 553.130667h533.333334v-219.434667c0-1.578667 0.128-3.072 0.341333-4.565333h-0.341333a266.666667 266.666667 0 1 0-533.333334 0h-0.341333c0.213333 1.493333 0.341333 2.986667 0.341333 4.565333v219.434667z m359.765334 64H418.901333a96 96 0 0 0 186.197334 0z"
|
||||||
:fill="props.showView === 'algorithm-details' ? '#1296db' : '#1296db'"
|
:fill="props.showView === 'algorithm-details' ? '#1296db' : '#1296db'" p-id="2188"></path>
|
||||||
p-id="2188"
|
|
||||||
></path>
|
|
||||||
</svg>
|
</svg>
|
||||||
<!-- <a-avatar shape="square" size="large" /> -->
|
<!-- <a-avatar shape="square" size="large" /> -->
|
||||||
</a-badge>
|
</a-badge>
|
||||||
|
@ -88,10 +59,7 @@
|
||||||
<template #title>
|
<template #title>
|
||||||
<span>{{ user.realName }}</span>
|
<span>{{ user.realName }}</span>
|
||||||
</template>
|
</template>
|
||||||
<span
|
<span class="name" @click="jumpPage({ name: '个人中心', key: 'personalCenter' })">
|
||||||
class="name"
|
|
||||||
@click="jumpPage({ name: '个人中心', key: 'personalCenter' })"
|
|
||||||
>
|
|
||||||
{{ user.realName }}
|
{{ user.realName }}
|
||||||
</span>
|
</span>
|
||||||
</a-tooltip>
|
</a-tooltip>
|
||||||
|
@ -114,11 +82,7 @@
|
||||||
fill="#bfbfbf"
|
fill="#bfbfbf"
|
||||||
></path>
|
></path>
|
||||||
</svg> -->
|
</svg> -->
|
||||||
<i
|
<i @click="jumpPage({ name: '后台管理', key: 'houtaiguanli' })" class="iconTo" v-show="backFlag"></i>
|
||||||
@click="jumpPage({ name: '后台管理', key: 'houtaiguanli' })"
|
|
||||||
class="iconTo"
|
|
||||||
v-show="backFlag"
|
|
||||||
></i>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
@ -180,6 +144,14 @@
|
||||||
}
|
}
|
||||||
// 返回首页
|
// 返回首页
|
||||||
const goToHome = () => {
|
const goToHome = () => {
|
||||||
|
// 西海岸
|
||||||
|
if (itShowXiHaiAn.value) {
|
||||||
|
if (
|
||||||
|
!xhaHasPermissionUser.list.includes(user.value.username)
|
||||||
|
) {
|
||||||
|
return message.warn('暂无权限')
|
||||||
|
}
|
||||||
|
}
|
||||||
router.push({
|
router.push({
|
||||||
path: '/home',
|
path: '/home',
|
||||||
})
|
})
|
||||||
|
@ -397,8 +369,7 @@
|
||||||
.name-bg-xihaian {
|
.name-bg-xihaian {
|
||||||
height: 0.6rem;
|
height: 0.6rem;
|
||||||
width: 0.6rem;
|
width: 0.6rem;
|
||||||
background: url('~@/assets/newHome/newHome-title-bg-xihaian.png')
|
background: url('~@/assets/newHome/newHome-title-bg-xihaian.png') no-repeat;
|
||||||
no-repeat;
|
|
||||||
background-size: 100%;
|
background-size: 100%;
|
||||||
margin-right: 0.15rem;
|
margin-right: 0.15rem;
|
||||||
}
|
}
|
||||||
|
@ -517,11 +488,9 @@
|
||||||
|
|
||||||
.blue {
|
.blue {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
background: linear-gradient(
|
background: linear-gradient(to right,
|
||||||
to right,
|
|
||||||
rgba(15, 90, 253, 0.8),
|
rgba(15, 90, 253, 0.8),
|
||||||
rgba(36, 25, 248, 0.8)
|
rgba(36, 25, 248, 0.8));
|
||||||
);
|
|
||||||
|
|
||||||
.name {
|
.name {
|
||||||
color: #fff;
|
color: #fff;
|
||||||
|
@ -572,6 +541,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
:deep(.ant-list-item-meta-title) {
|
:deep(.ant-list-item-meta-title) {
|
||||||
|
|
||||||
// display: flex;
|
// display: flex;
|
||||||
// justify-content: space-around;
|
// justify-content: space-around;
|
||||||
// align-items: center;
|
// align-items: center;
|
||||||
|
|
|
@ -91,6 +91,10 @@ export default defineComponent({
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
treeData.value = res.data && res.data.data || []
|
treeData.value = res.data && res.data.data || []
|
||||||
|
// 只有一个,默认展开到二级菜单
|
||||||
|
if(res.data && res.data.data.length == 1) {
|
||||||
|
showBottom(treeData.value[0])
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
mybus.on('getDeptList', () => {
|
mybus.on('getDeptList', () => {
|
||||||
|
|
|
@ -312,7 +312,7 @@
|
||||||
<span>{{ statusText[record.status] || '' }}</span>
|
<span>{{ statusText[record.status] || '' }}</span>
|
||||||
</template>
|
</template>
|
||||||
<template v-if="column.dataIndex === 'operation'">
|
<template v-if="column.dataIndex === 'operation'">
|
||||||
<a @click="
|
<a :class="record.status != 1 ? 'disabled-text' : ''" @click="
|
||||||
openVideo(
|
openVideo(
|
||||||
record.channelCode ||
|
record.channelCode ||
|
||||||
record.channelId ||
|
record.channelId ||
|
||||||
|
@ -762,7 +762,8 @@ const openVideo = (id, item) => {
|
||||||
rowClickData.value = item
|
rowClickData.value = item
|
||||||
// 单个预览
|
// 单个预览
|
||||||
if (item && item.status != 1) {
|
if (item && item.status != 1) {
|
||||||
return message.warning('当前设备离线, 不可预览!')
|
return
|
||||||
|
// return message.warning('当前设备离线, 不可预览!')
|
||||||
}
|
}
|
||||||
console.log('打开视频', id)
|
console.log('打开视频', id)
|
||||||
const param = {
|
const param = {
|
||||||
|
@ -2364,4 +2365,13 @@ video::-webkit-media-controls {
|
||||||
bottom: 30px;
|
bottom: 30px;
|
||||||
text-align: right;
|
text-align: right;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.disabled-text {
|
||||||
|
cursor: not-allowed;
|
||||||
|
opacity: 0.5;
|
||||||
|
color: #666666;
|
||||||
|
&:hover {
|
||||||
|
color: #666666;
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -157,7 +157,7 @@
|
||||||
password: Encrypt(this.form.password),
|
password: Encrypt(this.form.password),
|
||||||
username: this.form.username,
|
username: this.form.username,
|
||||||
})
|
})
|
||||||
window.localStorage.setItem('tokenStartTime', new Date().getTime())
|
// window.localStorage.setItem('tokenStartTime', new Date().getTime())
|
||||||
window.sessionStorage.setItem('visits', JSON.stringify([]))
|
window.sessionStorage.setItem('visits', JSON.stringify([]))
|
||||||
console.log(
|
console.log(
|
||||||
'添加visits========================================>',
|
'添加visits========================================>',
|
||||||
|
|
|
@ -262,35 +262,27 @@ const goPage = (item) => {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
let isQingDao = whoShow.itShowQingDao;
|
|
||||||
|
|
||||||
// 更改消息状态
|
// 更改消息状态
|
||||||
const read = (item) => {
|
const read = (item) => {
|
||||||
if (selectData.value.length === 0 && !item) {
|
if (selectData.value.length === 0 && !item) {
|
||||||
message.error('未选择消息!')
|
return message.error('未选择消息!')
|
||||||
return
|
|
||||||
}
|
}
|
||||||
console.log(selectData.value)
|
console.log(selectData.value)
|
||||||
if (item) {
|
if (item) {
|
||||||
// 已读状态
|
// 已读状态,跳转页面
|
||||||
if (item.readStatus === 1) {
|
if (item.readStatus === 1) {
|
||||||
if(isQingDao) {
|
return goPage(item)
|
||||||
goPage(item)
|
|
||||||
}
|
|
||||||
// 跳转页面
|
|
||||||
return
|
|
||||||
}
|
}
|
||||||
mynoticeRead(item.id).then((res) => {
|
mynoticeRead(item.id).then((res) => {
|
||||||
if (res.data.code == 0) {
|
if (res.data.code == 0) {
|
||||||
message.success('通知已读!')
|
message.success('通知已读!')
|
||||||
mybus.emit('getMynotice')
|
mybus.emit('getMynotice')
|
||||||
init()
|
init()
|
||||||
if (isQingDao) {
|
|
||||||
// 页面跳转
|
// 页面跳转
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
goPage(item)
|
goPage(item)
|
||||||
}, 1000)
|
}, 1500)
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
message.error('操作失败!')
|
message.error('操作失败!')
|
||||||
}
|
}
|
||||||
|
|
|
@ -159,27 +159,32 @@
|
||||||
<span class="channelName">{{ val.channelName }}</span>
|
<span class="channelName">{{ val.channelName }}</span>
|
||||||
<span class="type">基础设施</span>
|
<span class="type">基础设施</span>
|
||||||
</div>
|
</div>
|
||||||
|
<div>
|
||||||
<a-button type="primary" v-if="item.approveStatus == '通过' && whoShow1.itShowXiHaiAn"
|
<a-button type="primary" v-if="item.approveStatus == '通过' && whoShow1.itShowXiHaiAn"
|
||||||
@click.stop="openVideo(val)">
|
@click.stop="openVideo(val)">
|
||||||
视频预览
|
视频预览
|
||||||
</a-button>
|
</a-button>
|
||||||
<span class="channelName" style="color:#ff7875" v-if="whoShow1.itShowXiHaiAn && !item.ended" >该流程已终止</span>
|
<div class="channelName" style="color:#ff7875" v-if="whoShow1.itShowXiHaiAn && item.ended">该流程已终止
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="ability-bottom">
|
<div class="ability-bottom">
|
||||||
<div class="dec2">位置:{{ val.nodeName }}</div>
|
<div class="dec2">位置:{{ val.nodeName }}</div>
|
||||||
<div class="result" v-if="item.approveStatus == '通过'">
|
<div class="result" v-if="item.approveStatus == '通过'">
|
||||||
申请结果:{{
|
申请结果:
|
||||||
'列表地址:' +
|
<span>列表地址:</span><span style="cursor: pointer;" @click="openView(backUrl +
|
||||||
|
'resource/getApplyCameraList/' +
|
||||||
|
item.instanceId)">{{
|
||||||
backUrl +
|
backUrl +
|
||||||
'resource/getApplyCameraList/' +
|
'resource/getApplyCameraList/' +
|
||||||
item.instanceId +
|
item.instanceId }}</span>
|
||||||
';' +
|
<span>视频流地址:</span>
|
||||||
'视频流地址:' +
|
<span style="cursor: pointer" @click="openView(backUrl +
|
||||||
|
'resource/hls/getHls/?key=' +
|
||||||
|
val.channelId)">{{
|
||||||
backUrl +
|
backUrl +
|
||||||
'resource/hls/getHls/?key=' +
|
'resource/hls/getHls/?key=' +
|
||||||
val.channelId
|
val.channelId}}</span>
|
||||||
}}
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -453,6 +458,10 @@ const handleUser = () => {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const openView = (url) => {
|
||||||
|
window.open(url, '_blank')
|
||||||
|
}
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
<style lang="less" scoped>
|
<style lang="less" scoped>
|
||||||
.title {
|
.title {
|
||||||
|
@ -531,7 +540,7 @@ const handleUser = () => {
|
||||||
margin-left: 0.1rem;
|
margin-left: 0.1rem;
|
||||||
|
|
||||||
.ability {
|
.ability {
|
||||||
height: 1.3rem;
|
height: 1.6rem;
|
||||||
display: flex;
|
display: flex;
|
||||||
border-bottom: 1px #eee solid;
|
border-bottom: 1px #eee solid;
|
||||||
padding: 0.1rem 0;
|
padding: 0.1rem 0;
|
||||||
|
@ -733,6 +742,7 @@ const handleUser = () => {
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
opacity: 0.4;
|
opacity: 0.4;
|
||||||
transform: rotate(-25deg);
|
transform: rotate(-25deg);
|
||||||
width: 470px
|
width: 470px;
|
||||||
|
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -1,9 +1,21 @@
|
||||||
<template>
|
<template>
|
||||||
<DeviceApplyDetail v-if="showType === '设备申请'" :refObj="refObj"></DeviceApplyDetail>
|
<DeviceApplyDetail
|
||||||
|
v-if="showType === '设备申请'"
|
||||||
|
:refObj="refObj"
|
||||||
|
></DeviceApplyDetail>
|
||||||
<div class="form-container" v-else>
|
<div class="form-container" v-else>
|
||||||
<AbilityApplication :refObj="refObj" v-if="showType === '能力申请'"></AbilityApplication>
|
<AbilityApplication
|
||||||
<PutOnTheShelf :refObj="refObj" v-else-if="showType === '能力上架'"></PutOnTheShelf>
|
:refObj="refObj"
|
||||||
<OffTheShelf :refObj="refObj" v-else-if="showType === '能力下架'"></OffTheShelf>
|
v-if="showType === '能力申请'"
|
||||||
|
></AbilityApplication>
|
||||||
|
<PutOnTheShelf
|
||||||
|
:refObj="refObj"
|
||||||
|
v-else-if="showType === '能力上架'"
|
||||||
|
></PutOnTheShelf>
|
||||||
|
<OffTheShelf
|
||||||
|
:refObj="refObj"
|
||||||
|
v-else-if="showType === '能力下架'"
|
||||||
|
></OffTheShelf>
|
||||||
<Demand :refObj="refObj" v-else-if="showType === '能力需求'"></Demand>
|
<Demand :refObj="refObj" v-else-if="showType === '能力需求'"></Demand>
|
||||||
<Comment :refObj="refObj" v-else-if="showType === '需求评论'"></Comment>
|
<Comment :refObj="refObj" v-else-if="showType === '需求评论'"></Comment>
|
||||||
<OtherApplications :refObj="refObj" v-else></OtherApplications>
|
<OtherApplications :refObj="refObj" v-else></OtherApplications>
|
||||||
|
@ -58,7 +70,7 @@ refObj.value = props.refObj
|
||||||
showType.value = props.showType
|
showType.value = props.showType
|
||||||
//流转详情
|
//流转详情
|
||||||
const dataSource = reactive({ data: [] })
|
const dataSource = reactive({ data: [] })
|
||||||
console.log('refObj------------>', refObj);
|
console.log('refObj------------>', refObj)
|
||||||
|
|
||||||
// console.log(props.refObj, '---------------------------------------')
|
// console.log(props.refObj, '---------------------------------------')
|
||||||
|
|
||||||
|
@ -109,6 +121,11 @@ const columns = [
|
||||||
dataIndex: 'activityName',
|
dataIndex: 'activityName',
|
||||||
key: 'activityName',
|
key: 'activityName',
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
title: '处理部门',
|
||||||
|
dataIndex: 'assigneeDeptName',
|
||||||
|
key: 'assigneeDeptName',
|
||||||
|
},
|
||||||
{
|
{
|
||||||
title: '处理人',
|
title: '处理人',
|
||||||
dataIndex: 'assigneeName',
|
dataIndex: 'assigneeName',
|
||||||
|
|
|
@ -3,16 +3,27 @@
|
||||||
<div class="title" style="margin-bottom: 0.2rem">我的申请</div>
|
<div class="title" style="margin-bottom: 0.2rem">我的申请</div>
|
||||||
<div class="tab" style="margin-bottom: 0.1rem">
|
<div class="tab" style="margin-bottom: 0.1rem">
|
||||||
<span>类型</span>
|
<span>类型</span>
|
||||||
<div :class="typeIndex == index ? 'tabclass' : ' '" @click="changeType(item, index)"
|
<div
|
||||||
v-for="(item, index) in typeList" :key="index">
|
:class="typeIndex == index ? 'tabclass' : ' '"
|
||||||
|
@click="changeType(item, index)"
|
||||||
|
v-for="(item, index) in typeList"
|
||||||
|
:key="index"
|
||||||
|
>
|
||||||
{{ item }}
|
{{ item }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="tab">
|
<div class="tab">
|
||||||
<span>申请状态</span>
|
<span>申请状态</span>
|
||||||
<div :class="tabIndex == index ? 'tabclass' : ' '" @click="changeApplyState(item, index)"
|
<div
|
||||||
v-for="(item, index) in tabList" :key="index">
|
:class="tabIndex == index ? 'tabclass' : ' '"
|
||||||
<a-badge :count="item === '审核中' ? num.unfinished : num.finished" v-if="item !== '全部'">
|
@click="changeApplyState(item, index)"
|
||||||
|
v-for="(item, index) in tabList"
|
||||||
|
:key="index"
|
||||||
|
>
|
||||||
|
<a-badge
|
||||||
|
:count="item === '审核中' ? num.unfinished : num.finished"
|
||||||
|
v-if="item !== '全部'"
|
||||||
|
>
|
||||||
{{ item }}
|
{{ item }}
|
||||||
</a-badge>
|
</a-badge>
|
||||||
<template v-else>
|
<template v-else>
|
||||||
|
@ -22,7 +33,11 @@
|
||||||
</div>
|
</div>
|
||||||
<div v-if="contentList.data.length > 0">
|
<div v-if="contentList.data.length > 0">
|
||||||
<div class="content">
|
<div class="content">
|
||||||
<div class="content-body" v-for="item in contentList.data" :key="item.index">
|
<div
|
||||||
|
class="content-body"
|
||||||
|
v-for="item in contentList.data"
|
||||||
|
:key="item.index"
|
||||||
|
>
|
||||||
<div class="content-body-title">
|
<div class="content-body-title">
|
||||||
<span>申请单号:{{ item.applyNumber || '--' }}</span>
|
<span>申请单号:{{ item.applyNumber || '--' }}</span>
|
||||||
<div></div>
|
<div></div>
|
||||||
|
@ -33,7 +48,9 @@
|
||||||
</template>
|
</template>
|
||||||
<div class="content-body-title">
|
<div class="content-body-title">
|
||||||
<span>
|
<span>
|
||||||
名称:{{ item.cameraList ? item.system : (item.title || item.name) }}
|
名称:{{
|
||||||
|
item.cameraList ? item.system : item.title || item.name
|
||||||
|
}}
|
||||||
</span>
|
</span>
|
||||||
<div></div>
|
<div></div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -52,54 +69,117 @@
|
||||||
<div v-if="isXiHaiAn">过期时间:{{ item.expireDate || '' }}</div>
|
<div v-if="isXiHaiAn">过期时间:{{ item.expireDate || '' }}</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="button-box">
|
<div class="button-box">
|
||||||
<div class="button" v-if="typeName == '设备申请' && phoneSate.includes(item.state)"
|
<div
|
||||||
@click="showPhoneModal(item)">
|
class="button"
|
||||||
|
v-if="typeName == '设备申请' && phoneSate.includes(item.state)"
|
||||||
|
@click="showPhoneModal(item)"
|
||||||
|
>
|
||||||
联系方式
|
联系方式
|
||||||
</div>
|
</div>
|
||||||
<div class="button" @click="showDetail(item)">查看详情</div>
|
<div class="button" @click="showDetail(item)">查看详情</div>
|
||||||
<div class="button" @click="showAdd(item)" v-if="item.backToFirst">
|
<div class="button" @click="showAdd(item)" v-if="item.backToFirst">
|
||||||
修改
|
修改
|
||||||
</div>
|
</div>
|
||||||
<svg t="1652233950228" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"
|
<svg
|
||||||
p-id="5970" data-spm-anchor-id="a313x.7781069.0.i8" width="80" height="80" v-if="
|
t="1652233950228"
|
||||||
|
class="icon"
|
||||||
|
viewBox="0 0 1024 1024"
|
||||||
|
version="1.1"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
p-id="5970"
|
||||||
|
data-spm-anchor-id="a313x.7781069.0.i8"
|
||||||
|
width="80"
|
||||||
|
height="80"
|
||||||
|
v-if="
|
||||||
item.processDefinitionName != '能力资源下架' &&
|
item.processDefinitionName != '能力资源下架' &&
|
||||||
(item.resourceStatus == 4 || item.resourceStatus == 5)
|
(item.resourceStatus == 4 || item.resourceStatus == 5)
|
||||||
" style="position: absolute; top: 20px; left: -850px">
|
"
|
||||||
|
style="position: absolute; top: 20px; left: -850px"
|
||||||
|
>
|
||||||
<path
|
<path
|
||||||
d="M955.22053 256C813.82053 11.2 500.72053-72.6 255.92053 68.8S-72.67947 523.2 68.72053 768 523.22053 1096.6 768.02053 955.2c244.7-141.2 328.6-454.1 187.4-698.8 0-0.1-0.1-0.3-0.2-0.4zM762.02053 944.7c-239 138.1-544.8 56.2-682.9-182.8S22.92053 217.1 261.92053 79.1s544.8-56.2 682.9 182.8c137.9 239 56.1 544.6-182.8 682.8z"
|
d="M955.22053 256C813.82053 11.2 500.72053-72.6 255.92053 68.8S-72.67947 523.2 68.72053 768 523.22053 1096.6 768.02053 955.2c244.7-141.2 328.6-454.1 187.4-698.8 0-0.1-0.1-0.3-0.2-0.4zM762.02053 944.7c-239 138.1-544.8 56.2-682.9-182.8S22.92053 217.1 261.92053 79.1s544.8-56.2 682.9 182.8c137.9 239 56.1 544.6-182.8 682.8z"
|
||||||
fill="#515151" opacity=".5" p-id="5971"></path>
|
fill="#515151"
|
||||||
|
opacity=".5"
|
||||||
|
p-id="5971"
|
||||||
|
></path>
|
||||||
<path
|
<path
|
||||||
d="M898.12053 289.2C775.02053 76 502.42053 2.9 289.22053 126 76.02053 249.1 3.02053 521.6 126.02053 734.8 249.12053 948 521.62053 1021.1 734.82053 898 947.92053 774.9 1021.02053 502.4 898.12053 289.2zM731.62053 892.8C521.32053 1014.3 252.42053 942.2 131.02053 731.9 9.52053 521.6 81.62053 252.7 291.92053 131.3 502.12053 9.9 771.02053 81.8 892.42053 292c121.5 210.3 49.5 479.3-160.8 600.8z"
|
d="M898.12053 289.2C775.02053 76 502.42053 2.9 289.22053 126 76.02053 249.1 3.02053 521.6 126.02053 734.8 249.12053 948 521.62053 1021.1 734.82053 898 947.92053 774.9 1021.02053 502.4 898.12053 289.2zM731.62053 892.8C521.32053 1014.3 252.42053 942.2 131.02053 731.9 9.52053 521.6 81.62053 252.7 291.92053 131.3 502.12053 9.9 771.02053 81.8 892.42053 292c121.5 210.3 49.5 479.3-160.8 600.8z"
|
||||||
fill="#515151" opacity=".5" p-id="5972"></path>
|
fill="#515151"
|
||||||
|
opacity=".5"
|
||||||
|
p-id="5972"
|
||||||
|
></path>
|
||||||
<path
|
<path
|
||||||
d="M323.62053 176.8c3.6-2 6 0.8 8.8 2.8 6 4.4 12.4 8.8 18.8 12.8 7.2-2.4 14.4-5.1 21.6-7.7 3.6-1.2 6-2.8 8.8 0.4 2.4 2.8 0.4 6.4-0.4 8.8-2 6.8-3.6 13.6-5.6 20.8 4.8 6 10 11.6 15.2 17.6 2.4 2.8 4.4 5.6 2.8 8.4-1.2 2.8-5.6 2.4-7.7 2.4l-22.4 0.8c-4.4 6.8-8.4 13.6-12.8 20-1.6 2.4-4 5.1-7.2 4-2.4-1.9-3.9-4.7-4.4-7.7l-7.2-20.5-25.2-6.4c-2.3-1.2-3.6-3.8-3.2-6.4 1.3-1.8 2.9-3.3 4.8-4.4 4-3.2 7.7-6.8 11.6-10 1.9-1.3 3.6-2.7 5.1-4.4-0.4-6.8-1.2-13.6-1.6-20.5-0.7-2.9-0.9-5.9-0.4-8.8-0.7-0.8-0.3-1.6 0.6-2zM200.72053 289.2c3.6-2 6 0.8 8.8 2.8 6.4 4.4 12.4 8.4 18.8 12.8 7.2-2.4 14.4-5.1 21.6-7.7 3.6-1.2 6-2.8 8.8 0.4 2.4 2.8 0.4 6.4-0.4 8.8-2 6.8-3.6 13.6-5.6 20.8 4.8 6 10 11.6 14.8 17.6 2.4 2.8 4.4 5.6 2.8 8.4-1.2 2.4-5.6 2.4-7.7 2.4l-22.4 0.8c-4.4 6.8-8.8 13.6-12.8 20-1.6 2.4-4 5.1-7.2 4-2.2-2-3.8-4.7-4.4-7.7l-7.2-20.5c-8.4-2-16.8-4.4-25.2-6.4-2.3-1.2-3.6-3.8-3.2-6.4 1.3-1.8 2.9-3.3 4.8-4.4 3.6-3.2 7.7-6.8 11.6-10 1.9-1.3 3.6-2.7 5.1-4.4-0.4-6.8-1.2-13.6-1.6-20.5-0.7-2.9-0.9-5.9-0.4-8.8-0.4-1.2 0-1.6 0.8-2.4l0.2 0.4z m276.6-159.6c3.6-2 6 0.8 8.8 2.8 6.4 4.4 12.4 8.4 18.8 12.8 7.2-2.4 14.4-5.1 21.6-7.7 3.6-1.2 6-2.8 8.8 0.4 2.4 2.8 0.4 6.4-0.4 8.8-2 6.8-3.6 14-5.6 20.8 4.8 6 10 12 15.2 17.6 2.4 2.8 4.4 5.6 2.8 8.4-1.2 2.8-5.6 2.4-7.7 2.4l-22.4 0.8c-4.4 6.8-8.8 13.6-12.8 20-1.6 2.4-4 5.1-7.2 4-2.2-2-3.8-4.7-4.4-7.7l-7.2-20.5-25.2-6.4c-2.3-1.2-3.6-3.8-3.2-6.4 1.3-1.8 2.9-3.3 4.8-4.4 4-3.2 7.7-6.8 11.6-10 1.9-1.3 3.6-2.7 5.1-4.4-0.4-6.8-1.2-13.6-1.6-20.5-0.7-2.9-0.9-5.9-0.4-8.8-0.8-1.2-0.4-1.6 0.4-2.4l0.2 0.4z m141.9 29.6c3.6-2 6 0.8 8.8 2.8l18.8 12.8c7.2-2.4 14.4-5.1 21.6-7.7 3.6-1.2 6-2.8 8.8 0.4 2.4 2.8 0.4 6.4-0.4 8.8-2 6.8-3.6 14-5.6 20.8 4.8 6 10 12 15.2 17.6 2.4 2.8 4.4 5.6 2.8 8.4-1.2 2.8-5.6 2.4-7.7 2.4-7.7 0.4-15.2 0.8-22.4 0.8-4.4 6.8-8.4 13.2-12.8 20-1.6 2.4-4 5.1-7.2 4-2.4-1.9-3.9-4.7-4.4-7.7l-7.2-20.5c-8.4-2-16.8-4.4-25.2-6.4-2.3-1.2-3.6-3.8-3.2-6.4 1.3-1.8 2.9-3.3 4.8-4.4 4-3.2 7.7-6.8 11.6-10 1.9-1.3 3.6-2.7 5.1-4.4-0.4-6.8-1.2-13.6-1.6-20.5-0.7-2.9-0.9-5.9-0.4-8.8-0.5-1.2 0.2-1.6 0.6-2zM150.02053 430c3.6-2 6 0.8 8.8 2.8 6.4 4.4 12.4 8.4 18.8 12.8 7.2-2.4 14.4-5.1 21.6-7.7 3.6-1.2 6-2.8 8.8 0.4 2.4 2.8 0.4 6.4-0.4 8.8-2 6.8-4 14-5.6 20.8 4.8 6 10 11.6 15.2 17.6 2.4 2.8 4.4 5.6 2.8 8.4-1.2 2.8-5.6 2.4-7.7 2.4l-22.4 0.8c-4.4 6.8-8.8 13.6-12.8 20-1.6 2.4-4 5.1-7.2 4-2.2-2-3.8-4.7-4.4-7.7l-7.2-20.5-25.2-6.4c-2.3-1.2-3.6-3.8-3.2-6.4 1.3-1.8 2.9-3.3 4.8-4.4 3.6-3.2 7.7-6.8 11.6-10 1.9-1.3 3.6-2.7 5.1-4.4-0.4-6.8-1.2-13.6-1.6-20.5-0.7-2.9-0.9-5.9-0.4-8.8-0.7-0.8-0.3-1.5 0.6-2z m558.9 414.4c3.6-2.4 2.4-5.6 2-8.8l-1.6-22.4 17.2-14.8c2.8-2.4 5.1-4 4-7.7-1.2-3.2-5.6-3.6-7.7-4-6.8-2-14-3.6-20.8-5.6-2.8-7.2-5.1-14.4-7.7-21.6-1.2-3.6-2.8-6.4-5.6-6.8-2.8-0.4-4.8 3.6-5.6 5.1l-12 19.2-24 1.2c-2.8 0-6.8 0.8-6.8 4.4 0.5 3 2 5.7 4.4 7.7 4.8 5.6 9.2 11.2 14 16.4l-7.2 25.2c-0.3 2.7 1.4 5.2 4 6 2.2-0.1 4.4-0.7 6.4-1.6l14.4-4.8c2.1-0.8 4.2-1.5 6.4-2 5.6 4 11.2 7.7 16.8 11.6 2.2 2.1 4.8 3.6 7.7 4.4 0.5-1.1 0.8-1.1 1.6-1.1h0.1z m-158.8 50c3.6-2.4 2.4-5.6 2-8.8l-1.6-22.4 17.2-14.8c2.8-2.4 5.1-4 4-7.7-1.1-3.7-5.6-3.6-7.7-4-6.8-1.6-14-3.6-20.8-5.6l-7.7-22c-1.2-3.6-2.8-6.4-5.6-6.8-2.8-0.4-4.8 3.6-5.6 5.1l-12 19.2-24 1.2c-2.8 0-6.8 0.8-6.8 4.4 0.5 3 2 5.7 4.4 7.7 4.8 5.6 9.2 11.2 14 16.4l-7.2 25.2c-0.3 2.7 1.4 5.2 4 6 2.2-0.3 4.3-0.9 6.4-1.6l14.4-4.8c2-1 4.2-1.7 6.4-2 5.6 4 11.2 7.7 16.8 11.6 2.2 2.1 4.8 3.6 7.7 4.4 0.4-0.8 0.8-0.8 1.7-0.7z m276.5-159.6c3.6-2.4 2.4-5.6 2-8.8l-1.6-22.4 17.2-14.8c2.8-2.4 5.1-4 4-7.7-1.2-3.2-5.6-3.6-7.7-4-6.8-2-14-3.6-20.8-5.6-2.8-7.2-5.1-14.4-7.7-21.6-1.2-3.6-2.8-6.4-5.6-6.8s-4.8 3.6-5.6 5.1l-12 19.2-24 1.2c-2.8 0-6.8 0.8-6.8 4.4 0.5 3 2 5.7 4.4 7.7 4.8 5.6 9.2 11.2 14 16.4l-7.2 25.2c-0.3 2.7 1.4 5.2 4 6 2.2-0.2 4.4-0.7 6.4-1.6l14.4-4.8c2.1-0.8 4.2-1.5 6.4-2 5.6 4 11.2 7.7 16.8 11.6 2.2 2.1 4.8 3.6 7.7 4.4 0-0.8 0.8-1.2 1.6-1.2l0.1 0.1z m45.6-137.6c3.6-2.4 2.4-5.6 2-8.8l-1.6-22.4 17.2-14.8c2.8-2.4 5.1-4 4-7.7-1.2-3.2-5.6-3.6-7.7-4-6.8-1.6-14-3.6-20.8-5.6l-7.7-22c-1.2-3.6-2.8-6.4-5.6-6.8-2.8-0.4-4.8 3.6-5.6 5.1l-12 19.2-24 1.2c-2.8 0-6.8 0.8-6.8 4.4 0.5 3 2 5.7 4.4 7.7 4.8 5.6 9.2 11.2 14 16.4l-7.2 25.2c-0.3 2.7 1.4 5.2 4 6 2.2-0.3 4.3-0.9 6.4-1.6l14.4-4.8c2.1-0.8 4.2-1.5 6.4-2 5.6 4 11.2 7.7 16.8 11.6 2.2 2.1 4.8 3.6 7.7 4.4 0.2-0.7 0.6-0.7 1.4-0.7h0.3zM402.72053 868c3.6-2.4 2.4-5.6 2-8.8l-1.6-22.4 17.2-14.8c2.8-2.4 5.1-4 4-7.7-1.2-3.2-5.6-3.6-7.7-4-6.8-2-14-3.6-20.8-5.6-2.8-7.2-5.1-14.4-7.7-21.6-1.2-3.6-2.8-6.4-5.6-6.8-2.8-0.4-4.8 3.6-5.6 5.1l-12 19.2-24 1.2c-2.8 0-6.8 0.8-6.8 4.4 0.5 3 2 5.7 4.4 7.7 4.8 5.6 9.2 11.2 14 16.4l-7.2 25.2c-0.3 2.7 1.4 5.2 4 6 2.2-0.3 4.3-0.9 6.4-1.6l14.4-4.8c2.1-0.8 4.2-1.5 6.4-2 5.6 4 11.2 7.7 16.8 11.6 2.2 2.1 4.8 3.6 7.7 4.4 0.5-0.8 1-1.1 1.7-1.1z"
|
d="M323.62053 176.8c3.6-2 6 0.8 8.8 2.8 6 4.4 12.4 8.8 18.8 12.8 7.2-2.4 14.4-5.1 21.6-7.7 3.6-1.2 6-2.8 8.8 0.4 2.4 2.8 0.4 6.4-0.4 8.8-2 6.8-3.6 13.6-5.6 20.8 4.8 6 10 11.6 15.2 17.6 2.4 2.8 4.4 5.6 2.8 8.4-1.2 2.8-5.6 2.4-7.7 2.4l-22.4 0.8c-4.4 6.8-8.4 13.6-12.8 20-1.6 2.4-4 5.1-7.2 4-2.4-1.9-3.9-4.7-4.4-7.7l-7.2-20.5-25.2-6.4c-2.3-1.2-3.6-3.8-3.2-6.4 1.3-1.8 2.9-3.3 4.8-4.4 4-3.2 7.7-6.8 11.6-10 1.9-1.3 3.6-2.7 5.1-4.4-0.4-6.8-1.2-13.6-1.6-20.5-0.7-2.9-0.9-5.9-0.4-8.8-0.7-0.8-0.3-1.6 0.6-2zM200.72053 289.2c3.6-2 6 0.8 8.8 2.8 6.4 4.4 12.4 8.4 18.8 12.8 7.2-2.4 14.4-5.1 21.6-7.7 3.6-1.2 6-2.8 8.8 0.4 2.4 2.8 0.4 6.4-0.4 8.8-2 6.8-3.6 13.6-5.6 20.8 4.8 6 10 11.6 14.8 17.6 2.4 2.8 4.4 5.6 2.8 8.4-1.2 2.4-5.6 2.4-7.7 2.4l-22.4 0.8c-4.4 6.8-8.8 13.6-12.8 20-1.6 2.4-4 5.1-7.2 4-2.2-2-3.8-4.7-4.4-7.7l-7.2-20.5c-8.4-2-16.8-4.4-25.2-6.4-2.3-1.2-3.6-3.8-3.2-6.4 1.3-1.8 2.9-3.3 4.8-4.4 3.6-3.2 7.7-6.8 11.6-10 1.9-1.3 3.6-2.7 5.1-4.4-0.4-6.8-1.2-13.6-1.6-20.5-0.7-2.9-0.9-5.9-0.4-8.8-0.4-1.2 0-1.6 0.8-2.4l0.2 0.4z m276.6-159.6c3.6-2 6 0.8 8.8 2.8 6.4 4.4 12.4 8.4 18.8 12.8 7.2-2.4 14.4-5.1 21.6-7.7 3.6-1.2 6-2.8 8.8 0.4 2.4 2.8 0.4 6.4-0.4 8.8-2 6.8-3.6 14-5.6 20.8 4.8 6 10 12 15.2 17.6 2.4 2.8 4.4 5.6 2.8 8.4-1.2 2.8-5.6 2.4-7.7 2.4l-22.4 0.8c-4.4 6.8-8.8 13.6-12.8 20-1.6 2.4-4 5.1-7.2 4-2.2-2-3.8-4.7-4.4-7.7l-7.2-20.5-25.2-6.4c-2.3-1.2-3.6-3.8-3.2-6.4 1.3-1.8 2.9-3.3 4.8-4.4 4-3.2 7.7-6.8 11.6-10 1.9-1.3 3.6-2.7 5.1-4.4-0.4-6.8-1.2-13.6-1.6-20.5-0.7-2.9-0.9-5.9-0.4-8.8-0.8-1.2-0.4-1.6 0.4-2.4l0.2 0.4z m141.9 29.6c3.6-2 6 0.8 8.8 2.8l18.8 12.8c7.2-2.4 14.4-5.1 21.6-7.7 3.6-1.2 6-2.8 8.8 0.4 2.4 2.8 0.4 6.4-0.4 8.8-2 6.8-3.6 14-5.6 20.8 4.8 6 10 12 15.2 17.6 2.4 2.8 4.4 5.6 2.8 8.4-1.2 2.8-5.6 2.4-7.7 2.4-7.7 0.4-15.2 0.8-22.4 0.8-4.4 6.8-8.4 13.2-12.8 20-1.6 2.4-4 5.1-7.2 4-2.4-1.9-3.9-4.7-4.4-7.7l-7.2-20.5c-8.4-2-16.8-4.4-25.2-6.4-2.3-1.2-3.6-3.8-3.2-6.4 1.3-1.8 2.9-3.3 4.8-4.4 4-3.2 7.7-6.8 11.6-10 1.9-1.3 3.6-2.7 5.1-4.4-0.4-6.8-1.2-13.6-1.6-20.5-0.7-2.9-0.9-5.9-0.4-8.8-0.5-1.2 0.2-1.6 0.6-2zM150.02053 430c3.6-2 6 0.8 8.8 2.8 6.4 4.4 12.4 8.4 18.8 12.8 7.2-2.4 14.4-5.1 21.6-7.7 3.6-1.2 6-2.8 8.8 0.4 2.4 2.8 0.4 6.4-0.4 8.8-2 6.8-4 14-5.6 20.8 4.8 6 10 11.6 15.2 17.6 2.4 2.8 4.4 5.6 2.8 8.4-1.2 2.8-5.6 2.4-7.7 2.4l-22.4 0.8c-4.4 6.8-8.8 13.6-12.8 20-1.6 2.4-4 5.1-7.2 4-2.2-2-3.8-4.7-4.4-7.7l-7.2-20.5-25.2-6.4c-2.3-1.2-3.6-3.8-3.2-6.4 1.3-1.8 2.9-3.3 4.8-4.4 3.6-3.2 7.7-6.8 11.6-10 1.9-1.3 3.6-2.7 5.1-4.4-0.4-6.8-1.2-13.6-1.6-20.5-0.7-2.9-0.9-5.9-0.4-8.8-0.7-0.8-0.3-1.5 0.6-2z m558.9 414.4c3.6-2.4 2.4-5.6 2-8.8l-1.6-22.4 17.2-14.8c2.8-2.4 5.1-4 4-7.7-1.2-3.2-5.6-3.6-7.7-4-6.8-2-14-3.6-20.8-5.6-2.8-7.2-5.1-14.4-7.7-21.6-1.2-3.6-2.8-6.4-5.6-6.8-2.8-0.4-4.8 3.6-5.6 5.1l-12 19.2-24 1.2c-2.8 0-6.8 0.8-6.8 4.4 0.5 3 2 5.7 4.4 7.7 4.8 5.6 9.2 11.2 14 16.4l-7.2 25.2c-0.3 2.7 1.4 5.2 4 6 2.2-0.1 4.4-0.7 6.4-1.6l14.4-4.8c2.1-0.8 4.2-1.5 6.4-2 5.6 4 11.2 7.7 16.8 11.6 2.2 2.1 4.8 3.6 7.7 4.4 0.5-1.1 0.8-1.1 1.6-1.1h0.1z m-158.8 50c3.6-2.4 2.4-5.6 2-8.8l-1.6-22.4 17.2-14.8c2.8-2.4 5.1-4 4-7.7-1.1-3.7-5.6-3.6-7.7-4-6.8-1.6-14-3.6-20.8-5.6l-7.7-22c-1.2-3.6-2.8-6.4-5.6-6.8-2.8-0.4-4.8 3.6-5.6 5.1l-12 19.2-24 1.2c-2.8 0-6.8 0.8-6.8 4.4 0.5 3 2 5.7 4.4 7.7 4.8 5.6 9.2 11.2 14 16.4l-7.2 25.2c-0.3 2.7 1.4 5.2 4 6 2.2-0.3 4.3-0.9 6.4-1.6l14.4-4.8c2-1 4.2-1.7 6.4-2 5.6 4 11.2 7.7 16.8 11.6 2.2 2.1 4.8 3.6 7.7 4.4 0.4-0.8 0.8-0.8 1.7-0.7z m276.5-159.6c3.6-2.4 2.4-5.6 2-8.8l-1.6-22.4 17.2-14.8c2.8-2.4 5.1-4 4-7.7-1.2-3.2-5.6-3.6-7.7-4-6.8-2-14-3.6-20.8-5.6-2.8-7.2-5.1-14.4-7.7-21.6-1.2-3.6-2.8-6.4-5.6-6.8s-4.8 3.6-5.6 5.1l-12 19.2-24 1.2c-2.8 0-6.8 0.8-6.8 4.4 0.5 3 2 5.7 4.4 7.7 4.8 5.6 9.2 11.2 14 16.4l-7.2 25.2c-0.3 2.7 1.4 5.2 4 6 2.2-0.2 4.4-0.7 6.4-1.6l14.4-4.8c2.1-0.8 4.2-1.5 6.4-2 5.6 4 11.2 7.7 16.8 11.6 2.2 2.1 4.8 3.6 7.7 4.4 0-0.8 0.8-1.2 1.6-1.2l0.1 0.1z m45.6-137.6c3.6-2.4 2.4-5.6 2-8.8l-1.6-22.4 17.2-14.8c2.8-2.4 5.1-4 4-7.7-1.2-3.2-5.6-3.6-7.7-4-6.8-1.6-14-3.6-20.8-5.6l-7.7-22c-1.2-3.6-2.8-6.4-5.6-6.8-2.8-0.4-4.8 3.6-5.6 5.1l-12 19.2-24 1.2c-2.8 0-6.8 0.8-6.8 4.4 0.5 3 2 5.7 4.4 7.7 4.8 5.6 9.2 11.2 14 16.4l-7.2 25.2c-0.3 2.7 1.4 5.2 4 6 2.2-0.3 4.3-0.9 6.4-1.6l14.4-4.8c2.1-0.8 4.2-1.5 6.4-2 5.6 4 11.2 7.7 16.8 11.6 2.2 2.1 4.8 3.6 7.7 4.4 0.2-0.7 0.6-0.7 1.4-0.7h0.3zM402.72053 868c3.6-2.4 2.4-5.6 2-8.8l-1.6-22.4 17.2-14.8c2.8-2.4 5.1-4 4-7.7-1.2-3.2-5.6-3.6-7.7-4-6.8-2-14-3.6-20.8-5.6-2.8-7.2-5.1-14.4-7.7-21.6-1.2-3.6-2.8-6.4-5.6-6.8-2.8-0.4-4.8 3.6-5.6 5.1l-12 19.2-24 1.2c-2.8 0-6.8 0.8-6.8 4.4 0.5 3 2 5.7 4.4 7.7 4.8 5.6 9.2 11.2 14 16.4l-7.2 25.2c-0.3 2.7 1.4 5.2 4 6 2.2-0.3 4.3-0.9 6.4-1.6l14.4-4.8c2.1-0.8 4.2-1.5 6.4-2 5.6 4 11.2 7.7 16.8 11.6 2.2 2.1 4.8 3.6 7.7 4.4 0.5-0.8 1-1.1 1.7-1.1z"
|
||||||
fill="#515151" opacity=".5" p-id="5973"></path>
|
fill="#515151"
|
||||||
|
opacity=".5"
|
||||||
|
p-id="5973"
|
||||||
|
></path>
|
||||||
<path
|
<path
|
||||||
d="M386.42053 590.4l-43.8-75.9L207.02053 592.7l10.2 17.7L334.02053 543l23.4 40.4-90.5 52.2-13.5-23.4-18.7 10.8 53.1 92c9.1 15.8 21.2 19.5 36.4 10.7l98.8-57c6.2-3.6 11-9.3 13.4-16.1-1.4-15.9-6.2-31.2-14.2-45l-21.4 4.8c6.7 10.3 11 21.9 12.8 34-1 3.3-3.2 6-6.1 7.8l-88.3 51c-6.2 3.6-11.1 2.1-14.8-4.3l-27.3-47.4 109.3-63.1z m2.9-103.2l10.4 18.1 65.6-37.9 79.9 138.4 18.6-10.8-55.9-96.9c18.8-0.9 43.2-0.6 73 0.7l1.5-23.1c-29.8-0.3-58.4 0.4-86 2.6l-12.5-21.6 74.9-43.2-10.4-18.1-159.1 91.8zM669.52053 329l38.2 66.2 61.4-35.4-38.1-66.1-61.5 35.3z m72.4 24.2l-26.3 15.2-19-33 26.3-15.2 19 33zM599.02053 356.7l7.9 13.7-23.3 13.5 9.8 17 21.8-12.6c7.5 18.7 6.6 39.6-2.5 57.6l20.7 4.4c10.3-23.1 10.3-49.4 0-72.5l18.8-10.9c6 9.2 10.7 19.2 14.2 29.7 0.3 5-2.6 9.7-7.2 11.7-2.9 1.2-6.4 2.8-10.9 4.9l14.1 14.1c3.7-1.3 7.3-2.9 10.7-4.8 8.6-3.9 14.4-12.2 15.2-21.6-5.4-22.1-14.6-43-27.4-61.8l-36.1 20.8-7.9-13.7-17.9 10.5z m29.9 108.1l10 17.4 53.2-30.7c-7.8 23.7-20.6 45.4-37.5 63.6l20.6 11.1c18.6-24.2 30-53.1 33-83.4l29.8 51.5 18.4-10.7-29.8-51.5c27.4 11.5 57.2 16.3 86.9 14.1l3.5-23.5c-24.7 5.1-50.1 5-74.8-0.1l53.5-30.9-10-17.3-69.3 40-7.3-12.6-18.4 10.7L698.02053 425l-69.1 39.8z"
|
d="M386.42053 590.4l-43.8-75.9L207.02053 592.7l10.2 17.7L334.02053 543l23.4 40.4-90.5 52.2-13.5-23.4-18.7 10.8 53.1 92c9.1 15.8 21.2 19.5 36.4 10.7l98.8-57c6.2-3.6 11-9.3 13.4-16.1-1.4-15.9-6.2-31.2-14.2-45l-21.4 4.8c6.7 10.3 11 21.9 12.8 34-1 3.3-3.2 6-6.1 7.8l-88.3 51c-6.2 3.6-11.1 2.1-14.8-4.3l-27.3-47.4 109.3-63.1z m2.9-103.2l10.4 18.1 65.6-37.9 79.9 138.4 18.6-10.8-55.9-96.9c18.8-0.9 43.2-0.6 73 0.7l1.5-23.1c-29.8-0.3-58.4 0.4-86 2.6l-12.5-21.6 74.9-43.2-10.4-18.1-159.1 91.8zM669.52053 329l38.2 66.2 61.4-35.4-38.1-66.1-61.5 35.3z m72.4 24.2l-26.3 15.2-19-33 26.3-15.2 19 33zM599.02053 356.7l7.9 13.7-23.3 13.5 9.8 17 21.8-12.6c7.5 18.7 6.6 39.6-2.5 57.6l20.7 4.4c10.3-23.1 10.3-49.4 0-72.5l18.8-10.9c6 9.2 10.7 19.2 14.2 29.7 0.3 5-2.6 9.7-7.2 11.7-2.9 1.2-6.4 2.8-10.9 4.9l14.1 14.1c3.7-1.3 7.3-2.9 10.7-4.8 8.6-3.9 14.4-12.2 15.2-21.6-5.4-22.1-14.6-43-27.4-61.8l-36.1 20.8-7.9-13.7-17.9 10.5z m29.9 108.1l10 17.4 53.2-30.7c-7.8 23.7-20.6 45.4-37.5 63.6l20.6 11.1c18.6-24.2 30-53.1 33-83.4l29.8 51.5 18.4-10.7-29.8-51.5c27.4 11.5 57.2 16.3 86.9 14.1l3.5-23.5c-24.7 5.1-50.1 5-74.8-0.1l53.5-30.9-10-17.3-69.3 40-7.3-12.6-18.4 10.7L698.02053 425l-69.1 39.8z"
|
||||||
fill="#515151" opacity=".5" p-id="5974"></path>
|
fill="#515151"
|
||||||
|
opacity=".5"
|
||||||
|
p-id="5974"
|
||||||
|
></path>
|
||||||
</svg>
|
</svg>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="bottom">
|
<div class="bottom">
|
||||||
<a-pagination size="small" pageSize="4" :total="total" :current="page" @change="handleCurrentChange"
|
<a-pagination
|
||||||
@showSizeChange="handlePageSizeChange" :showSizeChanger="false" />
|
size="small"
|
||||||
|
pageSize="4"
|
||||||
|
:total="total"
|
||||||
|
:current="page"
|
||||||
|
@change="handleCurrentChange"
|
||||||
|
@showSizeChange="handlePageSizeChange"
|
||||||
|
:showSizeChanger="false"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<a-empty v-else />
|
<a-empty v-else />
|
||||||
<!-- :title="detailModalTitle" -->
|
<a-modal
|
||||||
<a-modal bodyStyle="padding:0.1rem 0" v-model:visible="detailsVisible"
|
bodyStyle="padding:0.1rem 0"
|
||||||
style="width: 900px" :footer="null" destroyOnClose="true" :maskClosable="false">
|
v-model:visible="detailsVisible"
|
||||||
<template v-slot:title>{{detailModalTitle}}</template>
|
style="width: 1000px"
|
||||||
<apply-details :processDefinitionName="processDefinitionName" :businessKey="businessKey"
|
:footer="null"
|
||||||
:processInstanceId="processInstanceId" :resourceId="resourceId" :refObj="refObj" :showType="showType">
|
destroyOnClose="true"
|
||||||
</apply-details>
|
:maskClosable="false"
|
||||||
|
>
|
||||||
|
<template v-slot:title>
|
||||||
|
{{
|
||||||
|
refObj.description && itShowXiHaiAn
|
||||||
|
? refObj.description + '申请详情'
|
||||||
|
: '申请详情'
|
||||||
|
}}
|
||||||
|
</template>
|
||||||
|
<apply-details
|
||||||
|
:processDefinitionName="processDefinitionName"
|
||||||
|
:businessKey="businessKey"
|
||||||
|
:processInstanceId="processInstanceId"
|
||||||
|
:resourceId="resourceId"
|
||||||
|
:refObj="refObj"
|
||||||
|
:showType="showType"
|
||||||
|
></apply-details>
|
||||||
</a-modal>
|
</a-modal>
|
||||||
<a-modal v-model:visible="visible" title="下架原因" @ok="del()" @cancel="reason = ''">
|
<a-modal
|
||||||
|
v-model:visible="visible"
|
||||||
|
title="下架原因"
|
||||||
|
@ok="del()"
|
||||||
|
@cancel="reason = ''"
|
||||||
|
>
|
||||||
<a-input v-model:value="reason" placeholder="请输入下架原因" />
|
<a-input v-model:value="reason" placeholder="请输入下架原因" />
|
||||||
</a-modal>
|
</a-modal>
|
||||||
<a-modal v-model:visible="videoVisible" title="已申请摄像头列表" @ok="videoVisible = false">
|
<a-modal
|
||||||
<a-table :columns="columns" :data-source="xVideoList" bordered :pagination="{ defaultPageSize: 6 }">
|
v-model:visible="videoVisible"
|
||||||
|
title="已申请摄像头列表"
|
||||||
|
@ok="videoVisible = false"
|
||||||
|
>
|
||||||
|
<a-table
|
||||||
|
:columns="columns"
|
||||||
|
:data-source="xVideoList"
|
||||||
|
bordered
|
||||||
|
:pagination="{ defaultPageSize: 6 }"
|
||||||
|
>
|
||||||
<template #bodyCell="{ column, text }">
|
<template #bodyCell="{ column, text }">
|
||||||
<!-- <template>
|
<!-- <template>
|
||||||
<a>{{ text }}</a>
|
<a>{{ text }}</a>
|
||||||
|
@ -110,14 +190,25 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- 联系方式弹框 -->
|
<!-- 联系方式弹框 -->
|
||||||
<a-modal v-model:visible="phoneVisible" title="提示" @ok="phoneVisible = false">
|
<a-modal
|
||||||
|
v-model:visible="phoneVisible"
|
||||||
|
title="提示"
|
||||||
|
@ok="phoneVisible = false"
|
||||||
|
>
|
||||||
<!-- 工业信息化局那个号,电话配这个号:199 6399 0996 -->
|
<!-- 工业信息化局那个号,电话配这个号:199 6399 0996 -->
|
||||||
<p>请联系工业信息化局,电话:199 6399 0996</p>
|
<p>请联系工业信息化局,电话:199 6399 0996</p>
|
||||||
</a-modal>
|
</a-modal>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import { onMounted, reactive, ref, onBeforeUnmount, h, defineProps } from 'vue'
|
import {
|
||||||
|
onMounted,
|
||||||
|
reactive,
|
||||||
|
ref,
|
||||||
|
onBeforeUnmount,
|
||||||
|
h,
|
||||||
|
defineProps,
|
||||||
|
} from 'vue'
|
||||||
import {
|
import {
|
||||||
getMyProcessInstancePage,
|
getMyProcessInstancePage,
|
||||||
getTabilityapplication,
|
getTabilityapplication,
|
||||||
|
@ -155,15 +246,16 @@ let typeList = ref([
|
||||||
])
|
])
|
||||||
// 西海岸-设备申请
|
// 西海岸-设备申请
|
||||||
let isXiHaiAn = whoShow.itShowXiHaiAn
|
let isXiHaiAn = whoShow.itShowXiHaiAn
|
||||||
|
const itShowXiHaiAn = ref(isXiHaiAn)
|
||||||
const phoneSate = ref([2, 3])
|
const phoneSate = ref([2, 3])
|
||||||
if (isXiHaiAn) {
|
if (isXiHaiAn) {
|
||||||
typeList.value.push('设备申请')
|
typeList.value.push('设备申请')
|
||||||
}
|
}
|
||||||
const typeStrObj = {
|
const typeStrObj = {
|
||||||
'能力上架': 'resourcemountapply',
|
能力上架: 'resourcemountapply',
|
||||||
'能力下架': 'resourcundercarriageapply',
|
能力下架: 'resourcundercarriageapply',
|
||||||
'能力需求': 'abilitydemandapply',
|
能力需求: 'abilitydemandapply',
|
||||||
'需求评论': 'comment_review',
|
需求评论: 'comment_review',
|
||||||
}
|
}
|
||||||
let tabList = ref(['全部', '审核中', '审核完成'])
|
let tabList = ref(['全部', '审核中', '审核完成'])
|
||||||
const contentList = reactive({ data: [] })
|
const contentList = reactive({ data: [] })
|
||||||
|
@ -241,16 +333,10 @@ function changeApplyState(item, index) {
|
||||||
}
|
}
|
||||||
|
|
||||||
const cilckRowData = ref({})
|
const cilckRowData = ref({})
|
||||||
let detailModalTitle = '申请详情';
|
|
||||||
const showDetail = (item) => {
|
const showDetail = (item) => {
|
||||||
cilckRowData.value = item;
|
cilckRowData.value = item
|
||||||
// 西海岸-申请时间过期,提示
|
// 西海岸-申请时间过期,提示
|
||||||
if (isXiHaiAn) {
|
if (isXiHaiAn) {
|
||||||
// 西海岸、单兵无人机设备
|
|
||||||
if (item.tbDeviceDTO) {
|
|
||||||
detailModalTitle = item.tbDeviceDTO.name ? item.tbDeviceDTO.name + '申请详情' : '申请详情'
|
|
||||||
}
|
|
||||||
console.log('detailModalTitle------------>', detailModalTitle);
|
|
||||||
if (item.expireDate) {
|
if (item.expireDate) {
|
||||||
let diff = moment().diff(moment(item.expireDate), 'seconds')
|
let diff = moment().diff(moment(item.expireDate), 'seconds')
|
||||||
if (diff > 0) {
|
if (diff > 0) {
|
||||||
|
@ -277,7 +363,6 @@ const showDetail = (item) => {
|
||||||
if (res.data.code == 0) {
|
if (res.data.code == 0) {
|
||||||
refObj.value = res.data.data
|
refObj.value = res.data.data
|
||||||
detailsVisible.value = true
|
detailsVisible.value = true
|
||||||
processDefinitionName.value = item.processDefinitionName
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.catch((err) => {})
|
.catch((err) => {})
|
||||||
|
@ -650,11 +735,9 @@ const getDeviceNum = () => {
|
||||||
num.value.finished = finished.total || ''
|
num.value.finished = finished.total || ''
|
||||||
numFlag.value = false
|
numFlag.value = false
|
||||||
})
|
})
|
||||||
.catch((err) => {
|
.catch((err) => {})
|
||||||
})
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
const showPhoneModal = () => {
|
const showPhoneModal = () => {
|
||||||
phoneVisible.value = true
|
phoneVisible.value = true
|
||||||
}
|
}
|
||||||
|
@ -670,7 +753,7 @@ onMounted(() => {
|
||||||
getApplyList()
|
getApplyList()
|
||||||
|
|
||||||
if (props.tabTypeName) {
|
if (props.tabTypeName) {
|
||||||
let _index = typeList.value.findIndex(v => v == props.tabTypeName)
|
let _index = typeList.value.findIndex((v) => v == props.tabTypeName)
|
||||||
changeType(props.tabTypeName, _index != -1 ? _index : 0)
|
changeType(props.tabTypeName, _index != -1 ? _index : 0)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
|
@ -650,17 +650,19 @@ const ceshiFunction = () => {
|
||||||
}
|
}
|
||||||
// delOne delList handleDelete
|
// delOne delList handleDelete
|
||||||
const handleDelete = (item, index) => {
|
const handleDelete = (item, index) => {
|
||||||
|
console.log('item, index------------>', item, index);
|
||||||
|
|
||||||
console.log('item------------>', item);
|
console.log('item------------>', item);
|
||||||
let delArr = [];
|
let delArr = [];
|
||||||
// 单个删除
|
// 单个删除
|
||||||
if (item) {
|
if (index) {
|
||||||
delArr = [item.id]
|
delArr = [item.id]
|
||||||
} else {
|
} else {
|
||||||
// 批量删除
|
// 批量删除
|
||||||
if (checkedListAbility.value.length == 0) {
|
if (checkedListAbility.value.length == 0) {
|
||||||
return message.warning('请先选择需要操作的数据!')
|
return message.warning('请先选择需要操作的数据!')
|
||||||
} else {
|
} else {
|
||||||
delArr = checkedListAbility.value.map(v=>v.id)
|
delArr = checkedListAbility.value
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
sgcDel({
|
sgcDel({
|
||||||
|
|
|
@ -85,9 +85,6 @@ export default defineComponent({
|
||||||
}
|
}
|
||||||
|
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
if (itShowXiHaiAn) {
|
|
||||||
handleClick(menuList[0])
|
|
||||||
} else {
|
|
||||||
if (type) {
|
if (type) {
|
||||||
console.log('type---------->', type)
|
console.log('type---------->', type)
|
||||||
let _obj = menuList.find(v => v.key == type)
|
let _obj = menuList.find(v => v.key == type)
|
||||||
|
@ -99,7 +96,6 @@ export default defineComponent({
|
||||||
handleClick(menuList[0])
|
handleClick(menuList[0])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
})
|
})
|
||||||
|
|
||||||
return {
|
return {
|
||||||
|
|
Loading…
Reference in New Issue