Commit 1bacad2a by liangzhen

整改辅助核验

1 parent 1191e62e
...@@ -222,6 +222,26 @@ export function wtzgProblemRectification(params) { ...@@ -222,6 +222,26 @@ export function wtzgProblemRectification(params) {
export function wtzgxfProblemRectification(params) { export function wtzgxfProblemRectification(params) {
return post(`/api/ProblemRectification/wtzgxf`, params) return post(`/api/ProblemRectification/wtzgxf`, params)
} }
//整改辅助核验
//分页
export function rectificationVerification(params) {
return post(`/api/rectificationVerification/`, params)
}
//问题清单查询
export function wtssSelectificationVerification(params) {
return post(`/api/rectificationVerification/wtssSel`, params)
}
//保存
export function bcrectificationVerification(params) {
return post(`/api/rectificationVerification/zgfhbc`, params)
}
//提交
export function tjrectificationVerification(params) {
return post(`/api/rectificationVerification/wtfhtj`, params)
}
//材料同步归档 //材料同步归档
//列表 //列表
export function materialSync(params) { export function materialSync(params) {
......
...@@ -151,13 +151,13 @@ ...@@ -151,13 +151,13 @@
<el-input v-model="scope.row.feedback"></el-input> <el-input v-model="scope.row.feedback"></el-input>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="附加解释材料" prop="zgFileId" width="400"> <el-table-column label="附加解释材料" prop="fileId" width="400">
<template slot-scope="scope"> <template slot-scope="scope">
<input type="file" @change="handleFileUpload"> <input type="file" @change="handleFileUpload">
<button @click="submitFile(scope.row)">上传</button> <button @click="submitFile(scope.row)">上传</button>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="复核情况" prop="zgFileId"> <el-table-column label="复核情况" prop="rectificationStatus">
<template slot-scope="scope"> <template slot-scope="scope">
<el-select v-model="scope.row.appealStatus" placeholder="请选择"> <el-select v-model="scope.row.appealStatus" placeholder="请选择">
<el-option label="请选择" value=""></el-option> <el-option label="请选择" value=""></el-option>
...@@ -242,13 +242,13 @@ ...@@ -242,13 +242,13 @@
<el-input v-model="scope.row.feedback"></el-input> <el-input v-model="scope.row.feedback"></el-input>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="附加解释材料" prop="zgFileId" width="400"> <el-table-column label="附加解释材料" prop="fileId" width="400">
<template slot-scope="scope"> <template slot-scope="scope">
<input type="file" @change="handleFileUpload"> <input type="file" @change="handleFileUpload">
<button @click="submitFile(scope.row)">上传</button> <button @click="submitFile(scope.row)">上传</button>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="复核情况" prop="zgFileId"> <el-table-column label="复核情况" prop="rectificationStatus">
<template slot-scope="scope"> <template slot-scope="scope">
<el-select v-model="scope.row.appealStatus" placeholder="请选择"> <el-select v-model="scope.row.appealStatus" placeholder="请选择">
<el-option label="请选择" :value="null"></el-option> <el-option label="请选择" :value="null"></el-option>
...@@ -534,24 +534,24 @@ ...@@ -534,24 +534,24 @@
this.tableDataSS.forEach((item) => { this.tableDataSS.forEach((item) => {
this.$set(item, "confirmStatus", "2") this.$set(item, "confirmStatus", "2")
switch (item.projectStage) { switch (item.projectStage) {
case 1: case "1":
this.$set(item, "projectStagetext", "1.可研"); this.$set(item, "projectStagetext", "1.可研");
break; break;
case 2: case "2":
this.$set(item, "projectStagetext", "2.计划"); this.$set(item, "projectStagetext", "2.计划");
break; break;
case 3: case "3":
this.$set(item, "projectStagetext", "3.采购"); this.$set(item, "projectStagetext", "3.采购");
break; break;
case 4: case "4":
this.$set(item, "projectStagetext", "4.合同"); this.$set(item, "projectStagetext", "4.合同");
break; break;
case 5: case "5":
this.$set(item, "projectStagetext", "5.执行"); this.$set(item, "projectStagetext", "5.执行");
break; break;
case 6: case "6":
this.$set(item, "projectStagetext", "6.结决算及转资"); this.$set(item, "projectStagetext", "6.结决算及转资");
break; break;
} }
}); });
...@@ -655,7 +655,7 @@ ...@@ -655,7 +655,7 @@
text-align: center; text-align: center;
width: 150%; width: 150%;
min-width: 150%; min-width: 150%;
margin-right: 210px; // margin-right: 210px;
// margin-top: 3vh; // margin-top: 3vh;
} }
/deep/ .el-table .warning-row { /deep/ .el-table .warning-row {
...@@ -669,6 +669,7 @@ ...@@ -669,6 +669,7 @@
/deep/ .el-dialog { /deep/ .el-dialog {
border-radius: 10px; border-radius: 10px;
margin-top: 3vh !important; margin-top: 3vh !important;
margin-left: 3vw !important;
} }
/deep/.el-table th.el-table__cell.is-leaf, /deep/.el-table th.el-table__cell.is-leaf,
...@@ -921,11 +922,11 @@ ...@@ -921,11 +922,11 @@
line-height: 30px; line-height: 30px;
} }
/deep/ .el-dialog__body{ /deep/ .el-dialog__body{
padding-bottom: 15px; padding-bottom: 5px;
} }
.setscroll{ .setscroll{
width: 100%; width: 100%;
height: 600px; height: 650px;
overflow: auto; overflow: auto;
} }
.dialog{ .dialog{
......
...@@ -219,7 +219,7 @@ ...@@ -219,7 +219,7 @@
<el-input v-model="scope.row.feedback"></el-input> <el-input v-model="scope.row.feedback"></el-input>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="附加解释材料" prop="zgFileId"> <el-table-column label="附加解释材料" prop="fileId">
<template slot-scope="scope"> <template slot-scope="scope">
<input type="file" @change="handleFileUpload"> <input type="file" @change="handleFileUpload">
<button @click="submitFile(scope.row)">上传</button> <button @click="submitFile(scope.row)">上传</button>
......
<template> <template>
<div class="main"> <div class="main">
<el-form :model="ruleForm" label-width="100px" class="demo-ruleForm" ref="formName"> <el-form
<el-form-item label="批次年度:" prop="batchYear" class="fromItem"> :model="ruleForm"
<el-select v-model="ruleForm.batchYear" placeholder="请选择"> label-width="100px"
<el-option label="2024年" value="2024"></el-option> class="demo-ruleForm"
<el-option label="2023年" value="2023"></el-option> ref="formName"
<el-option label="2022年" value="2022"></el-option> >
<el-option label="2021年" value="2021"></el-option> <el-form-item label="批次年度:" prop="batchYear" class="fromItem">
</el-select> <el-select v-model="ruleForm.batchYear" placeholder="请选择">
</el-form-item> <el-option label="2024年" value="2024"></el-option>
<el-form-item label="后评估批次名称:" prop="batchName" class="fromItem"> <el-option label="2023年" value="2023"></el-option>
<el-input v-model="ruleForm.batchName" placeholder="请输入"></el-input> <el-option label="2022年" value="2022"></el-option>
</el-form-item> <el-option label="2021年" value="2021"></el-option>
<el-form-item label="后评估状态:" prop="postEvalState" class="fromItem"> </el-select>
<el-select v-model="ruleForm.postEvalState" placeholder="请选择"> </el-form-item>
<el-option label="未下发" value="0"></el-option> <el-form-item label="后评估批次名称:" prop="batchName" class="fromItem">
<el-option label="已下发" value="1"></el-option> <el-input v-model="ruleForm.batchName" placeholder="请输入"></el-input>
<el-option label="已撤回" value="2"></el-option> </el-form-item>
</el-select> <el-form-item label="后评估状态:" prop="postEvalState" class="fromItem">
</el-form-item> <el-select v-model="ruleForm.postEvalState" placeholder="请选择">
<el-form-item class="button"> <el-option label="未下发" value="0"></el-option>
<el-button @click="submitForm()"> <el-option label="已下发" value="1"></el-option>
<img class="buttonIcon" src="../../assets/cx.png" />查询</el-button <el-option label="已撤回" value="2"></el-option>
> </el-select>
<el-button @click="resetForm('ruleForm')"> </el-form-item>
<img class="buttonIcon" src="../../assets/cz.png" />重置</el-button <el-form-item class="button">
> <el-button @click="submitForm()">
<el-button @click="confirm()"> <img class="buttonIcon" src="../../assets/cx.png" />查询</el-button
<i class="el-icon-chat-dot-square"></i >
>&nbsp;&nbsp;&nbsp;问题整改</el-button <el-button @click="resetForm('ruleForm')">
> <img class="buttonIcon" src="../../assets/cz.png" />重置</el-button
<el-button @click="appeal()"> >
<i class="el-icon-document-remove"></i <el-button @click="confirm()">
>&nbsp;&nbsp;&nbsp;整改提交</el-button <i class="el-icon-chat-dot-square"></i
> >&nbsp;&nbsp;&nbsp;问题整改</el-button
</el-form-item> >
</el-form> <el-button @click="appeal()">
<div class="setscroll"> <i class="el-icon-document-remove"></i
<el-table >&nbsp;&nbsp;&nbsp;整改提交</el-button
@selection-change="handleSelectionChange" >
ref="multipleTable" </el-form-item>
:data="tableData" </el-form>
tooltip-effect="dark" <div class="setscroll">
header-cell-class-name="custom-th-background" <el-table
class="eltable" @selection-change="handleSelectionChange"
:row-class-name="tableRowClassName" ref="multipleTable"
border :data="tableData"
> tooltip-effect="dark"
<el-table-column label="序号" width="55" type="index"> </el-table-column> header-cell-class-name="custom-th-background"
<el-table-column type="selection"> </el-table-column> class="eltable"
<el-table-column label="批次年度" prop="batchYear"> </el-table-column> :row-class-name="tableRowClassName"
<el-table-column prop="batchName" label="后评估批次名称"> border
</el-table-column> >
<el-table-column label="序号" width="55" type="index">
<el-table-column prop="projectName" label="评估项目名称"> </el-table-column>
</el-table-column> <el-table-column type="selection"> </el-table-column>
<el-table-column prop="projectCategory" label="建设形式"> <el-table-column label="批次年度" prop="batchYear"> </el-table-column>
</el-table-column> <el-table-column prop="batchName" label="后评估批次名称">
<el-table-column prop="projectStatus" label="项目建设阶段"> </el-table-column>
</el-table-column>
<!-- <el-table-column prop="createTime" label="历史审核状态"> <el-table-column prop="projectName" label="评估项目名称">
</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> -->
<el-table-column prop="expertName" label="评审专家名单"> <el-table-column prop="expertName" label="评审专家名单">
</el-table-column> </el-table-column>
<el-table-column prop="appealDeadline" label="问题申诉截止时间"> <el-table-column prop="appealDeadline" label="问题申诉截止时间">
</el-table-column> </el-table-column>
<el-table-column prop="rectificationDeadline" label="问题整改截止时间"> <el-table-column prop="rectificationDeadline" label="问题整改截止时间">
</el-table-column> </el-table-column>
<el-table-column prop="postEvalState" label="问题整改状态"> </el-table-column> <el-table-column prop="postEvalState" label="问题整改状态">
<!-- <el-table-column prop="reviewStatus" label="后评估状态"> </el-table-column> --> </el-table-column>
<el-table-column prop="reviewDate" label="评估日期"> </el-table-column> <!-- <el-table-column prop="reviewStatus" label="后评估状态"> </el-table-column> -->
</el-table> <el-table-column prop="reviewDate" label="评估日期"> </el-table-column>
</div> </el-table>
<el-pagination </div>
@size-change="handleSizeChange" <el-pagination
@current-change="handleCurrentChange" @size-change="handleSizeChange"
:current-page="currentPage" @current-change="handleCurrentChange"
:page-sizes="[10, 15, 20, 50]" :current-page="currentPage"
:page-size="100" :page-sizes="[10, 15, 20, 50]"
layout="total, sizes, prev, pager, next, jumper" :page-size="100"
:total="total" layout="total, sizes, prev, pager, next, jumper"
class="elpagination" :total="total"
> class="elpagination"
</el-pagination> >
<!-- 问题复核 --> </el-pagination>
<el-dialog <!-- 问题整改 -->
title="问题确认" <el-dialog
:visible.sync="dialogQR" title="复核情况"
width="79%" :visible.sync="dialogQR"
:modal-append-to-body="false" width="79%"
:append-to-body="false" :modal-append-to-body="false"
@close="closed" :append-to-body="false"
> @close="closed"
<div class="dialog"> >
<h3> <div class="dialog">
项目名称:一期项目-电力营销-2023年网上国网(网上国网V1.0)-设计开发项目 <h3>
</h3> 项目名称:一期项目-电力营销-2023年网上国网(网上国网V1.0)-设计开发项目
<div class="continer"> </h3>
<p class="xqtitle"><span></span>问题清单</p> <div class="continer">
<el-table <p class="xqtitle"><span></span>问题清单</p>
:data="tableDataQR" <div class="setTable">
tooltip-effect="dark" <el-table
style="width: 100%" :data="tableDataQR"
header-cell-class-name="custom-th-background" tooltip-effect="dark"
class="eltable" style="width: 100%"
:row-class-name="tableRowClassName" header-cell-class-name="custom-th-background"
:span-method="arraySpanMethod" class="eltable"
border :row-class-name="tableRowClassName"
> :span-method="arraySpanMethod"
<el-table-column border
label="项目环节" >
prop="projectStagetext" <el-table-column
width="150" label="项目环节"
> prop="projectStagetext"
</el-table-column> width="150"
<el-table-column label="序号" width="100" prop="questionId"> >
</el-table-column> </el-table-column>
<el-table-column label="序号" width="100" prop="questionId">
<el-table-column label="问题检查项" prop="quesCheckItem"> </el-table-column>
</el-table-column>
<el-table-column label="检查说明" prop="checkDesc"> <el-table-column label="问题检查项" prop="quesCheckItem" width="200">
</el-table-column> </el-table-column>
<el-table-column label="评估问题" prop="evalQues"> <el-table-column label="检查说明" prop="checkDesc" width="300">
</el-table-column> </el-table-column>
<el-table-column label="问题确认" width="auto"> <el-table-column label="评估问题" prop="evalQues" width="300">
<template slot-scope="scope"> </el-table-column>
<el-switch <el-table-column label="问题确认" width="auto">
v-model="scope.row.confirmStatus" <template slot-scope="scope">
active-color="#C0C0C0" <el-switch
inactive-color="#13ce66" v-model="scope.row.confirmStatus"
active-value="2" active-color="#C0C0C0"
inactive-value="1" inactive-color="#13ce66"
active-text="无异议" active-value="2"
inactive-text="有异议" inactive-value="1"
@change="controlSwitch($event, scope.row)" active-text="无异议"
> inactive-text="有异议"
<template v-slot:active> @change="controlSwitch($event, scope.row)"
<span>开启</span> >
</template> <template v-slot:active>
<template v-slot:inactive> <span>开启</span>
<span>关闭</span> </template>
</template> <template v-slot:inactive>
</el-switch> <span>关闭</span>
</template> </template>
</el-table-column> </el-switch>
<el-table-column label="解释批注" > </template>
<template slot-scope="scope"> </el-table-column>
<el-input v-model="scope.row.feedback"></el-input> <el-table-column label="解释批注" width="200">
</template> <template slot-scope="scope">
</el-table-column> <el-input v-model="scope.row.feedback"></el-input>
<el-table-column label="附加解释材料" prop="zgFileId" width="400"> </template>
<template slot-scope="scope"> </el-table-column>
<input type="file" @change="handleFileUpload"> <el-table-column label="附加解释材料" prop="fileId" width="400">
<button @click="submitFile(scope.row)">上传</button> <template slot-scope="scope">
</template> <input type="file" @change="handleFileUpload" />
</el-table-column> <button @click="submitFile(scope.row)">上传</button>
<el-table-column label="复核情况" prop="zgFileId"> </template>
<template slot-scope="scope"> </el-table-column>
<el-select v-model="scope.row.appealStatus" placeholder="请选择"> <el-table-column
<el-option label="请选择" value=""></el-option> label="复核情况"
<el-option label="未申诉" :value="0"></el-option> prop="rectificationStatus"
<el-option label="已申诉" :value="1"></el-option> width="200"
<el-option label="申诉驳回" :value="2"></el-option> >
<el-option label="申诉通过" :value="3"></el-option> <template slot-scope="scope">
</el-select> <el-select
</template> v-model="scope.row.appealStatus"
</el-table-column> placeholder="请选择"
</el-table> >
</div> <el-option label="请选择" value=""></el-option>
<el-option label="未申诉" :value="0"></el-option>
</div> <el-option label="已申诉" :value="1"></el-option>
<p class="midBtn"> <el-option label="申诉驳回" :value="2"></el-option>
<span @click="cancelSS()">取消</span <el-option label="申诉通过" :value="3"></el-option>
><span @click="saveSS()">保存</span> </el-select>
</p> </template>
</el-dialog> </el-table-column>
<!-- 复核下发 --> <el-table-column
<el-dialog label="上传整改材料"
title="复核情况" prop="rectificationStatus"
:visible.sync="dialogSS" width="400"
width="79%" >
:modal-append-to-body="false" <template slot-scope="scope">
:append-to-body="false" <input type="file" @change="handleFileUpload" />
> <button @click="submitFile(scope.row)">上传</button>
<div class="dialog"> </template>
<h3> </el-table-column>
项目名称:一期项目-电力营销-2023年网上国网(网上国网V1.0)-设计开发项目 <el-table-column label="情况说明" prop="zgqkFileId" width="400">
</h3> <template slot-scope="scope">
<div class="continer"> <input type="file" @change="handleFileUpload" />
<p class="xqtitle"><span></span>问题清单</p> <button @click="submitFile(scope.row)">上传</button>
<el-table </template>
:data="tableDataSS" </el-table-column>
tooltip-effect="dark" </el-table>
style="width: 100%" </div>
header-cell-class-name="custom-th-background" </div>
class="eltable" </div>
:row-class-name="tableRowClassName" <p class="midBtn">
:span-method="arraySpanMethodss" <span @click="cancelSS()">取消</span><span @click="saveSS()">保存</span>
border </p>
> </el-dialog>
<el-table-column <!-- 复核下发 -->
label="项目环节" <el-dialog
prop="projectStagetext" title="复核情况"
width="150" :visible.sync="dialogSS"
> width="79%"
</el-table-column> :modal-append-to-body="false"
<el-table-column label="序号" width="100" prop="questionId"> :append-to-body="false"
</el-table-column> >
<div class="dialog">
<el-table-column label="问题检查项" prop="quesCheckItem"> <h3>
</el-table-column> 项目名称:一期项目-电力营销-2023年网上国网(网上国网V1.0)-设计开发项目
<el-table-column label="检查说明" prop="checkDesc"> </h3>
</el-table-column> <div class="continer">
<el-table-column label="评估问题" prop="evalQues"> <p class="xqtitle"><span></span>问题清单</p>
</el-table-column> <div class="setTable">
<el-table-column label="问题确认" width="auto"> <el-table
<template slot-scope="scope"> :data="tableDataSS"
<el-switch tooltip-effect="dark"
v-model="scope.row.confirmStatus" style="width: 100%"
active-color="#C0C0C0" header-cell-class-name="custom-th-background"
inactive-color="#13ce66" class="eltable"
active-value="2" :row-class-name="tableRowClassName"
inactive-value="1" :span-method="arraySpanMethodss"
active-text="无异议" border
inactive-text="有异议" >
@change="controlSwitch($event, scope.row)" <el-table-column
> label="项目环节"
<template v-slot:active> prop="projectStagetext"
<span>开启</span> width="150"
</template> >
<template v-slot:inactive> </el-table-column>
<span>关闭</span> <el-table-column label="序号" width="100" prop="questionId">
</template> </el-table-column>
</el-switch>
</template> <el-table-column label="问题检查项" prop="quesCheckItem" width="200">
</el-table-column> </el-table-column>
<el-table-column label="解释批注" > <el-table-column label="检查说明" prop="checkDesc" width="300">
<template slot-scope="scope"> </el-table-column>
<el-input v-model="scope.row.feedback"></el-input> <el-table-column label="评估问题" prop="evalQues" width="300">
</template> </el-table-column>
</el-table-column> <el-table-column label="问题确认" width="auto">
<el-table-column label="附加解释材料" prop="zgFileId" width="400"> <template slot-scope="scope">
<template slot-scope="scope"> <el-switch
<input type="file" @change="handleFileUpload"> v-model="scope.row.confirmStatus"
<button @click="submitFile(scope.row)">上传</button> active-color="#C0C0C0"
</template> inactive-color="#13ce66"
</el-table-column> active-value="2"
<el-table-column label="复核情况" prop="zgFileId"> inactive-value="1"
<template slot-scope="scope"> active-text="无异议"
<el-select v-model="scope.row.appealStatus" placeholder="请选择"> inactive-text="有异议"
<el-option label="请选择" :value="null"></el-option> @change="controlSwitch($event, scope.row)"
<el-option label="未申诉" :value="0"></el-option> >
<el-option label="已申诉" :value="1"></el-option> <template v-slot:active>
<el-option label="申诉驳回" :value="2"></el-option> <span>开启</span>
<el-option label="申诉通过" :value="3"></el-option> </template>
</el-select> <template v-slot:inactive>
</template> <span>关闭</span>
</el-table-column> </template>
</el-table> </el-switch>
</div> </template>
</el-table-column>
<el-table-column label="解释批注" width="200">
<template slot-scope="scope">
<el-input v-model="scope.row.feedback"></el-input>
</template>
</el-table-column>
<el-table-column label="附加解释材料" prop="fileId" width="400">
<template slot-scope="scope">
<input type="file" @change="handleFileUpload" />
<button @click="submitFile(scope.row)">上传</button>
</template>
</el-table-column>
<el-table-column
label="复核情况"
prop="rectificationStatus"
width="200"
>
<template slot-scope="scope">
<el-select
v-model="scope.row.appealStatus"
placeholder="请选择"
>
<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="rectificationStatus"
width="400"
>
<template slot-scope="scope">
<input type="file" @change="handleFileUpload" />
<button @click="submitFile(scope.row)">上传</button>
</template>
</el-table-column>
<el-table-column label="情况说明" prop="zgqkFileId" width="400">
<template slot-scope="scope">
<input type="file" @change="handleFileUpload" />
<button @click="submitFile(scope.row)">上传</button>
</template>
</el-table-column>
</el-table>
</div> </div>
<p class="midBtn"> </div>
<span @click="cancel()">取消</span </div>
><span @click="save()">问题下发</span> <p class="midBtn">
</p> <span @click="cancel()">取消</span><span @click="save()">提交</span>
</el-dialog> </p>
</el-dialog>
</div> </div>
</template> </template>
<script> <script>
import { ProblemRectification, wtssSelProblemRectification,wtzgProblemRectification,wtzgxfProblemRectification} from "@/api/index"; import {
export default { ProblemRectification,
data() { wtssSelProblemRectification,
return { wtzgProblemRectification,
dialogSS:false, wtzgxfProblemRectification,
ruleForm: { } from "@/api/index";
batchYear: "", export default {
batchName: "", data() {
postEvalState: "", return {
}, dialogSS: false,
ruleFormdialogBJ: { ruleForm: {
appealDeadline: "", batchYear: "",
rectificationDeadline: "", batchName: "",
}, postEvalState: "",
rules: { },
appealDeadline: [ tableData: [],
{ tableDataQR: [],
required: true, tableDataSS: [],
message: "请选择问题申诉截止时间", checkedList: [],
trigger: "change", currentPage: 1,
}, pageSizetjcl: 10,
], total: 0,
rectificationDeadline: [ dialogQR: false,
{ pageSize: 10,
required: true, mergingPos: 0,
message: "问题整改截止时间", mergingRows: [],
trigger: "change", mergingPosss: 0,
}, mergingRowsss: [],
], };
}, },
tableData: [], mounted() {
tableDataQR: [], this.submitForm();
tableDataSS:[], },
checkedList: [], methods: {
currentPage: 1, async submitForm() {
pageSizetjcl: 10, let params = {
total: 0, current: this.currentPage,
dialogQR: false, pageSize: this.pageSize,
pageSize: 10, };
mergingPos: 0, Object.assign(params, this.ruleForm);
mergingRows: [], console.log(params);
mergingPosss: 0, let res = await ProblemRectification(params);
mergingRowsss: [], if (res.code == "200") {
}; this.tableData = res.data.records;
}, this.tableData.forEach((item) => {
mounted() { if (item.reviewStatus == "6") {
this.submitForm(); this.$set(item, "postEvalState", "整改未完成");
}, }else if (item.reviewStatus == "7") {
methods: { this.$set(item, "postEvalState", "整改已完成");
async submitForm() { }else {
let params = { this.$set(item, "postEvalState", "整改提交");
current: this.currentPage, }
pageSize: this.pageSize, });
}; this.total = res.data.total * 1;
Object.assign(params, this.ruleForm); }
console.log(params); },
let res = await ProblemRectification(params); resetForm() {
if (res.code == "200") { this.$refs.formName.resetFields();
this.tableData = res.data.records; this.currentPage = 1;
this.tableData.forEach((item) => { this.pageSize = 10;
if (item.reviewStatus >= "5") { this.submitForm();
this.$set(item, "postEvalState", "整改提交"); },
} else { //问题整改
this.$set(item, "postEvalState", "整改未提交"); async confirm() {
} this.mergingPos = 0;
}); this.mergingRows = [];
this.total = res.data.total * 1; if (this.checkedList.length != 1) {
} this.$message("请选择一条数据进行整改");
}, return;
resetForm() { }
this.$refs.formName.resetFields(); this.dialogQR = true;
this.currentPage = 1; let params = {
this.pageSize = 10; projectId: this.checkedList[0].projectId,
this.submitForm(); batchId: this.checkedList[0].batchId,
}, };
//问题整改
async confirm() { let res = await wtssSelProblemRectification(params);
this.mergingPos=0; if (res.code == "200") {
this.mergingRows=[] this.tableDataQR = res.data.records;
if (this.checkedList.length != 1) { this.tableDataQR.forEach((item) => {
this.$message("请选择一条数据进行整改"); switch (item.projectStage) {
return; case "1":
} this.$set(item, "projectStagetext", "1.可研");
this.dialogQR = true; break;
let params = { case "2":
projectId: this.checkedList[0].projectId, this.$set(item, "projectStagetext", "2.计划");
batchId: this.checkedList[0].batchId, break;
}; case "3":
this.$set(item, "projectStagetext", "3.采购");
let res = await wtssSelAssistanceConfirmatio(params); break;
if (res.code == "200") { case "4":
this.tableDataQR = res.data.records; this.$set(item, "projectStagetext", "4.合同");
this.tableDataQR.forEach((item) => { break;
case "5":
switch (item.projectStage) { this.$set(item, "projectStagetext", "5.执行");
case "1": break;
this.$set(item, "projectStagetext", "1.可研"); case "6":
break; this.$set(item, "projectStagetext", "6.结决算及转资");
case "2": break;
this.$set(item, "projectStagetext", "2.计划"); }
break; });
case "3": console.log(this.tableDataQR, "加不进去?");
this.$set(item, "projectStagetext", "3.采购"); this.dataPretreatment();
break; }
case "4": },
this.$set(item, "projectStagetext", "4.合同"); dataPretreatment() {
break; for (let i = 0; i < this.tableDataQR.length; i++) {
case "5": // tabledata 表格数据源
this.$set(item, "projectStagetext", "5.执行"); if (i === 0) {
break; this.mergingRows.push(1);
case "6": this.mergingPos = 0;
this.$set(item, "projectStagetext", "6.结决算及转资"); } else {
break; if (
} this.tableDataQR[i].projectStage ===
this.tableDataQR[i - 1].projectStage
}); ) {
console.log(this.tableDataQR,'加不进去?') //哪些数据是要合并的 合并的条件是什么
this.dataPretreatment(); this.mergingRows[this.mergingPos] += 1;
} this.mergingRows.push(0);
}, } else {
dataPretreatment() { this.mergingRows.push(1);
for (let i = 0; i < this.tableDataQR.length; i++) { this.mergingPos = i;
// tabledata 表格数据源 }
if (i === 0) { }
this.mergingRows.push(1); }
this.mergingPos = 0; },
} else { dataPretreatmentSS() {
if ( for (let i = 0; i < this.tableDataSS.length; i++) {
this.tableDataQR[i].projectStage === // tabledata 表格数据源
this.tableDataQR[i - 1].projectStage if (i === 0) {
) { this.mergingRowsss.push(1);
//哪些数据是要合并的 合并的条件是什么 this.mergingPosss = 0;
this.mergingRows[this.mergingPos] += 1; } else {
this.mergingRows.push(0); if (
} else { this.tableDataSS[i].projectStage ===
this.mergingRows.push(1); this.tableDataSS[i - 1].projectStage
this.mergingPos = i; ) {
} //哪些数据是要合并的 合并的条件是什么
} this.mergingRowsss[this.mergingPosss] += 1;
} this.mergingRowsss.push(0);
}, } else {
dataPretreatmentSS() { this.mergingRowsss.push(1);
for (let i = 0; i < this.tableDataSS.length; i++) { this.mergingPosss = i;
// tabledata 表格数据源 }
if (i === 0) { }
this.mergingRowsss.push(1); }
this.mergingPosss = 0; },
} else {
if ( //表格颜色
this.tableDataSS[i].projectStage === tableRowClassName({ row, rowIndex }) {
this.tableDataSS[i - 1].projectStage if (rowIndex % 2 == 1) {
) { return "warning-row";
//哪些数据是要合并的 合并的条件是什么 }
this.mergingRowsss[this.mergingPosss] += 1; return "";
this.mergingRowsss.push(0); },
} else { //主列表选中行信息
this.mergingRowsss.push(1); handleSelectionChange(selection) {
this.mergingPosss = i; 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;
tableRowClassName({ row, rowIndex }) { this.$forceUpdate();
if (rowIndex % 2 == 1) { console.log(this.checkedList, "2222");
return "warning-row"; },
} handleSizeChange(val) {
return ""; console.log(`每页 ${val} 条`);
}, this.pageSize = val;
//主列表选中行信息 },
handleSelectionChange(selection) { handleCurrentChange(val) {
console.log('222222') console.log(`当前页: ${val}`);
this.currentPage = val;
if (Array.isArray(selection) && selection.length > 1) { },
console.log('222222333',this.checkedList) arraySpanMethod({ row, column, rowIndex, columnIndex }) {
this.$refs.multipleTable.toggleRowSelection(selection[0], false); if (columnIndex === 0) {
this.$refs.multipleTable.toggleRowSelection(selection[1], true); //第一列
} const _row = this.mergingRows[rowIndex];
this.checkedList = this.$refs.multipleTable.selection; const _col = _row > 0 ? 1 : 0;
this.$forceUpdate(); return {
console.log(this.checkedList, "2222"); rowspan: _row,
}, colspan: _col,
handleSizeChange(val) { };
console.log(`每页 ${val} 条`); }
this.pageSize = val; },
}, arraySpanMethodss({ row, column, rowIndex, columnIndex }) {
handleCurrentChange(val) { if (columnIndex === 0) {
console.log(`当前页: ${val}`); //第一列
this.currentPage = val; const _row = this.mergingRowsss[rowIndex];
}, const _col = _row > 0 ? 1 : 0;
arraySpanMethod({ row, column, rowIndex, columnIndex }) { return {
if (columnIndex === 0) { rowspan: _row,
//第一列 colspan: _col,
const _row = this.mergingRows[rowIndex]; };
const _col = _row > 0 ? 1 : 0; }
return { },
rowspan: _row, //问题确认开关
colspan: _col, controlSwitch(val, row) {
}; console.log("333", val, row);
} },
}, cancelSS() {
arraySpanMethodss({ row, column, rowIndex, columnIndex }) { this.dialogQR = false;
if (columnIndex === 0) { },
//第一列 async save() {
const _row = this.mergingRowsss[rowIndex]; let res = await wtzgxfProblemRectification(this.tableDataSS);
const _col = _row > 0 ? 1 : 0; if (res.code == "200") {
return { this.dialogSS = false;
rowspan: _row, this.resetForm();
colspan: _col, } else {
}; this.$message("整改提交失败");
} }
}, },
//问题确认开关 cancel() {
controlSwitch(val, row) { this.dialogSS = false;
console.log("333", val, row); },
}, async saveSS() {
cancelSS(){ let res = await wtzgProblemRectification(this.tableDataQR);
this.dialogQR=false if (res.code == "200") {
}, this.dialogQR = false;
async save(){ this.resetForm();
let res= await xfappealAssistanceConfirmatio(this.tableDataSS) }
if(res.code=='200'){ },
this.dialogSS=false //问题提交
this.resetForm() async appeal() {
}else{ this.mergingPosss = 0;
this.$message('复核下发失败') this.mergingRowsss = [];
} if (this.checkedList.length != 1) {
this.$message("请选择一条数据进行提交");
}, return;
cancel(){ }
this.dialogSS=false this.dialogSS = true;
}, let params = {
async saveSS(){ projectId: this.checkedList[0].projectId,
let res= await wtfhappealAssistanceConfirmatio(this.tableDataQR) batchId: this.checkedList[0].batchId,
if(res.code=='200'){ };
this.dialogQR=false
this.resetForm() let res = await wtssSelProblemRectification(params);
} if (res.code == "200") {
}, this.tableDataSS = res.data.records;
//问题提交 this.tableDataSS.forEach((item) => {
async appeal(){ this.$set(item, "confirmStatus", "2");
this.mergingPosss=0; switch (item.projectStage) {
this.mergingRowsss=[]; case "1":
if (this.checkedList.length != 1) { this.$set(item, "projectStagetext", "1.可研");
this.$message("请选择一条数据进行提交"); break;
return; case "2":
} this.$set(item, "projectStagetext", "2.计划");
this.dialogSS = true; break;
let params = { case "3":
projectId: this.checkedList[0].projectId, this.$set(item, "projectStagetext", "3.采购");
batchId: this.checkedList[0].batchId, break;
}; case "4":
this.$set(item, "projectStagetext", "4.合同");
let res = await wtssSelAssistanceConfirmatio(params); break;
if (res.code == "200") { case "5":
this.tableDataSS = res.data.records; this.$set(item, "projectStagetext", "5.执行");
this.tableDataSS.forEach((item) => { break;
this.$set(item, "confirmStatus", "2") case "6":
switch (item.projectStage) { this.$set(item, "projectStagetext", "6.结决算及转资");
case 1: break;
this.$set(item, "projectStagetext", "1.可研"); }
break; });
case 2: console.log(this.tableDataSS);
this.$set(item, "projectStagetext", "2.计划"); this.dataPretreatmentSS();
break; }
case 3: },
this.$set(item, "projectStagetext", "3.采购"); handleFileUpload(event) {
break; console.log("来了么");
case 4: this.file = event.target.files[0];
this.$set(item, "projectStagetext", "4.合同"); },
break; submitFile(row) {
case 5: this.$message("上传还没做");
this.$set(item, "projectStagetext", "5.执行"); return;
break; console.log(row);
case 6: if (this.file) {
this.$set(item, "projectStagetext", "6.结决算及转资"); const formData = new FormData();
break; formData.append("file", this.file);
} formData.append("prjId", this.checkedList[0].projectId);
formData.append("typeCode", row.typeCode);
});
console.log(this.tableDataSS) ossupload(formData)
this.dataPretreatmentSS(); .then((response) => {
console.log(response);
} this.$set(row, "fileName", response.data.fileName);
}, })
handleFileUpload(event) { .catch((error) => {
console.log('来了么') console.error(error);
this.file = event.target.files[0]; });
}, }
submitFile(row) { },
this.$message('上传还没做') closed() {
return console.log("关闭");
console.log(row) this.handleSelectionChange();
if (this.file) { },
const formData = new FormData(); },
formData.append('file', this.file); };
formData.append('prjId',this.checkedList[0].projectId); </script>
formData.append('typeCode',row.typeCode);
ossupload(formData).then(response => {
console.log(response);
this.$set(row,'fileName',response.data.fileName)
})
.catch(error => {
console.error(error);
});
}
},
closed(){
console.log("关闭")
this.handleSelectionChange()
}
},
};
</script>
<style scoped lang="scss"> <style scoped lang="scss">
.main { .main {
font-size: 14px; font-size: 14px;
position: relative; position: relative;
height: 100%; height: 100%;
width: 100%; width: 100%;
box-sizing: border-box; box-sizing: border-box;
} }
.el-form { .el-form {
display: flex; display: flex;
width: 99%; width: 99%;
flex-wrap: wrap; flex-wrap: wrap;
border-top: 2px solid #23c6c8; border-top: 2px solid #23c6c8;
border-left: 1px solid #dee5e7; border-left: 1px solid #dee5e7;
border-right: 1px solid #dee5e7; border-right: 1px solid #dee5e7;
border-bottom: 1px solid #dee5e7; border-bottom: 1px solid #dee5e7;
padding: 20px 10px; padding: 20px 10px;
margin-bottom: 20px; margin-bottom: 20px;
.fromItem { .fromItem {
width: 24%; width: 24%;
margin: 0 0.5%; margin: 0 0.5%;
margin-bottom: 20px; margin-bottom: 20px;
.el-input { .el-input {
width: 226px; width: 226px;
} }
.el-select { .el-select {
width: 226px; width: 226px;
} }
} }
/deep/ .el-form-item__content { /deep/ .el-form-item__content {
text-align: left; text-align: left;
} }
/deep/ .el-form-item__label { /deep/ .el-form-item__label {
font-weight: bold; font-weight: bold;
color: #000; color: #000;
width: 160px !important; width: 160px !important;
} }
.button { .button {
display: inline-block; display: inline-block;
width: 100%; width: 100%;
text-align: left; text-align: left;
/deep/ .el-form-item__content { /deep/ .el-form-item__content {
margin-left: 20px !important; margin-left: 20px !important;
text-align: left; text-align: left;
img { img {
width: 14px; width: 14px;
height: 14px; height: 14px;
margin-right: 15px; margin-right: 15px;
vertical-align: middle; vertical-align: middle;
} }
} }
.el-button { .el-button {
background-color: #23c6c8; background-color: #23c6c8;
border-color: #23c6c8; border-color: #23c6c8;
color: #fff; color: #fff;
} }
} }
} }
.eltable {
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;
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;
}
/deep/ .v-modal {
position: absolute;
}
/deep/ .el-dialog__header {
background-color: #0d867f;
padding-bottom: 20px;
text-align: left;
border-radius: 10px 10px 0 0;
.el-dialog__title {
color: #fff;
}
}
/deep/ .el-table__header th {
background-color: #eeeeee;
font-weight: bold;
.cell {
color: #333;
}
}
/deep/.el-table {
position: absolute;
width: auto !important;
max-width: none;
// width: 100%;
.el-table__header-wrapper table,
.el-table__body-wrapper table {
// width: 100% !important;
}
.el-table__body,
.el-table__footer,
.el-table__header {
table-layout: auto;
}
}
.textarea {
width: 100%;
.el-textarea {
width: 60%;
}
}
.Btn {
width: 200px;
margin: 0 auto;
height: 30px;
line-height: 30px;
span {
display: inline-block;
width: 80px;
height: 25px;
line-height: 25px;
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;
}
}
/deep/ .el-dialog__headerbtn .el-dialog__close {
color: #fff;
}
.zjBtn {
width: 400px;
text-align: left;
vertical-align: middle;
span {
display: inline-block;
width: 140px;
height: 25px;
line-height: 25px;
text-align: center;
border-radius: 5px;
vertical-align: middle;
}
span:last-of-type {
background-color: #4ca6a7;
color: #fff;
padding: 5px 10px;
margin-left: 10px;
}
}
/deep/ .el-icon-position {
margin-right: 10px;
}
/deep/ .el-icon-folder-delete {
margin-right: 10px;
}
.cxItem {
text-align: right;
width: 20%;
.zjquery {
display: inline-block;
background-color: #4ca6a7;
width: 89px;
height: 40px;
color: #fff;
text-align: center;
line-height: 40px;
border-radius: 5px;
}
}
.midBtn {
margin: 0 auto;
margin-top: 20px;
span {
display: inline-block;
width: 80px;
height: 29px;
line-height: 29px;
text-align: center;
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;
}
}
.setTable {
height: 500px;
overflow-y: auto;
overflow-x: scroll;
position: relative;
overflow: auto;
}
.dialog {
// height: 700px;
// overflow-y: auto;
// overflow-x: auto;
.xqtitle {
text-align: left;
font-size: 18px;
border-bottom: 1px solid gainsboro;
padding-bottom: 10px;
span {
display: inline-block;
width: 5px;
height: 20px;
background: #0d867f;
margin-right: 14px;
vertical-align: middle;
}
}
/deep/ .el-form {
width: 65%;
flex-wrap: wrap;
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;
}
}
/deep/ .el-form-item__content {
text-align: left;
}
/deep/ .el-form-item__label {
font-weight: 400;
// color: #000;
width: 160px !important;
}
}
}
/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;
}
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-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;
}
/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 { .eltable {
box-sizing: border-box; box-sizing: border-box;
text-align: center; text-align: center;
width: 150%; width: 100%;
min-width: 150%; min-width: 100%;
margin-right: 210px;
// margin-top: 3vh;
}
/deep/ .el-table .warning-row {
background: #f0ffff;
color: #2785e6;
}
.elpagination {
text-align: right;
margin-right: 100px;
}
/deep/ .el-dialog {
border-radius: 10px;
margin-top: 3vh !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;
}
/deep/ .v-modal {
position: absolute;
}
/deep/ .el-dialog__header {
background-color: #0d867f;
padding-bottom: 20px;
text-align: left;
border-radius: 10px 10px 0 0;
.el-dialog__title {
color: #fff;
}
}
/deep/ .el-table__header th {
background-color: #eeeeee;
font-weight: bold;
.cell {
color: #333;
}
}
/deep/.el-table {
// width: 100%;
.el-table__header-wrapper table,
.el-table__body-wrapper table {
// width: 100% !important;
}
.el-table__body,
.el-table__footer,
.el-table__header {
table-layout: auto;
}
}
.textarea {
width: 100%;
.el-textarea {
width: 60%;
}
}
.Btn {
width: 200px;
margin: 0 auto;
height: 30px;
line-height: 30px;
span {
display: inline-block;
width: 80px;
height: 25px;
line-height: 25px;
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;
}
}
/deep/ .el-dialog__headerbtn .el-dialog__close {
color: #fff;
}
.zjBtn {
width: 400px;
text-align: left;
vertical-align: middle;
span {
display: inline-block;
width: 140px;
height: 25px;
line-height: 25px;
text-align: center;
border-radius: 5px;
vertical-align: middle;
}
span:last-of-type {
background-color: #4ca6a7;
color: #fff;
padding: 5px 10px;
margin-left: 10px;
}
}
/deep/ .el-icon-position {
margin-right: 10px;
}
/deep/ .el-icon-folder-delete {
margin-right: 10px;
}
.cxItem {
text-align: right;
width: 20%;
.zjquery {
display: inline-block;
background-color: #4ca6a7;
width: 89px;
height: 40px;
color: #fff;
text-align: center;
line-height: 40px;
border-radius: 5px;
}
}
.midBtn {
margin: 0 auto;
margin-top: 20px;
span {
display: inline-block;
width: 80px;
height: 29px;
line-height: 29px;
text-align: center;
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;
}
}
.dialog {
height: 700px;
overflow-y: auto;
.xqtitle {
text-align: left;
font-size: 18px;
border-bottom: 1px solid gainsboro;
padding-bottom: 10px;
span {
display: inline-block;
width: 5px;
height: 20px;
background: #0d867f;
margin-right: 14px;
vertical-align: middle;
}
}
/deep/ .el-form {
width: 65%;
flex-wrap: wrap;
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;
}
}
/deep/ .el-form-item__content {
text-align: left;
}
/deep/ .el-form-item__label {
font-weight: 400;
// color: #000;
width: 160px !important;
}
}
}
/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;
}
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-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;
}
/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: 600px;
overflow: auto;
}
.dialog{
.eltable {
box-sizing: border-box;
text-align: center;
width: 100%;
min-width: 100%;
// margin-right: 210px;
// margin-top: 3vh;
}
} }
}
// ::-webkit-scrollbar { // ::-webkit-scrollbar {
// width: 6px; // 横向滚动条 // width: 6px; // 横向滚动条
...@@ -945,5 +984,4 @@ ...@@ -945,5 +984,4 @@
// height: 6px; // 纵向滚动条必写 // height: 6px; // 纵向滚动条必写
// } // }
</style>
</style> \ No newline at end of file
\ No newline at end of file
...@@ -810,7 +810,7 @@ export default { ...@@ -810,7 +810,7 @@ export default {
border-right: 1px solid #dee5e7; border-right: 1px solid #dee5e7;
border-bottom: 1px solid #dee5e7; border-bottom: 1px solid #dee5e7;
padding: 20px 10px; padding: 20px 10px;
margin-bottom: 20px; margin: 20px 0;
.fromItem { .fromItem {
width: 24%; width: 24%;
margin: 0 0.5%; margin: 0 0.5%;
......
...@@ -1044,10 +1044,6 @@ export default { ...@@ -1044,10 +1044,6 @@ export default {
} }
} }
} }
.eltable {
widows: 100%;
box-sizing: border-box;
}
/deep/ .el-table .warning-row { /deep/ .el-table .warning-row {
background: #f0ffff; background: #f0ffff;
...@@ -1085,7 +1081,10 @@ export default { ...@@ -1085,7 +1081,10 @@ export default {
} }
/deep/.el-table { /deep/.el-table {
width: 100%; // width: 100%;
position: absolute;
// width: auto !important;
max-width: none;
.el-table__header-wrapper table, .el-table__header-wrapper table,
.el-table__body-wrapper table { .el-table__body-wrapper table {
width: 100% !important; width: 100% !important;
...@@ -1207,13 +1206,18 @@ export default { ...@@ -1207,13 +1206,18 @@ export default {
} }
.setscroll { .setscroll {
width: 100%; width: 100%;
height: 600px; height: 650px;
position: relative;
overflow: auto; overflow: auto;
} }
.setscrolldialog { .setscrolldialog {
width: 100%; width: 100%;
height: 300px; height: 300px;
overflow: auto; overflow: auto;
box-sizing: border-box;
/deep/ .el-table{
width: 96% !important;
}
} }
/deep/ .el-table__body-wrapper::-webkit-scrollbar { /deep/ .el-table__body-wrapper::-webkit-scrollbar {
......
...@@ -239,7 +239,7 @@ export default { ...@@ -239,7 +239,7 @@ export default {
width: 99%; width: 99%;
position: absolute; position: absolute;
// height: 80px; // height: 80px;
bottom: 150px; bottom: 130px;
right: 0; right: 0;
// left: 50%; // left: 50%;
z-index: 100; z-index: 100;
......
...@@ -71,8 +71,8 @@ ...@@ -71,8 +71,8 @@
</el-table-column> </el-table-column>
<el-table-column prop="projectStatus" label="项目建设阶段"> <el-table-column prop="projectStatus" label="项目建设阶段">
</el-table-column> </el-table-column>
<el-table-column prop="createTime" label="历史审核状态"> <!-- <el-table-column prop="createTime" label="历史审核状态">
</el-table-column> </el-table-column> -->
<el-table-column prop="expertName" label="评审专家名单"> <el-table-column prop="expertName" label="评审专家名单">
</el-table-column> </el-table-column>
......
...@@ -791,7 +791,7 @@ export default { ...@@ -791,7 +791,7 @@ export default {
border-right: 1px solid #dee5e7; border-right: 1px solid #dee5e7;
border-bottom: 1px solid #dee5e7; border-bottom: 1px solid #dee5e7;
padding: 20px 10px; padding: 20px 10px;
margin-bottom: 20px; margin: 20px 0;
.fromItem { .fromItem {
width: 24%; width: 24%;
margin: 0 0.5%; margin: 0 0.5%;
......
<!-- 整改辅助核验 --> <!-- 整改辅助核验 -->
<template> <template>
<div class="main"> <div class="main">
<el-form :model="ruleForm" label-width="100px" class="demo-ruleForm" ref="formName"> <el-form
<el-form-item label="批次年度:" prop="batchYear" class="fromItem" > :model="ruleForm"
<el-select v-model="ruleForm.batchYear" placeholder="请选择"> label-width="100px"
<el-option label="2024年" value="2024"></el-option> class="demo-ruleForm"
<el-option label="2023年" value="2023"></el-option> ref="formName"
<el-option label="2022年" value="2022"></el-option> >
<el-option label="2021年" value="2021"></el-option> <el-form-item label="批次年度:" prop="batchYear" class="fromItem">
</el-select> <el-select v-model="ruleForm.batchYear" placeholder="请选择">
</el-form-item> <el-option label="2024年" value="2024"></el-option>
<el-form-item label="后评估批次名称:" prop="batchName" class="fromItem"> <el-option label="2023年" value="2023"></el-option>
<el-input v-model="ruleForm.batchName" ></el-input> <el-option label="2022年" value="2022"></el-option>
</el-form-item> <el-option label="2021年" value="2021"></el-option>
<el-form-item </el-select>
label="计划评审日期:" </el-form-item>
prop="planReviewDate" <el-form-item label="后评估批次名称:" prop="batchName" class="fromItem">
class="fromItem" <el-input v-model="ruleForm.batchName"></el-input>
> </el-form-item>
<el-date-picker <el-form-item
v-model="ruleForm.planReviewDate" label="计划评审日期:"
type="date" prop="planReviewDate"
placeholder="选择日期" class="fromItem"
value-format="yyyy-MM-dd hh:mm:ss" >
> <el-date-picker
</el-date-picker> v-model="ruleForm.planReviewDate"
</el-form-item> type="date"
<el-form-item label="后评估专家组长:" prop="fullName" class="fromItem"> placeholder="选择日期"
<el-select v-model="ruleForm.fullName" placeholder="请选择"> value-format="yyyy-MM-dd hh:mm:ss"
<el-option label="zhangsan" value="0"></el-option> >
</el-select> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="后评估状态:" prop="postEvalState" class="fromItem"> <el-form-item label="后评估专家组长:" prop="fullName" class="fromItem">
<el-select v-model="ruleForm.postEvalState" placeholder="请选择"> <el-select v-model="ruleForm.fullName" placeholder="请选择">
<el-option label="未下发" value="0"></el-option> <el-option label="zhangsan" value="0"></el-option>
<el-option label="已下发" value="1"></el-option> </el-select>
<el-option label="已撤回" value="2"></el-option> </el-form-item>
</el-select> <el-form-item label="后评估状态:" prop="postEvalState" class="fromItem">
</el-form-item> <el-select v-model="ruleForm.postEvalState" placeholder="请选择">
<el-option label="未下发" value="0"></el-option>
<el-form-item label="创建人:" prop="creator" class="fromItem"> <el-option label="已下发" value="1"></el-option>
<el-input v-model="ruleForm.creator" placeholder="请输入"></el-input> <el-option label="已撤回" value="2"></el-option>
</el-form-item> </el-select>
<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"> <el-form-item label="创建人:" prop="creator" class="fromItem">
<el-button @click="submitForm()"> <el-input v-model="ruleForm.creator" placeholder="请输入"></el-input>
<img class="buttonIcon" src="../../assets/cx.png" />查询</el-button </el-form-item>
> <el-form-item label="创建时间:" prop="createTime" class="fromItem">
<el-button @click="resetForm('ruleForm')"> <el-date-picker
<img class="buttonIcon" src="../../assets/cz.png" />重置</el-button v-model="ruleForm.createTime"
> type="date"
<el-button @click="rectificationReview('ruleForm')"> placeholder="选择日期"
<img class="buttonIcon" src="../../assets/fh.png" />整改复核</el-button value-format="yyyy-MM-dd hh:mm:ss"
>
<el-button @click="submmitRectificationReview('ruleForm')">
<img class="buttonIcon" src="../../assets/fh.png" />提交整改复核</el-button
>
</el-form-item>
</el-form>
<el-table
@selection-change="handleSelectionChange"
ref="multipleTable"
:data="tableData"
tooltip-effect="dark"
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-date-picker>
</el-table-column> </el-form-item>
<el-table-column type="selection"> </el-table-column>
<el-table-column label="批次年度" width="auto" prop="batchYear">
</el-table-column>
<el-table-column prop="batchName" label="后评估批次名称" width="auto">
</el-table-column>
<el-table-column prop="postProjectName" label="评估项目名称" width="auto">
</el-table-column>
<el-table-column prop="buildStyle" 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-column>
<el-table-column prop="evaluationExpertList" label="评审专家名单" width="auto">
</el-table-column>
<el-table-column prop="problemAppealEndTime" label="问题申诉截止时间" width="auto"> <el-form-item class="button">
</el-table-column> <el-button @click="submitForm()">
<el-table-column prop="problemAbarbeitEndTime" label="问题整改截止时间" width="auto"> <img class="buttonIcon" src="../../assets/cx.png" />查询</el-button
</el-table-column> >
<el-table-column prop="RectifyReviewStatus" label="整改复核状态" width="auto"> <el-button @click="resetForm('ruleForm')">
</el-table-column> <img class="buttonIcon" src="../../assets/cz.png" />重置</el-button
<el-table-column prop="postDate" label="评估日期" width="auto"> >
</el-table-column> <el-button @click="rectificationReview('ruleForm')">
</el-table> <i class="el-icon-chat-dot-square"></i
<el-pagination >&nbsp;&nbsp;&nbsp;整改复核</el-button
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="currentPage"
:page-sizes="[10, 15, 20, 50]"
:page-size="100"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
class="elpagination"
> >
</el-pagination> <el-button @click="submmitRectificationReview('ruleForm')">
<!-- 详情弹窗 --> <i class="el-icon-document-remove"></i
<el-dialog >&nbsp;&nbsp;&nbsp;提交整改复核</el-button
title="材料同步归档详情"
:visible.sync="dialogXQ"
width="90%"
:modal-append-to-body="false"
:append-to-body="false"
> >
<div class="dialog"> </el-form-item>
<el-form </el-form>
:model="ruleFormdialogData" <div class="setscroll">
label-width="100px" <el-table
class="demo-ruleForm" @selection-change="handleSelectionChange"
> ref="multipleTable"
<el-form-item label="项目年度:" prop="projectYear" class="fromItem"> :data="tableData"
<el-input v-model="ruleFormdialogData.projectYear" disabled></el-input> tooltip-effect="dark"
</el-form-item> style="width: 100%"
<el-form-item label="项目编码:" prop="projectCode" class="fromItem"> header-cell-class-name="custom-th-background"
<el-input v-model="ruleFormdialogData.projectCode" disabled></el-input> class="eltable"
</el-form-item> :row-class-name="tableRowClassName"
<el-form-item label="项目名称:" prop="projectName" class="fromItem"> border
<el-input v-model="ruleFormdialogData.projectName" disabled></el-input> >
</el-form-item> <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>
<el-table-column prop="batchName" label="后评估批次名称" width="auto">
</el-table-column>
<el-table-column prop="projectName" label="评估项目名称" width="auto">
</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-column> -->
<el-table-column
prop="expertName"
label="评审专家名单"
width="auto"
>
</el-table-column>
<el-form-item label="项目阶段:" prop="projectPhase" class="fromItem"> <el-table-column
<el-input v-model="ruleFormdialogData.projectPhase" disabled></el-input> prop="appealDeadline"
</el-form-item> label="问题申诉截止时间"
<el-form-item label="项目环节:" prop="projectLink" class="fromItem"> width="auto"
<el-input v-model="ruleFormdialogData.projectLink" disabled></el-input> >
</el-form-item> </el-table-column>
<el-form-item label="问题检查项:" class="textarea"> <el-table-column
<el-input prop="rectificationDeadline"
type="textarea" label="问题整改截止时间"
v-model="ruleFormdialogData.checkProblem" width="auto"
disabled >
></el-input> </el-table-column>
</el-form-item> <el-table-column
<el-form-item label="是否申诉:" prop="appealFlag" class="fromItem"> prop="postEvalState"
<el-input v-model="ruleFormdialogData.appealFlag" disabled></el-input> label="整改复核状态"
</el-form-item> width="auto"
<el-form-item label="申诉是否通过:" prop="appealPassFlag" class="fromItem"> >
<el-input v-model="ruleFormdialogData.appealPassFlag" disabled></el-input> </el-table-column>
</el-form-item> <el-table-column prop="reviewDate" label="评估日期" width="auto">
<el-form-item label="是否完成整改:" prop="completeFlag" class="fromItem"> </el-table-column>
<el-input v-model="ruleFormdialogData.completeFlag" disabled></el-input> </el-table>
</el-form-item>
</el-form>
</div>
</el-dialog>
</div> </div>
<el-pagination
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="currentPage"
:page-sizes="[10, 15, 20, 50]"
:page-size="100"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
class="elpagination"
>
</el-pagination>
<!-- 问题整改 -->
<el-dialog
title="复核情况"
:visible.sync="dialogQR"
width="79%"
:modal-append-to-body="false"
:append-to-body="false"
@close="closed"
>
<div class="dialog">
<h3>
项目名称:一期项目-电力营销-2023年网上国网(网上国网V1.0)-设计开发项目
</h3>
<div class="continer">
<p class="xqtitle"><span></span>问题清单</p>
<div class="setTable">
<el-table
:data="tableDataQR"
tooltip-effect="dark"
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"
>
</el-table-column>
<el-table-column label="序号" width="100" prop="questionId">
</el-table-column>
<el-table-column
label="问题检查项"
prop="quesCheckItem"
width="200"
>
</el-table-column>
<el-table-column label="检查说明" prop="checkDesc" width="300">
</el-table-column>
<el-table-column label="评估问题" prop="evalQues" width="300">
</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)"
>
<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">
<template slot-scope="scope">
<el-input v-model="scope.row.feedback"></el-input>
</template>
</el-table-column>
<el-table-column label="附加解释材料" prop="fileId" width="400">
<template slot-scope="scope">
<input type="file" @change="handleFileUpload" />
<button @click="submitFile(scope.row)">上传</button>
</template>
</el-table-column>
<el-table-column
label="复核情况"
prop="rectificationStatus"
width="200"
>
<template slot-scope="scope">
<el-select
v-model="scope.row.appealStatus"
placeholder="请选择"
>
<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="rectificationStatus"
width="400"
>
<template slot-scope="scope">
<input type="file" @change="handleFileUpload" />
<button @click="submitFile(scope.row)">上传</button>
</template>
</el-table-column>
<el-table-column label="情况说明" prop="zgqkFileId" width="400">
<template slot-scope="scope">
<input type="file" @change="handleFileUpload" />
<button @click="submitFile(scope.row)">上传</button>
</template>
</el-table-column>
<el-table-column
label="整改复核"
prop="rectificationStatus"
width="200"
>
<template slot-scope="scope">
<el-select
v-model="scope.row.rectificationStatus"
placeholder="请选择"
>
<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-select>
</template>
</el-table-column>
</el-table>
</div>
</div>
</div>
<p class="midBtn">
<span @click="cancelSS()">取消</span><span @click="saveSS()">保存</span>
</p>
</el-dialog>
<!-- 复核下发 -->
<el-dialog
title="复核情况"
:visible.sync="dialogSS"
width="79%"
:modal-append-to-body="false"
:append-to-body="false"
>
<div class="dialog">
<h3>
项目名称:一期项目-电力营销-2023年网上国网(网上国网V1.0)-设计开发项目
</h3>
<div class="continer">
<p class="xqtitle"><span></span>问题清单</p>
<div class="setTable">
<el-table
:data="tableDataSS"
tooltip-effect="dark"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
:row-class-name="tableRowClassName"
:span-method="arraySpanMethodss"
border
>
<el-table-column
label="项目环节"
prop="projectStagetext"
width="150"
>
</el-table-column>
<el-table-column label="序号" width="100" prop="questionId">
</el-table-column>
<el-table-column
label="问题检查项"
prop="quesCheckItem"
width="200"
>
</el-table-column>
<el-table-column label="检查说明" prop="checkDesc" width="300">
</el-table-column>
<el-table-column label="评估问题" prop="evalQues" width="300">
</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)"
>
<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">
<template slot-scope="scope">
<el-input v-model="scope.row.feedback"></el-input>
</template>
</el-table-column>
<el-table-column label="附加解释材料" prop="fileId" width="400">
<template slot-scope="scope">
<input type="file" @change="handleFileUpload" />
<button @click="submitFile(scope.row)">上传</button>
</template>
</el-table-column>
<el-table-column
label="复核情况"
prop="rectificationStatus"
width="200"
>
<template slot-scope="scope">
<el-select
v-model="scope.row.appealStatus"
placeholder="请选择"
>
<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="rectificationStatus"
width="400"
>
<template slot-scope="scope">
<input type="file" @change="handleFileUpload" />
<button @click="submitFile(scope.row)">上传</button>
</template>
</el-table-column>
<el-table-column label="情况说明" prop="zgqkFileId" width="400">
<template slot-scope="scope">
<input type="file" @change="handleFileUpload" />
<button @click="submitFile(scope.row)">上传</button>
</template>
</el-table-column>
</el-table>
</div>
</div>
</div>
<p class="midBtn">
<span @click="cancel()">取消</span><span @click="save()">提交</span>
</p>
</el-dialog>
</div>
</template> </template>
<script> <script>
import { import {
evalBatchInfo, rectificationVerification,
} from "@/api/index"; wtssSelectificationVerification,
export default { bcrectificationVerification,
data() { tjrectificationVerification,
return { } from "@/api/index";
category: [ export default {
{ name: "2024", id: 1 }, data() {
{ name: "2023", id: 2 }, return {
{ name: "2022", id: 3 }, dialogSS: false,
{ name: "2021", id: 4 }, ruleForm: {
], //专业领域 batchYear: "",
showButton: true, batchName: "",
ruleForm: { planReviewDate: "",
batchYear: "", fullName: "",
batchName: "", postEvalState: "",
planReviewDate:"", creator: "",
fullName: "", createTime: "",
postEvalState: "", },
creator: "", tableData: [],
createTime: "", tableDataQR: [],
}, tableDataSS: [],
ruleFormdialogRow: { checkedList: [],
batchYear: "", currentPage: 1,
batchName: "", pageSizetjcl: 10,
buildStyle: "", total: 0,
historyCheckStatus: "", dialogQR: false,
formerYearsCheckStatus: "", pageSize: 10,
evaluationExpertList: "", mergingPos: 0,
problemAppealEndTime: "", mergingRows: [],
problemAbarbeitEndTime: "", mergingPosss: 0,
RectifyReviewStatus: "", mergingRowsss: [],
postDate: "", };
}, },
ruleFormdialogData: { mounted() {
batchYear: "", this.submitForm();
batchName: "", },
},
xfParams: "", //下发入参
tableData: [],
tableDataQD: [], //清单列表
checkedList: [],
currentPage: 1,
currentPagetjcl: 1,
pageSizetjcl: 10,
total: 0,
dialogXQ: false,
currentPageBJ:1,
pageSizeBJ:10,
dialogAdd: false,
dialogAddzj: false,
pageSize: 10,
current: 1,
addtotal: 0,
currentAdd: 1,
pageSizeAdd: 10,
currentedit: 1,
pageSizeedit: 10,
xfParam: "",
dialogedit: false,
expertIdList: [],
totalBJ:0,
addZJList: [],
expertState: "",
fields: "",
addcurrentPage: 1,
addtableData: [],
message: {},
};
},
mounted() {
this.submitForm();
},
methods: {
async submitForm(formName) {
let params = {
current: this.currentPage,
pageSize: this.pageSize,
};
Object.assign(params, this.ruleForm);
console.log(params);
let res = await evalBatchInfo(params);
if (res.code == "200") { mounted() {
this.tableData = res.data.records; this.submitForm();
this.total = res.data.total * 1; },
} methods: {
}, async submitForm() {
resetForm() { let params = {
this.$refs.formName.resetFields(); current: this.currentPage,
this.currentPage = 1; pageSize: this.pageSize,
this.pageSize = 10; };
this.submitForm(); Object.assign(params, this.ruleForm);
}, console.log(params);
//详情 let res = await rectificationVerification(params);
async detailsForm() { if (res.code == "200") {
if (this.checkedList.length != 1) { this.tableData = res.data.records;
this.$message("请选择"); this.tableData.forEach((item) => {
return; if (item.reviewStatus >= "5") {
} this.$set(item, "postEvalState", "整改提交");
console.log("222",this.checkedList); } else {
this.dialogXQ = true; this.$set(item, "postEvalState", "整改未提交");
this.ruleFormdialogData=this.checkedList[0] }
let params = { });
current: this.currentedit, this.total = res.data.total * 1;
pageSize: this.pageSizeedit, }
batchId:this.checkedList[0].batchId },
}; resetForm() {
console.log(params,'params') this.$refs.formName.resetFields();
let res = await expert(params); this.currentPage = 1;
this.pageSize = 10;
this.submitForm();
},
//整改复核
async rectificationReview() {
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,
};
this.addtableData=res.data.records let res = await wtssSelectificationVerification(params);
this.totalBJ=res.data.total * 1; if (res.code == "200") {
}, this.tableDataQR = res.data.records;
rectificationReview(){ this.tableDataQR.forEach((item) => {
alert("整改复核"); switch (item.projectStage) {
}, case "1":
submmitRectificationReview(){ this.$set(item, "projectStagetext", "1.可研");
alert("提交整改复核"); break;
}, case "2":
//表格颜色 this.$set(item, "projectStagetext", "2.计划");
tableRowClassName({ row, rowIndex }) { break;
if (rowIndex % 2 == 1) { case "3":
return "warning-row"; this.$set(item, "projectStagetext", "3.采购");
} break;
return ""; case "4":
}, this.$set(item, "projectStagetext", "4.合同");
//主列表选中行信息 break;
handleSelectionChange(selection) { case "5":
if (Array.isArray(selection) && selection.length > 1) { this.$set(item, "projectStagetext", "5.执行");
this.$refs.multipleTable.toggleRowSelection(selection[0], false); break;
this.$refs.multipleTable.toggleRowSelection(selection[1], true); case "6":
} this.$set(item, "projectStagetext", "6.结决算及转资");
this.checkedList = this.$refs.multipleTable.selection; break;
this.ruleFormdialogRow = this.checkedList[0]; }
console.log(this.checkedList, "2222"); });
}, console.log(this.tableDataQR, "加不进去?");
handleSizeChange(val) { this.dataPretreatment();
console.log(`每页 ${val} 条`); }
this.pageSize = val; },
}, dataPretreatment() {
handleCurrentChange(val) { for (let i = 0; i < this.tableDataQR.length; i++) {
console.log(`当前页: ${val}`); // tabledata 表格数据源
this.currentPage = val; if (i === 0) {
}, this.mergingRows.push(1);
handleSizeChangeZJ(val) { this.mergingPos = 0;
console.log(`每页 ${val} 条`); } else {
this.pageSizeZJ = val; if (
}, this.tableDataQR[i].projectStage ===
handleCurrentChangeZJ(val) { this.tableDataQR[i - 1].projectStage
console.log(`当前页: ${val}`); ) {
this.currentZJ = val; //哪些数据是要合并的 合并的条件是什么
}, this.mergingRows[this.mergingPos] += 1;
handleSizeChangetjcl(val) { this.mergingRows.push(0);
console.log(`每页 ${val} 条`); } else {
this.pageSizetjcl = val; this.mergingRows.push(1);
}, this.mergingPos = i;
handleCurrentChangetjcl(val) { }
console.log(`当前页: ${val}`);
this.currentPagetjcl = val;
},
handleSizeChangeAdd(val) {
this.pageSizeAdd = val;
},
handleCurrentChangeAdd(val) {
this.currentAdd = val;
},
handleSizeChangeBJ(val) {
console.log(`每页 ${val} 条`);
this.pageSizeBJ = val;
},
handleCurrentChangeBJ(val) {
console.log(`当前页: ${val}`);
this.currentPageBJ = val;
},
cancel() {
this.dialog = false;
},
},
};
</script>
<style scoped lang="scss">
.main {
font-size: 14px;
position: relative;
height: 100%;
width: 100%;
box-sizing: border-box;
}
.el-form {
display: flex;
width: 99%;
flex-wrap: wrap;
border-top: 2px solid #23c6c8;
border-left: 1px solid #dee5e7;
border-right: 1px solid #dee5e7;
border-bottom: 1px solid #dee5e7;
padding: 20px 10px;
margin-bottom: 20px;
.fromItem {
width: 24%;
margin: 0 0.5%;
margin-bottom: 20px;
.el-input {
width: 226px;
}
.el-select {
width: 226px;
}
}
/deep/ .el-form-item__content {
text-align: left;
} }
/deep/ .el-form-item__label { }
font-weight: bold; },
color: #000; dataPretreatmentSS() {
width: 160px !important; for (let i = 0; i < this.tableDataSS.length; i++) {
// tabledata 表格数据源
if (i === 0) {
this.mergingRowsss.push(1);
this.mergingPosss = 0;
} else {
if (
this.tableDataSS[i].projectStage ===
this.tableDataSS[i - 1].projectStage
) {
//哪些数据是要合并的 合并的条件是什么
this.mergingRowsss[this.mergingPosss] += 1;
this.mergingRowsss.push(0);
} else {
this.mergingRowsss.push(1);
this.mergingPosss = i;
}
} }
.button { }
display: inline-block; },
width: 100%;
text-align: left;
/deep/ .el-form-item__content {
margin-left: 20px !important;
text-align: left;
img {
width: 14px;
height: 14px;
margin-right: 15px;
vertical-align: middle;
}
}
.el-button {
background-color: #23c6c8;
border-color: #23c6c8;
color: #fff;
}
}
}
.eltable {
widows: 100%;
box-sizing: border-box;
}
/deep/ .el-table .warning-row {
background: #f0ffff;
color: #2785e6;
}
.elpagination {
text-align: right;
margin-right: 100px;
}
/deep/ .el-dialog {
border-radius: 10px;
}
/deep/ .el-dialog__wrapper {
position: absolute;
}
/deep/ .v-modal {
position: absolute;
}
/deep/ .el-dialog__header {
background-color: #0d867f;
padding-bottom: 20px;
text-align: left;
border-radius: 10px 10px 0 0;
.el-dialog__title {
color: #fff;
}
}
/deep/ .el-table__header th {
background-color: #eeeeee;
font-weight: bold;
.cell {
color: #333;
}
}
/deep/.el-table { //表格颜色
width: 100%; tableRowClassName({ row, rowIndex }) {
.el-table__header-wrapper table, if (rowIndex % 2 == 1) {
.el-table__body-wrapper table { return "warning-row";
width: 100% !important; }
} return "";
.el-table__body, },
.el-table__footer, //主列表选中行信息
.el-table__header { handleSelectionChange(selection) {
table-layout: auto; console.log("222222");
}
}
.dialog {
.xqtitle {
text-align: left;
font-size: 18px;
span { if (Array.isArray(selection) && selection.length > 1) {
display: inline-block; console.log("222222333", this.checkedList);
width: 5px; this.$refs.multipleTable.toggleRowSelection(selection[0], false);
height: 20px; this.$refs.multipleTable.toggleRowSelection(selection[1], true);
background: #0d867f; }
margin-right: 14px; this.checkedList = this.$refs.multipleTable.selection;
vertical-align: middle; this.$forceUpdate();
} console.log(this.checkedList, "2222");
} },
} handleSizeChange(val) {
.textarea { console.log(`每页 ${val} 条`);
width: 100%; this.pageSize = val;
.el-textarea { },
width: 60%; handleCurrentChange(val) {
} console.log(`当前页: ${val}`);
} this.currentPage = val;
.Btn { },
width: 200px; arraySpanMethod({ row, column, rowIndex, columnIndex }) {
margin: 0 auto; if (columnIndex === 0) {
span { //第一列
display: inline-block; const _row = this.mergingRows[rowIndex];
width: 80px; const _col = _row > 0 ? 1 : 0;
height: 25px; return {
line-height: 25px; rowspan: _row,
text-align: center; colspan: _col,
border-radius: 4px; };
margin-right: 12px; }
} },
span:first-of-type { arraySpanMethodss({ row, column, rowIndex, columnIndex }) {
border: 1px solid #000; if (columnIndex === 0) {
} //第一列
span:last-of-type { const _row = this.mergingRowsss[rowIndex];
background-color: #0d867f; const _col = _row > 0 ? 1 : 0;
border: 1px solid #0d867f; return {
color: #fff; rowspan: _row,
} colspan: _col,
} };
/deep/ .el-dialog__headerbtn .el-dialog__close { }
color: #fff; },
//问题确认开关
controlSwitch(val, row) {
console.log("333", val, row);
},
cancelSS() {
this.dialogQR = false;
},
async save() {
let res = await tjrectificationVerification(this.tableDataSS);
if (res.code == "200") {
this.dialogSS = false;
this.resetForm();
} else {
this.$message("整改复核提交失败");
}
},
cancel() {
this.dialogSS = false;
},
async saveSS() {
let res = await bcrectificationVerification(this.tableDataQR);
if (res.code == "200") {
this.dialogQR = false;
this.resetForm();
}
},
//提交整改复核
async submmitRectificationReview() {
this.mergingPosss = 0;
this.mergingRowsss = [];
if (this.checkedList.length != 1) {
this.$message("请选择一条数据进行提交");
return;
}
this.dialogSS = true;
let params = {
projectId: this.checkedList[0].projectId,
batchId: this.checkedList[0].batchId,
};
let res = await wtssSelectificationVerification(params);
if (res.code == "200") {
this.tableDataSS = res.data.records;
this.tableDataSS.forEach((item) => {
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.tableDataSS);
this.dataPretreatmentSS();
}
},
handleFileUpload(event) {
console.log("来了么");
this.file = event.target.files[0];
},
submitFile(row) {
this.$message("上传还没做");
return;
console.log(row);
if (this.file) {
const formData = new FormData();
formData.append("file", this.file);
formData.append("prjId", this.checkedList[0].projectId);
formData.append("typeCode", row.typeCode);
ossupload(formData)
.then((response) => {
console.log(response);
this.$set(row, "fileName", response.data.fileName);
})
.catch((error) => {
console.error(error);
});
}
},
closed() {
console.log("关闭");
this.handleSelectionChange();
},
},
};
</script>
<style scoped lang="scss">
.main {
font-size: 14px;
position: relative;
height: 100%;
width: 100%;
box-sizing: border-box;
}
.el-form {
display: flex;
width: 99%;
flex-wrap: wrap;
border-top: 2px solid #23c6c8;
border-left: 1px solid #dee5e7;
border-right: 1px solid #dee5e7;
border-bottom: 1px solid #dee5e7;
padding: 20px 10px;
margin-bottom: 20px;
.fromItem {
width: 24%;
margin: 0 0.5%;
margin-bottom: 20px;
.el-input {
width: 226px;
} }
.zjBtn { .el-select {
width: 200px; width: 226px;
text-align: left;
span {
display: inline-block;
width: 80px;
height: 25px;
line-height: 25px;
text-align: center;
border-radius: 5px;
}
span:last-of-type {
background-color: #4ca6a7;
color: #fff;
padding: 5px 10px;
margin-left: 10px;
}
} }
/deep/ .el-icon-position { }
margin-right: 10px; /deep/ .el-form-item__content {
text-align: left;
}
/deep/ .el-form-item__label {
font-weight: bold;
color: #000;
width: 160px !important;
}
.button {
display: inline-block;
width: 100%;
text-align: left;
/deep/ .el-form-item__content {
margin-left: 20px !important;
text-align: left;
img {
width: 14px;
height: 14px;
margin-right: 15px;
vertical-align: middle;
}
} }
/deep/ .el-icon-folder-delete { .el-button {
margin-right: 10px; background-color: #23c6c8;
border-color: #23c6c8;
color: #fff;
} }
.cxItem { }
text-align: right; }
width: 20%; .eltable {
.zjquery { box-sizing: border-box;
display: inline-block; text-align: center;
background-color: #4ca6a7; width: 150%;
width: 89px; min-width: 150%;
height: 40px; }
color: #fff; /deep/ .el-table .warning-row {
text-align: center; background: #f0ffff;
line-height: 40px; color: #2785e6;
border-radius: 5px; }
} .elpagination {
text-align: right;
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;
}
/deep/ .v-modal {
position: absolute;
}
/deep/ .el-dialog__header {
background-color: #0d867f;
padding-bottom: 20px;
text-align: left;
border-radius: 10px 10px 0 0;
.el-dialog__title {
color: #fff;
}
}
/deep/ .el-table__header th {
background-color: #eeeeee;
font-weight: bold;
.cell {
color: #333;
}
}
/deep/.el-table {
position: absolute;
width: auto !important;
max-width: none;
// width: 100%;
.el-table__header-wrapper table,
.el-table__body-wrapper table {
// width: 100% !important;
}
.el-table__body,
.el-table__footer,
.el-table__header {
table-layout: auto;
}
}
.textarea {
width: 100%;
.el-textarea {
width: 60%;
}
}
.Btn {
width: 200px;
margin: 0 auto;
height: 30px;
line-height: 30px;
span {
display: inline-block;
width: 80px;
height: 25px;
line-height: 25px;
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;
}
}
/deep/ .el-dialog__headerbtn .el-dialog__close {
color: #fff;
}
.zjBtn {
width: 400px;
text-align: left;
vertical-align: middle;
span {
display: inline-block;
width: 140px;
height: 25px;
line-height: 25px;
text-align: center;
border-radius: 5px;
vertical-align: middle;
}
span:last-of-type {
background-color: #4ca6a7;
color: #fff;
padding: 5px 10px;
margin-left: 10px;
}
}
/deep/ .el-icon-position {
margin-right: 10px;
}
/deep/ .el-icon-folder-delete {
margin-right: 10px;
}
.cxItem {
text-align: right;
width: 20%;
.zjquery {
display: inline-block;
background-color: #4ca6a7;
width: 89px;
height: 40px;
color: #fff;
text-align: center;
line-height: 40px;
border-radius: 5px;
}
}
.midBtn {
margin: 0 auto;
margin-top: 20px;
span {
display: inline-block;
width: 80px;
height: 29px;
line-height: 29px;
text-align: center;
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;
}
}
.setTable {
height: 500px;
overflow-y: auto;
overflow-x: scroll;
position: relative;
overflow: auto;
}
.dialog {
// height: 700px;
// overflow-y: auto;
// overflow-x: auto;
.xqtitle {
text-align: left;
font-size: 18px;
border-bottom: 1px solid gainsboro;
padding-bottom: 10px;
span {
display: inline-block;
width: 5px;
height: 20px;
background: #0d867f;
margin-right: 14px;
vertical-align: middle;
} }
.midBtn { }
margin: 0 auto; /deep/ .el-form {
span { width: 65%;
display: inline-block; flex-wrap: wrap;
width: 80px; padding: 0 10px;
height: 25px; text-align: center;
line-height: 25px; margin: 100px auto;
text-align: center; border: none;
margin-right: 10px;
border-radius: 5px; .fromItem {
} text-align: center;
span:first-of-type { width: 51%;
border: 1px solid grey; margin: 0 auto;
} margin-bottom: 20px;
span:last-of-type { .el-input {
background-color: #4ca6a7; width: 226px;
color: #fff; }
} .el-select {
width: 226px;
}
} }
/deep/.el-table th.el-table__cell.is-leaf, .el-table td.el-table__cell{ /deep/ .el-form-item__content {
text-align: center; text-align: left;
} }
/deep/ .el-table__cell{ /deep/ .el-form-item__label {
text-align: center; font-weight: 400;
// color: #000;
width: 160px !important;
} }
}
}
/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;
}
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-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;
}
/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> </style>
\ No newline at end of file
...@@ -296,18 +296,6 @@ export default { ...@@ -296,18 +296,6 @@ export default {
planReviewDate: "", planReviewDate: "",
fullName: "", fullName: "",
}, },
rules: {
batchYear: [
{ required: true, message: "请选择批次年度", trigger: "change" },
],
batchName: [
{
required: true,
message: "请选择后评估批次名称",
trigger: "change",
},
],
},
tableData: [], tableData: [],
tableDataQD: [], //清单列表 tableDataQD: [], //清单列表
checkedList: [], checkedList: [],
......
...@@ -12,8 +12,13 @@ export default { ...@@ -12,8 +12,13 @@ export default {
<style lang="scss" scoped> <style lang="scss" scoped>
.main{ .main{
height: 100%;
padding: 10px; padding: 10px;
padding-top:5px; padding-top:5px;
padding-bottom: 0;
// overflow-y: auto;
// overflow-x: hidden;
// overflow: auto;
} }
</style> </style>
\ No newline at end of file
...@@ -12,7 +12,19 @@ ...@@ -12,7 +12,19 @@
<div style="margin-right: 5px"> <div style="margin-right: 5px">
<img src="../../assets/user.png" alt="user" /> <img src="../../assets/user.png" alt="user" />
</div> </div>
<div style="margin-right: 35px">您好,管理员</div> <!-- <div style="margin-right: 35px" >您好,管理员</div> -->
<el-dropdown>
<el-button type="primary">
<div style="margin-right: 35px" @click="changeSelect()">您好,管理员</div>
</el-button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item>黄金糕</el-dropdown-item>
<el-dropdown-item>狮子头</el-dropdown-item>
<el-dropdown-item>螺蛳粉</el-dropdown-item>
<el-dropdown-item>双皮奶</el-dropdown-item>
<el-dropdown-item>蚵仔煎</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
<div style="margin-right: 5px"> <div style="margin-right: 5px">
<img src="../../assets/exit.png" alt="exit" /> <img src="../../assets/exit.png" alt="exit" />
</div> </div>
...@@ -109,7 +121,10 @@ export default { ...@@ -109,7 +121,10 @@ export default {
navigateToChild(num,pushUrl){ navigateToChild(num,pushUrl){
this.active=num this.active=num
this.$router.push({ path: pushUrl }); this.$router.push({ path: pushUrl });
} },
changeSelect(){
},
} }
}; };
</script> </script>
......
<template> <template>
<div class="navbar"> <div class="navbar">
<el-scrollbar style="height: 900px" ref="scroll">
<el-scrollbar style="height:900px;" ref="scroll"> <el-menu
<el-menu router
router class="el-menu-vertical-demo"
class="el-menu-vertical-demo" :unique-opened="true"
:unique-opened="true" @open="handleOpen"
@open="handleOpen" @close="handleClose"
@close="handleClose" :default-active="activeIndex"
:default-active="activeIndex"
>
<!-- :default-openeds="['submenu1']" -->
<el-submenu
v-for="(item, index) in menuList"
:key="index"
:index="index + ''"
class="submenu1"
> >
<template slot="title"> <!-- :default-openeds="['submenu1']" -->
<span class="iconfont treeIcon1">&#xe644;</span>
<span>{{ item.name }}</span>
</template>
<el-submenu <el-submenu
v-for="(item2, index2) in item.children" v-for="(item, index) in menuList"
:key="index2" :key="index"
:index="index + '-' + index2 + ''" :index="index + ''"
class="submenu2" class="submenu1"
> >
<template slot="title"> <template slot="title">
<span class="iconfont treeIcon2">&#xe644;</span> <span class="iconfont treeIcon1">&#xe644;</span>
<span>{{ item2.name }}</span> <span>{{ item.name }}</span>
</template> </template>
<el-menu-item v-for="(item3, index3) in item2.children" <el-submenu
:key="index3" v-for="(item2, index2) in item.children"
:index="item3.url" :key="index2"
class="submenu3" :index="index + '-' + index2 + ''"
> class="submenu2"
<span class="title3"></span> {{ item3.name }} >
</el-menu-item> <template slot="title">
<span class="iconfont treeIcon2">&#xe644;</span>
<span>{{ item2.name }}</span>
</template>
<el-menu-item
v-for="(item3, index3) in item2.children"
:key="index3"
:index="item3.url"
class="submenu3"
>
<span class="title3"></span> {{ item3.name }}
</el-menu-item>
</el-submenu>
</el-submenu> </el-submenu>
</el-submenu> </el-menu>
</el-menu> </el-scrollbar>
</el-scrollbar>
</div> </div>
</template> </template>
...@@ -58,10 +58,72 @@ export default { ...@@ -58,10 +58,72 @@ export default {
name: "后评估自查", name: "后评估自查",
url: "", url: "",
children: [ children: [
{ name: "自查流程发起", url: "", children: [] }, {
{ name: "项目自评估", url: "", children: [] }, name: "评估项目辅助选定",
{ name: "自查问题整改", url: "", children: [] }, url: "/mainLayout/auxiliarySelection",
{ name: "自查问题复核", url: "", children: [] }, children: [],
},
{
name: "评估批次确认发布",
url: "/mainLayout/confirmRelease",
children: [],
},
{
name: "评估材料自动获取",
url: "/mainLayout/materialAcquisition",
children: [],
},
// { name: "评估材料自动解析", url: "/mainLayout/materialAnalysis", children: [] },
{
name: "项目辅助检查",
url: "/mainLayout/auxiliaryInspection",
children: [],
},
{
name: "项目评估结果确认更改",
url: "/mainLayout/confirmChanges",
children: [],
},
{
name: "评估结果辅助查看",
url: "/mainLayout/assistedViewing",
children: [],
},
{
name: "问题辅助下发",
url: "/mainLayout/assitedDistribution",
children: [],
},
{
name: "问题辅助查询",
url: "/mainLayout/auxiliaryQuery",
children: [],
},
{
name: "问题辅助反馈",
url: "/mainLayout/assistedFeedback",
children: [],
},
{
name: "申诉辅助确认",
url: "/mainLayout/assistedConfirm",
children: [],
},
{
name: "问题辅助整改",
url: "/mainLayout/assistedRect",
children: [],
},
{
name: "整改辅助核验",
url: "/mainLayout/correctiveAssistanceVerification",
children: [],
},
{
name: "材料同步归档",
url: "/mainLayout/attachSynchronousArchiving",
children: [],
},
], ],
}, },
{ {
...@@ -84,18 +146,56 @@ export default { ...@@ -84,18 +146,56 @@ export default {
children: [], children: [],
}, },
// { name: "评估材料自动解析", url: "/mainLayout/materialAnalysis", children: [] }, // { name: "评估材料自动解析", url: "/mainLayout/materialAnalysis", children: [] },
{ name: "项目辅助检查", url: "/mainLayout/auxiliaryInspection", children: [] }, {
{ name: "项目评估结果确认更改", url: "/mainLayout/confirmChanges", children: [] }, name: "项目辅助检查",
{ name: "评估结果辅助查看", url: "/mainLayout/assistedViewing", children: [] }, url: "/mainLayout/auxiliaryInspection",
{ name: "问题辅助下发", url: "/mainLayout/assitedDistribution", children: [] }, children: [],
{ name: "问题辅助查询", url: "/mainLayout/auxiliaryQuery", children: [] }, },
{ name: "问题辅助反馈", url: "/mainLayout/assistedFeedback", children: [] }, {
{ name: "申诉辅助确认", url: "/mainLayout/assistedConfirm", children: [] }, name: "项目评估结果确认更改",
{ name: "问题辅助整改", url: "/mainLayout/assistedRect", children: [] }, url: "/mainLayout/confirmChanges",
{ name: "整改辅助核验", url: "/mainLayout/correctiveAssistanceVerification", children: [] }, children: [],
{ name: "材料同步归档", },
{
name: "评估结果辅助查看",
url: "/mainLayout/assistedViewing",
children: [],
},
{
name: "问题辅助下发",
url: "/mainLayout/assitedDistribution",
children: [],
},
{
name: "问题辅助查询",
url: "/mainLayout/auxiliaryQuery",
children: [],
},
{
name: "问题辅助反馈",
url: "/mainLayout/assistedFeedback",
children: [],
},
{
name: "申诉辅助确认",
url: "/mainLayout/assistedConfirm",
children: [],
},
{
name: "问题辅助整改",
url: "/mainLayout/assistedRect",
children: [],
},
{
name: "整改辅助核验",
url: "/mainLayout/correctiveAssistanceVerification",
children: [],
},
{
name: "材料同步归档",
url: "/mainLayout/attachSynchronousArchiving", url: "/mainLayout/attachSynchronousArchiving",
children: [] }, children: [],
},
], ],
}, },
{ {
...@@ -105,12 +205,12 @@ export default { ...@@ -105,12 +205,12 @@ export default {
{ {
name: "项目检查问题查询", name: "项目检查问题查询",
url: "/mainLayout/projectCheckQuestionQuery", url: "/mainLayout/projectCheckQuestionQuery",
children: [] children: [],
}, },
{ {
name: "整改反馈查询", name: "整改反馈查询",
url: "/mainLayout/rectificationFeedbackQuery", url: "/mainLayout/rectificationFeedbackQuery",
children: [] children: [],
}, },
], ],
}, },
...@@ -221,25 +321,24 @@ export default { ...@@ -221,25 +321,24 @@ export default {
}, },
], ],
isOpen: false, isOpen: false,
openeds: ['0'],//默认展开导航栏 openeds: ["0"], //默认展开导航栏
activeIndex:"/mainLayout/auxiliarySelection", activeIndex: "/mainLayout/auxiliarySelection",
// openeds:["/mainLayout/confirmRelease"] // openeds:["/mainLayout/confirmRelease"]
}; };
}, },
mounted(){ mounted() {
this.activeIndex = this.$route.path;
this.activeIndex = this.$route.path
}, },
methods: { methods: {
handleOpen(e, a) { handleOpen(e, a) {
this.$nextTick(() => { this.$nextTick(() => {
console.log(this.$refs.scroll,'this.$refs.scroll') console.log(this.$refs.scroll, "this.$refs.scroll");
this.$refs.scroll.update() this.$refs.scroll.update();
}) });
console.log("打开", e, a); console.log("打开", e, a);
if (a.length == 1) { if (a.length == 1) {
console.log('一级菜单') console.log("一级菜单");
let treeIcon1 = document.getElementsByClassName("treeIcon1"); let treeIcon1 = document.getElementsByClassName("treeIcon1");
for (var i = 0; i < treeIcon1.length; i++) { for (var i = 0; i < treeIcon1.length; i++) {
...@@ -248,16 +347,14 @@ export default { ...@@ -248,16 +347,14 @@ export default {
treeIcon1[e].style.transform = "rotate(90deg)"; treeIcon1[e].style.transform = "rotate(90deg)";
} else if (a.length == 2) { } else if (a.length == 2) {
let opened = document.getElementsByClassName("is-opened"); let opened = document.getElementsByClassName("is-opened");
console.log('二级菜单', opened) console.log("二级菜单", opened);
let treeIcon2=opened[0].querySelectorAll('.treeIcon2') let treeIcon2 = opened[0].querySelectorAll(".treeIcon2");
console.log( treeIcon2,'333') console.log(treeIcon2, "333");
for (var i = 0; i < treeIcon2.length; i++) { for (var i = 0; i < treeIcon2.length; i++) {
treeIcon2[i].style.transform = "rotate(0deg)"; treeIcon2[i].style.transform = "rotate(0deg)";
} }
treeIcon2[e.slice(2)].style.transform = "rotate(90deg)"; treeIcon2[e.slice(2)].style.transform = "rotate(90deg)";
} }
}, },
handleClose(e, a) { handleClose(e, a) {
...@@ -267,7 +364,7 @@ export default { ...@@ -267,7 +364,7 @@ export default {
treeIcon1[e].style.transform = "rotate(0deg)"; treeIcon1[e].style.transform = "rotate(0deg)";
} else if (a.length == 2) { } else if (a.length == 2) {
let opened = document.getElementsByClassName("is-opened"); let opened = document.getElementsByClassName("is-opened");
let treeIcon2=opened[0].querySelectorAll('.treeIcon2') let treeIcon2 = opened[0].querySelectorAll(".treeIcon2");
treeIcon2[e.slice(2)].style.transform = "rotate(0deg)"; treeIcon2[e.slice(2)].style.transform = "rotate(0deg)";
} }
}, },
...@@ -279,10 +376,10 @@ export default { ...@@ -279,10 +376,10 @@ export default {
<style lang="scss" scoped> <style lang="scss" scoped>
.navbar { .navbar {
width: 235px; width: 235px;
height:100%; height: 100%;
padding-top: 10px; padding-top: 10px;
} }
/deep/.el-menu{ /deep/.el-menu {
border: none !important; border: none !important;
box-sizing: border-box; box-sizing: border-box;
} }
...@@ -291,13 +388,13 @@ export default { ...@@ -291,13 +388,13 @@ export default {
background-color: #63a4a6; background-color: #63a4a6;
margin-bottom: 10px; margin-bottom: 10px;
border-radius: 5px; border-radius: 5px;
box-shadow: 1px 2px 4px 0px #0068624C; box-shadow: 1px 2px 4px 0px #0068624c;
} }
.submenu1 /deep/ .el-submenu__title { .submenu1 /deep/ .el-submenu__title {
height: 40px; height: 40px;
line-height: 40px; line-height: 40px;
box-shadow: 1px 2px 4px 0px #0068624C; box-shadow: 1px 2px 4px 0px #0068624c;
font-size: 16px; font-size: 16px;
font-weight: bold; font-weight: bold;
color: #fff; color: #fff;
...@@ -307,12 +404,12 @@ export default { ...@@ -307,12 +404,12 @@ export default {
background-color: #effbfa; background-color: #effbfa;
margin-top: 8px; margin-top: 8px;
border-radius: 5px; border-radius: 5px;
box-shadow: 1px 2px 4px 0px #0068624C; box-shadow: 1px 2px 4px 0px #0068624c;
} }
.submenu2 /deep/ .el-submenu__title { .submenu2 /deep/ .el-submenu__title {
height: 40px; height: 40px;
line-height: 40px; line-height: 40px;
box-shadow: 1px 2px 4px 0px #0068624C; box-shadow: 1px 2px 4px 0px #0068624c;
font-size: 15px; font-size: 15px;
font-weight: bold; font-weight: bold;
color: grey; color: grey;
...@@ -364,19 +461,18 @@ export default { ...@@ -364,19 +461,18 @@ export default {
font-style: normal; font-style: normal;
-webkit-font-smoothing: antialiased; -webkit-font-smoothing: antialiased;
} }
.title3{ .title3 {
display: inline-block; display: inline-block;
width: 5px; width: 5px;
height: 5px; height: 5px;
border-radius: 5px; border-radius: 5px;
margin-right: 5px; margin-right: 5px;
vertical-align: middle; vertical-align: middle;
background-color: #63a4a6; background-color: #63a4a6;
text-align: left; text-align: left;
} }
.submenu3 { .submenu3 {
border-radius:5px; border-radius: 5px;
height: 40px; height: 40px;
line-height: 40px; line-height: 40px;
font-size: 15px; font-size: 15px;
...@@ -386,14 +482,14 @@ export default { ...@@ -386,14 +482,14 @@ export default {
padding-left: 40px !important; padding-left: 40px !important;
background-color: #effbfa; background-color: #effbfa;
margin-top: 8px; margin-top: 8px;
box-shadow: 1px 2px 4px 0px #0068624C; box-shadow: 1px 2px 4px 0px #0068624c;
padding-right: 0; padding-right: 0;
} }
.submenu2 /deep/ .is-active{ .submenu2 /deep/ .is-active {
background: rgba(99, 164, 166, 0.6); background: rgba(99, 164, 166, 0.6);
color:#FFF; color: #fff;
} }
.menu-scrollbar /deep/ .el-scrollbar__view { .menu-scrollbar /deep/ .el-scrollbar__view {
height: 100%; /* 设置高度以填满父容器 */ height: 100%; /* 设置高度以填满父容器 */
} }
/deep/.el-scrollbar__thumb { /deep/.el-scrollbar__thumb {
......
<template> <template>
<div class="layout" > <div class="layout">
<LeftBar class="bar"></LeftBar> <LeftBar class="bar"></LeftBar>
<ContinerView class="continer" id="myElement"> <ContinerView class="continer" id="myElement">
<router-view></router-view> <router-view></router-view>
</ContinerView> </ContinerView>
</div>
</div>
</template> </template>
<script> <script>
import ContinerView from './continerView' import ContinerView from "./continerView";
import LeftBar from './leftBar' import LeftBar from "./leftBar";
export default { export default {
components: {
components: { ContinerView,
ContinerView, LeftBar,
LeftBar },
}, data() {
data() { return {
return{ title: "确认更改",
title:'确认更改' };
} },
mounted() {
}, window.addEventListener("resize", this.handleResize);
mounted(){ },
window.addEventListener('resize', this.handleResize); methods: {
handleResize() {
},
methods: {
handleResize() {
// 处理窗口大小变化的逻辑 // 处理窗口大小变化的逻辑
console.log('Window was resized!'); console.log("Window was resized!");
var element = document.getElementById('myElement'); // 获取元素 var element = document.getElementById("myElement"); // 获取元素
var maxWidth = window.innerWidth; // 窗口宽度 var maxWidth = window.innerWidth; // 窗口宽度
var elementWidth = element.offsetWidth; // 元素宽度 var elementWidth = element.offsetWidth; // 元素宽度
var elementLeft = element.offsetLeft; // 元素左边缘到文档左边缘的距离 var elementLeft = element.offsetLeft; // 元素左边缘到文档左边缘的距离
if (elementLeft + elementWidth > maxWidth) { if (elementLeft + elementWidth > maxWidth) {
// 如果元素右边界超出窗口右边界,将元素左边缘设置为窗口宽度减去元素宽度 // 如果元素右边界超出窗口右边界,将元素左边缘设置为窗口宽度减去元素宽度
element.style.left = maxWidth - elementWidth + 'px'; element.style.left = maxWidth - elementWidth + "px";
} }
} },
},
} };
}
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.layout{ .layout {
width: 100%; width: 100%;
// height: 100%; // height: 100%;
height: 100vh; height: 100vh;
display: flex; display: flex;
padding: 15px; padding: 15px;
background-color: #fff; background-color: #fff;
overflow: hidden; // overflow: hidden;
.bar{ .bar {
width: 235px; width: 235px;
height: 100%; height: 100%;
} }
.continer{ .continer {
width: 100%; width: 100%;
// height: 100%; height: 100%;
flex:1; // height:86vh;
flex: 1;
box-sizing: border-box; box-sizing: border-box;
} // overflow: auto;
}
} }
</style> </style>
\ No newline at end of file
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!