Commit 915a7834 by liangzhen
2 parents 8a0a821b 29354dc3
......@@ -43,9 +43,14 @@ export const routes = [
},
},
{
path: '/mainLayout/sendIssue',
name: 'sendIssue',
component: () => import('@/views/postConcentrationCheck/sendIssue.vue'),
path: '/mainLayout/projectCheckQuestionQuery',
name: 'problemLlistQuery',
component: () => import('@/views/postConcentrationCheck/projectCheckQuestionQuery.vue'),
},
{
path: '/mainLayout/rectificationFeedbackQuery',
name: 'problemLlistQuery',
component: () => import('@/views/postConcentrationCheck/rectificationFeedbackQuery.vue'),
},
{
path: '/mainLayout/assistedConfirm',
......
......@@ -101,15 +101,15 @@ export default {
url: "",
children: [
{
name: "下发问题",
url: "/mainLayout/sendIssue",
children: [] },
{ name: "问题申诉", url: "", children: [] },
{ name: "申诉复核", url: "", children: [] },
{ name: "问题整改", url: "", children: [] },
{ name: "整改复核", url: "", children: [] },
{ name: "工作总结", url: "", children: [] },
{ name: "数据维护", url: "", children: [] },
name: "项目检查问题查询",
url: "/mainLayout/projectCheckQuestionQuery",
children: []
},
{
name: "整改反馈查询",
url: "/mainLayout/rectificationFeedbackQuery",
children: []
},
],
},
// {
......
<!-- 项目检查问题查询 -->
<template>
<div class="main">
<el-form :model="ruleForm" label-width="100px" class="demo-ruleForm" ref="formName">
<el-form-item label="项目年度:" prop="projectYear" class="fromItem" >
<el-select v-model="ruleForm.projectYear" placeholder="请选择">
<el-option label="2024年" value="2024"></el-option>
<el-option label="2023年" value="2023"></el-option>
<el-option label="2022年" value="2022"></el-option>
<el-option label="2021年" value="2021"></el-option>
</el-select>
</el-form-item>
<el-form-item label="单位名称:" prop="companyName" class="fromItem">
<el-input v-model="ruleForm.companyName" placeholder="请输入"></el-input>
</el-form-item>
<!--<el-form-item label="项目编码:" prop="projectCode" class="fromItem">
<el-input v-model="ruleForm.projectCode" placeholder="请输入"></el-input>
</el-form-item>-->
<el-form-item label="项目名称:" prop="projectName" class="fromItem">
<el-input v-model="ruleForm.projectName" placeholder="请输入"></el-input>
</el-form-item>
<el-form-item label="项目阶段:" prop="projectPhase" class="fromItem" >
<el-select v-model="ruleForm.projectPhase" placeholder="请选择">
<el-option label="项目验收" value="1"></el-option>
<el-option label="项目建设" value="2"></el-option>
<el-option label="项目前期" value="3"></el-option>
</el-select>
</el-form-item>
<el-form-item label="项目环节:" prop="projectLink" class="fromItem" >
<el-select v-model="ruleForm.projectLink" placeholder="请选择">
<el-option label="可研" value="1"></el-option>
<el-option label="计划" value="2"></el-option>
<el-option label="采购" value="3"></el-option>
<el-option label="合同" value="4"></el-option>
<el-option label="执行" value="5"></el-option>
<el-option label="结决算" value="6"></el-option>
<el-option label="转资" value="7"></el-option>
</el-select>
</el-form-item>
<el-form-item
label="提出时间:"
prop="submitTime"
class="fromItem"
>
<el-date-picker
v-model="ruleForm.submitTime"
type="date"
placeholder="选择日期"
value-format="yyyy-MM-dd hh:mm:ss"
>
</el-date-picker>
</el-form-item>
<el-form-item label="整改状态:" prop="abarbeitungStatus" class="fromItem" >
<el-select v-model="ruleForm.abarbeitungStatus" placeholder="请选择">
<el-option label="已整改" value="Y"></el-option>
<el-option label="未整改" value="N"></el-option>
</el-select>
</el-form-item>
<el-form-item class="button">
<el-button @click="submitForm()">
<img class="buttonIcon" src="../../assets/cx.png" />查询</el-button
>
<el-button @click="resetForm('ruleForm')">
<img class="buttonIcon" src="../../assets/cz.png" />重置</el-button
>
<el-button @click="detailsForm('ruleForm')">
<img class="buttonIcon" src="../../assets/ck.png" />详情</el-button
>
<el-button @click="uploadForm('ruleForm')">
<img class="buttonIcon" src="../../assets/dr.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-table-column>
<el-table-column type="selection"> </el-table-column>
<el-table-column prop="projectYear" label="项目年度" width="auto">
</el-table-column>
<el-table-column prop="companyName" label="单位名称" width="auto">
</el-table-column>
<el-table-column prop="projectName" label="项目名称" width="auto">
</el-table-column>
<el-table-column prop="projectPhase" label="项目阶段" width="auto">
</el-table-column>
<el-table-column prop="projectLink" label="项目环节" width="auto">
</el-table-column>
<el-table-column prop="checkProblem" label="问题检查项" width="auto">
</el-table-column>
<el-table-column prop="submmitTime" label="提出时间" width="auto">
</el-table-column>
<el-table-column prop="abarbeitungTime" label="整改时间" width="auto">
</el-table-column>
<el-table-column prop="abarbeitungStatus" label="整改状态" width="auto">
</el-table-column>
</el-table>
<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="dialogXQ"
width="90%"
:modal-append-to-body="false"
:append-to-body="false"
>
<div class="dialog">
<el-form
:model="ruleFormdialogData"
label-width="100px"
class="demo-ruleForm"
>
<el-form-item label="项目年度:" prop="batchYear" class="fromItem">
<el-input v-model="ruleFormdialogData.fromItem" disabled></el-input>
</el-form-item>
<el-form-item label="单位名称:" prop="companyName" class="fromItem">
<el-input v-model="ruleFormdialogData.companyName" disabled></el-input>
</el-form-item>
<el-form-item label="项目名称:" prop="projectName" class="fromItem">
<el-input v-model="ruleFormdialogData.projectName" disabled></el-input>
</el-form-item>
<el-form-item label="项目阶段:" prop="projectPhase" class="fromItem">
<el-input v-model="ruleFormdialogData.projectPhase" disabled></el-input>
</el-form-item>
<el-form-item label="项目环节:" prop="projectLink" class="fromItem">
<el-input v-model="ruleFormdialogData.projectLink" disabled></el-input>
</el-form-item>
<el-form-item label="问题检查项:" class="textarea">
<el-input
type="textarea"
v-model="ruleFormdialogData.checkProblem"
disabled
></el-input>
</el-form-item>
<el-form-item label="问题序号:" prop="problemNo" class="fromItem">
<el-input v-model="ruleFormdialogData.problemNo" disabled></el-input>
</el-form-item>
<el-form-item label="问题来源:" prop="problemSource" class="fromItem">
<el-input v-model="ruleFormdialogData.problemSource" disabled></el-input>
</el-form-item>
<el-form-item label="提出时间:" prop="submmitTime" class="fromItem">
<el-input v-model="ruleFormdialogData.submmitTime" disabled></el-input>
</el-form-item>
<el-form-item label="整改时间:" prop="abarbeitungTime" class="fromItem">
<el-input v-model="ruleFormdialogData.abarbeitungTime" disabled></el-input>
</el-form-item>
<el-form-item label="整改状态:" prop="abarbeitungStatus" class="fromItem">
<el-input v-model="ruleFormdialogData.abarbeitungStatus" disabled></el-input>
</el-form-item>
</el-form>
</div>
</el-dialog>
</div>
</template>
<script>
import {
evalBatchInfo,
} from "@/api/index";
export default {
data() {
return {
category: [
{ name: "2024", id: 1 },
{ name: "2023", id: 2 },
{ name: "2022", id: 3 },
{ name: "2021", id: 4 },
], //专业领域
showButton: true,
ruleForm: {
projectYear: "",
companyName: "",
projectName: "",
projectPhase: "",
projectLink: "",
submitTime: "",
abarbeitungStatus: "",
},
ruleFormdialog: {
projectYear: "",
companyName: "",
projectName: "",
projectPhase: "",
projectLink: "",
submitTime: "",
checkProblem:"",
abarbeitungTime:"",
abarbeitungStatus: "",
},
ruleFormdialogData: {
projectYear: "",
companyName: "",
projectName: "",
projectPhase: "",
projectLink: "",
submitTime: "",
checkProblem:"",
abarbeitungTime:"",
abarbeitungStatus: "",
problemNo:"",
problemSource:"",
},
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") {
this.tableData = res.data.records;
this.tableData.forEach(item=>{
if (item.projectPhase==''||item.projectPhase==null){
}else if (item.projectPhase=='1'){
this.$set( item,'projectPhase','项目验收')
}else if(item.projectPhase=='2'){
this.$set( item,'projectPhase','项目建设')
}else{
this.$set( item,'projectPhase','项目前期')
}
}),
this.tableData.forEach(item=>{
if (item.projectLink==''||item.projectLink==null){
}else if (item.projectLink=='1'){
this.$set( item,'projectLink','可研')
}else if(item.projectLink=='2'){
this.$set( item,'projectLink','计划')
}else if(item.projectLink=='3'){
this.$set( item,'projectLink','采购')
}else if(item.projectLink=='4'){
this.$set( item,'projectLink','合同')
}else if(item.projectLink=='5'){
this.$set( item,'projectLink','执行')
}else if(item.projectLink=='6'){
this.$set( item,'projectLink','结决算')
}else{
this.$set( item,'projectLink','转资')
}
})
this.total = res.data.total * 1;
}
},
resetForm() {
this.$refs.formName.resetFields();
this.currentPage = 1;
this.pageSize = 10;
this.submitForm();
},
uploadForm(){
alert("这是上传的功能");
},
//详情
async detailsForm() {
if (this.checkedList.length != 1) {
this.$message("请选择");
return;
}
console.log("222",this.checkedList);
this.dialogXQ = true;
this.ruleFormdialogData=this.checkedList[0]
let params = {
current: this.currentedit,
pageSize: this.pageSizeedit,
batchId:this.checkedList[0].batchId
};
console.log(params,'params')
let res = await expert(params);
this.addtableData=res.data.records
this.totalBJ=res.data.total * 1;
},
//表格颜色
tableRowClassName({ row, rowIndex }) {
if (rowIndex % 2 == 1) {
return "warning-row";
}
return "";
},
//主列表选中行信息
handleSelectionChange(selection) {
if (Array.isArray(selection) && selection.length > 1) {
this.$refs.multipleTable.toggleRowSelection(selection[0], false);
this.$refs.multipleTable.toggleRowSelection(selection[1], true);
}
this.checkedList = this.$refs.multipleTable.selection;
this.ruleFormdialog = this.checkedList[0];
console.log(this.checkedList, "2222");
},
handleSizeChange(val) {
console.log(`每页 ${val} 条`);
this.pageSize = val;
},
handleCurrentChange(val) {
console.log(`当前页: ${val}`);
this.currentPage = val;
},
handleSizeChangeZJ(val) {
console.log(`每页 ${val} 条`);
this.pageSizeZJ = val;
},
handleCurrentChangeZJ(val) {
console.log(`当前页: ${val}`);
this.currentZJ = val;
},
handleSizeChangetjcl(val) {
console.log(`每页 ${val} 条`);
this.pageSizetjcl = val;
},
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: 20px 0;
.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;
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;
}
}
.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%;
.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;
}
}
.dialog {
.xqtitle {
text-align: left;
font-size: 18px;
span {
display: inline-block;
width: 5px;
height: 20px;
background: #0d867f;
margin-right: 14px;
vertical-align: middle;
}
}
}
.textarea {
width: 100%;
.el-textarea {
width: 60%;
}
}
.Btn {
width: 200px;
margin: 0 auto;
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: 200px;
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-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;
span {
display: inline-block;
width: 80px;
height: 25px;
line-height: 25px;
text-align: center;
margin-right: 10px;
border-radius: 5px;
}
span:first-of-type {
border: 1px solid grey;
}
span:last-of-type {
background-color: #4ca6a7;
color: #fff;
}
}
/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>
\ No newline at end of file
<!-- 整改反馈查询 -->
<template>
<div class="main">
<el-form :model="ruleForm" label-width="100px" class="demo-ruleForm" ref="formName">
<el-form-item label="项目年度:" prop="projectYear" class="fromItem" >
<el-select v-model="ruleForm.projectYear" placeholder="请选择">
<el-option label="2024年" value="2024"></el-option>
<el-option label="2023年" value="2023"></el-option>
<el-option label="2022年" value="2022"></el-option>
<el-option label="2021年" value="2021"></el-option>
</el-select>
</el-form-item>
<el-form-item label="项目编码:" prop="projectCode" class="fromItem">
<el-input v-model="ruleForm.projectCode" placeholder="请输入"></el-input>
</el-form-item>
<el-form-item label="项目名称:" prop="projectName" class="fromItem">
<el-input v-model="ruleForm.projectName" placeholder="请输入"></el-input>
</el-form-item>
<el-form-item label="项目阶段:" prop="projectPhase" class="fromItem" >
<el-select v-model="ruleForm.projectPhase" placeholder="请选择">
<el-option label="项目验收" value="1"></el-option>
<el-option label="项目建设" value="2"></el-option>
<el-option label="项目前期" value="3"></el-option>
</el-select>
</el-form-item>
<el-form-item label="项目环节:" prop="projectLink" class="fromItem" >
<el-select v-model="ruleForm.projectLink" placeholder="请选择">
<el-option label="可研" value="1"></el-option>
<el-option label="计划" value="2"></el-option>
<el-option label="采购" value="3"></el-option>
<el-option label="合同" value="4"></el-option>
<el-option label="执行" value="5"></el-option>
<el-option label="结决算" value="6"></el-option>
<el-option label="转资" value="7"></el-option>
</el-select>
</el-form-item>
<el-form-item label="是否申诉:" prop="appealFlag" class="fromItem" >
<el-select v-model="ruleForm.appealFlag" placeholder="请选择">
<el-option label="是" value="Y"></el-option>
<el-option label="否" value="N"></el-option>
</el-select>
</el-form-item>
<el-form-item label="申诉是否通过:" prop="appealPassFlag" class="fromItem" >
<el-select v-model="ruleForm.appealPassFlag" placeholder="请选择">
<el-option label="是" value="Y"></el-option>
<el-option label="否" value="N"></el-option>
</el-select>
</el-form-item>
<el-form-item label="是否完成整改:" prop="completeFlag" class="fromItem" >
<el-select v-model="ruleForm.completeFlag" placeholder="请选择">
<el-option label="是" value="Y"></el-option>
<el-option label="否" value="N"></el-option>
</el-select>
</el-form-item>
<el-form-item class="button">
<el-button @click="submitForm()">
<img class="buttonIcon" src="../../assets/cx.png" />查询</el-button
>
<el-button @click="resetForm('ruleForm')">
<img class="buttonIcon" src="../../assets/cz.png" />重置</el-button
>
<el-button @click="detailsForm('ruleForm')">
<img class="buttonIcon" src="../../assets/ck.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-table-column>
<el-table-column type="selection"> </el-table-column>
<el-table-column label="项目年度" width="auto" prop="projectYear">
</el-table-column>
<el-table-column prop="projectCode" label="项目编码" width="auto">
</el-table-column>
<el-table-column prop="projectName" label="项目名称" width="auto">
</el-table-column>
<el-table-column prop="projectPhase" label="项目阶段" width="auto">
</el-table-column>
<el-table-column prop="projectLink" label="项目环节" width="auto">
</el-table-column>
<el-table-column prop="checkProblem" label="问题检查项" width="auto">
</el-table-column>
<el-table-column prop="appealFlag" label="是否申诉" width="auto">
</el-table-column>
<el-table-column prop="appealPassFlag" label="申诉是否通过" width="auto">
</el-table-column>
<el-table-column prop="completeFlag" label="是否完成整改" width="auto">
</el-table-column>
</el-table>
<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="dialogXQ"
width="90%"
:modal-append-to-body="false"
:append-to-body="false"
>
<div class="dialog">
<el-form
:model="ruleFormdialogData"
label-width="100px"
class="demo-ruleForm"
>
<el-form-item label="项目年度:" prop="projectYear" class="fromItem">
<el-input v-model="ruleFormdialogData.projectYear" disabled></el-input>
</el-form-item>
<el-form-item label="项目编码:" prop="projectCode" class="fromItem">
<el-input v-model="ruleFormdialogData.projectCode" disabled></el-input>
</el-form-item>
<el-form-item label="项目名称:" prop="projectName" class="fromItem">
<el-input v-model="ruleFormdialogData.projectName" disabled></el-input>
</el-form-item>
<el-form-item label="项目阶段:" prop="projectPhase" class="fromItem">
<el-input v-model="ruleFormdialogData.projectPhase" disabled></el-input>
</el-form-item>
<el-form-item label="项目环节:" prop="projectLink" class="fromItem">
<el-input v-model="ruleFormdialogData.projectLink" disabled></el-input>
</el-form-item>
<el-form-item label="问题检查项:" class="textarea">
<el-input
type="textarea"
v-model="ruleFormdialogData.checkProblem"
disabled
></el-input>
</el-form-item>
<el-form-item label="是否申诉:" prop="appealFlag" class="fromItem">
<el-input v-model="ruleFormdialogData.appealFlag" disabled></el-input>
</el-form-item>
<el-form-item label="申诉是否通过:" prop="appealPassFlag" class="fromItem">
<el-input v-model="ruleFormdialogData.appealPassFlag" disabled></el-input>
</el-form-item>
<el-form-item label="是否完成整改:" prop="completeFlag" class="fromItem">
<el-input v-model="ruleFormdialogData.completeFlag" disabled></el-input>
</el-form-item>
</el-form>
</div>
</el-dialog>
</div>
</template>
<script>
import {
evalBatchInfo,
} from "@/api/index";
export default {
data() {
return {
category: [
{ name: "2024", id: 1 },
{ name: "2023", id: 2 },
{ name: "2022", id: 3 },
{ name: "2021", id: 4 },
], //专业领域
showButton: true,
ruleForm: {
projectYear: "",
projectCode: "",
projectName: "",
projectPhase: "",
projectLink: "",
appealFlag: "",
appealPassFlag: "",
completeFlag: "",
},
ruleFormdialog: {
projectYear: "",
projectCode: "",
projectName: "",
projectPhase: "",
projectLink: "",
appealFlag: "",
appealPassFlag: "",
completeFlag: "",
},
ruleFormdialogData: {
projectYear: "",
projectCode: "",
projectName: "",
projectPhase: "",
checkProblem:"",
projectLink: "",
appealFlag: "",
appealPassFlag: "",
completeFlag: "",
},
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") {
this.tableData = res.data.records;
this.tableData.forEach(item=>{
if (item.projectPhase==''||item.projectPhase==null){
}else if (item.projectPhase=='1'){
this.$set( item,'projectPhase','项目验收')
}else if(item.projectPhase=='2'){
this.$set( item,'projectPhase','项目建设')
}else{
this.$set( item,'projectPhase','项目前期')
}
}),
this.tableData.forEach(item=>{
if (item.projectLink==''||item.projectLink==null){
}else if (item.projectLink=='1'){
this.$set( item,'projectLink','可研')
}else if(item.projectLink=='2'){
this.$set( item,'projectLink','计划')
}else if(item.projectLink=='3'){
this.$set( item,'projectLink','采购')
}else if(item.projectLink=='4'){
this.$set( item,'projectLink','合同')
}else if(item.projectLink=='5'){
this.$set( item,'projectLink','执行')
}else if(item.projectLink=='6'){
this.$set( item,'projectLink','结决算')
}else{
this.$set( item,'projectLink','转资')
}
})
this.total = res.data.total * 1;
}
},
resetForm() {
this.$refs.formName.resetFields();
this.currentPage = 1;
this.pageSize = 10;
this.submitForm();
},
//详情
async detailsForm() {
if (this.checkedList.length != 1) {
this.$message("请选择");
return;
}
console.log("222",this.checkedList);
this.dialogXQ = true;
this.ruleFormdialogData=this.checkedList[0]
let params = {
current: this.currentedit,
pageSize: this.pageSizeedit,
batchId:this.checkedList[0].batchId
};
console.log(params,'params')
let res = await expert(params);
this.addtableData=res.data.records
this.totalBJ=res.data.total * 1;
},
//表格颜色
tableRowClassName({ row, rowIndex }) {
if (rowIndex % 2 == 1) {
return "warning-row";
}
return "";
},
//主列表选中行信息
handleSelectionChange(selection) {
if (Array.isArray(selection) && selection.length > 1) {
this.$refs.multipleTable.toggleRowSelection(selection[0], false);
this.$refs.multipleTable.toggleRowSelection(selection[1], true);
}
this.checkedList = this.$refs.multipleTable.selection;
this.ruleFormdialog = this.checkedList[0];
console.log(this.checkedList, "2222");
},
handleSizeChange(val) {
console.log(`每页 ${val} 条`);
this.pageSize = val;
},
handleCurrentChange(val) {
console.log(`当前页: ${val}`);
this.currentPage = val;
},
handleSizeChangeZJ(val) {
console.log(`每页 ${val} 条`);
this.pageSizeZJ = val;
},
handleCurrentChangeZJ(val) {
console.log(`当前页: ${val}`);
this.currentZJ = val;
},
handleSizeChangetjcl(val) {
console.log(`每页 ${val} 条`);
this.pageSizetjcl = val;
},
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: 20px 0;
.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;
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;
}
}
.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%;
.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;
}
}
.dialog {
.xqtitle {
text-align: left;
font-size: 18px;
span {
display: inline-block;
width: 5px;
height: 20px;
background: #0d867f;
margin-right: 14px;
vertical-align: middle;
}
}
}
.textarea {
width: 100%;
.el-textarea {
width: 60%;
}
}
.Btn {
width: 200px;
margin: 0 auto;
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: 200px;
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-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;
span {
display: inline-block;
width: 80px;
height: 25px;
line-height: 25px;
text-align: center;
margin-right: 10px;
border-radius: 5px;
}
span:first-of-type {
border: 1px solid grey;
}
span:last-of-type {
background-color: #4ca6a7;
color: #fff;
}
}
/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>
\ No newline at end of file
<!-- 下发问题 --><template>
<div class="main">
<div class="form-horizontal">
<div class="form-group" >
<label>批次年度:</label>
<select class="form-control" placeholder="请选择" v-model="modelYear">
<option
v-for="(item, index) in category"
:value="item.id"
:key="item.id"
>
{{ item.name }}
</option>
</select>
</div>
<div class="form-group" >
<label>后评估批次名称:</label>
<input v-model="assessName" type="text" class="form-control" placeholder="请输入内容" />
</div>
<div class="form-group">
<label>计划评审日期:</label>
<el-date-picker
v-model="addplanTime"
type="date"
placeholder="选择日期"
value-format="yyyy-MM-dd hh:mm:ss"
>
</el-date-picker>
</div>
<div class="form-group">
<label>后评估专家组长:</label>
<select class="form-control" placeholder="请选择" v-model="experts">
<option
v-for="(item, index) in category"
:value="item.id"
:key="item.id"
>
{{ item.name }}
</option>
</select>
</div>
<div class="form-group" >
<label>创建人:</label>
<input v-model="creator" type="text" class="form-control" placeholder="请输入内容" />
</div>
<div class="form-group">
<label>创建时间:</label>
<el-date-picker
v-model="addplanTime"
type="date"
placeholder="选择日期"
value-format="yyyy-MM-dd hh:mm:ss"
>
</el-date-picker>
</div>
<div style="width: 100%"></div>
<div class="btn_container">
<p class="btn btn-primary" @click="query()" >
<img class="buttonIcon" src="../../assets/cx.png" />
&nbsp; 查询
</p>
<p class="btn btn-primary" @click="reset()">
<img class="buttonIcon" src="../../assets/cz.png" />
&nbsp; 重置
</p >
<p class="btn btn-primary" @click="details()">
<img class="buttonIcon" src="../../assets/ck.png" />
&nbsp; 详情
</p>
<p class="btn btn-primary" @click="add()">
<img class="buttonIcon" src="../../assets/xz.png" /> 新增
</p>
<p class="btn btn-primary" @click="edit()">
<img class="buttonIcon" src="../../assets/bj.png" /> 编辑
</p>
<p class="btn btn-primary" @click="deletes()">
<img class="buttonIcon" src="../../assets/sc.png" /> 删除
</p>
<p class="btn btn-primary" @click="sendMsg()"
><i class="el-icon-position"></i> 下发
</p>
<p class="btn btn-primary" @click="withdraw()">
<i class="el-icon-folder-delete"></i>撤回
</p>
</div>
</div>
<!-- <seachList searchtype="TBGD"></seachList> -->
<tableList class="tableList" tbtyps="TBGD"></tableList>
</div>
</template>
<script>
import tableList from './components/tableList.vue'
export default {
name: 'sendIssue',
components: {
tableList
},
data() {
return{
SplanNum:'',
XTplanNum:"",
typeContiner:"",
typeCode:"",
typeName:"",
modelYear: 1, //批次年度
assessName: "", //后评估批次名称
planTime: "", //计划评审日期
category: [
{ name: "11", id: 1 },
{ name: "21", id: 2 },
{ name: "31", id: 3 },
],
}
},
mounted(){
},
methods: {
}
}
</script>
<style lang="scss" scoped>
.main {
font-size: 14px;
}
.estimateBatchConfirmRelease {
height: 100%;
}
.btn_container {
margin-left: 20px;
margin-top: 20px;
margin-bottom: 15px;
}
.btn {
display: inline-block;
margin-right: 5px;
line-height: 20px;
height: 20px;
color: #fff;
border-radius: 5px;
padding: 7px 12px;
}
.buttonIcon {
width: 14px;
margin-bottom: 3px;
height: 14px;
vertical-align: middle;
}
.btn-primary {
background-color: #23c6c8;
border-color: #23c6c8;
}
.btn-primary:hover {
background-color: #23c6c8;
border-color: #23c6c8;
}
.form-horizontal {
display: flex;
flex-wrap: wrap;
border-top: 2px solid #23c6c8;
border-left: 1px solid #dee5e7;
border-right: 1px solid #dee5e7;
border-bottom: 1px solid #dee5e7;
padding-top: 15px;
margin-bottom: 20px;
}
.form-group {
width: 20%;
display: flex;
align-items: center;
margin-right: 40px !important;
}
.form-group > label {
width: 150px;
text-align: right;
padding-right: 10px;
display: inline-block;
max-width: 100%;
margin-bottom: 5px;
font-weight: 700;
}
.form-group > select {
width: 226px;
}
.form-group > input {
width: 195px;
}
.pageTitle {
font-size: 20px;
}
.pageLine {
margin-top: 4px;
border-top: 2px solid #e5e5e5;
}
.modal-header {
background-color: #0d867f;
color: #fff;
}
.close {
color: #fff;
}
.form-group2 {
width: 22%;
display: flex;
align-items: center;
margin-right: 40px !important;
}
.form-group2 > label {
width: 150px;
height: 34px;
line-height: 34px;
text-align: right;
padding-right: 10px;
}
.form-group2 > select {
width: 180px;
}
.form-group2 > input {
width: 180px;
}
.fixed-table-pagination {
margin-top: 400px;
display: flex;
justify-content: flex-end;
}
tbody tr:nth-of-type(even) {
background: #f0ffff;
color: #2785e6;
}
thead th {
background: #eeeeee;
padding: 6px 0;
}
select.form-control {
display: block;
width: 100%;
height: 34px;
padding: 6px 12px;
font-size: 14px;
line-height: 1.42857143;
color: #555;
background-color: #fff;
background-image: none;
border: 1px solid #ccc;
border-radius: 4px;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
-webkit-transition: border-color ease-in-out 0.15s,
-webkit-box-shadow ease-in-out 0.15s;
-o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}
.form-control:focus {
border-color: #66afe9;
outline: 0;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075),
0 0 8px rgba(102, 175, 233, 0.6);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075),
0 0 8px rgba(102, 175, 233, 0.6);
}
.form-horizontal .form-group {
margin-right: -15px;
margin-left: -15px;
}
.form-group {
margin-bottom: 15px;
}
input.form-control {
box-sizing: border-box;
display: block;
width: 100%;
height: 34px;
padding: 6px 12px;
font-size: 14px;
line-height: 1.42857143;
color: #555;
background-color: #fff;
background-image: none;
border: 1px solid #ccc;
border-radius: 4px;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
-webkit-transition: border-color ease-in-out 0.15s,
-webkit-box-shadow ease-in-out 0.15s;
-o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}
.form-group > input {
width: 195px;
}
.form-group > select {
width: 226px;
}
/deep/ .el-input__inner {
height: 34px;
line-height: 34px;
border: 1px solid #ccc;
}
/deep/.el-input__icon {
line-height: 34px;
}
/deep/ ::placeholder {
color: #999;
}
/deep/.el-date-table td.today span {
color: red !important;
}
/deep/ .el-input__prefix .el-input__icon{
margin-left: 157px;
background-color: #eee;
border: 1px solid #ccc;
width: 34px;
color: #000;
height: 94%;
}
/deep/.el-input__suffix{
border:none
}
</style>
\ No newline at end of file
......@@ -4,7 +4,7 @@ const { defineConfig } = require('@vue/cli-service')
// const ip = '172.20.10.9'; // 何鹏
// const ip = '192.168.0.120';
// const ip = '192.168.0.13';
const ip = '192.168.0.102';
const ip = '192.168.8.120';
module.exports = defineConfig({
transpileDependencies: true,
//如果是hash模式, publicPath:"";如果是history, publicPath:"/"
......@@ -13,7 +13,7 @@ module.exports = defineConfig({
hot: true,
proxy: {
'/api':{
target: `http://192.168.8.248:18101`, // pin
target: `http://192.168.8.120:18101`, // pin
changeOrigin: true,
pathRewrite:{
"^/api":""
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!