This commit is contained in:
xd 2024-04-19 11:01:09 +08:00
parent d4fb949c08
commit 086ed793db
3 changed files with 704 additions and 1931 deletions

View File

@ -673,7 +673,7 @@
<!-- 技术确认单详情对话框 -->
<el-dialog :title="jsqrTitle" :visible.sync="jsqrDialogOpen" width="1000px" append-to-body>
<jsqrDialog :quotJsqrIdProp="quotJsqrIdProp"></jsqrDialog>
<jsqrDialog :quotJsqrIdProp="quotJsqrIdProp" :isSelfProp="false"></jsqrDialog>
</el-dialog>
</div>
</template>

File diff suppressed because it is too large Load Diff

View File

@ -1,4 +1,5 @@
<template>
<div>
<el-form ref="form" :model="form" :rules="rules" label-width="150px">
<el-row :gutter="8">
<el-col :span="12">
@ -102,16 +103,16 @@
<el-divider content-position="center">特缆协助</el-divider>
<div style="margin-bottom: 10px;text-align:right">
<div v-if="this.form.quotJsqrTlOperateState == 0 && this.form.quotJsqrTlCheckState != 2 && this.form.quotJsqrTlLeaderState != 2">
<el-button v-hasPermi="['jsqr:jsqr:operate']" size="mini" type="success" plain @click="doOperate('TL','operater','2')">操作人通过</el-button>
<el-button v-hasPermi="['jsqr:jsqr:operate']" size="mini" type="danger" plain @click="doOperate('TL','operater','3')">操作人驳回</el-button>
<el-button v-hasPermi="['jsqr:jsqr:operateTl']" size="mini" type="success" plain @click="doOperate('TL','operater','2')">操作人通过</el-button>
<el-button v-hasPermi="['jsqr:jsqr:operateTl']" size="mini" type="danger" plain @click="doOperate('TL','operater','3')">操作人驳回</el-button>
</div>
<div v-if="this.form.quotJsqrTlOperateState == 2 && this.form.quotJsqrTlCheckState != 2 && this.form.quotJsqrTlLeaderState != 2">
<el-button v-hasPermi="['jsqr:jsqr:check']" size="mini" type="success" plain @click="doOperate('TL','checker','2')">审核人通过</el-button>
<el-button v-hasPermi="['jsqr:jsqr:check']" size="mini" type="danger" plain @click="doOperate('TL','checker','3')">审核人驳回</el-button>
<el-button v-hasPermi="['jsqr:jsqr:checkTl']" size="mini" type="success" plain @click="doOperate('TL','checker','2')">审核人通过</el-button>
<el-button v-hasPermi="['jsqr:jsqr:checkTl']" size="mini" type="danger" plain @click="doOperate('TL','checker','3')">审核人驳回</el-button>
</div>
<div v-if="this.form.quotJsqrTlOperateState == 2 && this.form.quotJsqrTlCheckState == 2 && this.form.quotJsqrTlLeaderState != 2">
<el-button v-hasPermi="['jsqr:jsqr:leader']" size="mini" type="success" plain @click="doOperate('TL','leader','2')">组长通过</el-button>
<el-button v-hasPermi="['jsqr:jsqr:leader']" size="mini" type="danger" plain @click="doOperate('TL','leader','3')">组长驳回</el-button>
<el-button v-hasPermi="['jsqr:jsqr:leaderTl']" size="mini" type="success" plain @click="doOperate('TL','leader','2')">组长通过</el-button>
<el-button v-hasPermi="['jsqr:jsqr:leaderTl']" size="mini" type="danger" plain @click="doOperate('TL','leader','3')">组长驳回</el-button>
</div>
</div>
<el-row :gutter="8">
@ -131,7 +132,7 @@
<el-row :gutter="8">
<el-col :span="8">
<el-form-item label="特缆反馈附件">
<el-button v-hasPermi="['jsqr:jsqr:operateUploadFile']" size="mini" type="primary" @click="handleAddFile('quotJsqrTl')">上传文件 ({{this.quotJsqrTlFileNum}})</el-button>
<el-button v-hasPermi="['jsqr:jsqr:operateTlUploadFile']" size="mini" type="primary" @click="handleAddFile('quotJsqrTl')">上传文件 ({{this.quotJsqrTlFileNum}})</el-button>
<!--已上传: {{this.quotJsqrTlFileNum}} -->
</el-form-item>
</el-col>
@ -233,16 +234,16 @@
<el-divider content-position="center">低压协助</el-divider>
<div style="margin-bottom: 10px;text-align:right">
<div v-if="this.form.quotJsqrDyOperateState == 0 && this.form.quotJsqrDyCheckState != 2 && this.form.quotJsqrDyLeaderState != 2">
<el-button v-hasPermi="['jsqr:jsqr:operate']" size="mini" type="success" plain @click="doOperate('DY','operater','2')">操作人通过</el-button>
<el-button v-hasPermi="['jsqr:jsqr:operate']" size="mini" type="danger" plain @click="doOperate('DY','operater','3')">操作人驳回</el-button>
<el-button v-hasPermi="['jsqr:jsqr:operateDy']" size="mini" type="success" plain @click="doOperate('DY','operater','2')">操作人通过</el-button>
<el-button v-hasPermi="['jsqr:jsqr:operateDy']" size="mini" type="danger" plain @click="doOperate('DY','operater','3')">操作人驳回</el-button>
</div>
<div v-if="this.form.quotJsqrDyOperateState == 2 && this.form.quotJsqrDyCheckState != 2 && this.form.quotJsqrDyLeaderState != 2">
<el-button v-hasPermi="['jsqr:jsqr:check']" size="mini" type="success" plain @click="doOperate('DY','checker','2')">审核人通过</el-button>
<el-button v-hasPermi="['jsqr:jsqr:check']" size="mini" type="danger" plain @click="doOperate('DY','checker','3')">审核人驳回</el-button>
<el-button v-hasPermi="['jsqr:jsqr:checkDy']" size="mini" type="success" plain @click="doOperate('DY','checker','2')">审核人通过</el-button>
<el-button v-hasPermi="['jsqr:jsqr:checkDy']" size="mini" type="danger" plain @click="doOperate('DY','checker','3')">审核人驳回</el-button>
</div>
<div v-if="this.form.quotJsqrDyOperateState == 2 && this.form.quotJsqrDyCheckState == 2 && this.form.quotJsqrDyLeaderState != 2">
<el-button v-hasPermi="['jsqr:jsqr:leader']" size="mini" type="success" plain @click="doOperate('DY','leader','2')">组长通过</el-button>
<el-button v-hasPermi="['jsqr:jsqr:leader']" size="mini" type="danger" plain @click="doOperate('DY','leader','3')">组长驳回</el-button>
<el-button v-hasPermi="['jsqr:jsqr:leaderDy']" size="mini" type="success" plain @click="doOperate('DY','leader','2')">组长通过</el-button>
<el-button v-hasPermi="['jsqr:jsqr:leaderDy']" size="mini" type="danger" plain @click="doOperate('DY','leader','3')">组长驳回</el-button>
</div>
</div>
<el-row :gutter="8">
@ -262,7 +263,7 @@
<el-row :gutter="8">
<el-col :span="8">
<el-form-item label="低压反馈附件">
<el-button v-hasPermi="['jsqr:jsqr:operateUploadFile']" size="mini" type="primary" @click="handleAddFile('quotJsqrDy')">上传文件 ({{this.quotJsqrDyFileNum}})</el-button>
<el-button v-hasPermi="['jsqr:jsqr:operateDyUploadFile']" size="mini" type="primary" @click="handleAddFile('quotJsqrDy')">上传文件 ({{this.quotJsqrDyFileNum}})</el-button>
</el-form-item>
</el-col>
<el-col :span="16">
@ -363,16 +364,16 @@
<el-divider content-position="center">中压协助</el-divider>
<div style="margin-bottom: 10px;text-align:right">
<div v-if="this.form.quotJsqrZyOperateState == 0 && this.form.quotJsqrZyCheckState != 2 && this.form.quotJsqrZyLeaderState != 2">
<el-button v-hasPermi="['jsqr:jsqr:operate']" size="mini" type="success" plain @click="doOperate('ZY','operater','2')">操作人通过</el-button>
<el-button v-hasPermi="['jsqr:jsqr:operate']" size="mini" type="danger" plain @click="doOperate('ZY','operater','3')">操作人驳回</el-button>
<el-button v-hasPermi="['jsqr:jsqr:operateZy']" size="mini" type="success" plain @click="doOperate('ZY','operater','2')">操作人通过</el-button>
<el-button v-hasPermi="['jsqr:jsqr:operateZy']" size="mini" type="danger" plain @click="doOperate('ZY','operater','3')">操作人驳回</el-button>
</div>
<div v-if="this.form.quotJsqrZyOperateState == 2 && this.form.quotJsqrZyCheckState != 2 && this.form.quotJsqrZyLeaderState != 2">
<el-button v-hasPermi="['jsqr:jsqr:check']" size="mini" type="success" plain @click="doOperate('ZY','checker','2')">审核人通过</el-button>
<el-button v-hasPermi="['jsqr:jsqr:check']" size="mini" type="danger" plain @click="doOperate('ZY','checker','3')">审核人驳回</el-button>
<el-button v-hasPermi="['jsqr:jsqr:checkZy']" size="mini" type="success" plain @click="doOperate('ZY','checker','2')">审核人通过</el-button>
<el-button v-hasPermi="['jsqr:jsqr:checkZy']" size="mini" type="danger" plain @click="doOperate('ZY','checker','3')">审核人驳回</el-button>
</div>
<div v-if="this.form.quotJsqrZyOperateState == 2 && this.form.quotJsqrZyCheckState == 2 && this.form.quotJsqrZyLeaderState != 2">
<el-button v-hasPermi="['jsqr:jsqr:leader']" size="mini" type="success" plain @click="doOperate('ZY','leader','2')">组长通过</el-button>
<el-button v-hasPermi="['jsqr:jsqr:leader']" size="mini" type="danger" plain @click="doOperate('ZY','leader','3')">组长驳回</el-button>
<el-button v-hasPermi="['jsqr:jsqr:leaderZy']" size="mini" type="success" plain @click="doOperate('ZY','leader','2')">组长通过</el-button>
<el-button v-hasPermi="['jsqr:jsqr:leaderZy']" size="mini" type="danger" plain @click="doOperate('ZY','leader','3')">组长驳回</el-button>
</div>
</div>
<el-row :gutter="8">
@ -392,7 +393,7 @@
<el-row :gutter="8">
<el-col :span="8">
<el-form-item label="中压反馈附件">
<el-button v-hasPermi="['jsqr:jsqr:operateUploadFile']" size="mini" type="primary" @click="handleAddFile('quotJsqrZy')">上传文件 ({{this.quotJsqrZyFileNum}})</el-button>
<el-button v-hasPermi="['jsqr:jsqr:operateZyUploadFile']" size="mini" type="primary" @click="handleAddFile('quotJsqrZy')">上传文件 ({{this.quotJsqrZyFileNum}})</el-button>
</el-form-item>
</el-col>
<el-col :span="16">
@ -493,16 +494,16 @@
<el-divider content-position="center">其他协助(防火轨道架空)</el-divider>
<div style="margin-bottom: 10px;text-align:right">
<div v-if="this.form.quotJsqrQtOperateState == 0 && this.form.quotJsqrQtCheckState != 2 && this.form.quotJsqrQtLeaderState != 2">
<el-button v-hasPermi="['jsqr:jsqr:operate']" size="mini" type="success" plain @click="doOperate('QT','operater','2')">操作人通过</el-button>
<el-button v-hasPermi="['jsqr:jsqr:operate']" size="mini" type="danger" plain @click="doOperate('QT','operater','3')">操作人驳回</el-button>
<el-button v-hasPermi="['jsqr:jsqr:operateQt']" size="mini" type="success" plain @click="doOperate('QT','operater','2')">操作人通过</el-button>
<el-button v-hasPermi="['jsqr:jsqr:operateQt']" size="mini" type="danger" plain @click="doOperate('QT','operater','3')">操作人驳回</el-button>
</div>
<div v-if="this.form.quotJsqrQtOperateState == 2 && this.form.quotJsqrQtCheckState != 2 && this.form.quotJsqrQtLeaderState != 2">
<el-button v-hasPermi="['jsqr:jsqr:check']" size="mini" type="success" plain @click="doOperate('QT','checker','2')">审核人通过</el-button>
<el-button v-hasPermi="['jsqr:jsqr:check']" size="mini" type="danger" plain @click="doOperate('QT','checker','3')">审核人驳回</el-button>
<el-button v-hasPermi="['jsqr:jsqr:checkQt']" size="mini" type="success" plain @click="doOperate('QT','checker','2')">审核人通过</el-button>
<el-button v-hasPermi="['jsqr:jsqr:checkQt']" size="mini" type="danger" plain @click="doOperate('QT','checker','3')">审核人驳回</el-button>
</div>
<div v-if="this.form.quotJsqrQtOperateState == 2 && this.form.quotJsqrQtCheckState == 2 && this.form.quotJsqrQtLeaderState != 2">
<el-button v-hasPermi="['jsqr:jsqr:leader']" size="mini" type="success" plain @click="doOperate('QT','leader','2')">组长通过</el-button>
<el-button v-hasPermi="['jsqr:jsqr:leader']" size="mini" type="danger" plain @click="doOperate('QT','leader','3')">组长驳回</el-button>
<el-button v-hasPermi="['jsqr:jsqr:leaderQt']" size="mini" type="success" plain @click="doOperate('QT','leader','2')">组长通过</el-button>
<el-button v-hasPermi="['jsqr:jsqr:leaderQt']" size="mini" type="danger" plain @click="doOperate('QT','leader','3')">组长驳回</el-button>
</div>
</div>
<el-row :gutter="8">
@ -522,7 +523,7 @@
<el-row :gutter="8">
<el-col :span="8">
<el-form-item label="其他反馈附件">
<el-button v-hasPermi="['jsqr:jsqr:operateUploadFile']" size="mini" type="primary" @click="handleAddFile('quotJsqrQt')">上传文件 ({{this.quotJsqrQtFileNum}})</el-button>
<el-button v-hasPermi="['jsqr:jsqr:operateQtUploadFile']" size="mini" type="primary" @click="handleAddFile('quotJsqrQt')">上传文件 ({{this.quotJsqrQtFileNum}})</el-button>
</el-form-item>
</el-col>
<el-col :span="16">
@ -655,10 +656,25 @@
</el-table>
</el-dialog>
</el-form>
<div v-if="this._props.isSelfProp">
<div slot="footer" class="dialog-footer" v-if="this.form.quotJsxzApprovalStatus==1">
<span v-hasPermi="['jsqr:jsqr:commit']"><el-button type="primary" @click="commitQuot">提交报价</el-button></span>
<span style="margin-left: 10px"><el-button @click="cancel"> </el-button></span>
</div>
</div>
</div>
</template>
<style>
.dialog-footer {
padding: 20px;
padding-top: 10px;
text-align: right;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
</style>
<script>
import { listJsqr, getJsqr, delJsqr, addJsqr, updateJsqr, doOperate, commitQuot } from "@/api/technicalConfirm/technicalConfirm";
import { getJsqr, doOperate, commitQuot } from "@/api/technicalConfirm/technicalConfirm";
import { getToken } from "@/utils/auth";
import { quotFileList,quotFileDelete } from "@/api/quot/quot";
@ -666,12 +682,17 @@
name: "jsxzInfo",
dicts: ['quot_jsxz_approval_status','quot_jsxz_chapter','quot_jsxz_standard','quot_jsxz_group','quot_jsxz_group_status'],
props: {
quotJsqrIdProp: String
quotJsqrIdProp: String,
isSelfProp: Boolean
},
data() {
return {
//
title: "",
// --
quotJsgfFileList: [],
//--
uploadUrl: process.env.VUE_APP_BASE_API + "/quot/quot/quotFile",
//--
headers: {Authorization: "Bearer " + getToken()},
//
addFileOpen: false,
//
@ -813,6 +834,10 @@
this.showQt = false;
this.resetForm("form");
},
//
cancel() {
this.$emit('fMethod');
},
/** 修改按钮操作 */
getInfo() {
this.reset();
@ -848,6 +873,14 @@
});
},
/** 提交按钮 */
commitQuot() {
//
commitQuot(this.form).then(response => {
this.$emit('fMethod');
})
},
//-
getQuotJsgfFileList(){
const param = {relationId:this.form.quotId,fileType:'quotJsgfFile'}
@ -1017,6 +1050,13 @@
});
},
//
deleteFile(fileId){
quotFileDelete(fileId).then(response => {
this.getQuotJsqrFileList(this.fileType);
});
},
//--
getQuotJsqrFileList(fileType){
const param = {relationId:this.form.quotJsqrId,fileType:fileType}