From 527efb36f35b471710e445972673abff45bacdac Mon Sep 17 00:00:00 2001 From: 董国庆 <364620639@qq.com> Date: 星期五, 12 九月 2025 17:36:09 +0800 Subject: [PATCH] 401跳转登录 --- laboratory/src/views/reportLibrary/verificationRelease/components/approval/index.vue | 89 ++++++++++++++++++++++++++++++++++---------- 1 files changed, 69 insertions(+), 20 deletions(-) diff --git a/laboratory/src/views/reportLibrary/verificationRelease/components/approval/index.vue b/laboratory/src/views/reportLibrary/verificationRelease/components/approval/index.vue index 7458017..206c48e 100644 --- a/laboratory/src/views/reportLibrary/verificationRelease/components/approval/index.vue +++ b/laboratory/src/views/reportLibrary/verificationRelease/components/approval/index.vue @@ -1,7 +1,7 @@ <template> - <el-dialog :title="dialogTitle" :visible.sync="visible" width="80%" @open="open" po :close-on-click-modal="false" - @close="handleClose"> - <div class="approval-dialog" :style="{height: obj.isDetail ? '50vh' : '40vh'}"> + <el-dialog :title="dialogTitle" :visible.sync="visible" width="90%" top="5vh" @open="open" po + :close-on-click-modal="false" @close="handleClose"> + <div class="approval-dialog" :style="{ height: obj.isDetail ? '80vh' : '60vh' }"> <!-- 左侧审批内容 --> <div class="approval-content"> <Card class="approval-content-card"> @@ -30,7 +30,7 @@ <div>报告编号</div> </div> </div> - <el-form-item prop="reportCode" style="margin-top: 38px"> + <el-form-item prop="reportCode" style="margin-top: 18px"> <el-input disabled v-model="form.reportCode" style="width: 100%;" placeholder="请输入报告编号" /> </el-form-item> @@ -41,7 +41,7 @@ <div>报告名称</div> </div> </div> - <el-form-item prop="reportName" style="margin-top: 38px"> + <el-form-item prop="reportName" style="margin-top: 18px"> <el-input disabled v-model="form.reportName" style="width: 100%;" placeholder="请输入报告名称" /> </el-form-item> @@ -52,9 +52,18 @@ <div>报告正文</div> </div> </div> - <el-form-item prop="reportText" style="margin-top: 38px"> + <el-form-item prop="reportText" style="margin-top: 18px"> <ai-editor :readOnly="true" :value="form.reportText" style="width: 100%;" placeholder="请输入报告正文" /> + </el-form-item> + <div class="header-title" style="width: 100%;"> + <div class="header-title-left"> + <img src="@/assets/public/headercard.png" /> + <div>附件</div> + </div> + </div> + <el-form-item prop="feasibilityReportFiles" style="margin-top: -18px"> + <el-upload disabled :on-preview="handlePreview" :file-list="fileList" /> </el-form-item> </el-form> @@ -78,7 +87,7 @@ <div class="resolve" :class="status == '2' && 'activeStatus'" @click.stop="status = 2"> 通过 </div> - <div class="reject" :class="status == '3' && 'activeStatus'" @click.stop="status = 3"> + <div class="reject" :class="status == '4' && 'activeStatus'" @click.stop="status = 4"> 驳回 </div> </div> @@ -95,8 +104,8 @@ </div> <div slot="footer" class="dialog-footer"> - <el-button @click="handleClose">{{obj.isDetail ? '关闭' : '取 消'}}</el-button> - <el-button type="primary" @click="handleApprove" v-if="!obj.isDetail">通过</el-button> + <el-button @click="handleClose">{{ obj.isDetail ? '关闭' : '取 消' }}</el-button> + <el-button type="primary" @click="handleApprove" v-if="!obj.isDetail">确定</el-button> </div> </el-dialog> </template> @@ -105,6 +114,8 @@ import ApprovalProcess from '@/components/approvalProcess' import AiEditor from '@/components/AiEditor' import { getDetail } from '../../service'; +import { customUploadRequest, getFullUrl, getAllocateIp } from "@/utils/utils"; +import apiConfig from '@/utils/baseurl'; export default { @@ -144,8 +155,10 @@ updateBy: "", auditRemark: "", auditPersonName: "", + feasibilityReportFiles: [], auditTime: "" }, + fileList: [], tableData: [], rules: {}, status: "2", @@ -158,6 +171,18 @@ }, }, methods: { + getFullUrl, + handlePreview(file) { + console.log('url', file) + if (file && file.url) { + if (file.url && file.url.startsWith(getAllocateIp())) { + window.open(file.url, '_blank'); + } else { + let newUrl = getAllocateIp() + file.url; + window.open(newUrl, '_blank'); + } + } + }, open() { if (!this.obj.id) { this.$message.error('缺少必要参数'); @@ -169,8 +194,29 @@ this.form = { ...this.form, ...data, + // feasibilityReportFiles:data.feasibilityReportFiles.map(item => ({ + // name: item.fileName, + // url: item.fileUrl + // })) || [], processData: [] }; + if ( + data.feasibilityReportFiles && + data.feasibilityReportFiles.length > 0 + ) { + this.fileList = + data.feasibilityReportFiles.map((file) => { + return { + name: file.fileName, + url: getFullUrl(file.fileUrl), + uid: file.id, + }; + }); + this.form.feasibilityReportFiles = data.feasibilityReportFiles + } else { + this.fileList = []; + this.form.feasibilityReportFiles = []; + } this.tableData = data.projectTeam ? [{ ...data.projectTeam, staffName: data.staffNames || '' }] : @@ -187,11 +233,12 @@ ] }); - if (data.status == 2 || data.status == 3) { + if (data.status == 2 || data.status == 4 || data.status == 3) { processData.push({ - type: data.status === 2 ? "primary" : "danger", + type: "primary", mode: "list", fields: [ + { label: "审核结果:", value: data.status == 4 ? '驳回' : "通过" || "" }, { label: "审批意见:", value: data.auditRemark || "" }, { label: "审核人:", value: data.auditPersonName || "" }, { label: "审核时间:", value: data.auditTime || "" }, @@ -220,7 +267,7 @@ type: "success", mode: "list", fields: [ - { label: "已评定" }, + { label: "评定状态:已评定" }, { label: "评定人:", value: data.evaluatePersonName || "" }, { label: "评定时间:", value: data.evaluateTime || "" } ], @@ -264,7 +311,9 @@ .approval-dialog { display: flex; - height: 40vh; + // height: 40vh; + min-height: 60vh; + max-height: 80vh; .approval-content { flex: 3; @@ -275,9 +324,9 @@ } .approval-flow { - padding: 40px 20px; - // width: 405px; - flex: 2; + padding: 20px 10px; + width: 305px; + // flex: 2; background: #ffffff; box-shadow: 0px 4px 12px 4px rgba(0, 0, 0, 0.08); border-radius: 10px; @@ -301,7 +350,7 @@ } .approval-content-card { - height: calc(100% - 100px) !important; + height: calc(100% - 10px) !important; box-shadow: none !important; } @@ -309,14 +358,14 @@ // display: flex; align-items: center; flex-wrap: wrap; - margin-bottom: 20px; + margin-bottom: 10px; gap: 13px; .header-title-left { display: flex; align-items: center; gap: 13px; - margin-top: 38px; + margin-top: 18px; img { width: 12px; @@ -380,7 +429,7 @@ } .approval-dialog-approve { - padding: 38px 20px; + padding: 18px 10px; // display: flex; align-content: center; -- Gitblit v1.7.1