Compare commits
38 Commits
502068705b
...
8e89d8d1b0
Author | SHA1 | Date |
---|---|---|
wuhongjian | 8e89d8d1b0 | |
wuhongjian | e96c0c11b1 | |
wuhongjian | 3f6e432d0b | |
wuhongjian | 811e80a27c | |
unknown | 71041b60f2 | |
guoyue | a7ac2e8a1e | |
guoyue | 42af2e980b | |
guoyue | dd100d3867 | |
unknown | 05964a73e8 | |
a0049873 | c5fc29a498 | |
guoyue | 5f3aad2539 | |
guoyue | 2ebec87514 | |
guoyue | 0974118d3b | |
guoyue | adf964a400 | |
guoyue | 8db5b8bee5 | |
a0049873 | 21431958f0 | |
guoyue | b66a781b81 | |
guoyue | 587c728a74 | |
guoyue | ea2afd08c9 | |
guoyue | e0bde554b9 | |
guoyue | 98d1b070ab | |
guoyue | 5ac06ce8d6 | |
unknown | f20aac7430 | |
unknown | e26937bc37 | |
a0049873 | 4d65cc11e9 | |
a0049873 | 2c1070d4e2 | |
guoyue | 29ace46c69 | |
guoyue | fe85cd370f | |
guoyue | 0d402302f7 | |
guoyue | 34ac0b016b | |
guoyue | 4354abdf25 | |
gongjiale | 033e123edc | |
gongjiale | 2484cda43d | |
guoyue | 9c8785b8ce | |
guoyue | e34f47680b | |
guoyue | a71fc5326e | |
guoyue | 9bba3077ca | |
guoyue | 4580df0182 |
|
@ -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,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:22:45
|
||||||
* @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,63 +35,71 @@
|
||||||
|
|
||||||
<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
|
||||||
for(var i=0;i<menuList.length;i++){
|
console.log('menuList====>', menuList)
|
||||||
let menu=menuList[i];
|
console.log('this.numObject====>', this.numObject)
|
||||||
if(menu.id=='1541261628388888578'){//我的待办
|
for (var i = 0; i < menuList.length; i++) {
|
||||||
let daibanNum=0
|
const menu = menuList[i]
|
||||||
for(let j=0;j<menu.children.length;j++){
|
if (menu.id == '1541261628388888578') { // 我的待办
|
||||||
let children=menu.children[j]
|
let daibanNum = 0
|
||||||
if(children.id=="1541261780432408577"){//能力申请 v2
|
for (let j = 0; j < menu.children.length; j++) {
|
||||||
//西海岸 v2 市局v3
|
const children = menu.children[j]
|
||||||
children.total= returnLocationStr() == 'qingdao' ? Number(this.numObject.abilityprocess_v3) : Number(this.numObject.abilityprocess_v2)
|
if (children.id == '1541261780432408577') { // 能力申请 v2
|
||||||
daibanNum=Number(daibanNum)+Number(children.total)
|
// 西海岸 v2 市局v3
|
||||||
} if(children.id=="1559376285703081986"){//会议室审核
|
children.total = returnLocationStr() == 'qingdao' ? Number(this.numObject.abilityprocess_v3) : Number(this.numObject.abilityprocess_v2)
|
||||||
children.total=Number(this.numObject.meetingroom_book)
|
daibanNum = Number(daibanNum) + Number(children.total)
|
||||||
daibanNum=Number(daibanNum)+Number(children.total)
|
} if (children.id == '1559376285703081986') { // 会议室审核
|
||||||
}if(children.id=="1545292602084827138"){//能力资源上架
|
children.total = Number(this.numObject.meetingroom_book)
|
||||||
children.total=Number(this.numObject.resourcemountapply)
|
daibanNum = Number(daibanNum) + Number(children.total)
|
||||||
daibanNum=Number(daibanNum)+Number(children.total)
|
} if (children.id == '1545292602084827138') { // 能力资源上架
|
||||||
}if(children.id=="1545312045695377410"){//能力需求申请
|
children.total = Number(this.numObject.resourcemountapply)
|
||||||
children.total=Number(this.numObject.abilitydemandapply)
|
daibanNum = Number(daibanNum) + Number(children.total)
|
||||||
daibanNum=Number(daibanNum)+Number(children.total)
|
} if (children.id == '1545312045695377410') { // 能力需求申请
|
||||||
}if(children.id=="1545313018614521857"){//能力需求下架
|
children.total = Number(this.numObject.abilitydemandapply)
|
||||||
children.total=Number(this.numObject.resourcundercarriageapply)
|
daibanNum = Number(daibanNum) + Number(children.total)
|
||||||
daibanNum=Number(daibanNum)+Number(children.total)
|
} if (children.id == '1545313018614521857') { // 能力需求下架
|
||||||
}if(children.id=="1545313754106699777"){//评论审核
|
children.total = Number(this.numObject.resourcundercarriageapply)
|
||||||
children.total=Number(this.numObject.comment_review)
|
daibanNum = Number(daibanNum) + Number(children.total)
|
||||||
daibanNum=Number(daibanNum)+Number(children.total)
|
} if (children.id == '1545313754106699777') { // 评论审核
|
||||||
}if(children.id=="1554294862931562498"){//会议室 暂无
|
children.total = Number(this.numObject.comment_review)
|
||||||
children.total=0
|
daibanNum = Number(daibanNum) + Number(children.total)
|
||||||
daibanNum=Number(daibanNum)+Number(children.total)
|
} if (children.id == '1554294862931562498') { // 会议室 暂无
|
||||||
|
children.total = 0
|
||||||
|
daibanNum = Number(daibanNum) + Number(children.total)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
menu.total=daibanNum
|
menu.total = daibanNum
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
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>
|
|
@ -88,16 +88,49 @@
|
||||||
<!--审批详情-->
|
<!--审批详情-->
|
||||||
<div>
|
<div>
|
||||||
<div class="title">审批详情</div>
|
<div class="title">审批详情</div>
|
||||||
<div v-for="item in this.dataSource.data" :key="item">
|
<!-- <div v-for="item in this.dataSource.data" :key="item"> -->
|
||||||
<a-table :dataSource="item[1]" :columns="columns">
|
<!-- <a-table :dataSource="item[1]" :columns="columns">
|
||||||
<template #bodyCell="{ column, text }">
|
<template #bodyCell="{ column, text }">
|
||||||
<template v-if="column.dataIndex === 'name'">
|
<template v-if="column.dataIndex === 'name'">
|
||||||
<a>{{ text }}</a>
|
<a>{{ text }}</a>
|
||||||
</template>
|
</template>
|
||||||
</template>
|
</template>
|
||||||
</a-table>
|
</a-table> -->
|
||||||
</div>
|
<el-table
|
||||||
|
:data="dataSource.data[0][1]"
|
||||||
|
style="width: 100%">
|
||||||
|
<el-table-column
|
||||||
|
prop="activityName"
|
||||||
|
label="任务名称"
|
||||||
|
width="180">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="assigneeName"
|
||||||
|
label="处理人"
|
||||||
|
width="120">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="startTime"
|
||||||
|
label="任务开始时间"
|
||||||
|
width="180">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="endTime"
|
||||||
|
label="任务结束时间"
|
||||||
|
width="180">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="comment"
|
||||||
|
label="审核意见" show-overflow-tooltip>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="duration"
|
||||||
|
label="任务时长"
|
||||||
|
width="100">
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
</div>
|
</div>
|
||||||
|
<!-- </div> -->
|
||||||
<!-- <div else>
|
<!-- <div else>
|
||||||
gai
|
gai
|
||||||
</div> -->
|
</div> -->
|
||||||
|
@ -228,6 +261,7 @@ export default {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
console.log("this.dataSource.data[0]========",this.dataSource.data[0][1])
|
||||||
},
|
},
|
||||||
// init () {
|
// init () {
|
||||||
// this.visible = true
|
// this.visible = true
|
||||||
|
|
|
@ -38,7 +38,7 @@
|
||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!--审核状态-->
|
<!--审核状态-->
|
||||||
<el-form-item>
|
<el-form-item >
|
||||||
<span>审核状态:</span>
|
<span>审核状态:</span>
|
||||||
<el-select
|
<el-select
|
||||||
v-model="examineStatus"
|
v-model="examineStatus"
|
||||||
|
@ -46,8 +46,9 @@
|
||||||
clearable
|
clearable
|
||||||
>
|
>
|
||||||
<el-option label="全部" value="-1"></el-option>
|
<el-option label="全部" value="-1"></el-option>
|
||||||
<el-option label="审核完成" value="1"></el-option>
|
|
||||||
<el-option label="审核中" value="0"></el-option>
|
<el-option label="审核中" value="0"></el-option>
|
||||||
|
<el-option label="通过" value="1"></el-option>
|
||||||
|
<el-option label="不通过" value="2"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
|
@ -371,8 +372,9 @@ export default {
|
||||||
{ name: '组件服务', key: 1 },
|
{ name: '组件服务', key: 1 },
|
||||||
{ name: '应用资源', key: 2 },
|
{ name: '应用资源', key: 2 },
|
||||||
{ name: '基础设施', key: 3 },
|
{ name: '基础设施', key: 3 },
|
||||||
{ name: '数据资源', key: 3 },
|
{ name: '数据资源', key: 4 },
|
||||||
{ name: '知识库', key: 3 }
|
{ name: '知识库', key: 5 },
|
||||||
|
{ name: '会议室', value: 6}
|
||||||
],
|
],
|
||||||
tableData: [],
|
tableData: [],
|
||||||
tableData2: [
|
tableData2: [
|
||||||
|
@ -396,7 +398,8 @@ export default {
|
||||||
{ name: '图层服务', value: 2 },
|
{ name: '图层服务', value: 2 },
|
||||||
{ name: '通用开发组件', value: 3 },
|
{ name: '通用开发组件', value: 3 },
|
||||||
{ name: '页面开发组件', value: 4 },
|
{ name: '页面开发组件', value: 4 },
|
||||||
{ name: '应用资源', value: 5 }
|
{ name: '应用资源', value: 5 },
|
||||||
|
{ name: '会议室', value: 6}
|
||||||
], // 类型备选列表
|
], // 类型备选列表
|
||||||
detailFlag: false, // 明细返回按钮显示标志位
|
detailFlag: false, // 明细返回按钮显示标志位
|
||||||
startDate: '', // 开始时间
|
startDate: '', // 开始时间
|
||||||
|
@ -478,7 +481,9 @@ export default {
|
||||||
} else if (this.examineStatus == '0') {
|
} else if (this.examineStatus == '0') {
|
||||||
this.status = '审核中'
|
this.status = '审核中'
|
||||||
} else if (this.examineStatus == '1') {
|
} else if (this.examineStatus == '1') {
|
||||||
this.status = '审核完成'
|
this.status = '通过'
|
||||||
|
}else if (this.examineStatus == '2') {
|
||||||
|
this.status = '不通过'
|
||||||
} else {
|
} else {
|
||||||
this.status = this.examineStatus
|
this.status = this.examineStatus
|
||||||
}
|
}
|
||||||
|
@ -534,7 +539,9 @@ export default {
|
||||||
} else if (this.examineStatus == '0') {
|
} else if (this.examineStatus == '0') {
|
||||||
this.status = '审核中'
|
this.status = '审核中'
|
||||||
} else if (this.examineStatus == '1') {
|
} else if (this.examineStatus == '1') {
|
||||||
this.status = '审核完成'
|
this.status = '通过'
|
||||||
|
} else if (this.examineStatus == '2') {
|
||||||
|
this.status = '不通过'
|
||||||
} else {
|
} else {
|
||||||
this.status = this.examineStatus
|
this.status = this.examineStatus
|
||||||
}
|
}
|
||||||
|
@ -627,13 +634,15 @@ export default {
|
||||||
},
|
},
|
||||||
// 能力上架明细
|
// 能力上架明细
|
||||||
getOneDetail (page) {
|
getOneDetail (page) {
|
||||||
var passAndReview = '' // 转变"审核完成"字段为通过
|
var passAndReview = '' // 转变"通过"字段为通过
|
||||||
if (this.examineStatus == '-1') {
|
if (this.examineStatus == '-1') {
|
||||||
this.status = ''
|
this.status = ''
|
||||||
} else if (this.examineStatus == '0') {
|
} else if (this.examineStatus == '0') {
|
||||||
this.status = '审核中'
|
this.status = '审核中'
|
||||||
} else if (this.examineStatus == '1') {
|
} else if (this.examineStatus == '1') {
|
||||||
this.status = '通过'
|
this.status = '通过'
|
||||||
|
} else if (this.examineStatus == '2') {
|
||||||
|
this.status = '不通过'
|
||||||
} else {
|
} else {
|
||||||
this.status = this.examineStatus
|
this.status = this.examineStatus
|
||||||
}
|
}
|
||||||
|
@ -657,13 +666,15 @@ export default {
|
||||||
},
|
},
|
||||||
// 能力使用明细
|
// 能力使用明细
|
||||||
getTwoDetail (page) {
|
getTwoDetail (page) {
|
||||||
var passAndReview = '' // 转变"审核完成"字段为通过
|
var passAndReview = '' // 转变"通过"字段为通过
|
||||||
if (this.examineStatus == '-1') {
|
if (this.examineStatus == '-1') {
|
||||||
this.status = ''
|
this.status = ''
|
||||||
} else if (this.examineStatus == '0') {
|
} else if (this.examineStatus == '0') {
|
||||||
this.status = '审核中'
|
this.status = '审核中'
|
||||||
} else if (this.examineStatus == '1') {
|
} else if (this.examineStatus == '1') {
|
||||||
this.status = '通过'
|
this.status = '通过'
|
||||||
|
} else if (this.examineStatus == '2') {
|
||||||
|
this.status = '不通过'
|
||||||
} else {
|
} else {
|
||||||
this.status = this.examineStatus
|
this.status = this.examineStatus
|
||||||
}
|
}
|
||||||
|
|
|
@ -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>
|
||||||
|
@ -144,7 +125,7 @@ import bus from '@/views/bus.js'
|
||||||
export default {
|
export default {
|
||||||
// 注入公共方法
|
// 注入公共方法
|
||||||
mixins: [processModule],
|
mixins: [processModule],
|
||||||
data () {
|
data() {
|
||||||
return {
|
return {
|
||||||
dialogVisible: false,
|
dialogVisible: false,
|
||||||
dialogType: '',
|
dialogType: '',
|
||||||
|
@ -173,7 +154,7 @@ export default {
|
||||||
agreeOrList: '同意'
|
agreeOrList: '同意'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created () {
|
created() {
|
||||||
// 将业务KEY赋值给表单
|
// 将业务KEY赋值给表单
|
||||||
console.log('params=================>', this.$route, this.$route.params)
|
console.log('params=================>', this.$route, this.$route.params)
|
||||||
this.dataForm.taskId = this.$route.params.taskId
|
this.dataForm.taskId = this.$route.params.taskId
|
||||||
|
@ -207,7 +188,7 @@ export default {
|
||||||
RenProcessDetail
|
RenProcessDetail
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
init () {
|
init() {
|
||||||
// this.visible = true
|
// this.visible = true
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
// this.$refs.dataForm.resetFields()
|
// this.$refs.dataForm.resetFields()
|
||||||
|
@ -219,23 +200,23 @@ export default {
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
showDialog (title) {
|
showDialog(title) {
|
||||||
this.dialogVisible = true
|
this.dialogVisible = true
|
||||||
this.dialogType = title
|
this.dialogType = title
|
||||||
},
|
},
|
||||||
handleClose (done) {
|
handleClose(done) {
|
||||||
this.$confirm('确认关闭?')
|
this.$confirm('确认关闭?')
|
||||||
.then((_) => {
|
.then((_) => {
|
||||||
this.input = ''
|
this.input = ''
|
||||||
done()
|
done()
|
||||||
})
|
})
|
||||||
.catch((_) => {})
|
.catch((_) => { })
|
||||||
},
|
},
|
||||||
handleClose2 () {
|
handleClose2() {
|
||||||
this.dialogVisible = false
|
this.dialogVisible = false
|
||||||
this.input = ''
|
this.input = ''
|
||||||
},
|
},
|
||||||
downloadFile2 (url) {
|
downloadFile2(url) {
|
||||||
console.log(window.SITE_CONFIG.previewUrl)
|
console.log(window.SITE_CONFIG.previewUrl)
|
||||||
window.open(
|
window.open(
|
||||||
window.SITE_CONFIG.previewUrl +
|
window.SITE_CONFIG.previewUrl +
|
||||||
|
@ -244,7 +225,7 @@ export default {
|
||||||
)
|
)
|
||||||
},
|
},
|
||||||
// 获取信息
|
// 获取信息
|
||||||
getInfo () {
|
getInfo() {
|
||||||
let params = ''
|
let params = ''
|
||||||
if (this.dataForm.taskId) {
|
if (this.dataForm.taskId) {
|
||||||
params = `taskId=${this.dataForm.taskId}`
|
params = `taskId=${this.dataForm.taskId}`
|
||||||
|
@ -307,7 +288,7 @@ export default {
|
||||||
this.dataList.push(obj)
|
this.dataList.push(obj)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.catch(() => {})
|
.catch(() => { })
|
||||||
} else {
|
} else {
|
||||||
params = `instanceId=${this.dataForm.instanceId}`
|
params = `instanceId=${this.dataForm.instanceId}`
|
||||||
this.$http
|
this.$http
|
||||||
|
@ -359,11 +340,11 @@ export default {
|
||||||
this.dataList.push(obj)
|
this.dataList.push(obj)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.catch(() => {})
|
.catch(() => { })
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
// 申请能力
|
// 申请能力
|
||||||
applyData () {
|
applyData() {
|
||||||
this.$http
|
this.$http
|
||||||
.get(`/resource/select/${this.dataForm.instanceId}`)
|
.get(`/resource/select/${this.dataForm.instanceId}`)
|
||||||
.then(({ data: res }) => {
|
.then(({ data: res }) => {
|
||||||
|
@ -375,7 +356,7 @@ export default {
|
||||||
// this.dataForm.content = res.data
|
// this.dataForm.content = res.data
|
||||||
// console.log(this.dataForm, 'ela')
|
// console.log(this.dataForm, 'ela')
|
||||||
})
|
})
|
||||||
.catch(() => {})
|
.catch(() => { })
|
||||||
},
|
},
|
||||||
// 同意与退回
|
// 同意与退回
|
||||||
agreeOrNot: debounce(
|
agreeOrNot: debounce(
|
||||||
|
@ -412,7 +393,7 @@ export default {
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
.catch(() => {})
|
.catch(() => { })
|
||||||
this.tabRemoveHandle(data)
|
this.tabRemoveHandle(data)
|
||||||
} else {
|
} else {
|
||||||
this.$message.error('请输入审批意见!')
|
this.$message.error('请输入审批意见!')
|
||||||
|
@ -455,7 +436,7 @@ export default {
|
||||||
1000,
|
1000,
|
||||||
{ leading: true, trailing: false }
|
{ leading: true, trailing: false }
|
||||||
),
|
),
|
||||||
tabRemoveHandle (tabName) {
|
tabRemoveHandle(tabName) {
|
||||||
console.log(tabName, 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa')
|
console.log(tabName, 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa')
|
||||||
if (tabName === 'home') {
|
if (tabName === 'home') {
|
||||||
return false
|
return false
|
||||||
|
@ -482,13 +463,19 @@ export default {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
// 启动流程出错回调
|
// 启动流程出错回调
|
||||||
startProcessErrorCallback (data) {
|
startProcessErrorCallback(data) {
|
||||||
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">
|
||||||
|
|
Binary file not shown.
|
@ -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>
|
||||||
|
|
|
@ -145,7 +145,6 @@
|
||||||
></a-select>
|
></a-select>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<a-form-item
|
<a-form-item
|
||||||
label="需求依据"
|
label="需求依据"
|
||||||
|
@ -162,20 +161,50 @@
|
||||||
/>
|
/>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!-- 西海岸--附件上传 -->
|
||||||
|
<div v-if="iskfq && isXiHaiAn">
|
||||||
|
<a-row style="margin-top: 0.4rem">
|
||||||
|
<a-col :span="24">
|
||||||
|
<a-form-item
|
||||||
|
name="attachment"
|
||||||
|
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>
|
||||||
|
<upload-outlined>选择上传附件</upload-outlined>
|
||||||
|
</a-button>
|
||||||
|
<span>
|
||||||
|
支持doc、docx、PDF等格式支撑材料上传,文件大小不超过100M
|
||||||
|
</span>
|
||||||
|
</a-upload>
|
||||||
|
</a-form-item>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
<a-row>
|
||||||
|
<a-col :span="24" style="margin-left: 106px">
|
||||||
|
<a
|
||||||
|
href="/static/download/感知资源申请表.doc"
|
||||||
|
download="感知资源申请表"
|
||||||
|
>
|
||||||
|
感知资源申请表模板下载
|
||||||
|
</a>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="bottom-btn">
|
<div class="bottom-btn">
|
||||||
<a-button
|
<a-button
|
||||||
style="
|
class="cancel-apply"
|
||||||
width: 80px;
|
|
||||||
height: 38px;
|
|
||||||
margin-right: 20px;
|
|
||||||
background: #e1edfa;
|
|
||||||
color: #0087ff;
|
|
||||||
font-size: 14px;
|
|
||||||
border-radius: 6px;
|
|
||||||
border: none;
|
|
||||||
padding: 0;
|
|
||||||
text-align: center;
|
|
||||||
"
|
|
||||||
type="primary"
|
type="primary"
|
||||||
html-type="cancle"
|
html-type="cancle"
|
||||||
@click="resetFields()"
|
@click="resetFields()"
|
||||||
|
@ -183,17 +212,7 @@
|
||||||
退出申请
|
退出申请
|
||||||
</a-button>
|
</a-button>
|
||||||
<a-button
|
<a-button
|
||||||
style="
|
class="confirm-apply"
|
||||||
width: 80px;
|
|
||||||
height: 38px;
|
|
||||||
background: #0087ff;
|
|
||||||
color: #fff;
|
|
||||||
font-size: 14px;
|
|
||||||
border-radius: 6px;
|
|
||||||
border: none;
|
|
||||||
padding: 0;
|
|
||||||
text-align: center;
|
|
||||||
"
|
|
||||||
type="primary"
|
type="primary"
|
||||||
html-type="submit"
|
html-type="submit"
|
||||||
@click="processStartHandle()"
|
@click="processStartHandle()"
|
||||||
|
@ -241,6 +260,7 @@
|
||||||
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 {
|
||||||
|
@ -252,6 +272,8 @@
|
||||||
},
|
},
|
||||||
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')))
|
||||||
|
@ -279,6 +301,7 @@
|
||||||
label: '90天',
|
label: '90天',
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
|
const apiURL = window.SITE_CONFIG.apiURL
|
||||||
|
|
||||||
if (!applyAll) {
|
if (!applyAll) {
|
||||||
list.value.map((item) => {
|
list.value.map((item) => {
|
||||||
|
@ -307,6 +330,18 @@
|
||||||
const isXiHaiAn = ref(whoShow.itShowXiHaiAn)
|
const isXiHaiAn = ref(whoShow.itShowXiHaiAn)
|
||||||
// 西海岸-判断是否是基础设施-摄像头
|
// 西海岸-判断是否是基础设施-摄像头
|
||||||
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 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 &&
|
||||||
|
@ -560,6 +595,7 @@
|
||||||
handleWrjApply(formName)
|
handleWrjApply(formName)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
submitApply(formName).then((res) => {
|
submitApply(formName).then((res) => {
|
||||||
message.success('申请提交成功,请到消息中心查看!')
|
message.success('申请提交成功,请到消息中心查看!')
|
||||||
console.log('能力申请================>', res)
|
console.log('能力申请================>', res)
|
||||||
|
@ -726,34 +762,6 @@
|
||||||
])
|
])
|
||||||
const systemOptions = ref([])
|
const systemOptions = ref([])
|
||||||
const systemOptions2 = ref([])
|
const systemOptions2 = ref([])
|
||||||
const handleChange = (info) => {
|
|
||||||
if (info.file.status !== 'uploading') {
|
|
||||||
// console.log(info.file, info.fileList)
|
|
||||||
}
|
|
||||||
if (info.file.status === 'done') {
|
|
||||||
message.success(`${info.file.name} 上传成功`)
|
|
||||||
formName.enclosure = info.file.response.data
|
|
||||||
formName.enclosureName = info.file.name
|
|
||||||
} else if (info.file.status === 'error') {
|
|
||||||
message.error(`${info.file.name} 上传失败`)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
const beforeUpload = (file) => {
|
|
||||||
const isPNG =
|
|
||||||
file.type === 'image/png' ||
|
|
||||||
'image/doc' ||
|
|
||||||
'image/docx' ||
|
|
||||||
'image/jpg' ||
|
|
||||||
'image/png' ||
|
|
||||||
'image/jpeg' ||
|
|
||||||
'image/pdf' ||
|
|
||||||
'image/xlxs' ||
|
|
||||||
'image/ppt'
|
|
||||||
if (!isPNG) {
|
|
||||||
message.error(`上传失败`)
|
|
||||||
}
|
|
||||||
return isPNG || Upload.LIST_IGNORE
|
|
||||||
}
|
|
||||||
const fileList = ref([])
|
const fileList = ref([])
|
||||||
// 应用系统下拉
|
// 应用系统下拉
|
||||||
const systemHandleChange = (value) => {
|
const systemHandleChange = (value) => {
|
||||||
|
@ -782,11 +790,14 @@
|
||||||
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)
|
||||||
}
|
}
|
||||||
|
@ -868,9 +879,22 @@
|
||||||
}
|
}
|
||||||
soldierApply(_data)
|
soldierApply(_data)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
if (res.data.code == 0) {
|
if (res.data.msg === 'success') {
|
||||||
message.success(res.data.msg)
|
message.success('申请提交成功,请到消息中心查看!')
|
||||||
jumpToDetailsPageconetent()
|
setTimeout(() => {
|
||||||
|
router.push({
|
||||||
|
path: '/DetailsPageconetent',
|
||||||
|
query: {
|
||||||
|
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,
|
||||||
|
},
|
||||||
|
})
|
||||||
|
}, 1000)
|
||||||
} else {
|
} else {
|
||||||
message.error('申请失败!')
|
message.error('申请失败!')
|
||||||
}
|
}
|
||||||
|
@ -880,6 +904,14 @@
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//文件上传成功回调
|
||||||
|
const roomUpload = (response) => {
|
||||||
|
if (response.file.response !== undefined) {
|
||||||
|
fileList.value = response.fileList
|
||||||
|
formName.attachment = response.file.response.data
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return {
|
return {
|
||||||
deptIdChangeFunction,
|
deptIdChangeFunction,
|
||||||
formRef,
|
formRef,
|
||||||
|
@ -897,11 +929,11 @@
|
||||||
headers: {
|
headers: {
|
||||||
authorization: 'authorization-text',
|
authorization: 'authorization-text',
|
||||||
},
|
},
|
||||||
handleChange,
|
// handleChange,
|
||||||
applySuccess,
|
applySuccess,
|
||||||
disabled,
|
disabled,
|
||||||
baseURL,
|
baseURL,
|
||||||
beforeUpload,
|
// beforeUpload,
|
||||||
dataList,
|
dataList,
|
||||||
systemHandleChange,
|
systemHandleChange,
|
||||||
systemHandleSearch,
|
systemHandleSearch,
|
||||||
|
@ -915,6 +947,9 @@
|
||||||
isCamera,
|
isCamera,
|
||||||
isXiHaiAn,
|
isXiHaiAn,
|
||||||
expireDateOptions,
|
expireDateOptions,
|
||||||
|
apiURL,
|
||||||
|
roomUpload,
|
||||||
|
iskfq,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
@ -1021,4 +1056,29 @@
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
// position: fixed;
|
// position: fixed;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.cancel-apply {
|
||||||
|
width: 80px;
|
||||||
|
height: 38px;
|
||||||
|
margin-right: 20px;
|
||||||
|
background: #e1edfa;
|
||||||
|
color: #0087ff;
|
||||||
|
font-size: 14px;
|
||||||
|
border-radius: 6px;
|
||||||
|
border: none;
|
||||||
|
padding: 0;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.confirm-apply {
|
||||||
|
width: 80px;
|
||||||
|
height: 38px;
|
||||||
|
background: #0087ff;
|
||||||
|
color: #fff;
|
||||||
|
font-size: 14px;
|
||||||
|
border-radius: 6px;
|
||||||
|
border: none;
|
||||||
|
padding: 0;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -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,58 +82,54 @@
|
||||||
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>
|
||||||
<script setup>
|
<script setup>
|
||||||
import { ref, onMounted, onBeforeUnmount, defineProps } from 'vue'
|
import { ref, onMounted, onBeforeUnmount, defineProps } from 'vue'
|
||||||
import { getUserInfo } from '@/api/user'
|
import { getUserInfo } from '@/api/user'
|
||||||
import { recordRoute } from '@/config'
|
import { recordRoute } from '@/config'
|
||||||
import { useRoute, useRouter } from 'vue-router'
|
import { useRoute, useRouter } from 'vue-router'
|
||||||
import { mynotice } from '@/api/home'
|
import { mynotice } from '@/api/home'
|
||||||
import { useStore } from 'vuex'
|
import { useStore } from 'vuex'
|
||||||
import { getSgcTotal } from '@/api/home'
|
import { getSgcTotal } from '@/api/home'
|
||||||
import Cookies from 'js-cookie'
|
import Cookies from 'js-cookie'
|
||||||
import mybus from '@/myplugins/mybus'
|
import mybus from '@/myplugins/mybus'
|
||||||
import { DETAIL_PAGE_CONTENT_DEFAULT_TAB } from '@/global/GlobalConfig.js'
|
import { DETAIL_PAGE_CONTENT_DEFAULT_TAB } from '@/global/GlobalConfig.js'
|
||||||
import { message } from 'ant-design-vue'
|
import { message } from 'ant-design-vue'
|
||||||
|
|
||||||
const store = useStore()
|
const store = useStore()
|
||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
const route = useRoute()
|
const route = useRoute()
|
||||||
const itShowXiHaiAn = ref(whoShow.itShowXiHaiAn)
|
const itShowXiHaiAn = ref(whoShow.itShowXiHaiAn)
|
||||||
|
|
||||||
// 用户信息
|
// 用户信息
|
||||||
const user = ref({
|
const user = ref({
|
||||||
username: store.getters['user/username'],
|
username: store.getters['user/username'],
|
||||||
realName: store.getters['user/realName'],
|
realName: store.getters['user/realName'],
|
||||||
})
|
})
|
||||||
const select = ref(router.currentRoute.value.name)
|
const select = ref(router.currentRoute.value.name)
|
||||||
const mynoticeFlag = ref(false)
|
const mynoticeFlag = ref(false)
|
||||||
const mynoticeData = ref([])
|
const mynoticeData = ref([])
|
||||||
const navList = ref(navListManagement.navList)
|
const navList = ref(navListManagement.navList)
|
||||||
const backFlag = ref(true)
|
const backFlag = ref(true)
|
||||||
getUserInfo().then((res) => {
|
getUserInfo().then((res) => {
|
||||||
if (
|
if (
|
||||||
res.data.data.roleIdList.length == 0 &&
|
res.data.data.roleIdList.length == 0 &&
|
||||||
res.data.data.superAdmin === 0
|
res.data.data.superAdmin === 0
|
||||||
) {
|
) {
|
||||||
backFlag.value = false
|
backFlag.value = false
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
console.log('navList------------>', navList)
|
console.log('navList------------>', navList)
|
||||||
|
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
showView: { type: String, default: '' },
|
showView: { type: String, default: '' },
|
||||||
})
|
})
|
||||||
|
|
||||||
// 退出登录
|
// 退出登录
|
||||||
const logout = async () => {
|
const logout = async () => {
|
||||||
await store.dispatch('user/logout')
|
await store.dispatch('user/logout')
|
||||||
window.sessionStorage.setItem('visits', JSON.stringify([]))
|
window.sessionStorage.setItem('visits', JSON.stringify([]))
|
||||||
// 西海岸不返回登录页
|
// 西海岸不返回登录页
|
||||||
|
@ -177,15 +141,23 @@
|
||||||
router.push('/login')
|
router.push('/login')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
// 返回首页
|
||||||
|
const goToHome = () => {
|
||||||
|
// 西海岸
|
||||||
|
if (itShowXiHaiAn.value) {
|
||||||
|
if (
|
||||||
|
!xhaHasPermissionUser.list.includes(user.value.username)
|
||||||
|
) {
|
||||||
|
return message.warn('暂无权限')
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// 返回首页
|
|
||||||
const goToHome = () => {
|
|
||||||
router.push({
|
router.push({
|
||||||
path: '/home',
|
path: '/home',
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
// 跳转页面
|
// 跳转页面
|
||||||
const jumpPage = (item) => {
|
const jumpPage = (item) => {
|
||||||
// 西海岸
|
// 西海岸
|
||||||
if (itShowXiHaiAn.value) {
|
if (itShowXiHaiAn.value) {
|
||||||
let _arr = ['共享门户', '能力云图', '能力统计', '需求中心', '赋能案例']
|
let _arr = ['共享门户', '能力云图', '能力统计', '需求中心', '赋能案例']
|
||||||
|
@ -271,50 +243,50 @@
|
||||||
router.push('/home')
|
router.push('/home')
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
const scrollTop = ref(0)
|
const scrollTop = ref(0)
|
||||||
window.onscroll = function () {
|
window.onscroll = function () {
|
||||||
//为了保证兼容性,这里取两个值,哪个有值取哪一个
|
//为了保证兼容性,这里取两个值,哪个有值取哪一个
|
||||||
//scrollTop就是触发滚轮事件时滚轮的高度
|
//scrollTop就是触发滚轮事件时滚轮的高度
|
||||||
scrollTop.value =
|
scrollTop.value =
|
||||||
document.documentElement.scrollTop || document.body.scrollTop
|
document.documentElement.scrollTop || document.body.scrollTop
|
||||||
// console.log('滚动距离' + scrollTop.value)
|
// console.log('滚动距离' + scrollTop.value)
|
||||||
}
|
}
|
||||||
mybus.on('getSgcNum', () => {
|
mybus.on('getSgcNum', () => {
|
||||||
getSgcTotal().then((res) => {
|
getSgcTotal().then((res) => {
|
||||||
sgcNum.value = res.data.data.count
|
sgcNum.value = res.data.data.count
|
||||||
// console.log('申购车总数========================>', res.data.data.count)
|
// console.log('申购车总数========================>', res.data.data.count)
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
const sgcNum = ref(0)
|
const sgcNum = ref(0)
|
||||||
const goToSgc = () => {
|
const goToSgc = () => {
|
||||||
window.sessionStorage.setItem('type', JSON.stringify('PurchaseVehicle'))
|
window.sessionStorage.setItem('type', JSON.stringify('PurchaseVehicle'))
|
||||||
router.push('/personalCenter')
|
router.push('/personalCenter')
|
||||||
}
|
}
|
||||||
const mynoticeNum = ref(0)
|
const mynoticeNum = ref(0)
|
||||||
// 我的消息
|
// 我的消息
|
||||||
const getMynotice = () => {
|
const getMynotice = () => {
|
||||||
mynotice({ page: 1, limit: 3, readStatus: 0 }).then((res) => {
|
mynotice({ page: 1, limit: 3, readStatus: 0 }).then((res) => {
|
||||||
// console.log('我的消息', res.data.data)
|
// console.log('我的消息', res.data.data)
|
||||||
mynoticeNum.value = res.data.data.total
|
mynoticeNum.value = res.data.data.total
|
||||||
mynoticeData.value = res.data.data.list
|
mynoticeData.value = res.data.data.list
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
const goToView = () => {
|
const goToView = () => {
|
||||||
router.push({
|
router.push({
|
||||||
path: '/mynoticeView',
|
path: '/mynoticeView',
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
// const read = (item) => {
|
// const read = (item) => {
|
||||||
// mynoticeRead(item.id).then((res) => {
|
// mynoticeRead(item.id).then((res) => {
|
||||||
// console.log('已读', res)
|
// console.log('已读', res)
|
||||||
// getMynotice()
|
// getMynotice()
|
||||||
// })
|
// })
|
||||||
// }
|
// }
|
||||||
// 建立链接 -- 携带cookie参数
|
// 建立链接 -- 携带cookie参数
|
||||||
|
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
getSgcTotal().then((res) => {
|
getSgcTotal().then((res) => {
|
||||||
// console.log('初始化========================>', res.data.data.count)
|
// console.log('初始化========================>', res.data.data.count)
|
||||||
sgcNum.value = res.data.data.count
|
sgcNum.value = res.data.data.count
|
||||||
|
@ -348,19 +320,19 @@
|
||||||
mybus.on('getMynotice', () => {
|
mybus.on('getMynotice', () => {
|
||||||
getMynotice()
|
getMynotice()
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
onBeforeUnmount(() => {
|
onBeforeUnmount(() => {
|
||||||
mybus.off('getSgcNum')
|
mybus.off('getSgcNum')
|
||||||
mybus.off('getMynotice')
|
mybus.off('getMynotice')
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
<style lang="less" scoped>
|
<style lang="less" scoped>
|
||||||
@font-face {
|
@font-face {
|
||||||
font-family: 'header-typeface';
|
font-family: 'header-typeface';
|
||||||
src: url('~@/assets/newHome/font/header-typeface.ttf');
|
src: url('~@/assets/newHome/font/header-typeface.ttf');
|
||||||
}
|
}
|
||||||
|
|
||||||
.home-header {
|
.home-header {
|
||||||
height: 0.64rem;
|
height: 0.64rem;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
max-width: 1920px;
|
max-width: 1920px;
|
||||||
|
@ -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;
|
||||||
}
|
}
|
||||||
|
@ -478,9 +449,9 @@
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.white {
|
.white {
|
||||||
background-color: #fff;
|
background-color: #fff;
|
||||||
box-shadow: 0 0.02rem 0.1rem rgba(0, 0, 0, 0.1);
|
box-shadow: 0 0.02rem 0.1rem rgba(0, 0, 0, 0.1);
|
||||||
|
|
||||||
|
@ -513,15 +484,13 @@
|
||||||
color: #000;
|
color: #000;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.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;
|
||||||
|
@ -541,9 +510,9 @@
|
||||||
color: #fff;
|
color: #fff;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.mynotice {
|
.mynotice {
|
||||||
width: 4rem;
|
width: 4rem;
|
||||||
height: 3rem;
|
height: 3rem;
|
||||||
background: #eee;
|
background: #eee;
|
||||||
|
@ -560,18 +529,19 @@
|
||||||
color: #000;
|
color: #000;
|
||||||
font-size: 0.16rem;
|
font-size: 0.16rem;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.mynotice::-webkit-scrollbar {
|
.mynotice::-webkit-scrollbar {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
:deep(.ant-list-item) {
|
:deep(.ant-list-item) {
|
||||||
border-bottom: 0.01rem solid #ccc;
|
border-bottom: 0.01rem solid #ccc;
|
||||||
padding: 0.1rem;
|
padding: 0.1rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
: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;
|
||||||
|
@ -597,18 +567,18 @@
|
||||||
font-size: 0.1rem;
|
font-size: 0.1rem;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.iconTo {
|
.iconTo {
|
||||||
display: block;
|
display: block;
|
||||||
width: 0.35rem;
|
width: 0.35rem;
|
||||||
height: 0.35rem;
|
height: 0.35rem;
|
||||||
background: url('~@/assets/newHome/iconTo.png') no-repeat;
|
background: url('~@/assets/newHome/iconTo.png') no-repeat;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
<style>
|
<style>
|
||||||
html::-webkit-scrollbar {
|
html::-webkit-scrollbar {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -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('操作失败!')
|
||||||
}
|
}
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
<p>
|
<p>
|
||||||
<span>应用背景:{{ props.refObj.applicationBackground }}</span>
|
<span>应用背景:{{ props.refObj.applicationBackground }}</span>
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p v-if="!whoShow1.itShowXiHaiAn">
|
||||||
<span>期望效果:{{ props.refObj.effectWish }}</span>
|
<span>期望效果:{{ props.refObj.effectWish }}</span>
|
||||||
</p>
|
</p>
|
||||||
<p v-if="props.refObj.enclosure">
|
<p v-if="props.refObj.enclosure">
|
||||||
|
@ -159,26 +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>
|
||||||
|
<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>
|
||||||
|
@ -452,6 +458,10 @@ const handleUser = () => {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const openView = (url) => {
|
||||||
|
window.open(url, '_blank')
|
||||||
|
}
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
<style lang="less" scoped>
|
<style lang="less" scoped>
|
||||||
.title {
|
.title {
|
||||||
|
@ -530,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;
|
||||||
|
@ -732,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>
|
||||||
|
@ -23,46 +35,46 @@
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script setup>
|
<script setup>
|
||||||
import AbilityApplication from './AbilityApplication.vue'
|
import AbilityApplication from './AbilityApplication.vue'
|
||||||
import PutOnTheShelf from './PutOnTheShelf .vue'
|
import PutOnTheShelf from './PutOnTheShelf .vue'
|
||||||
import OffTheShelf from './OffTheShelf.vue'
|
import OffTheShelf from './OffTheShelf.vue'
|
||||||
import Demand from './Demand.vue'
|
import Demand from './Demand.vue'
|
||||||
import Comment from './Comment.vue'
|
import Comment from './Comment.vue'
|
||||||
import DeviceApplyDetail from './DeviceApplyDetail.vue'
|
import DeviceApplyDetail from './DeviceApplyDetail.vue'
|
||||||
import OtherApplications from '@/views/personalCenter/components/OtherApplications '
|
import OtherApplications from '@/views/personalCenter/components/OtherApplications '
|
||||||
import { onMounted, reactive, defineProps, ref } from 'vue'
|
import { onMounted, reactive, defineProps, ref } from 'vue'
|
||||||
import Cookies from 'js-cookie'
|
import Cookies from 'js-cookie'
|
||||||
// import { baseURL } from '@/config'
|
// import { baseURL } from '@/config'
|
||||||
import qs from 'qs'
|
import qs from 'qs'
|
||||||
import {
|
import {
|
||||||
getApplyForm,
|
getApplyForm,
|
||||||
getTaskHandleDetailInfo,
|
getTaskHandleDetailInfo,
|
||||||
getDemandForm,
|
getDemandForm,
|
||||||
nengliziyuanshangjiaapply,
|
nengliziyuanshangjiaapply,
|
||||||
getTaskVariables,
|
getTaskVariables,
|
||||||
} from '@/api/personalCenter'
|
} from '@/api/personalCenter'
|
||||||
import { selectOneDel } from '@/api/home'
|
import { selectOneDel } from '@/api/home'
|
||||||
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 },
|
||||||
processInstanceId: { type: String, default: null },
|
processInstanceId: { type: String, default: null },
|
||||||
resourceId: { type: String, default: null },
|
resourceId: { type: String, default: null },
|
||||||
refObj: { type: Object, default: null },
|
refObj: { type: Object, default: null },
|
||||||
showType: { type: String, default: null },
|
showType: { type: String, default: null },
|
||||||
})
|
})
|
||||||
const refObj = ref({})
|
const refObj = ref({})
|
||||||
const showType = ref('')
|
const showType = ref('')
|
||||||
// eslint-disable-next-line vue/no-setup-props-destructure
|
// eslint-disable-next-line vue/no-setup-props-destructure
|
||||||
refObj.value = props.refObj
|
refObj.value = props.refObj
|
||||||
// eslint-disable-next-line vue/no-setup-props-destructure
|
// eslint-disable-next-line vue/no-setup-props-destructure
|
||||||
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, '---------------------------------------')
|
||||||
|
|
||||||
const downloadFile = (path, name) => {
|
const downloadFile = (path, name) => {
|
||||||
const xhr = new XMLHttpRequest()
|
const xhr = new XMLHttpRequest()
|
||||||
xhr.open('get', path)
|
xhr.open('get', path)
|
||||||
xhr.responseType = 'blob'
|
xhr.responseType = 'blob'
|
||||||
|
@ -87,9 +99,9 @@ const downloadFile = (path, name) => {
|
||||||
URL.revokeObjectURL(url)
|
URL.revokeObjectURL(url)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//表单信息
|
//表单信息
|
||||||
const formName = reactive({
|
const formName = reactive({
|
||||||
user: '',
|
user: '',
|
||||||
phone: '',
|
phone: '',
|
||||||
unit: '',
|
unit: '',
|
||||||
|
@ -98,17 +110,22 @@ const formName = reactive({
|
||||||
scene: '',
|
scene: '',
|
||||||
basis: '',
|
basis: '',
|
||||||
id: '',
|
id: '',
|
||||||
})
|
})
|
||||||
let shifoushizujian = ref('')
|
let shifoushizujian = ref('')
|
||||||
let nameNotShow = ref('')
|
let nameNotShow = ref('')
|
||||||
let algorithmShow = ref('')
|
let algorithmShow = ref('')
|
||||||
const dataForm = reactive({ data: {} })
|
const dataForm = reactive({ data: {} })
|
||||||
const columns = [
|
const columns = [
|
||||||
{
|
{
|
||||||
title: '任务名称',
|
title: '任务名称',
|
||||||
dataIndex: 'activityName',
|
dataIndex: 'activityName',
|
||||||
key: 'activityName',
|
key: 'activityName',
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
title: '处理部门',
|
||||||
|
dataIndex: 'assigneeDeptName',
|
||||||
|
key: 'assigneeDeptName',
|
||||||
|
},
|
||||||
{
|
{
|
||||||
title: '处理人',
|
title: '处理人',
|
||||||
dataIndex: 'assigneeName',
|
dataIndex: 'assigneeName',
|
||||||
|
@ -130,12 +147,12 @@ const columns = [
|
||||||
key: 'comment',
|
key: 'comment',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '任务时长/秒',
|
title: '任务时长',
|
||||||
dataIndex: 'durationInSeconds',
|
dataIndex: 'duration',
|
||||||
key: 'durationInSeconds',
|
key: 'duration',
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
const getInfo = () => {
|
const getInfo = () => {
|
||||||
console.log(props.processInstanceId, '============================')
|
console.log(props.processInstanceId, '============================')
|
||||||
if (props.processDefinitionName == '能力申请') {
|
if (props.processDefinitionName == '能力申请') {
|
||||||
// getTaskVariables({ taskId: props.processInstanceId }).then((res) => {
|
// getTaskVariables({ taskId: props.processInstanceId }).then((res) => {
|
||||||
|
@ -199,9 +216,9 @@ const getInfo = () => {
|
||||||
dataForm.data = res.data.data
|
dataForm.data = res.data.data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const getLiuZhuanInfo = () => {
|
const getLiuZhuanInfo = () => {
|
||||||
const params = qs.stringify({
|
const params = qs.stringify({
|
||||||
processInstanceId: props.processInstanceId,
|
processInstanceId: props.processInstanceId,
|
||||||
})
|
})
|
||||||
|
@ -212,9 +229,9 @@ const getLiuZhuanInfo = () => {
|
||||||
})
|
})
|
||||||
dataSource.data.push([props.processInstanceId, arr])
|
dataSource.data.push([props.processInstanceId, arr])
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
// getInfo()
|
// getInfo()
|
||||||
if (props.refObj.resourceApplication) {
|
if (props.refObj.resourceApplication) {
|
||||||
dataSource.data = []
|
dataSource.data = []
|
||||||
|
@ -228,9 +245,9 @@ onMounted(() => {
|
||||||
} else {
|
} else {
|
||||||
getLiuZhuanInfo()
|
getLiuZhuanInfo()
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
const getResourceURL = () => {
|
const getResourceURL = () => {
|
||||||
console.log('111111111111111111111111111111', Cookies.get('token'))
|
console.log('111111111111111111111111111111', Cookies.get('token'))
|
||||||
const params = qs.stringify({
|
const params = qs.stringify({
|
||||||
token: Cookies.get('token'),
|
token: Cookies.get('token'),
|
||||||
|
@ -238,11 +255,11 @@ const getResourceURL = () => {
|
||||||
processInstanceId: props.processInstanceId,
|
processInstanceId: props.processInstanceId,
|
||||||
})
|
})
|
||||||
return `${window.SITE_CONFIG.apiURL}/act/his/getInstImage?${params}`
|
return `${window.SITE_CONFIG.apiURL}/act/his/getInstImage?${params}`
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped lang="less">
|
<style scoped lang="less">
|
||||||
.form-container {
|
.form-container {
|
||||||
height: 6rem;
|
height: 6rem;
|
||||||
overflow-y: scroll;
|
overflow-y: scroll;
|
||||||
padding: 20px 20px 30px 20px;
|
padding: 20px 20px 30px 20px;
|
||||||
|
@ -256,25 +273,25 @@ const getResourceURL = () => {
|
||||||
margin-top: 10px;
|
margin-top: 10px;
|
||||||
border-left: 6px #0058e1 solid;
|
border-left: 6px #0058e1 solid;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
:deep(.ant-table-thead)>tr>.ant-table-cell {
|
:deep(.ant-table-thead) > tr > .ant-table-cell {
|
||||||
background: #0087ff;
|
background: #0087ff;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
border: none;
|
border: none;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
}
|
}
|
||||||
|
|
||||||
:deep(.ant-table-tbody)>tr>.ant-table-cell:nth-child(5) {
|
:deep(.ant-table-tbody) > tr > .ant-table-cell:nth-child(5) {
|
||||||
// width: 110px;
|
// width: 110px;
|
||||||
// display: inline-block;
|
// display: inline-block;
|
||||||
// white-space: nowrap;
|
// white-space: nowrap;
|
||||||
// overflow: hidden;
|
// overflow: hidden;
|
||||||
// text-overflow: ellipsis;
|
// text-overflow: ellipsis;
|
||||||
}
|
}
|
||||||
|
|
||||||
.oddNumbers {
|
.oddNumbers {
|
||||||
margin-bottom: 0.05rem;
|
margin-bottom: 0.05rem;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -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.cameraList ? item.system : item.title || item.name
|
||||||
|
}}
|
||||||
</span>
|
</span>
|
||||||
<div></div>
|
<div></div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -48,55 +65,121 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="content-body-bottom">
|
<div class="content-body-bottom">
|
||||||
<div>申请日期:{{ item.createDate || item.startTime }}</div>
|
<div>申请日期:{{ item.createDate || item.startTime }}</div>
|
||||||
<div></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 />
|
||||||
<a-modal bodyStyle="padding:0.1rem 0" v-model:visible="detailsVisible" title="申请详情" style="width: 900px"
|
<a-modal
|
||||||
:footer="null" destroyOnClose="true" :maskClosable="false">
|
bodyStyle="padding:0.1rem 0"
|
||||||
<apply-details :processDefinitionName="processDefinitionName" :businessKey="businessKey"
|
v-model:visible="detailsVisible"
|
||||||
:processInstanceId="processInstanceId" :resourceId="resourceId" :refObj="refObj" :showType="showType">
|
style="width: 1000px"
|
||||||
</apply-details>
|
:footer="null"
|
||||||
|
destroyOnClose="true"
|
||||||
|
: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>
|
||||||
|
@ -107,15 +190,26 @@
|
||||||
</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 {
|
||||||
import {
|
onMounted,
|
||||||
|
reactive,
|
||||||
|
ref,
|
||||||
|
onBeforeUnmount,
|
||||||
|
h,
|
||||||
|
defineProps,
|
||||||
|
} from 'vue'
|
||||||
|
import {
|
||||||
getMyProcessInstancePage,
|
getMyProcessInstancePage,
|
||||||
getTabilityapplication,
|
getTabilityapplication,
|
||||||
getByApplyFlag,
|
getByApplyFlag,
|
||||||
|
@ -124,85 +218,86 @@ import {
|
||||||
demandComment,
|
demandComment,
|
||||||
deviceApplylist,
|
deviceApplylist,
|
||||||
getDeviceDetail,
|
getDeviceDetail,
|
||||||
} from '@/api/personalCenter'
|
} from '@/api/personalCenter'
|
||||||
import {
|
import {
|
||||||
updateRes,
|
updateRes,
|
||||||
relaunch,
|
relaunch,
|
||||||
selectOne,
|
selectOne,
|
||||||
getApplyCameraList,
|
getApplyCameraList,
|
||||||
selectOneDel,
|
selectOneDel,
|
||||||
} from '@/api/home'
|
} from '@/api/home'
|
||||||
import { useRouter } from 'vue-router'
|
import { useRouter } from 'vue-router'
|
||||||
import { message } from 'ant-design-vue'
|
import { message } from 'ant-design-vue'
|
||||||
import ApplyDetails from '@/views/personalCenter/components/ApplyDetails'
|
import ApplyDetails from '@/views/personalCenter/components/ApplyDetails'
|
||||||
import mybus from '@/myplugins/mybus'
|
import mybus from '@/myplugins/mybus'
|
||||||
import * as moment from 'moment'
|
import * as moment from 'moment'
|
||||||
|
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
tabTypeName: { type: String, default: '' },
|
tabTypeName: { type: String, default: '' },
|
||||||
})
|
})
|
||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
let typeList = ref([
|
let typeList = ref([
|
||||||
'能力申请',
|
'能力申请',
|
||||||
'能力上架',
|
'能力上架',
|
||||||
'能力下架',
|
'能力下架',
|
||||||
'能力需求',
|
'能力需求',
|
||||||
'需求评论',
|
'需求评论',
|
||||||
// '能力评价',
|
// '能力评价',
|
||||||
])
|
])
|
||||||
// 西海岸-设备申请
|
// 西海岸-设备申请
|
||||||
let isXiHaiAn = whoShow.itShowXiHaiAn
|
let isXiHaiAn = whoShow.itShowXiHaiAn
|
||||||
const phoneSate = ref([2, 3])
|
const itShowXiHaiAn = ref(isXiHaiAn)
|
||||||
if (isXiHaiAn) {
|
const phoneSate = ref([2, 3])
|
||||||
|
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: [] })
|
||||||
let tabIndex = ref(0)
|
let tabIndex = ref(0)
|
||||||
let typeIndex = ref(0)
|
let typeIndex = ref(0)
|
||||||
let typeName = ref(typeList.value[0])
|
let typeName = ref(typeList.value[0])
|
||||||
const videoVisible = ref(false)
|
const videoVisible = ref(false)
|
||||||
const numFlag = ref(true)
|
const numFlag = ref(true)
|
||||||
const columns = ref([
|
const columns = ref([
|
||||||
{
|
{
|
||||||
title: '摄像头名称',
|
title: '摄像头名称',
|
||||||
dataIndex: 'name',
|
dataIndex: 'name',
|
||||||
},
|
},
|
||||||
])
|
])
|
||||||
const xVideoList = ref([])
|
const xVideoList = ref([])
|
||||||
|
|
||||||
let name = ref('')
|
let name = ref('')
|
||||||
const detailsVisible = ref(false)
|
const detailsVisible = ref(false)
|
||||||
const detailsVisible2 = ref(false)
|
const detailsVisible2 = ref(false)
|
||||||
const businessKey = ref('')
|
const businessKey = ref('')
|
||||||
const processInstanceId = ref('')
|
const processInstanceId = ref('')
|
||||||
const processDefinitionName = ref('')
|
const processDefinitionName = ref('')
|
||||||
const resourceId = ref('')
|
const resourceId = ref('')
|
||||||
const reason = ref('')
|
const reason = ref('')
|
||||||
const visible = ref(false)
|
const visible = ref(false)
|
||||||
const delObj = ref({})
|
const delObj = ref({})
|
||||||
const taskId = ref('')
|
const taskId = ref('')
|
||||||
const backUrl = ref(window.SITE_CONFIG.apiURL + '/')
|
const backUrl = ref(window.SITE_CONFIG.apiURL + '/')
|
||||||
const refObj = ref({})
|
const refObj = ref({})
|
||||||
const num = ref({
|
const num = ref({
|
||||||
finished: 0,
|
finished: 0,
|
||||||
unfinished: 0,
|
unfinished: 0,
|
||||||
})
|
})
|
||||||
const total = ref('')
|
const total = ref('')
|
||||||
const showType = ref('')
|
const showType = ref('')
|
||||||
const page = ref('1')
|
const page = ref('1')
|
||||||
const ended = ref('')
|
const ended = ref('')
|
||||||
const processDefinitionKey = ref('')
|
const processDefinitionKey = ref('')
|
||||||
const phoneVisible = ref(false)
|
const phoneVisible = ref(false)
|
||||||
|
|
||||||
// 选择类型
|
// 选择类型
|
||||||
const changeType = (item, index) => {
|
const changeType = (item, index) => {
|
||||||
console.log('item, index-----选择类型------->', item, index)
|
console.log('item, index-----选择类型------->', item, index)
|
||||||
numFlag.value = true
|
numFlag.value = true
|
||||||
num.value = []
|
num.value = []
|
||||||
|
@ -213,10 +308,10 @@ const changeType = (item, index) => {
|
||||||
typeIndex.value = index
|
typeIndex.value = index
|
||||||
typeName.value = item
|
typeName.value = item
|
||||||
getApplyList()
|
getApplyList()
|
||||||
}
|
}
|
||||||
|
|
||||||
// 申请状态切换
|
// 申请状态切换
|
||||||
function changeApplyState(item, index) {
|
function changeApplyState(item, index) {
|
||||||
tabIndex.value = index
|
tabIndex.value = index
|
||||||
switch (item) {
|
switch (item) {
|
||||||
case '审核中':
|
case '审核中':
|
||||||
|
@ -235,9 +330,11 @@ function changeApplyState(item, index) {
|
||||||
getApplyList()
|
getApplyList()
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const showDetail = (item) => {
|
const cilckRowData = ref({})
|
||||||
|
const showDetail = (item) => {
|
||||||
|
cilckRowData.value = item
|
||||||
// 西海岸-申请时间过期,提示
|
// 西海岸-申请时间过期,提示
|
||||||
if (isXiHaiAn) {
|
if (isXiHaiAn) {
|
||||||
if (item.expireDate) {
|
if (item.expireDate) {
|
||||||
|
@ -251,7 +348,6 @@ const showDetail = (item) => {
|
||||||
getByApplyFlag(item.applyFlag).then((res) => {
|
getByApplyFlag(item.applyFlag).then((res) => {
|
||||||
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
|
processDefinitionName.value = item.processDefinitionName
|
||||||
businessKey.value = item.businessKey
|
businessKey.value = item.businessKey
|
||||||
|
@ -267,10 +363,9 @@ 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) => {})
|
||||||
} else if (
|
} else if (
|
||||||
Object.keys(typeStrObj).includes(typeName.value) ||
|
Object.keys(typeStrObj).includes(typeName.value) ||
|
||||||
typeName.value == '能力评价'
|
typeName.value == '能力评价'
|
||||||
|
@ -284,8 +379,8 @@ const showDetail = (item) => {
|
||||||
} else {
|
} else {
|
||||||
message.error('数据请求失败!')
|
message.error('数据请求失败!')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
const showVideoList = (item) => {
|
const showVideoList = (item) => {
|
||||||
console.log('显示列表', item)
|
console.log('显示列表', item)
|
||||||
getApplyCameraList(item.processInstanceId).then((res) => {
|
getApplyCameraList(item.processInstanceId).then((res) => {
|
||||||
console.log('res', res)
|
console.log('res', res)
|
||||||
|
@ -295,8 +390,8 @@ const showVideoList = (item) => {
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
videoVisible.value = true
|
videoVisible.value = true
|
||||||
}
|
}
|
||||||
const copyComment = (data) => {
|
const copyComment = (data) => {
|
||||||
let url = data
|
let url = data
|
||||||
let oInput = document.createElement('input')
|
let oInput = document.createElement('input')
|
||||||
oInput.value = url
|
oInput.value = url
|
||||||
|
@ -306,8 +401,8 @@ const copyComment = (data) => {
|
||||||
document.execCommand('Copy') // 执行浏览器复制命令
|
document.execCommand('Copy') // 执行浏览器复制命令
|
||||||
message.success('复制成功')
|
message.success('复制成功')
|
||||||
oInput.remove()
|
oInput.remove()
|
||||||
}
|
}
|
||||||
const showAdd = (item) => {
|
const showAdd = (item) => {
|
||||||
if (item.processDefinitionKey == 'resourcemountapply') {
|
if (item.processDefinitionKey == 'resourcemountapply') {
|
||||||
const data = {
|
const data = {
|
||||||
id: item.resourceId,
|
id: item.resourceId,
|
||||||
|
@ -360,9 +455,9 @@ const showAdd = (item) => {
|
||||||
console.log('能力申请修改=================》', item)
|
console.log('能力申请修改=================》', item)
|
||||||
window.open(newpage.href, '_self')
|
window.open(newpage.href, '_self')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const initNum = () => {
|
const initNum = () => {
|
||||||
if (numFlag.value) {
|
if (numFlag.value) {
|
||||||
num.value = []
|
num.value = []
|
||||||
getMyProcessInstancePage({
|
getMyProcessInstancePage({
|
||||||
|
@ -387,8 +482,8 @@ const initNum = () => {
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
const initNum2 = () => {
|
const initNum2 = () => {
|
||||||
if (numFlag.value) {
|
if (numFlag.value) {
|
||||||
num.value = []
|
num.value = []
|
||||||
getTabilityapplication({
|
getTabilityapplication({
|
||||||
|
@ -411,19 +506,19 @@ const initNum2 = () => {
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// initNum()
|
// initNum()
|
||||||
|
|
||||||
// 搜索框
|
// 搜索框
|
||||||
const onSearch = (name) => {
|
const onSearch = (name) => {
|
||||||
console.log(name.value)
|
console.log(name.value)
|
||||||
}
|
}
|
||||||
//重置
|
//重置
|
||||||
function replacement() {
|
function replacement() {
|
||||||
name.value = ''
|
name.value = ''
|
||||||
getApplyList(name.value)
|
getApplyList(name.value)
|
||||||
}
|
}
|
||||||
const getApplyList = () => {
|
const getApplyList = () => {
|
||||||
const params = {
|
const params = {
|
||||||
page: page.value,
|
page: page.value,
|
||||||
limit: 4,
|
limit: 4,
|
||||||
|
@ -464,7 +559,7 @@ const getApplyList = () => {
|
||||||
getDeviceNum()
|
getDeviceNum()
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.catch((err) => { })
|
.catch((err) => {})
|
||||||
} else if (Object.keys(typeStrObj).includes(typeName.value)) {
|
} else if (Object.keys(typeStrObj).includes(typeName.value)) {
|
||||||
processDefinitionKey.value = typeStrObj[typeName.value]
|
processDefinitionKey.value = typeStrObj[typeName.value]
|
||||||
params.processDefinitionKey = processDefinitionKey.value
|
params.processDefinitionKey = processDefinitionKey.value
|
||||||
|
@ -525,18 +620,18 @@ const getApplyList = () => {
|
||||||
num.value = []
|
num.value = []
|
||||||
showType.value = ''
|
showType.value = ''
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
const handleCurrentChange = (val) => {
|
const handleCurrentChange = (val) => {
|
||||||
page.value = val
|
page.value = val
|
||||||
getApplyList()
|
getApplyList()
|
||||||
}
|
}
|
||||||
|
|
||||||
const handlePageSizeChange = (val) => {
|
const handlePageSizeChange = (val) => {
|
||||||
page.value = val
|
page.value = val
|
||||||
getApplyList()
|
getApplyList()
|
||||||
}
|
}
|
||||||
|
|
||||||
const viewDetail = (processDefinitionName, id, ended, businessKey) => {
|
const viewDetail = (processDefinitionName, id, ended, businessKey) => {
|
||||||
if (processDefinitionName == '能力申请流程') {
|
if (processDefinitionName == '能力申请流程') {
|
||||||
router.push({
|
router.push({
|
||||||
path: '/details',
|
path: '/details',
|
||||||
|
@ -563,10 +658,10 @@ const viewDetail = (processDefinitionName, id, ended, businessKey) => {
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 下架能力
|
// 下架能力
|
||||||
const del = () => {
|
const del = () => {
|
||||||
console.log('下架================》', delObj.value, reason.value)
|
console.log('下架================》', delObj.value, reason.value)
|
||||||
delObj.value.undercarriageReason = reason.value
|
delObj.value.undercarriageReason = reason.value
|
||||||
updateRes(delObj.value).then((upres) => {
|
updateRes(delObj.value).then((upres) => {
|
||||||
|
@ -588,10 +683,10 @@ const del = () => {
|
||||||
message.error('数据更新失败!')
|
message.error('数据更新失败!')
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 西海岸:设备申请列表 todo
|
// 西海岸:设备申请列表 todo
|
||||||
const getDeviceApply = (state) => {
|
const getDeviceApply = (state) => {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
let _data = {
|
let _data = {
|
||||||
page: page.value,
|
page: page.value,
|
||||||
|
@ -608,10 +703,10 @@ const getDeviceApply = (state) => {
|
||||||
console.log('err------------>', err)
|
console.log('err------------>', err)
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 西海岸:设备申请--查询详情
|
// 西海岸:设备申请--查询详情
|
||||||
const getDeviceDetailInfo = (deviceId) => {
|
const getDeviceDetailInfo = (deviceId) => {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
getDeviceDetail(deviceId)
|
getDeviceDetail(deviceId)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
|
@ -623,10 +718,10 @@ const getDeviceDetailInfo = (deviceId) => {
|
||||||
console.log('err------------>', err)
|
console.log('err------------>', err)
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 西海岸:设备申请-审核中, 审核完成数量
|
// 西海岸:设备申请-审核中, 审核完成数量
|
||||||
const getDeviceNum = () => {
|
const getDeviceNum = () => {
|
||||||
if (!numFlag.value) {
|
if (!numFlag.value) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@ -640,34 +735,32 @@ 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
|
||||||
}
|
}
|
||||||
|
|
||||||
mybus.on('closeModal', (obj) => {
|
mybus.on('closeModal', (obj) => {
|
||||||
detailsVisible.value = false
|
detailsVisible.value = false
|
||||||
changeType(obj.type, obj.index)
|
changeType(obj.type, obj.index)
|
||||||
})
|
})
|
||||||
onBeforeUnmount(() => {
|
onBeforeUnmount(() => {
|
||||||
mybus.off('closeModal')
|
mybus.off('closeModal')
|
||||||
})
|
})
|
||||||
onMounted(() => {
|
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)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped lang="less">
|
<style scoped lang="less">
|
||||||
.on-the-right-side-of-the-list {
|
.on-the-right-side-of-the-list {
|
||||||
background: #ffffff;
|
background: #ffffff;
|
||||||
padding: 20px 0px 30px 20px;
|
padding: 20px 0px 30px 20px;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
|
@ -843,10 +936,10 @@ onMounted(() => {
|
||||||
.backToFirst {
|
.backToFirst {
|
||||||
background-color: rgb(214, 91, 91);
|
background-color: rgb(214, 91, 91);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
:deep(.ant-badge-count) {
|
:deep(.ant-badge-count) {
|
||||||
top: -5px;
|
top: -5px;
|
||||||
right: -10px;
|
right: -10px;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -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)
|
||||||
|
@ -95,11 +92,10 @@ export default defineComponent({
|
||||||
} else {
|
} else {
|
||||||
if (menuList[1]) {
|
if (menuList[1]) {
|
||||||
handleClick(menuList[1])
|
handleClick(menuList[1])
|
||||||
}else {
|
} else {
|
||||||
handleClick(menuList[0])
|
handleClick(menuList[0])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
})
|
})
|
||||||
|
|
||||||
return {
|
return {
|
||||||
|
|
Loading…
Reference in New Issue