Browse Source

2024-2-22

cmy 1 year ago
parent
commit
91ed8a713d
2 changed files with 55 additions and 2 deletions
  1. 13 0
      src/api/finance.js
  2. 42 2
      src/pages/finance/userExtract/index.vue

+ 13 - 0
src/api/finance.js

@@ -183,3 +183,16 @@ export function exportUserRechargeApi (data) {
         params: data
     });
 }
+
+/**
+ * @description 用户提现记录 -- 用户提现记录导出
+ * @param {Number} param data {Number} 请求参数data
+ */
+export function extract (data) {
+    return request({
+        url: `export/extract`,
+        method: 'get',
+        params: data
+    });
+}
+

+ 42 - 2
src/pages/finance/userExtract/index.vue

@@ -60,7 +60,8 @@
         </FormItem>
         <FormItem>
           <Button type="primary" @click="selChange" class="btn-add">查询</Button>
-          <Button @click="reset">重置</Button>
+          <Button class="mr15" @click="reset">重置</Button>
+		  <Button @click="exports">导出</Button>
         </FormItem>
       </Form>
       </div>
@@ -111,6 +112,9 @@
             <div class="item">提现方式:佣金转入余额</div>
           </div>
         </template>
+		<template slot-scope="{ row }" slot="typeImage">
+		  <div>{{ row.user_type==0?'个人':'企业' }}</div>
+		</template>
         <template slot-scope="{ row, index }" slot="qrcode_url">
           <viewer
             v-if="
@@ -122,6 +126,13 @@
             </div>
           </viewer>
         </template>
+		<template slot-scope="{ row, index }" slot="image">
+		  <viewer >
+		    <div class="tabBox_img">
+		      <img v-lazy="row.image" />
+		    </div>
+		  </viewer>
+		</template>
         <template slot-scope="{ row, index }" slot="status">
           <div class="status" v-if="row.status === 0">
             <div class="statusVal">申请中</div>
@@ -207,10 +218,11 @@
 import cardsData from "@/components/cards/cards";
 import searchFrom from "@/components/publicSearchFrom";
 import { mapState } from "vuex";
-import { cashListApi, cashEditApi, refuseApi } from "@/api/finance";
+import {extract, cashListApi, cashEditApi, refuseApi } from "@/api/finance";
 import { formatDate } from "@/utils/validate";
 import editFrom from "@/components/from/from";
 import timeOptions from "@/utils/timeOptions";
+    import exportExcel from "@/utils/newToExcel.js";
 export default {
   name: "cashApply",
   components: { cardsData, searchFrom, editFrom },
@@ -259,6 +271,16 @@ export default {
           slot: "extract_type",
           minWidth: 150,
         },
+		{
+		  title: "类型",
+		  slot: "typeImage",
+		  minWidth: 100,
+		},
+		{
+		  title: "凭证",
+		  slot: "image",
+		  minWidth: 150,
+		},
         {
           title: "收款码",
           slot: "qrcode_url",
@@ -392,6 +414,24 @@ export default {
     // this.getList();
   },
   methods: {
+	  //导出
+	  async exports() {
+	  	let [th, filekey, data, fileName] = [[], [], [], ""];
+	  	let lebData = await this.getExcelData(this.formValidate); 
+	  	if (!fileName) fileName = lebData.filename;
+	  	filekey = lebData.filekey;
+	  	if (!th.length) th = lebData.header; //表头
+	  	data = data.concat(lebData.export);
+	  	exportExcel(th, filekey, fileName, data);
+	  },
+	  // 获取导出数据
+	getExcelData(excelData) {
+		return new Promise((resolve, reject) => {
+			extract(excelData).then((res) => {
+				return resolve(res.data);
+			});
+		});
+	},
     getPath() {
       this.formValidate.page = 1;
       this.formValidate.status = parseInt(this.$route.query.status);