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

This commit is contained in:
unknown 2022-10-19 11:50:11 +08:00
commit 1a23d64064
19 changed files with 1209 additions and 864 deletions

View File

@ -107,7 +107,6 @@ export default {
} else { } else {
this.total = this.mixinViewModuleOptions.getDataListIsPage ? res.data.total : 0 this.total = this.mixinViewModuleOptions.getDataListIsPage ? res.data.total : 0
} }
console.log('数据列表', this.dataList, this.mixinViewModuleOptions.getDataListURL) console.log('数据列表', this.dataList, this.mixinViewModuleOptions.getDataListURL)
if (this.dataList[0].type === '组件服务') { if (this.dataList[0].type === '组件服务') {
this.dataList.map(val => { this.dataList.map(val => {

View File

@ -104,7 +104,7 @@ router.beforeEach((to, from, next) => {
Vue.prototype.$message.error(res.msg) Vue.prototype.$message.error(res.msg)
return next({ name: 'login' }) return next({ name: 'login' })
} }
window.SITE_CONFIG.menuList = res.data window.SITE_CONFIG.menuList = res.data.filter(item => item.site === 0)
fnAddDynamicMenuRoutes(window.SITE_CONFIG.menuList) fnAddDynamicMenuRoutes(window.SITE_CONFIG.menuList)
next({ ...to, replace: true }) next({ ...to, replace: true })
}).catch(() => { }).catch(() => {

View File

@ -1,12 +1,12 @@
/* /*
* @Author: hisense.guoyue * @Author: hisense.guoyue
* @Date: 2022-08-23 10:30:11 * @Date: 2022-08-23 10:30:11
* @LastEditors: hisense.guoyue * @LastEditors: hisense.wuhongjian
* @LastEditTime: 2022-10-02 14:47:05 * @LastEditTime: 2022-10-18 17:44:33
* @Description: 判断当前环境是西海岸还是青岛市局 * @Description: 判断当前环境是西海岸还是青岛市局
*/ */
const returnLocationStr = () => { const returnLocationStr = () => {
return CONFIGITEM.version return CONFIGITEM.version === 'xihaian' ? 'xihaian' : 'qingdao'
} }
export default returnLocationStr export default returnLocationStr

View File

@ -1,8 +1,8 @@
<!-- <!--
* @Author: kongjun qdkongjun@gmail.com * @Author: kongjun qdkongjun@gmail.com
* @Date: 2022-06-20 09:29:59 * @Date: 2022-06-20 09:29:59
* @LastEditors: kongjun qdkongjun@gmail.com * @LastEditors: hisense.wuhongjian
* @LastEditTime: 2022-06-22 10:04:56 * @LastEditTime: 2022-10-18 15:46:51
* @FilePath: \back\src\views\main-sidebar.vue * @FilePath: \back\src\views\main-sidebar.vue
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
--> -->
@ -35,21 +35,21 @@
<script> <script>
import http from '@/utils/request' import http from '@/utils/request'
import SubMenu from "./main-sidebar-sub-menu"; import SubMenu from './main-sidebar-sub-menu'
import returnLocationStr from '@/utils/location'; import returnLocationStr from '@/utils/location'
import bus from '@/views/bus.js' import bus from '@/views/bus.js'
export default { export default {
data () { data () {
return { return {
numObject: {} numObject: {}
}; }
}, },
components: { components: {
SubMenu, SubMenu
}, },
created () { created () {
this.getNum() this.getNum()
//this.$store.state.sidebarMenuList = window.SITE_CONFIG["menuList"]; // this.$store.state.sidebarMenuList = window.SITE_CONFIG.menuList
// //
bus.$off('updateTaskNum') bus.$off('updateTaskNum')
bus.$on('updateTaskNum', () => { bus.$on('updateTaskNum', () => {
@ -60,35 +60,35 @@ export default {
getNum () { getNum () {
http.get('/act/task/myToDoTaskNum').then(({ data: res }) => { http.get('/act/task/myToDoTaskNum').then(({ data: res }) => {
this.numObject = res.data this.numObject = res.data
let menuList= window.SITE_CONFIG["menuList"]; const menuList = window.SITE_CONFIG.menuList
console.log('menuList====>',menuList); console.log('menuList====>', menuList)
console.log('this.numObject====>',this.numObject); console.log('this.numObject====>', this.numObject)
for (var i = 0; i < menuList.length; i++) { for (var i = 0; i < menuList.length; i++) {
let menu=menuList[i]; const menu = menuList[i]
if (menu.id == '1541261628388888578') { // if (menu.id == '1541261628388888578') { //
let daibanNum = 0 let daibanNum = 0
for (let j = 0; j < menu.children.length; j++) { for (let j = 0; j < menu.children.length; j++) {
let children=menu.children[j] const children = menu.children[j]
if(children.id=="1541261780432408577"){// v2 if (children.id == '1541261780432408577') { // v2
// 西 v2 v3 // 西 v2 v3
children.total = returnLocationStr() == 'qingdao' ? Number(this.numObject.abilityprocess_v3) : Number(this.numObject.abilityprocess_v2) children.total = returnLocationStr() == 'qingdao' ? Number(this.numObject.abilityprocess_v3) : Number(this.numObject.abilityprocess_v2)
daibanNum = Number(daibanNum) + Number(children.total) daibanNum = Number(daibanNum) + Number(children.total)
} if(children.id=="1559376285703081986"){// } if (children.id == '1559376285703081986') { //
children.total = Number(this.numObject.meetingroom_book) children.total = Number(this.numObject.meetingroom_book)
daibanNum = Number(daibanNum) + Number(children.total) daibanNum = Number(daibanNum) + Number(children.total)
}if(children.id=="1545292602084827138"){// } if (children.id == '1545292602084827138') { //
children.total = Number(this.numObject.resourcemountapply) children.total = Number(this.numObject.resourcemountapply)
daibanNum = Number(daibanNum) + Number(children.total) daibanNum = Number(daibanNum) + Number(children.total)
}if(children.id=="1545312045695377410"){// } if (children.id == '1545312045695377410') { //
children.total = Number(this.numObject.abilitydemandapply) children.total = Number(this.numObject.abilitydemandapply)
daibanNum = Number(daibanNum) + Number(children.total) daibanNum = Number(daibanNum) + Number(children.total)
}if(children.id=="1545313018614521857"){// } if (children.id == '1545313018614521857') { //
children.total = Number(this.numObject.resourcundercarriageapply) children.total = Number(this.numObject.resourcundercarriageapply)
daibanNum = Number(daibanNum) + Number(children.total) daibanNum = Number(daibanNum) + Number(children.total)
}if(children.id=="1545313754106699777"){// } if (children.id == '1545313754106699777') { //
children.total = Number(this.numObject.comment_review) children.total = Number(this.numObject.comment_review)
daibanNum = Number(daibanNum) + Number(children.total) daibanNum = Number(daibanNum) + Number(children.total)
}if(children.id=="1554294862931562498"){// } if (children.id == '1554294862931562498') { //
children.total = 0 children.total = 0
daibanNum = Number(daibanNum) + Number(children.total) daibanNum = Number(daibanNum) + Number(children.total)
} }
@ -99,7 +99,8 @@ export default {
this.$store.state.sidebarMenuList = menuList this.$store.state.sidebarMenuList = menuList
}) })
} }
}}; }
}
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">
.aui-sidebar { .aui-sidebar {

View File

@ -58,6 +58,7 @@
<el-select <el-select
v-model="abilityDepartment" v-model="abilityDepartment"
placeholder="请选择部门" placeholder="请选择部门"
filterable
clearable clearable
> >
<el-option label="全部" value=""></el-option> <el-option label="全部" value=""></el-option>
@ -94,6 +95,11 @@
$t('reset') $t('reset')
}}</el-button> }}</el-button>
</el-form-item> </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> -->
</el-form> </el-form>
<el-card shadow="never" class="aui-card--fill" v-if="homeIsShow"> <el-card shadow="never" class="aui-card--fill" v-if="homeIsShow">
<div class="mod-demand__bsdemand"> <div class="mod-demand__bsdemand">
@ -134,9 +140,12 @@
<span v-if='this.choseId===0' :class="[departmentId===4?'departmentStyle':'']" @click="handleChose(4)"> <span v-if='this.choseId===0' :class="[departmentId===4?'departmentStyle':'']" @click="handleChose(4)">
能力使用明细 能力使用明细
</span> --> </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> </span>
</template>
<span v-else class="detail-button" @click="goToBack()"> 返回 </span> <span v-else class="detail-button" @click="goToBack()"> 返回 </span>
</div> </div>
<div class="line-style"></div> <div class="line-style"></div>
@ -213,6 +222,8 @@
<el-table <el-table
:data="tableData" :data="tableData"
:header-cell-style="{ textAlign: 'center',height:'96px' }"
:cell-style="{ textAlign: 'center' }"
style="width: 100%" style="width: 100%"
v-show="this.departmentId === 3 || this.departmentId === 4" v-show="this.departmentId === 3 || this.departmentId === 4"
> >
@ -273,12 +284,14 @@
</template> </template>
<script> <script>
import Cookies from 'js-cookie'
import componentServices from './componentServices.vue' import componentServices from './componentServices.vue'
import AbilityDetail from './components/abilityDetails' import AbilityDetail from './components/abilityDetails'
import applicationResources from './applicationResources.vue' import applicationResources from './applicationResources.vue'
import ComponentUsed from './componentUsed.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({ // const props = defineProps({
// processDefinitionName: { type: String, default: null }, // processDefinitionName: { type: String, default: null },
// businessKey: { type: String, default: null }, // businessKey: { type: String, default: null },
@ -288,9 +301,15 @@ import { mapState } from 'vuex'
// showType: { type: String, default: null }, // showType: { type: String, default: null },
// }) // })
export default { export default {
components: { componentServices, applicationResources, ComponentUsed, AbilityDetail }, components: { componentServices, applicationResources, ComponentUsed, AbilityDetail, Template },
data () { data () {
return { return {
checked: false,
departmentSelects: [],
exportExcel: CONFIGITEM.configData[CONFIGITEM.version].apiURL + '/census/center/export',
exportExcelCondition: '',
exportExcelType: '',
token: Cookies.get('ucsToken'),
detailType: '', detailType: '',
detailParamss: {}, detailParamss: {},
isBack: true, isBack: true,
@ -377,6 +396,7 @@ export default {
{ name: '会议室', value: 6 } { name: '会议室', value: 6 }
], ],
tableData: [], tableData: [],
tableDataClone: [],
tableData2: [ tableData2: [
{ {
approveStatus: '', approveStatus: '',
@ -407,6 +427,13 @@ export default {
} }
}, },
created () { 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.name })
})
})
// //
// const d = new Date() // const d = new Date()
// let year1, month1, day1 // let year1, month1, day1
@ -432,9 +459,18 @@ export default {
} }
}, },
computed: { computed: {
...mapState(['departmentSelects']) // ...mapState(['departmentSelects'])
}, },
methods: { 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 () { closeModal () {
this.detailsVisible = false this.detailsVisible = false
}, },
@ -529,7 +565,14 @@ export default {
parseInt(result[i].hys) parseInt(result[i].hys)
} }
this.tableData = res.data.data this.tableData = res.data.data
this.tableDataClone = res.data.data
this.total = res.data.data.total this.total = res.data.data.total
this.exportExcelCondition = qs.stringify({
approveStatus: this.status,
deptId: this.abilityDepartment,
startDate: this.startDate,
endDate: this.endDate
})
}) })
}, },
// 使-使 // 使-使
@ -587,7 +630,14 @@ export default {
parseInt(result[i].hys) parseInt(result[i].hys)
} }
this.tableData = res.data.data this.tableData = res.data.data
this.tableDataClone = res.data.data
this.total = res.data.data.total this.total = res.data.data.total
this.exportExcelCondition = qs.stringify({
approveStatus: this.status,
deptId: this.abilityDepartment,
startDate: this.startDate,
endDate: this.endDate
})
}) })
}, },
// //
@ -661,7 +711,14 @@ export default {
.then((res) => { .then((res) => {
console.log('111111', this.tableData, res.data.data) console.log('111111', this.tableData, res.data.data)
this.tableData = res.data.data this.tableData = res.data.data
this.tableDataClone = res.data.data
this.total = res.data.data.total this.total = res.data.data.total
this.exportExcelCondition = qs.stringify({
approveStatus: this.status,
deptId: this.abilityDepartment,
startDate: this.startDate,
endDate: this.endDate
})
}) })
}, },
// 使 // 使
@ -692,7 +749,14 @@ export default {
}) })
.then((res) => { .then((res) => {
this.tableData = res.data.data this.tableData = res.data.data
this.tableDataClone = res.data.data
this.total = res.data.data.total this.total = res.data.data.total
this.exportExcelCondition = qs.stringify({
approveStatus: this.status,
deptId: this.abilityDepartment,
startDate: this.startDate,
endDate: this.endDate
})
}) })
}, },
getReleaseTree (page) { getReleaseTree (page) {
@ -793,12 +857,14 @@ export default {
// }, // },
// or使 // or使
handleChose (index) { handleChose (index) {
this.checked = false
this.departmentId = index this.departmentId = index
if (index === 1) { if (index === 1) {
if (this.choseId === 0) { if (this.choseId === 0) {
if (!this.detailFlag) { if (!this.detailFlag) {
this.detailFlag = !this.detailFlag this.detailFlag = !this.detailFlag
} }
this.exportExcelType = 'SelectDeptDetailTypeCountList'
this.getFirstTree() this.getFirstTree()
} else if (this.choseId === 1) { } else if (this.choseId === 1) {
// this.getReleaseTree() // this.getReleaseTree()
@ -808,6 +874,7 @@ export default {
if (!this.detailFlag) { if (!this.detailFlag) {
this.detailFlag = !this.detailFlag this.detailFlag = !this.detailFlag
} }
this.exportExcelType = 'SelectApplyDeptDetailTypeCountList'
this.getSecondTree() this.getSecondTree()
} else { } else {
// this.getUsedTree() // this.getUsedTree()
@ -815,6 +882,7 @@ export default {
} else if (index === 3) { } else if (index === 3) {
this.detailFlag = false this.detailFlag = false
if (this.choseId === 0) { if (this.choseId === 0) {
this.exportExcelType = 'SelectCensusResourceTable'
this.getOneDetail() this.getOneDetail()
} else { } else {
// this.getUsedTree() // this.getUsedTree()
@ -822,6 +890,7 @@ export default {
} else if (index === 4) { } else if (index === 4) {
this.detailFlag = false this.detailFlag = false
if (this.choseId === 0) { if (this.choseId === 0) {
this.exportExcelType = 'SelectCensusApplyTable'
this.getTwoDetail() this.getTwoDetail()
} else { } else {
// this.getUsedTree() // this.getUsedTree()
@ -861,6 +930,7 @@ export default {
}, },
// //
goToBack () { goToBack () {
this.checked = false
// departmentId 13 24 // departmentId 13 24
this.detailFlag = !this.detailFlag this.detailFlag = !this.detailFlag
if (this.departmentId === 3) { if (this.departmentId === 3) {
@ -911,6 +981,13 @@ export default {
this.examineStatus = '' this.examineStatus = ''
this.abilityDepartment = '' this.abilityDepartment = ''
this.abilityType = '' this.abilityType = ''
this.approveStatus = ''
this.exportExcelCondition = qs.stringify({
approveStatus: this.status,
deptId: this.abilityDepartment,
startDate: this.startDate,
endDate: this.endDate
})
if (this.departmentId === 1) { if (this.departmentId === 1) {
// if (this.detailFlag) { // if (this.detailFlag) {
// this.handleChose(3) // this.handleChose(3)
@ -1100,4 +1177,31 @@ input::placeholder {
text-overflow: ellipsis; text-overflow: ellipsis;
word-break: break-all; word-break: break-all;
} }
.export {
display: inline-block;
width: 70px;
height: 40px;
line-height: 40px;
text-align: center;
border-radius: 5px;
background: #fff;
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;
}
</style> </style>

View File

@ -81,7 +81,7 @@ export default {
init () { init () {
this.visible = true this.visible = true
this.$nextTick(() => { this.$nextTick(() => {
this.$refs['dataForm'].resetFields() this.$refs.dataForm.resetFields()
this.iconList = getIconList() this.iconList = getIconList()
this.dataForm.parentName = this.$t('menu.parentNameDefault') this.dataForm.parentName = this.$t('menu.parentNameDefault')
this.getMenuList() this.getMenuList()
@ -89,11 +89,12 @@ export default {
}, },
// //
getMenuList () { getMenuList () {
console.log('获取菜单位置1')
return this.$http.get('/sys/menu/list?type=0').then(({ data: res }) => { return this.$http.get('/sys/menu/list?type=0').then(({ data: res }) => {
if (res.code !== 0) { if (res.code !== 0) {
return this.$message.error(res.msg) return this.$message.error(res.msg)
} }
this.menuList = res.data this.menuList = res.data.filter(item => item.site === 0)
}).catch(() => {}) }).catch(() => {})
}, },
// , // ,
@ -114,11 +115,11 @@ export default {
}, },
// //
dataFormSubmitHandle: debounce(function () { dataFormSubmitHandle: debounce(function () {
this.$refs['dataForm'].validate((valid) => { this.$refs.dataForm.validate((valid) => {
if (!valid) { if (!valid) {
return false return false
} }
this.$http['post']('/devtools/menu', this.dataForm).then(({ data: res }) => { this.$http.post('/devtools/menu', this.dataForm).then(({ data: res }) => {
if (res.code !== 0) { if (res.code !== 0) {
return this.$message.error(res.msg) return this.$message.error(res.msg)
} }
@ -133,7 +134,7 @@ export default {
}) })
}).catch(() => {}) }).catch(() => {})
}) })
}, 1000, { 'leading': true, 'trailing': false }) }, 1000, { leading: true, trailing: false })
} }
} }
</script> </script>

View File

@ -123,11 +123,12 @@ export default {
}, },
// //
getMenuList () { getMenuList () {
console.log('获取菜单位置2')
return this.$http.get('/sys/menu/list?type=0').then(({ data: res }) => { return this.$http.get('/sys/menu/list?type=0').then(({ data: res }) => {
if (res.code !== 0) { if (res.code !== 0) {
return this.$message.error(res.msg) return this.$message.error(res.msg)
} }
this.menuList = res.data this.menuList = res.data.filter(item => item.site === 0)
}).catch(() => {}) }).catch(() => {})
}, },
// //

View File

@ -1,3 +1,10 @@
<!--
* @Author: hisense.wuhongjian
* @Date: 2022-06-14 09:30:23
* @LastEditors: hisense.wuhongjian
* @LastEditTime: 2022-10-17 14:54:26
* @Description: 告诉大家这是什么
-->
<template> <template>
<el-card shadow="never" class="aui-card--fill"> <el-card shadow="never" class="aui-card--fill">
<div class="mod-sys__menu"> <div class="mod-sys__menu">

View File

@ -8,8 +8,8 @@
var _global = {} var _global = {}
var CONFIGITEM = { var CONFIGITEM = {
// version: 'qingdao', // // version: 'qingdao', //
// version: 'xihaian', // 西 version: 'xihaian', // 西
version: 'qingdao', // // version: 'qingdao', //
// version: 'zhanTingDev', // dev (2022-09-13:) // version: 'zhanTingDev', // dev (2022-09-13:)
// version: 'qingdao', // // version: 'qingdao', //
//version: 'frp', // 穿 //version: 'frp', // 穿
@ -28,7 +28,8 @@ var CONFIGITEM = {
previewUrl: 'http://15.72.183.90:7008/', previewUrl: 'http://15.72.183.90:7008/',
//frontUrl: 'http://15.72.183.90:7008/document/#/devModelFile/', //frontUrl: 'http://15.72.183.90:7008/document/#/devModelFile/',
//apiURL: 'http://15.72.183.90:8000/renren-admin', //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: POI_URL:
'http://15.72.178.129:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address', 'http://15.72.178.129:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address',
}, },
@ -62,8 +63,9 @@ var CONFIGITEM = {
}, },
// //
camreaInfo: { camreaInfo: {
// cameraUrl: '10.134.135.92:9537', // // cameraUrl: '10.134.135.92:9537', // 西-
cameraUrl: '10.134.135.9:9537', // // cameraUrl: '10.134.135.9:9537', // 西-
cameraUrl: '192.168.124.236:9537', // vpn
}, },
backUrl: 'http://10.134.135.9:9797', backUrl: 'http://10.134.135.9:9797',
previewUrl: 'http://10.134.135.9:9796/', previewUrl: 'http://10.134.135.9:9796/',

View File

@ -15,6 +15,7 @@ const state = () => ({
accessToken: getAccessToken(), accessToken: getAccessToken(),
username: '', username: '',
realName: '', realName: '',
deptName: '',
userId: '', userId: '',
avatar: '', avatar: '',
role: 0, // role: 0, //
@ -26,6 +27,7 @@ const getters = {
avatar: (state) => state.avatar, avatar: (state) => state.avatar,
role: (state) => state.role, role: (state) => state.role,
userId: (state) => state.userId, userId: (state) => state.userId,
deptName: (state) => state.deptName,
} }
const mutations = { const mutations = {
/** /**
@ -64,6 +66,10 @@ const mutations = {
setUserId(state, id) { setUserId(state, id) {
state.userId = id state.userId = id
}, },
//
setDeptName(state, name) {
state.deptName = name
},
/** /**
* @author chuzhixin 1204505056@qq.com * @author chuzhixin 1204505056@qq.com
* @description 设置头像 * @description 设置头像
@ -136,6 +142,7 @@ const actions = {
commit('setRealname', res.data.data.realName) commit('setRealname', res.data.data.realName)
commit('setRole', res.data.data.roleIdList.length) commit('setRole', res.data.data.roleIdList.length)
commit('setUserId', res.data.data.id) commit('setUserId', res.data.data.id)
commit('setDeptName', res.data.data.deptName)
// TODO // TODO
// let { username, avatar, roles, ability } = data // let { username, avatar, roles, ability } = data
// if (username && roles && Array.isArray(roles)) { // if (username && roles && Array.isArray(roles)) {

View File

@ -262,7 +262,7 @@
</div> </div>
</div> </div>
<div class="top-content-father"> <div class="top-content-father">
<infrastructurePage ref="camera" :searchValue="searchValue" /> <infrastructurePage ref="camera" :searchValue="searchValue" :searchType="searchType" />
</div> </div>
</div> </div>
<div class="top" v-else> <div class="top" v-else>
@ -494,8 +494,11 @@ export default defineComponent({
const router = useRouter() const router = useRouter()
let select = router.currentRoute.value.query.select || DETAIL_PAGE_CONTENT_DEFAULT_TAB let select = router.currentRoute.value.query.select || DETAIL_PAGE_CONTENT_DEFAULT_TAB
const select2 = router.currentRoute.value.query.select 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 str = router.currentRoute.value.query.str
const searchValue = ref(str) const searchValue = ref(str)
const searchType= ref(str)
let tecHnosphere = router.currentRoute.value.query.tecHnosphere let tecHnosphere = router.currentRoute.value.query.tecHnosphere
let appLiCation = router.currentRoute.value.query.appLiCation let appLiCation = router.currentRoute.value.query.appLiCation
const Cardsname = ref(select) const Cardsname = ref(select)
@ -682,6 +685,7 @@ export default defineComponent({
} }
ListContent.records.forEach((val) => { ListContent.records.forEach((val) => {
if (!val) { if (!val) {
return return
} }
@ -689,6 +693,7 @@ export default defineComponent({
paramsGetResources.infoList = paramsGetResources.infoList.filter( paramsGetResources.infoList = paramsGetResources.infoList.filter(
(item) => item.attrType !== name (item) => item.attrType !== name
) )
if ( if (
val.selectedTags && val.selectedTags &&
val.selectedTags.indexOf(tag.dict_label) == -1 val.selectedTags.indexOf(tag.dict_label) == -1
@ -798,7 +803,34 @@ export default defineComponent({
ListContentCopy.value = JSON.parse(JSON.stringify(dataCopy)) ListContentCopy.value = JSON.parse(JSON.stringify(dataCopy))
ListContent.records = [] ListContent.records = []
ListContent.records = JSON.parse(JSON.stringify(dataCopy)) 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 (whoShow1.value.itShowXiHaiAn) {
if (!storageSearchInfo) { if (!storageSearchInfo) {
@ -859,6 +891,7 @@ export default defineComponent({
// //
const re = /^[0-9\u4E00-\u9FA5]*$/ const re = /^[0-9\u4E00-\u9FA5]*$/
const getAppResources2 = () => { const getAppResources2 = () => {
globalFlag.value = false globalFlag.value = false
if ( if (
whoShow1.value.itShowQingDao && whoShow1.value.itShowQingDao &&
@ -1236,7 +1269,24 @@ export default defineComponent({
if (searchValue.value && !select2) { if (searchValue.value && !select2) {
globalSearch() globalSearch()
} else { } 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() getAppResources2()
listKey.value++
} }
} }
}) })

View File

@ -8,36 +8,93 @@
</div> </div>
<div class="form-container"> <div class="form-container">
<div v-if="applySuccess"> <div v-if="applySuccess">
<a-form ref="formRef" :model="formName" name="basic" :label-col="{ style: { width: '106px' } }" <a-form
:wrapper-col="{ style: { width: '230px' } }" labelAlign="left" autocomplete="off"> ref="formRef"
:model="formName"
name="basic"
:label-col="{ style: { width: '106px' } }"
:wrapper-col="{ style: { width: '230px' } }"
labelAlign="left"
autocomplete="off"
>
<div class="base-info flex-row-start"> <div class="base-info flex-row-start">
<a-form-item label="申请标题" name="title" :rules="[{ required: true, message: '请输入申请标题' }]"> <a-form-item
<a-input placeholder="请输入能力申请标题" v-model:value="formName.title" /> label="申请标题"
name="title"
:rules="[{ required: true, message: '请输入申请标题' }]"
>
<a-input
placeholder="请输入能力申请标题"
v-model:value="formName.title"
/>
</a-form-item> </a-form-item>
<!-- 西海岸-摄像头-增加过期时间 --> <!-- 西海岸-摄像头-增加过期时间 -->
<a-form-item v-if="isCamera && isXiHaiAn" label="过期时间" name="expireDate" <a-form-item
:rules="[{ required: true, message: '请选择过期时间' }]" style="margin-left: 22px"> v-if="isCamera && isXiHaiAn"
<a-select v-model:value="formName.expireDate" placeholder="请选择过期时间" style="width: 200px" label="过期时间"
:options="expireDateOptions"></a-select> name="expireDate"
:rules="[{ required: true, message: '请选择过期时间' }]"
style="margin-left: 22px"
>
<a-select
v-model:value="formName.expireDate"
placeholder="请选择过期时间"
style="width: 200px"
:options="expireDateOptions"
></a-select>
</a-form-item> </a-form-item>
</div> </div>
<div class="base-info"> <div class="base-info">
<a-form-item label="申请人信息" name="user" :rules="[{ required: true, message: '请输入申请人' }]"> <a-form-item
<a-input placeholder="请输入申请人" v-model:value="formName.user" disabled /> label="申请人信息"
name="user"
:rules="[{ required: true, message: '请输入申请人' }]"
>
<a-input
placeholder="请输入申请人"
v-model:value="formName.user"
disabled
/>
</a-form-item> </a-form-item>
<a-form-item style="margin: 0 22px" label="电话" name="phone" :rules="[ <a-form-item
style="margin: 0 22px"
label="电话"
name="phone"
:rules="[
{ {
required: true, required: true,
pattern: /^1[3456789]\d{9}$/, pattern: /^1[3456789]\d{9}$/,
message: '请输入正确的电话号码', message: '请输入正确的电话号码',
}, },
]"> ]"
<a-input placeholder="请输入申请人电话" v-model:value="formName.phone" /> >
<a-input
placeholder="请输入申请人电话"
v-model:value="formName.phone"
/>
</a-form-item> </a-form-item>
<a-form-item label="单位" name="unit" :rules="[{ required: true, message: '请输入单位' }]"> <a-form-item
<a-input placeholder="请输入单位" v-model:value="formName.unit" disabled v-if="deptFlage" /> label="单位"
<a-select v-else placeholder="请选择归属部门" v-model:value="formName.unit" @change="deptIdChangeFunction"> name="unit"
<a-select-option v-for="(item, index) in deptNameAll" :key="`${index}-${item}`" :value="item.name"> :rules="[{ required: true, message: '请输入单位' }]"
>
<a-input
placeholder="请输入单位"
v-model:value="formName.unit"
disabled
v-if="deptFlage"
/>
<a-select
v-else
placeholder="请选择归属部门"
v-model:value="formName.unit"
@change="deptIdChangeFunction"
>
<a-select-option
v-for="(item, index) in deptNameAll"
:key="`${index}-${item}`"
:value="item.name"
>
{{ item.name }} {{ item.name }}
</a-select-option> </a-select-option>
</a-select> </a-select>
@ -45,29 +102,63 @@
</div> </div>
<div class="base-info" v-if="flag"> <div class="base-info" v-if="flag">
<div style="margin-bottom: 24px"> <div style="margin-bottom: 24px">
<a-form-item style="margin-bottom: 0" label="应用系统" name="applicationSystem" <a-form-item
:rules="[{ required: true, message: '请选择应用系统' }]"> style="margin-bottom: 0"
<a-select v-model:value="formName.applicationSystem" show-search placeholder="请选择应用系统" label="应用系统"
style="width: 230px" :options="systemOptions" @focus="handleFocus" @blur="handleBlur" name="applicationSystem"
@change="systemHandleChange" @search="systemHandleSearch"></a-select> :rules="[{ required: true, message: '请选择应用系统' }]"
>
<a-select
v-model:value="formName.applicationSystem"
show-search
placeholder="请选择应用系统"
style="width: 230px"
:options="systemOptions"
@focus="handleFocus"
@blur="handleBlur"
@change="systemHandleChange"
@search="systemHandleSearch"
></a-select>
</a-form-item> </a-form-item>
<span style="font-size: 12px; color: #666; padding-left: 106px"> <span
style="font-size: 12px; color: #666; padding-left: 106px"
>
如选项没有系统请新增 如选项没有系统请新增
</span> </span>
</div> </div>
<a-form-item class="applicationScene" label="应用领域" name="applicationScene" <a-form-item
:rules="[{ required: true, message: '请选择应用领域' }]" style="width: 6.93rem"> class="applicationScene"
<a-select v-model:value="formName.applicationScene" :options="applicationSceneOpthion" mode="tags" label="应用领域"
:size="size" placeholder="请选择应用领域" :filterOption="false" :searchValue="false" name="applicationScene"
style="width: 5.87rem"></a-select> :rules="[{ required: true, message: '请选择应用领域' }]"
style="width: 6.93rem"
>
<a-select
v-model:value="formName.applicationScene"
:options="applicationSceneOpthion"
mode="tags"
:size="size"
placeholder="请选择应用领域"
:filterOption="false"
:searchValue="false"
style="width: 5.87rem"
></a-select>
</a-form-item> </a-form-item>
</div> </div>
<div> <div>
<a-form-item label="需求依据" name="applicationBackground" :rules="[ <a-form-item
label="需求依据"
name="applicationBackground"
:rules="[
{ required: true, message: '请输入需求依据' }, { required: true, message: '请输入需求依据' },
{ min: 50, message: '需求依据最少为50个字' }, { min: 50, message: '需求依据最少为50个字' },
]"> ]"
<a-textarea placeholder="请输入需求依据" v-model:value="formName.applicationBackground" :rows="4" /> >
<a-textarea
placeholder="请输入需求依据"
v-model:value="formName.applicationBackground"
:rows="4"
/>
</a-form-item> </a-form-item>
</div> </div>
@ -75,9 +166,20 @@
<div v-if="iskfq && isXiHaiAn"> <div v-if="iskfq && isXiHaiAn">
<a-row style="margin-top: 0.4rem"> <a-row style="margin-top: 0.4rem">
<a-col :span="24"> <a-col :span="24">
<a-form-item name="attachment" label="附件上传" class="introduction" :rules="[{ required: true, message: '请上传附件' }]"> <a-form-item
<a-upload :max-count="1" accept=".doc,.docx,pdf" v-model:file-list="fileList" name="attachment"
:action="`${apiURL}/upload`" @remove="handleRemove" @change="roomUpload"> label="附件上传"
class="introduction"
:rules="[{ required: true, message: '请上传附件' }]"
>
<a-upload
:max-count="1"
accept=".doc,.docx,pdf"
v-model:file-list="fileList"
:action="`${apiURL}/upload`"
@remove="handleRemove"
@change="roomUpload"
>
<a-button> <a-button>
<upload-outlined>选择上传附件</upload-outlined> <upload-outlined>选择上传附件</upload-outlined>
</a-button> </a-button>
@ -90,16 +192,31 @@
</a-row> </a-row>
<a-row> <a-row>
<a-col :span="24" style="margin-left: 106px"> <a-col :span="24" style="margin-left: 106px">
<a href="/static/download/感知资源申请表.doc" download="感知资源申请表">感知资源申请表模板下载</a> <a
href="/static/download/感知资源申请表.doc"
download="感知资源申请表"
>
感知资源申请表模板下载
</a>
</a-col> </a-col>
</a-row> </a-row>
</div> </div>
<div class="bottom-btn"> <div class="bottom-btn">
<a-button class="cancel-apply" type="primary" html-type="cancle" @click="resetFields()"> <a-button
class="cancel-apply"
type="primary"
html-type="cancle"
@click="resetFields()"
>
退出申请 退出申请
</a-button> </a-button>
<a-button class="confirm-apply" type="primary" html-type="submit" @click="processStartHandle()"> <a-button
class="confirm-apply"
type="primary"
html-type="submit"
@click="processStartHandle()"
>
提交申请 提交申请
</a-button> </a-button>
</div> </div>
@ -143,6 +260,7 @@ import { sgcDel, getApplyForm } from '@/api/personalCenter'
import { pageWithAttrs, updateIntegrationServices } from '@/api/home' import { pageWithAttrs, updateIntegrationServices } from '@/api/home'
import { DETAIL_PAGE_CONTENT_DEFAULT_TAB } from '@/global/GlobalConfig.js' import { DETAIL_PAGE_CONTENT_DEFAULT_TAB } from '@/global/GlobalConfig.js'
import { getIntegrationDetail, soldierApply } from '@/api/home' import { getIntegrationDetail, soldierApply } from '@/api/home'
import { useStore } from 'vuex'
import * as moment from 'moment' import * as moment from 'moment'
export default { export default {
@ -154,6 +272,8 @@ export default {
}, },
setup() { setup() {
const router = useRouter() const router = useRouter()
const store = useStore()
const deptName = store.getters['user/deptName']
const disabled = ref(false) const disabled = ref(false)
const flag = ref(false) const flag = ref(false)
const list = ref(JSON.parse(localStorage.getItem('applyList'))) const list = ref(JSON.parse(localStorage.getItem('applyList')))
@ -211,8 +331,17 @@ export default {
// 西-- // 西--
const isCamera = ref(false) const isCamera = ref(false)
// 西- // 西-
let note1 = JSON.parse(list.value[0] && list.value[0].arr && list.value[0].arr[0].note1 || "[]"); let note1 = JSON.parse(
let iskfq = ref(note1.some(v => v.managementUnitName == '开发区公安局' || v.managementUnitName == '开发区公安分局')) (list.value[0] && list.value[0].arr && list.value[0].arr[0].note1) ||
'[]'
)
let iskfq = ref(
note1.some(
(v) =>
v.managementUnitName == '开发区公安局' ||
v.managementUnitName == '开发区公安分局'
)
)
if ( if (
list.value[0] && list.value[0] &&
list.value[0].arr && list.value[0].arr &&
@ -661,11 +790,14 @@ export default {
if (res.data.data.records.length == 0) { if (res.data.data.records.length == 0) {
message.warning('该关键词,暂无应用资源!') message.warning('该关键词,暂无应用资源!')
} else { } else {
//
res.data.data.records.map((val) => { res.data.data.records.map((val) => {
if (val.deptName === deptName) {
systemOptions2.value.push({ systemOptions2.value.push({
value: val.name, value: val.name,
label: val.name, label: val.name,
}) })
}
}) })
// console.log('===================>', systemOptions2.value) // console.log('===================>', systemOptions2.value)
} }
@ -755,7 +887,11 @@ export default {
query: { query: {
select: DETAIL_PAGE_CONTENT_DEFAULT_TAB, select: DETAIL_PAGE_CONTENT_DEFAULT_TAB,
// //
facilitiesType: list.value[0] && list.value[0].arr && list.value[0].arr[0] && list.value[0].arr[0].type facilitiesType:
list.value[0] &&
list.value[0].arr &&
list.value[0].arr[0] &&
list.value[0].arr[0].type,
}, },
}) })
}, 1000) }, 1000)

View File

@ -47,6 +47,7 @@ const integrationOrder = reactive({
// -- // --
const changeOrder = (i, val, type) => { const changeOrder = (i, val, type) => {
console.log('i, val, type------------>', i, val, type); console.log('i, val, type------------>', i, val, type);
integrationOrder.orderField = val integrationOrder.orderField = val
integrationOrder.orderType = type; integrationOrder.orderType = type;

View File

@ -230,6 +230,21 @@
</span> </span>
</template> </template>
</div> </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> <div v-else>
发布时间 发布时间
<template v-if="item.createDate"> <template v-if="item.createDate">
@ -989,7 +1004,7 @@
margin: 0 10px 0 0; margin: 0 10px 0 0;
.header-right { .header-right {
display: flex; // display: flex;
font-size: 14px; font-size: 14px;
color: #212121; color: #212121;

View File

@ -91,6 +91,10 @@ export default defineComponent({
}) })
} }
treeData.value = res.data && res.data.data || [] treeData.value = res.data && res.data.data || []
//
if(res.data && res.data.data.length == 1) {
showBottom(treeData.value[0])
}
} }
} }
mybus.on('getDeptList', () => { mybus.on('getDeptList', () => {

View File

@ -480,6 +480,7 @@ import moment from 'moment'
const props = defineProps({ const props = defineProps({
// //
searchValue: { type: String, default: '' }, searchValue: { type: String, default: '' },
searchType: { type: String, default: '' },
}) })
const current = ref(1) const current = ref(1)
const videoTotal = ref(0) const videoTotal = ref(0)
@ -621,6 +622,9 @@ const lookData = ref({})
if (props.searchValue) { if (props.searchValue) {
mapSearchParam.value.cameraName = props.searchValue mapSearchParam.value.cameraName = props.searchValue
} }
if (props.searchType) {
tabClick(0, props.searchType.value)
}
// //
let formPage = router.currentRoute.value.query.formPage || '' let formPage = router.currentRoute.value.query.formPage || ''
// -- // --
@ -835,6 +839,7 @@ const look = (row) => {
} }
// //
const onSearch = (searchValue) => { const onSearch = (searchValue) => {
debugger
searchData() searchData()
chengguoSearch() chengguoSearch()
} }
@ -1128,14 +1133,6 @@ const selectType = ref('政务云资源')
let tableHeight = ref('600') let tableHeight = ref('600')
//tab //tab
const tabClick = (indexFather, name) => { const tabClick = (indexFather, name) => {
console.log(
'点击tab================>',
indexFather,
name,
clickList.value,
clickList.value[indexFather]
)
selectedRowKeys.value = [] selectedRowKeys.value = []
selectedList.value = [] selectedList.value = []
if (clickList.value[indexFather].content.indexOf(name) != -1) { if (clickList.value[indexFather].content.indexOf(name) != -1) {

View File

@ -146,17 +146,18 @@ const getAppResources = (type, obj) => {
num: res.data.data[key], num: res.data.data[key],
}) })
} }
} else if(key !== '云资源') { //-- }
else {
jcList.value.push({ jcList.value.push({
name: key, name: key,
num: res.data.data[key], num: res.data.data[key],
}) })
} }
} }
jcList.value.push({ // jcList.value.push({
name: '会客厅', // name: '',
num: 4, // num: 4,
}) // })
// 西- // 西-
if (whoShow1.value.itShowXiHaiAn) { if (whoShow1.value.itShowXiHaiAn) {
getSoldierData('无人机') getSoldierData('无人机')
@ -328,11 +329,18 @@ const selectOne11 = (name) => {
}) })
} }
const selectOne2 = (name) => { const selectOne2 = (name) => {
console.log('点击===============》', name) let names=''
if(name ==='云资源'){
names='政务云资源'
} else if(name ==='会客厅'){
names='城市云脑会客厅'
}else{
names=name
}
router.push({ router.push({
path: '/DetailsPageconetent', path: '/DetailsPageconetent',
query: { query: {
type: name, type: names,
select: '基础设施', select: '基础设施',
}, },
}) })

View File

@ -62,7 +62,7 @@
<a-button type="primary" @click="modify(props.refObj.id, item)" v-if="item.backToFirst"> <a-button type="primary" @click="modify(props.refObj.id, item)" v-if="item.backToFirst">
修改 修改
</a-button> </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"> @confirm="endThis(item.instanceId)" @cancel="cancel">
<a-button type="primary" danger style="margin-left: 10px"> <a-button type="primary" danger style="margin-left: 10px">
撤回申请 撤回申请
@ -463,7 +463,19 @@ const openView = (url) => {
} }
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.aaa{
margin-right: 30px;
}
:deep(.ant-popover-inner) {
position: fixed !important;
margin-right: 100px;
}
.title { .title {
font-size: 0.18rem; font-size: 0.18rem;
color: #000; color: #000;

View File

@ -13,7 +13,7 @@
<div class="title">基本信息</div> <div class="title">基本信息</div>
<a-popconfirm <a-popconfirm
v-if="!props.refObj.ended" v-if="!props.refObj.ended"
title="是否终止此流程?" title="是否撤回此流程?"
ok-text="是" ok-text="是"
cancel-text="否" cancel-text="否"
@confirm="endThis" @confirm="endThis"