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 {
this.total = this.mixinViewModuleOptions.getDataListIsPage ? res.data.total : 0
}
console.log('数据列表', this.dataList, this.mixinViewModuleOptions.getDataListURL)
if (this.dataList[0].type === '组件服务') {
this.dataList.map(val => {

View File

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

View File

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

View File

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

View File

@ -58,6 +58,7 @@
<el-select
v-model="abilityDepartment"
placeholder="请选择部门"
filterable
clearable
>
<el-option label="全部" value=""></el-option>
@ -94,6 +95,11 @@
$t('reset')
}}</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> -->
</el-form>
<el-card shadow="never" class="aui-card--fill" v-if="homeIsShow">
<div class="mod-demand__bsdemand">
@ -134,9 +140,12 @@
<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>
@ -213,6 +222,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"
>
@ -273,12 +284,14 @@
</template>
<script>
import Cookies from 'js-cookie'
import componentServices from './componentServices.vue'
import AbilityDetail from './components/abilityDetails'
import applicationResources from './applicationResources.vue'
import ComponentUsed from './componentUsed.vue'
import { mapState } from 'vuex'
import qs from 'qs'
import Template from '../devtools/template.vue'
// import { mapState } from 'vuex'
// const props = defineProps({
// processDefinitionName: { type: String, default: null },
// businessKey: { type: String, default: null },
@ -288,9 +301,15 @@ 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: '',
token: Cookies.get('ucsToken'),
detailType: '',
detailParamss: {},
isBack: true,
@ -377,6 +396,7 @@ export default {
{ name: '会议室', value: 6 }
],
tableData: [],
tableDataClone: [],
tableData2: [
{
approveStatus: '',
@ -407,6 +427,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.name })
})
})
//
// const d = new Date()
// let year1, month1, day1
@ -432,9 +459,18 @@ 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
},
@ -529,7 +565,14 @@ 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,
deptId: this.abilityDepartment,
startDate: this.startDate,
endDate: this.endDate
})
})
},
// 使-使
@ -587,7 +630,14 @@ 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,
deptId: this.abilityDepartment,
startDate: this.startDate,
endDate: this.endDate
})
})
},
//
@ -661,7 +711,14 @@ export default {
.then((res) => {
console.log('111111', this.tableData, res.data.data)
this.tableData = res.data.data
this.tableDataClone = res.data.data
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) => {
this.tableData = res.data.data
this.tableDataClone = res.data.data
this.total = res.data.data.total
this.exportExcelCondition = qs.stringify({
approveStatus: this.status,
deptId: this.abilityDepartment,
startDate: this.startDate,
endDate: this.endDate
})
})
},
getReleaseTree (page) {
@ -793,12 +857,14 @@ export default {
// },
// or使
handleChose (index) {
this.checked = false
this.departmentId = index
if (index === 1) {
if (this.choseId === 0) {
if (!this.detailFlag) {
this.detailFlag = !this.detailFlag
}
this.exportExcelType = 'SelectDeptDetailTypeCountList'
this.getFirstTree()
} else if (this.choseId === 1) {
// this.getReleaseTree()
@ -808,6 +874,7 @@ export default {
if (!this.detailFlag) {
this.detailFlag = !this.detailFlag
}
this.exportExcelType = 'SelectApplyDeptDetailTypeCountList'
this.getSecondTree()
} else {
// this.getUsedTree()
@ -815,6 +882,7 @@ export default {
} else if (index === 3) {
this.detailFlag = false
if (this.choseId === 0) {
this.exportExcelType = 'SelectCensusResourceTable'
this.getOneDetail()
} else {
// this.getUsedTree()
@ -822,6 +890,7 @@ export default {
} else if (index === 4) {
this.detailFlag = false
if (this.choseId === 0) {
this.exportExcelType = 'SelectCensusApplyTable'
this.getTwoDetail()
} else {
// this.getUsedTree()
@ -861,6 +930,7 @@ export default {
},
//
goToBack () {
this.checked = false
// departmentId 13 24
this.detailFlag = !this.detailFlag
if (this.departmentId === 3) {
@ -911,6 +981,13 @@ export default {
this.examineStatus = ''
this.abilityDepartment = ''
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.detailFlag) {
// this.handleChose(3)
@ -1100,4 +1177,31 @@ input::placeholder {
text-overflow: ellipsis;
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>

View File

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

View File

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

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>
<el-card shadow="never" class="aui-card--fill">
<div class="mod-sys__menu">

View File

@ -8,8 +8,8 @@
var _global = {}
var CONFIGITEM = {
// version: 'qingdao', //
// version: 'xihaian', // 西
version: 'qingdao', //
version: 'xihaian', // 西
// version: 'qingdao', //
// version: 'zhanTingDev', // dev (2022-09-13:)
// version: 'qingdao', //
//version: 'frp', // 穿
@ -28,7 +28,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',
},
@ -62,8 +63,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/',

View File

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

View File

@ -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++
}
}
})

View File

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

View File

@ -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;

View File

@ -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;

View File

@ -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', () => {

View File

@ -480,6 +480,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 +622,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 +839,7 @@ const look = (row) => {
}
//
const onSearch = (searchValue) => {
debugger
searchData()
chengguoSearch()
}
@ -1128,14 +1133,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) {

View File

@ -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: '基础设施',
},
})

View File

@ -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;

View File

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