From 9679e32d50d55606627b6adc9cd7d9b3a715e120 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期一, 14 七月 2025 18:16:24 +0800
Subject: [PATCH] 前端

---
 admin/src/api/business/member.js                                               |    7 +++
 admin/src/api/business/memberRevenue.js                                        |    6 +++
 admin/src/components/business/OperaMemberDetailWindow.vue                      |   49 ++++++++++++++++++------
 server/services/src/main/java/com/doumee/dao/business/model/MemberRevenue.java |    2 -
 4 files changed, 49 insertions(+), 15 deletions(-)

diff --git a/admin/src/api/business/member.js b/admin/src/api/business/member.js
index 84bef63..9901389 100644
--- a/admin/src/api/business/member.js
+++ b/admin/src/api/business/member.js
@@ -15,6 +15,13 @@
   return request.post('/business/member/updateStatus', data)
 }
 
+// 瀵煎嚭Excel
+export function exportExcel (data) {
+  return request.post('/business/member/exportExcel', data, {
+    download: true
+  })
+}
+
 // 淇敼
 export function updateById (data) {
   return request.post('/business/member/updateById', data)
diff --git a/admin/src/api/business/memberRevenue.js b/admin/src/api/business/memberRevenue.js
index 7adaa1f..1c158e0 100644
--- a/admin/src/api/business/memberRevenue.js
+++ b/admin/src/api/business/memberRevenue.js
@@ -30,3 +30,9 @@
     }
   })
 }
+// 瀵煎嚭Excel
+export function exportExcel (data) {
+  return request.post('/business/memberRevenue/exportExcel', data, {
+    download: true
+  })
+}
diff --git a/admin/src/components/business/OperaMemberDetailWindow.vue b/admin/src/components/business/OperaMemberDetailWindow.vue
index 09b4047..b524198 100644
--- a/admin/src/components/business/OperaMemberDetailWindow.vue
+++ b/admin/src/components/business/OperaMemberDetailWindow.vue
@@ -43,8 +43,8 @@
     <div class="main" v-if="activeTabs === 0 && info">
       <div class="title" >
         <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
-          <el-form-item label="浜ゆ槗娴佹按鍙�"  style="width: 200px;" label-width="100px" prop="telephone">
-            <el-input v-model="searchForm.telephone" style="width: 100px"  clearable placeholder="璇疯緭鍏�" ></el-input>
+          <el-form-item label="浜ゆ槗娴佹按鍙�"  style="width: 200px;" label-width="100px" prop="transactionNo">
+            <el-input v-model="searchForm.transactionNo" style="width: 100px"  clearable placeholder="璇疯緭鍏�" ></el-input>
           </el-form-item>
           <el-form-item label="鏀舵敮绫诲瀷" prop="type"  style="width: 200px;" label-width="100px" >
             <el-select v-model="searchForm.optType"  style="width: 100px"  clearable placeholder="璇烽�夋嫨绫诲瀷"  >
@@ -52,16 +52,16 @@
               <el-option :value="-1" label="鏀嚭"></el-option>
             </el-select>
           </el-form-item>
-          <el-form-item label="鏀舵敮鏃堕棿" prop="eventType"  style="width: 330px;" label-width="100px" >
-            <el-date-picker type="datetime"  style="width: 100px"  v-model="searchForm.startTime" clearable value-format="yyyy-MM-dd HH:mm:ss"
+          <el-form-item label="鏀舵敮鏃堕棿" prop="eventType"  style="width: 380px;" label-width="100px" >
+            <el-date-picker type="datetime"  style="width: 120px"  v-model="searchForm.startTime" clearable value-format="yyyy-MM-dd HH:mm:ss"
                             placeholder="寮�濮嬫椂闂�" />-
-            <el-date-picker type="datetime"  style="width: 100px"  v-model="searchForm.endTime" clearable value-format="yyyy-MM-dd HH:mm:ss"
+            <el-date-picker type="datetime"  style="width: 120px"  v-model="searchForm.endTime" clearable value-format="yyyy-MM-dd HH:mm:ss"
                             placeholder="缁撴潫鏃堕棿" />
           </el-form-item>
-          <section  style="width: 200px;display: inline-block" >
+          <section  style="width: 280px;display: inline-block" >
             <el-button type="primary" @click="handleCurrentChange0(0)">鎼滅储</el-button>
             <el-button @click="reset0">閲嶇疆</el-button>
-            <el-button @click="exportExcel0">閲嶇疆</el-button>
+            <el-button type="primary" @click="exportExcel0" :loading="export0">瀵煎嚭</el-button>
           </section>
         </el-form>
       </div>
@@ -76,9 +76,9 @@
             <span style="cursor: pointer;color: #a10e0e" v-else>鏀嚭</span>
           </template>
         </el-table-column>
-        <el-table-column prop="telephone" label="閲戦锛堝厓锛�" width="120px"  align="center">
+        <el-table-column prop="amountInfo" label="閲戦锛堝厓锛�" width="120px"  align="center">
           <template slot-scope="{row}">
-            <span class="yellowbtn">{{ ((row.amount || 0)/100).toFixed(2) }}</span>
+            <span class="yellowbtn">{{ row.amountInfo || 0 }}</span>
           </template>
         </el-table-column>
         <el-table-column prop="createTime" label="鏀舵敮鏃堕棿" min-width="150px"  align="center"></el-table-column>
@@ -217,7 +217,7 @@
 import GlobalWindow from '@/components/common/GlobalWindow'
 import BaseOpera from '@/components/base/BaseOpera'
 import { getById } from '@/api/business/member'
-import { fetchList as yueList } from '@/api/business/memberRevenue'
+import { fetchList as yueList, exportExcel as yueExportExcel } from '@/api/business/memberRevenue'
 import { commentList } from '@/api/business/orders'
 import { fetchList as renzhengList } from '@/api/business/identityInfo'
 export default {
@@ -240,6 +240,7 @@
       totalPage0: 0,
       total0: 0,
       loading: false,
+      export0: false,
       searchForm: {
         type: 0,
         startTime: null,
@@ -271,9 +272,31 @@
           this.handleCurrentChange0(0)
         })
     },
-    exportExcel0 (page) {
-      this.page0 = page
-      this.getYueList()
+    exportExcel0 () {
+      this.$dialog.exportConfirm('纭瀵煎嚭鍚楋紵')
+        .then(() => {
+          this.export0 = true
+          yueExportExcel({
+            page: 1,
+            capacity: 1000000,
+            model: {
+              memberId: this.info.id || -1,
+              startTime: this.searchForm.startTime,
+              endTime: this.searchForm.endTime,
+              optType: this.searchForm.optType,
+              transactionNo: this.searchForm.transactionNo
+            }
+          }).then(response => {
+              this.download(response)
+            })
+            .catch(e => {
+              this.$tip.apiFailed(e)
+            })
+            .finally(() => {
+              this.export0 = false
+            })
+        })
+        .catch(() => {})
     },
     reset0 () {
       this.searchForm.startTime = null
diff --git a/server/services/src/main/java/com/doumee/dao/business/model/MemberRevenue.java b/server/services/src/main/java/com/doumee/dao/business/model/MemberRevenue.java
index fa4b570..742ec07 100644
--- a/server/services/src/main/java/com/doumee/dao/business/model/MemberRevenue.java
+++ b/server/services/src/main/java/com/doumee/dao/business/model/MemberRevenue.java
@@ -21,10 +21,8 @@
 @ApiModel("浼氬憳鏀舵敮璁板綍")
 @TableName("`member_revenue`")
 public class MemberRevenue {
-
     @ApiModelProperty(value = "涓婚敭", example = "1")
     private Integer id;
-
     @ApiModelProperty(value = "鏄惁宸插垹闄� 0鏈垹闄� 1宸插垹闄�", example = "1")
     private Integer deleted;
 

--
Gitblit v1.9.3