lion 3 months ago
parent d1cb15c819
commit ba1d9b7d65

@ -39,6 +39,9 @@ const data = {
{ {
id:2, id:2,
value:"提前招生" value:"提前招生"
},{
id:3,
value:"校园网招聘"
} }
] ]
} }

@ -117,6 +117,7 @@ export default {
</el-form-item> </el-form-item>
</el-col> </el-col>
{Number(this.templateType) !== 3 ? (
<el-col span={12}> <el-col span={12}>
<el-form-item label="省份" prop="province_id"> <el-form-item label="省份" prop="province_id">
<el-select <el-select
@ -136,6 +137,7 @@ export default {
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
) : null}
<el-col span={12}> <el-col span={12}>
<el-form-item label="姓名" prop="name"> <el-form-item label="姓名" prop="name">
@ -157,6 +159,7 @@ export default {
</el-form-item> </el-form-item>
</el-col> </el-col>
{Number(this.templateType) !== 3 ? (
<el-col span={12}> <el-col span={12}>
<el-form-item label="考生号" prop="candidate_no"> <el-form-item label="考生号" prop="candidate_no">
<el-input <el-input
@ -166,6 +169,7 @@ export default {
></el-input> ></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
) : null}
<el-col span={12}> <el-col span={12}>
<el-form-item label="准考证号" prop="allow_no"> <el-form-item label="准考证号" prop="allow_no">
@ -176,6 +180,30 @@ export default {
></el-input> ></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
{Number(this.templateType) === 3 ? (
<el-col span={12}>
<el-form-item label="成绩" prop="score">
<el-input
clearable={true}
v-model={this.originalForm.score}
placeholder="请输入成绩"
></el-input>
</el-form-item>
</el-col>
) : null}
{Number(this.templateType) === 3 ? (
<el-col span={12}>
<el-form-item label="排名" prop="sort">
<el-input
clearable={true}
v-model={this.originalForm.sort}
placeholder="请输入排名"
></el-input>
</el-form-item>
</el-col>
) : null}
</el-form> </el-form>
<el-form <el-form
@ -262,17 +290,6 @@ export default {
templateItems: Array, templateItems: Array,
}, },
data() { data() {
let idcardValidate = (rule, value, callback) => {
let IDRe18 =
/^([1-6][1-9]|50)\d{4}(18|19|20)\d{2}((0[1-9])|10|11|12)(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/;
let IDre15 =
/^([1-6][1-9]|50)\d{4}\d{2}((0[1-9])|10|11|12)(([0-2][1-9])|10|20|30|31)\d{3}$/;
if (IDre15.test(value) || IDRe18.test(value)) {
callback();
} else {
callback(new Error("身份证格式错误"));
}
};
return { return {
id: "", id: "",
type: "", type: "",
@ -289,29 +306,25 @@ export default {
idcard: "", idcard: "",
candidate_no: "", candidate_no: "",
allow_no: "", allow_no: "",
score: "",
sort: "",
template_id: "", template_id: "",
template_item_id: "", template_item_id: "",
}, },
originalRules: {
year: [{ required: true, message: "请选择年份", trigger: "blur" }],
province_id: [
{ required: true, message: "请选择省份", trigger: "blur" },
],
name: [{ required: true, message: "请填写姓名", trigger: "blur" }],
idcard: [
{ required: true, message: "请填写身份证号", trigger: "blur" },
{ validator: idcardValidate, trigger: "blur" },
],
candidate_no: [
{ required: true, message: "请填写考生号", trigger: "blur" },
],
allow_no: [
{ required: true, message: "请填写准考证号", trigger: "blur" },
],
},
}; };
}, },
methods: { methods: {
idcardValidate(rule, value, callback) {
let IDRe18 =
/^([1-6][1-9]|50)\d{4}(18|19|20)\d{2}((0[1-9])|10|11|12)(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/;
let IDre15 =
/^([1-6][1-9]|50)\d{4}\d{2}((0[1-9])|10|11|12)(([0-2][1-9])|10|20|30|31)\d{3}$/;
if (IDre15.test(value) || IDRe18.test(value)) {
callback();
} else {
callback(new Error("身份证格式错误"));
}
},
async getDetail(type = 1) { async getDetail(type = 1) {
//type 1 id 2 yeartemplate_item_idnameidcard //type 1 id 2 yeartemplate_item_idnameidcard
let res = {} let res = {}
@ -371,6 +384,41 @@ export default {
}, },
}, },
computed: { computed: {
templateType() {
return this.$route.meta?.params?.type || this.$route.query?.type || "1";
},
originalRules() {
const type = Number(this.templateType);
const rules = {
year: [{ required: true, message: "请选择年份", trigger: "blur" }],
name: [{ required: true, message: "请填写姓名", trigger: "blur" }],
idcard: [
{ required: true, message: "请填写身份证号", trigger: "blur" },
{ validator: this.idcardValidate, trigger: "blur" },
],
allow_no: [
{ required: true, message: "请填写准考证号", trigger: "blur" },
],
};
if (type === 3) {
rules.score = [
{ required: true, message: "请填写成绩", trigger: "blur" },
];
rules.sort = [
{ required: true, message: "请填写排名", trigger: "blur" },
];
} else {
rules.province_id = [
{ required: true, message: "请选择省份", trigger: "blur" },
];
rules.candidate_no = [
{ required: true, message: "请填写考生号", trigger: "blur" },
];
}
return rules;
},
provincesFormat() { provincesFormat() {
return this.$route.meta.params.type == 2 return this.$route.meta.params.type == 2
? this.province_ids.filter((item) => item.name == "江苏") ? this.province_ids.filter((item) => item.name == "江苏")
@ -392,6 +440,8 @@ export default {
idcard: "", idcard: "",
candidate_no: "", candidate_no: "",
allow_no: "", allow_no: "",
score: "",
sort: "",
template_id: "", template_id: "",
template_item_id: "", template_item_id: "",
}; };

@ -47,7 +47,7 @@
></el-date-picker> ></el-date-picker>
</div> </div>
<div class="select__item"> <div class="select__item" v-if="Number(templateType) !== 3">
<span style="color: red">*</span><span>省份</span> <span style="color: red">*</span><span>省份</span>
<el-select <el-select
size="small" size="small"
@ -163,31 +163,6 @@ export default {
list: [], list: [],
table: [], table: [],
newTable: [], newTable: [],
originalTable: [
{
prop: "name",
label: "姓名",
width: 140,
},
{
prop: "idcard",
label: "身份证号",
width: 180,
sortable: true,
},
{
prop: "candidate_no",
label: "考生号",
minWidth: 180,
sortable: true,
},
{
prop: "allow_no",
label: "准考证号",
minWidth: 180,
sortable: true,
},
],
}; };
}, },
methods: { methods: {
@ -231,10 +206,18 @@ export default {
}, },
submit() { submit() {
if (!this.select.year || !this.select.province_id) { const type = Number(this.templateType);
if (!this.select.year) {
this.$message({
type: "warning",
message: "请先选择年份",
});
return;
}
if (type !== 3 && !this.select.province_id) {
this.$message({ this.$message({
type: "warning", type: "warning",
message: "请先选择年份或省份", message: "请先选择省份",
}); });
return; return;
} }
@ -289,7 +272,73 @@ export default {
}) })
}, },
}, },
computed: {}, computed: {
templateType() {
return this.$route.meta?.params?.type || this.$route.query?.type || "1";
},
originalTable() {
const type = Number(this.templateType);
if (type === 3) {
return [
{
prop: "name",
label: "姓名",
width: 140,
},
{
prop: "idcard",
label: "身份证号",
width: 180,
sortable: true,
},
{
prop: "allow_no",
label: "准考证号",
minWidth: 180,
sortable: true,
},
{
prop: "score",
label: "成绩",
minWidth: 120,
sortable: true,
},
{
prop: "sort",
label: "排名",
minWidth: 120,
sortable: true,
},
];
} else {
return [
{
prop: "name",
label: "姓名",
width: 140,
},
{
prop: "idcard",
label: "身份证号",
width: 180,
sortable: true,
},
{
prop: "candidate_no",
label: "考生号",
minWidth: 180,
sortable: true,
},
{
prop: "allow_no",
label: "准考证号",
minWidth: 180,
sortable: true,
},
];
}
},
},
watch: { watch: {
async isShow(val) { async isShow(val) {
if (val) { if (val) {

@ -94,12 +94,15 @@ export default {
type: Boolean, type: Boolean,
default: false, default: false,
}, },
templateType: {
type: String,
default: "1",
},
}, },
data() { data() {
return { return {
inputVisible: false, inputVisible: false,
inputValue: "", inputValue: "",
flag: ["年份", "姓名", "身份证号", "考生号", "准考证号"],
visiblePopover: false, visiblePopover: false,
popIndex: "", popIndex: "",
id: "", id: "",
@ -109,38 +112,6 @@ export default {
templateItems: [], templateItems: [],
templateTypeId: "", templateTypeId: "",
list: [], list: [],
originalList: [
{
name: "年份",
student_query: 1,
type: 2,
remark: "无",
},
{
name: "姓名",
student_query: 1,
type: 1,
remark: "无",
},
{
name: "身份证号",
student_query: 1,
type: 1,
remark: "无",
},
{
name: "考生号",
student_query: 1,
type: 1,
remark: "无",
},
{
name: "准考证号",
student_query: 1,
type: 1,
remark: "无",
},
],
table: [ table: [
{ {
label: "列名", label: "列名",
@ -436,7 +407,88 @@ export default {
submit() {}, submit() {},
}, },
computed: {}, computed: {
flag() {
return Number(this.templateType) === 3
? ["年份", "姓名", "身份证号", "准考证号", "成绩", "排名"]
: ["年份", "姓名", "身份证号", "考生号", "准考证号"];
},
originalList() {
if (Number(this.templateType) === 3) {
return [
{
name: "年份",
student_query: 1,
type: 2,
remark: "无",
},
{
name: "姓名",
student_query: 1,
type: 1,
remark: "无",
},
{
name: "身份证号",
student_query: 1,
type: 1,
remark: "无",
},
{
name: "准考证号",
student_query: 1,
type: 1,
remark: "无",
},
{
name: "成绩",
student_query: 1,
type: 1,
remark: "无",
},
{
name: "排名",
student_query: 1,
type: 1,
remark: "无",
},
];
} else {
return [
{
name: "年份",
student_query: 1,
type: 2,
remark: "无",
},
{
name: "姓名",
student_query: 1,
type: 1,
remark: "无",
},
{
name: "身份证号",
student_query: 1,
type: 1,
remark: "无",
},
{
name: "考生号",
student_query: 1,
type: 1,
remark: "无",
},
{
name: "准考证号",
student_query: 1,
type: 1,
remark: "无",
},
];
}
},
},
watch: { watch: {
async isShow(newVal) { async isShow(newVal) {
if (newVal) { if (newVal) {

@ -235,40 +235,6 @@ export default {
total: 0, total: 0,
list: [], list: [],
table: [], table: [],
originalTable: [
{
prop: "year",
label: "年份",
width: 100,
},
{
prop: "name",
label: "姓名",
width: 120,
},
{
prop: "province.name",
label: "省份",
width: 120,
},
{
prop: "idcard",
label: "身份证号",
width: 180,
},
{
prop: "candidate_no",
label: "考生号",
width: 180,
sortable: "custom",
},
{
prop: "allow_no",
label: "准考证号",
width: 180,
sortable: "custom",
},
],
}; };
}, },
methods: { methods: {
@ -400,6 +366,81 @@ export default {
}, },
}, },
computed: { computed: {
originalTable() {
const type = Number(this.$route.meta.params.type);
if (type === 3) {
return [
{
prop: "year",
label: "年份",
width: 100,
},
{
prop: "name",
label: "姓名",
width: 120,
},
{
prop: "idcard",
label: "身份证号",
width: 180,
},
{
prop: "allow_no",
label: "准考证号",
width: 180,
sortable: "custom",
},
{
prop: "score",
label: "成绩",
width: 120,
sortable: "custom",
},
{
prop: "sort",
label: "排名",
width: 120,
sortable: "custom",
},
];
} else {
return [
{
prop: "year",
label: "年份",
width: 100,
},
{
prop: "name",
label: "姓名",
width: 120,
},
{
prop: "province.name",
label: "省份",
width: 120,
},
{
prop: "idcard",
label: "身份证号",
width: 180,
},
{
prop: "candidate_no",
label: "考生号",
width: 180,
sortable: "custom",
},
{
prop: "allow_no",
label: "准考证号",
width: 180,
sortable: "custom",
},
];
}
},
getTitleName() { getTitleName() {
let map = getConst("type", "map"); let map = getConst("type", "map");
return map.get(Number(this.$route.meta.params.type)); return map.get(Number(this.$route.meta.params.type));

@ -83,7 +83,7 @@
@refresh="$refs['xyTable'].getTableData()" @refresh="$refs['xyTable'].getTableData()"
></addTemplate> ></addTemplate>
<setting ref="setting" :is-show.sync="isShowSetting" @refresh="$refs['xyTable'].getTableData()"></setting> <setting ref="setting" :is-show.sync="isShowSetting" :template-type="$route.meta.params.type" @refresh="$refs['xyTable'].getTableData()"></setting>
</div> </div>
</template> </template>

Loading…
Cancel
Save