|
@@ -1,83 +1,84 @@
|
|
<template>
|
|
<template>
|
|
- <el-dialog
|
|
|
|
- class="modify-card-rule"
|
|
|
|
- :visible.sync="modalIsShow"
|
|
|
|
- :title="title"
|
|
|
|
- top="10px"
|
|
|
|
- width="950px"
|
|
|
|
- :close-on-click-modal="false"
|
|
|
|
- :close-on-press-escape="false"
|
|
|
|
- append-to-body
|
|
|
|
- @open="visibleChange"
|
|
|
|
- >
|
|
|
|
- <el-form
|
|
|
|
- ref="modalFormComp"
|
|
|
|
- label-width="130px"
|
|
|
|
- :rules="rules"
|
|
|
|
- :model="modalForm"
|
|
|
|
|
|
+ <div>
|
|
|
|
+ <el-dialog
|
|
|
|
+ class="modify-card-rule"
|
|
|
|
+ :visible.sync="modalIsShow"
|
|
|
|
+ :title="title"
|
|
|
|
+ top="10px"
|
|
|
|
+ width="950px"
|
|
|
|
+ :close-on-click-modal="false"
|
|
|
|
+ :close-on-press-escape="false"
|
|
|
|
+ append-to-body
|
|
|
|
+ @open="visibleChange"
|
|
>
|
|
>
|
|
- <el-form-item prop="name" label="题卡规则名称:">
|
|
|
|
- <el-input
|
|
|
|
- v-model.trim="modalForm.name"
|
|
|
|
- placeholder="建议不超过30个字,规则名称不允许重复"
|
|
|
|
- style="width: 100%"
|
|
|
|
- clearable
|
|
|
|
- :disabled="!editable"
|
|
|
|
- ></el-input>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item prop="remark" label="备注:">
|
|
|
|
- <el-input
|
|
|
|
- v-model="modalForm.remark"
|
|
|
|
- type="textarea"
|
|
|
|
- resize="none"
|
|
|
|
- :rows="2"
|
|
|
|
- :maxlength="50"
|
|
|
|
- :disabled="!editable"
|
|
|
|
- clearable
|
|
|
|
- show-word-limit
|
|
|
|
- placeholder="建议不超过50个字"
|
|
|
|
- ></el-input>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item
|
|
|
|
- prop="examNumberStyle"
|
|
|
|
- label="考号版式:"
|
|
|
|
- class="inline-block"
|
|
|
|
|
|
+ <el-form
|
|
|
|
+ ref="modalFormComp"
|
|
|
|
+ label-width="130px"
|
|
|
|
+ :rules="rules"
|
|
|
|
+ :model="modalForm"
|
|
>
|
|
>
|
|
- <el-select
|
|
|
|
- v-model="modalForm.examNumberStyle"
|
|
|
|
- style="width: 142px"
|
|
|
|
- placeholder="请选择"
|
|
|
|
- :disabled="!editable"
|
|
|
|
- @change="numStyleChange"
|
|
|
|
|
|
+ <el-form-item prop="name" label="题卡规则名称:">
|
|
|
|
+ <el-input
|
|
|
|
+ v-model.trim="modalForm.name"
|
|
|
|
+ placeholder="建议不超过30个字,规则名称不允许重复"
|
|
|
|
+ style="width: 100%"
|
|
|
|
+ clearable
|
|
|
|
+ :disabled="!editable"
|
|
|
|
+ ></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item prop="remark" label="备注:">
|
|
|
|
+ <el-input
|
|
|
|
+ v-model="modalForm.remark"
|
|
|
|
+ type="textarea"
|
|
|
|
+ resize="none"
|
|
|
|
+ :rows="2"
|
|
|
|
+ :maxlength="50"
|
|
|
|
+ :disabled="!editable"
|
|
|
|
+ clearable
|
|
|
|
+ show-word-limit
|
|
|
|
+ placeholder="建议不超过50个字"
|
|
|
|
+ ></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item
|
|
|
|
+ prop="examNumberStyle"
|
|
|
|
+ label="考号版式:"
|
|
|
|
+ class="inline-block"
|
|
>
|
|
>
|
|
- <el-option
|
|
|
|
- v-for="(val, key) in EXAM_NUMBER_STYLE"
|
|
|
|
- :key="key"
|
|
|
|
- :value="key"
|
|
|
|
- :label="val"
|
|
|
|
- ></el-option>
|
|
|
|
- </el-select>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item
|
|
|
|
- prop="examNumberDigit"
|
|
|
|
- label="考号位数:"
|
|
|
|
- class="inline-block"
|
|
|
|
- >
|
|
|
|
- <el-input-number
|
|
|
|
- v-if="modalForm.examNumberStyle === 'FILL'"
|
|
|
|
- v-model="modalForm.examNumberDigit"
|
|
|
|
- :min="5"
|
|
|
|
- :max="15"
|
|
|
|
- :step="1"
|
|
|
|
- step-strictly
|
|
|
|
- :controls="false"
|
|
|
|
- style="width: 100px"
|
|
|
|
- ></el-input-number>
|
|
|
|
- <span v-else>
|
|
|
|
- {{ modalForm.examNumberDigit }}
|
|
|
|
- </span>
|
|
|
|
- </el-form-item>
|
|
|
|
- <!-- <el-form-item prop="paperType" label="AB卷版式:" class="inline-block">
|
|
|
|
|
|
+ <el-select
|
|
|
|
+ v-model="modalForm.examNumberStyle"
|
|
|
|
+ style="width: 142px"
|
|
|
|
+ placeholder="请选择"
|
|
|
|
+ :disabled="!editable"
|
|
|
|
+ @change="numStyleChange"
|
|
|
|
+ >
|
|
|
|
+ <el-option
|
|
|
|
+ v-for="(val, key) in EXAM_NUMBER_STYLE"
|
|
|
|
+ :key="key"
|
|
|
|
+ :value="key"
|
|
|
|
+ :label="val"
|
|
|
|
+ ></el-option>
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item
|
|
|
|
+ prop="examNumberDigit"
|
|
|
|
+ label="考号位数:"
|
|
|
|
+ class="inline-block"
|
|
|
|
+ >
|
|
|
|
+ <el-input-number
|
|
|
|
+ v-if="modalForm.examNumberStyle === 'FILL'"
|
|
|
|
+ v-model="modalForm.examNumberDigit"
|
|
|
|
+ :min="5"
|
|
|
|
+ :max="15"
|
|
|
|
+ :step="1"
|
|
|
|
+ step-strictly
|
|
|
|
+ :controls="false"
|
|
|
|
+ style="width: 100px"
|
|
|
|
+ ></el-input-number>
|
|
|
|
+ <span v-else>
|
|
|
|
+ {{ modalForm.examNumberDigit }}
|
|
|
|
+ </span>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <!-- <el-form-item prop="paperType" label="AB卷版式:" class="inline-block">
|
|
<el-select
|
|
<el-select
|
|
v-model="modalForm.paperType"
|
|
v-model="modalForm.paperType"
|
|
style="width: 142px"
|
|
style="width: 142px"
|
|
@@ -92,95 +93,114 @@
|
|
></el-option>
|
|
></el-option>
|
|
</el-select>
|
|
</el-select>
|
|
</el-form-item> -->
|
|
</el-form-item> -->
|
|
- <el-form-item>
|
|
|
|
- <el-checkbox v-model="modalForm.examAbsent" :disabled="!editable"
|
|
|
|
- >启用“缺考填涂”</el-checkbox
|
|
|
|
- >
|
|
|
|
- <el-checkbox v-model="modalForm.discipline" :disabled="!editable"
|
|
|
|
- >启用“违纪填涂”</el-checkbox
|
|
|
|
- >
|
|
|
|
- <el-checkbox
|
|
|
|
- v-model="modalForm.writeSign"
|
|
|
|
- :disabled="modalForm.examNumberStyle === 'FILL' || !editable"
|
|
|
|
- >启用“手写签名”</el-checkbox
|
|
|
|
- >
|
|
|
|
- </el-form-item>
|
|
|
|
- <div class="part-box part-box-pad part-box-border">
|
|
|
|
- <h4 class="part-box-tips">题卡版头变量印刷字段配置:</h4>
|
|
|
|
- <el-form-item label="必选字段:" label-width="115px" required>
|
|
|
|
- <el-checkbox
|
|
|
|
- v-for="column in modalForm.requiredFields"
|
|
|
|
- :key="column.code"
|
|
|
|
- v-model="column.enable"
|
|
|
|
- disabled
|
|
|
|
- >{{ column.name }}</el-checkbox
|
|
|
|
|
|
+ <el-form-item>
|
|
|
|
+ <el-checkbox v-model="modalForm.examAbsent" :disabled="!editable"
|
|
|
|
+ >启用“缺考填涂”</el-checkbox
|
|
|
|
+ >
|
|
|
|
+ <el-checkbox v-model="modalForm.discipline" :disabled="!editable"
|
|
|
|
+ >启用“违纪填涂”</el-checkbox
|
|
>
|
|
>
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="扩展字段:" label-width="115px">
|
|
|
|
<el-checkbox
|
|
<el-checkbox
|
|
- v-for="column in modalForm.extendFields"
|
|
|
|
- :key="column.code"
|
|
|
|
- v-model="column.enable"
|
|
|
|
- :disabled="!editable"
|
|
|
|
- >{{ column.name }}</el-checkbox
|
|
|
|
|
|
+ v-model="modalForm.writeSign"
|
|
|
|
+ :disabled="modalForm.examNumberStyle === 'FILL' || !editable"
|
|
|
|
+ >启用“手写签名”</el-checkbox
|
|
|
|
+ >
|
|
|
|
+ <el-checkbox v-model="modalForm.undertakingEnable"
|
|
|
|
+ >启用考生承诺书</el-checkbox
|
|
|
|
+ >
|
|
|
|
+ <el-button
|
|
|
|
+ v-if="modalForm.undertakingEnable"
|
|
|
|
+ type="text"
|
|
|
|
+ class="btn-primary ml-2"
|
|
|
|
+ @click="toEditUndertaking"
|
|
|
|
+ >编辑</el-button
|
|
>
|
|
>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
- </div>
|
|
|
|
- <el-form-item prop="titleRule" label="题卡标题规则:">
|
|
|
|
- <!-- <el-input
|
|
|
|
|
|
+ <div class="part-box part-box-pad part-box-border">
|
|
|
|
+ <h4 class="part-box-tips">题卡版头变量印刷字段配置:</h4>
|
|
|
|
+ <el-form-item label="必选字段:" label-width="115px" required>
|
|
|
|
+ <el-checkbox
|
|
|
|
+ v-for="column in modalForm.requiredFields"
|
|
|
|
+ :key="column.code"
|
|
|
|
+ v-model="column.enable"
|
|
|
|
+ disabled
|
|
|
|
+ >{{ column.name }}</el-checkbox
|
|
|
|
+ >
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="扩展字段:" label-width="115px">
|
|
|
|
+ <el-checkbox
|
|
|
|
+ v-for="column in modalForm.extendFields"
|
|
|
|
+ :key="column.code"
|
|
|
|
+ v-model="column.enable"
|
|
|
|
+ :disabled="!editable"
|
|
|
|
+ >{{ column.name }}</el-checkbox
|
|
|
|
+ >
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </div>
|
|
|
|
+ <el-form-item prop="titleRule" label="题卡标题规则:">
|
|
|
|
+ <!-- <el-input
|
|
v-model="modalForm.titleRule"
|
|
v-model="modalForm.titleRule"
|
|
:disabled="!editable"
|
|
:disabled="!editable"
|
|
></el-input> -->
|
|
></el-input> -->
|
|
- <card-title-rule-edit
|
|
|
|
- v-model="modalForm.titleRule"
|
|
|
|
- :disabled="!editable"
|
|
|
|
- :field-sourses="fieldSourses"
|
|
|
|
- v-if="fieldSourses.length"
|
|
|
|
- ref="CardTitleRuleEdit"
|
|
|
|
- ></card-title-rule-edit>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item prop="attention" label="注意事项:">
|
|
|
|
- <el-input
|
|
|
|
- type="textarea"
|
|
|
|
- :rows="4"
|
|
|
|
- v-model="modalForm.attention"
|
|
|
|
- :disabled="!editable"
|
|
|
|
- ></el-input>
|
|
|
|
- <p class="tips-info">
|
|
|
|
- 提示:换行之后,题卡注意事项会展示为多条内容,内容序号会被自动添加。
|
|
|
|
- </p>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item prop="objectiveAttention" label="客观题注意事项:">
|
|
|
|
- <el-input
|
|
|
|
- v-model="modalForm.objectiveAttention"
|
|
|
|
- :disabled="!editable"
|
|
|
|
- ></el-input>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item prop="subjectiveAttention" label="主观题注意事项:">
|
|
|
|
- <el-input
|
|
|
|
- v-model="modalForm.subjectiveAttention"
|
|
|
|
- :disabled="!editable"
|
|
|
|
- ></el-input>
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-form>
|
|
|
|
|
|
+ <card-title-rule-edit
|
|
|
|
+ v-model="modalForm.titleRule"
|
|
|
|
+ :disabled="!editable"
|
|
|
|
+ :field-sourses="fieldSourses"
|
|
|
|
+ v-if="fieldSourses.length"
|
|
|
|
+ ref="CardTitleRuleEdit"
|
|
|
|
+ ></card-title-rule-edit>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item prop="attention" label="注意事项:">
|
|
|
|
+ <el-input
|
|
|
|
+ type="textarea"
|
|
|
|
+ :rows="4"
|
|
|
|
+ v-model="modalForm.attention"
|
|
|
|
+ :disabled="!editable"
|
|
|
|
+ ></el-input>
|
|
|
|
+ <p class="tips-info">
|
|
|
|
+ 提示:换行之后,题卡注意事项会展示为多条内容,内容序号会被自动添加。
|
|
|
|
+ </p>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item prop="objectiveAttention" label="客观题注意事项:">
|
|
|
|
+ <el-input
|
|
|
|
+ v-model="modalForm.objectiveAttention"
|
|
|
|
+ :disabled="!editable"
|
|
|
|
+ ></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item prop="subjectiveAttention" label="主观题注意事项:">
|
|
|
|
+ <el-input
|
|
|
|
+ v-model="modalForm.subjectiveAttention"
|
|
|
|
+ :disabled="!editable"
|
|
|
|
+ ></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-form>
|
|
|
|
|
|
- <div slot="footer">
|
|
|
|
- <el-button
|
|
|
|
- v-if="editable"
|
|
|
|
- type="primary"
|
|
|
|
- :disabled="isSubmit"
|
|
|
|
- @click="submit"
|
|
|
|
- >确认</el-button
|
|
|
|
- >
|
|
|
|
- <el-button @click="cancel">取消</el-button>
|
|
|
|
- </div>
|
|
|
|
- </el-dialog>
|
|
|
|
|
|
+ <div slot="footer">
|
|
|
|
+ <el-button
|
|
|
|
+ v-if="editable"
|
|
|
|
+ type="primary"
|
|
|
|
+ :disabled="isSubmit"
|
|
|
|
+ @click="submit"
|
|
|
|
+ >确认</el-button
|
|
|
|
+ >
|
|
|
|
+ <el-button @click="cancel">取消</el-button>
|
|
|
|
+ </div>
|
|
|
|
+ </el-dialog>
|
|
|
|
+
|
|
|
|
+ <!-- ModifyCardRuleUndertaking -->
|
|
|
|
+ <modify-card-rule-undertaking
|
|
|
|
+ ref="ModifyCardRuleUndertaking"
|
|
|
|
+ v-model="modalForm.undertakingBody"
|
|
|
|
+ ></modify-card-rule-undertaking>
|
|
|
|
+ </div>
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script>
|
|
<script>
|
|
import { EXAM_NUMBER_STYLE, PAPER_TYPE } from "@/constants/enumerate";
|
|
import { EXAM_NUMBER_STYLE, PAPER_TYPE } from "@/constants/enumerate";
|
|
import { saveCardRule } from "../api";
|
|
import { saveCardRule } from "../api";
|
|
import CardTitleRuleEdit from "./CardTitleRuleEdit";
|
|
import CardTitleRuleEdit from "./CardTitleRuleEdit";
|
|
|
|
+import ModifyCardRuleUndertaking from "./ModifyCardRuleUndertaking.vue";
|
|
|
|
+import { UNDERTAKING_BODY } from "../../../../card/enumerate";
|
|
|
|
|
|
const initModalForm = {
|
|
const initModalForm = {
|
|
id: null,
|
|
id: null,
|
|
@@ -192,6 +212,8 @@ const initModalForm = {
|
|
examAbsent: true,
|
|
examAbsent: true,
|
|
discipline: true,
|
|
discipline: true,
|
|
writeSign: true,
|
|
writeSign: true,
|
|
|
|
+ undertakingEnable: false,
|
|
|
|
+ undertakingBody: UNDERTAKING_BODY,
|
|
requiredFields: [],
|
|
requiredFields: [],
|
|
extendFields: [],
|
|
extendFields: [],
|
|
titleRule: "",
|
|
titleRule: "",
|
|
@@ -202,7 +224,7 @@ const initModalForm = {
|
|
|
|
|
|
export default {
|
|
export default {
|
|
name: "modify-card-rule",
|
|
name: "modify-card-rule",
|
|
- components: { CardTitleRuleEdit },
|
|
|
|
|
|
+ components: { CardTitleRuleEdit, ModifyCardRuleUndertaking },
|
|
props: {
|
|
props: {
|
|
instance: {
|
|
instance: {
|
|
type: Object,
|
|
type: Object,
|
|
@@ -367,6 +389,9 @@ export default {
|
|
this.modalForm.examNumberDigit = 10;
|
|
this.modalForm.examNumberDigit = 10;
|
|
}
|
|
}
|
|
},
|
|
},
|
|
|
|
+ toEditUndertaking() {
|
|
|
|
+ this.$refs.ModifyCardRuleUndertaking.open();
|
|
|
|
+ },
|
|
async submit() {
|
|
async submit() {
|
|
const valid = await this.$refs.modalFormComp.validate().catch(() => {});
|
|
const valid = await this.$refs.modalFormComp.validate().catch(() => {});
|
|
if (!valid) return;
|
|
if (!valid) return;
|