Browse Source

Merge branch 'test' into prod

prod
dai 4 years ago
parent
commit
b801d75f65
  1. 8
      src/views/modules/base/community/buildForm.vue
  2. 125
      src/views/modules/base/community/buildTable.vue
  3. 6
      src/views/modules/base/community/community.vue
  4. 151
      src/views/modules/base/community/communityTable.vue
  5. 45
      src/views/modules/base/community/roomTable.vue
  6. 5
      src/views/modules/base/resi.vue
  7. 79
      src/views/modules/communityParty/elegant/index.vue
  8. 3
      src/views/modules/visual/basicinfo/basicInfoMain.vue
  9. 2
      src/views/modules/visual/communityGovern/distributionAnalyze.vue
  10. 1
      src/views/modules/visual/communityGovern/processAnalyze.vue
  11. 6
      src/views/modules/visual/components/screen-map/index.vue
  12. 2
      src/views/modules/visual/warning/index.vue

8
src/views/modules/base/community/buildForm.vue

@ -61,14 +61,14 @@
:min="0"
label="层数"></el-input-number>
</el-form-item>
<el-form-item label="户数"
<el-form-item label="户数"
style="display: block"
prop="totalHouseNum"
label-width="150px">
<el-input-number class="item_width_1"
v-model="dataForm.totalHouseNum"
:min="0"
label="户数"></el-input-number>
label="户数"></el-input-number>
</el-form-item>
<el-form-item label="位置坐标"
@ -143,7 +143,7 @@ export default {
// sort: 0,//
totalUnitNum: 1,//
totalFloorNum: 0,//
totalHouseNum: 0,//
totalHouseNum: 0,//
type: '',//
location: '', //
longitude: '', //
@ -324,7 +324,7 @@ export default {
// sort: 0,//
totalUnitNum: 1,//
totalFloorNum: 0,//
totalHouseNum: 0,//
totalHouseNum: 0,//
type: '',//
location: '', //
longitude: '', //

125
src/views/modules/base/community/buildTable.vue

@ -39,23 +39,41 @@
type="green"
size="small"
@click="handleAdd">新增楼宇</el-button>
<el-button style="float:left"
<el-button style=";margin-left:10px"
type="blue"
size="small"
@click="handleExportModule">下载楼宇模板</el-button>
<el-upload ref="upload"
@click="handleExportModule('building')">下载楼宇模板</el-button>
<el-upload style=""
ref="upload_building"
:multiple='false'
:show-file-list='false'
:before-upload="beforeUpload"
:before-upload="((file)=>{beforeUpload(file, 'building')})"
action=""
accept=".xls,.xlsx"
:limit="1"
:on-exceed="handleExceed"
:http-request="uploadFile">
:http-request="(()=>{uploadFile( 'building')})">
<el-button style="margin-left:10px"
size="small"
type="red">导入楼宇数据</el-button>
</el-upload>
<el-button style=";margin-left:10px"
type="blue"
size="small"
@click="handleExportModule('room')">下载房屋模板</el-button>
<el-upload style=""
ref="upload_room"
:multiple='false'
:show-file-list='false'
:before-upload="((file)=>{beforeUpload(file, 'room')})"
action=""
accept=".xls,.xlsx"
:http-request="(()=>{uploadFile( 'room')})">
<el-button style="margin-left:10px"
size="small"
type="red">导入房屋数据</el-button>
</el-upload>
</div>
<div class="div_table">
@ -84,7 +102,7 @@
label="层数">
</el-table-column>
<el-table-column prop="totalHouseNum"
label="户数">
label="户数">
</el-table-column>
<el-table-column label="操作"
@ -197,7 +215,7 @@ export default {
if (fromTree) {
this.agencyObj = treeObj
}
console.log(this.agencyObj)
const url = "/gov/org/building/buildinglist"
let params = {
pageSize: this.pageSize,
@ -246,6 +264,7 @@ export default {
this.$refs.ref_form.initForm('edit', row, this.agencyObj)
})
},
handleToNextLevel (row) {
this.$emit('toNextLevel', row, 'building')
},
@ -355,11 +374,20 @@ export default {
},
handleExportModule () {
handleExportModule (type) {
let title = ''
title = '楼栋模板'
let url = ""
if (type === 'building') {
title = '楼宇导入模板'
url = '/gov/org/building/exporttemplate'
} else if (type === 'room') {
title = '房屋导入模板'
url = '/gov/org/house/exporttemplate'
}
const url = "/gov/org/building/exporttemplate"
let params = {}
app.ajax.exportFilePost(
@ -375,8 +403,9 @@ export default {
);
},
//
beforeUpload (file) {
beforeUpload (file, type) {
this.files = file;
const isText = file.type === 'application/vnd.ms-excel'
@ -384,6 +413,8 @@ export default {
if (!isText && !isTextComputer) {
this.$message.error('请选择正确格式的文件')
this.files = null
this.fileName = ''
return false
} else {
this.fileName = file.name;
@ -396,37 +427,70 @@ export default {
this.$message.warning(`当前限制选择 1 个文件,请删除后继续上传`)
},
async uploadFile () {
this.loading = true
async uploadFile (type) {
if (this.fileName == "") {
this.$message.warning('请选择要上传的文件!')
return false
}
this.loading = true
//
this.$refs['upload'].clearFiles()
var url = '/gov/org/building/import'
//
let url = ''
let params = {}
let fileFormData = new FormData();
fileFormData.append('file', this.files);//filenamefiletest.zip
fileFormData.append('orgId', this.agencyObj.id);//filenamefiletest.zip
fileFormData.append('orgType', this.agencyObj.level);//filenamefiletest.zip
const { data, code, msg } = await requestPost(url, fileFormData)
if (code === 0) {
// params.file = fileFormData
// params.orgId = this.agencyObj.id
// params.orgType = this.agencyObj.level
if (type === 'building') {
this.$refs['upload_building'].clearFiles()
// url = 'http://192.168.51.26:8080/api/gov/org/building/buildingimport'
url = '/gov/org/building/buildingimport'
} else if (type === 'room') {
this.$refs['upload_room'].clearFiles()
// url = 'http://192.168.51.26:8080/api/gov/org/house/houseimport'
url = '/gov/org/house/houseimport'
this.$message({
type: "success",
message: "导入成功"
});
this.$emit('refreshTree')
this.loadTable()
} else {
this.$message.error(msg)
}
this.startLoading()
window.app.ajax.post2(url, fileFormData,
(data, rspMsg) => {
this.endLoading()
if (data.code === 0 || data.code > 8000) {
// this.$message({
// type: "success",
// message: ""
// });
// this.$message.success(rspMsg)
// this.$emit('refreshTree')
// this.loadTable()
}
this.showMessage(rspMsg)
},
(rspMsg, data) => {
this.endLoading()
this.$message.error(rspMsg)
}, { headers: { 'Content-Type': 'multipart/form-data' } })
},
showMessage (msg) {
this.$alert(msg, '操作结果', {
confirmButtonText: '关闭',
callback: action => {
this.$emit('refreshTree')
this.loadTable()
}
});
},
handleSizeChange (val) {
this.pageSize = val
@ -510,6 +574,7 @@ export default {
}
.div_btn {
display: flex;
margin-top: 20px;
}

6
src/views/modules/base/community/community.vue

@ -27,7 +27,7 @@
<div :style="{height:rowHeight}"
class="div_table">
<build-table v-if="selTreeObj.level==='neighbourHood'"
<build-table v-if="selTreeObj.level==='neighborHood'"
ref="ref_neighTable"
@toNextLevel="toNextLevel"
@refreshTree="refreshTree"></build-table>
@ -151,7 +151,7 @@ export default {
if (obj.level === 'building') {//
this.$refs['ref_buildingTable'].loadTable(true, this.selTreeObj)
} else if (obj.level === 'neighbourHood') {//
} else if (obj.level === 'neighborHood') {//
this.$refs['ref_neighTable'].loadTable(true, this.selTreeObj)
} else {
@ -200,7 +200,7 @@ export default {
obj.communityId = communityNode.data.id
obj.communityName = communityNode.data.label
} else if (obj.level === 'neighbourHood') {//
} else if (obj.level === 'neighborHood') {//
let gridNode = this.$refs.ref_tree.getNode(obj.pid)
let agencyNode = this.$refs.ref_tree.getNode(gridNode.data.pid)

151
src/views/modules/base/community/communityTable.vue

@ -31,33 +31,70 @@
@click="handleSearch">查询</el-button>
</div>
<div class="div_btn">
<el-button style="float:left"
<el-button style=""
type="yellow"
size="small"
@click="handleExport">导出</el-button>
<el-button style="float:left"
<el-button style=""
type="green"
size="small"
@click="handleAdd">新增小区</el-button>
<el-button style="float:left"
<div class="btn_upload"
v-if="agencyObj.level==='community'||agencyObj.level==='grid'">
<el-button style=""
type="blue"
size="small"
@click="handleExportModule">下载小区模板</el-button>
@click="handleExportModule('community')">下载小区模板</el-button>
<el-upload ref="upload"
<el-upload ref="upload_community"
style=""
:multiple='false'
:show-file-list='false'
:before-upload="beforeUpload"
:before-upload="((file)=>{beforeUpload(file, 'community')})"
action=""
accept=".xls,.xlsx"
:limit="1"
:on-exceed="handleExceed"
:http-request="uploadFile">
:http-request="(()=>{uploadFile( 'community')})">
<el-button style="margin-left:10px"
size="small"
type="red">导入小区数据</el-button>
</el-upload>
<el-button style=";margin-left:10px"
type="blue"
size="small"
@click="handleExportModule('building')">下载楼宇模板</el-button>
<el-upload style=""
ref="upload_building"
:multiple='false'
:show-file-list='false'
:before-upload="((file)=>{beforeUpload(file, 'building')})"
action=""
accept=".xls,.xlsx"
:http-request="(()=>{uploadFile( 'building')})">
<el-button style="margin-left:10px"
size="small"
type="red">导入楼宇数据</el-button>
</el-upload>
<el-button style=";margin-left:10px"
type="blue"
size="small"
@click="handleExportModule('room')">下载房屋模板</el-button>
<el-upload style=""
ref="upload_room"
:multiple='false'
:show-file-list='false'
:before-upload="((file)=>{beforeUpload(file, 'room')})"
action=""
accept=".xls,.xlsx"
:http-request="(()=>{uploadFile( 'room')})">
<el-button style="margin-left:10px"
size="small"
type="red">导入房屋数据</el-button>
</el-upload>
</div>
</div>
<div class="div_table">
@ -203,9 +240,9 @@ export default {
if (fromTree) {
this.agencyObj = treeObj
}
console.log(this.agencyObj)
const url = "/gov/org/neighborhood/neighborhoodlist"
// const url = "http://yapi.elinkservice.cn/mock/245/gov/org/neighborhood/neighborhoodlist"
let params = {
pageSize: this.pageSize,
pageNo: this.pageNo,
@ -338,7 +375,7 @@ export default {
},
//
download (data, fileName) {
download (data, downFileName) {
if (!data) {
return
}
@ -346,7 +383,7 @@ export default {
var csvData = new Blob([data])
if (window.navigator && window.navigator.msSaveOrOpenBlob) {
window.navigator.msSaveOrOpenBlob(csvData, fileName);
window.navigator.msSaveOrOpenBlob(csvData, downFileName);
}
// for Non-IE (chrome, firefox etc.)
else {
@ -355,7 +392,7 @@ export default {
a.style = 'display: none';
var url = window.URL.createObjectURL(csvData);
a.href = url;
a.download = fileName;
a.download = downFileName;
a.click();
a.remove();
window.URL.revokeObjectURL(url);
@ -363,11 +400,22 @@ export default {
},
handleExportModule () {
handleExportModule (type) {
let title = ''
title = '小区模板'
let url = ""
if (type === 'community') {
title = '小区导入模板'
url = '/gov/org/neighborhood/exporttemplate'
} else if (type === 'building') {
title = '楼宇导入模板'
url = '/gov/org/building/exporttemplate'
} else if (type === 'room') {
title = '房间导入模板'
url = '/gov/org/house/exporttemplate'
}
const url = "/gov/org/neighborhood/exporttemplate"
let params = {}
app.ajax.exportFilePost(
@ -384,7 +432,7 @@ export default {
},
//
beforeUpload (file) {
beforeUpload (file, type) {
this.files = file;
const isText = file.type === 'application/vnd.ms-excel'
@ -392,6 +440,8 @@ export default {
if (!isText && !isTextComputer) {
this.$message.error('请选择正确格式的文件')
this.files = null
this.fileName = ''
return false
} else {
this.fileName = file.name;
@ -404,36 +454,65 @@ export default {
this.$message.warning(`当前限制选择 1 个文件,请删除后继续上传`)
},
async uploadFile () {
this.loading = true
async uploadFile (type) {
if (this.fileName == "") {
this.$message.warning('请选择要上传的文件!')
return false
}
this.loading = true
//
this.$refs['upload'].clearFiles()
let url = ''
var url = '/gov/org/neighborhood/import'
let fileFormData = new FormData();
fileFormData.append('file', this.files);//filenamefiletest.zip
fileFormData.append('orgId', this.agencyObj.id);//filenamefiletest.zip
fileFormData.append('orgType', this.agencyObj.level === 'grid' ? 'grid' : 'agency');//filenamefiletest.zip
if (type === 'community') {
this.$refs['upload_community'].clearFiles()
url = '/gov/org/icneighborhood/neighborhoodimport'
} else if (type === 'building') {
this.$refs['upload_building'].clearFiles()
url = '/gov/org/building/buildingimport'
} else if (type === 'room') {
this.$refs['upload_room'].clearFiles()
url = '/gov/org/house/houseimport'
}
this.startLoading()
window.app.ajax.post2(url, fileFormData,
(data, rspMsg) => {
this.endLoading()
if (data.code === 0 || data.code > 8000) {
const { data, code, msg } = await requestPost(url, fileFormData)
if (code === 0) {
this.$message({
type: "success",
message: "导入成功"
});
this.$emit('refreshTree')
this.loadTable()
} else {
this.$message.error(msg)
}
this.showMessage(rspMsg)
},
(rspMsg, data) => {
this.endLoading()
this.$message.error(rspMsg)
}, { headers: { 'Content-Type': 'multipart/form-data' } })
},
showMessage (msg) {
this.$alert(msg, '操作结果', {
confirmButtonText: '关闭',
callback: action => {
this.$emit('refreshTree')
this.loadTable()
}
});
},
handleSizeChange (val) {
this.pageSize = val
this.pageNo = 1
@ -516,7 +595,13 @@ export default {
}
.div_btn {
display: flex;
margin-top: 20px;
.btn_upload {
margin-left: 10px;
display: flex;
}
}
.el-row {

45
src/views/modules/base/community/roomTable.vue

@ -210,6 +210,7 @@ export default {
if (fromTree) {
this.agencyObj = treeObj
}
const url = "/gov/org/house/houselist"
let params = {
@ -416,23 +417,45 @@ export default {
//
this.$refs['upload'].clearFiles()
var url = '/gov/org/house/import'
var url = '/gov/org/house/houseimport'
let fileFormData = new FormData();
fileFormData.append('file', this.files);//filenamefiletest.zip
fileFormData.append('orgId', this.agencyObj.id);//filenamefiletest.zip
fileFormData.append('orgType', this.agencyObj.level);//filenamefiletest.zip
const { data, code, msg } = await requestPost(url, fileFormData)
if (code === 0) {
this.$message({
type: "success",
message: "导入成功"
});
this.$emit('refreshTree')
this.loadTable()
} else {
this.$message.error(msg)
this.startLoading()
window.app.ajax.post2(url, fileFormData,
(data, rspMsg) => {
this.endLoading()
if (data.code === 0 || data.code > 8000) {
// this.$message({
// type: "success",
// message: ""
// });
// this.$emit('refreshTree')
// this.loadTable()
}
this.showMessage(rspMsg)
},
(rspMsg, data) => {
this.endLoading()
this.$message.error(rspMsg)
}, { headers: { 'Content-Type': 'multipart/form-data' } })
},
showMessage (msg) {
this.$alert(msg, '操作结果', {
confirmButtonText: '关闭',
callback: action => {
this.$emit('refreshTree')
this.loadTable()
}
});
},
handleSizeChange (val) {

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

@ -444,13 +444,13 @@ export default {
const isType = file.type === 'application/vnd.ms-excel'
const isTypeComputer = file.type === 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
const fileType = isType || isTypeComputer
const isLt1M = (file.size / 1024 / 1024) < 10
const isLt1M = (file.size / 1024 / 1024) < 100
if (!fileType) {
this.$message.error('上传文件只能是xls/xlsx格式!')
}
if (!isLt1M) {
this.$message.error('上传文件大小不能超过 10MB!')
this.$message.error('上传文件大小不能超过 100MB!')
}
return fileType && isLt1M
},
@ -463,6 +463,7 @@ export default {
url: window.SITE_CONFIG['apiURL'] + '/epmetuser/icresiuser/importExcel',
method: 'post',
data: formData,
timeout: '300000',
responseType: 'blob'
})
.then((res) => {

79
src/views/modules/communityParty/elegant/index.vue

@ -13,15 +13,26 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="分类类别" prop="categoryId">
<el-select v-model="searchForm.categoryId" filterable placeholder="请选择" clearable>
<el-option
v-for="item in optionsC"
:key="item.categoryId"
:label="item.categoryName"
:value="item.categoryId">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="党员姓名" prop="name">
<el-select v-model="searchForm.name" filterable placeholder="请选择" clearable>
<!-- <el-select v-model="searchForm.name" filterable placeholder="请选择" clearable>
<el-option
v-for="item in demandOptions"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-select> -->
<el-input v-model="searchForm.name" placeholder="请输入" class="input-width" clearable></el-input>
</el-form-item>
<el-form-item label="主要事迹" prop="mainDeed">
<el-input v-model="searchForm.mainDeed" placeholder="请输入" class="input-width" clearable></el-input>
@ -139,6 +150,26 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item v-if="disabled" label="分类类别" prop="categoryId">
<el-select v-model="form.categoryId" filterable :disabled="disabled" placeholder="请选择" class="input-width" clearable>
<el-option
v-for="item in optionsC"
:key="item.categoryId"
:label="item.categoryName"
:value="item.categoryId">
</el-option>
</el-select>
</el-form-item>
<el-form-item v-else label="分类类别" prop="categoryId">
<el-select v-model="form.categoryId" filterable :disabled="disabled" placeholder="请选择" class="input-width" clearable>
<el-option
v-for="item in optionsEditC"
:key="item.categoryId"
:label="item.categoryName"
:value="item.categoryId">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="党员姓名" prop="name">
<el-input v-model="form.name" placeholder="请输入" :disabled="disabled" class="input-width" clearable></el-input>
</el-form-item>
@ -215,6 +246,8 @@ export default {
value: '',
optionsEditG: [],
optionsG: [],
optionsC: [],
optionsEditC: [],
options: [
{
label: '是',
@ -238,6 +271,12 @@ export default {
columnName: 'gridName',
width: '300',
options: []
}, {
label: '分类类别',
align: 'center',
columnName: 'categoryName',
width: '200',
options: []
}, {
label: '主要事迹',
columnName: 'mainDeed',
@ -249,6 +288,7 @@ export default {
customerId: '',
searchForm: {
gridId: '',
categoryId: '',
mainDeed: '',
name: ''
},
@ -256,11 +296,13 @@ export default {
agencyId: '',
gridId: '',
name: '',
categoryId: '',
mainDeed: '',
imageList: []
},
rules: {
gridId: [{ required: true, message: '网格不能为空', trigger: 'blur' }],
categoryId: [{ required: true, message: '分类类别不能为空', trigger: 'blur' }],
name: [{ required: true, message: '姓名不能为空', trigger: 'blur' }],
mainDeed: [{ required: true, message: '主要事迹不能为空', trigger: 'blur' }],
}
@ -272,6 +314,8 @@ export default {
this.getTableData()
this.getGridList('query')
this.getGridList('addorupdate')
this.getCateList('query')
this.getCateList('addorupdate')
}, 200)
this.pageLoading = true
},
@ -439,6 +483,7 @@ export default {
this.handleSearch()
},
handleAdd() {
this.dialogVisible = true
},
@ -527,6 +572,12 @@ export default {
return this.$message.error(res.msg)
} else {
this.form = { ...res.data }
const _arr = this.optionsEditC.map(item => item.categoryId)
if (!_arr.includes(res.data.categoryId) && !this.disabled) this.form.categoryId = ''
// this.optionsEditC.forEach(item => {
// if (item.categoryId === res.data.categoryId)
// })
this.dialogVisible = true
}
})
@ -555,6 +606,30 @@ export default {
return this.$message.error('网络错误')
})
},
async getCateList(type) {
const { user } = await this.$store.state
console.log('user---ppp', user)
const params = {
customerId: this.customerId,
type
}
// addorupdate query
await this.$http
.post('/resi/partymember/stylecategorydict/select-list', params)
.then(({ data: res }) => {
if (res.code !== 0) {
return this.$message.error(res.msg)
} else {
console.log('获取查询详情成功', res.data)
if (type === 'query') this.optionsC = res.data
else this.optionsEditC = res.data
}
})
.catch(() => {
return this.$message.error('网络错误')
})
},
async getTableData() {
this.tableLoading = true
const { user } = await this.$store.state

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

@ -113,6 +113,7 @@ import { defaults as defaultInteractions, Select, DoubleClickZoom } from 'ol/int
import { getCenter, boundingExtent } from 'ol/extent.js';
import { Circle as CircleStyle, Icon, Fill, Stroke, Style, Text } from 'ol/style.js';
import nextTick from 'dai-js/tools/nextTick'
import { mapGetters } from "vuex";
import { Loading } from 'element-ui'; //Loading
import { requestPost } from "@/js/dai/request";
@ -257,6 +258,8 @@ const vueGis = {
//
this.initMap()
await nextTick(300)
this.addParentLayer()
this.loadParentPolygon()
//

2
src/views/modules/visual/communityGovern/distributionAnalyze.vue

@ -475,6 +475,7 @@ export default {
},
// 线
async getLineChart () {
if (!this.showNoData) {
this.$refs.lineChart.clear()
this.$refs.lineChart.showLoading()
@ -527,6 +528,7 @@ export default {
//线
loadCategoryData () {
this.xaxis = []
this.series = []
this.legend = []

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

@ -424,6 +424,7 @@ export default {
},
loadMap () {
if (this.isfirstInit) {
//mapInfo, polygonArray, polIconUrlArray, iconArrays, iconUrlArray
// this.$refs.map.loadMap(this.agencyInfo, null, null, this.projectList, this.iconUrlArray, this.iconTextStyle, 3000)

6
src/views/modules/visual/components/screen-map/index.vue

@ -227,6 +227,7 @@ const vueGis = {
//
async refreshMap (polygonArray, iconArrays) {
this.polygonArray = polygonArray
this.iconArrays = iconArrays
@ -354,9 +355,10 @@ const vueGis = {
if (this.iconArrays && this.iconArrays.length > 0) {
let iconFeatures = [];
let iconArraysNew = []
this.iconArrays.forEach((oneIcon, index) => {
//
let iconItem = new Feature({
geometry: new Point([oneIcon.longitude, oneIcon.latitude]),
id: oneIcon.id,
@ -377,6 +379,7 @@ const vueGis = {
});
iconItem.setStyle(iconStyle);
if (this.distanceMax) {
if (this.computedDistance(oneIcon.longitude, oneIcon.latitude, this.distanceMax)) {
iconFeatures.push(iconItem);
@ -414,7 +417,6 @@ const vueGis = {
// console.log(distance)
return (distance < max || distance === max)
// debugger
// return
// var wgs84Sphere = new ol.Sphere(6378137);

2
src/views/modules/visual/warning/index.vue

@ -133,7 +133,7 @@ export default {
item.gridName,
item.neighborhoodName,
item.buildingName,
item.userList,
item.userList || '暂无',
]);
});
this.tableData = tableData;

Loading…
Cancel
Save