Commit 20f6d6de by liangzhen

后评估修改

1 parent 07f0ad44
...@@ -275,6 +275,11 @@ export function gdrectificationVerification(params) { ...@@ -275,6 +275,11 @@ export function gdrectificationVerification(params) {
export function downloadObject(params) { export function downloadObject(params) {
return download(`${ARCH_EVALUATION}/oss/downloadObject`, params) return download(`${ARCH_EVALUATION}/oss/downloadObject`, params)
} }
//下载归档
export function downloadObjectAll(params) {
return download(`${ARCH_EVALUATION}/oss/downloadObjectAll`, params)
}
//后评估集中检查 //后评估集中检查
//项目检查问题查询 //项目检查问题查询
......
...@@ -23,7 +23,7 @@ export const routes = [ ...@@ -23,7 +23,7 @@ export const routes = [
path: '/', path: '/',
name: 'main', name: 'main',
component: () => import('@/views/layout/index.vue'), component: () => import('@/views/layout/index.vue'),
redirect: defaultRouter(), redirect: '/layout/main',
children: [ children: [
{ {
path: '/mainLayout', path: '/mainLayout',
...@@ -31,6 +31,14 @@ export const routes = [ ...@@ -31,6 +31,14 @@ export const routes = [
redirect: defaultRouter(), redirect: defaultRouter(),
component: () => import('@/views/layout/mainLayout.vue'), component: () => import('@/views/layout/mainLayout.vue'),
children: [ children: [
{
path: '/layout/main',
name: 'main',
component: () => import('@/views/layout/main.vue'),
meta: {
title: "首页",
},
},
//后评估自查 //后评估自查
{ {
path: '/assesszc/auxiliarySelection', path: '/assesszc/auxiliarySelection',
......
...@@ -98,6 +98,9 @@ ...@@ -98,6 +98,9 @@
<el-button @click="detailsForm('ruleForm')"> <el-button @click="detailsForm('ruleForm')">
<img class="buttonIcon" src="../../assets/ck.png" />详情</el-button <img class="buttonIcon" src="../../assets/ck.png" />详情</el-button
> >
<el-button @click="downFiles()">
<i class="el-icon-download"></i> &nbsp;&nbsp;归档材料下载</el-button
>
</el-form-item> </el-form-item>
</el-form> </el-form>
<div class="setscroll"> <div class="setscroll">
...@@ -341,6 +344,7 @@ import { ...@@ -341,6 +344,7 @@ import {
selLcb, selLcb,
presignedUrl, presignedUrl,
downloadObject, downloadObject,
downloadObjectAll
} from "@/api/index"; } from "@/api/index";
import { generateYearOptions, projectCategoryText } from "@/utils/cache"; import { generateYearOptions, projectCategoryText } from "@/utils/cache";
export default { export default {
...@@ -611,14 +615,14 @@ export default { ...@@ -611,14 +615,14 @@ export default {
}, },
handleImageClick() {}, handleImageClick() {},
async handleClickXZ(scope) { async handleClickXZ(scope) {
console.log(scope.fileId);
let response = await downloadObject({ let response = await downloadObject({
fileId: scope.fileId * 1, fileId: scope.fileId * 1,
}); });
let blob = new Blob([response]); let blob = new Blob([response]);
if ("download" in document.createElement("a")) { if ("download" in document.createElement("a")) {
let elink = document.createElement("a"); let elink = document.createElement("a");
elink.download = scope.fileName; elink.download = fileName;
elink.style.display = "none"; elink.style.display = "none";
elink.href = URL.createObjectURL(blob); elink.href = URL.createObjectURL(blob);
document.body.appendChild(elink); document.body.appendChild(elink);
...@@ -627,6 +631,27 @@ export default { ...@@ -627,6 +631,27 @@ export default {
document.body.removeChild(elink); document.body.removeChild(elink);
} }
}, },
async downFiles(){
if (this.checkedList.length != 1) {
this.$message("请选择");
return;
}
if(this.checkedList[0].postEvalStateText!='已归档'){
this.$message("该项目还未归档,请重新选择");
return;
}
let response = await downloadObjectAll({
prjId:this.checkedList[0].projectId,
bathId: this.checkedList[0].batchId,
});
let blob = new Blob([response], { type: 'application/zip' })
let url = window.URL.createObjectURL(blob)
const link = document.createElement('a') // 创建a标签
link.href = url
link.download = '归档' // 重命名文件
link.click()
URL.revokeObjectURL(url) // 释放内存
}
}, },
}; };
</script> </script>
......
...@@ -103,13 +103,9 @@ ...@@ -103,13 +103,9 @@
<el-table-column prop="expertName" label="后评估专家" width="auto"> <el-table-column prop="expertName" label="后评估专家" width="auto">
</el-table-column> </el-table-column>
<!-- <el-table-column prop="expertId" label="专家编号" width="auto"> <!-- <el-table-column prop="id" label="专家编号" width="auto">
</el-table-column> --> </el-table-column> -->
<el-table-column <el-table-column prop="planReviewDate" label="计划评估日期" width="220">
prop="planReviewDate"
label="计划评估日期"
width="220"
>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="postEvalStateText" prop="postEvalStateText"
...@@ -208,42 +204,50 @@ ...@@ -208,42 +204,50 @@
<el-table-column label="序号" width="55" type="index"> <el-table-column label="序号" width="55" type="index">
</el-table-column> </el-table-column>
<el-table-column label="单位" width="auto" prop="compId"> <el-table-column label="单位" width="auto" prop="orgName">
</el-table-column> </el-table-column>
<el-table-column prop="fullName" label="专家姓名" width="auto"> <el-table-column prop="talentName" label="专家姓名" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="expertId" label="专家编号" width="auto"> <el-table-column prop="id" label="专家编号" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="gender" label="性别" width="auto"> <el-table-column prop="sex" label="性别" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.gender | filtergender scope.row.sex | filtergender
}}</template> }}</template>
</el-table-column> </el-table-column>
<el-table-column prop="birthday" label="出生日期" width="auto"> <el-table-column prop="birthDay" label="出生日期" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="qualification" label="学历" width="auto"> <el-table-column prop="education" label="学历" width="auto">
<template slot-scope="scope">{{
scope.row.education | filterexpert
}}</template>
</el-table-column> </el-table-column>
<el-table-column prop="contact" label="联系方式" width="auto"> <el-table-column prop="mobile" label="联系方式" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="email" label="邮箱" width="auto"> <el-table-column prop="email" label="邮箱" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="fields" label="专业领域" width="auto"> <el-table-column prop="expertfields" label="专业领域" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.fields | filtertfields scope.row.expertfields | filtertfields
}}</template> }}</template>
</el-table-column> </el-table-column>
<el-table-column prop="expertProfile" label="专家简介" width="auto" show-overflow-tooltip> <el-table-column
prop="remark"
label="专家简介"
width="auto"
show-overflow-tooltip
>
</el-table-column> </el-table-column>
<el-table-column prop="expertLevel" label="专家级别" width="auto"> <el-table-column prop="level" label="专家级别" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.expertLevel | filtertLevel scope.row.level | filtertLevel
}}</template> }}</template>
</el-table-column> </el-table-column>
<!-- <el-table-column prop="description" label="成果简介" width="auto"> <!-- <el-table-column prop="description" label="成果简介" width="auto">
</el-table-column> --> </el-table-column> -->
<el-table-column prop="expertState" label="专家状态" width="auto"> <el-table-column prop="status" label="专家状态" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.expertState | filtertState scope.row.status | filtertState
}}</template> }}</template>
</el-table-column> </el-table-column>
</el-table> </el-table>
...@@ -315,7 +319,6 @@ ...@@ -315,7 +319,6 @@
disabledDate: (time) => disabledDate: (time) =>
time.getTime() < new Date(new Date().setHours(0, 0, 0, 0)), time.getTime() < new Date(new Date().setHours(0, 0, 0, 0)),
}" }"
> >
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
...@@ -357,42 +360,50 @@ ...@@ -357,42 +360,50 @@
<el-table-column label="序号" width="55" type="index"> <el-table-column label="序号" width="55" type="index">
</el-table-column> </el-table-column>
<el-table-column label="单位" width="auto" prop="compId"> <el-table-column label="单位" width="auto" prop="orgName">
</el-table-column> </el-table-column>
<el-table-column prop="fullName" label="专家姓名" width="auto"> <el-table-column prop="talentName" label="专家姓名" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="expertId" label="专家编号" width="auto"> <el-table-column prop="id" label="专家编号" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="gender" label="性别" width="auto"> <el-table-column prop="sex" label="性别" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.gender | filtergender scope.row.sex | filtergender
}}</template> }}</template>
</el-table-column> </el-table-column>
<el-table-column prop="birthday" label="出生日期" width="auto"> <el-table-column prop="birthDay" label="出生日期" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="qualification" label="学历" width="auto"> <el-table-column prop="education" label="学历" width="auto">
<template slot-scope="scope">{{
scope.row.education | filterexpert
}}</template>
</el-table-column> </el-table-column>
<el-table-column prop="contact" label="联系方式" width="auto"> <el-table-column prop="mobile" label="联系方式" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="email" label="邮箱" width="auto"> <el-table-column prop="email" label="邮箱" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="fields" label="专业领域" width="auto"> <el-table-column prop="expertfields" label="专业领域" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.fields | filtertfields scope.row.expertFields | filtertfields
}}</template> }}</template>
</el-table-column> </el-table-column>
<el-table-column prop="expertProfile" label="专家简介" width="auto" show-overflow-tooltip> <el-table-column
prop="remark"
label="专家简介"
width="auto"
show-overflow-tooltip
>
</el-table-column> </el-table-column>
<el-table-column prop="expertLevel" label="专家级别" width="auto"> <el-table-column prop="level" label="专家级别" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.expertLevel | filtertLevel scope.row.level | filtertLevel
}}</template> }}</template>
</el-table-column> </el-table-column>
<!-- <el-table-column prop="description" label="成果简介" width="auto"> <!-- <el-table-column prop="description" label="成果简介" width="auto">
</el-table-column> --> </el-table-column> -->
<el-table-column prop="expertState" label="专家状态" width="auto"> <el-table-column prop="status" label="专家状态" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.expertState | filtertState scope.row.status | filtertState
}}</template> }}</template>
</el-table-column> </el-table-column>
</el-table> </el-table>
...@@ -424,24 +435,24 @@ ...@@ -424,24 +435,24 @@
:append-to-body="false" :append-to-body="false"
> >
<div class="adzjdialog"> <div class="adzjdialog">
<el-form :model="ruleFormZJ" label-width="100px" class="demo-ruleForm" > <el-form :model="ruleFormZJ" label-width="100px" class="demo-ruleForm">
<el-form-item label="专家姓名:" prop="fullName" class="fromItem"> <el-form-item label="专家姓名:" prop="talentName" class="fromItem">
<el-input <el-input
v-model="ruleFormZJ.fullName" v-model="ruleFormZJ.talentName"
placeholder="请输入" placeholder="请输入"
clearable clearable
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item label="专家编号:" prop="expertId" class="fromItem"> <el-form-item label="专家编号:" prop="id" class="fromItem">
<el-input <el-input
v-model="ruleFormZJ.expertId" v-model="ruleFormZJ.id"
placeholder="请输入" placeholder="请输入"
clearable clearable
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item label="专家级别:" prop="expertLevel" class="fromItem"> <el-form-item label="专家级别:" prop="level" class="fromItem">
<el-select <el-select
v-model="ruleFormZJ.expertLevel" v-model="ruleFormZJ.level"
placeholder="请选择" placeholder="请选择"
clearable clearable
> >
...@@ -450,9 +461,9 @@ ...@@ -450,9 +461,9 @@
<el-option label="中级" value="2"></el-option> <el-option label="中级" value="2"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<!-- <el-form-item label="专业领域:" prop="fields" class="fromItem"> <!-- <el-form-item label="专业领域:" prop="expertFields" class="fromItem">
<el-select <el-select
v-model="ruleFormZJ.fields" v-model="ruleFormZJ.expertFields"
placeholder="请选择" placeholder="请选择"
clearable clearable
> >
...@@ -462,9 +473,9 @@ ...@@ -462,9 +473,9 @@
<el-option label="2021年" value="2021"></el-option> <el-option label="2021年" value="2021"></el-option>
</el-select> </el-select>
</el-form-item> --> </el-form-item> -->
<!-- <el-form-item label="专家状态:" prop="expertState" class="fromItem"> <!-- <el-form-item label="专家状态:" prop="status" class="fromItem">
<el-select <el-select
v-model="ruleFormZJ.expertState" v-model="ruleFormZJ.status"
placeholder="请选择" placeholder="请选择"
clearable clearable
> >
...@@ -495,46 +506,54 @@ ...@@ -495,46 +506,54 @@
<!-- <template slot-scope="scope">{{ scope.row.id }}</template> --> <!-- <template slot-scope="scope">{{ scope.row.id }}</template> -->
</el-table-column> </el-table-column>
<!-- <el-table-column type="selection"> </el-table-column> --> <!-- <el-table-column type="selection"> </el-table-column> -->
<el-table-column label="单位" width="auto" prop="compId"> <el-table-column label="单位" width="auto" prop="orgName">
</el-table-column> </el-table-column>
<el-table-column prop="fullName" label="专家姓名" width="auto"> <el-table-column prop="talentName" label="专家姓名" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="expertId" label="专家编号" width="auto"> <el-table-column prop="id" label="专家编号" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="gender" label="性别" width="gender"> <el-table-column prop="sex" label="性别" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.gender | filtergender scope.row.sex | filtergender
}}</template> }}</template>
</el-table-column> </el-table-column>
<el-table-column prop="birthday" label="出生日期" width="auto"> <el-table-column prop="birthDay" label="出生日期" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="qualification" label="学历" width="auto"> <el-table-column prop="education" label="学历" width="auto">
<template slot-scope="scope">{{
scope.row.education | filterexpert
}}</template>
</el-table-column> </el-table-column>
<el-table-column prop="contact" label="联系方式" width="auto"> <el-table-column prop="mobile" label="联系方式" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="email" label="邮箱" width="auto"> <el-table-column prop="email" label="邮箱" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="fields" label="专业领域" width="auto"> <el-table-column prop="expertFields" label="专业领域" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.fields | filtertfields scope.row.expertFields | filtertfields
}}</template> }}</template>
</el-table-column> </el-table-column>
<el-table-column prop="expertProfile" label="专家简介" width="auto" show-overflow-tooltip> <el-table-column
prop="remark"
label="专家简介"
width="auto"
show-overflow-tooltip
>
</el-table-column> </el-table-column>
<el-table-column prop="expertLevel" label="专家级别" width="auto"> <el-table-column prop="level" label="专家级别" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.expertLevel | filtertLevel scope.row.level | filtertLevel
}}</template> }}</template>
</el-table-column> </el-table-column>
<!-- <el-table-column prop="description" label="成果简介" width="auto"> <!-- <el-table-column prop="description" label="成果简介" width="auto">
</el-table-column> --> </el-table-column> -->
<el-table-column prop="expertState" label="专家状态" width="auto"> <el-table-column prop="status" label="专家状态" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.expertState | filtertState scope.row.status | filtertState
}}</template> }}</template>
</el-table-column> </el-table-column>
<!-- <el-table-column <!-- <el-table-column
prop="expertId" prop="id"
label="id" label="id"
width="auto" width="auto"
v-show="false" v-show="false"
...@@ -647,42 +666,50 @@ ...@@ -647,42 +666,50 @@
<el-table-column label="序号" width="55" type="index"> <el-table-column label="序号" width="55" type="index">
</el-table-column> </el-table-column>
<el-table-column label="单位" width="auto" prop="compId"> <el-table-column label="单位" width="auto" prop="orgName">
</el-table-column> </el-table-column>
<el-table-column prop="fullName" label="专家姓名" width="auto"> <el-table-column prop="talentName" label="专家姓名" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="expertId" label="专家编号" width="auto"> <el-table-column prop="id" label="专家编号" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="gender" label="性别" width="auto"> <el-table-column prop="sex" label="性别" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.gender | filtergender scope.row.sex | filtergender
}}</template> }}</template>
</el-table-column> </el-table-column>
<el-table-column prop="birthday" label="出生日期" width="auto"> <el-table-column prop="birthDay" label="出生日期" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="qualification" label="学历" width="auto"> <el-table-column prop="education" label="学历" width="auto">
<template slot-scope="scope">{{
scope.row.seducation | filterexpert
}}</template>
</el-table-column> </el-table-column>
<el-table-column prop="contact" label="联系方式" width="auto"> <el-table-column prop="mobile" label="联系方式" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="email" label="邮箱" width="auto"> <el-table-column prop="email" label="邮箱" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="fields" label="专业领域" width="auto"> <el-table-column prop="expertFields" label="专业领域" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.fields | filtertfields scope.row.expertFields | filtertfields
}}</template> }}</template>
</el-table-column> </el-table-column>
<el-table-column prop="expertProfile" label="专家简介" width="auto" show-overflow-tooltip> <el-table-column
prop="remark"
label="专家简介"
width="auto"
show-overflow-tooltip
>
</el-table-column> </el-table-column>
<el-table-column prop="expertLevel" label="专家级别" width="auto"> <el-table-column prop="level" label="专家级别" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.expertLevel | filtertLevel scope.row.level | filtertLevel
}}</template> }}</template>
</el-table-column> </el-table-column>
<!-- <el-table-column prop="description" label="成果简介" width="auto"> <!-- <el-table-column prop="description" label="成果简介" width="auto">
</el-table-column> --> </el-table-column> -->
<el-table-column prop="expertState" label="专家状态" width="auto"> <el-table-column prop="status" label="专家状态" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.expertState | filtertState scope.row.status | filtertState
}}</template> }}</template>
</el-table-column> </el-table-column>
</el-table> </el-table>
...@@ -742,8 +769,8 @@ export default { ...@@ -742,8 +769,8 @@ export default {
fullName: "", fullName: "",
}, },
ruleFormZJ: { ruleFormZJ: {
fields: "", expertFields: "",
expertState: "", status: "",
fullName: "", fullName: "",
}, },
ruleFormdialogAdd: { ruleFormdialogAdd: {
...@@ -807,8 +834,8 @@ export default { ...@@ -807,8 +834,8 @@ export default {
expertIdList: [], expertIdList: [],
totalBJ: 0, totalBJ: 0,
addZJList: [], addZJList: [],
expertState: "", status: "",
fields: "", expertfields: "",
zjfullName: "", zjfullName: "",
zjtotal: 0, zjtotal: 0,
zjtableData: [], zjtableData: [],
...@@ -830,26 +857,36 @@ export default { ...@@ -830,26 +857,36 @@ export default {
}, },
filtertState(val) { filtertState(val) {
if (val == 1) { if (val == 1) {
return "在"; return "在";
} else { } else {
return "转岗"; return "出库";
} }
}, },
filtertLevel(val) { filtertLevel(val) {
if (val == 1) { if (val == 1) {
return "级"; return "级";
} else if (val == 2) { } else if (val == 2) {
return "中级"; return "中级";
} } else {
{ return "高级";
return "初级";
} }
}, },
filtertfields(val) { filtertfields(val) {
if (val == 1) { if (val == 1) {
return "信息技术"; return "设备";
} else if (val == 2) {
return "技术";
} else {
return "信息化";
}
},
filterexpert(val) {
if (val == 1) {
return "本科";
} else if (val == 2) {
return "硕士";
} else { } else {
return "科技研发"; return "博士";
} }
}, },
}, },
...@@ -869,7 +906,7 @@ export default { ...@@ -869,7 +906,7 @@ export default {
let params = { let params = {
current: this.currentPage, current: this.currentPage,
pageSize: this.pageSize, pageSize: this.pageSize,
module:0, module: 0,
}; };
Object.assign(params, this.ruleForm); Object.assign(params, this.ruleForm);
...@@ -909,7 +946,7 @@ export default { ...@@ -909,7 +946,7 @@ export default {
async add() { async add() {
this.dialogAdd = true; this.dialogAdd = true;
this.addtableData = []; //每次新增清空不然点了还是这几个人 this.addtableData = []; //每次新增清空不然点了还是这几个人
this.ruleFormdialogAdd={} this.ruleFormdialogAdd = {};
}, },
//详情 //详情
async detailsForm() { async detailsForm() {
...@@ -918,7 +955,9 @@ export default { ...@@ -918,7 +955,9 @@ export default {
return; return;
} }
this.dialogXQ = true; this.dialogXQ = true;
this.checkedList[0].planReviewDate=new Date(this.checkedList[0].planReviewDate) this.checkedList[0].planReviewDate = new Date(
this.checkedList[0].planReviewDate
);
this.ruleFormdialogBJ = this.checkedList[0]; this.ruleFormdialogBJ = this.checkedList[0];
let params = { let params = {
current: this.currentPageXQ, current: this.currentPageXQ,
...@@ -946,7 +985,6 @@ export default { ...@@ -946,7 +985,6 @@ export default {
} }
this.checkedList = this.$refs.multipleTable.selection; this.checkedList = this.$refs.multipleTable.selection;
this.ruleFormdialog = this.checkedList[0]; this.ruleFormdialog = this.checkedList[0];
}, },
handleSizeChange(val) { handleSizeChange(val) {
console.log(`每页 ${val} 条`); console.log(`每页 ${val} 条`);
...@@ -954,24 +992,19 @@ export default { ...@@ -954,24 +992,19 @@ export default {
this.submitForm(); this.submitForm();
}, },
handleCurrentChange(val) { handleCurrentChange(val) {
this.currentPage = val; this.currentPage = val;
this.submitForm(); this.submitForm();
}, },
handleSizeChangeZJ(val) { handleSizeChangeZJ(val) {
this.pageSizeZJ = val; this.pageSizeZJ = val;
}, },
handleCurrentChangeZJ(val) { handleCurrentChangeZJ(val) {
this.currentZJ = val; this.currentZJ = val;
}, },
handleSizeChangetjcl(val) { handleSizeChangetjcl(val) {
this.pageSizetjcl = val; this.pageSizetjcl = val;
}, },
handleCurrentChangetjcl(val) { handleCurrentChangetjcl(val) {
this.currentPagetjcl = val; this.currentPagetjcl = val;
}, },
handleSizeChangeAdd(val) { handleSizeChangeAdd(val) {
...@@ -981,23 +1014,19 @@ export default { ...@@ -981,23 +1014,19 @@ export default {
this.addcurrentPage = val; this.addcurrentPage = val;
}, },
handleSizeChangeBJ(val) { handleSizeChangeBJ(val) {
this.pageSizeBJ = val; this.pageSizeBJ = val;
this.edit(); this.edit();
}, },
handleCurrentChangeBJ(val) { handleCurrentChangeBJ(val) {
this.currentPageBJ = val; this.currentPageBJ = val;
this.edit(); this.edit();
}, },
//详情分页 //详情分页
handleSizeChangeXQ(val) { handleSizeChangeXQ(val) {
this.pageSizeXQ = val; this.pageSizeXQ = val;
this.detailsForm(); this.detailsForm();
}, },
handleCurrentChangeXQ(val) { handleCurrentChangeXQ(val) {
this.currentPageXQ = val; this.currentPageXQ = val;
this.detailsForm(); this.detailsForm();
}, },
...@@ -1019,8 +1048,7 @@ export default { ...@@ -1019,8 +1048,7 @@ export default {
} }
this.addtableData = [...this.addtableData, ...this.addZJList]; this.addtableData = [...this.addtableData, ...this.addZJList];
this.addtableData = this.addtableData.filter( this.addtableData = this.addtableData.filter(
(obj, index, self) => (obj, index, self) => index === self.findIndex((t) => t.id === obj.id)
index === self.findIndex((t) => t.expertId === obj.expertId)
); );
this.addtotal = this.addtableData.length; this.addtotal = this.addtableData.length;
...@@ -1033,8 +1061,8 @@ export default { ...@@ -1033,8 +1061,8 @@ export default {
this.dialogedit = false; this.dialogedit = false;
}, },
async xzExperts(type) { async xzExperts(type) {
if(!type){ if (!type) {
this.ruleFormZJ={} this.ruleFormZJ = {};
} }
this.dialogAddzj = true; this.dialogAddzj = true;
let params = { let params = {
...@@ -1046,7 +1074,6 @@ export default { ...@@ -1046,7 +1074,6 @@ export default {
let res = await expertInfo(params); let res = await expertInfo(params);
this.zjtableData = res.data.records; this.zjtableData = res.data.records;
this.zjtotal = res.data.total * 1; this.zjtotal = res.data.total * 1;
}, },
cancelBJ() { cancelBJ() {
...@@ -1066,14 +1093,14 @@ export default { ...@@ -1066,14 +1093,14 @@ export default {
let expertIdList = []; let expertIdList = [];
let expertStr = ""; let expertStr = "";
this.addtableData.forEach((item) => { this.addtableData.forEach((item) => {
expertIdList.push(item.expertId); expertIdList.push(item.id);
expertStr = JSON.stringify(expertIdList).slice(1, -1); expertStr = JSON.stringify(expertIdList).slice(1, -1);
}); });
let params = { let params = {
expertStr: expertStr, expertStr: expertStr,
creator: sessionStorage.getItem("author"), creator: sessionStorage.getItem("author"),
createTime: getCurrentDate(), createTime: getCurrentDate(),
module:0, module: 0,
}; };
Object.assign(params, this.ruleFormdialogAdd); Object.assign(params, this.ruleFormdialogAdd);
this.xfParams = JSON.parse(JSON.stringify(params)); this.xfParams = JSON.parse(JSON.stringify(params));
...@@ -1094,10 +1121,8 @@ export default { ...@@ -1094,10 +1121,8 @@ export default {
this.dialogAdd = false; this.dialogAdd = false;
}, },
saveBJ() { saveBJ() {
this.$refs.formNameBJ.validate((valid) => { this.$refs.formNameBJ.validate((valid) => {
if (!valid) { if (!valid) {
return false; return false;
} else { } else {
if (this.addtableData.length < 1) { if (this.addtableData.length < 1) {
...@@ -1107,7 +1132,7 @@ export default { ...@@ -1107,7 +1132,7 @@ export default {
let expertIdList = []; let expertIdList = [];
let expertStr = ""; let expertStr = "";
this.addtableData.forEach((item) => { this.addtableData.forEach((item) => {
expertIdList.push(item.expertId); expertIdList.push(item.id);
expertStr = JSON.stringify(expertIdList).slice(1, -1); expertStr = JSON.stringify(expertIdList).slice(1, -1);
}); });
...@@ -1126,7 +1151,6 @@ export default { ...@@ -1126,7 +1151,6 @@ export default {
//选中的专家 //选中的专家
handleSelectionChangeZJ() { handleSelectionChangeZJ() {
this.addZJList = this.$refs.multipleTableZJ.selection; this.addZJList = this.$refs.multipleTableZJ.selection;
}, },
//点击编辑 //点击编辑
async edit() { async edit() {
...@@ -1140,7 +1164,9 @@ export default { ...@@ -1140,7 +1164,9 @@ export default {
return; return;
} }
this.addtableData = []; this.addtableData = [];
this.checkedList[0].planReviewDate=new Date(this.checkedList[0].planReviewDate) this.checkedList[0].planReviewDate = new Date(
this.checkedList[0].planReviewDate
);
this.ruleFormdialogBJ = this.checkedList[0]; this.ruleFormdialogBJ = this.checkedList[0];
this.dialogedit = true; this.dialogedit = true;
let params = { let params = {
...@@ -1154,7 +1180,7 @@ export default { ...@@ -1154,7 +1180,7 @@ export default {
this.addtableData = res.data.records; this.addtableData = res.data.records;
this.totalBJ = res.data.total * 1; this.totalBJ = res.data.total * 1;
this.addtableData.forEach((item) => { this.addtableData.forEach((item) => {
this.expertIdList.push(item.expertId); this.expertIdList.push(item.id);
}); });
}, },
//点击删除 //点击删除
...@@ -1241,7 +1267,7 @@ export default { ...@@ -1241,7 +1267,7 @@ export default {
.then(async () => { .then(async () => {
let res = await chEvalBatchInfo(this.checkedList[0]); let res = await chEvalBatchInfo(this.checkedList[0]);
if (res.code == "200") { if (res.code == "200") {
this.$message('已撤回') this.$message("已撤回");
this.resetForm(); this.resetForm();
} }
}) })
...@@ -1497,5 +1523,4 @@ export default { ...@@ -1497,5 +1523,4 @@ export default {
overflow: auto; overflow: auto;
} }
} }
</style> </style>
\ No newline at end of file
...@@ -98,6 +98,9 @@ ...@@ -98,6 +98,9 @@
<el-button @click="detailsForm('ruleForm')"> <el-button @click="detailsForm('ruleForm')">
<img class="buttonIcon" src="../../assets/ck.png" />详情</el-button <img class="buttonIcon" src="../../assets/ck.png" />详情</el-button
> >
<el-button @click="downFiles()">
<i class="el-icon-download"></i> &nbsp;&nbsp;归档材料下载</el-button
>
</el-form-item> </el-form-item>
</el-form> </el-form>
<div class="setscroll"> <div class="setscroll">
...@@ -341,6 +344,7 @@ import { ...@@ -341,6 +344,7 @@ import {
selLcb, selLcb,
presignedUrl, presignedUrl,
downloadObject, downloadObject,
downloadObjectAll
} from "@/api/index"; } from "@/api/index";
import { generateYearOptions, projectCategoryText } from "@/utils/cache"; import { generateYearOptions, projectCategoryText } from "@/utils/cache";
export default { export default {
...@@ -401,10 +405,9 @@ export default { ...@@ -401,10 +405,9 @@ export default {
let params = { let params = {
current: this.currentPage, current: this.currentPage,
pageSize: this.pageSize, pageSize: this.pageSize,
module:1 module:1,
}; };
Object.assign(params, this.ruleForm); Object.assign(params, this.ruleForm);
console.log(params);
let res = await fzcxselect(params); let res = await fzcxselect(params);
if (res.code == "200") { if (res.code == "200") {
...@@ -517,7 +520,6 @@ export default { ...@@ -517,7 +520,6 @@ export default {
} }
}, },
async handleClick() { async handleClick() {
console.log(this.activeName, "this.activeName");
if (this.activeName == "second") { if (this.activeName == "second") {
let params = { let params = {
batchId: this.checkedList[0].batchId, batchId: this.checkedList[0].batchId,
...@@ -557,13 +559,13 @@ export default { ...@@ -557,13 +559,13 @@ export default {
// 有url拆分调接口换预览 // 有url拆分调接口换预览
if (urlStr) { if (urlStr) {
console.log(urlStr, "urlStr");
if (urlStr.includes(",")) { if (urlStr.includes(",")) {
arrUrl = item.url.split(","); arrUrl = item.url.split(",");
} else { } else {
arrUrl.push(urlStr); arrUrl.push(urlStr);
} }
console.log(arrUrl, "arrUrlarrUrl");
arrUrl.forEach(async (showUrl) => { arrUrl.forEach(async (showUrl) => {
let paramsUrl = { let paramsUrl = {
url: showUrl, url: showUrl,
...@@ -571,7 +573,7 @@ export default { ...@@ -571,7 +573,7 @@ export default {
let resUrl = await presignedUrl(paramsUrl); let resUrl = await presignedUrl(paramsUrl);
showUrlList.push(resUrl.msg); showUrlList.push(resUrl.msg);
}); });
console.log(showUrlList, "showUrlList");
this.$set(item, "images", showUrlList); this.$set(item, "images", showUrlList);
} }
...@@ -613,14 +615,14 @@ export default { ...@@ -613,14 +615,14 @@ export default {
}, },
handleImageClick() {}, handleImageClick() {},
async handleClickXZ(scope) { async handleClickXZ(scope) {
console.log(scope.fileId);
let response = await downloadObject({ let response = await downloadObject({
fileId: scope.fileId * 1, fileId: scope.fileId * 1,
}); });
let blob = new Blob([response]); let blob = new Blob([response]);
if ("download" in document.createElement("a")) { if ("download" in document.createElement("a")) {
let elink = document.createElement("a"); let elink = document.createElement("a");
elink.download = scope.fileName; elink.download = fileName;
elink.style.display = "none"; elink.style.display = "none";
elink.href = URL.createObjectURL(blob); elink.href = URL.createObjectURL(blob);
document.body.appendChild(elink); document.body.appendChild(elink);
...@@ -629,6 +631,27 @@ export default { ...@@ -629,6 +631,27 @@ export default {
document.body.removeChild(elink); document.body.removeChild(elink);
} }
}, },
async downFiles(){
if (this.checkedList.length != 1) {
this.$message("请选择");
return;
}
if(this.checkedList[0].postEvalStateText!='已归档'){
this.$message("该项目还未归档,请重新选择");
return;
}
let response = await downloadObjectAll({
prjId:this.checkedList[0].projectId,
bathId: this.checkedList[0].batchId,
});
let blob = new Blob([response], { type: 'application/zip' })
let url = window.URL.createObjectURL(blob)
const link = document.createElement('a') // 创建a标签
link.href = url
link.download = '归档' // 重命名文件
link.click()
URL.revokeObjectURL(url) // 释放内存
}
}, },
}; };
</script> </script>
...@@ -643,7 +666,7 @@ export default { ...@@ -643,7 +666,7 @@ export default {
} }
.el-form { .el-form {
display: flex; display: flex;
width: 100%; width: 99%;
flex-wrap: wrap; flex-wrap: wrap;
border-top: 2px solid #23c6c8; border-top: 2px solid #23c6c8;
border-left: 1px solid #dee5e7; border-left: 1px solid #dee5e7;
......
...@@ -103,13 +103,9 @@ ...@@ -103,13 +103,9 @@
<el-table-column prop="expertName" label="后评估专家" width="auto"> <el-table-column prop="expertName" label="后评估专家" width="auto">
</el-table-column> </el-table-column>
<!-- <el-table-column prop="expertId" label="专家编号" width="auto"> <!-- <el-table-column prop="id" label="专家编号" width="auto">
</el-table-column> --> </el-table-column> -->
<el-table-column <el-table-column prop="planReviewDate" label="计划评估日期" width="220">
prop="planReviewDate"
label="计划评估日期"
width="220"
>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="postEvalStateText" prop="postEvalStateText"
...@@ -166,10 +162,18 @@ ...@@ -166,10 +162,18 @@
prop="planReviewDate" prop="planReviewDate"
class="fromItem" class="fromItem"
> >
<el-input <el-date-picker
v-model="ruleFormdialogBJ.planReviewDate"
disabled disabled
></el-input> v-model="ruleFormdialogBJ.planReviewDate"
type="datetime"
placeholder="选择日期"
value-format="yyyy-MM-dd HH:mm:ss"
:picker-options="{
disabledDate: (time) =>
time.getTime() < new Date(new Date().setHours(0, 0, 0, 0)),
}"
>
</el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="工作组织情况:" class="textarea"> <el-form-item label="工作组织情况:" class="textarea">
<el-input <el-input
...@@ -200,42 +204,50 @@ ...@@ -200,42 +204,50 @@
<el-table-column label="序号" width="55" type="index"> <el-table-column label="序号" width="55" type="index">
</el-table-column> </el-table-column>
<el-table-column label="单位" width="auto" prop="compId"> <el-table-column label="单位" width="auto" prop="orgName">
</el-table-column> </el-table-column>
<el-table-column prop="fullName" label="专家姓名" width="auto"> <el-table-column prop="talentName" label="专家姓名" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="expertId" label="专家编号" width="auto"> <el-table-column prop="id" label="专家编号" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="gender" label="性别" width="auto"> <el-table-column prop="sex" label="性别" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.gender | filtergender scope.row.sex | filtergender
}}</template> }}</template>
</el-table-column> </el-table-column>
<el-table-column prop="birthday" label="出生日期" width="auto"> <el-table-column prop="birthDay" label="出生日期" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="qualification" label="学历" width="auto"> <el-table-column prop="education" label="学历" width="auto">
<template slot-scope="scope">{{
scope.row.education | filterexpert
}}</template>
</el-table-column> </el-table-column>
<el-table-column prop="contact" label="联系方式" width="auto"> <el-table-column prop="mobile" label="联系方式" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="email" label="邮箱" width="auto"> <el-table-column prop="email" label="邮箱" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="fields" label="专业领域" width="auto"> <el-table-column prop="expertfields" label="专业领域" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.fields | filtertfields scope.row.expertfields | filtertfields
}}</template> }}</template>
</el-table-column> </el-table-column>
<el-table-column prop="expertProfile" label="专家简介" width="auto" show-overflow-tooltip> <el-table-column
prop="remark"
label="专家简介"
width="auto"
show-overflow-tooltip
>
</el-table-column> </el-table-column>
<el-table-column prop="expertLevel" label="专家级别" width="auto"> <el-table-column prop="level" label="专家级别" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.expertLevel | filtertLevel scope.row.level | filtertLevel
}}</template> }}</template>
</el-table-column> </el-table-column>
<!-- <el-table-column prop="description" label="成果简介" width="auto"> <!-- <el-table-column prop="description" label="成果简介" width="auto">
</el-table-column> --> </el-table-column> -->
<el-table-column prop="expertState" label="专家状态" width="auto"> <el-table-column prop="status" label="专家状态" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.expertState | filtertState scope.row.status | filtertState
}}</template> }}</template>
</el-table-column> </el-table-column>
</el-table> </el-table>
...@@ -307,7 +319,6 @@ ...@@ -307,7 +319,6 @@
disabledDate: (time) => disabledDate: (time) =>
time.getTime() < new Date(new Date().setHours(0, 0, 0, 0)), time.getTime() < new Date(new Date().setHours(0, 0, 0, 0)),
}" }"
> >
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
...@@ -349,42 +360,50 @@ ...@@ -349,42 +360,50 @@
<el-table-column label="序号" width="55" type="index"> <el-table-column label="序号" width="55" type="index">
</el-table-column> </el-table-column>
<el-table-column label="单位" width="auto" prop="compId"> <el-table-column label="单位" width="auto" prop="orgName">
</el-table-column> </el-table-column>
<el-table-column prop="fullName" label="专家姓名" width="auto"> <el-table-column prop="talentName" label="专家姓名" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="expertId" label="专家编号" width="auto"> <el-table-column prop="id" label="专家编号" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="gender" label="性别" width="auto"> <el-table-column prop="sex" label="性别" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.gender | filtergender scope.row.sex | filtergender
}}</template> }}</template>
</el-table-column> </el-table-column>
<el-table-column prop="birthday" label="出生日期" width="auto"> <el-table-column prop="birthDay" label="出生日期" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="qualification" label="学历" width="auto"> <el-table-column prop="education" label="学历" width="auto">
<template slot-scope="scope">{{
scope.row.education | filterexpert
}}</template>
</el-table-column> </el-table-column>
<el-table-column prop="contact" label="联系方式" width="auto"> <el-table-column prop="mobile" label="联系方式" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="email" label="邮箱" width="auto"> <el-table-column prop="email" label="邮箱" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="fields" label="专业领域" width="auto"> <el-table-column prop="expertfields" label="专业领域" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.fields | filtertfields scope.row.expertFields | filtertfields
}}</template> }}</template>
</el-table-column> </el-table-column>
<el-table-column prop="expertProfile" label="专家简介" width="auto" show-overflow-tooltip> <el-table-column
prop="remark"
label="专家简介"
width="auto"
show-overflow-tooltip
>
</el-table-column> </el-table-column>
<el-table-column prop="expertLevel" label="专家级别" width="auto"> <el-table-column prop="level" label="专家级别" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.expertLevel | filtertLevel scope.row.level | filtertLevel
}}</template> }}</template>
</el-table-column> </el-table-column>
<!-- <el-table-column prop="description" label="成果简介" width="auto"> <!-- <el-table-column prop="description" label="成果简介" width="auto">
</el-table-column> --> </el-table-column> -->
<el-table-column prop="expertState" label="专家状态" width="auto"> <el-table-column prop="status" label="专家状态" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.expertState | filtertState scope.row.status | filtertState
}}</template> }}</template>
</el-table-column> </el-table-column>
</el-table> </el-table>
...@@ -416,24 +435,24 @@ ...@@ -416,24 +435,24 @@
:append-to-body="false" :append-to-body="false"
> >
<div class="adzjdialog"> <div class="adzjdialog">
<el-form :model="ruleFormZJ" label-width="100px" class="demo-ruleForm" > <el-form :model="ruleFormZJ" label-width="100px" class="demo-ruleForm">
<el-form-item label="专家姓名:" prop="fullName" class="fromItem"> <el-form-item label="专家姓名:" prop="talentName" class="fromItem">
<el-input <el-input
v-model="ruleFormZJ.fullName" v-model="ruleFormZJ.talentName"
placeholder="请输入" placeholder="请输入"
clearable clearable
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item label="专家编号:" prop="expertId" class="fromItem"> <el-form-item label="专家编号:" prop="id" class="fromItem">
<el-input <el-input
v-model="ruleFormZJ.expertId" v-model="ruleFormZJ.id"
placeholder="请输入" placeholder="请输入"
clearable clearable
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item label="专家级别:" prop="expertLevel" class="fromItem"> <el-form-item label="专家级别:" prop="level" class="fromItem">
<el-select <el-select
v-model="ruleFormZJ.expertLevel" v-model="ruleFormZJ.level"
placeholder="请选择" placeholder="请选择"
clearable clearable
> >
...@@ -442,9 +461,9 @@ ...@@ -442,9 +461,9 @@
<el-option label="中级" value="2"></el-option> <el-option label="中级" value="2"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<!-- <el-form-item label="专业领域:" prop="fields" class="fromItem"> <!-- <el-form-item label="专业领域:" prop="expertFields" class="fromItem">
<el-select <el-select
v-model="ruleFormZJ.fields" v-model="ruleFormZJ.expertFields"
placeholder="请选择" placeholder="请选择"
clearable clearable
> >
...@@ -454,9 +473,9 @@ ...@@ -454,9 +473,9 @@
<el-option label="2021年" value="2021"></el-option> <el-option label="2021年" value="2021"></el-option>
</el-select> </el-select>
</el-form-item> --> </el-form-item> -->
<!-- <el-form-item label="专家状态:" prop="expertState" class="fromItem"> <!-- <el-form-item label="专家状态:" prop="status" class="fromItem">
<el-select <el-select
v-model="ruleFormZJ.expertState" v-model="ruleFormZJ.status"
placeholder="请选择" placeholder="请选择"
clearable clearable
> >
...@@ -487,46 +506,54 @@ ...@@ -487,46 +506,54 @@
<!-- <template slot-scope="scope">{{ scope.row.id }}</template> --> <!-- <template slot-scope="scope">{{ scope.row.id }}</template> -->
</el-table-column> </el-table-column>
<!-- <el-table-column type="selection"> </el-table-column> --> <!-- <el-table-column type="selection"> </el-table-column> -->
<el-table-column label="单位" width="auto" prop="compId"> <el-table-column label="单位" width="auto" prop="orgName">
</el-table-column> </el-table-column>
<el-table-column prop="fullName" label="专家姓名" width="auto"> <el-table-column prop="talentName" label="专家姓名" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="expertId" label="专家编号" width="auto"> <el-table-column prop="id" label="专家编号" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="gender" label="性别" width="gender"> <el-table-column prop="sex" label="性别" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.gender | filtergender scope.row.sex | filtergender
}}</template> }}</template>
</el-table-column> </el-table-column>
<el-table-column prop="birthday" label="出生日期" width="auto"> <el-table-column prop="birthDay" label="出生日期" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="qualification" label="学历" width="auto"> <el-table-column prop="education" label="学历" width="auto">
<template slot-scope="scope">{{
scope.row.education | filterexpert
}}</template>
</el-table-column> </el-table-column>
<el-table-column prop="contact" label="联系方式" width="auto"> <el-table-column prop="mobile" label="联系方式" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="email" label="邮箱" width="auto"> <el-table-column prop="email" label="邮箱" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="fields" label="专业领域" width="auto"> <el-table-column prop="expertFields" label="专业领域" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.fields | filtertfields scope.row.expertFields | filtertfields
}}</template> }}</template>
</el-table-column> </el-table-column>
<el-table-column prop="expertProfile" label="专家简介" width="auto" show-overflow-tooltip> <el-table-column
prop="remark"
label="专家简介"
width="auto"
show-overflow-tooltip
>
</el-table-column> </el-table-column>
<el-table-column prop="expertLevel" label="专家级别" width="auto"> <el-table-column prop="level" label="专家级别" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.expertLevel | filtertLevel scope.row.level | filtertLevel
}}</template> }}</template>
</el-table-column> </el-table-column>
<!-- <el-table-column prop="description" label="成果简介" width="auto"> <!-- <el-table-column prop="description" label="成果简介" width="auto">
</el-table-column> --> </el-table-column> -->
<el-table-column prop="expertState" label="专家状态" width="auto"> <el-table-column prop="status" label="专家状态" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.expertState | filtertState scope.row.status | filtertState
}}</template> }}</template>
</el-table-column> </el-table-column>
<!-- <el-table-column <!-- <el-table-column
prop="expertId" prop="id"
label="id" label="id"
width="auto" width="auto"
v-show="false" v-show="false"
...@@ -639,42 +666,50 @@ ...@@ -639,42 +666,50 @@
<el-table-column label="序号" width="55" type="index"> <el-table-column label="序号" width="55" type="index">
</el-table-column> </el-table-column>
<el-table-column label="单位" width="auto" prop="compId"> <el-table-column label="单位" width="auto" prop="orgName">
</el-table-column> </el-table-column>
<el-table-column prop="fullName" label="专家姓名" width="auto"> <el-table-column prop="talentName" label="专家姓名" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="expertId" label="专家编号" width="auto"> <el-table-column prop="id" label="专家编号" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="gender" label="性别" width="auto"> <el-table-column prop="sex" label="性别" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.gender | filtergender scope.row.sex | filtergender
}}</template> }}</template>
</el-table-column> </el-table-column>
<el-table-column prop="birthday" label="出生日期" width="auto"> <el-table-column prop="birthDay" label="出生日期" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="qualification" label="学历" width="auto"> <el-table-column prop="education" label="学历" width="auto">
<template slot-scope="scope">{{
scope.row.seducation | filterexpert
}}</template>
</el-table-column> </el-table-column>
<el-table-column prop="contact" label="联系方式" width="auto"> <el-table-column prop="mobile" label="联系方式" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="email" label="邮箱" width="auto"> <el-table-column prop="email" label="邮箱" width="auto">
</el-table-column> </el-table-column>
<el-table-column prop="fields" label="专业领域" width="auto"> <el-table-column prop="expertFields" label="专业领域" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.fields | filtertfields scope.row.expertFields | filtertfields
}}</template> }}</template>
</el-table-column> </el-table-column>
<el-table-column prop="expertProfile" label="专家简介" width="auto" show-overflow-tooltip> <el-table-column
prop="remark"
label="专家简介"
width="auto"
show-overflow-tooltip
>
</el-table-column> </el-table-column>
<el-table-column prop="expertLevel" label="专家级别" width="auto"> <el-table-column prop="level" label="专家级别" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.expertLevel | filtertLevel scope.row.level | filtertLevel
}}</template> }}</template>
</el-table-column> </el-table-column>
<!-- <el-table-column prop="description" label="成果简介" width="auto"> <!-- <el-table-column prop="description" label="成果简介" width="auto">
</el-table-column> --> </el-table-column> -->
<el-table-column prop="expertState" label="专家状态" width="auto"> <el-table-column prop="status" label="专家状态" width="auto">
<template slot-scope="scope">{{ <template slot-scope="scope">{{
scope.row.expertState | filtertState scope.row.status | filtertState
}}</template> }}</template>
</el-table-column> </el-table-column>
</el-table> </el-table>
...@@ -734,8 +769,8 @@ export default { ...@@ -734,8 +769,8 @@ export default {
fullName: "", fullName: "",
}, },
ruleFormZJ: { ruleFormZJ: {
fields: "", expertFields: "",
expertState: "", status: "",
fullName: "", fullName: "",
}, },
ruleFormdialogAdd: { ruleFormdialogAdd: {
...@@ -799,8 +834,8 @@ export default { ...@@ -799,8 +834,8 @@ export default {
expertIdList: [], expertIdList: [],
totalBJ: 0, totalBJ: 0,
addZJList: [], addZJList: [],
expertState: "", status: "",
fields: "", expertfields: "",
zjfullName: "", zjfullName: "",
zjtotal: 0, zjtotal: 0,
zjtableData: [], zjtableData: [],
...@@ -822,33 +857,42 @@ export default { ...@@ -822,33 +857,42 @@ export default {
}, },
filtertState(val) { filtertState(val) {
if (val == 1) { if (val == 1) {
return "在"; return "在";
} else { } else {
return "转岗"; return "出库";
} }
}, },
filtertLevel(val) { filtertLevel(val) {
if (val == 1) { if (val == 1) {
return "级"; return "级";
} else if (val == 2) { } else if (val == 2) {
return "中级"; return "中级";
} } else {
{ return "高级";
return "初级";
} }
}, },
filtertfields(val) { filtertfields(val) {
if (val == 1) { if (val == 1) {
return "信息技术"; return "设备";
} else if (val == 2) {
return "技术";
} else {
return "信息化";
}
},
filterexpert(val) {
if (val == 1) {
return "本科";
} else if (val == 2) {
return "硕士";
} else { } else {
return "科技研发"; return "博士";
} }
}, },
}, },
methods: { methods: {
timeChange(time) { timeChange(time) {
console.log("tttttt", time);
if (time) { if (time) {
//给后端的参数 //给后端的参数
this.ruleForm.createStartTime = time[0]; this.ruleForm.createStartTime = time[0];
...@@ -862,11 +906,11 @@ export default { ...@@ -862,11 +906,11 @@ export default {
let params = { let params = {
current: this.currentPage, current: this.currentPage,
pageSize: this.pageSize, pageSize: this.pageSize,
module:1 module: 1,
}; };
console.log(this.ruleForm, " this.ruleForm");
Object.assign(params, this.ruleForm); Object.assign(params, this.ruleForm);
console.log(params);
let res = await evalBatchInfo(params); let res = await evalBatchInfo(params);
if (res.code == "200") { if (res.code == "200") {
...@@ -902,6 +946,7 @@ export default { ...@@ -902,6 +946,7 @@ export default {
async add() { async add() {
this.dialogAdd = true; this.dialogAdd = true;
this.addtableData = []; //每次新增清空不然点了还是这几个人 this.addtableData = []; //每次新增清空不然点了还是这几个人
this.ruleFormdialogAdd = {};
}, },
//详情 //详情
async detailsForm() { async detailsForm() {
...@@ -909,9 +954,10 @@ export default { ...@@ -909,9 +954,10 @@ export default {
this.$message("请选择"); this.$message("请选择");
return; return;
} }
console.log("222", this.checkedList);
this.dialogXQ = true; this.dialogXQ = true;
this.checkedList[0].planReviewDate=new Date(this.checkedList[0].planReviewDate) this.checkedList[0].planReviewDate = new Date(
this.checkedList[0].planReviewDate
);
this.ruleFormdialogBJ = this.checkedList[0]; this.ruleFormdialogBJ = this.checkedList[0];
let params = { let params = {
current: this.currentPageXQ, current: this.currentPageXQ,
...@@ -939,7 +985,6 @@ export default { ...@@ -939,7 +985,6 @@ export default {
} }
this.checkedList = this.$refs.multipleTable.selection; this.checkedList = this.$refs.multipleTable.selection;
this.ruleFormdialog = this.checkedList[0]; this.ruleFormdialog = this.checkedList[0];
console.log(this.checkedList, "2222");
}, },
handleSizeChange(val) { handleSizeChange(val) {
console.log(`每页 ${val} 条`); console.log(`每页 ${val} 条`);
...@@ -947,24 +992,19 @@ export default { ...@@ -947,24 +992,19 @@ export default {
this.submitForm(); this.submitForm();
}, },
handleCurrentChange(val) { handleCurrentChange(val) {
console.log(`当前页: ${val}`);
this.currentPage = val; this.currentPage = val;
this.submitForm(); this.submitForm();
}, },
handleSizeChangeZJ(val) { handleSizeChangeZJ(val) {
console.log(`每页 ${val} 条`);
this.pageSizeZJ = val; this.pageSizeZJ = val;
}, },
handleCurrentChangeZJ(val) { handleCurrentChangeZJ(val) {
console.log(`当前页: ${val}`);
this.currentZJ = val; this.currentZJ = val;
}, },
handleSizeChangetjcl(val) { handleSizeChangetjcl(val) {
console.log(`每页 ${val} 条`);
this.pageSizetjcl = val; this.pageSizetjcl = val;
}, },
handleCurrentChangetjcl(val) { handleCurrentChangetjcl(val) {
console.log(`当前页: ${val}`);
this.currentPagetjcl = val; this.currentPagetjcl = val;
}, },
handleSizeChangeAdd(val) { handleSizeChangeAdd(val) {
...@@ -974,23 +1014,19 @@ export default { ...@@ -974,23 +1014,19 @@ export default {
this.addcurrentPage = val; this.addcurrentPage = val;
}, },
handleSizeChangeBJ(val) { handleSizeChangeBJ(val) {
console.log(`每页 ${val} 条`);
this.pageSizeBJ = val; this.pageSizeBJ = val;
this.edit(); this.edit();
}, },
handleCurrentChangeBJ(val) { handleCurrentChangeBJ(val) {
console.log(`当前页: ${val}`);
this.currentPageBJ = val; this.currentPageBJ = val;
this.edit(); this.edit();
}, },
//详情分页 //详情分页
handleSizeChangeXQ(val) { handleSizeChangeXQ(val) {
console.log(`每页 ${val} 条`);
this.pageSizeXQ = val; this.pageSizeXQ = val;
this.detailsForm(); this.detailsForm();
}, },
handleCurrentChangeXQ(val) { handleCurrentChangeXQ(val) {
console.log(`当前页: ${val}`);
this.currentPageXQ = val; this.currentPageXQ = val;
this.detailsForm(); this.detailsForm();
}, },
...@@ -1012,8 +1048,7 @@ export default { ...@@ -1012,8 +1048,7 @@ export default {
} }
this.addtableData = [...this.addtableData, ...this.addZJList]; this.addtableData = [...this.addtableData, ...this.addZJList];
this.addtableData = this.addtableData.filter( this.addtableData = this.addtableData.filter(
(obj, index, self) => (obj, index, self) => index === self.findIndex((t) => t.id === obj.id)
index === self.findIndex((t) => t.expertId === obj.expertId)
); );
this.addtotal = this.addtableData.length; this.addtotal = this.addtableData.length;
...@@ -1026,8 +1061,8 @@ export default { ...@@ -1026,8 +1061,8 @@ export default {
this.dialogedit = false; this.dialogedit = false;
}, },
async xzExperts(type) { async xzExperts(type) {
if(!type){ if (!type) {
this.ruleFormZJ={} this.ruleFormZJ = {};
} }
this.dialogAddzj = true; this.dialogAddzj = true;
let params = { let params = {
...@@ -1039,13 +1074,13 @@ export default { ...@@ -1039,13 +1074,13 @@ export default {
let res = await expertInfo(params); let res = await expertInfo(params);
this.zjtableData = res.data.records; this.zjtableData = res.data.records;
this.zjtotal = res.data.total * 1; this.zjtotal = res.data.total * 1;
console.log(res, "xxx");
}, },
cancelBJ() { cancelBJ() {
this.dialogedit = false; this.dialogedit = false;
}, },
saveXZ() { saveXZ() {
console.log("保存验证", this.$refs);
this.$refs.formName.validate((valid) => { this.$refs.formName.validate((valid) => {
if (!valid) { if (!valid) {
console.log("error submit!!"); console.log("error submit!!");
...@@ -1058,18 +1093,18 @@ export default { ...@@ -1058,18 +1093,18 @@ export default {
let expertIdList = []; let expertIdList = [];
let expertStr = ""; let expertStr = "";
this.addtableData.forEach((item) => { this.addtableData.forEach((item) => {
expertIdList.push(item.expertId); expertIdList.push(item.id);
expertStr = JSON.stringify(expertIdList).slice(1, -1); expertStr = JSON.stringify(expertIdList).slice(1, -1);
}); });
let params = { let params = {
expertStr: expertStr, expertStr: expertStr,
creator: sessionStorage.getItem("author"), creator: sessionStorage.getItem("author"),
createTime: getCurrentDate(), createTime: getCurrentDate(),
module:1 module: 1,
}; };
Object.assign(params, this.ruleFormdialogAdd); Object.assign(params, this.ruleFormdialogAdd);
this.xfParams = JSON.parse(JSON.stringify(params)); this.xfParams = JSON.parse(JSON.stringify(params));
console.log(params, "222");
adEvalBatchInfo(params).then((res) => { adEvalBatchInfo(params).then((res) => {
this.dialogAdd = false; this.dialogAdd = false;
this.expertIdList = expertIdList; this.expertIdList = expertIdList;
...@@ -1086,28 +1121,26 @@ export default { ...@@ -1086,28 +1121,26 @@ export default {
this.dialogAdd = false; this.dialogAdd = false;
}, },
saveBJ() { saveBJ() {
console.log("保存编辑验证", this.$refs.formNameBJ);
this.$refs.formNameBJ.validate((valid) => { this.$refs.formNameBJ.validate((valid) => {
if (!valid) { if (!valid) {
console.log("error submit!!");
return false; return false;
} else { } else {
if (this.addtableData.length < 1) { if (this.addtableData.length < 1) {
this.$message("请选择专家"); this.$message("请选择专家");
} }
console.log(this.addtableData, "addtableData");
let expertIdList = []; let expertIdList = [];
let expertStr = ""; let expertStr = "";
this.addtableData.forEach((item) => { this.addtableData.forEach((item) => {
expertIdList.push(item.expertId); expertIdList.push(item.id);
expertStr = JSON.stringify(expertIdList).slice(1, -1); expertStr = JSON.stringify(expertIdList).slice(1, -1);
}); });
console.log(expertStr, "expertStr");
let params = { let params = {
expertStr: expertStr, expertStr: expertStr,
}; };
Object.assign(this.ruleFormdialogBJ, params); Object.assign(this.ruleFormdialogBJ, params);
console.log(this.ruleFormdialogBJ, "222");
updEvalBatchInfo(this.ruleFormdialogBJ).then((res) => { updEvalBatchInfo(this.ruleFormdialogBJ).then((res) => {
this.dialogedit = false; this.dialogedit = false;
this.resetForm(); this.resetForm();
...@@ -1118,7 +1151,6 @@ export default { ...@@ -1118,7 +1151,6 @@ export default {
//选中的专家 //选中的专家
handleSelectionChangeZJ() { handleSelectionChangeZJ() {
this.addZJList = this.$refs.multipleTableZJ.selection; this.addZJList = this.$refs.multipleTableZJ.selection;
console.log(this.$refs.multipleTableZJ.selection, "2222");
}, },
//点击编辑 //点击编辑
async edit() { async edit() {
...@@ -1132,7 +1164,9 @@ export default { ...@@ -1132,7 +1164,9 @@ export default {
return; return;
} }
this.addtableData = []; this.addtableData = [];
this.checkedList[0].planReviewDate=new Date(this.checkedList[0].planReviewDate) this.checkedList[0].planReviewDate = new Date(
this.checkedList[0].planReviewDate
);
this.ruleFormdialogBJ = this.checkedList[0]; this.ruleFormdialogBJ = this.checkedList[0];
this.dialogedit = true; this.dialogedit = true;
let params = { let params = {
...@@ -1140,13 +1174,13 @@ export default { ...@@ -1140,13 +1174,13 @@ export default {
pageSize: this.pageSizeedit, pageSize: this.pageSizeedit,
batchId: this.checkedList[0].batchId, batchId: this.checkedList[0].batchId,
}; };
console.log(params, "params");
let res = await expert(params); let res = await expert(params);
this.addtableData = res.data.records; this.addtableData = res.data.records;
this.totalBJ = res.data.total * 1; this.totalBJ = res.data.total * 1;
this.addtableData.forEach((item) => { this.addtableData.forEach((item) => {
this.expertIdList.push(item.expertId); this.expertIdList.push(item.id);
}); });
}, },
//点击删除 //点击删除
...@@ -1233,7 +1267,7 @@ export default { ...@@ -1233,7 +1267,7 @@ export default {
.then(async () => { .then(async () => {
let res = await chEvalBatchInfo(this.checkedList[0]); let res = await chEvalBatchInfo(this.checkedList[0]);
if (res.code == "200") { if (res.code == "200") {
this.$message('已撤回') this.$message("已撤回");
this.resetForm(); this.resetForm();
} }
}) })
...@@ -1489,5 +1523,4 @@ export default { ...@@ -1489,5 +1523,4 @@ export default {
overflow: auto; overflow: auto;
} }
} }
</style> </style>
\ No newline at end of file
<template>
<div class="main">
<h2>后评估工作流程图</h2>
<div class="mainpng">
<img src="../../assets/main.png" alt="">
</div>
</div>
</template>
<script>
export default {
}
</script>
<style>
.main {
font-size: 14px;
position: relative;
height: 100%;
width: 100%;
box-sizing: border-box;
overflow-x: hidden;
}
h2{
margin-top: 60px;
}
.mainpng{
margin-top: 50px;
width: 100%;
img{
width: 100%;
}
}
</style>
\ No newline at end of file
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!