陶杰
2024-11-12 15ae4a0daffaa7fdec2566a2fc96409b90822a09
sub_pages/customer/coupon/point-history.vue
@@ -1,6 +1,29 @@
<template>
   <!-- 列表页面 -->
   <view>
      <!-- 查询条件 -->
      <view class="component-filter-container m-t-12 flex">
         <view class="flex1 w-fit m-l-a m-r-0" @click="show_time_picker_time=true"
            :class="[query.recordDateStart?'':'desc-gray']">
            <!-- {{query.recordDateStart&&( (query.recordDateStart||'') + ' ~ ' + (query.recordDateEnd || '')) || '请选择日期'}} -->
            {{query.recordDateStart || '请选择日期'}}
            <image src="@/static/common/icon-arrow-down.png" class="icon-arrow-down"></image>
         </view>
         <view class="flex1 w-fit m-l-a m-r-0" @click.stop="$refs.popup_level.open()">
            {{ query.typeStr || '积分类型' }}
            <image src="@/static/common/icon-arrow-down.png" class="icon-arrow-down"></image>
         </view>
         <view class="flex1 w-fit m-l-a m-r-0" @click.stop="()=>{
            query.typeStr = ''
            query.type = ''
            query.recordDateStart = ''
            query.recordDateEnd = ''
            refreshList()
         }">
            重置
         </view>
      </view>
      <view class="p15" style="min-height: calc(100vh - 260rpx);">
         <no-data v-if="!list||list.length==0" style="width: 100%;"></no-data>
         <view v-for="(item,index) in list" :key="index" class="m-b-24">
@@ -16,15 +39,46 @@
                  <view class="form-item-value">{{item.point || ''}}</view>
               </view>
               <view class="form-item">
                  <view class="form-item-label">备注</view>
                  <view class="form-item-value">{{item.remarks || ''}}</view>
                  <view class="form-item-label" style="min-width: 80rpx;">备注</view>
                  <view class="form-item-value" style="word-break: break-word;">{{item.remarks || ''}}</view>
               </view>
            </view>
         </view>
      </view>
      <!-- 判断是否到底了,自动吧 -->
      <footer-msg :more="page.total>0&&page.total>page.current*page.size"></footer-msg>
      <u-calendar :show="show_time_picker_time" mode="single" @confirm="select_time_picker_time" :monthNum="3"
         @cancel="show_time_picker_time = false" rowHeight="100" @close="show_time_picker_time = false"
         minDate="2024-07-01" :maxDate="maxDate" toolTip="选择日期">
      </u-calendar>
      <uni-popup ref="popup_level" type="bottom">
         <view class="component-popup_input_all">
            <view class="text-center m-b-40" style="font-size: 48rpx;font-weight: 600;">点击选择不同类型</view>
            <view v-for="(item,i) in type_columns" :key="i" class="m-t-20">
               <view class="m-t-12 flex value-items">
                  <view class="value-item" @click="()=>{
                     if(each.value!==query.value){
                        query.type = each.value
                        query.typeStr = each.label
                        refreshList()
                        $refs.popup_level.close()
                     }
                  }" :class="[query.type==each.value?'cur':'']" v-for="(each, j) in item" :key="j">
                     {{ each.label || '-' }}
                  </view>
               </view>
            </view>
            <view class="button-space"></view>
            <view>
               <view class="button-green" @click="$refs.popup_level.close()">关闭
               </view>
            </view>
         </view>
      </uni-popup>
   </view>
</template>
@@ -34,12 +88,30 @@
         return {
            query: {
               // status: ''
            }
               recordDateStart: '',
               recordDateEnd: '',
               type: '',
               typeStr: '',
            },
            show_time_picker_time: false,
            maxDate: '',
            type_columns: [],
         }
      },
      onLoad() {
         this.maxDate = this.$util.toDate(new Date())
         this.$http.request('get', '/api/code/value', {
            params: {
               type: 'point_type'
            }
         }).then(res => {
            var data = res.data
            this.type_columns = [data || []]
            this.type_columns[0].unshift({
               label: '全部',
               value: ''
            })
         })
         this.listApi = '/api/customer/point/list'
         this.getList()
@@ -54,7 +126,19 @@
         uni.stopPullDownRefresh()
      },
      methods: {
         select_time_picker_time(e) {
            console.log('select_time_picker_time', e)
            if (e && e.length > 0) {
               this.query.recordDateStart = e[0]
               this.query.recordDateEnd = e[e.length - 1]
               this.show_time_picker_time = false
            } else {
               this.query.recordDateStart = ''
               this.query.recordDateEnd = ''
               this.show_time_picker_time = false
            }
            this.refreshList()
         }
      }
   }
</script>