java-mall-app/member/member/sign.vue
2024-11-01 16:35:40 +08:00

104 lines
2.2 KiB
Vue

<template>
<view class="content">
<zwy-calendar type="sign" :signDayArr="signDayArr" :checkDate="true" bgweek="#006afe" bgday="#006afe" @change="signDate"></zwy-calendar>
<sigin-in :sign_list="sign_list" :is_sign="today_is_sign" :continue_sign_days="continue_sign_days" @click="getsigin"></sigin-in>
</view>
</template>
<script>
import {
mapState,
mapMutations
} from 'vuex'
import zwyCalendar from './../zwy-calendar/zwy-calendar.vue'
import siginIn from './../fanxiao-sign/sigin-in.vue';
export default {
components: {
zwyCalendar,
siginIn,
},
computed: mapState(['Config', 'StateCode', 'notice', 'plantformInfo', 'shopInfo', 'userInfo', 'hasLogin']),
onLoad: function(options) {
uni.setNavigationBarTitle({
title: this.__('签到')
});
var that = this;
that.loadSignState();
},
data() {
return {
sign_list: [],
signDayArr: [],
today_is_sign: false,
continue_sign_days: 0,
message: {}
};
},
methods: {
signDate(event) {},
getsigin(e) {
this.handleSign();
},
handleSign() {
let that = this;
let param = {
user_id: this.userInfo.user_id
};
that.$.request({
url: this.Config.URL.user.signIn,
data: param,
success: function(data, status, msg, code) {
if (status == 200) {
that.$.showModal({
content: that.__("签到成功"),
showCancel: false
})
that.loadSignState()
} else {
that.$.showModal({
content: that.__("签到失败,请重试"),
showCancel: false
})
}
}
});
},
loadSignState: function() {
var that = this,
params = {
user_id: this.userInfo.user_id,
};
that.$.request({
url: this.Config.URL.user.getSignInfo,
data: params,
success: function(data, status, msg, code) {
that.signDayArr = data.sign_day_arr
that.today_is_sign = data.today_is_sign
that.sign_list = data.sign_list
that.continue_sign_days = data.continue_sign_days
}
});
that.setData({
message: this.userInfo
})
},
}
}
</script>
<style>
.content {
display: flex;
align-items: center;
flex-direction: column;
justify-content: center;
}
page {
background: #f4f5f7;
}
</style>