MrShi
2026-05-20 777bcb6c5660c0ed14d85207377b62b779d81dde
small-program/shop/pages/wallet/wallet.vue
@@ -58,30 +58,32 @@
                  </view>
               </view>
               <view class="item-date-bottom">
                  <text>收入:¥{{(countDataList.totalIncome || 0).toFixed(2)}}</text>
                  <text>支出:¥{{(countDataList.totalExpense || 0).toFixed(2)}}</text>
                  <text>收入:¥{{((countDataList.totalIncome || 0) / 100).toFixed(2)}}</text>
                  <text>支出:¥{{((countDataList.totalExpense || 0) / 100).toFixed(2)}}</text>
               </view>
            </view>
            <view class="item-list">
               <view class="item-list-item"  v-for="(item, index) in dataList" :key="index" @click="jumpDetail(item)">
                  <view class="image">
                     <image  v-if="item.type === 0" src="/static/icon/ic_shouru@2x.png" mode="widthFix"></image>
                     <image  v-if="item.type === 3" src="/static/icon/ic_shouru@2x.png" mode="widthFix"></image>
                     <image  v-if="item.type === 1" src="/static/icon/ic_tixian@2x.png" mode="widthFix"></image>
                     <image  v-if="item.type === 2" src="/static/icon/ic_tuikuan@2x.png" mode="widthFix"></image>
                     <image  v-if="item.type === 4 || item.type === 5" src="/static/icon/ic_tixian@2x.png" mode="widthFix"></image>
                  </view>
                  <view class="info">
                     <view class="info">
                        <view class="info-a">
                           <view class="info-a-label">
                           {{item.type === 0 ? '完成订单' : item.type === 1 ? '提现支出' : item.type === 2 ? '提现退回' : ''}}
                           {{item.type === 0 ? '完成订单' : item.type === 1 ? '提现支出' : item.type === 2 ? '提现退回' : item.type === 3 ? '平台奖励' : item.type === 4 ? '责任扣款' : item.type === 5 ? '异常金额' : ''}}
                           <template  v-if="item.type === 1">
                              <text style="color: #FF0020;"  v-if="item.withdrawStatus == 2">未通过</text>
                              <text style="color: #004096" v-else-if="item.withdrawStatus == 1">已通过</text>
                              <text style="color: #FF0020;" v-else>审核中</text>
                              <text style="color: #FF0020;"  v-if="item.status == 2">处理中</text>
                              <text style="color: #FF0020;" v-else-if="item.status == 1">失败</text>
                              <text style="color: #004096;" v-else>已通过</text>
                           </template>
                           </view>
                           <view class="info-a-price">
                              <text>{{item.type==1?'-':'+'}}{{item.amountInfo || 0}}</text>
                              <text>{{[1, 4, 5].includes(item.type) ? '-' : '+'}}{{item.amountInfo || 0}}</text>
                              <text></text>
                           </view>
                        </view>
@@ -117,7 +119,11 @@
                  <view  @click="checkType(0)" :class="tempType == 0?'sear-item-list-item active':'sear-item-list-item'">全部</view>
                  <view  @click="checkType(1)" :class="tempType == 1?'sear-item-list-item active':'sear-item-list-item'">订单结算</view>
                  <view  @click="checkType(2)" :class="tempType == 2?'sear-item-list-item active':'sear-item-list-item'">提现</view>
                  <view  @click="checkType(4)" :class="tempType == 4?'sear-item-list-item active':'sear-item-list-item'">提现退回</view>
                  <view  @click="checkType(6)" :class="tempType == 6?'sear-item-list-item active':'sear-item-list-item'">提现退回</view>
                  <view  @click="checkType(3)" :class="tempType == 3?'sear-item-list-item active':'sear-item-list-item'">平台奖励</view>
                  <view  @click="checkType(4)" :class="tempType == 4?'sear-item-list-item active':'sear-item-list-item'">责任扣款</view>
                  <view  @click="checkType(5)" :class="tempType == 5?'sear-item-list-item active':'sear-item-list-item'">异常金额</view>
                  <view style="width: 216rpx; height: 0;"></view>
                  <view style="width: 216rpx; height: 0;"></view>
               </view>
            </view>
@@ -192,6 +198,7 @@
            countData:{},
            countDataList:{},
            hasNext:true,
            loading:false,
            show: false,
            show1:false,
            year:null,
@@ -214,7 +221,9 @@
         this.countDataList={}
         this.show = false
         this.initDateStr()
         uni.$on('accountListReload', this.getFirstPageData())
         uni.$on('accountListReload', ()=>{
            this.getFirstPageData()
         })
      },
      methods:{
         bindChange1 (e) {
@@ -237,21 +246,21 @@
               return
            }
            this.loading=true
            if(this.currentPage == 1){
               this.hasNext = true
               this.dataList=[]
            }
            this.$u.api.shopPage({
               capacity: 10,
               model: {
                  startTime: this.startDate || this.defaultStartDate,
                  endTime: this.endDate || this.defaultEndDate,
                  type: this.active === 1?0:(this.active===2?1:''),
                  objType: this.type === 1?16:( this.type === 2?17:( this.type === 3?25: (this.type === 4?1: ''))),
                  optType: this.active === 1 ? 1 : (this.active === 2 ? -1 : ''),
                  type: this.type === 0 ? '' : (this.type === 1 ? 0 : (this.type === 2 ? 1 : (this.type === 3 ? 3 : (this.type === 4 ? 4 : (this.type === 5 ? 5 : (this.type === 6 ? 2 : '')))))),
               },
               page: this.currentPage
            }).then(res => {
               if (res.code == 200) {
                  if(res.data.page == 1){
                     this.hasNext = true
                     this.dataList=[]
                  }
                  this.dataList.push(...res.data.records)
                  this.total = res.data.total
                  this.currentPage = this.currentPage+1
@@ -267,8 +276,8 @@
            this.$u.api.shopSummary({
               startTime: this.startDate || this.defaultStartDate,
               endTime: this.endDate || this.defaultEndDate,
               type: this.active === 1?0:(this.active===2?1:''),
               objType: this.type === 1?16:( this.type === 2?17:( this.type === 3?25: (this.type === 4?1: ''))),
               optType: this.active === 1 ? 1 : (this.active === 2 ? -1 : ''),
               type: this.type === 0 ? '' : (this.type === 1 ? 0 : (this.type === 2 ? 1 : (this.type === 3 ? 3 : (this.type === 4 ? 4 : (this.type === 5 ? 5 : (this.type === 6 ? 2 : '')))))),
            }).then(res=>{
               if(res.code == 200){
                  this.countDataList = res.data
@@ -285,22 +294,34 @@
         },
         comfirmDate(flag){
            if (flag) {
               if(new Date(this.tempEndDate+" 00:00:00").getTime() < new Date(this.tempStartDate+" 00:00:00").getTime()){
               if (!this.tempStartDate || !this.tempEndDate) {
                  return uni.showToast({
                     title:'日期范围不正确',
                     icon:'error'
                     title: '请选择开始和结束时间',
                     icon: 'none'
                  })
               }
               this.startDate =this.tempStartDate
               this.endDate =this.tempEndDate
               if(new Date(this.tempEndDate+" 00:00:00").getTime() <= new Date(this.tempStartDate+" 00:00:00").getTime()){
                  return uni.showToast({
                     title:'开始时间必须小于截止时间',
                     icon:'none'
                  })
               }
               this.startDate = this.tempStartDate
               this.endDate = this.tempEndDate
               this.show1 = false
               setTimeout(() => {
                  this.getFirstPageData()
               }, 300)
            } else {
               this.startDate = null
               this.endDate = null
               this.tempStartDate = this.defaultStartDate
               this.tempEndDate = this.defaultEndDate
               this.tempStartDate = null
               this.tempEndDate = null
               this.show1 = false
               setTimeout(() => {
                  this.getFirstPageData()
               }, 300)
            }
            this.getFirstPageData()
            this.show1=false
         },
         openShow(){
            this.tempActive =this.active
@@ -311,22 +332,31 @@
            if(flag){
               this.active = this.tempActive
               this.type = this.tempType
               this.show = false
               this.wordsWidth = 250
               if(this.active === 0 && this.type === 0){
                  this.words = '全部'
               }else {
                  let t1 = this.active === 1 ? '收入 ':(this.active === 2 ? '支出 ' : '');
                  let t2 = this.type === 1 ? '订单结算' : (this.type === 2 ? '提现': (this.type === 3 ? '订单结算退回' : (this.type === 4 ? '提现退回' : '')))
                  let t2 = this.type === 1 ? '订单结算' : (this.type === 2 ? '提现' : (this.type === 3 ? '平台奖励' : (this.type === 4 ? '责任扣款' : (this.type === 5 ? '异常金额' : (this.type === 6 ? '提现退回' : '')))))
                  if(t1 !='' && t2 !=''){
                     this.wordsWidth = 350
                  }
                  this.words = t1 + t2
               } 
               this.getFirstPageData()
               this.show = false
               setTimeout(() => {
                  this.getFirstPageData()
               }, 300)
            }else{
               this.tempActive = 0
               this.tempType =0
               this.tempType = 0
               this.active = 0
               this.type = 0
               this.words = '全部'
               this.show = false
               setTimeout(() => {
                  this.getFirstPageData()
               }, 300)
            }
         },
         formattedDateTime(currentDate) {
@@ -351,7 +381,7 @@
            
            this.getShopStatistics()
            this.getShopSummary()
            this.getShopPage()
            this.getFirstPageData()
         },
         checkActive(index){
            this.tempActive =index
@@ -361,9 +391,10 @@
         },
         getFirstPageData(){
            this.currentPage = 0
            this.hasNext=true
            this.total=0
            this.dataList=[]
            this.hasNext = true
            this.loading = false
            this.total = 0
            this.dataList = []
            this.getShopPage()
         },
         jumpWithdraw(){
@@ -610,6 +641,8 @@
                  font-size: 30rpx;
                  font-weight: 400;
                  margin-top: 30rpx;
                  padding-bottom: 30rpx;
                  box-sizing: border-box;
               }
               .item-list-item {
                  width: 100%;