From 86a84c327007a1fb398fa2aefff1bffc03a83cfb Mon Sep 17 00:00:00 2001
From: Crunchy <3114200645@qq.com>
Date: 星期二, 06 八月 2024 22:36:02 +0800
Subject: [PATCH] 委托下单,禁止下拉框输入
---
src/components/view/b1-report-preparation.vue | 620 ++++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 423 insertions(+), 197 deletions(-)
diff --git a/src/components/view/b1-report-preparation.vue b/src/components/view/b1-report-preparation.vue
index b3a289a..4d86d78 100644
--- a/src/components/view/b1-report-preparation.vue
+++ b/src/components/view/b1-report-preparation.vue
@@ -35,24 +35,27 @@
padding: 20px;
}
- .el-form-item {
- margin-bottom: 16px;
- }
+ .el-form-item {
+ margin-bottom: 16px;
+ }
- .full-screen{
+ .full-screen {
position: absolute;
right: 52px;
top: 22px;
}
- .btns{
+ .btns {
position: absolute;
- right: 100px;
- top: 17px;
+ right: 40px;
+ top: 50%;
+ transform: translate(0, -50%);
+ display: flex;
+ align-items: center;
}
- .fullscreen{
- height:82vh
+ .fullscreen {
+ height: 82vh
}
</style>
@@ -61,10 +64,10 @@
<div style="width: 100%;height: 100%;">
<div>
<el-row class="title">
- <el-col :span="12" style="padding-left: 20px;">鎶ュ憡缂栧埗</el-col>
+ <el-col :span="12" style="padding-left: 20px;text-align: left;">鎶ュ憡缂栧埗</el-col>
</el-row>
</div>
- <div class="search">
+ <div class="search" style="position: relative;">
<div class="search_thing">
<div class="search_label">鎶ュ憡缂栧彿锛�</div>
<div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable
@@ -76,76 +79,93 @@
<el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="componentData.entity.entrustCode"
@keyup.enter.native="refreshTable()"></el-input>
</div>
- </div>
- <div class="search_thing" style="padding-left: 30px;">
- <el-button size="small" @click="refresh()">閲� 缃�</el-button>
- <el-button size="small" type="primary" @click="refreshTable()">鏌� 璇�</el-button>
- </div>
- </div>
+ </div>
+ <div class="search_thing" style="padding-left: 30px;">
+ <el-button size="small" @click="refresh()">閲� 缃�</el-button>
+ <el-button size="small" type="primary" @click="refreshTable()">鏌� 璇�</el-button>
+ </div>
+ <div class="btns">
+ <el-button size="small" type="primary" @click="handleDowns" :loading="outLoading" style="margin-right: 16px;">鎵归噺涓嬭浇</el-button>
+ <el-upload
+ class="upload-demo"
+ :action="action"
+ :headers="headers"
+ :show-file-list="false"
+ accept=".zip"
+ :limit="1"
+ :before-upload="beforeUpload"
+ :on-success="handleSuccess"
+ ref="upload"
+ :on-error="onError">
+ <el-button size="small" type="primary" :loading="inLoading">鎵归噺涓婁紶</el-button>
+ </el-upload>
+ </div>
+ </div>
<!-- <input id="input" type="file" accept=".doc,.docx"></input> -->
- <div class="table">
- <ValueTable ref="ValueTable" :url="$api.insReport.pageInsReport" :componentData="componentData"
- :key="upIndex"/>
- </div>
- </div>
- <el-dialog title="鍦ㄧ嚎缂栧埗" :visible.sync="claimVisible" width="22cm" :modal-append-to-body="false" :fullscreen="fullscreen">
+ <div class="table">
+ <ValueTable ref="ValueTable" :url="$api.insReport.pageInsReport"
+ :isColumnWidth="true"
+ :componentData="componentData"
+ :key="upIndex" />
+ </div>
+ </div>
+ <el-dialog title="鍦ㄧ嚎缂栧埗" :visible.sync="claimVisible" width="22cm" :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>
+ <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="80vw" :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>
- <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> -->
+ <div style="height: 80vh;" v-if="issuedVisible">
+ <onlyoffice ref="onlyoffice" :options="option" style="width: 100%;height: 100%;" />
+ </div>
<span slot="footer" class="dialog-footer">
- <el-button @click="issuedReasonVisible=true">涓嶉�氳繃</el-button>
+ <el-button @click="issuedReasonVisible=true" :disabled="loadingIssued">涓嶉�氳繃</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 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 @click="issuedReasonVisible=false" :disabled="loadingIssuedReason">鍙栨秷</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">
+ <el-dialog title="鎶ュ憡鎵瑰噯" :visible.sync="approveVisible" width="80vw" :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> -->
+ </div>
+ <div style="height: 80vh;">
+ <onlyoffice ref="onlyoffice" :options="option" style="width: 100%;height: 100%;" />
+ </div>
<span slot="footer" class="dialog-footer">
- <el-button @click="approveReasonVisible=true">涓嶆壒鍑�</el-button>
+ <el-button @click="approveReasonVisible=true" :disabled="loadingApprove">涓嶆壒鍑�</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 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 @click="approveReasonVisible=false" :disabled="loadingApproveReason">鍙栨秷</el-button>
<el-button type="primary" @click="handleApproveReason" :loading="loadingApproveReason">纭畾</el-button>
</span>
</el-dialog>
@@ -154,13 +174,11 @@
<script>
import ValueTable from '../tool/value-table.vue'
- import Word from '../tool/word.vue'
- import file from '../../util/file';
- import { convertToHtml } from 'mammoth';
- export default {
- components: {
- ValueTable,
- Word,
+ import onlyoffice from '../tool/onlyoffice.vue'
+ export default {
+ components: {
+ ValueTable,
+ onlyoffice
},
data() {
return {
@@ -174,72 +192,75 @@
}
},
isIndex: true,
- showSelect: false,
- select: false,
+ showSelect: true,
+ select: true,
+ selectMethod: 'handleChange',
do: [
- // {
- // id: 'handleWeave',
- // font: '鍦ㄧ嚎缂栧埗',
- // type: 'text',
- // method: 'handleWeave',
- // disabFun: (row, index) => {
- // return row.isExamine != null
- // }
- // },
- {
- id: 'download',
- font: '涓嬭浇',
- type: 'text',
- method: 'download'
- }, {
- id: 'handleUpload',
- font: '涓婁紶',
- type: 'upload',
- uploadConfig:{
- url:this.$api.insReport.inReport,
- accept:'.docx'
+ {
+ id: 'handleWeave',
+ font: '缂栧埗',
+ type: 'text',
+ method: 'handleWeave',
+ disabFun: (row, index) => {
+ return row.isExamine != null
+ }
},
- method: 'handleUpload',
- disabFun: (row, index) => {
- return row.isExamine != null
+ {
+ id: 'download',
+ font: '涓嬭浇',
+ type: 'text',
+ method: 'download'
+ }, {
+ id: 'handleUpload',
+ font: '涓婁紶',
+ type: 'upload',
+ uploadConfig: {
+ url: this.$api.insReport.inReport,
+ accept: '.docx'
+ },
+ method: 'handleUpload',
+ disabFun: (row, index) => {
+ return row.isExamine != null
+ }
+ }, {
+ id: 'handleRestore',
+ font: '杩樺師',
+ type: 'text',
+ method: 'handleRestore',
+ 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.state == null || row.state == 0 || row.isExamine == 1
+ }
+ }, {
+ id: 'handleApprove',
+ font: '鎵瑰噯',
+ type: 'text',
+ method: 'handleApprove',
+ disabFun: (row, index) => {
+ return row.state == null || row.state == 0 || row.isExamine == 0 || row.isExamine == null || row
+ .isRatify == 1
+ }
}
- }, {
- id: 'handleRestore',
- font: '杩樺師',
- type: 'text',
- method: 'handleRestore',
- disabFun: (row, index) => {
- return row.isExamine != null
- }
- },{
- id: 'handleSubmit',
- font: '鎻愪氦',
- type: 'text',
- method: 'handleSubmit',
- disabFun: (row, index) => {
- return row.isExamine != null
- }
- }, {
- id: 'handleIssued',
- font: '瀹℃牳',
- type: 'text',
- method: 'handleIssued',
- disabFun: (row, index) => {
- return row.isExamine != null
- }
- }, {
- id: 'handleApprove',
- font: '鎵瑰噯',
- type: 'text',
- method: 'handleApprove',
- disabFun: (row, index) => {
- return row.isRatify != null
- }
- }],
+ ],
linkEvent: {
- // code: {
- // method: 'selectAllByOne'
- // }
+ code: {
+ method: 'selectAllByOne'
+ }
},
tagField: {
isRatify: {
@@ -263,10 +284,22 @@
type: 'success',
label: '閫氳繃'
}]
+ },
+ state: {
+ select: [{
+ value: 0,
+ type: 'danger',
+ label: '寰呮彁浜�'
+ }, {
+ value: 1,
+ type: 'success',
+ label: '宸叉彁浜�'
+ }]
}
},
selectField: {},
requiredAdd: [],
+ needSort: ['createTime', 'state', 'writeTime', 'isExamine', 'examineTime', 'ratifyTime'],
requiredUp: []
},
entityCopy: {},
@@ -274,19 +307,33 @@
statusList: [],
claimVisible: false,
issuedVisible: false,
- issuedReasonVisible:false,
+ issuedReasonVisible: false,
approveVisible: false,
- approveReasonVisible:false,
- fullscreen:false,
- loadingApproveReason:false,
- loadingApprove:false,
- loadingIssuedReason:false,
- loadingIssued:false,
- value:``,
- reason:'',
- currentInfo:null,
+ approveReasonVisible: false,
+ fullscreen: false,
+ loadingApproveReason: false,
+ loadingApprove: false,
+ loadingIssuedReason: false,
+ loadingIssued: false,
+ value: ``,
+ reason: '',
+ currentInfo: null,
+ option:null,
+ mutiList:[],
+ outLoading:false,
+ inLoading:false
}
},
+ computed: {
+ headers() {
+ return {
+ 'token': sessionStorage.getItem('token')
+ }
+ },
+ action() {
+ return this.javaApi + this.$api.insReport.upAll
+ }
+ },
mounted() {
this.entityCopy = this.HaveJson(this.componentData.entity)
this.getPower()
@@ -319,31 +366,82 @@
// }
},
methods: {
- refreshTable() {
- this.$refs['ValueTable'].selectList()
+ handleChange(arr){
+ this.mutiList = arr
+ },
+ handleDowns(){
+ if(this.mutiList.length==0){
+ this.$message.error('璇烽�夋嫨鎶ュ憡')
+ return
+ }
+ let str = this.mutiList.map(m=>m.id).join(',')
+ this.outLoading = true
+ this.$axios.get(this.$api.insReport.downAll+'?ids='+str).then(res => {
+ this.outLoading = false
+ this.$message.success('瀵煎嚭鎴愬姛')
+ // const blob = new Blob([res],{ type: 'application/octet-stream' });
+ // const url = URL.createObjectURL(blob);
+ // const link = document.createElement('a');
+ // link.href = url;
+ // link.download = '鎶ュ憡.zip';
+ // link.click();
+ const link = document.createElement('a');
+ link.href = this.javaApi + res.message;
+ link.target = '_blank';
+ document.body.appendChild(link);
+ link.click();
+ })
+ },
+ beforeUpload(file){
+ const isZip = file.type === 'application/zip' || file.name.endsWith('.zip');
+ if (!isZip) {
+ this.$message.error('涓婁紶鏂囦欢鍙兘鏄� ZIP 鏍煎紡!');
+ }
+ if(isZip){
+ this.inLoading = true;
+ }
+ return isZip;
+ },
+ handleSuccess(response,){
+ this.inLoading = false;
+ if (response.code == 200) {
+ this.$message.success('瀵煎叆鎴愬姛')
+ this.refreshTable()
+ }else{
+ this.$message.error(response.message)
+ }
+ },
+ onError(err, file, fileList,type) {
+ this.$message.error('涓婁紶澶辫触')
+ this.$refs.upload.clearFiles()
+ },
+ refreshTable(e) {
+ this.$refs['ValueTable'].selectList(e)
},
refresh() {
this.componentData.entity = this.HaveJson(this.entityCopy)
this.upIndex++
},
async handleWeave(row) {
- // this.value = await file.convertFileToHtml(row.url)
- // this.claimVisible = true;
- this.$axios.post(this.$api.insReport.wordToHtml, {
- path:row.urlS?row.urlS:row.url
- }).then(res => {
- if (res.code === 200) {
- // console.log(11111111,res.data)
- this.value = res.data
- .replace(/<a [^>]*>/g, "")
- .replace(/<\/a>/g, "")
- .replace(/ /g, " ");
- this.claimVisible = true;
- }
-
- }).catch(error => {
- console.error(error)
- })
+ let fileName = (row.urlS===null||row.urlS==='')?row.url:row.urlS
+ fileName = fileName.replace('/word/','')
+ const userName = JSON.parse(localStorage.getItem("user")).name;
+ //鍙傝�僾abOnlyOffice缁勪欢鍙傛暟閰嶇疆
+ const { href } = this.$router.resolve({
+ path: `/wordEdit`,
+ query: {
+ url: this.javaApi + "/word/" + fileName,
+ isEdit: true,
+ fileType: "docx",
+ title: fileName,
+ lang: 'zh-CN',
+ isPrint: true,
+ user_id: 1,
+ user_name: userName,
+ editUrl: this.javaApi + "/insReport/onlyOffice/save?fileName=" + fileName
+ }
+ })
+ window.open(href, '_blank');
},
// 鏉冮檺鍒嗛厤
getPower(radio) {
@@ -351,7 +449,7 @@
let edit = false
let up = false
let res = false
- let sub = true
+ let sub = false
let issued = true
let approve = true
for (var i = 0; i < power.length; i++) {
@@ -364,93 +462,221 @@
if (power[i].menuMethod == 'upReportUrl') {
res = true
}
+ if (power[i].menuMethod == 'writeReport') {
+ sub = true
+ }
+ if (power[i].menuMethod == 'ratifyReport') {
+ approve = true
+ }
+ if (power[i].menuMethod == 'examineReport') {
+ issued = true
+ }
}
if (!approve) {
- this.componentData.do.splice(5, 1)
+ this.componentData.do.splice(6, 1)
}
if (!issued) {
- this.componentData.do.splice(4, 1)
+ this.componentData.do.splice(5, 1)
}
if (!sub) {
- this.componentData.do.splice(3, 1)
+ this.componentData.do.splice(4, 1)
}
if (!res) {
- this.componentData.do.splice(2, 1)
+ this.componentData.do.splice(3, 1)
}
if (!up) {
- this.componentData.do.splice(1, 1)
+ this.componentData.do.splice(2, 1)
}
- // if (!edit) {
- // this.componentData.do.splice(0, 1)
- // }
+ if (!edit) {
+ this.componentData.do.splice(0, 1)
+ }
},
confirmClaim() {
// console.log(this.$refs.Word.getValue())
},
- async selectAllByOne(row){
- console.log(row,await file.convertFileToHtml(row.url));
+ async selectAllByOne(row) {
+ const userName = JSON.parse(localStorage.getItem("user")).name;
+ //鍙傝�僾abOnlyOffice缁勪欢鍙傛暟閰嶇疆
+ const { href } = this.$router.resolve({
+ path: `/wordEdit`,
+ query: {
+ url: this.javaApi + "/word/" + row.entrustCode + ".docx",
+ isEdit: "false",
+ fileType: "docx",
+ title: row.entrustCode + ".docx",
+ lang: 'zh-CN',
+ isPrint: true,
+ user_id: 1,
+ user_name: userName
+ }
+ })
+ window.open(href, '_blank');
+ console.log(`output->row`,row)
},
- download(row){
- let url = row.urlS?row.urlS:row.url;
+ download(row) {
+ let url = row.urlS ? row.urlS : row.url;
const link = document.createElement('a');
link.href = this.javaApi + url;
+ link.target = '_blank';
document.body.appendChild(link);
link.click();
},
- handleRestore(row){
+ // 杩樺師鎿嶄綔
+ handleRestore(row) {
this.$axios.post(this.$api.insReport.upReportUrl, {
- id:row.id
- }).then(res => {
- if (res.code === 200) {
+ id: row.id
+ }).then(res => {
+ if (res.code === 200) {
this.$message.success('鎿嶄綔鎴愬姛')
- this.refreshTable()
- }
- })
+ this.refreshTable('page')
+ }
+ })
},
- handleIssued(row){
+ handleIssued(row) {
this.currentInfo = row;
- this.issuedVisible = true;
+ let fileName = (row.urlS===null||row.urlS==='')?row.url:row.urlS
+ fileName = fileName.replace('/word/','')
+ const userName = JSON.parse(localStorage.getItem("user")).name;
+ this.option = {
+ url: this.javaApi + "/word/" + fileName,
+ isEdit: false,
+ fileType: "docx",
+ title: fileName,
+ lang: 'zh-CN',
+ isPrint: false,
+ user_id: 1,
+ user_name: userName,
+ editUrl: this.javaApi + "/insReport/onlyOffice/save?fileName=" + fileName
+ }
+ this.issuedVisible = true;
},
- subIssued(){
+ // 瀹℃牳閫氳繃
+ subIssued() {
this.loadingIssued = true;
+ this.$axios.post(this.$api.insReport.examineReport, {
+ id: this.currentInfo.id,
+ isExamine: 1
+ }).then(res => {
+ this.loadingIssued = false;
+ if (res.code === 201) {
+ return
+ }
+ this.$message.success('鎻愪氦鎴愬姛')
+ this.refreshTable('page')
+ this.currentInfo = null;
+ this.issuedVisible = false;
+ }).catch(e => {
+ this.$message.error('鎻愪氦澶辫触')
+ this.loadingIssued = false;
+ })
},
- handleApprove(row){
+ handleApprove(row) {
this.currentInfo = row;
+ let fileName = (row.urlS===null||row.urlS==='')?row.url:row.urlS
+ fileName = fileName.replace('/word/','')
+ const userName = JSON.parse(localStorage.getItem("user")).name;
+ this.option = {
+ url: this.javaApi + "/word/" + fileName,
+ isEdit: false,
+ fileType: "docx",
+ title: fileName,
+ lang: 'zh-CN',
+ isPrint: false,
+ user_id: 1,
+ user_name: userName,
+ editUrl: this.javaApi + "/insReport/onlyOffice/save?fileName=" + fileName
+ }
this.approveVisible = true;
},
- subApprove(){
+ // 鎵瑰噯閫氳繃
+ subApprove() {
this.loadingApprove = true;
+ this.$axios.post(this.$api.insReport.ratifyReport, {
+ id: this.currentInfo.id,
+ isRatify: 1
+ }).then(res => {
+ this.loadingApprove = false;
+ if (res.code == 201) {
+ this.$message.error('鎵瑰噯澶辫触')
+ return
+ }
+ this.$message.success('宸叉壒鍑�')
+ this.refreshTable('page')
+ this.currentInfo = null;
+ this.approveVisible = false;
+ })
},
- handleSubmit(row){
+ // 鎻愪氦鎿嶄綔
+ handleSubmit(row) {
this.$confirm('鏄惁鎻愪氦褰撳墠鎶ュ憡?', "鎻愪氦", {
- confirmButtonText: "鎻愪氦",
- cancelButtonText: "鍙栨秷",
- type: "success"
- }).then(() => {
- this.$axios.post(this.delUrl, {
- id: row.id
- }).then(res => {
- if (res.code === 201) {
- return
- }
- this.$message.success('鎻愪氦鎴愬姛')
- this.selectList()
- }).catch(e => {
- this.$message.error('鎻愪氦澶辫触')
- })
- }).catch(() => {})
+ confirmButtonText: "鎻愪氦",
+ cancelButtonText: "鍙栨秷",
+ type: "warning"
+ }).then(() => {
+ this.$axios.post(this.$api.insReport.writeReport, {
+ id: row.id
+ }).then(res => {
+ if (res.code === 201) {
+ return
+ }
+ this.$message.success('鎻愪氦鎴愬姛')
+ this.refreshTable('page')
+ }).catch(e => {
+ this.$message.error('鎻愪氦澶辫触')
+ })
+ }).catch(() => {})
},
- handleIssuedReason(){
- if(!this.reason){
+ // 瀹℃牳涓嶉�氳繃鍘熷洜鎻愪氦
+ 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 => {
+ this.loadingIssuedReason = false;
+ if (res.code === 201) {
+ return
+ }
+ this.$message.success('鎿嶄綔鎴愬姛')
+ this.refreshTable('page')
+ this.currentInfo = null;
+ this.reason = '';
+ this.issuedVisible = false;
+ this.issuedReasonVisible = false;
+ }).catch(e => {
+ this.$message.error('鎿嶄綔澶辫触')
+ this.loadingIssuedReason = false;
+ })
},
- handleApproveReason(){
- if(!this.reason){
+ // 涓嶆壒鍑嗗師鍥犳彁浜�
+ handleApproveReason() {
+ if (!this.reason) {
return this.$message.error('璇疯緭鍏ュ師鍥�')
}
this.loadingApproveReason = true
+ this.$axios.post(this.$api.insReport.examineReport, {
+ id: this.currentInfo.id,
+ isExamine: 0,
+ examineTell: this.reason
+ }).then(res => {
+ this.loadingApproveReason = false
+ if (res.code === 201) {
+ return
+ }
+ this.$message.success('鎿嶄綔鎴愬姛')
+ this.refreshTable('page')
+ this.currentInfo = null;
+ this.reason = '';
+ this.issuedVisible = false;
+ this.issuedReasonVisible = false;
+ }).catch(e => {
+ this.$message.error('鎿嶄綔澶辫触')
+ this.loadingIssuedReason = false;
+ })
}
}
}
--
Gitblit v1.9.3