|
@@ -28,7 +28,7 @@
|
|
|
<el-date-picker v-model="votingForm.date" type="date" placeholder="请设置投票截止时间" style="width: 100%"> </el-date-picker>
|
|
|
</el-form-item>
|
|
|
<el-form-item prop="select">
|
|
|
- <el-select v-model="votingForm.select" placeholder="最多可选几项" style="width: 100%">
|
|
|
+ <el-select v-model="votingForm.select" placeholder="最多可选几项" style="width: 100%" @change="selectChangeHandler">
|
|
|
<el-option label="1" value="1"></el-option>
|
|
|
<el-option label="2" value="2"></el-option>
|
|
|
<el-option label="3" value="3"></el-option>
|
|
@@ -36,16 +36,16 @@
|
|
|
<el-option label="5" value="5"></el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item prop="themeOne">
|
|
|
+ <!-- <el-form-item prop="themeOne">
|
|
|
<el-input v-model="votingForm.themeOne" placeholder="活动主题" style="width: 100%"></el-input>
|
|
|
</el-form-item>
|
|
|
<el-form-item prop="themeTwo">
|
|
|
<el-input v-model="votingForm.themeTwo" placeholder="活动主题" style="width: 100%"></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item v-for="(item, index) in addThemeList" :key="index">
|
|
|
+ </el-form-item> -->
|
|
|
+ <el-form-item v-for="(item, index) in addThemeList" :key="index" :prop="'ActivityTheme' + index">
|
|
|
<div class="add-theme-content">
|
|
|
- <el-input v-model="item.name" placeholder="活动主题" style="width: 100%"></el-input>
|
|
|
- <div class="delete-item-icon" @click="deleteThemeItem(item, index)">
|
|
|
+ <el-input v-model="item.ActivityTheme" placeholder="活动主题" style="width: 100%" @input="validateFormItem(index)" clearable></el-input>
|
|
|
+ <div class="delete-item-icon" @click="deleteThemeItem(item, index)" v-if="index >= 2">
|
|
|
<img src="~@/assets/img/icons/delete-Item.png" alt="" />
|
|
|
</div>
|
|
|
</div>
|
|
@@ -67,7 +67,10 @@
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
+import { raiInterface, raiSpecial } from "@/api/api.js";
|
|
|
+
|
|
|
import RichText from "../../../components/richText.vue";
|
|
|
+import { async } from "@antv/x6/lib/registry/marker/main";
|
|
|
export default {
|
|
|
name: "",
|
|
|
components: { RichText },
|
|
@@ -109,12 +112,14 @@ export default {
|
|
|
votingRules: {
|
|
|
type: [{ required: true, message: "请选择活动类型", trigger: "change" }],
|
|
|
describe: [{ required: true, message: "请输入首段描述文字", trigger: "blur" }],
|
|
|
- themeOne: [{ required: true, message: "请输入活动主题", trigger: "blur" }],
|
|
|
- themeTwo: [{ required: true, message: "请输入活动主题", trigger: "blur" }],
|
|
|
date: [{ type: "date", required: true, message: "请设置投票截止时间", trigger: "change" }],
|
|
|
select: [{ required: true, message: "请输入最多可选几项", trigger: "change" }],
|
|
|
},
|
|
|
- addThemeList: [],
|
|
|
+ addThemeList: [
|
|
|
+ { QuestionnaireThemeId: 0, ActivityTheme: "" },
|
|
|
+ { QuestionnaireThemeId: 0, ActivityTheme: "" },
|
|
|
+ ],
|
|
|
+ listTheme: [],
|
|
|
};
|
|
|
},
|
|
|
computed: {},
|
|
@@ -134,20 +139,34 @@ export default {
|
|
|
});
|
|
|
},
|
|
|
deleteThemeItem(item, index) {
|
|
|
- this.addThemeList.splice(index, 1);
|
|
|
+ if (index >= 2) {
|
|
|
+ this.addThemeList.splice(index, 1);
|
|
|
+ }
|
|
|
},
|
|
|
// 点击确定
|
|
|
submitForm() {
|
|
|
- this.$refs.votingForm.validate((valid) => {
|
|
|
+ this.$refs.votingForm.validate(async (valid) => {
|
|
|
if (valid) {
|
|
|
let isOk = this.addThemeList && this.addThemeList.some((item) => !item.name);
|
|
|
if (isOk) return this.$message.error("活动主题输入框不能为空");
|
|
|
+ const res = await raiInterface.questionnairePreserveAndEdit({
|
|
|
+ ActivityTypeId: this.votingForm.type,
|
|
|
+ MaxChooseTotal: this.votingForm.select,
|
|
|
+ Content: this.votingForm.describe,
|
|
|
+ EndTime: this.votingForm.date,
|
|
|
+ });
|
|
|
} else {
|
|
|
console.log("error submit!!");
|
|
|
return false;
|
|
|
}
|
|
|
});
|
|
|
},
|
|
|
+ // 选择的change事件
|
|
|
+ selectChangeHandler() {},
|
|
|
+ validateFormItem(index) {
|
|
|
+ // 动态校验单个表单项
|
|
|
+ this.$refs.votingForm.validateField('activityTheme' + index);
|
|
|
+ },
|
|
|
},
|
|
|
};
|
|
|
</script>
|