123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172 |
- <template>
- <view style="background-color: #FFFFFF;height: 100%;" class="u-skeleton">
- <view class="status_bar">
- <!-- 这里是状态栏 -->
- </view>
- <view class="u-page" style="margin-bottom: 20rpx;">
- <view class="u-m-t-20">
- <u-swiper :list="bannersList" :height="310" :effect3d="true" border-radius="20" effect3d-previous-margin="20"
- bg-color="#FFF" class="u-skeleton-fillet" v-if="bannersList.length!=0"></u-swiper>
- <u-swiper :list="list" :height="310" :effect3d="true" border-radius="20" effect3d-previous-margin="20" bg-color="#FFF"
- class="u-skeleton-fillet" v-else></u-swiper>
- </view>
- <view class="u-flex u-m-t-20 u-m-l-20 u-m-r-20 u-skeleton-fillet" style="width:710rpx;">
- <!-- <view class="u-flex u-row-center" style="width: 150rpx; height: 70rpx;border-radius: 50rpx;background: rgba(52,140,245,0.1);font-size: 20rpx;color: #348CF5; font-size: 500;">
- <u-image width="45rpx" height="35rpx" src="../../static/sailun/speaker.png" style="margin:10rpx;"></u-image>公告
- <u-notice-bar mode="horizontal" :list="noticebarList" :volume-icon="false" bg-color="#FFF" color="#2B2B2B" padding="18rpx 12rpx" :is-circular="false"></u-notice-bar> -->
- <u-notice-bar mode="vertical" :list="noticebarList" style="width: 710rpx;" type="primary"></u-notice-bar>
- </view>
- <view class="u-flex u-m-t-20 u-row-around u-m-l-10 u-m-r-10">
- <u-image width="350rpx" src="../../static/sailun/scan_in.png" @click="scancodeIn" mode="widthFix" class="u-skeleton-fillet"></u-image>
- <u-image width="350rpx" src="../../static/sailun/scan_out.png" @click="scancodeOut" mode="widthFix" class="u-skeleton-fillet"></u-image>
- </view>
- <view class="u-m-t-20">
- <view class="u-m-l-30" style="font-size: 34rpx;">
- 快捷服务
- </view>
- <view class="u-flex u-flex-wrap u-row-center">
- <u-image class="u-skeleton-fillet" width="350rpx" height="212rpx" src="../../static/sailun/1.png" style="margin: 10rpx;box-shadow:0rpx 0rpx 20rpx rgba(0,0,0,0.2);border-radius: 30rpx;"
- @click="inStock"></u-image>
- <u-image class="u-skeleton-fillet" width="350rpx" height="212rpx" src="../../static/sailun/2.png" style="margin: 10rpx;box-shadow:0rpx 0rpx 20rpx rgba(0,0,0,0.2);border-radius: 30rpx;"
- @click="inMonthlyPolicy"></u-image>
- <u-image class="u-skeleton-fillet" width="350rpx" height="212rpx" src="../../static/sailun/3.png" style="margin: 10rpx;box-shadow:0rpx 0rpx 20rpx rgba(0,0,0,0.2);border-radius: 30rpx;"
- @click="inInlineshop"></u-image>
- <u-image class="u-skeleton-fillet" width="350rpx" height="212rpx" src="../../static/sailun/4.png" style="margin: 10rpx;box-shadow:0rpx 0rpx 20rpx rgba(0,0,0,0.2);border-radius: 30rpx;"
- @click="inIntegral"></u-image>
- </view>
- </view>
- <view class="u-flex u-row-center u-m-t-30">
- <u-image class="u-skeleton-fillet" width="680rpx" src="../../static/sailun/88reward.png" mode="widthFix"></u-image>
- </view>
- </view>
- <!-- 与包裹页面所有内容的元素u-page同级,且在它的下方 -->
- <!-- <u-tabbar v-model="current" :list="list"></u-tabbar> -->
- <u-skeleton :loading="loading" :animation="true"></u-skeleton>
- <u-toast ref="ulogin" />
- </view>
- </template>
- <script>
- import {
- mapState,
- mapMutations
- } from 'vuex'
- import {
- request
- } from '../../common/request/request'
- require("promise.prototype.finally").shim()
- import axios from 'axios'
- export default {
- data() {
- return {
- bannersList: [],
- noticebarList: [],
- loading: true, // 是否显示骨架屏组件
- list: [
- '../../static/sailun/swiper1.png'
- ]
- };
- },
- onLoad() {
- uni.$on('login', (data) => {
- this.loginStatus = data.msg
- })
- if (!this.hasLogin) {
- this.$u.route({
- url: "pages/login/index",
- })
- }
- },
- onReady() {
- if (this.loginStatus == "登录成功") {
- this.$refs.ulogin.show({
- title: "登录成功",
- })
- }
- },
- created() {
- uni.showLoading({
- title: '加载中...'
- });
- axios.all([this.getBanners(), this.getTiceList()])
- .then(axios.spread((one, two) => {
- this.bannersList = one.data.data.map(t => t.imgPath)
- console.log(this.bannersList)
- this.noticebarList = two.data.data.map(t => t.msgContent)
- }))
- .catch(err => {
- console.log(err)
- })
- .finally(() => {
- this.loading = false;
- uni.hideLoading();
- })
- },
- computed: {
- ...mapState(['hasLogin'])
- },
- methods: {
- //轮播图
- getBanners() {
- return request({
- url: '/homepage/getBanners',
- method: 'post',
- data: {
- "storeId": this.$store.state.storeInfo.storeId,
- "showPosition": 0, //门店0
- }
- })
- },
- //消息文字跑马灯
- getTiceList() {
- return request({
- url: '/homepage/noticeList',
- method: 'post',
- data: {
- "storeId": this.$store.state.storeInfo.storeId,
- "contentType": "1" //门店1
- }
- })
- },
- scancodeIn() {
- this.$u.route({
- url: 'pages/home/scancode/index',
- })
- },
- scancodeOut() {
- this.$u.route({
- url: 'pages/home/scancode/scancodeout',
- })
- },
- inStock() {
- this.$u.route({
- url: 'pages/home/my-stock/my-stock',
- })
- },
- inMonthlyPolicy() {
- this.$u.route({
- url: 'pages/home/monthly-policy/monthly-policy',
- })
- },
- inInlineshop() {
- this.$u.toast('线下订货暂不开放');
- // this.$u.route({
- // url: 'pages/home/inline-shop/inline_shop',
- // })
- },
- inIntegral() {
- this.$u.route({
- url: 'pages/home/integral-mall/integral_mall',
- })
- }
- },
- }
- </script>
- <style lang="scss" scoped>
- .status_bar {
- height: var(--status-bar-height);
- width: 100%;
- background-color: #FFF;
- }
- </style>
|