|
@@ -0,0 +1,70 @@
|
|
|
|
|
+<!-- 积分信息-积分明细 -->
|
|
|
|
|
+<template>
|
|
|
|
|
+ <app-pull-refresh ref="pullRefreshRef" v-model:loading="loading" v-model:error="error"
|
|
|
|
|
+ v-model:pageIndex="pageIndex" :page-count="pageCount" @refresh="onRefresh">
|
|
|
|
|
+ <div class="bankstatement-list" v-for="(item, index) in dataList" :key="index">
|
|
|
|
|
+ <dl>
|
|
|
|
|
+ <dt>
|
|
|
|
|
+ <span>
|
|
|
|
|
+ {{ $t('score.detailid') }}
|
|
|
|
|
+ {{ handleNoneValue(item.detailid) }}
|
|
|
|
|
+ </span>
|
|
|
|
|
+ <span>
|
|
|
|
|
+ <b>{{ getValidTypeName(item.validtype) }}</b>
|
|
|
|
|
+ </span>
|
|
|
|
|
+ </dt>
|
|
|
|
|
+ <dd>
|
|
|
|
|
+ <span>{{ $t('score.scoretypename') }}</span>
|
|
|
|
|
+ <span>{{ handleNoneValue(item.scoretypename) }}</span>
|
|
|
|
|
+ </dd>
|
|
|
|
|
+ <dd>
|
|
|
|
|
+ <span>{{ $t('score.remainscore') }}</span>
|
|
|
|
|
+ <span>{{ formatDecimal(item.remainscore) }}</span>
|
|
|
|
|
+ </dd>
|
|
|
|
|
+ <dd>
|
|
|
|
|
+ <span>{{ $t('score.expiredate') }}</span>
|
|
|
|
|
+ <span>{{ handleNoneValue(item.expiredate) }}</span>
|
|
|
|
|
+ </dd>
|
|
|
|
|
+ <dd>
|
|
|
|
|
+ <span>{{ $t('score.createdtime') }}</span>
|
|
|
|
|
+ <span>{{ formatDate(item.createdtime) }}</span>
|
|
|
|
|
+ </dd>
|
|
|
|
|
+ </dl>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </app-pull-refresh>
|
|
|
|
|
+</template>
|
|
|
|
|
+
|
|
|
|
|
+<script lang="ts" setup>
|
|
|
|
|
+import { shallowRef } from 'vue'
|
|
|
|
|
+import { useRequest } from '@/hooks/request'
|
|
|
|
|
+import { queryUserScoreDetail } from '@/services/api/user'
|
|
|
|
|
+import AppPullRefresh from '@mobile/components/base/pull-refresh/index.vue'
|
|
|
|
|
+import { formatDecimal, handleNoneValue, formatDate } from '@/filters'
|
|
|
|
|
+import { getValidTypeName } from '@/constants/market'
|
|
|
|
|
+
|
|
|
|
|
+const showModal = shallowRef(true)
|
|
|
|
|
+const error = shallowRef(false)
|
|
|
|
|
+const pullRefreshRef = shallowRef()
|
|
|
|
|
+const refresh = shallowRef(false) // 是否刷新父组件数据
|
|
|
|
|
+
|
|
|
|
|
+const { loading, pageIndex, pageCount, run, dataList } = useRequest(queryUserScoreDetail)
|
|
|
|
|
+
|
|
|
|
|
+const onRefresh = () => {
|
|
|
|
|
+ run()
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+// 关闭弹窗
|
|
|
|
|
+const closed = (isRefresh = false) => {
|
|
|
|
|
+ refresh.value = isRefresh
|
|
|
|
|
+ showModal.value = false
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+// 暴露组件属性给父组件调用
|
|
|
|
|
+defineExpose({
|
|
|
|
|
+ closed,
|
|
|
|
|
+})
|
|
|
|
|
+</script>
|
|
|
|
|
+
|
|
|
|
|
+<style lang="less">
|
|
|
|
|
+@import './index.less';
|
|
|
|
|
+</style>
|