第一书记跟随目录名称

This commit is contained in:
aixianling
2023-10-09 10:53:30 +08:00
parent 872e7afdd3
commit 30b25883a8
3 changed files with 128 additions and 124 deletions

View File

@@ -1,66 +1,66 @@
<template>
<div class="doc-circulation ailist-wrapper">
<keep-alive :include="['List']">
<component ref="component" :is="component" @change="onChange" :params="params" :instance="instance" :dict="dict"></component>
<component ref="component" :is="component" @change="onChange" :params="params" v-bind="$props"></component>
</keep-alive>
</div>
</template>
<script>
import List from './components/List'
import Add from './components/Add'
import List from './components/List'
import Add from './components/Add'
export default {
name: 'AppVillageAuxiliarPolice',
label: '第一书记',
export default {
name: 'AppVillageAuxiliarPolice',
label: '第一书记',
props: {
instance: Function,
dict: Object,
menuName: {default: "第一书记"}
},
props: {
instance: Function,
dict: Object
},
data() {
return {
component: 'List',
params: {},
include: []
}
},
data () {
return {
component: 'List',
params: {},
include: []
components: {
Add,
List
},
mounted() {
},
methods: {
onChange(data) {
if (data.type === 'Add') {
this.component = 'Add'
this.params = data.params
}
},
components: {
Add,
List
},
if (data.type === 'list') {
this.component = 'List'
this.params = data.params
mounted () {
},
methods: {
onChange (data) {
if (data.type === 'Add') {
this.component = 'Add'
this.params = data.params
}
if (data.type === 'list') {
this.component = 'List'
this.params = data.params
this.$nextTick(() => {
if (data.isRefresh) {
this.$refs.component.getList()
}
})
}
this.$nextTick(() => {
if (data.isRefresh) {
this.$refs.component.getList()
}
})
}
}
}
}
</script>
<style lang="scss">
.doc-circulation {
height: 100%;
background: #F3F6F9;
overflow: auto;
}
.doc-circulation {
height: 100%;
background: #F3F6F9;
overflow: auto;
}
</style>

View File

@@ -1,8 +1,7 @@
<template>
<ai-detail>
<template slot="title">
<ai-title :title="params.id ? '编辑第一书记' : '添加第一书记'" isShowBack isShowBottomBorder @onBackClick="cancel(false)">
</ai-title>
<ai-title :title="(params.id?'编辑':'添加')+menuName" isShowBack isShowBottomBorder @onBackClick="cancel(false)"/>
</template>
<template slot="content">
<ai-card title="基本信息">
@@ -11,13 +10,16 @@
<el-form-item label="服务区域" style="width: 100%;" prop="codeName">
<span style="color: #666;">{{ form.areaName }}</span>
</el-form-item>
<el-form-item style="width: 100%" label="姓名" prop="name" :rules="[{ required: true, message: '请输入姓名', trigger: 'blur' }]">
<el-form-item style="width: 100%" label="姓名" prop="name"
:rules="[{ required: true, message: '请输入姓名', trigger: 'blur' }]">
<el-input size="small" placeholder="请输入姓名" v-model="form.name"></el-input>
</el-form-item>
<el-form-item style="width: 100%" label="电话" prop="phone" :rules="[{ required: true, message: '请输入电话', trigger: 'blur' }]">
<el-form-item style="width: 100%" label="电话" prop="phone"
:rules="[{ required: true, message: '请输入电话', trigger: 'blur' }]">
<el-input size="small" placeholder="请输入电话" maxlength="20" v-model="form.phone"></el-input>
</el-form-item>
<el-form-item style="width: 100%;" label="是否公开" prop="isPublic" :rules="[{ required: true, message: '请选择是否公开', trigger: 'change' }]">
<el-form-item style="width: 100%;" label="是否公开" prop="isPublic"
:rules="[{ required: true, message: '请选择是否公开', trigger: 'change' }]">
<el-radio-group v-model="form.isPublic">
<el-radio label="1"></el-radio>
<el-radio label="0"></el-radio>
@@ -25,10 +27,10 @@
</el-form-item>
<el-form-item label="图片" style="width: 100%;" prop="picture">
<ai-uploader
:instance="instance"
isShowTip
v-model="form.picture"
:limit="1">
:instance="instance"
isShowTip
v-model="form.picture"
:limit="1">
</ai-uploader>
</el-form-item>
</el-form>
@@ -43,83 +45,84 @@
</template>
<script>
export default {
name: 'Add',
export default {
name: 'Add',
props: {
instance: Function,
dict: Object,
params: Object
props: {
instance: Function,
dict: Object,
params: Object,
menuName: String
},
data() {
return {
info: {},
form: {
areaId: '',
name: '',
areaName: '',
phone: '',
picture: [],
isPublic: '1'
},
id: ''
}
},
created() {
if (this.params && this.params.areaId && !this.params.id) {
this.form.areaId = this.params.areaId
this.form.areaName = this.params.areaName
}
if (this.params && this.params.id) {
this.id = this.params.id
this.getInfo(this.params.id)
}
},
methods: {
getInfo(id) {
this.instance.post(`/app/appvillageauxiliarypolice/queryDetailById?id=${id}`).then(res => {
if (res.code === 0) {
this.form = res.data
this.form.picture = res.data.picture ? [{url: res.data.picture}] : []
}
})
},
data () {
return {
info: {},
form: {
areaId: '',
name: '',
areaName: '',
phone: '',
picture: [],
isPublic: '1'
},
id: ''
}
onClose() {
this.form.explain = ''
},
created () {
if (this.params && this.params.areaId && !this.params.id) {
this.form.areaId = this.params.areaId
this.form.areaName = this.params.areaName
}
if (this.params && this.params.id) {
this.id = this.params.id
this.getInfo(this.params.id)
}
confirm() {
this.$refs.form.validate((valid) => {
if (valid) {
this.instance.post(`/app/appvillageauxiliarypolice/addOrUpdate`, {
...this.form,
id: this.params.id || '',
picture: this.form.picture.length ? this.form.picture[0].url : ''
}).then(res => {
if (res.code == 0) {
this.$message.success('提交成功')
setTimeout(() => {
this.cancel(true)
}, 600)
}
})
}
})
},
methods: {
getInfo (id) {
this.instance.post(`/app/appvillageauxiliarypolice/queryDetailById?id=${id}`).then(res => {
if (res.code === 0) {
this.form = res.data
this.form.picture = res.data.picture ? [{url: res.data.picture}] : []
}
})
},
onClose () {
this.form.explain = ''
},
confirm () {
this.$refs.form.validate((valid) => {
if (valid) {
this.instance.post(`/app/appvillageauxiliarypolice/addOrUpdate`, {
...this.form,
id: this.params.id || '',
picture: this.form.picture.length ? this.form.picture[0].url : ''
}).then(res => {
if (res.code == 0) {
this.$message.success('提交成功')
setTimeout(() => {
this.cancel(true)
}, 600)
}
})
}
})
},
cancel (isRefresh) {
this.$emit('change', {
type: 'list',
isRefresh: !!isRefresh
})
}
cancel(isRefresh) {
this.$emit('change', {
type: 'list',
isRefresh: !!isRefresh
})
}
}
}
</script>
<style scoped lang="scss">

View File

@@ -1,7 +1,7 @@
<template>
<ai-list class="villagecode">
<template slot="title">
<ai-title title="第一书记" isShowBottomBorder></ai-title>
<ai-title :title="menuName" isShowBottomBorder></ai-title>
</template>
<template #left>
<div class="villagecode-left">
@@ -91,7 +91,8 @@
props: {
instance: Function,
dict: Object
dict: Object,
menuName:String
},
data() {