Compare commits
31 Commits
6784514ec5
...
a7ecd774c2
Author | SHA1 | Date |
---|---|---|
wuhongjian | a7ecd774c2 | |
wuhongjian | 5deb9a3826 | |
wuhongjian | 1a96e4e6a2 | |
wuhongjian | 1f3116f402 | |
guoyue | ba5526d7d8 | |
guoyue | 33ba30d97f | |
a0049873 | 188d9bb85a | |
a0049873 | 6a6d1fc473 | |
a0049873 | 04ad7eb6ed | |
a0049873 | fe1f6dc08d | |
gongjiale | 56c4393f2e | |
gongjiale | f541f61409 | |
a0049873 | 6b1c3f30a4 | |
a0049873 | c6429869a4 | |
unknown | a12d0aa6ff | |
unknown | 02d70b4b8d | |
guoyue | 4e271b6aa7 | |
guoyue | 4d59133942 | |
unknown | 1a23d64064 | |
unknown | 04471a122e | |
gongjiale | 906a2aad94 | |
gongjiale | b24e925c5a | |
a0049873 | e6a102ce3f | |
gongjiale | 7a0d2ba101 | |
gongjiale | 55398620f0 | |
guoyue | 2af92a6f8f | |
a0049873 | d3466d4521 | |
wuhongjian | 2258b05184 | |
guoyue | 3f22be0d8d | |
guoyue | cdb47c705b | |
guoyue | 2ee2d988cc |
|
@ -9,13 +9,14 @@
|
|||
</el-form>
|
||||
<template slot="footer">
|
||||
<el-button @click="visible = false">{{ $t('cancel') }}</el-button>
|
||||
<el-button type="primary" @click="entrustTask()">{{ $t('confirm') }}</el-button>
|
||||
<el-button type="primary" @click="entrustTask($store.state.contentTabsActiveName)">{{ $t('confirm') }}</el-button>
|
||||
</template>
|
||||
<select-user v-if="selectUserVisible" ref="selectUser" ></select-user>
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import bus from '@/views/bus.js'
|
||||
import SelectUser from './select-user'
|
||||
import qs from 'qs'
|
||||
export default {
|
||||
|
@ -52,11 +53,11 @@ export default {
|
|||
init () {
|
||||
this.visible = true
|
||||
this.$nextTick(() => {
|
||||
this.$refs['dataForm'].resetFields()
|
||||
this.$refs.dataForm.resetFields()
|
||||
})
|
||||
},
|
||||
// 委托
|
||||
entrustTask () {
|
||||
entrustTask (data) {
|
||||
if (!this.dataForm.entrustUserId) {
|
||||
this.$message.error(this.$t('process.entrustError'))
|
||||
return
|
||||
|
@ -65,9 +66,11 @@ export default {
|
|||
taskId: this.dataForm.taskId,
|
||||
assignee: this.dataForm.entrustUserId
|
||||
})
|
||||
this.$http['post']('/act/task/entrust', task).then(({ data: res }) => {
|
||||
this.$http.post('/act/task/entrust', task).then(({ data: res }) => {
|
||||
if (res.code !== 0) {
|
||||
this.$message.error(res.msg)
|
||||
this.tabRemoveHandle(data)
|
||||
bus.$emit('updateTaskNum')
|
||||
if (this.callbacks.taskHandleErrorCallback) {
|
||||
this.callbacks.taskHandleErrorCallback(res)
|
||||
}
|
||||
|
@ -79,6 +82,8 @@ export default {
|
|||
duration: 500,
|
||||
onClose: () => {
|
||||
this.visible = false
|
||||
this.tabRemoveHandle(data)
|
||||
bus.$emit('updateTaskNum')
|
||||
if (this.callbacks.taskHandleSuccessCallback) {
|
||||
this.callbacks.taskHandleSuccessCallback(res)
|
||||
}
|
||||
|
@ -93,6 +98,33 @@ export default {
|
|||
this.$refs.selectUser.init(this.setUserInfo)
|
||||
})
|
||||
},
|
||||
|
||||
tabRemoveHandle (tabName) {
|
||||
console.log(tabName, 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa')
|
||||
if (tabName === 'home') {
|
||||
return false
|
||||
}
|
||||
this.$store.state.contentTabs = this.$store.state.contentTabs.filter(
|
||||
(item) => item.name !== tabName
|
||||
)
|
||||
if (this.$store.state.contentTabs.length <= 0) {
|
||||
this.$store.state.sidebarMenuActiveName =
|
||||
this.$store.state.contentTabsActiveName = 'home'
|
||||
return false
|
||||
}
|
||||
// 当前选中tab被删除
|
||||
if (tabName === this.$store.state.contentTabsActiveName) {
|
||||
const tab =
|
||||
this.$store.state.contentTabs[
|
||||
this.$store.state.contentTabs.length - 1
|
||||
]
|
||||
this.$router.push({
|
||||
name: /^iframe_.+/.test(tab.name) ? 'iframe' : tab.name,
|
||||
params: { ...tab.params },
|
||||
query: { ...tab.query }
|
||||
})
|
||||
}
|
||||
},
|
||||
setUserInfo (userInfo) {
|
||||
this.dataForm.entrustUserId = userInfo.id
|
||||
this.dataForm.entrustUserName = userInfo.realName
|
||||
|
|
|
@ -105,6 +105,7 @@ router.beforeEach((to, from, next) => {
|
|||
return next({ name: 'login' })
|
||||
}
|
||||
window.SITE_CONFIG.menuList = res.data.filter(item => item.site === 0)
|
||||
debugger
|
||||
fnAddDynamicMenuRoutes(window.SITE_CONFIG.menuList)
|
||||
next({ ...to, replace: true })
|
||||
}).catch(() => {
|
||||
|
@ -137,6 +138,7 @@ function fnCurrentRouteIsPageRoute (route, pageRoutes = []) {
|
|||
*/
|
||||
function fnAddDynamicMenuRoutes (menuList = [], routes = []) {
|
||||
var temp = []
|
||||
debugger
|
||||
for (var i = 0; i < menuList.length; i++) {
|
||||
if (menuList[i].children && menuList[i].children.length >= 1) {
|
||||
temp = temp.concat(menuList[i].children)
|
||||
|
@ -187,6 +189,7 @@ function fnAddDynamicMenuRoutes (menuList = [], routes = []) {
|
|||
},
|
||||
{ path: '*', redirect: { name: '404' } }
|
||||
])
|
||||
console.log('查询路由', routes)
|
||||
window.SITE_CONFIG.dynamicMenuRoutes = routes
|
||||
window.SITE_CONFIG.dynamicMenuRoutesHasAdded = true
|
||||
}
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* @Author: hisense.guoyue
|
||||
* @Date: 2022-08-23 10:30:11
|
||||
* @LastEditors: hisense.wuhongjian
|
||||
* @LastEditTime: 2022-10-18 17:42:49
|
||||
* @LastEditTime: 2022-10-20 16:19:04
|
||||
* @Description: 判断当前环境是西海岸还是青岛市局
|
||||
*/
|
||||
const returnLocationStr = () => {
|
||||
|
|
|
@ -26,25 +26,14 @@
|
|||
<!--起始日期 @keyup.enter.native="getDataList()"-->
|
||||
<el-form-item>
|
||||
<span>日期:</span>
|
||||
<el-date-picker
|
||||
v-model="value1"
|
||||
type="datetimerange"
|
||||
range-separator="至"
|
||||
start-placeholder="开始日期"
|
||||
end-placeholder="结束日期"
|
||||
format="yyyy-MM-dd HH:mm:ss"
|
||||
value-format="yyyy-MM-dd HH:mm:ss"
|
||||
>
|
||||
<el-date-picker v-model="value1" type="datetimerange" range-separator="至" start-placeholder="开始日期"
|
||||
end-placeholder="结束日期" format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<!--审核状态-->
|
||||
<el-form-item >
|
||||
<el-form-item>
|
||||
<span>审核状态:</span>
|
||||
<el-select
|
||||
v-model="examineStatus"
|
||||
placeholder="请选审核状态"
|
||||
clearable
|
||||
>
|
||||
<el-select v-model="examineStatus" placeholder="请选审核状态" clearable>
|
||||
<el-option label="全部" value="-1"></el-option>
|
||||
<el-option label="审核中" value="0"></el-option>
|
||||
<el-option label="通过" value="1"></el-option>
|
||||
|
@ -58,14 +47,11 @@
|
|||
<el-select
|
||||
v-model="abilityDepartment"
|
||||
placeholder="请选择部门"
|
||||
filterable
|
||||
clearable
|
||||
>
|
||||
<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-form-item>
|
||||
|
||||
|
@ -74,13 +60,8 @@
|
|||
<span>类型:</span>
|
||||
<el-select v-model="abilityType" placeholder="请选择类型" clearable>
|
||||
<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, i) in typeOptions" :key="`${item.name}${i}`" :label="item.name" :value="item.name" v-bind="item">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
|
@ -95,10 +76,7 @@
|
|||
}}</el-button>
|
||||
</el-form-item>
|
||||
<!-- 导出 -->
|
||||
<a class='export' :href="exportExcel+exportExcelType+'?'+exportExcelCondition+'&token='+token">导出</a>
|
||||
<!-- <el-form-item>
|
||||
<el-button type="primary" @click="exportExcel()">导出</el-button>
|
||||
</el-form-item> -->
|
||||
<a class='export' :href="exportExcel+exportExcelType+'?'+exportExcelCondition+'&token='+token">导出全部</a>
|
||||
</el-form>
|
||||
<el-card shadow="never" class="aui-card--fill" v-if="homeIsShow">
|
||||
<div class="mod-demand__bsdemand">
|
||||
|
@ -112,25 +90,18 @@
|
|||
</div> -->
|
||||
|
||||
<div class="second-title">
|
||||
<span
|
||||
style="margin-right: 30px"
|
||||
:class="[
|
||||
<span style="margin-right: 30px" :class="[
|
||||
departmentId === 1 || departmentId === 3
|
||||
? 'departmentStyle'
|
||||
: ''
|
||||
]"
|
||||
@click="handleChose(3)"
|
||||
>
|
||||
]" @click="handleChose(3)">
|
||||
能力上架统计
|
||||
</span>
|
||||
<span
|
||||
:class="[
|
||||
<span :class="[
|
||||
departmentId === 2 || departmentId === 4
|
||||
? 'departmentStyle'
|
||||
: ''
|
||||
]"
|
||||
@click="handleChose(4)"
|
||||
>
|
||||
]" @click="handleChose(4)">
|
||||
能力使用统计
|
||||
</span>
|
||||
<!-- <span v-if='this.choseId===0' :class="[departmentId===3?'departmentStyle':'']" @click="handleChose(3)">
|
||||
|
@ -139,21 +110,18 @@
|
|||
<span v-if='this.choseId===0' :class="[departmentId===4?'departmentStyle':'']" @click="handleChose(4)">
|
||||
能力使用明细
|
||||
</span> -->
|
||||
<span v-if="detailFlag" class="detail-button" @click="goToDetail()">
|
||||
<template v-if="detailFlag">
|
||||
<el-checkbox v-model="checked" @change='chagneCheckbox' style="position: absolute;right: 150px;margin-top: -15px;">隐藏空数据</el-checkbox>
|
||||
<span class="detail-button" @click="goToDetail()">
|
||||
明细
|
||||
</span>
|
||||
</template>
|
||||
<span v-else class="detail-button" @click="goToBack()"> 返回 </span>
|
||||
</div>
|
||||
<div class="line-style"></div>
|
||||
<!--统计表-->
|
||||
<el-table
|
||||
:data="tableData"
|
||||
:header-cell-style="{ textAlign: 'center' }"
|
||||
:cell-style="{ textAlign: 'center' }"
|
||||
border
|
||||
style="width: 100%"
|
||||
v-show="this.departmentId === 1"
|
||||
>
|
||||
<el-table :data="tableData" :header-cell-style="{ textAlign: 'center' }" :cell-style="{ textAlign: 'center' }"
|
||||
border style="width: 100%" v-show="this.departmentId === 1">
|
||||
<el-table-column prop="name" label="上架部门" min-width="100%">
|
||||
</el-table-column>
|
||||
<el-table-column label="组件">
|
||||
|
@ -161,17 +129,9 @@
|
|||
</el-table-column>
|
||||
<el-table-column prop="tcfw" label="图层服务" min-width="100%">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="kfzj"
|
||||
label="通用开发组件"
|
||||
min-width="100%"
|
||||
>
|
||||
<el-table-column prop="kfzj" label="通用开发组件" min-width="100%">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="ywzj"
|
||||
label="业务能力组件"
|
||||
min-width="100%"
|
||||
>
|
||||
<el-table-column prop="ywzj" label="业务能力组件" min-width="100%">
|
||||
</el-table-column>
|
||||
</el-table-column>
|
||||
<el-table-column prop="yyzy" label="应用资源" min-width="100%">
|
||||
|
@ -179,14 +139,8 @@
|
|||
<el-table-column prop="zj" label="总计" min-width="100%">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<el-table
|
||||
:data="tableData"
|
||||
:header-cell-style="{ textAlign: 'center' }"
|
||||
:cell-style="{ textAlign: 'center' }"
|
||||
border
|
||||
style="width: 100%"
|
||||
v-show="this.departmentId === 2"
|
||||
>
|
||||
<el-table :data="tableData" :header-cell-style="{ textAlign: 'center' }" :cell-style="{ textAlign: 'center' }"
|
||||
border style="width: 100%" v-show="this.departmentId === 2">
|
||||
<el-table-column prop="name" label="申请部门" min-width="100%">
|
||||
</el-table-column>
|
||||
<el-table-column label="组件">
|
||||
|
@ -194,17 +148,9 @@
|
|||
</el-table-column>
|
||||
<el-table-column prop="tcfw" label="图层服务" min-width="100%">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="kfzj"
|
||||
label="通用开发组件"
|
||||
min-width="100%"
|
||||
>
|
||||
<el-table-column prop="kfzj" label="通用开发组件" min-width="100%">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="ywzj"
|
||||
label="业务能力组件"
|
||||
min-width="100%"
|
||||
>
|
||||
<el-table-column prop="ywzj" label="业务能力组件" min-width="100%">
|
||||
</el-table-column>
|
||||
</el-table-column>
|
||||
<el-table-column prop="yyzy" label="应用资源" min-width="100%">
|
||||
|
@ -218,6 +164,8 @@
|
|||
|
||||
<el-table
|
||||
:data="tableData"
|
||||
:header-cell-style="{ textAlign: 'center',height:'96px' }"
|
||||
:cell-style="{ textAlign: 'center' }"
|
||||
style="width: 100%"
|
||||
v-show="this.departmentId === 3 || this.departmentId === 4"
|
||||
>
|
||||
|
@ -234,46 +182,29 @@
|
|||
<el-table-column prop="approveStatus" label="状态" min-width="100%">
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" min-width="100%">
|
||||
<template slot-scope="scope" >
|
||||
<template slot-scope="scope">
|
||||
<el-link type="primary" v-if="scope.row.applyNumber" v-on:click="detailClick(scope.row)">查看详情</el-link>
|
||||
<el-link type="info" v-else disabled>后台挂接,无详情</el-link>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<!-- <div class="block">
|
||||
<el-pagination
|
||||
@current-change="handleCurrentChange"
|
||||
layout="total, prev, pager, next, jumper"
|
||||
:total="total"
|
||||
:page-size="5"
|
||||
:current-page="currentPage"
|
||||
>
|
||||
<div class="block">
|
||||
<el-pagination @current-change="handleCurrentChange" layout="total, prev, pager, next, jumper"
|
||||
:total="total" :page-size="pageSize" :current-page="currentPage">
|
||||
</el-pagination>
|
||||
</div> -->
|
||||
</div>
|
||||
</div>
|
||||
</el-card>
|
||||
</div>
|
||||
<component-used
|
||||
v-if="UsedIsShow"
|
||||
:tableId="tableId"
|
||||
: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>
|
||||
<ability-detail v-if="detailsVisible"
|
||||
:detailsVisible="detailsVisible" :detailParamss="detailParamss" :detailType="detailType" @closeModal="closeModal">
|
||||
</ability-detail>
|
||||
<component-used v-if="UsedIsShow" :tableId="tableId" :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>
|
||||
<ability-detail v-if="detailsVisible" :detailsVisible="detailsVisible" :detailParamss="detailParamss"
|
||||
:detailType="detailType" @closeModal="closeModal">
|
||||
</ability-detail>
|
||||
</div>
|
||||
|
||||
</template>
|
||||
|
@ -284,7 +215,8 @@ import AbilityDetail from './components/abilityDetails'
|
|||
import applicationResources from './applicationResources.vue'
|
||||
import ComponentUsed from './componentUsed.vue'
|
||||
import qs from 'qs'
|
||||
import { mapState } from 'vuex'
|
||||
import Template from '../devtools/template.vue'
|
||||
// import { mapState } from 'vuex'
|
||||
// const props = defineProps({
|
||||
// processDefinitionName: { type: String, default: null },
|
||||
// businessKey: { type: String, default: null },
|
||||
|
@ -294,9 +226,11 @@ import { mapState } from 'vuex'
|
|||
// showType: { type: String, default: null },
|
||||
// })
|
||||
export default {
|
||||
components: { componentServices, applicationResources, ComponentUsed, AbilityDetail },
|
||||
components: { componentServices, applicationResources, ComponentUsed, AbilityDetail, Template },
|
||||
data () {
|
||||
return {
|
||||
checked: false,
|
||||
departmentSelects: [],
|
||||
exportExcel: CONFIGITEM.configData[CONFIGITEM.version].apiURL + '/census/center/export',
|
||||
exportExcelCondition: '',
|
||||
exportExcelType: '',
|
||||
|
@ -373,6 +307,7 @@ export default {
|
|||
choseId: 0,
|
||||
departmentId: 1,
|
||||
currentPage: 1,
|
||||
pageSize: 10,
|
||||
homeIsShow: true,
|
||||
servicesIsShow: false,
|
||||
resourcesIsShow: false,
|
||||
|
@ -387,6 +322,7 @@ export default {
|
|||
{ name: '会议室', value: 6 }
|
||||
],
|
||||
tableData: [],
|
||||
tableDataClone: [],
|
||||
tableData2: [
|
||||
{
|
||||
approveStatus: '',
|
||||
|
@ -417,6 +353,13 @@ export default {
|
|||
}
|
||||
},
|
||||
created () {
|
||||
this.$http.get('/sys/dept/all').then(res => {
|
||||
// console.log('获取部门=========>', res)
|
||||
this.departmentSelects = []
|
||||
res.data.data.map(val => {
|
||||
this.departmentSelects.push({ label: val.name, value: val.id })
|
||||
})
|
||||
})
|
||||
// 当前设定的日期时间
|
||||
// const d = new Date()
|
||||
// let year1, month1, day1
|
||||
|
@ -442,18 +385,37 @@ export default {
|
|||
}
|
||||
},
|
||||
computed: {
|
||||
...mapState(['departmentSelects'])
|
||||
// ...mapState(['departmentSelects'])
|
||||
},
|
||||
methods: {
|
||||
chagneCheckbox () {
|
||||
if (this.checked) {
|
||||
this.tableData = this.tableDataClone.filter(val => val.count !== 0)
|
||||
this.total = this.tableData.length
|
||||
} else {
|
||||
this.tableData = this.tableDataClone
|
||||
this.total = this.tableData.length
|
||||
}
|
||||
},
|
||||
closeModal () {
|
||||
this.detailsVisible = false
|
||||
},
|
||||
handleCurrentChange (val) {
|
||||
if (this.choseId === 0) {
|
||||
this.getFirstTree(val)
|
||||
} else if (this.choseId === 1) {
|
||||
this.getReleaseTree(val)
|
||||
console.log('val------------>', val)
|
||||
this.currentPage = val
|
||||
// todo
|
||||
if (this.departmentId === 3) {
|
||||
this.getOneDetail(val)
|
||||
}
|
||||
if (this.departmentId === 4) {
|
||||
this.getTwoDetail(val)
|
||||
}
|
||||
|
||||
// if (this.choseId === 0) {
|
||||
// this.getFirstTree(val)
|
||||
// } else if (this.choseId === 1) {
|
||||
// this.getReleaseTree(val)
|
||||
// }
|
||||
},
|
||||
getTreeName (data) {
|
||||
this.$http
|
||||
|
@ -539,6 +501,7 @@ export default {
|
|||
parseInt(result[i].hys)
|
||||
}
|
||||
this.tableData = res.data.data
|
||||
this.tableDataClone = res.data.data
|
||||
this.total = res.data.data.total
|
||||
this.exportExcelCondition = qs.stringify({
|
||||
approveStatus: this.status,
|
||||
|
@ -549,7 +512,7 @@ export default {
|
|||
})
|
||||
},
|
||||
// 组件服务部门使用情况列表-改为能力使用统计
|
||||
getSecondTree () {
|
||||
getSecondTree (page) {
|
||||
if (this.examineStatus == '-1') {
|
||||
this.status = ''
|
||||
} else if (this.examineStatus == '0') {
|
||||
|
@ -564,8 +527,8 @@ export default {
|
|||
this.$http
|
||||
.get('/census/center/selectApplyDeptDetailTypeCountList', {
|
||||
params: {
|
||||
// page: page || 1,
|
||||
// limit: 5,
|
||||
page: page || 1,
|
||||
limit: this.pageSize,
|
||||
approveStatus: this.status,
|
||||
deptId: this.abilityDepartment,
|
||||
params: '',
|
||||
|
@ -603,6 +566,7 @@ export default {
|
|||
parseInt(result[i].hys)
|
||||
}
|
||||
this.tableData = res.data.data
|
||||
this.tableDataClone = res.data.data
|
||||
this.total = res.data.data.total
|
||||
this.exportExcelCondition = qs.stringify({
|
||||
approveStatus: this.status,
|
||||
|
@ -654,7 +618,7 @@ export default {
|
|||
})
|
||||
}
|
||||
},
|
||||
// 能力上架明细
|
||||
// 能力上架明细 能力上架统计
|
||||
getOneDetail (page) {
|
||||
var passAndReview = '' // 转变"通过"字段为通过
|
||||
if (this.examineStatus == '-1') {
|
||||
|
@ -671,8 +635,8 @@ export default {
|
|||
this.$http
|
||||
.get('/census/center/selectCensusResourceTable', {
|
||||
params: {
|
||||
// limit: 5,
|
||||
// page: page || 1,
|
||||
limit: this.pageSize,
|
||||
page: this.currentPage,
|
||||
approveStatus: this.status,
|
||||
deptId: this.abilityDepartment,
|
||||
type: this.abilityType,
|
||||
|
@ -682,7 +646,8 @@ export default {
|
|||
})
|
||||
.then((res) => {
|
||||
console.log('111111', this.tableData, res.data.data)
|
||||
this.tableData = res.data.data
|
||||
this.tableData = res.data.data.list
|
||||
this.tableDataClone = res.data.data.list
|
||||
this.total = res.data.data.total
|
||||
this.exportExcelCondition = qs.stringify({
|
||||
approveStatus: this.status,
|
||||
|
@ -692,7 +657,7 @@ export default {
|
|||
})
|
||||
})
|
||||
},
|
||||
// 能力使用明细
|
||||
// 能力使用明细 能力使用统计
|
||||
getTwoDetail (page) {
|
||||
var passAndReview = '' // 转变"通过"字段为通过
|
||||
if (this.examineStatus == '-1') {
|
||||
|
@ -709,8 +674,8 @@ export default {
|
|||
this.$http
|
||||
.get('/census/center/selectCensusApplyTable', {
|
||||
params: {
|
||||
// limit: 5,
|
||||
// page: page || 1,
|
||||
limit: this.pageSize,
|
||||
page: this.currentPage,
|
||||
approveStatus: this.status,
|
||||
deptId: this.abilityDepartment,
|
||||
type: this.abilityType,
|
||||
|
@ -719,7 +684,8 @@ export default {
|
|||
}
|
||||
})
|
||||
.then((res) => {
|
||||
this.tableData = res.data.data
|
||||
this.tableData = res.data.data.list
|
||||
this.tableDataClone = res.data.data.list
|
||||
this.total = res.data.data.total
|
||||
this.exportExcelCondition = qs.stringify({
|
||||
approveStatus: this.status,
|
||||
|
@ -827,6 +793,7 @@ export default {
|
|||
// },
|
||||
// 选择发布or使用表格
|
||||
handleChose (index) {
|
||||
this.checked = false
|
||||
this.departmentId = index
|
||||
if (index === 1) {
|
||||
if (this.choseId === 0) {
|
||||
|
@ -899,6 +866,7 @@ export default {
|
|||
},
|
||||
// 返回按钮
|
||||
goToBack () {
|
||||
this.checked = false
|
||||
// departmentId 1,3 2,4 两个值共同判断
|
||||
this.detailFlag = !this.detailFlag
|
||||
if (this.departmentId === 3) {
|
||||
|
@ -1019,6 +987,7 @@ export default {
|
|||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.container-left {
|
||||
width: 250px;
|
||||
height: 1000px;
|
||||
|
@ -1026,11 +995,13 @@ export default {
|
|||
// background-color: #ffffff;
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
.left-search {
|
||||
width: 250px;
|
||||
height: 76px;
|
||||
background-color: #ffffff;
|
||||
}
|
||||
|
||||
.input-style {
|
||||
width: 210px;
|
||||
height: 36px;
|
||||
|
@ -1040,11 +1011,13 @@ export default {
|
|||
border: 1px solid transparent;
|
||||
background-color: #f2f4fa;
|
||||
}
|
||||
|
||||
input::placeholder {
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
color: #b0b3ca;
|
||||
}
|
||||
|
||||
.input-search {
|
||||
width: 44px;
|
||||
height: 30px;
|
||||
|
@ -1054,10 +1027,12 @@ input::placeholder {
|
|||
top: 38px;
|
||||
left: 196px;
|
||||
}
|
||||
|
||||
::v-deep.tree-style {
|
||||
.el-tree-node__label {
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
.el-tree-node__content {
|
||||
width: 240px;
|
||||
overflow: hidden;
|
||||
|
@ -1073,6 +1048,7 @@ input::placeholder {
|
|||
background-color: #fafafc;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.title {
|
||||
display: flex;
|
||||
font-size: 20px;
|
||||
|
@ -1081,10 +1057,12 @@ input::placeholder {
|
|||
padding-left: 15px;
|
||||
padding-top: 10px;
|
||||
}
|
||||
|
||||
.title-list-style {
|
||||
display: flex;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.title-single {
|
||||
font-size: 14px;
|
||||
width: 90px;
|
||||
|
@ -1095,6 +1073,7 @@ input::placeholder {
|
|||
border-radius: 12px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.box-style {
|
||||
width: 90px;
|
||||
height: 24px;
|
||||
|
@ -1103,11 +1082,13 @@ input::placeholder {
|
|||
align-items: center;
|
||||
padding-bottom: 2px;
|
||||
}
|
||||
|
||||
.second-title {
|
||||
margin-top: 20px;
|
||||
font-size: 14px;
|
||||
color: #979eb9;
|
||||
cursor: pointer;
|
||||
|
||||
.detail-button {
|
||||
width: 60px;
|
||||
height: 30px;
|
||||
|
@ -1121,6 +1102,7 @@ input::placeholder {
|
|||
color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
.line-style {
|
||||
width: 100%;
|
||||
height: 1px;
|
||||
|
@ -1128,23 +1110,28 @@ input::placeholder {
|
|||
margin-top: 15px;
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
|
||||
.aui-card--fill {
|
||||
width: 100% !important;
|
||||
padding: 0px !important;
|
||||
}
|
||||
|
||||
.choseStyle {
|
||||
color: #526aff;
|
||||
border: 1px solid #526aff;
|
||||
}
|
||||
|
||||
.departmentStyle {
|
||||
color: #526aff;
|
||||
}
|
||||
|
||||
::v-deep .tree-text-styleJ {
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
word-break: break-all;
|
||||
}
|
||||
|
||||
.export {
|
||||
display: inline-block;
|
||||
width: 70px;
|
||||
|
@ -1156,18 +1143,21 @@ input::placeholder {
|
|||
border: 1px solid #dcdfe6;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
.export:hover {
|
||||
border-color: #c5ddfd;
|
||||
background-color: #ecf4fe;
|
||||
color: #0058e1;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.export:active {
|
||||
border-color: #c5ddfd;
|
||||
background-color: #ecf4fe;
|
||||
color: #0058e1;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.export:visited {
|
||||
color: #fff;
|
||||
text-decoration: none;
|
||||
|
|
|
@ -74,31 +74,31 @@
|
|||
</template>
|
||||
|
||||
<script>
|
||||
import * as moment from 'moment';
|
||||
import * as moment from 'moment'
|
||||
|
||||
export default {
|
||||
data() {
|
||||
data () {
|
||||
return {
|
||||
// 详情信息
|
||||
detailInfo: {},
|
||||
dataList: [],
|
||||
dataList: []
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.detailInfo = this.$route.params.params || {};
|
||||
console.log('this.detailInfo------------>', this.detailInfo);
|
||||
created () {
|
||||
this.detailInfo = this.$route.params.params || {}
|
||||
console.log('this.detailInfo------------>', this.detailInfo)
|
||||
// 表格数据
|
||||
let durationInSeconds = ''
|
||||
if (this.detailInfo.auditTime && this.detailInfo.auditTime) {
|
||||
durationInSeconds = moment(this.detailInfo.auditTime).diff(moment(this.detailInfo.createDate), 'seconds')
|
||||
}
|
||||
let _obj = {
|
||||
const _obj = {
|
||||
activityName: this.detailInfo.title || '',
|
||||
assigneeName: this.detailInfo.auditorName || '',
|
||||
startTime: this.detailInfo.createDate || '',
|
||||
endTime: this.detailInfo.auditTime,
|
||||
comment: this.detailInfo.auditViem,
|
||||
durationInSeconds: durationInSeconds,
|
||||
durationInSeconds: durationInSeconds
|
||||
}
|
||||
this.dataList.push(_obj)
|
||||
}
|
||||
|
@ -242,7 +242,7 @@ export default {
|
|||
}
|
||||
}
|
||||
|
||||
::v-deep .agreeOr>div {
|
||||
::v-deep .agreeOr > div {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
|
@ -252,7 +252,7 @@ export default {
|
|||
}
|
||||
}
|
||||
|
||||
::v-deep .agreeOr>div:last-of-type {
|
||||
::v-deep .agreeOr > div:last-of-type {
|
||||
margin-top: 15px;
|
||||
}
|
||||
|
||||
|
@ -268,7 +268,7 @@ export default {
|
|||
border: 1px solid #0558e1;
|
||||
}
|
||||
|
||||
::v-deep .el-radio-button__orig-radio:checked+.el-radio-button__inner {
|
||||
::v-deep .el-radio-button__orig-radio:checked + .el-radio-button__inner {
|
||||
box-shadow: unset !important;
|
||||
background: #0558e1;
|
||||
color: #ffffff;
|
||||
|
@ -301,7 +301,7 @@ export default {
|
|||
margin-left: 10px;
|
||||
}
|
||||
|
||||
::v-deep .el-radio-button__orig-radio:checked+.el-radio-button__inner {
|
||||
::v-deep .el-radio-button__orig-radio:checked + .el-radio-button__inner {
|
||||
box-shadow: unset !important;
|
||||
color: #ffffff;
|
||||
background: #e83a48;
|
||||
|
@ -316,4 +316,3 @@ export default {
|
|||
padding-right: 10px;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -1,8 +1,8 @@
|
|||
<!--
|
||||
* @Author: hisense.liangjunhua
|
||||
* @Date: 2022-06-27 11:27:22
|
||||
* @LastEditors: hisense.liangjunhua
|
||||
* @LastEditTime: 2022-08-23 10:37:29
|
||||
* @LastEditors: hisense.wuhongjian
|
||||
* @LastEditTime: 2022-10-19 11:10:50
|
||||
* @Description: 能力申请
|
||||
-->
|
||||
<template>
|
||||
|
@ -168,7 +168,7 @@ export default {
|
|||
created () {
|
||||
bus.$off('competencyApplicationInit')
|
||||
bus.$on('competencyApplicationInit', () => {
|
||||
this.getDataList();
|
||||
this.getDataList()
|
||||
bus.$emit('updateTaskNum')
|
||||
})
|
||||
}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<!--
|
||||
* @Author: hisense.guoyue
|
||||
* @LastEditors: hisense.guoyue
|
||||
* @LastEditTime: 2022-09-21 10:37:29
|
||||
* @LastEditors: hisense.wuhongjian
|
||||
* @LastEditTime: 2022-10-20 16:19:48
|
||||
* @Description: 设备审批
|
||||
-->
|
||||
<template>
|
||||
|
@ -78,7 +78,7 @@ import mixinViewModule from '@/mixins/view-module'
|
|||
import processModule from '@/mixins/process-module'
|
||||
export default {
|
||||
mixins: [mixinViewModule, processModule],
|
||||
data() {
|
||||
data () {
|
||||
return {
|
||||
mixinViewModuleOptions: {
|
||||
getDataListURL: '/deviceApply/auditPage',
|
||||
|
@ -104,22 +104,22 @@ export default {
|
|||
}
|
||||
},
|
||||
methods: {
|
||||
taskHandle(row) {
|
||||
this.form.auditViem = '';
|
||||
this.rowData = row;
|
||||
taskHandle (row) {
|
||||
this.form.auditViem = ''
|
||||
this.rowData = row
|
||||
this.centerDialogVisible = true
|
||||
},
|
||||
through(state) {
|
||||
through (state) {
|
||||
// 2-通过 3-不通过
|
||||
this.handlePut(state)
|
||||
},
|
||||
handlePut(state) {
|
||||
this.$http.put(`/deviceApply`, {
|
||||
handlePut (state) {
|
||||
this.$http.put('/deviceApply', {
|
||||
...this.rowData,
|
||||
state: state,
|
||||
...this.form
|
||||
}).then(({ data: res }) => {
|
||||
console.log('res------------>', res);
|
||||
console.log('res------------>', res)
|
||||
if (res.code !== 0) {
|
||||
return this.$message.error(res.msg)
|
||||
}
|
||||
|
@ -133,10 +133,10 @@ export default {
|
|||
}
|
||||
})
|
||||
}).catch((err) => {
|
||||
console.log('err------------>', err);
|
||||
console.log('err------------>', err)
|
||||
})
|
||||
}
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style scoped>
|
||||
|
@ -154,4 +154,3 @@ export default {
|
|||
width: 400px;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -1,8 +1,8 @@
|
|||
<!--
|
||||
* @Author: hisense.liangjunhua
|
||||
* @Date: 2022-06-29 15:59:51
|
||||
* @LastEditors: hisense.liangjunhua
|
||||
* @LastEditTime: 2022-08-04 14:34:45
|
||||
* @LastEditors: hisense.wuhongjian
|
||||
* @LastEditTime: 2022-10-20 16:16:16
|
||||
* @Description: 告诉大家这是什么
|
||||
-->
|
||||
<!-- 流程业务表单 -->
|
||||
|
@ -93,6 +93,8 @@
|
|||
<el-radio-button label="同意" class="blueAll" @click="showDialog('同意')">同意</el-radio-button>
|
||||
<el-radio-button label="退回" class="redAll" @click="showDialog('退回')">退回</el-radio-button>
|
||||
</el-radio-group> -->
|
||||
<!-- 委托 -->
|
||||
<el-button type="info" @click="entrustTask()" v-if='taskEntrustFlag'>{{ $t('process.entrustTask') }}</el-button>
|
||||
<el-button type="primary" @click="showDialog('同意')">同意</el-button>
|
||||
<el-button type="danger" plain @click="showDialog('驳回')">驳回</el-button>
|
||||
<!-- <el-input v-if="agreeOrList ==='同意' " v-model="inputAgree" placeholder="请输入同意意见"></el-input>
|
||||
|
@ -101,6 +103,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<ren-task-entrust v-if="renTaskEntrustVisible" ref="renTaskEntrust"></ren-task-entrust>
|
||||
<!-- 流程详情 -->
|
||||
<ren-process-detail></ren-process-detail>
|
||||
<el-dialog title="审批意见" :close-on-click-modal="false" :visible.sync="dialogVisible" width="30%"
|
||||
|
@ -116,6 +119,7 @@
|
|||
|
||||
<script>
|
||||
// 引入工作流公共方法
|
||||
import RenTaskEntrust from '@/components/ren-process-running/src/ren-task-entrust'
|
||||
import processModule from '@/mixins/process-module'
|
||||
// import mixinViewModule from '@/mixins/view-module'
|
||||
import debounce from 'lodash/debounce'
|
||||
|
@ -125,9 +129,11 @@ import bus from '@/views/bus.js'
|
|||
export default {
|
||||
// 注入公共方法
|
||||
mixins: [processModule],
|
||||
data() {
|
||||
data () {
|
||||
return {
|
||||
taskEntrustFlag: false,
|
||||
dialogVisible: false,
|
||||
renTaskEntrustVisible: false,
|
||||
dialogType: '',
|
||||
input: '',
|
||||
visible: true,
|
||||
|
@ -154,7 +160,17 @@ export default {
|
|||
agreeOrList: '同意'
|
||||
}
|
||||
},
|
||||
created() {
|
||||
created () {
|
||||
// 获取角色信息
|
||||
this.$http.get('/sys/user/info').then(({ data: res }) => {
|
||||
res.data.roleIdList.map(val => {
|
||||
this.$http.get('/sys/role/' + val).then(role => {
|
||||
if (role.data.data.name === '流程管理员') {
|
||||
this.taskEntrustFlag = true
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
// 将业务KEY赋值给表单
|
||||
console.log('params=================>', this.$route, this.$route.params)
|
||||
this.dataForm.taskId = this.$route.params.taskId
|
||||
|
@ -185,10 +201,11 @@ export default {
|
|||
// }
|
||||
},
|
||||
components: {
|
||||
RenProcessDetail
|
||||
RenProcessDetail,
|
||||
RenTaskEntrust
|
||||
},
|
||||
methods: {
|
||||
init() {
|
||||
init () {
|
||||
// this.visible = true
|
||||
this.$nextTick(() => {
|
||||
// this.$refs.dataForm.resetFields()
|
||||
|
@ -200,11 +217,19 @@ export default {
|
|||
}
|
||||
})
|
||||
},
|
||||
showDialog(title) {
|
||||
entrustTask () {
|
||||
this.renTaskEntrustVisible = true
|
||||
this.$nextTick(() => {
|
||||
this.$refs.renTaskEntrust.dataForm.taskId = this.dataForm.taskId
|
||||
this.$refs.renTaskEntrust.callbacks = this.callbacks
|
||||
this.$refs.renTaskEntrust.init()
|
||||
})
|
||||
},
|
||||
showDialog (title) {
|
||||
this.dialogVisible = true
|
||||
this.dialogType = title
|
||||
},
|
||||
handleClose(done) {
|
||||
handleClose (done) {
|
||||
this.$confirm('确认关闭?')
|
||||
.then((_) => {
|
||||
this.input = ''
|
||||
|
@ -212,11 +237,11 @@ export default {
|
|||
})
|
||||
.catch((_) => { })
|
||||
},
|
||||
handleClose2() {
|
||||
handleClose2 () {
|
||||
this.dialogVisible = false
|
||||
this.input = ''
|
||||
},
|
||||
downloadFile2(url) {
|
||||
downloadFile2 (url) {
|
||||
console.log(window.SITE_CONFIG.previewUrl)
|
||||
window.open(
|
||||
window.SITE_CONFIG.previewUrl +
|
||||
|
@ -225,7 +250,7 @@ export default {
|
|||
)
|
||||
},
|
||||
// 获取信息
|
||||
getInfo() {
|
||||
getInfo () {
|
||||
let params = ''
|
||||
if (this.dataForm.taskId) {
|
||||
params = `taskId=${this.dataForm.taskId}`
|
||||
|
@ -344,7 +369,7 @@ export default {
|
|||
}
|
||||
},
|
||||
// 申请能力
|
||||
applyData() {
|
||||
applyData () {
|
||||
this.$http
|
||||
.get(`/resource/select/${this.dataForm.instanceId}`)
|
||||
.then(({ data: res }) => {
|
||||
|
@ -436,7 +461,7 @@ export default {
|
|||
1000,
|
||||
{ leading: true, trailing: false }
|
||||
),
|
||||
tabRemoveHandle(tabName) {
|
||||
tabRemoveHandle (tabName) {
|
||||
console.log(tabName, 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa')
|
||||
if (tabName === 'home') {
|
||||
return false
|
||||
|
@ -463,19 +488,19 @@ export default {
|
|||
}
|
||||
},
|
||||
// 启动流程出错回调
|
||||
startProcessErrorCallback(data) {
|
||||
startProcessErrorCallback (data) {
|
||||
console.log(data)
|
||||
},
|
||||
// 任务处理出错回调
|
||||
taskHandleErrorCallback(data) { },
|
||||
download(data) {
|
||||
taskHandleErrorCallback (data) { },
|
||||
download (data) {
|
||||
const alink = document.createElement('a')
|
||||
alink.download = '附件' // 文件名,大部分浏览器兼容,IE10及以下不兼容
|
||||
alink.href = data.attachment // 创建 url地址
|
||||
alink.click() // 自动点击
|
||||
}
|
||||
},
|
||||
},
|
||||
mounted() {
|
||||
mounted () {
|
||||
// this.applyData()
|
||||
}
|
||||
}
|
||||
|
@ -618,7 +643,7 @@ export default {
|
|||
}
|
||||
}
|
||||
|
||||
::v-deep .agreeOr>div {
|
||||
::v-deep .agreeOr > div {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
|
@ -628,7 +653,7 @@ export default {
|
|||
}
|
||||
}
|
||||
|
||||
::v-deep .agreeOr>div:last-of-type {
|
||||
::v-deep .agreeOr > div:last-of-type {
|
||||
margin-top: 15px;
|
||||
}
|
||||
|
||||
|
@ -644,7 +669,7 @@ export default {
|
|||
border: 1px solid #0558e1;
|
||||
}
|
||||
|
||||
::v-deep .el-radio-button__orig-radio:checked+.el-radio-button__inner {
|
||||
::v-deep .el-radio-button__orig-radio:checked + .el-radio-button__inner {
|
||||
box-shadow: unset !important;
|
||||
background: #0558e1;
|
||||
color: #ffffff;
|
||||
|
@ -677,7 +702,7 @@ export default {
|
|||
margin-left: 10px;
|
||||
}
|
||||
|
||||
::v-deep .el-radio-button__orig-radio:checked+.el-radio-button__inner {
|
||||
::v-deep .el-radio-button__orig-radio:checked + .el-radio-button__inner {
|
||||
box-shadow: unset !important;
|
||||
color: #ffffff;
|
||||
background: #e83a48;
|
||||
|
|
|
@ -60,6 +60,7 @@
|
|||
"body-parser": "^1.20.0",
|
||||
"chalk": "^4.1.1",
|
||||
"chokidar": "^3.5.2",
|
||||
"compression-webpack-plugin": "^6.1.1",
|
||||
"crypto-js": "^4.1.1",
|
||||
"eslint": "^7.32.0",
|
||||
"eslint-plugin-prettier": "^4.2.1",
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* @Author: hisense.wuhongjian
|
||||
* @Date: 2022-03-29 16:45:25
|
||||
* @LastEditors: hisense.wuhongjian
|
||||
* @LastEditTime: 2022-08-29 09:55:26
|
||||
* @LastEditTime: 2022-10-20 16:19:00
|
||||
* @Description: 告诉大家这是什么
|
||||
-->
|
||||
<!DOCTYPE html>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* @Author: hisense.wuhongjian
|
||||
* @Date: 2020-07-07 16:03:23
|
||||
* @LastEditors: hisense.wuhongjian
|
||||
* @LastEditTime: 2022-10-14 11:23:47
|
||||
* @LastEditTime: 2022-10-20 16:20:17
|
||||
* @Description: 系统静态参数配置
|
||||
*/
|
||||
var _global = {}
|
||||
|
@ -27,7 +27,8 @@ var CONFIGITEM = {
|
|||
previewUrl: 'http://15.72.183.90:7008/',
|
||||
//frontUrl: 'http://15.72.183.90:7008/document/#/devModelFile/',
|
||||
//apiURL: 'http://15.72.183.90:8000/renren-admin',
|
||||
websocketURL: '15.72.183.90:8000/renren-admin',
|
||||
// websocketURL: '15.72.183.90:8000/renren-admin',
|
||||
// websocketURL: '192.168.124.233:8888/renren-admin',
|
||||
POI_URL:
|
||||
'http://15.72.178.129:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address',
|
||||
},
|
||||
|
@ -61,8 +62,9 @@ var CONFIGITEM = {
|
|||
},
|
||||
// 获取摄像头的后端接口地址
|
||||
camreaInfo: {
|
||||
// cameraUrl: '10.134.135.92:9537', // 测试环境
|
||||
cameraUrl: '10.134.135.9:9537', // 生产环境
|
||||
// cameraUrl: '10.134.135.92:9537', // 西海岸-测试环境
|
||||
// cameraUrl: '10.134.135.9:9537', // 西海岸-生产环境
|
||||
cameraUrl: '192.168.124.236:9537', // 远雄(不挂vpn可直接连)
|
||||
},
|
||||
backUrl: 'http://10.134.135.9:9797',
|
||||
previewUrl: 'http://10.134.135.9:9796/',
|
||||
|
|
|
@ -13,14 +13,13 @@
|
|||
}
|
||||
|
||||
.model-container {
|
||||
width: 360px;
|
||||
height: 150px;
|
||||
width: 446px;
|
||||
height: 194px;
|
||||
background: #fff;
|
||||
border-radius: 10px;
|
||||
/* box-shadow: 0px 0px 12px 4px #ff3; */
|
||||
text-align: center;
|
||||
font-size: 18px;
|
||||
color: #333;
|
||||
color: #707070;
|
||||
font-family: 'Alibaba PuHuiTi';
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
|
@ -33,7 +32,32 @@
|
|||
}
|
||||
|
||||
.model-container .model-title {
|
||||
font-size: 16px;
|
||||
height: 40px;
|
||||
padding-left: 24px;
|
||||
padding-right: 24px;
|
||||
padding-top: 10px;
|
||||
background: #007fff;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.model-container .title-span {
|
||||
font-family: 'Alibaba PuHuiTi';
|
||||
font-size: 18px !important;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
.model-container .model-close {
|
||||
position: absolute;
|
||||
right: 20px;
|
||||
top: 10px;
|
||||
width: 18px;
|
||||
height: 18px;
|
||||
cursor: pointer;
|
||||
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAABHNCSVQICAgIfAhkiAAAALZJREFUOE9jZACC////ZwIpcyBOZGRk/A8SIwSAehqAatiB6itBahmBAhVAuh2qcRGQTiBkGNSQeqie6UA6G2QQyGSYIEgOr2E41UO9RpRh+CxlhIUFIZcRkocbhM9lUK/j9T6KQTgMuwgU10eKRaxhiGEQDsNg5uCMCKwGQQ07AKTtkVxyF8hWxZU0aOciLLFDehjhimKSYo1QOiEkDw4jQoqISbTUy2tUy/1Qr1FeHiElOIqYAKkPngur14nOAAAAAElFTkSuQmCC);
|
||||
}
|
||||
|
||||
.model-container .model-content {
|
||||
margin-top: 24px;
|
||||
}
|
||||
|
||||
.model-container .controls {
|
||||
|
@ -51,25 +75,32 @@
|
|||
cursor: pointer;
|
||||
}
|
||||
|
||||
.model-container .confirm {
|
||||
width: 60px;
|
||||
height: 30px;
|
||||
.model-container .confirmChrome {
|
||||
width: 140px;
|
||||
height: 36px;
|
||||
background: #0087ff;
|
||||
border-radius: 0.04rem !important;
|
||||
font-size: 14px;
|
||||
font-weight: 400;
|
||||
font-size: 16px;
|
||||
font-family: 'Alibaba PuHuiTi';
|
||||
color: #fff;
|
||||
line-height: 30px;
|
||||
line-height: 36px;
|
||||
border-radius: 6px;
|
||||
}
|
||||
|
||||
.model-container .cancel {
|
||||
width: 60px;
|
||||
height: 30px;
|
||||
.model-container .confirm360 {
|
||||
width: 140px;
|
||||
height: 36px;
|
||||
background: #0087ff;
|
||||
border-radius: 0.04rem !important;
|
||||
font-size: 14px;
|
||||
font-weight: 400;
|
||||
font-size: 16px;
|
||||
font-family: 'Alibaba PuHuiTi';
|
||||
color: #fff;
|
||||
line-height: 30px;
|
||||
margin-left: 100px;
|
||||
line-height: 36px;
|
||||
margin-left: 50px;
|
||||
border-radius: 6px;
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Alibaba PuHuiTi';
|
||||
src: url('~@/assets/home/font/Alibaba-PuHuiTi-Light.otf');
|
||||
}
|
Binary file not shown.
Binary file not shown.
|
@ -64,17 +64,22 @@ var ModelBox = (function() {
|
|||
_this.isShow = this.option.isShow
|
||||
var html =
|
||||
'<div class="model-container">' +
|
||||
'<h1 class="model-title">title</h1>' +
|
||||
'<div class="model-content"></div>' +
|
||||
'<div class="model-title">' +
|
||||
'<span class="title-span">title</span>' +
|
||||
'<div class="model-close"></div>' +
|
||||
'</div>' +
|
||||
'<div class="model-content">content</div>' +
|
||||
'<div class="controls">' +
|
||||
'<a class="confirm">下载</a>' +
|
||||
'<a class="cancel">取消</a>' +
|
||||
'<a class="confirmChrome">下载谷歌浏览器</a>' +
|
||||
'<a class="confirm360">下载360浏览器</a>' +
|
||||
'</div>' +
|
||||
'</div>'
|
||||
var ModelBoxCon = document.createElement('div')
|
||||
ModelBoxCon.setAttribute('class', 'mask-layer')
|
||||
ModelBoxCon.innerHTML = html
|
||||
ModelBoxCon.querySelector('.model-title').innerHTML =
|
||||
// ModelBoxCon.querySelector('.model-title').innerHTML =
|
||||
// _this.option.title
|
||||
ModelBoxCon.querySelector('.title-span').innerHTML =
|
||||
_this.option.title
|
||||
ModelBoxCon.querySelector('.model-content').innerHTML =
|
||||
_this.option.content
|
||||
|
@ -82,8 +87,9 @@ var ModelBox = (function() {
|
|||
if (!_this.isShow) {
|
||||
ModelBoxCon.style.display = 'none'
|
||||
}
|
||||
ModelBoxCon.querySelector('.cancel').onclick =
|
||||
ModelBoxCon.querySelector('.confirm').onclick =
|
||||
ModelBoxCon.querySelector('.model-close').onclick =
|
||||
ModelBoxCon.querySelector('.confirmChrome').onclick =
|
||||
ModelBoxCon.querySelector('.confirm360').onclick =
|
||||
_this.eventsFn.bind('', this, ModelBoxCon)
|
||||
},
|
||||
show: function() {
|
||||
|
@ -95,9 +101,13 @@ var ModelBox = (function() {
|
|||
this.isShow = false
|
||||
},
|
||||
eventsFn: function(e, doc, target) {
|
||||
debugger
|
||||
var _thisEvent = target.target
|
||||
if (_thisEvent.classList.contains('confirm')) {
|
||||
e.option.confirmCallBack()
|
||||
if (_thisEvent.classList.contains('confirmChrome')) {
|
||||
e.option.confirmCallBack('Chrome')
|
||||
|
||||
} else if (_thisEvent.classList.contains('confirm360')) {
|
||||
e.option.confirmCallBack('360')
|
||||
}
|
||||
doc.style.display = 'none'
|
||||
e.isShow = false
|
||||
|
@ -108,13 +118,16 @@ var ModelBox = (function() {
|
|||
})()
|
||||
|
||||
var opt = new ModelBox({
|
||||
title: '当前系统不支持IE内核,建议使用Chrome浏览器或360浏览器极速模式',
|
||||
content: '',
|
||||
title: '提示信息',
|
||||
content: '平台暂不支持IE内核浏览器访问,建议使用谷歌(Chrome)或360浏览器极速模式登录!',
|
||||
isShow: false,
|
||||
confirmCallBack: function() {
|
||||
confirmCallBack: function(data) {
|
||||
debugger
|
||||
// 获取当前系统的方法
|
||||
const agent = getPCNum()
|
||||
console.log('agent------------>', agent)
|
||||
//console.log('agent------------>', agent)
|
||||
//console.log('datadatadatadata----------->', data)
|
||||
if (data === 'Chrome') {
|
||||
if (agent == 64) {
|
||||
// 64位操作系统
|
||||
downloadFile(
|
||||
|
@ -128,6 +141,22 @@ var opt = new ModelBox({
|
|||
'/static/download/standalonesetup32.exe'
|
||||
)
|
||||
}
|
||||
} else {
|
||||
if (agent == 64) {
|
||||
// 64位操作系统
|
||||
downloadFile(
|
||||
'360se13.1.6260.0.exe',
|
||||
'/static/download/360se13.1.6260.0.exe'
|
||||
)
|
||||
} else {
|
||||
// 32位操作系统
|
||||
downloadFile(
|
||||
'360se13.1.6110.0.exe',
|
||||
'/static/download/360se13.1.6110.0.exe'
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
},
|
||||
})
|
||||
|
||||
|
|
|
@ -47,6 +47,38 @@ export function pageWithAttrs(data) {
|
|||
data,
|
||||
})
|
||||
}
|
||||
//获取好评榜
|
||||
export function getPraiseList(params) {
|
||||
return request({
|
||||
url: '/resource/getPraiseList',
|
||||
method: 'get',
|
||||
params,
|
||||
})
|
||||
}
|
||||
//获取热门榜
|
||||
export function getPopularList(params) {
|
||||
return request({
|
||||
url: '/resource/getPopularList',
|
||||
method: 'get',
|
||||
params,
|
||||
})
|
||||
}
|
||||
//获取明星榜
|
||||
export function getStarList(params) {
|
||||
return request({
|
||||
url: '/resource/getStarList',
|
||||
method: 'get',
|
||||
params,
|
||||
})
|
||||
}
|
||||
//获取潜力榜
|
||||
export function getPotentialList(params) {
|
||||
return request({
|
||||
url: '/resource/getPotentialList',
|
||||
method: 'get',
|
||||
params,
|
||||
})
|
||||
}
|
||||
//能力统计-能力需求
|
||||
export function capabilityRequirements(params) {
|
||||
return request({
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 255 B |
Binary file not shown.
After Width: | Height: | Size: 4.9 KiB |
|
@ -33,7 +33,12 @@ const SuperMap = window.SuperMap || {}
|
|||
let isLocated = true
|
||||
let polylineArr = []
|
||||
let PolygonArr = []
|
||||
/**
|
||||
const restoreIconObj = {
|
||||
layerId: 0,
|
||||
restoreIcon: null,
|
||||
currentLayer: null,
|
||||
}
|
||||
/**
|
||||
* 地图功能接口类
|
||||
* 说明:该类中的方法带“_”为对外暴露的方法,调用时去掉“_”;不带“_”的为内部方法,不可调用。
|
||||
* @param mapObj {Object} 设置全局参数对象
|
||||
|
@ -68,7 +73,7 @@ export function MapFun(mapObj) {
|
|||
* 根据图层名移除图层
|
||||
* @param layerName {String} 图层名
|
||||
*/
|
||||
const _removeLayerByLayerName = function (layerName) {
|
||||
const _removeLayerByLayerName = function(layerName) {
|
||||
const layer = layerGroup.get(layerName)
|
||||
// const feature = featureGroup;
|
||||
// map.popupclose();
|
||||
|
@ -89,7 +94,7 @@ export function MapFun(mapObj) {
|
|||
* 清空地图(除去底图)
|
||||
* @private
|
||||
*/
|
||||
const _clearAllLayers = function () {
|
||||
const _clearAllLayers = function() {
|
||||
// debugger;
|
||||
map.closePopup()
|
||||
featureGroup.clearLayers()
|
||||
|
@ -99,14 +104,14 @@ export function MapFun(mapObj) {
|
|||
* 关闭所有地图弹窗
|
||||
* @private
|
||||
*/
|
||||
const _closeAllPopup = function (feature) {
|
||||
const _closeAllPopup = function(feature) {
|
||||
map.closePopup()
|
||||
}
|
||||
/**
|
||||
* 添加地图弹窗
|
||||
* @private
|
||||
*/
|
||||
const _openPopup = function (feature) {
|
||||
const _openPopup = function(feature) {
|
||||
// debugger;
|
||||
// const elementHtml = createAddressPopup(feature)
|
||||
L.popup({ className: 'epidemic-popup' })
|
||||
|
@ -118,7 +123,7 @@ export function MapFun(mapObj) {
|
|||
* 添加视频监控平台地图弹窗
|
||||
* @private
|
||||
*/
|
||||
const _openPopupVideoSurveillance = function (feature) {
|
||||
const _openPopupVideoSurveillance = function(feature) {
|
||||
// debugger
|
||||
if (feature.type == 'cameraTree') {
|
||||
const elementHtml = createCameraDetailsPop(feature)
|
||||
|
@ -150,7 +155,7 @@ export function MapFun(mapObj) {
|
|||
* 根据图层名数组移除图层
|
||||
* @param layerNameArray {Array} 图层名
|
||||
*/
|
||||
const _removeLayersByLayerNameArray = function (layerNameArray) {
|
||||
const _removeLayersByLayerNameArray = function(layerNameArray) {
|
||||
layerNameArray.forEach((layerName) => {
|
||||
const layer = layerGroup.get(layerName)
|
||||
if (layer) {
|
||||
|
@ -167,7 +172,7 @@ export function MapFun(mapObj) {
|
|||
* 根据图层名数组移除图层
|
||||
* @param layerNameArray {Array} 图层名
|
||||
*/
|
||||
const _addMovingMarker = function (arrList) {
|
||||
const _addMovingMarker = function(arrList) {
|
||||
var polyline1 = L.polyline(arrList).addTo(map)
|
||||
var decorator = L.polylineDecorator(polyline1, {
|
||||
patterns: [
|
||||
|
@ -180,16 +185,13 @@ export function MapFun(mapObj) {
|
|||
// myMovingMarker.start()
|
||||
var polygin = L.motion
|
||||
.polyline(
|
||||
arrList,
|
||||
{
|
||||
arrList, {
|
||||
color: 'transparent',
|
||||
},
|
||||
{
|
||||
}, {
|
||||
auto: true,
|
||||
duration: 53000,
|
||||
easing: L.Motion.Ease.easeInOutQuart,
|
||||
},
|
||||
{
|
||||
}, {
|
||||
removeOnEnd: true,
|
||||
showMarker: true,
|
||||
icon: L.divIcon({
|
||||
|
@ -226,7 +228,7 @@ export function MapFun(mapObj) {
|
|||
* 根据marker获取弹窗信息,只弹出基本信息(直接弹出)
|
||||
* @param markerGroup {Object} 图层组
|
||||
* */
|
||||
const markerPopup = function (markerGroup) {
|
||||
const markerPopup = function(markerGroup) {
|
||||
const layers = markerGroup._layers
|
||||
for (const index in layers) {
|
||||
const contentHTML = _createPopupConfigInfo(
|
||||
|
@ -242,7 +244,7 @@ export function MapFun(mapObj) {
|
|||
* 展示普通图层
|
||||
* @param callBackFun {Function} 回调函数对象
|
||||
*/
|
||||
const _showStaticLayer = function (callBackFun) {
|
||||
const _showStaticLayer = function(callBackFun) {
|
||||
callBackFun()
|
||||
}
|
||||
/**
|
||||
|
@ -326,7 +328,7 @@ export function MapFun(mapObj) {
|
|||
})
|
||||
L.supermap
|
||||
.queryService(queryUrl)
|
||||
.queryBySQL(sqlParam, function (serviceResult) {
|
||||
.queryBySQL(sqlParam, function(serviceResult) {
|
||||
console.log('serviceResult', serviceResult.result)
|
||||
if (serviceResult.result.recordsets[0].features.features.length === 0) {
|
||||
let marker = {}
|
||||
|
@ -405,10 +407,10 @@ export function MapFun(mapObj) {
|
|||
[e.layer._latlng.lat, e.layer._latlng.lng],
|
||||
options
|
||||
).addTo(mapObj.map)
|
||||
layer.on('moveend', function (e) {
|
||||
layer.on('moveend', function(e) {
|
||||
callback(e)
|
||||
})
|
||||
layer.on('click', function (e) {
|
||||
layer.on('click', function(e) {
|
||||
layer.remove()
|
||||
mapObj.drawMarker.enable()
|
||||
})
|
||||
|
@ -443,7 +445,7 @@ export function MapFun(mapObj) {
|
|||
// 最大宽度,判断每行字符串,超过按照最大宽度设定
|
||||
let contentWidth = 0
|
||||
// 累加行数,计算每行宽度
|
||||
const calc = function (str) {
|
||||
const calc = function(str) {
|
||||
const tempLength =
|
||||
getDoubleCharCount(str) * 18 + getSingleCharCount(str) * 10
|
||||
if (tempLength >= 450) {
|
||||
|
@ -502,11 +504,12 @@ export function MapFun(mapObj) {
|
|||
/**
|
||||
* 取消扎点回调
|
||||
*/
|
||||
const resetMarkerCallBack = function () {
|
||||
const resetMarkerCallBack = function() {
|
||||
_removeLayerByLayerName('drawMarkerLayer')
|
||||
layerGroup.delete('drawMarkerLayer')
|
||||
mapObj.drawMarker.enable()
|
||||
}
|
||||
|
||||
function _addImgMaker(latLng, inconConfig) {
|
||||
const icon = MapStyle.featureIcon(inconConfig)
|
||||
const markerLayer = L.marker([latLng.lat, latLng.lng], {
|
||||
|
@ -566,7 +569,7 @@ export function MapFun(mapObj) {
|
|||
// 最大宽度,判断每行字符串,超过按照最大宽度设定
|
||||
let contentWidth = 0
|
||||
// 累加行数,计算每行宽度
|
||||
const calc = function (str) {
|
||||
const calc = function(str) {
|
||||
const tempLength =
|
||||
getDoubleCharCount(str) * 18 + getSingleCharCount(str) * 10
|
||||
if (tempLength >= 450) {
|
||||
|
@ -620,7 +623,7 @@ export function MapFun(mapObj) {
|
|||
} else if (mapType === 'dark') {
|
||||
tileMapUrl = _mapConfig.config.TITLE_LAYER_DARK.mapUrl
|
||||
}
|
||||
mapObj.map.eachLayer(function (layer) {
|
||||
mapObj.map.eachLayer(function(layer) {
|
||||
if (layer.tempIndex === -1) {
|
||||
mapObj.map.removeLayer(layer)
|
||||
L.supermap.tiledMapLayer(tileMapUrl).addTo(mapObj.map)
|
||||
|
@ -636,7 +639,7 @@ export function MapFun(mapObj) {
|
|||
const config = _mapConfig.config.TILEDCONFIG[mapType]
|
||||
const layerConfig = { url: config.tiledUrl, name: config.tiledName }
|
||||
const newTileLayer = new L.tileLayer.baidu(layerConfig)
|
||||
mapObj.map.eachLayer(function (layer) {
|
||||
mapObj.map.eachLayer(function(layer) {
|
||||
if (layer.options.tms === true) {
|
||||
mapObj.map.removeLayer(layer)
|
||||
newTileLayer.addTo(mapObj.map)
|
||||
|
@ -652,11 +655,10 @@ export function MapFun(mapObj) {
|
|||
* @param callBackInClick {function} 点击图标时执行的函数
|
||||
* @param className {String} 样式字符串
|
||||
*/
|
||||
const _addFeatureArrayOnMap = function (
|
||||
const _addFeatureArrayOnMap = function(
|
||||
layerName,
|
||||
features,
|
||||
layerConfigInfo,
|
||||
{ callBackInClick = null, className = '' } = {}
|
||||
layerConfigInfo, { callBackInClick = null, className = '' } = {}
|
||||
) {
|
||||
const layers = []
|
||||
features.forEach((feature) => {
|
||||
|
@ -666,7 +668,7 @@ export function MapFun(mapObj) {
|
|||
attribution: feature,
|
||||
})
|
||||
markerLayer.layerConfigInfo = layerConfigInfo
|
||||
markerLayer.on('click', function (e) {
|
||||
markerLayer.on('click', function(e) {
|
||||
const layerConfigInfo = e.sourceTarget.layerConfigInfo
|
||||
const location = [e.latlng.lat, e.latlng.lng]
|
||||
const latlng = L.latLng(location)
|
||||
|
@ -701,12 +703,11 @@ export function MapFun(mapObj) {
|
|||
* @param popupType {String} 弹窗类型
|
||||
* @param className {String} class名字
|
||||
*/
|
||||
const _addTheOneFeatureOnMapByPoint = function (
|
||||
const _addTheOneFeatureOnMapByPoint = function(
|
||||
layerName,
|
||||
point,
|
||||
data,
|
||||
layerConfigInfo,
|
||||
{ popupFlag = true, popupType = 'general', className = '' } = {}
|
||||
layerConfigInfo, { popupFlag = true, popupType = 'general', className = '' } = {}
|
||||
) {
|
||||
// 创建marker图层,绑定要素
|
||||
// debugger;
|
||||
|
@ -734,7 +735,7 @@ export function MapFun(mapObj) {
|
|||
if (popupFlag) {
|
||||
markerLayer.bindPopup(elementHtml, { className: className }).openPopup()
|
||||
} else {
|
||||
markerLayer.on('click', function () {
|
||||
markerLayer.on('click', function() {
|
||||
L.popup({ className: className })
|
||||
.setLatLng(latLng)
|
||||
.setContent(elementHtml)
|
||||
|
@ -753,8 +754,7 @@ export function MapFun(mapObj) {
|
|||
* */
|
||||
function _locationAndCreatePopup(
|
||||
layer,
|
||||
contentHTML,
|
||||
{ className = '' } = {}
|
||||
contentHTML, { className = '' } = {}
|
||||
) {
|
||||
// 生成弹窗内容
|
||||
const latLng = layer.getLatLng()
|
||||
|
@ -789,7 +789,7 @@ export function MapFun(mapObj) {
|
|||
const icon = MapStyle.featureIcon(inconConfig)
|
||||
const markerLayer = L.marker(point, { icon: icon })
|
||||
markers.addLayer(markerLayer)
|
||||
markerLayer.on('click', function () {
|
||||
markerLayer.on('click', function() {
|
||||
console.log('积水点播放视频', item)
|
||||
item.indexCode = item.indexCode || item.index_code
|
||||
const params = [item.indexCode]
|
||||
|
@ -815,8 +815,7 @@ export function MapFun(mapObj) {
|
|||
function _showLayersByUuidArray(
|
||||
uuidArray,
|
||||
layerName,
|
||||
configInfo,
|
||||
{
|
||||
configInfo, {
|
||||
outFeaturesCallBack = null,
|
||||
getLayerPopupInfo = null,
|
||||
getStoragePopupInfo = null,
|
||||
|
@ -858,13 +857,12 @@ export function MapFun(mapObj) {
|
|||
outFeaturesCallBack(serviceResult, layerName, entityList, configInfo)
|
||||
}
|
||||
const resultLayerConfig = L.geoJSON(
|
||||
serviceResult.result.recordsets[0].features,
|
||||
{
|
||||
serviceResult.result.recordsets[0].features, {
|
||||
onEachFeature: (feature, layer) => {
|
||||
layer.setIcon(MapStyle.featureIcon(configInfo, { zoom: map._zoom }))
|
||||
layer.title = layerName
|
||||
layer.configInfo = configInfo
|
||||
layer.on('click', function (e) {
|
||||
layer.on('click', function(e) {
|
||||
// const uuid = e.sourceTarget.feature.properties.UUID;
|
||||
const uuid =
|
||||
e.sourceTarget.feature.properties[
|
||||
|
@ -922,8 +920,7 @@ export function MapFun(mapObj) {
|
|||
function _showCameraByIndexCodeArray(
|
||||
cameraIndexCode,
|
||||
layerName,
|
||||
configInfo,
|
||||
{
|
||||
configInfo, {
|
||||
getLayerPopupInfo = null,
|
||||
outFeaturesCallBack = null,
|
||||
entityList = null,
|
||||
|
@ -963,7 +960,7 @@ export function MapFun(mapObj) {
|
|||
})
|
||||
L.supermap
|
||||
.queryService(queryUrl)
|
||||
.queryBySQL(reservoirParam, function (serviceResult) {
|
||||
.queryBySQL(reservoirParam, function(serviceResult) {
|
||||
// if (serviceResult.result.recordsets[0].features.features.length === 0) {
|
||||
// console.log('未查询到视频');
|
||||
// return;
|
||||
|
@ -973,15 +970,14 @@ export function MapFun(mapObj) {
|
|||
outFeaturesCallBack(serviceResult, layerName, entityList, configInfo)
|
||||
}
|
||||
const searchCameraLayer = L.geoJSON(
|
||||
serviceResult.result.recordsets[0].features,
|
||||
{
|
||||
serviceResult.result.recordsets[0].features, {
|
||||
onEachFeature: (feature, layer) => {
|
||||
layer.setIcon(MapStyle.featureIcon(configInfo))
|
||||
layer.configInfo = configInfo
|
||||
// 给查询出的每一个点添加点击弹窗事件
|
||||
// 绑定弹窗事件,实时请求弹窗内容
|
||||
if (getLayerPopupInfo !== null) {
|
||||
layer.on('click', function (e) {
|
||||
layer.on('click', function(e) {
|
||||
const indexCode =
|
||||
e.sourceTarget.feature.properties[
|
||||
_convertCaseOfAttributes('CAMERA_INDEX_CODE')
|
||||
|
@ -1036,8 +1032,7 @@ export function MapFun(mapObj) {
|
|||
* @private
|
||||
*/
|
||||
function _addressMatchCode(
|
||||
address,
|
||||
{
|
||||
address, {
|
||||
fromIndex = null,
|
||||
toIndex = null,
|
||||
filters = null,
|
||||
|
@ -1057,7 +1052,7 @@ export function MapFun(mapObj) {
|
|||
})
|
||||
L.supermap
|
||||
.addressMatchService(_mapConfig.config.POI_URL)
|
||||
.code(geoCodeParam, function (addressObj) {
|
||||
.code(geoCodeParam, function(addressObj) {
|
||||
if (outAddressCallBack) {
|
||||
outAddressCallBack(addressObj, param)
|
||||
}
|
||||
|
@ -1275,6 +1270,7 @@ export function MapFun(mapObj) {
|
|||
// featureGroup.addLayer(polyline);
|
||||
// featureGroup.addTo(map);
|
||||
}
|
||||
|
||||
function _removerPolyline() {
|
||||
if (polylineArr && polylineArr.length > 0) {
|
||||
polylineArr.map((item) => {
|
||||
|
@ -1497,16 +1493,15 @@ export function MapFun(mapObj) {
|
|||
parameter: analystParameter,
|
||||
})
|
||||
const myIcon = L.icon({
|
||||
iconUrl:
|
||||
'./src/assets/common/multiScreen/mapTools/ambulance_map_standby.png',
|
||||
iconUrl: './src/assets/common/multiScreen/mapTools/ambulance_map_standby.png',
|
||||
iconSize: [35, 35],
|
||||
})
|
||||
// 进行查找 todo
|
||||
findPathService.findPath(findPathParameter, function (serviceResult) {
|
||||
findPathService.findPath(findPathParameter, function(serviceResult) {
|
||||
console.log('serviceResult', serviceResult)
|
||||
const result = serviceResult.result
|
||||
console.log(result)
|
||||
result.pathList.map(function (result) {
|
||||
result.pathList.map(function(result) {
|
||||
const pathRouteLayer = L.geoJSON(result.route)
|
||||
// const pathGuideLayer = L.geoJSON(result.pathGuideItems, {
|
||||
// pointToLayer: function (geoPoints, latlng) {
|
||||
|
@ -1546,8 +1541,7 @@ export function MapFun(mapObj) {
|
|||
* @private
|
||||
*/
|
||||
function _addressMatchCodeByAmap(
|
||||
address,
|
||||
{
|
||||
address, {
|
||||
city = '青岛',
|
||||
pageSize = 100,
|
||||
pageIndex = 1,
|
||||
|
@ -1555,13 +1549,13 @@ export function MapFun(mapObj) {
|
|||
param = null,
|
||||
} = {}
|
||||
) {
|
||||
AMap.plugin('AMap.PlaceSearch', function () {
|
||||
AMap.plugin('AMap.PlaceSearch', function() {
|
||||
var placeSearch = new AMap.PlaceSearch({
|
||||
city: city,
|
||||
pageSize: pageSize,
|
||||
pageIndex: pageIndex,
|
||||
})
|
||||
placeSearch.search(address, function (status, result) {
|
||||
placeSearch.search(address, function(status, result) {
|
||||
console.log(result)
|
||||
if (outAddressCallBack) {
|
||||
outAddressCallBack(result, param)
|
||||
|
@ -1582,8 +1576,7 @@ export function MapFun(mapObj) {
|
|||
* @private
|
||||
*/
|
||||
function _queryLayersBySql(
|
||||
configInfo,
|
||||
{
|
||||
configInfo, {
|
||||
sql = 'SMID >0',
|
||||
callBackFun = null,
|
||||
callBackParams = null,
|
||||
|
@ -1606,14 +1599,13 @@ export function MapFun(mapObj) {
|
|||
}
|
||||
if (layerName) {
|
||||
const resultLayerConfig = L.geoJSON(
|
||||
serviceResult.result.recordsets[0].features,
|
||||
{
|
||||
serviceResult.result.recordsets[0].features, {
|
||||
onEachFeature: (feature, layer) => {
|
||||
layer.setIcon(MapStyle.featureIcon(configInfo))
|
||||
layer.title = layerName
|
||||
layer.configInfo = configInfo
|
||||
// 绑定弹窗事件,实时请求弹窗内容
|
||||
layer.on('click', function (e) {
|
||||
layer.on('click', function(e) {
|
||||
if (!getLayerPopupInfo) {
|
||||
const uuid =
|
||||
e.sourceTarget.feature.properties[
|
||||
|
@ -1650,10 +1642,10 @@ export function MapFun(mapObj) {
|
|||
* @return {*} 创建的图标,用来删除
|
||||
* @private
|
||||
*/
|
||||
const _addPointOnMap = function (paramObject) {
|
||||
const _addPointOnMap = function(paramObject) {
|
||||
return addPointOnMap(paramObject, mapObj, featureGroup, layerGroup)
|
||||
}
|
||||
const _addResourceOnMapWithoutSuperMapCluster = function (
|
||||
const _addResourceOnMapWithoutSuperMapCluster = function(
|
||||
features,
|
||||
url,
|
||||
layerName,
|
||||
|
@ -1683,8 +1675,9 @@ export function MapFun(mapObj) {
|
|||
// })
|
||||
|
||||
// }
|
||||
_removeLayerByLayerName(layerName)
|
||||
let layers = null
|
||||
//_removeLayerByLayerName(layerName)
|
||||
let selectedLayerList = [];
|
||||
let layers = null;
|
||||
// 判断是否是聚合图层
|
||||
layers = createMarkerClusterLayer()
|
||||
const icon1 = createDefaultFeatureStyle({
|
||||
|
@ -1697,14 +1690,16 @@ export function MapFun(mapObj) {
|
|||
})
|
||||
features.map((feature) => {
|
||||
var bounds = map.getBounds()
|
||||
// console.log("看看有没有坐标",feature.latLng);
|
||||
if ( feature.hasOwnProperty('latLng')) {
|
||||
let icon = feature.active?icon2:icon1
|
||||
//console.log("看看有没有坐标", feature);
|
||||
if (feature.hasOwnProperty('latLng')) {
|
||||
//let icon = feature.active ? icon2 : icon1;
|
||||
let icon = icon1;
|
||||
restoreIconObj.restoreIcon = icon;
|
||||
const marker = L.marker(feature.latLng, { icon })
|
||||
if (createPopupFun !== null) {
|
||||
marker.uuid = feature.uuid || ''
|
||||
marker.resId = feature.resId || ''
|
||||
marker.on('click', async (e) => {
|
||||
marker.on('click', async(e) => {
|
||||
if (feature.resourceName === 'video') {
|
||||
const params = [feature.indexCode]
|
||||
DS.openVideo(params)
|
||||
|
@ -1733,10 +1728,33 @@ export function MapFun(mapObj) {
|
|||
}
|
||||
})
|
||||
}
|
||||
marker.on('click', e=>{
|
||||
console.log('点位数据', e)
|
||||
|
||||
mybus.emit('pointMarkerClick', feature)
|
||||
marker.on('click', e => {
|
||||
console.log('点位数据', e) //需要调用视频播放的窗口吗?
|
||||
// 判断是否需要选中之后更换marker的图标
|
||||
//const layers = layerGroup.get(layerName).getLayers()
|
||||
// layers.forEach((layer) => {
|
||||
// layer.setIcon(icon)
|
||||
// })
|
||||
restoreIconObj.layerId = e.sourceTarget._leaflet_id
|
||||
const currentLayer = layerGroup
|
||||
.get(layerName)
|
||||
.getLayer(restoreIconObj.layerId)
|
||||
restoreIconObj.currentLayer = currentLayer;
|
||||
if (currentLayer._icon.src != icon.options.iconUrl) {
|
||||
currentLayer.setIcon(icon);
|
||||
} else {
|
||||
selectedLayerList.push(currentLayer);
|
||||
//要去重去重,//判断是否点击第二次
|
||||
if (selectedLayerList.length > 0) {
|
||||
selectedLayerList.forEach((item) => {
|
||||
item.setIcon(
|
||||
L.icon({ iconUrl: require('./image/' + url2), iconSize: [33, 33] })
|
||||
)
|
||||
});
|
||||
}
|
||||
}
|
||||
mybus.emit('pointMarkerClick', feature);
|
||||
selectedLayerList = [];
|
||||
})
|
||||
layers.addLayer(marker)
|
||||
}
|
||||
|
@ -1747,7 +1765,7 @@ export function MapFun(mapObj) {
|
|||
/**
|
||||
* 点击展示弹窗
|
||||
*/
|
||||
const _addPopOnMap = function (feature, url, layerName, createPopupFun) {
|
||||
const _addPopOnMap = function(feature, url, layerName, createPopupFun) {
|
||||
console.log(
|
||||
'addPopOnMap===============>',
|
||||
feature,
|
||||
|
@ -1797,7 +1815,7 @@ export function MapFun(mapObj) {
|
|||
* @returns {Promise<any>}
|
||||
* @private
|
||||
*/
|
||||
const _createPromiseByQueryService = function (
|
||||
const _createPromiseByQueryService = function(
|
||||
idArray,
|
||||
layerConfigInfo,
|
||||
type
|
||||
|
@ -1811,10 +1829,10 @@ export function MapFun(mapObj) {
|
|||
* @return {*}
|
||||
* @private
|
||||
*/
|
||||
const _addResourceOnMap = function (paramObject) {
|
||||
const _addResourceOnMap = function(paramObject) {
|
||||
return addResourceOnMap(paramObject, mapObj, featureGroup, layerGroup)
|
||||
}
|
||||
const _addResourceOnMapNew = function (
|
||||
const _addResourceOnMapNew = function(
|
||||
features,
|
||||
config,
|
||||
getLayerPopupInfo,
|
||||
|
@ -1830,7 +1848,7 @@ export function MapFun(mapObj) {
|
|||
layerGroup
|
||||
)
|
||||
}
|
||||
const _getLayerPopupInfo = function (
|
||||
const _getLayerPopupInfo = function(
|
||||
uuid,
|
||||
layerConfigInfo,
|
||||
type,
|
||||
|
@ -1850,7 +1868,7 @@ export function MapFun(mapObj) {
|
|||
popupClassName
|
||||
)
|
||||
}
|
||||
const _addResourceOnMapWithoutSuperMap = function (
|
||||
const _addResourceOnMapWithoutSuperMap = function(
|
||||
features,
|
||||
url,
|
||||
layerName,
|
||||
|
@ -1870,7 +1888,7 @@ export function MapFun(mapObj) {
|
|||
map
|
||||
)
|
||||
}
|
||||
const _addPointsToMap = function (
|
||||
const _addPointsToMap = function(
|
||||
features,
|
||||
url,
|
||||
layerName,
|
||||
|
@ -1890,7 +1908,7 @@ export function MapFun(mapObj) {
|
|||
map
|
||||
)
|
||||
}
|
||||
const _addResourceOnMapWithoutSuper = function (
|
||||
const _addResourceOnMapWithoutSuper = function(
|
||||
features,
|
||||
url,
|
||||
layerName,
|
||||
|
@ -1910,7 +1928,7 @@ export function MapFun(mapObj) {
|
|||
map
|
||||
)
|
||||
}
|
||||
const _addPolygonToMap = function (a, b, c, d) {
|
||||
const _addPolygonToMap = function(a, b, c, d) {
|
||||
var polygon = L.polygon([a, b, c, d], {
|
||||
color: '#A33B42',
|
||||
fillColor: '#A75A81',
|
||||
|
@ -1918,7 +1936,7 @@ export function MapFun(mapObj) {
|
|||
})
|
||||
featureGroup.addLayer(polygon)
|
||||
}
|
||||
const _addNameToMap = function (config) {
|
||||
const _addNameToMap = function(config) {
|
||||
// you can set .my-div-icon styles in CSS
|
||||
config.map((item) => {
|
||||
var myIcon = L.divIcon({ html: item.name })
|
||||
|
@ -1927,7 +1945,7 @@ export function MapFun(mapObj) {
|
|||
)
|
||||
})
|
||||
}
|
||||
const _addMountainToMap = function (config) {
|
||||
const _addMountainToMap = function(config) {
|
||||
// you can set .my-div-icon styles in CSS
|
||||
const myIcon = L.icon({
|
||||
iconUrl: '/src/supermap/image/mountain.png',
|
||||
|
@ -1940,7 +1958,7 @@ export function MapFun(mapObj) {
|
|||
}).addTo(mapObj.map)
|
||||
})
|
||||
}
|
||||
const _addMountainLayerToMap = function (config) {
|
||||
const _addMountainLayerToMap = function(config) {
|
||||
var myStyle = {
|
||||
color: 'green',
|
||||
weight: 2,
|
||||
|
@ -1964,18 +1982,18 @@ export function MapFun(mapObj) {
|
|||
// L.marker([item.latLng.lng, item.latLng.lat], { icon: myIcon }).addTo(mapObj.map);
|
||||
// });
|
||||
}
|
||||
const _addCircleToMap = function (latLng, r) {
|
||||
const _addCircleToMap = function(latLng, r) {
|
||||
// L.circle([latLng.lat, latLng.lng], { radius: r }).addTo(mapObj.map)
|
||||
const polygon = L.circle([latLng.lat, latLng.lng], { radius: r })
|
||||
polygon.addTo(map)
|
||||
PolygonArr.push(polygon)
|
||||
}
|
||||
const _mapPainyEnable = function () {
|
||||
const _mapPainyEnable = function() {
|
||||
map.MapPaint.enable()
|
||||
map.addControl(new MapPaint.SwitchControl())
|
||||
}
|
||||
// 热力图
|
||||
const _thermodynamic = function (latLng, r, type) {
|
||||
const _thermodynamic = function(latLng, r, type) {
|
||||
// const layers = []
|
||||
// latLng, r, strong
|
||||
const thermodynamic = latLng
|
||||
|
@ -1997,7 +2015,7 @@ export function MapFun(mapObj) {
|
|||
layerGroup.set(type, heatLayer)
|
||||
// debugger
|
||||
}
|
||||
const _addPathToMap = function (latLng, color) {
|
||||
const _addPathToMap = function(latLng, color) {
|
||||
// console.log(latLng)
|
||||
// debugger
|
||||
const polyline = L.polyline(latLng, { color: color })
|
||||
|
@ -2065,8 +2083,7 @@ export function MapFun(mapObj) {
|
|||
openPopupVideoSurveillance: _openPopupVideoSurveillance,
|
||||
closeAllPopup: _closeAllPopup,
|
||||
addMovingMarker: _addMovingMarker,
|
||||
addResourceOnMapWithoutSuperMapCluster:
|
||||
_addResourceOnMapWithoutSuperMapCluster,
|
||||
addResourceOnMapWithoutSuperMapCluster: _addResourceOnMapWithoutSuperMapCluster,
|
||||
addPopOnMap: _addPopOnMap,
|
||||
addDynamicMapLayer: _addDynamicMapLayer,
|
||||
addPointsToMap: _addPointsToMap,
|
||||
|
|
|
@ -15,10 +15,45 @@
|
|||
}"
|
||||
></div>
|
||||
<div
|
||||
style="position: relative"
|
||||
:class="taboldName == item ? 'bianlan' : ''"
|
||||
@click="tabswitch(item, index)"
|
||||
>
|
||||
{{ item }}
|
||||
<a-tooltip placement="right">
|
||||
<template #title>
|
||||
<span v-if="item === '好评榜'">
|
||||
根据能力能力评价平均分排名,申请无评分则计3分,排名相同时按上架时间倒序排列
|
||||
</span>
|
||||
<span v-else-if="item === '热门榜'">
|
||||
根据近30天能力申请量排名,申请量相同时按收藏量、访问量以及上架时间进行倒序排列
|
||||
</span>
|
||||
<span v-else-if="item === '明星榜'">
|
||||
采取5分制,根据浏览量、收藏量、申请量以及评价平均分以占比1:2:3:4计算综合评分,综合评分相同时按上架时间倒序排列
|
||||
</span>
|
||||
<span v-else>
|
||||
根据能力15日增幅排名,增幅相同时按上架时间倒序排列
|
||||
</span>
|
||||
</template>
|
||||
|
||||
<svg
|
||||
t="1666146422372"
|
||||
class="icon"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="4749"
|
||||
width="20"
|
||||
height="20"
|
||||
style="position: absolute"
|
||||
>
|
||||
<path
|
||||
d="M530.64 211.33a36 36 0 1 1-36 36 36 36 0 0 1 36-36z m66.86 193.53l-90.2 336.63a90.25 90.25 0 0 0 62.93-41.33c0-0.07 0.61-1 0 0a11.15 11.15 0 0 1 20.44 8.41l-6.44 24A108 108 0 0 1 452 809a36 36 0 0 1-25.45-44.09l90.2-336.63a90.26 90.26 0 0 0-62.93 41.34c0 0.06-0.61 1 0 0a11.15 11.15 0 0 1-20.44-8.42l6.44-24a108 108 0 0 1 132.28-76.37 36 36 0 0 1 25.4 44.03z"
|
||||
p-id="4750"
|
||||
fill="#707070"
|
||||
></path>
|
||||
</svg>
|
||||
</a-tooltip>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -28,12 +63,54 @@
|
|||
class="content-son"
|
||||
v-for="(item, index) in dataList"
|
||||
:key="item"
|
||||
@click="viewDetails(item.id)"
|
||||
@click="viewDetails(item.resourceId)"
|
||||
>
|
||||
<div class="content-son-css">
|
||||
<div class="content-son-css" style="position: relative">
|
||||
<div class="content-index">{{ index + 1 }}</div>
|
||||
<div class="content-neirong">{{ item.name }}</div>
|
||||
<div class="content-fangwenliang">访问量:{{ item.visits }}</div>
|
||||
<div class="content-neirong">{{ item.resourceName }}</div>
|
||||
<div class="content-fangwenliang" v-if="taboldName === '好评榜'">
|
||||
平均分:{{ item.score }}
|
||||
</div>
|
||||
<div
|
||||
class="content-fangwenliang"
|
||||
v-else-if="taboldName === '热门榜'"
|
||||
>
|
||||
申请量:{{ item.applyCount }}
|
||||
</div>
|
||||
<div
|
||||
class="content-fangwenliang"
|
||||
v-else-if="taboldName === '明星榜'"
|
||||
>
|
||||
热度值:
|
||||
<a-rate v-model:value="item.fireNum" allow-half disabled>
|
||||
<template #character>
|
||||
<fire-outlined />
|
||||
</template>
|
||||
</a-rate>
|
||||
</div>
|
||||
<div class="content-fangwenliang" v-else>
|
||||
<template v-if="item.isNew == 1">
|
||||
增幅率:100%+
|
||||
<svg
|
||||
style="position: absolute; top: 6px; left: 0"
|
||||
t="1666230976498"
|
||||
class="icon"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="3440"
|
||||
width="50"
|
||||
height="50"
|
||||
>
|
||||
<path
|
||||
d="M0 0v1024L1024 0H0z m333.625806 576.412903L143.690323 540.077419l-1.651613 1.651613 112.309677 112.309678-21.470968 23.12258L82.580645 526.864516l23.122581-23.122581 188.283871 34.683871 1.651613-1.651612-112.309678-112.309678 23.122581-23.122581 150.296774 150.296775-23.122581 24.774193z m52.851613-52.851613l-150.296774-150.296774 107.354839-107.354839 19.819355 19.819355-84.232258 84.232258 42.941935 42.941936 79.277419-79.27742 19.819355 19.819355-79.277419 79.27742 47.896774 47.896774 89.187097-89.187097 19.819355 19.819355-112.309678 112.309677z m188.283871-188.283871l-24.774193 24.774194-193.23871-107.354839 26.425807-26.425806L528.516129 313.806452l1.651613-1.651613-85.883871-146.993549 24.774194-24.774193 146.993548 85.883871 1.651613-1.651613L528.516129 80.929032l26.425806-26.425806L660.645161 249.393548l-24.774193 24.774194-146.993549-85.883871-1.651613 1.651613 87.535484 145.341935z"
|
||||
fill="#fa4002"
|
||||
p-id="3441"
|
||||
></path>
|
||||
</svg>
|
||||
</template>
|
||||
<template v-else>增幅率:{{ item.growthRate }}</template>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -46,10 +123,17 @@
|
|||
</div>
|
||||
</template>
|
||||
<script setup>
|
||||
import { ref, watch } from 'vue'
|
||||
import { onMounted } from 'vue'
|
||||
import { pageWithAttrs } from '@/api/abilityStatistics'
|
||||
import { ref } from 'vue'
|
||||
// import { onMounted } from 'vue'
|
||||
import {
|
||||
// pageWithAttrs,
|
||||
getPraiseList,
|
||||
getPopularList,
|
||||
getStarList,
|
||||
getPotentialList,
|
||||
} from '@/api/abilityStatistics'
|
||||
import { useRouter } from 'vue-router'
|
||||
import { FireOutlined } from '@ant-design/icons-vue'
|
||||
const router = useRouter()
|
||||
//查看详情方法
|
||||
function viewDetails(id) {
|
||||
|
@ -61,6 +145,27 @@
|
|||
},
|
||||
})
|
||||
}
|
||||
// 获取榜单数据
|
||||
const praiseList = ref([])
|
||||
const popularList = ref([])
|
||||
const starList = ref([])
|
||||
const potentialList = ref([])
|
||||
getPraiseList().then((res) => {
|
||||
praiseList.value = res.data.data
|
||||
res.data.data.map((val) => {
|
||||
val.score = Math.round(val.score * 100) / 100
|
||||
})
|
||||
tabswitch('好评榜', 0)
|
||||
})
|
||||
getPopularList().then((res) => {
|
||||
popularList.value = res.data.data
|
||||
})
|
||||
getStarList().then((res) => {
|
||||
starList.value = res.data.data
|
||||
})
|
||||
getPotentialList().then((res) => {
|
||||
potentialList.value = res.data.data
|
||||
})
|
||||
//跳转查看更多页面
|
||||
function jumpPage() {
|
||||
let snum = {
|
||||
|
@ -93,7 +198,6 @@
|
|||
])
|
||||
//记录点击的tab页
|
||||
let taboldName = ref('好评榜')
|
||||
let tabName = ref('score')
|
||||
const tabswitch = (name, index) => {
|
||||
photoOldJiLu.value.map((item, index) => {
|
||||
photoOld.value[index] = item
|
||||
|
@ -102,49 +206,49 @@
|
|||
console.log('name===========>', name)
|
||||
switch (name) {
|
||||
case '好评榜':
|
||||
tabName.value = 'score'
|
||||
dataList.value = praiseList.value
|
||||
break
|
||||
case '热门榜':
|
||||
tabName.value = 'total'
|
||||
dataList.value = popularList.value
|
||||
break
|
||||
case '明星榜':
|
||||
tabName.value = 'visits'
|
||||
dataList.value = starList.value
|
||||
break
|
||||
case '潜力榜':
|
||||
tabName.value = 'collectCount'
|
||||
dataList.value = potentialList.value
|
||||
break
|
||||
}
|
||||
taboldName.value = name
|
||||
}
|
||||
//能力排行接口
|
||||
let dataList = ref([]) //数据初始化
|
||||
const mySelectMostPopular = (name) => {
|
||||
const data = {
|
||||
deptIds: [],
|
||||
districtId: '',
|
||||
infoList: [],
|
||||
name: '',
|
||||
orderField: name,
|
||||
orderType: 'DESC',
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
type: '',
|
||||
}
|
||||
pageWithAttrs(data).then((res) => {
|
||||
dataList.value = res.data.data.records
|
||||
console.log('aaaaaa111aaaaaaa', res)
|
||||
})
|
||||
}
|
||||
onMounted(() => {
|
||||
watch(
|
||||
tabName,
|
||||
(value) => {
|
||||
mySelectMostPopular(value)
|
||||
},
|
||||
{ deep: true }
|
||||
)
|
||||
mySelectMostPopular(tabName.value)
|
||||
})
|
||||
// const mySelectMostPopular = (name) => {
|
||||
// const data = {
|
||||
// deptIds: [],
|
||||
// districtId: '',
|
||||
// infoList: [],
|
||||
// name: '',
|
||||
// orderField: name,
|
||||
// orderType: 'DESC',
|
||||
// pageNum: 1,
|
||||
// pageSize: 10,
|
||||
// type: '',
|
||||
// }
|
||||
// pageWithAttrs(data).then((res) => {
|
||||
// dataList.value = res.data.data.records
|
||||
// console.log('aaaaaa111aaaaaaa', res)
|
||||
// })
|
||||
// }
|
||||
// onMounted(() => {
|
||||
// watch(
|
||||
// tabName,
|
||||
// (value) => {
|
||||
// mySelectMostPopular(value)
|
||||
// },
|
||||
// { deep: true }
|
||||
// )
|
||||
// mySelectMostPopular(tabName.value)
|
||||
// })
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
.ability-ranking {
|
||||
|
@ -234,6 +338,9 @@
|
|||
background-position: center;
|
||||
margin-bottom: 17px;
|
||||
margin-right: 5px;
|
||||
border-radius: 2px;
|
||||
border: 1px solid #f1f4fb;
|
||||
box-shadow: 0px 8px 20px rgba(0, 88, 225, 0);
|
||||
cursor: pointer;
|
||||
.content-son-css {
|
||||
display: flex;
|
||||
|
@ -242,7 +349,7 @@
|
|||
padding-top: 5px;
|
||||
padding: 2px;
|
||||
.content-index {
|
||||
padding-left: 15px;
|
||||
// padding-left: 15px;
|
||||
text-align: center;
|
||||
margin-bottom: 20px;
|
||||
font-size: 20px;
|
||||
|
|
|
@ -75,15 +75,10 @@ const params = {
|
|||
pageSize: 10,
|
||||
}
|
||||
infrastructureInfo().then((res) => {
|
||||
console.log('基础设施==================>', res.data.data)
|
||||
console.log('基础设施======云图============>', res.data.data)
|
||||
myDataList.value.forEach((val) => {
|
||||
const obj = res.data.data.filter((item) => item.type === val.title)[0]
|
||||
if (obj) {
|
||||
if (obj.type == '视频资源数量') {
|
||||
if (uavAndIndividualSoldier.num) {
|
||||
obj.amount = obj.amount - 0 + uavAndIndividualSoldier.num
|
||||
}
|
||||
}
|
||||
val.snum = obj.amount
|
||||
}
|
||||
})
|
||||
|
|
|
@ -262,7 +262,7 @@
|
|||
</div>
|
||||
</div>
|
||||
<div class="top-content-father">
|
||||
<infrastructurePage ref="camera" :searchValue="searchValue" />
|
||||
<infrastructurePage ref="camera" :searchValue="searchValue" :searchType="searchType" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="top" v-else>
|
||||
|
@ -494,8 +494,11 @@ export default defineComponent({
|
|||
const router = useRouter()
|
||||
let select = router.currentRoute.value.query.select || DETAIL_PAGE_CONTENT_DEFAULT_TAB
|
||||
const select2 = router.currentRoute.value.query.select
|
||||
const type2 = router.currentRoute.value.query.type
|
||||
const queryName=ref('')
|
||||
const str = router.currentRoute.value.query.str
|
||||
const searchValue = ref(str)
|
||||
const searchType= ref(str)
|
||||
let tecHnosphere = router.currentRoute.value.query.tecHnosphere
|
||||
let appLiCation = router.currentRoute.value.query.appLiCation
|
||||
const Cardsname = ref(select)
|
||||
|
@ -682,6 +685,7 @@ export default defineComponent({
|
|||
}
|
||||
|
||||
ListContent.records.forEach((val) => {
|
||||
|
||||
if (!val) {
|
||||
return
|
||||
}
|
||||
|
@ -689,6 +693,7 @@ export default defineComponent({
|
|||
paramsGetResources.infoList = paramsGetResources.infoList.filter(
|
||||
(item) => item.attrType !== name
|
||||
)
|
||||
|
||||
if (
|
||||
val.selectedTags &&
|
||||
val.selectedTags.indexOf(tag.dict_label) == -1
|
||||
|
@ -798,7 +803,34 @@ export default defineComponent({
|
|||
ListContentCopy.value = JSON.parse(JSON.stringify(dataCopy))
|
||||
ListContent.records = []
|
||||
ListContent.records = JSON.parse(JSON.stringify(dataCopy))
|
||||
if(select2=='组件服务'){
|
||||
queryName.value='组件类型'
|
||||
}else if(select2=='应用资源'){
|
||||
queryName.value='应用领域'
|
||||
}else{
|
||||
queryName.value=''
|
||||
}
|
||||
ListContent.records.forEach((val) => {
|
||||
|
||||
if (!val) {
|
||||
return
|
||||
}
|
||||
if (val.name === queryName.value ) {
|
||||
if (
|
||||
val.selectedTags &&
|
||||
val.selectedTags.indexOf(type2) == -1
|
||||
) {
|
||||
val.selectedTags = [type2]
|
||||
} else {
|
||||
val.selectedTags &&
|
||||
val.selectedTags.splice(
|
||||
val.selectedTags.indexOf(type2),
|
||||
1
|
||||
)
|
||||
}
|
||||
|
||||
}
|
||||
})
|
||||
// 智能算法-特殊处理
|
||||
if (whoShow1.value.itShowXiHaiAn) {
|
||||
if (!storageSearchInfo) {
|
||||
|
@ -859,6 +891,7 @@ export default defineComponent({
|
|||
// 校验
|
||||
const re = /^[0-9\u4E00-\u9FA5]*$/
|
||||
const getAppResources2 = () => {
|
||||
|
||||
globalFlag.value = false
|
||||
if (
|
||||
whoShow1.value.itShowQingDao &&
|
||||
|
@ -1236,7 +1269,24 @@ export default defineComponent({
|
|||
if (searchValue.value && !select2) {
|
||||
globalSearch()
|
||||
} else {
|
||||
paramsGetResources.infoList=[]
|
||||
if(select2=='组件服务'){
|
||||
queryName.value='组件类型'
|
||||
}else if(select2=='应用资源'){
|
||||
queryName.value='应用领域'
|
||||
}else if(select2=='基础设施'){
|
||||
searchType.value=type2
|
||||
}else{
|
||||
queryName.value=type2
|
||||
searchType.value=''
|
||||
}
|
||||
let info={attrType:queryName.value, attrValue: type2}
|
||||
paramsGetResources.infoList.push(info)
|
||||
paramsGetResources.type=select2
|
||||
getAppResources2()
|
||||
|
||||
|
||||
listKey.value++
|
||||
}
|
||||
}
|
||||
})
|
||||
|
|
|
@ -64,25 +64,11 @@
|
|||
</span>
|
||||
</a-tooltip>
|
||||
<span @click="logout" class="out">退出</span>
|
||||
<!-- <svg
|
||||
t="1655286092324"
|
||||
class="icon"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="2160"
|
||||
width="20"
|
||||
height="20"
|
||||
style="margin-top: 0.05rem"
|
||||
@click="jumpPage({ name: '后台管理', key: 'houtaiguanli' })"
|
||||
>
|
||||
<path
|
||||
d="M1016.832 606.208q2.048 12.288-1.024 29.696t-10.24 35.328-17.408 32.256-22.528 20.48-21.504 6.144-20.48-4.096q-10.24-3.072-25.6-5.632t-31.232-1.024-31.744 6.656-27.136 17.408q-24.576 25.6-28.672 58.368t9.216 62.464q10.24 20.48-3.072 40.96-6.144 8.192-19.456 16.896t-29.184 15.872-33.28 11.264-30.72 4.096q-9.216 0-17.408-7.168t-11.264-15.36l-1.024 0q-11.264-31.744-38.4-54.784t-62.976-23.04q-34.816 0-62.976 23.04t-39.424 53.76q-5.12 12.288-15.36 17.92t-22.528 5.632q-14.336 0-32.256-5.12t-35.84-12.8-32.256-17.92-21.504-20.48q-5.12-7.168-5.632-16.896t7.68-27.136q11.264-23.552 8.704-53.76t-26.112-55.808q-14.336-15.36-34.816-19.968t-38.912-3.584q-21.504 1.024-44.032 8.192-14.336 4.096-28.672-2.048-11.264-4.096-20.992-18.944t-17.408-32.768-11.776-36.864-2.048-31.232q3.072-22.528 20.48-28.672 30.72-12.288 55.296-40.448t24.576-62.976q0-35.84-24.576-62.464t-55.296-38.912q-9.216-3.072-15.36-14.848t-6.144-24.064q0-13.312 4.096-29.696t10.752-31.744 15.36-28.16 18.944-18.944q8.192-5.12 15.872-4.096t16.896 4.096q30.72 12.288 64 7.68t58.88-29.184q12.288-12.288 17.92-30.208t7.168-35.328 0-31.744-2.56-20.48q-2.048-6.144-3.584-14.336t1.536-14.336q6.144-14.336 22.016-25.088t34.304-17.92 35.84-10.752 27.648-3.584q13.312 0 20.992 8.704t10.752 17.92q11.264 27.648 36.864 48.64t60.416 20.992q35.84 0 63.488-19.968t38.912-50.688q4.096-8.192 12.8-16.896t17.92-8.704q14.336 0 31.232 4.096t33.28 11.264 30.208 18.432 22.016 24.576q5.12 8.192 3.072 17.92t-4.096 13.824q-13.312 29.696-8.192 62.464t29.696 57.344 60.416 27.136 66.56-11.776q8.192-5.12 19.968-4.096t19.968 9.216q15.36 14.336 27.136 43.52t15.872 58.88q2.048 17.408-5.632 27.136t-15.872 12.8q-31.744 11.264-54.272 39.424t-22.528 64q0 34.816 18.944 60.928t49.664 37.376q7.168 4.096 12.288 8.192 11.264 9.216 15.36 23.552zM540.672 698.368q46.08 0 87.04-17.408t71.168-48.128 47.616-71.168 17.408-86.528-17.408-86.528-47.616-70.656-71.168-47.616-87.04-17.408-86.528 17.408-70.656 47.616-47.616 70.656-17.408 86.528 17.408 86.528 47.616 71.168 70.656 48.128 86.528 17.408z"
|
||||
p-id="2161"
|
||||
fill="#bfbfbf"
|
||||
></path>
|
||||
</svg> -->
|
||||
<i @click="jumpPage({ name: '后台管理', key: 'houtaiguanli' })" class="iconTo" v-show="backFlag"></i>
|
||||
<!-- <i class="img1" @click="jumpWaibu"></i> -->
|
||||
</div>
|
||||
<div class="info1">
|
||||
<i class="img1" @click="jumpWaibu"></i>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
@ -156,6 +142,9 @@ const goToHome = () => {
|
|||
path: '/home',
|
||||
})
|
||||
}
|
||||
const jumpWaibu=()=>{
|
||||
window.open('http://15.72.177.175:18460/analystrunner/tonglan', "_blank");
|
||||
}
|
||||
// 跳转页面
|
||||
const jumpPage = (item) => {
|
||||
// 西海岸
|
||||
|
@ -405,6 +394,16 @@ onBeforeUnmount(() => {
|
|||
background: #0058e1;
|
||||
color: #fff !important;
|
||||
}
|
||||
.info1 {
|
||||
margin-left: 0.1rem;
|
||||
display: flex;
|
||||
.img1{
|
||||
height: 0.3rem;
|
||||
width: 1.4rem;
|
||||
margin-left: 0.1rem;
|
||||
background: url('~@/assets/newHome/yiwang.png') no-repeat;
|
||||
}
|
||||
}
|
||||
|
||||
.info {
|
||||
// width: 2rem;
|
||||
|
@ -419,6 +418,14 @@ onBeforeUnmount(() => {
|
|||
background: url('~@/assets/newHome/user.png') no-repeat;
|
||||
background-size: 100%;
|
||||
}
|
||||
.img1 {
|
||||
margin-left: 0.08rem;
|
||||
height: 0.3rem;
|
||||
width: 0.8rem;
|
||||
border-radius: 0.1rem;
|
||||
background: url('~@/assets/newHome/yiwang.png') no-repeat;
|
||||
background-size: 100%;
|
||||
}
|
||||
|
||||
span {
|
||||
height: 0.3rem;
|
||||
|
|
|
@ -47,6 +47,7 @@ const integrationOrder = reactive({
|
|||
|
||||
// 融合服务--排序
|
||||
const changeOrder = (i, val, type) => {
|
||||
|
||||
console.log('i, val, type------------>', i, val, type);
|
||||
integrationOrder.orderField = val
|
||||
integrationOrder.orderType = type;
|
||||
|
|
|
@ -230,6 +230,21 @@
|
|||
</span>
|
||||
</template>
|
||||
</div>
|
||||
<div
|
||||
v-if="
|
||||
selectCardsname === '打包模式'
|
||||
"
|
||||
class="label-content1"
|
||||
>
|
||||
发布时间:
|
||||
<template v-if="item.createDate">
|
||||
<span>
|
||||
{{ item.createDate.substring(0, 10) + ' ' }}
|
||||
</span>
|
||||
<span>{{ item.createDate.substring(11, 19) }}</span>
|
||||
</template>
|
||||
<template v-else>--</template>
|
||||
</div>
|
||||
<div v-else>
|
||||
发布时间:
|
||||
<template v-if="item.createDate">
|
||||
|
@ -989,7 +1004,7 @@
|
|||
margin: 0 10px 0 0;
|
||||
|
||||
.header-right {
|
||||
display: flex;
|
||||
// display: flex;
|
||||
font-size: 14px;
|
||||
color: #212121;
|
||||
|
||||
|
|
|
@ -91,6 +91,10 @@ export default defineComponent({
|
|||
})
|
||||
}
|
||||
treeData.value = res.data && res.data.data || []
|
||||
// 只有一个,默认展开到二级菜单
|
||||
if(res.data && res.data.data.length == 1) {
|
||||
showBottom(treeData.value[0])
|
||||
}
|
||||
}
|
||||
}
|
||||
mybus.on('getDeptList', () => {
|
||||
|
|
|
@ -312,7 +312,13 @@
|
|||
<span>{{ statusText[record.status] || '' }}</span>
|
||||
</template>
|
||||
<template v-if="column.dataIndex === 'operation'">
|
||||
<a :class="record.status != 1 ? 'disabled-text' : ''" @click="
|
||||
<!-- 离线 -->
|
||||
<a v-if="record.status != 1" class="disabled-text">
|
||||
预览
|
||||
</a>
|
||||
<a-tooltip v-else placement="top">
|
||||
<template #title>请申请后在我的申请中预览视频!</template>
|
||||
<a @click="
|
||||
openVideo(
|
||||
record.channelCode ||
|
||||
record.channelId ||
|
||||
|
@ -322,6 +328,8 @@
|
|||
">
|
||||
预览
|
||||
</a>
|
||||
</a-tooltip>
|
||||
|
||||
</template>
|
||||
</template>
|
||||
</a-table>
|
||||
|
@ -343,7 +351,12 @@
|
|||
</a-table>
|
||||
</div>
|
||||
<!-- 单个预览弹窗 -->
|
||||
<a-modal wrapClassName="single-preview-modal" v-model:visible="visible" title="视频预览" :width="960" destroyOnClose>
|
||||
<a-modal wrapClassName="single-preview-modal" v-model:visible="visible" :width="960" destroyOnClose>
|
||||
<!-- title="视频预览" -->
|
||||
<template #title>
|
||||
<span>视频预览</span>
|
||||
<span style="color: #ff4d4f;margin-left:10px">{{`(请申请后在我的申请中预览视频)`}}</span>
|
||||
</template>
|
||||
<template #footer></template>
|
||||
<div style="width: 100%; display: flex; justify-content: center">
|
||||
<div style="width: 100%; height: 100%; position: relative" v-show="isXiHaiAn">
|
||||
|
@ -480,6 +493,7 @@ import moment from 'moment'
|
|||
const props = defineProps({
|
||||
// 模糊查
|
||||
searchValue: { type: String, default: '' },
|
||||
searchType: { type: String, default: '' },
|
||||
})
|
||||
const current = ref(1)
|
||||
const videoTotal = ref(0)
|
||||
|
@ -621,6 +635,9 @@ const lookData = ref({})
|
|||
if (props.searchValue) {
|
||||
mapSearchParam.value.cameraName = props.searchValue
|
||||
}
|
||||
if (props.searchType) {
|
||||
tabClick(0, props.searchType.value)
|
||||
}
|
||||
// 消息列表页面
|
||||
let formPage = router.currentRoute.value.query.formPage || ''
|
||||
// 设施类型--无人机和单兵设备
|
||||
|
@ -835,6 +852,7 @@ const look = (row) => {
|
|||
}
|
||||
// 搜索
|
||||
const onSearch = (searchValue) => {
|
||||
debugger
|
||||
searchData()
|
||||
chengguoSearch()
|
||||
}
|
||||
|
@ -1128,14 +1146,6 @@ const selectType = ref('政务云资源')
|
|||
let tableHeight = ref('600')
|
||||
//tab切换点击事件
|
||||
const tabClick = (indexFather, name) => {
|
||||
console.log(
|
||||
'点击tab================>',
|
||||
indexFather,
|
||||
name,
|
||||
clickList.value,
|
||||
clickList.value[indexFather]
|
||||
)
|
||||
|
||||
selectedRowKeys.value = []
|
||||
selectedList.value = []
|
||||
if (clickList.value[indexFather].content.indexOf(name) != -1) {
|
||||
|
@ -2373,6 +2383,7 @@ video::-webkit-media-controls {
|
|||
cursor: not-allowed;
|
||||
opacity: 0.5;
|
||||
color: #666666;
|
||||
|
||||
&:hover {
|
||||
color: #666666;
|
||||
}
|
||||
|
|
|
@ -177,7 +177,7 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
this.addResourceTomap('videoMap', this.pointAllData);
|
||||
//this.addResourceTomap('videoMap', this.pointAllData);
|
||||
})
|
||||
},
|
||||
methods: {
|
||||
|
@ -477,7 +477,7 @@
|
|||
}
|
||||
})
|
||||
}
|
||||
console.log('上图数据', dataEvent)
|
||||
console.log('点击后上上图数据', dataEvent)
|
||||
this.getMapPoint(dataEvent, 'icon_camare.png', type)
|
||||
},
|
||||
getMapPoint(data, img, type) {
|
||||
|
|
|
@ -146,17 +146,18 @@ const getAppResources = (type, obj) => {
|
|||
num: res.data.data[key],
|
||||
})
|
||||
}
|
||||
} else if(key !== '云资源') { //云资源--暂时隐藏
|
||||
}
|
||||
else {
|
||||
jcList.value.push({
|
||||
name: key,
|
||||
num: res.data.data[key],
|
||||
})
|
||||
}
|
||||
}
|
||||
jcList.value.push({
|
||||
name: '会客厅',
|
||||
num: 4,
|
||||
})
|
||||
// jcList.value.push({
|
||||
// name: '会客厅',
|
||||
// num: 4,
|
||||
// })
|
||||
// 西海岸-单兵设备、无人机 获取数量
|
||||
if (whoShow1.value.itShowXiHaiAn) {
|
||||
getSoldierData('无人机')
|
||||
|
@ -328,11 +329,18 @@ const selectOne11 = (name) => {
|
|||
})
|
||||
}
|
||||
const selectOne2 = (name) => {
|
||||
console.log('点击===============》', name)
|
||||
let names=''
|
||||
if(name ==='云资源'){
|
||||
names='政务云资源'
|
||||
} else if(name ==='会客厅'){
|
||||
names='城市云脑会客厅'
|
||||
}else{
|
||||
names=name
|
||||
}
|
||||
router.push({
|
||||
path: '/DetailsPageconetent',
|
||||
query: {
|
||||
type: name,
|
||||
type: names,
|
||||
select: '基础设施',
|
||||
},
|
||||
})
|
||||
|
|
|
@ -62,7 +62,7 @@
|
|||
<a-button type="primary" @click="modify(props.refObj.id, item)" v-if="item.backToFirst">
|
||||
修改
|
||||
</a-button>
|
||||
<a-popconfirm v-if="!item.ended" title="是否终止此流程?" ok-text="是" cancel-text="否"
|
||||
<a-popconfirm class="aaa" v-if="!item.ended" title="是否撤回此流程?" ok-text="是" cancel-text="否"
|
||||
@confirm="endThis(item.instanceId)" @cancel="cancel">
|
||||
<a-button type="primary" danger style="margin-left: 10px">
|
||||
撤回申请
|
||||
|
@ -463,7 +463,19 @@ const openView = (url) => {
|
|||
}
|
||||
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
.aaa{
|
||||
margin-right: 30px;
|
||||
}
|
||||
:deep(.ant-popover-inner) {
|
||||
position: fixed !important;
|
||||
|
||||
margin-right: 100px;
|
||||
|
||||
|
||||
|
||||
}
|
||||
.title {
|
||||
font-size: 0.18rem;
|
||||
color: #000;
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
<div class="title">基本信息</div>
|
||||
<a-popconfirm
|
||||
v-if="!props.refObj.ended"
|
||||
title="是否终止此流程?"
|
||||
title="是否撤回此流程?"
|
||||
ok-text="是"
|
||||
cancel-text="否"
|
||||
@confirm="endThis"
|
||||
|
|
|
@ -18,7 +18,19 @@ const {
|
|||
donation,
|
||||
} = require('./src/config')
|
||||
const { webpackBarName, webpackBanner, donationConsole } = require('vab-config')
|
||||
|
||||
const CompressionWebpackPlugin = require('compression-webpack-plugin')
|
||||
const productionGzipExtensions = [
|
||||
'js',
|
||||
'css',
|
||||
'html',
|
||||
'svg',
|
||||
'json',
|
||||
'txt',
|
||||
'ico',
|
||||
]
|
||||
// 是否开启gzip压缩
|
||||
const isPro = process.env.NODE_ENV === 'production'
|
||||
// const isPro = false
|
||||
if (donation) donationConsole()
|
||||
const { version, author } = require('./package.json')
|
||||
const Webpack = require('webpack')
|
||||
|
@ -92,7 +104,6 @@ module.exports = {
|
|||
chainWebpack(config) {
|
||||
config.resolve.symlinks(true)
|
||||
config.module.rule('svg').exclude.add(resolve('src/icon/remixIcon')).end()
|
||||
|
||||
config.module
|
||||
.rule('remixIcon')
|
||||
.test(/\.svg$/)
|
||||
|
@ -110,21 +121,21 @@ module.exports = {
|
|||
config.when(process.env.NODE_ENV !== 'development', (config) => {
|
||||
config.performance.set('hints', false)
|
||||
config.devtool('none')
|
||||
config.optimization.splitChunks({
|
||||
chunks: 'all',
|
||||
cacheGroups: {
|
||||
libs: {
|
||||
name: 'vue-admin-beautiful-libs',
|
||||
test: /[\\/]node_modules[\\/]/,
|
||||
priority: 10,
|
||||
chunks: 'initial',
|
||||
},
|
||||
},
|
||||
})
|
||||
config
|
||||
.plugin('banner')
|
||||
.use(Webpack.BannerPlugin, [`${webpackBanner}${time}`])
|
||||
.end()
|
||||
// config.optimization.splitChunks({
|
||||
// chunks: 'all',
|
||||
// cacheGroups: {
|
||||
// libs: {
|
||||
// name: 'vue-admin-beautiful-libs',
|
||||
// test: /[\\/]node_modules[\\/]/,
|
||||
// priority: 10,
|
||||
// chunks: 'initial',
|
||||
// },
|
||||
// },
|
||||
// })
|
||||
// config
|
||||
// .plugin('banner')
|
||||
// .use(Webpack.BannerPlugin, [`${webpackBanner}${time}`])
|
||||
// .end()
|
||||
config.module
|
||||
.rule('images')
|
||||
.use('image-webpack-loader')
|
||||
|
@ -134,7 +145,19 @@ module.exports = {
|
|||
})
|
||||
.end()
|
||||
})
|
||||
|
||||
if (isPro) {
|
||||
// 生产环境下使用gzip 压缩
|
||||
config.plugin('compressionPlugin').use(
|
||||
new CompressionWebpackPlugin({
|
||||
// filename: '[path].gz[query]',
|
||||
algorithm: 'gzip',
|
||||
test: new RegExp('\\.(' + productionGzipExtensions.join('|') + ')$'),
|
||||
threshold: 10240, // 只有大小大于该值的资源会被处理 10240
|
||||
minRatio: 0.8, // 只有压缩率小于这个值的资源才会被处理
|
||||
deleteOriginalAssets: false, // 删除原文件
|
||||
})
|
||||
)
|
||||
}
|
||||
if (build7z) {
|
||||
config.when(process.env.NODE_ENV === 'production', (config) => {
|
||||
config
|
||||
|
|
Loading…
Reference in New Issue