| | |
| | | </el-form-item> |
| | | <el-form-item label="活动标题" prop="name"><el-input v-model="form.name" placeholder="请输入活动标题" class="max-w460"></el-input></el-form-item> |
| | | <el-form-item label="活动分类" prop="category_id"> |
| | | <el-select v-model="form.category_id" placeholder="请选择"> |
| | | <el-select v-model="form.category_id" placeholder="请选择" @change="handleCategoryChange"> |
| | | <el-option v-for="(item, index) in category" :key="index" :label="item.name" :value="item.category_id"></el-option> |
| | | </el-select> |
| | | <div class="gray9" v-if="selectedCategory">该分类最多{{ selectedCategory.limit_num }}人</div> |
| | | </el-form-item> |
| | | <el-form-item label="活动简介" prop="describe"><el-input type="textarea" v-model="form.describe" rows="4" maxlength="200" show-word-limit placeholder="请输入活动简介" class="max-w460"></el-input></el-form-item> |
| | | <el-form-item label="封面图"> |
| | |
| | | <el-radio :label="0">否</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item v-if="form.is_visit" label="被走访企业名称" prop="visit_supplier_name"> |
| | | <el-input v-model="form.visit_supplier_name" placeholder="商户没有入驻时,请输入被走访企业名称" class="max-w460"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="被走访企业" prop="visit_supplier_id" key="visit_supplier_id" v-if="form.is_visit"> |
| | | <el-row> |
| | | <el-button @click="selectSupplier('visit')" icon="el-icon-plus">选择企业</el-button> |
| | | <div v-if="form.visit_supplier_id!=''" class="mt10"> |
| | | <el-tag>{{ visit_supplier_name }}</el-tag> |
| | | </div> |
| | | <div class="gray9" v-if="form.visit_supplier_id==''">如没有可不选</div> |
| | | </el-row> |
| | | </el-form-item> |
| | | <el-form-item label="提供场地企业" prop="space_supplier_id" key="space_supplier_id" v-if="!form.is_visit"> |
| | |
| | | <el-input v-model="form.limit_num" placeholder="请输入活动名额" class="max-w460"> |
| | | <template slot="append">人</template> |
| | | </el-input> |
| | | <div class="gray9">0为不限制人数</div> |
| | | <div class="gray9">0为不限制人数{{selectedCategory&&selectedCategory.limit_num?(',该分类最多'+selectedCategory.limit_num+'人'):''}}</div> |
| | | </el-form-item> |
| | | <el-form-item label="联系电话" prop="phone"> |
| | | <el-input v-model="form.phone" placeholder="请输入联系电话" class="max-w460"></el-input> |
| | |
| | | rules: { |
| | | name: [{ required: true, message: '请输入活动标题', trigger: 'blur' }], |
| | | category_id: [{ required: true, message: '请选择活动分类', trigger: 'blur' }], |
| | | visit_supplier_name: [ |
| | | { |
| | | required: true, |
| | | message: '请输入被走访企业名称', |
| | | trigger: 'blur', |
| | | validator: (rule, value, callback) => { |
| | | if (this.form.is_visit && (!value || value.trim() === '')) { |
| | | callback(new Error('请输入被走访企业名称')); |
| | | } else { |
| | | callback(); |
| | | } |
| | | } |
| | | } |
| | | ], |
| | | visit_supplier_id: [{ required: true, trigger: 'blur', validator: validateVisit }], |
| | | reg_date: [{ required: true, message: '请选择报名起止时间', trigger: 'blur' }], |
| | | act_date: [{ required: true, message: '请选择活动起止时间', trigger: 'blur' }], |
| | |
| | | .catch(error => {}); |
| | | }, |
| | | |
| | | /*处理分类选择变化*/ |
| | | handleCategoryChange(value) { |
| | | // 根据选中的category_id找到对应的分类对象 |
| | | const selected = this.category.find(item => item.category_id === value); |
| | | this.selectedCategory = selected || null; |
| | | |
| | | // 可以在这里添加其他业务逻辑,比如根据分类显示不同的表单字段等 |
| | | console.log('选中的分类信息:', this.selectedCategory); |
| | | }, |
| | | |
| | | formatData() { |
| | | this.ueditor.text = this.form.content; |
| | | this.branch_name = this.form.branch.name; |
| | |
| | | this.visit_supplier_name = this.form.visitSupplier ? this.form.visitSupplier.name : ''; |
| | | this.space_supplier_name = this.form.spaceSupplier ? this.form.spaceSupplier.name : ''; |
| | | this.select_list = this.form.verify_user; |
| | | |
| | | // 初始化选中的分类信息 |
| | | if (this.category && this.form.category_id) { |
| | | this.selectedCategory = this.category.find(item => item.category_id === this.form.category_id) || null; |
| | | } |
| | | |
| | | this.loading = false; |
| | | }, |
| | | |
| | |
| | | // form.verify_user_ids = verify_user_ids.join(','); |
| | | self.$refs.form.validate(valid => { |
| | | if (valid) { |
| | | self.loading = true; |
| | | self.form.content = this.$refs.ue.getUEContent(); |
| | | // 如果走访企业,则被走访企业就是场地提供者 |
| | | if (self.form.is_visit) { |
| | | self.form.space_supplier_id = ''; |
| | | } else { |
| | | self.form.visit_supplier_id = ''; |
| | | } |
| | | BranchApi.editActivity(form, true) |
| | | .then(data => { |
| | | self.loading = false; |
| | | self.$message({ |
| | | message: data.msg, |
| | | type: 'success' |
| | | }); |
| | | this.$emit('success'); |
| | | }) |
| | | .catch(error => { |
| | | self.loading = false; |
| | | // 如果是走访活动,先检查差评 |
| | | if (self.form.is_visit && (self.form.visit_supplier_id || self.form.visit_supplier_name)) { |
| | | BranchApi.checkNegativeComment({ |
| | | visit_supplier_id: self.form.visit_supplier_id || 0, |
| | | visit_supplier_name: self.form.visit_supplier_name || '', |
| | | activity_id: self.form.activity_id || 0 |
| | | }).then(res => { |
| | | if (res.data.has_warning) { |
| | | // 显示确认对话框 |
| | | self.$confirm(res.data.message, '提示', { |
| | | confirmButtonText: '继续走访', |
| | | cancelButtonText: '取消', |
| | | type: 'warning' |
| | | }).then(() => { |
| | | // 用户确认继续,直接提交 |
| | | self.submitForm(); |
| | | }).catch(() => { |
| | | // 用户取消 |
| | | }); |
| | | } else { |
| | | // 没有差评警告,直接提交 |
| | | self.submitForm(); |
| | | } |
| | | }).catch(error => { |
| | | // 检查失败,直接提交 |
| | | self.submitForm(); |
| | | }); |
| | | } else { |
| | | // 不是走访活动,直接提交 |
| | | self.submitForm(); |
| | | } |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | /*提交表单*/ |
| | | submitForm() { |
| | | let self = this; |
| | | self.loading = true; |
| | | self.form.content = this.$refs.ue.getUEContent(); |
| | | // 如果走访企业,则被走访企业就是场地提供者 |
| | | if (self.form.is_visit) { |
| | | self.form.space_supplier_id = ''; |
| | | } else { |
| | | self.form.visit_supplier_id = ''; |
| | | } |
| | | BranchApi.editActivity(self.form, true) |
| | | .then(data => { |
| | | self.loading = false; |
| | | self.$message({ |
| | | message: data.msg, |
| | | type: 'success' |
| | | }); |
| | | this.$emit('success'); |
| | | }) |
| | | .catch(error => { |
| | | self.loading = false; |
| | | }); |
| | | }, |
| | | |
| | | /*选择的地址*/ |
| | | selectFromMap(e){ |
| | | this.form.coordinate = e.location.lat + ',' + e.location.lng; |