Merge branch 'hi-ucs-dev' of http://124.222.94.39:3000/wuhongjian/hi-ucs into hi-ucs-dev

This commit is contained in:
guoyue 2022-09-29 17:28:06 +08:00
commit 057b926183
5 changed files with 1764 additions and 1548 deletions

View File

@ -1,6 +1,6 @@
<template> <template>
<div > <div>
<div class='container'> <div class="container">
<!-- <div class='container-left' v-if='homeIsShow'> <!-- <div class='container-left' v-if='homeIsShow'>
<div class='left-search'> <div class='left-search'>
<div> <div>
@ -31,8 +31,8 @@
range-separator="至" range-separator="至"
start-placeholder="开始日期" start-placeholder="开始日期"
end-placeholder="结束日期" end-placeholder="结束日期"
format='yyyy-MM-dd HH:mm:ss' format="yyyy-MM-dd HH:mm:ss"
value-format='yyyy-MM-dd HH:mm:ss' value-format="yyyy-MM-dd HH:mm:ss"
> >
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
@ -43,14 +43,8 @@
placeholder="请选审核状态" placeholder="请选审核状态"
clearable clearable
> >
<el-option <el-option label="审核完成" value="1"></el-option>
label="审核完成" <el-option label="审核中" value="0"></el-option>
value="1"
></el-option>
<el-option
label="审核中"
value="0"
></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
@ -62,19 +56,25 @@
clearable clearable
> >
<el-option label="全部" value=""></el-option> <el-option label="全部" value=""></el-option>
<el-option v-for="item in departmentSelects" :key="item.label" v-bind="item"></el-option> <el-option
v-for="item in departmentSelects"
:key="item.label"
v-bind="item"
></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<!--类型--> <!--类型-->
<el-form-item> <el-form-item>
<el-select <el-select v-model="abilityType" placeholder="请选择类型" clearable>
v-model="abilityType"
placeholder="请选择类型"
clearable
>
<el-option label="全部" value=""></el-option> <el-option label="全部" value=""></el-option>
<el-option v-for="item in typeOptions" :key="item.name" :label="item.name" :value="item.name" v-bind="item"></el-option> <el-option
v-for="item in typeOptions"
:key="item.name"
:label="item.name"
:value="item.name"
v-bind="item"
></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
@ -84,10 +84,12 @@
</el-form-item> </el-form-item>
<!--操作按钮重置--> <!--操作按钮重置-->
<el-form-item> <el-form-item>
<el-button type="primary" @click="resetDataList()">{{ $t('reset') }}</el-button> <el-button type="primary" @click="resetDataList()">{{
$t('reset')
}}</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-card shadow="never" class="aui-card--fill" v-if='homeIsShow'> <el-card shadow="never" class="aui-card--fill" v-if="homeIsShow">
<div class="mod-demand__bsdemand"> <div class="mod-demand__bsdemand">
<!-- <div class='top-box'> <!-- <div class='top-box'>
<span class='title'>能力统计</span> <span class='title'>能力统计</span>
@ -98,11 +100,26 @@
</div> </div>
</div> --> </div> -->
<div class='second-title'> <div class="second-title">
<span style='margin-right:30px' :class="[(departmentId===1 || departmentId===3)?'departmentStyle':'']" @click="handleChose(1)"> <span
style="margin-right: 30px"
:class="[
departmentId === 1 || departmentId === 3
? 'departmentStyle'
: ''
]"
@click="handleChose(1)"
>
能力上架统计 能力上架统计
</span> </span>
<span :class="[(departmentId===2 || departmentId===4)?'departmentStyle':'']" @click="handleChose(2)"> <span
:class="[
departmentId === 2 || departmentId === 4
? 'departmentStyle'
: ''
]"
@click="handleChose(2)"
>
能力使用统计 能力使用统计
</span> </span>
<!-- <span v-if='this.choseId===0' :class="[departmentId===3?'departmentStyle':'']" @click="handleChose(3)"> <!-- <span v-if='this.choseId===0' :class="[departmentId===3?'departmentStyle':'']" @click="handleChose(3)">
@ -114,54 +131,41 @@
<span v-if="detailFlag" class="detail-button" @click="goToDetail()"> <span v-if="detailFlag" class="detail-button" @click="goToDetail()">
明细 明细
</span> </span>
<span v-else class="detail-button" @click="goToBack()"> <span v-else class="detail-button" @click="goToBack()"> 返回 </span>
返回
</span>
</div> </div>
<div class='line-style'></div> <div class="line-style"></div>
<!--统计表--> <!--统计表-->
<el-table <el-table
:data="tableData" :data="tableData"
:header-cell-style="{textAlign:'center'}" :header-cell-style="{ textAlign: 'center' }"
:cell-style="{textAlign:'center'}" :cell-style="{ textAlign: 'center' }"
border border
style="width: 100%" v-show='this.departmentId===1 ||this.departmentId===2'> style="width: 100%"
<el-table-column v-show="this.departmentId === 1 || this.departmentId === 2"
prop="name" >
label="部门名称" <el-table-column prop="name" label="部门名称" min-width="100%">
min-width="100%">
</el-table-column> </el-table-column>
<el-table-column label="组件"> <el-table-column label="组件">
<el-table-column <el-table-column prop="znsf" label="智能算法" min-width="100%">
prop="znsf"
label="智能算法"
min-width="100%">
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="tcfw" label="图层服务" min-width="100%">
prop="tcfw"
label="图层服务"
min-width="100%">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="kfzj" prop="kfzj"
label="通用开发组件" label="通用开发组件"
min-width="100%"> min-width="100%"
>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="ywzj" prop="ywzj"
label="业务能力组件" label="业务能力组件"
min-width="100%"> min-width="100%"
>
</el-table-column> </el-table-column>
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="yyzy" label="应用资源" min-width="100%">
prop="yyzy"
label="应用资源"
min-width="100%">
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="zj" label="总计" min-width="100%">
prop="zj"
label="总计"
min-width="100%">
</el-table-column> </el-table-column>
</el-table> </el-table>
<!--明细表--> <!--明细表-->
@ -169,29 +173,15 @@
<el-table <el-table
:data="tableData" :data="tableData"
style="width: 100%" style="width: 100%"
v-show='this.departmentId===3 ||this.departmentId===4' v-show="this.departmentId === 3 || this.departmentId === 4"
> >
<el-table-column <el-table-column prop="deptName" label="部门" width="180">
prop="deptName"
label="部门"
width="180">
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="resourceName" label="资源名称" width="180">
prop="resourceName"
label="资源名称"
width="180">
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="type" label="类型"> </el-table-column>
prop="type" <el-table-column prop="createDate" label="日期"> </el-table-column>
label="类型"> <el-table-column prop="approveStatus" label="状态">
</el-table-column>
<el-table-column
prop="createDate"
label="日期">
</el-table-column>
<el-table-column
prop="approveStatus"
label="状态">
</el-table-column> </el-table-column>
</el-table> </el-table>
<div class="block"> <div class="block">
@ -207,10 +197,25 @@
</div> </div>
</el-card> </el-card>
</div> </div>
<component-used v-if='UsedIsShow' :tableId='tableId' :fatherId='fatherId' @closeChild2='closeChild2'></component-used> <component-used
<component-services v-if='servicesIsShow' :tableId='tableId' :fatherId='fatherId' @closeChild='closeChild'></component-services> v-if="UsedIsShow"
<application-resources v-if='resourcesIsShow' :tableId='tableId' :fatherId='fatherId' @closeApplication='closeApplication'></application-resources> :tableId="tableId"
</div> :fatherId="fatherId"
@closeChild2="closeChild2"
></component-used>
<component-services
v-if="servicesIsShow"
:tableId="tableId"
:fatherId="fatherId"
@closeChild="closeChild"
></component-services>
<application-resources
v-if="resourcesIsShow"
:tableId="tableId"
:fatherId="fatherId"
@closeApplication="closeApplication"
></application-resources>
</div>
</template> </template>
<script> <script>
import componentServices from './componentServices.vue' import componentServices from './componentServices.vue'
@ -224,41 +229,63 @@ export default {
inputTxt: '', inputTxt: '',
tableId: '', tableId: '',
fatherId: '', fatherId: '',
treeData: [{ treeData: [
{
label: '一级 1', label: '一级 1',
children: [{ children: [
{
label: '二级 1-1', label: '二级 1-1',
children: [{ children: [
{
label: '三级 1-1-1' label: '三级 1-1-1'
}] }
}] ]
}, { }
]
},
{
label: '一级 2', label: '一级 2',
children: [{ children: [
{
label: '二级 2-1', label: '二级 2-1',
children: [{ children: [
{
label: '三级 2-1-1' label: '三级 2-1-1'
}] }
}, { ]
},
{
label: '二级 2-2', label: '二级 2-2',
children: [{ children: [
{
label: '三级 2-2-1' label: '三级 2-2-1'
}] }
}] ]
}, { }
]
},
{
label: '一级 3', label: '一级 3',
children: [{ children: [
{
label: '二级 3-1', label: '二级 3-1',
children: [{ children: [
{
label: '三级 3-1-1' label: '三级 3-1-1'
}] }
}, { ]
},
{
label: '二级 3-2', label: '二级 3-2',
children: [{ children: [
{
label: '三级 3-2-1' label: '三级 3-2-1'
}] }
}] ]
}], }
]
}
],
total: null, total: null,
defaultProps: { defaultProps: {
children: 'children', children: 'children',
@ -272,39 +299,52 @@ export default {
resourcesIsShow: false, resourcesIsShow: false,
UsedIsShow: false, UsedIsShow: false,
titleList: [ titleList: [
{ name: '组件服务', key: 1 }, { name: '应用资源', key: 2 }, { name: '基础设施', key: 3 }, { name: '数据资源', key: 3 }, { name: '知识库', key: 3 } { name: '组件服务', key: 1 },
{ name: '应用资源', key: 2 },
{ name: '基础设施', key: 3 },
{ name: '数据资源', key: 3 },
{ name: '知识库', key: 3 }
], ],
tableData: [{ deptName: '部门', resourceNum: 222 }], tableData: [{ deptName: '部门', resourceNum: 222 }],
tableData2: [{ approveStatus: '', createDate: '' ,deptName:'',resourceName:'',type:''}], tableData2: [
examineStatus: '0',// {
value1:[],// approveStatus: '',
abilityDepartment:"",// createDate: '',
abilityType:"",// deptName: '',
beginTime: '',// resourceName: '',
endTime: '',// type: ''
typeOptions:[ }
],
examineStatus: '0', //
value1: [], //
abilityDepartment: '', //
abilityType: '', //
beginTime: '', //
endTime: '', //
typeOptions: [
{ name: '智能算法', value: 1 }, { name: '智能算法', value: 1 },
{ name: '图层服务', value: 2 }, { name: '图层服务', value: 2 },
{ name: '通用开发组件', value: 3 }, { name: '通用开发组件', value: 3 },
{ name: '页面开发组件', value: 4 }, { name: '页面开发组件', value: 4 },
{ name: '应用资源', value: 5 }],// { name: '应用资源', value: 5 }
detailFlag:true,// ], //
startDate:"",// detailFlag: true, //
endDate:"" // startDate: '', //
endDate: '' //
} }
}, },
created () { created () {
// //
let d = new Date const d = new Date()
let year1,month1,day1; let year1, month1, day1
[year1,month1,day1] = [d.getFullYear(),d.getMonth(),d.getDate()] ;[year1, month1, day1] = [d.getFullYear(), d.getMonth(), d.getDate()]
let date1 = new Date(year1, month1, day1,7) const date1 = new Date(year1, month1, day1, 7)
this.value1.push(date1) this.value1.push(date1)
// //
let year2,month2,day2 let year2, month2, day2
d.setTime(d.getTime()-24*60*60*1000); d.setTime(d.getTime() - 24 * 60 * 60 * 1000)
[year2,month2,day2] = [d.getFullYear(),d.getMonth(),d.getDate()] ;[year2, month2, day2] = [d.getFullYear(), d.getMonth(), d.getDate()]
let date2 = new Date(year2,month2,day2,7) const date2 = new Date(year2, month2, day2, 7)
this.value1.unshift(date2) this.value1.unshift(date2)
}, },
mounted () { mounted () {
@ -332,14 +372,16 @@ export default {
} }
}, },
getTreeName (data) { getTreeName (data) {
this.$http.get('/census/center/v3/treeList/', { this.$http
.get('/census/center/v3/treeList/', {
params: { params: {
keywords: data.name, keywords: data.name,
deptId: '1067246875800000066' deptId: '1067246875800000066'
// pageNo: pageNo || 1, // pageNo: pageNo || 1,
// pageSize: 20 // pageSize: 20
} }
}).then(res => { })
.then((res) => {
this.tableData = res.data.data this.tableData = res.data.data
}) })
}, },
@ -360,35 +402,42 @@ export default {
// -- // --
getFirstTree (page) { getFirstTree (page) {
this.$http.get('/census/center/selectDeptDetailTypeCountList/', { this.$http
.get('/census/center/selectDeptDetailTypeCountList/', {
params: { params: {
page: page || 1, page: page || 1,
limit: 5, limit: 5,
approveStatus: this.examineStatus, approveStatus: this.examineStatus,
deptId: this.abilityDepartment, deptId: this.abilityDepartment,
params: '', params: '',
startDate:this.startDate, startDate: this.startDate,
endDate:this.endDate endDate: this.endDate
} }
}).then(res => { })
let result= res.data.data .then((res) => {
for(let i=0;i<result.length;i++){ const result = res.data.data
if(!result[i].hasOwnProperty('yyzy') ){ for (let i = 0; i < result.length; i++) {
result[i].yyzy= 0 if (!result[i].hasOwnProperty('yyzy')) {
result[i].yyzy = 0
} }
if(!result[i].hasOwnProperty('kfzj') ){ if (!result[i].hasOwnProperty('kfzj')) {
result[i].kfzj= 0 result[i].kfzj = 0
} }
if(!result[i].hasOwnProperty('znsf') ){ if (!result[i].hasOwnProperty('znsf')) {
result[i].znsf= 0 result[i].znsf = 0
} }
if(!result[i].hasOwnProperty('tcfw') ){ if (!result[i].hasOwnProperty('tcfw')) {
result[i].tcfw= 0 result[i].tcfw = 0
} }
if(!result[i].hasOwnProperty('ywzj') ){ if (!result[i].hasOwnProperty('ywzj')) {
result[i].ywzj= 0 result[i].ywzj = 0
} }
result[i].zj=parseInt(result[i].yyzy)+ parseInt(result[i].kfzj)+parseInt(result[i].znsf)+parseInt(result[i].ywzj)+parseInt(result[i].tcfw) result[i].zj =
parseInt(result[i].yyzy) +
parseInt(result[i].kfzj) +
parseInt(result[i].znsf) +
parseInt(result[i].ywzj) +
parseInt(result[i].tcfw)
} }
this.tableData = res.data.data this.tableData = res.data.data
this.total = res.data.data.total this.total = res.data.data.total
@ -396,35 +445,42 @@ export default {
}, },
// 使-使 // 使-使
getSecondTree () { getSecondTree () {
this.$http.get('/census/center/selectApplyDeptDetailTypeCountList/', { this.$http
.get('/census/center/selectApplyDeptDetailTypeCountList', {
params: { params: {
// page: page || 1, // page: page || 1,
limit: 5, // limit: 5,
approveStatus:this.examineStatus, approveStatus: this.examineStatus,
deptId: this.abilityDepartment, deptId: this.abilityDepartment,
params: '', params: '',
startDate:this.startDate, startDate: this.startDate,
endDate:this.endDate endDate: this.endDate
} }
}).then(res => { })
let result= res.data.data .then((res) => {
for(let i=0;i<result.length;i++){ const result = res.data.data
if(!result[i].hasOwnProperty('yyzy') ){ for (let i = 0; i < result.length; i++) {
result[i].yyzy= 0 if (!result[i].hasOwnProperty('yyzy')) {
result[i].yyzy = 0
} }
if(!result[i].hasOwnProperty('kfzj') ){ if (!result[i].hasOwnProperty('kfzj')) {
result[i].kfzj= 0 result[i].kfzj = 0
} }
if(!result[i].hasOwnProperty('znsf') ){ if (!result[i].hasOwnProperty('znsf')) {
result[i].znsf= 0 result[i].znsf = 0
} }
if(!result[i].hasOwnProperty('tcfw') ){ if (!result[i].hasOwnProperty('tcfw')) {
result[i].tcfw= 0 result[i].tcfw = 0
} }
if(!result[i].hasOwnProperty('ywzj') ){ if (!result[i].hasOwnProperty('ywzj')) {
result[i].ywzj= 0 result[i].ywzj = 0
} }
result[i].zj=parseInt(result[i].yyzy)+ parseInt(result[i].kfzj)+parseInt(result[i].znsf)+parseInt(result[i].ywzj)+parseInt(result[i].tcfw) result[i].zj =
parseInt(result[i].yyzy) +
parseInt(result[i].kfzj) +
parseInt(result[i].znsf) +
parseInt(result[i].ywzj) +
parseInt(result[i].tcfw)
} }
this.tableData = res.data.data this.tableData = res.data.data
this.total = res.data.data.total this.total = res.data.data.total
@ -432,41 +488,58 @@ export default {
}, },
// //
getOneDetail (page) { getOneDetail (page) {
this.$http.get('/census/center/selectCensusResourceTable/', { var passAndReview = '' // ""
params: { if (this.examineStatus === '审核完成') {
limit: 5, passAndReview = '通过'
// page: page || 1, } else {
approveStatus: this.examineStatus, passAndReview = this.examineStatus
deptId: this.abilityDepartment,
params: '',
startDate:this.startDate,
endDate:this.endDate
} }
}).then(res => { this.$http
console.log('111111',this.tableData,res.data.data) .get('/census/center/selectCensusResourceTable', {
params: {
// limit: 5,
// page: page || 1,
approveStatus: passAndReview,
deptId: this.abilityDepartment,
type: '',
startDate: this.startDate,
endDate: this.endDate
}
})
.then((res) => {
console.log('111111', this.tableData, res.data.data)
this.tableData = res.data.data this.tableData = res.data.data
this.total = res.data.data.total this.total = res.data.data.total
}) })
}, },
// 使 // 使
getTwoDetail (page) { getTwoDetail (page) {
this.$http.get('/census/center/selectCensusApplyTable/', { var passAndReview = '' // ""
if (this.examineStatus === '审核完成') {
passAndReview = '通过'
} else {
passAndReview = this.examineStatus
}
this.$http
.get('/census/center/selectCensusApplyTable', {
params: { params: {
limit: 5, // limit: 5,
// page: page || 1, // page: page || 1,
approveStatus: this.examineStatus, approveStatus: this.examineStatus,
deptId: this.abilityDepartment, deptId: this.abilityDepartment,
params: '', type: '',
startDate:this.startDate, startDate: this.startDate,
endDate:this.endDate endDate: this.endDate
} }
}).then(res => { })
.then((res) => {
this.tableData = res.data.data this.tableData = res.data.data
this.total = res.data.data.total this.total = res.data.data.total
}) })
}, },
getReleaseTree (page) { getReleaseTree (page) {
this.$http.get('/census/center/selectApplyDeptDetailTypeCountList/', { this.$http
.get('/census/center/selectApplyDeptDetailTypeCountList/', {
params: { params: {
limit: 5, limit: 5,
// page: page || 1, // page: page || 1,
@ -475,25 +548,31 @@ export default {
params: '', params: '',
startDate: '' startDate: ''
} }
}).then(res => { })
let result= res.data.data .then((res) => {
for(let i=0;i<result.length;i++){ const result = res.data.data
if(!result[i].hasOwnProperty('yyzy') ){ for (let i = 0; i < result.length; i++) {
result[i].yyzy= 0 if (!result[i].hasOwnProperty('yyzy')) {
result[i].yyzy = 0
} }
if(!result[i].hasOwnProperty('kfzj') ){ if (!result[i].hasOwnProperty('kfzj')) {
result[i].kfzj= 0 result[i].kfzj = 0
} }
if(!result[i].hasOwnProperty('znsf') ){ if (!result[i].hasOwnProperty('znsf')) {
result[i].znsf= 0 result[i].znsf = 0
} }
if(!result[i].hasOwnProperty('tcfw') ){ if (!result[i].hasOwnProperty('tcfw')) {
result[i].tcfw= 0 result[i].tcfw = 0
} }
if(!result[i].hasOwnProperty('ywzj') ){ if (!result[i].hasOwnProperty('ywzj')) {
result[i].ywzj= 0 result[i].ywzj = 0
} }
result[i].zj=parseInt(result[i].yyzy)+ parseInt(result[i].kfzj)+parseInt(result[i].znsf)+parseInt(result[i].ywzj)+parseInt(result[i].tcfw) result[i].zj =
parseInt(result[i].yyzy) +
parseInt(result[i].kfzj) +
parseInt(result[i].znsf) +
parseInt(result[i].ywzj) +
parseInt(result[i].tcfw)
} }
this.tableData = res.data.data this.tableData = res.data.data
this.total = res.data.data.total this.total = res.data.data.total
@ -501,14 +580,16 @@ export default {
}, },
// 使 // 使
getUsedTree () { getUsedTree () {
this.$http.get('/census/center/v3/resourceReleaseDetails/', { this.$http
.get('/census/center/v3/resourceReleaseDetails/', {
params: { params: {
limit: 5, limit: 5,
page: 1, page: 1,
// id:'1067246875800000066', // id:'1067246875800000066',
resourceType: '应用资源' resourceType: '应用资源'
} }
}).then(res => { })
.then((res) => {
this.tableData = res.data.data.list this.tableData = res.data.data.list
}) })
}, },
@ -553,28 +634,27 @@ export default {
this.departmentId = index this.departmentId = index
if (index === 1) { if (index === 1) {
if (this.choseId === 0) { if (this.choseId === 0) {
if(!this.detailFlag){ if (!this.detailFlag) {
this.detailFlag = !this.detailFlag; this.detailFlag = !this.detailFlag
} }
this.getFirstTree() this.getFirstTree()
} else if (this.choseId === 1) { } else if (this.choseId === 1) {
//this.getReleaseTree() // this.getReleaseTree()
} }
} else if (index === 2) { } else if (index === 2) {
if (this.choseId === 0) { if (this.choseId === 0) {
if(!this.detailFlag){ if (!this.detailFlag) {
this.detailFlag = !this.detailFlag; this.detailFlag = !this.detailFlag
} }
this.getSecondTree() this.getSecondTree()
} else { } else {
//this.getUsedTree() // this.getUsedTree()
} }
} } else if (index === 3) {
else if (index === 3) {
if (this.choseId === 0) { if (this.choseId === 0) {
this.getOneDetail() this.getOneDetail()
} else { } else {
//this.getUsedTree() // this.getUsedTree()
} }
} else if (index === 4) { } else if (index === 4) {
if (this.choseId === 0) { if (this.choseId === 0) {
@ -603,115 +683,111 @@ export default {
this.resourcesIsShow = false this.resourcesIsShow = false
this.handleCurrentChange(1) this.handleCurrentChange(1)
}, },
//////////// // //////////
goToDetail(){ goToDetail () {
this.detailFlag = !this.detailFlag; this.detailFlag = !this.detailFlag
if(this.departmentId===1){ if (this.departmentId === 1) {
this.handleChose(3); this.handleChose(3)
//this.departmentId = 1; // this.departmentId = 1;
}else if(this.departmentId===2){ } else if (this.departmentId === 2) {
this.handleChose(4); this.handleChose(4)
//this.departmentId = 2; // this.departmentId = 2;
}else{ } else {
} }
}, },
// //
goToBack(){ goToBack () {
//departmentId 13 24 // departmentId 13 24
this.detailFlag = !this.detailFlag; this.detailFlag = !this.detailFlag
if(this.departmentId===3){ if (this.departmentId === 3) {
this.handleChose(1); this.handleChose(1)
//this.departmentId = 1; // this.departmentId = 1;
}else if(this.departmentId===4){ } else if (this.departmentId === 4) {
this.handleChose(2); this.handleChose(2)
//this.departmentId = 2; // this.departmentId = 2;
}else{ } else {
} }
}, },
// //
getDataList(){ getDataList () {
if(this.value1.length >0){ if (this.value1.length > 0) {
this.startDate = this.handleTime(this.value1[0], 'yyyy-MM-dd HH:mm:ss'); this.startDate = this.handleTime(this.value1[0], 'yyyy-MM-dd HH:mm:ss')
this.endDate = this.handleTime(this.value1[1], 'yyyy-MM-dd HH:mm:ss'); this.endDate = this.handleTime(this.value1[1], 'yyyy-MM-dd HH:mm:ss')
} }
if(this.examineStatus == 0){ if (this.examineStatus == 0) {
this.examineStatus = "审核中"; this.examineStatus = '审核中'
}else{ } else {
this.examineStatus = "审核完成"; this.examineStatus = '审核完成'
} }
if( this.abilityDepartment){ if (this.abilityDepartment) {
this.abilityDepartment = this.abilityDepartment this.abilityDepartment = this.abilityDepartment
} else { } else {
this.abilityDepartment = "全部"; this.abilityDepartment = ''
} }
if(this.abilityType){ if (this.abilityType) {
this.abilityType = this.abilityType; this.abilityType = this.abilityType
} else { } else {
this.abilityType = "全部"; this.abilityType = ''
} }
console.log('查询参数开始时间1',this.startDate); console.log('查询参数开始时间1', this.startDate)
console.log('查询参数结束时间2',this.endDate); console.log('查询参数结束时间2', this.endDate)
console.log('查询参数审核状态',this.examineStatus); console.log('查询参数审核状态', this.examineStatus)
console.log('查询参数部门',this.abilityDepartment); console.log('查询参数部门', this.abilityDepartment)
console.log('查询参数类型',this.abilityType); console.log('查询参数类型', this.abilityType)
if(this.departmentId===1){ if (this.departmentId === 1) {
if(this.detailFlag){ if (this.detailFlag) {
this.handleChose(3); this.handleChose(3)
this.detailFlag = !this.detailFlag; this.detailFlag = !this.detailFlag
}else {
this.handleChose(1);
this.detailFlag = !this.detailFlag;
}
//this.departmentId = 1;
}else if(this.departmentId===2){
if(this.detailFlag){
this.handleChose(4);
this.detailFlag = !this.detailFlag;
}else {
this.handleChose(2);
this.detailFlag = !this.detailFlag;
}
} else if(this.departmentId===3){
this.handleChose(3);
} else { } else {
this.handleChose(4); this.handleChose(1)
this.detailFlag = !this.detailFlag
}
// this.departmentId = 1;
} else if (this.departmentId === 2) {
if (this.detailFlag) {
this.handleChose(4)
this.detailFlag = !this.detailFlag
} else {
this.handleChose(2)
this.detailFlag = !this.detailFlag
}
} else if (this.departmentId === 3) {
this.handleChose(3)
} else {
this.handleChose(4)
} }
}, },
// //
resetDataList(){ resetDataList () {
this.startDate = ""; this.startDate = ''
this.endDate=""; this.endDate = ''
this.examineStatus = "审核中"; this.examineStatus = '审核中'
this.abilityDepartment = "全部"; this.abilityDepartment = ''
this.abilityType ="全部"; this.abilityType = ''
if(this.departmentId===1){ if (this.departmentId === 1) {
if(this.detailFlag){ if (this.detailFlag) {
this.handleChose(3); this.handleChose(3)
this.detailFlag = !this.detailFlag; this.detailFlag = !this.detailFlag
}else {
this.handleChose(1);
this.detailFlag = !this.detailFlag;
}
//this.departmentId = 1;
}else if(this.departmentId===2){
if(this.detailFlag){
this.handleChose(4);
this.detailFlag = !this.detailFlag;
}else {
this.handleChose(2);
this.detailFlag = !this.detailFlag;
}
}else if(this.departmentId===3){
this.handleChose(3);
} else { } else {
this.handleChose(4); this.handleChose(1)
this.detailFlag = !this.detailFlag
}
// this.departmentId = 1;
} else if (this.departmentId === 2) {
if (this.detailFlag) {
this.handleChose(4)
this.detailFlag = !this.detailFlag
} else {
this.handleChose(2)
this.detailFlag = !this.detailFlag
}
} else if (this.departmentId === 3) {
this.handleChose(3)
} else {
this.handleChose(4)
} }
}, },
// //
handleTime (time, format) { handleTime (time, format) {
@ -746,7 +822,6 @@ export default {
}) })
} }
} }
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
@ -843,7 +918,7 @@ input::placeholder {
font-size: 14px; font-size: 14px;
color: #979eb9; color: #979eb9;
cursor: pointer; cursor: pointer;
.detail-button{ .detail-button {
width: 60px; width: 60px;
height: 30px; height: 30px;
right: 60px; right: 60px;

View File

@ -2,46 +2,71 @@
<div class="capability-convergence"> <div class="capability-convergence">
<div class="main"> <div class="main">
<div class="top"> <div class="top">
能力汇聚 能力分类
<span class="line"></span> <span class="line"></span>
</div> </div>
<div class="bottom"> <div class="bottom">
<div class="item"> <div class="item">
<div class="zj">组件服务</div> <div class="zj">组件服务</div>
<div class="name" v-for="(item, index) in zjList" :key="item.id" :class="index == 4 ? 'name-last' : ''" <div
@click="selectOne(item.id)"> class="name"
v-for="(item, index) in zjList"
:key="item.id"
:class="index == 4 ? 'name-last' : ''"
@click="selectOne(item.id)"
>
{{ index + 1 }}-{{ item.name }} {{ index + 1 }}-{{ item.name }}
</div> </div>
<div class="btn" @click="jumpPage('组件服务')">查看更多</div> <div class="btn" @click="jumpPage('组件服务')">查看更多</div>
</div> </div>
<div class="item"> <div class="item">
<div class="yy">应用资源</div> <div class="yy">应用资源</div>
<div class="name" v-for="(item, index) in yyList" :key="item.id" :class="index == 4 ? 'name-last' : ''" <div
@click="selectOne(item.id)"> class="name"
v-for="(item, index) in yyList"
:key="item.id"
:class="index == 4 ? 'name-last' : ''"
@click="selectOne(item.id)"
>
{{ index + 1 }}-{{ item.name }} {{ index + 1 }}-{{ item.name }}
</div> </div>
<div class="btn" @click="jumpPage('应用资源')">查看更多</div> <div class="btn" @click="jumpPage('应用资源')">查看更多</div>
</div> </div>
<div class="item"> <div class="item">
<div class="jc">基础设施</div> <div class="jc">基础设施</div>
<div class="name" v-for="(item, index) in jcList" :key="item.name" :class="index == 2 ? 'name-last' : ''" <div
@click="selectOne2(item.name)"> class="name"
v-for="(item, index) in jcList"
:key="item.name"
:class="index == 2 ? 'name-last' : ''"
@click="selectOne2(item.name)"
>
{{ item.name + '-' + item.num + '项' }} {{ item.name + '-' + item.num + '项' }}
</div> </div>
<div class="btn" @click="jumpPage('基础设施')">查看更多</div> <div class="btn" @click="jumpPage('基础设施')">查看更多</div>
</div> </div>
<div class="item"> <div class="item">
<div class="sj">数据资源</div> <div class="sj">数据资源</div>
<div class="name" v-for="(item, index) in sjList" :key="item.id" :class="index == 4 ? 'name-last' : ''" <div
@click="selectOne3(item.name)"> class="name"
v-for="(item, index) in sjList"
:key="item.id"
:class="index == 4 ? 'name-last' : ''"
@click="selectOne3(item.name)"
>
{{ index + 1 }}-{{ item.name }} {{ index + 1 }}-{{ item.name }}
</div> </div>
<div class="btn" @click="jumpPage('数据资源')">查看更多</div> <div class="btn" @click="jumpPage('数据资源')">查看更多</div>
</div> </div>
<div class="item"> <div class="item">
<div class="zs">知识库</div> <div class="zs">知识库</div>
<div class="name" v-for="(item, index) in zsList" :key="item.id" :class="index == 4 ? 'name-last' : ''" <div
@click="openHref(item)"> class="name"
v-for="(item, index) in zsList"
:key="item.id"
:class="index == 4 ? 'name-last' : ''"
@click="openHref(item)"
>
{{ index + 1 }}-{{ item.name }} {{ index + 1 }}-{{ item.name }}
</div> </div>
<div class="btn" @click="jumpPage('知识库')">查看更多</div> <div class="btn" @click="jumpPage('知识库')">查看更多</div>
@ -51,27 +76,27 @@
</div> </div>
</template> </template>
<script setup> <script setup>
import { import {
pageWithAttrs, pageWithAttrs,
getDataResource, getDataResource,
selectInfrastructureList, selectInfrastructureList,
} from '@/api/home.js' } from '@/api/home.js'
import { ref, reactive } from 'vue' import { ref, reactive } from 'vue'
import { useRouter } from 'vue-router' import { useRouter } from 'vue-router'
import { useStore } from 'vuex' import { useStore } from 'vuex'
import { updateVisits, browsingInsert, getSoldierList } from '@/api/home' import { updateVisits, browsingInsert, getSoldierList } from '@/api/home'
import { message, Upload } from 'ant-design-vue' import { message, Upload } from 'ant-design-vue'
import mybus from '@/myplugins/mybus' import mybus from '@/myplugins/mybus'
const store = useStore() const store = useStore()
const router = useRouter() const router = useRouter()
const zjList = ref([]) const zjList = ref([])
const jcList = ref([]) const jcList = ref([])
const sjList = ref([]) const sjList = ref([])
const yyList = ref([]) const yyList = ref([])
// //
const zsList = ref([]) const zsList = ref([])
// const jcList = ref([]) // const jcList = ref([])
const paramsGetResources = { const paramsGetResources = {
districtId: '', districtId: '',
pageNum: 1, pageNum: 1,
pageSize: 5, pageSize: 5,
@ -80,19 +105,19 @@ const paramsGetResources = {
infoList: [], infoList: [],
orderField: 'total', // total visits 访 applyCount score collectCount orderField: 'total', // total visits 访 applyCount score collectCount
orderType: 'DESC', // ASC DESC orderType: 'DESC', // ASC DESC
} }
console.log('dataShowdev==========================>', whoShow) console.log('dataShowdev==========================>', whoShow)
// eslint-disable-next-line no-undef // eslint-disable-next-line no-undef
const whoShow1 = ref(whoShow) const whoShow1 = ref(whoShow)
const interfaceSuccess = ref(0) const interfaceSuccess = ref(0)
const object = reactive({ const object = reactive({
yyNum: '', yyNum: '',
zjNum: '', zjNum: '',
jcNum: '', jcNum: '',
sjNum: '', sjNum: '',
zsNum: '', zsNum: '',
}) })
const getAppResources = (type, obj) => { const getAppResources = (type, obj) => {
paramsGetResources.type = type paramsGetResources.type = type
if (type === '数据资源' && !whoShow1.value.itShowBaoTou) { if (type === '数据资源' && !whoShow1.value.itShowBaoTou) {
getDataResource({ getDataResource({
@ -160,25 +185,27 @@ const getAppResources = (type, obj) => {
} }
// 西- // 西-
if (whoShow1.value.itShowXiHaiAn) { if (whoShow1.value.itShowXiHaiAn) {
getSoldierData('无人机').then(res => { getSoldierData('无人机')
let { total = 0 } = res.data.data; .then((res) => {
let { total = 0 } = res.data.data
jcList.value.push({ jcList.value.push({
name: '无人机', name: '无人机',
num: total, num: total,
}) })
}).catch(err => {
console.log('err--无人机---------->', err);
}) })
getSoldierData('单兵设备').then(res => { .catch((err) => {
let { total = 0 } = res.data.data; console.log('err--无人机---------->', err)
})
getSoldierData('单兵设备')
.then((res) => {
let { total = 0 } = res.data.data
jcList.value.push({ jcList.value.push({
name: '单兵设备', name: '单兵设备',
num: total, num: total,
}) })
}).catch(err => { })
console.log('err--单兵设备---------->', err); .catch((err) => {
console.log('err--单兵设备---------->', err)
}) })
} }
}) })
@ -203,29 +230,31 @@ const getAppResources = (type, obj) => {
}) })
} }
} }
} }
// todo // todo
const getSoldierData = (name) => { const getSoldierData = (name) => {
let _params = { let _params = {
type: name, type: name,
page: 1, page: 1,
limit: 10, limit: 10,
} }
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
getSoldierList(_params).then(res => { getSoldierList(_params)
.then((res) => {
resolve(res) resolve(res)
console.log('res---获取无人机、单兵设备--------->', res); console.log('res---获取无人机、单兵设备--------->', res)
if (res.data.code !== 0) { if (res.data.code !== 0) {
return message.error(res.data.msg) return message.error(res.data.msg)
} }
}).catch(err => { })
.catch((err) => {
reject(err) reject(err)
}) })
}) })
} }
const openHref = (item) => { const openHref = (item) => {
console.log(item.id, 'wowowo') console.log(item.id, 'wowowo')
console.log(item.visits, 'wowowo') console.log(item.visits, 'wowowo')
browsingInsert({ resourceId: item.id }).then((res) => { browsingInsert({ resourceId: item.id }).then((res) => {
@ -248,22 +277,22 @@ const openHref = (item) => {
// 'hisense_office/onlinePreview?url=' + // 'hisense_office/onlinePreview?url=' +
// btoa(encodeURI(item.fileHref)) // btoa(encodeURI(item.fileHref))
// ) // )
} }
const assignmentMethod = (type, res) => { const assignmentMethod = (type, res) => {
object[type] = res.data.data.total object[type] = res.data.data.total
// interfaceSuccess.value++ // interfaceSuccess.value++
// console.log('object======>', object, interfaceSuccess.value, type) // console.log('object======>', object, interfaceSuccess.value, type)
// if (interfaceSuccess.value >= 4) { // if (interfaceSuccess.value >= 4) {
// mybus.emit('chagneNum', object) // mybus.emit('chagneNum', object)
// } // }
} }
getAppResources('组件服务', zjList) getAppResources('组件服务', zjList)
getAppResources('应用资源', yyList) getAppResources('应用资源', yyList)
getAppResources('基础设施', jcList) getAppResources('基础设施', jcList)
getAppResources('数据资源', sjList) getAppResources('数据资源', sjList)
getAppResources('知识库', zsList) getAppResources('知识库', zsList)
function jumpPage(type) { function jumpPage(type) {
// store // store
store.commit('home/selectCardsData', { store.commit('home/selectCardsData', {
selectCardsnum: type, selectCardsnum: type,
@ -279,8 +308,8 @@ function jumpPage(type) {
select: type, select: type,
}, },
}) })
} }
const selectOne = (id) => { const selectOne = (id) => {
console.log('点击===============》', id) console.log('点击===============》', id)
router.push({ router.push({
path: '/details', path: '/details',
@ -288,8 +317,8 @@ const selectOne = (id) => {
id: id, id: id,
}, },
}) })
} }
const selectOne2 = (name) => { const selectOne2 = (name) => {
console.log('点击===============》', name) console.log('点击===============》', name)
router.push({ router.push({
path: '/DetailsPageconetent', path: '/DetailsPageconetent',
@ -298,8 +327,8 @@ const selectOne2 = (name) => {
select: '基础设施', select: '基础设施',
}, },
}) })
} }
const selectOne3 = (name) => { const selectOne3 = (name) => {
console.log('点击===============》', name) console.log('点击===============》', name)
router.push({ router.push({
path: '/DetailsPageconetent', path: '/DetailsPageconetent',
@ -308,10 +337,10 @@ const selectOne3 = (name) => {
select: '数据资源', select: '数据资源',
}, },
}) })
} }
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.capability-convergence { .capability-convergence {
height: 7.2rem; height: 7.2rem;
background: url('~@/assets/newHome/Convergence-bg.png') no-repeat; background: url('~@/assets/newHome/Convergence-bg.png') no-repeat;
background-size: 100%; background-size: 100%;
@ -436,5 +465,5 @@ const selectOne3 = (name) => {
} }
} }
} }
} }
</style> </style>

View File

@ -1,5 +1,7 @@
<template> <template>
<div class="navigation2"> <div class="navigation2">
<a-tooltip>
<template #title>点击进入组件服务</template>
<div class="item" @click="jumpPage('组件服务')"> <div class="item" @click="jumpPage('组件服务')">
<div class="img zj"></div> <div class="img zj"></div>
<div class="name">组件服务</div> <div class="name">组件服务</div>
@ -8,6 +10,9 @@
</div> </div>
</div> </div>
</a-tooltip>
<a-tooltip>
<template #title>点击进入应用资源</template>
<div class="item" @click="jumpPage('应用资源')"> <div class="item" @click="jumpPage('应用资源')">
<div class="img yy"></div> <div class="img yy"></div>
<div class="name">应用资源</div> <div class="name">应用资源</div>
@ -16,6 +21,9 @@
</div> </div>
</div> </div>
</a-tooltip>
<a-tooltip>
<template #title>点击进入基础设施</template>
<div class="item" @click="jumpPage('基础设施')"> <div class="item" @click="jumpPage('基础设施')">
<div class="img jc"></div> <div class="img jc"></div>
<div class="name">基础设施</div> <div class="name">基础设施</div>
@ -24,6 +32,9 @@
</div> </div>
</div> </div>
</a-tooltip>
<a-tooltip>
<template #title>点击进入数据资源</template>
<div class="item" @click="jumpPage('数据资源')"> <div class="item" @click="jumpPage('数据资源')">
<div class="img sj"></div> <div class="img sj"></div>
<div class="name">数据资源</div> <div class="name">数据资源</div>
@ -32,6 +43,9 @@
</div> </div>
</div> </div>
</a-tooltip>
<a-tooltip>
<template #title>点击进入知识库</template>
<div class="item" @click="jumpPage('知识库')"> <div class="item" @click="jumpPage('知识库')">
<div class="img zs"></div> <div class="img zs"></div>
<div class="name">知识库</div> <div class="name">知识库</div>
@ -40,6 +54,7 @@
</div> </div>
</div> </div>
</a-tooltip>
</div> </div>
</template> </template>
<script setup> <script setup>

View File

@ -1,6 +1,6 @@
<template> <template>
<div class="work-dynamics"> <div class="work-dynamics">
<div class="title"> <!-- <div class="title">
<div>工作动态</div> <div>工作动态</div>
<div class="title-son"></div> <div class="title-son"></div>
</div> </div>
@ -51,7 +51,7 @@
<div class="bottom" @click="jumpPage()"> <div class="bottom" @click="jumpPage()">
查看更多 查看更多
<span class="gengduo"></span> <span class="gengduo"></span>
</div> </div> -->
<div class="fixedmount"> <div class="fixedmount">
<div @click="applyResource()"> <div @click="applyResource()">
<p></p> <p></p>
@ -432,8 +432,8 @@
display: flex; display: flex;
flex-direction: column; flex-direction: column;
align-items: center; align-items: center;
padding-bottom: 0.8rem; // padding-bottom: 0.8rem;
padding-top: 0.78rem; // padding-top: 0.78rem;
.title { .title {
font-size: 0.3rem; font-size: 0.3rem;
font-family: 'convergence-typeface'; font-family: 'convergence-typeface';

View File

@ -3,16 +3,27 @@
<div class="title" style="margin-bottom: 0.2rem">我的申请</div> <div class="title" style="margin-bottom: 0.2rem">我的申请</div>
<div class="tab" style="margin-bottom: 0.1rem"> <div class="tab" style="margin-bottom: 0.1rem">
<span>类型</span> <span>类型</span>
<div :class="typeIndex == index ? 'tabclass' : ' '" @click="changeType(item, index)" <div
v-for="(item, index) in typeList" :key="index"> :class="typeIndex == index ? 'tabclass' : ' '"
@click="changeType(item, index)"
v-for="(item, index) in typeList"
:key="index"
>
{{ item }} {{ item }}
</div> </div>
</div> </div>
<div class="tab"> <div class="tab">
<span>申请状态</span> <span>申请状态</span>
<div :class="tabIndex == index ? 'tabclass' : ' '" @click="changeApplyState(item, index)" <div
v-for="(item, index) in tabList" :key="index"> :class="tabIndex == index ? 'tabclass' : ' '"
<a-badge :count="item === '审核中' ? num.unfinished : num.finished" v-if="item !== '全部'"> @click="changeApplyState(item, index)"
v-for="(item, index) in tabList"
:key="index"
>
<a-badge
:count="item === '审核中' ? num.unfinished : num.finished"
v-if="item !== '全部'"
>
{{ item }} {{ item }}
</a-badge> </a-badge>
<template v-else> <template v-else>
@ -22,7 +33,11 @@
</div> </div>
<div v-if="contentList.data.length > 0"> <div v-if="contentList.data.length > 0">
<div class="content"> <div class="content">
<div class="content-body" v-for="item in contentList.data" :key="item.index"> <div
class="content-body"
v-for="item in contentList.data"
:key="item.index"
>
<div class="content-body-title"> <div class="content-body-title">
<span>申请单号{{ item.applyNumber || '--' }}</span> <span>申请单号{{ item.applyNumber || '--' }}</span>
<div></div> <div></div>
@ -39,7 +54,7 @@
</div> </div>
</a-tooltip> </a-tooltip>
<div class="content-body-content"> <div class="content-body-content">
<p class="content-body-content-son" v-if="typeName !=='设备申请'"> <p class="content-body-content-son" v-if="typeName !== '设备申请'">
审核结果{{ item.ended ? '审核完成' : '审核中' }} 审核结果{{ item.ended ? '审核完成' : '审核中' }}
</p> </p>
<p class="content-body-content-son" v-else> <p class="content-body-content-son" v-else>
@ -51,50 +66,111 @@
<div></div> <div></div>
</div> </div>
<div class="button-box"> <div class="button-box">
<div class="button" v-if="typeName =='设备申请' && phoneSate.includes(item.state)" <div
@click="showPhoneModal(item)">联系方式</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="showDetail(item)">查看详情</div>
<div class="button" @click="showAdd(item)" v-if="item.backToFirst"> <div class="button" @click="showAdd(item)" v-if="item.backToFirst">
修改 修改
</div> </div>
<svg t="1652233950228" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" <svg
p-id="5970" data-spm-anchor-id="a313x.7781069.0.i8" width="80" height="80" v-if=" t="1652233950228"
class="icon"
viewBox="0 0 1024 1024"
version="1.1"
xmlns="http://www.w3.org/2000/svg"
p-id="5970"
data-spm-anchor-id="a313x.7781069.0.i8"
width="80"
height="80"
v-if="
item.processDefinitionName != '能力资源下架' && item.processDefinitionName != '能力资源下架' &&
(item.resourceStatus == 4 || item.resourceStatus == 5) (item.resourceStatus == 4 || item.resourceStatus == 5)
" style="position: absolute; top: 20px; left: -850px"> "
style="position: absolute; top: 20px; left: -850px"
>
<path <path
d="M955.22053 256C813.82053 11.2 500.72053-72.6 255.92053 68.8S-72.67947 523.2 68.72053 768 523.22053 1096.6 768.02053 955.2c244.7-141.2 328.6-454.1 187.4-698.8 0-0.1-0.1-0.3-0.2-0.4zM762.02053 944.7c-239 138.1-544.8 56.2-682.9-182.8S22.92053 217.1 261.92053 79.1s544.8-56.2 682.9 182.8c137.9 239 56.1 544.6-182.8 682.8z" d="M955.22053 256C813.82053 11.2 500.72053-72.6 255.92053 68.8S-72.67947 523.2 68.72053 768 523.22053 1096.6 768.02053 955.2c244.7-141.2 328.6-454.1 187.4-698.8 0-0.1-0.1-0.3-0.2-0.4zM762.02053 944.7c-239 138.1-544.8 56.2-682.9-182.8S22.92053 217.1 261.92053 79.1s544.8-56.2 682.9 182.8c137.9 239 56.1 544.6-182.8 682.8z"
fill="#515151" opacity=".5" p-id="5971"></path> fill="#515151"
opacity=".5"
p-id="5971"
></path>
<path <path
d="M898.12053 289.2C775.02053 76 502.42053 2.9 289.22053 126 76.02053 249.1 3.02053 521.6 126.02053 734.8 249.12053 948 521.62053 1021.1 734.82053 898 947.92053 774.9 1021.02053 502.4 898.12053 289.2zM731.62053 892.8C521.32053 1014.3 252.42053 942.2 131.02053 731.9 9.52053 521.6 81.62053 252.7 291.92053 131.3 502.12053 9.9 771.02053 81.8 892.42053 292c121.5 210.3 49.5 479.3-160.8 600.8z" d="M898.12053 289.2C775.02053 76 502.42053 2.9 289.22053 126 76.02053 249.1 3.02053 521.6 126.02053 734.8 249.12053 948 521.62053 1021.1 734.82053 898 947.92053 774.9 1021.02053 502.4 898.12053 289.2zM731.62053 892.8C521.32053 1014.3 252.42053 942.2 131.02053 731.9 9.52053 521.6 81.62053 252.7 291.92053 131.3 502.12053 9.9 771.02053 81.8 892.42053 292c121.5 210.3 49.5 479.3-160.8 600.8z"
fill="#515151" opacity=".5" p-id="5972"></path> fill="#515151"
opacity=".5"
p-id="5972"
></path>
<path <path
d="M323.62053 176.8c3.6-2 6 0.8 8.8 2.8 6 4.4 12.4 8.8 18.8 12.8 7.2-2.4 14.4-5.1 21.6-7.7 3.6-1.2 6-2.8 8.8 0.4 2.4 2.8 0.4 6.4-0.4 8.8-2 6.8-3.6 13.6-5.6 20.8 4.8 6 10 11.6 15.2 17.6 2.4 2.8 4.4 5.6 2.8 8.4-1.2 2.8-5.6 2.4-7.7 2.4l-22.4 0.8c-4.4 6.8-8.4 13.6-12.8 20-1.6 2.4-4 5.1-7.2 4-2.4-1.9-3.9-4.7-4.4-7.7l-7.2-20.5-25.2-6.4c-2.3-1.2-3.6-3.8-3.2-6.4 1.3-1.8 2.9-3.3 4.8-4.4 4-3.2 7.7-6.8 11.6-10 1.9-1.3 3.6-2.7 5.1-4.4-0.4-6.8-1.2-13.6-1.6-20.5-0.7-2.9-0.9-5.9-0.4-8.8-0.7-0.8-0.3-1.6 0.6-2zM200.72053 289.2c3.6-2 6 0.8 8.8 2.8 6.4 4.4 12.4 8.4 18.8 12.8 7.2-2.4 14.4-5.1 21.6-7.7 3.6-1.2 6-2.8 8.8 0.4 2.4 2.8 0.4 6.4-0.4 8.8-2 6.8-3.6 13.6-5.6 20.8 4.8 6 10 11.6 14.8 17.6 2.4 2.8 4.4 5.6 2.8 8.4-1.2 2.4-5.6 2.4-7.7 2.4l-22.4 0.8c-4.4 6.8-8.8 13.6-12.8 20-1.6 2.4-4 5.1-7.2 4-2.2-2-3.8-4.7-4.4-7.7l-7.2-20.5c-8.4-2-16.8-4.4-25.2-6.4-2.3-1.2-3.6-3.8-3.2-6.4 1.3-1.8 2.9-3.3 4.8-4.4 3.6-3.2 7.7-6.8 11.6-10 1.9-1.3 3.6-2.7 5.1-4.4-0.4-6.8-1.2-13.6-1.6-20.5-0.7-2.9-0.9-5.9-0.4-8.8-0.4-1.2 0-1.6 0.8-2.4l0.2 0.4z m276.6-159.6c3.6-2 6 0.8 8.8 2.8 6.4 4.4 12.4 8.4 18.8 12.8 7.2-2.4 14.4-5.1 21.6-7.7 3.6-1.2 6-2.8 8.8 0.4 2.4 2.8 0.4 6.4-0.4 8.8-2 6.8-3.6 14-5.6 20.8 4.8 6 10 12 15.2 17.6 2.4 2.8 4.4 5.6 2.8 8.4-1.2 2.8-5.6 2.4-7.7 2.4l-22.4 0.8c-4.4 6.8-8.8 13.6-12.8 20-1.6 2.4-4 5.1-7.2 4-2.2-2-3.8-4.7-4.4-7.7l-7.2-20.5-25.2-6.4c-2.3-1.2-3.6-3.8-3.2-6.4 1.3-1.8 2.9-3.3 4.8-4.4 4-3.2 7.7-6.8 11.6-10 1.9-1.3 3.6-2.7 5.1-4.4-0.4-6.8-1.2-13.6-1.6-20.5-0.7-2.9-0.9-5.9-0.4-8.8-0.8-1.2-0.4-1.6 0.4-2.4l0.2 0.4z m141.9 29.6c3.6-2 6 0.8 8.8 2.8l18.8 12.8c7.2-2.4 14.4-5.1 21.6-7.7 3.6-1.2 6-2.8 8.8 0.4 2.4 2.8 0.4 6.4-0.4 8.8-2 6.8-3.6 14-5.6 20.8 4.8 6 10 12 15.2 17.6 2.4 2.8 4.4 5.6 2.8 8.4-1.2 2.8-5.6 2.4-7.7 2.4-7.7 0.4-15.2 0.8-22.4 0.8-4.4 6.8-8.4 13.2-12.8 20-1.6 2.4-4 5.1-7.2 4-2.4-1.9-3.9-4.7-4.4-7.7l-7.2-20.5c-8.4-2-16.8-4.4-25.2-6.4-2.3-1.2-3.6-3.8-3.2-6.4 1.3-1.8 2.9-3.3 4.8-4.4 4-3.2 7.7-6.8 11.6-10 1.9-1.3 3.6-2.7 5.1-4.4-0.4-6.8-1.2-13.6-1.6-20.5-0.7-2.9-0.9-5.9-0.4-8.8-0.5-1.2 0.2-1.6 0.6-2zM150.02053 430c3.6-2 6 0.8 8.8 2.8 6.4 4.4 12.4 8.4 18.8 12.8 7.2-2.4 14.4-5.1 21.6-7.7 3.6-1.2 6-2.8 8.8 0.4 2.4 2.8 0.4 6.4-0.4 8.8-2 6.8-4 14-5.6 20.8 4.8 6 10 11.6 15.2 17.6 2.4 2.8 4.4 5.6 2.8 8.4-1.2 2.8-5.6 2.4-7.7 2.4l-22.4 0.8c-4.4 6.8-8.8 13.6-12.8 20-1.6 2.4-4 5.1-7.2 4-2.2-2-3.8-4.7-4.4-7.7l-7.2-20.5-25.2-6.4c-2.3-1.2-3.6-3.8-3.2-6.4 1.3-1.8 2.9-3.3 4.8-4.4 3.6-3.2 7.7-6.8 11.6-10 1.9-1.3 3.6-2.7 5.1-4.4-0.4-6.8-1.2-13.6-1.6-20.5-0.7-2.9-0.9-5.9-0.4-8.8-0.7-0.8-0.3-1.5 0.6-2z m558.9 414.4c3.6-2.4 2.4-5.6 2-8.8l-1.6-22.4 17.2-14.8c2.8-2.4 5.1-4 4-7.7-1.2-3.2-5.6-3.6-7.7-4-6.8-2-14-3.6-20.8-5.6-2.8-7.2-5.1-14.4-7.7-21.6-1.2-3.6-2.8-6.4-5.6-6.8-2.8-0.4-4.8 3.6-5.6 5.1l-12 19.2-24 1.2c-2.8 0-6.8 0.8-6.8 4.4 0.5 3 2 5.7 4.4 7.7 4.8 5.6 9.2 11.2 14 16.4l-7.2 25.2c-0.3 2.7 1.4 5.2 4 6 2.2-0.1 4.4-0.7 6.4-1.6l14.4-4.8c2.1-0.8 4.2-1.5 6.4-2 5.6 4 11.2 7.7 16.8 11.6 2.2 2.1 4.8 3.6 7.7 4.4 0.5-1.1 0.8-1.1 1.6-1.1h0.1z m-158.8 50c3.6-2.4 2.4-5.6 2-8.8l-1.6-22.4 17.2-14.8c2.8-2.4 5.1-4 4-7.7-1.1-3.7-5.6-3.6-7.7-4-6.8-1.6-14-3.6-20.8-5.6l-7.7-22c-1.2-3.6-2.8-6.4-5.6-6.8-2.8-0.4-4.8 3.6-5.6 5.1l-12 19.2-24 1.2c-2.8 0-6.8 0.8-6.8 4.4 0.5 3 2 5.7 4.4 7.7 4.8 5.6 9.2 11.2 14 16.4l-7.2 25.2c-0.3 2.7 1.4 5.2 4 6 2.2-0.3 4.3-0.9 6.4-1.6l14.4-4.8c2-1 4.2-1.7 6.4-2 5.6 4 11.2 7.7 16.8 11.6 2.2 2.1 4.8 3.6 7.7 4.4 0.4-0.8 0.8-0.8 1.7-0.7z m276.5-159.6c3.6-2.4 2.4-5.6 2-8.8l-1.6-22.4 17.2-14.8c2.8-2.4 5.1-4 4-7.7-1.2-3.2-5.6-3.6-7.7-4-6.8-2-14-3.6-20.8-5.6-2.8-7.2-5.1-14.4-7.7-21.6-1.2-3.6-2.8-6.4-5.6-6.8s-4.8 3.6-5.6 5.1l-12 19.2-24 1.2c-2.8 0-6.8 0.8-6.8 4.4 0.5 3 2 5.7 4.4 7.7 4.8 5.6 9.2 11.2 14 16.4l-7.2 25.2c-0.3 2.7 1.4 5.2 4 6 2.2-0.2 4.4-0.7 6.4-1.6l14.4-4.8c2.1-0.8 4.2-1.5 6.4-2 5.6 4 11.2 7.7 16.8 11.6 2.2 2.1 4.8 3.6 7.7 4.4 0-0.8 0.8-1.2 1.6-1.2l0.1 0.1z m45.6-137.6c3.6-2.4 2.4-5.6 2-8.8l-1.6-22.4 17.2-14.8c2.8-2.4 5.1-4 4-7.7-1.2-3.2-5.6-3.6-7.7-4-6.8-1.6-14-3.6-20.8-5.6l-7.7-22c-1.2-3.6-2.8-6.4-5.6-6.8-2.8-0.4-4.8 3.6-5.6 5.1l-12 19.2-24 1.2c-2.8 0-6.8 0.8-6.8 4.4 0.5 3 2 5.7 4.4 7.7 4.8 5.6 9.2 11.2 14 16.4l-7.2 25.2c-0.3 2.7 1.4 5.2 4 6 2.2-0.3 4.3-0.9 6.4-1.6l14.4-4.8c2.1-0.8 4.2-1.5 6.4-2 5.6 4 11.2 7.7 16.8 11.6 2.2 2.1 4.8 3.6 7.7 4.4 0.2-0.7 0.6-0.7 1.4-0.7h0.3zM402.72053 868c3.6-2.4 2.4-5.6 2-8.8l-1.6-22.4 17.2-14.8c2.8-2.4 5.1-4 4-7.7-1.2-3.2-5.6-3.6-7.7-4-6.8-2-14-3.6-20.8-5.6-2.8-7.2-5.1-14.4-7.7-21.6-1.2-3.6-2.8-6.4-5.6-6.8-2.8-0.4-4.8 3.6-5.6 5.1l-12 19.2-24 1.2c-2.8 0-6.8 0.8-6.8 4.4 0.5 3 2 5.7 4.4 7.7 4.8 5.6 9.2 11.2 14 16.4l-7.2 25.2c-0.3 2.7 1.4 5.2 4 6 2.2-0.3 4.3-0.9 6.4-1.6l14.4-4.8c2.1-0.8 4.2-1.5 6.4-2 5.6 4 11.2 7.7 16.8 11.6 2.2 2.1 4.8 3.6 7.7 4.4 0.5-0.8 1-1.1 1.7-1.1z" d="M323.62053 176.8c3.6-2 6 0.8 8.8 2.8 6 4.4 12.4 8.8 18.8 12.8 7.2-2.4 14.4-5.1 21.6-7.7 3.6-1.2 6-2.8 8.8 0.4 2.4 2.8 0.4 6.4-0.4 8.8-2 6.8-3.6 13.6-5.6 20.8 4.8 6 10 11.6 15.2 17.6 2.4 2.8 4.4 5.6 2.8 8.4-1.2 2.8-5.6 2.4-7.7 2.4l-22.4 0.8c-4.4 6.8-8.4 13.6-12.8 20-1.6 2.4-4 5.1-7.2 4-2.4-1.9-3.9-4.7-4.4-7.7l-7.2-20.5-25.2-6.4c-2.3-1.2-3.6-3.8-3.2-6.4 1.3-1.8 2.9-3.3 4.8-4.4 4-3.2 7.7-6.8 11.6-10 1.9-1.3 3.6-2.7 5.1-4.4-0.4-6.8-1.2-13.6-1.6-20.5-0.7-2.9-0.9-5.9-0.4-8.8-0.7-0.8-0.3-1.6 0.6-2zM200.72053 289.2c3.6-2 6 0.8 8.8 2.8 6.4 4.4 12.4 8.4 18.8 12.8 7.2-2.4 14.4-5.1 21.6-7.7 3.6-1.2 6-2.8 8.8 0.4 2.4 2.8 0.4 6.4-0.4 8.8-2 6.8-3.6 13.6-5.6 20.8 4.8 6 10 11.6 14.8 17.6 2.4 2.8 4.4 5.6 2.8 8.4-1.2 2.4-5.6 2.4-7.7 2.4l-22.4 0.8c-4.4 6.8-8.8 13.6-12.8 20-1.6 2.4-4 5.1-7.2 4-2.2-2-3.8-4.7-4.4-7.7l-7.2-20.5c-8.4-2-16.8-4.4-25.2-6.4-2.3-1.2-3.6-3.8-3.2-6.4 1.3-1.8 2.9-3.3 4.8-4.4 3.6-3.2 7.7-6.8 11.6-10 1.9-1.3 3.6-2.7 5.1-4.4-0.4-6.8-1.2-13.6-1.6-20.5-0.7-2.9-0.9-5.9-0.4-8.8-0.4-1.2 0-1.6 0.8-2.4l0.2 0.4z m276.6-159.6c3.6-2 6 0.8 8.8 2.8 6.4 4.4 12.4 8.4 18.8 12.8 7.2-2.4 14.4-5.1 21.6-7.7 3.6-1.2 6-2.8 8.8 0.4 2.4 2.8 0.4 6.4-0.4 8.8-2 6.8-3.6 14-5.6 20.8 4.8 6 10 12 15.2 17.6 2.4 2.8 4.4 5.6 2.8 8.4-1.2 2.8-5.6 2.4-7.7 2.4l-22.4 0.8c-4.4 6.8-8.8 13.6-12.8 20-1.6 2.4-4 5.1-7.2 4-2.2-2-3.8-4.7-4.4-7.7l-7.2-20.5-25.2-6.4c-2.3-1.2-3.6-3.8-3.2-6.4 1.3-1.8 2.9-3.3 4.8-4.4 4-3.2 7.7-6.8 11.6-10 1.9-1.3 3.6-2.7 5.1-4.4-0.4-6.8-1.2-13.6-1.6-20.5-0.7-2.9-0.9-5.9-0.4-8.8-0.8-1.2-0.4-1.6 0.4-2.4l0.2 0.4z m141.9 29.6c3.6-2 6 0.8 8.8 2.8l18.8 12.8c7.2-2.4 14.4-5.1 21.6-7.7 3.6-1.2 6-2.8 8.8 0.4 2.4 2.8 0.4 6.4-0.4 8.8-2 6.8-3.6 14-5.6 20.8 4.8 6 10 12 15.2 17.6 2.4 2.8 4.4 5.6 2.8 8.4-1.2 2.8-5.6 2.4-7.7 2.4-7.7 0.4-15.2 0.8-22.4 0.8-4.4 6.8-8.4 13.2-12.8 20-1.6 2.4-4 5.1-7.2 4-2.4-1.9-3.9-4.7-4.4-7.7l-7.2-20.5c-8.4-2-16.8-4.4-25.2-6.4-2.3-1.2-3.6-3.8-3.2-6.4 1.3-1.8 2.9-3.3 4.8-4.4 4-3.2 7.7-6.8 11.6-10 1.9-1.3 3.6-2.7 5.1-4.4-0.4-6.8-1.2-13.6-1.6-20.5-0.7-2.9-0.9-5.9-0.4-8.8-0.5-1.2 0.2-1.6 0.6-2zM150.02053 430c3.6-2 6 0.8 8.8 2.8 6.4 4.4 12.4 8.4 18.8 12.8 7.2-2.4 14.4-5.1 21.6-7.7 3.6-1.2 6-2.8 8.8 0.4 2.4 2.8 0.4 6.4-0.4 8.8-2 6.8-4 14-5.6 20.8 4.8 6 10 11.6 15.2 17.6 2.4 2.8 4.4 5.6 2.8 8.4-1.2 2.8-5.6 2.4-7.7 2.4l-22.4 0.8c-4.4 6.8-8.8 13.6-12.8 20-1.6 2.4-4 5.1-7.2 4-2.2-2-3.8-4.7-4.4-7.7l-7.2-20.5-25.2-6.4c-2.3-1.2-3.6-3.8-3.2-6.4 1.3-1.8 2.9-3.3 4.8-4.4 3.6-3.2 7.7-6.8 11.6-10 1.9-1.3 3.6-2.7 5.1-4.4-0.4-6.8-1.2-13.6-1.6-20.5-0.7-2.9-0.9-5.9-0.4-8.8-0.7-0.8-0.3-1.5 0.6-2z m558.9 414.4c3.6-2.4 2.4-5.6 2-8.8l-1.6-22.4 17.2-14.8c2.8-2.4 5.1-4 4-7.7-1.2-3.2-5.6-3.6-7.7-4-6.8-2-14-3.6-20.8-5.6-2.8-7.2-5.1-14.4-7.7-21.6-1.2-3.6-2.8-6.4-5.6-6.8-2.8-0.4-4.8 3.6-5.6 5.1l-12 19.2-24 1.2c-2.8 0-6.8 0.8-6.8 4.4 0.5 3 2 5.7 4.4 7.7 4.8 5.6 9.2 11.2 14 16.4l-7.2 25.2c-0.3 2.7 1.4 5.2 4 6 2.2-0.1 4.4-0.7 6.4-1.6l14.4-4.8c2.1-0.8 4.2-1.5 6.4-2 5.6 4 11.2 7.7 16.8 11.6 2.2 2.1 4.8 3.6 7.7 4.4 0.5-1.1 0.8-1.1 1.6-1.1h0.1z m-158.8 50c3.6-2.4 2.4-5.6 2-8.8l-1.6-22.4 17.2-14.8c2.8-2.4 5.1-4 4-7.7-1.1-3.7-5.6-3.6-7.7-4-6.8-1.6-14-3.6-20.8-5.6l-7.7-22c-1.2-3.6-2.8-6.4-5.6-6.8-2.8-0.4-4.8 3.6-5.6 5.1l-12 19.2-24 1.2c-2.8 0-6.8 0.8-6.8 4.4 0.5 3 2 5.7 4.4 7.7 4.8 5.6 9.2 11.2 14 16.4l-7.2 25.2c-0.3 2.7 1.4 5.2 4 6 2.2-0.3 4.3-0.9 6.4-1.6l14.4-4.8c2-1 4.2-1.7 6.4-2 5.6 4 11.2 7.7 16.8 11.6 2.2 2.1 4.8 3.6 7.7 4.4 0.4-0.8 0.8-0.8 1.7-0.7z m276.5-159.6c3.6-2.4 2.4-5.6 2-8.8l-1.6-22.4 17.2-14.8c2.8-2.4 5.1-4 4-7.7-1.2-3.2-5.6-3.6-7.7-4-6.8-2-14-3.6-20.8-5.6-2.8-7.2-5.1-14.4-7.7-21.6-1.2-3.6-2.8-6.4-5.6-6.8s-4.8 3.6-5.6 5.1l-12 19.2-24 1.2c-2.8 0-6.8 0.8-6.8 4.4 0.5 3 2 5.7 4.4 7.7 4.8 5.6 9.2 11.2 14 16.4l-7.2 25.2c-0.3 2.7 1.4 5.2 4 6 2.2-0.2 4.4-0.7 6.4-1.6l14.4-4.8c2.1-0.8 4.2-1.5 6.4-2 5.6 4 11.2 7.7 16.8 11.6 2.2 2.1 4.8 3.6 7.7 4.4 0-0.8 0.8-1.2 1.6-1.2l0.1 0.1z m45.6-137.6c3.6-2.4 2.4-5.6 2-8.8l-1.6-22.4 17.2-14.8c2.8-2.4 5.1-4 4-7.7-1.2-3.2-5.6-3.6-7.7-4-6.8-1.6-14-3.6-20.8-5.6l-7.7-22c-1.2-3.6-2.8-6.4-5.6-6.8-2.8-0.4-4.8 3.6-5.6 5.1l-12 19.2-24 1.2c-2.8 0-6.8 0.8-6.8 4.4 0.5 3 2 5.7 4.4 7.7 4.8 5.6 9.2 11.2 14 16.4l-7.2 25.2c-0.3 2.7 1.4 5.2 4 6 2.2-0.3 4.3-0.9 6.4-1.6l14.4-4.8c2.1-0.8 4.2-1.5 6.4-2 5.6 4 11.2 7.7 16.8 11.6 2.2 2.1 4.8 3.6 7.7 4.4 0.2-0.7 0.6-0.7 1.4-0.7h0.3zM402.72053 868c3.6-2.4 2.4-5.6 2-8.8l-1.6-22.4 17.2-14.8c2.8-2.4 5.1-4 4-7.7-1.2-3.2-5.6-3.6-7.7-4-6.8-2-14-3.6-20.8-5.6-2.8-7.2-5.1-14.4-7.7-21.6-1.2-3.6-2.8-6.4-5.6-6.8-2.8-0.4-4.8 3.6-5.6 5.1l-12 19.2-24 1.2c-2.8 0-6.8 0.8-6.8 4.4 0.5 3 2 5.7 4.4 7.7 4.8 5.6 9.2 11.2 14 16.4l-7.2 25.2c-0.3 2.7 1.4 5.2 4 6 2.2-0.3 4.3-0.9 6.4-1.6l14.4-4.8c2.1-0.8 4.2-1.5 6.4-2 5.6 4 11.2 7.7 16.8 11.6 2.2 2.1 4.8 3.6 7.7 4.4 0.5-0.8 1-1.1 1.7-1.1z"
fill="#515151" opacity=".5" p-id="5973"></path> fill="#515151"
opacity=".5"
p-id="5973"
></path>
<path <path
d="M386.42053 590.4l-43.8-75.9L207.02053 592.7l10.2 17.7L334.02053 543l23.4 40.4-90.5 52.2-13.5-23.4-18.7 10.8 53.1 92c9.1 15.8 21.2 19.5 36.4 10.7l98.8-57c6.2-3.6 11-9.3 13.4-16.1-1.4-15.9-6.2-31.2-14.2-45l-21.4 4.8c6.7 10.3 11 21.9 12.8 34-1 3.3-3.2 6-6.1 7.8l-88.3 51c-6.2 3.6-11.1 2.1-14.8-4.3l-27.3-47.4 109.3-63.1z m2.9-103.2l10.4 18.1 65.6-37.9 79.9 138.4 18.6-10.8-55.9-96.9c18.8-0.9 43.2-0.6 73 0.7l1.5-23.1c-29.8-0.3-58.4 0.4-86 2.6l-12.5-21.6 74.9-43.2-10.4-18.1-159.1 91.8zM669.52053 329l38.2 66.2 61.4-35.4-38.1-66.1-61.5 35.3z m72.4 24.2l-26.3 15.2-19-33 26.3-15.2 19 33zM599.02053 356.7l7.9 13.7-23.3 13.5 9.8 17 21.8-12.6c7.5 18.7 6.6 39.6-2.5 57.6l20.7 4.4c10.3-23.1 10.3-49.4 0-72.5l18.8-10.9c6 9.2 10.7 19.2 14.2 29.7 0.3 5-2.6 9.7-7.2 11.7-2.9 1.2-6.4 2.8-10.9 4.9l14.1 14.1c3.7-1.3 7.3-2.9 10.7-4.8 8.6-3.9 14.4-12.2 15.2-21.6-5.4-22.1-14.6-43-27.4-61.8l-36.1 20.8-7.9-13.7-17.9 10.5z m29.9 108.1l10 17.4 53.2-30.7c-7.8 23.7-20.6 45.4-37.5 63.6l20.6 11.1c18.6-24.2 30-53.1 33-83.4l29.8 51.5 18.4-10.7-29.8-51.5c27.4 11.5 57.2 16.3 86.9 14.1l3.5-23.5c-24.7 5.1-50.1 5-74.8-0.1l53.5-30.9-10-17.3-69.3 40-7.3-12.6-18.4 10.7L698.02053 425l-69.1 39.8z" d="M386.42053 590.4l-43.8-75.9L207.02053 592.7l10.2 17.7L334.02053 543l23.4 40.4-90.5 52.2-13.5-23.4-18.7 10.8 53.1 92c9.1 15.8 21.2 19.5 36.4 10.7l98.8-57c6.2-3.6 11-9.3 13.4-16.1-1.4-15.9-6.2-31.2-14.2-45l-21.4 4.8c6.7 10.3 11 21.9 12.8 34-1 3.3-3.2 6-6.1 7.8l-88.3 51c-6.2 3.6-11.1 2.1-14.8-4.3l-27.3-47.4 109.3-63.1z m2.9-103.2l10.4 18.1 65.6-37.9 79.9 138.4 18.6-10.8-55.9-96.9c18.8-0.9 43.2-0.6 73 0.7l1.5-23.1c-29.8-0.3-58.4 0.4-86 2.6l-12.5-21.6 74.9-43.2-10.4-18.1-159.1 91.8zM669.52053 329l38.2 66.2 61.4-35.4-38.1-66.1-61.5 35.3z m72.4 24.2l-26.3 15.2-19-33 26.3-15.2 19 33zM599.02053 356.7l7.9 13.7-23.3 13.5 9.8 17 21.8-12.6c7.5 18.7 6.6 39.6-2.5 57.6l20.7 4.4c10.3-23.1 10.3-49.4 0-72.5l18.8-10.9c6 9.2 10.7 19.2 14.2 29.7 0.3 5-2.6 9.7-7.2 11.7-2.9 1.2-6.4 2.8-10.9 4.9l14.1 14.1c3.7-1.3 7.3-2.9 10.7-4.8 8.6-3.9 14.4-12.2 15.2-21.6-5.4-22.1-14.6-43-27.4-61.8l-36.1 20.8-7.9-13.7-17.9 10.5z m29.9 108.1l10 17.4 53.2-30.7c-7.8 23.7-20.6 45.4-37.5 63.6l20.6 11.1c18.6-24.2 30-53.1 33-83.4l29.8 51.5 18.4-10.7-29.8-51.5c27.4 11.5 57.2 16.3 86.9 14.1l3.5-23.5c-24.7 5.1-50.1 5-74.8-0.1l53.5-30.9-10-17.3-69.3 40-7.3-12.6-18.4 10.7L698.02053 425l-69.1 39.8z"
fill="#515151" opacity=".5" p-id="5974"></path> fill="#515151"
opacity=".5"
p-id="5974"
></path>
</svg> </svg>
</div> </div>
</div> </div>
</div> </div>
<div class="bottom"> <div class="bottom">
<a-pagination size="small" pageSize="4" :total="total" :current="page" @change="handleCurrentChange" <a-pagination
@showSizeChange="handlePageSizeChange" :showSizeChanger="false" /> size="small"
pageSize="4"
:total="total"
:current="page"
@change="handleCurrentChange"
@showSizeChange="handlePageSizeChange"
:showSizeChanger="false"
/>
</div> </div>
</div> </div>
<a-empty v-else /> <a-empty v-else />
<a-modal bodyStyle="padding:0.1rem 0" v-model:visible="detailsVisible" title="申请详情" style="width: 900px" <a-modal
:footer="null" destroyOnClose="true" :maskClosable="false"> bodyStyle="padding:0.1rem 0"
<apply-details :processDefinitionName="processDefinitionName" :businessKey="businessKey" v-model:visible="detailsVisible"
:processInstanceId="processInstanceId" :resourceId="resourceId" :refObj="refObj" :showType="showType"> title="申请详情"
</apply-details> 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>
<a-modal v-model:visible="visible" title="下架原因" @ok="del()" @cancel="reason = ''"> <a-modal
v-model:visible="visible"
title="下架原因"
@ok="del()"
@cancel="reason = ''"
>
<a-input v-model:value="reason" placeholder="请输入下架原因" /> <a-input v-model:value="reason" placeholder="请输入下架原因" />
</a-modal> </a-modal>
<a-modal v-model:visible="videoVisible" title="已申请摄像头列表" @ok="videoVisible = false"> <a-modal
<a-table :columns="columns" :data-source="xVideoList" bordered :pagination="{ defaultPageSize: 6 }"> v-model:visible="videoVisible"
title="已申请摄像头列表"
@ok="videoVisible = false"
>
<a-table
:columns="columns"
:data-source="xVideoList"
bordered
:pagination="{ defaultPageSize: 6 }"
>
<template #bodyCell="{ column, text }"> <template #bodyCell="{ column, text }">
<!-- <template> <!-- <template>
<a>{{ text }}</a> <a>{{ text }}</a>
@ -105,15 +181,19 @@
</div> </div>
<!-- 联系方式弹框 --> <!-- 联系方式弹框 -->
<a-modal v-model:visible="phoneVisible" title="提示" @ok="phoneVisible = false"> <a-modal
v-model:visible="phoneVisible"
title="提示"
@ok="phoneVisible = false"
>
<!-- 工业信息化局那个号电话配这个号199 6399 0996 --> <!-- 工业信息化局那个号电话配这个号199 6399 0996 -->
<p>请联系工业信息化局电话199 6399 0996</p> <p>请联系工业信息化局电话199 6399 0996</p>
</a-modal> </a-modal>
</template> </template>
<script setup> <script setup>
import { onMounted, reactive, ref, onBeforeUnmount, h } from 'vue' import { onMounted, reactive, ref, onBeforeUnmount, h } from 'vue'
import { import {
getMyProcessInstancePage, getMyProcessInstancePage,
getTabilityapplication, getTabilityapplication,
getByApplyFlag, getByApplyFlag,
@ -122,59 +202,60 @@ import {
demandComment, demandComment,
deviceApplylist, deviceApplylist,
getDeviceDetail, getDeviceDetail,
} from '@/api/personalCenter' } from '@/api/personalCenter'
import { import {
updateRes, updateRes,
relaunch, relaunch,
selectOne, selectOne,
getApplyCameraList, getApplyCameraList,
selectOneDel, selectOneDel,
} from '@/api/home' } from '@/api/home'
import { useRouter } from 'vue-router' import { useRouter } from 'vue-router'
import { message } from 'ant-design-vue' import { message } from 'ant-design-vue'
import ApplyDetails from '@/views/personalCenter/components/ApplyDetails' import ApplyDetails from '@/views/personalCenter/components/ApplyDetails'
import mybus from '@/myplugins/mybus' import mybus from '@/myplugins/mybus'
import * as moment from 'moment' import * as moment from 'moment'
const router = useRouter() const router = useRouter()
let typeList = ref([ let typeList = ref([
'能力申请', '能力申请',
'能力评价',
'能力上架', '能力上架',
'能力下架', '能力下架',
'能力需求', '能力需求',
'需求评论', '需求评论',
]) '能力评价',
// 西- ])
let isXiHaiAn = whoShow.itShowXiHaiAn; // 西-
const phoneSate = ref([2, 3]) let isXiHaiAn = whoShow.itShowXiHaiAn
if (isXiHaiAn) { const phoneSate = ref([2, 3])
if (isXiHaiAn) {
typeList.value.push('设备申请') typeList.value.push('设备申请')
} }
const typeStrObj = { const typeStrObj = {
'能力上架': 'resourcemountapply', 能力上架: 'resourcemountapply',
'能力下架': 'resourcundercarriageapply', 能力下架: 'resourcundercarriageapply',
'能力需求': 'abilitydemandapply', 能力需求: 'abilitydemandapply',
'需求评论': 'comment_review', 需求评论: 'comment_review',
} }
let tabList = ref(['全部', '审核中', '审核完成']) let tabList = ref(['全部', '审核中', '审核完成'])
const contentList = reactive({ data: [] }) const contentList = reactive({ data: [] })
let tabIndex = ref(0) let tabIndex = ref(0)
let typeIndex = ref(0) let typeIndex = ref(0)
let typeName = ref(typeList.value[0]) let typeName = ref(typeList.value[0])
const videoVisible = ref(false) const videoVisible = ref(false)
const numFlag = ref(true) const numFlag = ref(true)
const columns = ref([ const columns = ref([
{ {
title: '摄像头名称', title: '摄像头名称',
dataIndex: 'name', dataIndex: 'name',
}, },
]) ])
const xVideoList = ref([]) const xVideoList = ref([])
// //
function changeApplyState(item, index) { function changeApplyState(item, index) {
tabIndex.value = index tabIndex.value = index
switch (item) { switch (item) {
case '审核中': case '审核中':
@ -193,10 +274,10 @@ function changeApplyState(item, index) {
getApplyList() getApplyList()
break break
} }
} }
// //
const changeType = (item, index) => { const changeType = (item, index) => {
console.log('item, index-----选择类型------->', item, index); console.log('item, index-----选择类型------->', item, index)
numFlag.value = true numFlag.value = true
num.value = [] num.value = []
showType.value = '' showType.value = ''
@ -206,22 +287,22 @@ const changeType = (item, index) => {
typeIndex.value = index typeIndex.value = index
typeName.value = item typeName.value = item
getApplyList() getApplyList()
} }
let name = ref('') let name = ref('')
const detailsVisible = ref(false) const detailsVisible = ref(false)
const detailsVisible2 = ref(false) const detailsVisible2 = ref(false)
const businessKey = ref('') const businessKey = ref('')
const processInstanceId = ref('') const processInstanceId = ref('')
const processDefinitionName = ref('') const processDefinitionName = ref('')
const resourceId = ref('') const resourceId = ref('')
const reason = ref('') const reason = ref('')
const visible = ref(false) const visible = ref(false)
const delObj = ref({}) const delObj = ref({})
const taskId = ref('') const taskId = ref('')
const backUrl = ref(window.SITE_CONFIG.apiURL + '/') const backUrl = ref(window.SITE_CONFIG.apiURL + '/')
const refObj = ref({}) const refObj = ref({})
const showDetail = (item) => { const showDetail = (item) => {
// 西- // 西-
if (isXiHaiAn) { if (isXiHaiAn) {
if (item.expireDate) { if (item.expireDate) {
@ -234,7 +315,7 @@ const showDetail = (item) => {
if (typeName.value == '能力申请' && item.applyFlag) { if (typeName.value == '能力申请' && item.applyFlag) {
getByApplyFlag(item.applyFlag).then((res) => { getByApplyFlag(item.applyFlag).then((res) => {
if (res.data.code == 0) { if (res.data.code == 0) {
refObj.value = res.data.data; refObj.value = res.data.data
detailsVisible.value = true detailsVisible.value = true
processDefinitionName.value = item.processDefinitionName processDefinitionName.value = item.processDefinitionName
@ -246,7 +327,8 @@ const showDetail = (item) => {
} }
}) })
} else if (typeName.value == '设备申请') { } else if (typeName.value == '设备申请') {
getDeviceDetailInfo(item.deviceId).then(res => { getDeviceDetailInfo(item.deviceId)
.then((res) => {
if (res.data.code == 0) { if (res.data.code == 0) {
refObj.value = res.data.data refObj.value = res.data.data
detailsVisible.value = true detailsVisible.value = true
@ -255,9 +337,12 @@ const showDetail = (item) => {
// processInstanceId.value = item.processInstanceId // processInstanceId.value = item.processInstanceId
// resourceId.value = item.resourceId // resourceId.value = item.resourceId
} }
}).catch(err => {
}) })
} else if (Object.keys(typeStrObj).includes(typeName.value) || typeName.value == '能力评价') { .catch((err) => {})
} else if (
Object.keys(typeStrObj).includes(typeName.value) ||
typeName.value == '能力评价'
) {
refObj.value = item refObj.value = item
detailsVisible.value = true detailsVisible.value = true
processDefinitionName.value = item.processDefinitionName processDefinitionName.value = item.processDefinitionName
@ -267,8 +352,8 @@ const showDetail = (item) => {
} else { } else {
message.error('数据请求失败!') message.error('数据请求失败!')
} }
} }
const showVideoList = (item) => { const showVideoList = (item) => {
console.log('显示列表', item) console.log('显示列表', item)
getApplyCameraList(item.processInstanceId).then((res) => { getApplyCameraList(item.processInstanceId).then((res) => {
console.log('res', res) console.log('res', res)
@ -278,8 +363,8 @@ const showVideoList = (item) => {
}) })
}) })
videoVisible.value = true videoVisible.value = true
} }
const copyComment = (data) => { const copyComment = (data) => {
let url = data let url = data
let oInput = document.createElement('input') let oInput = document.createElement('input')
oInput.value = url oInput.value = url
@ -289,8 +374,8 @@ const copyComment = (data) => {
document.execCommand('Copy') // document.execCommand('Copy') //
message.success('复制成功') message.success('复制成功')
oInput.remove() oInput.remove()
} }
const showAdd = (item) => { const showAdd = (item) => {
if (item.processDefinitionKey == 'resourcemountapply') { if (item.processDefinitionKey == 'resourcemountapply') {
const data = { const data = {
id: item.resourceId, id: item.resourceId,
@ -343,12 +428,12 @@ const showAdd = (item) => {
console.log('能力申请修改=================》', item) console.log('能力申请修改=================》', item)
window.open(newpage.href, '_self') window.open(newpage.href, '_self')
} }
} }
const num = ref({ const num = ref({
finished: 0, finished: 0,
unfinished: 0, unfinished: 0,
}) })
const initNum = () => { const initNum = () => {
if (numFlag.value) { if (numFlag.value) {
num.value = [] num.value = []
getMyProcessInstancePage({ getMyProcessInstancePage({
@ -373,8 +458,8 @@ const initNum = () => {
} }
}) })
} }
} }
const initNum2 = () => { const initNum2 = () => {
if (numFlag.value) { if (numFlag.value) {
num.value = [] num.value = []
getTabilityapplication({ getTabilityapplication({
@ -397,23 +482,23 @@ const initNum2 = () => {
} }
}) })
} }
} }
// initNum() // initNum()
const total = ref('') const total = ref('')
const showType = ref('') const showType = ref('')
const page = ref('1') const page = ref('1')
const ended = ref('') const ended = ref('')
const processDefinitionKey = ref('') const processDefinitionKey = ref('')
// //
const onSearch = (name) => { const onSearch = (name) => {
console.log(name.value) console.log(name.value)
} }
// //
function replacement() { function replacement() {
name.value = '' name.value = ''
getApplyList(name.value) getApplyList(name.value)
} }
const getApplyList = () => { const getApplyList = () => {
const params = { const params = {
page: page.value, page: page.value,
limit: 4, limit: 4,
@ -437,21 +522,27 @@ const getApplyList = () => {
num.value = [] num.value = []
showType.value = '' showType.value = ''
} else if (typeName.value == '设备申请') { } else if (typeName.value == '设备申请') {
let _state = ended.value === '' ? '全部' : ended.value === true ? '审核完成' : '审核中'; let _state =
getDeviceApply(_state).then(res => { ended.value === ''
? '全部'
: ended.value === true
? '审核完成'
: '审核中'
getDeviceApply(_state)
.then((res) => {
if (res.data.code == 0) { if (res.data.code == 0) {
contentList.data = [] contentList.data = []
contentList.data = res.data.data.list || [] contentList.data = res.data.data.list || []
total.value = res.data.data.total total.value = res.data.data.total
showType.value = '设备申请'; showType.value = '设备申请'
// //
getDeviceNum() getDeviceNum()
} }
}).catch(err => {
}) })
.catch((err) => {})
} else if (Object.keys(typeStrObj).includes(typeName.value)) { } else if (Object.keys(typeStrObj).includes(typeName.value)) {
processDefinitionKey.value = typeStrObj[typeName.value] processDefinitionKey.value = typeStrObj[typeName.value]
params.processDefinitionKey = processDefinitionKey.value; params.processDefinitionKey = processDefinitionKey.value
getMyProcessInstancePage(params).then((res) => { getMyProcessInstancePage(params).then((res) => {
contentList.data = [] contentList.data = []
// initNum(name.value) // initNum(name.value)
@ -509,18 +600,18 @@ const getApplyList = () => {
num.value = [] num.value = []
showType.value = '' showType.value = ''
} }
} }
const handleCurrentChange = (val) => { const handleCurrentChange = (val) => {
page.value = val page.value = val
getApplyList() getApplyList()
} }
const handlePageSizeChange = (val) => { const handlePageSizeChange = (val) => {
page.value = val page.value = val
getApplyList() getApplyList()
} }
const viewDetail = (processDefinitionName, id, ended, businessKey) => { const viewDetail = (processDefinitionName, id, ended, businessKey) => {
if (processDefinitionName == '能力申请流程') { if (processDefinitionName == '能力申请流程') {
router.push({ router.push({
path: '/details', path: '/details',
@ -547,10 +638,10 @@ const viewDetail = (processDefinitionName, id, ended, businessKey) => {
}, },
}) })
} }
} }
// //
const del = () => { const del = () => {
console.log('下架================》', delObj.value, reason.value) console.log('下架================》', delObj.value, reason.value)
delObj.value.undercarriageReason = reason.value delObj.value.undercarriageReason = reason.value
updateRes(delObj.value).then((upres) => { updateRes(delObj.value).then((upres) => {
@ -572,76 +663,82 @@ const del = () => {
message.error('数据更新失败!') message.error('数据更新失败!')
} }
}) })
} }
// 西 todo // 西 todo
const getDeviceApply = (state) => { const getDeviceApply = (state) => {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
let _data = { let _data = {
page: page.value, page: page.value,
limit: 4, limit: 4,
state state,
} }
deviceApplylist(_data).then(res => { deviceApplylist(_data)
.then((res) => {
resolve(res) resolve(res)
console.log('res----设备申请-------->', res); console.log('res----设备申请-------->', res)
}).catch(err => { })
.catch((err) => {
reject(err) reject(err)
console.log('err------------>', err); console.log('err------------>', err)
}) })
}) })
} }
// 西-- // 西--
const getDeviceDetailInfo = (deviceId) => { const getDeviceDetailInfo = (deviceId) => {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
getDeviceDetail(deviceId).then(res => { getDeviceDetail(deviceId)
.then((res) => {
resolve(res) resolve(res)
console.log('res----查询详情-------->', res); console.log('res----查询详情-------->', res)
}).catch(err => { })
.catch((err) => {
reject(err) reject(err)
console.log('err------------>', err); console.log('err------------>', err)
}) })
}) })
} }
// 西-, // 西-,
const getDeviceNum = () => { const getDeviceNum = () => {
if (!numFlag.value) { if (!numFlag.value) {
return; return
} }
num.value = [] num.value = []
Promise.all([getDeviceApply('审核中'), getDeviceApply('审核完成')]).then(res => { Promise.all([getDeviceApply('审核中'), getDeviceApply('审核完成')])
console.log('res-----数量------->', res); .then((res) => {
let unfinished = res[0] && res[0].data && res[0].data.data; console.log('res-----数量------->', res)
let finished = res[1] && res[1].data && res[1].data.data; let unfinished = res[0] && res[0].data && res[0].data.data
num.value.unfinished = unfinished.total || ''; let finished = res[1] && res[1].data && res[1].data.data
num.value.finished = finished.total || ''; num.value.unfinished = unfinished.total || ''
num.value.finished = finished.total || ''
numFlag.value = false numFlag.value = false
}).catch(err => {
console.log('err------------>', err);
}) })
} .catch((err) => {
console.log('err------------>', err)
})
}
const phoneVisible = ref(false) const phoneVisible = ref(false)
const showPhoneModal = () => { const showPhoneModal = () => {
phoneVisible.value = true phoneVisible.value = true
} }
mybus.on('closeModal', (obj) => { mybus.on('closeModal', (obj) => {
detailsVisible.value = false detailsVisible.value = false
changeType(obj.type, obj.index) changeType(obj.type, obj.index)
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
mybus.off('closeModal') mybus.off('closeModal')
}) })
onMounted(() => { onMounted(() => {
getApplyList() getApplyList()
}) })
</script> </script>
<style scoped lang="less"> <style scoped lang="less">
.on-the-right-side-of-the-list { .on-the-right-side-of-the-list {
background: #ffffff; background: #ffffff;
padding: 20px 0px 30px 20px; padding: 20px 0px 30px 20px;
position: absolute; position: absolute;
@ -817,10 +914,10 @@ onMounted(() => {
.backToFirst { .backToFirst {
background-color: rgb(214, 91, 91); background-color: rgb(214, 91, 91);
} }
} }
:deep(.ant-badge-count) { :deep(.ant-badge-count) {
top: -5px; top: -5px;
right: -10px; right: -10px;
} }
</style> </style>