From 58da0d8c7bc4d711b2382ecdc1f56d7bbc03d3bd Mon Sep 17 00:00:00 2001 From: xy <271556543@qq.com> Date: Fri, 24 Feb 2023 14:36:31 +0800 Subject: [PATCH] 2023-2-24 --- .../recruitment/component/addRecruit.vue | 29 ++- .../component/importRecruitInfo.vue | 38 +++- src/views/recruitment/recruit.vue | 166 +++++++++--------- src/views/yearScore/yearScore.vue | 12 +- 4 files changed, 157 insertions(+), 88 deletions(-) diff --git a/src/views/recruitment/component/addRecruit.vue b/src/views/recruitment/component/addRecruit.vue index 9e4bc5f..6781e98 100644 --- a/src/views/recruitment/component/addRecruit.vue +++ b/src/views/recruitment/component/addRecruit.vue @@ -62,6 +62,32 @@ export default { props={{ model: this.originalForm }} rules={this.originalRules} > + + + { + this.getTemplate() + } + } + } + > + {this.templateItems.map((item) => { + return ( + + ); + })} + + + { @@ -294,7 +321,7 @@ export default { watch: { async isShow(newVal) { if (newVal) { - await this.getTemplate(); + //await this.getTemplate(); } }, }, diff --git a/src/views/recruitment/component/importRecruitInfo.vue b/src/views/recruitment/component/importRecruitInfo.vue index 59ce246..877e020 100644 --- a/src/views/recruitment/component/importRecruitInfo.vue +++ b/src/views/recruitment/component/importRecruitInfo.vue @@ -9,10 +9,36 @@ @on-ok="submit" > + + *导入模板 + + + + + + + + *年份 import { getToken } from "@/utils/auth"; -import { show as templateShow } from "@/api/unifiedRecruitment/template"; import { imports } from "@/api/unifiedRecruitment/recruit"; import { index as filedIndex } from "@/api/unifiedRecruitment/templateFiled"; export default { @@ -119,6 +145,7 @@ export default { default: false, }, province_ids: Array, + templates:Array, }, data() { return { @@ -166,6 +193,15 @@ export default { methods: { getToken, + beforeUploadHandle(file){ + if(!this.select.template_item_id){ + this.$message({ + type:'warning', + message:"请先选择导入模板" + }) + return false + } + }, successHandle(response, file, fileList) { this.list = response ?? []; }, diff --git a/src/views/recruitment/recruit.vue b/src/views/recruitment/recruit.vue index 8a7428b..f89a70a 100644 --- a/src/views/recruitment/recruit.vue +++ b/src/views/recruitment/recruit.vue @@ -11,39 +11,42 @@ - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - 下载模板 - - - - - - - - - - - - - + + + + + + + + 下载模板 + + + {{ item.name }} + + @@ -144,20 +145,21 @@ - - 当前选择导入的模板为:{{ getTemplateItemName() }} - - 确 定 - - + + + + + + + + + + @@ -193,12 +195,10 @@ export default { isShowAdd: false, provinces: [], select: { - year: `${new Date().getFullYear()}`, keyword: "", page: 1, page_size: 10, template_id: "", - template_item_id: "", sort_name:"", sort_type:"" }, @@ -260,25 +260,22 @@ export default { this.getList() }, - getTemplateItemName(){ - return this.$refs['templateSelect']?.selected?.label + async getTemplateItems(){ + const res = await templateItemIndex({ + template_id:this.select.template_id, + page_size:999, + page:1 + }) + this.templateItems = res.data }, + async getTemplateItemDetail() { - if (!this.select.template_item_id) { - this.$message({ - type: "warning", - message: "当前年份无模板内容", - }); - return; - } - const res = await filedIndex({ - template_item_id:this.select.template_item_id, - template_id:this.select.template_id, - page:1, - page_size:999 - }); + const res = await templateShow({ + id:this.select.template_id + }) + let temp = - res?.data?.map((item) => { + res?.fileds?.map((item) => { return { prop: item.en, label: item.name, @@ -318,13 +315,11 @@ export default { async getTemplate() { const res = await templateIndex({ type: Number(this.$route.meta.params.type), - year: this.select.year, page: 1, page_size: 999, }); this.templates = res.data; this.select.template_id = this.templates[0]?.id; - this.select.template_item_id = this.templates[0]?.items[0]?.id; // const res = await templateShow( // { // year: this.select.year, @@ -350,11 +345,11 @@ export default { await this.getList(); }, - downTemplate() { + downTemplate(command) { exports({ year: this.select.year, template_item_id: this.select.template_item_id, - },`${ this.getTemplateItemName() }模板.xlsx`); + },`${command}模板.xlsx`); }, }, computed: { @@ -366,6 +361,7 @@ export default { async created() { await this.getTemplate(); await this.getTemplateItemDetail(); + await this.getTemplateItems(); await this.getProvinces(); await this.getList(); } diff --git a/src/views/yearScore/yearScore.vue b/src/views/yearScore/yearScore.vue index 6cb4cf2..0eb4d8c 100644 --- a/src/views/yearScore/yearScore.vue +++ b/src/views/yearScore/yearScore.vue @@ -130,13 +130,23 @@ export default { align: "left", customFn: (row) => { return ( - + {row.province_ids.map((val) => { return ( { this.showImport(row, Number(val.province_id));