From 49be3d0b1921172dcbf5aa59749243b9af8a8773 Mon Sep 17 00:00:00 2001
From: odc.xiaohui <xiaohui@Q1>
Date: 星期三, 24 五月 2023 11:59:37 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
src/views/common/Audit.vue | 785 +++++++++++++++++++++++++++++++++++++++++++++----------
1 files changed, 641 insertions(+), 144 deletions(-)
diff --git a/src/views/common/Audit.vue b/src/views/common/Audit.vue
index dbac5e6..1ebb2b3 100644
--- a/src/views/common/Audit.vue
+++ b/src/views/common/Audit.vue
@@ -4,23 +4,23 @@
<template slot="header">
<el-form :inline="true" :model="queryInfo" class="demo-form-inline">
<el-form-item label="鎶ユ浜猴細">
- <el-input placeholder="璇疯緭鍏ュ鍚嶆垨韬唤璇�" v-model="queryInfo.people"></el-input>
+ <el-input placeholder="璇疯緭鍏ュ鍚�" v-model="queryInfo.people"></el-input>
</el-form-item>
<el-form-item label="鎵嬫満鍙风爜锛�">
<el-input placeholder="璇疯緭鍏�" v-model="queryInfo.phoneNumber"></el-input>
</el-form-item>
- <el-form-item label="鏄惁宸茶繘缇わ細">
- <el-select v-model="queryInfo.isInGroup" placeholder="璇烽�夋嫨">
- <el-option v-for="item in optionsGroup" :key="item.value" :label="item.label" :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="鎶ユ鏉愭枡锛�">
- <el-select v-model="queryInfo.HavaMaterial" placeholder="璇烽�夋嫨">
- <el-option v-for="item in optionsMate" :key="item.value" :label="item.label" :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
+<!-- <el-form-item label="鏄惁宸茶繘缇わ細">-->
+<!-- <el-select v-model="queryInfo.isInGroup" placeholder="璇烽�夋嫨">-->
+<!-- <el-option v-for="item in optionsGroup" :key="item.value" :label="item.label" :value="item.value">-->
+<!-- </el-option>-->
+<!-- </el-select>-->
+<!-- </el-form-item>-->
+<!-- <el-form-item label="鎶ユ鏉愭枡锛�">-->
+<!-- <el-select v-model="queryInfo.HavaMaterial" placeholder="璇烽�夋嫨">-->
+<!-- <el-option v-for="item in optionsMate" :key="item.value" :label="item.label" :value="item.value">-->
+<!-- </el-option>-->
+<!-- </el-select>-->
+<!-- </el-form-item>-->
<el-form-item>
<el-button type="primary" @click="search">鏌ヨ</el-button>
</el-form-item>
@@ -28,12 +28,19 @@
<el-button type="primary" @click="addAduitDialogOpen">娣诲姞</el-button>
</el-form-item>
<el-form-item>
- <el-button type="primary" @click="exportExcel">瀵煎叆</el-button>
+ <el-upload name="multipartFile" class="upload-demo" action="/api/report/reporterUpload"
+ :show-file-list="false" :before-upload="beforeAvatarUpload" :on-success="reporterRespond" :limit="1">
+<!-- <el-button type="primary">瀵煎叆</el-button>-->
+ </el-upload>
</el-form-item>
</el-form>
</template>
<el-table :data="list">
- <el-table-column prop="id" label="搴忓彿" width="60"></el-table-column>
+ <el-table-column label="搴忓彿" type="index" width="180" align="center">
+ <template slot-scope="scope">
+ <span>{{ (current - 1) * size + scope.$index + 1 }}</span>
+ </template>
+ </el-table-column>
<el-table-column width="80" prop="pic" label="澶村儚">
<template slot-scope="scope">
<img :src="scope.row.pic" style="width: 40px;height: 40px; border-radius: 50%;">
@@ -42,12 +49,20 @@
<el-table-column width="80" prop="reporterName" label="鎶ユ浜�"></el-table-column>
<el-table-column width="120" prop="mobile" label="鎵嬫満鍙风爜"></el-table-column>
<el-table-column width="180" prop="idcard" label="璇佷欢鍙风爜"></el-table-column>
- <el-table-column width="100" prop="isCommission" label="鏄惁瀹℃牳">
- <template slot-scope="scope">
- <span v-if="scope.row.isCommission == 1">鏄�</span>
- <span v-else>鍚�</span>
- </template>
- </el-table-column>
+<!-- <el-table-column width="100" prop="isCommission" label="鏄惁瀹℃牳">-->
+<!-- <template slot-scope="scope">-->
+<!-- <el-popover-->
+<!-- v-if="scope.row.status == 2"-->
+<!-- placement="bottom"-->
+<!-- title="椹冲洖鍘熷洜"-->
+<!-- width="200"-->
+<!-- trigger="click"-->
+<!-- :content="scope.row.remarks">-->
+<!-- <el-button type="text" slot="reference">宸查┏鍥�</el-button>-->
+<!-- </el-popover>-->
+<!-- <span v-else>鍚�</span>-->
+<!-- </template>-->
+<!-- </el-table-column>-->
<el-table-column width="100" prop="amountInvolved" label="娑夋閲戦">
<template slot-scope="scope">
<span>{{ scope.row.amountInvolved === null ? 0 : scope.row.amountInvolved }}</span>
@@ -66,162 +81,312 @@
<el-table-column label="鎿嶄綔">
<template slot-scope="scope">
<el-button type="text" size="small" @click="details(scope.row.id)" style="font-size:14px">璇︽儏</el-button>
- <el-button type="text" size="small" @click="audit(scope.row.id)" style="font-size:14px;color: red">瀹℃牳
+ <el-button type="text" size="small" @click="check(scope.row.id)" style="font-size:14px;color: red">瀹℃牳
</el-button>
</template>
</el-table-column>
</el-table>
- <el-pagination @current-change="handleCurrentChange" :current-page="queryInfo.current"
- :page-size="queryInfo.size" layout="prev, pager, next"
- :total="total"></el-pagination>
+ <el-pagination @current-change="handleCurrentChange" :current-page="queryInfo.current" :page-size="queryInfo.size"
+ layout="prev, pager, next" :total="total"></el-pagination>
</el-card>
- <!--娣诲姞浜哄憳寮圭獥-->
- <el-dialog title="娣诲姞浜哄憳" :visible.sync="addAduitDialogVisible" width="50%" :before-close="addAduitClose">
+
+ <!--瀹℃牳寮圭獥-->
+ <el-dialog :title="fromTitle" :visible.sync="checkVisible" width="50%" :before-close="infoAduitClose">
<el-row :gutter="15">
- <el-form ref="addAduitForm" :model="auditFrom" :rules="rules" size="medium" label-width="100px">
+ <el-form ref="infoAduitForm" :rules="rules2" :model="auditInfo" size="medium" label-width="100px">
<el-col :span="12">
- <el-form-item label="澶村儚" prop="pic" required>
+ <el-form-item label="澶村儚" prop="pic" >
<el-upload ref="pic" action="/api/minio/upload" :show-file-list="false" :on-success="handleAvatarSuccess"
list-type="picture-card" accept="image/*">
<img v-if="picShow" :src="picShow" style="width: 145px;height: 145px">
<i v-else class="el-icon-plus"></i>
</el-upload>
+<!-- <el-image style="width: 145px; height: 145px" :src="picShow" :preview-src-list="new Array(picShow)">-->
+<!-- </el-image>-->
+
</el-form-item>
</el-col>
<el-col :span="12">
- <el-form-item label="鎶ユ浜� " prop="reporterName">
- <el-input v-model="auditFrom.reporterName" placeholder="璇疯緭鍏ユ姤妗堜汉 " clearable
- :style="{width: '100%'}"></el-input>
+ <el-form-item label="鎶ユ浜� ">
+ <el-input v-model="auditInfo.reporterName" :disabled="fromDis" :style="{ width: '100%' }"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
- <el-form-item label="鎵嬫満鍙风爜" prop="mobile">
- <el-input v-model="auditFrom.mobile" placeholder="璇疯緭鍏ユ墜鏈哄彿鐮�" clearable :style="{width: '100%'}">
+ <el-form-item label="鎵嬫満鍙风爜">
+ <el-input v-model="auditInfo.mobile" :disabled="fromDis" :style="{ width: '100%' }">
</el-input>
</el-form-item>
</el-col>
<el-col :span="12">
- <el-form-item label="韬唤璇佸彿" prop="idcard">
- <el-input v-model="auditFrom.idcard" placeholder="璇疯緭鍏ヨ韩浠借瘉鍙�" clearable :style="{width: '100%'}">
+ <el-form-item label="韬唤璇佸彿">
+ <el-input v-model="auditInfo.idcard" :disabled="fromDis" :style="{ width: '100%' }">
</el-input>
</el-form-item>
</el-col>
<el-col :span="12">
- <el-form-item label="琚獥鏃堕棿" prop="cheatTime">
- <el-date-picker v-model="auditFrom.tmpTime" type="datetime" placeholder="閫夋嫨鏃ユ湡鏃堕棿"
- :style="{width: '100%'}" format="yyyy-MM-dd HH:mm:ss"
- :value-format="auditFrom.cheatTime"></el-date-picker>
+ <el-form-item label="琚獥鏃堕棿">
+ <el-date-picker
+ v-show="fromTitle=='娣诲姞'"
+ v-model="auditInfo.cheatTime"
+ type="date"
+ placeholder="閫夋嫨鏃ユ湡"
+ value-format="yyyy-MM-dd 00:00:00"
+ >
+ </el-date-picker>
+ <el-input v-show="fromTitle=='瀹℃牳'" v-model="auditInfo.cheatTime" placeholder="璇烽�夋嫨鎶ユ鏃堕棿 " clearable :disabled="fromDis" :style="{ width: '100%' }">
+ </el-input>
</el-form-item>
</el-col>
<el-col :span="12">
- <el-form-item label="娑夋閲戦" prop="amountInvolved">
- <el-input v-model="auditFrom.amountInvolved" placeholder="璇疯緭鍏ユ秹妗堥噾棰�" clearable
- :style="{width: '100%'}"></el-input>
+ <el-form-item label="娑夋閲戦">
+ <el-input v-model="auditInfo.amountInvolved" placeholder="璇疯緭鍏ユ秹妗堥噾棰�" :style="{ width: '100%' }" :disabled="fromDis">
+ </el-input>
</el-form-item>
</el-col>
+<!-- <el-col :span="24">-->
+<!-- <el-form-item label="妗堜欢鎻忚堪">-->
+<!-- <el-input v-model="auditInfo.reportDescription" placeholder="璇疯緭鍏ユ浠舵弿杩�" :style="{ width: '100%' }" disabled>-->
+<!-- </el-input>-->
+<!-- </el-form-item>-->
+<!-- </el-col>-->
+<!-- <el-col :span="24">-->
+<!-- <el-form-item label="琛ュ厖淇℃伅">-->
+<!-- <el-input v-model="auditInfo.information" type="textarea" placeholder="璇疯緭鍏ヨˉ鍏呬俊鎭�"-->
+<!-- :autosize="{ minRows: 4, maxRows: 4 }" :style="{ width: '100%' }" disabled></el-input>-->
+<!-- </el-form-item>-->
+<!-- </el-col>-->
<el-col :span="24">
- <el-form-item label="妗堜欢鎻忚堪" prop="reportDescription">
- <el-input v-model="auditFrom.reportDescription" placeholder="璇疯緭鍏ユ浠舵弿杩�" clearable
- :style="{width: '100%'}"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="琛ュ厖淇℃伅" prop="information">
- <el-input v-model="auditFrom.information" type="textarea" placeholder="璇疯緭鍏ヨˉ鍏呬俊鎭�"
- :autosize="{minRows: 4, maxRows: 4}" :style="{width: '100%'}"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="涓婁紶" prop="fileList" required>
- <el-upload ref="reportMaterials" :file-list="auditFrom.fileList"
- action="/api/minio/upload" list-type="picture" :on-success="handleMaterialSuccess">
- <el-button size="small" type="primary" icon="el-icon-upload">鐐瑰嚮涓婁紶</el-button>
- </el-upload>
+ <el-form-item label="鏉愭枡">
+ <div class="metalL">
+ <el-tabs v-model="activeName" @tab-click="handleClickTab">
+ <el-tab-pane label="韬唤璇�" name="a">
+ <el-upload
+ :limit="2"
+ v-show="fromTitle=='娣诲姞'"
+ action="/api/minio/upload"
+ list-type="picture-card"
+ :with-credentials="true"
+ :on-preview="handlePictureCardPreview"
+ :on-success="handIdCardMaterials"
+ :on-remove="handleRemovecard"
+ :file-list="auditInfo.cardimg"
+ >
+ <i slot="default" class="el-icon-plus"></i>
+ </el-upload>
+ <div v-show="fromTitle=='瀹℃牳'" v-for="item in idCardMaterials">
+ <el-image
+ style="width: 100px; height: 100px"
+ :src="item"
+ fit="fill"
+ :preview-src-list="idCardMaterials"></el-image>
+ </div>
+ </el-tab-pane>
+ <el-tab-pane label="鍚堝悓" name="b">
+ <el-upload
+ v-show="fromTitle=='娣诲姞'"
+ action="/api/minio/upload"
+ list-type="picture-card"
+ :with-credentials="true"
+ :on-preview="handlePictureCardPreview"
+ :on-success="handContractMaterials"
+ :on-remove="handleRemovecontractimg"
+ :file-list="auditInfo.contractimg"
+ >
+ <i slot="default" class="el-icon-plus"></i>
+ </el-upload>
+ <div v-show="fromTitle=='瀹℃牳'" v-for="item in contractMaterials">
+ <el-image
+ style="width: 100px; height: 100px"
+ :src="item"
+ fit="fill"
+ :preview-src-list="contractMaterials"></el-image>
+ </div>
+ </el-tab-pane>
+ <el-tab-pane label="浜ゆ槗鍑瘉" name="c">
+
+ <div v-show="fromTitle=='瀹℃牳'" v-for="item in transactionMaterials">
+ <el-image
+ style="width: 100px; height: 100px"
+ :src="item"
+ fit="fill"
+ :preview-src-list="transactionMaterials"></el-image>
+ </div>
+ <el-upload
+ v-show="fromTitle=='娣诲姞'"
+ action="/api/minio/upload"
+ list-type="picture-card"
+ :with-credentials="true"
+ :on-preview="handlePictureCardPreview"
+ :on-success="handTransactionMaterials"
+ :on-remove="handleRemovetransaction"
+ :file-list="auditInfo.transactionimg"
+ >
+ <i slot="default" class="el-icon-plus"></i>
+ </el-upload>
+ </el-tab-pane>
+ <el-tab-pane label="鍏朵粬" name="d">
+ <el-upload
+ v-show="fromTitle=='娣诲姞'"
+ action="/api/minio/upload"
+ list-type="picture-card"
+ :with-credentials="true"
+ :on-preview="handlePictureCardPreview"
+ :on-success="handTlseMaterials"
+ :on-remove="handleRemoveelse"
+ :file-list="auditInfo.elseimg"
+ >
+ <i slot="default" class="el-icon-plus"></i>
+ </el-upload>
+ <div v-show="fromTitle=='瀹℃牳'" v-for="item in elseMaterials">
+ <el-image
+ style="width: 100px; height: 100px"
+ :src="item"
+ fit="fill"
+ :preview-src-list="elseMaterials"></el-image>
+ </div>
+ </el-tab-pane>
+ </el-tabs>
+ </div>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="鍏宠仈妗堜欢" prop="causeId">
- <el-select v-model="auditFrom.causeId" placeholder="璇烽�夋嫨涓嬫媺閫夋嫨" clearable :style="{width: '50%'}">
- <el-option v-for="item in causeOptions" :key="item.id" :label="item.name"
- :value="item.id"></el-option>
+ <el-select v-model="auditInfo.causeId" placeholder="璇烽�夋嫨涓嬫媺閫夋嫨" clearable :style="{ width: '50%' }">
+ <el-option v-for="item in causeOptions" :key="item.id" :label="item.name" :value="item.id"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-form>
</el-row>
<span slot="footer" class="dialog-footer">
- <el-button @click="addAduitDialogVisible = false">鍙� 娑�</el-button>
- <el-button type="primary" @click="addAduit">纭� 瀹�</el-button>
+ <el-button @click="checkVisible = false">鍙� 娑�</el-button>
+ <el-button v-show="fromTitle=='瀹℃牳'" type="danger" @click="innerLayerVisible =true">椹� 鍥�</el-button>
+ <el-button type="primary" @click="checkAdd">纭� 瀹�</el-button>
</span>
+ <!-- 鍥剧墖鏀惧ぇ寮圭獥 -->
+ <el-dialog :visible.sync="dialogVisible" append-to-body>
+ <img width="100%" :src="dialogImageUrl" alt="">
+ </el-dialog>
+ <el-dialog
+ width="30%"
+ title="椹冲洖鍘熷洜"
+ :visible.sync="innerLayerVisible"
+ append-to-body>
+ <div class="reason-for-rejection">
+ <label class="reason-for-rejection-lable">椹冲洖鍘熷洜锛�</label>
+ <el-input v-model="reasonForRejectionInput" placeholder="璇疯緭鍏ュ唴瀹�"></el-input>
+
+ </div>
+ <div slot="footer" class="dialog-footer">
+ <el-button @click="innerLayerVisible = false">鍙� 娑�</el-button>
+ <el-button type="primary" @click="rejectionConfirmation">纭畾</el-button>
+ </div>
+ </el-dialog>
</el-dialog>
+
+
<!--鏌ョ湅璇︽儏寮圭獥-->
- <el-dialog title="妗堜欢璇︽儏" :visible.sync="infoAduitDialogVisible" width="50%" :before-close="infoAduitClose">
+ <el-dialog title="妗堜欢璇︽儏" :visible.sync="infoAduitDialogVisible" width="50%" :before-close="detailsClose">
<el-row :gutter="15">
<el-form ref="infoAduitForm" :model="auditInfo" size="medium" label-width="100px">
<el-col :span="12">
<el-form-item label="澶村儚" prop="pic" required>
- <el-image style="width: 145px; height: 145px" :src="picShow" :preview-src-list="new Array(picShow)"></el-image>
+ <el-upload ref="pic" action="/api/minio/upload" :show-file-list="false" :on-success="handleAvatarSuccess"
+ list-type="picture-card" accept="image/*" disabled>
+ <el-image style="width: 145px; height: 145px" :src="picShow" :preview-src-list="new Array(picShow)">
+ </el-image>
+ </el-upload>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="鎶ユ浜� ">
- <el-input v-model="auditInfo.reporterName" disabled
- :style="{width: '100%'}"></el-input>
+ <el-input v-model="auditInfo.reporterName" disabled :style="{ width: '100%' }"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="鎵嬫満鍙风爜">
- <el-input v-model="auditInfo.mobile" disabled :style="{width: '100%'}">
+ <el-input v-model="auditInfo.mobile" disabled :style="{ width: '100%' }">
</el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="韬唤璇佸彿">
- <el-input v-model="auditInfo.idcard" disabled :style="{width: '100%'}">
+ <el-input v-model="auditInfo.idcard" disabled :style="{ width: '100%' }">
</el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="琚獥鏃堕棿">
- <el-date-picker v-model="auditInfo.tmpTime" type="datetime" placeholder="閫夋嫨鏃ユ湡鏃堕棿"
- :style="{width: '100%'}" format="yyyy-MM-dd HH:mm:ss"
- :value-format="auditFrom.cheatTime" disabled></el-date-picker>
+ <el-input v-model="auditInfo.cheatTime" placeholder="璇烽�夋嫨鎶ユ鏃堕棿 " clearable disabled :style="{ width: '100%' }">
+ </el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="娑夋閲戦">
- <el-input v-model="auditInfo.amountInvolved" placeholder="璇疯緭鍏ユ秹妗堥噾棰�"
- :style="{width: '100%'}" disabled></el-input>
+ <el-input v-model="auditInfo.amountInvolved" placeholder="璇疯緭鍏ユ秹妗堥噾棰�" :style="{ width: '100%' }" disabled>
+ </el-input>
</el-form-item>
</el-col>
<el-col :span="24">
- <el-form-item label="妗堜欢鎻忚堪">
- <el-input v-model="auditInfo.reportDescription" placeholder="璇疯緭鍏ユ浠舵弿杩�"
- :style="{width: '100%'}" disabled></el-input>
+ <el-form-item label="鏉愭枡">
+ <div class="metalL">
+ <el-tabs v-model="activeName" @tab-click="handleClickTab">
+ <el-tab-pane label="韬唤璇�" name="a">
+ <div v-for="item in idCardMaterials">
+ <el-image
+ style="width: 100px; height: 100px"
+ :src="item"
+ fit="fill"
+ :preview-src-list="idCardMaterials"
+ ></el-image>
+ </div>
+ </el-tab-pane>
+ <el-tab-pane label="鍚堝悓" name="b">
+ <div v-for="item in contractMaterials">
+ <el-image
+ style="width: 100px; height: 100px"
+ :src="item"
+ fit="fill"
+ :preview-src-list="contractMaterials"></el-image>
+ </div>
+ </el-tab-pane>
+ <el-tab-pane label="浜ゆ槗鍑瘉" name="c">
+ <div v-for="item in transactionMaterials">
+ <el-image
+ style="width: 100px; height: 100px"
+ :src="item"
+ fit="fill"
+ :preview-src-list="transactionMaterials"></el-image>
+ </div>
+ </el-tab-pane>
+ <el-tab-pane label="鍏朵粬" name="d">
+ <div v-for="item in elseMaterials">
+ <el-image
+ style="width: 100px; height: 100px"
+ :src="item"
+ fit="fill"
+ :preview-src-list="elseMaterials"></el-image>
+ </div>
+ </el-tab-pane>
+ </el-tabs>
+ </div>
</el-form-item>
</el-col>
<el-col :span="24">
- <el-form-item label="琛ュ厖淇℃伅">
- <el-input v-model="auditInfo.information" type="textarea" placeholder="璇疯緭鍏ヨˉ鍏呬俊鎭�"
- :autosize="{minRows: 4, maxRows: 4}" :style="{width: '100%'}" disabled></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="涓婁紶" required>
- <el-upload ref="reportMaterials" :file-list="auditInfo.fileList"
- action="/api/minio/upload" list-type="picture" :on-success="handleMaterialSuccess">
- <el-button size="small" type="primary" icon="el-icon-upload">鐐瑰嚮涓婁紶</el-button>
- </el-upload>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="鍏宠仈妗堜欢" prop="causeId">
- <el-select v-model="auditFrom.causeId" placeholder="璇烽�夋嫨涓嬫媺閫夋嫨" clearable :style="{width: '50%'}" disabled>
- <el-option v-for="item in causeOptions" :key="item.id" :label="item.name"
- :value="item.id"></el-option>
+ <el-form-item label="鍏宠仈妗堜欢" prop="causeId">
+ <el-select v-model="auditInfo.causeId" disabled placeholder="璇烽�夋嫨涓嬫媺閫夋嫨" clearable :style="{ width: '50%' }">
+ <el-option v-for="item in causeOptions" :key="item.id" :label="item.name" :value="item.id"></el-option>
</el-select>
</el-form-item>
</el-col>
+
+ <!-- <el-col :span="24">
+ <el-form-item label="鍏宠仈妗堜欢" prop="causeId">
+ <el-select v-model="auditFrom.causeId" placeholder="璇烽�夋嫨涓嬫媺閫夋嫨" clearable :style="{ width: '50%' }" disabled>
+ <el-option v-for="item in causeOptions" :key="item.id" :label="item.name" :value="item.id"></el-option>
+ </el-select>
+ </el-form-item>
+ </el-col> -->
</el-form>
</el-row>
</el-dialog>
@@ -229,18 +394,37 @@
</template>
<script>
-import {getAuditList, getImgUrl, getReportById, report} from '@/api/common'
+import { getAuditList, getImgUrl, getReportById, report, checkPass } from '@/api/common'
+import {reasonForRejection} from "@/api/Audit";
export default {
name: "Audit",
data() {
return {
+ dialogImageUrl: '',
+ dialogVisible: false,
+ fromDis:false,
+ fromTitle:'娣诲姞',
+ idCardList:[],
+ contractList:[],
+ transacList:[],
+ elseList:[],
+ idCardMaterials:[],
+ contractMaterials:[],
+ transactionMaterials:[],
+ elseMaterials:[],
+ fits: ['fill', 'contain', 'cover', 'none', 'scale-down'],
+ activeName: 'a',
+ reasonForRejectionInput:'',
+ innerLayerVisible:false,
+ current: null,
+ size: null,
queryInfo: {
people: '',
phoneNumber: '',
- isInGroup: '5',
+ isInGroup: null,
current: 1,
- HavaMaterial: '5',
+ HavaMaterial: null,
size: 10,
},
auditFrom: {
@@ -257,11 +441,15 @@
fileList: [],
tmpTime: '',
},
- auditInfo: {},
- picShow: "",
+ auditInfo: {
+
+ },
+
+ picShow: '',
+ reportData: [],
optionsGroup: [
{
- value: '5',
+ value: null,
label: '鍏ㄩ儴'
},
{
@@ -275,7 +463,7 @@
],
optionsMate: [
{
- value: '5',
+ value: null,
label: '鍏ㄩ儴'
},
{
@@ -291,6 +479,7 @@
list: [],
addAduitDialogVisible: false,
infoAduitDialogVisible: false,
+ checkVisible: false,
causeOptions: [],
rules: {
reporterName: [{
@@ -298,17 +487,20 @@
message: '璇疯緭鍏ユ姤妗堜汉 ',
trigger: 'blur'
}],
- mobile: [{
- required: true,
- message: '璇疯緭鍏ユ墜鏈哄彿鐮�',
- trigger: 'blur'
- }],
- idcard: [{
- required: true,
- message: '璇疯緭鍏ヨ韩浠借瘉鍙�',
- trigger: 'blur'
- }],
- tmpTime: [{
+ mobile:
+ [{ required: true, message: '璇疯緭鍏ユ墜鏈哄彿鐮�', trigger: 'blur' },
+ {
+ validator: function (rule, value, callback) {
+ if (/^1[34578]\d{9}$/.test(value) == false) {
+ callback(new Error("璇疯緭鍏ユ纭殑鎵嬫満鍙�"));
+ } else {
+ callback();
+ }
+ }, trigger: 'blur'
+ }],
+ idcard: [{ required: true, message: '璇疯緭鍏ヨ韩浠借瘉ID', trigger: 'blur' },
+ { pattern: /(^\d{15}$)|(^\d{19}$)|(^\d{17}(\d|X|x)$)/, message: '浣犵殑韬唤璇佹牸寮忎笉姝g‘' }],
+ cheatTime: [{
required: true,
message: '璇疯緭鍏ヨ楠楁椂闂�',
trigger: 'blur'
@@ -334,37 +526,265 @@
trigger: 'change'
}],
},
+ rules2:{
+ causeId: [
+ { required: true, message: '璇烽�夋嫨鍏宠仈妗堜欢', trigger: 'change' }
+ ]
+ }
}
},
created() {
this.getList()
this.getCauseOptions()
},
+
methods: {
- infoAduitClose() {
- this.infoAduitDialogVisible = false
- this.$refs.infoAduitForm.resetFields()
- },
- addAduit() {
- this.$refs.addAduitForm.validate(async (vaild) => {
- if (!vaild) return this.$message.error('杈撳叆鏈夎')
- this.auditFrom.reportMaterials = this.auditFrom.fileList.map(i => i.data).join(',')
- report(this.auditFrom).then(res => {
- this.$message.success('鎻愪氦鎴愬姛')
- this.addAduitDialogVisible = false
- this.getList()
- }).catch(err => {
- this.addAduitClose()
+ handTlseMaterials(res){
+ if (res.code === 200) {
+ this.auditInfo.elseimg.push({
+ name: res.data,
+ url: '/minio/img/' + res.data,
+ // uid: this.addPublicityForm.img.length
+ response: {data:res.data}
})
+ } else {
+ this.$message.error(res.msg)
+ }
+ console.log(res,this.auditInfo)
+ },
+ handTransactionMaterials(res){
+ if (res.code === 200) {
+ this.auditInfo.transactionimg.push({
+ name: res.data,
+ url: '/minio/img/' + res.data,
+ // uid: this.addPublicityForm.img.length
+ response: {data:res.data}
+ })
+ } else {
+ this.$message.error(res.msg)
+ }
+ console.log(res,this.auditInfo)
+ },
+ handContractMaterials(res){
+ if (res.code === 200) {
+ this.auditInfo.contractimg.push({
+ name: res.data,
+ url: '/minio/img/' + res.data,
+ // uid: this.addPublicityForm.img.length
+ response: {data:res.data}
+ })
+ } else {
+ this.$message.error(res.msg)
+ }
+ console.log(res,this.auditInfo)
+ },
+ handIdCardMaterials(res){
+ console.log(res)
+ if (res.code === 200) {
+ this.auditInfo.cardimg.push({
+ name: res.data,
+ url: '/minio/img/' + res.data,
+ // uid: this.addPublicityForm.img.length
+ response: {data:res.data}
+ })
+ } else {
+ this.$message.error(res.msg)
+ }
+ console.log(res,this.auditInfo,this.idCardList)
+
+ },
+
+ // 姝f枃鍥剧墖涓婁紶,鍒犻櫎鎿嶄綔
+ handleRemove(file, fileList) {
+ // file鏄偣鍑诲垹闄ょ殑鏂囦欢锛宖ileList鏃跺垹闄ゅ悗鍓╀笅鐨勬枃浠跺垪琛�
+ console.log(file,fileList)
+ // this.auditInfo.idCardMaterials = fileList[0].response
+ },
+ handleRemovecard(file,fileList){
+ console.log(fileList)
+ this.auditInfo.cardimg = fileList
+ },
+ handleRemovecontractimg(file,fileList){
+ this.auditInfo.contractimg = fileList
+ },
+ handleRemovetransaction(file,fileList){
+ this.auditInfo.transactionimg = fileList
+ },
+ handleRemoveelse(file,fileList){
+ this.auditInfo.elseimg = fileList
+ },
+ handlePictureCardPreview(file) {
+ this.dialogImageUrl = file.url
+ this.dialogVisible = true
+ },
+ openInnerLayerVisible(){
+
+ },
+ handleClickTab(t,e){
+ console.log(t,e)
+ },
+ //妗堜欢浜哄憳瀵煎叆鎴愬姛鍚�
+ reporterRespond(res) {
+ if (res.code == 200) {
+ this.$message({
+ message: '涓婁紶鎴愬姛',
+ type: 'success'
+ }
+ )
+ } else {
+ this.$message({
+ message: res.msg,
+ type: 'error'
+ })
+ }
+ this.getList()
+ },
+ beforeAvatarUpload(file) {
+ let Xls = file.name.split('.');
+ if (Xls[1] === 'xls' || Xls[1] === 'xlsx') {
+ return file
+ } else {
+ this.$message.error('涓婁紶鏂囦欢鍙兘鏄� xls/xlsx 鏍煎紡!')
+ return false
+ }
+ },
+ rejectionConfirmation(){
+
+ let data={
+ id:this.auditInfo.id,
+ reason:this.reasonForRejectionInput
+ }
+ reasonForRejection(data).then(res=>{
+ console.log(res)
+ this.getList()
+ this.checkVisible=false
+ this.innerLayerVisible =false
})
},
- async getCauseOptions() {
- const {data: data} = await this.$http.get('/api/cause/getCauseIdAndName');
- this.causeOptions = data.data;
+ //瀹℃牳纭畾
+ checkAdd() {
+ let form = null;
+ form = this.auditInfo;
+ console.log(form,this.idCardList)
+
+ if (this.fromTitle=='娣诲姞'){
+ //澶勭悊鍥剧墖韬唤璇�
+ if (form.cardimg.length>0){
+ form.idCardMaterials=form.cardimg.map(item=>item.response.data).join(',')
+ }else {form.idCardMaterials=''}
+ if (form.contractimg.length>0){
+ form.contractMaterials=form.contractimg.map(item=>item.response.data).join(',')
+ }else {form.contractMaterials=''}
+ if (form.transactionimg.length>0){
+ form.transactionMaterials=form.transactionimg.map(item=>item.response.data).join(',')
+ }else {form.transactionMaterials=''}
+ if (form.elseimg.length>0){
+ form.elseMaterials=form.elseimg.map(item=>item.response.data).join(',')
+ }else {form.elseMaterials=''}
+ report(form).then(res=>{
+ this.checkVisible=false
+ console.log(res)
+ this.getList()
+ })
+ }else {
+
+ console.log(form)
+ this.$refs.infoAduitForm.validate((valid)=>{
+ if(valid){
+ checkPass(form).then(res => {
+ this.$message.success('鎻愪氦鎴愬姛')
+ this.getList()
+ this.checkVisible = false;
+ })
+ }else{
+ return false;
+ }
+
+ })
+ }
+
+
},
- handleAvatarSuccess(res, file) {
- this.auditFrom.pic = res.data
- console.log(res.data)
+ //瀹℃牳
+ check(val) {
+ this.fromDis=true
+ this.fromTitle='瀹℃牳'
+ getReportById(val).then(res => {
+ this.auditInfo = res
+ console.log(this.auditInfo)
+ if (res.idCardMaterials){
+ this.idCardMaterials=res.idCardMaterials.split(',').map(item=>{
+ return item='/minio/img/'+item
+ })
+ }
+ if (res.contractMaterials){
+ this.contractMaterials=res.contractMaterials.split(',').map(item=>{
+ return item='/minio/img/'+item
+ })
+ }
+
+ if (res.transactionMaterials){
+ this.transactionMaterials=res.transactionMaterials.split(',').map(item=>{
+ return item='/minio/img/'+item
+ })
+ }
+
+ if (res.elseMaterials){
+ this.elseMaterials=res.elseMaterials.split(',').map(item=>{
+ return item='/minio/img/'+item
+ })
+ }
+
+ this.reasonForRejectionInput= this.auditInfo.remarks||''
+ console.log(res)
+ if (res.pic === '' || res.pic === null) {
+ this.picShow = './logo.jpg';
+ } else {
+
+ this.picShow = '/minio/img/'+res.pic
+
+ }
+ if (res.reportMaterials) {
+ var addressList = res.reportMaterials.split(",")
+ for (let item of addressList) {
+ if (item === '' || item === null) {
+ // this.reportData.push('./logo.jpg');
+ } else {
+ this.reportData=[];
+ getImgUrl(item).then(res => {
+ this.reportData.push(res);
+ })
+ }
+ }
+ }
+
+ this.checkVisible = true
+ })
+ },
+ infoAduitClose() {
+ this.checkVisible = false
+ this.$refs.infoAduitForm.resetFields()
+ this.reportData = []
+ this.picShow = ""
+ },
+ detailsClose() {
+ this.infoAduitDialogVisible = false
+ this.$refs.infoAduitForm.resetFields()
+ this.reportData = []
+ this.picShow = ""
+ },
+
+ async getCauseOptions() {
+ const { data: data } = await this.$http.get('/api/cause/getCauseIdAndName');
+ data.data.map(item=>{
+ item.id=Number(item.id)
+ })
+ this.causeOptions = data.data;
+ console.log(this.causeOptions)
+ },
+ handleAvatarSuccess(res, file,e) {
+ console.log(res,file)
+ this.auditInfo.pic = res.data
getImgUrl(res.data).then(res => {
this.picShow = res
})
@@ -378,8 +798,8 @@
},
addAduitClose() {
this.addAduitDialogVisible = false
- this.$refs.addAduitForm.resetFields()
this.picShow = ""
+ this.$refs.addAduitForm.resetFields()
},
getList() {
let param = {}
@@ -387,19 +807,22 @@
param.phoneNumber = this.queryInfo.phoneNumber
param.current = this.queryInfo.current
param.size = this.queryInfo.size
- param.isInGroup = this.queryInfo.isInGroup !== '5' ? this.queryInfo.isInGroup : ''
- param.HavaMaterial = this.queryInfo.HavaMaterial !== '5' ? this.queryInfo.HavaMaterial : ''
+ param.isInGroup = this.queryInfo.isInGroup
+ param.HavaMaterial = this.queryInfo.HavaMaterial
getAuditList(param).then(res => {
this.total = res.total
this.list = res.records
+ this.size = res.size
+ this.current = res.current
this.list.forEach(x => {
if (x.pic === '' || x.pic === null) {
- x.pic = './logo.png';
+ x.pic = './logo.jpg';
} else {
getImgUrl(x.pic).then(res => {
x.pic = res
})
}
+ console.log(this.list)
})
})
},
@@ -407,7 +830,38 @@
this.getList()
},
addAduitDialogOpen() {
- this.addAduitDialogVisible = true
+ // this.addAduitDialogVisible = true
+ this.idCardMaterials=[]
+ this.contractMaterials=[]
+ this.transactionMaterials=[]
+ this.elseMaterials=[]
+ this.fromDis=false
+ this.picShow= ''
+ this.auditInfo= {
+ elseimg:[],
+ transactionimg:[],
+ cardimg:[],
+ contractimg:[],
+ pic: '',
+ reporterName: '',
+ mobile: '',
+ idcard: '',
+ cheatTime: '',
+ amountInvolved: '',
+ reportDescription: '',
+ information: '',
+ reportMaterials: "",
+ causeId: '',
+ fileList: [],
+ idCardMaterials:[],
+ elseMaterials:[],
+ transactionMaterials:[],
+ contractMaterials:[],
+ tmpTime: '',
+ }
+ this.checkVisible = true
+ this.fromTitle = '娣诲姞'
+
},
exportExcel() {
},
@@ -418,9 +872,46 @@
details(id) {
getReportById(id).then(res => {
this.auditInfo = res
- getImgUrl(res.pic).then(res => {
- this.picShow = res
- })
+ if (res.idCardMaterials){
+ this.idCardMaterials=res.idCardMaterials.split(',').map(item=>{
+ return item='/minio/img/'+item
+ })
+ }
+ if (res.contractMaterials){
+ this.contractMaterials=res.contractMaterials.split(',').map(item=>{
+ return item='/minio/img/'+item
+ })
+ }
+
+ if (res.transactionMaterials){
+ this.transactionMaterials=res.transactionMaterials.split(',').map(item=>{
+ return item='/minio/img/'+item
+ })
+ }
+
+ if (res.elseMaterials){
+ this.elseMaterials=res.elseMaterials.split(',').map(item=>{
+ return item='/minio/img/'+item
+ })
+ }
+ if (res.pic === '' || res.pic === null) {
+ this.picShow = './logo.jpg';
+ } else {
+ this.picShow = '/minio/img/'+res.pic
+ }
+ if (res.reportMaterials) {
+ var addressList = res.reportMaterials.split(",")
+ for (let item of addressList) {
+ if (item === '' || item === null) {
+ // this.reportData.push('./logo.jpg');
+ } else {
+ getImgUrl(item).then(res => {
+ this.reportData.push(res);
+ })
+ }
+ }
+ }
+
this.infoAduitDialogVisible = true
})
},
@@ -443,5 +934,11 @@
.el-form-item {
margin-top: 20px;
}
-
+.reason-for-rejection{
+ display: flex;
+ align-items: center;
+ .reason-for-rejection-lable{
+ width: 120px;
+ }
+}
</style>
--
Gitblit v1.8.0