Authored by TaoHuang

Merge remote-tracking branch 'origin/develop' into develop

# Conflicts:
#	apps/store/home/favorite.js
<template>
<LayoutApp :show-back="true" :title="title">
<Scroll :scrollEvents="['scroll']" :options="scrollOptions" @scroll="scroll"
<Scroll :scroll-events="['scroll-end','scroll']"
@scroll-end="fetchList"
v-if="favoriteProductList.list.length"
@pulling-up="onPullingUp">
>
<ProductList :list="favoriteProductList.list"></ProductList>
</Scroll>
<!-- <empty-list v-show="!isShowEmpty" /> -->
... ... @@ -42,20 +43,23 @@ export default {
this.fetchFavoriteList();
},
methods: {
...mapActions(['fetchFavoriteList','isShowEmpty']),
...mapActions(['fetchFavoriteList','isMore']),
async onPullingUp() {
await this.fetchFavoriteList();
async fetchList() {
if(isMore){
await this.fetchFavoriteList();
}
},
scroll({ y }) {
const height = this.$refs.banner.$el.offsetHeight + this.$refs.header.offsetHeight;
// scroll({ y }) {
// const height = this.$refs.banner.$el.offsetHeight + this.$refs.header.offsetHeight;
if (-y >= height) {
this.fixed = true;
} else {
this.fixed = false;
}
}
// if (-y >= height) {
// this.fixed = true;
// } else {
// this.fixed = false;
// }
// }
},
computed: {
... ...
... ... @@ -24,7 +24,7 @@ export default {
...mapState(
{
amountPart1: (state) => {
return (''+state.userWalletInfo.walletAmount).split('.')[0]
return (''+state.userWalletInfo.walletAmount).split('.')[0].split('¥')[1]
},
amountPart2: (state) => {
return (''+state.userWalletInfo.walletAmount).split('.')[1]
... ...
import { get, set } from 'lodash';
import { getImgUrl } from '../../common/utils';
import Vue from 'vue';
// const uid = '500031170';
export default function() {
return {
... ... @@ -10,43 +11,54 @@ export default function() {
pageTotal: 0,
recId: '',
favoriteProductList: {
list: []
list:[]
},
isShowEmpty: false,
isMore: true,
},
mutations: {
addList(state, { data }) {
console.log(data);
if (data && data.product_list) {
console.log(data)
if(data && data.product_list){
// data.product_list.
let { page, product_list = [] } = data;
let isShowEmpty = page === 1 && product_list === 0;
// console.log("isShowEmpty:"+isShowEmpty)
// state.isShowEmpty = isShowEmpty
let list = state.favoriteProductList.list.concat(product_list);
Vue.set(state.favoriteProductList, 'list', list);
} else {
let { page, product_list = [], pageTotal } = data;
let isShowEmpty = page === 1 && product_list === 0;
// console.log("isShowEmpty:"+isShowEmpty)
// state.isShowEmpty = isShowEmpty
if(pageTotal > page){
state.isMore = true;
}
state.pageTotal = pageTotal;
state.page = page + 1;
let list = state.favoriteProductList.list.concat(product_list);
Vue.set(state.favoriteProductList, "list", list);
}else {
// state.isShowEmpty = true;
}
},
errorData(state) {
errorData(state){
// console.log("error==isShowEmpty:")
state.isShowEmpty = true;
}
},
actions: {
async fetchFavoriteList({ commit }) {
const result = await this.$api.get('/api/ufo/home/favoriteProduct', {});
if (result.code === 200) {
let data = result.data;
commit('addList', { data: data });
} else {
// console.log("error=//=isShowEmpty:")
commit('errorData');
}
return result.data || [];
async fetchFavoriteList({ commit, state }) {
let page = state.page;
let limit = 20;
const result = await this.$api.get('/api/ufo/home/favoriteProduct', {page, limit});
if (result.code === 200) {
let data =result.data;
commit('addList', { data:data });
}else {
// console.log("error=//=isShowEmpty:")
commit('errorData');
}
return result.data || [];
// }else {
// return [];
// }
},
},
};
... ...
... ... @@ -46,11 +46,11 @@ export default function() {
endTime: 0,
},
userWalletInfo: {
totalAmount: 0.0,
totalAmount: 0.00,
withdrawLimit: 0,
withdrawAmount: 0,
shareSettlementAmount: 0,
walletAmount: 0.0,
walletAmount: '¥0.00',
},
filterData: {
tradeTypes: [],
... ... @@ -102,7 +102,7 @@ export default function() {
resource1: { name: 'resource1', data: state.resource1 },
income: {
title: '我的收入',
num: '¥' + state.userWalletInfo.walletAmount,
num: state.userWalletInfo.walletAmount,
page: 'income',
}, // 原交易收入 tradeIncome
buyOrder: {
... ... @@ -249,6 +249,8 @@ export default function() {
state.walletData.endTime = endTime;
},
addUserWalletInfo(state, data) {
// data.totalAmount = formatNumber(data.totalAmount);
data.walletAmount = formatNumber(data.walletAmount);
state.userWalletInfo = data;
},
addfilterData(state, data) {
... ...
... ... @@ -85,6 +85,7 @@ module.exports = {
auth: true,
api: 'ufo.user.favoriteList',
params: {},
auth: true,
},
'/api/ufo/channel/channelList': {
ufo: true,
... ...