Commit 5e9334ea authored by levante's avatar levante

12

parents 70b5ccdf 9978c122
......@@ -13,22 +13,34 @@
<a-sub-menu :key="menu.name">
<span slot="title">
<a-icon :type="menu.meta.menuIcon?menu.meta.menuIcon:'bars'" />
<span>{{menu.meta.title}}</span>
</span>
<template v-for="child in menu.children">
<a-menu-item :key="child.key" @click="onclick(child.name)">
<!-- <a-menu-item :key="child.key" @click="onclick(child.name)">
<a-icon :type="child.meta.menuIcon?child.meta.menuIcon:'bars'" />
{{child.meta.title}}
</a-menu-item> -->
<template v-if="child.meta.title == '系统信息配置' ||child.meta.title == '拓展信息管理' || child.meta.title == '日志管理'">
<a-menu-item v-if="$store.state.hasAllRight" :key="child.key" @click="onclick(child.name)">
<a-icon :type="child.meta.menuIcon?child.meta.menuIcon:'bars'" />
{{child.meta.title}}
</a-menu-item>
</template>
<a-menu-item v-else :key="child.key" @click="onclick(child.name)">
<a-icon :type="child.meta.menuIcon?child.meta.menuIcon:'bars'" />
{{child.meta.title}}
</a-menu-item>
</template>
</a-sub-menu>
</template>
<template v-else>
<!-- <template v-else>
<a-menu-item :key="menu.name" @click="onclick(menu.name)">
<a-icon :type="menu.meta.menuIcon?menu.meta.menuIcon:'bars'" />
{{menu.meta.title}}
</a-menu-item>
</template>
</template> -->
</template>
</template>
</a-menu>
......@@ -56,70 +68,70 @@ export default {
},
},
mounted(){
this.$ajax.get({
url: this.$api.GET_USER_INFO,
}).then(res => {
if(res.code == 200) {
this.isAllPerm = res.data.content.isAllPerm
console.log(this.isAllPerm)
let menus=[]
let tempmenu = []
let isLoadExtendMenu = this.$cookie.get('customKeyEnable')
for(let i=0;i<routes.length;i++){
if(!!routes[i].children){
for(let j=0;j<routes[i].children.length;j++){
if(!!this.isAllPerm) { // 超管访问
if(!!routes[i].children[j].meta.menuIcon && routes[i].children[j].name == 'systemManagement' && isLoadExtendMenu == 'false'){
let target = routes[i].children[j].children
if(target.length > 0) {
for(let k = 0 ; k < target.length; k++) {
if(target[k].name == 'tbls') {
if(isLoadExtendMenu == 'true') {
tempmenu.push(target[k])
}
} else {
tempmenu.push(target[k])
}
}
}
let lusso = routes[i].children[j]
lusso.children = []
lusso.children = tempmenu
menus.push(lusso)
} else if (!!routes[i].children[j].meta.menuIcon) {
menus.push(routes[i].children[j])
}
// this.$ajax.get({
// url: this.$api.GET_USER_INFO,
// }).then(res => {
// if(res.code == 200) {
// this.isAllPerm = res.data.content.isAllPerm
// console.log(this.isAllPerm)
// let menus=[]
// let tempmenu = []
// let isLoadExtendMenu = this.$cookie.get('customKeyEnable')
// for(let i=0;i<routes.length;i++){
// if(!!routes[i].children){
// for(let j=0;j<routes[i].children.length;j++){
// if(!!this.isAllPerm) { // 超管访问
// if(!!routes[i].children[j].meta.menuIcon && routes[i].children[j].name == 'systemManagement' && isLoadExtendMenu == 'false'){
// let target = routes[i].children[j].children
// if(target.length > 0) {
// for(let k = 0 ; k < target.length; k++) {
// if(target[k].name == 'tbls') {
// if(isLoadExtendMenu == 'true') {
// tempmenu.push(target[k])
// }
// } else {
// tempmenu.push(target[k])
// }
// }
// }
// let lusso = routes[i].children[j]
// lusso.children = []
// lusso.children = tempmenu
// menus.push(lusso)
// } else if (!!routes[i].children[j].meta.menuIcon) {
// menus.push(routes[i].children[j])
// }
} else if(!this.isAllPerm) { // 非超管访问
if(routes[i].children[j].meta.isAllPerm == false) {
if(!!routes[i].children[j].meta.menuIcon && routes[i].children[j].name == 'systemManagement' && isLoadExtendMenu == 'false'){
let target = routes[i].children[j].children
if(target.length > 0) {
for(let k = 0 ; k < target.length; k++) {
if(target[k].name == 'tbls') {
if(isLoadExtendMenu == 'true') {
tempmenu.push(target[k])
}
} else {
tempmenu.push(target[k])
}
}
}
let lusso = routes[i].children[j]
lusso.children = []
lusso.children = tempmenu
menus.push(lusso)
} else if (!!routes[i].children[j].meta.menuIcon) {
menus.push(routes[i].children[j])
}
}
}
}
}
}
this.menus=menus
}
})
// } else if(!this.isAllPerm) { // 非超管访问
// if(routes[i].children[j].meta.isAllPerm == false) {
// if(!!routes[i].children[j].meta.menuIcon && routes[i].children[j].name == 'systemManagement' && isLoadExtendMenu == 'false'){
// let target = routes[i].children[j].children
// if(target.length > 0) {
// for(let k = 0 ; k < target.length; k++) {
// if(target[k].name == 'tbls') {
// if(isLoadExtendMenu == 'true') {
// tempmenu.push(target[k])
// }
// } else {
// tempmenu.push(target[k])
// }
// }
// }
// let lusso = routes[i].children[j]
// lusso.children = []
// lusso.children = tempmenu
// menus.push(lusso)
// } else if (!!routes[i].children[j].meta.menuIcon) {
// menus.push(routes[i].children[j])
// }
// }
// }
// }
// }
// }
// this.menus=menus
// }
// })
},
computed: {
menus(){
......
{
"Layout": [
{
"path": "/documents/fiveSearch", "name": "fiveSearch",
"meta": { "title": "物业三查", "menuPath": true,"authCode":"0007", "menuIcon": "profile", "hideInBread": true },
"children": [
{
"path": "/documents/fiveSearch/managerSelfCheckList", "name": "managerSelfCheckList",
"meta": { "title": "小区经理自查", "menuPath": true,"authCode":"000701", "hideInBread": false},
"children": [
{
"path": "/documents/fiveSearch/managerSelfCheckList/managerCheckList", "name": "managerCheckList",
"meta": { "title": "小区经理自查检查单列表","authCode":"000701", "menuPath": false, "hideInBread": false }
},
{
"path": "/documents/fiveSearch/managerSelfCheckList/managerCheckInfo", "name": "managerCheckInfo",
"meta": { "title": "小区经理自查检查单详情","authCode":"00070101", "menuPath": false, "hideInBread": false }
},
{
"path": "/documents/fiveSearch/managerSelfCheckList/managerAllIn", "name": "allIn",
"meta": { "title": "街道检查情况汇总","authCode":"00070102", "menuPath": false, "hideInBread": false }
}
]
},
{
"path": "/documents/fiveSearch/doubleWeekCheckList", "name": "doubleWeekCheckList",
"meta": { "title": "物企双周查","authCode":"000702", "menuPath": true, "hideInBread": false },
"children": [
{
"path": "/documents/fiveSearch/doubleWeekCheckList/doubleCheckList", "name": "doubleCheckList",
"meta": { "title": "物企双周查列表","authCode":"000702" ,"menuPath": false, "hideInBread": false }
},
{
"path": "/documents/fiveSearch/doubleWeekCheckList/doubleCheckInfo", "name": "doubleCheckInfo",
"meta": { "title": "物企双周查详情","authCode":"00070201", "menuPath": false, "hideInBread": false }
},
{
"path": "/documents/fiveSearch/doubleWeekCheckList/doubleAllIn", "name": "allIn",
"meta": { "title": "街道检查情况汇总","authCode":"00070202", "menuPath": false, "hideInBread": false}
}
]
},
{
"path": "/documents/fiveSearch/monthList", "name": "month",
"meta": { "title": "房办月查","authCode":"0006", "menuIcon": "profile", "menuPath": true, "hideInBread": false },
"children": [
{
"path": "/documents/fiveSearch/monthList/monthListSect", "name": "monthListSect",
"meta": { "title": "房办月查小区列表","authCode":"000704", "menuPath": false, "hideInBread": false },
"children": [
{
"path": "/documents/fiveSearch/monthList/monthListSect/monthInfo", "name": "monthInfo",
"meta": { "title": "检查详情","authCode":"00070401", "menuPath": false, "hideInBread": false }
}
]
}
]
},
{
"path": "/documents/fiveSearch/mutableList", "name": "mutableList",
"meta": { "title": "整改单列表","authCode":"000703", "menuPath": true, "hideInBread": false },
"children": [
{
"path": "/documents/fiveSearch/mutableList/info", "name": "mutableInfo",
"meta": { "title": "整改单详情","authCode":"00070301", "menuPath": false, "hideInBread": false }
}
]
}
]
},
{
"path": "/documents/repair", "name": "repairList",
"meta": { "title": "应急报修","authCode":"0005", "menuIcon": "profile", "menuPath": true, "hideInBread": false },
......@@ -42,71 +111,42 @@
]
},
{
"path": "/documents/fiveSearch", "name": "fiveSearch",
"meta": { "title": "物业五查", "menuPath": true,"authCode":"0007", "menuIcon": "profile", "hideInBread": true },
"path": "/documents/ledger", "name": "ledger",
"meta": { "title": "区房屋台账","authCode":"0008", "menuIcon": "profile", "menuPath": true, "hideInBread": false },
"children": [
{
"path": "/documents/fiveSearch/managerSelfCheckList", "name": "managerSelfCheckList",
"meta": { "title": "小区经理自查", "menuPath": true,"authCode":"000701", "hideInBread": false},
"path": "/documents/ledger/community", "name": "communityList",
"meta": { "title": "住宅房屋","authCode":"0008", "menuIcon": "profile", "menuPath": false, "hideInBread": false },
"children": [
{
"path": "/documents/fiveSearch/managerSelfCheckList/managerCheckList", "name": "managerCheckList",
"meta": { "title": "小区经理自查检查单列表","authCode":"000701", "menuPath": false, "hideInBread": false }
"path": "/documents/ledger/community/info", "name": "communityInfo",
"meta": { "title": "详情","authCode":"0008", "menuIcon": "profile", "menuPath": false, "hideInBread": false }
},
{
"path": "/documents/fiveSearch/managerSelfCheckList/managerCheckInfo", "name": "managerCheckInfo",
"meta": { "title": "小区经理自查检查单详情","authCode":"00070101", "menuPath": false, "hideInBread": false }
"path": "/documents/ledger/community/equipment", "name": "equipment",
"meta": { "title": "设备信息","authCode":"0008", "menuIcon": "profile", "menuPath": false, "hideInBread": false }
},
{
"path": "/documents/fiveSearch/managerSelfCheckList/managerAllIn", "name": "allIn",
"meta": { "title": "街道检查情况汇总","authCode":"00070102", "menuPath": false, "hideInBread": false }
"path": "/documents/ledger/community/building", "name": "communityBuilding",
"meta": { "title": "门牌幢列表","authCode":"0008", "menuIcon": "profile", "menuPath": false, "hideInBread": false }
}
]
},
{
"path": "/documents/fiveSearch/doubleWeekCheckList", "name": "doubleWeekCheckList",
"meta": { "title": "物企双周查","authCode":"000702", "menuPath": true, "hideInBread": false },
"path": "/documents/ledger/NonResident", "name": "NonResident",
"meta": { "title": "非居房屋","authCode":"0008", "menuIcon": "profile", "menuPath": true, "hideInBread": false },
"children": [
{
"path": "/documents/fiveSearch/doubleWeekCheckList/doubleCheckList", "name": "doubleCheckList",
"meta": { "title": "物企双周查列表","authCode":"000702" ,"menuPath": false, "hideInBread": false }
"path": "/documents/ledger/NonResident/info", "name": "NonResidentInfo",
"meta": { "title": "非居详情","authCode":"0008", "menuIcon": "profile", "menuPath": false, "hideInBread": false }
},
{
"path": "/documents/fiveSearch/doubleWeekCheckList/doubleCheckInfo", "name": "doubleCheckInfo",
"meta": { "title": "物企双周查详情","authCode":"00070201", "menuPath": false, "hideInBread": false }
},
{
"path": "/documents/fiveSearch/doubleWeekCheckList/doubleAllIn", "name": "allIn",
"meta": { "title": "街道检查情况汇总","authCode":"00070202", "menuPath": false, "hideInBread": false}
}
]
},
{
"path": "/documents/fiveSearch/mutableList", "name": "mutableList",
"meta": { "title": "整改单列表","authCode":"000703", "menuPath": true, "hideInBread": false },
"children": [
{
"path": "/documents/fiveSearch/mutableList/info", "name": "mutableInfo",
"meta": { "title": "整改单详情","authCode":"00070301", "menuPath": false, "hideInBread": false }
}
]
},
{
"path": "/documents/fiveSearch/monthList", "name": "month",
"meta": { "title": "房办月查","authCode":"0006", "menuIcon": "profile", "menuPath": true, "hideInBread": false },
"children": [
{
"path": "/documents/fiveSearch/monthList/monthListSect", "name": "monthListSect",
"meta": { "title": "房办月查小区列表","authCode":"000704", "menuPath": false, "hideInBread": false },
"children": [
{
"path": "/documents/fiveSearch/monthList/monthListSect/monthInfo", "name": "monthInfo",
"meta": { "title": "检查详情","authCode":"00070401", "menuPath": false, "hideInBread": false }
}
]
"path": "/documents/ledger/NonResident/building", "name": "NonResidentBuilding",
"meta": { "title": "非居门牌幢列表","authCode":"0008", "menuIcon": "profile", "menuPath": false, "hideInBread": false }
}
]
}
]
}
......
......@@ -24,11 +24,7 @@ const appRoutes = [
component: resolve => require(['@/components/Layout'], resolve), //Layout,
children: [
{
path: '/portal-home', name: 'home', component: resolve => require(['@/views/home'], resolve), //Home,
meta: { title: '首页' },
},
{
path: '/dashBoard', name: 'dashBoard', component: resolve => require(['@/views/dashBoard'], resolve), //Home,
path: '/portal-home', name: 'home', component: resolve => require(['@/views/commenHome'], resolve), //Home,
meta: { title: '首页' },
},
{ path: '/person', name: 'person', component: resolve => require(['@/views/person-center'], resolve), //PersonCenter,
......@@ -74,85 +70,113 @@ const appRoutes = [
},
{ // 用户管理
path: '/systemManagement/people', name: 'people', component: resolve => require(['@/views/personal/InternalStaff/index'], resolve), //people,
meta: { title: '用户管理', authCode: '000904', menuPath: true, menuIcon: 'setting', hideInBread: false, },
meta: { title: '用户管理', authCode: '000904', menuPath: true, menuIcon: 'user', hideInBread: false, },
children: [
{
path: '/systemManagement/people/info', name: 'staffInfo', component: resolve => require(['@/views/personal/InternalStaff/info'], resolve), //staffInfo,
meta: { title: '账号详情', hideInBread: false, authCode: '00090401' },
meta: { title: '账号详情', hideInBread: false, authCode: '00090401', menuPath: false},
},
{
path: '/systemManagement/people/createStaff', name: 'createStaff', component: resolve => require(['@/views/personal/InternalStaff/edit'], resolve), //createStaff,
meta: { title: '新增账号', hideInBread: false, authCode: '00090403'},
meta: { title: '新增账号', hideInBread: false, authCode: '00090403', menuPath: false},
},
{
path: '/systemManagement/people/editStaff', name: 'editStaff', component: resolve => require(['@/views/personal/InternalStaff/edit'], resolve), //editStaff,
meta: { title: '修改账号', menuPath: true, hideInBread: false, authCode: '00090402'},
meta: { title: '修改账号', menuPath: false, hideInBread: false, authCode: '00090402', },
children: [
]
},
]
},
// { // 日志管理
// path: '/systemManagement/rizhi', name: 'rizhi', component: resolve => require(['@/views/personal/rizhi/rizhiList'], resolve), //people,
// meta: { title: '日志管理', authCode: '', menuPath: true, menuIcon: 'setting', hideInBread: false, },
// children: [
// {
// path: '/systemManagement/rizhi/info', name: 'rizhiInfo', component: resolve => require(['@/views/personal/rizhi/info'], resolve), //staffInfo,
// meta: { title: '日志管理详情', hideInBread: false, authCode: '' },
// },
// {
// path: '/systemManagement/rizhi/feijuInfo', name: 'feijuInfo', component: resolve => require(['@/views/personal/rizhi/feijuInfo'], resolve), //staffInfo,
// meta: { title: '日志管理详情', hideInBread: false, authCode: '' },
// },
// {
// path: '/systemManagement/rizhi/xitongInfo', name: 'xitongInfo', component: resolve => require(['@/views/personal/rizhi/xitongInfo'], resolve), //staffInfo,
// meta: { title: '日志管理详情', hideInBread: false, authCode: '' },
// },
// {
// path: '/systemManagement/rizhi/zhanghuInfo', name: 'zhanghuInfo', component: resolve => require(['@/views/personal/rizhi/zhanghuInfo'], resolve), //staffInfo,
// meta: { title: '日志管理详情', hideInBread: false, authCode: '' },
// },
// ]
// },
{ // 日志管理
path: '/systemManagement/rizhi', name: 'rizhi', component: resolve => require(['@/views/personal/rizhi/rizhiList'], resolve), //people,
meta: { title: '日志管理', menuPath: true, menuIcon: 'barcode', hideInBread: false, },
children: [
{
path: '/systemManagement/rizhi/info', name: 'rizhiInfo', component: resolve => require(['@/views/personal/rizhi/info'], resolve), //staffInfo,
meta: { title: '日志管理详情', hideInBread: false, menuPath: false },
},
{
path: '/systemManagement/rizhi/yeweiInfo', name: 'yeweiInfo', component: resolve => require(['@/views/personal/rizhi/yewei'], resolve), //staffInfo,
meta: { title: '日志管理详情', hideInBread: false, menuPath: false},
},
{
path: '/systemManagement/rizhi/wuyeInfo', name: 'wuyeInfo', component: resolve => require(['@/views/personal/rizhi/wuyeqiye'], resolve), //staffInfo,
meta: { title: '日志管理详情', hideInBread: false, menuPath: false},
},
{
path: '/systemManagement/rizhi/guanliInfo', name: 'guanliInfo', component: resolve => require(['@/views/personal/rizhi/guanlichu'], resolve), //staffInfo,
meta: { title: '日志管理详情', hideInBread: false, menuPath: false },
},
{
path: '/systemManagement/rizhi/jingliInfo', name: 'jingliInfo', component: resolve => require(['@/views/personal/rizhi/jingli'], resolve), //staffInfo,
meta: { title: '日志管理详情', hideInBread: false, menuPath: false },
},
{
path: '/systemManagement/rizhi/juweiInfo', name: 'juweiInfo', component: resolve => require(['@/views/personal/rizhi/juweihui'], resolve), //staffInfo,
meta: { title: '日志管理详情', hideInBread: false, menuPath: false},
},
{
path: '/systemManagement/rizhi/feijuInfo', name: 'feijuInfo', component: resolve => require(['@/views/personal/rizhi/feijuInfo'], resolve), //staffInfo,
meta: { title: '日志管理详情', hideInBread: false, menuPath: false },
},
{
path: '/systemManagement/rizhi/tuozhanxinxiguanliInfo', name: 'tuozhanxinxiguanliInfo', component: resolve => require(['@/views/personal/rizhi/tuozhanxinxiguanliInfo'], resolve), //staffInfo,
meta: { title: '日志管理详情', hideInBread: false, menuPath: false },
},
{
path: '/systemManagement/rizhi/xitongxinxi', name: 'xitongxinxi', component: resolve => require(['@/views/personal/rizhi/xitongxinxi'], resolve), //staffInfo,
meta: { title: '日志管理详情', hideInBread: false, menuPath: false },
},
{
path: '/systemManagement/rizhi/jueseInfo', name: 'jueseInfo', component: resolve => require(['@/views/personal/rizhi/juese'], resolve), //staffInfo,
meta: { title: '日志管理详情', hideInBread: false, menuPath: false},
},
{
path: '/systemManagement/rizhi/zhanghuInfo', name: 'zhanghuInfo', component: resolve => require(['@/views/personal/rizhi/zhanghuInfo'], resolve), //staffInfo,
meta: { title: '日志管理详情', hideInBread: false, menuPath: false},
},
]
},
]
},
{
path: '/house', name: 'house', component: resolve => require(['@/components/Layout/content-wrapper'], resolve), // ContentWrapper,
meta: { title: '住宅信息', menuPath: true, menuIcon: 'profile', hideInBread: true, requirePerm: false, authCode: '0001' },
meta: { title: '住宅信息', menuPath: true, menuIcon: 'home', hideInBread: true, requirePerm: false, authCode: '0001' },
children: [
{ // 小区列表
path: '/houseData/basicInfo', name: 'basicInfo', component: resolve => require(['@/views/houseData/basicInfo'], resolve), //basicInfo,
meta: { title: '小区列表', menuPath: true, hideInBread: false, authCode: '000101' },
meta: { title: '住宅小区', menuPath: true, hideInBread: false, authCode: '000101', menuIcon: 'home'},
children: [
{
path: '/houseData/basicInfo/:id', name: 'basicView', component: resolve => require(['@/views/houseData/basicView'], resolve), //BasicView,
meta: { title: '小区详细情况', hideInBread: false, authCode: '00010101' },
meta: { title: '小区详细情况', hideInBread: false, authCode: '00010101', menuPath: false },
},
{
path: '/houseData/buildings', name: 'buildings', component: resolve => require(['@/views/houseData/buildings'], resolve), //Buildings,
meta: { title: '门牌栋', hideInBread: false, authCode: '00010103'},
meta: { title: '门牌栋', hideInBread: false, authCode: '00010101', menuPath: false},
children: [
{
path: '/houseData/buildings/:id', name: 'buildingView', component: resolve => require(['@/views/houseData/propertyInfoView'], resolve), //PropertyInfoView,
meta: { title: '门牌栋详情', hideInBread: false, authCode: '00010103'}
meta: { title: '门牌栋详情', hideInBread: false, authCode: '00010101', menuPath: false}
}
]
},
{
path: '/houseData/feeStandard', name: 'feeStandard', component: resolve => require(['@/views/houseData/feeStandard'], resolve), //Buildings,
meta: { title: '物业收费标准', hideInBread: false, },
meta: { title: '物业收费标准', hideInBread: false, menuPath: false},
},
{
path: '/houseData/shebei/:id', name: 'shebei', component: resolve => require(['@/views/houseData/shebei'], resolve), //Shebei,
meta: { title: '设施设备', menuPath: true, hideInBread: false, authCode: '00010101' },
meta: { title: '设施设备', menuPath: true, hideInBread: false, authCode: '00010101', menuPath: false},
},
{
path: '/houseData/shebeikanyan/:id', name: 'shebeiKanyan', component: resolve => require(['@/views/xuhui/shebeiKanyan'], resolve), //Shebei,
meta: { title: '设施设备(勘验)', menuPath: true, hideInBread: false, authCode: '00010101' },
meta: { title: '设施设备(勘验)', menuPath: true, hideInBread: false, authCode: '00010101', menuPath: false },
},
......@@ -160,7 +184,7 @@ const appRoutes = [
},
{//业委会列表
path: '/houseData/indCous', name: 'indCous', component: resolve => require(['@/views/houseData/indCous'], resolve), //IndCous,
meta: { title: '业委会信息列表', menuPath: true, hideInBread: false, authCode: '000102' },
meta: { title: '业委会', menuPath: true, hideInBread: false, menuIcon: 'bank', authCode: '000102' },
children: [
{
path: '/houseData/indCou/:id', name: 'indCouView', component: resolve => require(['@/views/houseData/propertyInfoView'], resolve), //PropertyInfoView,
......@@ -168,11 +192,11 @@ const appRoutes = [
},
{
path: '/houseData/members', name: 'members', component: resolve => require(['@/views/houseData/members'], resolve), //Members,
meta: { title: '业委会成员列表', hideInBread: false, authCode: '00010202'},
meta: { title: '业委会成员列表', hideInBread: false, authCode: '00010201', menuPath: false},
children: [
{
path: '/houseData/member/:id', name: 'memberView', component: resolve => require(['@/views/houseData/propertyInfoView'], resolve), //PropertyInfoView,
meta: { title: '业委会成员详情', hideInBread: false, authCode: '00010202'}
meta: { title: '业委会成员详情', hideInBread: false, authCode: '00010201', menuPath: false}
}
]
},
......@@ -180,27 +204,27 @@ const appRoutes = [
},
{//物业列表
path: '/houseData/propertyInfo', name: 'propertyInfo', component: resolve => require(['@/views/houseData/propertyInfo'], resolve), //PropertyInfo,
meta: { title: '物业企业列表', menuPath: true, hideInBread: false, authCode: '000103' },
meta: { title: '物业企业', menuPath: true, menuIcon: 'appstore', hideInBread: false, authCode: '000103' },
children: [
{
path: '/houseData/propertyInfo/:id', name: 'propertyInfoView', component: resolve => require(['@/views/houseData/propertyInfoView'], resolve), //PropertyInfoView,
meta: { title: '物业服务企业详细情况', hideInBread: false, authCode: '00010301' }
meta: { title: '物业服务企业详细情况', hideInBread: false, authCode: '00010301', menuPath: false}
}
]
},
{ // 小区管理处
path: '/houseData/cmDivision', name: 'cmDivision', component: resolve => require(['@/views/houseData/cmDivision'], resolve), //CmDivision,
meta: { title: '小区管理处列表', menuPath: true, hideInBread: false, authCode: '000104' },
meta: { title: '小区管理处', menuPath: true, menuIcon: 'build', hideInBread: false, authCode: '000104' },
children: [
{
path: '/houseData/cmDivision/:id', name: 'cmDivisionView', component: resolve => require(['@/views/houseData/propertyInfoView'], resolve), //PropertyInfoView,
meta: { title: '小区管理处详细情况', menuPath: true, hideInBread: false, authCode: '00010401' }
meta: { title: '小区管理处详细情况', menuPath: false, hideInBread: false, authCode: '00010401' }
}
]
},
{ // 小区经理
path: '/houseData/managers', name: 'managers', component: resolve => require(['@/views/houseData/managers'], resolve), //Managers,
meta: { title: '小区经理列表', menuPath: true, hideInBread: false, authCode: '000105'},
meta: { title: '小区经理', menuPath: true, hideInBread: false, menuIcon: 'solution', authCode: '000105'},
children: [
{
path: '/houseData/managers/:id', name: 'managerView', component: resolve => require(['@/views/houseData/propertyInfoView'], resolve), //PropertyInfoView,
......@@ -210,7 +234,7 @@ const appRoutes = [
},
{//居委会列表
path: '/houseData/neighborhoodCommittees', name: 'neighborhoodCommittees', component: resolve => require(['@/views/houseData/neighborhoodCommittees'], resolve), //neighborhoodCommittees,
meta: { title: '居委会信息列表', menuPath: true, hideInBread: false, authCode: '000106'},
meta: { title: '居委会', menuPath: true, hideInBread: false, menuIcon: 'shop', authCode: '000106'},
children: [
{
path: '/houseData/neighborhoodCommittees/:id', name: 'neighborhoodCommitteesView', component: resolve => require(['@/views/houseData/propertyInfoView'], resolve), //PropertyInfoView,
......@@ -222,11 +246,11 @@ const appRoutes = [
},
{
path: '/noN', name: 'feiju', redirect: { name: 'home' }, component: resolve => require(['@/components/Layout/content-wrapper'], resolve), //ContentWrapper,
meta: { title: '非居信息', menuPath: true, menuIcon: 'profile', hideInBread: true, authCode: '0002' },
meta: { title: '非居信息', menuPath: true, menuIcon: 'laptop', hideInBread: true, authCode: '0002' },
children: [
{ // 非居列表
path: '/houseData/nonResidents', name: 'nonResidents', component: resolve => require(['@/views/houseData/nonResidents'], resolve), //NonResidents,
meta: { title: '非居项目信息列表', menuPath: true, hideInBread: false, authCode: '000201'},
meta: { title: '非居项目信息列表', menuPath: true, menuIcon: 'laptop', hideInBread: false, authCode: '000201'},
children: [
{
path: '/houseData/nonResident/:id', name: 'nonResidentsView', component: resolve => require(['@/views/houseData/propertyInfoView'], resolve), //PropertyInfoView,
......
......@@ -2,76 +2,19 @@
"Layout": [
{
"path": "/order/disposal", "name": "Disposal",
"meta": { "title": "处置单列表", "menuPath":false, "menuIcon": "profile","hideInBread":false},
"meta": { "title": "处置单列表", "menuPath":true, "menuIcon": "profile","hideInBread":false},
"children":[
{
"path": "/order/disposal/disposalList", "name": "disposalList",
"meta": { "title": "处置单列表", "menuPath":false, "menuIcon": "profile","hideInBread":false},
"meta": { "title": "处置单列表", "menuPath":true, "menuIcon": "profile","hideInBread":false},
"children": [
{
"path": "/order/disposal/disposalView/:id", "name": "DisposalView",
"meta": { "title": "处置单详情", "menuPath":false, "hideInBread":false }
"meta": { "title": "处置单详情", "menuPath":true, "hideInBread":false }
}
]
}
]
},
{
"path": "/question/month", "name": "month",
"meta": { "title": "检查单","menuIcon": "profile", "menuPath":false, "hideInBread":false },
"children":[
{
"path": "/question/month/monthList", "name": "month",
"meta": { "title": "房办月查列表","menuIcon": "profile", "menuPath":false, "hideInBread":false },
"children": [
{
"path": "/question/month/monthInfo", "name": "monthInfo",
"meta": { "title": "检查详情", "menuPath":false, "hideInBread":false }
}
]
}
]
},
{
"path": "/question/repair", "name": "repairList",
"meta": { "title": "应急报修","menuIcon": "profile", "menuPath":false, "hideInBread":false },
"children":[
{
"path": "/question/repair/repairList", "name": "repairList",
"meta": { "title": "应急报修列表","menuIcon": "profile", "menuPath":false, "hideInBread":false },
"children": [
{
"path": "/question/repair/repairInfo", "name": "repairInfo",
"meta": { "title": "报修详情", "menuPath":false, "hideInBread":false }
}
]
}
]
},
{
"path": "/question/tousu", "name": "tousu",
"meta": { "title": "投诉信息", "menuPath": true, "menuIcon": "profile", "hideInBread": true },
"children": [
{
"path": "/question/tousu/tousuQuestion", "name": "tousuQuestion",
"meta": { "title": "投诉问题排行", "menuPath":true, "hideInBread":false},
"children":[
{
"path": "/question/tousu/tousuQuestion/questionInfo", "name": "questionInfo",
"meta": { "title": "投诉问题列表", "menuPath":false, "hideInBread":false }
},
{
"path": "/question/tousu/tousuQuestion/tousuDetails", "name": "tousuDetails",
"meta": { "title": "投诉问题详情", "menuPath":false, "hideInBread":false }
}
]
},
{
"path": "/question/tousu/tousuDensity", "name": "tousuDensity",
"meta": { "title": "投诉密度排行", "menuPath":true, "hideInBread":false}
}
]
}
]
}
......@@ -64,7 +64,8 @@ default: // 默认环境下(开发环境)
// BASE_URL = 'http://31.0.161.39/apiv2'
// BASE_URL = 'http://211.136.105.193/apiv2'
// BASE_URL = 'http://yangpu-hm.omniview.pro/api/v2'
BASE_URL = 'http://pudong.hm.omniview.pro/api/v2'
BASE_URL = 'http://xuhui.hm.omniview.pro/api/v2'
// BASE_URL = 'http://pudong.hm.omniview.pro/api/v2'
// BASE_URL = 'http://211.136.105.193/apiv2'
MOCK_URL = 'https://yapi.omniview.pro/mock/283'
break
......@@ -214,6 +215,7 @@ export default {
GET_ALL_ROLE: '/service-permission/menu/tree', //获取权限
GET_USER_CODE: '/service-permission/user/menus/code', //获取用户权限
GET_USER_PERM: '/service-permission/user/menus/{id}',
ROLE_DETAIL: '/service-permission/roles/{id}', // 查询角色权限
ADD_ROLE_POST: '/service-permission/role', // 新增角色
......@@ -228,7 +230,7 @@ export default {
// PUT_STAFF_LIST: '/service-user-ddd/user', //修改内部人员列表
GET_USERNAME_EXIST: '/service-user-ddd/public/check/username/exist', //校验用户名是否存在
GET_CHECK_PHONE_EXIST: '/public/check/phone/exist', //判断手机是否存在
GET_REDIS: '/service-user-ddd/user/refresh/{id}', //后台刷新redis
GET_REDIS: '/service-permission/login/user/perms{id}', //后台刷新redis
//日志管理
GET_RIZHI: '/service-log/operateRecord', //日志列表
......
......@@ -11,8 +11,8 @@ export const permission = {
url: this.$api.GET_USER_INFO
}).then(res => {
//后台刷新redis
this.$ajax.get({
url: this.$api.GET_REDIS.replace('{id}', res.data.content.id),
this.$ajax.post({
url: this.$api.GET_REDIS.replace('{id}', '?message='+ res.data.content.id),
}).then(res => {
if (res.code == '200') {
console.log(1)
......
<template>
<div class="content">
<xuhui v-if="(this.$api.BASE_URL).indexOf('xuhui') > -1 || (this.$api.BASE_URL).indexOf('31.0.161.39') > -1||(this.$api.BASE_URL).indexOf('pudong') > -1 || (this.$api.BASE_URL).indexOf('211.136.105.193') > -1" />
<home v-else />
</div>
</template>
<script>
import xuhui from '@/views/homeXuhui'
import home from '@/views/home'
export default {
components: {
xuhui,
home
}
}
</script>
<style scoped>
.content{
width: 100%;
height: 100%;
}
</style>
\ No newline at end of file
<template>
<div id="home" class="layoutPadding">
<a-row type="flex" class="align-stretch" style="">
<a-col :span="24">
<a-row type="flex" style="height:100%;">
<a-col :span="6">
<div class="home-card topBox" style="margin-right:10px;">
<a-row>
<a-col :span='7'>
<div class="justify-between topBox" >
<div>
<p class="top-font" >小区数</p>
<span class="top-count" >{{baseData.community}}</span>
</div>
</div>
</a-col>
<a-col :span='12'>
<a-row style="border-left: 1px solid lightgrey; padding-left: 10px; padding-bottom: 5px;">
<a-col :span='16'>
<span class="top-font" > 本月新增 : </span>
</a-col>
<a-col :span='8'>
<span class="top-count-extra" style="cursor: pointer;" >{{2}}</span>
</a-col>
</a-row>
<a-row style="border-left: 1px solid lightgrey; padding-left: 10px;padding-top: 10px;">
<a-col :span='16'>
<span class="top-font" > 本月注销 : </span>
</a-col>
<a-col :span='8'>
<span class="top-count-extra" style="cursor: pointer;">{{3}}</span>
</a-col>
</a-row>
</a-col>
<a-col :span='1' />
<a-col :span='4'>
<div class="align-center" style="margin-top: 0px">
<img src="@/assets/icon/xqs.png" style="width:50px;" alt="">
</div>
</a-col>
</a-row>
<a-row style="border-top:1px solid lightgrey;padding-top: 10px;">
<a-col :span='7'>
商品 : {{332}}
</a-col>
<a-col :span='7'>
直管 : {{224}}
</a-col>
<a-col :span='10'>
保障及其他 : {{321}}
</a-col>
</a-row>
</div>
</a-col>
<a-col :span="6">
<div class="home-card topBox" style="margin-right:10px;">
<a-row>
<a-col :span='7'>
<div class="justify-between topBox" >
<div>
<p class="top-font" >门牌幢</p>
<span class="top-count" >{{baseData.building}}</span>
</div>
</div>
</a-col>
<a-col :span='12'>
<a-row style="border-left: 1px solid lightgrey; padding-left: 10px; padding-bottom: 5px;">
<a-col :span='16'>
<span class="top-font" > 本月增加 : </span>
</a-col>
<a-col :span='8'>
<span class="top-count-extra" style="cursor: pointer;" >{{0}}</span>
</a-col>
</a-row>
<a-row style="border-left: 1px solid lightgrey; padding-left: 10px;padding-top: 10px;">
<a-col :span='16'>
<span class="top-font" > 本月注销 : </span>
</a-col>
<a-col :span='8'>
<span class="top-count-extra" style="cursor: pointer;">{{4}}</span>
</a-col>
</a-row>
</a-col>
<a-col :span='1' />
<a-col :span='4'>
<div class="align-center" style="margin-top: 0px">
<img src="@/assets/icon/mpzs.png" style="width:50px;" alt="">
</div>
</a-col>
</a-row>
<a-row style="border-top:1px solid lightgrey;padding-top: 10px;">
<a-col :span='12'>
有电梯 : {{332}}
</a-col>
</a-row>
</div>
</a-col>
<a-col :span="6">
<div class="home-card topBox" style="margin-right:10px;">
<a-row>
<a-col :span='7'>
<div class="justify-between topBox" >
<div>
<p class="top-font" >物业企业</p>
<span class="top-count" >{{baseData.company}}</span>
</div>
</div>
</a-col>
<a-col :span='12' />
<a-col :span='4'>
<div class="align-center" style="margin-top: 0px">
<img src="@/assets/icon/wyqys.png" style="width:50px;" alt="">
</div>
</a-col>
</a-row>
<a-row style="border-top:1px solid lightgrey;padding-top: 10px;">
<a-col :span='12'>
区属物业 : {{111}}
</a-col>
<a-col :span='12'>
本市注册 : {{222}}
</a-col>
</a-row>
</div>
</a-col>
<a-col :span="6">
<div class="home-card topBox" style="">
<a-row>
<a-col :span='7'>
<div class="justify-between topBox" >
<div>
<p class="top-font" >业委会</p>
<span class="top-count" >{{baseData.ic}}</span>
</div>
</div>
</a-col>
<a-col :span='12' />
<a-col :span='4'>
<div class="align-center" style="margin-top: 0px">
<img src="@/assets/icon/ywhs.png" style="width:50px;" alt="">
</div>
</a-col>
</a-row>
<a-row style="border-top:1px solid lightgrey;padding-top: 10px;">
<a-col :span='12'>
近五个月到期 : {{11}}
</a-col>
<a-col :span='12'>
已过期 : {{5}}
</a-col>
</a-row>
</div>
</a-col>
</a-row>
</a-col>
</a-row>
<a-row class="align-stretch" style="margin-top:10px;">
<a-col :span="6">
<div class="month">
<div class="home-card monthTitle">
<span>房办月查</span>
<span>{{ parseInt(((secRowInfos.HOUSING_OFFICE.count.rectifiedCount/secRowInfos.HOUSING_OFFICE.count.rectifyCount)*100)) }}%</span>
</div>
<div class="home-card monthBox">
<p class="monthBoxTitle">今年完成情况</p>
<div class="monthBoxContent" >
<div class="hoverTest" v-for="item in FB_month" :key="item.name">
<div @click="checkMonth(item)" :class="'monthImg blue '" :style="`background:${item.backgroundColor}; color:${item.color}`">
{{item.name}}
<div class="monthHover" @click="hoverMonth(item)">
<div>
<span>明细</span>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="home-card monthBottom">
<span>整改执行</span>
<span style="fontSize:13px"><span class="monthBottomNum">{{secRowInfos.HOUSING_OFFICE.count.rectifiedCount}}/</span>{{secRowInfos.HOUSING_OFFICE.count.rectifyCount}}</span>
</div>
</div>
</a-col>
<a-col :span="6">
<div class="month">
<div class="home-card monthTitle">
<span>物企双周查</span>
<span>{{ parseInt(((secRowInfos.PROPERTY_BIWEEKLY.count.rectifiedCount/secRowInfos.PROPERTY_BIWEEKLY.count.rectifyCount)*100)) }}%</span>
</div>
<div class="home-card monthBox">
<p class="monthBoxTitle">今年完成情况</p>
<div class="monthBoxContent" >
<div class="hoverTest" v-for="item in WQ_month" :key="item.name">
<div @click="checkMonth(item)" :class="'monthImg blue '" :style="`background:${item.backgroundColor}; color:${item.color}`">
{{item.name}}
<div class="monthHover" @click="hoverMonth(item)">
<div>
<span>明细</span>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="home-card monthBottom">
<span>整改执行</span>
<span style="fontSize:13px"><span class="monthBottomNum">{{secRowInfos.PROPERTY_BIWEEKLY.count.rectifiedCount}}/</span>{{secRowInfos.PROPERTY_BIWEEKLY.count.rectifyCount}}</span>
</div>
</div>
</a-col>
<a-col :span="6">
<div class="month" style="height:100%">
<div class="home-card monthTitle">
<span>物业经理自查</span>
</div>
<div class="home-card monthBox">
<p class="monthBoxTitle" > {{!showMonthOrYear? '本月':'今年'}}完成情况 <span @click="showMonthOrYear=!showMonthOrYear" style="float:right;fontSize:12px;cursor:pointer;color:rgb(80,150,250)">切换今年</span></p>
<div class="monthBoxContent" v-show="showMonthOrYear">
<div class="hoverTest" v-for="item in manager_month" :key="item.name">
<div @click="checkMonth(item)" :class="'monthImg blue'" :style="`background:${item.backgroundColor}; color:${item.color}`">
{{item.name}}
<div class="monthHover" @click="hoverMonth(item)">
<div>
<span>明细</span>
</div>
</div>
</div>
</div>
</div>
<div v-show="!showMonthOrYear" class="calendar">
<!-- <a-calendar id="calendar" :validRange="validRange" :fullscreen="false" /> -->
<table border=0 style="width:100%;height:100%;text-align:center;marginTop:10px">
<thead>
<tr>
<th>周一</th> <th>周二</th> <th>周三</th> <th>周四</th> <th>周五</th> <th>周六</th> <th>周日</th>
</tr>
</thead>
<tbody ref='calendar'>
</tbody>
</table>
</div>
</div>
<div class="home-card monthBottom">
<span>整改执行</span>
<span style="fontSize:13px"><span class="monthBottomNum">{{secRowInfos.COMMUNITY_MANAGER_YEAR.count.rectifiedCount}}/</span>{{secRowInfos.COMMUNITY_MANAGER_YEAR.count.rectifyCount}}</span>
</div>
</div>
</a-col>
<a-col :span="6">
<div class="sec-right">
<div style="">
<a-row>
<a-col :span="24" >
<div class="home-card middle-right" @click="$router.push({path: '/houseData/basicInfo'})">
<img src="@/assets/icon/xqda.png" style="width:40px;margin:0 10%" alt="">
<p style="color:rgb(80,150,250)"> 小区档案</p>
</div>
</a-col>
</a-row>
<a-row>
<a-col :span="24" >
<div class="home-card middle-right" @click="$router.push({path: '/houseData/propertyInfo'})">
<img src="@/assets/icon/wyqyda.png" style="width:40px;margin:0 10%" alt="">
<p style="color:rgb(80,150,250)"> 物业企业档案</p>
</div>
</a-col>
</a-row>
</div>
<div style="flex:1;marginTop:10px; display:flex;flex-direction:column" class="home-card">
<div class="home-card" style="border-bottom:1px solid #ccc;font-weight:550;">
<span>专项检查</span>
</div >
<div style="flex:1;display:flex;flex-direction:column;justify-content:space-around;paddingLeft:10%;font-weight:600;fontSize:15px">
<div style="">
<span ><img src="@/assets/icon/yyzt.png" alt="" style="width:20px;margin-right:3px;"> 已有主题</span>
<span style="float:right;paddingRight:50px;color:rgb(80,150,250)">{{theme}}</span>
</div>
<div>
<span ><img src="@/assets/icon/ywcjcxq.png" alt="" style="width:20px;margin-right:3px;"> 已完成小区</span>
<span style="float:right;paddingRight:50px;color:rgb(80,150,250)">{{sect}}</span>
</div>
<div>
<span ><img src="@/assets/icon/zt.png" alt="" style="width:20px;margin-right:3px;"> 已开整改单</span>
<span style="float:right;paddingRight:50px;color:rgb(80,150,250)">{{receipts}}</span>
</div>
<div>
<span ><img src="@/assets/icon/zt.png" alt="" style="width:20px;margin-right:3px;"> 已完成整改</span>
<span style="float:right;paddingRight:50px;color:rgb(80,150,250)">0</span>
</div>
</div>
</div>
</div>
</a-col>
</a-row>
<a-row class="align-stretch" style="margin-top:10px;">
<a-col :span="12" style="marginRight:10px">
<div class="home-card" style="margin-top:10px;">
<ComplaintsTrain moduletitle="投诉问题" />
</div>
</a-col>
<a-col :span="12">
<div class="home-card" style="margin-top:10px;">
<ComplaintsTrain moduletitle="报修" />
</div>
</a-col>
</a-row>
</div>
</template>
<script>
import ComplaintsTrain from '@/views/home/ComplaintsTrain'
import qs from 'qs'
import axios from 'axios'
export default {
name: 'HomePage',
components: {
ComplaintsTrain
},
data() {
return{
sect: 0, //已完成小区
theme: 0, //已有主题
receipts: 0, //已开整改单
baseData: {},
showMonthOrYear: false,
date: new Date(),
titleData: {},
openConfig: false,
disposal: {},
nowMonth: '本月',
checkStreet: 0,
totStreet: 0,
FB_month: [
{name: '1月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '2月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '3月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '4月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '5月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '6月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '7月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '8月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '9月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '10月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
{name: '11月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
{name: '12月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
],
WQ_month: [
{name: '1月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '2月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '3月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '4月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '5月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '6月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '7月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '8月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '9月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '10月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
{name: '11月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
{name: '12月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
],
manager_month: [
{name: '1月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '2月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '3月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '4月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '5月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '6月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '7月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '8月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '9月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '10月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
{name: '11月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
{name: '12月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
],
expired: 0,
secRowInfos: {},
}
},
mounted(){
this.getFBCheck()
this.getCheckData()
this.getSectNum()
this.getbaseInfo()
this.getReceiptsNum()
},
updated(){
this.$nextTick(() => {
this.myCanlendar()
})
},
computed: {
validRange(){ //限制日历只展示当前月的日期
let year = this.$moment(new Date()).format('YYYY')
let month = +this.$moment(new Date()).format('MM')
let last = ''
let start = year+'-'+month+'-01'
let arr1 = [1, 3, 5, 7, 8, 10, 12]
let arr2 = [4, 6, 9, 11]
if (arr1.indexOf(month)!=-1) {
last = year+'-'+month+'-31'
}else if (arr2.indexOf(month)!=-1){
last = year+'-'+month+'-30'
}else if(String((year/4)).indexOf('.')!=-1 ){
last = year+'-'+month+'-28'
}else{
last = year+'-'+month+'-29'
}
return [this.$moment(start), this.$moment(last)]
}
},
methods: {
//日历组件
myCanlendar(){
let dateArr = [...this.$moment(new Date()).format('YYYY-MM-DD').split('-')]
// console.log('获取当前日期:'dateArr)
// 获取当前月对应的最大天数
let maxDayObj = new Date(dateArr[0], dateArr[1], 0)
let maxDay = maxDayObj.getDate()
// console.log('当前月对应的最大天数:'+maxDay)
// 获取当前日期第一天对应周几
let firstDayObj = new Date(dateArr[0], dateArr[1]-1, 1)
let firstDay = firstDayObj.getDay()
firstDay = firstDay == 0 ? 7 : firstDay
// console.log('获取当前日期第一天对应周几:'+firstDay)
// 打印表格
let spaceOnce = true
let tab='<tr>'
for(let i=1;i<=maxDay;i++){
// 打印最前面的空格子,确保只打印一次
if(firstDay>0 && spaceOnce){
for(let j=1;j<firstDay;j++){
tab+= '<td>&nbsp</td>'
}
spaceOnce = false
}
let info = this.secRowInfos.COMMUNITY_MANAGER_MATH.data[i]
let color= 'rgb(226,235,245)'
if (info) {
if (info.rectifiedCount / info.rectifyCount <0.9 ) {
color= '#CC4D4D'
} else if(info.rectifiedCount / info.rectifyCount == 1 || info.rectifyCount == 0) {
color= '#6EB629'
} else {
color= '#FFD400'
}
}
tab+= '<td style="border-radius:20%;text-align:center;border:4px solid #fff;background:'+color+'">'+i+'</td>'
if((i-(8-firstDay))%7==0){
tab+='</tr><tr>'
}
/*
如果某月的第一天是周日,那么格子总数会有42个,反之35个就够了,这里按42个打印
// 打印最后几个空格子, tbody总共应有42个格子,-天数 -前面的空格子
*/
let lastSpace = 42-maxDay-(firstDay-1)
// console.log('最后总共有空格:'+lastSpace+',倒数第二行空格:'+(lastSpace-7))
if(i==maxDay && lastSpace > 0){
for(let k = 0;k<lastSpace;k++){
tab+= '<td>&nbsp</td>'
// 减7是计算倒数第二行最后有几个空格,然后换下一行.
if((lastSpace-7)>0 && k+1 == (lastSpace-7))tab+='</tr><tr>'
}
}
}
tab += '</tr>'
this.$refs.calendar.innerHTML = tab
},
/**
* 获取dashboard数据
*/
getbaseInfo(){
this.$ajax.get({
url: this.$api.GET_RESOURE_LIST,
}).then(res => {
if (res.code === '200') {
this.baseData = this.$com.confirm(res, 'data.content', [])
}
})
this.$ajax.get({
url: this.$api.GET_ALREADY_OR_EXPIRE,
}).then(res => {
if (res.code === '200') {
let inner = res.data.content
this.expired = inner.alreadyExpireCount
this.expireInFiveMonth = inner.willExpireCount
}
})
},
/**
* 获房办月查完成情况
*/
getFBCheck(){
this.$ajax.get({
url: this.$api.GET_FB_WY_MANAGE_CHECK,
}).then(res => {
if (res.code === '200') {
this.secRowInfos = this.$com.confirm(res, 'data.content', {})
// 处理房办的月份颜色
this.secRowInfos.HOUSING_OFFICE.data.forEach((ele, i) => {
if (ele.rectifiedCount/ele.rectifyCount == 1 ) { // 完成率100 绿色
this.FB_month[i].backgroundColor = '#6EB629'
this.FB_month[i].color = '#fff'
}else if(ele.rectifiedCount/ele.rectifyCount <.9){ // 完成率90以下 红色
this.FB_month[i].backgroundColor = '#CC4D4D'
this.FB_month[i].color = '#fff'
} else if(ele.rectifiedCount/ele.rectifyCount>0.9){ // 完成率90到100之间 黄色
this.FB_month[i].backgroundColor = '#FFD400'
this.FB_month[i].color = '#fff'
}else{ // 无数据状态
this.FB_month[i].backgroundColor = 'rgb(226,235,245)'
this.FB_month[i].color = '#2B87FE'
}
})
// 处理物企双周查月份颜色
this.secRowInfos.PROPERTY_BIWEEKLY.data.forEach((ele, i) => {
if (ele.rectifiedCount/ele.rectifyCount == 1 || ele.rectifyCount == 0) { // 完成率100 绿色
this.WQ_month[i].backgroundColor = '#6EB629'
this.WQ_month[i].color = '#fff'
}else if(ele.rectifiedCount/ele.rectifyCount <.9){ // 完成率90以下 红色
this.WQ_month[i].backgroundColor = '#CC4D4D'
this.WQ_month[i].color = '#fff'
} else if(ele.rectifiedCount/ele.rectifyCount>0.9){ // 完成率90到100之间 黄色
this.WQ_month[i].backgroundColor = '#FFD400'
this.WQ_month[i].color = '#fff'
}else{ // 无数据状态
this.WQ_month[i].backgroundColor = 'rgb(226,235,245)'
this.WQ_month[i].color = '#2B87FE'
}
})
// 处理小区经理自查月份颜色
this.secRowInfos.COMMUNITY_MANAGER_YEAR.data.forEach((ele, i) => {
if (ele.rectifiedCount/ele.rectifyCount == 1 ) { // 完成率100 绿色
this.manager_month[i].backgroundColor = '#6EB629'
this.manager_month[i].color = '#fff'
}else if(ele.rectifiedCount/ele.rectifyCount <.9){ // 完成率90以下 红色
this.manager_month[i].backgroundColor = '#CC4D4D'
this.manager_month[i].color = '#fff'
} else if(ele.rectifiedCount/ele.rectifyCount>0.9){ // 完成率90到100之间 黄色
this.manager_month[i].backgroundColor = '#FFD400'
this.manager_month[i].color = '#fff'
}else{ // 无数据状态
this.manager_month[i].backgroundColor = 'rgb(226,235,245)'
this.manager_month[i].color = '#2B87FE'
}
})
}
})
},
/**
* 获取专项检查数据
*/
getCheckData(){
const Axios = axios.create({
baseURL: this.$api.BASE_URL,
timeout: 15000,
})
let config = {
method: 'post',
url: this.$api.GET_CHWECK_DATA,
headers: {
'X-Requested-With': 'XMLHttpRequest',
'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',
},
}
let params= {
pageNo: 1,
pageSize: 10000,
flag: '0',
someday: this.$moment(this.date).format('YYYY')+this.$moment(this.date).format('MM')+this.$moment(this.date).format('DD'),
hpb_id: '310104000000'
}
config = Object.assign(config, { data: qs.stringify(params) })
Axios(config)
.then(res => {
if (res.data.code === '200') {
let data = this.$com.confirm(res, 'data.data.content', [])
this.theme=0
for(let i=0;i<data.length;i++){
if(data[i].THEMETYPE == '专项'){
this.theme+=1
}
}
}
}).catch(err => {
this.$message.error(err.data.msg)
})
},
/**
* 获取已完成检查小区
*/
getSectNum(){
const Axios = axios.create({
baseURL: this.$api.BASE_URL,
timeout: 15000,
})
let config = {
method: 'post',
url: 'http://962121.fgj.sh.gov.cn/wyweb/shanghaiwuye/propertyinspector/api/v1/sharingplatform/sectListForOneDay',
headers: {
'X-Requested-With': 'XMLHttpRequest',
'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',
},
}
let params= {
pageNo: 1,
pageSize: 10000,
someday: this.$moment(this.date).format('YYYY')+this.$moment(this.date).format('MM')+this.$moment(this.date).format('DD'),
hpb_id: '310104000000'
}
config = Object.assign(config, { data: qs.stringify(params) })
Axios(config)
.then(res => {
this.sect =res.data.data.totalRows
}).catch(err => {
this.$message.error(err.data.msg)
})
},
/**
* 获取已开整改单
*/
getReceiptsNum(){
const Axios = axios.create({
baseURL: this.$api.BASE_URL,
timeout: 15000,
})
let config = {
method: 'post',
url: 'http://962121.fgj.sh.gov.cn/wyweb/shanghaiwuye/propertyinspector/api/v1/sharingplatform/sectListForOneDay',
headers: {
'X-Requested-With': 'XMLHttpRequest',
'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',
},
}
let params= {
pageNo: 1,
pageSize: 10000,
isPublish: '1',
someday: this.$moment(this.date).format('YYYY')+this.$moment(this.date).format('MM')+this.$moment(this.date).format('DD'),
hpb_id: '310104000000'
}
config = Object.assign(config, { data: qs.stringify(params) })
Axios(config)
.then(res => {
this.receipts =res.data.data.totalRows
}).catch(err => {
this.$message.error(err.data.msg)
})
},
/**
* 点击月份
*/
checkMonth(item){
this.nowMonth = item.name
this.checkStreet = item.checkStreet
for(let i=0;i<this.FB_month.length;i++){
if(this.FB_month[i].name == item.name){
this.FB_month[i].class='hadCheckMonth'
}else{
this.FB_month[i].class=''
}
}
},
hoverMonth(item){
let time = new Date().getFullYear()
// console.log(time+'-'+parseInt(item.name))
this.$router.push({
name: 'month',
query: {
month: time+'-'+parseInt(item.name)
}
})
},
/**
* 获取房办月查统计
*/
getHouthMonth(){
this.$ajax.get({
url: this.$api.GET_HOUSE_MONTH,
}).then(res => {
if (res.code === '200') {
let cont = this.$com.confirm(res, 'data.content', [])
this.totStreet = cont[0].totStreet
for(let i=0;i<cont.length;i++){
if(cont[i] && cont[i].month && cont[i].month>0){
this.FB_month[cont[i].month-1].check=true
this.FB_month[cont[i].month-1].checkStreet=cont[i].checkStreet
this.FB_month[cont[i].month-1].totStreet=cont[i].totStreet
}
}
let num = Number(this.$moment(this.date).format('MM'))
this.FB_month[num-1].class='hadCheckMonth'
this.nowMonth = this.FB_month[num-1].name
this.checkStreet = this.FB_month[num-1].checkStreet
}
})
},
/**
* 获取处置单统计
*/
getDisposal(){
this.$ajax.get({
url: this.$api.GET_HOME_DISPOSAL,
}).then(res => {
if (res.code === '200') {
this.disposal = this.$com.confirm(res, 'data.content', [])
}
})
},
},
}
</script>
<style scoped>
#home {
width: 100%;
display: flex;
flex-direction: column;
}
.home-card{
background: #fff;
padding: 15px;
}
.topBox{
height: 100%;
}
.top-font{
color:#818283;
font-size:14px;
margin-bottom:3px;
}
.top-count{
color:#000;
font-size:28px;
font-weight:600;
line-height:34px;
}
.top-count-extra{
color:#000;
font-size:24px;
font-weight:600;
line-height:24px;
}
.sec-right{
height: 100%;
display:flex;
flex-direction: column;
}
.middle-right{
text-align:center;
height: calc(50% - 10px);
display:flex;
align-items: center;
cursor: pointer;
}
.middle-right p{
font-size:14px;
margin:5px ;
}
.month{
height:100%;
background:#fff;
margin-right:10px;
display: flex;
justify-content: space-between;
flex-direction: column;
}
.monthTitle,.monthBottom{
display: flex;
justify-content: space-between;
align-items: center;
}
.monthTitle>span{
font-weight:600;
font-size:16px;
}
.monthBottom>span{
font-weight:500;
font-size:14px;
}
.monthBottom .monthBottomNum{
color: rgb(0,103,251);
font-size: 20px;
}
.monthBox{
display:flex;
flex-direction:column;
flex:1;
justify-content: space-between;
border-bottom: 1px dashed #ccc;
/* margin: 0 10px; */
}
.monthBoxTitle{
font-weight: 500;
font-size:14px;
margin-bottom:10px;
}
.monthBoxContent,
.calendar{
display:flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: space-around;
align-items: center;
flex:1;
margin: 15px 0;
}
.monthBoxContent .hoverTest{
width: 21%;
}
.monthImg{
margin:10%;
padding-top: calc(40% - 11px);
padding-bottom: calc(40% - 11px);
text-align:center;
cursor: pointer;
border:1px solid transparent;
border-radius: 14%;
position: relative;
}
.monthHover{
z-index:999;
position:absolute;
bottom:0px;
left:0;
height:50%;
background: rgba(0,0,0,0.5);
width: 100%;
color: #fff;
border-radius: 0 0 14% 14%;
display:none;
line-height:100%;
}
.monthHover div{
width: 100%;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
}
.monthImg:hover .monthHover{
display: block;
}
#home .ant-progress-inner{
border: none;
}
#home .ant-tabs-tab-active.ant-tabs-tab{
line-height: 31px;
}
#home .ant-tabs-tabpane{
padding: 0px 15px 10px 15px;
}
.justify-between{
display:flex;
justify-content:space-between;
}
.align-center{
display:flex;
align-items:center;
}
.align-stretch{
display:flex;
align-items:stretch;
}
.row-number{
height: 18px;
width: 18px;
border-radius: 50%;
text-align: center;
}
.green{
color: #579D1F;
}
.blue{
color: #2B87FE;
}
.hadCheckMonth.green {
border-color: #579D1F;
}
.hadCheckMonth.blue {
border-color: #2B87FE;
}
</style>
<style>
#calendar{
width:100%;
}
#calendar>.ant-fullcalendar-header{
display: none;
}
#calendar .ant-fullcalendar{
border-top:0px;
width: 100%;
}
#calendar .ant-fullcalendar-table{
width: 100%;
/* margin-top: -20px; */
}
#calendar table{
height:auto;
}
#calendar .ant-fullcalendar-disabled-cell{
display: none;
}
</style>
\ No newline at end of file
......@@ -41,13 +41,13 @@
</a-row>
<a-row style="border-top:1px solid lightgrey;padding-top: 10px;">
<a-col :span='7'>
商品 : {{332}}
商品 : {{firstRowInfos.condoRows}}
</a-col>
<a-col :span='7'>
直管 : {{224}}
直管 : {{firstRowInfos.straightAndMixedRows}}
</a-col>
<a-col :span='10'>
保障及其他 : {{321}}
保障及其他 : {{firstRowInfos.otherRows}}
</a-col>
</a-row>
</div>
......@@ -90,7 +90,7 @@
</a-row>
<a-row style="border-top:1px solid lightgrey;padding-top: 10px;">
<a-col :span='12'>
有电梯 : {{332}}
有电梯 : {{firstRowInfos.haveElevatorCount}}
</a-col>
</a-row>
</div>
......@@ -116,10 +116,10 @@
</a-row>
<a-row style="border-top:1px solid lightgrey;padding-top: 10px;">
<a-col :span='12'>
区属物业 : {{111}}
区属物业 : {{firstRowInfos.areaPropCompanyCount}}
</a-col>
<a-col :span='12'>
本市注册 : {{222}}
本市注册 : {{firstRowInfos.cityPropCompanyCount}}
</a-col>
</a-row>
</div>
......@@ -145,10 +145,10 @@
</a-row>
<a-row style="border-top:1px solid lightgrey;padding-top: 10px;">
<a-col :span='12'>
近五个月到期 : {{11}}
近五个月到期 : {{firstRowInfos.willExpireCount}}
</a-col>
<a-col :span='12'>
已过期 : {{5}}
已过期 : {{firstRowInfos.alreadyExpireCount}}
</a-col>
</a-row>
</div>
......@@ -329,6 +329,20 @@ export default {
sect: 0, //已完成小区
theme: 0, //已有主题
receipts: 0, //已开整改单
// 首行四模块下方数据
firstRowInfos: {
alreadyExpireCount: 0,
areaPropCompanyCount: 0,
cityPropCompanyCount: 0,
condoRatio: 0,
condoRows: 0,
haveElevatorCount: 0,
otherRatio: 0,
otherRows: 0,
straightAndMixedRatio: 0,
straightAndMixedRows: 0,
willExpireCount: 0,
},
baseData: {},
showMonthOrYear: false,
......@@ -340,46 +354,46 @@ export default {
checkStreet: 0,
totStreet: 0,
FB_month: [
{name: '1月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '2月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '3月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '4月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '5月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '6月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '7月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '8月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '9月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '10月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
{name: '11月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
{name: '12月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
{name: '1月', check: false, time: this.$moment(new Date()).format('YYYY')+'01', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '2月', check: false, time: this.$moment(new Date()).format('YYYY')+'02', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '3月', check: false, time: this.$moment(new Date()).format('YYYY')+'03', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '4月', check: false, time: this.$moment(new Date()).format('YYYY')+'04', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '5月', check: false, time: this.$moment(new Date()).format('YYYY')+'05', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '6月', check: false, time: this.$moment(new Date()).format('YYYY')+'06', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '7月', check: false, time: this.$moment(new Date()).format('YYYY')+'07', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '8月', check: false, time: this.$moment(new Date()).format('YYYY')+'08', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '9月', check: false, time: this.$moment(new Date()).format('YYYY')+'09', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '10月', check: false, time: this.$moment(new Date()).format('YYYY')+'10', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
{name: '11月', check: false, time: this.$moment(new Date()).format('YYYY')+'11', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
{name: '12月', check: false, time: this.$moment(new Date()).format('YYYY')+'12', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
],
WQ_month: [
{name: '1月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '2月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '3月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '4月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '5月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '6月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '7月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '8月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '9月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '10月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
{name: '11月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
{name: '12月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
{name: '1月', check: false, time: this.$moment(new Date()).format('YYYY')+'01', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '2月', check: false, time: this.$moment(new Date()).format('YYYY')+'02', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '3月', check: false, time: this.$moment(new Date()).format('YYYY')+'03', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '4月', check: false, time: this.$moment(new Date()).format('YYYY')+'04', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '5月', check: false, time: this.$moment(new Date()).format('YYYY')+'05', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '6月', check: false, time: this.$moment(new Date()).format('YYYY')+'06', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '7月', check: false, time: this.$moment(new Date()).format('YYYY')+'07', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '8月', check: false, time: this.$moment(new Date()).format('YYYY')+'08', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '9月', check: false, time: this.$moment(new Date()).format('YYYY')+'09', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '10月', check: false, time: this.$moment(new Date()).format('YYYY')+'10', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
{name: '11月', check: false, time: this.$moment(new Date()).format('YYYY')+'11', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
{name: '12月', check: false, time: this.$moment(new Date()).format('YYYY')+'12', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
],
manager_month: [
{name: '1月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '2月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '3月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '4月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '5月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '6月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '7月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '8月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '9月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '10月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
{name: '11月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
{name: '12月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
{name: '1月', check: false, time: this.$moment(new Date()).format('YYYY')+'01', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '2月', check: false, time: this.$moment(new Date()).format('YYYY')+'02', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '3月', check: false, time: this.$moment(new Date()).format('YYYY')+'03', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '4月', check: false, time: this.$moment(new Date()).format('YYYY')+'04', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '5月', check: false, time: this.$moment(new Date()).format('YYYY')+'05', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '6月', check: false, time: this.$moment(new Date()).format('YYYY')+'06', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '7月', check: false, time: this.$moment(new Date()).format('YYYY')+'07', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '8月', check: false, time: this.$moment(new Date()).format('YYYY')+'08', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '9月', check: false, time: this.$moment(new Date()).format('YYYY')+'09', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);'},
{name: '10月', check: false, time: this.$moment(new Date()).format('YYYY')+'10', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
{name: '11月', check: false, time: this.$moment(new Date()).format('YYYY')+'11', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
{name: '12月', check: false, time: this.$moment(new Date()).format('YYYY')+'12', hover: false, totStreet: 0, checkStreet: 0, class: '', backgroundColor: 'rgb(226,235,245);' },
],
expired: 0,
secRowInfos: {
......@@ -504,8 +518,10 @@ export default {
spaceOnce = false
}
let info = this.secRowInfos.COMMUNITY_MANAGER_MATH && this.secRowInfos.COMMUNITY_MANAGER_MATH.data[i-1] ? this.secRowInfos.COMMUNITY_MANAGER_MATH.data[i-1].rato : 0
let data_time = this.secRowInfos.COMMUNITY_MANAGER_MATH && this.secRowInfos.COMMUNITY_MANAGER_MATH.data[i-1]?this.secRowInfos.COMMUNITY_MANAGER_MATH.data[i-1].checkTime.slice(8, 10):100
let color= 'rgb(226,235,245)'
console.log(dateArr)
if(i == Number(data_time)){
if (info) {
if (info <0.9 ) {
color= '#CC4D4D'
......@@ -514,6 +530,7 @@ export default {
} else {
color= '#FFD400'
}
}
}
// console.log( info,'-------',color)
......@@ -574,9 +591,32 @@ export default {
url: this.$api.GET_ALREADY_OR_EXPIRE,
}).then(res => {
if (res.code === '200') {
let inner = res.data.content
this.expired = inner.alreadyExpireCount
this.expireInFiveMonth = inner.willExpireCount
const {
alreadyExpireCount=0,
areaPropCompanyCount=0,
cityPropCompanyCount=0,
condoRatio=0,
condoRows=0,
haveElevatorCount=0,
otherRatio=0,
otherRows=0,
straightAndMixedRatio=0,
straightAndMixedRows=0,
willExpireCount=0,
} = this.$com.confirm(res, 'data.content', {})
this.firstRowInfos = {
alreadyExpireCount,
areaPropCompanyCount,
cityPropCompanyCount,
condoRatio,
condoRows,
haveElevatorCount,
otherRatio,
otherRows,
straightAndMixedRatio,
straightAndMixedRows,
willExpireCount,
}
}
})
},
......@@ -590,60 +630,72 @@ export default {
if (res.code === '200') {
this.secRowInfos = this.$com.confirm(res, 'data.content', {})
if (this.secRowInfos.HOUSING_OFFICE) {
this.FBPresent = String(this.secRowInfos.HOUSING_OFFICE.rato.value*100).split('.')[0]
this.FBPresent = String(this.secRowInfos.HOUSING_OFFICE.rato*100).split('.')[0]
}
if (this.secRowInfos.PROPERTY_BIWEEKLY) {
this.WYPresent = String(this.secRowInfos.PROPERTY_BIWEEKLY.rato.value*100).split('.')[0]
this.WYPresent = String(this.secRowInfos.PROPERTY_BIWEEKLY.rato*100).split('.')[0]
}
// 处理房办的月份颜色
this.secRowInfos.HOUSING_OFFICE.data.forEach((ele, i) => {
this.FB_month.forEach((item, index) => {
if(ele.years_month == item.time){
if (ele.rato == 1 ) { // 完成率100 绿色
this.FB_month[i].backgroundColor = '#6EB629'
this.FB_month[i].color = '#fff'
this.FB_month[index].backgroundColor = '#6EB629'
this.FB_month[index].color = '#fff'
}else if(ele.rato <.9){ // 完成率90以下 红色
this.FB_month[i].backgroundColor = '#CC4D4D'
this.FB_month[i].color = '#fff'
this.FB_month[index].backgroundColor = '#CC4D4D'
this.FB_month[index].color = '#fff'
} else if(ele.rato>0.9){ // 完成率90到100之间 黄色
this.FB_month[i].backgroundColor = '#FFD400'
this.FB_month[i].color = '#fff'
this.FB_month[index].backgroundColor = '#FFD400'
this.FB_month[index].color = '#fff'
}else{ // 无数据状态
this.FB_month[i].backgroundColor = 'rgb(226,235,245)'
this.FB_month[i].color = '#2B87FE'
this.FB_month[index].backgroundColor = 'rgb(226,235,245)'
this.FB_month[index].color = '#2B87FE'
}
}
})
})
// 处理物企双周查月份颜色
this.secRowInfos.PROPERTY_BIWEEKLY.data.forEach((ele, i) => {
this.WQ_month.forEach((item, index) => {
if(ele.years_month == item.time){
if (ele.rato == 1) { // 完成率100 绿色
this.WQ_month[i].backgroundColor = '#6EB629'
this.WQ_month[i].color = '#fff'
this.WQ_month[index].backgroundColor = '#6EB629'
this.WQ_month[index].color = '#fff'
}else if(ele.rato <.9){ // 完成率90以下 红色
this.WQ_month[i].backgroundColor = '#CC4D4D'
this.WQ_month[i].color = '#fff'
this.WQ_month[index].backgroundColor = '#CC4D4D'
this.WQ_month[index].color = '#fff'
} else if(ele.rato>0.9){ // 完成率90到100之间 黄色
this.WQ_month[i].backgroundColor = '#FFD400'
this.WQ_month[i].color = '#fff'
this.WQ_month[index].backgroundColor = '#FFD400'
this.WQ_month[index].color = '#fff'
}else{ // 无数据状态
this.WQ_month[i].backgroundColor = 'rgb(226,235,245)'
this.WQ_month[i].color = '#2B87FE'
this.WQ_month[index].backgroundColor = 'rgb(226,235,245)'
this.WQ_month[index].color = '#2B87FE'
}
}
})
})
// 处理小区经理自查月份颜色
this.secRowInfos.COMMUNITY_MANAGER_YEAR.data.forEach((ele, i) => {
this.manager_month.forEach((item, index) => {
if(ele.years_month == item.time){
if (ele.rato == 1 ) { // 完成率100 绿色
this.manager_month[i].backgroundColor = '#6EB629'
this.manager_month[i].color = '#fff'
this.manager_month[index].backgroundColor = '#6EB629'
this.manager_month[index].color = '#fff'
}else if(ele.rato <.9){ // 完成率90以下 红色
this.manager_month[i].backgroundColor = '#CC4D4D'
this.manager_month[i].color = '#fff'
this.manager_month[index].backgroundColor = '#CC4D4D'
this.manager_month[index].color = '#fff'
} else if(ele.rato>0.9){ // 完成率90到100之间 黄色
this.manager_month[i].backgroundColor = '#FFD400'
this.manager_month[i].color = '#fff'
this.manager_month[index].backgroundColor = '#FFD400'
this.manager_month[index].color = '#fff'
}else{ // 无数据状态
this.manager_month[i].backgroundColor = 'rgb(226,235,245)'
this.manager_month[i].color = '#2B87FE'
this.manager_month[index].backgroundColor = 'rgb(226,235,245)'
this.manager_month[index].color = '#2B87FE'
}
}
})
})
}
......
<template>
<div>
<!-- 浦东 -->
<div id="home" class="layoutPadding" v-if="(this.$api.BASE_URL).indexOf('pudong') > -1 || (this.$api.BASE_URL).indexOf('211.136.105.193') > -1">
<div class="topBox-l">
<div class="inner" style="">
<div>
<p class="top-font" >小区数</p>
<span class="top-count" >{{data.community}}</span>
</div>
<div class="align-center" >
<img src="@/assets/icon/xqs.png" style="width:50px;" alt="">
</div>
</div>
<div class="inner" style="">
<div>
<p class="top-font" >门牌幢数</p>
<span class="top-count" >{{data.building}}</span>
</div>
<div class="align-center" >
<img src="@/assets/icon/mpzs.png" style="width:50px;" alt="">
</div>
</div>
<div class="inner" style="">
<div>
<p class="top-font" >物业企业数</p>
<span class="top-count" >{{data.company}}</span>
</div>
<div class="align-center" >
<img src="@/assets/icon/ywhs.png" style="width:50px;" alt="">
</div>
</div>
<div class="inner" style="">
<div>
<p class="top-font" >业委会数</p>
<span class="top-count" >{{data.ic}}</span>
</div>
<div class="align-center" >
<img src="@/assets/icon/ywhs.png" style="width:50px;" alt="">
</div>
</div>
</div>
<div class="secBox" v-if="$store.state.userInfos && $store.state.userInfos.isAllPerm">
<IndustrySupervision style="width:35%" />
<ComplaintsTrain moduletitle="投诉直通车" style="width:48%" />
<FileModule style="width:13%;" />
</div>
<div class="thirdBox" v-if="$store.state.userInfos && $store.state.userInfos.isAllPerm">
<ManagementModule moduletitle="信用" style="width:32.5%" />
<ManagementModule moduletitle="风险" style="width:32.5%" />
<ManagementModule moduletitle="分类" style="width:32.5%" />
</div>
<div class="fourthBox" v-if="$store.state.userInfos && $store.state.userInfos.isAllPerm">
<RiskDisposal style="width:30%" />
<RetrofitElevator style="width:32%" />
<ComplaintsTrain moduletitle="应急报修" style="width:36%" />
</div>
</div>
<div id="home" class="layoutPadding" v-else>
<!-- <div id="home" class="layoutPadding" v-else> -->
<a-row type="flex" class="align-stretch">
<a-col :span="24">
<a-row type="flex" style="height:100%;">
<a-col :span="6">
<div class="home-card topBox" style="margin-right:10px;">
<div class="justify-between topBox" >
<div>
<p class="top-font" >小区数</p>
<span class="top-count" >{{data.community}}</span>
</div>
<div class="align-center" >
<img src="@/assets/icon/xqs.png" style="width:50px;" alt="">
</div>
</div>
</div>
</a-col>
<a-col :span="6">
<div class="home-card topBox" style="margin:0px 10px;">
<div class="justify-between topBox" >
<div>
<p class="top-font" >门牌幢数</p>
<span class="top-count" >{{data.building}}</span>
</div>
<div class="align-center" >
<img src="@/assets/icon/mpzs.png" style="width:50px;" alt="">
</div>
</div>
</div>
</a-col>
<a-col :span="6">
<div class="home-card topBox" style="margin:0px 10px;">
<div class="justify-between topBox" >
<div>
<p class="top-font" >物业企业数</p>
<span class="top-count" >{{data.company}}</span>
</div>
<div class="align-center" >
<img src="@/assets/icon/wyqys.png" style="width:50px;" alt="">
</div>
</div>
</div>
</a-col>
<a-col :span="6">
<div class="home-card topBox" style="margin-left:10px;">
<a-row>
<a-col :span='6'>
<div class="justify-between topBox" >
<div>
<p class="top-font" >业委会数</p>
<span class="top-count" >{{data.ic}}</span>
</div>
</div>
</a-col>
<a-col :span='13'>
<a-row style="border-left: 1px solid lightgrey; border-bottom: 1px solid lightgrey; padding-left: 10px; padding-bottom: 5px;">
<a-col :span='16'>
<span class="top-font" >已过期</span>
</a-col>
<a-col :span='8'>
<span class="top-count-extra" style="cursor: pointer;" @click="handleExpired">{{expired}}</span>
</a-col>
</a-row>
<a-row style="border-left: 1px solid lightgrey; padding-left: 10px;padding-top: 10px;">
<a-col :span='16'>
<span class="top-font" >5个月内到期</span>
</a-col>
<a-col :span='8'>
<span class="top-count-extra" style="cursor: pointer;" @click="handleWillExpire">{{expireInFiveMonth}}</span>
</a-col>
</a-row>
</a-col>
<a-col :span='1'></a-col>
<a-col :span='4'>
<div class="align-center" style="margin-top: 10px">
<img src="@/assets/icon/ywhs.png" style="width:50px;" alt="">
</div>
</a-col>
</a-row>
</div>
</a-col>
</a-row>
</a-col>
<!-- <a-col :span="4">
<div class="home-card topBox" style="margin-left:0px 10px; cursor: pointer" @click="handleExpired">
<div class="justify-between topBox" >
<div>
<p class="top-font" >已过期</p>
<span class="top-count" >{{expired}}</span>
</div>
<div class="align-center" >
<img src="@/assets/icon/wyqys.png" style="width:50px;" alt="">
</div>
</div>
</div>
</a-col>
<a-col :span="4">
<div class="home-card topBox" style="margin-left:10px; cursor: pointer" @click="handleWillExpire">
<div class="justify-between topBox" >
<div>
<p class="top-font" >未来5个月将到期</p>
<span class="top-count" >{{expireInFiveMonth}}</span>
</div>
<div class="align-center" >
<img src="@/assets/icon/wyqys.png" style="width:50px;" alt="">
</div>
</div>
</div>
</a-col> -->
</a-row>
<a-row v-if="$store.state.userInfos && $store.state.userInfos.isAllPerm" class="align-stretch" style="margin-top:20px;">
<a-col :span="8">
<div class="month">
<div class="home-card monthTitle">
<span>房办月查</span>
<span>
<span style="font-size:12px;">{{nowMonth}} </span>
<span class="monthTitleNum">
{{checkStreet}} <span style="color:#000;">/{{totStreet}}</span>
</span>
</span>
</div>
<div class="home-card monthBox">
<span style="font-weight:600;">全年情况</span>
<a-row>
<a-col :span="4" class="hoverTest" v-for="item in mounth" :key="item.name">
<div v-if="item.check" @click="checkMonth(item)" :class="'monthImg green '+item.class" :style="'background:url('+ok+') no-repeat center center /cover; '">
{{item.name}}
<div class="monthHover" @click="hoverMonth(item)">
<div>
<span>明细</span>
</div>
</div>
</div>
<div v-else @click="checkMonth(item)" :class="'monthImg blue '+item.class" :style="'background:url('+nm+') no-repeat center center /cover; '">
{{item.name}}
<div class="monthHover" @click="hoverMonth(item)">
<div>
<span>明细</span>
</div>
</div>
</div>
</a-col>
</a-row>
</div>
</div>
</a-col>
<a-col :span="13" class="zxjc">
<div class="jiancha">
<div class="home-card jianchaTitle">
<span>专项检查</span>
<img src="@/assets/icon/tp.png" style="height:20px;" alt="" @click="openOutUrl2">
</div>
<div style="height: calc(100% - 55px);">
<a-row class="jianchaBox">
<a-col :span="12" class="home-card jianchaTheme">
<!-- <div class="justify-between" style="align-items:baseline;">
<span style="font-weight:600;">已查/应查</span>
<span style="font-size:20px;font-weight:600;"><span style="color:#0477FF;">68</span>/124</span>
</div>
<a-progress :percent="68/124*100" size="small" :showInfo="false" :strokeWidth="10" strokeColor="#11C3C4"/> -->
<a-row>
<a-col :span="16" :offset="2">
<span style="font-weight:600;"><img src="@/assets/icon/yyzt.png" alt="" style="width:20px;margin-right:3px;"> 已有主题</span>
</a-col>
<a-col :span="6">
<span class="jianchaThemeNum">{{theme}}</span>
<!-- <span class="jianchaThemeNum">0</span> -->
</a-col>
</a-row>
<a-row>
<a-col :span="16" :offset="2">
<span style="font-weight:600;"><img src="@/assets/icon/ywcjcxq.png" alt="" style="width:20px;margin-right:3px;"> 已完成检查小区</span>
</a-col>
<a-col :span="6">
<span class="jianchaThemeNum">{{sect}}</span>
<!-- <span class="jianchaThemeNum">0</span> -->
</a-col>
</a-row>
<a-row>
<a-col :span="16" :offset="2">
<span style="font-weight:600;"><img src="@/assets/icon/zt.png" alt="" style="width:20px;margin-right:3px;"> 已开整改单</span>
</a-col>
<a-col :span="6">
<span class="jianchaThemeNum">{{receipts}}</span>
<!-- <span class="jianchaThemeNum">0</span> -->
</a-col>
</a-row>
</a-col>
<a-col :span="12" class="home-card jianchaBoxRight">
<div>
<span class="jianchaPeopleTitle">当前检察人员</span>
</div>
<a-row style="height:calc(100% - 34px)">
<a-col :span="12" v-for="(item,i) in people" :key="i" style="font-size:14px;height: 25%;">
<img src="@/assets/icon/peoplebj.png" style="height:16px;margin-right: 5px; margin-top: -3px;"/>{{item.TE_NAME}}
</a-col>
<a-col v-if="people.length == 7" :span="12" style="font-size:14px;height: 25%;">
<img src="@/assets/icon/ddd.png" style="height:16px;margin-right: 5px; margin-top: -3px;"/>
</a-col>
</a-row>
</a-col>
<!-- <a-col :span="8" class="home-card justify-between" style="padding:0px 10px;height:100%;flex-direction:column;">
<div>
<span style="height:30px;display:inline-block;vertical-align: sub;font-weight:600;">已完成整改/已开整改单</span>
</div>
<div>
<div class="justify-between" style="align-items:baseline;font-weight:600;font-size:20px;">
<span style="color:#0477FF;">25%</span>
<span><span style="color:#0477FF;">4</span>/16</span>
</div>
<a-progress :percent="68/124*100" size="small" :showInfo="false" :strokeWidth="10" strokeColor="#11C3C4"/>
</div>
<div>
<div class="justify-between" style="align-items:baseline;">
<span style="font-weight:600;">整改率</span>
<span style="font-size:20px;font-weight:600;color:#0477FF;">16%</span>
</div>
<a-progress :percent="68/124*100" size="small" :showInfo="false" :strokeWidth="10" strokeColor="#11C3C4"/>
</div>
</a-col> -->
</a-row>
</div>
</div>
</a-col>
<a-col :span="3">
<div style="height:100%;margin-left:10px;">
<a-row>
<div class="home-card middle-right" style="margin-bottom: 20px" @click="toFangXunFangTai">
<img src="@/assets/icon/fxft.png" style="width:40px;" alt="">
<p>灾情上报</p>
</div>
</a-row>
<a-row>
<div class="home-card middle-right" @click="$router.push({path: '/houseData/basicInfo'})">
<img src="@/assets/icon/xqda.png" style="width:40px;" alt="">
<p>小区档案</p>
</div>
</a-row>
<a-row>
<div class="home-card middle-right" @click="$router.push({path: '/houseData/propertyInfo'})" style="margin-top:20px;">
<img src="@/assets/icon/wyqyda.png" style="width:40px;" alt="">
<p>物业企业档案</p>
</div>
</a-row>
</div>
</a-col>
</a-row>
<a-row v-if="$store.state.userInfos&&$store.state.userInfos.isAllPerm" class="align-stretch" style="margin-top:20px;">
<a-col :span="8">
<div class="fengxian">
<div class="home-card fengxianTitle">
<span>物业风险发现/处置</span>
<img src="@/assets/icon/qs.png" @click="openOutUrl1" style="height:20px;" alt="">
</div>
<div class="home-card fengxianBox">
<a-row>
<a-col class="justify-between">
<span style="font-size:16px;font-weight:600;">风险场景</span>
<!-- <img src="@/assets/icon/ddd.png" style="height:16px;" alt=""> -->
</a-col>
</a-row>
<a-row class="align-stretch" style="padding:10px 0px;">
<a-col :span="7">
<!-- 特殊处理百分比过大显示就像100% -->
<a-progress type="circle" :percent="(disposal.alreadyDone/disposal.thisYearTotal*100)>89 && (disposal.alreadyDone/disposal.thisYearTotal*100)<100 ? 80:(disposal.alreadyDone/disposal.thisYearTotal*100)" size="small" :showInfo="false" :strokeWidth="15" strokeColor="#46B3FF" :width="60" />
</a-col>
<a-col :span="16">
<div class="fengxianDisposalNum">
<span>已处置数/发现数</span>
<span style="color:#000;font-size:20px;font-weight:700;"><span style="color:#1890ff;">{{disposal.alreadyDone}}</span>/{{disposal.thisYearTotal}}</span>
</div>
</a-col>
</a-row>
<a-row>
<a-col :span="8">
<div style="height:100%">
<span>物业处置</span>
<span class="disposalDetailNum"> {{disposal.wyDone}} </span>
</div>
</a-col>
<a-col :span="8">
<div style="height:100%">
<span>居委处置</span>
<span class="disposalDetailNum"> {{disposal.jwDone}} </span>
</div>
</a-col>
<a-col :span="8">
<div style="height:100%">
<span>网格处置</span>
<span class="disposalDetailNum"> {{disposal.wgDone}} </span>
</div>
</a-col>
</a-row>
<!-- <div class="gayLine" style="margin:10px 0px"></div>
<a-row>
<a-col style="display:flex;justify-content:space-between;">
<span style="font-weight:600;">其他委办局转派物业处置</span>
<img src="@/assets/icon/ddd.png" style="height:16px;" alt="">
</a-col>
</a-row>
<a-row style="padding:10px 0px;display:flex;align-items:stretch;">
<a-col :span="7">
<a-progress type="circle" :percent="12/58*100" size="small" :showInfo="false" :strokeWidth="15" strokeColor="#46B3FF" :width="60" />
</a-col>
<a-col :span="16">
<div style="display:flex;flex-direction:column;justify-content:space-around;height:100%">
<span>已处置数/转派总数</span>
<span style="color:#000;font-size:20px;font-weight:700;"><span style="color:#1890ff;">12</span>/58</span>
</div>
</a-col>
</a-row> -->
</div>
</div>
</a-col>
<a-col :span="8">
<div class="baoxiu">
<div class="home-card baoxiuTitle">
<span>应急报修</span>
</div>
<div class="baoxiuBox">
<div class="repair-top">
<div class="baoxiuSecondTitle">
<p>转派区应急维修中心</p>
<img src="@/assets/icon/ddd.png" alt="" @click="toRepair('1', '2')">
</div>
<div class="baoxiuMiddleBox">
<div>
<a-progress type="circle" :percent="repair.yjwhcomplete/repair.yjwhtotal*100" size="small" :showInfo="false" :strokeWidth="15" strokeColor="#46B3FF" :width="40" />
</div>
<div>
<span style="color:#555;">已完成数/已转派总数</span>
<span style="color:#000;font-size:1.3rem;font-weight:700;"><span style="color:#1890ff;">{{repair.yjwhcomplete}}</span>/{{repair.yjwhtotal}}</span>
</div>
</div>
<div class="baoxiuBottomBox">
<div>
<div class="baoxiuBottomBoxTitle"><span style="color:#555;">及时接单率</span><span style="color:#10C3C4;">{{repair.yjwhreceiveratio}}%</span></div>
<a-progress :percent="repair.yjwhreceiveratio" :showInfo="false" strokeColor="#96DDDE" :strokeWidth="7"/>
</div>
<div>
<div class="baoxiuBottomBoxTitle"><span style="color:#555;">及时处置率</span><span style="color:#10C3C4;">{{repair.yjwhhandleratio}}%</span></div>
<a-progress :percent="repair.yjwhhandleratio" :showInfo="false" strokeColor="#96DDDE" :strokeWidth="7"/>
</div>
</div>
</div>
<div class="repair-btm">
<div class="baoxiuSecondTitle">
<p>转派物业企业报修</p>
<img src="@/assets/icon/ddd.png" alt="" @click="toRepair('2', '1')">
</div>
<div class="baoxiuMiddleBox">
<div>
<a-progress type="circle" :percent="repair.wybxcomplete/repair.wybxtotal*100" size="small" :showInfo="false" :strokeWidth="15" strokeColor="#46B3FF" :width="40" />
</div>
<div>
<span style="color:#555;">已完成数/已转派总数</span>
<span style="color:#000;font-size:1.3rem;font-weight:700;"><span style="color:#1890ff;">{{repair.wybxcomplete}}</span>/{{repair.wybxtotal}}</span>
</div>
</div>
<div class="baoxiuBottomBox">
<div>
<div class="baoxiuBottomBoxTitle"><span style="color:#555;">及时接单率</span><span style="color:#10C3C4;">{{repair.wybxreceiveratio}}%</span></div>
<a-progress :percent="repair.wybxreceiveratio" :showInfo="false" strokeColor="#96DDDE" :strokeWidth="7"/>
</div>
<div>
<div class="baoxiuBottomBoxTitle"><span style="color:#555;">及时处置率</span><span style="color:#10C3C4;">{{repair.wybxhandleratio}}%</span></div>
<a-progress :percent="repair.wybxhandleratio" :showInfo="false" strokeColor="#96DDDE" :strokeWidth="7"/>
</div>
</div>
</div>
</div>
</div>
</a-col>
<a-col :span="8">
<div class="tousu">
<img class="tousuIMG" src="@/assets/icon/sz.png" alt="" @click="toTousu">
<a-tabs class="tousuQuestion" default-active-key="1" :activeKey="activeKey" @change="(key) => changeTabKey(key, 1)" style="height: 100%;" >
<a-tab-pane key="1" tab="投诉问题">
<a-tabs default-active-key="1" :activeKey="activeKey2" @change="(key) => changeTabKey(key, 2)" size="small">
<a-tab-pane key="1" tab="月排行">
<template v-if="tousuQuestionList.M&&tousuQuestionList.M.length>0">
<a-row class="tousuTabTitle">
<a-col :span="18">问题</a-col>
<a-col :span="4" :offset="2"> <span>数量</span> </a-col>
</a-row>
<a-row class="tousuContentRow" v-for="(item,i) in tousuQuestionList.M" :key="i">
<a-col class="tousuRankNum" :span="2">
<div class="row-number" :style="'background:'+(i>2?'#E5E6E7':'#000')+';line-height: 18px;color:'+(i>2?'#000':'#fff')">{{i+1}}</div>
</a-col>
<a-col :span="16">
<div class="tousuContent">
<a-tooltip>
<template slot="title">
{{item.name}}
</template>
{{item.name}}
</a-tooltip>
</div>
</a-col>
<a-col :span="4" :offset="2"> <span style="font-weight:600;">{{item.num}}</span></a-col>
</a-row>
</template>
<template v-else>
<div style="height: 100%;display:flex;align-items:center;justify-content:center;">
<div style="font-size:30px;font-weight:900;color:#ccc;">暂无数据</div>
</div>
</template>
</a-tab-pane>
<a-tab-pane key="2" tab="年度排行">
<template v-if="tousuQuestionList.Y&&tousuQuestionList.Y.length>0">
<a-row class="tousuTabTitle">
<a-col :span="18">问题</a-col>
<a-col :span="4" :offset="2"><span>数量</span></a-col>
</a-row>
<a-row v-for="(item,i) in tousuQuestionList.Y" :key="i" class="tousuContentRow">
<a-col :span="2" class="tousuRankNum">
<div class="row-number" :style="'background:'+(i>2?'#E5E6E7':'#000')+';line-height: 18px;color:'+(i>2?'#000':'#fff')">{{i+1}}</div>
</a-col>
<a-col :span="16">
<div class="tousuContent">
<a-tooltip>
<template slot="title">
{{item.name}}
</template>
{{item.name}}
</a-tooltip>
</div>
</a-col>
<a-col :span="4" :offset="2"> <span style="font-weight:600;">{{item.num}}</span></a-col>
</a-row>
</template>
<template v-else>
<div style="height: 100%;display:flex;align-items:center;justify-content:center;">
<div style="font-size:30px;font-weight:900;color:#ccc;">暂无数据</div>
</div>
</template>
</a-tab-pane>
<a-tab-pane key="3" tab="总排行">
<template v-if="tousuQuestionList.S&&tousuQuestionList.S.length>0">
<a-row class="tousuTabTitle">
<a-col :span="18">问题</a-col>
<a-col :span="4" :offset="2"><span>数量</span></a-col>
</a-row>
<a-row v-for="(item,i) in tousuQuestionList.S" :key="i" class="tousuContentRow">
<a-col :span="2" class="tousuRankNum">
<div class="row-number" :style="'background:'+(i>2?'#E5E6E7':'#000')+';line-height: 18px;color:'+(i>2?'#000':'#fff')">{{i+1}}</div>
</a-col>
<a-col :span="16">
<div class="tousuContent">
<a-tooltip>
<template slot="title">
{{item.name}}
</template>
{{item.name}}
</a-tooltip>
</div>
</a-col>
<a-col :span="4" :offset="2"> <span style="font-weight:600;">{{item.num}}</span></a-col>
</a-row>
</template>
<template v-else>
<div style="height: 100%;display:flex;align-items:center;justify-content:center;">
<div style="font-size:30px;font-weight:900;color:#ccc;">暂无数据</div>
</div>
</template>
</a-tab-pane>
</a-tabs>
</a-tab-pane>
<a-tab-pane key="2" tab="投诉密度" >
<a-tabs default-active-key="1" :activeKey="activeKey2" @change="(key) => changeTabKey(key, 2)" size="small">
<a-tab-pane key="1" tab="月排行">
<template v-if="tousuDensityList.M&&tousuDensityList.M.length>0">
<a-row class="tousuTabTitle">
<a-col :span="15">街道</a-col>
<a-col :span="7" :offset="2"><span>数量</span></a-col>
</a-row>
<a-row v-for="(item,i) in tousuDensityList.M" :key="i" class="tousuContentRow">
<a-col :span="2" class="tousuRankNum">
<div class="row-number" :style="'background:'+(i>2?'#E5E6E7':'#000')+';line-height: 18px;color:'+(i>2?'#000':'#fff')">{{i+1}}</div>
</a-col>
<a-col :span="13">
<div class="tousuContent">
<a-tooltip>
<template slot="title">
{{item.name}}
</template>
{{item.name}}
</a-tooltip>
</div>
</a-col>
<a-col :span="7" :offset="2"> <span style="font-weight:600;">{{Math.round(item.num)}}</span> <span>件/小区</span> </a-col>
</a-row>
</template>
<template v-else>
<div style="height: 100%;display:flex;align-items:center;justify-content:center;">
<div style="font-size:30px;font-weight:900;color:#ccc;">暂无数据</div>
</div>
</template>
</a-tab-pane>
<a-tab-pane key="2" tab="年度排行">
<template v-if="tousuDensityList.Y&&tousuDensityList.Y.length>0">
<a-row class="tousuTabTitle">
<a-col :span="15">街道</a-col>
<a-col :span="7" :offset="2"><span>数量</span></a-col>
</a-row>
<a-row v-for="(item,i) in tousuDensityList.Y" :key="i" class="tousuContentRow">
<a-col :span="2" class="tousuRankNum">
<div class="row-number" :style="'background:'+(i>2?'#E5E6E7':'#000')+';line-height: 18px;color:'+(i>2?'#000':'#fff')">{{i+1}}</div>
</a-col>
<a-col :span="13">
<div class="tousuContent">
<a-tooltip>
<template slot="title">
{{item.name}}
</template>
{{item.name}}
</a-tooltip>
</div>
</a-col>
<a-col :span="7" :offset="2"> <span style="font-weight:600;">{{Math.round(item.num)}}</span> <span>件/小区</span> </a-col>
</a-row>
</template>
<template v-else>
<div style="height: 100%;display:flex;align-items:center;justify-content:center;">
<div style="font-size:30px;font-weight:900;color:#ccc;">暂无数据</div>
</div>
</template>
</a-tab-pane>
<a-tab-pane key="3" tab="总排行">
<template v-if="tousuDensityList.S&&tousuDensityList.S.length>0">
<a-row class="tousuTabTitle">
<a-col :span="15">街道</a-col>
<a-col :span="7" :offset="2"><span>数量</span></a-col>
</a-row>
<a-row v-for="(item,i) in tousuDensityList.S" :key="i" class="tousuContentRow">
<a-col :span="2" class="tousuRankNum">
<div class="row-number" :style="'background:'+(i>2?'#E5E6E7':'#000')+';line-height: 18px;color:'+(i>2?'#000':'#fff')">{{i+1}}</div>
</a-col>
<a-col :span="13">
<div class="tousuContent">
<a-tooltip>
<template slot="title">
{{item.name}}
</template>
{{item.name}}
</a-tooltip>
</div>
</a-col>
<a-col :span="7" :offset="2"> <span style="font-weight:600;">{{Math.round(item.num)}}</span> <span>件/小区</span> </a-col>
</a-row>
</template>
<template v-else>
<div style="height: 100%;display:flex;align-items:center;justify-content:center;">
<div style="font-size:30px;font-weight:900;color:#ccc;">暂无数据</div>
</div>
</template>
</a-tab-pane>
</a-tabs>
</a-tab-pane>
</a-tabs>
</div>
</a-col>
</a-row>
</div>
</div>
</template>
<script>
import ok from '@/assets/icon/ok.png'
import nm from '@/assets/icon/nm.png'
import qs from 'qs'
import axios from 'axios'
import ComplaintsTrain from '@/views/home/ComplaintsTrain'
import EmergencyRepair from '@/views/home/EmergencyRepair'
import IndustrySupervision from '@/views/home/IndustrySupervision'
import ManagementModule from '@/views/home/ManagementModule'
import RetrofitElevator from '@/views/home/RetrofitElevator'
import RiskDisposal from '@/views/home/RiskDisposal'
import FileModule from '@/views/home/FileModule'
export default {
name: 'HomePage',
components: {
ComplaintsTrain,
EmergencyRepair,
IndustrySupervision,
ManagementModule,
RetrofitElevator,
RiskDisposal,
FileModule,
},
data() {
return{
ok,
nm,
date: new Date(),
data: {},
openConfig: false,
disposal: {},
nowMonth: '本月',
checkStreet: 0,
totStreet: 0,
mounth: [
{name: '1月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', },
{name: '2月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', },
{name: '3月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', },
{name: '4月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', },
{name: '5月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', },
{name: '6月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', },
{name: '7月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', },
{name: '8月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', },
{name: '9月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', },
{name: '10月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', },
{name: '11月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', },
{name: '12月', check: false, hover: false, totStreet: 0, checkStreet: 0, class: '', },
],
expired: 0,
expireInFiveMonth: 0,
theme: 0,
sect: 0,
receipts: 0,
people: [],
tousuQuestionList: {
M: [],
Y: [],
S: [],
},
tousuDensityList: {
M: [],
Y: [],
S: [],
},
repair: {
yjwhtotal: 0, //应急维护总数
yjwhcomplete: 0, //应急维护已完成数
yjwhreceiveratio: 0, //应急维护接单率
yjwhhandleratio: 0, //应急维护处置率
wybxtotal: 0, //物业保修总数
wybxcomplete: 0, //物业报修已完成率
wybxreceiveratio: 0, //物业保修接单率
wybxhandleratio: 0, //物业报修处置率
},
activeKey: '1',
activeKey2: '1',
}
},
created(){},
mounted(){
this.getConfig()
this.getList()
this.$ajax.get({
url: this.$api.GET_USER_INFO,
}).then(res => {
if(res.code == 200) {
if(!!res.data.content.isAllPerm) {
this.getDisposal()
this.getHouthMonth()
this.getCheckData()
this.getCheckPeople()
this.getSectNum()
this.getReceiptsNum()
this.getRepair()
this.getTousuQuestion('M')
this.getTousuQuestion('Y')
this.getTousuQuestion('S')
this.getTousuDensity('M')
this.getTousuDensity('Y')
this.getTousuDensity('S')
}
}
})
// })
// if (this.$store.state.userinfos && this.$store.state.userinfos.isAllPerm) { // 不是全部权限dashboard下方的模块不展示
// this.getDisposal()
// this.getHouthMonth()
// this.getCheckData()
// this.getCheckPeople()
// this.getSectNum()
// this.getReceiptsNum()
// this.getRepair()
// this.getTousuQuestion('M')
// this.getTousuQuestion('Y')
// this.getTousuQuestion('S')
// this.getTousuDensity('M')
// this.getTousuDensity('Y')
// this.getTousuDensity('S')
// }
},
methods: {
/**
* 点击月份
*/
checkMonth(item){
this.nowMonth = item.name
this.checkStreet = item.checkStreet
for(let i=0;i<this.mounth.length;i++){
if(this.mounth[i].name == item.name){
this.mounth[i].class='hadCheckMonth'
}else{
this.mounth[i].class=''
}
}
},
hoverMonth(item){
let time = new Date().getFullYear()
// console.log(time+'-'+parseInt(item.name))
this.$router.push({
name: 'month',
query: {
month: time+'-'+parseInt(item.name)
}
})
},
/**
* 获取dashboard数据
*/
getList(){
this.$ajax.get({
url: this.$api.GET_RESOURE_LIST,
}).then(res => {
if (res.code === '200') {
this.data = this.$com.confirm(res, 'data.content', [])
}
})
this.$ajax.get({
url: this.$api.GET_ALREADY_OR_EXPIRE,
}).then(res => {
if (res.code === '200') {
let inner = res.data.content
this.expired = inner.alreadyExpireCount
this.expireInFiveMonth = inner.willExpireCount
}
})
},
/**
* 获取房办月查统计
*/
getHouthMonth(){
this.$ajax.get({
url: this.$api.GET_HOUSE_MONTH,
}).then(res => {
if (res.code === '200') {
let cont = this.$com.confirm(res, 'data.content', [])
this.totStreet = cont[0].totStreet
for(let i=0;i<cont.length;i++){
if(cont[i] && cont[i].month && cont[i].month>0){
this.mounth[cont[i].month-1].check=true
this.mounth[cont[i].month-1].checkStreet=cont[i].checkStreet
this.mounth[cont[i].month-1].totStreet=cont[i].totStreet
}
}
let num = Number(this.$moment(this.date).format('MM'))
this.mounth[num-1].class='hadCheckMonth'
this.nowMonth = this.mounth[num-1].name
this.checkStreet = this.mounth[num-1].checkStreet
}
})
},
/**
* 获取以及报修统计
*/
getRepair(){
this.$ajax.get({
url: this.$api.GET_REPAIR_STATISTICS,
}).then(res => {
if (res.code === '200') {
this.repair = this.$com.confirm(res, 'data.content', [])
}else{
this.$message.error(res.msg, 10)
}
})
},
/**
* 获取专项检查数据
*/
getCheckData(){
const Axios = axios.create({
baseURL: this.$api.BASE_URL,
timeout: 15000,
})
let config = {
method: 'post',
url: this.$api.GET_CHWECK_DATA,
headers: {
'X-Requested-With': 'XMLHttpRequest',
'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',
},
}
let params= {
pageNo: 1,
pageSize: 10000,
flag: '0',
someday: this.$moment(this.date).format('YYYY')+this.$moment(this.date).format('MM')+this.$moment(this.date).format('DD'),
hpb_id: '310104000000'
}
config = Object.assign(config, { data: qs.stringify(params) })
Axios(config)
.then(res => {
if (res.data.code === '200') {
let data = this.$com.confirm(res, 'data.data.content', [])
this.theme=0
for(let i=0;i<data.length;i++){
if(data[i].THEMETYPE == '专项'){
this.theme+=1
}
}
}
}).catch(err => {
this.$message.error(err.data.msg)
})
},
/**
* 获取检查人员数据
*/
getCheckPeople(){
let date= new Date()
let startDate=this.$moment(date).format('YYYY-MM-DD')+' 00:00:00'
let endDate=this.$moment(date).format('YYYY-MM-DD')+' 24:00:00'
const Axios = axios.create({
baseURL: this.$api.BASE_URL,
timeout: 15000,
})
let config = {
method: 'post',
url: 'http://962121.fgj.sh.gov.cn/wyweb/shanghaiwuye/propertyinspector/api/v1/sharingplatform/getInspectors',
headers: {
'X-Requested-With': 'XMLHttpRequest',
'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',
},
}
let params= {
pageNo: 1,
pageSize: 10000,
startDate: startDate,
endDate: endDate,
hpb_id: '310104000000'
}
config = Object.assign(config, { data: qs.stringify(params) })
Axios(config)
.then(res => {
if (res.data.code === '200') {
let data = this.$com.confirm(res, 'data.data.content', [])
if(data.lenght>8){
this.people=data.slice(0, 7)
}else{
this.people=data
}
}
}).catch(err => {
this.$message.error(err.data.msg)
})
},
/**
* 获取已完成检查小区
*/
getSectNum(){
const Axios = axios.create({
baseURL: this.$api.BASE_URL,
timeout: 15000,
})
let config = {
method: 'post',
url: 'http://962121.fgj.sh.gov.cn/wyweb/shanghaiwuye/propertyinspector/api/v1/sharingplatform/sectListForOneDay',
headers: {
'X-Requested-With': 'XMLHttpRequest',
'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',
},
}
let params= {
pageNo: 1,
pageSize: 10000,
someday: this.$moment(this.date).format('YYYY')+this.$moment(this.date).format('MM')+this.$moment(this.date).format('DD'),
hpb_id: '310104000000'
}
config = Object.assign(config, { data: qs.stringify(params) })
Axios(config)
.then(res => {
this.sect =res.data.data.totalRows
}).catch(err => {
this.$message.error(err.data.msg)
})
},
/**
* 获取已开整改单
*/
getReceiptsNum(){
const Axios = axios.create({
baseURL: this.$api.BASE_URL,
timeout: 15000,
})
let config = {
method: 'post',
url: 'http://962121.fgj.sh.gov.cn/wyweb/shanghaiwuye/propertyinspector/api/v1/sharingplatform/sectListForOneDay',
headers: {
'X-Requested-With': 'XMLHttpRequest',
'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',
},
}
let params= {
pageNo: 1,
pageSize: 10000,
isPublish: '1',
someday: this.$moment(this.date).format('YYYY')+this.$moment(this.date).format('MM')+this.$moment(this.date).format('DD'),
hpb_id: '310104000000'
}
config = Object.assign(config, { data: qs.stringify(params) })
Axios(config)
.then(res => {
this.receipts =res.data.data.totalRows
}).catch(err => {
this.$message.error(err.data.msg)
})
},
/**
* 获取处置单统计
*/
getDisposal(){
this.$ajax.get({
url: this.$api.GET_HOME_DISPOSAL,
}).then(res => {
if (res.code === '200') {
this.disposal = this.$com.confirm(res, 'data.content', [])
}
})
},
/**
* 判断是否开启自定义字段
*/
getConfig(){
this.$ajax.get({
url: this.$api.GET_CONFIG,
}).then(res => {
if (res.code === '200') {
this.openConfig = this.$com.confirm(res, 'data.content', []).customKeyEnable
// 是否开启自定义字段存入cookie
this.$cookie.set('customKeyEnable', this.openConfig)
let isXuHui = this.$com.confirm(res, 'data.content', [])
this.$store.commit('CHANGE_ISXUHUI', isXuHui.projectArea == 'xuhui')
}
})
},
//调接口跳转专项检查页面
toFangXunFangTai(){
this.$ajax.get({
url: this.$api.GET_JIANCHADIZHI,
}).then(res => {
window.open(res)
})
},
openOutUrl1(){
window.open('http://962121.fgj.sh.gov.cn/wyweb/shanghaiwuye/web/dataV/riskmanagement/#/')
},
openOutUrl2(){
this.$ajax.get({
url: this.$api.GET_WYGENERATE,
}).then(res => {
window.open(res)
})
},
/**
* 去应急报修
* @params {bxmaintainType} string
*/
toRepair(bxmaintainType, signStatus){
this.$router.push({
name: 'repairList',
query: {
bxmaintainType: bxmaintainType,
signStatus: signStatus
}
})
},
/**
* 改变投诉的tab的key
*/
changeTabKey(key, num){
if(num == 1){
this.activeKey = key
}else if(num == 2){
this.activeKey2 = key
}
},
/**
* 获取投诉问题排行
*/
getTousuQuestion(type){
const date = new Date()
const year = date.getFullYear()
const month = date.getMonth()+1
const params = {}
if(type == 'M'){
params.type = 'A'
params.tsMonthly = year + '' + (String(month).length==1?'-0'+month:'-'+month)
}else if(type == 'Y'){
params.type = 'Y'
params.dateTime = year + ''
}else if(type == 'S'){
params.type = 'S'
}
params.tsNum_desc = 'desc'
params.pageNo = 1
params.pageSize = 8
this.$ajax.get({
url: this.$api.GET_TOUSUQUESTION_LIST,
params: params
}).then(res => {
if (res.code === '200') {
this.tousuQuestionList[type] = this.$com.confirm(res, 'data.content.content', [])
}
})
},
/**
* 获取投诉密度排行
*/
getTousuDensity(type){
const date = new Date()
const year = date.getFullYear()
const month = date.getMonth()+1
const params = {}
if(type == 'M'){
params.type = 'A'
params.dateTime = year + '' + (String(month).length==1?'-0'+month:'-'+month)
}else if(type == 'Y'){
params.type = 'Y'
params.dateTime = year + ''
}else if(type == 'S'){
params.type = 'S'
params.dateTime = '20'
}
params.pageNo = 1
params.pageSize = 8
this.$ajax.get({
url: this.$api.GET_TOUSUDENSITY_LIST,
params: params
}).then(res => {
if (res.code === '200') {
this.tousuDensityList[type] = this.$com.confirm(res, 'data.content.content', [])
}
})
},
handleExpired() {
this.$router.push({name: 'indCous', query: {date: (this.$moment().format('L')).split('/').join('')}})
},
handleWillExpire() {
this.$router.push({name: 'indCous', query: {cdate: (this.$moment().format('L')).split('/').join(''), date: (this.$moment().add('months', 5).format('L')).split('/').join('')}})
},
/**
* 去投诉
*/
toTousu(){
const date = new Date()
const year = date.getFullYear()
const month = date.getMonth()+1
const query = {}
if(this.activeKey == '1'){
if(this.activeKey2=='1'){
query.type = 'M'
query.tsMonthly = year + '' + (String(month).length==1?'-0'+month:'-'+month)
}else if(this.activeKey2=='2'){
query.type = 'Y'
query.dateTime = year + ''
}else if(this.activeKey2=='3'){
query.type = 'S'
}
this.$router.push({
name: 'tousuQuestion',
query: query
})
}else if(this.activeKey == '2'){
if(this.activeKey2=='1'){
query.type = 'M'
query.tsMonthly = year + '' + (String(month).length==1?'-0'+month:'-'+month)
}else if(this.activeKey2=='2'){
query.type = 'Y'
query.dateTime = year + ''
}else if(this.activeKey2=='3'){
query.type = 'S'
}
this.$router.push({
name: 'tousuDensity',
query: query
})
}
},
},
}
</script>
<style>
#home {
width: 100%;
}
.home-card{
background: #fff;
padding: 15px;
}
.topBox{
height: 100%;
}
.top-font{
color:#818283;
font-size:14px;
margin-bottom:3px;
}
.top-count{
color:#000;
font-size:28px;
font-weight:600;
line-height:34px;
}
.top-count-extra{
color:#000;
font-size:24px;
font-weight:600;
line-height:24px;
}
.middle-right{
text-align:center;
height: calc(50% - 10px);
display:flex;
flex-direction:column;
justify-content:space-around;
align-items:center;
cursor: pointer;
}
.middle-right p{
font-size:14px;
margin:5px 0px 0px 0px;
font-weight:600;
}
.month{
height:100%;
background:#fff;
margin-right:10px;
}
.monthTitle>span:first-child{
font-weight:600;
font-size:16px;
}
.monthTitleNum{
font-size:16px;
color:#0E7CFF;
font-weight:600;
vertical-align: baseline;
}
.monthBox{
height:calc(100% - 55px);
display:flex;
flex-direction:column;
justify-content:space-around;
align-items: stretch;
}
.monthImg{
margin:10%;
padding-top: calc(40% - 11px);
padding-bottom: calc(40% - 11px);
text-align:center;
cursor: pointer;
border:1px solid transparent;
border-radius: 14%;
position: relative;
}
.monthHover{
z-index:999;
position:absolute;
bottom:0px;
left:0;
height:50%;
background: rgba(0,0,0,0.5);
width: 100%;
color: #fff;
border-radius: 0 0 14% 14%;
display:none;
line-height:100%;
}
.monthHover div{
width: 100%;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
}
.monthImg:hover .monthHover{
/* height: 50%;
color:#000; */
display: block;
}
.zxjc .ant-progress-inner{
background: #F4F5F6;
}
#home .ant-progress-inner{
border: none;
}
#home .ant-tabs-tab-active.ant-tabs-tab{
line-height: 31px;
}
/* #home .ant-tabs-bar.ant-tabs-top-bar{
margin: 0px;
} */
/* #home .ant-tabs-content.ant-tabs-content-animated.ant-tabs-top-content{
height: calc(100% - 55px);
} */
#home .ant-tabs-tabpane{
padding: 0px 15px 10px 15px;
}
.justify-between{
display:flex;
justify-content:space-between;
}
.align-center{
display:flex;
align-items:center;
}
.align-stretch{
display:flex;
align-items:stretch;
}
.row-number{
height: 18px;
width: 18px;
border-radius: 50%;
text-align: center;
}
.green{
color: #579D1F;
}
.blue{
color: #2B87FE;
}
.hadCheckMonth.green {
border-color: #579D1F;
}
.hadCheckMonth.blue {
border-color: #2B87FE;
}
.jiancha{
height:100%;
background:#fff;
margin:0px 10px;
}
.jianchaTitle>span{
font-weight:600;
font-size:16px;
}
.jianchaBox{
padding:15px 0px ;
height:100%;
}
.jianchaTheme{
border-right:1px dashed #eee;
padding:0px 10px;
display:flex;
flex-direction:column;
justify-content:space-around;
height:100%;
}
.jianchaThemeNum{
color:#0477FF;
font-weight:600;
}
.jianchaBoxRight{
padding:0px 10px 0px 30px;
height:100%;
}
.jianchaPeopleTitle{
height:30px;
display:inline-block;
vertical-align: sub;
font-weight:600;
}
.fengxian{
height:100%;
background:#fff;
margin-right:10px;
}
.fengxianTitle>span{
font-weight:600;
font-size:16px;
}
.fengxianBox{
display: flex;
flex-direction: column;
justify-content: space-around;
height: calc(100% - 55px);
}
.fengxianDisposalNum{
display:flex;
flex-direction:column;
justify-content:space-around;
height:100%;
}
.disposalDetailNum{
color:#000;
font-size:16px;
font-weight:700;
vertical-align:middle;
color:#11C3C4;
}
.repair-top{
margin: 0 0.7rem;
padding-top: 0.7rem;
padding-bottom: 0.3rem;
flex:1;
border-bottom: 1px dashed #eee;
}
.repair-btm{
margin: 0 0.7rem;
padding-top: 0.7rem;
padding-bottom: 0.3rem;
flex:1;
}
.baoxiu{
height:100%;
background:#fff;
margin:0px 10px;
}
.baoxiuTitle, .fengxianTitle, .monthTitle, .jianchaTitle{
display:flex;
justify-content:space-between;
border-bottom:1px solid #eee;
}
.baoxiuTitle>span{
font-weight:600;
font-size:16px
}
.baoxiuBox{
height:calc(100% - 55px);
display:flex;
flex-direction:column;
font-size:0.8rem;
}
.baoxiuSecondTitle{
display:flex;
justify-content:space-between;
}
.baoxiuSecondTitle>p{
font-size:0.8rem;
color:#000;
margin-bottom:0.3rem;
}
.baoxiuSecondTitle>img{
height:1.2rem;
margin-top:-0.3rem;
cursor:pointer;
}
.baoxiuMiddleBox{
display:flex;
}
.baoxiuMiddleBox>div:first-child{
margin-right:0.5rem;
display:flex;
align-items:center;
}
.baoxiuMiddleBox>div:last-child{
display:flex;
flex-direction:column;
justify-content:space-around;
height:100%;
}
.baoxiuBottomBox{
display:flex;
margin-top:0.3rem;
justify-content:space-between;
}
.baoxiuBottomBox>div{
width:45%;
}
.baoxiuBottomBoxTitle{
display:flex;
justify-content:space-between;
align-items:flex-end;
}
#home .tousuQuestion>div {
margin:0;
}
.tousu{
height:100%;
background:#fff;
margin-left:10px;
position:relative;
}
.tousuIMG{
height:1.2rem;
cursor:pointer;
position:absolute;
right:1rem;
top:1rem;
z-index: 10;
}
.tousuTabTitle{
font-weight:600;
margin-bottom:5px;
}
.tousuContentRow{
font-size:12px;
display:flex;
align-items:stretch;
padding:3px 0px;
text-align:left;
}
.tousuRankNum{
display:flex;
align-items:center;
}
.tousuContent{
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.topBox-l .inner{
padding:1rem;
width: 24%;
display:flex;
justify-content: space-between;
background: #fff;
}
.topBox-l{
width: 100%;
display:flex;
align-items:center;
justify-content: space-between;
}
/* 第二行 */
.secBox{
margin-top: 1rem;
width: 100%;
display:flex;
justify-content: space-between;
}
/* 第3行 */
.thirdBox{
margin-top: 1rem;
width: 100%;
display:flex;
justify-content: space-between;
}
/* 第四行 */
.fourthBox{
margin-top: 1rem;
width: 100%;
display:flex;
justify-content: space-between;
}
</style>
......@@ -5,7 +5,7 @@
<div class="portalDetailTitle">
<span class="title">详情</span>
<div class="detailOperations">
<a-button v-if="urls.name == 'propertyInfoView'" @click="$router.push({path: `/houseData/basicInfo`,query:{id:$route.query.id,name:$route.query.name}})"> 查看管理小区列表 </a-button>
<!-- <a-button v-if="urls.name == 'propertyInfoView'" @click="$router.push({path: `/houseData/basicInfo`,query:{id:$route.query.id,name:$route.query.name}})"> 查看管理小区列表 </a-button> -->
<a-button @click="handleReturn"> 返回 </a-button>
</div>
</div>
......
......@@ -5,7 +5,7 @@
<a-col :span="3" style="border-right:1px solid #ccc;height:100%; position:relative">
<span class="menu_header">拓展信息管理列表</span>
<a-menu mode="vertical" :selectedKeys="selectedKeys">
<a-menu-item :key="k" v-show="$permission(formatPermission(item))" v-for="(item,k) in tblsLists" @click="clickMenu(k)">
<a-menu-item :key="k" v-show="$permission('00000201')" v-for="(item,k) in tblsLists" @click="clickMenu(k)">
{{item}}
</a-menu-item>
</a-menu>
......@@ -15,7 +15,7 @@
<a-form class="protalForm" :form="searchForm" >
<a-row type="flex" justify="space-between" align="middle">
<a-col span="6" >
<a-button class="addZiduan" v-if="$permission(formatDeletePermission())" type="primary" @click="showModal()" ghost >新增字段</a-button>
<a-button class="addZiduan" v-if="$permission('0000020102')" type="primary" @click="showModal()" ghost >新增字段</a-button>
<div >
<a-modal :title="!isChangeZdy ? '新增字段':'修改字段'" v-model="visible" @cancel="handleCancel" @ok="handleOk">
<a-form class="protalForm" :form="form" >
......@@ -86,11 +86,11 @@
<!-- table -->
<a-table bordered class="portalTable" :dataSource="taskCollectList" :columns="columns" size="small" :pagination="pagination">
<span slot="action" slot-scope="text, record">
<span class="actionBtn" v-if="$permission(formatDeletePermission())" @click="showDelModal(record)">删除<a-divider type="vertical" /></span>
<span class="actionBtn" v-if="$permission('0000020102')" @click="showDelModal(record)">删除<a-divider type="vertical" /></span>
<a-modal title="警告" v-model="visibleDel" @ok="del(record)">
<p>该字段可能已被使用,是否确定删除?</p>
</a-modal>
<span class="actionBtn" v-if="$permission(formatDeletePermission())" @click="setKey(record)">修改</span>
<span class="actionBtn" v-if="$permission('0000020102')" @click="setKey(record)">修改</span>
</span>
</a-table>
......@@ -200,89 +200,89 @@ export default {
}
},
methods: {
formatPermission(item){
let permissionNum = null
switch (item) {
case '小区':
permissionNum = '00000201'
break
case '门牌幢':
permissionNum = '00000202'
break
case '设施设备':
permissionNum = '00000203'
break
case '物业企业':
permissionNum = '00000204'
break
case '业主大会':
permissionNum = '00000205'
break
case '业委会成员':
permissionNum = '00000206'
break
case '小区管理处':
permissionNum = '00000209'
break
case '小区经理':
permissionNum = '00000210'
break
case '居委会信息':
permissionNum = '00000211'
break
case '非居信息':
permissionNum = '00000212'
break
case '非居门牌幢信息':
permissionNum = '00000213'
break
default:
break
}
return permissionNum
// formatPermission(item){
// let permissionNum = null
// switch (item) {
// case '小区':
// permissionNum = '00000201'
// break
// case '门牌幢':
// permissionNum = '00000202'
// break
// case '设施设备':
// permissionNum = '00000203'
// break
// case '物业企业':
// permissionNum = '00000204'
// break
// case '业主大会':
// permissionNum = '00000205'
// break
// case '业委会成员':
// permissionNum = '00000206'
// break
// case '小区管理处':
// permissionNum = '00000209'
// break
// case '小区经理':
// permissionNum = '00000210'
// break
// case '居委会信息':
// permissionNum = '00000211'
// break
// case '非居信息':
// permissionNum = '00000212'
// break
// case '非居门牌幢信息':
// permissionNum = '00000213'
// break
// default:
// break
// }
// return permissionNum
},
formatDeletePermission(){
let deletePermissionNum = null
switch (this.selectedKeys[0]) {
case 'tbl_community':
deletePermissionNum = '0000020102'
break
case 'tbl_building':
deletePermissionNum = '0000020202'
break
case 'tbl_facilities_equipment':
deletePermissionNum = '0000020302'
break
case 'tbl_prop_company':
deletePermissionNum = '0000020402'
break
case 'tbl_industry_council':
deletePermissionNum = '0000020502'
break
case 'tbl_ic_member':
deletePermissionNum = '0000020602'
break
case 'tbl_community_amst_office':
deletePermissionNum = '0000020902'
break
case 'tbl_community_manager':
deletePermissionNum = '0000021002'
break
case 'tbl_residents_committees':
deletePermissionNum = '0000021102'
break
case 'tbl_non_resident':
deletePermissionNum = '0000021202'
break
case 'tbl_non_resident_building':
deletePermissionNum = '0000021302'
break
default:
break
}
return deletePermissionNum
},
// },
// formatDeletePermission(){
// let deletePermissionNum = null
// switch (this.selectedKeys[0]) {
// case 'tbl_community':
// deletePermissionNum = '0000020102'
// break
// case 'tbl_building':
// deletePermissionNum = '0000020202'
// break
// case 'tbl_facilities_equipment':
// deletePermissionNum = '0000020302'
// break
// case 'tbl_prop_company':
// deletePermissionNum = '0000020402'
// break
// case 'tbl_industry_council':
// deletePermissionNum = '0000020502'
// break
// case 'tbl_ic_member':
// deletePermissionNum = '0000020602'
// break
// case 'tbl_community_amst_office':
// deletePermissionNum = '0000020902'
// break
// case 'tbl_community_manager':
// deletePermissionNum = '0000021002'
// break
// case 'tbl_residents_committees':
// deletePermissionNum = '0000021102'
// break
// case 'tbl_non_resident':
// deletePermissionNum = '0000021202'
// break
// case 'tbl_non_resident_building':
// deletePermissionNum = '0000021302'
// break
// default:
// break
// }
// return deletePermissionNum
// },
//默认时间框
chooseDate(date, dateString) {
......
......@@ -36,15 +36,16 @@
<a-row class="formItemLine">
<a-col span="8">
<a-form-item label="机构类型" v-bind="colSpe">
<a-select placeholder="请选择" allowClear mode="multip" v-decorator="['orgType', {initialValue:'2',
<a-select placeholder="请选择" allowClear mode="multip" @change="changeType" v-decorator="['orgType', {initialValue:'2',
validateTrigger: 'change', rules: [ { required: true, message: '请选择机构类型!' } ]
}]">
<a-select-option value="2">房办</a-select-option>
<a-select-option value="4">区级</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col span="8">
<a-form-item label="机构名称" v-bind="colSpe">
<a-col span="8" v-if="show">
<a-form-item label="机构名称" v-bind="colSpe" >
<a-select placeholder="请选择" allowClear mode="multi" v-decorator="['DorgId', {
validateTrigger: 'change', rules: [ { required: true, message: '请选择机构名称!' } ]
}]">
......@@ -80,6 +81,7 @@ export default {
},
data() {
return {
show: true,
exclusionRoleIds: [ '999999', ],
userRoldIDsOrg: [],
orgnazation: [],
......@@ -104,6 +106,7 @@ export default {
// 从个人中心-账户信息跳过来的不能修改手机号
this.fromCenter = !!this.$route.query.id
},
mounted() {
this.$ajax.get({
......@@ -165,8 +168,8 @@ export default {
if (values.phone2) {
values.phone+= values.phone2
}
values.orgId = this.searchForm.getFieldValue('DorgId').split('#')[0]
values.orgName = this.searchForm.getFieldValue('DorgId').split('#')[1]
values.orgId = this.searchForm.getFieldValue('DorgId')?this.searchForm.getFieldValue('DorgId').split('#')[0]:''
values.orgName = this.searchForm.getFieldValue('DorgId')?this.searchForm.getFieldValue('DorgId').split('#')[1]:''
values.notes.forEach((item, index) => {
if (index == 0) {
values.roleIds += item.key
......@@ -268,9 +271,13 @@ export default {
})
}
},
//获取机构名称的下拉框
changeOrg(){
changeType(val){
console.log(val)
if(val == 4){
this.show = false
}else{
this.show = true
}
},
//获取id 对应的账户信息
getDetail() {
......
......@@ -45,9 +45,9 @@
<!-- <a-menu-item v-if="$permission('00090401')" class="actionBtn" key="4"> 重置密码
</a-menu-item> -->
<!-- <a-menu-item class="actionBtn" key="2" v-if="$permission('S00011416')"> 禁用 </a-menu-item> -->
<a-menu-item class="actionBtn" v-if="$permission('00090405')" key="1" @click='(event)=>{showOpeations(event.key,record)}'> 启用 </a-menu-item>
<a-menu-item class="actionBtn" v-if="$permission('00090406')" key="3" @click='(event)=>{showOpeations(event.key,record)}'> 注销
</a-menu-item>
<!-- <a-menu-item class="actionBtn" v-if="$permission('00090405')" key="1" @click='(event)=>{showOpeations(event.key,record)}'> 启用 </a-menu-item>
<a-menu-item class="actionBtn" v-if="$permission('00090406')" key="3" @click='(event)=>{showOpeations(event.key,record)}'> 注销 -->
<!-- </a-menu-item> -->
<a-menu-item class="actionBtn" v-if="$permission('00090402')" @click="handleEdit(record)"> 修改
</a-menu-item>
</a-menu>
......@@ -184,16 +184,6 @@ export default {
customRender: 'roleIds',
},
},
{
title: '状态',
align: 'center',
dataIndex: 'status',
key: 'status',
width: '13%',
scopedSlots: {
customRender: 'status',
},
},
{
title: '手机号',
align: 'center',
......@@ -213,6 +203,14 @@ export default {
]
}
},
watch: {
$route(cur) {
if (cur) {
this.getSearchParams()
this.getRoleList()
}
},
},
mounted() {
if(this.$route.name == 'people'){
this.$nextTick(function () {
......@@ -342,7 +340,7 @@ export default {
let searchParms = {
pageNo: this.pagination.current,
pageSize: this.pagination.pageSize,
phone_ne: 0
}
searchParms = Object.assign({}, searchParms, this.searchForm.getFieldsValue())
if (searchParms.roleIds_in && searchParms.roleIds_in.length>0) {
......
// {
// "path": "/documents/ledger", "name": "ledger",
// "meta": { "title": "区房屋台账","authCode":"0008", "menuIcon": "profile", "menuPath": true, "hideInBread": false },
// "children": [
// {
// "path": "/documents/ledger/community", "name": "communityList",
// "meta": { "title": "住宅房屋","authCode":"000801", "menuIcon": "profile", "menuPath": true, "hideInBread": false },
// "children": [
// {
// "path": "/documents/ledger/community/info", "name": "communityInfo",
// "meta": { "title": "详情","authCode":"00080101", "menuIcon": "profile", "menuPath": false, "hideInBread": false }
// },
// {
// "path": "/documents/ledger/community/equipment", "name": "equipment",
// "meta": { "title": "设备信息","authCode":"000801010102", "menuIcon": "profile", "menuPath": false, "hideInBread": false }
// },
// {
// "path": "/documents/ledger/community/building", "name": "communityBuilding",
// "meta": { "title": "门牌幢列表","authCode":"0008010101", "menuIcon": "profile", "menuPath": false, "hideInBread": false }
// }
// ]
// },
// {
// "path": "/documents/ledger/NonResident", "name": "NonResident",
// "meta": { "title": "非居房屋","authCode":"000802", "menuIcon": "profile", "menuPath": true, "hideInBread": false },
// "children": [
// {
// "path": "/documents/ledger/NonResident/info", "name": "NonResidentInfo",
// "meta": { "title": "非居详情","authCode":"000802", "menuIcon": "profile", "menuPath": false, "hideInBread": false }
// },
// {
// "path": "/documents/ledger/NonResident/building", "name": "NonResidentBuilding",
// "meta": { "title": "非居门牌幢列表","authCode":"00080202", "menuIcon": "profile", "menuPath": false, "hideInBread": false }
// }
// ]
// }
// ]
// }
\ No newline at end of file
<template>
<div class="routerWapper enquiryList">
<Loader />
<div class="portalDetailTitle">
<span class="title">
日志详情
......@@ -9,16 +8,19 @@
<a-button @click="$router.back()"> 返回 </a-button>
</div>
</div>
<div v-if="$route.name == 'rizhiInfo'" class="layoutMargin layoutPadding">
<!-- 小区 -->
<div v-if="$route.name == 'feijuInfo'" class="layoutMargin layoutPadding">
<div style="font-size:16px;margin-bottom:20px">
操作说明:{{content.pointName}}
<P> 操作人:{{content.creator}}</P>
<P> 操作说明:{{content.pointName}}</P>
<P>操作时间:{{this.$moment(content.createTime).format('YYYY-MM-DD')}}</P>
</div>
<div class="cardBox">
<a-card title="操作前信息" style="width: 49%;margin-right:1%;margin-bottom:1%;justify-content:flex-end;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-form class="protalForm">
<a-form-item v-for="(item,k) in extList.tbl_community" :key="k" :label="item.keyName" :label-col="{ span: 8 }" :wrapper-col="{ span: 12 }">
<a-form-item v-for="(item,k) in extList.tbl_non_resident" :key="k" :label="item.keyName" :label-col="{ span: 9 }" :wrapper-col="{ span: 12 }">
<a-input v-decorator="[item.keyCode]" disabled="disabled"/>
</a-form-item>
</a-form>
......@@ -29,7 +31,7 @@
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-form class="protalForm">
<a-form-item v-for="(item,k) in extList.tbl_community" :key="k" :label="item.keyName" :label-col="{ span: 8 }" :wrapper-col="{ span: 12 }">
<a-form-item v-for="(item,k) in extList.tbl_community" :key="k" :label="item.keyName" :label-col="{ span: 9 }" :wrapper-col="{ span: 12 }">
<a-input v-decorator="[item.keyCode]" disabled="disabled"/>
</a-form-item>
</a-form>
......@@ -44,7 +46,7 @@
<script>
export default {
name: 'rizhiInfo',
name: 'feijuInfo',
data() {
formExt: this.$form.createForm(this)
return {
......@@ -55,12 +57,13 @@ export default {
tbl_community_manager: [],
tbl_industry_council: [],
tbl_residents_committees: [],
tbl_non_resident: [],
}, // ext所有列表
content: {}
}
},
mounted(){
if(this.$route.name == 'rizhiInfo'){
if(this.$route.name == 'feijuInfo'){
this.getList()
}
},
......@@ -75,10 +78,10 @@ export default {
this.$message.info(res.msg, 10)
}
this.$ajax.get({
url: this.$api.GET_SAFE_EXT.replace('{table}', 'tbl_community').replace('{id}', this.$route.query.id),
url: this.$api.GET_SAFE_EXT.replace('{table}', 'tbl_non_resident').replace('{id}', this.$route.query.id),
}).then(res => {
if (res.code == 200) {
this.extList.tbl_community = this.$com.confirm(res, 'data.content', [])
this.extList.tbl_non_resident = this.$com.confirm(res, 'data.content', [])
}
})
})
......
<template>
<div class="routerWapper enquiryList">
<div class="portalDetailTitle">
<span class="title">
日志详情
</span>
<div class="detailOperations">
<a-button @click="$router.back()"> 返回 </a-button>
</div>
</div>
<!-- 小区 -->
<div v-if="$route.name == 'guanliInfo'" class="layoutMargin layoutPadding">
<div style="font-size:16px;margin-bottom:20px">
<P> 操作人:{{content.creator}}</P>
<P> 操作说明:{{content.pointName}}</P>
<P>操作时间:{{this.$moment(content.createTime).format('YYYY-MM-DD')}}</P>
</div>
<div class="cardBox">
<a-card title="操作前信息" style="width: 49%;margin-right:1%;margin-bottom:1%;justify-content:flex-end;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-form class="protalForm">
<a-form-item v-for="(item,k) in extList.tbl_community_amst_office" :key="k" :label="item.keyName" :label-col="{ span: 9 }" :wrapper-col="{ span: 12 }">
<a-input v-decorator="[item.keyCode]" disabled="disabled"/>
</a-form-item>
</a-form>
</div>
</div>
</a-card>
<a-card title="操作后信息" style="width: 49%;margin-right:1%;margin-bottom:1%;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-form class="protalForm">
<a-form-item v-for="(item,k) in extList.tbl_community" :key="k" :label="item.keyName" :label-col="{ span: 9 }" :wrapper-col="{ span: 12 }">
<a-input v-decorator="[item.keyCode]" disabled="disabled"/>
</a-form-item>
</a-form>
</div>
</div>
</a-card>
</div>
</div>
<RouterWapper v-else></RouterWapper>
</div>
</template>
<script>
export default {
name: 'guanliInfo',
data() {
formExt: this.$form.createForm(this)
return {
extList: {
tbl_community: [],
tbl_community_amst_office: [],
tbl_prop_company: [],
tbl_community_manager: [],
tbl_industry_council: [],
tbl_residents_committees: [],
}, // ext所有列表
content: {}
}
},
mounted(){
if(this.$route.name == 'guanliInfo'){
this.getList()
}
},
methods: {
getList(params){
this.$ajax.get({
url: this.$api.GET_RIZHI_INFO.replace('{id}', this.$route.query.id),
}).then(res => {
if (res.code == '200') {
this.content = this.$com.confirm(res, 'data.content', [])
} else {
this.$message.info(res.msg, 10)
}
this.$ajax.get({
url: this.$api.GET_SAFE_EXT.replace('{table}', 'tbl_community_amst_office').replace('{id}', this.$route.query.id),
}).then(res => {
if (res.code == 200) {
this.extList.tbl_community_amst_office = this.$com.confirm(res, 'data.content', [])
}
})
})
},
},
}
</script>
<style>
.enquiryList .ant-card-head{
border-bottom: 1px dashed #e8e8e8;
padding: 0 12px;
}
.enquiryList .ant-card-body{
padding: 0px;
}
.enquiryList .card-bottom{
padding: 8px 0px;
text-align: center;
color: #1890ff;
border-top: 1px solid #e8e8e8;
cursor: pointer;
}
.enquiryList .card-centent{
padding: 12px;
}
.enquiryList .cardBox{
display:flex;
flex-wrap: wrap;
}
</style>
......@@ -11,135 +11,17 @@
<!-- 小区 -->
<div v-if="$route.name == 'rizhiInfo'" class="layoutMargin layoutPadding">
<div style="font-size:16px;margin-bottom:20px">
操作说明:{{content.pointName}}
<P> 操作人:{{content.creator}}</P>
<P> 操作说明:{{content.pointName}}</P>
<P>操作时间:{{this.$moment(content.createTime).format('YYYY-MM-DD')}}</P>
</div>
<div class="cardBox">
<a-card title="操作前信息" style="width: 49%;margin-right:1%;margin-bottom:1%;justify-content:flex-end;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-form class="protalForm">
<a-form-item v-for="(item,k) in extList.tbl_community" :key="k" :label="item.keyName" :label-col="{ span: 9 }" :wrapper-col="{ span: 12 }">
<a-input v-decorator="[item.keyCode]" disabled="disabled"/>
</a-form-item>
</a-form>
</div>
</div>
</a-card>
<a-card title="操作后信息" style="width: 49%;margin-right:1%;margin-bottom:1%;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-form class="protalForm">
<a-form-item v-for="(item,k) in extList.tbl_community" :key="k" :label="item.keyName" :label-col="{ span: 9 }" :wrapper-col="{ span: 12 }">
<a-input v-decorator="[item.keyCode]" disabled="disabled"/>
</a-form-item>
</a-form>
</div>
</div>
</a-card>
</div>
</div>
<!-- 业委会信息 -->
<div v-if="$route.name == 'rizhiInfo'" class="layoutMargin layoutPadding">
<div style="font-size:16px;margin-bottom:20px">
操作说明:{{content.pointName}}
</div>
<div class="cardBox">
<a-card title="操作前信息" style="width: 49%;margin-right:1%;margin-bottom:1%;justify-content:flex-end;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-form class="protalForm">
<a-form-item v-for="(item,k) in extList.tbl_community" :key="k" :label="item.keyName" :label-col="{ span: 9 }" :wrapper-col="{ span: 12 }">
<a-input v-decorator="[item.keyCode]" disabled="disabled"/>
</a-form-item>
</a-form>
</div>
</div>
</a-card>
<a-card title="操作后信息" style="width: 49%;margin-right:1%;margin-bottom:1%;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-form class="protalForm">
<a-form-item v-for="(item,k) in extList.tbl_community" :key="k" :label="item.keyName" :label-col="{ span: 9 }" :wrapper-col="{ span: 12 }">
<a-input v-decorator="[item.keyCode]" disabled="disabled"/>
</a-form-item>
</a-form>
</div>
</div>
</a-card>
</div>
</div>
<!-- 物业企业 -->
<div v-if="$route.name == 'rizhiInfo'" class="layoutMargin layoutPadding">
<div style="font-size:16px;margin-bottom:20px">
操作说明:{{content.pointName}}
</div>
<div class="cardBox">
<a-card title="操作前信息" style="width: 49%;margin-right:1%;margin-bottom:1%;justify-content:flex-end;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-form class="protalForm">
<a-form-item v-for="(item,k) in extList.tbl_community" :key="k" :label="item.keyName" :label-col="{ span: 9 }" :wrapper-col="{ span: 12 }">
<a-input v-decorator="[item.keyCode]" disabled="disabled"/>
</a-form-item>
</a-form>
</div>
</div>
</a-card>
<a-card title="操作后信息" style="width: 49%;margin-right:1%;margin-bottom:1%;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-form class="protalForm">
<a-form-item v-for="(item,k) in extList.tbl_community" :key="k" :label="item.keyName" :label-col="{ span: 9 }" :wrapper-col="{ span: 12 }">
<a-input v-decorator="[item.keyCode]" disabled="disabled"/>
</a-form-item>
</a-form>
</div>
</div>
</a-card>
</div>
</div>
<!-- 小区管理处 -->
<div v-if="$route.name == 'rizhiInfo'" class="layoutMargin layoutPadding">
<div style="font-size:16px;margin-bottom:20px">
操作说明:{{content.pointName}}
</div>
<div class="cardBox">
<a-card title="操作前信息" style="width: 49%;margin-right:1%;margin-bottom:1%;justify-content:flex-end;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-form class="protalForm">
<a-form-item v-for="(item,k) in extList.tbl_community" :key="k" :label="item.keyName" :label-col="{ span: 9 }" :wrapper-col="{ span: 12 }">
<a-input v-decorator="[item.keyCode]" disabled="disabled"/>
</a-form-item>
</a-form>
</div>
</div>
</a-card>
<a-card title="操作后信息" style="width: 49%;margin-right:1%;margin-bottom:1%;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-form class="protalForm">
<a-form-item v-for="(item,k) in extList.tbl_community" :key="k" :label="item.keyName" :label-col="{ span: 9 }" :wrapper-col="{ span: 12 }">
<a-input v-decorator="[item.keyCode]" disabled="disabled"/>
</a-form-item>
</a-form>
</div>
</div>
</a-card>
</div>
</div>
<!-- 小区经理 -->
<div v-if="$route.name == 'rizhiInfo'" class="layoutMargin layoutPadding">
<div style="font-size:16px;margin-bottom:20px">
操作说明:{{content.pointName}}
</div>
<div class="cardBox">
<a-card title="操作前信息" style="width: 49%;margin-right:1%;margin-bottom:1%;justify-content:flex-end;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-form class="protalForm">
<a-form-item v-for="(item,k) in extList.tbl_community" :key="k" :label="item.keyName" :label-col="{ span: 9 }" :wrapper-col="{ span: 12 }">
<a-input v-decorator="[item.keyCode]" disabled="disabled"/>
<a-form class="protalForm" :form="form">
<a-form-item v-for="(ele,k) in extList.tbl_community" :key="k" :label="ele.keyName" :label-col="{ span: 9 }" :wrapper-col="{ span: 12 }">
<a-input :value="ele.keyVal" disabled="disabled"/>
</a-form-item>
</a-form>
</div>
......@@ -150,37 +32,7 @@
<div style="margin-bottom:8px;">
<a-form class="protalForm">
<a-form-item v-for="(item,k) in extList.tbl_community" :key="k" :label="item.keyName" :label-col="{ span: 9 }" :wrapper-col="{ span: 12 }">
<a-input v-decorator="[item.keyCode]" disabled="disabled"/>
</a-form-item>
</a-form>
</div>
</div>
</a-card>
</div>
</div>
<!-- 小区居委会信息 -->
<div v-if="$route.name == 'rizhiInfo'" class="layoutMargin layoutPadding">
<div style="font-size:16px;margin-bottom:20px">
操作说明:{{content.pointName}}
</div>
<div class="cardBox">
<a-card title="操作前信息" style="width: 49%;margin-right:1%;margin-bottom:1%;justify-content:flex-end;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-form class="protalForm">
<a-form-item v-for="(item,k) in extList.tbl_community" :key="k" :label="item.keyName" :label-col="{ span: 9 }" :wrapper-col="{ span: 12 }">
<a-input v-decorator="[item.keyCode]" disabled="disabled"/>
</a-form-item>
</a-form>
</div>
</div>
</a-card>
<a-card title="操作后信息" style="width: 49%;margin-right:1%;margin-bottom:1%;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-form class="protalForm">
<a-form-item v-for="(item,k) in extList.tbl_community" :key="k" :label="item.keyName" :label-col="{ span: 9 }" :wrapper-col="{ span: 12 }">
<a-input v-decorator="[item.keyCode]" disabled="disabled"/>
<a-input :value="item.keyValue" :key="key" disabled="disabled"/>
</a-form-item>
</a-form>
</div>
......@@ -188,6 +40,7 @@
</a-card>
</div>
</div>
<RouterWapper v-else></RouterWapper>
</div>
</template>
......@@ -195,9 +48,10 @@
<script>
export default {
name: 'rizhiInfo',
data() {
formExt: this.$form.createForm(this)
return {
form: this.$form.createForm(this), //表单验证
extList: {
tbl_community: [],
tbl_community_amst_office: [],
......@@ -206,6 +60,9 @@ export default {
tbl_industry_council: [],
tbl_residents_committees: [],
}, // ext所有列表
keyCode: [],
key: '',
text: '',
content: {}
}
},
......@@ -219,18 +76,40 @@ export default {
this.$ajax.get({
url: this.$api.GET_RIZHI_INFO.replace('{id}', this.$route.query.id),
}).then(res => {
if (res.code == '200') {
this.content = this.$com.confirm(res, 'data.content', [])
} else {
this.$message.info(res.msg, 10)
}
const data = this.content.dataAfterObj
this.data = this.content.dataAfterObj?JSON.parse(this.content.dataAfterObj.extJson):null
const dataCode = this.content.dataBeforeObj
this.dataCode = this.content.dataBeforeObj?JSON.parse(this.content.dataBeforeObj.extJson):null
if (res.code == '200') {
this.$ajax.get({
url: this.$api.GET_SAFE_EXT.replace('{table}', 'tbl_community').replace('{id}', this.$route.query.id),
}).then(res => {
if (res.code == 200) {
this.extList.tbl_community = this.$com.confirm(res, 'data.content', [])
if(this.data !=null){
for (let init in this.data) {
this.extList.tbl_community.forEach((item, index) => {
if(item.keyCode == init){
this.extList.tbl_community[index].keyValue = this.data[init]
}
})
}
}
if(this.dataCode != null){
for (let ini in this.dataCode) {
this.extList.tbl_community.forEach((ele, index) => {
if(ele.keyCode == ini){
this.extList.tbl_community[index].keyVal = this.dataCode[ini]
}
})
}
}
}
})
} else {
this.$message.info(res.msg, 10)
}
})
},
},
......
<template>
<div class="routerWapper enquiryList">
<div class="portalDetailTitle">
<span class="title">
日志详情
</span>
<div class="detailOperations">
<a-button @click="$router.back()"> 返回 </a-button>
</div>
</div>
<!-- 小区 -->
<div v-if="$route.name == 'jingliInfo'" class="layoutMargin layoutPadding">
<div style="font-size:16px;margin-bottom:20px">
<P> 操作人:{{content.creator}}</P>
<P> 操作说明:{{content.pointName}}</P>
<P>操作时间:{{this.$moment(content.createTime).format('YYYY-MM-DD')}}</P>
</div>
<div class="cardBox">
<a-card title="操作前信息" style="width: 49%;margin-right:1%;margin-bottom:1%;justify-content:flex-end;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-form class="protalForm">
<a-form-item v-for="(item,k) in extList.tbl_community" :key="k" :label="item.keyName" :label-col="{ span: 9 }" :wrapper-col="{ span: 12 }">
<a-input v-decorator="[item.keyCode]" disabled="disabled"/>
</a-form-item>
</a-form>
</div>
</div>
</a-card>
<a-card title="操作后信息" style="width: 49%;margin-right:1%;margin-bottom:1%;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-form class="protalForm">
<a-form-item v-for="(item,k) in extList.tbl_community_manager" :key="k" :label="item.keyName" :label-col="{ span: 9 }" :wrapper-col="{ span: 12 }">
<a-input v-decorator="[item.keyCode]" disabled="disabled"/>
</a-form-item>
</a-form>
</div>
</div>
</a-card>
</div>
</div>
<RouterWapper v-else></RouterWapper>
</div>
</template>
<script>
export default {
name: 'jingliInfo',
data() {
formExt: this.$form.createForm(this)
return {
extList: {
tbl_community: [],
tbl_community_amst_office: [],
tbl_prop_company: [],
tbl_community_manager: [],
tbl_industry_council: [],
tbl_residents_committees: [],
}, // ext所有列表
content: {}
}
},
mounted(){
if(this.$route.name == 'jingliInfo'){
this.getList()
}
},
methods: {
getList(params){
this.$ajax.get({
url: this.$api.GET_RIZHI_INFO.replace('{id}', this.$route.query.id),
}).then(res => {
if (res.code == '200') {
this.content = this.$com.confirm(res, 'data.content', [])
} else {
this.$message.info(res.msg, 10)
}
this.$ajax.get({
url: this.$api.GET_SAFE_EXT.replace('{table}', 'tbl_community_manager').replace('{id}', this.$route.query.id),
}).then(res => {
if (res.code == 200) {
this.extList.tbl_community_manager = this.$com.confirm(res, 'data.content', [])
}
})
})
},
},
}
</script>
<style>
.enquiryList .ant-card-head{
border-bottom: 1px dashed #e8e8e8;
padding: 0 12px;
}
.enquiryList .ant-card-body{
padding: 0px;
}
.enquiryList .card-bottom{
padding: 8px 0px;
text-align: center;
color: #1890ff;
border-top: 1px solid #e8e8e8;
cursor: pointer;
}
.enquiryList .card-centent{
padding: 12px;
}
.enquiryList .cardBox{
display:flex;
flex-wrap: wrap;
}
</style>
<template>
<div class="routerWapper enquiryList">
<div class="portalDetailTitle">
<span class="title">
日志详情
</span>
<div class="detailOperations">
<a-button @click="$router.back()"> 返回 </a-button>
</div>
</div>
<!-- 小区 -->
<div v-if="$route.name == 'jueseInfo'" class="layoutMargin layoutPadding">
<div style="font-size:16px;margin-bottom:20px">
<P> 操作人:{{content.creator}}</P>
<P> 操作说明:{{content.pointName}}</P>
<P>操作时间:{{this.$moment(content.createTime).format('YYYY-MM-DD')}}</P>
</div>
<div class="cardBox">
<a-card title="操作前信息" style="width: 49%;margin-right:1%;margin-bottom:1%;justify-content:flex-end;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<div class="layoutMargin detailsPartSection contentPadding">
<a-form class="portalDetailContentBody" :form="formData">
<p>
角色名称:<span>{{content.dataBeforeObj?content.dataBeforeObj.roleName:''}}</span>
</p>
<a-tree class="portalRoleTree" v-if="showTree" checkable :treeData="treeData" :defaultExpandedKeys='expandedKeys1' v-model="checkedKeys1" disabled="disabled" />
</a-form>
</div>
</div>
</div>
</a-card>
<a-card title="操作后信息" style="width: 49%;margin-right:1%;margin-bottom:1%;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<div class="layoutMargin detailsPartSection contentPadding">
<a-form class="portalDetailContentBody" :form="formData">
<p>
角色名称:<span>{{content.dataAfterObj?content.dataAfterObj.roleName:''}}</span>
</p>
<a-tree class="portalRoleTree" v-if="showTree" checkable :treeData="treeData" :defaultExpandedKeys='expandedKeys' v-model="checkedKeys" disabled="disabled" />
</a-form>
</div>
</div>
</div>
</a-card>
</div>
</div>
<RouterWapper v-else></RouterWapper>
</div>
</template>
<script>
export default {
name: 'jueseInfo',
data() {
formExt: this.$form.createForm(this)
return {
showTree: false,
treeData: [],
expandedKeys: [],
checkedKeys: [],
expandedKeys1: [],
checkedKeys1: [],
roleName: null,
userCount: null,
roleIds: [], // 功能点的id数组
content: {}
}
},
mounted(){
if(this.$route.name == 'jueseInfo'){
this.getList()
this.getTree()
}
},
beforeCreate() {
this.formData = this.$form.createForm(this)
},
methods: {
getTree(){
this.$ajax.get({
url: this.$api.GET_ALL_ROLE + '?isTree=true'
}).then(res => {
const data=res.data.content
this.parentId = data.id
data.forEach((item, index) => {
this.treeData.push(this.getTreeNode(item, index))
})
this.getList(this.$route.query.id)
})
},
getList(){
this.$ajax.get({
url: this.$api.GET_RIZHI_INFO.replace('{id}', this.$route.query.id),
}).then(res => {
if(res.code === '200'){
this.content = res.data.content
const data=res.data.content
this.roleName=data.roleName
this.userCount=data.userCount
this.expandedKeys=JSON.parse(JSON.stringify(this.checkedKeys))
this.expandedKeys1=JSON.parse(JSON.stringify(this.checkedKeys1))
this.showTree=true
if(data.dataBeforeObj){
this.checkedKeys1=data.dataBeforeObj.perm.map((item) => {
return item.id
})
}
if(data.dataAfterObj){
this.checkedKeys=data.dataAfterObj.perm.map((item) => {
return item.id
})
}
}else{
this.$message.error(res.msg)
}
})
},
getTreeNode(item, index){
let childrenNode = {}
if(this.roleIds.length>0 && this.roleIds.indexOf(item.id)<0 && !this.$store.state.userInfos.isAllPerm){
childrenNode={
title: item.permName,
key: item.id,
disabled: true,
}
}else{
childrenNode={
title: item.permName,
key: item.id
}
}
if(item.childList && item.childList.length){
childrenNode.children = []
item.childList.forEach((subItem, subIndex) => {
const subkey = subItem.id
childrenNode.children.push(this.getTreeNode(subItem, subkey))
})
}
return childrenNode
},
},
}
</script>
<style>
.enquiryList .ant-card-head{
border-bottom: 1px dashed #e8e8e8;
padding: 0 12px;
}
.enquiryList .ant-card-body{
padding: 0px;
}
.enquiryList .card-bottom{
padding: 8px 0px;
text-align: center;
color: #1890ff;
border-top: 1px solid #e8e8e8;
cursor: pointer;
}
.enquiryList .card-centent{
padding: 12px;
}
.enquiryList .cardBox{
display:flex;
flex-wrap: wrap;
}
</style>
<template>
<div class="routerWapper enquiryList">
<div class="portalDetailTitle">
<span class="title">
日志详情
</span>
<div class="detailOperations">
<a-button @click="$router.back()"> 返回 </a-button>
</div>
</div>
<!-- 小区 -->
<div v-if="$route.name == 'juweiInfo'" class="layoutMargin layoutPadding">
<div style="font-size:16px;margin-bottom:20px">
<P> 操作人:{{content.creator}}</P>
<P> 操作说明:{{content.pointName}}</P>
<P>操作时间:{{this.$moment(content.createTime).format('YYYY-MM-DD')}}</P>
</div>
<div class="cardBox">
<a-card title="操作前信息" style="width: 49%;margin-right:1%;margin-bottom:1%;justify-content:flex-end;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-form class="protalForm">
<a-form-item v-for="(item,k) in extList.tbl_community" :key="k" :label="item.keyName" :label-col="{ span: 9 }" :wrapper-col="{ span: 12 }">
<a-input v-decorator="[item.keyCode]" disabled="disabled"/>
</a-form-item>
</a-form>
</div>
</div>
</a-card>
<a-card title="操作后信息" style="width: 49%;margin-right:1%;margin-bottom:1%;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-form class="protalForm">
<a-form-item v-for="(item,k) in extList.tbl_residents_committees" :key="k" :label="item.keyName" :label-col="{ span: 9 }" :wrapper-col="{ span: 12 }">
<a-input v-decorator="[item.keyCode]" disabled="disabled"/>
</a-form-item>
</a-form>
</div>
</div>
</a-card>
</div>
</div>
<RouterWapper v-else></RouterWapper>
</div>
</template>
<script>
export default {
name: 'juweiInfo',
data() {
formExt: this.$form.createForm(this)
return {
extList: {
tbl_community: [],
tbl_community_amst_office: [],
tbl_prop_company: [],
tbl_community_manager: [],
tbl_industry_council: [],
tbl_residents_committees: [],
}, // ext所有列表
content: {}
}
},
mounted(){
if(this.$route.name == 'juweiInfo'){
this.getList()
}
},
methods: {
getList(params){
this.$ajax.get({
url: this.$api.GET_RIZHI_INFO.replace('{id}', this.$route.query.id),
}).then(res => {
if (res.code == '200') {
this.content = this.$com.confirm(res, 'data.content', [])
} else {
this.$message.info(res.msg, 10)
}
this.$ajax.get({
url: this.$api.GET_SAFE_EXT.replace('{table}', 'tbl_residents_committees').replace('{id}', this.$route.query.id),
}).then(res => {
if (res.code == 200) {
this.extList.tbl_residents_committees = this.$com.confirm(res, 'data.content', [])
}
})
})
},
},
}
</script>
<style>
.enquiryList .ant-card-head{
border-bottom: 1px dashed #e8e8e8;
padding: 0 12px;
}
.enquiryList .ant-card-body{
padding: 0px;
}
.enquiryList .card-bottom{
padding: 8px 0px;
text-align: center;
color: #1890ff;
border-top: 1px solid #e8e8e8;
cursor: pointer;
}
.enquiryList .card-centent{
padding: 12px;
}
.enquiryList .cardBox{
display:flex;
flex-wrap: wrap;
}
</style>
<template>
<div>
<div class="routerWapper AccountManagement" v-if="$route.name == 'rizhi'">
<div class="routerWapper AccountManagement" v-if="$route.name == 'rizhi'&&$permission('0010')">
<div class="routerContent layoutMargin layoutPadding">
<!-- 搜索区 -->
<a-form class="protalForm" :form="searchForm" style="padding: 0px 10px;">
......@@ -23,7 +23,7 @@
<a-table class="elevator-table portalTable" :dataSource="List" :columns="columns" size="small" :pagination="pagination"
rowKey="id">
<span slot="operation" slot-scope="text, record">
<span class="actionBtn" @click="toNext(record)">查看</span>
<span class="actionBtn" v-if="$permission('001001')" @click="toNext(record)">查看</span>
</span>
</a-table>
</div>
......@@ -144,6 +144,7 @@ export default {
})
}else{
var searchParms = {
'createTime_desc': 'desc',
'createTime_btw': !!this.searchForm.getFieldValue('createTime_btw') ? [this.$moment(this.searchForm.getFieldValue('createTime_btw')[0]).format('YYYY-MM-DD'), this.$moment(this.searchForm.getFieldValue('createTime_btw')[1]).format('YYYY-MM-DD')].toString(): '',
pageNo: this.pagination.current,
pageSize: 10,
......@@ -180,13 +181,86 @@ export default {
*/
toNext(record){
// 进入详情
if(record.pointName.slice(0, 6)=='拓展信息管理'){
this.$router.push({
name: 'tuozhanxinxiguanliInfo',
query: {
id: record.id,
},
})
}else if(record.pointName.slice(0, 8)=='小区拓展字段维护'){
this.$router.push({
name: 'rizhiInfo',
query: {
id: record.id,
type: 'view'
},
})
}else if(record.pointName.slice(0, 11)=='业委会信息拓展字段维护'){
this.$router.push({
name: 'yeweiInfo',
query: {
id: record.id,
},
})
}else if(record.pointName.slice(0, 10)=='物业企业拓展字段维护'){
this.$router.push({
name: 'wuyeInfo',
query: {
id: record.id,
},
})
}else if(record.pointName.slice(0, 11)=='小区管理处拓展字段维护'){
this.$router.push({
name: 'guanliInfo',
query: {
id: record.id,
},
})
}else if(record.pointName.slice(0, 10)=='小区经理拓展字段维护'){
this.$router.push({
name: 'jingliInfo',
query: {
id: record.id,
},
})
}else if(record.pointName.slice(0, 11)=='居委会信息拓展字段维护'){
this.$router.push({
name: 'juweiInfo',
query: {
id: record.id,
},
})
}else if(record.pointName.slice(0, 4)=='角色管理'){
console.log(record.pointName.slice(0, 4))
this.$router.push({
name: 'jueseInfo',
query: {
id: record.id,
},
})
}else if(record.pointName.slice(0, 4)=='用户管理'){
this.$router.push({
name: 'zhanghuInfo',
query: {
id: record.id,
},
})
}else if(record.pointName.slice(0, 10) == '非居信息拓展字段维护'){
this.$router.push({
name: 'feijuInfo',
query: {
id: record.id,
},
})
}else if(record.pointName.slice(0, 6) == '系统信息配置'){
this.$router.push({
name: 'xitongxinxi',
query: {
id: record.id,
},
})
}
},
/**
* 清空表单
......
<template>
<div class="routerWapper enquiryList">
<div class="portalDetailTitle">
<span class="title">
日志详情
</span>
<div class="detailOperations">
<a-button @click="$router.back()"> 返回 </a-button>
</div>
</div>
<!-- 小区 -->
<div v-if="$route.name == 'tuozhanxinxiguanliInfo'" class="layoutMargin layoutPadding">
<div style="font-size:16px;margin-bottom:20px">
<P> 操作人:{{content.creator}}</P>
<P> 操作说明:{{content.pointName}}</P>
<P>操作时间:{{this.$moment(content.createTime).format('YYYY-MM-DD')}}</P>
</div>
<div class="cardBox">
<a-card title="操作前信息" style="width: 49%;margin-right:1%;margin-bottom:1%;justify-content:flex-end;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-table bordered class="portalTable" :dataSource="taskCollectList" :columns="columns" size="small">
</a-table>
</div>
</div>
</a-card>
<a-card title="操作后信息" style="width: 49%;margin-right:1%;margin-bottom:1%;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-form class="protalForm">
<div style="margin-bottom:8px;">
<a-table bordered class="portalTable" :dataSource="taskCollectList1" :columns="columns" size="small">
</a-table>
</div>
</a-form>
</div>
</div>
</a-card>
</div>
</div>
<RouterWapper v-else></RouterWapper>
</div>
</template>
<script>
export default {
name: 'tuozhanxinxiguanliInfo',
data() {
formExt: this.$form.createForm(this)
return {
extList: {
tbl_community: [],
tbl_community_amst_office: [],
tbl_prop_company: [],
tbl_community_manager: [],
tbl_industry_council: [],
tbl_residents_committees: [],
}, // ext所有列表
content: {},
taskCollectList: [],
taskCollectList1: [],
columns: [
{
title: '字段名称',
dataIndex: 'keyName',
key: 'keyName',
},
{
title: '组件类型',
dataIndex: 'compntType',
key: 'compntType',
},
{
title: '默认值',
dataIndex: 'defVal',
key: 'defVal',
},
],
}
},
mounted(){
if(this.$route.name == 'tuozhanxinxiguanliInfo'){
this.getTaskCollectList()
}
},
methods: {
getTaskCollectList(params){ // 获取列表里面的数据
this.$ajax.get({
url: this.$api.GET_RIZHI_INFO.replace('{id}', this.$route.query.id),
params: {
tbl: params,
},
}).then(res => {
this.content = this.$com.confirm(res, 'data.content', [])
if (res.code == '200') {
this.taskCollectList = this.content.dataBeforeObj
this.taskCollectList1 = this.content.dataAfterObj
} else {
this.$message.info(res.msg, 10)
}
})
},
},
}
</script>
<style>
.enquiryList .ant-card-head{
border-bottom: 1px dashed #e8e8e8;
padding: 0 12px;
}
.enquiryList .ant-card-body{
padding: 0px;
}
.enquiryList .card-bottom{
padding: 8px 0px;
text-align: center;
color: #1890ff;
border-top: 1px solid #e8e8e8;
cursor: pointer;
}
.enquiryList .card-centent{
padding: 12px;
}
.enquiryList .cardBox{
display:flex;
flex-wrap: wrap;
}
</style>
<template>
<div class="routerWapper enquiryList">
<div class="portalDetailTitle">
<span class="title">
日志详情
</span>
<div class="detailOperations">
<a-button @click="$router.back()"> 返回 </a-button>
</div>
</div>
<!-- 小区 -->
<div v-if="$route.name == 'wuyeInfo'" class="layoutMargin layoutPadding">
<div style="font-size:16px;margin-bottom:20px">
<P> 操作人:{{content.creator}}</P>
<P> 操作说明:{{content.pointName}}</P>
<P>操作时间:{{this.$moment(content.createTime).format('YYYY-MM-DD')}}</P>
</div>
<div class="cardBox">
<a-card title="操作前信息" style="width: 49%;margin-right:1%;margin-bottom:1%;justify-content:flex-end;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-form class="protalForm">
<a-form-item v-for="(item,k) in extList.tbl_community" :key="k" :label="item.keyName" :label-col="{ span: 9 }" :wrapper-col="{ span: 12 }">
<a-input v-decorator="[item.keyCode]" disabled="disabled"/>
</a-form-item>
</a-form>
</div>
</div>
</a-card>
<a-card title="操作后信息" style="width: 49%;margin-right:1%;margin-bottom:1%;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-form class="protalForm">
<a-form-item v-for="(item,k) in extList.tbl_prop_company" :key="k" :label="item.keyName" :label-col="{ span: 9 }" :wrapper-col="{ span: 12 }">
<a-input v-decorator="[item.keyCode]" disabled="disabled"/>
</a-form-item>
</a-form>
</div>
</div>
</a-card>
</div>
</div>
<RouterWapper v-else></RouterWapper>
</div>
</template>
<script>
export default {
name: 'wuyeInfo',
data() {
formExt: this.$form.createForm(this)
return {
extList: {
tbl_community: [],
tbl_community_amst_office: [],
tbl_prop_company: [],
tbl_community_manager: [],
tbl_industry_council: [],
tbl_residents_committees: [],
}, // ext所有列表
content: {}
}
},
mounted(){
if(this.$route.name == 'wuyeInfo'){
this.getList()
}
},
methods: {
getList(params){
this.$ajax.get({
url: this.$api.GET_RIZHI_INFO.replace('{id}', this.$route.query.id),
}).then(res => {
if (res.code == '200') {
this.content = this.$com.confirm(res, 'data.content', [])
} else {
this.$message.info(res.msg, 10)
}
this.$ajax.get({
url: this.$api.GET_SAFE_EXT.replace('{table}', 'tbl_prop_company').replace('{id}', this.$route.query.id),
}).then(res => {
if (res.code == 200) {
this.extList.tbl_prop_company = this.$com.confirm(res, 'data.content', [])
}
})
})
},
},
}
</script>
<style>
.enquiryList .ant-card-head{
border-bottom: 1px dashed #e8e8e8;
padding: 0 12px;
}
.enquiryList .ant-card-body{
padding: 0px;
}
.enquiryList .card-bottom{
padding: 8px 0px;
text-align: center;
color: #1890ff;
border-top: 1px solid #e8e8e8;
cursor: pointer;
}
.enquiryList .card-centent{
padding: 12px;
}
.enquiryList .cardBox{
display:flex;
flex-wrap: wrap;
}
</style>
<template>
<div class="routerWapper enquiryList">
<div class="portalDetailTitle">
<span class="title">
日志详情
</span>
<div class="detailOperations">
<a-button @click="$router.back()"> 返回 </a-button>
</div>
</div>
<!-- 小区 -->
<div v-if="$route.name == 'xitongxinxi'" class="layoutMargin layoutPadding">
<div style="font-size:16px;margin-bottom:20px">
<P> 操作人:{{content.creator}}</P>
<P> 操作说明:{{content.pointName}}</P>
<P>操作时间:{{this.$moment(content.createTime).format('YYYY-MM-DD')}}</P>
</div>
<div class="cardBox">
<a-card title="操作前信息" style="width: 49%;margin-right:1%;margin-bottom:1%;justify-content:flex-end;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-tabs default-active-key="1">
<a-tab-pane tab="系统信息" key="1">
<a-form>
<a-form-item label="项目名" :label-col="{ span: 5 }" :wrapper-col="{ span: 12 }">
<p>
{{content.dataBeforeObj?content.dataBeforeObj.prjName:''}}
</p>
</a-form-item>
</a-form>
</a-tab-pane>
</a-tabs>
</div>
</div>
</a-card>
<a-card title="操作后信息" style="width: 49%;margin-right:1%;margin-bottom:1%;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-tabs default-active-key="1">
<a-tab-pane tab="系统信息" key="1">
<a-form>
<a-form-item label="项目名" :label-col="{ span: 5 }" :wrapper-col="{ span: 12 }">
<p>
{{content.dataAfterObj?content.dataAfterObj.prjName:''}}
</p>
</a-form-item>
</a-form>
</a-tab-pane>
</a-tabs>
</div>
</div>
</a-card>
</div>
</div>
<RouterWapper v-else></RouterWapper>
</div>
</template>
<script>
export default {
name: 'xitongxinxi',
data() {
return {
extList: {
tbl_community: [],
tbl_community_amst_office: [],
tbl_prop_company: [],
tbl_community_manager: [],
tbl_industry_council: [],
tbl_residents_committees: [],
}, // ext所有列表
keyCode: [],
key: '',
text: '',
content: {}
}
},
mounted(){
if(this.$route.name == 'xitongxinxi'){
this.getList()
}
},
methods: {
getList(params){
this.$ajax.get({
url: this.$api.GET_RIZHI_INFO.replace('{id}', this.$route.query.id),
}).then(res => {
this.content = this.$com.confirm(res, 'data.content', [])
if (res.code == '200') {
} else {
this.$message.info(res.msg, 10)
}
})
},
},
}
</script>
<style>
.enquiryList .ant-card-head{
border-bottom: 1px dashed #e8e8e8;
padding: 0 12px;
}
.enquiryList .ant-card-body{
padding: 0px;
}
.enquiryList .card-bottom{
padding: 8px 0px;
text-align: center;
color: #1890ff;
border-top: 1px solid #e8e8e8;
cursor: pointer;
}
.enquiryList .card-centent{
padding: 12px;
}
.enquiryList .cardBox{
display:flex;
flex-wrap: wrap;
}
</style>
<template>
<div class="routerWapper enquiryList">
<div class="portalDetailTitle">
<span class="title">
日志详情
</span>
<div class="detailOperations">
<a-button @click="$router.back()"> 返回 </a-button>
</div>
</div>
<!-- 小区 -->
<div v-if="$route.name == 'yeweiInfo'" class="layoutMargin layoutPadding">
<div style="font-size:16px;margin-bottom:20px">
<P> 操作人:{{content.creator}}</P>
<P> 操作说明:{{content.pointName}}</P>
<P>操作时间:{{this.$moment(content.createTime).format('YYYY-MM-DD')}}</P>
</div>
<div class="cardBox">
<a-card title="操作前信息" style="width: 49%;margin-right:1%;margin-bottom:1%;justify-content:flex-end;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-form class="protalForm">
<a-form-item v-for="(item,k) in extList.tbl_community" :key="k" :label="item.keyName" :label-col="{ span: 9 }" :wrapper-col="{ span: 12 }">
<a-input v-decorator="[item.keyCode]" disabled="disabled"/>
</a-form-item>
</a-form>
</div>
</div>
</a-card>
<a-card title="操作后信息" style="width: 49%;margin-right:1%;margin-bottom:1%;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<a-form class="protalForm">
<a-form-item v-for="(item,k) in extList.tbl_industry_council" :key="k" :label="item.keyName" :label-col="{ span: 9 }" :wrapper-col="{ span: 12 }">
<a-input v-decorator="[item.keyCode]" disabled="disabled"/>
</a-form-item>
</a-form>
</div>
</div>
</a-card>
</div>
</div>
<RouterWapper v-else></RouterWapper>
</div>
</template>
<script>
export default {
name: 'yeweiInfo',
data() {
formExt: this.$form.createForm(this)
return {
extList: {
tbl_community: [],
tbl_community_amst_office: [],
tbl_prop_company: [],
tbl_community_manager: [],
tbl_industry_council: [],
tbl_residents_committees: [],
}, // ext所有列表
content: {}
}
},
mounted(){
if(this.$route.name == 'yeweiInfo'){
this.getList()
}
},
methods: {
getList(params){
this.$ajax.get({
url: this.$api.GET_RIZHI_INFO.replace('{id}', this.$route.query.id),
}).then(res => {
if (res.code == '200') {
this.content = this.$com.confirm(res, 'data.content', [])
} else {
this.$message.info(res.msg, 10)
}
this.$ajax.get({
url: this.$api.GET_SAFE_EXT.replace('{table}', 'tbl_industry_council').replace('{id}', this.$route.query.id),
}).then(res => {
if (res.code == 200) {
this.extList.tbl_industry_council = this.$com.confirm(res, 'data.content', [])
}
})
})
},
},
}
</script>
<style>
.enquiryList .ant-card-head{
border-bottom: 1px dashed #e8e8e8;
padding: 0 12px;
}
.enquiryList .ant-card-body{
padding: 0px;
}
.enquiryList .card-bottom{
padding: 8px 0px;
text-align: center;
color: #1890ff;
border-top: 1px solid #e8e8e8;
cursor: pointer;
}
.enquiryList .card-centent{
padding: 12px;
}
.enquiryList .cardBox{
display:flex;
flex-wrap: wrap;
}
</style>
<template>
<div class="routerWapper enquiryList">
<div class="portalDetailTitle">
<span class="title">
日志详情
</span>
<div class="detailOperations">
<a-button @click="$router.back()"> 返回 </a-button>
</div>
</div>
<!-- 小区 -->
<div v-if="$route.name == 'zhanghuInfo'" class="layoutMargin layoutPadding">
<div style="font-size:16px;margin-bottom:20px">
<P> 操作人:{{content.creator}}</P>
<P> 操作说明:{{content.pointName}}</P>
<P>操作时间:{{this.$moment(content.createTime).format('YYYY-MM-DD')}}</P>
</div>
<div class="cardBox">
<a-card title="操作前信息" style="width: 49%;margin-right:1%;margin-bottom:1%;justify-content:flex-end;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<div class="layoutMargin detailsPartSection contentPadding">
<a-form class="portalDetailContentBody" :form="formData">
<p>
姓名:<span>{{content.dataBeforeObj?content.dataBeforeObj.name:''}}</span>
</p>
<p>
手机:<span>{{content.dataBeforeObj?content.dataBeforeObj.phone:''}}</span>
</p>
<p>
邮箱:<span>{{content.dataBeforeObj?content.dataBeforeObj.roleName:''}}</span>
</p>
<p>
机构类型:<span>{{content.dataBeforeObj?content.dataBeforeObj.orgType:''}}</span>
</p>
<p>
机构名称:<span>{{content.dataBeforeObj?content.dataBeforeObj.orgName:''}}</span>
</p>
<p>
角色名称:<span>{{content.dataBeforeObj?content.dataBeforeObj.roleNames:''}}</span>
</p>
<!-- <a-tree class="portalRoleTree" v-if="showTree" checkable :treeData="treeData" :defaultExpandedKeys='expandedKeys1' v-model="checkedKeys1" disabled="disabled" /> -->
</a-form>
</div>
</div>
</div>
</a-card>
<a-card title="操作后信息" style="width: 49%;margin-right:1%;margin-bottom:1%;">
<div class="card-centent">
<div style="margin-bottom:8px;">
<div class="layoutMargin detailsPartSection contentPadding">
<a-form class="portalDetailContentBody" :form="formData">
<p>
姓名:<span>{{content.dataAfterObj?content.dataAfterObj.name:''}}</span>
</p>
<p>
手机:<span>{{content.dataAfterObj?content.dataAfterObj.phone:''}}</span>
</p>
<p>
邮箱:<span>{{content.dataAfterObj?content.dataAfterObj.roleName:''}}</span>
</p>
<p>
机构类型:<span>{{content.dataAfterObj?content.dataAfterObj.orgType:''}}</span>
</p>
<p>
机构名称:<span>{{content.dataAfterObj?content.dataAfterObj.orgName:''}}</span>
</p>
<p>
角色名称:<span>{{content.dataAfterObj?content.dataAfterObj.roleNames:''}}</span>
</p>
<!-- <a-tree class="portalRoleTree" v-if="showTree" checkable :treeData="treeData" :defaultExpandedKeys='expandedKeys' v-model="checkedKeys" disabled="disabled" /> -->
</a-form>
</div>
</div>
</div>
</a-card>
</div>
</div>
<RouterWapper v-else></RouterWapper>
</div>
</template>
<script>
export default {
name: 'zhanghuInfo',
data() {
formExt: this.$form.createForm(this)
return {
showTree: false,
treeData: [],
expandedKeys: [],
checkedKeys: [],
expandedKeys1: [],
checkedKeys1: [],
roleName: null,
userCount: null,
roleIds: [], // 功能点的id数组
content: {}
}
},
mounted(){
if(this.$route.name == 'zhanghuInfo'){
this.getList()
this.getTree()
}
},
beforeCreate() {
this.formData = this.$form.createForm(this)
},
methods: {
getTree(){
this.$ajax.get({
url: this.$api.GET_ALL_ROLE + '?isTree=true'
}).then(res => {
const data=res.data.content
this.parentId = data.id
data.forEach((item, index) => {
this.treeData.push(this.getTreeNode(item, index))
})
this.getList(this.$route.query.id)
})
},
getList(){
this.$ajax.get({
url: this.$api.GET_RIZHI_INFO.replace('{id}', this.$route.query.id),
}).then(res => {
if(res.code === '200'){
this.content = res.data.content
const data=res.data.content
this.roleName=data.roleName
this.userCount=data.userCount
this.expandedKeys=JSON.parse(JSON.stringify(this.checkedKeys))
this.expandedKeys1=JSON.parse(JSON.stringify(this.checkedKeys1))
this.showTree=true
if(data.dataBeforeObj){
this.checkedKeys1=data.dataBeforeObj.perm.map((item) => {
return item.id
})
}
if(data.dataAfterObj){
this.checkedKeys=data.dataAfterObj.perm.map((item) => {
return item.id
})
}
}else{
this.$message.error(res.msg)
}
})
},
getTreeNode(item, index){
if(this.roleIds.length>0 && this.roleIds.indexOf(item.id)<0 && !this.$store.state.userInfos.isAllPerm){
var childrenNode={
title: item.permName,
key: item.id,
disabled: true,
}
}else{
var childrenNode={
title: item.permName,
key: item.id
}
}
if(item.childList && item.childList.length){
childrenNode.children = []
item.childList.forEach((subItem, subIndex) => {
const subkey = subItem.id
childrenNode.children.push(this.getTreeNode(subItem, subkey))
})
}
return childrenNode
},
},
}
</script>
<style>
.enquiryList .ant-card-head{
border-bottom: 1px dashed #e8e8e8;
padding: 0 12px;
}
.enquiryList .ant-card-body{
padding: 0px;
}
.enquiryList .card-bottom{
padding: 8px 0px;
text-align: center;
color: #1890ff;
border-top: 1px solid #e8e8e8;
cursor: pointer;
}
.enquiryList .card-centent{
padding: 12px;
}
.enquiryList .cardBox{
display:flex;
flex-wrap: wrap;
}
</style>
<template>
<keep-alive>
<div class="routerWapper">
<div v-if="$route.name == 'role' && $permission('000903')" class="layoutMargin layoutPadding">
<a-form class="protalForm" :form="searchForm">
......@@ -16,7 +17,7 @@
</a-form>
<p class="gayLine noline"></p>
<div class="portalTableOperates">
<a-button type="primary" icon='plus' v-if="$permission('00090302')" @click="addBtn">新增角色</a-button>
<a-button type="primary" icon='plus' v-if="$permission('00090303')" @click="addBtn">新增角色</a-button>
</div>
<div class="wrapper-roles">
<div class="box" v-for="(item,index) in roleList" :key="index">
......@@ -32,10 +33,10 @@
<a-divider type="vertical" />
</template>
<template>
<span @click="edit(item)" v-if="$permission('00090304')">修改</span>
<span @click="edit(item)" v-if="$permission('00090303')">修改</span>
<a-divider type="vertical" />
</template>
<span @click="deleteBtn(item)" v-if="$permission('00090304')">删除</span>
<span @click="deleteBtn(item)" v-if="$permission('00090303')">删除</span>
</div>
</div>
</div>
......@@ -50,6 +51,7 @@
</div>
<RouterWapper v-else></RouterWapper>
</div>
</keep-alive>
</template>
<script>
import DataOperatorInList from '@/views/components/dataOperatorInList'
......@@ -73,10 +75,20 @@ export default {
groups: require('@/assets/images/group.png'),
}
},
watch: {
$route(cur) {
if (cur) {
this.getSearchParams()
}
},
},
mounted(){
console.log(1)
if(this.$route.name == 'role'){
console.log(3)
this.getSearchParams()
}
},
activated () {
if(this.$route.name == 'role'){
this.getSearchParams()
}
},
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment