Browse Source

查看列表

feature
是小王呀\24601 1 year ago
parent
commit
3b8d564306
  1. 40
      src/views/modules/volunteer/activityArchive/add.vue
  2. 2
      src/views/modules/volunteer/activityArchive/index.vue
  3. 82
      src/views/modules/volunteer/activityArchive/realselect.vue
  4. 38
      src/views/modules/volunteer/activityArchive/select.vue

40
src/views/modules/volunteer/activityArchive/add.vue

@ -57,7 +57,7 @@
</el-form-item>
</el-form>
</div>
<div style="width: 48%;">
<div style="width: 50%;">
<el-form ref="ref_form" :inline="true" :model="formData" class="form" label-width="115px">
<div>
<el-form-item label="活动积分" prop="integral">
@ -104,16 +104,6 @@
<el-input v-model="item.name" placeholder="请输入" style="width: 300px;"></el-input>
<i class="el-icon-remove-outline" @click.prevent="removeDomain(item)" style="font-size: 20px; margin-left: 20px;"></i>
</el-form-item>
<el-form-item label="联系电话" prop="sponsors">
<el-input v-model="item.phone" placeholder="请输入" style="width: 300px;"></el-input>
</el-form-item>
</div>
</div>
<i class="el-icon-circle-plus" @click="addDomain" style="font-size: 20px; margin-top:7px;" ></i> </div>
<!-- <i class="el-icon-circle-plus" @click="addDomain" style="font-size: 20px;"></i> -->
<el-form-item label="活动地点" prop="searchValue" >
<div style="width: 300px">
<el-select v-model.trim="searchValue" filterable style="width: 300px" remote
@ -126,6 +116,16 @@
<div id="app_activity" class="div_map"></div>
</div>
</el-form-item>
<el-form-item label="联系电话" prop="sponsors">
<el-input v-model="item.phone" placeholder="请输入" style="width: 300px;"></el-input>
</el-form-item>
</div>
</div>
<i class="el-icon-circle-plus" @click="addDomain" style="font-size: 20px; margin-top:7px;" ></i> </div>
<!-- <i class="el-icon-circle-plus" @click="addDomain" style="font-size: 20px;"></i> -->
</el-form>
</div>
</div>
@ -192,7 +192,10 @@ export default {
latitude: this.$store.state.user.latitude,//
type:"",
online:0,
sponsors:[
sponsors:[{
name:"",
phone:""
}
]
},
@ -258,6 +261,19 @@ export default {
},
methods: {
//
removeDomain(item) {
var index = this.formData.sponsors.indexOf(item)
if (index !== -1) {
this.formData.sponsors.splice(index, 1)
}
},
//
addDomain() {
console.log(this.formData.sponsors,this.tableDate,);
this.formData.sponsors.push(this.tableDate);
console.log(this.formData.sponsors,this.tableDate,);
},
//
actcontrolTime(){
console.log("dislfj");

2
src/views/modules/volunteer/activityArchive/index.vue

@ -127,7 +127,7 @@
import realselect from "./realselect.vue"
export default {
components: {add,ActivityCountshow,Points,selecthande },
components: {add,ActivityCountshow,Points,realselect },
data() {
return {

82
src/views/modules/volunteer/activityArchive/realselect.vue

@ -3,24 +3,23 @@
<div class="dialog-h-content scroll-h"
style="display: flex; flex-direction: row; justify-content:space-between; padding: 20px;">
<div style="width: 48%; ">
<el-form ref="ref_form" :inline="true" :model="formData" class="form" label-width="90px" :rules="rules" >
<el-form ref="ref_form" :model="formData" class="form" label-width="90px" :rules="rules">
<el-form-item label="主办方" prop="agencyId" required>
<el-cascader class="list_item_width_1" ref="myCascader" clearable style="width: 300px;"
v-model.trim="formData.agencyId" :options="orgOptions" :props="orgOptionProps"
@change="handleChangeAgency"></el-cascader>
{{ formData.agencyName}}
</el-form-item>
<el-form-item label="活动标题" prop="title" required>
<!-- <el-input type="textarea" style="width: 300px;" placeholder="请输入活动标题,不超过50子" v-model="formData.title" maxlength="50"
show-word-limit>
</el-input> -->
{{formData.title }}
</el-form-item>
<el-form-item label="活动详情" prop="content" style="display: block" required>
<div style="width: 300px;">
<Tinymce class="tinymce_view " v-model.trim="formData.content" :height="150" placeholder="请输入活动内容" />
<div style="width: 300px;" v-html="formData.content">
</div>
</el-form-item>
<el-form-item label="照片" prop="activityImgs" required>
<div >
<div>
<el-upload :headers="$getElUploadHeaders()" class="avatar-uploader" :action="uploadUrl"
:show-file-list="true" :data="{ customerId: customerId }" :file-list="formData.activityImgs"
:on-preview="handleImgPreview" :on-success="handleImgSuccess" :on-remove="handleImgRemove"
@ -29,40 +28,38 @@
</div>
</el-form-item>
<el-form-item label="活动时间" prop="strTime" required >
<el-date-picker v-model="formData.strTime" type="datetime" placeholder="开始时间" format="yyyy-MM-dd HH:mm:ss"
<el-form-item label="活动时间" prop="strTime" required>
<!-- <el-date-picker v-model="formData.strTime" type="datetime" placeholder="开始时间" format="yyyy-MM-dd HH:mm:ss"
value-format="yyyy-MM-dd HH:mm:ss" style="width: 150px;">
</el-date-picker> <el-date-picker v-model="formData.endTime" type="datetime" placeholder=""
format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss"style="width: 150px;"@change="actcontrolTime">
</el-date-picker>
</el-date-picker> -->
{{ formData.strTime }}{{ formData.endTime }}
</el-form-item>
<el-form-item label="活动名额" prop="points" required>
<div style="display: flex; flex-direction: column;">
<el-input-number :disabled="formData.notQuota === '0'" v-model.trim="formData.quota"
label="描述文字" type="number"></el-input-number>
<el-input-number :disabled="formData.notQuota === '0'" v-model.trim="formData.quota" label="描述文字"
type="number"></el-input-number>
<el-radio style="margin-top: 20px;" v-model="formData.notQuota" label="0">不限名额</el-radio>
</div>
</el-form-item>
<el-form-item label="活动类型" prop="type" required>
<el-select v-model.trim="formData.type" placeholder="请选择" clearable style="width: 300px;">
<el-option v-for="item in typeList" :key="item.id" :label="item.name" :value="item.id">
</el-option>
</el-select>
{{ formData.type }}
</el-form-item>
<el-form-item label=" 联系人" prop="linkman" required >
<el-input v-model="formData.linkman" placeholder="请输入" style="width: 300px;"></el-input>
<el-form-item label=" 联系人" prop="linkman" required>
{{ formData.linkman }}
</el-form-item>
<el-form-item label=" 联系电话" prop="linkMobile" required>
<el-input v-model="formData.linkMobile" placeholder="请输入"style="width: 300px;"></el-input>
{{ formData.linkMobile }}
</el-form-item>
</el-form>
</div>
<div style="width: 48%;">
<el-form ref="ref_form" :inline="true" :model="formData" class="form" label-width="115px">
<div>
<el-form-item label="活动积分" prop="integral">
<el-input-number v-model="formData.points" :min="1" :max="10"
label="描述文字"></el-input-number>
<el-input-number v-model="formData.points" :min="1" :max="10" label="描述文字"></el-input-number>
</el-form-item>
<!-- <el-form-item label="所属项目" prop="typeId" required>
@ -73,23 +70,14 @@
</el-select>
</el-form-item> -->
<el-form-item label="报名条件" prop="conditions" style="display: block">
<el-input type="textarea" placeholder="请输入活动标题,不超过50子" v-model="formData.conditions" maxlength="200"
show-word-limit style="width: 300px;">
</el-input>
{{formData.conditions}}
</el-form-item>
<el-form-item label="签到时间" prop="signInTime" required>
<el-date-picker v-model.trim="formData.signInTime" type="datetime" value-format="yyyy-MM-dd HH:mm:ss"
format="yyyy-MM-dd HH:mm:ss" placeholder="开始时间" style="width:150px">
</el-date-picker>
<el-date-picker v-model.trim="formData.signOutTime" type="datetime" value-format="yyyy-MM-dd HH:mm:ss"
format="yyyy-MM-dd HH:mm:ss" placeholder="结束时间" style="width:150px" @change="controlTime ">
</el-date-picker>
{{formData.signInTime}} {{formData.signOutTime}}
</el-form-item>
<el-form-item label="报名截止时间" prop="deadline" required>
<el-date-picker v-model="formData.deadline" type="datetime" placeholder="选择日期时间"
value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd HH:mm:ss">
</el-date-picker>
{{ formData.deadline }}
</el-form-item>
<el-form-item v-if="formType!=='records'" label="上线" style="display: block" prop="peopleCount">
@ -97,23 +85,23 @@
@change="handleSwitchChange"></el-switch>
</el-form-item>
</div>
<el-form-item label="赞助单位" prop="sponsor" style="margin-bottom:20px" label-width="110px">
<el-input v-model="tableDate.name" placeholder="请输入" style="width: 300px;"></el-input>
<div v-for="(item, index) in formData.sponsors" :label="index" :key="item.name" :prop=index>
<el-form-item label="赞助单位" prop="sponsors" style="margin-bottom:20px" label-width="110px">
{{ item.name }}
</el-form-item>
<el-form-item label="联系电话" prop="sponsor" >
<el-input v-model="tableDate.phone" placeholder="请输入" style="width: 300px;"></el-input>
<el-form-item label="联系电话" prop="sponsors">
{{item.phone}}
</el-form-item>
<!-- <i class="el-icon-circle-plus" @click="addDomain" style="font-size: 20px;"></i> -->
<el-form-item label="活动地点" prop="searchValue" >
</div>
<el-form-item label="活动地点" prop="searchValue">
<div style="width: 300px">
<el-select v-model.trim="searchValue" filterable style="width: 300px" remote
:reserve-keyword="true" placeholder="请输入关键词" :remote-method="remoteMethod"
:loading="loading">
<el-option v-for="(item, index) in searchOptions" @click.native="handleClickKey(index)" style="width: 400px;"
:key="item.value || index" :label="item.label" :value="item.value">
<!-- <el-select v-model.trim="searchValue" filterable style="width: 300px" remote :reserve-keyword="true"
placeholder="请输入关键词" :remote-method="remoteMethod" :loading="loading">
<el-option v-for="(item, index) in searchOptions" @click.native="handleClickKey(index)"
style="width: 400px;" :key="item.value || index" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-select> -->
{{ searchValue }}
</div>
<div v-if="true" id="app_activity" class="div_map"></div>
</el-form-item>
@ -122,7 +110,7 @@
</div>
</div>
</template>
</template>
<script>
import { Loading } from 'element-ui' // Loading
import { mapGetters } from 'vuex'

38
src/views/modules/volunteer/activityArchive/select.vue

@ -97,6 +97,17 @@
@change="handleSwitchChange"></el-switch>
</el-form-item>
</div>
<el-form-item label="活动地点" prop="searchValue">
<div style="width: 300px">
<el-select v-model.trim="searchValue" filterable style="width: 300px" remote :reserve-keyword="true"
placeholder="请输入关键词" :remote-method="remoteMethod" :loading="loading">
<el-option v-for="(item, index) in searchOptions" @click.native="handleClickKey(index)"
style="width: 400px;" :key="item.value || index" :label="item.label" :value="item.value">
</el-option>
</el-select>
</div>
<div id="app_activity" class="div_map"></div>
</el-form-item>
<div style="display: flex;">
<div style="">
<div v-for="(item, index) in formData.sponsors" :label="index" :key="item.name" :prop=index>
@ -104,28 +115,14 @@
<el-input v-model="item.name" placeholder="请输入" style="width: 300px;"></el-input>
<i class="el-icon-remove-outline" @click.prevent="removeDomain(item)" style="font-size: 20px; margin-left: 20px;"></i>
</el-form-item>
<el-form-item label="联系电话" prop="sponsors">
<el-input v-model="item.phone" placeholder="请输入" style="width: 300px;"></el-input>
</el-form-item>
</div>
</div>
<i class="el-icon-circle-plus" @click="addDomain" style="font-size: 20px; margin-top:7px;" ></i> </div>
<el-form-item label="活动地点" prop="searchValue">
<div style="width: 300px">
<el-select v-model.trim="searchValue" filterable style="width: 300px" remote :reserve-keyword="true"
placeholder="请输入关键词" :remote-method="remoteMethod" :loading="loading">
<el-option v-for="(item, index) in searchOptions" @click.native="handleClickKey(index)"
style="width: 400px;" :key="item.value || index" :label="item.label" :value="item.value">
</el-option>
</el-select>
</div>
<div v-if="true" id="app_activity" class="div_map"></div>
</el-form-item>
</el-form>
</div>
</div>
@ -261,6 +258,17 @@ export default {
methods: {
//
removeDomain(item) {
if (item.id) {
let url=`/voluntary/activityInfo/deleteSponsorById/${item.id}`
requestGet(url).then((res) => {
if (res.code == 0) {
this.$message.success('删除成功');
} else {
this.$message.error(res.msg);
}
});
}
var index = this.formData.sponsors.indexOf(item)
if (index !== -1) {
this.formData.sponsors.splice(index, 1)

Loading…
Cancel
Save