SchoolSetRecognition.vue 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. <template>
  2. <div class="school-set-recognition part-box part-box-pad">
  3. <el-form ref="modalFormComp" :model="modalForm" label-width="160px">
  4. <el-form-item label="客观题检查扩展条件:">
  5. <el-checkbox v-model="modalForm.avoidSingleChoice">
  6. 单选题有且仅有一个识别答案不进客观题检查
  7. </el-checkbox>
  8. </el-form-item>
  9. <el-form-item>
  10. <el-button type="primary" :loading="loading" @click="confirm"
  11. >保存</el-button
  12. >
  13. </el-form-item>
  14. </el-form>
  15. </div>
  16. </template>
  17. <script>
  18. import {
  19. schoolSetRecognitionInfo,
  20. schoolSetRecognitionUpdate,
  21. } from "../../api";
  22. export default {
  23. name: "SchoolSetRecognition",
  24. props: {
  25. school: {
  26. type: Object,
  27. default() {
  28. return {};
  29. },
  30. },
  31. },
  32. data() {
  33. return {
  34. modalForm: {
  35. avoidSingleChoice: false,
  36. },
  37. loading: false,
  38. };
  39. },
  40. mounted() {
  41. this.initData();
  42. },
  43. methods: {
  44. async initData() {
  45. const data = await schoolSetRecognitionInfo(this.school.id);
  46. this.modalForm.avoidSingleChoice = data?.value === "true";
  47. },
  48. async confirm() {
  49. const valid = await this.$refs.modalFormComp.validate().catch(() => {});
  50. if (!valid) return;
  51. if (this.loading) return;
  52. this.loading = true;
  53. const datas = {
  54. enable: this.modalForm.avoidSingleChoice,
  55. schoolId: this.school.id,
  56. };
  57. const res = await schoolSetRecognitionUpdate(datas).catch(() => {});
  58. this.loading = false;
  59. if (!res) return;
  60. this.$message.success("修改成功!");
  61. },
  62. },
  63. };
  64. </script>