Browse Source

活动关联志愿团队

master
Jackwang 4 years ago
parent
commit
704af055f7
  1. 40
      src/views/modules/heart/actinfo-add-or-update.vue
  2. 5
      src/views/modules/heart/actinfo-detail-view.vue
  3. 26
      src/views/modules/heart/volunteerteam-add-or-update.vue
  4. 37
      src/views/modules/heart/volunteerteam.vue

40
src/views/modules/heart/actinfo-add-or-update.vue

@ -282,6 +282,20 @@
</el-input-number>&emsp; </el-input-number>&emsp;
</el-form-item> </el-form-item>
</el-row> </el-row>
<el-row>
<el-form-item label="团队类别" prop="teamType">
<el-select v-model="dataForm.teamType" @change="changeTeamType" clearable placeholder="团队类别" style="width: 260px">
<el-option v-for="item in teamTypeList" :key="item.typeCode" :label="item.typeName" :value="item.typeCode">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="志愿团队" prop="teamType">
<el-select v-model="dataForm.teamId" clearable placeholder="志愿团队" style="width: 260px">
<el-option v-for="item in teamList" :key="item.id" :label="item.teamName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-row>
<el-row> <el-row>
<el-form-item prop="actContent" <el-form-item prop="actContent"
label="活动内容:"> label="活动内容:">
@ -359,8 +373,12 @@ export default {
actUserDefaultState: '1', actUserDefaultState: '1',
isConReview: false, isConReview: false,
kindnessTime: '', kindnessTime: '',
periods: [] periods: [],
teamType:'',
teamId:''
}, },
teamList:'',
teamTypeList:[],
isImgRequired: true, isImgRequired: true,
mapSelectVisible: false, mapSelectVisible: false,
signInIsAble: true, signInIsAble: true,
@ -399,6 +417,7 @@ export default {
this.init() this.init()
}, },
created () { created () {
this.getTeamTypeList()
this.$http this.$http
.get(`/sys/user/deptOptions/getByLoginUser`) .get(`/sys/user/deptOptions/getByLoginUser`)
.then(({ data: res }) => { .then(({ data: res }) => {
@ -530,6 +549,22 @@ export default {
} }
}, },
methods: { methods: {
changeTeamType(value) {
this.dataForm.teamId = ''
this.getTeamList(value);
},
getTeamList(val) {
this.$http.get(`heart/volunteerteam/getTeamListByType?teamType=`+val).then(({data: res}) => {
this.teamList = res.data
}).catch(() => {
})
},
getTeamTypeList() {
this.$http.get(`heart/volunteerteamtype/getTeamTypeList`).then(({data: res}) => {
this.teamTypeList = res.data
}).catch(() => {
})
},
dateChangeTime () { dateChangeTime () {
this.dataForm.signinStartTime = this.dataForm.actStartTime this.dataForm.signinStartTime = this.dataForm.actStartTime
}, },
@ -584,6 +619,9 @@ export default {
...this.dataForm, ...this.dataForm,
...res.data ...res.data
} }
if(this.dataForm.teamType != ''){
this.getTeamList(this.dataForm.teamType);
}
// this.quillEditor.root.innerHTML = this.dataForm.actContent // this.quillEditor.root.innerHTML = this.dataForm.actContent
}).catch(() => { }) }).catch(() => { })
}, },

5
src/views/modules/heart/actinfo-detail-view.vue

@ -150,6 +150,11 @@
{{dataForm.punishmentPoints}}&emsp;积分 {{dataForm.punishmentPoints}}&emsp;积分
</el-form-item> </el-form-item>
</el-row> </el-row>
<el-row>
<el-form-item label="志愿团队:" prop="teamName">
{{dataForm.teamName}}
</el-form-item>
</el-row>
<el-row> <el-row>
<el-form-item prop="actContent" <el-form-item prop="actContent"
label="活动内容:"> label="活动内容:">

26
src/views/modules/heart/volunteerteam-add-or-update.vue

@ -2,20 +2,23 @@
<el-dialog :visible.sync="visible" :title="!dataForm.id ? $t('add') : $t('update')" :close-on-click-modal="false" :close-on-press-escape="false"> <el-dialog :visible.sync="visible" :title="!dataForm.id ? $t('add') : $t('update')" :close-on-click-modal="false" :close-on-press-escape="false">
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmitHandle()" :label-width="$i18n.locale === 'en-US' ? '120px' : '80px'"> <el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmitHandle()" :label-width="$i18n.locale === 'en-US' ? '120px' : '80px'">
<el-form-item label="团队名称" prop="teamName"> <el-form-item label="团队名称" prop="teamName">
<el-input v-model="dataForm.teamName" placeholder="团队名称"></el-input> <el-input v-model="dataForm.teamName" placeholder="团队名称" style="width: 260px"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="团队类别" prop="teamType"> <el-form-item label="团队类别" prop="teamType">
<el-input v-model="dataForm.teamType" placeholder="团队类别"></el-input> <el-select v-model="dataForm.teamType" clearable placeholder="团队类别" style="width: 260px">
<el-option v-for="item in teamTypeList" :key="item.typeCode" :label="item.typeName" :value="item.typeCode">
</el-option>
</el-select>
</el-form-item> </el-form-item>
<el-form-item label="联系人" prop="contacts"> <el-form-item label="联系人" prop="contacts">
<el-input v-model="dataForm.contacts" placeholder="联系人"></el-input> <el-input v-model="dataForm.contacts" placeholder="联系人" style="width: 260px"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="联系电话" prop="phone"> <el-form-item label="联系电话" prop="phone">
<el-input v-model="dataForm.phone" placeholder="联系电话"></el-input> <el-input v-model="dataForm.phone" placeholder="联系电话" style="width: 260px"></el-input>
</el-form-item> </el-form-item>
<el-form-item prop="content" <el-form-item prop="content"
label="团队介绍"> label="团队介绍">
<el-row style="height: 550px;"> <el-row style="height: 400px;">
<tinymce-editor v-model="dataForm.content"></tinymce-editor> <tinymce-editor v-model="dataForm.content"></tinymce-editor>
</el-row> </el-row>
</el-form-item> </el-form-item>
@ -47,7 +50,8 @@ export default {
updatedBy: '', updatedBy: '',
updatedTime: '', updatedTime: '',
delFlag: '' delFlag: ''
} },
teamTypeList:[]
} }
}, },
computed: { computed: {
@ -92,8 +96,16 @@ export default {
components: { components: {
TinymceEditor TinymceEditor
}, },
created: function () {
this.getTeamTypeList()
},
methods: { methods: {
init () { getTeamTypeList () {
this.$http.get(`heart/volunteerteamtype/getTeamTypeList`).then(({ data: res }) => {
this.teamTypeList = res.data
}).catch(() => {})
},
init () {
this.visible = true this.visible = true
this.$nextTick(() => { this.$nextTick(() => {
this.$refs['dataForm'].resetFields() this.$refs['dataForm'].resetFields()

37
src/views/modules/heart/volunteerteam.vue

@ -2,8 +2,21 @@
<el-card shadow="never" class="aui-card--fill"> <el-card shadow="never" class="aui-card--fill">
<div class="mod-heart__volunteerteam}"> <div class="mod-heart__volunteerteam}">
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()"> <el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
<el-form-item> <el-form-item label="团队名称" prop="teamName">
<el-input v-model="dataForm.id" placeholder="id" clearable></el-input> <el-input v-model="dataForm.teamName"
placeholder="团队名称"
clearable></el-input>
</el-form-item>
<el-form-item label="团队类别" prop="teamType">
<el-select v-model="dataForm.teamType" clearable placeholder="团队类别" style="width: 260px">
<el-option v-for="item in teamTypeList" :key="item.typeCode" :label="item.typeName" :value="item.typeCode">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="联系人" prop="contacts">
<el-input v-model="dataForm.contacts"
placeholder="联系人"
clearable></el-input>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button @click="getDataList()">{{ $t('query') }}</el-button> <el-button @click="getDataList()">{{ $t('query') }}</el-button>
@ -20,14 +33,14 @@
width="50" width="50"
label="序号" align="center"></el-table-column> label="序号" align="center"></el-table-column>
<el-table-column prop="teamName" label="团队名称" header-align="center" align="center"></el-table-column> <el-table-column prop="teamName" label="团队名称" header-align="center" align="center"></el-table-column>
<el-table-column prop="teamType" label="团队类别" header-align="center" align="center"></el-table-column> <el-table-column prop="typeName" label="团队类别" header-align="center" align="center"></el-table-column>
<el-table-column prop="contacts" label="联系人" header-align="center" align="center"></el-table-column> <el-table-column prop="contacts" label="联系人" header-align="center" align="center"></el-table-column>
<el-table-column prop="phone" label="联系电话" header-align="center" align="center"></el-table-column> <el-table-column prop="phone" label="联系电话" header-align="center" align="center"></el-table-column>
<el-table-column prop="createdTime" label="创建时间" header-align="center" align="center"></el-table-column> <el-table-column prop="createdTime" label="创建时间" header-align="center" align="center"></el-table-column>
<el-table-column :label="$t('handle')" fixed="right" header-align="center" align="center" width="150"> <el-table-column :label="$t('handle')" fixed="right" header-align="center" align="center" width="150">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button v-if="$hasPermission('heart:volunteerteam:update')" type="text" size="small" @click="addOrUpdateHandle(scope.row.id)">{{ $t('update') }}</el-button> <el-button type="text" size="small" @click="addOrUpdateHandle(scope.row.id)">{{ $t('update') }}</el-button>
<el-button v-if="$hasPermission('heart:volunteerteam:delete')" type="text" size="small" @click="deleteHandle(scope.row.id)">{{ $t('delete') }}</el-button> <el-button type="text" size="small" @click="deleteHandle(scope.row.id)">{{ $t('delete') }}</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -61,11 +74,23 @@ export default {
}, },
dataForm: { dataForm: {
id: '' id: ''
} },
teamTypeList:[]
} }
}, },
components: { components: {
AddOrUpdate AddOrUpdate
},
created: function () {
this.getTeamTypeList()
},
methods: {
getTeamTypeList() {
this.$http.get(`heart/volunteerteamtype/getTeamTypeList`).then(({data: res}) => {
this.teamTypeList = res.data
}).catch(() => {
})
},
} }
} }
</script> </script>

Loading…
Cancel
Save