Commit f5577dc1 by liangzhen

自查

1 parent 54f4cad9
...@@ -8,6 +8,7 @@ ...@@ -8,6 +8,7 @@
}, },
"dependencies": { "dependencies": {
"@onlyoffice/document-editor-vue": "^1.3.0", "@onlyoffice/document-editor-vue": "^1.3.0",
"@vue-office/pdf": "^2.0.2",
"@wangeditor/editor-for-vue": "^1.0.2", "@wangeditor/editor-for-vue": "^1.0.2",
"axios": "^1.6.2", "axios": "^1.6.2",
"core-js": "^3.8.3", "core-js": "^3.8.3",
...@@ -17,11 +18,14 @@ ...@@ -17,11 +18,14 @@
"element-ui": "^2.15.14", "element-ui": "^2.15.14",
"jquery": "^3.7.1", "jquery": "^3.7.1",
"jszip": "^3.10.1", "jszip": "^3.10.1",
"mammoth": "^1.7.2", "mammoth": "^1.8.0",
"moment": "^2.30.1", "moment": "^2.30.1",
"scss": "^0.2.4", "scss": "^0.2.4",
"util": "^0.12.5",
"vue": "^2.6.14", "vue": "^2.6.14",
"vue-cli": "^2.9.6", "vue-cli": "^2.9.6",
"vue-demi": "^0.14.10",
"vue-doc-preview": "^0.3.2",
"vue-pdf": "^4.3.0", "vue-pdf": "^4.3.0",
"vue-router": "^3.5.1", "vue-router": "^3.5.1",
"vuex": "^3.6.2", "vuex": "^3.6.2",
......
...@@ -275,6 +275,14 @@ export function gdrectificationVerification(params) { ...@@ -275,6 +275,14 @@ export function gdrectificationVerification(params) {
export function downloadObject(params) { export function downloadObject(params) {
return download(`${ARCH_EVALUATION}/oss/downloadObject`, params) return download(`${ARCH_EVALUATION}/oss/downloadObject`, params)
} }
//多文件下载
export function downloadObjectStr(params) {
return download(`${ARCH_EVALUATION}/oss/downloadObjectStr`, params)
}
//多文件删除 /oss/delAll
export function delAll(params) {
return post(`${ARCH_EVALUATION}/oss/delAll`, params)
}
//下载归档 //下载归档
export function downloadObjectAll(params) { export function downloadObjectAll(params) {
return download(`${ARCH_EVALUATION}/oss/downloadObjectAll`, params) return download(`${ARCH_EVALUATION}/oss/downloadObjectAll`, params)
...@@ -402,10 +410,14 @@ export function tjRuleProjectLink(params){ ...@@ -402,10 +410,14 @@ export function tjRuleProjectLink(params){
export function selWtqdFZ(params){ export function selWtqdFZ(params){
return post(`${ARCH_EVALUATION}/evalQuesInfo/selWtqd`, params) return post(`${ARCH_EVALUATION}/evalQuesInfo/selWtqd`, params)
} }
//iframe展示文件 //iframe展示文件
export function selFile(params){ export function selFile(params){
return post(`${ARCH_EVALUATION}/evalQuesInfo/selFile`, params) return post(`${ARCH_EVALUATION}/evalQuesInfo/selFile`, params)
} }
export function selFileList(params){
return post(`${ARCH_EVALUATION}/evalQuesInfo/selFileList`, params)
}
//明显查询 //明显查询
export function selWtmx(params){ export function selWtmx(params){
return post(`${ARCH_EVALUATION}/evalQuesInfo/selWtmx`, params) return post(`${ARCH_EVALUATION}/evalQuesInfo/selWtmx`, params)
...@@ -421,4 +433,22 @@ export function bcevalQuesInfo(params){ ...@@ -421,4 +433,22 @@ export function bcevalQuesInfo(params){
//首页 //首页
export function projectInfoSy(params){ export function projectInfoSy(params){
return post(`${ARCH_EVALUATION}/projectInfo/sy`, params) return post(`${ARCH_EVALUATION}/projectInfo/sy`, params)
} }
\ No newline at end of file //项目列表页面
export function pmProInitiation(params){
return post(`${ARCH_EVALUATION}/pmProInitiation/`, params)
}
//项目清单
export function MaterialWarehous(params){
return post(`${ARCH_EVALUATION}/pmProInitiation/MaterialWarehouse`, params)
}
//更新类型
export function chpmProInitiation(params){
return post(`${ARCH_EVALUATION}/pmProInitiation/ch`, params)
}
//历史记录
export function HistoryVersion(params){
return post(`${ARCH_EVALUATION}/pmProInitiation/HistoryVersion`, params)
}
...@@ -31,6 +31,7 @@ export const routes = [ ...@@ -31,6 +31,7 @@ export const routes = [
redirect: defaultRouter(), redirect: defaultRouter(),
component: () => import('@/views/layout/mainLayout.vue'), component: () => import('@/views/layout/mainLayout.vue'),
children: [ children: [
{ {
path: '/layout/main', path: '/layout/main',
name: 'main', name: 'main',
...@@ -39,6 +40,7 @@ export const routes = [ ...@@ -39,6 +40,7 @@ export const routes = [
title: "首页", title: "首页",
}, },
}, },
//后评估自查 //后评估自查
{ {
path: '/assesszc/auxiliarySelection', path: '/assesszc/auxiliarySelection',
...@@ -57,11 +59,19 @@ export const routes = [ ...@@ -57,11 +59,19 @@ export const routes = [
}, },
}, },
{ {
path: '/assesszc/projectView',
name: 'projectView',
component: () => import('@/views/assessZC/projectView.vue'),
meta: {
title: "项目档案库",
},
},
{
path: '/assesszc/materialAcquisition', path: '/assesszc/materialAcquisition',
name: 'materialAcquisition', name: 'materialAcquisition',
component: () => import('@/views/assessZC/materialAcquisition.vue'), component: () => import('@/views/assessZC/materialAcquisition.vue'),
meta: { meta: {
title: "自查评估材料提交与整改", title: "自查整改",
}, },
}, },
{ {
...@@ -129,7 +139,7 @@ export const routes = [ ...@@ -129,7 +139,7 @@ export const routes = [
name: 'materialAcquisition', name: 'materialAcquisition',
component: () => import('@/views/assessChecks/materialAcquisition.vue'), component: () => import('@/views/assessChecks/materialAcquisition.vue'),
meta: { meta: {
title: "评估材料提交与整改", title: "评估问题整改",
}, },
}, },
{ {
......
...@@ -131,6 +131,19 @@ export function projectCategoryText(type) { ...@@ -131,6 +131,19 @@ export function projectCategoryText(type) {
} }
} }
export function constructionFormText(type) {
switch (type) {
case "1":
return '独立建设'
break;
case "2":
return '统推'
break;
case "3":
return '自建'
break;
}
}
export function ruleType(msg){ export function ruleType(msg){
switch (msg) { switch (msg) {
case "应有可研报告或项目说明书": case "应有可研报告或项目说明书":
......
...@@ -137,7 +137,7 @@ export function trendsRules(type) { ...@@ -137,7 +137,7 @@ export function trendsRules(type) {
url: "", url: "",
children: [ children: [
{ {
name: "评估材料提交与整改", name: "评估问提整改",
url: "/mainLayout/materialAcquisition", url: "/mainLayout/materialAcquisition",
children: [], children: [],
}, },
...@@ -216,13 +216,21 @@ export function trendsRules(type) { ...@@ -216,13 +216,21 @@ export function trendsRules(type) {
url: "/assesszc/auxiliarySelection", url: "/assesszc/auxiliarySelection",
children: [], children: [],
}, },
// {
// name: "项目档案库",
// url: "/assesszc/projectView",
// children: [],
// },
{ {
name: "自查评估项目确认", name: "自查评估项目确认",
url: "/assesszc/confirmRelease", url: "/assesszc/confirmRelease",
children: [], children: [],
}, },
{ {
name: "自查评估材料提交与整改", name: "自查问题整改",
url: "/assesszc/materialAcquisition", url: "/assesszc/materialAcquisition",
children: [], children: [],
}, },
...@@ -254,7 +262,7 @@ export function trendsRules(type) { ...@@ -254,7 +262,7 @@ export function trendsRules(type) {
children: [], children: [],
}, },
{ {
name: "评估材料提交与整改", name: "评估问题整改",
url: "/mainLayout/materialAcquisition", url: "/mainLayout/materialAcquisition",
children: [], children: [],
}, },
......
...@@ -23,7 +23,6 @@ ...@@ -23,7 +23,6 @@
:label="item.typeText" :label="item.typeText"
:name="item.typeCode" :name="item.typeCode"
> >
<!-- <p style="height:600px"> {{ item.typeText }}</p> -->
<iframe <iframe
v-if="blobType=='pdf'" v-if="blobType=='pdf'"
:src="iframeUrl" :src="iframeUrl"
...@@ -37,9 +36,6 @@ ...@@ -37,9 +36,6 @@
<div ref="word" id="preview" > <div ref="word" id="preview" >
</div> </div>
</div> </div>
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
</div> </div>
...@@ -242,7 +238,7 @@ export default { ...@@ -242,7 +238,7 @@ export default {
disabled: false, disabled: false,
oldQuestionList: [], //对比列表 oldQuestionList: [], //对比列表
blobType:'pdf',//bolb类型 blobType:'pdf',//bolb类型
projectName:'' projectName:'',
}; };
}, },
mounted() { mounted() {
......
...@@ -468,9 +468,9 @@ ...@@ -468,9 +468,9 @@
placeholder="请选择" placeholder="请选择"
clearable clearable
> >
<el-option label="统推" value="01"></el-option> <el-option label="统推" value="1"></el-option>
<el-option label="自建" value="02"></el-option> <el-option label="自建" value="2"></el-option>
<el-option label="独立建设" value="03"></el-option> <el-option label="独立建设" value="3"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="负责人:" prop="personCharge" class="fromItem"> <el-form-item label="负责人:" prop="personCharge" class="fromItem">
......
...@@ -105,9 +105,9 @@ ...@@ -105,9 +105,9 @@
<el-button @click="detailsForm()"> <el-button @click="detailsForm()">
<img class="buttonIcon" src="../../assets/ck.png" />详情</el-button <img class="buttonIcon" src="../../assets/ck.png" />详情</el-button
> >
<el-button @click="submitNexts()" :disabled="subdisabled" :class="subdisabled?'noclick':''" <!-- <el-button @click="submitNexts()" :disabled="subdisabled" :class="subdisabled?'noclick':''"
><i class="el-icon-finished"></i> 提交评估材料</el-button ><i class="el-icon-finished"></i> 提交评估材料</el-button
> > -->
<el-button @click="confirm()" :disabled="confirmdisabled" :class="confirmdisabled?'noclick':''"> <el-button @click="confirm()" :disabled="confirmdisabled" :class="confirmdisabled?'noclick':''">
<i class="el-icon-chat-dot-square"></i <i class="el-icon-chat-dot-square"></i
>&nbsp;&nbsp;&nbsp;问题整改</el-button >&nbsp;&nbsp;&nbsp;问题整改</el-button
...@@ -151,6 +151,19 @@ ...@@ -151,6 +151,19 @@
</el-table-column> </el-table-column>
<el-table-column prop="postEvalStateText" label="项目审核状态" width="120"> <el-table-column prop="postEvalStateText" label="项目审核状态" width="120">
</el-table-column> </el-table-column>
<el-table-column
prop="contractNumber"
label="合同编号"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop="contractName"
label="合同名称"
width="auto"
show-overflow-tooltip
>
</el-table-column>
<el-table-column prop="planReviewDate" label="计划评估日期"> <el-table-column prop="planReviewDate" label="计划评估日期">
</el-table-column> </el-table-column>
</el-table> </el-table>
...@@ -167,7 +180,7 @@ ...@@ -167,7 +180,7 @@
> >
</el-pagination> </el-pagination>
<el-dialog <el-dialog
title="提交评估材料" title="评估项目详情"
:visible.sync="dialog" :visible.sync="dialog"
width="90%" width="90%"
:modal-append-to-body="false" :modal-append-to-body="false"
...@@ -767,29 +780,37 @@ export default { ...@@ -767,29 +780,37 @@ export default {
this.$message("请选择"); this.$message("请选择");
return; return;
} }
console.log("222");
this.dialogXQ = true;
let params = { let params = {
current: this.currentPage, proType: this.checkedList[0]. projectType,
pageSize: this.pageSize, contractNumber: this.checkedList[0].contractNumber,
projectId: this.checkedList[0].projectId, prjId: this.checkedList[0].projectCode,
batchId: this.checkedList[0].batchId,
}; };
let res = await clqdevaluationMaterials(params); let res = await MaterialWarehous(params);
this.tableDataQD = this.tableDataNew; this.tableDataQD = res.data.records;
this.tableDataQD = this.tableDataQD this.dialog = true;
.concat(res.data.records) this.tableDataQD.forEach((item) => {
.reduce((accumulator, currentObj) => { switch (item.projectStage) {
const existingObj = accumulator.find( case "1":
(obj) => obj.typeCode == currentObj.typeCode this.$set(item, "projectStagetext", "可研");
); break;
if (existingObj) { case "2":
Object.assign(existingObj, currentObj); this.$set(item, "projectStagetext", "计划");
} else { break;
accumulator.push(currentObj); case "3":
} this.$set(item, "projectStagetext", "采购");
return accumulator; break;
}, []); case "4":
this.$set(item, "projectStagetext", "合同");
break;
case "5":
this.$set(item, "projectStagetext", "执行");
break;
case "6":
this.$set(item, "projectStagetext", "结决算及转资");
break;
}
});
}, },
//表格颜色 //表格颜色
tableRowClassName({ row, rowIndex }) { tableRowClassName({ row, rowIndex }) {
...@@ -1174,10 +1195,6 @@ export default { ...@@ -1174,10 +1195,6 @@ export default {
/deep/ .el-dialog__headerbtn .el-dialog__close { /deep/ .el-dialog__headerbtn .el-dialog__close {
color: #fff; color: #fff;
} }
// /deep/.el-table th.el-table__cell.is-leaf,
// .el-table td.el-table__cell {
// text-align: center;
// }
/deep/ .el-table__cell { /deep/ .el-table__cell {
text-align: center; text-align: center;
} }
......
<template>
<div class="dialogFrom">
<p class="xqtitle"><span></span>批次详情</p>
<el-form
:model="ruleFormdialog"
label-width="100px"
class="demo-ruleForm"
>
<el-form-item label="批次年度:" prop="batchYear" class="fromItem">
<el-input v-model="ruleFormdialog.batchYear" disabled></el-input>
</el-form-item>
<el-form-item label="后评估名称:" prop="batchName" class="fromItem">
<el-input v-model="ruleFormdialog.batchName" disabled></el-input>
</el-form-item>
<el-form-item
label="计划评估日期:"
prop="planReviewDate"
class="fromItem"
>
<el-input
v-model="ruleFormdialog.planReviewDate"
disabled
></el-input>
</el-form-item>
<el-form-item label="后评估专家:" prop="expertName" class="fromItem">
<el-input v-model="ruleFormdialog.expertName" disabled></el-input>
</el-form-item>
<el-form-item label="工作组织情况:" class="textarea">
<el-input
type="textarea"
v-model="ruleFormdialog.description"
disabled
></el-input>
</el-form-item>
</el-form>
<p class="xqtitle"><span></span>本项目材料清单</p>
<div class="setscrolldialog">
<el-table
@selection-change="handleSelectionChange"
:data="tableDataQD"
tooltip-effect="dark myTooltips"
style="width: 100%"
header-cell-class-name="custom-th-background"
class="eltable"
:row-class-name="tableRowClassName"
border
>
<el-table-column label="序号" width="55" type="index">
</el-table-column>
<el-table-column label="材料类别" prop="batchtype">
</el-table-column>
<el-table-column prop="typeText" label="资料类型">
</el-table-column>
<el-table-column
prop="fileName"
label="资料名称"
show-overflow-tooltip
>
</el-table-column>
<el-table-column prop="projectCategory" label="操作">
<template slot-scope="scope">
<input
type="file"
@change="handleFileUpload($event, scope.row)"
/>
</template>
</el-table-column>
</el-table>
</div>
<p class="Btn">
<span @click="cancel()">取消</span>
<span @click="preserve()">保存</span>
<span @click="save()">确认上传</span>
</p>
</div>
</template>
<script>
export default {
}
</script>
<style>
</style>
\ No newline at end of file
...@@ -24,9 +24,9 @@ ...@@ -24,9 +24,9 @@
clearable clearable
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item label="项目编码:" prop="projectId" class="fromItem"> <el-form-item label="项目编码:" prop="projectCode" class="fromItem">
<el-input <el-input
v-model="ruleForm.projectId" v-model="ruleForm.projectCode"
placeholder="请输入" placeholder="请输入"
clearable clearable
></el-input> ></el-input>
...@@ -38,9 +38,9 @@ ...@@ -38,9 +38,9 @@
clearable clearable
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item label="项目年度:" prop="projectYear" class="fromItem"> <el-form-item label="项目年度:" prop="issueYear" class="fromItem">
<el-select <el-select
v-model="ruleForm.projectYear" v-model="ruleForm.issueYear"
placeholder="请选择" placeholder="请选择"
clearable clearable
> >
...@@ -126,7 +126,7 @@ ...@@ -126,7 +126,7 @@
<el-table-column prop="batchName" label="后评估批次名称"> <el-table-column prop="batchName" label="后评估批次名称">
</el-table-column> </el-table-column>
<el-table-column prop="expertName" label="评审专家"> </el-table-column> <el-table-column prop="expertName" label="评审专家"> </el-table-column>
<el-table-column prop="projectId" label="项目编码" width="140"> </el-table-column> <el-table-column prop="projectCode" label="项目编码" width="140"> </el-table-column>
<el-table-column <el-table-column
prop="projectName" prop="projectName"
...@@ -134,17 +134,29 @@ ...@@ -134,17 +134,29 @@
show-overflow-tooltip show-overflow-tooltip
> >
</el-table-column> </el-table-column>
<el-table-column prop="projectYear" label="项目年度" width="120"> <el-table-column prop="issueYear" label="项目年度" width="120">
<template slot-scope="scope"> <template slot-scope="scope" >
{{ scope.row.projectYear }} <span v-show="scope.row.issueYear"> {{ scope.row.issueYear }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="projectCategory" label="建设形式" width="120"> <el-table-column prop="constructionForm" label="建设形式" width="120">
</el-table-column> </el-table-column>
<el-table-column prop="postEvalStateText" label="项目审核状态" width="120"> <el-table-column prop="postEvalStateText" label="项目审核状态" width="120">
</el-table-column> </el-table-column>
<el-table-column
prop="contractNumber"
label="合同编号"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop="contractName"
label="合同名称"
width="auto"
show-overflow-tooltip
>
</el-table-column>
<el-table-column prop="planReviewDate" label="计划评估日期"> <el-table-column prop="planReviewDate" label="计划评估日期">
</el-table-column> </el-table-column>
<el-table-column prop="lastUpdateTime" label="实际评估日期"> <el-table-column prop="lastUpdateTime" label="实际评估日期">
...@@ -179,13 +191,13 @@ ...@@ -179,13 +191,13 @@
<div> <div>
<p class="title"><span></span>项目基本信息</p> <p class="title"><span></span>项目基本信息</p>
<div class="content"> <div class="content">
<p><label>项目编号:</label>{{ listData.projectId }}</p> <p><label>项目编号:</label>{{ listData.projectCode }}</p>
<p><label>项目年度:</label>{{ listData.projectYear }}年</p> <p><label>项目年度:</label>{{ listData.issueYear }}年</p>
<p> <p>
<label>项目名称:</label> <label>项目名称:</label>
<span>{{ listData.projectName }}</span> <span>{{ listData.projectName }}</span>
</p> </p>
<p><label>建设形式:</label>{{ listData.projectCategory }}</p> <p><label>建设形式:</label>{{ listData.constructionForm }}</p>
<p> <p>
<label>总投资计划(万元)-成本金:</label <label>总投资计划(万元)-成本金:</label
>{{ listData.costAmountTotal }} >{{ listData.costAmountTotal }}
...@@ -346,7 +358,7 @@ import { ...@@ -346,7 +358,7 @@ import {
downloadObject, downloadObject,
downloadObjectAll downloadObjectAll
} from "@/api/index"; } from "@/api/index";
import { generateYearOptions, projectCategoryText } from "@/utils/cache"; import { generateYearOptions, constructionFormText } from "@/utils/cache";
export default { export default {
data() { data() {
return { return {
...@@ -361,7 +373,7 @@ export default { ...@@ -361,7 +373,7 @@ export default {
batchName: "", batchName: "",
postEvalState: "", postEvalState: "",
projectName: "", projectName: "",
projectId: "", projectCode: "",
}, },
ruleFormdialog: { ruleFormdialog: {
batchYear: "", batchYear: "",
...@@ -386,7 +398,7 @@ export default { ...@@ -386,7 +398,7 @@ export default {
}, },
mounted() { mounted() {
this.ruleForm.batchName = this.$route.query.batchName; this.ruleForm.batchName = this.$route.query.batchName;
this.ruleForm.projectId = this.$route.query.projCode; this.ruleForm.projectCode = this.$route.query.projCode;
this.submitForm(); this.submitForm();
}, },
...@@ -428,8 +440,8 @@ export default { ...@@ -428,8 +440,8 @@ export default {
} }
this.$set( this.$set(
item, item,
"projectCategory", "constructionForm",
projectCategoryText(item.projectCategory) constructionFormText(item.constructionForm)
); );
}); });
this.total = res.data.total * 1; this.total = res.data.total * 1;
...@@ -453,12 +465,12 @@ export default { ...@@ -453,12 +465,12 @@ export default {
this.dialog = true; this.dialog = true;
let params = { let params = {
batchId: this.checkedList[0].batchId, batchId: this.checkedList[0].batchId,
projectId: this.checkedList[0].projectId, projectCode: this.checkedList[0].projectCode,
}; };
Promise.all([fzcxXqselect(params), clqdselect(params)]).then((res) => { Promise.all([fzcxXqselect(params), clqdselect(params)]).then((res) => {
this.listData = res[0].data.records[0]; this.listData = res[0].data.records[0];
this.listData.projectCategory = projectCategoryText( this.listData.constructionForm = constructionFormText(
this.listData.projectCategory this.listData.constructionForm
); );
this.qdtableData = JSON.parse(JSON.stringify(this.tableDataNew)); this.qdtableData = JSON.parse(JSON.stringify(this.tableDataNew));
if (res[1].data.records.length > 0) { if (res[1].data.records.length > 0) {
...@@ -523,7 +535,7 @@ export default { ...@@ -523,7 +535,7 @@ export default {
if (this.activeName == "second") { if (this.activeName == "second") {
let params = { let params = {
batchId: this.checkedList[0].batchId, batchId: this.checkedList[0].batchId,
projectId: this.checkedList[0].projectId, projectCode: this.checkedList[0].projectCode,
}; };
this.xxtableData = []; this.xxtableData = [];
let res = await wtqdqselect(params); let res = await wtqdqselect(params);
...@@ -582,7 +594,7 @@ export default { ...@@ -582,7 +594,7 @@ export default {
} else if (this.activeName == "third") { } else if (this.activeName == "third") {
let params = { let params = {
batchId: this.checkedList[0].batchId, batchId: this.checkedList[0].batchId,
projectId: this.checkedList[0].projectId, projectCode: this.checkedList[0].projectCode,
}; };
let res = await selLcb(params); let res = await selLcb(params);
if (res.code == "200") { if (res.code == "200") {
...@@ -641,7 +653,7 @@ export default { ...@@ -641,7 +653,7 @@ export default {
return; return;
} }
let response = await downloadObjectAll({ let response = await downloadObjectAll({
prjId:this.checkedList[0].projectId, prjId:this.checkedList[0].projectCode,
bathId: this.checkedList[0].batchId, bathId: this.checkedList[0].batchId,
}); });
let blob = new Blob([response], { type: 'application/zip' }) let blob = new Blob([response], { type: 'application/zip' })
......
...@@ -24,9 +24,9 @@ ...@@ -24,9 +24,9 @@
clearable clearable
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item label="项目编码:" prop="projectId" class="fromItem"> <el-form-item label="项目编码:" prop="projectCode" class="fromItem">
<el-input <el-input
v-model="ruleForm.projectId" v-model="ruleForm.projectCode"
placeholder="请输入" placeholder="请输入"
clearable clearable
></el-input> ></el-input>
...@@ -38,9 +38,9 @@ ...@@ -38,9 +38,9 @@
clearable clearable
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item label="项目年度:" prop="projectYear" class="fromItem"> <el-form-item label="项目年度:" prop="issueYear" class="fromItem">
<el-select <el-select
v-model="ruleForm.projectYear" v-model="ruleForm.issueYear"
placeholder="请选择" placeholder="请选择"
clearable clearable
> >
...@@ -132,7 +132,7 @@ ...@@ -132,7 +132,7 @@
</el-table-column> </el-table-column>
<el-table-column prop="expertName" label="评审专家"> </el-table-column> <el-table-column prop="expertName" label="评审专家"> </el-table-column>
<el-table-column prop="projectId" label="项目编码" width="120"> <el-table-column prop="projectCode" label="项目编码" width="120">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="projectName" prop="projectName"
...@@ -140,19 +140,40 @@ ...@@ -140,19 +140,40 @@
show-overflow-tooltip show-overflow-tooltip
> >
</el-table-column> </el-table-column>
<el-table-column prop="projectYear" label="项目年度" width="120"> <el-table-column prop="issueYear" label="项目年度" width="120">
<template slot-scope="scope"> <template slot-scope="scope" >
{{ scope.row.projectYear }} <span v-show="scope.row.issueYear"> {{ scope.row.issueYear }}</span>
</template>
</el-table-column>
<el-table-column prop="projectType" label="项目类型" width="120">
<template slot-scope="scope" >
<span v-show="scope.row.projectType"> {{ scope.row.projectType|proType }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="projectCategory" label="建设形式" width="120"> <el-table-column prop="constructionForm" label="建设形式" width="120">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="postEvalStateText" prop="postEvalStateText"
label="项目审核状态 " label="项目审核状态 "
width="120" width="120"
> >
</el-table-column> </el-table-column>
<el-table-column
prop="contractNumber"
label="合同编号"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop="contractName"
label="合同名称"
width="auto"
show-overflow-tooltip
>
</el-table-column>
<!-- <el-table-column prop="reviewStatusText" label="项目审核状态" width="120"> <!-- <el-table-column prop="reviewStatusText" label="项目审核状态" width="120">
</el-table-column> --> </el-table-column> -->
<el-table-column prop="planReviewDate" label="计划评估日期"> <el-table-column prop="planReviewDate" label="计划评估日期">
...@@ -372,10 +393,11 @@ import { ...@@ -372,10 +393,11 @@ import {
downloadObject, downloadObject,
tjrectificationVerification tjrectificationVerification
} from "@/api/index"; } from "@/api/index";
import { generateYearOptions, projectCategoryText } from "@/utils/cache"; import { generateYearOptions, constructionFormText } from "@/utils/cache";
export default { export default {
data() { data() {
return { return {
dialogFullScreen:false,
yearsList: generateYearOptions(), yearsList: generateYearOptions(),
showButton: true, showButton: true,
ruleForm: { ruleForm: {
...@@ -383,7 +405,7 @@ export default { ...@@ -383,7 +405,7 @@ export default {
batchName: "", batchName: "",
postEvalState: "", postEvalState: "",
projectName: "", projectName: "",
projectId: "", projectCode: "",
dates: [], dates: [],
}, },
ruleFormdialog: { ruleFormdialog: {
...@@ -426,6 +448,21 @@ export default { ...@@ -426,6 +448,21 @@ export default {
this.ruleForm.batchName = this.$route.query.batchName; this.ruleForm.batchName = this.$route.query.batchName;
this.submitForm(); this.submitForm();
}, },
filters: {
proType(val) {
if (val == 1) {
return "咨询设计类";
} else if (val == 2) {
return "开发实施类";
}else if (val == 3){
return "业务运营类";
}else if (val == 4){
return "数据工程类";
}else if (val == 5){
return "产品购置类";
}
},
},
methods: { methods: {
//整改复核 //整改复核
async rectificationReview() { async rectificationReview() {
...@@ -437,7 +474,7 @@ export default { ...@@ -437,7 +474,7 @@ export default {
} }
this.dialogQR = true; this.dialogQR = true;
let params = { let params = {
projectId: this.checkedList[0].projectId, projectCode: this.checkedList[0].projectCode,
batchId: this.checkedList[0].batchId, batchId: this.checkedList[0].batchId,
}; };
...@@ -586,8 +623,8 @@ export default { ...@@ -586,8 +623,8 @@ export default {
this.$set( this.$set(
item, item,
"projectCategory", "constructionForm",
projectCategoryText(item.projectCategory) constructionFormText(item.constructionForm)
); );
}); });
this.total = res.data.total * 1; this.total = res.data.total * 1;
...@@ -609,8 +646,10 @@ export default { ...@@ -609,8 +646,10 @@ export default {
return; return;
} }
let params = { let params = {
projectId: this.checkedList[0].projectId,
batchId: this.checkedList[0].batchId, batchId: this.checkedList[0].batchId,
projectId: this.checkedList[0].projectCode,
contractNumber: this.checkedList[0].contractNumber,
proType:this.checkedList[0].projectType
}; };
this.$router.push({ this.$router.push({
path: "/assesszc/Compliance", path: "/assesszc/Compliance",
...@@ -627,7 +666,7 @@ export default { ...@@ -627,7 +666,7 @@ export default {
return; return;
} }
let params = { let params = {
projectId: this.checkedList[0].projectId, projectId: this.checkedList[0].projectCode,
batchId: this.checkedList[0].batchId, batchId: this.checkedList[0].batchId,
}; };
this.$router.push({ this.$router.push({
...@@ -656,7 +695,7 @@ export default { ...@@ -656,7 +695,7 @@ export default {
console.log("222"); console.log("222");
// this.dialog = true; // this.dialog = true;
let params = { let params = {
projectId: this.checkedList[0].projectId, projectId: this.checkedList[0].projectCode,
batchId: this.checkedList[0].batchId, batchId: this.checkedList[0].batchId,
}; };
this.$router.push({ this.$router.push({
...@@ -679,7 +718,7 @@ export default { ...@@ -679,7 +718,7 @@ export default {
let params = { let params = {
current: this.currentPage, current: this.currentPage,
pageSize: this.pageSize, pageSize: this.pageSize,
projectId: this.checkedList[0].projectId, projectId: this.checkedList[0].projectCode,
batchId: this.checkedList[0].batchId, batchId: this.checkedList[0].batchId,
}; };
let res = await chpostEvalQuesInfo(params); let res = await chpostEvalQuesInfo(params);
......
...@@ -23,9 +23,20 @@ ...@@ -23,9 +23,20 @@
:label="item.typeText" :label="item.typeText"
:name="item.typeCode" :name="item.typeCode"
> >
<!-- <p style="height:600px"> {{ item.typeText }}</p> --> <div class="opt" v-show="options.length>0">
<el-select v-model="valuesel" clearable placeholder="请选择" @change="changexm">
<el-option
v-for="(item,index) in options"
:key="item.name"
:label="item.name"
:value="index">
</el-option>
</el-select>
</div>
<iframe <iframe
v-if="blobType=='pdf'" v-if="blobType=='pdf'&&options.length>0"
:key="iframeUrl"
:src="iframeUrl" :src="iframeUrl"
frameborder="0" frameborder="0"
style="width: 80%; height: 60vh; margin: auto; display: block" style="width: 80%; height: 60vh; margin: auto; display: block"
...@@ -33,13 +44,10 @@ ...@@ -33,13 +44,10 @@
<div v-else-if="blobType=='png'||blobType=='jpg'" class="blobImg"> <div v-else-if="blobType=='png'||blobType=='jpg'" class="blobImg">
<img :src="iframeUrl" alt=""> <img :src="iframeUrl" alt="">
</div> </div>
<div class="docDiv" v-else-if="blobType=='docx'"> <div class="docDiv" v-else-if="blobType=='docx'&&options.length>0">
<div ref="word" id="preview" > <div :ref="`word${item.typeCode}`" :id="`word${item.typeCode}`" >
</div> </div>
</div> </div>
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
</div> </div>
...@@ -206,11 +214,14 @@ import { ...@@ -206,11 +214,14 @@ import {
bcevalQuesInfo, bcevalQuesInfo,
ossupload, ossupload,
presignedUrl, presignedUrl,
selFileList
} from "@/api/index"; } from "@/api/index";
import { MaterialsListKY } from "@/utils/cache"; import { MaterialsListKY } from "@/utils/cache";
export default { export default {
data() { data() {
return { return {
valuesel:'',
options:[],
dialogImageUrl: "", dialogImageUrl: "",
fileList: [], fileList: [],
evalList: [ evalList: [
...@@ -227,7 +238,7 @@ export default { ...@@ -227,7 +238,7 @@ export default {
{ label: "执行", id: 4 }, { label: "执行", id: 4 },
{ label: "结决算及转资", id: 5 }, { label: "结决算及转资", id: 5 },
], ],
tabListKY: MaterialsListKY(1), tabListKY:[],
active: 0, active: 0,
activeName: "0", activeName: "0",
clqparams: {}, clqparams: {},
...@@ -242,7 +253,8 @@ export default { ...@@ -242,7 +253,8 @@ export default {
disabled: false, disabled: false,
oldQuestionList: [], //对比列表 oldQuestionList: [], //对比列表
blobType:'pdf',//bolb类型 blobType:'pdf',//bolb类型
projectName:"" projectName:"",
valuesel:""
}; };
}, },
mounted() { mounted() {
...@@ -261,13 +273,7 @@ export default { ...@@ -261,13 +273,7 @@ export default {
}) })
.then(() => { .then(() => {
this.save(); this.save();
this.$router.push({
path: "/assesszc/Compliancefz",
query: {
clqparams: JSON.stringify(this.clqparams),
projectName:this.projectName
},
});
}) })
.catch((action) => { .catch((action) => {
...@@ -342,6 +348,10 @@ export default { ...@@ -342,6 +348,10 @@ export default {
handleExceed() { handleExceed() {
this.$message.warning(`只能选择一张图片`); this.$message.warning(`只能选择一张图片`);
}, },
changexm(row){
this.downloadObject(this.options[row])
console.log(row,'换文件')
},
async init(type) { async init(type) {
let params = { let params = {
projectStage: this.active * 1 + 1, projectStage: this.active * 1 + 1,
...@@ -349,8 +359,25 @@ export default { ...@@ -349,8 +359,25 @@ export default {
...type, ...type,
}; };
Promise.all([selFile(params), selWtqdFZ(params)]).then(async (res) => { Promise.all([selFile(params), selWtqdFZ(params)]).then(async (res) => {
this.tabListKY=[]
this.urlList = res[0].data; this.urlList = res[0].data;
if(this.urlList.length>0){
this.urlList.forEach(item=>{
this.tabListKY.push({typeText:item.materialName,typeCode:item.mid})
})
this.activeName=this.tabListKY[0].typeCode
let resList= await selFileList({ ...params,typeCode:this.tabListKY[0].typeCode });
this.options= resList.data
if(this.options.length>0){
this.valuesel=this.options[0].name
this. downloadObject(this.options[0])
}else{
this.blobType='png'
this.iframeUrl = "/nopdf.png";
}
}else{
// this.iframeUrl = "/nopdf.png";
}
if (res[1].data) { if (res[1].data) {
this.questionList = res[1].data.records; this.questionList = res[1].data.records;
let counterNum = 0; let counterNum = 0;
...@@ -425,54 +452,47 @@ export default { ...@@ -425,54 +452,47 @@ export default {
} }
}) })
} }
console.log(this.questionList,'2')
if (this.urlList.length <= 0) { });
this.iframeUrl = "/nopdf.png"; },
} else { async downloadObject(row){
let resUrl = await downloadObject({fileId:row.id});
let resUrl = await downloadObject({fileId: this.urlList[0].id}); this.blobType=row.suffix
this.blobType=this.urlList[0].fileType const binaryData = []
const binaryData = []
binaryData.push(resUrl) binaryData.push(resUrl)
let URL = window.URL.createObjectURL(new Blob(binaryData, { type: this.urlList[0].contentType})) let URL = window.URL.createObjectURL(new Blob(binaryData, { type:row.contentType}))
this.iframeUrl = URL this.iframeUrl = URL+'#view=FitH,top'
console.log(this.blobType,'文件类型')
if(this.blobType=='docx'){ if(this.blobType=='docx'){
let docx = require("docx-preview"); let docx = require("docx-preview");
window.JSZip = require("jszip");
this.$nextTick(()=>{ this.$nextTick(()=>{
docx.renderAsync(resUrl,document.getElementById("preview")) // 渲染到页面预览 docx.renderAsync(resUrl,document.getElementById(`word${item.typeCode}`)) // 渲染到页面预览
}) })
} }
}
});
}, },
async handleClick(tab) { async handleClick(tab) {
console.log("切换", tab.name, this.urlList); let params = {
this.urlList.forEach(async (item) => { projectStage: this.active * 1 + 1,
if (item.typeCode == tab.name) { hgx:"hgx",
let resUrl = await downloadObject({fileId:item.id}); ...this.clqparams,
this.blobType=item.fileType };
const binaryData = [] this.options=[]
binaryData.push(resUrl) this.valuesel=''
let URL = window.URL.createObjectURL(new Blob(binaryData, { type:item.contentType})) this.iframeUrl =""
this.iframeUrl = URL; console.log("切换", tab.index,);
if(this.blobType=='docx'){ let resList= await selFileList({ ...params,typeCode:this.tabListKY[tab.index].typeCode });
let docx = require("docx-preview"); this.options= resList.data
window.JSZip = require("jszip"); if(this.options.length>0){
this.$nextTick(()=>{ this.valuesel=this.options[0].name
docx.renderAsync(resUrl,document.getElementById("preview")) // 渲染到页面预览 this.downloadObject(this.options[0])
}) }else{
} this.blobType='png'
} else {
// this.iframeUrl =""
this.iframeUrl = "/nopdf.png"; this.iframeUrl = "/nopdf.png";
} }
});
console.log(this.iframeUrl, "this.iframeUrl");
}, },
change(id) { change(id) {
console.log(this.questionList, this.oldQuestionList, "相同么");
console.log( console.log(
JSON.stringify(this.questionList) == JSON.stringify(this.questionList) ==
JSON.stringify(this.oldQuestionList), JSON.stringify(this.oldQuestionList),
...@@ -484,7 +504,7 @@ export default { ...@@ -484,7 +504,7 @@ export default {
JSON.stringify(this.oldQuestionList) JSON.stringify(this.oldQuestionList)
) { ) {
this.active = id * 1; this.active = id * 1;
this.tabListKY = MaterialsListKY(id * 1 + 1); // this.tabListKY = MaterialsListKY(id * 1 + 1);
this.init(this.clqparams); this.init(this.clqparams);
return; return;
} }
...@@ -497,14 +517,14 @@ export default { ...@@ -497,14 +517,14 @@ export default {
.then(() => { .then(() => {
this.save(); this.save();
this.active = id * 1; this.active = id * 1;
this.tabListKY = MaterialsListKY(id * 1 + 1); // this.tabListKY = MaterialsListKY(id * 1 + 1);
this.init(this.clqparams); this.init(this.clqparams);
}) })
.catch((action) => { .catch((action) => {
console.log(action, "actionaction"); console.log(action, "actionaction");
if (action === "cancel") { if (action === "cancel") {
this.active = id * 1; this.active = id * 1;
this.tabListKY = MaterialsListKY(id * 1 + 1); // this.tabListKY = MaterialsListKY(id * 1 + 1);
this.init(this.clqparams); this.init(this.clqparams);
} else { } else {
} }
...@@ -563,8 +583,6 @@ export default { ...@@ -563,8 +583,6 @@ export default {
} }
}, },
cancel() { cancel() {
console.log("电击取消");
// this.$router.go(-1);
this.$router.push({ this.$router.push({
path: "/assesszc/auxiliaryInspection", path: "/assesszc/auxiliaryInspection",
}); });
...@@ -591,6 +609,13 @@ export default { ...@@ -591,6 +609,13 @@ export default {
let res = await bcevalQuesInfo(params); let res = await bcevalQuesInfo(params);
if (res.code == "200") { if (res.code == "200") {
this.$message("保存成功"); this.$message("保存成功");
this.$router.push({
path: "/assesszc/Compliancefz",
query: {
clqparams: JSON.stringify(this.clqparams),
projectName:this.projectName
},
});
} else { } else {
this.$message("保存失败"); this.$message("保存失败");
} }
...@@ -852,12 +877,22 @@ export default { ...@@ -852,12 +877,22 @@ export default {
.blobImg{ .blobImg{
width: 100%; width: 100%;
img{ img{
width: 100%; text-align: center;
width:80%;
} }
} }
.docDiv{ .docDiv{
width: 100%; width: 100%;
height:600px; height:600px;
overflow-y: auto; overflow: auto;
}
.opt{
height: 40px;
width: 100%;
text-align: left;
padding-left: 10px;
/deep/ .el-input__inner{
width:600px;
}
} }
</style> </style>
\ No newline at end of file
...@@ -30,7 +30,7 @@ export default { ...@@ -30,7 +30,7 @@ export default {
<style lang="scss" scoped> <style lang="scss" scoped>
.main{ .main{
min-height: 100%; min-height:80vh;
padding: 10px; padding: 10px;
padding-top:5px; padding-top:5px;
padding-bottom: 0; padding-bottom: 0;
......
<template> <template>
<div class="mian"> <div class="mian">
<!-- <div class="head-container"> <div class="head-container">
<div class="logo" style="z-index: 10"> <div class="logo" style="z-index: 10">
<div class="logo-inner"> <div class="logo-inner">
<img src="../../assets/logo.png" alt="" /> <img src="../../assets/logo.png" alt="" />
...@@ -46,7 +46,7 @@ ...@@ -46,7 +46,7 @@
</div> </div>
</div> </div>
</div> </div>
</div> --> </div>
<router-view></router-view> <router-view></router-view>
<!-- <MainLayout class="continer"> <!-- <MainLayout class="continer">
<router-view></router-view> <router-view></router-view>
......
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
ref="kzMenu" ref="kzMenu"
> >
<el-menu-item index="/mainLayout/mianHome" class="classmain">首页</el-menu-item> <el-menu-item index="/mainLayout/mianHome" class="classmain">首页</el-menu-item>
<el-menu-item index="/assesszc/projectView" class="classmain">项目档案库</el-menu-item>
<el-submenu <el-submenu
v-for="(item, index) in menuList" v-for="(item, index) in menuList"
:key="index" :key="index"
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!