Browse Source

优化

shibei_master
zhaoyongnian 3 years ago
parent
commit
dbb7971168
  1. 8
      src/views/modules/plugins/power/kernelhouseholdTable.vue
  2. 4
      src/views/modules/plugins/power/poweraxis.vue
  3. 148
      src/views/modules/plugins/power/poweraxis_add_leader.vue

8
src/views/modules/plugins/power/kernelhouseholdTable.vue

@ -38,6 +38,14 @@
<el-table-column prop="address"
label="地址">
</el-table-column>
<el-table-column prop="ownerPhone"
label="联系方式"
width="150">
</el-table-column>
<el-table-column prop="ownerIdCard"
label="身份证"
width="150">
</el-table-column>
<el-table-column label="操作"
fixed="right"
width="80"

4
src/views/modules/plugins/power/poweraxis.vue

@ -69,7 +69,7 @@
<el-dialog :visible.sync="leaderVisible"
:close-on-click-modal="false"
:close-on-press-escape="false"
:title="formTitle"
title="负责人"
width="850px"
top="5vh"
class="dialog-h"
@ -121,7 +121,7 @@ export default {
dataListLoading: false,
//form
formShow: false,
formTitle: '新增小区',
formTitle: '新增',
}
},
async created(){

148
src/views/modules/plugins/power/poweraxis_add_leader.vue

@ -7,46 +7,64 @@
:model="dataForm"
:rules="dataRule"
class="form">
<el-form-item label="类别" label-width="150px" v-if="structLevel || structLevel === 0">
<el-input class="item_width_1" :readonly="true" v-model="categoryName"></el-input>
</el-form-item>
<el-form-item label="名称" prop="name" label-width="150px">
<el-input class="item_width_1" v-model="dataForm.name" placeholder="负责任人名称"></el-input>
</el-form-item>
<el-form-item label="性别" prop="gender" label-width="150px">
<el-select class="item_width_1" v-model="dataForm.gender" clearable placeholder="性别">
<el-option
v-for="item in gender"
:key="item.dictValue"
:label="item.dictName"
:value="item.dictValue"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="联系方式" prop="mobile" label-width="150px">
<el-input class="item_width_1" v-model="dataForm.mobile" placeholder="联系方式"></el-input>
</el-form-item>
<el-form-item label="简介" prop="interoduction" label-width="150px">
<el-input class="item_width_1" v-model="dataForm.interoduction" placeholder="简介"></el-input>
</el-form-item>
<!-- <el-form-item label="头像" prop="avatar" label-width="110px">
<el-input style="width:250px" v-model="dataForm.avatar" placeholder="头像"></el-input>
</el-form-item> -->
<el-form-item label="头像" prop="avatar" label-width="150px">
<el-upload class="avatar-uploader"
:data="{customerId:customerId}"
:action="uploadUlr"
:show-file-list="false"
:on-success="(response, file, fileList) => handleImgSuccess('avatar', response, file, fileList)"
:before-upload="beforeImgUpload">
<img v-if="dataForm.avatar"
:src="dataForm.avatar"
style="width:70px;height:70px"
class="function-icon">
<i v-else class="el-icon-plus avatar-uploader-icon"></i>
</el-upload>
<el-form-item label-width="150px" label="添加方式">
<el-radio-group v-model="tagTab" size="small">
<el-radio-button label="add">编辑</el-radio-button>
<el-radio-button label="choose">绑定</el-radio-button>
</el-radio-group>
</el-form-item>
<div v-if="tagTab === 'add'">
<el-form-item label="类别" label-width="150px" v-if="structLevel || structLevel === 0">
<el-input class="item_width_1" :readonly="true" v-model="categoryName"></el-input>
</el-form-item>
<el-form-item label="名称" prop="name" label-width="150px">
<el-input class="item_width_1" v-model="dataForm.name" placeholder="负责任人名称"></el-input>
</el-form-item>
<el-form-item label="性别" prop="gender" label-width="150px">
<el-select class="item_width_1" v-model="dataForm.gender" clearable placeholder="性别">
<el-option
v-for="item in gender"
:key="item.dictValue"
:label="item.dictName"
:value="item.dictValue"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="联系方式" prop="mobile" label-width="150px">
<el-input class="item_width_1" v-model="dataForm.mobile" placeholder="联系方式"></el-input>
</el-form-item>
<el-form-item label="简介" prop="interoduction" label-width="150px">
<el-input class="item_width_1" v-model="dataForm.interoduction" placeholder="简介"></el-input>
</el-form-item>
<el-form-item label="头像" prop="avatar" label-width="150px">
<el-upload class="avatar-uploader"
:data="{customerId:customerId}"
:action="uploadUlr"
:show-file-list="false"
:on-success="(response, file, fileList) => handleImgSuccess('avatar', response, file, fileList)"
:before-upload="beforeImgUpload">
<img v-if="dataForm.avatar"
:src="dataForm.avatar"
style="width:70px;height:70px"
class="function-icon">
<i v-else class="el-icon-plus avatar-uploader-icon"></i>
</el-upload>
</el-form-item>
</div>
<div v-else>
<el-form-item label="负责人" label-width="150px">
<el-select class="item_width_1" v-model="dataForm.selectleaderId" clearable placeholder="请选择负责人">
<el-option
v-for="item in listbriefArr"
:key="item.id"
:label="item.name"
:value="item.id"
>
</el-option>
</el-select>
</el-form-item>
</div>
</el-form>
<div class="div_btn">
<el-button size="small"
@ -67,6 +85,7 @@ import { requestPost } from "@/js/dai/request";
export default {
data () {
return {
tagTab: 'add',
btnDisable: false,
uploadUlr: window.SITE_CONFIG['apiURL'] + '/oss/file/uploadqrcodeV2',
dataForm: {
@ -77,7 +96,8 @@ export default {
categoryCode: '',
avatar: '',
structReferenceId: '', // ID
leaderId: ''
leaderId: '',
selectleaderId: ''
},
structLevel: '',
leaderCategoryCodeArr: '', //
@ -86,7 +106,8 @@ export default {
{ dictValue: '1', dictName: '男' },
{ dictValue: '2', dictName: '女' }
],
customerId: localStorage.getItem('customerId')
customerId: localStorage.getItem('customerId'),
listbriefArr: []
}
},
@ -122,6 +143,7 @@ export default {
this.dataForm.leaderId = agencyObj.leaderId
this.structLevel = agencyObj.structLevel
this.getTagCategoryArr()
this.listbrief()
if (this.dataForm.leaderId) {
this.getInfo()
}
@ -183,8 +205,12 @@ export default {
this.btnDisable = false
} else {
if (this.dataForm.leaderId) {
this.updateLeader()
} else {
if (this.dataForm.selectleaderId) {
this.bindLeader()
} else {
this.updateLeader()
}
} else {
this.addLeader()
}
}
@ -224,6 +250,27 @@ export default {
this.$message.error(msg)
}
},
async bindLeader() {
let params = {
categoryCode: this.leaderCategoryCodeArr[this.structLevel].categoryCode,
axisStructId: this.dataForm.structReferenceId,
leaderId: this.dataForm.selectleaderId
}
const url = '/pli/power/axisstructleader/bind'
const { data, code, msg } = await requestPost(url, params)
if (code === 0) {
this.$message({
message: this.$t('prompt.success'),
type: 'success',
duration: 500,
onClose: () => {
this.$emit('leaderOk')
}
})
} else {
this.$message.error(msg)
}
},
//
async getTagCategoryArr(){
const url = '/pli/power/axisTag/listSimple/leader'
@ -237,6 +284,21 @@ export default {
}
this.categoryName = this.leaderCategoryCodeArr[this.structLevel].categoryName
},
//
async listbrief(){
const url = '/pli/power/axisstructleader/listbrief'
let params = {
structLevel: this.structLevel,
axisStructId: this.dataForm.structReferenceId,
keyWord: ''
}
const { data, code, msg } = await requestPost(url, params)
if (code === 0) {
this.listbriefArr = data
} else {
this.$message.error(msg)
}
},
//
handleCancle () {
this.$emit('leaderCancle')

Loading…
Cancel
Save