Commit 5e692720 by liangzhen

自查菜单修改

1 parent 726796d1
......@@ -205,68 +205,68 @@ export function trendsRules(type) {
name: "后评估检查",
url: "",
children: [
// {
// name: "后评估自查",
// url: "",
// children: [
// {
// name: "自查评估批次发起",
// url: "/assesszc/auxiliarySelection",
// children: [],
// },
// {
// name: "自查批次确认发布",
// url: "/assesszc/confirmRelease",
// children: [],
// },
// {
// name: "自查材料自动获取",
// url: "/assesszc/materialAcquisition",
// children: [],
// },
// {
// name: "自查项目辅助检查",
// url: "/assesszc/auxiliaryInspection",
// children: [],
// },
// {
// name: "自查结果确认更改",
// url: "/assesszc/confirmChanges",
// children: [],
// },
{
name: "后评估自查",
url: "",
children: [
{
name: "自查评估批次发起",
url: "/assesszc/auxiliarySelection",
children: [],
},
{
name: "自查评估项目确认",
url: "/assesszc/confirmRelease",
children: [],
},
{
name: "自查评估材料获取",
url: "/assesszc/materialAcquisition",
children: [],
},
{
name: "自查项目辅助检查",
url: "/assesszc/auxiliaryInspection",
children: [],
},
{
name: "自查结果确认更改",
url: "/assesszc/confirmChanges",
children: [],
},
// // {
// // name: "自查问题下发",
// // url: "/assesszc/assitedDistribution",
// // children: [],
// // },
// {
// name: "自查问题反馈",
// url: "/assesszc/assistedFeedback",
// children: [],
// },
// {
// name: "自查申诉确认",
// url: "/assesszc/assistedConfirm",
// children: [],
// },
// {
// name: "自查问题整改",
// url: "/assesszc/assistedRect",
// children: [],
// },
// {
// name: "自查整改核验",
// url: "/assesszc/correctiveAssistanceVerification",
// children: [],
// },
// {
// name: "自查专家同步归档",
// url: "/assesszc/attachSynchronousArchiving",
// children: [],
// },
// ],
// },
// {
// name: "自查问题下发",
// url: "/assesszc/assitedDistribution",
// children: [],
// },
{
name: "自查问题反馈",
url: "/assesszc/assistedFeedback",
children: [],
},
{
name: "自查申诉确认",
url: "/assesszc/assistedConfirm",
children: [],
},
{
name: "自查问题整改",
url: "/assesszc/assistedRect",
children: [],
},
{
name: "自查整改核验",
url: "/assesszc/correctiveAssistanceVerification",
children: [],
},
{
name: "自查同步归档",
url: "/assesszc/attachSynchronousArchiving",
children: [],
},
],
},
{
name: "后评估互查",
url: "",
......@@ -344,7 +344,7 @@ export function trendsRules(type) {
url: "",
children: [
{
name: "项目辅助检查问题查询",
name: "项目检查问题查询",
url: "/mainLayout/projectCheckQuestionQuery",
children: [],
},
......@@ -441,7 +441,7 @@ export function defaultRouter() {
return "/mainLayout/materialAcquisition"
break;
case '99':
return "/mainLayout/auxiliarySelection"
return "/assesszc/auxiliarySelection"
break;
......
......@@ -10,10 +10,11 @@
<el-form-item label="批次年度:" prop="batchYear" class="fromItem">
<el-select v-model="ruleForm.batchYear" placeholder="请选择" clearable>
<el-option
v-for="(item, index) in yearsList"
:key="index"
:label="item+'年'"
:value="item"/>
v-for="(item, index) in yearsList"
:key="index"
:label="item + '年'"
:value="item"
/>
</el-select>
</el-form-item>
<el-form-item label="后评估批次名称:" prop="batchName" class="fromItem">
......@@ -23,17 +24,65 @@
clearable
></el-input>
</el-form-item>
<!-- <el-form-item label="后评估状态:" prop="postEvalState" class="fromItem">
<el-form-item label="后评估批次状态:" prop="batchState" class="fromItem">
<el-select v-model="ruleForm.batchState" placeholder="请选择" clearable>
<el-option label="执行中" value="3"></el-option>
<el-option label="已完成" value="5"></el-option>
</el-select>
</el-form-item>
<el-form-item label="项目编码:" prop="projectId" class="fromItem">
<el-input
v-model="ruleForm.projectId"
placeholder="请输入"
clearable
></el-input>
</el-form-item>
<el-form-item label="项目名称:" prop="projectName" class="fromItem">
<el-input
v-model="ruleForm.projectName"
placeholder="请输入"
clearable
></el-input>
</el-form-item>
<el-form-item label="项目年度:" prop="projectYear" class="fromItem">
<el-select
v-model="ruleForm.projectYear"
placeholder="请选择"
clearable
>
<el-option
v-for="(item, index) in yearsList"
:key="index"
:label="item + '年'"
:value="item"
/>
</el-select>
</el-form-item>
<el-form-item label="项目审核状态:" prop="reviewStatus" class="fromItem">
<el-select
v-model="ruleForm.reviewStatus"
placeholder="请选择"
clearable
>
<el-option label="无问题" value="0"></el-option>
<el-option label="需整改" value="1"></el-option>
<el-option label="已整改" value="2"></el-option>
</el-select>
</el-form-item>
<!-- <el-form-item label="申诉状态:" prop="appealStatus" class="fromItem">
<el-select
v-model="ruleForm.postEvalState"
v-model="ruleForm.appealStatus"
placeholder="请选择"
clearable
>
<el-option label="未下发" value="0"></el-option>
<el-option label="已下发" value="1"></el-option>
<el-option label="已撤回" value="2"></el-option>
<el-option label="未申诉" value="0"></el-option>
<el-option label="已申诉" value="1"></el-option>
<el-option label="申诉驳回" value="2"></el-option>
<el-option label="申诉通过" value="3"></el-option>
</el-select>
</el-form-item> -->
<el-form-item class="button">
<el-button @click="submitForm()">
<img class="buttonIcon" src="../../assets/cx.png" />查询</el-button
......@@ -56,8 +105,9 @@
@selection-change="handleSelectionChange"
ref="multipleTable"
:data="tableData"
tooltip-effect="dark myTooltips"
tooltip-effect="dark myTooltips"
header-cell-class-name="custom-th-background"
style="width: 100%"
class="eltable"
:row-class-name="tableRowClassName"
border
......@@ -65,40 +115,53 @@
<el-table-column label="序号" width="55" type="index">
</el-table-column>
<el-table-column type="selection"> </el-table-column>
<el-table-column label="批次年度" prop="batchYear">
<template slot-scope="scope">
{{scope.row.batchYear}}
</template>
</el-table-column>
<el-table-column label="批次年度" prop="batchYear" width="120">
<template slot-scope="scope"> {{ scope.row.batchYear }}</template>
</el-table-column>
<el-table-column prop="batchName" label="后评估批次名称">
</el-table-column>
<el-table-column prop="expertName" label="评审专家"> </el-table-column>
<el-table-column
prop="batchStateText"
label="后评估批次状态"
width="120"
>
</el-table-column>
<el-table-column prop="projectId" label="项目编码" width="120"> </el-table-column>
<el-table-column prop="projectName" label="评估项目名称" show-overflow-tooltip >
<el-table-column
prop="projectName"
label="项目名称"
show-overflow-tooltip
>
</el-table-column>
<el-table-column prop="projectCategory" label="建设形式">
<el-table-column prop="projectYear" label="项目年度" width="120">
<template slot-scope="scope">
{{ scope.row.projectYear }}
</template>
</el-table-column>
<!-- <el-table-column prop="projectStatus" label="项目建设阶段">
</el-table-column> -->
<!-- <el-table-column prop="createTime" label="历史审核状态">
</el-table-column> -->
<el-table-column prop="expertName" label="评审专家名单">
<el-table-column prop="projectCategory" label="建设形式" width="120">
</el-table-column>
<el-table-column prop="appealDeadline" label="问题申诉截止时间">
<el-table-column prop="reviewText" label="项目审核状态" width="160">
</el-table-column>
<!-- <el-table-column prop="appealDeadline" label="问题申诉截止时间">
</el-table-column>
<el-table-column prop="rectificationDeadline" label="问题整改截止时间">
</el-table-column> -->
<el-table-column prop="postEvalStateText" label="申诉状态" width="120">
</el-table-column>
<el-table-column prop="planReviewDate" label="计划评估日期">
</el-table-column>
<el-table-column prop="postEvalStateText" label="复核状态">
<el-table-column prop="lastUpdateTime" label="实际评估日期">
</el-table-column>
<!-- <el-table-column prop="reviewStatus" label="后评估状态"> </el-table-column> -->
<el-table-column prop="reviewDate" label="评估日期"> </el-table-column>
</el-table>
</div>
<el-pagination
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="currentPage"
:page-sizes="[10, 15, 20, 50,100]"
:page-sizes="[10, 15, 20, 50, 100]"
:page-size="1000"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
......@@ -122,7 +185,7 @@
<p class="xqtitle"><span></span>问题清单</p>
<el-table
:data="tableDataQR"
tooltip-effect="dark myTooltips"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
......@@ -139,7 +202,11 @@
<el-table-column label="序号" width="100" type="index">
</el-table-column>
<el-table-column label="问题检查项" prop="quesCheckItem" show-overflow-tooltip>
<el-table-column
label="问题检查项"
prop="quesCheckItem"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
label="检查说明"
......@@ -171,26 +238,30 @@
</template>
</el-table-column>
<el-table-column label="解释批注">
<template slot-scope="scope" v-if="scope.row.confirmStatus == '1'">
<el-input
v-model="scope.row.feedback"
></el-input>
<template
slot-scope="scope"
v-if="scope.row.confirmStatus == '1'"
>
<el-input v-model="scope.row.feedback"></el-input>
</template>
</el-table-column>
<el-table-column label="附加解释材料" width="400">
<template slot-scope="scope" v-if="scope.row.confirmStatus == '1'&&scope.row.fileId">
{{
scope.row.fileName
}} <el-button @click="handleClickXZ(scope.row)">下载</el-button>
<template
slot-scope="scope"
v-if="scope.row.confirmStatus == '1' && scope.row.fileId"
>
{{ scope.row.fileName }}
<el-button @click="handleClickXZ(scope.row)">下载</el-button>
</template>
</el-table-column>
<el-table-column label="复核情况" prop="appealStatus">
<template slot-scope="scope" v-if="scope.row.confirmStatus == '1'">
<el-table-column label="申诉状态" prop="appealStatus">
<template
slot-scope="scope"
v-if="scope.row.confirmStatus == '1'"
>
<el-select
v-model="scope.row.appealStatus"
placeholder="请选择"
>
<el-option label="请选择" value=""></el-option>
<!-- <el-option label="未申诉" :value="0"></el-option> -->
......@@ -223,7 +294,7 @@
<p class="xqtitle"><span></span>问题清单</p>
<el-table
:data="tableDataSS"
tooltip-effect="dark myTooltips"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
......@@ -240,7 +311,11 @@
<el-table-column label="序号" width="100" type="index">
</el-table-column>
<el-table-column label="问题检查项" prop="quesCheckItem" show-overflow-tooltip>
<el-table-column
label="问题检查项"
prop="quesCheckItem"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
label="检查说明"
......@@ -272,19 +347,27 @@
</template>
</el-table-column>
<el-table-column label="解释批注">
<template slot-scope="scope" v-if="scope.row.confirmStatus == '1'" >
<el-input v-model="scope.row.feedback" ></el-input>
<template
slot-scope="scope"
v-if="scope.row.confirmStatus == '1'"
>
<el-input v-model="scope.row.feedback"></el-input>
</template>
</el-table-column>
<el-table-column label="附加解释材料" width="400">
<template slot-scope="scope" v-if="scope.row.confirmStatus == '1'&&scope.row.fileId">
{{
scope.row.fileName
}} <el-button @click="handleClickXZ(scope.row)">下载</el-button>
<el-table-column label="附加解释材料" width="400">
<template
slot-scope="scope"
v-if="scope.row.confirmStatus == '1' && scope.row.fileId"
>
{{ scope.row.fileName }}
<el-button @click="handleClickXZ(scope.row)">下载</el-button>
</template>
</el-table-column>
<el-table-column label="复核情况" prop="appealStatus">
<template slot-scope="scope" v-if="scope.row.confirmStatus == '1'">
<el-table-column label="申诉状态" prop="appealStatus">
<template
slot-scope="scope"
v-if="scope.row.confirmStatus == '1'"
>
<el-select
v-model="scope.row.appealStatus"
placeholder="请选择"
......@@ -301,7 +384,8 @@
</div>
</div>
<p class="midBtn">
<span @click="cancel()">取消</span><span @click="saveSS()">保存</span><span @click="save()">问题下发</span>
<span @click="cancel()">取消</span><span @click="saveSS()">保存</span
><span @click="save()">问题下发</span>
</p>
</el-dialog>
</div>
......@@ -314,13 +398,13 @@ import {
wtfhappealAssistanceConfirmatio,
xfappealAssistanceConfirmatio,
wtssSelAssistanceConfirmatio,
downloadObject
downloadObject,
} from "@/api/index";
import { generateYearOptions } from "@/utils/cache";
import { generateYearOptions, projectCategoryText } from "@/utils/cache";
export default {
data() {
return {
yearsList:generateYearOptions(),
yearsList: generateYearOptions(),
dialogSS: false,
ruleForm: {
batchYear: "",
......@@ -377,14 +461,34 @@ export default {
if (res.code == "200") {
this.tableData = res.data.records;
this.tableData.forEach((item) => {
if (item.reviewStatus >= "4") {
this.$set(item, "postEvalStateText", "复核已下发");
} else {
this.$set(item, "postEvalStateText", "复核未下发");
if (item.appealStatus == "0") {
this.$set(item, "postEvalStateText", "未申诉");
} else if (item.appealStatus == "1") {
this.$set(item, "postEvalStateText", "已申诉");
} else if (item.appealStatus == "2") {
this.$set(item, "postEvalStateText", "申诉驳回");
} else if (item.appealStatus == "3") {
this.$set(item, "postEvalStateText", "申诉通过");
}
if (item.batchState == "3") {
this.$set(item, "batchStateText", "执行中");
} else if (item.batchState == "5") {
this.$set(item, "batchStateText", "已完成");
}
if (item.reviewStatus == "0") {
this.$set(item, "reviewText", "无问题");
} else if (item.reviewStatus == "1") {
this.$set(item, "reviewText", "需整改");
} else if (item.reviewStatus == "2") {
this.$set(item, "reviewText", "已整改");
}
this.$set(
item,
"projectCategory",
projectCategoryText(item.projectCategory)
);
});
console.log(this.tableData,'tableDatatableData')
console.log(this.tableData, "tableDatatableData");
this.total = res.data.total * 1;
}
},
......@@ -538,15 +642,19 @@ export default {
this.dialogQR = false;
},
async save() {
console.log('this.tableDataSS',this.tableDataSS)
console.log("this.tableDataSS", this.tableDataSS);
this.tableDataSS.forEach(item=>{
if(item.confirmStatus==1&&item.appealStatus!=2&&item.appealStatus!=3){
this.$message("有未选择的复核情况");
throw new Error("主动跳出循环");
}
return
})
this.tableDataSS.forEach((item) => {
if (
item.confirmStatus == 1 &&
item.appealStatus != 2 &&
item.appealStatus != 3
) {
this.$message("有未选择的申诉状态");
throw new Error("主动跳出循环");
}
return;
});
let res = await xfappealAssistanceConfirmatio(this.tableDataSS);
if (res.code == "200") {
this.dialogSS = false;
......@@ -559,12 +667,11 @@ export default {
this.dialogSS = false;
},
async saveSS() {
// this.tableDataQR
// this.tableDataQR
let res = await wtfhappealAssistanceConfirmatio(this.tableDataQR);
if (res.code == "200") {
this.$message("保存成功");
this.dialogQR = false;
this.resetForm();
}
......@@ -577,10 +684,10 @@ export default {
this.$message("请选择一条数据进行复核");
return;
}
if (this.checkedList[0].postEvalStateText == "复核已下发") {
this.$message("请选择未下发的数据");
return;
}
// if (this.checkedList[0].postEvalStateText == "复核已下发") {
// this.$message("请选择未下发的数据");
// return;
// }
this.dialogSS = true;
let params = {
projectId: this.checkedList[0].projectId,
......@@ -591,10 +698,9 @@ export default {
if (res.code == "200") {
this.tableDataSS = res.data.records;
this.tableDataSS.forEach((item) => {
if(item.appealStatus< 2){
item.appealStatus=null
if (item.appealStatus < 2) {
item.appealStatus = null;
// this.$set(item, "appealStatus", "");
}
if (!item.confirmStatus) {
this.$set(item, "confirmStatus", "2");
......@@ -632,26 +738,22 @@ export default {
console.log("关闭");
this.handleSelectionChange();
},
async handleClickXZ(scope) {
async handleClickXZ(scope) {
console.log(scope.fileId);
let response=await downloadObject({
fileId:scope.fileId*1
})
let blob = new Blob([response]);
if ('download' in document.createElement('a')) {
let elink = document.createElement('a');
elink.download = scope.fileName;
elink.style.display = 'none';
elink.href = URL.createObjectURL(blob);
document.body.appendChild(elink);
elink.click();
URL.revokeObjectURL(elink.href); // 释放URL 对象
document.body.removeChild(elink);
}
let response = await downloadObject({
fileId: scope.fileId * 1,
});
let blob = new Blob([response]);
if ("download" in document.createElement("a")) {
let elink = document.createElement("a");
elink.download = scope.fileName;
elink.style.display = "none";
elink.href = URL.createObjectURL(blob);
document.body.appendChild(elink);
elink.click();
URL.revokeObjectURL(elink.href); // 释放URL 对象
document.body.removeChild(elink);
}
},
},
};
......@@ -720,8 +822,8 @@ export default {
.eltable {
box-sizing: border-box;
text-align: center;
width: 150%;
min-width: 150%;
// width: 150%;
// min-width: 150%;
// margin-right: 210px;
// margin-top: 3vh;
}
......@@ -730,7 +832,7 @@ export default {
// color: #2785e6;
}
.elpagination {
text-align: right;
text-align: center;
margin-right: 100px;
}
/deep/ .el-dialog {
......@@ -852,7 +954,7 @@ export default {
}
.midBtn {
margin: 20px auto;
// margin-top: 20px;
// margin-top: 20px;
span {
display: inline-block;
width: 80px;
......@@ -1010,6 +1112,7 @@ h3 {
// margin-top: 3vh;
}
}
// ::-webkit-scrollbar {
// width: 6px; // 横向滚动条
......
......@@ -24,17 +24,80 @@
clearable
></el-input>
</el-form-item>
<!-- <el-form-item label="后评估状态:" prop="postEvalState" class="fromItem">
<el-form-item label="后评估批次状态:" prop="batchState" class="fromItem">
<el-select v-model="ruleForm.batchState" placeholder="请选择" clearable>
<el-option label="执行中" value="3"></el-option>
<el-option label="已完成" value="5"></el-option>
</el-select>
</el-form-item>
<el-form-item label="项目编码:" prop="projectId" class="fromItem">
<el-input
v-model="ruleForm.projectId"
placeholder="请输入"
clearable
></el-input>
</el-form-item>
<el-form-item label="项目名称:" prop="projectName" class="fromItem">
<el-input
v-model="ruleForm.projectName"
placeholder="请输入"
clearable
></el-input>
</el-form-item>
<el-form-item label="项目年度:" prop="projectYear" class="fromItem">
<el-select
v-model="ruleForm.postEvalState"
v-model="ruleForm.projectYear"
placeholder="请选择"
clearable
>
<el-option label="未下发" value="0"></el-option>
<el-option label="已下发" value="1"></el-option>
<el-option label="已撤回" value="2"></el-option>
<el-option
v-for="(item, index) in yearsList"
:key="index"
:label="item + '年'"
:value="item"
/>
</el-select>
</el-form-item>
<el-form-item label="项目审核状态:" prop="reviewStatus" class="fromItem">
<el-select
v-model="ruleForm.reviewStatus"
placeholder="请选择"
clearable
>
<el-option label="无问题" value="0"></el-option>
<el-option label="需整改" value="1"></el-option>
<el-option label="已整改" value="2"></el-option>
<el-option label="已归档" value="3"></el-option>
</el-select>
</el-form-item> -->
</el-form-item>
<el-form-item label="申诉状态:" prop="appealStatus" class="fromItem">
<el-select
v-model="ruleForm.appealStatus"
placeholder="请选择"
clearable
>
<el-option label="未申诉" value="0"></el-option>
<el-option label="已申诉" value="1"></el-option>
<el-option label="申诉驳回" value="2"></el-option>
<el-option label="申诉通过" value="3"></el-option>
</el-select>
</el-form-item>
<el-form-item
label="问题整改状态:"
prop="rectificationStatus"
class="fromItem"
>
<el-select
v-model="ruleForm.rectificationStatus"
placeholder="请选择"
clearable
>
<el-option label="问题未整改" value="0"></el-option>
<el-option label="已整改" value="1"></el-option>
<el-option label="整改不合格" value="2"></el-option>
<el-option label="整改已完成" value="3"></el-option>
</el-select>
</el-form-item>
<el-form-item class="button">
<el-button @click="submitForm()">
<img class="buttonIcon" src="../../assets/cx.png" />查询</el-button
......@@ -42,14 +105,14 @@
<el-button @click="resetForm('ruleForm')">
<img class="buttonIcon" src="../../assets/cz.png" />重置</el-button
>
<el-button @click="confirm()">
<i class="el-icon-chat-dot-square"></i
>&nbsp;&nbsp;&nbsp;问题确认</el-button
>
<el-button @click="appeal()">
<i class="el-icon-document-remove"></i
>&nbsp;&nbsp;&nbsp;申诉</el-button
>
<el-button @click="confirm()">
<i class="el-icon-chat-dot-square"></i
>&nbsp;&nbsp;&nbsp;问题整改</el-button
>
</el-form-item>
</el-form>
<div class="setscroll">
......@@ -57,7 +120,7 @@
@selection-change="handleSelectionChange"
ref="multipleTable"
:data="tableData"
tooltip-effect="dark myTooltips"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
......@@ -67,53 +130,67 @@
<el-table-column label="序号" width="55" type="index">
</el-table-column>
<el-table-column type="selection"> </el-table-column>
<el-table-column label="批次年度" prop="batchYear">
<el-table-column label="批次年度" prop="batchYear" width="120">
<template slot-scope="scope"> {{ scope.row.batchYear }}</template>
</el-table-column>
<el-table-column prop="batchName" label="后评估批次名称">
</el-table-column>
<el-table-column prop="expertName" label="评审专家"> </el-table-column>
<el-table-column
prop="batchStateText"
label="后评估批次状态"
width="120"
>
</el-table-column>
<el-table-column prop="projectId" label="项目编码" width="120"> </el-table-column>
<el-table-column
prop="projectName"
label="评估项目名称"
label="项目名称"
show-overflow-tooltip
>
</el-table-column>
<el-table-column prop="projectCategory" label="建设形式">
<el-table-column prop="projectYear" label="项目年度" width="120">
<template slot-scope="scope">
{{ scope.row.projectYear }}
</template>
</el-table-column>
<!-- <el-table-column prop="projectStatus" label="项目建设阶段">
</el-table-column> -->
<!-- <el-table-column prop="createTime" label="历史审核状态">
</el-table-column> -->
<el-table-column prop="expertName" label="评审专家名单">
<el-table-column prop="projectCategory" label="建设形式" width="120">
</el-table-column>
<el-table-column prop="reviewText" label="项目审核状态" width="120">
</el-table-column>
<el-table-column prop="appealDeadline" label="问题申诉截止时间">
<!-- <el-table-column prop="appealDeadline" label="问题申诉截止时间">
</el-table-column>
<el-table-column prop="rectificationDeadline" label="问题整改截止时间">
</el-table-column> -->
<el-table-column prop="postEvalStateText" label="申诉状态" width="120">
</el-table-column>
<el-table-column prop="reviewStatusText" label="问题整改状态" width="160">
</el-table-column>
<el-table-column prop="postEvalStateText" label="申诉状态">
<el-table-column prop="planReviewDate" label="计划评估日期">
</el-table-column>
<el-table-column prop="lastUpdateTime" label="实际评估日期">
</el-table-column>
<!-- <el-table-column prop="reviewStatus" label="后评估状态"> </el-table-column> -->
<el-table-column prop="reviewDate" label="评估日期"> </el-table-column>
</el-table>
</div>
<el-pagination
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="currentPage"
:page-sizes="[10, 15, 20, 50,100]"
:page-sizes="[10, 15, 20, 50, 100]"
:page-size="1000"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
class="elpagination"
>
</el-pagination>
<!-- 问题确认 -->
<!-- 问题整改 -->
<el-dialog
title="问题确认"
title="问题整改"
:visible.sync="dialogQR"
width="90%"
width="79%"
:modal-append-to-body="false"
:append-to-body="false"
@close="closed"
......@@ -124,62 +201,126 @@
</h3>
<div class="continer">
<p class="xqtitle"><span></span>问题清单</p>
<el-table
:data="tableDataQR"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
:row-class-name="tableRowClassName"
:span-method="arraySpanMethod"
border
>
<el-table-column
label="项目环节"
prop="projectStagetext"
width="150"
<div class="setTable">
<el-table
v-horizontal-scroll="'always'"
:data="tableDataQR"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
:row-class-name="tableRowClassName"
:span-method="arraySpanMethod"
border
>
</el-table-column>
<el-table-column label="序号" width="100" type="index">
</el-table-column>
<el-table-column
label="项目环节"
prop="projectStagetext"
width="150"
>
</el-table-column>
<el-table-column label="序号" width="100" type="index">
</el-table-column>
<el-table-column label="问题检查项" prop="quesCheckItem">
</el-table-column>
<el-table-column
label="检查说明"
prop="checkDesc"
show-overflow-tooltip
>
</el-table-column>
<el-table-column label="评估问题" prop="evalQues">
</el-table-column>
<el-table-column label="问题确认" width="auto">
<template slot-scope="scope">
<el-switch
v-show="scope.row.evalQues"
v-model="scope.row.confirmStatus"
active-color="#C0C0C0"
inactive-color="#13ce66"
active-value="2"
inactive-value="1"
active-text="无异议"
inactive-text="有异议"
@change="controlSwitch($event, scope.row)"
<el-table-column
label="问题检查项"
prop="quesCheckItem"
width="200"
>
</el-table-column>
<el-table-column
label="检查说明"
prop="checkDesc"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
label="评估问题"
prop="evalQues"
show-overflow-tooltip
>
</el-table-column>
<el-table-column label="问题确认" width="auto">
<template slot-scope="scope">
<el-switch
v-model="scope.row.confirmStatus"
active-color="#C0C0C0"
inactive-color="#13ce66"
active-value="2"
inactive-value="1"
active-text="无异议"
inactive-text="有异议"
@change="controlSwitch($event, scope.row)"
disabled
>
<template v-slot:active>
<span>开启</span>
</template>
<template v-slot:inactive>
<span>关闭</span>
</template>
</el-switch>
</template>
</el-table-column>
<el-table-column label="解释批注" width="200" prop="feedback">
</el-table-column>
<el-table-column label="附加解释材料" prop="fileId" width="400">
<template
slot-scope="scope"
v-if="scope.row.confirmStatus == '1' && scope.row.fileId"
>
<template v-slot:active>
<span>开启</span>
</template>
<template v-slot:inactive>
<span>关闭</span>
</template>
</el-switch>
</template>
</el-table-column>
</el-table>
{{ scope.row.fileName }}
<el-button
@click="handleClickXZ(scope.row.fileId, scope.row.fileName)"
>下载</el-button
>
</template>
</el-table-column>
<el-table-column
label="复核情况"
prop="rectificationStatus"
width="200"
>
<template
slot-scope="scope"
v-if="scope.row.confirmStatus == '1'"
>
<el-select
v-model="scope.row.appealStatus"
placeholder="请选择"
disabled
>
<el-option label="请选择" value=""></el-option>
<el-option label="未申诉" :value="0"></el-option>
<el-option label="已申诉" :value="1"></el-option>
<el-option label="申诉驳回" :value="2"></el-option>
<el-option label="申诉通过" :value="3"></el-option>
</el-select>
</template>
</el-table-column>
<el-table-column label="上传整改材料" prop="zgFileId" width="400">
<template slot-scope="scope" v-if="scope.row.evalQues">
<input
type="file"
@change="handleFileUpload($event, scope.row, 'zgFileId')"
/>
</template>
</el-table-column>
<el-table-column label="情况说明" prop="zgqkFileId" width="400">
<template slot-scope="scope" v-if="scope.row.evalQues">
<input
type="file"
@change="handleFileUpload($event, scope.row, 'zgqkFileId')"
/>
</template>
</el-table-column>
</el-table>
</div>
</div>
</div>
<p class="midBtn">
<span @click="cancelSS()">取消</span><span @click="saveSS()">确认</span>
<span @click="cancelSS()">取消</span><span @click="saveSS()">保存</span
><span @click="saveSubmit()">提交</span>
</p>
</el-dialog>
<!-- 申诉 -->
......@@ -198,7 +339,7 @@
<p class="xqtitle"><span></span>问题清单</p>
<el-table
:data="tableDataSS"
tooltip-effect="dark myTooltips"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
......@@ -226,7 +367,7 @@
<el-table-column label="评估问题" prop="evalQues">
</el-table-column>
<el-table-column label="问题确认" width="auto">
<template slot-scope="scope">
<template slot-scope="scope" v-if="scope.row.evalQues">
<el-switch
v-model="scope.row.confirmStatus"
active-color="#C0C0C0"
......@@ -236,7 +377,6 @@
active-text="无异议"
inactive-text="有异议"
@change="controlSwitch($event, scope.row)"
disabled
>
<template v-slot:active>
<span>开启</span>
......@@ -259,7 +399,7 @@
<template slot-scope="scope">
<input
type="file"
@change="handleFileUpload($event, scope.row)"
@change="handleFileUpload($event, scope.row, 'fileId')"
v-if="scope.row.confirmStatus == '1'"
/>
</template>
......@@ -281,8 +421,11 @@ import {
qrProblemAssistedFeedback,
wtssSelProblemAssistedFeedback,
ssProblemAssistedFeedback,
wtssSelProblemRectification,
wtzgxfProblemRectification,
downloadObject,
} from "@/api/index";
import { generateYearOptions } from "@/utils/cache";
import { generateYearOptions, projectCategoryText } from "@/utils/cache";
export default {
data() {
return {
......@@ -352,6 +495,34 @@ export default {
} else {
this.$set(item, "postEvalStateText", "未申诉");
}
if (item.rectificationStatus == "0") {
this.$set(item, "reviewStatusText", "问题未整改");
} else if (item.rectificationStatus == "1") {
this.$set(item, "reviewStatusText", "已整改");
} else if (item.rectificationStatus == "2") {
this.$set(item, "reviewStatusText", "整改不合格");
} else if (item.rectificationStatus == "3") {
this.$set(item, "reviewStatusText", "整改已完成");
}
if (item.batchState == "3") {
this.$set(item, "batchStateText", "执行中");
} else if (item.batchState == "5") {
this.$set(item, "batchStateText", "已完成");
}
if (item.reviewStatus == "0") {
this.$set(item, "reviewText", "无问题");
} else if (item.reviewStatus == "1") {
this.$set(item, "reviewText", "需整改");
} else if (item.reviewStatus == "2") {
this.$set(item, "reviewText", "已整改");
}else if (item.reviewStatus == "3") {
this.$set(item, "reviewText", "已归档");
}
this.$set(
item,
"projectCategory",
projectCategoryText(item.projectCategory)
);
});
this.total = res.data.total * 1;
}
......@@ -363,52 +534,58 @@ export default {
this.submitForm();
},
//确认问题
async confirm() {
this.mergingPos = 0;
this.mergingRows = [];
if (this.checkedList.length != 1) {
this.$message("请选择一条数据进行确认");
return;
}
this.dialogQR = true;
let params = {
projectId: this.checkedList[0].projectId,
batchId: this.checkedList[0].batchId,
};
// async confirm() {
// console.log('整改')
// this.mergingPos = 0;
// this.mergingRows = [];
// if (this.checkedList.length != 1) {
// this.$message("请选择一条数据进行确认");
// return;
// }
// console.log(this.checkedList[0].postEvalStateText,'this.checkedList[0].postEvalStateText')
// if (this.checkedList[0].postEvalStateText == '已申诉') {
// this.$message("请选择未申诉的数据");
// return;
// }
// this.dialogQR = true;
// let params = {
// projectId: this.checkedList[0].projectId,
// batchId: this.checkedList[0].batchId,
// };
let res = await wtssSelProblemAssistedFeedback(params);
if (res.code == "200") {
this.tableDataQR = res.data.records;
this.tableDataQR.forEach((item) => {
if (!item.confirmStatus) {
this.$set(item, "confirmStatus", "2");
}
// let res = await wtssSelProblemAssistedFeedback(params);
// if (res.code == "200") {
// this.tableDataQR = res.data.records;
// this.tableDataQR.forEach((item) => {
// if (!item.confirmStatus) {
// this.$set(item, "confirmStatus", "2");
// }
switch (item.projectStage) {
case "1":
this.$set(item, "projectStagetext", "1.可研");
break;
case "2":
this.$set(item, "projectStagetext", "2.计划");
break;
case "3":
this.$set(item, "projectStagetext", "3.采购");
break;
case "4":
this.$set(item, "projectStagetext", "4.合同");
break;
case "5":
this.$set(item, "projectStagetext", "5.执行");
break;
case "6":
this.$set(item, "projectStagetext", "6.结决算及转资");
break;
}
});
console.log(this.tableDataQR);
this.dataPretreatment();
}
},
// switch (item.projectStage) {
// case "1":
// this.$set(item, "projectStagetext", "1.可研");
// break;
// case "2":
// this.$set(item, "projectStagetext", "2.计划");
// break;
// case "3":
// this.$set(item, "projectStagetext", "3.采购");
// break;
// case "4":
// this.$set(item, "projectStagetext", "4.合同");
// break;
// case "5":
// this.$set(item, "projectStagetext", "5.执行");
// break;
// case "6":
// this.$set(item, "projectStagetext", "6.结决算及转资");
// break;
// }
// });
// console.log(this.tableDataQR);
// this.dataPretreatment();
// }
// },
dataPretreatment() {
for (let i = 0; i < this.tableDataQR.length; i++) {
// tabledata 表格数据源
......@@ -461,8 +638,6 @@ export default {
},
//主列表选中行信息
handleSelectionChange(selection) {
console.log("222222");
if (Array.isArray(selection) && selection.length > 1) {
console.log("222222333", this.checkedList);
this.$refs.multipleTable.toggleRowSelection(selection[0], false);
......@@ -546,10 +721,21 @@ export default {
this.$message("请选择一条数据进行申诉");
return;
}
// if(this.checkedList[0].postEvalStateText!='未申诉'){
// this.$message("请选择未申诉的数据");
// return
// }
if (this.checkedList[0].postEvalStateText == "已申诉") {
this.$message("请选择未申诉的数据");
return;
}
if (this.checkedList[0].postEvalStateText == "申诉通过") {
this.$message("请选择未申诉的数据");
return;
}
if (
this.checkedList[0].reviewStatusText == "已整改" ||
this.checkedList[0].reviewStatusText == "整改已完成"
) {
this.$message("请选择未整改的数据");
return;
}
this.dialogSS = true;
let params = {
......@@ -589,12 +775,13 @@ export default {
this.dataPretreatmentSS();
}
},
handleFileUpload(event, row) {
handleFileUpload(event, row, id) {
console.log("来了么");
this.file = event.target.files[0];
this.submitFile(row);
this.submitFile(row, id);
},
submitFile(row) {
submitFile(row, id) {
console.log(id, "idididid");
if (this.file) {
const formData = new FormData();
formData.append("file", this.file);
......@@ -602,7 +789,7 @@ export default {
.then((response) => {
console.log(response);
if (response.code == "200") {
this.$set(row, "fileId", response.data.fileId);
this.$set(row, id, response.data.fileId);
this.$message("上传成功");
} else {
this.$message("上传失败");
......@@ -618,6 +805,85 @@ export default {
console.log("关闭");
this.handleSelectionChange();
},
//问题整改
async confirm() {
this.mergingPos = 0;
this.mergingRows = [];
if (this.checkedList.length != 1) {
this.$message("请选择一条数据进行整改");
return;
}
if (this.checkedList[0].postEvalStateText == "已申诉") {
this.$message("请选择未申诉的数据");
return;
}
if (this.checkedList[0].reviewStatusText == "整改提交") {
this.$message("整改已经提交");
return;
}
this.dialogQR = true;
let params = {
projectId: this.checkedList[0].projectId,
batchId: this.checkedList[0].batchId,
};
let res = await wtssSelProblemRectification(params);
if (res.code == "200") {
this.tableDataQR = res.data.records;
this.tableDataQR.forEach((item) => {
if (!item.confirmStatus) {
this.$set(item, "confirmStatus", "2");
}
switch (item.projectStage) {
case "1":
this.$set(item, "projectStagetext", "1.可研");
break;
case "2":
this.$set(item, "projectStagetext", "2.计划");
break;
case "3":
this.$set(item, "projectStagetext", "3.采购");
break;
case "4":
this.$set(item, "projectStagetext", "4.合同");
break;
case "5":
this.$set(item, "projectStagetext", "5.执行");
break;
case "6":
this.$set(item, "projectStagetext", "6.结决算及转资");
break;
}
});
this.dataPretreatment();
}
},
async saveSubmit() {
let res = await wtzgxfProblemRectification(this.tableDataQR);
if (res.code == "200") {
this.dialogQR = false;
this.resetForm();
} else {
this.$message("整改提交失败");
}
},
async handleClickXZ(fileId, fileName) {
console.log(fileId, "22222");
let response = await downloadObject({
fileId: fileId * 1,
});
let blob = new Blob([response]);
if ("download" in document.createElement("a")) {
let elink = document.createElement("a");
elink.download = fileName;
elink.style.display = "none";
elink.href = URL.createObjectURL(blob);
document.body.appendChild(elink);
elink.click();
URL.revokeObjectURL(elink.href); // 释放URL 对象
document.body.removeChild(elink);
}
},
},
};
</script>
......@@ -692,7 +958,7 @@ export default {
// color: #2785e6;
}
.elpagination {
text-align: right;
text-align: center;
margin-right: 100px;
}
/deep/ .el-dialog {
......@@ -812,8 +1078,8 @@ export default {
}
}
.midBtn {
margin: 0 auto;
margin-top: 20px;
margin: 20px auto;
// margin-top: 20px;
span {
display: inline-block;
width: 80px;
......@@ -823,15 +1089,20 @@ export default {
margin-right: 10px;
border-radius: 5px;
box-sizing: border-box;
}
span:first-of-type {
border: 1px solid grey;
}
span:last-of-type {
background-color: #4ca6a7;
color: #fff;
border: 1px solid #4ca6a7;
}
span:first-of-type {
border: 1px solid grey;
background-color: #fff;
color: grey;
}
// span:last-of-type {
// background-color: #4ca6a7;
// color: #fff;
// border: 1px solid #4ca6a7;
// }
}
.dialog {
height: 680px;
......@@ -963,4 +1234,20 @@ h3 {
/deep/ .el-table__cell {
text-align: center;
}
.setTable {
height: 560px;
overflow-y: auto;
overflow-x: scroll;
position: relative;
overflow: auto;
.eltable {
box-sizing: border-box;
text-align: center;
width: 150%;
min-width: 150%;
}
/deep/.el-table--scrollable-x .el-table__body-wrapper {
overflow-x: hidden !important;
}
}
</style>
\ No newline at end of file
......@@ -24,17 +24,32 @@
clearable
></el-input>
</el-form-item>
<!-- <el-form-item label="后评估状态:" prop="postEvalState" class="fromItem">
<el-form-item label="问题整改状态:" prop="postEvalState" class="fromItem">
<el-select
v-model="ruleForm.postEvalState"
placeholder="请选择"
clearable
>
<el-option label="未下发" value="0"></el-option>
<el-option label="已下发" value="1"></el-option>
<el-option label="已撤回" value="2"></el-option>
<el-option label="未整改" value="4"></el-option>
<el-option label="整改提交" value="5"></el-option>
<el-option label="整改未完成" value="6"></el-option>
<el-option label="整改已完成" value="7"></el-option>
</el-select>
</el-form-item> -->
</el-form-item>
<el-form-item label="评估项目名称:" prop="projectName" class="fromItem">
<el-input
v-model="ruleForm.projectName"
placeholder="请输入"
clearable
></el-input>
</el-form-item>
<el-form-item label="项目编码:" prop="projectId" class="fromItem">
<el-input
v-model="ruleForm.projectId"
placeholder="请输入"
clearable
></el-input>
</el-form-item>
<el-form-item class="button">
<el-button @click="submitForm()">
<img class="buttonIcon" src="../../assets/cx.png" />查询</el-button
......@@ -227,7 +242,7 @@
<el-table-column label="上传整改材料" prop="zgFileId" width="400">
<template
slot-scope="scope"
v-if="scope.row.confirmStatus == '1'"
>
<input
type="file"
......@@ -238,7 +253,7 @@
<el-table-column label="情况说明" prop="zgqkFileId" width="400">
<template
slot-scope="scope"
v-if="scope.row.confirmStatus == '1'"
>
<input
type="file"
......@@ -407,7 +422,7 @@ import {
ossupload,
downloadObject,
} from "@/api/index";
import { generateYearOptions } from "@/utils/cache";
import { generateYearOptions,projectCategoryText } from "@/utils/cache";
export default {
data() {
return {
......@@ -457,6 +472,7 @@ export default {
} else if (item.reviewStatus == "7") {
this.$set(item, "postEvalState", "整改已完成");
}
this.$set(item, "projectCategory",projectCategoryText(item.projectCategory));
});
this.total = res.data.total * 1;
}
......
......@@ -261,8 +261,8 @@
</el-table-column>
<el-table-column prop="projectCategory" label="建设形式" width="auto">
</el-table-column>
<!-- <el-table-column prop="projectStatus" label="项目建设阶段" width="auto"> -->
<!-- </el-table-column>
<!-- <el-table-column prop="projectStatus" label="项目建设阶段" width="auto">
</el-table-column>
<el-table-column prop="哪个字段" label="历史核查状态" width="auto">
</el-table-column> -->
<el-table-column prop="email" label="部门" width="auto">
......@@ -390,13 +390,13 @@
<el-table-column prop="字段待确认" label="历史核查状态" width="200">
</el-table-column>
<el-table-column prop="字段待确认" label="是否处于正在执行批次" width="200">
</el-table-column> -->
<!-- <el-table-column prop="字段待确认" label="计划文号" width="300">
<el-table-column prop="expertLevel" label="省公司" width="auto">
</el-table-column>
<el-table-column prop="expertLevel" label="信通公司" width="auto">
<el-table-column prop="字段待确认" label="计划文号" width="300">
<el-table-column prop="expertLevel" label="省公司" width="auto">
</el-table-column> -->
<!-- </el-table-column> -->
<el-table-column prop="expertLevel" label="信通公司" width="auto">
</el-table-column>
</el-table-column>
<el-table-column label="总投资计划(万元)" width="300">
<el-table-column prop="costAmountTotal" label="成本金" width="auto">
</el-table-column>
......@@ -543,67 +543,6 @@ export default {
};
Object.assign(params, this.ruleForm);
console.log(params);
(this.tableData = [
{
expertId: 1,
fullName: "王小明",
gender: 1,
birthday: "2024-04-23",
compId: 10001,
qualification: "硕士",
contact: "13241375678",
email: "115485@qq.com",
fields: "1",
expertLevel: 1,
description: "1",
expertState: 1,
creator: 1,
createTime: "2024-04-23 14:47:07",
lastUpdatedby: 1,
lastUpdateTime: "2024-04-23 14:47:12",
column14: 1,
},
{
expertId: 2,
fullName: "李晓帅",
gender: 0,
birthday: "2024-04-23",
compId: 10001,
qualification: "博士",
contact: "13241375678",
email: "115485@qq.com",
fields: "1",
expertLevel: 1,
description: "1",
expertState: 1,
creator: 1,
createTime: "2024-04-23 14:47:07",
lastUpdatedby: 1,
lastUpdateTime: "2024-04-23 14:47:12",
column14: 1,
},
{
expertId: 3,
fullName: "张晓楠",
gender: 1,
birthday: "2024-04-23",
compId: 10002,
qualification: "博士后",
contact: "13241375678",
email: "115485@qq.com",
fields: "1",
expertLevel: 1,
description: "1",
expertState: 1,
creator: 1,
createTime: "2024-04-23 14:47:07",
lastUpdatedby: 1,
lastUpdateTime: "2024-04-23 14:47:12",
column14: 1,
},
]),
(this.total = 2);
return;
let res = await projectInfo(params);
if (res.code == "200") {
......
......@@ -17,39 +17,76 @@
/>
</el-select>
</el-form-item>
<el-form-item label="后评估名称:" prop="batchName" class="fromItem">
<el-form-item label="后评估批次名称:" prop="batchName" class="fromItem">
<el-input
v-model="ruleForm.batchName"
placeholder="请输入"
clearable
></el-input>
</el-form-item>
<!-- <el-form-item label="后评估状态:" prop="postEvalState" class="fromItem">
<el-select
v-model="ruleForm.postEvalState"
placeholder="请选择"
clearable
>
<el-option label="未下发" value="0"></el-option>
<el-option label="已下发" value="1"></el-option>
<el-option label="已撤回" value="2"></el-option>
<el-form-item label="后评估批次状态:" prop="batchState" class="fromItem">
<el-select v-model="ruleForm.batchState" placeholder="请选择" clearable>
<el-option label="执行中" value="3"></el-option>
<el-option label="已完成" value="5"></el-option>
</el-select>
</el-form-item> -->
<el-form-item label="项目名称:" prop="projectName" class="fromItem">
</el-form-item>
<el-form-item label="项目编码:" prop="projectId" class="fromItem">
<el-input
v-model="ruleForm.projectName"
v-model="ruleForm.projectId"
placeholder="请输入"
clearable
></el-input>
</el-form-item>
<el-form-item label="项目编码:" prop="projectId" class="fromItem">
<el-form-item label="项目名称:" prop="projectName" class="fromItem">
<el-input
v-model="ruleForm.projectId"
v-model="ruleForm.projectName"
placeholder="请输入"
clearable
></el-input>
</el-form-item>
<el-form-item label="项目年度:" prop="projectYear" class="fromItem">
<el-select
v-model="ruleForm.projectYear"
placeholder="请选择"
clearable
>
<el-option
v-for="(item, index) in yearsList"
:key="index"
:label="item + '年'"
:value="item"
/>
</el-select>
</el-form-item>
<el-form-item label="项目审核状态:" prop="reviewStatus" class="fromItem">
<el-select
v-model="ruleForm.reviewStatus"
placeholder="请选择"
clearable
>
<el-option label="无问题" value="0"></el-option>
<el-option label="需整改" value="1"></el-option>
<el-option label="已整改" value="2"></el-option>
<el-option label="已归档" value="3"></el-option>
</el-select>
</el-form-item>
<el-form-item
label="实际评估日期:"
prop="lastUpdateTime"
class="fromItem"
>
<el-date-picker
@change="timeChange"
v-model="ruleForm.dates"
style="width: 240px"
value-format="yyyy-MM-dd"
type="daterange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
></el-date-picker>
</el-form-item>
<el-form-item class="button">
<el-button @click="submitForm()">
......@@ -68,7 +105,7 @@
@selection-change="handleSelectionChange"
ref="multipleTable"
:data="tableData"
tooltip-effect="dark myTooltips"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
......@@ -78,38 +115,50 @@
<el-table-column label="序号" width="55" type="index">
</el-table-column>
<el-table-column type="selection"> </el-table-column>
<el-table-column label="批次年度" prop="batchYear">
<el-table-column label="批次年度" prop="batchYear" width="120">
<template slot-scope="scope">
{{ scope.row.batchYear }}
</template></el-table-column
>
<el-table-column prop="batchName" label="后评估批次名称">
</el-table-column>
<el-table-column prop="expertName" label="评审专家"> </el-table-column>
<el-table-column
prop="batchStateText"
label="后评估批次状态"
width="120"
>
</el-table-column>
<el-table-column prop="projectId" label="项目编码" width="120"> </el-table-column>
<el-table-column
prop="projectName"
label="评估项目名称"
label="项目名称"
show-overflow-tooltip
>
</el-table-column>
<el-table-column prop="projectCategory" label="建设形式">
<el-table-column prop="projectYear" label="项目年度" width="120">
<template slot-scope="scope">
{{ scope.row.projectYear }}
</template>
</el-table-column>
<el-table-column prop="projectCategory" label="建设形式" width="120">
</el-table-column>
<!-- <el-table-column prop="projectStatus" label="项目建设阶段">
</el-table-column> -->
<!-- <el-table-column prop="createTime" label="历史审核状态">
</el-table-column> -->
<el-table-column prop="expertName" label="评审专家名单">
<el-table-column prop="reviewStatusText" label="项目审核状态" width="120">
</el-table-column>
<el-table-column prop="planReviewDate" label="计划评估日期">
</el-table-column>
<el-table-column prop="lastUpdateTime" label="实际评估日期">
</el-table-column>
<!-- <el-table-column prop="字段待确认" label="后评估状态"> </el-table-column> -->
<el-table-column prop="reviewDate" label="评估日期"> </el-table-column>
</el-table>
</div>
<el-pagination
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="currentPage"
:page-sizes="[10, 15, 20, 50,100]"
:page-sizes="[10, 15, 20, 50, 100]"
:page-size="1000"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
......@@ -134,7 +183,7 @@
<p class="title"><span></span>项目基本信息</p>
<div class="content">
<p><label>项目编号:</label>{{ listData.projectId }}</p>
<p><label>项目年度:</label>{{ listData.projectYear }}</p>
<p><label>项目年度:</label>{{ listData.projectYear }}</p>
<p>
<label>项目名称:</label>
<span>{{ listData.projectName }}</span>
......@@ -149,10 +198,10 @@
>{{ listData.capitalAmountTotal }}
</p>
<p><label>部门:</label>{{ listData.department }}</p>
<p><label>创建人:</label>{{ listData.inputuser }}</p>
<!-- <p><label>创建人:</label>{{ listData.inputuser }}</p>
<p><label>创建时间:</label>{{ listData.inputuser }}</p>
<p><label>修改人:</label>{{ listData.lastUpdatedby }}</p>
<p><label>修改时间:</label>{{ listData.lastUpdateTime }}</p>
<p><label>修改时间:</label>{{ listData.lastUpdateTime }}</p> -->
</div>
<div class="table">
<p>项目后评估资料:</p>
......@@ -180,7 +229,7 @@
<el-table
@selection-change="handleSelectionChange"
:data="qdtableData"
tooltip-effect="dark myTooltips"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
......@@ -207,7 +256,7 @@
</div>
<p class="title"><span></span>批次详情</p>
<div class="content">
<p><label>批次年度:</label>{{ listData.batchYear }}</p>
<p><label>批次年度:</label>{{ listData.batchYear }}</p>
<p><label>后评估批次名称:</label>{{ listData.batchName }}</p>
<p><label>计划评估日期:</label>{{ listData.planReviewDate }}</p>
</div>
......@@ -221,7 +270,7 @@
<p class="title"><span></span>项目基本信息</p>
<el-table
:data="xxtableData"
tooltip-effect="dark myTooltips"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
......@@ -247,16 +296,25 @@
>
</el-table-column>
<el-table-column label="评估问题" prop="evalQues">
<!-- <template slot-scope="scope">
<el-input v-model="scope.row.evalQues"></el-input>
</template> -->
</el-table-column>
<el-table-column label="问题截图" width="auto">
<template slot-scope="scope">
<el-image
class="imgList"
v-for="(img, index) in scope.row.images"
:key="index"
:src="img"
:preview-src-list="scope.row.images"
@click="handleImageClick(scope.row.images)"
></el-image>
</template>
</el-table-column>
</el-table>
</el-tab-pane>
<el-tab-pane label="评审流程" name="third">
<el-table
:data="lctableData"
tooltip-effect="dark myTooltips"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
......@@ -287,9 +345,10 @@ import {
wtqdqselect,
clqdselect,
selLcb,
downloadObject
presignedUrl,
downloadObject,
} from "@/api/index";
import { generateYearOptions } from "@/utils/cache";
import { generateYearOptions, projectCategoryText } from "@/utils/cache";
export default {
data() {
return {
......@@ -331,6 +390,16 @@ export default {
this.submitForm();
},
methods: {
timeChange(time) {
if (time) {
//给后端的参数
this.ruleForm.createStartTime = time[0];
this.ruleForm.createEndTime = time[1];
}else{
this.ruleForm.createStartTime = "";
this.ruleForm.createEndTime = "";
}
},
async submitForm() {
let params = {
current: this.currentPage,
......@@ -342,6 +411,27 @@ export default {
if (res.code == "200") {
this.tableData = res.data.records;
this.tableData.forEach((item) => {
if (item.batchState == "3") {
this.$set(item, "batchStateText", "执行中");
} else if (item.batchState == "5") {
this.$set(item, "batchStateText", "已完成");
}
if (item.reviewStatus == "0") {
this.$set(item, "reviewStatusText", "无问题");
} else if (item.reviewStatus == "1") {
this.$set(item, "reviewStatusText", "需整改");
} else if (item.reviewStatus == "2") {
this.$set(item, "reviewStatusText", "已整改");
}else if (item.reviewStatus == "3") {
this.$set(item, "reviewStatusText", "已归档");
}
this.$set(
item,
"projectCategory",
projectCategoryText(item.projectCategory)
);
});
this.total = res.data.total * 1;
}
},
......@@ -349,6 +439,8 @@ export default {
this.$refs.formName.resetFields();
this.currentPage = 1;
this.pageSize = 10;
this.ruleForm.createStartTime = "";
this.ruleForm.createEndTime = "";
this.submitForm();
},
//详情
......@@ -363,12 +455,12 @@ export default {
projectId: this.checkedList[0].projectId,
};
Promise.all([fzcxXqselect(params), clqdselect(params)]).then((res) => {
console.log(res[0], res[1], "2222222");
this.listData = res[0].data.records[0];
this.listData.projectCategory = projectCategoryText(
this.listData.projectCategory
);
this.qdtableData = JSON.parse(JSON.stringify(this.tableDataNew));
if (res[1].data.records.length > 0) {
// this.qdtableData = res[1].data.records;
this.qdtableData = this.qdtableData
.concat(res[1].data.records)
.reduce((accumulator, currentObj) => {
......@@ -382,8 +474,6 @@ export default {
}
return accumulator;
}, []);
console.log(this.tableDataQD, " mergedArray mergedArray mergedArray");
}
});
},
......@@ -463,6 +553,30 @@ export default {
this.$set(item, "projectStagetext", "6.结决算及转资");
break;
}
let urlStr = item.url;
let arrUrl = [];
let showUrlList = [];
// 有url拆分调接口换预览
if (urlStr) {
console.log(urlStr, "urlStr");
if (urlStr.includes(",")) {
arrUrl = item.url.split(",");
} else {
arrUrl.push(urlStr);
}
console.log(arrUrl, "arrUrlarrUrl");
arrUrl.forEach(async (showUrl) => {
let paramsUrl = {
url: showUrl,
};
let resUrl = await presignedUrl(paramsUrl);
showUrlList.push(resUrl.msg);
});
console.log(showUrlList, "showUrlList");
this.$set(item, "images", showUrlList);
}
});
this.dataPretreatment();
} else if (this.activeName == "third") {
......@@ -499,6 +613,7 @@ export default {
cancel() {
this.dialog = false;
},
handleImageClick() {},
async handleClickXZ(scope) {
console.log(scope.fileId);
let response = await downloadObject({
......@@ -589,7 +704,7 @@ export default {
// color: #2785e6;
}
.elpagination {
text-align: right;
text-align: center;
margin-right: 100px;
}
/deep/ .el-dialog {
......@@ -783,4 +898,10 @@ h3 {
overflow: auto;
}
}
.imgList {
/deep/ .el-image__inner {
width: 60px;
height: 60px;
}
}
</style>
\ No newline at end of file
......@@ -14,14 +14,14 @@
<el-form-item label="后评估批次名称:" prop="batchName" class="fromItem">
<el-input v-model="ruleForm.batchName" placeholder="请输入" clearable></el-input>
</el-form-item>
<!-- <el-form-item label="后评估状态:" prop="postEvalState" class="fromItem">
<el-select v-model="ruleForm.postEvalState" placeholder="请选择" clearable>
<el-form-item label="问题下发状态:" prop="reviewStatus" class="fromItem">
<el-select v-model="ruleForm.reviewStatus" placeholder="请选择" clearable>
<el-option label="未下发" value="0"></el-option>
<el-option label="已下发" value="1"></el-option>
<el-option label="已撤回" value="2"></el-option>
</el-select>
</el-form-item> -->
<el-form-item label="项目名称:" prop="projectName" class="fromItem">
</el-form-item>
<el-form-item label="评估项目名称:" prop="projectName" class="fromItem">
<el-input
v-model="ruleForm.projectName"
placeholder="请输入"
......@@ -165,7 +165,7 @@ import {
wtplxfproblemAssistedDistribution,
chproblemAssistedDistribution
} from "@/api/index";
import { generateYearOptions } from "@/utils/cache";
import { generateYearOptions,projectCategoryText } from "@/utils/cache";
export default {
data() {
return {
......@@ -233,6 +233,7 @@ export default {
} else {
this.$set(item, "postEvalState", "已下发");
}
this.$set(item, "projectCategory",projectCategoryText(item.projectCategory));
});
this.total = res.data.total * 1;
}
......
<!-- 材料同步归档 -->
<!-- 整改辅助核验 -->
<template>
<div class="main">
<el-form
......@@ -10,63 +10,115 @@
<el-form-item label="批次年度:" prop="batchYear" class="fromItem">
<el-select v-model="ruleForm.batchYear" placeholder="请选择" clearable>
<el-option
v-for="(item, index) in yearsList"
:key="index"
:label="item+'年'"
:value="item"/>
v-for="(item, index) in yearsList"
:key="index"
:label="item + '年'"
:value="item"
/>
</el-select>
</el-form-item>
<el-form-item label="后评估批次名称:" prop="batchName" class="fromItem">
<el-input v-model="ruleForm.batchName" clearable></el-input>
</el-form-item>
<!-- <el-form-item label="项目年度:" prop="projectYear" class="fromItem">
<el-select v-model="ruleForm.pprojectYear" placeholder="请选择" clearable>
<el-option label="2024年" value="2024"></el-option>
<el-option label="2023年" value="2023"></el-option>
<el-option label="2022年" value="2022"></el-option>
<el-option label="2021年" value="2021"></el-option>
<el-form-item label="后评估批次状态:" prop="batchState" class="fromItem">
<el-select v-model="ruleForm.batchState" placeholder="请选择" clearable>
<el-option label="执行中" value="3"></el-option>
<el-option label="已完成" value="5"></el-option>
</el-select>
</el-form-item>
<el-form-item label="项目编码:" prop="projectId" class="fromItem">
<el-input v-model="ruleForm.projectId" placeholder="请输入" clearable></el-input>
</el-form-item>
<el-form-item label="项目名称:" prop="projectName" class="fromItem">
<el-input
v-model="ruleForm.projectName"
v-model="ruleForm.projectId"
placeholder="请输入"
clearable
></el-input>
</el-form-item>
<el-form-item label="项目内容:" prop="projectContent" class="fromItem" show-overflow-tooltip>
<el-form-item label="项目名称:" prop="projectName" class="fromItem">
<el-input
v-model="ruleForm.projectContent"
v-model="ruleForm.projectName"
placeholder="请输入"
clearable
></el-input>
</el-form-item>
<el-form-item label="项目年度:" prop="projectYear" class="fromItem">
<el-select
v-model="ruleForm.projectYear"
placeholder="请选择"
clearable
>
<el-option
v-for="(item, index) in yearsList"
:key="index"
:label="item + '年'"
:value="item"
/>
</el-select>
</el-form-item>
<el-form-item label="项目审核状态:" prop="reviewStatus" class="fromItem">
<el-select
v-model="ruleForm.reviewStatus"
placeholder="请选择"
clearable
>
<el-option label="无问题" value="0"></el-option>
<el-option label="需整改" value="1"></el-option>
<el-option label="已整改" value="2"></el-option>
<el-option label="已归档" value="3"></el-option>
</el-select>
</el-form-item>
<el-form-item
label="省公司计划文件号:"
prop="proCompanyPlanFileNum"
label="问题整改状态:"
prop="rectificationStatus"
class="fromItem"
clearable
>
<el-input
v-model="ruleForm.proCompanyPlanFileNum"
placeholder="请输入"
<el-select
v-model="ruleForm.rectificationStatus"
placeholder="请选择"
clearable
></el-input>
>
<el-option label="问题未整改" value="0"></el-option>
<el-option label="已整改" value="1"></el-option>
<el-option label="整改不合格" value="2"></el-option>
<el-option label="整改已完成" value="3"></el-option>
</el-select>
</el-form-item>
<el-form-item
label="信通公司计划文件号:"
prop="infoCompanyPlanFileNum"
<!-- <el-form-item
label="计划评估日期:"
prop="planReviewDate"
class="fromItem"
clearable
>
<el-input
v-model="ruleForm.infoCompanyPlanFileNum"
placeholder="请输入"
clearable
></el-input>
<el-date-picker
v-model="ruleForm.planReviewDate"
type="date"
placeholder="选择日期"
value-format="yyyy-MM-dd hh:mm:ss"
>
</el-date-picker>
</el-form-item>
<el-form-item label="后评估专家组长:" prop="fullName" class="fromItem">
<el-select v-model="ruleForm.fullName" placeholder="请选择" clearable>
<el-option label="zhangsan" value="0"></el-option>
</el-select>
</el-form-item> -->
<!-- <el-form-item label="后评估状态:" prop="postEvalState" class="fromItem">
<el-select v-model="ruleForm.postEvalState" placeholder="请选择" clearable>
<el-option label="未下发" value="0"></el-option>
<el-option label="已下发" value="1"></el-option>
<el-option label="已撤回" value="2"></el-option>
</el-select>
</el-form-item> -->
<!-- <el-form-item label="创建人:" prop="creator" class="fromItem">
<el-input v-model="ruleForm.creator" placeholder="请输入" clearable></el-input>
</el-form-item>
<el-form-item label="创建时间:" prop="createTime" class="fromItem">
<el-date-picker
v-model="ruleForm.createTime"
type="date"
placeholder="选择日期"
value-format="yyyy-MM-dd hh:mm:ss"
>
</el-date-picker>
</el-form-item> -->
<el-form-item class="button">
......@@ -76,12 +128,11 @@
<el-button @click="resetForm()">
<img class="buttonIcon" src="../../assets/cz.png" />重置</el-button
>
<el-button @click="detailsForm()">
<img class="buttonIcon" src="../../assets/ck.png" />详情</el-button
<el-button @click="subfinished()">
<i class="el-icon-finished"></i
>&nbsp;&nbsp;&nbsp;归档</el-button
>
<!-- <el-button @click="attach('ruleForm')">
<i class="el-icon-receiving"></i>&nbsp;&nbsp;&nbsp;材料归档</el-button
> -->
</el-form-item>
</el-form>
<div class="setscroll">
......@@ -89,7 +140,7 @@
@selection-change="handleSelectionChange"
ref="multipleTable"
:data="tableData"
tooltip-effect="dark myTooltips"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
......@@ -99,61 +150,58 @@
<el-table-column label="序号" width="55" type="index">
</el-table-column>
<el-table-column type="selection"> </el-table-column>
<el-table-column label="批次年度" width="auto" prop="batchYear"><template slot-scope="scope">
{{scope.row.batchYear}}
</template>
<el-table-column label="批次年度" width="120" prop="batchYear"
><template slot-scope="scope"> {{ scope.row.batchYear }}</template>
</el-table-column>
<el-table-column prop="batchName" label="后评估批次名称" width="auto">
</el-table-column>
<el-table-column prop="projectId" label="项目编码" width="auto">
</el-table-column>
<el-table-column prop="projectYear" label="项目年度" width="auto">
</el-table-column>
<el-table-column prop="projectName" label="项目名称" width="350">
<el-table-column prop="expertName" label="评审专家" width="auto">
</el-table-column>
<el-table-column prop="materialState" label="材料状态" width="auto">
</el-table-column>
<el-table-column prop="projectCategor" label="建设形式" width="auto">
<el-table-column
prop="batchStateText"
label="后评估批次状态"
width="120"
>
</el-table-column>
<!-- <el-table-column prop="proCompanyApprovalNumber" label="省公司" width="auto">
</el-table-column>
<el-table-column prop="infoCompanyApprovalNumber" label="信通公司" width="auto"> -->
<!-- </el-table-column> -->
<el-table-column label="总投资计划(万元)" width="300">
<el-table-column prop="costAmountTotal" label="成本金" width="auto">
</el-table-column>
<el-table-column
prop="capitalAmountTotal"
label="资本金"
width="auto"
>
</el-table-column>
<el-table-column prop="projectId" label="项目编码" width="120"> </el-table-column>
<el-table-column
prop="projectName"
label="项目名称"
show-overflow-tooltip
>
</el-table-column>
<el-table-column label="当年投资计划(万元)" width="300">
<el-table-column
prop="costAmountCurrentMfdel"
label="成本金"
width="auto"
>
</el-table-column>
<el-table-column
prop="capitalAmountCurrentMfdel"
label="资本金"
width="200"
>
</el-table-column>
<el-table-column prop="projectYear" label="项目年度" width="120">
<template slot-scope="scope">
{{ scope.row.projectYear }}
</template>
</el-table-column>
<el-table-column prop="department" label="部门" width="200">
<el-table-column prop="projectCategory" label="建设形式" width="120">
</el-table-column>
<el-table-column prop="字段待确认" label="承建单位" width="200">
<el-table-column prop="reviewText" label="项目审核状态" width="120">
</el-table-column>
<el-table-column prop="字段待确认" label="负责人" width="200">
<!-- <el-table-column
prop="appealDeadline"
label="问题申诉截止时间"
width="auto"
>
</el-table-column>
<el-table-column prop="projectInfo" label="项目内容" show-overflow-tooltip>
<el-table-column
prop="rectificationDeadline"
label="问题整改截止时间"
width="auto"
>
</el-table-column> -->
<el-table-column
prop="reviewStatusText"
label="问题整改状态"
width="160"
>
</el-table-column>
<el-table-column prop="inputuser" label="创建人" width="200">
<el-table-column prop="planReviewDate" label="计划评估日期">
</el-table-column>
<el-table-column prop="inputtime" label="创建时间" width="200">
<el-table-column prop="lastUpdateTime" label="实际评估日期">
</el-table-column>
</el-table>
</div>
......@@ -161,200 +209,101 @@
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="currentPage"
:page-sizes="[10, 15, 20, 50,100]"
:page-sizes="[10, 15, 20, 50, 100]"
:page-size="1000"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
class="elpagination"
>
</el-pagination>
<!-- 详情弹窗 -->
<el-dialog
title="详情"
:visible.sync="dialog"
width="90%"
:modal-append-to-body="false"
:append-to-body="false"
>
<div class="dialog">
<h3>
项目名称:一期项目-电力营销-2023年网上国网(网上国网V1.0)-设计开发项目
</h3>
<el-tabs v-model="activeName" @tab-click="handleClick">
<el-tab-pane label="基本信息" name="first">
<div>
<p class="title"><span></span>项目基本信息</p>
<div class="content">
<p><label>项目编号:</label>{{ listData.projectId }}</p>
<p><label>项目年度:</label>{{ listData.projectYear }}</p>
<p><label>项目名称:</label>{{ listData.projectName }}</p>
<p><label>建设形式:</label>{{ listData.projectCategory }}</p>
<p>
<label>总投资计划(万元)-成本金:</label
>{{ listData.costAmountTotal }}
</p>
<p>
<label>总投资计划(万元)-资本金:</label
>{{ listData.capitalAmountTotal }}
</p>
<p><label>部门:</label>{{ listData.department }}</p>
<p><label>创建人:</label>{{ listData.inputuser }}</p>
<p><label>创建时间:</label>{{ listData.inputuser }}</p>
<p><label>修改人:</label>{{ listData.lastUpdatedby }}</p>
<p><label>修改时间:</label>{{ listData.lastUpdateTime }}</p>
</div>
<div class="table">
<p>项目后评估资料:</p>
<el-table
@selection-change="handleSelectionChange"
:data="qdtableData"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="tablepg"
:row-class-name="tableRowClassName"
border
>
<el-table-column label="序号" width="55" type="index">
</el-table-column>
<el-table-column label="类别" prop="batchtype">
</el-table-column>
<el-table-column prop="typeCode" label="资料类型">
</el-table-column>
<el-table-column prop="fileName" label="资料名称">
</el-table-column>
</el-table>
</div>
<p class="title"><span></span>批次详情</p>
<div class="content">
<p><label>批次年度:</label>{{ listData.batchYear }}</p>
<p><label>后评估批次名称:</label>{{ listData.batchName }}</p>
<p><label>计划评估日期:</label>{{ listData.planReviewDate }}</p>
</div>
<p class="title"><span></span>评审专家</p>
<div class="content">
<p class="bottom"><label>评审专家:</label>{{ listData.expertName }}</p>
</div>
</div>
</el-tab-pane>
<el-tab-pane label="问题清单" name="second">
<p class="title"><span></span>项目基本信息</p>
<el-table
:data="xxtableData"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
:row-class-name="tableRowClassName"
:span-method="arraySpanMethod"
border
>
<el-table-column
label="项目环节"
prop="projectStagetext"
width="150"
>
</el-table-column>
<el-table-column label="序号" width="100" type="index">
</el-table-column>
<el-table-column label="问题检查项" prop="quesCheckItem">
</el-table-column>
<el-table-column label="检查说明" prop="checkDesc" show-overflow-tooltip>
</el-table-column>
<el-table-column label="评估问题" prop="evalQues">
<!-- <template slot-scope="scope">
<el-input v-model="scope.row.evalQues"></el-input>
</template> -->
</el-table-column>
</el-table>
</el-tab-pane>
<el-tab-pane label="评审流程" name="third">
<el-table
:data="lctableData"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
:row-class-name="tableRowClassName"
border
>
<el-table-column
label="流程节点"
prop="processNodes"
width="150"
>
</el-table-column>
<el-table-column label="状态" prop="state"> </el-table-column>
<el-table-column label="处理人" prop="processedBy">
</el-table-column>
<el-table-column label="处理时间" prop="processingTime">
</el-table-column>
</el-table>
</el-tab-pane>
</el-tabs>
</div>
<p class="close"><span @click="cancel()">关闭</span></p>
</el-dialog>
</div>
</template>
<script>
import {
materialSync,
fzcxXqselect,
clqdselect,
wtqdqselect,
selLcb
tbgdrectificationVerification,
gdrectificationVerification
} from "@/api/index";
import { generateYearOptions } from "@/utils/cache";
import { MaterialsList } from "@/utils/cache";
import { generateYearOptions, projectCategoryText } from "@/utils/cache";
export default {
data() {
return {
yearsList:generateYearOptions(),
xxtableData:[],
qdtableData: [],
tableDataNew: MaterialsList(),
listData: {},
yearsList: generateYearOptions(),
dialogSS: false,
ruleForm: {
projectId: "",
batchYear: "",
batchName: "",
projectDeliveryYear: "",
projectCode: "",
projectName: "",
projectContent: "",
proCompanyPlanFileNum: "",
infoCompanyPlanFileNum: "",
planReviewDate: "",
fullName: "",
postEvalState: "",
creator: "",
createTime: "",
},
checkedList: [],
tableData: [],
tableDataQR: [],
tableDataSS: [],
checkedList: [],
currentPage: 1,
pageSize: 10,
pageSizetjcl: 10,
total: 0,
dialog: false,
activeName: "first",
dialogQR: false,
pageSize: 10,
mergingPos: 0,
mergingRows: [],
lctableData:[],
mergingPosss: 0,
mergingRowsss: [],
};
},
mounted() {
this.submitForm();
},
mounted() {
this.submitForm();
},
methods: {
async submitForm(formName) {
async submitForm() {
let params = {
current: this.currentPage,
pageSize: this.pageSize,
};
Object.assign(params, this.ruleForm);
console.log(params);
let res = await materialSync(params);
let res = await tbgdrectificationVerification(params);
if (res.code == "200") {
this.tableData = res.data.records;
this.tableData.forEach((item) => {
if (item.rectificationStatus == "0") {
this.$set(item, "reviewStatusText", "问题未整改");
} else if (item.rectificationStatus == "1") {
this.$set(item, "reviewStatusText", "已整改");
} else if (item.rectificationStatus == "2") {
this.$set(item, "reviewStatusText", "整改不合格");
} else if (item.rectificationStatus == "3") {
this.$set(item, "reviewStatusText", "整改已完成");
}
if (item.batchState == "3") {
this.$set(item, "batchStateText", "执行中");
} else if (item.batchState == "5") {
this.$set(item, "batchStateText", "已完成");
}
if (item.reviewStatus == "0") {
this.$set(item, "reviewText", "无问题");
} else if (item.reviewStatus == "1") {
this.$set(item, "reviewText", "需整改");
} else if (item.reviewStatus == "2") {
this.$set(item, "reviewText", "已整改");
}else if (item.reviewStatus == "3") {
this.$set(item, "reviewText", "已归档");
}
this.$set(
item,
"projectCategory",
projectCategoryText(item.projectCategory)
);
});
this.total = res.data.total * 1;
}
},
......@@ -364,126 +313,21 @@ export default {
this.pageSize = 10;
this.submitForm();
},
//详情
detailsForm() {
if (this.checkedList.length != 1) {
this.$message("请选择");
return;
}
this.dialog = true;
let params = {
batchId: this.checkedList[0].batchId,
projectId: this.checkedList[0].projectId,
};
Promise.all([fzcxXqselect(params), clqdselect(params)]).then((res) => {
console.log(res[0], res[1], "2222222");
this.listData = res[0].data.records[0];
//提交归档
async subfinished(){
console.log('只有专家可以操作归档')
let params={
projectId:this.checkedList[0].projectId,
batchId:this.checkedList[0].batchId
this.qdtableData = JSON.parse(JSON.stringify(this.tableDataNew));
if (res[1].data.records.length > 0) {
// this.qdtableData = res[1].data.records;
this.qdtableData = this.qdtableData
.concat(res[1].data.records)
.reduce((accumulator, currentObj) => {
const existingObj = accumulator.find(
(obj) => obj.typeCode == currentObj.typeCode
);
if (existingObj) {
Object.assign(existingObj, currentObj);
} else {
accumulator.push(currentObj);
}
return accumulator;
}, []);
console.log(this.tableDataQD, " mergedArray mergedArray mergedArray");
}
});
},
attach() {
alert("归档");
},
async handleClick() {
this.xxtableData=[]
console.log(this.activeName, "this.activeName");
if (this.activeName == "second") {
let params = {
batchId: this.checkedList[0].batchId,
projectId: this.checkedList[0].projectId,
};
let res = await wtqdqselect(params);
if (res.code == "200") {
this.xxtableData = res.data.records;
this.qdtotal = res.data.total * 1;
}
this.xxtableData.forEach((item) => {
switch (item.projectStage) {
case 1:
this.$set(item, "projectStagetext", "1.可研");
break;
case 2:
this.$set(item, "projectStagetext", "2.计划");
break;
case 3:
this.$set(item, "projectStagetext", "3.采购");
break;
case 4:
this.$set(item, "projectStagetext", "4.合同");
break;
case 5:
this.$set(item, "projectStagetext", "5.执行");
break;
case 6:
this.$set(item, "projectStagetext", "6.结决算及转资");
break;
}
});
this.dataPretreatment();
}else if (this.activeName == "third") {
let params = {
batchId: this.checkedList[0].batchId,
projectId: this.checkedList[0].projectId,
};
let res = await selLcb(params);
if (res.code == "200") {
this.lctableData = res.data;
}
}
},
arraySpanMethod({ row, column, rowIndex, columnIndex }) {
if (columnIndex === 0) {
//第一列
const _row = this.mergingRows[rowIndex];
const _col = _row > 0 ? 1 : 0;
return {
rowspan: _row,
colspan: _col,
};
}
},
dataPretreatment() {
this.mergingRows=[]
this.mergingPos = 0;
for (let i = 0; i < this.xxtableData.length; i++) {
// tabledata 表格数据源
if (i == 0) {
this.mergingRows.push(1);
this.mergingPos = 0;
} else {
if (
this.xxtableData[i].projectStage ===
this.xxtableData[i - 1].projectStage
) {
//哪些数据是要合并的 合并的条件是什么
this.mergingRows[this.mergingPos] += 1;
this.mergingRows.push(0);
} else {
this.mergingRows.push(1);
this.mergingPos = i;
}
}
}
let res= await gdrectificationVerification(params)
if(res.code=='200'){
this.$message('归档成功')
}else{
this.$message('归档失败')
}
},
//表格颜色
tableRowClassName({ row, rowIndex }) {
......@@ -494,12 +338,15 @@ export default {
},
//主列表选中行信息
handleSelectionChange(selection) {
console.log("222222");
if (Array.isArray(selection) && selection.length > 1) {
console.log("222222333", this.checkedList);
this.$refs.multipleTable.toggleRowSelection(selection[0], false);
this.$refs.multipleTable.toggleRowSelection(selection[1], true);
}
this.checkedList = this.$refs.multipleTable.selection;
this.ruleFormdialogRow = this.checkedList[0];
this.$forceUpdate();
console.log(this.checkedList, "2222");
},
handleSizeChange(val) {
......@@ -510,9 +357,6 @@ export default {
console.log(`当前页: ${val}`);
this.currentPage = val;
},
cancel() {
this.dialog = false;
},
},
};
</script>
......@@ -578,24 +422,27 @@ export default {
}
}
.eltable {
// widows: 100%;
box-sizing: border-box;
box-sizing: border-box;
text-align: center;
width: 150%;
min-width: 150%;
// margin-right: 210px;
// box-sizing: border-box;
// text-align: center;
// width: 150%;
// min-width: 150%;
}
/deep/ .el-table .warning-row {
background: #f0ffff;
// color: #2785e6;
}
.elpagination {
text-align: right;
text-align: center;
margin-right: 100px;
}
/deep/ .el-dialog {
border-radius: 10px;
margin-top: 3vh !important;
margin-left: 3vw !important;
}
/deep/.el-table th.el-table__cell.is-leaf,
.el-table td.el-table__cell {
text-align: center;
}
/deep/ .el-dialog__wrapper {
position: absolute;
......@@ -621,10 +468,13 @@ export default {
}
/deep/.el-table {
width: 100%;
position: absolute;
// width: auto !important;
// max-width: none;
// width: 100%;
.el-table__header-wrapper table,
.el-table__body-wrapper table {
width: 100% !important;
// width: 100% !important;
}
.el-table__body,
.el-table__footer,
......@@ -642,6 +492,8 @@ export default {
.Btn {
width: 200px;
margin: 0 auto;
height: 30px;
line-height: 30px;
span {
display: inline-block;
width: 80px;
......@@ -664,15 +516,17 @@ export default {
color: #fff;
}
.zjBtn {
width: 200px;
width: 400px;
text-align: left;
vertical-align: middle;
span {
display: inline-block;
width: 80px;
width: 140px;
height: 25px;
line-height: 25px;
text-align: center;
border-radius: 5px;
vertical-align: middle;
}
span:last-of-type {
background-color: #4ca6a7;
......@@ -702,121 +556,176 @@ export default {
}
}
.midBtn {
margin: 0 auto;
margin: 20px auto;
// margin-top: 20px;
span {
display: inline-block;
width: 80px;
height: 25px;
line-height: 25px;
height: 29px;
line-height: 29px;
text-align: center;
margin-right: 10px;
border-radius: 5px;
box-sizing: border-box;
background-color: #4ca6a7;
color: #fff;
border: 1px solid #4ca6a7;
}
span:first-of-type {
border: 1px solid grey;
background-color: #fff;
color: grey;
}
span:last-of-type {
background-color: #4ca6a7;
color: #fff;
}
// span:last-of-type {
// background-color: #4ca6a7;
// color: #fff;
// border: 1px solid #4ca6a7;
// }
}
/deep/.el-table th.el-table__cell.is-leaf,
.el-table td.el-table__cell {
text-align: center;
}
/deep/ .el-table__cell {
text-align: center;
// color:#eeeeee;
}
.setscroll {
width: 100%;
height: 600px;
.setTable {
height: 500px;
overflow-y: auto;
overflow-x: scroll;
position: relative;
overflow: auto;
}
.dialog {
.title {
// height: 700px;
// overflow-y: auto;
// overflow-x: auto;
.xqtitle {
text-align: left;
font-size: 18px;
font-family: "PingFangSC-Regular", "PingFang SC", sans-serif;
font-weight: 400;
font-style: normal;
font-size: 16px;
color: #1ec695;
text-align: left;
height: 20px;
margin-top: 5px;
border-bottom: 1px solid gainsboro;
padding-bottom: 10px;
span {
border-radius: 2px;
display: inline-block;
width: 5px;
height: 18px;
background-color: #1ec695;
height: 20px;
background: #0d867f;
margin-right: 14px;
vertical-align: middle;
}
}
.content {
width: 100%;
display: flex;
/deep/ .el-form {
width: 65%;
flex-wrap: wrap;
p {
width: 24%;
text-align: left;
label {
display: inline-block;
width: 150px;
text-align: right;
font-weight: bold;
margin-right: 20px;
vertical-align: middle;
padding: 0 10px;
text-align: center;
margin: 100px auto;
border: none;
.fromItem {
text-align: center;
width: 51%;
margin: 0 auto;
margin-bottom: 20px;
.el-input {
width: 226px;
}
.el-select {
width: 226px;
}
}
.bottom{
width: 100%;
text-align: left;
}
}
.table {
width: 100%;
display: flex;
p {
width: 150px;
text-align: right;
font-weight: bold;
/deep/ .el-form-item__content {
text-align: left;
}
.tablepg {
margin-top: 20px;
margin-left: 5px;
/deep/ .el-form-item__label {
font-weight: 400;
// color: #000;
width: 160px !important;
}
}
}
.close{
width: 100%;
height: 40px;
line-height: 20px;
span{
display: inline-block;
width:80px;
height: 30px;
line-height: 30px;
border: 1px solid grey;
border-radius: 5px;
}
/deep/.el-table th.el-table__cell.is-leaf,
.el-table td.el-table__cell {
text-align: center;
}
/deep/ .el-dialog {
border-radius: 10px;
margin-top: 3vh !important;
margin-left: 3vw !important;
/deep/ .el-table__cell {
text-align: center;
}
/deep/ .el-table__header th{
// backcolor:#eeeeee;
background-color: #f5f5f5;
h3 {
text-align: left;
}
/deep/.el-switch__core {
height: 30px;
width: 79px !important;
border-radius: 20px;
}
/deep/.el-switch.is-checked .el-switch__core::after {
margin-left: -28px;
}
/deep/ .el-switch_label {
height: 30px;
line-height: 30px;
}
/deep/ .el-table thead.is-group th.el-table__cell{
background-color: #f5f5f5 !important;
/deep/.el-switch {
height: 30px;
line-height: 30px;
border-radius: 20px;
}
/deep/ .el-switch__label * {
font-size: 12px;
}
/deep/.el-switch__core:after {
width: 26px;
height: 26px;
}
// #eeeeee
/deep/.el-switch__label--left {
position: absolute;
left: 30px;
color: #fff;
z-index: -1111;
cursor: default;
user-select: none;
}
/deep/.el-switch__label--right {
position: absolute;
right: 30px;
color: #fff;
z-index: -1111;
cursor: default;
user-select: none;
}
/deep/.el-switch__label--right.is-active {
z-index: 1111;
color: grey !important;
height: 30px;
line-height: 30px;
}
/deep/.el-switch__label--left.is-active {
z-index: 1111;
color: #fff !important;
height: 30px;
line-height: 30px;
}
/deep/ .el-dialog__body {
padding-bottom: 15px;
}
.setscroll {
width: 100%;
height: 650px;
position: relative;
overflow: auto;
}
.dialog {
.eltable {
box-sizing: border-box;
text-align: center;
width: 100%;
min-width: 100%;
}
}
// ::-webkit-scrollbar {
// width: 6px; // 横向滚动条
// height: 6px; // 纵向滚动条必写
// }
</style>
\ No newline at end of file
......@@ -10,24 +10,34 @@
<el-form-item label="批次年度:" prop="batchYear" class="fromItem">
<el-select v-model="ruleForm.batchYear" placeholder="请选择" clearable>
<el-option
v-for="(item, index) in yearsList"
:key="index"
:label="item+'年'"
:value="item"/>
v-for="(item, index) in yearsList"
:key="index"
:label="item + '年'"
:value="item"
/>
</el-select>
</el-form-item>
<el-form-item label="后评估名称:" prop="batchName" class="fromItem">
<el-input v-model="ruleForm.batchName" placeholder="请输入" clearable ></el-input>
<el-form-item label="后评估批次名称:" prop="batchName" class="fromItem">
<el-input
v-model="ruleForm.batchName"
placeholder="请输入"
clearable
></el-input>
</el-form-item>
<el-form-item label="后评估状态:" prop="postEvalState" class="fromItem">
<el-select v-model="ruleForm.postEvalState" placeholder="请选择" clearable>
<el-option label="待提交" value="2"></el-option>
<el-option label="已撤回" value="4"></el-option>
<el-option label="已提交" value="3"></el-option>
<el-option label="待评估" value="1"></el-option>
<el-form-item label="后评估批次状态:" prop="batchState" class="fromItem">
<el-select v-model="ruleForm.batchState" placeholder="请选择" clearable>
<el-option label="执行中" value="3"></el-option>
<el-option label="已完成" value="5"></el-option>
</el-select>
</el-form-item>
<el-form-item label="项目编码:" prop="projectId" class="fromItem">
<el-input
v-model="ruleForm.projectId"
placeholder="请输入"
clearable
></el-input>
</el-form-item>
<el-form-item label="项目名称:" prop="projectName" class="fromItem">
<el-input
v-model="ruleForm.projectName"
......@@ -35,8 +45,47 @@
clearable
></el-input>
</el-form-item>
<el-form-item label="项目编码:" prop="projectId" class="fromItem">
<el-input v-model="ruleForm.projectId" placeholder="请输入" clearable></el-input>
<el-form-item label="项目年度:" prop="projectYear" class="fromItem">
<el-select
v-model="ruleForm.projectYear"
placeholder="请选择"
clearable
>
<el-option
v-for="(item, index) in yearsList"
:key="index"
:label="item + '年'"
:value="item"
/>
</el-select>
</el-form-item>
<el-form-item label="检查评估状态:" prop="postEvalState" class="fromItem">
<el-select
v-model="ruleForm.postEvalState"
placeholder="请选择"
clearable
>
<el-option label="待提交" value="2"></el-option>
<el-option label="已撤回" value="4"></el-option>
<el-option label="已提交" value="3"></el-option>
<el-option label="待评估" value="1"></el-option>
</el-select>
</el-form-item>
<el-form-item
label="实际评估日期:"
prop="lastUpdateTime"
class="fromItem"
>
<el-date-picker
@change="timeChange"
v-model="ruleForm.dates"
style="width: 240px"
value-format="yyyy-MM-dd"
type="daterange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
></el-date-picker>
</el-form-item>
<el-form-item class="button">
......@@ -47,8 +96,8 @@
<img class="buttonIcon" src="../../assets/cz.png" />重置</el-button
>
<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="inspectNexts()"
><i class="el-icon-tickets"></i> &nbsp;&nbsp;合规性检查评估</el-button
>
......@@ -61,46 +110,63 @@
</el-form-item>
</el-form>
<div class="setscroll">
<el-table
@selection-change="handleSelectionChange"
ref="multipleTable"
:data="tableData"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
:row-class-name="tableRowClassName"
border
>
<el-table-column label="序号" width="55" type="index"> </el-table-column>
<el-table-column type="selection"> </el-table-column>
<el-table-column label="批次年度" prop="batchYear"> <template slot-scope="scope">
{{scope.row.batchYear}}
</template></el-table-column>
<el-table-column prop="batchName" label="后评估批次名称">
</el-table-column>
<el-table-column prop="projectName" label="评估项目名称" show-overflow-tooltip>
</el-table-column>
<el-table-column prop="projectCategory" label="建设形式">
</el-table-column>
<!-- <el-table-column prop="projectStatus" label="项目建设阶段">
</el-table-column> -->
<!-- <el-table-column prop="createTime" label="历史审核状态">
</el-table-column> -->
<el-table-column prop="expertName" label="评审专家名单">
</el-table-column>
<el-table-column prop="postEvalState" label="检查评估状态">
</el-table-column>
<el-table-column prop="planReviewDate" label="评估日期"> </el-table-column>
</el-table>
</div>
<el-table
@selection-change="handleSelectionChange"
ref="multipleTable"
:data="tableData"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
:row-class-name="tableRowClassName"
border
>
<el-table-column label="序号" width="55" type="index">
</el-table-column>
<el-table-column type="selection"> </el-table-column>
<el-table-column label="批次年度" prop="batchYear" width="120">
<template slot-scope="scope">
{{ scope.row.batchYear }}
</template></el-table-column
>
<el-table-column prop="batchName" label="后评估批次名称">
</el-table-column>
<el-table-column prop="expertName" label="评审专家"> </el-table-column>
<el-table-column
prop="batchStateText"
label="后评估批次状态"
width="120"
>
</el-table-column>
<el-table-column prop="projectId" label="项目编码" width="120"> </el-table-column>
<el-table-column
prop="projectName"
label="项目名称"
show-overflow-tooltip
>
</el-table-column>
<el-table-column prop="projectYear" label="项目年度" width="120">
<template slot-scope="scope">
{{ scope.row.projectYear }}
</template>
</el-table-column>
<el-table-column prop="projectCategory" label="建设形式" width="120">
</el-table-column>
<el-table-column prop="postEvalState" label="检查评估状态 " width="120">
</el-table-column>
<el-table-column prop="reviewStatusText" label="项目审核状态" width="120">
</el-table-column>
<el-table-column prop="planReviewDate" label="计划评估日期">
</el-table-column>
<el-table-column prop="lastUpdateTime" label="实际评估日期">
</el-table-column>
</el-table>
</div>
<el-pagination
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="currentPage"
:page-sizes="[10, 15, 20, 50,100]"
:page-sizes="[10, 15, 20, 50, 100]"
:page-size="1000"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
......@@ -116,11 +182,11 @@ import {
chpostEvalQuesInfo,
qrscevaluationMaterials,
} from "@/api/index";
import { generateYearOptions } from "@/utils/cache";
import { generateYearOptions, projectCategoryText } from "@/utils/cache";
export default {
data() {
return {
yearsList:generateYearOptions(),
yearsList: generateYearOptions(),
showButton: true,
ruleForm: {
batchYear: "",
......@@ -128,6 +194,7 @@ export default {
postEvalState: "",
projectName: "",
projectId: "",
dates: [],
},
ruleFormdialog: {
batchYear: "",
......@@ -162,6 +229,16 @@ export default {
this.submitForm();
},
methods: {
timeChange(time) {
if (time) {
//给后端的参数
this.ruleForm.createStartTime = time[0];
this.ruleForm.createEndTime = time[1];
}else{
this.ruleForm.createStartTime = "";
this.ruleForm.createEndTime = "";
}
},
async submitForm() {
let params = {
current: this.currentPage,
......@@ -173,17 +250,36 @@ export default {
if (res.code == "200") {
this.tableData = res.data.records;
this.tableData.forEach(item=>{
if (item.postEvalState=='1'){
this.$set( item,'postEvalState','待评估')
}else if (item.postEvalState=='2'){
this.$set( item,'postEvalState','待提交')
}else if(item.postEvalState=='4'){
this.$set( item,'postEvalState','已撤回')
}else {
this.$set( item,'postEvalState','已提交')
this.tableData.forEach((item) => {
if (item.postEvalState == "1") {
this.$set(item, "postEvalState", "待评估");
} else if (item.postEvalState == "2") {
this.$set(item, "postEvalState", "待提交");
} else if (item.postEvalState == "4") {
this.$set(item, "postEvalState", "已撤回");
} else {
this.$set(item, "postEvalState", "已提交");
}
if (item.batchState == "3") {
this.$set(item, "batchStateText", "执行中");
} else if (item.batchState == "5") {
this.$set(item, "batchStateText", "已完成");
}
})
if (item.reviewStatus == "0") {
this.$set(item, "reviewStatusText", "无问题");
} else if (item.reviewStatus == "1") {
this.$set(item, "reviewStatusText", "需整改");
} else if (item.reviewStatus == "2") {
this.$set(item, "reviewStatusText", "已整改");
}else if (item.reviewStatus == "3") {
this.$set(item, "reviewStatusText", "已归档");
}
this.$set(
item,
"projectCategory",
projectCategoryText(item.projectCategory)
);
});
this.total = res.data.total * 1;
}
},
......@@ -191,6 +287,8 @@ export default {
this.$refs.formName.resetFields();
this.currentPage = 1;
this.pageSize = 10;
this.ruleForm.createStartTime = "";
this.ruleForm.createEndTime = "";
this.submitForm();
},
//合规性检查评估
......@@ -200,32 +298,32 @@ export default {
return;
}
let params = {
projectId:this.checkedList[0].projectId,
batchId:this.checkedList[0].batchId
projectId: this.checkedList[0].projectId,
batchId: this.checkedList[0].batchId,
};
this.$router.push({
path: "/mainLayout/Compliance",
query:{
"clqparams":JSON.stringify(params),
}
query: {
clqparams: JSON.stringify(params),
},
});
},
//详情
async detailsForm(){
async detailsForm() {
if (this.checkedList.length != 1) {
this.$message("请选择");
return;
}
let params = {
projectId:this.checkedList[0].projectId,
batchId:this.checkedList[0].batchId
projectId: this.checkedList[0].projectId,
batchId: this.checkedList[0].batchId,
};
this.$router.push({
path: "/mainLayout/Compliancefz",
query:{
"clqparams":JSON.stringify(params),
"ishow":false
}
query: {
clqparams: JSON.stringify(params),
ishow: false,
},
});
},
//提交问题清单
......@@ -236,50 +334,48 @@ export default {
}
// if(this.checkedList[0].postEvalState=='待评估'){
// this.$message("该项目还未评估");
// return;
// return;
// }
if(this.checkedList[0].postEvalState=='已提交'){
if (this.checkedList[0].postEvalState == "已提交") {
this.$message("该项目已提交");
return;
}
console.log("222");
// this.dialog = true;
let params = {
projectId:this.checkedList[0].projectId,
batchId:this.checkedList[0].batchId
projectId: this.checkedList[0].projectId,
batchId: this.checkedList[0].batchId,
};
this.$router.push({
path: "/mainLayout/Compliancefz",
query:{
"clqparams":JSON.stringify(params)
}
query: {
clqparams: JSON.stringify(params),
},
});
},
//撤销
async withdraw(){
if (this.checkedList.length != 1) {
async withdraw() {
if (this.checkedList.length != 1) {
this.$message("请选择");
return;
}
if(this.checkedList[0].postEvalState!='已提交'){
if (this.checkedList[0].postEvalState != "已提交") {
this.$message("该项目还未提交");
return;
}
console.log("222");
let params = {
current: this.currentPage,
pageSize: this.pageSize,
projectId:this.checkedList[0].projectId,
batchId:this.checkedList[0].batchId
projectId: this.checkedList[0].projectId,
batchId: this.checkedList[0].batchId,
};
let res =await chpostEvalQuesInfo(params)
if(res.code==200){
this.resetForm()
let res = await chpostEvalQuesInfo(params);
if (res.code == 200) {
this.resetForm();
}
},
//表格颜色
tableRowClassName({ row, rowIndex }) {
......@@ -301,12 +397,12 @@ export default {
handleSizeChange(val) {
console.log(`每页 ${val} 条`);
this.pageSize = val;
this.submitForm()
this.submitForm();
},
handleCurrentChange(val) {
console.log(`当前页: ${val}`);
this.currentPage = val;
this.submitForm()
this.submitForm();
},
cancel() {
this.dialog = false;
......@@ -344,7 +440,7 @@ export default {
border-right: 1px solid #dee5e7;
border-bottom: 1px solid #dee5e7;
padding: 20px 10px;
margin-bottom: 20px;
margin-bottom: 20px;
.fromItem {
min-width: 24%;
margin: 0 0.5%;
......@@ -396,7 +492,7 @@ export default {
// color: #2785e6;
}
.elpagination {
text-align: right;
text-align: center;
margin-right: 100px;
}
/deep/ .el-dialog {
......
......@@ -14,13 +14,27 @@
<el-form-item label="后评估批次名称:" prop="batchName" class="fromItem">
<el-input v-model="ruleForm.batchName" placeholder="请输入" clearable></el-input>
</el-form-item>
<!-- <el-form-item label="后评估状态:" prop="postEvalState" class="fromItem">
<el-select v-model="ruleForm.postEvalState" placeholder="请选择" clearable>
<el-form-item label="问题下发状态:" prop="reviewStatus" class="fromItem">
<el-select v-model="ruleForm.reviewStatus" placeholder="请选择" clearable>
<el-option label="未下发" value="0"></el-option>
<el-option label="已下发" value="1"></el-option>
<el-option label="已撤回" value="2"></el-option>
</el-select>
</el-form-item> -->
</el-form-item>
<el-form-item label="评估项目名称:" prop="projectName" class="fromItem">
<el-input
v-model="ruleForm.projectName"
placeholder="请输入"
clearable
></el-input>
</el-form-item>
<el-form-item label="项目编码:" prop="projectId" class="fromItem">
<el-input
v-model="ruleForm.projectId"
placeholder="请输入"
clearable
></el-input>
</el-form-item>
<el-form-item class="button">
<el-button @click="submitForm()">
<img class="buttonIcon" src="../../assets/cx.png" />查询</el-button
......@@ -144,7 +158,7 @@
import {
fzcxpostSelect
} from "@/api/index";
import { generateYearOptions } from "@/utils/cache";
import { generateYearOptions, projectCategoryText} from "@/utils/cache";
export default {
data() {
return {
......@@ -205,6 +219,7 @@ export default {
} else {
this.$set(item, "postEvalState", "未下发");
}
this.$set(item, "projectCategory",projectCategoryText(item.projectCategory));
});
this.total = res.data.total * 1;
}
......
......@@ -24,17 +24,35 @@
clearable
></el-input>
</el-form-item>
<el-form-item label="后评估状态:" prop="postEvalState" class="fromItem">
<el-form-item
label="后评估批次状态:"
prop="postEvalState"
class="fromItem"
>
<el-select
v-model="ruleForm.postEvalState"
placeholder="请选择"
clearable
>
<el-option label="未下发" value="0"></el-option>
<el-option label="已下发" value="1"></el-option>
<el-option label="未发起" value="0"></el-option>
<el-option label="已发起" value="1"></el-option>
<el-option label="已撤回" value="2"></el-option>
<el-option label="执行中" value="3"></el-option>
<el-option label="已完成" value="5"></el-option>
</el-select>
</el-form-item>
<el-form-item label="创建时间:" prop="batchName" class="fromItem">
<el-date-picker
@change="timeChange"
v-model="ruleForm.dates"
style="width: 240px"
value-format="yyyy-MM-dd"
type="daterange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
></el-date-picker>
</el-form-item>
<el-form-item class="button">
<el-button @click="submitForm()">
<img class="buttonIcon" src="../../assets/cx.png" />查询</el-button
......@@ -67,7 +85,7 @@
@selection-change="handleSelectionChange"
ref="multipleTable"
:data="tableData"
tooltip-effect="dark myTooltips"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
......@@ -77,28 +95,30 @@
<el-table-column label="序号" width="55" type="index">
</el-table-column>
<el-table-column type="selection"> </el-table-column>
<el-table-column label="批次年度" width="auto" prop="batchYear">
<el-table-column label="批次年度" width="120" prop="batchYear">
<template slot-scope="scope"> {{ scope.row.batchYear }}</template>
</el-table-column>
<el-table-column prop="batchName" label="后评估批次名称" width="auto">
</el-table-column>
<el-table-column prop="expertName" label="后评估专家" width="auto">
</el-table-column>
<el-table-column
prop="planReviewDate"
label="计划评估日期"
width="auto"
>
</el-table-column>
<el-table-column prop="expertName" label="后评估专家" width="auto">
</el-table-column>
<el-table-column
prop="postEvalStateText"
label="批次下发状态"
width="auto"
label="后评估批次状态"
width="120"
>
</el-table-column>
<!-- <el-table-column prop="postEvalState" label="后评估状态" width="auto">
</el-table-column> -->
<el-table-column prop="creator" label="创建人" width="auto">
<el-table-column prop="creator" label="创建人" width="120">
</el-table-column>
<el-table-column prop="createTime" label="创建时间" width="auto">
</el-table-column>
......@@ -108,7 +128,7 @@
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="currentPage"
:page-sizes="[10, 15, 20, 50,100]"
:page-sizes="[10, 15, 20, 50, 100]"
:page-size="1000"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
......@@ -168,7 +188,7 @@
<el-table
@selection-change="handleSelectionChange"
:data="XQtableData"
tooltip-effect="dark myTooltips"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
......@@ -296,7 +316,7 @@
addcurrentPage * pageSizeAdd
)
"
tooltip-effect="dark myTooltips"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
......@@ -398,7 +418,7 @@
@selection-change="handleSelectionChangeZJ"
ref="multipleTableZJ"
:data="zjtableData"
tooltip-effect="dark myTooltips"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
......@@ -532,7 +552,7 @@
<el-table
@selection-change="handleSelectionChange"
:data="addtableData"
tooltip-effect="dark myTooltips"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
......@@ -602,6 +622,7 @@ import { generateYearOptions } from "@/utils/cache";
export default {
data() {
return {
value1: "",
yearsList: generateYearOptions(),
totalXQ: 0,
XQtableData: [],
......@@ -611,6 +632,7 @@ export default {
batchYear: "",
batchName: "",
postEvalState: "",
dates: [],
},
ruleFormdialog: {
batchYear: "",
......@@ -695,11 +717,21 @@ export default {
};
},
mounted() {
console.log(getCurrentDate(), "222222");
this.submitForm();
},
methods: {
timeChange(time) {
console.log('tttttt',time)
if (time) {
//给后端的参数
this.ruleForm.createStartTime = time[0];
this.ruleForm.createEndTime = time[1];
}else{
this.ruleForm.createStartTime = "";
this.ruleForm.createEndTime = "";
}
},
async submitForm() {
let params = {
current: this.currentPage,
......@@ -714,13 +746,17 @@ export default {
this.tableData = res.data.records;
this.tableData.forEach((item) => {
if (item.postEvalState == "" || item.postEvalState == null) {
this.$set(item, "postEvalStateText", "未下发");
this.$set(item, "postEvalStateText", "未发起");
} else if (item.postEvalState == "0") {
this.$set(item, "postEvalStateText", "未下发");
this.$set(item, "postEvalStateText", "未发起");
} else if (item.postEvalState == "2") {
this.$set(item, "postEvalStateText", "已撤回");
} else {
this.$set(item, "postEvalStateText", "已下发");
} else if (item.postEvalState == "1") {
this.$set(item, "postEvalStateText", "已发起");
} else if (item.postEvalState == "3"||item.postEvalState == "4") {
this.$set(item, "postEvalStateText", "执行中");
} else if (item.postEvalState == "5") {
this.$set(item, "postEvalStateText", "已完成");
}
});
this.total = res.data.total * 1;
......@@ -730,6 +766,8 @@ export default {
this.$refs.formName.resetFields();
this.currentPage = 1;
this.pageSize = 10;
this.ruleForm.createStartTime = "";
this.ruleForm.createEndTime = "";
this.submitForm();
},
//点击新增
......@@ -952,13 +990,13 @@ export default {
},
//点击编辑
async edit() {
//只能选择编辑未下发 待增加
//只能选择编辑未发起 待增加
if (this.checkedList.length != 1) {
this.$message("请选择");
return;
}
if (this.checkedList[0].postEvalStateText == "已下发") {
this.$message("不能编辑已下发的项目");
if (this.checkedList[0].postEvalStateText == "已发起") {
this.$message("不能编辑已发起的项目");
return;
}
this.addtableData = [];
......@@ -1015,13 +1053,13 @@ export default {
},
//点击下发
async sendMsg() {
//只能选择未下发的 这块需要加一下
//只能选择未发起的 这块需要加一下
if (this.checkedList.length != 1) {
this.$message("请选择");
return;
}
if (this.checkedList[0].postEvalStateText == "已下发") {
this.$message("该项目已下发");
if (this.checkedList[0].postEvalStateText == "已发起") {
this.$message("该项目已发起");
return;
}
let res = await sendEvalBatchInfo(this.checkedList[0]);
......@@ -1040,13 +1078,13 @@ export default {
},
//点击撤回
async withdraw() {
//只能选择已下发未确认的 这块需要加一下
//只能选择已发起未确认的 这块需要加一下
if (this.checkedList.length != 1) {
this.$message("请选择");
return;
}
if (this.checkedList[0].postEvalStateText == "未下发") {
this.$message("该项目未下发");
if (this.checkedList[0].postEvalStateText == "未发起") {
this.$message("该项目未发起");
return;
}
if (this.checkedList[0].postEvalStateText == "已撤回") {
......@@ -1128,7 +1166,7 @@ export default {
// color: #2785e6;
}
.elpagination {
text-align: right;
text-align: center;
margin-right: 100px;
}
/deep/ .el-dialog {
......
......@@ -25,10 +25,21 @@
>
<!-- <p style="height:600px"> {{ item.typeText }}</p> -->
<iframe
v-if="blobType=='pdf'"
:src="iframeUrl"
frameborder="0"
style="width: 80%; height: 60vh; margin: auto; display: block"
></iframe>
<div v-else-if="blobType=='png'||blobType=='jpg'" class="blobImg">
<img :src="iframeUrl" alt="">
</div>
<div class="docDiv" v-else-if="blobType=='docx'">
<div ref="word" id="preview" >
</div>
</div>
</el-tab-pane>
</el-tabs>
</div>
......@@ -68,19 +79,22 @@
type="textarea"
:autosize="{ minRows: 1, maxRows: 4 }"
v-model="itemfz.checkDesc"
>
</el-input
><el-button @click="adopt(item, index, itemfz)" type="primary"
:disabled="itemfz.type=='1'">采纳</el-button
><el-button
@click="adopt(item, index, itemfz)"
type="primary"
v-if="itemfz.type != '1'"
>采纳</el-button
>
<el-button type="info" v-else>采纳</el-button>
</div>
</div>
<div class="question">
<p class="tips">问题描述:</p>
<div
v-for="(items, index) in item.evalList"
:key="items.ideval"
:key="index"
class="inputDiv"
>
<el-input
......@@ -201,7 +215,6 @@ export default {
fileList: [],
evalList: [
{
ideval: "",
evalQues: "",
hideUploadEdit: false,
},
......@@ -228,6 +241,7 @@ export default {
limitNum: 1,
disabled: false,
oldQuestionList: [], //对比列表
blobType:'pdf',//bolb类型
};
},
mounted() {
......@@ -302,22 +316,30 @@ export default {
async init(type) {
let params = {
projectStage: this.active * 1 + 1,
hgx:"hgx",
...type,
};
Promise.all([selFile(params), selWtqdFZ(params)]).then(async (res) => {
console.log(res[0], res[1], "777777");
this.urlList = res[0].data;
if (res[1].data) {
this.questionList = res[1].data.records;
let counterNum = 0;
this.questionList.forEach(async (item) => {
if (item.isProblem == 0) {
console.log("未发现问题");
this.$set(item, "checked", true);
this.changeChecked(item);
}
let respon = await selWtmx({ qid: item.qid });
let paramsFX = {
batchId: this.clqparams.batchId,
projectId: this.clqparams.projectId,
projectStage: item.questionId,
};
let responfx = await selZnfx(paramsFX);
counterNum++
if (respon.data.records && respon.data.records.length > 0) {
respon.data.records.forEach(async (itemImg) => {
if (itemImg.url) {
......@@ -326,9 +348,6 @@ export default {
url: itemImg.url,
};
let resUrl = await presignedUrl(paramsImg);
// itemImg.fileList=[{
// url:resUrl.msg
// }]
this.$set(itemImg, "fileList", [
{
url: resUrl.msg,
......@@ -339,23 +358,17 @@ export default {
itemImg.hideUploadEdit = false;
}
});
this.$set(item, "evalList", [...respon.data.records]);
console.log(item, "itemitemitem");
} else {
this.$set(item, "evalList", [
{
ideval: "",
evalQues: "",
hideUploadEdit: false,
},
]);
}
if (item.isProblem == 0) {
console.log("未发现问题");
this.$set(item, "checked", true);
this.changeChecked(item);
}
if (responfx.data.records && responfx.data.records.length > 0) {
let znfxList = responfx.data.records.filter((item) => {
if (item.checkDesc) {
......@@ -372,35 +385,69 @@ export default {
this.$set(item, "znfxList", []);
this.$set(item, "fzfxList", []);
}
this.$set(item, "Id", 0);
});
if(counterNum==this.questionList.length){
setTimeout(() => {
this.oldQuestionList = JSON.parse(JSON.stringify(this.questionList));
console.log(this.questionList, this.oldQuestionList, "总列表");
}, 300);
}
})
}
if (this.urlList.length <= 0) {
this.iframeUrl = "/nopdf.png";
return;
}
let paramsUrl = {
fileId: this.urlList[0].id,
url: this.urlList[0].url,
};
} else {
// let paramsUrl = {
// fileId: this.urlList[0].id,
// url: this.urlList[0].url,
// };
let resUrl = await presignedUrl(paramsUrl);
// let resUrl = await presignedUrl(paramsUrl);
// this.iframeUrl = "/pdf/web/viewer.html?file=" + resUrl.msg;
this.iframeUrl = resUrl.msg;
console.log(this.questionList, "总列表");
this.oldQuestionList = JSON.parse(JSON.stringify(this.questionList));
let resUrl = await downloadObject({fileId: this.urlList[0].id});
this.blobType=this.urlList[0].fileType
const binaryData = []
binaryData.push(resUrl)
let URL = window.URL.createObjectURL(new Blob(binaryData, { type: this.urlList[0].contentType}))
this.iframeUrl = URL
if(this.blobType=='docx'){
let docx = require("docx-preview");
window.JSZip = require("jszip");
this.$nextTick(()=>{
docx.renderAsync(resUrl,document.getElementById("preview")) // 渲染到页面预览
})
}
}
// setTimeout(() => {
// this.oldQuestionList = JSON.parse(JSON.stringify(this.questionList));
// console.log(this.questionList, this.oldQuestionList, "总列表");
// }, 1000);
});
},
async handleClick(tab) {
console.log("切换", tab.name, this.urlList);
this.urlList.forEach(async (item) => {
if (item.typeCode == tab.name) {
let paramsUrl = {
fileId: item.id,
url: item.url,
};
let resUrl = await presignedUrl(paramsUrl);
this.iframeUrl = resUrl.msg;
// let paramsUrl = {
// fileId: item.id,
// url: item.url,
// };
// let resUrl = await presignedUrl(paramsUrl);
let resUrl = await downloadObject({fileId:item.id});
this.blobType=item.fileType
console.log(item.fileType,'item.fileType')
const binaryData = []
binaryData.push(resUrl)
let URL = window.URL.createObjectURL(new Blob(binaryData, { type:item.contentType}))
this.iframeUrl = URL;
if(this.blobType=='docx'){
let docx = require("docx-preview");
window.JSZip = require("jszip");
this.$nextTick(()=>{
docx.renderAsync(resUrl,document.getElementById("preview")) // 渲染到页面预览
})
}
} else {
// this.iframeUrl =""
this.iframeUrl = "/nopdf.png";
......@@ -409,6 +456,22 @@ export default {
console.log(this.iframeUrl, "this.iframeUrl");
},
change(id) {
console.log(this.questionList, this.oldQuestionList, "相同么");
console.log(
JSON.stringify(this.questionList) ==
JSON.stringify(this.oldQuestionList),
"完全相同么"
);
if (
JSON.stringify(this.questionList) ==
JSON.stringify(this.oldQuestionList)
) {
this.active = id * 1;
this.tabListKY = MaterialsListKY(id * 1 + 1);
this.init(this.clqparams);
return;
}
this.$confirm("是否保存?", "提示", {
confirmButtonText: "是",
cancelButtonText: "否",
......@@ -455,7 +518,6 @@ export default {
// })
} else {
item.evalList.push({
ideval: "id" + item.Id++,
evalQues: items.checkDesc,
hideUploadEdit: false,
});
......@@ -468,11 +530,9 @@ export default {
}
console.log(item, "22");
item.evalList.push({
ideval: "id" + item.Id++,
data: "",
evalQues: "",
});
console.log(item.evalList, "item.evalList");
},
changeChecked(item) {
console.log(item, "2222");
......@@ -505,7 +565,7 @@ export default {
item.evalList.forEach((childItem) => {
evals = evals.concat(childItem.evalQues + ",");
});
evals=evals.slice(0, -1)
evals = evals.slice(0, -1);
item.evalQues = evals;
});
console.log(this.questionList, "questionList");
......@@ -544,7 +604,6 @@ export default {
// list.fileId= response.data.fileId
this.$set(list, "url", response.data.downLoadUrl);
this.$set(list, "fileId", response.data.fileId);
console.log(this.questionList, "总列表");
this.$message("上传成功");
} else {
this.$message("上传失败");
......@@ -562,6 +621,35 @@ export default {
// console.log("来了么222222", this.fileList);
// },
},
beforeRouteLeave(to,from,next){
if(JSON.stringify(this.questionList) ==JSON.stringify(this.oldQuestionList)){
console.log('相同么')
next({replace: true,redirect: '/mainLayout/auxiliaryInspection'})
}else{
console.log('不同么')
setTimeout(() => {
this.$confirm("是否保存?", "提示", {
confirmButtonText: "是",
cancelButtonText: "否",
distinguishCancelAndClose: true,
type: "warning",
}).then(() => {
this.save('leave');
next({replace: true,redirect: '/mainLayout/auxiliaryInspection'})
})
.catch((action) => {
console.log(action, "actionaction");
if (action === "cancel") {
next({replace: true,redirect: '/mainLayout/auxiliaryInspection'})
} else {
// next()
}
});
},16)
}
}
};
</script>
......@@ -774,4 +862,15 @@ export default {
margin-left: 10px;
border: none;
}
.blobImg{
width: 100%;
img{
width: 100%;
}
}
.docDiv{
width: 100%;
height:600px;
overflow-y: auto;
}
</style>
\ No newline at end of file
......@@ -32,10 +32,10 @@
width="auto"
>
</el-table-column>
<el-table-column label="评估问题" width="auto">
<template slot-scope="scope">
<el-table-column label="评估问题" width="auto" prop="evalQues" >
<!-- <template slot-scope="scope">
<el-input v-model="scope.row.evalQues" :disabled="ishow"></el-input>
</template>
</template> -->
</el-table-column>
<el-table-column label="问题截图" width="auto">
<template slot-scope="scope">
......@@ -65,6 +65,7 @@ import {
tjpostEvalQuesInfo,
presignedUrl,
} from "@/api/index";
import { getCurrentDate } from "@/utils/format";
export default {
data() {
return {
......@@ -186,12 +187,15 @@ export default {
handleImageClick() {},
//保存
async save(type) {
console.log(this.clqparams, "this.clqparams");
let params = {
projectId: this.clqparams.projectId,
batchId: this.clqparams.batchId,
list: this.tableData,
lastUpdateTime: getCurrentDate(),
};
console.log(params, "this.clqparams");
// return
if (type == "add") {
console.log(params, "this.zjtableDatathis.zjtableData");
......@@ -307,7 +311,7 @@ export default {
// color: #2785e6;
}
.elpagination {
text-align: right;
text-align: center;
margin-right: 100px;
}
/deep/.el-table {
......
......@@ -16,17 +16,18 @@
:value="item"/>
</el-select>
</el-form-item>
<el-form-item label="后评估名称:" prop="batchName" class="fromItem">
<el-form-item label="后评估批次名称:" prop="batchName" class="fromItem">
<el-input v-model="ruleForm.batchName" placeholder="请输入" clearable></el-input>
</el-form-item>
<el-form-item label="评估状态:" prop="postEvalState" class="fromItem">
<el-form-item label="检查评估状态:" prop="postEvalState" class="fromItem">
<el-select v-model="ruleForm.postEvalState" placeholder="请选择" clearable>
<el-option label="待确认" value="3"></el-option>
<el-option label="确认需整改" value="5"></el-option>
<el-option label="确认无需整改" value="6"></el-option>
</el-select>
</el-form-item>
<el-form-item label="项目名称:" prop="projectName" class="fromItem">
<el-form-item label="评估项目名称:" prop="projectName" class="fromItem">
<el-input
v-model="ruleForm.projectName"
placeholder="请输入"
......@@ -187,7 +188,7 @@
clqdevaluationMaterials,
qrscevaluationMaterials,
} from "@/api/index";
import { generateYearOptions } from "@/utils/cache";
import { generateYearOptions,projectCategoryText} from "@/utils/cache";
export default {
data() {
return {
......@@ -251,6 +252,7 @@ export default {
}else{
this.$set( item,'postEvalState','待确认')
}
this.$set(item, "projectCategory",projectCategoryText(item.projectCategory));
})
this.total = res.data.total * 1;
}
......
......@@ -24,25 +24,42 @@
clearable
></el-input>
</el-form-item>
<el-form-item label="后评估状态:" prop="postEvalState" class="fromItem">
<el-form-item
label="后评估批次状态:"
prop="postEvalState"
class="fromItem"
>
<el-select
v-model="ruleForm.postEvalState"
placeholder="请选择"
clearable
>
<el-option label="已确认" value="3"></el-option>
<el-option label="未确认" value="1"></el-option>
<el-option label="执行中" value="3"></el-option>
<el-option label="已发起" value="1"></el-option>
<el-option label="已撤回" value="4"></el-option>
<el-option label="已完成" value="5"></el-option>
</el-select>
</el-form-item>
<el-form-item label="创建时间:" prop="batchName" class="fromItem">
<el-date-picker
@change="timeChange"
v-model="ruleForm.dates"
style="width: 240px"
value-format="yyyy-MM-dd"
type="daterange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
></el-date-picker>
</el-form-item>
<el-form-item class="button">
<el-button @click="submitForm()">
<img class="buttonIcon" src="../../assets/cx.png" />查询</el-button
>
<el-button @click="resetForm('ruleForm')">
<el-button @click="resetForm()">
<img class="buttonIcon" src="../../assets/cz.png" />重置</el-button
>
<el-button @click="detailsForm('ruleForm')">
<el-button @click="detailsForm()">
<img class="buttonIcon" src="../../assets/ck.png" />详情</el-button
>
<el-button @click="configs()"
......@@ -58,7 +75,7 @@
@selection-change="handleSelectionChange"
ref="multipleTable"
:data="tableData"
tooltip-effect="dark myTooltips"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
......@@ -68,30 +85,40 @@
<el-table-column label="序号" width="55" type="index">
</el-table-column>
<el-table-column type="selection"> </el-table-column>
<el-table-column label="批次年度" prop="batchYear">
<template slot-scope="scope">
{{ scope.row.batchYear }}
</template></el-table-column
>
<el-table-column label="批次年度" prop="batchYear" width="120">
<template slot-scope="scope"> {{ scope.row.batchYear }}</template>
</el-table-column>
<el-table-column prop="batchName" label="后评估批次名称">
</el-table-column>
<el-table-column prop="expertName" label="评审专家" width="auto">
</el-table-column>
<el-table-column
prop="projectName"
label="待评估项目"
width="auto"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop="planReviewDate"
label="计划评估日期"
width="auto"
>
</el-table-column>
<el-table-column prop="expertName" label="评审专家" width="auto">
</el-table-column>
<el-table-column
prop="postEvalStateText"
label="批次确认状态"
width="auto"
label="后评估批次状态"
width="120"
>
</el-table-column>
<el-table-column prop="batchName" label="评估项目" width="auto">
<el-table-column prop="creator" label="创建人" width="120" >
</el-table-column>
<el-table-column prop="createTime" label="创建时间" width="auto">
</el-table-column>
<!-- <el-table-column prop="batchName" label="评估项目" width="auto">
</el-table-column> -->
<!-- <el-table-column prop="prjsOfExpert" label="已选择数量" width="auto">
</el-table-column> -->
</el-table>
......@@ -100,8 +127,8 @@
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="currentPage"
:page-sizes="[10, 15, 20, 50,100]"
:page-size="1000"
:page-sizes="[10, 15, 20, 50, 100]"
:page-size="10"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
class="elpagination"
......@@ -109,7 +136,7 @@
</el-pagination>
<!-- 详情弹窗 -->
<el-dialog
title="提交评估材料"
title="详情"
:visible.sync="dialogXQ"
width="90%"
:modal-append-to-body="false"
......@@ -143,11 +170,6 @@
disabled
></el-input>
</el-form-item>
<!-- <el-form-item label="每位专家可评估项目数:" prop="prjsOfExpert" class="fromItem">
<el-input
v-model="ruleFormdialogBJ.prjsOfExpert" disabled
></el-input>
</el-form-item> -->
<el-form-item label="工作组织情况:" class="textarea">
<el-input
type="textarea"
......@@ -162,27 +184,22 @@
<el-table
@selection-change="handleSelectionChange"
:data="addtableData"
tooltip-effect="dark myTooltips"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
:row-class-name="tableRowClassName"
border
>
<el-table-column type="selection"> </el-table-column>
<el-table-column label="序号" width="55" type="index">
</el-table-column>
<el-table-column label="项目编码" width="auto" prop="projectId">
<el-table-column prop="department" label="部门" width="150">
</el-table-column>
<el-table-column
prop="projectYear"
label="项目年度"
width="auto"
>
<template slot-scope="scope">
{{ scope.row.projectYear }}
</template>
<el-table-column label="项目编码" width="150" prop="projectId">
</el-table-column>
<el-table-column
prop="projectName"
label="项目名称"
......@@ -193,25 +210,45 @@
<el-table-column
prop="projectCategory"
label="建设形式"
width="auto"
width="100"
>
</el-table-column>
<!-- <el-table-column
prop="projectStatus"
label="项目建设阶段"
width="auto"
<el-table-column prop="projectYear" label="项目年度" width="100">
<template slot-scope="scope">
{{ scope.row.projectYear }}
</template>
</el-table-column>
<el-table-column label="总投资计划(万元)" width="200">
<el-table-column
prop="costAmountTotal"
label="成本金"
width="100"
>
</el-table-column>
<el-table-column
prop="capitalAmountTotal"
label="资本金"
width="100"
>
</el-table-column>
</el-table-column>
<el-table-column prop="department" label="承建单位" width="150">
</el-table-column>
<el-table-column prop="personCharge" label="负责人" width="110">
</el-table-column>
<el-table-column
prop="projectInfo"
label="项目内容"
show-overflow-tooltip
>
</el-table-column> -->
<!-- <el-table-column prop="哪个字段" label="历史核查状态" width="auto">
</el-table-column> -->
<el-table-column prop="department" label="部门" width="auto">
</el-table-column>
</el-table>
</div>
<el-pagination
@size-change="handleSizeChangeAdd"
@current-change="handleCurrentChangeAdd"
:current-page="addcurrentPage"
@size-change="handleSizeChangXQ"
@current-change="handleCurrentChangeXQ"
:current-page="currentPageXQ"
:page-sizes="[5, 10, 20, 50]"
:page-size="1000"
layout="total, sizes, prev, pager, next, jumper"
......@@ -256,18 +293,7 @@
disabled
></el-input>
</el-form-item>
<!-- <el-form-item label="每位专家可评估项目数:" prop="prjsOfExpert" class="fromItem">
<el-select
v-model="ruleFormdialogBJ.prjsOfExpert"
placeholder="请选择"
clearable
>
<el-option label="100" value="100"></el-option>
<el-option label="200" value="200"></el-option>
<el-option label="300" value="300"></el-option>
<el-option label="不限" value="不限"></el-option>
</el-select>
</el-form-item> -->
<el-form-item label="工作组织情况:" class="textarea">
<el-input
type="textarea"
......@@ -283,28 +309,28 @@
<div class="setscrolldialog">
<el-table
@selection-change="handleSelectionChange"
:data="addtableData"
tooltip-effect="dark myTooltips"
:data="
addtableData.slice(
(addcurrentPage - 1) * pageSizeAdd,
addcurrentPage * pageSizeAdd
)
"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
:row-class-name="tableRowClassName"
border
>
<el-table-column type="selection"> </el-table-column>
<el-table-column label="序号" width="55" type="index">
</el-table-column>
<el-table-column prop="department" label="部门" width="150">
</el-table-column>
<el-table-column label="项目编码" width="auto" prop="projectId">
<el-table-column label="项目编码" width="150" prop="projectId">
</el-table-column>
<el-table-column
prop="projectYear"
label="项目年度"
width="auto"
>
<template slot-scope="scope">
{{ scope.row.projectYear }}
</template></el-table-column
>
<el-table-column
prop="projectName"
label="项目名称"
......@@ -315,19 +341,40 @@
<el-table-column
prop="projectCategory"
label="建设形式"
width="auto"
width="100"
>
</el-table-column>
<!-- <el-table-column
prop="projectStatus"
label="项目建设阶段"
width="auto"
<el-table-column prop="projectYear" label="项目年度" width="100">
<template slot-scope="scope">
{{ scope.row.projectYear }}
</template>
</el-table-column>
<el-table-column label="总投资计划(万元)" width="200">
<el-table-column
prop="costAmountTotal"
label="成本金"
width="100"
>
</el-table-column>
<el-table-column
prop="capitalAmountTotal"
label="资本金"
width="100"
>
</el-table-column>
</el-table-column>
<el-table-column prop="department" label="承建单位" width="150">
</el-table-column>
<el-table-column prop="personCharge" label="负责人" width="110">
</el-table-column>
<el-table-column
prop="projectInfo"
label="项目内容"
show-overflow-tooltip
>
</el-table-column> -->
<!-- <el-table-column prop="哪个字段" label="历史核查状态" width="auto">
</el-table-column> -->
<el-table-column prop="department" label="部门" width="auto">
</el-table-column>
<el-table-column label="操作" width="130">
<template slot-scope="scope">
<el-button
......@@ -367,11 +414,7 @@
>
<div class="adzjdialog">
<el-form :model="ruleFormZJ" label-width="100px" class="demo-ruleForm">
<el-form-item
label="项目年度:"
prop="projectYear"
class="fromItem"
>
<el-form-item label="项目年度:" prop="projectYear" class="fromItem">
<el-select
v-model="ruleFormZJ.projectYear"
placeholder="请选择"
......@@ -455,7 +498,7 @@
@selection-change="handleSelectionChangeZJ"
ref="multipleTableZJ"
:data="zjtableData"
tooltip-effect="dark myTooltips"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
......@@ -465,18 +508,12 @@
<el-table-column type="selection"> </el-table-column>
<el-table-column label="序号" width="55" type="index">
</el-table-column>
<el-table-column label="项目编码" width="200" prop="projectId">
<el-table-column prop="department" label="部门" width="150">
</el-table-column>
<el-table-column
prop="projectYear"
label="项目年度"
width="200"
>
<template slot-scope="scope">
{{ scope.row.projectYear }}
</template>
<el-table-column label="项目编码" width="150" prop="projectId">
</el-table-column>
<el-table-column
prop="projectName"
label="项目名称"
......@@ -487,59 +524,32 @@
<el-table-column
prop="projectCategory"
label="建设形式"
width="200"
width="100"
>
</el-table-column>
<!-- <el-table-column
prop="projectStatus"
label="项目建设阶段"
width="200"
>
</el-table-column> -->
<!-- <el-table-column prop="字段待确认" label="历史核查状态" width="200">
</el-table-column>
<el-table-column prop="字段待确认" label="是否处于正在执行批次" width="200">
</el-table-column> -->
<!-- <el-table-column prop="字段待确认" label="计划文号" width="300">
<el-table-column prop="expertLevel" label="省公司" width="auto">
</el-table-column>
<el-table-column prop="expertLevel" label="信通公司" width="auto">
</el-table-column>
</el-table-column> -->
<el-table-column label="总投资计划(万元)" width="300">
<el-table-column
prop=" costAmountTotal"
label="成本金"
width="auto"
>
</el-table-column>
<el-table-column
prop="capitalAmountTotal"
label="资本金"
width="auto"
>
</el-table-column>
<el-table-column prop="projectYear" label="项目年度" width="100">
<template slot-scope="scope">
{{ scope.row.projectYear }}
</template>
</el-table-column>
<el-table-column label="当年投资计划(万元)" width="300">
<el-table-column label="总投资计划(万元)" width="200">
<el-table-column
prop="costAmountCurrentMfdel"
prop="costAmountTotal"
label="成本金"
width="auto"
width="100"
>
</el-table-column>
<el-table-column
prop="capitalAmountCurrentMfdel"
prop="capitalAmountTotal"
label="资本金"
width="200"
width="100"
>
</el-table-column>
</el-table-column>
<el-table-column prop="department" label="部门" width="200">
<el-table-column prop="department" label="承建单位" width="150">
</el-table-column>
<el-table-column prop="department" label="承建单位" width="200">
</el-table-column>
<el-table-column prop="personCharge" label="负责人" width="200">
<el-table-column prop="personCharge" label="负责人" width="110">
</el-table-column>
<el-table-column
prop="projectInfo"
......@@ -547,10 +557,6 @@
show-overflow-tooltip
>
</el-table-column>
<el-table-column prop="inputuser" label="创建人" width="200">
</el-table-column>
<el-table-column prop="inputtime" label="创建时间" width="200">
</el-table-column>
</el-table>
</div>
......@@ -584,7 +590,7 @@ import {
getProjectInfo,
chProjectInfo,
} from "@/api/index";
import { generateYearOptions } from "@/utils/cache";
import { generateYearOptions, projectCategoryText } from "@/utils/cache";
export default {
data() {
return {
......@@ -594,6 +600,7 @@ export default {
batchYear: "",
batchName: "",
postEvalState: "",
dates: [],
},
ruleFormdialog: {
batchYear: "",
......@@ -620,16 +627,6 @@ export default {
prjsOfExpert: "",
description: "",
},
// rules: {
// prjsOfExpert: [
// {
// required: true,
// message: "请选择每位专家可评估项目数",
// trigger: "change",
// },
// ]
// },
tableData: [],
tableDataQD: [], //清单列表
checkedList: [],
......@@ -644,6 +641,8 @@ export default {
pageSize: 10,
current: 1,
pageSizeZJ: 5,
pageSizeXQ: 5,
currentPageXQ: 1,
currentZJ: 1,
addtotal: 0,
currentAdd: 1,
......@@ -676,12 +675,21 @@ export default {
},
},
mounted() {
console.log("author");
// this.submitForm();
},
methods: {
timeChange(time) {
console.log('tttttt',time)
if (time) {
//给后端的参数
this.ruleForm.createStartTime = time[0];
this.ruleForm.createEndTime = time[1];
}else{
this.ruleForm.createStartTime = "";
this.ruleForm.createEndTime = "";
}
},
async submitForm() {
console.log("来了几次");
let params = {
current: this.currentPage,
pageSize: this.pageSize,
......@@ -693,11 +701,13 @@ export default {
this.tableData = res.data.records;
this.tableData.forEach((item) => {
if (item.postEvalState == "3") {
this.$set(item, "postEvalStateText", "已确认");
this.$set(item, "postEvalStateText", "执行中");
} else if (item.postEvalState == "4") {
this.$set(item, "postEvalStateText", "已撤回");
} else if (item.postEvalState == "5") {
this.$set(item, "postEvalStateText", "已完成");
} else {
this.$set(item, "postEvalStateText", "未确认");
this.$set(item, "postEvalStateText", "已发起");
}
});
this.total = res.data.total * 1;
......@@ -707,6 +717,8 @@ export default {
this.$refs.formName.resetFields();
this.currentPage = 1;
this.pageSize = 10;
this.ruleForm.createStartTime = "";
this.ruleForm.createEndTime = "";
this.submitForm();
},
//详情
......@@ -715,13 +727,11 @@ export default {
this.$message("请选择");
return;
}
console.log("222", this.checkedList);
this.dialogXQ = true;
this.ruleFormdialogBJ = this.checkedList[0];
let params = {
current: this.addcurrentPage,
pageSize: this.pageSizeAdd,
current: this.currentPageXQ,
pageSize: this.pageSizeXQ,
batchId: this.checkedList[0].batchId,
};
Object.assign(params, this.ruleFormdialogAdd);
......@@ -729,7 +739,16 @@ export default {
let res = await joinProjectInfo(params);
if (res.code == "200") {
this.addtableData = res.data.records;
this.addtableData.forEach((item) => {
this.$set(
item,
"projectCategory",
projectCategoryText(item.projectCategory)
);
});
this.addtotal = res.data.total * 1;
console.log(this.addtableData, "this.addtableData");
this.dialogXQ = true;
}
},
//确认评估项目
......@@ -739,8 +758,8 @@ export default {
this.$message("请选择");
return;
}
if (this.checkedList[0].postEvalStateText == "已确认") {
this.$message("该项目已确认");
if (this.checkedList[0].postEvalStateText == "执行中") {
this.$message("该项目已在执行中");
return;
}
this.ruleFormdialogBJ = this.checkedList[0];
......@@ -755,6 +774,13 @@ export default {
let res = await joinProjectInfo(params);
if (res.code == "200") {
this.addtableData = res.data.records;
this.addtableData.forEach((item) => {
this.$set(
item,
"projectCategory",
projectCategoryText(item.projectCategory)
);
});
this.addtotal = res.data.total * 1;
this.oldid = "";
if (this.addtableData.length > 0) {
......@@ -764,9 +790,7 @@ export default {
}
}
},
closeXQ() {
console.log("关闭详情");
},
closeXQ() {},
//表格颜色
tableRowClassName({ row, rowIndex }) {
if (rowIndex % 2 == 1) {
......@@ -806,10 +830,22 @@ export default {
},
handleSizeChangeAdd(val) {
this.pageSizeAdd = val;
this.detailsForm();
// this.detailsForm();
console.log(val, this.addcurrentPage, "1111");
},
handleCurrentChangeAdd(val) {
this.currentAdd = val;
console.log(val, this.addcurrentPage, "0000");
this.addcurrentPage = val;
// this.detailsForm();
},
handleSizeChangXQ(val) {
this.pageSizeXQ = val;
this.detailsForm();
console.log(val, this.addcurrentPage, "1111");
},
handleCurrentChangeXQ(val) {
console.log(val, this.addcurrentPage, "0000");
this.currentPageXQ = val;
this.detailsForm();
},
......@@ -827,6 +863,8 @@ export default {
});
console.log(this.addtableData, "addtableData");
this.addtotal = this.addtableData.length;
this.handleCurrentChangeZJ(1);
this.handleSizeChangeAdd(5);
this.dialogAddzj = false;
},
cancelZJ() {
......@@ -844,46 +882,44 @@ export default {
let res = await getProjectInfo(params);
console.log(res.data.records, "res.data.recordsres.data.records");
this.zjtableData = res.data.records;
this.zjtableData.forEach((item) => {
this.$set(
item,
"projectCategory",
projectCategoryText(item.projectCategory)
);
});
this.zjtotal = res.data.total * 1;
console.log(res, "xxx");
},
saveXZ() {
console.log("保存验证", this.$refs);
this.$refs.formNames.validate((valid) => {
if (!valid) {
console.log("error submit!!");
return false;
} else {
if (this.addtableData.length < 1) {
this.$message("请选择待评估项目");
}
console.log(this.addZJList, "this.addZJList");
// 确认发布入参
let expertIdList = "";
if (this.addZJList.length > 0) {
this.addZJList.forEach((item) => {
expertIdList = expertIdList.concat(item.projectId + ",");
});
}
let params = {
expertStr: expertIdList,
};
params.batchId = this.ruleFormdialogBJ.batchId;
params.prjsOfExpert = this.ruleFormdialogBJ.prjsOfExpert;
console.log(params, "222");
fbProjectInfo(params).then((res) => {
this.dialogAdd = false;
this.expertIdList = expertIdList;
this.resetForm();
});
}
});
console.log("保存验证", this.addtableData);
// this.$emit("listenToChildEvent", "reset");
if (this.addtableData.length < 1) {
this.$message("请选择待评估项目");
}
console.log(this.addZJList, "this.addZJList");
// 确认发布入参
let expertIdList = "";
if (this.addtableData.length > 0) {
this.addtableData.forEach((item) => {
expertIdList = expertIdList.concat(item.projectId + ",");
});
}
// }
let params = {
expertStr: expertIdList,
};
params.batchId = this.ruleFormdialogBJ.batchId;
params.prjsOfExpert = this.ruleFormdialogBJ.prjsOfExpert;
console.log(params, "222");
// return
fbProjectInfo(params).then((res) => {
this.dialogAdd = false;
this.expertIdList = expertIdList;
this.resetForm();
});
},
cancelXZ() {
this.dialogAdd = false;
......@@ -896,13 +932,14 @@ export default {
},
//点击删除
async handleClick(row, index, rows) {
console.log("删除", row);
console.log("删除", row, rows);
rows.splice(index, 1);
let params = {
projectId: row.projectId,
batchId: this.checkedList[0].batchId,
};
let res = await delProjectInfo(params);
this.addtotal = rows.length;
// this.configs()
},
//点击撤回
......@@ -915,14 +952,25 @@ export default {
this.$message("该项目已撤回");
return;
}
if (this.checkedList[0].postEvalStateText == "未确认") {
this.$message("该项目还未确认");
if (this.checkedList[0].postEvalStateText == "已发起") {
this.$message("该项目还未确认评估");
return;
}
let res = await chProjectInfo({ batchId: this.checkedList[0].batchId });
if ((res.code = "200")) {
this.resetForm();
}
this.$confirm("是否撤回?", "提示", {
confirmButtonText: "是",
cancelButtonText: "否",
distinguishCancelAndClose: true,
type: "warning",
})
.then(async () => {
let res = await chProjectInfo({
batchId: this.checkedList[0].batchId,
});
if ((res.code = "200")) {
this.resetForm();
}
})
.catch((action) => {});
},
},
};
......@@ -999,7 +1047,7 @@ export default {
// color: #2785e6;
}
.elpagination {
text-align: right;
text-align: center;
margin-right: 100px;
}
/deep/ .el-dialog {
......@@ -1136,7 +1184,7 @@ export default {
}
}
.midBtn {
margin: 0 auto;
margin: 20px auto;
span {
display: inline-block;
width: 80px;
......@@ -1193,11 +1241,23 @@ export default {
box-sizing: border-box;
/deep/ .el-table {
position: absolute;
width: auto !important;
max-width: none;
width: 100%;
// width: auto !important;
// max-width: none;
}
}
::v-deep.el-table::before {
display: none !important;
}
</style>
<style>
.myTooltips {
width: 80% !important;
background: gainsboro !important ;
color: #333 !important;
text-align: center;
position: absolute;
right: 0;
}
</style>
\ No newline at end of file
......@@ -10,15 +10,78 @@
<el-form-item label="批次年度:" prop="batchYear" class="fromItem">
<el-select v-model="ruleForm.batchYear" placeholder="请选择" clearable>
<el-option
v-for="(item, index) in yearsList"
:key="index"
:label="item+'年'"
:value="item"/>
v-for="(item, index) in yearsList"
:key="index"
:label="item + '年'"
:value="item"
/>
</el-select>
</el-form-item>
<el-form-item label="后评估批次名称:" prop="batchName" class="fromItem">
<el-input v-model="ruleForm.batchName" clearable></el-input>
</el-form-item>
<el-form-item label="后评估批次状态:" prop="batchState" class="fromItem">
<el-select v-model="ruleForm.batchState" placeholder="请选择" clearable>
<el-option label="执行中" value="3"></el-option>
<el-option label="已完成" value="5"></el-option>
</el-select>
</el-form-item>
<el-form-item label="项目编码:" prop="projectId" class="fromItem">
<el-input
v-model="ruleForm.projectId"
placeholder="请输入"
clearable
></el-input>
</el-form-item>
<el-form-item label="项目名称:" prop="projectName" class="fromItem">
<el-input
v-model="ruleForm.projectName"
placeholder="请输入"
clearable
></el-input>
</el-form-item>
<el-form-item label="项目年度:" prop="projectYear" class="fromItem">
<el-select
v-model="ruleForm.projectYear"
placeholder="请选择"
clearable
>
<el-option
v-for="(item, index) in yearsList"
:key="index"
:label="item + '年'"
:value="item"
/>
</el-select>
</el-form-item>
<el-form-item label="项目审核状态:" prop="reviewStatus" class="fromItem">
<el-select
v-model="ruleForm.reviewStatus"
placeholder="请选择"
clearable
>
<el-option label="无问题" value="0"></el-option>
<el-option label="需整改" value="1"></el-option>
<el-option label="已整改" value="2"></el-option>
<el-option label="已归档" value="3"></el-option>
</el-select>
</el-form-item>
<el-form-item
label="问题整改状态:"
prop="rectificationStatus"
class="fromItem"
>
<el-select
v-model="ruleForm.rectificationStatus"
placeholder="请选择"
clearable
>
<el-option label="问题未整改" value="0"></el-option>
<el-option label="已整改" value="1"></el-option>
<el-option label="整改不合格" value="2"></el-option>
<el-option label="整改已完成" value="3"></el-option>
</el-select>
</el-form-item>
<!-- <el-form-item
label="计划评估日期:"
prop="planReviewDate"
......@@ -76,82 +139,87 @@
</el-form-item>
</el-form>
<div class="setscroll">
<el-table
@selection-change="handleSelectionChange"
ref="multipleTable"
:data="tableData"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
:row-class-name="tableRowClassName"
border
>
<el-table-column label="序号" width="55" type="index"> </el-table-column>
<el-table-column type="selection"> </el-table-column>
<el-table-column label="批次年度" width="auto" prop="batchYear"><template slot-scope="scope">
{{scope.row.batchYear}}
</template>
</el-table-column>
<el-table-column prop="batchName" label="后评估批次名称" width="auto">
</el-table-column>
<el-table-column prop="projectName" label="评估项目名称" show-overflow-tooltip>
</el-table-column>
<el-table-column prop="projectCategory" label="建设形式" width="auto">
</el-table-column>
<!-- <el-table-column
prop="historyCheckStatus"
label="历史审核状态"
width="auto"
>
</el-table-column> -->
<!-- <el-table-column
prop="formerYearsCheckStatus"
label="往年审核状态"
width="auto"
<el-table
@selection-change="handleSelectionChange"
ref="multipleTable"
:data="tableData"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
:row-class-name="tableRowClassName"
border
>
</el-table-column> -->
<el-table-column
prop="expertName"
label="评审专家名单"
width="auto"
>
</el-table-column>
<el-table-column label="序号" width="55" type="index">
</el-table-column>
<el-table-column type="selection"> </el-table-column>
<el-table-column label="批次年度" width="120" prop="batchYear"
><template slot-scope="scope"> {{ scope.row.batchYear }}</template>
</el-table-column>
<el-table-column prop="batchName" label="后评估批次名称" width="auto">
</el-table-column>
<el-table-column prop="expertName" label="评审专家" width="auto">
</el-table-column>
<el-table-column
prop="batchStateText"
label="后评估批次状态"
width="120"
>
</el-table-column>
<el-table-column prop="projectId" label="项目编码" width="120"> </el-table-column>
<el-table-column
prop="appealDeadline"
label="问题申诉截止时间"
width="auto"
>
</el-table-column>
<el-table-column
prop="rectificationDeadline"
label="问题整改截止时间"
width="auto"
>
</el-table-column>
<el-table-column
prop="postEvalState"
label="整改复核状态"
width="auto"
>
</el-table-column>
<el-table-column prop="reviewDate" label="评估日期" width="auto">
</el-table-column>
</el-table>
<el-table-column
prop="projectName"
label="项目名称"
show-overflow-tooltip
>
</el-table-column>
<el-table-column prop="projectYear" label="项目年度" width="120">
<template slot-scope="scope">
{{ scope.row.projectYear }}
</template>
</el-table-column>
<el-table-column prop="projectCategory" label="建设形式" width="120">
</el-table-column>
<el-table-column prop="reviewText" label="项目审核状态" width="120">
</el-table-column>
<!-- <el-table-column
prop="appealDeadline"
label="问题申诉截止时间"
width="auto"
>
</el-table-column>
<el-table-column
prop="rectificationDeadline"
label="问题整改截止时间"
width="auto"
>
</el-table-column> -->
<el-table-column
prop="reviewStatusText"
label="问题整改状态"
width="160"
>
</el-table-column>
<el-table-column prop="planReviewDate" label="计划评估日期">
</el-table-column>
<el-table-column prop="lastUpdateTime" label="实际评估日期">
</el-table-column>
</el-table>
</div>
<el-pagination
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="currentPage"
:page-sizes="[10, 15, 20, 50,100]"
:page-sizes="[10, 15, 20, 50, 100]"
:page-size="1000"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
class="elpagination"
>
</el-pagination>
<!-- 问题整改 -->
<el-dialog
title="复核情况"
......@@ -170,7 +238,7 @@
<div class="setTable">
<el-table
:data="tableDataQR"
tooltip-effect="dark myTooltips"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
......@@ -220,26 +288,37 @@
</template>
</el-table-column>
<el-table-column label="解释批注" width="200">
<template slot-scope="scope" v-if="scope.row.confirmStatus=='1'" >
<el-input v-model="scope.row.feedback" disabled></el-input>
<template
slot-scope="scope"
v-if="scope.row.confirmStatus == '1'"
>
<el-input v-model="scope.row.feedback" disabled></el-input>
</template>
</el-table-column>
<el-table-column label="附加解释材料" prop="fileId" width="400">
<!-- <template slot-scope="scope" v-if="scope.row.confirmStatus=='1'">
<input type="file" @change="handleFileUpload($event,scope.row, 'fileId')" />
</template> -->
<template slot-scope="scope" v-if="scope.row.confirmStatus == '1'&&scope.row.fileId">
{{
scope.row.fileName
}} <el-button @click="handleClickXZ(scope.row.fileId,scope.row.fileName)">下载</el-button>
</template>
<template
slot-scope="scope"
v-if="scope.row.confirmStatus == '1' && scope.row.fileId"
>
{{ scope.row.fileName }}
<el-button
@click="handleClickXZ(scope.row.fileId, scope.row.fileName)"
>下载</el-button
>
</template>
</el-table-column>
<el-table-column
label="复核情况"
prop="rectificationStatus"
width="200"
>
<template slot-scope="scope" v-if="scope.row.confirmStatus=='1'">
<template
slot-scope="scope"
v-if="scope.row.confirmStatus == '1'"
>
<el-select
v-model="scope.row.appealStatus"
placeholder="请选择"
......@@ -253,36 +332,35 @@
</el-select>
</template>
</el-table-column>
<el-table-column
label="上传整改材料"
prop="zgFileId"
width="400"
>
<template slot-scope="scope" v-if="scope.row.confirmStatus == '1'&&scope.row.zgFileId">
{{
scope.row.zgName
}} <el-button @click="handleClickXZ(scope.row.zgFileId,scope.row.zgName)">下载</el-button>
</template>
<!-- <template slot-scope="scope" v-if="scope.row.confirmStatus=='1'">
<input type="file" @change="handleFileUpload($event,scope.row, 'zgFileId')" />
</template> -->
<el-table-column label="上传整改材料" width="400">
<template slot-scope="scope" v-if="scope.row.zgFileId">
{{ scope.row.zgName }}
<el-button
@click="handleClickXZ(scope.row.zgFileId, scope.row.zgName)"
>下载</el-button
>
</template>
</el-table-column>
<el-table-column label="情况说明" prop="zgqkFileId" width="400">
<!-- <template slot-scope="scope" v-if="scope.row.confirmStatus=='1'">
<input type="file" @change="handleFileUpload($event,scope.row, 'zgqkFileId')" />
</template> -->
<template slot-scope="scope" v-if="scope.row.confirmStatus == '1'&&scope.row.zgqkFileId">
{{
scope.row.zgqkFileName
}} <el-button @click="handleClickXZ(scope.row.zgqkFileId,scope.row.zgqkFileName)">下载</el-button>
</template>
<template slot-scope="scope" v-if="scope.row.zgqkFileId">
{{ scope.row.zgqkFileName }}
<el-button
@click="
handleClickXZ(
scope.row.zgqkFileId,
scope.row.zgqkFileName
)
"
>下载</el-button
>
</template>
</el-table-column>
<el-table-column
label="整改复核"
prop="rectificationStatus"
width="200"
>
<template slot-scope="scope" v-if="scope.row.confirmStatus=='1'">
<template slot-scope="scope" v-if="scope.row.evalQues">
<el-select
v-model="scope.row.rectificationStatus"
placeholder="请选择"
......@@ -299,7 +377,8 @@
</div>
</div>
<p class="midBtn">
<span @click="cancelSS()">取消</span><span @click="saveSS()">保存</span><span @click="save()">提交</span>
<span @click="cancelSS()">取消</span><span @click="saveSS()">保存</span
><span @click="save()">提交</span>
</p>
</el-dialog>
<!-- 复核下发 -->
......@@ -435,13 +514,13 @@ import {
bcrectificationVerification,
tjrectificationVerification,
ossupload,
downloadObject
downloadObject,
} from "@/api/index";
import { generateYearOptions } from "@/utils/cache";
import { generateYearOptions, projectCategoryText } from "@/utils/cache";
export default {
data() {
return {
yearsList:generateYearOptions(),
yearsList: generateYearOptions(),
dialogSS: false,
ruleForm: {
batchYear: "",
......@@ -486,14 +565,36 @@ export default {
if (res.code == "200") {
this.tableData = res.data.records;
this.tableData.forEach((item) => {
if (item.reviewStatus == "5") {
this.$set(item, "postEvalState", "整改提交");
} else if (item.reviewStatus == "6"){
this.$set(item, "postEvalState", "整改未完成");
}else{
this.$set(item, "postEvalState", "整改已完成");
if (item.rectificationStatus == "0") {
this.$set(item, "reviewStatusText", "问题未整改");
} else if (item.rectificationStatus == "1") {
this.$set(item, "reviewStatusText", "已整改");
} else if (item.rectificationStatus == "2") {
this.$set(item, "reviewStatusText", "整改不合格");
} else if (item.rectificationStatus == "3") {
this.$set(item, "reviewStatusText", "整改已完成");
}
if (item.batchState == "3") {
this.$set(item, "batchStateText", "执行中");
} else if (item.batchState == "5") {
this.$set(item, "batchStateText", "已完成");
}
if (item.reviewStatus == "0") {
this.$set(item, "reviewText", "无问题");
} else if (item.reviewStatus == "1") {
this.$set(item, "reviewText", "需整改");
} else if (item.reviewStatus == "2") {
this.$set(item, "reviewText", "已整改");
}else if (item.reviewStatus == "3") {
this.$set(item, "reviewText", "已归档");
}
this.$set(
item,
"projectCategory",
projectCategoryText(item.projectCategory)
);
});
this.total = res.data.total * 1;
}
},
......@@ -521,6 +622,9 @@ export default {
if (res.code == "200") {
this.tableDataQR = res.data.records;
this.tableDataQR.forEach((item) => {
if (!item.confirmStatus) {
this.$set(item, "confirmStatus", "2");
}
switch (item.projectStage) {
case "1":
this.$set(item, "projectStagetext", "1.可研");
......@@ -684,8 +788,12 @@ export default {
if (res.code == "200") {
this.tableDataSS = res.data.records;
this.tableDataSS.forEach((item) => {
if(!item.confirmStatus){
this.$set(item, "confirmStatus", "2")
console.log(
item.confirmStatus,
"item.confirmStatusitem.confirmStatus"
);
if (!item.confirmStatus) {
this.$set(item, "confirmStatus", "2");
}
switch (item.projectStage) {
case "1":
......@@ -712,13 +820,12 @@ export default {
this.dataPretreatmentSS();
}
},
handleFileUpload(event,row,type) {
handleFileUpload(event, row, type) {
console.log("来了么");
this.file = event.target.files[0];
this.submitFile(row,type)
this.submitFile(row, type);
},
submitFile(row,type) {
submitFile(row, type) {
// return;
console.log(row);
if (this.file) {
......@@ -730,21 +837,21 @@ export default {
ossupload(formData)
.then((response) => {
console.log(response);
this.file =[]
this.$set(row, type, response.data.fileId );
this.file = [];
this.$set(row, type, response.data.fileId);
})
.catch((error) => {
console.error(error);
});
}else{
this.$message('请先选择文件')
} else {
this.$message("请先选择文件");
}
},
closed() {
console.log("关闭");
this.handleSelectionChange();
},
async handleClickXZ(fileId,fileName) {
async handleClickXZ(fileId, fileName) {
console.log(fileId);
let response = await downloadObject({
fileId: fileId * 1,
......@@ -826,17 +933,17 @@ export default {
}
}
.eltable {
box-sizing: border-box;
text-align: center;
width: 150%;
min-width: 150%;
// box-sizing: border-box;
// text-align: center;
// width: 150%;
// min-width: 150%;
}
/deep/ .el-table .warning-row {
background: #f0ffff;
// color: #2785e6;
}
.elpagination {
text-align: right;
text-align: center;
margin-right: 100px;
}
/deep/ .el-dialog {
......@@ -873,8 +980,8 @@ export default {
/deep/.el-table {
position: absolute;
width: auto !important;
max-width: none;
// width: auto !important;
// max-width: none;
// width: 100%;
.el-table__header-wrapper table,
.el-table__body-wrapper table {
......@@ -961,7 +1068,7 @@ export default {
}
.midBtn {
margin: 20px auto;
// margin-top: 20px;
// margin-top: 20px;
span {
display: inline-block;
width: 80px;
......
......@@ -10,32 +10,86 @@
<el-form-item label="批次年度:" prop="batchYear" class="fromItem">
<el-select v-model="ruleForm.batchYear" placeholder="请选择" clearable>
<el-option
v-for="(item, index) in yearsList"
:key="index"
:label="item+'年'"
:value="item"/>
v-for="(item, index) in yearsList"
:key="index"
:label="item + '年'"
:value="item"
/>
</el-select>
</el-form-item>
<el-form-item label="后评估名称:" prop="batchName" class="fromItem">
<el-input v-model="ruleForm.batchName" placeholder="请输入" clearable></el-input>
<el-form-item label="后评估批次名称:" prop="batchName" class="fromItem">
<el-input
v-model="ruleForm.batchName"
placeholder="请输入"
clearable
></el-input>
</el-form-item>
<el-form-item label="后评估状态:" prop="postEvalState" class="fromItem">
<el-select v-model="ruleForm.postEvalState" placeholder="请选择" clearable>
<el-option label="未上传" value="0"></el-option>
<el-option label="已上传" value="1"></el-option>
<!-- <el-option label="已撤回" value="2"></el-option> -->
<el-form-item label="后评估批次状态:" prop="batchState" class="fromItem">
<el-select v-model="ruleForm.batchState" placeholder="请选择" clearable>
<el-option label="执行中" value="3"></el-option>
<el-option label="已完成" value="5"></el-option>
</el-select>
</el-form-item>
<el-form-item label="项目名称:" prop="projectName" class="fromItem" show-overflow-tooltip>
<el-form-item label="项目编码:" prop="projectId" class="fromItem">
<el-input
v-model="ruleForm.projectId"
placeholder="请输入"
clearable
></el-input>
</el-form-item>
<el-form-item
label="项目名称:"
prop="projectName"
class="fromItem"
show-overflow-tooltip
>
<el-input
v-model="ruleForm.projectName"
placeholder="请输入"
clearable
></el-input>
</el-form-item>
<el-form-item label="项目编码:" prop="projectId" class="fromItem">
<el-input v-model="ruleForm.projectId" placeholder="请输入" clearable></el-input>
<el-form-item label="项目年度:" prop="projectYear" class="fromItem">
<el-select
v-model="ruleForm.projectYear"
placeholder="请选择"
clearable
>
<el-option
v-for="(item, index) in yearsList"
:key="index"
:label="item + '年'"
:value="item"
/>
</el-select>
</el-form-item>
<el-form-item
label="提交评估材料状态:"
prop="postEvalState"
class="fromItem"
>
<el-select
v-model="ruleForm.postEvalState"
placeholder="请选择"
clearable
>
<el-option label="未上传" value="0"></el-option>
<el-option label="已上传" value="1"></el-option>
</el-select>
</el-form-item>
<el-form-item label="计划评估日期:" prop="planTime" class="fromItem">
<el-date-picker
@change="timeChange"
v-model="ruleForm.dates"
style="width: 240px"
value-format="yyyy-MM-dd"
type="daterange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
></el-date-picker>
</el-form-item>
<el-form-item class="button">
......@@ -58,7 +112,7 @@
@selection-change="handleSelectionChange"
ref="multipleTable"
:data="tableData"
tooltip-effect="dark myTooltips"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
......@@ -68,24 +122,39 @@
<el-table-column label="序号" width="55" type="index">
</el-table-column>
<el-table-column type="selection"> </el-table-column>
<el-table-column label="批次年度" prop="batchYear"> <template slot-scope="scope">
{{scope.row.batchYear}}
</template></el-table-column>
<el-table-column label="批次年度" prop="batchYear" width="120">
<template slot-scope="scope"> {{ scope.row.batchYear }}</template>
</el-table-column>
<el-table-column prop="batchName" label="后评估批次名称">
</el-table-column>
<el-table-column prop="expertName" label="评审专家"> </el-table-column>
<el-table-column
prop="batchStateText"
label="后评估批次状态"
width="120"
>
</el-table-column>
<el-table-column prop="projectId" label="项目编码"> </el-table-column>
<el-table-column prop="projectName" label="评估项目名称" show-overflow-tooltip>
<el-table-column
prop="projectName"
label="项目名称"
show-overflow-tooltip
>
</el-table-column>
<el-table-column prop="projectCategory" label="建设形式">
<el-table-column prop="projectYear" label="项目年度" width="120">
<template slot-scope="scope">
{{ scope.row.projectYear }}
</template>
</el-table-column>
<el-table-column prop="projectCategory" label="建设形式" width="120">
</el-table-column>
<!-- <el-table-column prop="projectStatus" label="项目建设阶段">
</el-table-column> -->
<!-- <el-table-column prop="待确认" label="历史审核状态"> </el-table-column> -->
<el-table-column prop="planReviewDate" label="计划评估日期">
<el-table-column prop="postEvalStateText" label="提交评估材料" width="120">
</el-table-column>
<el-table-column prop="expertName" label="评审专家名单">
</el-table-column>
<el-table-column prop="postEvalStateText" label="提交评估材料">
<el-table-column prop="planReviewDate" label="计划评估日期">
</el-table-column>
</el-table>
</div>
......@@ -93,7 +162,7 @@
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="currentPage"
:page-sizes="[10, 15, 20, 50,100]"
:page-sizes="[10, 15, 20, 50, 100]"
:page-size="1000"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
......@@ -145,32 +214,42 @@
<p class="xqtitle"><span></span>本项目材料清单</p>
<div class="setscrolldialog">
<el-table
@selection-change="handleSelectionChange"
:data="tableDataQD"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
:row-class-name="tableRowClassName"
border
>
<el-table-column label="序号" width="55" type="index">
</el-table-column>
<el-table-column label="材料类别" prop="batchtype"> </el-table-column>
<el-table-column prop="typeText" label="资料类型"> </el-table-column>
<el-table-column prop="fileName" label="资料名称" show-overflow-tooltip> </el-table-column>
<el-table-column prop="projectCategory" label="操作">
<template slot-scope="scope">
<input type="file" @change="handleFileUpload($event,scope.row)" />
</template>
</el-table-column>
</el-table>
</div>
<el-table
@selection-change="handleSelectionChange"
:data="tableDataQD"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
:row-class-name="tableRowClassName"
border
>
<el-table-column label="序号" width="55" type="index">
</el-table-column>
<el-table-column label="材料类别" prop="batchtype">
</el-table-column>
<el-table-column prop="typeText" label="资料类型">
</el-table-column>
<el-table-column
prop="fileName"
label="资料名称"
show-overflow-tooltip
>
</el-table-column>
<el-table-column prop="projectCategory" label="操作">
<template slot-scope="scope">
<input
type="file"
@change="handleFileUpload($event, scope.row)"
/>
</template>
</el-table-column>
</el-table>
</div>
<p class="Btn">
<span @click="cancel()">取消</span
><span @click="save()">确认上传</span>
<span @click="cancel()">取消</span>
<span @click="preserve()">保存</span>
<span @click="save()">确认上传</span>
</p>
</div>
</el-dialog>
......@@ -220,48 +299,52 @@
<p class="xqtitle"><span></span>本项目材料清单</p>
<div class="setscrolldialog">
<el-table
@selection-change="handleSelectionChange"
:data="tableDataQD"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
:row-class-name="tableRowClassName"
border
>
<el-table-column label="序号" width="55" type="index">
</el-table-column>
<el-table
@selection-change="handleSelectionChange"
:data="tableDataQD"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
:row-class-name="tableRowClassName"
border
>
<el-table-column label="序号" width="55" type="index">
</el-table-column>
<el-table-column label="材料类别" prop="batchtype"> </el-table-column>
<el-table-column prop="typeText" label="资料类型"> </el-table-column>
<el-table-column prop="fileName" label="资料名称" >
<template slot-scope="scope" v-if="scope.row.fileName">
{{scope.row.fileName}}&nbsp;&nbsp;<el-button @click="handleClickXZ(scope.row)">下载</el-button>
</template>
</el-table-column>
</el-table>
</div>
<el-table-column label="材料类别" prop="batchtype">
</el-table-column>
<el-table-column prop="typeText" label="资料类型">
</el-table-column>
<el-table-column prop="fileName" label="资料名称">
<template slot-scope="scope" v-if="scope.row.fileName">
{{ scope.row.fileName }}&nbsp;&nbsp;<el-button
@click="handleClickXZ(scope.row)"
>下载</el-button
>
</template>
</el-table-column>
</el-table>
</div>
</div>
</el-dialog>
</div>
</template>
<script>
import { MaterialsList } from '@/utils/cache'
import { MaterialsList } from "@/utils/cache";
import {
evaluationMaterials,
clqdevaluationMaterials,
qrscevaluationMaterials,
ossupload,
downloadObject
downloadObject,
} from "@/api/index";
import { generateYearOptions } from "@/utils/cache";
import { generateYearOptions, projectCategoryText } from "@/utils/cache";
export default {
data() {
return {
yearsList:generateYearOptions(),
yearsList: generateYearOptions(),
dialogXQ: false,
file: "",
showButton: true,
......@@ -271,6 +354,7 @@ export default {
postEvalState: "",
projectName: "",
projectId: "",
dates: [],
},
ruleFormdialog: {
batchYear: "",
......@@ -280,8 +364,8 @@ export default {
},
tableData: [],
tableDataNew:MaterialsList(),
tableDataQD:[],
tableDataNew: MaterialsList(),
tableDataQD: [],
checkedList: [],
currentPage: 1,
pageSize: 10,
......@@ -291,19 +375,30 @@ export default {
dialog: false,
};
},
watch:{
watch: {
// 监听路由对象中的参数部分
'$route.params': {
"$route.params": {
immediate: true,
handler(newParams, oldParams) {
this.submitForm();
}
}
},
},
},
mounted() {
// this.submitForm();
},
methods: {
timeChange(time) {
if (time) {
//给后端的参数
this.ruleForm.planStartTime = time[0];
this.ruleForm.planEndTime = time[1];
}else{
//给后端的参数
this.ruleForm.planStartTime ="";
this.ruleForm.planEndTime = "";
}
},
async submitForm() {
let params = {
current: this.currentPage,
......@@ -321,9 +416,19 @@ export default {
this.$set(item, "postEvalStateText", "未上传");
} else if (item.postEvalState == "0") {
this.$set(item, "postEvalStateText", "未上传");
} else if (item.postEvalState >=1) {
} else if (item.postEvalState >= 1) {
this.$set(item, "postEvalStateText", "已上传");
}
if (item.batchState == "3") {
this.$set(item, "batchStateText", "执行中");
} else if (item.batchState == "5") {
this.$set(item, "batchStateText", "已完成");
}
this.$set(
item,
"projectCategory",
projectCategoryText(item.projectCategory)
);
});
this.total = res.data.total * 1;
}
......@@ -332,7 +437,8 @@ export default {
this.$refs.formName.resetFields();
this.currentPage = 1;
this.pageSize = 10;
console.log("重置");
this.ruleForm.planStartTime ="";
this.ruleForm.planEndTime = "";
this.submitForm();
},
//提交评估材料
......@@ -351,33 +457,31 @@ export default {
current: this.currentPage,
pageSize: this.pageSize,
projectId: this.checkedList[0].projectId,
batchId:this.checkedList[0].batchId
batchId: this.checkedList[0].batchId,
};
let res = await clqdevaluationMaterials(params);
// this.tableDataQD =this.tableDataNew
this.tableDataQD =JSON.parse(JSON.stringify(this.tableDataNew))
this.tableDataQD = JSON.parse(JSON.stringify(this.tableDataNew));
if (res.data.records.length > 0) {
this.tableDataQD = this.tableDataQD
.concat(res.data.records)
.reduce((accumulator, currentObj) => {
const existingObj = accumulator.find(
(obj) => obj.typeCode == currentObj.typeCode
);
if (existingObj) {
Object.assign(existingObj, currentObj);
} else {
accumulator.push(currentObj);
}
return accumulator;
}, []);
console.log( this.tableDataQD,' mergedArray mergedArray mergedArray')
.concat(res.data.records)
.reduce((accumulator, currentObj) => {
const existingObj = accumulator.find(
(obj) => obj.typeCode == currentObj.typeCode
);
if (existingObj) {
Object.assign(existingObj, currentObj);
} else {
accumulator.push(currentObj);
}
return accumulator;
}, []);
console.log(this.tableDataQD, " mergedArray mergedArray mergedArray");
// this.tableDataQD.forEach((item) => {
// // this.$set(item, "batchtype", "开发、实施类");
// });
}
},
//详情
async detailsForm() {
......@@ -391,23 +495,23 @@ export default {
current: this.currentPage,
pageSize: this.pageSize,
projectId: this.checkedList[0].projectId,
batchId:this.checkedList[0].batchId
batchId: this.checkedList[0].batchId,
};
let res = await clqdevaluationMaterials(params);
this.tableDataQD =this.tableDataNew
this.tableDataQD = this.tableDataNew;
this.tableDataQD = this.tableDataQD
.concat(res.data.records)
.reduce((accumulator, currentObj) => {
const existingObj = accumulator.find(
(obj) => obj.typeCode == currentObj.typeCode
);
if (existingObj) {
Object.assign(existingObj, currentObj);
} else {
accumulator.push(currentObj);
}
return accumulator;
}, []);
.concat(res.data.records)
.reduce((accumulator, currentObj) => {
const existingObj = accumulator.find(
(obj) => obj.typeCode == currentObj.typeCode
);
if (existingObj) {
Object.assign(existingObj, currentObj);
} else {
accumulator.push(currentObj);
}
return accumulator;
}, []);
},
//表格颜色
tableRowClassName({ row, rowIndex }) {
......@@ -448,6 +552,10 @@ export default {
this.dialog = false;
// this.dialogXQ = false;
},
preserve() {
this.dialog = false;
// this.dialogXQ = false;
},
closeDialog() {
console.log("guanbi");
this.showButton = true;
......@@ -461,10 +569,18 @@ export default {
let res = await qrscevaluationMaterials(params);
this.resetForm();
},
handleFileUpload(event,row) {
console.log("来了么",event,row);
handleFileUpload(event, row) {
this.file = event.target.files[0];
this.submitFile(row)
console.log("来了么",this.file);
if(this.file.type=='application/pdf'||this.file.type=='image/png'||this.file.type=='image/jpeg'||this.file.type=='application/vnd.openxmlformats-officedocument.wordprocessingml.document'){
this.submitFile(row);
}else{
console.log( event,' row row row')
this.$message('只能上传格式为png、jpeg、pdf、docx文件或图片')
// this.file.name=''
event.target.value =''
}
},
submitFile(row) {
console.log(row);
......@@ -478,17 +594,16 @@ export default {
ossupload(formData)
.then((response) => {
console.log(response);
if(response.code=='200'){
this.$message('上传成功')
if (response.code == "200") {
this.$message("上传成功");
this.$set(row, "fileName", response.data.fileName);
}else{
this.$message('上传失败')
} else {
this.$message("上传失败");
}
})
.catch((error) => {
console.error(error);
this.$message('上传失败')
this.$message("上传失败");
});
}
},
......@@ -518,7 +633,7 @@ export default {
position: relative;
height: 100%;
width: 100%;
box-sizing: border-box;
}
.el-form {
......@@ -574,9 +689,9 @@ export default {
}
}
.eltable {
width: 100%;
// height: 650px;
// overflow-y: auto;
width: 100%;
// height: 650px;
// overflow-y: auto;
box-sizing: border-box;
}
/deep/ .el-table .warning-row {
......@@ -584,7 +699,7 @@ width: 100%;
// color: #2785e6;
}
.elpagination {
text-align: right;
text-align: center;
margin-right: 100px;
}
/deep/ .el-dialog {
......@@ -644,7 +759,7 @@ width: 100%;
}
.textarea {
width: 100%;
/deep/ .el-form-item__content{
/deep/ .el-form-item__content {
display: flex;
}
.el-textarea {
......@@ -652,7 +767,7 @@ width: 100%;
}
}
.Btn {
width: 200px;
width: 300px;
margin: 0 auto;
margin-top: 20px;
span {
......@@ -663,15 +778,20 @@ width: 100%;
text-align: center;
border-radius: 4px;
margin-right: 12px;
}
span:first-of-type {
border: 1px solid #000;
}
span:last-of-type {
background-color: #0d867f;
border: 1px solid #0d867f;
color: #fff;
}
span:first-of-type {
border: 1px solid #000;
background: #fff;
color: #333;
}
// span:last-of-type {
// background-color: #0d867f;
// border: 1px solid #0d867f;
// color: #fff;
// }
}
/deep/ .el-dialog__headerbtn .el-dialog__close {
color: #fff;
......@@ -700,8 +820,8 @@ width: 100%;
overflow: auto;
}
}
.dialog{
.eltable{
.dialog {
.eltable {
height: 650px;
overflow-y: auto;
}
......
......@@ -16,16 +16,13 @@
:value="item"/>
</el-select>
</el-form-item>
<el-form-item label="单位名称:" prop="dwmc" class="fromItem">
<!-- <el-form-item label="单位名称:" prop="dwmc" class="fromItem">
<el-input
v-model="ruleForm.companyName"
placeholder="请输入"
clearable
></el-input>
</el-form-item>
<!--<el-form-item label="项目编码:" prop="projectCode" class="fromItem">
<el-input v-model="ruleForm.projectCode" placeholder="请输入"></el-input>
</el-form-item>-->
</el-form-item> -->
<el-form-item label="项目名称:" prop="projectName" class="fromItem">
<el-input
v-model="ruleForm.projectName"
......@@ -34,36 +31,43 @@
></el-input>
</el-form-item>
<el-form-item label="项目阶段:" prop="projectStatus" class="fromItem">
<el-input
v-model="ruleForm.projectName"
placeholder="请输入"
clearable
></el-input>
<!-- <el-select v-model="ruleForm.projectPhase" placeholder="请选择" clearable>
<el-option label="项目验收" value="1"></el-option>
<el-option label="项目建设" value="2"></el-option>
<el-option label="项目前期" value="3"></el-option>
</el-select> -->
<el-select v-model="ruleForm.projectStatus" placeholder="请选择" clearable>
<el-option label="项目验收" value="项目验收"></el-option>
<el-option label="项目建设" value="项目建设"></el-option>
<el-option label="项目前期" value="项目前期"></el-option>
</el-select>
</el-form-item>
<el-form-item label="项目环节:" prop="projectFlowStatus" class="fromItem">
<el-select v-model="ruleForm.projectFlowStatus" placeholder="请选择" clearable>
<el-option label="可研" value="1"></el-option>
<el-option label="计划" value="2"></el-option>
<el-option label="采购" value="3"></el-option>
<el-option label="合同" value="4"></el-option>
<el-option label="执行" value="5"></el-option>
<el-option label="结决算" value="6"></el-option>
<el-option label="转资" value="7"></el-option>
<el-option label="可研" value="可研"></el-option>
<el-option label="计划" value="计划"></el-option>
<el-option label="采购" value="采购"></el-option>
<el-option label="合同" value="合同"></el-option>
<el-option label="执行" value="执行"></el-option>
<el-option label="结决算" value="结决算"></el-option>
<el-option label="转资" value="转资"></el-option>
<el-option label="其他" value="其他"></el-option>
</el-select>
</el-form-item>
<el-form-item label="问题检查项:" prop="quesCheckItem" class="fromItem">
<el-input
v-model="ruleForm.quesCheckItem"
placeholder="请输入"
clearable
></el-input>
</el-form-item>
<el-form-item label="提出时间:" prop="createTime" class="fromItem">
<el-date-picker
v-model="ruleForm.createTime"
type="date"
placeholder="选择日期"
value-format="yyyy-MM-dd hh:mm:ss"
>
</el-date-picker>
@change="timeChange"
v-model="ruleForm.dates"
style="width: 240px"
value-format="yyyy-MM-dd"
type="daterange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
></el-date-picker>
</el-form-item>
<el-form-item label="整改状态:" prop="isRectificationStatus" class="fromItem">
<el-select v-model="ruleForm.isRectificationStatus" placeholder="请选择" clearable>
......@@ -112,7 +116,7 @@
</el-table-column>
<el-table-column prop="projectFlowStatus" label="项目环节" width="auto">
</el-table-column>
<el-table-column prop="quesCheckItem" label="问题检查项" width="auto">
<el-table-column prop="quesCheckItem" label="问题检查项" width="auto" show-overflow-tooltip>
</el-table-column>
<el-table-column prop="quesSource" label="问题来源" width="auto">
</el-table-column>
......@@ -190,12 +194,7 @@ export default {
yearsList:generateYearOptions(),
ruleForm: {
projectYear:"", //默认展示当前年
companyName: "",
projectName: "",
projectPhase: "",
projectLink: "",
submitTime: "",
abarbeitungStatus: "",
dates: [],
},
ruleFormdialog: {
projectYear: "",
......@@ -222,6 +221,17 @@ export default {
},
methods: {
timeChange(time) {
console.log('tttttt',time)
if (time) {
//给后端的参数
this.ruleForm.createStartTime = time[0];
this.ruleForm.createEndTime = time[1];
}else{
this.ruleForm.createStartTime = "";
this.ruleForm.createEndTime = "";
}
},
async submitForm() {
let params = {
current: this.currentPage,
......@@ -274,6 +284,8 @@ export default {
this.$refs.formName.resetFields();
this.currentPage = 1;
this.pageSize = 10;
this.ruleForm.createStartTime = "";
this.ruleForm.createEndTime = "";
this.submitForm();
},
uploadForm() {
......
......@@ -32,44 +32,52 @@
</el-form-item>
<el-form-item label="项目阶段:" prop="projectStatus" class="fromItem">
<el-select v-model="ruleForm.projectStatus" placeholder="请选择" clearable>
<el-option label="项目验收" value="1"></el-option>
<el-option label="项目建设" value="2"></el-option>
<el-option label="项目前期" value="3"></el-option>
<el-option label="项目验收" value="项目验收"></el-option>
<el-option label="项目建设" value="项目建设"></el-option>
<el-option label="项目前期" value="项目前期"></el-option>
</el-select>
</el-form-item>
<el-form-item label="项目环节:" prop="projectFlowStatus" class="fromItem">
<el-select v-model="ruleForm.projectFlowStatus" placeholder="请选择" clearable>
<el-option label="可研" value="1"></el-option>
<el-option label="计划" value="2"></el-option>
<el-option label="采购" value="3"></el-option>
<el-option label="合同" value="4"></el-option>
<el-option label="执行" value="5"></el-option>
<el-option label="结决算" value="6"></el-option>
<el-option label="转资" value="7"></el-option>
<el-option label="可研" value="可研"></el-option>
<el-option label="计划" value="计划"></el-option>
<el-option label="采购" value="采购"></el-option>
<el-option label="合同" value="合同"></el-option>
<el-option label="执行" value="执行"></el-option>
<el-option label="结决算" value="结决算"></el-option>
<el-option label="转资" value="转资"></el-option>
<el-option label="其他" value="其他"></el-option>
</el-select>
</el-form-item>
<el-form-item label="是否申诉:" prop="appealFlag" class="fromItem">
<el-select v-model="ruleForm.appealFlag" placeholder="请选择" clearable>
<el-option label="是" value="Y"></el-option>
<el-option label="否" value="N"></el-option>
<el-form-item label="问题检查项:" prop="quesCheckItem" class="fromItem">
<el-input
v-model="ruleForm.quesCheckItem"
placeholder="请输入"
clearable
></el-input>
</el-form-item>
<el-form-item label="是否申诉:" prop="appealStatus" class="fromItem">
<el-select v-model="ruleForm.appealStatus" placeholder="请选择" clearable>
<el-option label="是" value="1"></el-option>
<el-option label="否" value="0"></el-option>
</el-select>
</el-form-item>
<el-form-item
label="申诉是否通过:"
prop="appealPassFlag"
prop="isAppealStatus"
class="fromItem"
>
<el-select v-model="ruleForm.appealPassFlag" placeholder="请选择" clearable>
<el-select v-model="ruleForm.isAppealStatus" placeholder="请选择" clearable>
<el-option label="是" value="1"></el-option>
<el-option label="否" value="0"></el-option>
</el-select>
</el-form-item>
<el-form-item label="是否完成整改:" prop="rectificationText" class="fromItem">
<el-select v-model="ruleForm.rectificationText" placeholder="请选择" clearable>
<!-- <el-form-item label="是否完成整改:" prop="rectificationStatus" class="fromItem">
<el-select v-model="ruleForm.rectificationStatus" placeholder="请选择" clearable>
<el-option label="是" value="1"></el-option>
<el-option label="否" value="0"></el-option>
</el-select>
</el-form-item>
</el-form-item> -->
<el-form-item class="button">
<el-button @click="submitForm()">
......@@ -112,21 +120,21 @@
</el-table-column>
<el-table-column prop="checkDesc" label="问题描述" width="auto" show-overflow-tooltip>
</el-table-column>
<el-table-column prop="appealText" label="是否申诉" width="auto">
<el-table-column prop="appealText" label="是否申诉" width="80">
</el-table-column>
<el-table-column prop="feedback" label="申诉理由" width="auto" show-overflow-tooltip>
</el-table-column>
<el-table-column prop="isAppealText" label="申诉是否通过" width="auto">
<el-table-column prop="isAppealText" label="申诉是否通过" width="120">
</el-table-column>
<el-table-column prop="reviewStatus" label="申诉复核情况" width="auto" show-overflow-tooltip>
</el-table-column>
<el-table-column prop="rectificationText" label="是否完成整改" width="auto">
<el-table-column prop="rectificationText" label="是否完成整改" width="120">
</el-table-column>
<el-table-column prop="rectificationFeedback" label="整改情况" width="auto" show-overflow-tooltip>
</el-table-column>
<el-table-column prop="isRectificationText" label="整改是否通过" width="auto">
<el-table-column prop="isRectificationText" label="整改是否通过" width="120">
</el-table-column>
<el-table-column prop="reviewRectification" label="整改复核情况" width="auto">
<el-table-column prop="reviewRectification" label="整改复核情况" width="120">
</el-table-column>
</el-table>
</div>
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!