|
@@ -1,381 +0,0 @@
|
|
|
-<template>
|
|
|
- <!-- 积分详情 -->
|
|
|
- <view>
|
|
|
- <view class='integral-details' :style="colorStyle">
|
|
|
- <view class='header'>
|
|
|
- <view class='currentScore'>当前股权</view>
|
|
|
- <view class="scoreNum">{{userInfo.reward_share}}</view>
|
|
|
- <view class='line'></view>
|
|
|
- <!-- <view class='nav acea-row'>
|
|
|
- <view class='item'>
|
|
|
- <view class='num'>{{userInfo.sum_integral}}</view>
|
|
|
- <view>累计积分</view>
|
|
|
- </view>
|
|
|
- <view class='item'>
|
|
|
- <view class='num'>{{userInfo.deduction_integral}}</view>
|
|
|
- <view>累计消费</view>
|
|
|
- </view>
|
|
|
- <view class='item'>
|
|
|
- <view class='num'>{{userInfo.today_integral}}</view>
|
|
|
- <view>今日获得</view>
|
|
|
- </view>
|
|
|
- </view> -->
|
|
|
- </view>
|
|
|
- <view class='wrapper'>
|
|
|
- <!-- <view class='nav acea-row'>
|
|
|
- <view class='item acea-row row-center-wrapper' :class='current==index?"on":""'
|
|
|
- v-for="(item,index) in navList" :key='index' @click='nav(index)'><text class='iconfont'
|
|
|
- :class="item.icon"></text>{{item.name}}</view>
|
|
|
- </view> -->
|
|
|
- <view class='list' :hidden='current!=0'>
|
|
|
-
|
|
|
- <view class='item acea-row row-between-wrapper' v-for="(item,index) in integralList" :key="index">
|
|
|
- <view style="max-width: 550rpx;">
|
|
|
- <view class='state'>{{item.content}}</view>
|
|
|
- <view>{{item.create_time}}</view>
|
|
|
- </view>
|
|
|
- <view class='num font-color' v-if="item.pm">+{{item.reward_share}}</view>
|
|
|
- <view class='num' v-else>-{{item.reward_share}}</view>
|
|
|
- </view>
|
|
|
- <view class='loadingicon acea-row row-center-wrapper' v-if="integralList.length>0">
|
|
|
- <text class='loading iconfont icon-jiazai' :hidden='loading==false'></text>{{loadTitle}}
|
|
|
- </view>
|
|
|
- <view v-if="integralList.length == 0">
|
|
|
- <emptyPage title="暂无股权记录哦~"></emptyPage>
|
|
|
- </view>
|
|
|
- </view>
|
|
|
- </view>
|
|
|
- </view>
|
|
|
- <home v-if="navigation"></home>
|
|
|
- <!-- #ifdef MP -->
|
|
|
- <!-- <authorize v-if="isShowAuth" @authColse="authColse" @onLoadFun="onLoadFun"></authorize> -->
|
|
|
- <!-- #endif -->
|
|
|
- </view>
|
|
|
-</template>
|
|
|
-
|
|
|
-<script>
|
|
|
- import home from '@/components/home';
|
|
|
- import {
|
|
|
- postSignUser,
|
|
|
- getrecordList
|
|
|
- } from '@/api/user.js';
|
|
|
- import dayjs from '@/plugin/dayjs/dayjs.min.js';
|
|
|
- import {
|
|
|
- toLogin
|
|
|
- } from '@/libs/login.js';
|
|
|
- import {
|
|
|
- mapGetters
|
|
|
- } from "vuex";
|
|
|
- import emptyPage from '@/components/emptyPage.vue';
|
|
|
- import colors from '@/mixins/color'
|
|
|
- export default {
|
|
|
- components: {
|
|
|
- emptyPage,
|
|
|
- home
|
|
|
- },
|
|
|
- filters: {
|
|
|
- dateFormat: function(value) {
|
|
|
- return dayjs(value * 1000).format('YYYY-MM-DD');
|
|
|
- }
|
|
|
- },
|
|
|
- mixins:[colors],
|
|
|
- data() {
|
|
|
- return {
|
|
|
- navList: [{
|
|
|
- 'name': '分值明细',
|
|
|
- 'icon': 'icon-mingxi'
|
|
|
- },
|
|
|
- {
|
|
|
- 'name': '分值提升',
|
|
|
- 'icon': 'icon-tishengfenzhi'
|
|
|
- }
|
|
|
- ],
|
|
|
- current: 0,
|
|
|
- page: 1,
|
|
|
- limit: 10,
|
|
|
- integralList: [],
|
|
|
- userInfo: {},
|
|
|
- loadend: false,
|
|
|
- loading: false,
|
|
|
- loadTitle: '加载更多',
|
|
|
- isAuto: false, //没有授权的不会自动授权
|
|
|
- isShowAuth: false, //是否隐藏授权
|
|
|
- isTime: 0
|
|
|
- };
|
|
|
- },
|
|
|
- computed: mapGetters(['isLogin']),
|
|
|
- watch: {
|
|
|
- isLogin: {
|
|
|
- handler: function(newV, oldV) {
|
|
|
- if (newV) {
|
|
|
- this.getUserInfo();
|
|
|
- // this.getIntegralList();
|
|
|
- }
|
|
|
- },
|
|
|
- deep: true
|
|
|
- }
|
|
|
- },
|
|
|
- onLoad() {
|
|
|
- if (this.isLogin) {
|
|
|
- this.getUserInfo();
|
|
|
- // this.getIntegralList();
|
|
|
- } else {
|
|
|
- toLogin()
|
|
|
- }
|
|
|
- },
|
|
|
- onShow() {
|
|
|
- uni.removeStorageSync('form_type_cart');
|
|
|
- },
|
|
|
- /**
|
|
|
- * 页面上拉触底事件的处理函数
|
|
|
- */
|
|
|
- onReachBottom: function() {
|
|
|
- this.getIntegralList();
|
|
|
- },
|
|
|
- methods: {
|
|
|
- /**
|
|
|
- * 授权回调
|
|
|
- */
|
|
|
- onLoadFun: function() {
|
|
|
- this.getUserInfo();
|
|
|
- this.isShowAuth = false;
|
|
|
- },
|
|
|
- // 授权关闭
|
|
|
- authColse: function(e) {
|
|
|
- this.isShowAuth = e
|
|
|
- },
|
|
|
- getUserInfo: function() {
|
|
|
- let that = this;
|
|
|
- postSignUser({
|
|
|
- sign: 1,
|
|
|
- integral: 1,
|
|
|
- all: 1
|
|
|
- }).then(function(res) {
|
|
|
- that.$set(that, 'userInfo', res.data);
|
|
|
- that.getIntegralList();
|
|
|
- let clearTime = res.data.clear_time;
|
|
|
- let showTime = clearTime-(86400*14);
|
|
|
- let timestamp = Date.parse(new Date())/1000;
|
|
|
- if(showTime < timestamp){
|
|
|
- that.isTime = 1
|
|
|
- }else{
|
|
|
- that.isTime = 0
|
|
|
- }
|
|
|
- });
|
|
|
- },
|
|
|
-
|
|
|
- /**
|
|
|
- * 获取积分明细
|
|
|
- */
|
|
|
- getIntegralList: function() {
|
|
|
- let that = this;
|
|
|
- if (that.loading) return;
|
|
|
- if (that.loadend) return;
|
|
|
- that.loading = true;
|
|
|
- that.loadTitle = '';
|
|
|
- getrecordList({
|
|
|
- page: that.page,
|
|
|
- limit: that.limit,
|
|
|
- uid:that.userInfo.uid
|
|
|
- }).then(function(res) {
|
|
|
- let list = res.data.list,
|
|
|
- loadend = list.length < that.limit;
|
|
|
- that.integralList = that.$util.SplitArray(list, that.integralList);
|
|
|
- that.$set(that, 'integralList', that.integralList);
|
|
|
- that.page = that.page + 1;
|
|
|
- that.loading = false;
|
|
|
- that.loadend = loadend;
|
|
|
- that.loadTitle = loadend ? '没有更多内容啦~' : "加载更多";
|
|
|
- }, function(res) {
|
|
|
- this.loading = false;
|
|
|
- that.loadTitle = '加载更多';
|
|
|
- });
|
|
|
- },
|
|
|
- nav: function(current) {
|
|
|
- this.current = current;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-</script>
|
|
|
-
|
|
|
-<style scoped lang="scss">
|
|
|
- .integral-details .header {
|
|
|
- background-repeat: no-repeat;
|
|
|
- background-size: 100% 100%;
|
|
|
- width: 100%;
|
|
|
- height: 300rpx;
|
|
|
- font-size: 72rpx;
|
|
|
- color: #fff;
|
|
|
- padding: 31rpx 0 45rpx 0;
|
|
|
- box-sizing: border-box;
|
|
|
- text-align: center;
|
|
|
- font-family: 'Guildford Pro';
|
|
|
- background-color: var(--view-theme);
|
|
|
- }
|
|
|
-
|
|
|
- .integral-details .header .currentScore {
|
|
|
- font-size: 26rpx;
|
|
|
- color: rgba(255, 255, 255, 0.8);
|
|
|
- text-align: center;
|
|
|
- margin-bottom: 11rpx;
|
|
|
- }
|
|
|
-
|
|
|
- .integral-details .header .scoreNum {
|
|
|
- font-family: "Guildford Pro";
|
|
|
- }
|
|
|
-
|
|
|
- .integral-details .header .line {
|
|
|
- width: 60rpx;
|
|
|
- height: 3rpx;
|
|
|
- background-color: #fff;
|
|
|
- margin: 20rpx auto 0 auto;
|
|
|
- }
|
|
|
-
|
|
|
- .integral-details .header .nav {
|
|
|
- font-size: 22rpx;
|
|
|
- color: rgba(255, 255, 255, 0.8);
|
|
|
- flex: 1;
|
|
|
- margin-top: 35rpx;
|
|
|
- }
|
|
|
-
|
|
|
- .integral-details .header .nav .item {
|
|
|
- width: 33.33%;
|
|
|
- text-align: center;
|
|
|
- }
|
|
|
-
|
|
|
- .integral-details .header .nav .item .num {
|
|
|
- color: #fff;
|
|
|
- font-size: 40rpx;
|
|
|
- margin-bottom: 5rpx;
|
|
|
- font-family: 'Guildford Pro';
|
|
|
- }
|
|
|
-
|
|
|
- .integral-details .wrapper .nav {
|
|
|
- flex: 1;
|
|
|
- width: 690rpx;
|
|
|
- border-radius: 20rpx 20rpx 0 0;
|
|
|
- margin: -96rpx auto 0 auto;
|
|
|
- background-color: #f7f7f7;
|
|
|
- height: 96rpx;
|
|
|
- font-size: 30rpx;
|
|
|
- color: #bbb;
|
|
|
- }
|
|
|
-
|
|
|
- .integral-details .wrapper .nav .item {
|
|
|
- text-align: center;
|
|
|
- width: 50%;
|
|
|
- }
|
|
|
-
|
|
|
- .integral-details .wrapper .nav .item.on {
|
|
|
- background-color: #fff;
|
|
|
- color: var( --view-theme);
|
|
|
- font-weight: bold;
|
|
|
- border-radius: 20rpx 0 0 0;
|
|
|
- }
|
|
|
-
|
|
|
- .integral-details .wrapper .nav .item:nth-of-type(2).on {
|
|
|
- border-radius: 0 20rpx 0 0;
|
|
|
- }
|
|
|
-
|
|
|
- .integral-details .wrapper .nav .item .iconfont {
|
|
|
- font-size: 38rpx;
|
|
|
- margin-right: 10rpx;
|
|
|
- }
|
|
|
-
|
|
|
- .integral-details .wrapper .list {
|
|
|
- background-color: #fff;
|
|
|
- padding: 24rpx 30rpx;
|
|
|
- }
|
|
|
-
|
|
|
- .integral-details .wrapper .list .tip {
|
|
|
- font-size: 25rpx;
|
|
|
- width: 690rpx;
|
|
|
- min-height: 60rpx;
|
|
|
- border-radius: 50rpx;
|
|
|
- background-color: #fff5e2;
|
|
|
- border: 1rpx solid #ffeac1;
|
|
|
- color: #c8a86b;
|
|
|
- padding: 0 20rpx;
|
|
|
- box-sizing: border-box;
|
|
|
- margin-bottom: 24rpx;
|
|
|
- }
|
|
|
-
|
|
|
- .integral-details .wrapper .list .tip .tipCon{
|
|
|
- width: 595rpx;
|
|
|
- }
|
|
|
-
|
|
|
- .integral-details .wrapper .list .tip .iconfont {
|
|
|
- font-size: 35rpx;
|
|
|
- margin-right: 15rpx;
|
|
|
- }
|
|
|
-
|
|
|
- .integral-details .wrapper .list .item {
|
|
|
- height: 124rpx;
|
|
|
- border-bottom: 1rpx solid #eee;
|
|
|
- font-size: 24rpx;
|
|
|
- color: #999;
|
|
|
- }
|
|
|
-
|
|
|
- .integral-details .wrapper .list .item .state {
|
|
|
- font-size: 28rpx;
|
|
|
- color: #282828;
|
|
|
- margin-bottom: 8rpx;
|
|
|
- }
|
|
|
-
|
|
|
- .integral-details .wrapper .list .item .num {
|
|
|
- font-size: 36rpx;
|
|
|
- font-family: 'Guildford Pro';
|
|
|
- color: #16AC57;
|
|
|
- }
|
|
|
-
|
|
|
- .integral-details .wrapper .list .item .num.font-color{
|
|
|
- color: #E93323!important;
|
|
|
- }
|
|
|
-
|
|
|
- .integral-details .wrapper .list2 {
|
|
|
- background-color: #fff;
|
|
|
- padding: 24rpx 0;
|
|
|
- }
|
|
|
-
|
|
|
- .integral-details .wrapper .list2 .item {
|
|
|
- background-image: linear-gradient(to right, #fff7e7 0%, #fffdf9 100%);
|
|
|
- width: 690rpx;
|
|
|
- height: 180rpx;
|
|
|
- position: relative;
|
|
|
- border-radius: 10rpx;
|
|
|
- margin: 0 auto 20rpx auto;
|
|
|
- padding: 0 25rpx 0 180rpx;
|
|
|
- box-sizing: border-box;
|
|
|
- }
|
|
|
-
|
|
|
- .integral-details .wrapper .list2 .item .pictrue {
|
|
|
- width: 90rpx;
|
|
|
- height: 150rpx;
|
|
|
- position: absolute;
|
|
|
- bottom: 0;
|
|
|
- left: 45rpx;
|
|
|
- }
|
|
|
-
|
|
|
- .integral-details .wrapper .list2 .item .pictrue image {
|
|
|
- width: 100%;
|
|
|
- height: 100%;
|
|
|
- }
|
|
|
-
|
|
|
- .integral-details .wrapper .list2 .item .name {
|
|
|
- width: 285rpx;
|
|
|
- font-size: 30rpx;
|
|
|
- font-weight: bold;
|
|
|
- color: #c8a86b;
|
|
|
- }
|
|
|
-
|
|
|
- .integral-details .wrapper .list2 .item .earn {
|
|
|
- font-size: 26rpx;
|
|
|
- color: #c8a86b;
|
|
|
- border: 2rpx solid #c8a86b;
|
|
|
- text-align: center;
|
|
|
- line-height: 52rpx;
|
|
|
- height: 52rpx;
|
|
|
- width: 160rpx;
|
|
|
- border-radius: 50rpx;
|
|
|
- }
|
|
|
-</style>
|