From 74c58b88f878c4beafcedf4f75712bbdef4f7a6a Mon Sep 17 00:00:00 2001
From: licp <lichunping@guanfang.com.cn>
Date: 星期五, 19 四月 2024 10:20:25 +0800
Subject: [PATCH] 优化任务检验页面
---
src/components/view/b1-report-preparation.vue | 225 ++++++++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 200 insertions(+), 25 deletions(-)
diff --git a/src/components/view/b1-report-preparation.vue b/src/components/view/b1-report-preparation.vue
index a2cd4a1..793fe08 100644
--- a/src/components/view/b1-report-preparation.vue
+++ b/src/components/view/b1-report-preparation.vue
@@ -44,6 +44,16 @@
right: 52px;
top: 22px;
}
+
+ .btns{
+ position: absolute;
+ right: 100px;
+ top: 17px;
+ }
+
+ .fullscreen{
+ height:82vh
+ }
</style>
<template>
@@ -83,10 +93,60 @@
<i class="el-icon-full-screen" style="cursor: pointer;font-size: 18px" @click="fullscreen=true;" v-if="!fullscreen"></i>
<img src="../../../static/img/no-full.svg" alt="" v-else style="cursor: pointer;" @click="fullscreen=false;" >
</div>
- <Word :style="{height:fullscreen?'82':'70'+'vh'}" v-if="claimVisible" ref="Word" :value="value"/>
+ <Word style="height:70vh" :class="{fullscreen:fullscreen}" v-if="claimVisible" ref="Word" :value="value"/>
<span slot="footer" class="dialog-footer">
<el-button @click="claimVisible = false">鍙� 娑�</el-button>
<el-button type="primary" @click="confirmClaim">纭� 瀹�</el-button>
+ </span>
+ </el-dialog>
+ <el-dialog title="鎶ュ憡瀹℃牳" :visible.sync="issuedVisible" width="400px" :modal-append-to-body="false" :fullscreen="fullscreen">
+ <!-- <div class="full-screen">
+ <i class="el-icon-full-screen" style="cursor: pointer;font-size: 18px" @click="fullscreen=true;" v-if="!fullscreen"></i>
+ <img src="../../../static/img/no-full.svg" alt="" v-else style="cursor: pointer;" @click="fullscreen=false;" >
+ </div> -->
+ <!-- <div class="btns">
+ <el-button type="primary" size="small">閫氳繃</el-button>
+ <el-button size="small">涓嶉�氳繃</el-button>
+ </div> -->
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="issuedReasonVisible=true">涓嶉�氳繃</el-button>
+ <el-button type="primary" @click="subIssued" :loading="loadingIssued">閫� 杩�</el-button>
+ </span>
+ </el-dialog>
+ <el-dialog title="涓嶉�氳繃鍘熷洜" :visible.sync="issuedReasonVisible" width="400px" :modal-append-to-body="false">
+ <div class="search_thing">
+ <div class="search_label">涓嶉�氳繃鍘熷洜锛�</div>
+ <div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable
+ v-model="reason"></el-input></div>
+ </div>
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="issuedReasonVisible=false">鍙栨秷</el-button>
+ <el-button type="primary" @click="handleIssuedReason" :loading="loadingIssuedReason">纭畾</el-button>
+ </span>
+ </el-dialog>
+ <el-dialog title="鎶ュ憡鎵瑰噯" :visible.sync="approveVisible" width="400px" :modal-append-to-body="false" :fullscreen="fullscreen">
+ <!-- <div class="full-screen">
+ <i class="el-icon-full-screen" style="cursor: pointer;font-size: 18px" @click="fullscreen=true;" v-if="!fullscreen"></i>
+ <img src="../../../static/img/no-full.svg" alt="" v-else style="cursor: pointer;" @click="fullscreen=false;" >
+ </div> -->
+ <!-- <div class="btns">
+ <el-button type="primary" size="small">鎵瑰噯</el-button>
+ <el-button size="small">涓嶆壒鍑�</el-button>
+ </div> -->
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="approveReasonVisible=true">涓嶆壒鍑�</el-button>
+ <el-button type="primary" @click="subApprove" :loading="loadingApprove">鎵� 鍑�</el-button>
+ </span>
+ </el-dialog>
+ <el-dialog title="涓嶆壒鍑嗗師鍥�" :visible.sync="approveReasonVisible" width="400px" :modal-append-to-body="false">
+ <div class="search_thing">
+ <div class="search_label">涓嶆壒鍑嗗師鍥狅細</div>
+ <div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable
+ v-model="reason"></el-input></div>
+ </div>
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="approveReasonVisible=false">鍙栨秷</el-button>
+ <el-button type="primary" @click="handleApproveReason" :loading="loadingApproveReason">纭畾</el-button>
</span>
</el-dialog>
</div>
@@ -116,15 +176,17 @@
isIndex: true,
showSelect: false,
select: false,
- do: [{
- id: 'handleWeave',
- font: '鍦ㄧ嚎缂栧埗',
- type: 'text',
- method: 'handleWeave',
- disabFun: (row, index) => {
- return row.isExamine != null
- }
- }, {
+ do: [
+ // {
+ // id: 'handleWeave',
+ // font: '鍦ㄧ嚎缂栧埗',
+ // type: 'text',
+ // method: 'handleWeave',
+ // disabFun: (row, index) => {
+ // return row.isExamine != null
+ // }
+ // },
+ {
id: 'download',
font: '涓嬭浇',
type: 'text',
@@ -149,13 +211,21 @@
disabFun: (row, index) => {
return row.isExamine != null
}
+ },{
+ id: 'handleSubmit',
+ font: '鎻愪氦',
+ type: 'text',
+ method: 'handleSubmit',
+ disabFun: (row, index) => {
+ return row.state != 0
+ }
}, {
id: 'handleIssued',
font: '瀹℃牳',
type: 'text',
method: 'handleIssued',
disabFun: (row, index) => {
- return row.isExamine != null
+ return row.state == null||row.state == 0 ||row.isExamine == 1
}
}, {
id: 'handleApprove',
@@ -163,13 +233,13 @@
type: 'text',
method: 'handleApprove',
disabFun: (row, index) => {
- return row.isRatify != null
+ return row.state == null||row.state == 0||row.isExamine == 0||row.isExamine == null ||row.isRatify==1
}
}],
linkEvent: {
- code: {
- method: 'selectAllByOne'
- }
+ // code: {
+ // method: 'selectAllByOne'
+ // }
},
tagField: {
isRatify: {
@@ -193,6 +263,17 @@
type: 'success',
label: '閫氳繃'
}]
+ },
+ state: {
+ select: [{
+ value: 0,
+ type: 'danger',
+ label: '寰呮彁浜�'
+ }, {
+ value: 1,
+ type: 'success',
+ label: '宸叉彁浜�'
+ }]
}
},
selectField: {},
@@ -203,8 +284,18 @@
upIndex: 0,
statusList: [],
claimVisible: false,
+ issuedVisible: false,
+ issuedReasonVisible:false,
+ approveVisible: false,
+ approveReasonVisible:false,
fullscreen:false,
- value:``
+ loadingApproveReason:false,
+ loadingApprove:false,
+ loadingIssuedReason:false,
+ loadingIssued:false,
+ value:``,
+ reason:'',
+ currentInfo:null,
}
},
mounted() {
@@ -271,8 +362,9 @@
let edit = false
let up = false
let res = false
- let issued = false
- let approve = false
+ let sub = false
+ let issued = true
+ let approve = true
for (var i = 0; i < power.length; i++) {
if (power[i].menuMethod == 'upReportFile') {
edit = true
@@ -283,6 +375,9 @@
if (power[i].menuMethod == 'upReportUrl') {
res = true
}
+ if (power[i].menuMethod == 'writeReport') {
+ sub = true
+ }
}
if (!approve) {
this.componentData.do.splice(5, 1)
@@ -290,18 +385,18 @@
if (!issued) {
this.componentData.do.splice(4, 1)
}
- if (!res) {
+ if (!sub) {
this.componentData.do.splice(3, 1)
}
- if (!up) {
+ if (!res) {
this.componentData.do.splice(2, 1)
}
- if (!edit) {
- this.componentData.do.splice(0, 1)
+ if (!up) {
+ this.componentData.do.splice(1, 1)
}
- },
- handleClose() {
- this.upLoad = false;
+ // if (!edit) {
+ // this.componentData.do.splice(0, 1)
+ // }
},
confirmClaim() {
// console.log(this.$refs.Word.getValue())
@@ -325,6 +420,86 @@
this.refreshTable()
}
})
+ },
+ handleIssued(row){
+ this.currentInfo = row;
+ this.issuedVisible = true;
+ },
+ subIssued(){
+ this.loadingIssued = true;
+ this.$axios.post(this.$api.insReport.examineReport, {
+ id: this.currentInfo.id,
+ isExamine: 1
+ }).then(res => {
+ if (res.code === 201) {
+ return
+ }
+ this.$message.success('鎻愪氦鎴愬姛')
+ this.refreshTable()
+ this.loadingIssued = false;
+ this.currentInfo = null;
+ this.issuedVisible = false;
+ }).catch(e => {
+ this.$message.error('鎻愪氦澶辫触')
+ this.loadingIssued = false;
+ })
+ },
+ handleApprove(row){
+ this.currentInfo = row;
+ this.approveVisible = true;
+ },
+ subApprove(){
+ this.loadingApprove = true;
+ },
+ handleSubmit(row){
+ this.$confirm('鏄惁鎻愪氦褰撳墠鎶ュ憡?', "鎻愪氦", {
+ confirmButtonText: "鎻愪氦",
+ cancelButtonText: "鍙栨秷",
+ type: "success"
+ }).then(() => {
+ this.$axios.post(this.$api.insReport.writeReport, {
+ id: row.id
+ }).then(res => {
+ if (res.code === 201) {
+ return
+ }
+ this.$message.success('鎻愪氦鎴愬姛')
+ this.refreshTable()
+ }).catch(e => {
+ this.$message.error('鎻愪氦澶辫触')
+ })
+ }).catch(() => {})
+ },
+ handleIssuedReason(){
+ if(!this.reason){
+ return this.$message.error('璇疯緭鍏ュ師鍥�')
+ }
+ this.loadingIssuedReason = true;
+ this.$axios.post(this.$api.insReport.examineReport, {
+ id: this.currentInfo.id,
+ isExamine: 0,
+ examineTell:this.reason
+ }).then(res => {
+ if (res.code === 201) {
+ return
+ }
+ this.$message.success('鎿嶄綔鎴愬姛')
+ this.refreshTable()
+ this.loadingIssuedReason = false;
+ this.currentInfo = null;
+ this.reason = '';
+ this.issuedVisible = false;
+ this.issuedReasonVisible = false;
+ }).catch(e => {
+ this.$message.error('鎿嶄綔澶辫触')
+ this.loadingIssuedReason = false;
+ })
+ },
+ handleApproveReason(){
+ if(!this.reason){
+ return this.$message.error('璇疯緭鍏ュ師鍥�')
+ }
+ this.loadingApproveReason = true
}
}
}
--
Gitblit v1.9.3