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 {
|
||||
this.total = this.mixinViewModuleOptions.getDataListIsPage ? res.data.total : 0
|
||||
}
|
||||
|
||||
console.log('数据列表', this.dataList, this.mixinViewModuleOptions.getDataListURL)
|
||||
if (this.dataList[0].type === '组件服务') {
|
||||
this.dataList.map(val => {
|
||||
|
|
|
@ -104,7 +104,7 @@ router.beforeEach((to, from, next) => {
|
|||
Vue.prototype.$message.error(res.msg)
|
||||
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)
|
||||
next({ ...to, replace: true })
|
||||
}).catch(() => {
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
<!--
|
||||
* @Author: kongjun qdkongjun@gmail.com
|
||||
* @Date: 2022-06-20 09:29:59
|
||||
* @LastEditors: kongjun qdkongjun@gmail.com
|
||||
* @LastEditTime: 2022-06-22 10:04:56
|
||||
* @LastEditors: hisense.wuhongjian
|
||||
* @LastEditTime: 2022-10-18 15:22:45
|
||||
* @FilePath: \back\src\views\main-sidebar.vue
|
||||
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
-->
|
||||
|
@ -35,63 +35,71 @@
|
|||
|
||||
<script>
|
||||
import http from '@/utils/request'
|
||||
import SubMenu from "./main-sidebar-sub-menu";
|
||||
import returnLocationStr from '@/utils/location';
|
||||
import SubMenu from './main-sidebar-sub-menu'
|
||||
import returnLocationStr from '@/utils/location'
|
||||
import bus from '@/views/bus.js'
|
||||
export default {
|
||||
data() {
|
||||
data () {
|
||||
return {
|
||||
numObject:{}
|
||||
};
|
||||
numObject: {}
|
||||
}
|
||||
},
|
||||
components: {
|
||||
SubMenu,
|
||||
SubMenu
|
||||
},
|
||||
created() {
|
||||
created () {
|
||||
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: {
|
||||
getNum(){
|
||||
getNum () {
|
||||
http.get('/act/task/myToDoTaskNum').then(({ data: res }) => {
|
||||
this.numObject=res.data
|
||||
let menuList= window.SITE_CONFIG["menuList"];
|
||||
for(var i=0;i<menuList.length;i++){
|
||||
let menu=menuList[i];
|
||||
if(menu.id=='1541261628388888578'){//我的待办
|
||||
let daibanNum=0
|
||||
for(let j=0;j<menu.children.length;j++){
|
||||
let children=menu.children[j]
|
||||
if(children.id=="1541261780432408577"){//能力申请 v2
|
||||
//西海岸 v2 市局v3
|
||||
children.total= returnLocationStr() == 'qingdao' ? Number(this.numObject.abilityprocess_v3) : Number(this.numObject.abilityprocess_v2)
|
||||
daibanNum=Number(daibanNum)+Number(children.total)
|
||||
} if(children.id=="1559376285703081986"){//会议室审核
|
||||
children.total=Number(this.numObject.meetingroom_book)
|
||||
daibanNum=Number(daibanNum)+Number(children.total)
|
||||
}if(children.id=="1545292602084827138"){//能力资源上架
|
||||
children.total=Number(this.numObject.resourcemountapply)
|
||||
daibanNum=Number(daibanNum)+Number(children.total)
|
||||
}if(children.id=="1545312045695377410"){//能力需求申请
|
||||
children.total=Number(this.numObject.abilitydemandapply)
|
||||
daibanNum=Number(daibanNum)+Number(children.total)
|
||||
}if(children.id=="1545313018614521857"){//能力需求下架
|
||||
children.total=Number(this.numObject.resourcundercarriageapply)
|
||||
daibanNum=Number(daibanNum)+Number(children.total)
|
||||
}if(children.id=="1545313754106699777"){//评论审核
|
||||
children.total=Number(this.numObject.comment_review)
|
||||
daibanNum=Number(daibanNum)+Number(children.total)
|
||||
}if(children.id=="1554294862931562498"){//会议室 暂无
|
||||
children.total=0
|
||||
daibanNum=Number(daibanNum)+Number(children.total)
|
||||
this.numObject = res.data
|
||||
const menuList = window.SITE_CONFIG.menuList
|
||||
console.log('menuList====>', menuList)
|
||||
console.log('this.numObject====>', this.numObject)
|
||||
for (var i = 0; i < menuList.length; i++) {
|
||||
const menu = menuList[i]
|
||||
if (menu.id == '1541261628388888578') { // 我的待办
|
||||
let daibanNum = 0
|
||||
for (let j = 0; j < menu.children.length; j++) {
|
||||
const children = menu.children[j]
|
||||
if (children.id == '1541261780432408577') { // 能力申请 v2
|
||||
// 西海岸 v2 市局v3
|
||||
children.total = returnLocationStr() == 'qingdao' ? Number(this.numObject.abilityprocess_v3) : Number(this.numObject.abilityprocess_v2)
|
||||
daibanNum = Number(daibanNum) + Number(children.total)
|
||||
} if (children.id == '1559376285703081986') { // 会议室审核
|
||||
children.total = Number(this.numObject.meetingroom_book)
|
||||
daibanNum = Number(daibanNum) + Number(children.total)
|
||||
} if (children.id == '1545292602084827138') { // 能力资源上架
|
||||
children.total = Number(this.numObject.resourcemountapply)
|
||||
daibanNum = Number(daibanNum) + Number(children.total)
|
||||
} if (children.id == '1545312045695377410') { // 能力需求申请
|
||||
children.total = Number(this.numObject.abilitydemandapply)
|
||||
daibanNum = Number(daibanNum) + Number(children.total)
|
||||
} if (children.id == '1545313018614521857') { // 能力需求下架
|
||||
children.total = Number(this.numObject.resourcundercarriageapply)
|
||||
daibanNum = Number(daibanNum) + Number(children.total)
|
||||
} if (children.id == '1545313754106699777') { // 评论审核
|
||||
children.total = Number(this.numObject.comment_review)
|
||||
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>
|
||||
<style scoped lang="scss">
|
||||
.aui-sidebar {
|
||||
|
|
|
@ -116,7 +116,6 @@ import CommonQuestion from '../components/common-question.vue'
|
|||
import InfrastructureModal from './components/infrastructure-modal.vue'
|
||||
import Cookies from 'js-cookie'
|
||||
import upload from '@/views/modules/components/upload'
|
||||
|
||||
const btnArray = ['基本信息', '场景痛点', '解决方案', '组合能力', '更多能力', '使用步骤']
|
||||
// 数据资源\组件服务
|
||||
export const getJson = (type) => {
|
||||
|
@ -163,7 +162,6 @@ export const modalTypeText = {
|
|||
}
|
||||
|
||||
export const getFuseResourceList = (abilityListObj) => {
|
||||
console.log('abilityListObjabilityListObj',abilityListObj);
|
||||
const arr = []
|
||||
let length = 0
|
||||
for (const key in abilityListObj) {
|
||||
|
@ -176,7 +174,7 @@ export const getFuseResourceList = (abilityListObj) => {
|
|||
resourceId: v.id,
|
||||
type: key,
|
||||
sequence: index,
|
||||
resourceName:v.resourceName,
|
||||
resourceName:v.resourceName|| v.name ,
|
||||
deptName:v.deptName,
|
||||
})
|
||||
})
|
||||
|
@ -331,9 +329,10 @@ export default {
|
|||
},
|
||||
// 更新表单
|
||||
updateDataForm (data) {
|
||||
console.log('datadatadata',data);
|
||||
//console.log('datadatadata',data);
|
||||
if (Object.keys(this.getListParams).includes(data.title)) {
|
||||
this.abilityListObj[data.title] = data.list
|
||||
console.log(' this.abilityListObj[data.title]3333', this.abilityListObj[data.title]);
|
||||
} else {
|
||||
// 更多能力、使用步骤
|
||||
this.operateFuseAttrList(data.title, data)
|
||||
|
@ -363,6 +362,7 @@ export default {
|
|||
// 表单提交
|
||||
dataFormSubmitHandle: debounce(
|
||||
function () {
|
||||
console.log('this.dataForm------表单提交------>111111', this.dataForm)
|
||||
this.$refs.dataForm.validate((valid) => {
|
||||
if (!valid) {
|
||||
this.$message.error('请检查表单是否填写完整')
|
||||
|
|
|
@ -16,19 +16,20 @@
|
|||
</el-transfer>
|
||||
</div>
|
||||
<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="{
|
||||
key: 'id',
|
||||
label: 'name',
|
||||
}" :data="transferData">
|
||||
</el-transfer>
|
||||
<!-- <el-input
|
||||
<el-input
|
||||
v-model="searchValue"
|
||||
placeholder="请输入名称"
|
||||
></el-input>
|
||||
<el-button @click="rest" class="restClick">重置</el-button> -->
|
||||
<data-resource-tranfer @updateData="updateResourceDataForm" :selected-data="selectedData" :type="type"></data-resource-tranfer>
|
||||
</div>
|
||||
<el-pagination
|
||||
<!-- <el-pagination
|
||||
v-if="type==='数据资源'"
|
||||
:current-page="currentPage"
|
||||
:page-size="15"
|
||||
|
@ -36,7 +37,7 @@
|
|||
:total="total"
|
||||
@current-change="pageCurrentChangeHandle"
|
||||
>
|
||||
</el-pagination>
|
||||
</el-pagination> -->
|
||||
<template slot="footer">
|
||||
<el-button @click="showModal = false">{{ $t("cancel") }}</el-button>
|
||||
<el-button type="primary" @click="confirmSubmitHandle()">{{
|
||||
|
@ -52,7 +53,7 @@
|
|||
<script>
|
||||
import InfrastructureModal from '../assignedScene/components/infrastructure-modal.vue'
|
||||
import DisplayList from '../assignedScene/components/display-list.vue'
|
||||
|
||||
import dataResourceTranfer from './data-resource-tranfer.vue'
|
||||
const sjzyArray = [
|
||||
{
|
||||
zyname: '城阳区图书馆总分馆、社区图书室明细信息',
|
||||
|
@ -199,7 +200,9 @@ export default {
|
|||
total: 0,
|
||||
currentPage: 1,
|
||||
newNum: 1,
|
||||
searchValue: ''
|
||||
searchValue: '',
|
||||
selectedData:[],
|
||||
newResourceData:[]
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
|
@ -223,10 +226,12 @@ export default {
|
|||
},
|
||||
methods: {
|
||||
async getDataInfo (dataForm) {
|
||||
console.log('dataForm-----====',dataForm);
|
||||
console.log('this.type',this.type);
|
||||
await this.getData()
|
||||
const arr = []
|
||||
const attrValue = dataForm.fuseResourceList.filter(v => v.type == this.type);
|
||||
console.log('attrValue22',attrValue);
|
||||
this.selectedData = attrValue;
|
||||
if (attrValue.length > 0) {
|
||||
attrValue.map(val => {
|
||||
if(val.type==="数据资源"){
|
||||
|
@ -248,6 +253,7 @@ export default {
|
|||
}
|
||||
// 展示
|
||||
this.displayList = JSON.parse(JSON.stringify(arr));
|
||||
this.displayList = Array.from(new Set(this.displayList))
|
||||
// 已选中
|
||||
this.selectedArray = arr.map(v => v.id)
|
||||
this.$nextTick(() => {
|
||||
|
@ -286,7 +292,7 @@ export default {
|
|||
this.$http[this.getDataParams.methods](this.getDataParams.url,
|
||||
this.getDataParams.postData
|
||||
).then(res => {
|
||||
console.log('res.data----获取列表-------->', res.data)
|
||||
console.log('res.data----数据资源获取列表-------->', res.data)
|
||||
this.total = Number(res.data.data.rows)
|
||||
if (res.data.code !== 0) {
|
||||
return this.$message.error(res.msg)
|
||||
|
@ -302,37 +308,56 @@ export default {
|
|||
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 => {
|
||||
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) {
|
||||
console.log('1111111111111111111111111')
|
||||
return item.name && item.name.indexOf(query) > -1
|
||||
},
|
||||
confirmSubmitHandle () {
|
||||
console.log('tttttt',this.selectedArray)
|
||||
if(this.type === "数据资源"){
|
||||
//通过选中的数据去查找原始列表数据
|
||||
let selectedObjectList = [];
|
||||
this.selectedArray.forEach((item)=>{
|
||||
let filterData = [];
|
||||
filterData = this.allData.filter(v => v.id == item);
|
||||
//console.log('filterDatafilterData',filterData);
|
||||
selectedObjectList.push(filterData[0]);
|
||||
});
|
||||
// let selectedObjectList = [];
|
||||
// this.selectedArray.forEach((item)=>{
|
||||
// let filterData = [];
|
||||
// filterData = this.allData.filter(v => v.id == item);
|
||||
// //console.log('filterDatafilterData',filterData);
|
||||
// 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', {
|
||||
title: this.type,
|
||||
list: selectedObjectList
|
||||
})
|
||||
list: this.newResourceData
|
||||
});
|
||||
this.displayList = this.newResourceData;
|
||||
this.showModal = false
|
||||
}else{
|
||||
this.$emit('update', {
|
||||
title: this.type,
|
||||
list: this.selectedArray
|
||||
})
|
||||
}
|
||||
if (this.selectedArray.length > this.maxNum) {
|
||||
return this.$message.error('最多选择十条数据!')
|
||||
}
|
||||
|
@ -343,7 +368,9 @@ export default {
|
|||
this.displayList.push(v)
|
||||
}
|
||||
})
|
||||
this.displayList = Array.from(new Set(this.displayList))
|
||||
console.log(this.selectedArray, this.displayList, 'this.displayList')
|
||||
}
|
||||
},
|
||||
handleChange(){
|
||||
//console.log('222222',this.selectedArray);
|
||||
|
@ -376,9 +403,10 @@ export default {
|
|||
this.getData()
|
||||
}
|
||||
},
|
||||
components: { InfrastructureModal, DisplayList },
|
||||
components: { InfrastructureModal, DisplayList,dataResourceTranfer },
|
||||
mounted () {
|
||||
console.log(this.type, 'this.type')
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
@ -493,7 +521,7 @@ export default {
|
|||
position: absolute;
|
||||
font-size: 14px;
|
||||
display: inline-block;
|
||||
width: 80%;
|
||||
width: 30%;
|
||||
top: 52px;
|
||||
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 class="title">审批详情</div>
|
||||
<div v-for="item in this.dataSource.data" :key="item">
|
||||
<a-table :dataSource="item[1]" :columns="columns">
|
||||
<!-- <div v-for="item in this.dataSource.data" :key="item"> -->
|
||||
<!-- <a-table :dataSource="item[1]" :columns="columns">
|
||||
<template #bodyCell="{ column, text }">
|
||||
<template v-if="column.dataIndex === 'name'">
|
||||
<a>{{ text }}</a>
|
||||
</template>
|
||||
</template>
|
||||
</a-table>
|
||||
</div>
|
||||
</a-table> -->
|
||||
<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 else>
|
||||
gai
|
||||
</div> -->
|
||||
|
@ -228,6 +261,7 @@ export default {
|
|||
}
|
||||
}
|
||||
}
|
||||
console.log("this.dataSource.data[0]========",this.dataSource.data[0][1])
|
||||
},
|
||||
// init () {
|
||||
// this.visible = true
|
||||
|
|
|
@ -38,7 +38,7 @@
|
|||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<!--审核状态-->
|
||||
<el-form-item>
|
||||
<el-form-item >
|
||||
<span>审核状态:</span>
|
||||
<el-select
|
||||
v-model="examineStatus"
|
||||
|
@ -46,8 +46,9 @@
|
|||
clearable
|
||||
>
|
||||
<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="1"></el-option>
|
||||
<el-option label="不通过" value="2"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
|
@ -371,8 +372,9 @@ export default {
|
|||
{ name: '组件服务', key: 1 },
|
||||
{ name: '应用资源', key: 2 },
|
||||
{ name: '基础设施', key: 3 },
|
||||
{ name: '数据资源', key: 3 },
|
||||
{ name: '知识库', key: 3 }
|
||||
{ name: '数据资源', key: 4 },
|
||||
{ name: '知识库', key: 5 },
|
||||
{ name: '会议室', value: 6}
|
||||
],
|
||||
tableData: [],
|
||||
tableData2: [
|
||||
|
@ -396,7 +398,8 @@ export default {
|
|||
{ name: '图层服务', value: 2 },
|
||||
{ name: '通用开发组件', value: 3 },
|
||||
{ name: '页面开发组件', value: 4 },
|
||||
{ name: '应用资源', value: 5 }
|
||||
{ name: '应用资源', value: 5 },
|
||||
{ name: '会议室', value: 6}
|
||||
], // 类型备选列表
|
||||
detailFlag: false, // 明细返回按钮显示标志位
|
||||
startDate: '', // 开始时间
|
||||
|
@ -478,7 +481,9 @@ export default {
|
|||
} else if (this.examineStatus == '0') {
|
||||
this.status = '审核中'
|
||||
} else if (this.examineStatus == '1') {
|
||||
this.status = '审核完成'
|
||||
this.status = '通过'
|
||||
}else if (this.examineStatus == '2') {
|
||||
this.status = '不通过'
|
||||
} else {
|
||||
this.status = this.examineStatus
|
||||
}
|
||||
|
@ -534,7 +539,9 @@ export default {
|
|||
} else if (this.examineStatus == '0') {
|
||||
this.status = '审核中'
|
||||
} else if (this.examineStatus == '1') {
|
||||
this.status = '审核完成'
|
||||
this.status = '通过'
|
||||
} else if (this.examineStatus == '2') {
|
||||
this.status = '不通过'
|
||||
} else {
|
||||
this.status = this.examineStatus
|
||||
}
|
||||
|
@ -627,13 +634,15 @@ export default {
|
|||
},
|
||||
// 能力上架明细
|
||||
getOneDetail (page) {
|
||||
var passAndReview = '' // 转变"审核完成"字段为通过
|
||||
var passAndReview = '' // 转变"通过"字段为通过
|
||||
if (this.examineStatus == '-1') {
|
||||
this.status = ''
|
||||
} else if (this.examineStatus == '0') {
|
||||
this.status = '审核中'
|
||||
} else if (this.examineStatus == '1') {
|
||||
this.status = '通过'
|
||||
} else if (this.examineStatus == '2') {
|
||||
this.status = '不通过'
|
||||
} else {
|
||||
this.status = this.examineStatus
|
||||
}
|
||||
|
@ -657,13 +666,15 @@ export default {
|
|||
},
|
||||
// 能力使用明细
|
||||
getTwoDetail (page) {
|
||||
var passAndReview = '' // 转变"审核完成"字段为通过
|
||||
var passAndReview = '' // 转变"通过"字段为通过
|
||||
if (this.examineStatus == '-1') {
|
||||
this.status = ''
|
||||
} else if (this.examineStatus == '0') {
|
||||
this.status = '审核中'
|
||||
} else if (this.examineStatus == '1') {
|
||||
this.status = '通过'
|
||||
} else if (this.examineStatus == '2') {
|
||||
this.status = '不通过'
|
||||
} else {
|
||||
this.status = this.examineStatus
|
||||
}
|
||||
|
|
|
@ -81,7 +81,7 @@ export default {
|
|||
init () {
|
||||
this.visible = true
|
||||
this.$nextTick(() => {
|
||||
this.$refs['dataForm'].resetFields()
|
||||
this.$refs.dataForm.resetFields()
|
||||
this.iconList = getIconList()
|
||||
this.dataForm.parentName = this.$t('menu.parentNameDefault')
|
||||
this.getMenuList()
|
||||
|
@ -89,11 +89,12 @@ export default {
|
|||
},
|
||||
// 获取菜单列表
|
||||
getMenuList () {
|
||||
console.log('获取菜单位置1')
|
||||
return this.$http.get('/sys/menu/list?type=0').then(({ data: res }) => {
|
||||
if (res.code !== 0) {
|
||||
return this.$message.error(res.msg)
|
||||
}
|
||||
this.menuList = res.data
|
||||
this.menuList = res.data.filter(item => item.site === 0)
|
||||
}).catch(() => {})
|
||||
},
|
||||
// 上级菜单树, 设置默认值
|
||||
|
@ -114,11 +115,11 @@ export default {
|
|||
},
|
||||
// 表单提交
|
||||
dataFormSubmitHandle: debounce(function () {
|
||||
this.$refs['dataForm'].validate((valid) => {
|
||||
this.$refs.dataForm.validate((valid) => {
|
||||
if (!valid) {
|
||||
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) {
|
||||
return this.$message.error(res.msg)
|
||||
}
|
||||
|
@ -133,7 +134,7 @@ export default {
|
|||
})
|
||||
}).catch(() => {})
|
||||
})
|
||||
}, 1000, { 'leading': true, 'trailing': false })
|
||||
}, 1000, { leading: true, trailing: false })
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
|
|
@ -38,6 +38,9 @@
|
|||
</template>
|
||||
</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">
|
||||
<template slot-scope="scope" v-if="scope.row.applicationArea">
|
||||
<span class="area-text" v-for="(x,i) in JSON.parse(scope.row.applicationArea)"
|
||||
|
|
|
@ -47,6 +47,13 @@
|
|||
}}</span>
|
||||
</template>
|
||||
</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
|
||||
:label="$t('process.system')"
|
||||
header-align="center"
|
||||
|
@ -161,7 +168,8 @@ export default {
|
|||
created () {
|
||||
bus.$off('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-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 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">
|
||||
<template slot-scope="scope">
|
||||
<span>{{wrjStateObj[scope.row.state]}}</span>
|
||||
</template>
|
||||
</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="applicationSystem" label="应用系统" header-align="center" align="center">
|
||||
</el-table-column>
|
||||
</el-table-column> -->
|
||||
<el-table-column label="应用领域" header-align="center" align="center">
|
||||
<template slot-scope="scope" v-if="scope.row.applicationArea">
|
||||
<span class="area-text" v-for="(x,i) in JSON.parse(scope.row.applicationArea)"
|
||||
|
|
|
@ -13,40 +13,32 @@
|
|||
<h3>申请人信息</h3>
|
||||
<div class="big-BOX">
|
||||
<p>
|
||||
<span class="text"
|
||||
>申请人:<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.user || '--' }}</span></span>
|
||||
<span class="text">电话:<span>{{ dataForm.content.phone || '--' }}</span></span>
|
||||
<span class="text">单位:<span>{{ dataForm.content.unit || '--' }}</span></span>
|
||||
</p>
|
||||
<p>
|
||||
<span class="text">
|
||||
能力申请标题:<span>
|
||||
{{ dataForm.content.title || '--' }}</span
|
||||
></span
|
||||
>
|
||||
<span class="text" v-if="dataForm.content.applicationSystem"
|
||||
>应用系统:<span>{{
|
||||
{{ dataForm.content.title || '--' }}</span></span>
|
||||
<span class="text" v-if="dataForm.content.applicationSystem">应用系统:<span>{{
|
||||
dataForm.content.applicationSystem || '--'
|
||||
}}</span></span
|
||||
>
|
||||
<span class="text" ></span>
|
||||
}}</span></span>
|
||||
<span class="text"></span>
|
||||
</p>
|
||||
<p>
|
||||
<span v-if="dataForm.content.applicationSceneStr"
|
||||
>应用场景:<span>
|
||||
{{ dataForm.content.applicationSceneStr || '--' }}</span
|
||||
></span>
|
||||
<span v-if="dataForm.content.applicationSceneStr">应用场景:<span>
|
||||
{{ dataForm.content.applicationSceneStr || '--' }}</span></span>
|
||||
</p>
|
||||
<p>
|
||||
<span>
|
||||
需求依据:<span>
|
||||
{{ dataForm.content.applicationBackground || '--' }}</span
|
||||
></span>
|
||||
{{ dataForm.content.applicationBackground || '--' }}</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>
|
||||
<span>
|
||||
|
@ -102,9 +94,7 @@
|
|||
<el-radio-button label="退回" class="redAll" @click="showDialog('退回')">退回</el-radio-button>
|
||||
</el-radio-group> -->
|
||||
<el-button type="primary" @click="showDialog('同意')">同意</el-button>
|
||||
<el-button type="danger" plain @click="showDialog('驳回')"
|
||||
>驳回</el-button
|
||||
>
|
||||
<el-button type="danger" plain @click="showDialog('驳回')">驳回</el-button>
|
||||
<!-- <el-input v-if="agreeOrList ==='同意' " v-model="inputAgree" placeholder="请输入同意意见"></el-input>
|
||||
<el-input v-if="agreeOrList ==='退回'" v-model="inputNo" placeholder="请输入退回意见"></el-input>
|
||||
<el-button class="inputBule" @click="agreeOrNot">提交</el-button> -->
|
||||
|
@ -113,21 +103,12 @@
|
|||
|
||||
<!-- 流程详情 -->
|
||||
<ren-process-detail></ren-process-detail>
|
||||
<el-dialog
|
||||
title="审批意见"
|
||||
:close-on-click-modal="false"
|
||||
:visible.sync="dialogVisible"
|
||||
width="30%"
|
||||
:before-close="handleClose"
|
||||
>
|
||||
<el-dialog title="审批意见" :close-on-click-modal="false" :visible.sync="dialogVisible" width="30%"
|
||||
:before-close="handleClose">
|
||||
<el-input v-model="input" placeholder="请输入审批意见"></el-input>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="handleClose2">取 消</el-button>
|
||||
<el-button
|
||||
type="primary"
|
||||
@click.native="agreeOrNot($store.state.contentTabsActiveName)"
|
||||
>确 定</el-button
|
||||
>
|
||||
<el-button type="primary" @click.native="agreeOrNot($store.state.contentTabsActiveName)">确 定</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</el-card>
|
||||
|
@ -144,7 +125,7 @@ import bus from '@/views/bus.js'
|
|||
export default {
|
||||
// 注入公共方法
|
||||
mixins: [processModule],
|
||||
data () {
|
||||
data() {
|
||||
return {
|
||||
dialogVisible: false,
|
||||
dialogType: '',
|
||||
|
@ -173,7 +154,7 @@ export default {
|
|||
agreeOrList: '同意'
|
||||
}
|
||||
},
|
||||
created () {
|
||||
created() {
|
||||
// 将业务KEY赋值给表单
|
||||
console.log('params=================>', this.$route, this.$route.params)
|
||||
this.dataForm.taskId = this.$route.params.taskId
|
||||
|
@ -207,7 +188,7 @@ export default {
|
|||
RenProcessDetail
|
||||
},
|
||||
methods: {
|
||||
init () {
|
||||
init() {
|
||||
// this.visible = true
|
||||
this.$nextTick(() => {
|
||||
// this.$refs.dataForm.resetFields()
|
||||
|
@ -219,23 +200,23 @@ export default {
|
|||
}
|
||||
})
|
||||
},
|
||||
showDialog (title) {
|
||||
showDialog(title) {
|
||||
this.dialogVisible = true
|
||||
this.dialogType = title
|
||||
},
|
||||
handleClose (done) {
|
||||
handleClose(done) {
|
||||
this.$confirm('确认关闭?')
|
||||
.then((_) => {
|
||||
this.input = ''
|
||||
done()
|
||||
})
|
||||
.catch((_) => {})
|
||||
.catch((_) => { })
|
||||
},
|
||||
handleClose2 () {
|
||||
handleClose2() {
|
||||
this.dialogVisible = false
|
||||
this.input = ''
|
||||
},
|
||||
downloadFile2 (url) {
|
||||
downloadFile2(url) {
|
||||
console.log(window.SITE_CONFIG.previewUrl)
|
||||
window.open(
|
||||
window.SITE_CONFIG.previewUrl +
|
||||
|
@ -244,7 +225,7 @@ export default {
|
|||
)
|
||||
},
|
||||
// 获取信息
|
||||
getInfo () {
|
||||
getInfo() {
|
||||
let params = ''
|
||||
if (this.dataForm.taskId) {
|
||||
params = `taskId=${this.dataForm.taskId}`
|
||||
|
@ -307,7 +288,7 @@ export default {
|
|||
this.dataList.push(obj)
|
||||
}
|
||||
})
|
||||
.catch(() => {})
|
||||
.catch(() => { })
|
||||
} else {
|
||||
params = `instanceId=${this.dataForm.instanceId}`
|
||||
this.$http
|
||||
|
@ -359,11 +340,11 @@ export default {
|
|||
this.dataList.push(obj)
|
||||
}
|
||||
})
|
||||
.catch(() => {})
|
||||
.catch(() => { })
|
||||
}
|
||||
},
|
||||
// 申请能力
|
||||
applyData () {
|
||||
applyData() {
|
||||
this.$http
|
||||
.get(`/resource/select/${this.dataForm.instanceId}`)
|
||||
.then(({ data: res }) => {
|
||||
|
@ -375,7 +356,7 @@ export default {
|
|||
// this.dataForm.content = res.data
|
||||
// console.log(this.dataForm, 'ela')
|
||||
})
|
||||
.catch(() => {})
|
||||
.catch(() => { })
|
||||
},
|
||||
// 同意与退回
|
||||
agreeOrNot: debounce(
|
||||
|
@ -412,7 +393,7 @@ export default {
|
|||
}
|
||||
})
|
||||
})
|
||||
.catch(() => {})
|
||||
.catch(() => { })
|
||||
this.tabRemoveHandle(data)
|
||||
} else {
|
||||
this.$message.error('请输入审批意见!')
|
||||
|
@ -455,7 +436,7 @@ export default {
|
|||
1000,
|
||||
{ leading: true, trailing: false }
|
||||
),
|
||||
tabRemoveHandle (tabName) {
|
||||
tabRemoveHandle(tabName) {
|
||||
console.log(tabName, 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa')
|
||||
if (tabName === 'home') {
|
||||
return false
|
||||
|
@ -482,13 +463,19 @@ export default {
|
|||
}
|
||||
},
|
||||
// 启动流程出错回调
|
||||
startProcessErrorCallback (data) {
|
||||
startProcessErrorCallback(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()
|
||||
}
|
||||
}
|
||||
|
@ -497,38 +484,47 @@ export default {
|
|||
::v-deep .big-BOX {
|
||||
background: rgba(244, 245, 248, 0.8);
|
||||
padding: 24px;
|
||||
|
||||
h3 {
|
||||
font-size: 16px;
|
||||
color: #212121;
|
||||
}
|
||||
|
||||
p {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
color: #212121;
|
||||
font-size: 14px;
|
||||
|
||||
span {
|
||||
display: inline-block;
|
||||
margin-left: 8px;
|
||||
line-height: 32px;
|
||||
|
||||
span {
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
|
||||
.text {
|
||||
width: 500px;
|
||||
}
|
||||
}
|
||||
|
||||
.lastP {
|
||||
margin-top: 16px;
|
||||
width: 100%;
|
||||
|
||||
span {
|
||||
display: flex;
|
||||
|
||||
span {
|
||||
padding: 0 12px;
|
||||
height: 32px;
|
||||
background: rgba(232, 234, 239, 1);
|
||||
border-radius: 2px;
|
||||
|
||||
button {
|
||||
background: unset;
|
||||
border: 0;
|
||||
|
@ -539,6 +535,7 @@ export default {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
::v-deep .AbilityApply {
|
||||
margin-top: 32px;
|
||||
|
||||
|
@ -548,27 +545,33 @@ export default {
|
|||
border-bottom: 1px solid #dddee1;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
ul {
|
||||
padding-left: 0px;
|
||||
|
||||
li {
|
||||
list-style: none;
|
||||
padding: 30px 0;
|
||||
border-bottom: 1px solid #dddee1;
|
||||
display: flex;
|
||||
|
||||
img {
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
}
|
||||
|
||||
div {
|
||||
margin-left: 16px;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
|
||||
h2 {
|
||||
margin-bottom: 20px;
|
||||
font-size: 20px;
|
||||
color: #000;
|
||||
display: flex;
|
||||
|
||||
span {
|
||||
display: block;
|
||||
font-size: 14px;
|
||||
|
@ -581,22 +584,26 @@ export default {
|
|||
border-radius: 4px;
|
||||
}
|
||||
}
|
||||
|
||||
p {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.clearfix:after {
|
||||
display: block;
|
||||
content: "";
|
||||
clear: both;
|
||||
}
|
||||
|
||||
.title {
|
||||
color: #0558e1;
|
||||
font-size: 18px;
|
||||
padding-bottom: 0;
|
||||
border-bottom: 0;
|
||||
}
|
||||
|
||||
.title:before {
|
||||
content: "";
|
||||
width: 6px;
|
||||
|
@ -610,17 +617,21 @@ export default {
|
|||
}
|
||||
}
|
||||
}
|
||||
::v-deep .agreeOr > div {
|
||||
|
||||
::v-deep .agreeOr>div {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
.el-input {
|
||||
margin-right: 10px;
|
||||
margin-left: 32px;
|
||||
}
|
||||
}
|
||||
::v-deep .agreeOr > div:last-of-type {
|
||||
|
||||
::v-deep .agreeOr>div:last-of-type {
|
||||
margin-top: 15px;
|
||||
}
|
||||
|
||||
.blueAll {
|
||||
::v-deep .el-radio-button__inner {
|
||||
width: 80px;
|
||||
|
@ -632,12 +643,14 @@ export default {
|
|||
color: #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;
|
||||
background: #0558e1;
|
||||
color: #ffffff;
|
||||
}
|
||||
}
|
||||
|
||||
.inputBule {
|
||||
width: 55px;
|
||||
height: 32px;
|
||||
|
@ -648,8 +661,10 @@ export default {
|
|||
color: #ffffff;
|
||||
border: 1px solid #0558e1;
|
||||
}
|
||||
|
||||
.redAll {
|
||||
margin-left: 10px;
|
||||
|
||||
::v-deep .el-radio-button__inner {
|
||||
width: 80px;
|
||||
height: 32px;
|
||||
|
@ -661,12 +676,14 @@ export default {
|
|||
color: #e83a48;
|
||||
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;
|
||||
color: #ffffff;
|
||||
background: #e83a48;
|
||||
}
|
||||
}
|
||||
|
||||
.blueInput {
|
||||
width: 55px;
|
||||
}
|
||||
|
|
|
@ -123,11 +123,12 @@ export default {
|
|||
},
|
||||
// 获取菜单列表
|
||||
getMenuList () {
|
||||
console.log('获取菜单位置2')
|
||||
return this.$http.get('/sys/menu/list?type=0').then(({ data: res }) => {
|
||||
if (res.code !== 0) {
|
||||
return this.$message.error(res.msg)
|
||||
}
|
||||
this.menuList = res.data
|
||||
this.menuList = res.data.filter(item => item.site === 0)
|
||||
}).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>
|
||||
<el-card shadow="never" class="aui-card--fill">
|
||||
<div class="mod-sys__menu">
|
||||
|
|
Binary file not shown.
|
@ -15,6 +15,7 @@ const state = () => ({
|
|||
accessToken: getAccessToken(),
|
||||
username: '',
|
||||
realName: '',
|
||||
deptName: '',
|
||||
userId: '',
|
||||
avatar: '',
|
||||
role: 0, // 用户管理员权限
|
||||
|
@ -26,6 +27,7 @@ const getters = {
|
|||
avatar: (state) => state.avatar,
|
||||
role: (state) => state.role,
|
||||
userId: (state) => state.userId,
|
||||
deptName: (state) => state.deptName,
|
||||
}
|
||||
const mutations = {
|
||||
/**
|
||||
|
@ -64,6 +66,10 @@ const mutations = {
|
|||
setUserId(state, id) {
|
||||
state.userId = id
|
||||
},
|
||||
// 设置用户单位
|
||||
setDeptName(state, name) {
|
||||
state.deptName = name
|
||||
},
|
||||
/**
|
||||
* @author chuzhixin 1204505056@qq.com
|
||||
* @description 设置头像
|
||||
|
@ -136,6 +142,7 @@ const actions = {
|
|||
commit('setRealname', res.data.data.realName)
|
||||
commit('setRole', res.data.data.roleIdList.length)
|
||||
commit('setUserId', res.data.data.id)
|
||||
commit('setDeptName', res.data.data.deptName)
|
||||
// TODO 获取用户信息,后续执行部分操作
|
||||
// let { username, avatar, roles, ability } = data
|
||||
// if (username && roles && Array.isArray(roles)) {
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
/*
|
||||
* @Author: hisense.wuhongjian
|
||||
* @Date: 2022-04-01 17:23:11
|
||||
* @LastEditors: hisense.wuhongjian
|
||||
* @LastEditTime: 2022-10-11 13:59:18
|
||||
* @LastEditors: Light
|
||||
* @LastEditTime: 2022-10-17 09:25:32
|
||||
* @Description: 告诉大家这是什么
|
||||
*/
|
||||
/**
|
||||
|
@ -26,7 +26,6 @@ router.beforeEach(async (to, from, next) => {
|
|||
// if (SSOTOKEN) {
|
||||
// setAccessToken(SSOTOKEN)
|
||||
// }
|
||||
console.log('验证白名单', routesWhiteList)
|
||||
const token = getAccessToken()
|
||||
console.log('token', token)
|
||||
let hasToken = token
|
||||
|
@ -44,6 +43,7 @@ router.beforeEach(async (to, from, next) => {
|
|||
accessRoutes.forEach((item) => {
|
||||
router.addRoute(item)
|
||||
})
|
||||
console.log('验证白名单', routesWhiteList)
|
||||
if (routesWhiteList.indexOf(to.path) !== -1) {
|
||||
debugger
|
||||
next()
|
||||
|
|
|
@ -318,7 +318,7 @@
|
|||
//来源部门漏斗图
|
||||
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) => {
|
||||
return Number(a.value) - Number(b.value)
|
||||
|
|
|
@ -2,7 +2,11 @@
|
|||
<div class="ability-to-apply-for" :class="{ all: falg }">
|
||||
<div class="title">
|
||||
<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
|
||||
t="1659419933164"
|
||||
class="btn"
|
||||
|
@ -97,7 +101,10 @@
|
|||
{{
|
||||
val.description ||
|
||||
((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 +
|
||||
'个摄像头') ||
|
||||
|
@ -105,7 +112,11 @@
|
|||
}}
|
||||
</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>
|
||||
</template>
|
||||
</div>
|
||||
|
@ -115,11 +126,17 @@
|
|||
title="已申请摄像头列表"
|
||||
@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
|
||||
:columns="columns"
|
||||
:data-source="xVideoList"
|
||||
bordered
|
||||
:pagination="{ defaultPageSize: 6 }"
|
||||
style="margin-top:10px"
|
||||
>
|
||||
<template #bodyCell="{ column, text }">
|
||||
<!-- <template>
|
||||
|
@ -135,6 +152,7 @@
|
|||
import { message } from 'ant-design-vue'
|
||||
import { ref, defineProps } from 'vue'
|
||||
import mybus from '@/myplugins/mybus'
|
||||
import { getDeptAll } from '@/api/user'
|
||||
const router = useRouter()
|
||||
const props = defineProps({
|
||||
dataList: { type: Array, default: null },
|
||||
|
@ -143,12 +161,19 @@
|
|||
let dataForm = ref([])
|
||||
const videoVisible = ref(false)
|
||||
const xVideoList = ref([])
|
||||
|
||||
const xVideoListAll = ref([])
|
||||
const deptNameAll = ref([]) //所有部门名称
|
||||
const deptFlage = ref(true) //判断是否存在默认部门名称
|
||||
const deptName = ref(null)
|
||||
const columns = ref([
|
||||
{
|
||||
title: '摄像头名称',
|
||||
dataIndex: 'name',
|
||||
},
|
||||
{
|
||||
title: '归属部门',
|
||||
dataIndex: 'managementUnitName',
|
||||
}
|
||||
])
|
||||
// eslint-disable-next-line vue/no-setup-props-destructure
|
||||
dataForm.value = props.dataList
|
||||
|
@ -178,11 +203,16 @@
|
|||
// 详情
|
||||
const showItem = (id, type, delFlag, note1) => {
|
||||
if (type == '基础设施') {
|
||||
let arr = JSON.parse(note1)
|
||||
let arr = JSON.parse(note1);
|
||||
xVideoList.value = []
|
||||
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
|
||||
} else {
|
||||
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>
|
||||
|
||||
<style scoped lang="less">
|
||||
|
@ -337,4 +388,11 @@
|
|||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
::v-deep .ant-table-thead > tr > th {
|
||||
//padding-left: px;
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
color:#000000 ;
|
||||
//background: # !important;
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -145,7 +145,6 @@
|
|||
></a-select>
|
||||
</a-form-item>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<a-form-item
|
||||
label="需求依据"
|
||||
|
@ -162,20 +161,50 @@
|
|||
/>
|
||||
</a-form-item>
|
||||
</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">
|
||||
<a-button
|
||||
style="
|
||||
width: 80px;
|
||||
height: 38px;
|
||||
margin-right: 20px;
|
||||
background: #e1edfa;
|
||||
color: #0087ff;
|
||||
font-size: 14px;
|
||||
border-radius: 6px;
|
||||
border: none;
|
||||
padding: 0;
|
||||
text-align: center;
|
||||
"
|
||||
class="cancel-apply"
|
||||
type="primary"
|
||||
html-type="cancle"
|
||||
@click="resetFields()"
|
||||
|
@ -183,17 +212,7 @@
|
|||
退出申请
|
||||
</a-button>
|
||||
<a-button
|
||||
style="
|
||||
width: 80px;
|
||||
height: 38px;
|
||||
background: #0087ff;
|
||||
color: #fff;
|
||||
font-size: 14px;
|
||||
border-radius: 6px;
|
||||
border: none;
|
||||
padding: 0;
|
||||
text-align: center;
|
||||
"
|
||||
class="confirm-apply"
|
||||
type="primary"
|
||||
html-type="submit"
|
||||
@click="processStartHandle()"
|
||||
|
@ -241,6 +260,7 @@
|
|||
import { pageWithAttrs, updateIntegrationServices } from '@/api/home'
|
||||
import { DETAIL_PAGE_CONTENT_DEFAULT_TAB } from '@/global/GlobalConfig.js'
|
||||
import { getIntegrationDetail, soldierApply } from '@/api/home'
|
||||
import { useStore } from 'vuex'
|
||||
import * as moment from 'moment'
|
||||
|
||||
export default {
|
||||
|
@ -252,6 +272,8 @@
|
|||
},
|
||||
setup() {
|
||||
const router = useRouter()
|
||||
const store = useStore()
|
||||
const deptName = store.getters['user/deptName']
|
||||
const disabled = ref(false)
|
||||
const flag = ref(false)
|
||||
const list = ref(JSON.parse(localStorage.getItem('applyList')))
|
||||
|
@ -279,6 +301,7 @@
|
|||
label: '90天',
|
||||
},
|
||||
]
|
||||
const apiURL = window.SITE_CONFIG.apiURL
|
||||
|
||||
if (!applyAll) {
|
||||
list.value.map((item) => {
|
||||
|
@ -307,6 +330,18 @@
|
|||
const isXiHaiAn = ref(whoShow.itShowXiHaiAn)
|
||||
// 西海岸-判断是否是基础设施-摄像头
|
||||
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 (
|
||||
list.value[0] &&
|
||||
list.value[0].arr &&
|
||||
|
@ -560,6 +595,7 @@
|
|||
handleWrjApply(formName)
|
||||
return
|
||||
}
|
||||
|
||||
submitApply(formName).then((res) => {
|
||||
message.success('申请提交成功,请到消息中心查看!')
|
||||
console.log('能力申请================>', res)
|
||||
|
@ -726,34 +762,6 @@
|
|||
])
|
||||
const systemOptions = 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 systemHandleChange = (value) => {
|
||||
|
@ -782,11 +790,14 @@
|
|||
if (res.data.data.records.length == 0) {
|
||||
message.warning('该关键词,暂无应用资源!')
|
||||
} else {
|
||||
// 过滤本单位的应用系统
|
||||
res.data.data.records.map((val) => {
|
||||
if (val.deptName === deptName) {
|
||||
systemOptions2.value.push({
|
||||
value: val.name,
|
||||
label: val.name,
|
||||
})
|
||||
}
|
||||
})
|
||||
// console.log('第一次获取===================>', systemOptions2.value)
|
||||
}
|
||||
|
@ -868,9 +879,22 @@
|
|||
}
|
||||
soldierApply(_data)
|
||||
.then((res) => {
|
||||
if (res.data.code == 0) {
|
||||
message.success(res.data.msg)
|
||||
jumpToDetailsPageconetent()
|
||||
if (res.data.msg === 'success') {
|
||||
message.success('申请提交成功,请到消息中心查看!')
|
||||
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 {
|
||||
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 {
|
||||
deptIdChangeFunction,
|
||||
formRef,
|
||||
|
@ -897,11 +929,11 @@
|
|||
headers: {
|
||||
authorization: 'authorization-text',
|
||||
},
|
||||
handleChange,
|
||||
// handleChange,
|
||||
applySuccess,
|
||||
disabled,
|
||||
baseURL,
|
||||
beforeUpload,
|
||||
// beforeUpload,
|
||||
dataList,
|
||||
systemHandleChange,
|
||||
systemHandleSearch,
|
||||
|
@ -915,6 +947,9 @@
|
|||
isCamera,
|
||||
isXiHaiAn,
|
||||
expireDateOptions,
|
||||
apiURL,
|
||||
roomUpload,
|
||||
iskfq,
|
||||
}
|
||||
},
|
||||
}
|
||||
|
@ -1021,4 +1056,29 @@
|
|||
justify-content: center;
|
||||
// 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>
|
||||
|
|
|
@ -1,11 +1,8 @@
|
|||
<template>
|
||||
<div
|
||||
class="home-header"
|
||||
:class="[
|
||||
<div class="home-header" :class="[
|
||||
select !== 'home' || scrollTop > 500 ? 'white' : '',
|
||||
props.showView === 'algorithm-details' ? '' : '',
|
||||
]"
|
||||
>
|
||||
]">
|
||||
<div class="name" @click="goToHome">
|
||||
<div class="name-bg" v-if="!itShowXiHaiAn"></div>
|
||||
<div class="name-bg-xihaian" v-else></div>
|
||||
|
@ -14,52 +11,26 @@
|
|||
<p>(United Capacity System)</p>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
v-for="item in navList"
|
||||
:key="item.key"
|
||||
@click="jumpPage(item)"
|
||||
class="nav"
|
||||
:class="item.key == select ? 'select' : ''"
|
||||
>
|
||||
<div v-for="item in navList" :key="item.key" @click="jumpPage(item)" class="nav"
|
||||
:class="item.key == select ? 'select' : ''">
|
||||
{{ item.name }}
|
||||
</div>
|
||||
<!-- 购物车 -->
|
||||
<a-badge :count="sgcNum">
|
||||
<svg
|
||||
t="1650455446850"
|
||||
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"
|
||||
>
|
||||
<svg t="1650455446850" 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
|
||||
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'"
|
||||
p-id="2070"
|
||||
></path>
|
||||
:fill="props.showView === 'algorithm-details' ? '#1296db' : '#1296db'" p-id="2070"></path>
|
||||
</svg>
|
||||
</a-badge>
|
||||
<a-badge :count="mynoticeNum" style="margin-left: 0.2rem">
|
||||
<!-- 消息提醒 -->
|
||||
<svg
|
||||
t="1654051054113"
|
||||
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"
|
||||
>
|
||||
<svg t="1654051054113" 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
|
||||
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'"
|
||||
p-id="2188"
|
||||
></path>
|
||||
:fill="props.showView === 'algorithm-details' ? '#1296db' : '#1296db'" p-id="2188"></path>
|
||||
</svg>
|
||||
<!-- <a-avatar shape="square" size="large" /> -->
|
||||
</a-badge>
|
||||
|
@ -88,10 +59,7 @@
|
|||
<template #title>
|
||||
<span>{{ user.realName }}</span>
|
||||
</template>
|
||||
<span
|
||||
class="name"
|
||||
@click="jumpPage({ name: '个人中心', key: 'personalCenter' })"
|
||||
>
|
||||
<span class="name" @click="jumpPage({ name: '个人中心', key: 'personalCenter' })">
|
||||
{{ user.realName }}
|
||||
</span>
|
||||
</a-tooltip>
|
||||
|
@ -114,58 +82,54 @@
|
|||
fill="#bfbfbf"
|
||||
></path>
|
||||
</svg> -->
|
||||
<i
|
||||
@click="jumpPage({ name: '后台管理', key: 'houtaiguanli' })"
|
||||
class="iconTo"
|
||||
v-show="backFlag"
|
||||
></i>
|
||||
<i @click="jumpPage({ name: '后台管理', key: 'houtaiguanli' })" class="iconTo" v-show="backFlag"></i>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script setup>
|
||||
import { ref, onMounted, onBeforeUnmount, defineProps } from 'vue'
|
||||
import { getUserInfo } from '@/api/user'
|
||||
import { recordRoute } from '@/config'
|
||||
import { useRoute, useRouter } from 'vue-router'
|
||||
import { mynotice } from '@/api/home'
|
||||
import { useStore } from 'vuex'
|
||||
import { getSgcTotal } from '@/api/home'
|
||||
import Cookies from 'js-cookie'
|
||||
import mybus from '@/myplugins/mybus'
|
||||
import { DETAIL_PAGE_CONTENT_DEFAULT_TAB } from '@/global/GlobalConfig.js'
|
||||
import { message } from 'ant-design-vue'
|
||||
import { ref, onMounted, onBeforeUnmount, defineProps } from 'vue'
|
||||
import { getUserInfo } from '@/api/user'
|
||||
import { recordRoute } from '@/config'
|
||||
import { useRoute, useRouter } from 'vue-router'
|
||||
import { mynotice } from '@/api/home'
|
||||
import { useStore } from 'vuex'
|
||||
import { getSgcTotal } from '@/api/home'
|
||||
import Cookies from 'js-cookie'
|
||||
import mybus from '@/myplugins/mybus'
|
||||
import { DETAIL_PAGE_CONTENT_DEFAULT_TAB } from '@/global/GlobalConfig.js'
|
||||
import { message } from 'ant-design-vue'
|
||||
|
||||
const store = useStore()
|
||||
const router = useRouter()
|
||||
const route = useRoute()
|
||||
const itShowXiHaiAn = ref(whoShow.itShowXiHaiAn)
|
||||
const store = useStore()
|
||||
const router = useRouter()
|
||||
const route = useRoute()
|
||||
const itShowXiHaiAn = ref(whoShow.itShowXiHaiAn)
|
||||
|
||||
// 用户信息
|
||||
const user = ref({
|
||||
// 用户信息
|
||||
const user = ref({
|
||||
username: store.getters['user/username'],
|
||||
realName: store.getters['user/realName'],
|
||||
})
|
||||
const select = ref(router.currentRoute.value.name)
|
||||
const mynoticeFlag = ref(false)
|
||||
const mynoticeData = ref([])
|
||||
const navList = ref(navListManagement.navList)
|
||||
const backFlag = ref(true)
|
||||
getUserInfo().then((res) => {
|
||||
})
|
||||
const select = ref(router.currentRoute.value.name)
|
||||
const mynoticeFlag = ref(false)
|
||||
const mynoticeData = ref([])
|
||||
const navList = ref(navListManagement.navList)
|
||||
const backFlag = ref(true)
|
||||
getUserInfo().then((res) => {
|
||||
if (
|
||||
res.data.data.roleIdList.length == 0 &&
|
||||
res.data.data.superAdmin === 0
|
||||
) {
|
||||
backFlag.value = false
|
||||
}
|
||||
})
|
||||
console.log('navList------------>', navList)
|
||||
})
|
||||
console.log('navList------------>', navList)
|
||||
|
||||
const props = defineProps({
|
||||
const props = defineProps({
|
||||
showView: { type: String, default: '' },
|
||||
})
|
||||
})
|
||||
|
||||
// 退出登录
|
||||
const logout = async () => {
|
||||
// 退出登录
|
||||
const logout = async () => {
|
||||
await store.dispatch('user/logout')
|
||||
window.sessionStorage.setItem('visits', JSON.stringify([]))
|
||||
// 西海岸不返回登录页
|
||||
|
@ -177,15 +141,23 @@
|
|||
router.push('/login')
|
||||
}
|
||||
}
|
||||
}
|
||||
// 返回首页
|
||||
const goToHome = () => {
|
||||
// 西海岸
|
||||
if (itShowXiHaiAn.value) {
|
||||
if (
|
||||
!xhaHasPermissionUser.list.includes(user.value.username)
|
||||
) {
|
||||
return message.warn('暂无权限')
|
||||
}
|
||||
}
|
||||
// 返回首页
|
||||
const goToHome = () => {
|
||||
router.push({
|
||||
path: '/home',
|
||||
})
|
||||
}
|
||||
// 跳转页面
|
||||
const jumpPage = (item) => {
|
||||
}
|
||||
// 跳转页面
|
||||
const jumpPage = (item) => {
|
||||
// 西海岸
|
||||
if (itShowXiHaiAn.value) {
|
||||
let _arr = ['共享门户', '能力云图', '能力统计', '需求中心', '赋能案例']
|
||||
|
@ -271,50 +243,50 @@
|
|||
router.push('/home')
|
||||
break
|
||||
}
|
||||
}
|
||||
const scrollTop = ref(0)
|
||||
window.onscroll = function () {
|
||||
}
|
||||
const scrollTop = ref(0)
|
||||
window.onscroll = function () {
|
||||
//为了保证兼容性,这里取两个值,哪个有值取哪一个
|
||||
//scrollTop就是触发滚轮事件时滚轮的高度
|
||||
scrollTop.value =
|
||||
document.documentElement.scrollTop || document.body.scrollTop
|
||||
// console.log('滚动距离' + scrollTop.value)
|
||||
}
|
||||
mybus.on('getSgcNum', () => {
|
||||
}
|
||||
mybus.on('getSgcNum', () => {
|
||||
getSgcTotal().then((res) => {
|
||||
sgcNum.value = res.data.data.count
|
||||
// console.log('申购车总数========================>', res.data.data.count)
|
||||
})
|
||||
})
|
||||
})
|
||||
|
||||
const sgcNum = ref(0)
|
||||
const goToSgc = () => {
|
||||
const sgcNum = ref(0)
|
||||
const goToSgc = () => {
|
||||
window.sessionStorage.setItem('type', JSON.stringify('PurchaseVehicle'))
|
||||
router.push('/personalCenter')
|
||||
}
|
||||
const mynoticeNum = ref(0)
|
||||
// 我的消息
|
||||
const getMynotice = () => {
|
||||
}
|
||||
const mynoticeNum = ref(0)
|
||||
// 我的消息
|
||||
const getMynotice = () => {
|
||||
mynotice({ page: 1, limit: 3, readStatus: 0 }).then((res) => {
|
||||
// console.log('我的消息', res.data.data)
|
||||
mynoticeNum.value = res.data.data.total
|
||||
mynoticeData.value = res.data.data.list
|
||||
})
|
||||
}
|
||||
const goToView = () => {
|
||||
}
|
||||
const goToView = () => {
|
||||
router.push({
|
||||
path: '/mynoticeView',
|
||||
})
|
||||
}
|
||||
// const read = (item) => {
|
||||
// mynoticeRead(item.id).then((res) => {
|
||||
// console.log('已读', res)
|
||||
// getMynotice()
|
||||
// })
|
||||
// }
|
||||
// 建立链接 -- 携带cookie参数
|
||||
}
|
||||
// const read = (item) => {
|
||||
// mynoticeRead(item.id).then((res) => {
|
||||
// console.log('已读', res)
|
||||
// getMynotice()
|
||||
// })
|
||||
// }
|
||||
// 建立链接 -- 携带cookie参数
|
||||
|
||||
onMounted(() => {
|
||||
onMounted(() => {
|
||||
getSgcTotal().then((res) => {
|
||||
// console.log('初始化========================>', res.data.data.count)
|
||||
sgcNum.value = res.data.data.count
|
||||
|
@ -348,19 +320,19 @@
|
|||
mybus.on('getMynotice', () => {
|
||||
getMynotice()
|
||||
})
|
||||
})
|
||||
onBeforeUnmount(() => {
|
||||
})
|
||||
onBeforeUnmount(() => {
|
||||
mybus.off('getSgcNum')
|
||||
mybus.off('getMynotice')
|
||||
})
|
||||
})
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
@font-face {
|
||||
@font-face {
|
||||
font-family: 'header-typeface';
|
||||
src: url('~@/assets/newHome/font/header-typeface.ttf');
|
||||
}
|
||||
}
|
||||
|
||||
.home-header {
|
||||
.home-header {
|
||||
height: 0.64rem;
|
||||
width: 100%;
|
||||
max-width: 1920px;
|
||||
|
@ -397,8 +369,7 @@
|
|||
.name-bg-xihaian {
|
||||
height: 0.6rem;
|
||||
width: 0.6rem;
|
||||
background: url('~@/assets/newHome/newHome-title-bg-xihaian.png')
|
||||
no-repeat;
|
||||
background: url('~@/assets/newHome/newHome-title-bg-xihaian.png') no-repeat;
|
||||
background-size: 100%;
|
||||
margin-right: 0.15rem;
|
||||
}
|
||||
|
@ -478,9 +449,9 @@
|
|||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.white {
|
||||
.white {
|
||||
background-color: #fff;
|
||||
box-shadow: 0 0.02rem 0.1rem rgba(0, 0, 0, 0.1);
|
||||
|
||||
|
@ -513,15 +484,13 @@
|
|||
color: #000;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.blue {
|
||||
.blue {
|
||||
position: absolute;
|
||||
background: linear-gradient(
|
||||
to right,
|
||||
background: linear-gradient(to right,
|
||||
rgba(15, 90, 253, 0.8),
|
||||
rgba(36, 25, 248, 0.8)
|
||||
);
|
||||
rgba(36, 25, 248, 0.8));
|
||||
|
||||
.name {
|
||||
color: #fff;
|
||||
|
@ -541,9 +510,9 @@
|
|||
color: #fff;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.mynotice {
|
||||
.mynotice {
|
||||
width: 4rem;
|
||||
height: 3rem;
|
||||
background: #eee;
|
||||
|
@ -560,18 +529,19 @@
|
|||
color: #000;
|
||||
font-size: 0.16rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.mynotice::-webkit-scrollbar {
|
||||
.mynotice::-webkit-scrollbar {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
:deep(.ant-list-item) {
|
||||
:deep(.ant-list-item) {
|
||||
border-bottom: 0.01rem solid #ccc;
|
||||
padding: 0.1rem;
|
||||
}
|
||||
}
|
||||
|
||||
:deep(.ant-list-item-meta-title) {
|
||||
|
||||
:deep(.ant-list-item-meta-title) {
|
||||
// display: flex;
|
||||
// justify-content: space-around;
|
||||
// align-items: center;
|
||||
|
@ -597,18 +567,18 @@
|
|||
font-size: 0.1rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.iconTo {
|
||||
.iconTo {
|
||||
display: block;
|
||||
width: 0.35rem;
|
||||
height: 0.35rem;
|
||||
background: url('~@/assets/newHome/iconTo.png') no-repeat;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
<style>
|
||||
html::-webkit-scrollbar {
|
||||
html::-webkit-scrollbar {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -157,7 +157,7 @@
|
|||
password: Encrypt(this.form.password),
|
||||
username: this.form.username,
|
||||
})
|
||||
window.localStorage.setItem('tokenStartTime', new Date().getTime())
|
||||
// window.localStorage.setItem('tokenStartTime', new Date().getTime())
|
||||
window.sessionStorage.setItem('visits', JSON.stringify([]))
|
||||
console.log(
|
||||
'添加visits========================================>',
|
||||
|
|
|
@ -262,35 +262,27 @@ const goPage = (item) => {
|
|||
}
|
||||
}
|
||||
}
|
||||
let isQingDao = whoShow.itShowQingDao;
|
||||
|
||||
// 更改消息状态
|
||||
const read = (item) => {
|
||||
if (selectData.value.length === 0 && !item) {
|
||||
message.error('未选择消息!')
|
||||
return
|
||||
return message.error('未选择消息!')
|
||||
}
|
||||
console.log(selectData.value)
|
||||
if (item) {
|
||||
// 已读状态
|
||||
// 已读状态,跳转页面
|
||||
if (item.readStatus === 1) {
|
||||
if(isQingDao) {
|
||||
goPage(item)
|
||||
}
|
||||
// 跳转页面
|
||||
return
|
||||
return goPage(item)
|
||||
}
|
||||
mynoticeRead(item.id).then((res) => {
|
||||
if (res.data.code == 0) {
|
||||
message.success('通知已读!')
|
||||
mybus.emit('getMynotice')
|
||||
init()
|
||||
if (isQingDao) {
|
||||
// 页面跳转
|
||||
setTimeout(() => {
|
||||
goPage(item)
|
||||
}, 1000)
|
||||
}
|
||||
}, 1500)
|
||||
} else {
|
||||
message.error('操作失败!')
|
||||
}
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
<p>
|
||||
<span>应用背景:{{ props.refObj.applicationBackground }}</span>
|
||||
</p>
|
||||
<p>
|
||||
<p v-if="!whoShow1.itShowXiHaiAn">
|
||||
<span>期望效果:{{ props.refObj.effectWish }}</span>
|
||||
</p>
|
||||
<p v-if="props.refObj.enclosure">
|
||||
|
@ -159,26 +159,32 @@
|
|||
<span class="channelName">{{ val.channelName }}</span>
|
||||
<span class="type">基础设施</span>
|
||||
</div>
|
||||
<div>
|
||||
<a-button type="primary" v-if="item.approveStatus == '通过' && whoShow1.itShowXiHaiAn"
|
||||
@click.stop="openVideo(val)">
|
||||
视频预览
|
||||
</a-button>
|
||||
|
||||
<div class="channelName" style="color:#ff7875" v-if="whoShow1.itShowXiHaiAn && item.ended">该流程已终止
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ability-bottom">
|
||||
<div class="dec2">位置:{{ val.nodeName }}</div>
|
||||
<div class="result" v-if="item.approveStatus == '通过'">
|
||||
申请结果:{{
|
||||
'列表地址:' +
|
||||
申请结果:
|
||||
<span>列表地址:</span><span style="cursor: pointer;" @click="openView(backUrl +
|
||||
'resource/getApplyCameraList/' +
|
||||
item.instanceId)">{{
|
||||
backUrl +
|
||||
'resource/getApplyCameraList/' +
|
||||
item.instanceId +
|
||||
';' +
|
||||
'视频流地址:' +
|
||||
item.instanceId }}</span>
|
||||
<span>视频流地址:</span>
|
||||
<span style="cursor: pointer" @click="openView(backUrl +
|
||||
'resource/hls/getHls/?key=' +
|
||||
val.channelId)">{{
|
||||
backUrl +
|
||||
'resource/hls/getHls/?key=' +
|
||||
val.channelId
|
||||
}}
|
||||
val.channelId}}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -452,6 +458,10 @@ const handleUser = () => {
|
|||
})
|
||||
}
|
||||
|
||||
const openView = (url) => {
|
||||
window.open(url, '_blank')
|
||||
}
|
||||
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
.title {
|
||||
|
@ -530,7 +540,7 @@ const handleUser = () => {
|
|||
margin-left: 0.1rem;
|
||||
|
||||
.ability {
|
||||
height: 1.3rem;
|
||||
height: 1.6rem;
|
||||
display: flex;
|
||||
border-bottom: 1px #eee solid;
|
||||
padding: 0.1rem 0;
|
||||
|
@ -732,6 +742,7 @@ const handleUser = () => {
|
|||
font-weight: bold;
|
||||
opacity: 0.4;
|
||||
transform: rotate(-25deg);
|
||||
width: 470px
|
||||
width: 470px;
|
||||
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -1,9 +1,21 @@
|
|||
<template>
|
||||
<DeviceApplyDetail v-if="showType === '设备申请'" :refObj="refObj"></DeviceApplyDetail>
|
||||
<DeviceApplyDetail
|
||||
v-if="showType === '设备申请'"
|
||||
:refObj="refObj"
|
||||
></DeviceApplyDetail>
|
||||
<div class="form-container" v-else>
|
||||
<AbilityApplication :refObj="refObj" v-if="showType === '能力申请'"></AbilityApplication>
|
||||
<PutOnTheShelf :refObj="refObj" v-else-if="showType === '能力上架'"></PutOnTheShelf>
|
||||
<OffTheShelf :refObj="refObj" v-else-if="showType === '能力下架'"></OffTheShelf>
|
||||
<AbilityApplication
|
||||
:refObj="refObj"
|
||||
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>
|
||||
<Comment :refObj="refObj" v-else-if="showType === '需求评论'"></Comment>
|
||||
<OtherApplications :refObj="refObj" v-else></OtherApplications>
|
||||
|
@ -23,46 +35,46 @@
|
|||
</div>
|
||||
</template>
|
||||
<script setup>
|
||||
import AbilityApplication from './AbilityApplication.vue'
|
||||
import PutOnTheShelf from './PutOnTheShelf .vue'
|
||||
import OffTheShelf from './OffTheShelf.vue'
|
||||
import Demand from './Demand.vue'
|
||||
import Comment from './Comment.vue'
|
||||
import DeviceApplyDetail from './DeviceApplyDetail.vue'
|
||||
import OtherApplications from '@/views/personalCenter/components/OtherApplications '
|
||||
import { onMounted, reactive, defineProps, ref } from 'vue'
|
||||
import Cookies from 'js-cookie'
|
||||
// import { baseURL } from '@/config'
|
||||
import qs from 'qs'
|
||||
import {
|
||||
import AbilityApplication from './AbilityApplication.vue'
|
||||
import PutOnTheShelf from './PutOnTheShelf .vue'
|
||||
import OffTheShelf from './OffTheShelf.vue'
|
||||
import Demand from './Demand.vue'
|
||||
import Comment from './Comment.vue'
|
||||
import DeviceApplyDetail from './DeviceApplyDetail.vue'
|
||||
import OtherApplications from '@/views/personalCenter/components/OtherApplications '
|
||||
import { onMounted, reactive, defineProps, ref } from 'vue'
|
||||
import Cookies from 'js-cookie'
|
||||
// import { baseURL } from '@/config'
|
||||
import qs from 'qs'
|
||||
import {
|
||||
getApplyForm,
|
||||
getTaskHandleDetailInfo,
|
||||
getDemandForm,
|
||||
nengliziyuanshangjiaapply,
|
||||
getTaskVariables,
|
||||
} from '@/api/personalCenter'
|
||||
import { selectOneDel } from '@/api/home'
|
||||
const props = defineProps({
|
||||
} from '@/api/personalCenter'
|
||||
import { selectOneDel } from '@/api/home'
|
||||
const props = defineProps({
|
||||
processDefinitionName: { type: String, default: null },
|
||||
businessKey: { type: String, default: null },
|
||||
processInstanceId: { type: String, default: null },
|
||||
resourceId: { type: String, default: null },
|
||||
refObj: { type: Object, default: null },
|
||||
showType: { type: String, default: null },
|
||||
})
|
||||
const refObj = ref({})
|
||||
const showType = ref('')
|
||||
// eslint-disable-next-line vue/no-setup-props-destructure
|
||||
refObj.value = props.refObj
|
||||
// eslint-disable-next-line vue/no-setup-props-destructure
|
||||
showType.value = props.showType
|
||||
//流转详情
|
||||
const dataSource = reactive({ data: [] })
|
||||
console.log('refObj------------>', refObj);
|
||||
})
|
||||
const refObj = ref({})
|
||||
const showType = ref('')
|
||||
// eslint-disable-next-line vue/no-setup-props-destructure
|
||||
refObj.value = props.refObj
|
||||
// eslint-disable-next-line vue/no-setup-props-destructure
|
||||
showType.value = props.showType
|
||||
//流转详情
|
||||
const dataSource = reactive({ data: [] })
|
||||
console.log('refObj------------>', refObj)
|
||||
|
||||
// console.log(props.refObj, '---------------------------------------')
|
||||
// console.log(props.refObj, '---------------------------------------')
|
||||
|
||||
const downloadFile = (path, name) => {
|
||||
const downloadFile = (path, name) => {
|
||||
const xhr = new XMLHttpRequest()
|
||||
xhr.open('get', path)
|
||||
xhr.responseType = 'blob'
|
||||
|
@ -87,9 +99,9 @@ const downloadFile = (path, name) => {
|
|||
URL.revokeObjectURL(url)
|
||||
}
|
||||
}
|
||||
}
|
||||
//表单信息
|
||||
const formName = reactive({
|
||||
}
|
||||
//表单信息
|
||||
const formName = reactive({
|
||||
user: '',
|
||||
phone: '',
|
||||
unit: '',
|
||||
|
@ -98,17 +110,22 @@ const formName = reactive({
|
|||
scene: '',
|
||||
basis: '',
|
||||
id: '',
|
||||
})
|
||||
let shifoushizujian = ref('')
|
||||
let nameNotShow = ref('')
|
||||
let algorithmShow = ref('')
|
||||
const dataForm = reactive({ data: {} })
|
||||
const columns = [
|
||||
})
|
||||
let shifoushizujian = ref('')
|
||||
let nameNotShow = ref('')
|
||||
let algorithmShow = ref('')
|
||||
const dataForm = reactive({ data: {} })
|
||||
const columns = [
|
||||
{
|
||||
title: '任务名称',
|
||||
dataIndex: 'activityName',
|
||||
key: 'activityName',
|
||||
},
|
||||
{
|
||||
title: '处理部门',
|
||||
dataIndex: 'assigneeDeptName',
|
||||
key: 'assigneeDeptName',
|
||||
},
|
||||
{
|
||||
title: '处理人',
|
||||
dataIndex: 'assigneeName',
|
||||
|
@ -130,12 +147,12 @@ const columns = [
|
|||
key: 'comment',
|
||||
},
|
||||
{
|
||||
title: '任务时长/秒',
|
||||
dataIndex: 'durationInSeconds',
|
||||
key: 'durationInSeconds',
|
||||
title: '任务时长',
|
||||
dataIndex: 'duration',
|
||||
key: 'duration',
|
||||
},
|
||||
]
|
||||
const getInfo = () => {
|
||||
]
|
||||
const getInfo = () => {
|
||||
console.log(props.processInstanceId, '============================')
|
||||
if (props.processDefinitionName == '能力申请') {
|
||||
// getTaskVariables({ taskId: props.processInstanceId }).then((res) => {
|
||||
|
@ -199,9 +216,9 @@ const getInfo = () => {
|
|||
dataForm.data = res.data.data
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const getLiuZhuanInfo = () => {
|
||||
const getLiuZhuanInfo = () => {
|
||||
const params = qs.stringify({
|
||||
processInstanceId: props.processInstanceId,
|
||||
})
|
||||
|
@ -212,9 +229,9 @@ const getLiuZhuanInfo = () => {
|
|||
})
|
||||
dataSource.data.push([props.processInstanceId, arr])
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
onMounted(() => {
|
||||
onMounted(() => {
|
||||
// getInfo()
|
||||
if (props.refObj.resourceApplication) {
|
||||
dataSource.data = []
|
||||
|
@ -228,9 +245,9 @@ onMounted(() => {
|
|||
} else {
|
||||
getLiuZhuanInfo()
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
const getResourceURL = () => {
|
||||
const getResourceURL = () => {
|
||||
console.log('111111111111111111111111111111', Cookies.get('token'))
|
||||
const params = qs.stringify({
|
||||
token: Cookies.get('token'),
|
||||
|
@ -238,11 +255,11 @@ const getResourceURL = () => {
|
|||
processInstanceId: props.processInstanceId,
|
||||
})
|
||||
return `${window.SITE_CONFIG.apiURL}/act/his/getInstImage?${params}`
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="less">
|
||||
.form-container {
|
||||
.form-container {
|
||||
height: 6rem;
|
||||
overflow-y: scroll;
|
||||
padding: 20px 20px 30px 20px;
|
||||
|
@ -256,25 +273,25 @@ const getResourceURL = () => {
|
|||
margin-top: 10px;
|
||||
border-left: 6px #0058e1 solid;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
:deep(.ant-table-thead)>tr>.ant-table-cell {
|
||||
:deep(.ant-table-thead) > tr > .ant-table-cell {
|
||||
background: #0087ff;
|
||||
color: #fff;
|
||||
border: none;
|
||||
text-align: center;
|
||||
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;
|
||||
// display: inline-block;
|
||||
// white-space: nowrap;
|
||||
// overflow: hidden;
|
||||
// text-overflow: ellipsis;
|
||||
}
|
||||
}
|
||||
|
||||
.oddNumbers {
|
||||
.oddNumbers {
|
||||
margin-bottom: 0.05rem;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -3,16 +3,27 @@
|
|||
<div class="title" style="margin-bottom: 0.2rem">我的申请</div>
|
||||
<div class="tab" style="margin-bottom: 0.1rem">
|
||||
<span>类型</span>
|
||||
<div :class="typeIndex == index ? 'tabclass' : ' '" @click="changeType(item, index)"
|
||||
v-for="(item, index) in typeList" :key="index">
|
||||
<div
|
||||
:class="typeIndex == index ? 'tabclass' : ' '"
|
||||
@click="changeType(item, index)"
|
||||
v-for="(item, index) in typeList"
|
||||
:key="index"
|
||||
>
|
||||
{{ item }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="tab">
|
||||
<span>申请状态</span>
|
||||
<div :class="tabIndex == index ? 'tabclass' : ' '" @click="changeApplyState(item, index)"
|
||||
v-for="(item, index) in tabList" :key="index">
|
||||
<a-badge :count="item === '审核中' ? num.unfinished : num.finished" v-if="item !== '全部'">
|
||||
<div
|
||||
:class="tabIndex == index ? 'tabclass' : ' '"
|
||||
@click="changeApplyState(item, index)"
|
||||
v-for="(item, index) in tabList"
|
||||
:key="index"
|
||||
>
|
||||
<a-badge
|
||||
:count="item === '审核中' ? num.unfinished : num.finished"
|
||||
v-if="item !== '全部'"
|
||||
>
|
||||
{{ item }}
|
||||
</a-badge>
|
||||
<template v-else>
|
||||
|
@ -22,7 +33,11 @@
|
|||
</div>
|
||||
<div v-if="contentList.data.length > 0">
|
||||
<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">
|
||||
<span>申请单号:{{ item.applyNumber || '--' }}</span>
|
||||
<div></div>
|
||||
|
@ -33,7 +48,9 @@
|
|||
</template>
|
||||
<div class="content-body-title">
|
||||
<span>
|
||||
名称:{{ item.cameraList ? item.system : item.title }}
|
||||
名称:{{
|
||||
item.cameraList ? item.system : item.title || item.name
|
||||
}}
|
||||
</span>
|
||||
<div></div>
|
||||
</div>
|
||||
|
@ -48,55 +65,121 @@
|
|||
</div>
|
||||
<div class="content-body-bottom">
|
||||
<div>申请日期:{{ item.createDate || item.startTime }}</div>
|
||||
<div></div>
|
||||
<!-- 西海岸--增加过期时间显示 -->
|
||||
<div v-if="isXiHaiAn">过期时间:{{ item.expireDate || '' }}</div>
|
||||
</div>
|
||||
<div class="button-box">
|
||||
<div class="button" v-if="typeName == '设备申请' && phoneSate.includes(item.state)"
|
||||
@click="showPhoneModal(item)">
|
||||
<div
|
||||
class="button"
|
||||
v-if="typeName == '设备申请' && phoneSate.includes(item.state)"
|
||||
@click="showPhoneModal(item)"
|
||||
>
|
||||
联系方式
|
||||
</div>
|
||||
<div class="button" @click="showDetail(item)">查看详情</div>
|
||||
<div class="button" @click="showAdd(item)" v-if="item.backToFirst">
|
||||
修改
|
||||
</div>
|
||||
<svg 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="
|
||||
<svg
|
||||
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.resourceStatus == 4 || item.resourceStatus == 5)
|
||||
" style="position: absolute; top: 20px; left: -850px">
|
||||
"
|
||||
style="position: absolute; top: 20px; left: -850px"
|
||||
>
|
||||
<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"
|
||||
fill="#515151" opacity=".5" p-id="5971"></path>
|
||||
fill="#515151"
|
||||
opacity=".5"
|
||||
p-id="5971"
|
||||
></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"
|
||||
fill="#515151" opacity=".5" p-id="5972"></path>
|
||||
fill="#515151"
|
||||
opacity=".5"
|
||||
p-id="5972"
|
||||
></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"
|
||||
fill="#515151" opacity=".5" p-id="5973"></path>
|
||||
fill="#515151"
|
||||
opacity=".5"
|
||||
p-id="5973"
|
||||
></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"
|
||||
fill="#515151" opacity=".5" p-id="5974"></path>
|
||||
fill="#515151"
|
||||
opacity=".5"
|
||||
p-id="5974"
|
||||
></path>
|
||||
</svg>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="bottom">
|
||||
<a-pagination size="small" pageSize="4" :total="total" :current="page" @change="handleCurrentChange"
|
||||
@showSizeChange="handlePageSizeChange" :showSizeChanger="false" />
|
||||
<a-pagination
|
||||
size="small"
|
||||
pageSize="4"
|
||||
:total="total"
|
||||
:current="page"
|
||||
@change="handleCurrentChange"
|
||||
@showSizeChange="handlePageSizeChange"
|
||||
:showSizeChanger="false"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<a-empty v-else />
|
||||
<a-modal bodyStyle="padding:0.1rem 0" v-model:visible="detailsVisible" title="申请详情" style="width: 900px"
|
||||
:footer="null" destroyOnClose="true" :maskClosable="false">
|
||||
<apply-details :processDefinitionName="processDefinitionName" :businessKey="businessKey"
|
||||
:processInstanceId="processInstanceId" :resourceId="resourceId" :refObj="refObj" :showType="showType">
|
||||
</apply-details>
|
||||
<a-modal
|
||||
bodyStyle="padding:0.1rem 0"
|
||||
v-model:visible="detailsVisible"
|
||||
style="width: 1000px"
|
||||
: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 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-modal>
|
||||
<a-modal v-model:visible="videoVisible" title="已申请摄像头列表" @ok="videoVisible = false">
|
||||
<a-table :columns="columns" :data-source="xVideoList" bordered :pagination="{ defaultPageSize: 6 }">
|
||||
<a-modal
|
||||
v-model:visible="videoVisible"
|
||||
title="已申请摄像头列表"
|
||||
@ok="videoVisible = false"
|
||||
>
|
||||
<a-table
|
||||
:columns="columns"
|
||||
:data-source="xVideoList"
|
||||
bordered
|
||||
:pagination="{ defaultPageSize: 6 }"
|
||||
>
|
||||
<template #bodyCell="{ column, text }">
|
||||
<!-- <template>
|
||||
<a>{{ text }}</a>
|
||||
|
@ -107,15 +190,26 @@
|
|||
</div>
|
||||
|
||||
<!-- 联系方式弹框 -->
|
||||
<a-modal v-model:visible="phoneVisible" title="提示" @ok="phoneVisible = false">
|
||||
<a-modal
|
||||
v-model:visible="phoneVisible"
|
||||
title="提示"
|
||||
@ok="phoneVisible = false"
|
||||
>
|
||||
<!-- 工业信息化局那个号,电话配这个号:199 6399 0996 -->
|
||||
<p>请联系工业信息化局,电话:199 6399 0996</p>
|
||||
</a-modal>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { onMounted, reactive, ref, onBeforeUnmount, h, defineProps } from 'vue'
|
||||
import {
|
||||
import {
|
||||
onMounted,
|
||||
reactive,
|
||||
ref,
|
||||
onBeforeUnmount,
|
||||
h,
|
||||
defineProps,
|
||||
} from 'vue'
|
||||
import {
|
||||
getMyProcessInstancePage,
|
||||
getTabilityapplication,
|
||||
getByApplyFlag,
|
||||
|
@ -124,85 +218,86 @@ import {
|
|||
demandComment,
|
||||
deviceApplylist,
|
||||
getDeviceDetail,
|
||||
} from '@/api/personalCenter'
|
||||
import {
|
||||
} from '@/api/personalCenter'
|
||||
import {
|
||||
updateRes,
|
||||
relaunch,
|
||||
selectOne,
|
||||
getApplyCameraList,
|
||||
selectOneDel,
|
||||
} from '@/api/home'
|
||||
import { useRouter } from 'vue-router'
|
||||
import { message } from 'ant-design-vue'
|
||||
import ApplyDetails from '@/views/personalCenter/components/ApplyDetails'
|
||||
import mybus from '@/myplugins/mybus'
|
||||
import * as moment from 'moment'
|
||||
} from '@/api/home'
|
||||
import { useRouter } from 'vue-router'
|
||||
import { message } from 'ant-design-vue'
|
||||
import ApplyDetails from '@/views/personalCenter/components/ApplyDetails'
|
||||
import mybus from '@/myplugins/mybus'
|
||||
import * as moment from 'moment'
|
||||
|
||||
const props = defineProps({
|
||||
const props = defineProps({
|
||||
tabTypeName: { type: String, default: '' },
|
||||
})
|
||||
const router = useRouter()
|
||||
let typeList = ref([
|
||||
})
|
||||
const router = useRouter()
|
||||
let typeList = ref([
|
||||
'能力申请',
|
||||
'能力上架',
|
||||
'能力下架',
|
||||
'能力需求',
|
||||
'需求评论',
|
||||
// '能力评价',
|
||||
])
|
||||
// 西海岸-设备申请
|
||||
let isXiHaiAn = whoShow.itShowXiHaiAn
|
||||
const phoneSate = ref([2, 3])
|
||||
if (isXiHaiAn) {
|
||||
])
|
||||
// 西海岸-设备申请
|
||||
let isXiHaiAn = whoShow.itShowXiHaiAn
|
||||
const itShowXiHaiAn = ref(isXiHaiAn)
|
||||
const phoneSate = ref([2, 3])
|
||||
if (isXiHaiAn) {
|
||||
typeList.value.push('设备申请')
|
||||
}
|
||||
const typeStrObj = {
|
||||
'能力上架': 'resourcemountapply',
|
||||
'能力下架': 'resourcundercarriageapply',
|
||||
'能力需求': 'abilitydemandapply',
|
||||
'需求评论': 'comment_review',
|
||||
}
|
||||
let tabList = ref(['全部', '审核中', '审核完成'])
|
||||
const contentList = reactive({ data: [] })
|
||||
let tabIndex = ref(0)
|
||||
let typeIndex = ref(0)
|
||||
let typeName = ref(typeList.value[0])
|
||||
const videoVisible = ref(false)
|
||||
const numFlag = ref(true)
|
||||
const columns = ref([
|
||||
}
|
||||
const typeStrObj = {
|
||||
能力上架: 'resourcemountapply',
|
||||
能力下架: 'resourcundercarriageapply',
|
||||
能力需求: 'abilitydemandapply',
|
||||
需求评论: 'comment_review',
|
||||
}
|
||||
let tabList = ref(['全部', '审核中', '审核完成'])
|
||||
const contentList = reactive({ data: [] })
|
||||
let tabIndex = ref(0)
|
||||
let typeIndex = ref(0)
|
||||
let typeName = ref(typeList.value[0])
|
||||
const videoVisible = ref(false)
|
||||
const numFlag = ref(true)
|
||||
const columns = ref([
|
||||
{
|
||||
title: '摄像头名称',
|
||||
dataIndex: 'name',
|
||||
},
|
||||
])
|
||||
const xVideoList = ref([])
|
||||
])
|
||||
const xVideoList = ref([])
|
||||
|
||||
let name = ref('')
|
||||
const detailsVisible = ref(false)
|
||||
const detailsVisible2 = ref(false)
|
||||
const businessKey = ref('')
|
||||
const processInstanceId = ref('')
|
||||
const processDefinitionName = ref('')
|
||||
const resourceId = ref('')
|
||||
const reason = ref('')
|
||||
const visible = ref(false)
|
||||
const delObj = ref({})
|
||||
const taskId = ref('')
|
||||
const backUrl = ref(window.SITE_CONFIG.apiURL + '/')
|
||||
const refObj = ref({})
|
||||
const num = ref({
|
||||
let name = ref('')
|
||||
const detailsVisible = ref(false)
|
||||
const detailsVisible2 = ref(false)
|
||||
const businessKey = ref('')
|
||||
const processInstanceId = ref('')
|
||||
const processDefinitionName = ref('')
|
||||
const resourceId = ref('')
|
||||
const reason = ref('')
|
||||
const visible = ref(false)
|
||||
const delObj = ref({})
|
||||
const taskId = ref('')
|
||||
const backUrl = ref(window.SITE_CONFIG.apiURL + '/')
|
||||
const refObj = ref({})
|
||||
const num = ref({
|
||||
finished: 0,
|
||||
unfinished: 0,
|
||||
})
|
||||
const total = ref('')
|
||||
const showType = ref('')
|
||||
const page = ref('1')
|
||||
const ended = ref('')
|
||||
const processDefinitionKey = ref('')
|
||||
const phoneVisible = ref(false)
|
||||
})
|
||||
const total = ref('')
|
||||
const showType = ref('')
|
||||
const page = ref('1')
|
||||
const ended = ref('')
|
||||
const processDefinitionKey = ref('')
|
||||
const phoneVisible = ref(false)
|
||||
|
||||
// 选择类型
|
||||
const changeType = (item, index) => {
|
||||
// 选择类型
|
||||
const changeType = (item, index) => {
|
||||
console.log('item, index-----选择类型------->', item, index)
|
||||
numFlag.value = true
|
||||
num.value = []
|
||||
|
@ -213,10 +308,10 @@ const changeType = (item, index) => {
|
|||
typeIndex.value = index
|
||||
typeName.value = item
|
||||
getApplyList()
|
||||
}
|
||||
}
|
||||
|
||||
// 申请状态切换
|
||||
function changeApplyState(item, index) {
|
||||
// 申请状态切换
|
||||
function changeApplyState(item, index) {
|
||||
tabIndex.value = index
|
||||
switch (item) {
|
||||
case '审核中':
|
||||
|
@ -235,9 +330,11 @@ function changeApplyState(item, index) {
|
|||
getApplyList()
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const showDetail = (item) => {
|
||||
const cilckRowData = ref({})
|
||||
const showDetail = (item) => {
|
||||
cilckRowData.value = item
|
||||
// 西海岸-申请时间过期,提示
|
||||
if (isXiHaiAn) {
|
||||
if (item.expireDate) {
|
||||
|
@ -251,7 +348,6 @@ const showDetail = (item) => {
|
|||
getByApplyFlag(item.applyFlag).then((res) => {
|
||||
if (res.data.code == 0) {
|
||||
refObj.value = res.data.data
|
||||
|
||||
detailsVisible.value = true
|
||||
processDefinitionName.value = item.processDefinitionName
|
||||
businessKey.value = item.businessKey
|
||||
|
@ -267,10 +363,9 @@ const showDetail = (item) => {
|
|||
if (res.data.code == 0) {
|
||||
refObj.value = res.data.data
|
||||
detailsVisible.value = true
|
||||
processDefinitionName.value = item.processDefinitionName
|
||||
}
|
||||
})
|
||||
.catch((err) => { })
|
||||
.catch((err) => {})
|
||||
} else if (
|
||||
Object.keys(typeStrObj).includes(typeName.value) ||
|
||||
typeName.value == '能力评价'
|
||||
|
@ -284,8 +379,8 @@ const showDetail = (item) => {
|
|||
} else {
|
||||
message.error('数据请求失败!')
|
||||
}
|
||||
}
|
||||
const showVideoList = (item) => {
|
||||
}
|
||||
const showVideoList = (item) => {
|
||||
console.log('显示列表', item)
|
||||
getApplyCameraList(item.processInstanceId).then((res) => {
|
||||
console.log('res', res)
|
||||
|
@ -295,8 +390,8 @@ const showVideoList = (item) => {
|
|||
})
|
||||
})
|
||||
videoVisible.value = true
|
||||
}
|
||||
const copyComment = (data) => {
|
||||
}
|
||||
const copyComment = (data) => {
|
||||
let url = data
|
||||
let oInput = document.createElement('input')
|
||||
oInput.value = url
|
||||
|
@ -306,8 +401,8 @@ const copyComment = (data) => {
|
|||
document.execCommand('Copy') // 执行浏览器复制命令
|
||||
message.success('复制成功')
|
||||
oInput.remove()
|
||||
}
|
||||
const showAdd = (item) => {
|
||||
}
|
||||
const showAdd = (item) => {
|
||||
if (item.processDefinitionKey == 'resourcemountapply') {
|
||||
const data = {
|
||||
id: item.resourceId,
|
||||
|
@ -360,9 +455,9 @@ const showAdd = (item) => {
|
|||
console.log('能力申请修改=================》', item)
|
||||
window.open(newpage.href, '_self')
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const initNum = () => {
|
||||
const initNum = () => {
|
||||
if (numFlag.value) {
|
||||
num.value = []
|
||||
getMyProcessInstancePage({
|
||||
|
@ -387,8 +482,8 @@ const initNum = () => {
|
|||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
const initNum2 = () => {
|
||||
}
|
||||
const initNum2 = () => {
|
||||
if (numFlag.value) {
|
||||
num.value = []
|
||||
getTabilityapplication({
|
||||
|
@ -411,19 +506,19 @@ const initNum2 = () => {
|
|||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
// initNum()
|
||||
}
|
||||
// initNum()
|
||||
|
||||
// 搜索框
|
||||
const onSearch = (name) => {
|
||||
// 搜索框
|
||||
const onSearch = (name) => {
|
||||
console.log(name.value)
|
||||
}
|
||||
//重置
|
||||
function replacement() {
|
||||
}
|
||||
//重置
|
||||
function replacement() {
|
||||
name.value = ''
|
||||
getApplyList(name.value)
|
||||
}
|
||||
const getApplyList = () => {
|
||||
}
|
||||
const getApplyList = () => {
|
||||
const params = {
|
||||
page: page.value,
|
||||
limit: 4,
|
||||
|
@ -464,7 +559,7 @@ const getApplyList = () => {
|
|||
getDeviceNum()
|
||||
}
|
||||
})
|
||||
.catch((err) => { })
|
||||
.catch((err) => {})
|
||||
} else if (Object.keys(typeStrObj).includes(typeName.value)) {
|
||||
processDefinitionKey.value = typeStrObj[typeName.value]
|
||||
params.processDefinitionKey = processDefinitionKey.value
|
||||
|
@ -525,18 +620,18 @@ const getApplyList = () => {
|
|||
num.value = []
|
||||
showType.value = ''
|
||||
}
|
||||
}
|
||||
const handleCurrentChange = (val) => {
|
||||
}
|
||||
const handleCurrentChange = (val) => {
|
||||
page.value = val
|
||||
getApplyList()
|
||||
}
|
||||
}
|
||||
|
||||
const handlePageSizeChange = (val) => {
|
||||
const handlePageSizeChange = (val) => {
|
||||
page.value = val
|
||||
getApplyList()
|
||||
}
|
||||
}
|
||||
|
||||
const viewDetail = (processDefinitionName, id, ended, businessKey) => {
|
||||
const viewDetail = (processDefinitionName, id, ended, businessKey) => {
|
||||
if (processDefinitionName == '能力申请流程') {
|
||||
router.push({
|
||||
path: '/details',
|
||||
|
@ -563,10 +658,10 @@ const viewDetail = (processDefinitionName, id, ended, businessKey) => {
|
|||
},
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 下架能力
|
||||
const del = () => {
|
||||
// 下架能力
|
||||
const del = () => {
|
||||
console.log('下架================》', delObj.value, reason.value)
|
||||
delObj.value.undercarriageReason = reason.value
|
||||
updateRes(delObj.value).then((upres) => {
|
||||
|
@ -588,10 +683,10 @@ const del = () => {
|
|||
message.error('数据更新失败!')
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
// 西海岸:设备申请列表 todo
|
||||
const getDeviceApply = (state) => {
|
||||
// 西海岸:设备申请列表 todo
|
||||
const getDeviceApply = (state) => {
|
||||
return new Promise((resolve, reject) => {
|
||||
let _data = {
|
||||
page: page.value,
|
||||
|
@ -608,10 +703,10 @@ const getDeviceApply = (state) => {
|
|||
console.log('err------------>', err)
|
||||
})
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
// 西海岸:设备申请--查询详情
|
||||
const getDeviceDetailInfo = (deviceId) => {
|
||||
// 西海岸:设备申请--查询详情
|
||||
const getDeviceDetailInfo = (deviceId) => {
|
||||
return new Promise((resolve, reject) => {
|
||||
getDeviceDetail(deviceId)
|
||||
.then((res) => {
|
||||
|
@ -623,10 +718,10 @@ const getDeviceDetailInfo = (deviceId) => {
|
|||
console.log('err------------>', err)
|
||||
})
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
// 西海岸:设备申请-审核中, 审核完成数量
|
||||
const getDeviceNum = () => {
|
||||
// 西海岸:设备申请-审核中, 审核完成数量
|
||||
const getDeviceNum = () => {
|
||||
if (!numFlag.value) {
|
||||
return
|
||||
}
|
||||
|
@ -640,34 +735,32 @@ const getDeviceNum = () => {
|
|||
num.value.finished = finished.total || ''
|
||||
numFlag.value = false
|
||||
})
|
||||
.catch((err) => {
|
||||
})
|
||||
}
|
||||
.catch((err) => {})
|
||||
}
|
||||
|
||||
|
||||
const showPhoneModal = () => {
|
||||
const showPhoneModal = () => {
|
||||
phoneVisible.value = true
|
||||
}
|
||||
}
|
||||
|
||||
mybus.on('closeModal', (obj) => {
|
||||
mybus.on('closeModal', (obj) => {
|
||||
detailsVisible.value = false
|
||||
changeType(obj.type, obj.index)
|
||||
})
|
||||
onBeforeUnmount(() => {
|
||||
})
|
||||
onBeforeUnmount(() => {
|
||||
mybus.off('closeModal')
|
||||
})
|
||||
onMounted(() => {
|
||||
})
|
||||
onMounted(() => {
|
||||
getApplyList()
|
||||
|
||||
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)
|
||||
}
|
||||
})
|
||||
})
|
||||
</script>
|
||||
|
||||
<style scoped lang="less">
|
||||
.on-the-right-side-of-the-list {
|
||||
.on-the-right-side-of-the-list {
|
||||
background: #ffffff;
|
||||
padding: 20px 0px 30px 20px;
|
||||
position: absolute;
|
||||
|
@ -843,10 +936,10 @@ onMounted(() => {
|
|||
.backToFirst {
|
||||
background-color: rgb(214, 91, 91);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
:deep(.ant-badge-count) {
|
||||
:deep(.ant-badge-count) {
|
||||
top: -5px;
|
||||
right: -10px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -650,17 +650,19 @@ const ceshiFunction = () => {
|
|||
}
|
||||
// delOne delList handleDelete
|
||||
const handleDelete = (item, index) => {
|
||||
console.log('item, index------------>', item, index);
|
||||
|
||||
console.log('item------------>', item);
|
||||
let delArr = [];
|
||||
// 单个删除
|
||||
if (item) {
|
||||
if (index) {
|
||||
delArr = [item.id]
|
||||
} else {
|
||||
// 批量删除
|
||||
if (checkedListAbility.value.length == 0) {
|
||||
return message.warning('请先选择需要操作的数据!')
|
||||
} else {
|
||||
delArr = checkedListAbility.value.map(v=>v.id)
|
||||
delArr = checkedListAbility.value
|
||||
}
|
||||
}
|
||||
sgcDel({
|
||||
|
|
|
@ -85,9 +85,6 @@ export default defineComponent({
|
|||
}
|
||||
|
||||
onMounted(() => {
|
||||
if (itShowXiHaiAn) {
|
||||
handleClick(menuList[0])
|
||||
} else {
|
||||
if (type) {
|
||||
console.log('type---------->', type)
|
||||
let _obj = menuList.find(v => v.key == type)
|
||||
|
@ -95,11 +92,10 @@ export default defineComponent({
|
|||
} else {
|
||||
if (menuList[1]) {
|
||||
handleClick(menuList[1])
|
||||
}else {
|
||||
} else {
|
||||
handleClick(menuList[0])
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
return {
|
||||
|
|
Loading…
Reference in New Issue