Compare commits

...

3 Commits

3 changed files with 641 additions and 879 deletions

View File

@ -136,6 +136,7 @@
} else {
getCameraInfoByAreaId({
areaId: '70be8c5b664f4bcf869d82f2e8335051',
status: 1,
}).then((res) => {
treeData.value = res.data.data
})
@ -269,6 +270,7 @@
} else {
getCameraInfoByAreaId({
areaId: val.id,
status: 1,
}).then((res) => {
treeData.value.map((treeDataItem, index) => {
if (item.id == treeDataItem.id) {
@ -343,6 +345,7 @@
} else {
getCameraInfoByAreaId({
areaId: item.id,
status: 1,
}).then((res) => {
treeData.value.map((treeDataItem, index) => {
if (item.id == treeDataItem.id) {

View File

@ -353,19 +353,10 @@
<a-modal wrapClassName="single-preview-modal" v-model:visible="visible" title="视频预览" :width="960" destroyOnClose>
<template #footer></template>
<div style="width: 100%; display: flex; justify-content: center">
<div style="width: 100%; height: 100%">
<vue3VideoPlay v-bind="options" @play="onPlay" @pause="onPause" @timeupdate="onTimeupdate"
@canplay="onCanplay" />
</div>
</div>
</a-modal>
<!-- 西海岸--单个预览弹窗--遮挡不让点击视频播放 -->
<a-modal wrapClassName="single-preview-modal-cover" v-if="whoShow1.itShowXiHaiAn" v-model:visible="visible"
:width="960">
<template #footer></template>
<div style="width: 100%; display: flex; justify-content: center">
<div style="width: 100%; height: 100%">
<div style="width: 912px; height: 518px;margin-top: 50px" @click="showMsg"></div>
<div style="width: 100%; height: 100%;position:relative">
<!-- 预览视频--遮罩 -->
<div class="video-cover" @click="videoShowMsg"></div>
<vue3VideoPlay v-bind="options" />
</div>
</div>
</a-modal>
@ -397,6 +388,8 @@
<template #footer></template>
<div class="batch-video">
<div v-for="item in videoList" :key="item.id" style="width: 100%; height: 100%;position:relative">
<!-- 批量预览视频--遮罩 -->
<div class="batch-video-cover" @click="videoShowMsg"></div>
<p></p>
<vue3VideoPlay v-bind="item.options" />
</div>
@ -650,27 +643,11 @@ const tabList = ref([
const wrjVisible = ref(false)
const wrjName = ref('')
const wrjData = ref([])
const showWrj = (data) => {
console.log('data---dddd--------->', data);
wrjName.value = data.wrjName
// wrjData.value = data.details
wrjData.value = data.deviceAttrDTOList
// wrjData.value = []
// data.deviceAttrDTOList.map(v => {
// console.log('v.attrType------------>', v.attrType);
// console.log('v.attrValue------------>', v.attrValue);
// try {
// let obj = {
// name: v.attrType,
// list: v.attrValue && JSON.parse(v.attrValue)
// }
// wrjData.value.push(obj)
// } catch (error) {
// console.log('error------------>', error);
// }
// })
// console.log('wrjData.value------------>', wrjData.value);
// -
const showWrj = (data) => {
wrjName.value = data.wrjName
wrjData.value = data.deviceAttrDTOList || []
wrjVisible.value = true
}
const goToWrj = (data) => {
@ -718,7 +695,7 @@ const openVideo = (id) => {
visible.value = true
options.src = res.data.data
})
// --
// // --
// visible.value = true
// options.src = 'http://playertest.longtailvideo.com/adaptive/bipbop/gear4/prog_index.m3u8'
}
@ -1318,13 +1295,13 @@ const batchPreview = async function (page) {
muted: false, //
webFullScreen: false,
speedRate: ['0.75', '1.0', '1.25', '1.5', '2.0'], //
autoPlay: isXiHaiAn, //
autoPlay: isXiHaiAn ? false : true, //
loop: false, //
mirror: false, //
ligthOff: false, //
volume: 0.3, //
control: true, //
controlBtns: [
control: isXiHaiAn ? false : true, //
controlBtns: isXiHaiAn ? [] : [
'audioTrack',
'quality',
'speedRate',
@ -1337,6 +1314,8 @@ const batchPreview = async function (page) {
},
}
await getStreamByChannelCode(param).then((res) => {
//
// ob.options.src = 'http://playertest.longtailvideo.com/adaptive/bipbop/gear4/prog_index.m3u8'
ob.options.src = res.data.data
console.log('监测ob的变化', ob)
videoList.value.push(ob)
@ -1640,7 +1619,7 @@ const handleTableChange = (val) => {
}
}
const showMsg = () => {
const videoShowMsg = () => {
message.warning('请申请后在我的申请中预览视频!')
}
</script>
@ -2031,27 +2010,6 @@ const showMsg = () => {
}
}
.ant-modal-mask {
background: rgba(0, 0, 0, 0.2);
}
.ant-modal-footer {
display: none;
}
.single-preview-modal-cover {
background: transparent;
z-index: 999999;
.ant-modal {
background: transparent !important;
}
.ant-modal-content {
background: transparent !important;
}
}
.batch-preview-modal {
.batch-video {
width: 100%;
@ -2087,4 +2045,27 @@ const showMsg = () => {
video::-webkit-media-controls {
display: none !important;
}
.video-cover {
position: absolute;
left: 0;
top: 0;
bottom: 0;
right: 0;
background: transparent;
z-index: 99999999;
cursor: pointer;
}
.batch-video-cover {
position: absolute;
left: 0;
top: 0;
background: transparent;
height: 288px;
z-index: 99999999;
width: 512px;
margin-top: 14px;
cursor: pointer;
}
</style>

View File

@ -1,46 +1,18 @@
<template>
<div class="on-the-right-side-of-the-list">
<div class="title" style="margin-bottom: 0.2rem">我的申请</div>
<!-- <div class="sousuokuang">
<a-input-search
v-model:value="name"
placeholder="请输入关键词"
enter-button="搜索"
size="large"
@change="onSearch"
@search="getApplyList(name)"
/>
<a-button
type="primary"
style="width: 90px; height: 36px; margin-left: 10px"
@click="replacement"
>
重置
</a-button>
</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="tabqiehuan(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>
@ -50,11 +22,7 @@
</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>
@ -64,95 +32,17 @@
{{ item.cameraList ? item.system : item.title }}
</template>
<div class="content-body-title">
<!-- <span
v-if="item.cameraList && item.ended"
@click="showVideoList(item)"
>
名称{{ item.cameraList ? item.system : item.title }}
</span> -->
<span>
名称{{ item.cameraList ? item.system : item.title }}
</span>
<div></div>
</div>
</a-tooltip>
<!-- <div class="content-body-content">
<p class="content-body-content-son">
流程类型{{ item.processDefinitionName }}
</p>
</div> -->
<div class="content-body-content">
<p class="content-body-content-son">
审核结果{{ item.ended ? '审核完成' : '审核中' }}
</p>
</div>
<!-- <div class="content-body-content" v-if="item.currentTaskList">
<p class="content-body-content-son" v-if="!item.backToFirst">
当前节点{{ item.currentTaskList[0].taskName }}
</p>
</div> -->
<!-- <div>
<p
class="content-body-content-son"
v-if="item.name === '申请摄像头列表'"
>
<span>
申请结果{{
'列表地址:' +
backUrl +
'resource/getApplyCameraList/' +
item.processInstanceId +
';' +
'视频流地址:' +
backUrl +
'/resource/hls/getHls/?channelId='
}}
</span>
<a-button
type="primary"
size="small"
@click="
copyComment(
'列表地址:' +
backUrl +
'resource/getApplyCameraList/' +
item.processInstanceId +
';' +
'视频流地址:' +
backUrl +
'/resource/hls/getHls/?channelId='
)
"
>
复制
</a-button>
</p>
<template v-else>
<p
class="content-body-content-son"
v-if="item.approveStatus == '通过'"
>
<span>申请结果{{ item.comment || '暂无' }}</span>
<a-button
v-if="item.comment"
type="primary"
size="small"
@click="copyComment(item.comment)"
>
复制
</a-button>
</p>
</template>
</div> -->
<!-- <div class="content-body-title"></div>
<div class="content-body-content">
<p class="content-body-content-son"></p>
<div></div>
</div> -->
<!-- <div class="content-body-bottom" v-if="item.currentTaskList">
<div>申请日期{{ item.currentTaskList[0].createTime }}</div>
<div>审批人{{ item.currentTaskList[0].assigneeName }}</div>
</div> -->
<div class="content-body-bottom">
<div>申请日期{{ item.createDate || item.startTime }}</div>
<div></div>
@ -162,136 +52,44 @@
<div class="button" @click="showAdd(item)" v-if="item.backToFirst">
修改
</div>
<!-- <div
v-if="
!(
(item.processDefinitionName == '能力需求申请' ||
item.processDefinitionName == '能力资源上架') &&
item.ended == false
)
"
v-show="
item.resourceStatusTip == '正常' &&
item.ended &&
item.processDefinitionName !== '能力申请'
"
class="button button-details"
@click="
viewDetail(
item.processDefinitionName,
item.resourceId,
item.ended,
item.businessKey
)
"
>
查看详情
</div> -->
<!-- <div
class="button button-state"
:class="{
buttonAgree: item.ended,
backToFirst: item.backToFirst,
}"
>
{{
item.ended ? '审核完成' : 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" 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>
<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>
@ -303,55 +101,58 @@
</template>
<script setup>
// import qs from 'qs'
import { onMounted, reactive, ref, onBeforeUnmount } from 'vue'
import {
import { onMounted, reactive, ref, onBeforeUnmount } from 'vue'
import {
getMyProcessInstancePage,
// getTaskHandleDetailInfo,
getTabilityapplication,
getByApplyFlag,
nengliziyuanshangjiaapply,
getDemandForm,
demandComment,
// getProcDefBizRoute,
} 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'
const router = useRouter()
let typeList = ref([
} 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'
const router = useRouter()
let typeList = ref([
'能力申请',
'能力评价',
'能力上架',
'能力下架',
'能力需求',
'需求评论',
])
let tabList = ref(['全部', '审核中', '审核完成'])
const contentList = reactive({ data: [] })
// const contentListClone = reactive({ data: [] })
// let contentListLength = contentList.length
let tabIndex = ref(0)
let typeIndex = ref(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)
const videoVisible = ref(false)
const numFlag = ref(true)
const columns = ref([
{
title: '摄像头名称',
dataIndex: 'name',
},
])
const xVideoList = ref([])
function tabqiehuan(item, index) {
// debugger
])
const xVideoList = ref([])
//
function changeApplyState(item, index) {
tabIndex.value = index
switch (item) {
case '审核中':
@ -370,33 +171,33 @@
getApplyList()
break
}
}
//
const changeType = (item, index) => {
}
//
const changeType = (item, index) => {
console.log('item, index-----选择类型------->', item, index);
numFlag.value = true
num.value = []
showType.value = ''
console.log(item, index)
tabIndex.value = 0
ended.value = ''
page.value = 1
typeIndex.value = index
getApplyList()
}
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 showDetail = (item) => {
}
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 showDetail = (item) => {
console.log('showDetail', item)
// getProcDefBizRoute(item.processDefinitionId)
if (typeIndex.value == 0 && item.applyFlag) {
@ -422,8 +223,8 @@
} else {
message.error('数据请求失败!')
}
}
const showVideoList = (item) => {
}
const showVideoList = (item) => {
console.log('显示列表', item)
getApplyCameraList(item.processInstanceId).then((res) => {
console.log('res', res)
@ -433,8 +234,8 @@
})
})
videoVisible.value = true
}
const copyComment = (data) => {
}
const copyComment = (data) => {
let url = data
let oInput = document.createElement('input')
oInput.value = url
@ -444,12 +245,8 @@
document.execCommand('Copy') //
message.success('复制成功')
oInput.remove()
}
const showAdd = (item) => {
// resourcemountapply
// resourcundercarriageapply
// abilitydemandapply
// abilityprocess
}
const showAdd = (item) => {
if (item.processDefinitionKey == 'resourcemountapply') {
const data = {
id: item.resourceId,
@ -502,12 +299,12 @@
console.log('能力申请修改=================》', item)
window.open(newpage.href, '_self')
}
}
const num = ref({
}
const num = ref({
finished: 0,
unfinished: 0,
})
const initNum = () => {
})
const initNum = () => {
if (numFlag.value) {
num.value = []
getMyProcessInstancePage({
@ -532,8 +329,8 @@
}
})
}
}
const initNum2 = () => {
}
const initNum2 = () => {
if (numFlag.value) {
num.value = []
getTabilityapplication({
@ -556,23 +353,23 @@
}
})
}
}
// initNum()
const total = ref('')
const showType = ref('')
const page = ref('1')
const ended = ref('')
const processDefinitionKey = ref('')
//
const onSearch = (name) => {
}
// initNum()
const total = ref('')
const showType = ref('')
const page = ref('1')
const ended = ref('')
const processDefinitionKey = ref('')
//
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,
@ -592,24 +389,9 @@
initNum2()
})
} else if (typeIndex.value !== 1) {
switch (typeIndex.value) {
case 2:
params.processDefinitionKey = 'resourcemountapply'
processDefinitionKey.value = 'resourcemountapply'
break
case 3:
params.processDefinitionKey = 'resourcundercarriageapply'
processDefinitionKey.value = 'resourcundercarriageapply'
break
case 4:
params.processDefinitionKey = 'abilitydemandapply'
processDefinitionKey.value = 'abilitydemandapply'
break
case 5:
params.processDefinitionKey = 'comment_review'
processDefinitionKey.value = 'comment_review'
break
}
let typeName = typeList.value[typeIndex.value]
processDefinitionKey.value = typeStrObj[typeName]
params.processDefinitionKey = processDefinitionKey.value;
getMyProcessInstancePage(params).then((res) => {
contentList.data = []
// initNum(name.value)
@ -637,7 +419,6 @@
showType.value = '能力下架'
})
})
// params.processDefinitionKey = 'resourcundercarriageapply'
break
case 4:
contentList.data.map((val) => {
@ -649,7 +430,6 @@
showType.value = '能力需求'
})
})
// params.processDefinitionKey = 'abilitydemandapply'
break
case 5:
contentList.data.map((val) => {
@ -661,49 +441,26 @@
showType.value = '需求评论'
})
})
// params.processDefinitionKey = 'comment_review'
break
}
// if (contentList.data && contentList.data.length > 0) {
// contentList.data.map((item) => {
// const param = {
// page: 1,
// limit: 4,
// processInstanceId: item.processInstanceId,
// }
// getTaskHandleDetailInfo(qs.stringify(param)).then((res) => {
// console.log('', res.data.data, res.data.data[0].comment)
// const result = res.data.data
// if (result && result.length > 2) {
// item.comment =
// result[0].comment.length > result[1].comment.length
// ? result[0].comment
// : result[1].comment
// } else {
// item.comment = result[0].comment
// }
// })
// return item
// })
// }
})
} else {
contentList.data = []
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',
@ -730,10 +487,10 @@
},
})
}
}
}
//
const del = () => {
//
const del = () => {
console.log('下架================》', delObj.value, reason.value)
delObj.value.undercarriageReason = reason.value
updateRes(delObj.value).then((upres) => {
@ -755,21 +512,21 @@
message.error('数据更新失败!')
}
})
}
mybus.on('closeModal', (obj) => {
}
mybus.on('closeModal', (obj) => {
detailsVisible.value = false
changeType(obj.type, obj.index)
})
onBeforeUnmount(() => {
})
onBeforeUnmount(() => {
mybus.off('closeModal')
})
onMounted(() => {
})
onMounted(() => {
getApplyList()
})
})
</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;
@ -781,17 +538,21 @@
flex-direction: column;
font-size: 16px;
justify-content: left;
.title {
font-size: 20px;
color: #000000;
font-family: 'Alibaba PuHuiTi';
font-weight: 500;
}
.sousuokuang {
margin: 20px 0px 21px 0px;
.ant-input-search {
max-width: 490px;
}
:deep(.ant-input) {
width: 400px;
height: 36px;
@ -799,9 +560,11 @@
color: #b2b2b2;
background: #f5f5f5;
}
:deep(.ant-input-group-addon) {
display: inline-block;
margin-left: 10px;
.ant-input-search-button {
width: 80px;
height: 36px;
@ -810,10 +573,12 @@
}
}
}
.tab {
display: flex;
font-size: 14px;
color: #999999;
div {
// width: 70px;
padding: 5px 10px;
@ -826,14 +591,17 @@
color: #666666;
cursor: pointer;
}
.tabclass {
border: 1px solid #0087ff;
color: #0087ff;
}
}
.content {
padding-right: 10px;
height: 510px;
.content-body {
padding-bottom: 20px;
padding-top: 20px;
@ -841,6 +609,7 @@
height: 150px;
border-bottom: #cccccc 1px solid;
position: relative;
.content-body-title {
min-width: 100px;
max-width: 900px;
@ -853,6 +622,7 @@
text-overflow: ellipsis;
white-space: nowrap;
}
.content-body-content {
margin-top: 10px;
margin-bottom: 10px;
@ -860,6 +630,7 @@
/* width: 720px; */
display: inline-block;
}
.content-body-content-son {
line-height: 16px;
font-size: 12px;
@ -872,6 +643,7 @@
// -webkit-box-orient: vertical;
display: flex;
color: #999999;
span {
overflow: hidden;
text-overflow: ellipsis;
@ -883,16 +655,19 @@
word-break: break-all;
}
}
.content-body-bottom {
display: flex;
color: #cccccc;
font-size: 12px;
div:first-child {
margin-right: 30px;
}
}
}
}
.bottom {
position: absolute;
bottom: 30px;
@ -919,15 +694,18 @@
line-height: 30px;
cursor: pointer;
}
.buttonAgree {
background-color: #49c988;
}
.backToFirst {
background-color: rgb(214, 91, 91);
}
}
:deep(.ant-badge-count) {
}
:deep(.ant-badge-count) {
top: -5px;
right: -10px;
}
}
</style>