Browse Source

Merge branch 'test' of http://git.elinkit.com.cn:7070/r/epmet-oper-gov into test

shibei_master
dai 4 years ago
parent
commit
fb96aaa725
  1. 2
      src/assets/scss/modules/visual/personCategory.scss
  2. 31
      src/views/components/resiTransfer.vue
  3. 2
      src/views/components/scoreRecord.vue
  4. 2
      src/views/modules/base/resi.vue
  5. 1
      src/views/modules/communityParty/regionalParty/activitys.vue
  6. 30
      src/views/modules/communityParty/regionalParty/activitysForm.vue
  7. 20
      src/views/modules/communityParty/regionalParty/units.vue
  8. 28
      src/views/modules/communityParty/regionalParty/unitsForm.vue
  9. 141
      src/views/modules/visual/basicinfo/basicInfoCommunity.vue
  10. 107
      src/views/modules/visual/basicinfo/basicInfoMain.vue
  11. 80
      src/views/modules/visual/communityGovern/processAnalyze.vue
  12. 14
      src/views/modules/visual/communityGovern/resibuzz.vue

2
src/assets/scss/modules/visual/personCategory.scss

@ -35,7 +35,7 @@
margin-top: 10px; margin-top: 10px;
margin-left: 10px; margin-left: 10px;
margin-right: 15px; margin-right: 15px;
margin-bottom: 15px; margin-bottom: 20px;
cursor: pointer; cursor: pointer;
&-img { &-img {

31
src/views/components/resiTransfer.vue

@ -19,7 +19,7 @@
style="display: block"> style="display: block">
<el-radio-group v-model="dataForm.type"> <el-radio-group v-model="dataForm.type">
<el-radio :label="'in'">{{'迁往'+rootAgency.rootAgencyName+'内其他区域'}}</el-radio> <el-radio :label="'in'">{{'迁往'+rootAgency.organizationName+'内其他区域'}}</el-radio>
<el-radio :label="'out'">其他</el-radio> <el-radio :label="'out'">其他</el-radio>
</el-radio-group> </el-radio-group>
@ -150,7 +150,7 @@ export default {
remark: '' // remark: '' //
}, },
staffId: '',//id customerId: '',//id
userId: '',//id userId: '',//id
gridName: '', gridName: '',
rootAgency: {}, rootAgency: {},
@ -179,7 +179,8 @@ export default {
methods: { methods: {
async initForm (row) { async initForm (row) {
this.staffId = localStorage.getItem("staffId");
this.customerId = localStorage.getItem("customerId");
this.$refs.ref_form.resetFields(); this.$refs.ref_form.resetFields();
@ -195,22 +196,16 @@ export default {
//id //id
async loadRootAgency () { async loadRootAgency () {
const url = '/gov/org/customeragency/root-orglist-by-staffid' await this.$http.post('/gov/org/agency/customerrootagency/' + this.customerId).then(({ data: res }) => {
if (res.code !== 0) {
let params = { return this.$message.error(res.msg)
staffId: this.staffId }
}
const { data, code, msg } = await requestPost(url, params)
if (code === 0) { if (res.data) {
if (data && data.length > 0) { this.rootAgency = res.data
this.rootAgency = data[0]
} }
}).catch(() => { })
} else {
this.$message.error(msg)
}
}, },
async getAgencylist () { async getAgencylist () {
@ -219,7 +214,7 @@ export default {
const params = { const params = {
agencyId: this.rootAgency.rootAgencyId agencyId: this.rootAgency.id
} }
const { data, code, msg } = await requestPost(url, params) const { data, code, msg } = await requestPost(url, params)
if (code === 0) { if (code === 0) {
@ -419,7 +414,7 @@ export default {
remark: '' // remark: '' //
} }
this.staffId = ''//id this.customerId = ''//id
this.userId = ''//id this.userId = ''//id
this.gridName = '' this.gridName = ''
this.rootAgency = {} this.rootAgency = {}

2
src/views/components/scoreRecord.vue

@ -121,7 +121,7 @@ export default {
pickerOptions: { // pickerOptions: { //
disabledDate (time) { disabledDate (time) {
return time.getTime() > (Date.now() - (24 * 60 * 60 * 1000)) return time.getTime() > (Date.now())
} }
}, },

2
src/views/modules/base/resi.vue

@ -69,7 +69,7 @@
<el-button @click="handleChangeRecord(scope.row)" <el-button @click="handleChangeRecord(scope.row)"
type="text" type="text"
size="small" size="small"
class="btn-color-look">调动记录</el-button> class="btn-color-look">变更记录</el-button>
<template v-if="filterEdit(scope.row.ORG_ID)"> <template v-if="filterEdit(scope.row.ORG_ID)">
<el-button @click="handleEdit(scope.row)" <el-button @click="handleEdit(scope.row)"
type="text" type="text"

1
src/views/modules/communityParty/regionalParty/activitys.vue

@ -206,7 +206,6 @@
@closed="diaClose"> @closed="diaClose">
<activitys-form ref="ref_form" <activitys-form ref="ref_form"
:unitList="unitList" :unitList="unitList"
:serviceList="serviceList"
@dialogCancle="addFormCancle" @dialogCancle="addFormCancle"
@dialogOk="addFormOk"></activitys-form> @dialogOk="addFormOk"></activitys-form>
</el-dialog> </el-dialog>

30
src/views/modules/communityParty/regionalParty/activitysForm.vue

@ -219,6 +219,7 @@ export default {
longitude: 36.0722275, // longitude: 36.0722275, //
latitude: 120.38945519 // latitude: 120.38945519 //
}, },
serviceList: []
} }
}, },
@ -233,6 +234,9 @@ export default {
this.startLoading() this.startLoading()
this.$refs.ref_form.resetFields(); this.$refs.ref_form.resetFields();
//
await this.loadService()
this.formType = type this.formType = type
if (activityId) { if (activityId) {
this.activityId = activityId this.activityId = activityId
@ -244,7 +248,25 @@ export default {
} }
this.endLoading() this.endLoading()
},
//
async loadService () {
const url = "/heart/serviceitem/dict-list"
let params = {
type: 'usable'
// parentCategoryCode: '1010'
}
const { data, code, msg } = await requestPost(url, params)
if (code === 0) {
this.serviceList = data
} else {
this.$message.error(msg)
}
}, },
@ -506,10 +528,10 @@ export default {
default: [] default: []
}, },
serviceList: { // serviceList: {
type: Array, // type: Array,
default: [] // default: []
}, // },
} }
} }
</script> </script>

20
src/views/modules/communityParty/regionalParty/units.vue

@ -240,7 +240,6 @@
top="5vh" top="5vh"
@closed="editDiaClose"> @closed="editDiaClose">
<units-form ref="ref_form" <units-form ref="ref_form"
:serviceList="serviceList"
:typeList="typeList" :typeList="typeList"
@dialogCancle="addFormCancle" @dialogCancle="addFormCancle"
@dialogOk="addFormOk"></units-form> @dialogOk="addFormOk"></units-form>
@ -305,24 +304,7 @@ export default {
agencyId: '', agencyId: '',
unitList: [],//list unitList: [],//list
serviceList: [ serviceList: [],//list
{
id: "1",
name: '积极配合社区安全巡查员进行场所消防、安全等方面的检查。'
},
{
id: "2",
name: '积极配合'
},
{
id: "3",
name: '积极配合社区安全巡查员进行'
},
{
id: "4",
name: '积极配合社区安全巡查员进行场所消防、安全等方面的检查。并具备安全意识及设备设施'
},
],//list
typeList: [],//list typeList: [],//list
unitId: '', unitId: '',

28
src/views/modules/communityParty/regionalParty/unitsForm.vue

@ -190,6 +190,7 @@ export default {
longitude: 36.0722275, // longitude: 36.0722275, //
latitude: 120.38945519 // latitude: 120.38945519 //
}, },
serviceList: [],//list
} }
}, },
@ -204,6 +205,9 @@ export default {
this.startLoading() this.startLoading()
this.$refs.ref_form.resetFields(); this.$refs.ref_form.resetFields();
//
await this.loadService()
this.formType = type this.formType = type
if (unitId) { if (unitId) {
this.unitId = unitId this.unitId = unitId
@ -218,6 +222,25 @@ export default {
}, },
//
async loadService () {
const url = "/heart/serviceitem/dict-list"
let params = {
type: 'usable'
// parentCategoryCode: '1010'
}
const { data, code, msg } = await requestPost(url, params)
if (code === 0) {
this.serviceList = data
} else {
this.$message.error(msg)
}
},
// //
async loadFormData () { async loadFormData () {
const url = '/heart/icpartyunit/detail' const url = '/heart/icpartyunit/detail'
@ -481,10 +504,7 @@ export default {
type: Array, type: Array,
default: [] default: []
}, },
serviceList: {
type: Array,
default: []
},
} }
} }
</script> </script>

141
src/views/modules/visual/basicinfo/basicInfoCommunity.vue

@ -6,8 +6,8 @@
<img src="../../../../assets/img/shuju/title-tip.png" <img src="../../../../assets/img/shuju/title-tip.png"
alt /> alt />
<div class="customer_select">
<!-- <span>{{neighborHoodName+'-'}}</span> --> <div class="second-select">
<el-select v-model="selBuildingId" <el-select v-model="selBuildingId"
:popper-append-to-body="false" :popper-append-to-body="false"
placeholder="请选择"> placeholder="请选择">
@ -19,6 +19,7 @@
</el-option> </el-option>
</el-select> </el-select>
</div> </div>
</div> </div>
<div class="div_room_bar"> <div class="div_room_bar">
<el-scrollbar style="height:100%"> <el-scrollbar style="height:100%">
@ -370,88 +371,88 @@ export default {
.info_loading { .info_loading {
margin-top: 50px; margin-top: 50px;
} }
.customer_select {
/* 未选中任何选项的时候 placeholder的样式 需要先选中父元素 增加权重 */
/deep/ input::-webkit-input-placeholder {
color: #fff;
}
/deep/ input::-moz-input-placeholder {
color: #fff;
}
/deep/ input::-ms-input-placeholder {
color: #fff;
}
/* 修改的是el-input的样式 */ .second-title {
/* 一种方法是设置最里层el-input__inner的背景色 外层的两级父元素设置为透明色 */ display: flex;
/* 另一种方法是从el-select到el-input__inenr的背景色都设置为需要的颜色 */ align-items: center;
/deep/ .el-select, margin-top: 20px;
/deep/ .el-input, .second-title-label {
/deep/ .el-input__inner { position: relative;
background-color: #08164d00; padding-left: 40px;
font-size: 16px;
font-weight: 500;
color: #fff; color: #fff;
border: 0px;
border-radius: 0px;
text-align: left;
font-size: 22px;
font-family: PingFang SC;
font-weight: 800;
color: #ffffff;
display: flex;
} }
.second-title-label::after {
/* el-input聚焦的时候 外层的border会有一个样式 */
/deep/ .el-select .el-input.is-focus .el-input__inner {
border: 0px;
}
/* 修改的是el-input上下的小图标的颜色 */
/deep/ .el-select .el-input .el-select__caret::before {
color: #fff;
content: ""; content: "";
background: url("../../../../assets/img/xiala.png") center center no-repeat;
position: absolute; position: absolute;
width: 100%;
height: 100%;
top: 50%; top: 50%;
left: 50%; left: 20px;
transform: translate(-50%, -50%); width: 12px;
} height: 12px;
box-sizing: border-box;
/* 修改总体选项的样式 最外层 */ margin-top: -6px;
/deep/ .el-select-dropdown { background: #2865fa;
background-color: #08164d; border-radius: 50%;
margin: 0px;
border: 0px;
border-radius: 0px;
}
/* 修改选项整体的样式 */
/deep/ .el-select-dropdown__list {
padding: 6px 0 20px 0;
}
/* 修改单个的选项的样式 */
/deep/ .el-select-dropdown__item {
background-color: transparent;
color: #fff;
} }
}
.second-select {
margin: 0 10px 10px;
::v-deep .el-input {
width: 180px;
height: 36px;
.el-input__inner {
height: 100%;
padding: 0 10px;
color: #fff;
line-height: 36px;
background: #06186d;
border: 1px solid #1a64cc;
}
/* item选项的hover样式 */ .el-icon-arrow-up:before {
/deep/ .el-select-dropdown__item.hover, content: "\e78f";
/deep/ .el-select-dropdown__item:hover { }
color: #409eff; // .el-select__caret:before {
// content: '\E790'
// }
} }
::v-deep .el-date-editor {
/* 修改的是下拉框选项内容上方的尖角 */ width: 360px;
/deep/ .el-popper .popper__arrow, position: relative;
.el-popper .popper__arrow::after { background: #06186d;
display: none; border: 1px solid #1a64cc;
.el-range-input {
color: #fff;
background: #06186d;
}
.el-range-separator {
color: #fff;
}
.el-range__icon {
position: absolute;
right: 5px;
// float: right;
}
.el-input__prefix {
left: unset;
right: 5px;
}
} }
} }
.second-select:last-child {
margin-left: 0;
margin-bottom: 10px;
}
</style> </style>
<style lang=scss > <style lang=scss >
.el-scrollbar__wrap { .el-scrollbar__wrap {
overflow-x: hidden !important; overflow-x: hidden !important;
} }
</style> </style>
<style
lang="scss"
src="@/assets/scss/modules/visual/typeAnalyze.scss"
scoped
></style>

107
src/views/modules/visual/basicinfo/basicInfoMain.vue

@ -246,6 +246,7 @@ const vueGis = {
zoom: null, zoom: null,
parentPolygon: [], parentPolygon: [],
centerFlag: 'point',//flag point fit
} }
}, },
@ -266,7 +267,7 @@ const vueGis = {
// //
this.loadPolygon(this.subAgencyArray) this.loadPolygon(this.subAgencyArray)
this.setMapLocation()
await this.loadList() await this.loadList()
}, },
@ -366,6 +367,7 @@ const vueGis = {
this.orgData.zoom = map.getView().getZoom() this.orgData.zoom = map.getView().getZoom()
console.log('center', map.getView().getCenter()) console.log('center', map.getView().getCenter())
console.log('zoom', map.getView().getZoom()) console.log('zoom', map.getView().getZoom())
this.runAgencyArray.push(this.orgData) this.runAgencyArray.push(this.orgData)
this.subAgencyArray.forEach(item => { this.subAgencyArray.forEach(item => {
@ -396,20 +398,74 @@ const vueGis = {
// //
await this.loadOrgData() await this.loadOrgData()
//
this.loadParentPolygon() this.loadParentPolygon()
//
this.loadPolygon(this.subAgencyArray)
// //
await this.loadPolygon(this.subAgencyArray)
// //
// if (isRefreshView) { // if (isRefreshView) {
// this.setMapLocation() this.setMapLocation()
// mapView.setCenter(this.centerPoint);
// mapView.setZoom(this.zoom);
// } // }
await this.loadList() await this.loadList()
},
//
setMapLocation () {
if (!this.zoom) {
this.setZoom(this.orgData.agencyLevel)
}
this.centerPoint = []
//
if (this.center && this.center.length > 0) {
this.centerPoint = this.center
this.centerFlag = 'point'
this.center = []
} else if (parentLayer.getSource().getFeatures()[0]) {//
this.centerFlag = 'flag_parent'
} else if (polygonLayer.getSource().getFeatures()[0]) {//,
this.centerFlag = 'flag_polygon'
} else if (this.orgData.longitude && this.orgData.latitude) {
this.centerPoint.push(this.orgData.longitude)
this.centerPoint.push(this.orgData.latitude)
this.centerFlag = 'point'
} else {
this.centerPoint = centerPointGlobal
this.centerFlag = 'point'
}
// debugger
if (this.centerFlag === 'flag_parent') {
let parentFeatures = parentLayer.getSource().getFeatures()[0]
let polygon = parentFeatures.getGeometry();
map.getView().fit(polygon, map.getSize());
this.zoom = map.getView().getZoom() - 1
} else if (this.centerFlag === 'flag_polygon') {
let polygonFeatures = polygonLayer.getSource().getFeatures()[0]
let polygon = polygonFeatures.getGeometry();
map.getView().fit(polygon, map.getSize());
this.zoom = map.getView().getZoom() - 1
} else {
mapView.setCenter(this.centerPoint);
}
mapView.setZoom(this.zoom);
}, },
// //
@ -608,7 +664,7 @@ const vueGis = {
let oneArray = [x, y] let oneArray = [x, y]
this.iconCoordinators.push(oneArray) this.iconCoordinators.push(oneArray)
// debugger // debugger
// //icon
let oneCctv = new Feature({ let oneCctv = new Feature({
geometry: new Point([x, y]), geometry: new Point([x, y]),
id: oneIcon.id_, id: oneIcon.id_,
@ -637,26 +693,8 @@ const vueGis = {
iconSource.addFeatures(iconFeatures); iconSource.addFeatures(iconFeatures);
} }
// this.addGif()
}, },
//
setMapLocation () {
this.centerPoint = []
if (this.center && this.center.length > 0) {
this.centerPoint = this.center
} else if (this.orgData.longitude && this.orgData.latitude) {
this.centerPoint.push(this.orgData.longitude)
this.centerPoint.push(this.orgData.latitude)
} else {
this.centerPoint = centerPointGlobal
}
if (!this.zoom) {
this.setZoom(this.orgData.agencyLevel)
}
},
// //
setZoom (agencyLevel) { setZoom (agencyLevel) {
@ -670,8 +708,23 @@ const vueGis = {
}, },
firstCenterMap () {
this.centerPoint = []
if (this.orgData.longitude && this.orgData.latitude) {
this.centerPoint.push(this.orgData.longitude)
this.centerPoint.push(this.orgData.latitude)
} else {
this.centerPoint = centerPointGlobal
}
if (!this.zoom) {
this.setZoom(this.orgData.agencyLevel)
}
},
initMap () { initMap () {
this.setMapLocation() this.firstCenterMap()
gaodeMapLayer = new TileLayer({ gaodeMapLayer = new TileLayer({
title: "地图", title: "地图",

80
src/views/modules/visual/communityGovern/processAnalyze.vue

@ -657,82 +657,4 @@ export default {
scoped scoped
></style> ></style>
<style lang=scss >
.customer_select {
/* 未选中任何选项的时候 placeholder的样式 需要先选中父元素 增加权重 */
/deep/ input::-webkit-input-placeholder {
color: #fff;
}
/deep/ input::-moz-input-placeholder {
color: #fff;
}
/deep/ input::-ms-input-placeholder {
color: #fff;
}
/* 修改的是el-input的样式 */
/* 一种方法是设置最里层el-input__inner的背景色 外层的两级父元素设置为透明色 */
/* 另一种方法是从el-select到el-input__inenr的背景色都设置为需要的颜色 */
/deep/ .el-select,
/deep/ .el-input,
/deep/ .el-input__inner {
background-color: #08164d00;
color: #fff;
border: 0px;
border-radius: 0px;
text-align: left;
font-size: 22px;
font-family: PingFang SC;
font-weight: 800;
color: #ffffff;
display: flex;
}
/* el-input聚焦的时候 外层的border会有一个样式 */
/deep/ .el-select .el-input.is-focus .el-input__inner {
border: 0px;
}
/* 修改的是el-input上下的小图标的颜色 */
/deep/ .el-select .el-input .el-select__caret::before {
color: #fff;
content: "";
background: url("../../../../assets/img/xiala.png") center center no-repeat;
position: absolute;
width: 100%;
height: 100%;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
/* 修改总体选项的样式 最外层 */
/deep/ .el-select-dropdown {
background-color: #08164d;
margin: 0px;
border: 0px;
border-radius: 0px;
}
/* 修改选项整体的样式 */
/deep/ .el-select-dropdown__list {
padding: 6px 0 20px 0;
}
/* 修改单个的选项的样式 */
/deep/ .el-select-dropdown__item {
background-color: transparent;
color: #fff;
}
/* item选项的hover样式 */
/deep/ .el-select-dropdown__item.hover,
/deep/ .el-select-dropdown__item:hover {
color: #409eff;
}
/* 修改的是下拉框选项内容上方的尖角 */
/deep/ .el-popper .popper__arrow,
.el-popper .popper__arrow::after {
display: none;
}
}

14
src/views/modules/visual/communityGovern/resibuzz.vue

@ -82,7 +82,7 @@ import screenEchartsFrame from "@/views/modules/visual/components/screen-echarts
import ScreenLoading from "@/views/modules/visual/components/screen-loading"; import ScreenLoading from "@/views/modules/visual/components/screen-loading";
import ScreenNodata from "@/views/modules/visual/components/screen-nodata"; import ScreenNodata from "@/views/modules/visual/components/screen-nodata";
import { pieOption } from './resiPieOption.js' import { pieOption } from './resiPieOption.js'
import nextTick from 'dai-js/tools/nextTick'
import issueInfo from "./cpt/issue-info"; import issueInfo from "./cpt/issue-info";
@ -371,11 +371,19 @@ export default {
this.pieData[0].selected = true this.pieData[0].selected = true
this.pieData.forEach((item, index) => {
this.pieTotal = this.pieTotal + item.count
});
this.pieData.forEach((item, index) => { this.pieData.forEach((item, index) => {
item.name = item.categoryName item.name = item.categoryName
item.value = item.count debugger
let aa = parseInt(item.count) / parseInt(this.pieTotal)
let percent = new Number(parseInt(item.count) / parseInt(this.pieTotal)).toFixed(4) * 100 + '%'
item.value = percent
this.colorArray.push(item.color) this.colorArray.push(item.color)
this.pieTotal = this.pieTotal + item.value
if (item.value > maxValue) { if (item.value > maxValue) {
maxValue = item.value maxValue = item.value

Loading…
Cancel
Save