Commit 63f3b89b by liangzhen

反馈提交

1 parent 33572eb1
...@@ -187,3 +187,20 @@ export function wtqdqselect(params) { ...@@ -187,3 +187,20 @@ export function wtqdqselect(params) {
export function clqdselect(params) { export function clqdselect(params) {
return post(`/api/select/clqd`, params) return post(`/api/select/clqd`, params)
} }
//申诉辅助确认
// 申诉辅助确认分页查询
export function appealAssistanceConfirmatio(params) {
return post(`/api/appealAssistanceConfirmation/`, params)
}
//问题复核保存
export function wtfhappealAssistanceConfirmatio(params) {
return post(`/api/appealAssistanceConfirmation/wtfh`, params)
}
//问题复核下发
export function xfappealAssistanceConfirmatio(params) {
return post(`/api/appealAssistanceConfirmation/wtfhxf`, params)
}
//申诉查询
export function wtssSelAssistanceConfirmatio(params) {
return post(`/api/appealAssistanceConfirmation/wtssSel`, params)
}
\ No newline at end of file
<template> <template>
<div class="main"> <div class="main">
<el-form :model="ruleForm" label-width="100px" class="demo-ruleForm"> <el-form :model="ruleForm" label-width="100px" class="demo-ruleForm" ref="formName">
<el-form-item label="批次年度:" prop="batchYear" class="fromItem"> <el-form-item label="批次年度:" prop="batchYear" class="fromItem">
<el-select v-model="ruleForm.batchYear" placeholder="请选择"> <el-select v-model="ruleForm.batchYear" placeholder="请选择">
<el-option label="2024年" value="2024"></el-option> <el-option label="2024年" value="2024"></el-option>
...@@ -27,11 +27,13 @@ ...@@ -27,11 +27,13 @@
<el-button @click="resetForm('ruleForm')"> <el-button @click="resetForm('ruleForm')">
<img class="buttonIcon" src="../../assets/cz.png" />重置</el-button <img class="buttonIcon" src="../../assets/cz.png" />重置</el-button
> >
<el-button @click="confirm('ruleForm')"> <el-button @click="confirm()">
<i class="el-icon-position"></i>问题确认</el-button <i class="el-icon-chat-dot-square"></i
>&nbsp;&nbsp;&nbsp;问题复核</el-button
> >
<el-button @click="appeal('ruleForm')"> <el-button @click="appeal()">
<i class="el-icon-folder-remove"></i>申诉</el-button <i class="el-icon-document-remove"></i
>&nbsp;&nbsp;&nbsp;问题下发</el-button
> >
</el-form-item> </el-form-item>
</el-form> </el-form>
...@@ -40,7 +42,7 @@ ...@@ -40,7 +42,7 @@
ref="multipleTable" ref="multipleTable"
:data="tableData" :data="tableData"
tooltip-effect="dark" tooltip-effect="dark"
style="width: 100%;height: 70%" style="width: 100%"
header-cell-class-name="custom-th-background" header-cell-class-name="custom-th-background"
class="eltable" class="eltable"
:row-class-name="tableRowClassName" :row-class-name="tableRowClassName"
...@@ -58,18 +60,17 @@ ...@@ -58,18 +60,17 @@
</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="字段待确认" label="评审专家名单"> <el-table-column prop="expertName" label="评审专家名单">
</el-table-column> </el-table-column>
<el-table-column prop="字段待确认" label="问题申诉截止时间"> <el-table-column prop="appealDeadline" label="问题申诉截止时间">
</el-table-column> </el-table-column>
<el-table-column prop="字段待确认" label="问题整改截止时间"> <el-table-column prop="rectificationDeadline" label="问题整改截止时间">
</el-table-column> </el-table-column>
<el-table-column prop="字段待确认" label="问题下发状态"> <el-table-column prop="postEvalState" label="复核状态"> </el-table-column>
</el-table-column> <!-- <el-table-column prop="reviewStatus" label="后评估状态"> </el-table-column> -->
<el-table-column prop="字段待确认" label="后评估状态"> </el-table-column>
<el-table-column prop="reviewDate" label="评估日期"> </el-table-column> <el-table-column prop="reviewDate" label="评估日期"> </el-table-column>
</el-table> </el-table>
<el-pagination <el-pagination
...@@ -81,56 +82,60 @@ ...@@ -81,56 +82,60 @@
layout="total, sizes, prev, pager, next, jumper" layout="total, sizes, prev, pager, next, jumper"
:total="total" :total="total"
class="elpagination" class="elpagination"
> >
</el-pagination> </el-pagination>
<!-- 问题确认 --> <!-- 问题确认 -->
<el-dialog <el-dialog
title="提交评估材料" title="问题确认"
:visible.sync="dialogXQ" :visible.sync="dialogQR"
width="90%" width="90%"
:modal-append-to-body="false" :modal-append-to-body="false"
:append-to-body="false" :append-to-body="false"
@close="closed"
> >
<div class="dialog"> <div class="dialog">
<H3 <h3>
>项目名称:一期项目-电力营销-2023年网上国网(网上国网V1.0)-设计开发项目</H3 项目名称:一期项目-电力营销-2023年网上国网(网上国网V1.0)-设计开发项目
> </h3>
<div class="continer">
<p class="xqtitle"><span></span>问题确认</p> <p class="xqtitle"><span></span>问题清单</p>
<el-scrollbar style="height:400px;" ref="scroll">
<el-table <el-table
@selection-change="handleSelectionChange" :data="tableDataQR"
:data="addtableData"
tooltip-effect="dark" tooltip-effect="dark"
style="width: 100%" style="width: 100%"
header-cell-class-name="custom-th-background" header-cell-class-name="custom-th-background"
class="eltable" class="eltable"
:row-class-name="tableRowClassName" :row-class-name="tableRowClassName"
:span-method="arraySpanMethod"
border border
> >
<el-table-column label="项目环节" width="auto" prop="projectId"> <el-table-column
label="项目环节"
prop="projectStagetext"
width="150"
>
</el-table-column> </el-table-column>
<el-table-column label="序号" width="55" type="index"> <el-table-column label="序号" width="100" prop="questionId">
</el-table-column> </el-table-column>
<el-table-column prop="projectYear" label="问题检查项" width="auto"> <el-table-column label="问题检查项" prop="quesCheckItem">
</el-table-column> </el-table-column>
<el-table-column prop="projectName" label="检查说明" width="auto"> <el-table-column label="检查说明" prop="checkDesc">
</el-table-column> </el-table-column>
<el-table-column prop="projectCategory" label="评估问题" width="auto"> <el-table-column label="评估问题" prop="evalQues">
</el-table-column> </el-table-column>
<el-table-column label="问题确认" width="auto"> <el-table-column label="问题确认" width="auto">
<template slot-scope="scope"> <template slot-scope="scope">
<el-switch <el-switch
v-model="scope.row.states" v-model="scope.row.confirmStatus"
active-color="#C0C0C0" active-color="#C0C0C0"
inactive-color="#13ce66" inactive-color="#13ce66"
active-value="Y" active-value="2"
inactive-value="N" inactive-value="1"
active-text="无异议" active-text="无异议"
inactive-text="有异议" inactive-text="有异议"
@change="controlSwitch($event, scope.row)"> @change="controlSwitch($event, scope.row)"
>
<template v-slot:active> <template v-slot:active>
<span>开启</span> <span>开启</span>
</template> </template>
...@@ -140,60 +145,77 @@ ...@@ -140,60 +145,77 @@
</el-switch> </el-switch>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="解释批注" >
<template slot-scope="scope">
<el-input v-model="scope.row.feedback"></el-input>
</template>
</el-table-column>
<el-table-column label="附加解释材料" prop="zgFileId">
<template slot-scope="scope">
<input type="file" @change="handleFileUpload">
<button @click="submitFile(scope.row)">上传</button>
</template>
</el-table-column>
</el-table> </el-table>
</el-scrollbar> </div>
</div>
<p class="midBtn"> <p class="midBtn">
<span @click="cancel()">取消</span <span @click="cancelSS()">取消</span
><span @click="save()">确认</span> ><span @click="saveSS()">确认</span>
</p> </p>
</div>
</el-dialog> </el-dialog>
<!-- 申诉 --> <!-- 申诉 -->
<el-dialog <el-dialog
title="申诉" title="申诉"
:visible.sync="dialogAdd" :visible.sync="dialogSS"
width="90%" width="90%"
:modal-append-to-body="false" :modal-append-to-body="false"
:append-to-body="false" :append-to-body="false"
> >
<div class="dialog"> <div class="dialog">
<H3 <h3>
>项目名称:一期项目-电力营销-2023年网上国网(网上国网V1.0)-设计开发项目</H3 项目名称:一期项目-电力营销-2023年网上国网(网上国网V1.0)-设计开发项目
> </h3>
<div class="continer">
<p class="xqtitle"><span></span>问题清单</p> <p class="xqtitle"><span></span>问题清单</p>
<el-scrollbar style="height:400px;" ref="scroll">
<el-table <el-table
:data="sstableData" :data="tableDataSS"
tooltip-effect="dark" tooltip-effect="dark"
style="width: 100%" style="width: 100%"
header-cell-class-name="custom-th-background" header-cell-class-name="custom-th-background"
class="eltable" class="eltable"
:row-class-name="tableRowClassName" :row-class-name="tableRowClassName"
:span-method="arraySpanMethodss"
border border
> >
<el-table-column label="项目环节" width="auto" prop="projectId"> <el-table-column
label="项目环节"
prop="projectStagetext"
width="150"
>
</el-table-column> </el-table-column>
<el-table-column label="序号" width="55" type="index"> <el-table-column label="序号" width="100" prop="questionId">
</el-table-column> </el-table-column>
<el-table-column prop="projectYear" label="问题检查项" width="auto"> <el-table-column label="问题检查项" prop="quesCheckItem">
</el-table-column> </el-table-column>
<el-table-column prop="projectName" label="检查说明" width="auto"> <el-table-column label="检查说明" prop="checkDesc">
</el-table-column> </el-table-column>
<el-table-column prop="projectCategory" label="评估问题" width="auto"> <el-table-column label="评估问题" prop="evalQues">
</el-table-column> </el-table-column>
<el-table-column label="问题确认" width="auto"> <el-table-column label="问题确认" width="auto">
<template slot-scope="scope"> <template slot-scope="scope">
<el-switch <el-switch
v-model="scope.row.states" v-model="scope.row.confirmStatus"
active-color="#C0C0C0" active-color="#C0C0C0"
inactive-color="#13ce66" inactive-color="#13ce66"
active-value="Y" active-value="2"
inactive-value="N" inactive-value="1"
active-text="无异议" active-text="无异议"
inactive-text="有异议" inactive-text="有异议"
@change="controlSwitch($event, scope.row)"> @change="controlSwitch($event, scope.row)"
>
<template v-slot:active> <template v-slot:active>
<span>开启</span> <span>开启</span>
</template> </template>
...@@ -203,446 +225,198 @@ ...@@ -203,446 +225,198 @@
</el-switch> </el-switch>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="解释批注" >
<el-table-column prop="contentSecond" label="内容">
<template slot-scope="scope"> <template slot-scope="scope">
<el-input v-model="scope.row.contentSecond" placeholder="请输入内容" clearable></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 prop="zgqkFileId" label="附加解释材料" width="auto"> <template slot-scope="scope">
<input type="file" @change="handleFileUpload">
<el-upload <button @click="submitFile(scope.row)">上传</button>
action="https://your-upload-api" </template>
:on-success="imguploadSuccess"
:on-error="imguploadError"
>
<!-- accept="" -->
<el-button slot="trigger" size="small" type="primary">选择文件</el-button>
</el-upload>
</el-table-column> </el-table-column>
</el-table> </el-table>
</el-scrollbar> </div>
</div>
<p class="midBtn"> <p class="midBtn">
<span @click="cancelSS()">取消</span <span @click="cancel()">取消</span
><span @click="saveSS()">确认</span> ><span @click="save()">确认</span>
</p> </p>
</div>
</el-dialog> </el-dialog>
</div> </div>
</template> </template>
<script> <script>
import { import { appealAssistanceConfirmatio, wtfhappealAssistanceConfirmatio,xfappealAssistanceConfirmatio,wtssSelAssistanceConfirmatio} from "@/api/index";
ProblemAssistedFeedback,
ssProblemAssistedFeedback,
qrProblemAssistedFeedback,
wtssSelProblemAssistedFeedback,
} from "@/api/index";
export default { export default {
data() { data() {
return { return {
sstableData:[], dialogSS:false,
value1: true,
ruleForm: { ruleForm: {
batchYear: "", batchYear: "",
batchName: "", batchName: "",
postEvalState: "", postEvalState: "",
}, },
ruleFormdialog: {
batchYear: "",
batchName: "",
planReviewDate: "",
fullName: "",
},
ruleFormZJ: {
fields: "",
expertState: "",
fullName: "",
},
ruleFormdialogAdd: {
batchYear: "",
batchName: "",
planReviewDate: "",
description: "",
remark: "",
},
ruleFormdialogBJ: { ruleFormdialogBJ: {
batchYear: "", appealDeadline: "",
batchName: "", rectificationDeadline: "",
planReviewDate: "",
prjsOfExpert: "",
description: "",
}, },
rules: { rules: {
prjsOfExpert: [ appealDeadline: [
{ {
required: true, required: true,
message: "请选择每位专家可评估项目数", message: "请选择问题申诉截止时间",
trigger: "prjsOfExpert", trigger: "change",
},
],
rectificationDeadline: [
{
required: true,
message: "问题整改截止时间",
trigger: "change",
}, },
], ],
}, },
tableData: [], tableData: [],
tableDataQD: [], //清单列表 tableDataQR: [],
tableDataSS:[],
checkedList: [], checkedList: [],
currentPage: 1, currentPage: 1,
currentPagetjcl: 1,
pageSizetjcl: 10, pageSizetjcl: 10,
total: 0, total: 0,
dialogXQ: false, dialogQR: false,
currentPageBJ: 1,
pageSizeBJ: 10,
dialogAdd: false,
dialogAddzj: false,
pageSize: 10, pageSize: 10,
current: 1, mergingPos: 0,
pageSizeZJ: 10, mergingRows: [],
currentZJ: 1, mergingPosss: 0,
addtotal: 0, mergingRowsss: [],
currentAdd: 1,
pageSizeAdd: 10,
currentedit: 1,
pageSizeedit: 10,
xfParam: "",
dialogedit: false,
expertIdList: [],
totalBJ: 0,
addZJList: [],
expertState: "",
fields: "",
zjfullName: "",
zjtotal: 0,
zjtableData: [],
addcurrentPage: 1,
addtableData: [],
message: {},
currentCell: null,
}; };
}, },
mounted() { mounted() {
this.submitForm(); this.submitForm();
}, },
methods: { methods: {
imguploadError() { async submitForm() {
console.log('上传失败')
},
//上传成功
imguploadSuccess(res) {
console.log(res,'22')
//回显图片
this.videoimgurl = res.data;
},
cellClickAction(row,column, cell, event){
if (event.target.nodeName === "INPUT" || event.target.nodeName === "TEXTAREA") {
event.target.focus();
console.log(row,column, cell, event,'333')
}
},
async saveSS(){
console.log(this.sstableData)
let params={
}
let res= await ssProblemAssistedFeedback(params)
this.dialogAdd=false
},
cancelSS(){
this.dialogAdd=false
},
async submitForm(formName) {
let params = { let params = {
current: this.currentPage, current: this.currentPage,
pageSize: this.pageSize, pageSize: this.pageSize,
}; };
Object.assign(params, this.ruleForm); Object.assign(params, this.ruleForm);
console.log(params); console.log(params);
let res = await ProblemAssistedFeedback(params); let res = await appealAssistanceConfirmatio(params);
if (res.code == "200") { if (res.code == "200") {
this.tableData = res.data.records; this.tableData = res.data.records;
this.tableData.forEach((item) => {
if (item.appealStatus == "1") {
this.$set(item, "postEvalState", "已申诉");
} else if (item.appealStatus == "2") {
this.$set(item, "postEvalState", "申诉驳回");
} else if (item.appealStatus == "3") {
this.$set(item, "postEvalState", "申诉通过");
} else {
this.$set(item, "postEvalState", "未申诉");
}
});
this.total = res.data.total * 1; this.total = res.data.total * 1;
} }
}, },
resetForm() { resetForm() {
this.$refs[formName].resetFields(); this.$refs.formName.resetFields();
this.currentPage = 1; this.currentPage = 1;
this.pageSize = 10; this.pageSize = 10;
this.submitForm(); this.submitForm();
}, },
//问题确认 //确认问题
async confirm() { async confirm() {
this.mergingPos=0;
this.mergingRows=[]
if (this.checkedList.length != 1) { if (this.checkedList.length != 1) {
this.$message("请选择"); this.$message("请选择一条数据进行复核");
return; return;
} }
console.log("222", this.checkedList); this.dialogQR = true;
this.dialogXQ = true; let params = {
let params = {}; projectId: this.checkedList[0].projectId,
this.addtableData = [ batchId: this.checkedList[0].batchId,
{ };
expertId: 1,
fullName: "王小明",
gender: 1,
birthday: "2024-04-23",
compId: 10001,
qualification: "硕士",
contact: "13241375678",
email: "115485@qq.com",
fields: "1",
expertLevel: 1,
description: "1",
expertState: 1,
creator: 1,
createTime: "2024-04-23 14:47:07",
lastUpdatedby: 1,
lastUpdateTime: "2024-04-23 14:47:12",
column14: 1,
},
{
expertId: 2,
fullName: "李晓帅",
gender: 0,
birthday: "2024-04-23",
compId: 10001,
qualification: "博士",
contact: "13241375678",
email: "115485@qq.com",
fields: "1",
expertLevel: 1,
description: "1",
expertState: 1,
creator: 1,
createTime: "2024-04-23 14:47:07",
lastUpdatedby: 1,
lastUpdateTime: "2024-04-23 14:47:12",
column14: 1,
},
{
expertId: 3,
fullName: "张晓楠",
gender: 1,
birthday: "2024-04-23",
compId: 10002,
qualification: "博士后",
contact: "13241375678",
email: "115485@qq.com",
fields: "1",
expertLevel: 1,
description: "1",
expertState: 1,
creator: 1,
createTime: "2024-04-23 14:47:07",
lastUpdatedby: 1,
lastUpdateTime: "2024-04-23 14:47:12",
column14: 1,
},
{
expertId: 1,
fullName: "王小明",
gender: 1,
birthday: "2024-04-23",
compId: 10001,
qualification: "硕士",
contact: "13241375678",
email: "115485@qq.com",
fields: "1",
expertLevel: 1,
description: "1",
expertState: 1,
creator: 1,
createTime: "2024-04-23 14:47:07",
lastUpdatedby: 1,
lastUpdateTime: "2024-04-23 14:47:12",
column14: 1,
},
{
expertId: 2,
fullName: "李晓帅",
gender: 0,
birthday: "2024-04-23",
compId: 10001,
qualification: "博士",
contact: "13241375678",
email: "115485@qq.com",
fields: "1",
expertLevel: 1,
description: "1",
expertState: 1,
creator: 1,
createTime: "2024-04-23 14:47:07",
lastUpdatedby: 1,
lastUpdateTime: "2024-04-23 14:47:12",
column14: 1,
},
{
expertId: 3,
fullName: "张晓楠",
gender: 1,
birthday: "2024-04-23",
compId: 10002,
qualification: "博士后",
contact: "13241375678",
email: "115485@qq.com",
fields: "1",
expertLevel: 1,
description: "1",
expertState: 1,
creator: 1,
createTime: "2024-04-23 14:47:07",
lastUpdatedby: 1,
lastUpdateTime: "2024-04-23 14:47:12",
column14: 1,
},
{
expertId: 1,
fullName: "王小明",
gender: 1,
birthday: "2024-04-23",
compId: 10001,
qualification: "硕士",
contact: "13241375678",
email: "115485@qq.com",
fields: "1",
expertLevel: 1,
description: "1",
expertState: 1,
creator: 1,
createTime: "2024-04-23 14:47:07",
lastUpdatedby: 1,
lastUpdateTime: "2024-04-23 14:47:12",
column14: 1,
},
{
expertId: 2,
fullName: "李晓帅",
gender: 0,
birthday: "2024-04-23",
compId: 10001,
qualification: "博士",
contact: "13241375678",
email: "115485@qq.com",
fields: "1",
expertLevel: 1,
description: "1",
expertState: 1,
creator: 1,
createTime: "2024-04-23 14:47:07",
lastUpdatedby: 1,
lastUpdateTime: "2024-04-23 14:47:12",
column14: 1,
},
{
expertId: 3,
fullName: "张晓楠",
gender: 1,
birthday: "2024-04-23",
compId: 10002,
qualification: "博士后",
contact: "13241375678",
email: "115485@qq.com",
fields: "1",
expertLevel: 1,
description: "1",
expertState: 1,
creator: 1,
createTime: "2024-04-23 14:47:07",
lastUpdatedby: 1,
lastUpdateTime: "2024-04-23 14:47:12",
column14: 1,
},
{
expertId: 1,
fullName: "王小明",
gender: 1,
birthday: "2024-04-23",
compId: 10001,
qualification: "硕士",
contact: "13241375678",
email: "115485@qq.com",
fields: "1",
expertLevel: 1,
description: "1",
expertState: 1,
creator: 1,
createTime: "2024-04-23 14:47:07",
lastUpdatedby: 1,
lastUpdateTime: "2024-04-23 14:47:12",
column14: 1,
},
{
expertId: 2,
fullName: "李晓帅",
gender: 0,
birthday: "2024-04-23",
compId: 10001,
qualification: "博士",
contact: "13241375678",
email: "115485@qq.com",
fields: "1",
expertLevel: 1,
description: "1",
expertState: 1,
creator: 1,
createTime: "2024-04-23 14:47:07",
lastUpdatedby: 1,
lastUpdateTime: "2024-04-23 14:47:12",
column14: 1,
},
{
expertId: 3,
fullName: "张晓楠",
gender: 1,
birthday: "2024-04-23",
compId: 10002,
qualification: "博士后",
contact: "13241375678",
email: "115485@qq.com",
fields: "1",
expertLevel: 1,
description: "1",
expertState: 1,
creator: 1,
createTime: "2024-04-23 14:47:07",
lastUpdatedby: 1,
lastUpdateTime: "2024-04-23 14:47:12",
column14: 1,
},
];
this.addtableData.forEach((item) => { let res = await wtssSelAssistanceConfirmatio(params);
this.$set( item, "states", 'Y');
});
return;
// Object.assign(params, this.checkedList[0]);
let res = await wtssSelProblemAssistedFeedback(params);
if (res.code == "200") { if (res.code == "200") {
this.addtableData = res.data.records; this.tableDataQR = res.data.records;
this.tableDataQR.forEach((item) => {
switch (item.projectStage) {
case "1":
this.$set(item, "projectStagetext", "1.可研");
break;
case "2":
this.$set(item, "projectStagetext", "2.计划");
break;
case "3":
this.$set(item, "projectStagetext", "3.采购");
break;
case "4":
this.$set(item, "projectStagetext", "4.合同");
break;
case "5":
this.$set(item, "projectStagetext", "5.执行");
break;
case "6":
this.$set(item, "projectStagetext", "6.结决算及转资");
break;
} }
},
//问题确认开关
controlSwitch(val, row) {
console.log("333", val, row);
// this.$set(row, "state", 0 * 1);
},
//问题确认取消
cancel(){
this.dialogXQ=false
});
console.log(this.tableDataQR,'加不进去?')
this.dataPretreatment();
}
}, },
async save(){ dataPretreatment() {
let params={ for (let i = 0; i < this.tableDataQR.length; i++) {
// tabledata 表格数据源
if (i === 0) {
this.mergingRows.push(1);
this.mergingPos = 0;
} else {
if (
this.tableDataQR[i].projectStage ===
this.tableDataQR[i - 1].projectStage
) {
//哪些数据是要合并的 合并的条件是什么
this.mergingRows[this.mergingPos] += 1;
this.mergingRows.push(0);
} else {
this.mergingRows.push(1);
this.mergingPos = i;
}
}
} }
let res=await qrProblemAssistedFeedback(params)
this.dialogXQ=false
}, },
dataPretreatmentSS() {
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;
}
}
}
},
//表格颜色 //表格颜色
tableRowClassName({ row, rowIndex }) { tableRowClassName({ row, rowIndex }) {
...@@ -653,12 +427,15 @@ ...@@ -653,12 +427,15 @@
}, },
//主列表选中行信息 //主列表选中行信息
handleSelectionChange(selection) { handleSelectionChange(selection) {
console.log('222222')
if (Array.isArray(selection) && selection.length > 1) { if (Array.isArray(selection) && selection.length > 1) {
console.log('222222333',this.checkedList)
this.$refs.multipleTable.toggleRowSelection(selection[0], false); this.$refs.multipleTable.toggleRowSelection(selection[0], false);
this.$refs.multipleTable.toggleRowSelection(selection[1], true); this.$refs.multipleTable.toggleRowSelection(selection[1], true);
} }
this.checkedList = this.$refs.multipleTable.selection; this.checkedList = this.$refs.multipleTable.selection;
this.ruleFormdialog = this.checkedList[0]; this.$forceUpdate();
console.log(this.checkedList, "2222"); console.log(this.checkedList, "2222");
}, },
handleSizeChange(val) { handleSizeChange(val) {
...@@ -669,108 +446,128 @@ ...@@ -669,108 +446,128 @@
console.log(`当前页: ${val}`); console.log(`当前页: ${val}`);
this.currentPage = val; this.currentPage = val;
}, },
handleSizeChangeZJ(val) { arraySpanMethod({ row, column, rowIndex, columnIndex }) {
console.log(`每页 ${val} 条`); if (columnIndex === 0) {
this.pageSizeZJ = val; //第一列
const _row = this.mergingRows[rowIndex];
const _col = _row > 0 ? 1 : 0;
return {
rowspan: _row,
colspan: _col,
};
}
}, },
handleCurrentChangeZJ(val) { arraySpanMethodss({ row, column, rowIndex, columnIndex }) {
console.log(`当前页: ${val}`); if (columnIndex === 0) {
this.currentZJ = val; //第一列
const _row = this.mergingRowsss[rowIndex];
const _col = _row > 0 ? 1 : 0;
return {
rowspan: _row,
colspan: _col,
};
}
}, },
handleSizeChangeAdd(val) { //问题确认开关
this.pageSizeAdd = val; controlSwitch(val, row) {
console.log("333", val, row);
}, },
handleCurrentChangeAdd(val) { cancelSS(){
this.currentAdd = val; this.dialogQR=false
}, },
async save(){
let res= await ssProblemAssistedFeedback(this.tableDataSS)
if(res.code=='200'){
this.dialogSS=false
this.resetForm()
}
handleCurrentChangeBJ(val) {
console.log(`当前页: ${val}`);
this.currentPageBJ = val;
}, },
cancel(){
//点击申诉 this.dialogSS=false
async appeal() { },
//只能选择未确认的 这块需要加一下 async saveSS(){
let res= await qrProblemAssistedFeedback(this.tableDataQR)
if(res.code=='200'){
this.dialogQR=false
this.resetForm()
}
},
//申诉
async appeal(){
this.mergingPosss=0;
this.mergingRowsss=[];
if (this.checkedList.length != 1) { if (this.checkedList.length != 1) {
this.$message("请选择"); this.$message("请选择一条数据进行申诉");
return; return;
} }
this.dialogAdd=true this.dialogSS = true;
let params = { let params = {
current: this.currentPage, projectId: this.checkedList[0].projectId,
pageSize: this.pageSize, batchId: this.checkedList[0].batchId,
}; };
Object.assign(params, this.ruleForm);
console.log(params); let res = await wtssSelProblemAssistedFeedback(params);
(this.sstableData = [ if (res.code == "200") {
{ this.tableDataSS = res.data.records;
expertId: 1, this.tableDataSS.forEach((item) => {
fullName: "王小明", this.$set(item, "confirmStatus", "2")
gender: 1, switch (item.projectStage) {
birthday: "2024-04-23", case 1:
compId: 10001, this.$set(item, "projectStagetext", "1.可研");
qualification: "硕士", break;
contact: "13241375678", case 2:
email: "115485@qq.com", this.$set(item, "projectStagetext", "2.计划");
fields: "1", break;
expertLevel: 1, case 3:
description: "1", this.$set(item, "projectStagetext", "3.采购");
expertState: 1, break;
creator: 1, case 4:
createTime: "2024-04-23 14:47:07", this.$set(item, "projectStagetext", "4.合同");
lastUpdatedby: 1, break;
lastUpdateTime: "2024-04-23 14:47:12", case 5:
column14: 1, this.$set(item, "projectStagetext", "5.执行");
break;
case 6:
this.$set(item, "projectStagetext", "6.结决算及转资");
break;
}
});
console.log(this.tableDataSS)
this.dataPretreatmentSS();
}
}, },
{ handleFileUpload(event) {
expertId: 2, console.log('来了么')
fullName: "李晓帅", this.file = event.target.files[0];
gender: 0,
birthday: "2024-04-23",
compId: 10001,
qualification: "博士",
contact: "13241375678",
email: "115485@qq.com",
fields: "1",
expertLevel: 1,
description: "1",
expertState: 1,
creator: 1,
createTime: "2024-04-23 14:47:07",
lastUpdatedby: 1,
lastUpdateTime: "2024-04-23 14:47:12",
column14: 1,
}, },
{ submitFile(row) {
expertId: 3, this.$message('上传还没做')
fullName: "张晓楠", return
gender: 1, console.log(row)
birthday: "2024-04-23", if (this.file) {
compId: 10002, const formData = new FormData();
qualification: "博士后", formData.append('file', this.file);
contact: "13241375678", formData.append('prjId',this.checkedList[0].projectId);
email: "115485@qq.com", formData.append('typeCode',row.typeCode);
fields: "1",
expertLevel: 1,
description: "1",
expertState: 1,
creator: 1,
createTime: "2024-04-23 14:47:07",
lastUpdatedby: 1,
lastUpdateTime: "2024-04-23 14:47:12",
column14: 1,
},
]),
(this.total = 2);
return;
let res = await ProblemAssistedFeedback(params);
if (res.code == "200") {
this.sstableData = res.data.records; ossupload(formData).then(response => {
this.total = res.data.total * 1; console.log(response);
this.$set(row,'fileName',response.data.fileName)
})
.catch(error => {
console.error(error);
});
} }
}, },
closed(){
console.log("关闭")
this.handleSelectionChange()
}
}, },
}; };
</script> </script>
...@@ -835,6 +632,7 @@ ...@@ -835,6 +632,7 @@
.eltable { .eltable {
box-sizing: border-box; box-sizing: border-box;
text-align: center; text-align: center;
// margin-top: 3vh;
} }
/deep/ .el-table .warning-row { /deep/ .el-table .warning-row {
background: #f0ffff; background: #f0ffff;
...@@ -846,6 +644,8 @@ ...@@ -846,6 +644,8 @@
} }
/deep/ .el-dialog { /deep/ .el-dialog {
border-radius: 10px; border-radius: 10px;
margin-top: 3vh !important;
} }
/deep/.el-table th.el-table__cell.is-leaf, /deep/.el-table th.el-table__cell.is-leaf,
.el-table td.el-table__cell { .el-table td.el-table__cell {
...@@ -886,26 +686,7 @@ ...@@ -886,26 +686,7 @@
table-layout: auto; table-layout: auto;
} }
} }
.dialog {
position: relative;
padding-bottom: 30px;
.xqtitle {
text-align: left;
font-size: 18px;
width: 100%;
border-bottom: 1px solid gainsboro;
padding-bottom: 10px;
span {
display: inline-block;
width: 5px;
height: 20px;
background: #0d867f;
margin-right: 14px;
vertical-align: middle;
}
}
}
.textarea { .textarea {
width: 100%; width: 100%;
.el-textarea { .el-textarea {
...@@ -915,6 +696,8 @@ ...@@ -915,6 +696,8 @@
.Btn { .Btn {
width: 200px; width: 200px;
margin: 0 auto; margin: 0 auto;
height: 30px;
line-height: 30px;
span { span {
display: inline-block; display: inline-block;
width: 80px; width: 80px;
...@@ -977,20 +760,17 @@ ...@@ -977,20 +760,17 @@
} }
} }
.midBtn { .midBtn {
width: 100%;
height: 40px;
line-height: 40px;
position: absolute;
margin: 0 auto; margin: 0 auto;
bottom: -19px; margin-top: 20px;
span { span {
display: inline-block; display: inline-block;
width: 80px; width: 80px;
height: 25px; height: 29px;
line-height: 25px; line-height: 29px;
text-align: center; text-align: center;
margin-right: 10px; margin-right: 10px;
border-radius: 5px; border-radius: 5px;
box-sizing: border-box;
} }
span:first-of-type { span:first-of-type {
border: 1px solid grey; border: 1px solid grey;
...@@ -998,24 +778,95 @@ ...@@ -998,24 +778,95 @@
span:last-of-type { span:last-of-type {
background-color: #4ca6a7; background-color: #4ca6a7;
color: #fff; color: #fff;
border: 1px solid #4ca6a7;
} }
} }
h3 { .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; text-align: left;
} }
/deep/.el-table td.el-table__cell div{ /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; text-align: center;
} }
/deep/.el-switch__core{ h3 {
width: 69px !important; text-align: left;
}
/deep/.el-switch__core {
height: 30px;
width: 79px !important;
border-radius: 20px;
} }
/deep/ .el-switch__label *{ /deep/.el-switch.is-checked .el-switch__core::after {
font-size: 11px; 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 { /deep/.el-switch__label--left {
position: absolute; position: absolute;
left: 24px; left: 30px;
color: #fff; color: #fff;
z-index: -1111; z-index: -1111;
cursor: default; cursor: default;
...@@ -1024,7 +875,7 @@ ...@@ -1024,7 +875,7 @@
/deep/.el-switch__label--right { /deep/.el-switch__label--right {
position: absolute; position: absolute;
right: 24px; right: 30px;
color: #fff; color: #fff;
z-index: -1111; z-index: -1111;
cursor: default; cursor: default;
...@@ -1034,20 +885,19 @@ ...@@ -1034,20 +885,19 @@
/deep/.el-switch__label--right.is-active { /deep/.el-switch__label--right.is-active {
z-index: 1111; z-index: 1111;
color: grey !important; color: grey !important;
height: 30px;
line-height: 30px;
} }
/deep/.el-switch__label--left.is-active { /deep/.el-switch__label--left.is-active {
z-index: 1111; z-index: 1111;
color:#fff!important; color: #fff !important;
height: 30px;
line-height: 30px;
} }
/deep/ .el-icon-folder-remove { /deep/ .el-dialog__body{
margin-right: 10px; padding-bottom: 15px;
}
/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;
} }
</style> </style>
\ No newline at end of file
<template> <template>
<div class="main"> <div class="main">
<el-form :model="ruleForm" label-width="100px" class="demo-ruleForm"> <el-form :model="ruleForm" label-width="100px" class="demo-ruleForm" ref="formName">
<el-form-item label="批次年度:" prop="batchYear" class="fromItem"> <el-form-item label="批次年度:" prop="batchYear" class="fromItem">
<el-select v-model="ruleForm.batchYear" placeholder="请选择"> <el-select v-model="ruleForm.batchYear" placeholder="请选择">
<el-option label="2024年" value="2024"></el-option> <el-option label="2024年" value="2024"></el-option>
...@@ -91,6 +91,7 @@ ...@@ -91,6 +91,7 @@
width="90%" width="90%"
:modal-append-to-body="false" :modal-append-to-body="false"
:append-to-body="false" :append-to-body="false"
@close="closed"
> >
<div class="dialog"> <div class="dialog">
<h3> <h3>
...@@ -99,7 +100,6 @@ ...@@ -99,7 +100,6 @@
<div class="continer"> <div class="continer">
<p class="xqtitle"><span></span>问题清单</p> <p class="xqtitle"><span></span>问题清单</p>
<el-table <el-table
ref="multipleTable"
:data="tableDataQR" :data="tableDataQR"
tooltip-effect="dark" tooltip-effect="dark"
style="width: 100%" style="width: 100%"
...@@ -127,11 +127,11 @@ ...@@ -127,11 +127,11 @@
<el-table-column label="问题确认" width="auto"> <el-table-column label="问题确认" width="auto">
<template slot-scope="scope"> <template slot-scope="scope">
<el-switch <el-switch
v-model="scope.row.states" v-model="scope.row.confirmStatus"
active-color="#C0C0C0" active-color="#C0C0C0"
inactive-color="#13ce66" inactive-color="#13ce66"
active-value="Y" active-value="2"
inactive-value="N" inactive-value="1"
active-text="无异议" active-text="无异议"
inactive-text="有异议" inactive-text="有异议"
@change="controlSwitch($event, scope.row)" @change="controlSwitch($event, scope.row)"
...@@ -147,16 +147,103 @@ ...@@ -147,16 +147,103 @@
</el-table-column> </el-table-column>
</el-table> </el-table>
</div> </div>
</div> </div>
<p class="midBtn">
<span @click="cancelSS()">取消</span
><span @click="saveSS()">确认</span>
</p>
</el-dialog> </el-dialog>
<!-- 申诉 -->
<el-dialog
title="申诉"
:visible.sync="dialogSS"
width="90%"
: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>
<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">
</el-table-column>
<el-table-column label="检查说明" prop="checkDesc">
</el-table-column>
<el-table-column label="评估问题" prop="evalQues">
</el-table-column>
<el-table-column label="问题确认" width="auto">
<template slot-scope="scope">
<el-switch
v-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="解释批注" >
<template slot-scope="scope">
<el-input v-model="scope.row.feedback"></el-input>
</template>
</el-table-column>
<el-table-column label="附加解释材料" prop="zgFileId">
<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">
<span @click="cancel()">取消</span
><span @click="save()">确认</span>
</p>
</el-dialog>
</div> </div>
</template> </template>
<script> <script>
import { ProblemAssistedFeedback, selWtqdpostEvalQuesInfo } from "@/api/index"; import { ProblemAssistedFeedback, selWtqdpostEvalQuesInfo,qrProblemAssistedFeedback,wtssSelProblemAssistedFeedback,ssProblemAssistedFeedback } from "@/api/index";
export default { export default {
data() { data() {
return { return {
dialogSS:false,
ruleForm: { ruleForm: {
batchYear: "", batchYear: "",
batchName: "", batchName: "",
...@@ -184,6 +271,7 @@ export default { ...@@ -184,6 +271,7 @@ export default {
}, },
tableData: [], tableData: [],
tableDataQR: [], tableDataQR: [],
tableDataSS:[],
checkedList: [], checkedList: [],
currentPage: 1, currentPage: 1,
pageSizetjcl: 10, pageSizetjcl: 10,
...@@ -192,13 +280,15 @@ export default { ...@@ -192,13 +280,15 @@ export default {
pageSize: 10, pageSize: 10,
mergingPos: 0, mergingPos: 0,
mergingRows: [], mergingRows: [],
mergingPosss: 0,
mergingRowsss: [],
}; };
}, },
mounted() { mounted() {
this.submitForm(); this.submitForm();
}, },
methods: { methods: {
async submitForm(formName) { async submitForm() {
let params = { let params = {
current: this.currentPage, current: this.currentPage,
pageSize: this.pageSize, pageSize: this.pageSize,
...@@ -223,13 +313,19 @@ export default { ...@@ -223,13 +313,19 @@ export default {
} }
}, },
resetForm() { resetForm() {
this.$refs[formName].resetFields(); this.$refs.formName.resetFields();
this.currentPage = 1; this.currentPage = 1;
this.pageSize = 10; this.pageSize = 10;
this.submitForm(); this.submitForm();
}, },
//确认问题 //确认问题
async confirm() { async confirm() {
this.mergingPos=0;
this.mergingRows=[]
if (this.checkedList.length != 1) {
this.$message("请选择一条数据进行确认");
return;
}
this.dialogQR = true; this.dialogQR = true;
let params = { let params = {
projectId: this.checkedList[0].projectId, projectId: this.checkedList[0].projectId,
...@@ -240,6 +336,7 @@ export default { ...@@ -240,6 +336,7 @@ export default {
if (res.code == "200") { if (res.code == "200") {
this.tableDataQR = res.data.records; this.tableDataQR = res.data.records;
this.tableDataQR.forEach((item) => { this.tableDataQR.forEach((item) => {
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.可研");
...@@ -260,7 +357,9 @@ export default { ...@@ -260,7 +357,9 @@ export default {
this.$set(item, "projectStagetext", "6.结决算及转资"); this.$set(item, "projectStagetext", "6.结决算及转资");
break; break;
} }
}); });
console.log(this.tableDataQR)
this.dataPretreatment(); this.dataPretreatment();
} }
}, },
...@@ -285,31 +384,29 @@ export default { ...@@ -285,31 +384,29 @@ export default {
} }
} }
}, },
dataPretreatmentSS() {
//问题下发 for (let i = 0; i < this.tableDataSS.length; i++) {
detailsForm() { // tabledata 表格数据源
if (this.checkedList.length != 1) { if (i === 0) {
this.$message("请选择一条数据进行下发"); this.mergingRowsss.push(1);
return; this.mergingPosss = 0;
} else { } else {
let params = { if (
projectId: this.checkedList[0].projectId, this.tableDataSS[i].projectStage ===
batchId: this.checkedList[0].batchId, this.tableDataSS[i - 1].projectStage
}; ) {
this.$router.push({ //哪些数据是要合并的 合并的条件是什么
path: "/mainLayout/Compliancexf", this.mergingRowsss[this.mergingPosss] += 1;
query: { this.mergingRowsss.push(0);
clqparams: JSON.stringify(params), } else {
fromType: "fzcx", this.mergingRowsss.push(1);
Form: { this.mergingPosss = i;
appealDeadline: this.checkedList[0].appealDeadline, }
rectificationDeadline: this.checkedList[0].rectificationDeadline, }
},
},
});
} }
}, },
//表格颜色 //表格颜色
tableRowClassName({ row, rowIndex }) { tableRowClassName({ row, rowIndex }) {
if (rowIndex % 2 == 1) { if (rowIndex % 2 == 1) {
...@@ -319,12 +416,15 @@ export default { ...@@ -319,12 +416,15 @@ export default {
}, },
//主列表选中行信息 //主列表选中行信息
handleSelectionChange(selection) { handleSelectionChange(selection) {
console.log('222222')
if (Array.isArray(selection) && selection.length > 1) { if (Array.isArray(selection) && selection.length > 1) {
console.log('222222333',this.checkedList)
this.$refs.multipleTable.toggleRowSelection(selection[0], false); this.$refs.multipleTable.toggleRowSelection(selection[0], false);
this.$refs.multipleTable.toggleRowSelection(selection[1], true); this.$refs.multipleTable.toggleRowSelection(selection[1], true);
} }
this.checkedList = this.$refs.multipleTable.selection; this.checkedList = this.$refs.multipleTable.selection;
this.ruleFormdialog = this.checkedList[0]; this.$forceUpdate();
console.log(this.checkedList, "2222"); console.log(this.checkedList, "2222");
}, },
handleSizeChange(val) { handleSizeChange(val) {
...@@ -346,11 +446,117 @@ export default { ...@@ -346,11 +446,117 @@ export default {
}; };
} }
}, },
arraySpanMethodss({ row, column, rowIndex, columnIndex }) {
if (columnIndex === 0) {
//第一列
const _row = this.mergingRowsss[rowIndex];
const _col = _row > 0 ? 1 : 0;
return {
rowspan: _row,
colspan: _col,
};
}
},
//问题确认开关 //问题确认开关
controlSwitch(val, row) { controlSwitch(val, row) {
console.log("333", val, row); console.log("333", val, row);
// this.$set(row, "states", 0 * 1);
}, },
cancelSS(){
this.dialogQR=false
},
async save(){
let res= await ssProblemAssistedFeedback(this.tableDataSS)
if(res.code=='200'){
this.dialogSS=false
this.resetForm()
}
},
cancel(){
this.dialogSS=false
},
async saveSS(){
let res= await qrProblemAssistedFeedback(this.tableDataQR)
if(res.code=='200'){
this.dialogQR=false
this.resetForm()
}
},
//申诉
async appeal(){
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 wtssSelProblemAssistedFeedback(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> </script>
...@@ -415,6 +621,7 @@ export default { ...@@ -415,6 +621,7 @@ export default {
.eltable { .eltable {
box-sizing: border-box; box-sizing: border-box;
text-align: center; text-align: center;
// margin-top: 3vh;
} }
/deep/ .el-table .warning-row { /deep/ .el-table .warning-row {
background: #f0ffff; background: #f0ffff;
...@@ -426,6 +633,8 @@ export default { ...@@ -426,6 +633,8 @@ export default {
} }
/deep/ .el-dialog { /deep/ .el-dialog {
border-radius: 10px; border-radius: 10px;
margin-top: 3vh !important;
} }
/deep/.el-table th.el-table__cell.is-leaf, /deep/.el-table th.el-table__cell.is-leaf,
.el-table td.el-table__cell { .el-table td.el-table__cell {
...@@ -476,6 +685,8 @@ export default { ...@@ -476,6 +685,8 @@ export default {
.Btn { .Btn {
width: 200px; width: 200px;
margin: 0 auto; margin: 0 auto;
height: 30px;
line-height: 30px;
span { span {
display: inline-block; display: inline-block;
width: 80px; width: 80px;
...@@ -539,14 +750,16 @@ export default { ...@@ -539,14 +750,16 @@ export default {
} }
.midBtn { .midBtn {
margin: 0 auto; margin: 0 auto;
margin-top: 20px;
span { span {
display: inline-block; display: inline-block;
width: 80px; width: 80px;
height: 25px; height: 29px;
line-height: 25px; line-height: 29px;
text-align: center; text-align: center;
margin-right: 10px; margin-right: 10px;
border-radius: 5px; border-radius: 5px;
box-sizing: border-box;
} }
span:first-of-type { span:first-of-type {
border: 1px solid grey; border: 1px solid grey;
...@@ -554,9 +767,12 @@ export default { ...@@ -554,9 +767,12 @@ export default {
span:last-of-type { span:last-of-type {
background-color: #4ca6a7; background-color: #4ca6a7;
color: #fff; color: #fff;
border: 1px solid #4ca6a7;
} }
} }
.dialog { .dialog {
height: 700px;
overflow-y: auto;
.xqtitle { .xqtitle {
text-align: left; text-align: left;
font-size: 18px; font-size: 18px;
...@@ -613,7 +829,7 @@ h3 { ...@@ -613,7 +829,7 @@ h3 {
} }
/deep/.el-switch__core { /deep/.el-switch__core {
height: 30px; height: 30px;
width: 80px !important; width: 79px !important;
border-radius: 20px; border-radius: 20px;
} }
/deep/.el-switch.is-checked .el-switch__core::after { /deep/.el-switch.is-checked .el-switch__core::after {
...@@ -658,10 +874,19 @@ h3 { ...@@ -658,10 +874,19 @@ h3 {
/deep/.el-switch__label--right.is-active { /deep/.el-switch__label--right.is-active {
z-index: 1111; z-index: 1111;
color: grey !important; color: grey !important;
height: 30px;
line-height: 30px;
} }
/deep/.el-switch__label--left.is-active { /deep/.el-switch__label--left.is-active {
z-index: 1111; z-index: 1111;
color: #fff !important; color: #fff !important;
height: 30px;
line-height: 30px;
} }
/deep/ .el-dialog__body{
padding-bottom: 15px;
}
</style> </style>
\ No newline at end of file
<template> <template>
<div class="main"> <div class="main">
<el-form :model="ruleForm" label-width="100px" class="demo-ruleForm"> <el-form :model="ruleForm" label-width="100px" class="demo-ruleForm" ref="formName">
<el-form-item label="批次年度:" prop="batchYear" class="fromItem"> <el-form-item label="批次年度:" prop="batchYear" class="fromItem">
<el-select v-model="ruleForm.batchYear" placeholder="请选择"> <el-select v-model="ruleForm.batchYear" placeholder="请选择">
<el-option label="2024年" value="2024"></el-option> <el-option label="2024年" value="2024"></el-option>
...@@ -101,7 +101,7 @@ ...@@ -101,7 +101,7 @@
label-width="100px" label-width="100px"
class="demo-ruleForm" class="demo-ruleForm"
:rules="rules" :rules="rules"
ref="formName"
> >
<el-form-item <el-form-item
label="问题申诉截止时间:" label="问题申诉截止时间:"
...@@ -208,7 +208,7 @@ export default { ...@@ -208,7 +208,7 @@ export default {
} }
}, },
resetForm() { resetForm() {
this.$refs[formName].resetFields(); this.$refs.formName.resetFields();
this.currentPage = 1; this.currentPage = 1;
this.pageSize = 10; this.pageSize = 10;
this.submitForm(); this.submitForm();
......
<template> <template>
<div class="main"> <div class="main">
<el-form :model="ruleForm" label-width="100px" class="demo-ruleForm"> <el-form :model="ruleForm" label-width="100px" class="demo-ruleForm" ref="formName">
<el-form-item label="批次年度:" prop="batchYear" class="fromItem"> <el-form-item label="批次年度:" prop="batchYear" class="fromItem">
<el-select v-model="ruleForm.batchYear" placeholder="请选择"> <el-select v-model="ruleForm.batchYear" placeholder="请选择">
<el-option label="2024年" value="2024"></el-option> <el-option label="2024年" value="2024"></el-option>
...@@ -99,7 +99,7 @@ ...@@ -99,7 +99,7 @@
label-width="100px" label-width="100px"
class="demo-ruleForm" class="demo-ruleForm"
:rules="rules" :rules="rules"
ref="formName"
> >
<el-form-item <el-form-item
label="问题申诉截止时间:" label="问题申诉截止时间:"
...@@ -181,7 +181,7 @@ ...@@ -181,7 +181,7 @@
this.submitForm(); this.submitForm();
}, },
methods: { methods: {
async submitForm(formName) { async submitForm() {
let params = { let params = {
current: this.currentPage, current: this.currentPage,
pageSize: this.pageSize, pageSize: this.pageSize,
...@@ -204,7 +204,7 @@ ...@@ -204,7 +204,7 @@
} }
}, },
resetForm() { resetForm() {
this.$refs[formName].resetFields(); this.$refs.formName.resetFields();
this.currentPage = 1; this.currentPage = 1;
this.pageSize = 10; this.pageSize = 10;
this.submitForm(); this.submitForm();
...@@ -213,7 +213,7 @@ ...@@ -213,7 +213,7 @@
//问题下发 //问题下发
detailsForm() { detailsForm() {
if (this.checkedList.length != 1) { if (this.checkedList.length != 1) {
this.$message("请选择一条数据进行下发"); this.$message("请选择一条数据");
return; return;
} else { } else {
let params = { let params = {
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!