|
|
@@ -1,23 +1,32 @@
|
|
|
<template>
|
|
|
- <app-view class="logoff">
|
|
|
+ <app-view class="credit-statement">
|
|
|
<template #header>
|
|
|
- <app-navbar ref="navbarRef" title="积分流水" />
|
|
|
+ <app-navbar title="积分流水">
|
|
|
+ </app-navbar>
|
|
|
</template>
|
|
|
- <app-pull-refresh v-model:dataList="tableList" v-model:loading="loading" :total="total" @refresh="onRefresh">
|
|
|
+ <app-pull-refresh class="credit-statement__container" v-model:dataList="tableList" :total="total"
|
|
|
+ @refresh="onRefresh">
|
|
|
<template #header>
|
|
|
- <Sticky :offset-top="50">
|
|
|
- <ul class="tablelist">
|
|
|
- <li class="tablelist-cell">时间</li>
|
|
|
- <li class="tablelist-cell">操作类型</li>
|
|
|
- <li class="tablelist-cell">金额</li>
|
|
|
- </ul>
|
|
|
- </Sticky>
|
|
|
+ <ul class="list list-row" v-if="tableList.length">
|
|
|
+ <li class="list-column">
|
|
|
+ <span>时间</span>
|
|
|
+ </li>
|
|
|
+ <li class="list-column">
|
|
|
+ <span>操作类型</span>
|
|
|
+ </li>
|
|
|
+ <li class="list-column">
|
|
|
+ <span>积分</span>
|
|
|
+ </li>
|
|
|
+ </ul>
|
|
|
</template>
|
|
|
<template #default="{ item }">
|
|
|
- <ul class="tablelist">
|
|
|
- <li class="tablelist-cell">{{ item.createtime }}</li>
|
|
|
- <li class="tablelist-cell">{{ item.scoreconfigtype }}</li>
|
|
|
- <li class="tablelist-cell">{{ item.score }}</li>
|
|
|
+ <ul class="list list-row">
|
|
|
+ <li class="list-column">
|
|
|
+ <span>{{ formatDate(item.createtime, 'YYYY-MM-DD') }}</span>
|
|
|
+ <span>{{ formatDate(item.createtime, 'HH:mm:ss') }}</span>
|
|
|
+ </li>
|
|
|
+ <li class="list-column">{{ getScoreConfigTypeName(item.scoreconfigtype) }}</li>
|
|
|
+ <li class="list-column">{{ item.score }}</li>
|
|
|
</ul>
|
|
|
</template>
|
|
|
</app-pull-refresh>
|
|
|
@@ -26,27 +35,60 @@
|
|
|
|
|
|
<script lang="ts" setup>
|
|
|
import { reactive } from 'vue'
|
|
|
-import { Sticky } from 'vant'
|
|
|
-import { useCreditList } from '@/business/credit'
|
|
|
+import { formatDate } from '@/filters'
|
|
|
+import { getScoreConfigTypeName } from '@/constants/credit'
|
|
|
+import { useCreditStatementList } from '@/business/credit'
|
|
|
import AppPullRefresh from '@mobile/components/base/pull-refresh/index.vue'
|
|
|
|
|
|
-const { dataList, loading, total, getCreditList } = useCreditList()
|
|
|
+const { dataList, total, getCreditStatementList } = useCreditStatementList()
|
|
|
const tableList = reactive<Model.UserScoreLogRsp[]>([])
|
|
|
|
|
|
const onRefresh = (resolve: (data: Model.UserScoreLogRsp[]) => void) => {
|
|
|
- getCreditList().then(() => {
|
|
|
+ getCreditStatementList().then(() => {
|
|
|
resolve(dataList.value)
|
|
|
+ }).catch(() => {
|
|
|
+ resolve([])
|
|
|
})
|
|
|
}
|
|
|
</script>
|
|
|
|
|
|
<style lang="less">
|
|
|
-.tablelist {
|
|
|
- display: flex;
|
|
|
+.credit-statement {
|
|
|
+ &__container {
|
|
|
+ height: 100%;
|
|
|
+ overflow-y: auto;
|
|
|
+
|
|
|
+ .list {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ background-color: #fff;
|
|
|
+
|
|
|
+ &-row {
|
|
|
+ font-size: .32rem;
|
|
|
+ border-bottom: 1px solid #eee;
|
|
|
+ padding: .12rem .32rem;
|
|
|
+ }
|
|
|
+
|
|
|
+ &-column {
|
|
|
+ flex: 1;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+ text-align: center;
|
|
|
+
|
|
|
+ &:first-child {
|
|
|
+ text-align: left;
|
|
|
+ }
|
|
|
+
|
|
|
+ &:last-child {
|
|
|
+ text-align: right;
|
|
|
+ }
|
|
|
|
|
|
- &-cell {
|
|
|
- flex: 1;
|
|
|
- background-color: #fff;
|
|
|
+ span:last-child {
|
|
|
+ color: #999;
|
|
|
+ font-size: .24rem;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
</style>
|