From 2bcd556961208b80af1cb157633c594faab1eca2 Mon Sep 17 00:00:00 2001
From: liuwh <liuwh@hugeinfo.com.cn>
Date: Mon, 24 Feb 2020 00:11:18 +0800
Subject: [PATCH] 小程序代码
---
SunshineLnsMinApp/pages/myTranslate/myTranslate.json | 6
SunshineLnsMinApp/pages/myTranslate/myTranslate.wxml | 26 ++
SunshineLnsMinApp/pages/fzpxInfo/fzpxInfo.wxml | 156 ++++++++-------
SunshineLnsMinApp/pages/myTranslate/myTranslate.wxss | 111 +++++++++++
SunshineLnsMinApp/app.json | 1
SunshineLnsMinApp/pages/fzpxInfo/fzpxInfo.js | 97 ++++++---
SunshineLnsMinApp/pages/me/me.js | 6
SunshineLnsMinApp/pages/myTranslate/myTranslate.js | 146 ++++++++++++++
SunshineLnsMinApp/pages/me/me.wxml | 10 +
9 files changed, 453 insertions(+), 106 deletions(-)
diff --git a/SunshineLnsMinApp/app.json b/SunshineLnsMinApp/app.json
index f91f0a0..68d8872 100644
--- a/SunshineLnsMinApp/app.json
+++ b/SunshineLnsMinApp/app.json
@@ -58,6 +58,7 @@
"pages/publicSnapshot/publicSnapshot",
"pages/scanEvildoing/scanEvildoing",
"pages/messageNotification/messageNotification",
+ "pages/myTranslate/myTranslate",
"pages/scanEvildoingInfo/scanEvildoingInfo",
"pages/complaintAdvice/complaintAdvice",
"pages/videoPreview/videoPreview",
diff --git a/SunshineLnsMinApp/pages/fzpxInfo/fzpxInfo.js b/SunshineLnsMinApp/pages/fzpxInfo/fzpxInfo.js
index 496552f..1efb2b9 100644
--- a/SunshineLnsMinApp/pages/fzpxInfo/fzpxInfo.js
+++ b/SunshineLnsMinApp/pages/fzpxInfo/fzpxInfo.js
@@ -10,17 +10,19 @@
*/
data: {
loading: false,
- peopleInfo: {}
+ peopleInfo: {},
+ signStatus: '',
},
/**
* 生命周期函数--监听页面加载
*/
- onLoad: function(options) {
+ onLoad: function (options) {
var that = this;
that.setData({
id: options.id,
- flag: options.flag,
+ signStatus: options.signStatus || '',
+ flag: options.flag || '',
loading: true
});
wx.showLoading({
@@ -28,7 +30,7 @@
})
wx.request({
url: app.globalData.url + '/api/activity/find?id=' + options.id,
- success: function(res) {
+ success: function (res) {
console.log(res);
that.setData({
loading: false
@@ -40,42 +42,49 @@
activity: res.data.data
})
console.log('传过来', options.flag)
+ console.log('传过来', options.signStatus)
// 处理报名状态
- if (options.flag == 'true') {
- //可报名
- console.log('可报名')
- if (res.data.data.activityPersonNum < res.data.data.activityPersonQuota) {
- if (res.data.data.activityStatus == 1) {
- that.setData({
- canApply: true
- })
- }
- if (res.data.data.activityStatus == 2) {
+ if (options.signStatus) {
+ that.setData({
+ signStatus: options.signStatus
+ })
+ } else {
+ if (options.flag == 'true') {
+ //可报名
+ console.log('可报名')
+ if (res.data.data.activityPersonNum < res.data.data.activityPersonQuota) {
+ if (res.data.data.activityStatus == 1) {
+ that.setData({
+ canApply: true
+ })
+ }
+ if (res.data.data.activityStatus == 2) {
+ that.setData({
+ canApply: false,
+ statusWord: '活动正在进行'
+ })
+ }
+ if (res.data.data.activityStatus == 3) {
+ that.setData({
+ canApply: false,
+ statusWord: '活动已结束'
+ })
+ }
+ } else {
that.setData({
canApply: false,
- statusWord: '活动正在进行'
+ statusWord: '报名人数已满'
})
}
- if (res.data.data.activityStatus == 3) {
- that.setData({
- canApply: false,
- statusWord: '活动已结束'
- })
- }
+
} else {
+ //不可报名
+ console.log('不可报名')
that.setData({
canApply: false,
- statusWord: '报名人数已满'
+ statusWord: '您已报名'
})
}
-
- } else {
- //不可报名
- console.log('不可报名')
- that.setData({
- canApply: false,
- statusWord: '您已报名'
- })
}
}
@@ -84,7 +93,7 @@
},
// 跳转
- linkFunction: function() {
+ linkFunction: function () {
wx.showToast({
title: '抱歉,报名人数已满',
icon: 'none',
@@ -93,14 +102,14 @@
},
// 呼叫组织方
- makePhoneCall: function(e) {
+ makePhoneCall: function (e) {
var phone = e.currentTarget.dataset['phone'];
wx.makePhoneCall({
phoneNumber: phone
})
},
- inputChange: function(e) {
+ inputChange: function (e) {
var name = e.currentTarget.dataset.name;
this.setData({
peopleInfo: {
@@ -110,8 +119,26 @@
})
},
+ // 签到
+ sign: function () {
+ // 只允许从相机扫码
+ wx.scanCode({
+ onlyFromCamera: true,
+ success(res) {
+ console.log(res)
+ }
+ })
+ },
+
+ // 返回
+ goBack: function () {
+ wx.navigateBack({
+ delta: 1
+ });
+ },
+
// 提交报名
- submit: function() {
+ submit: function () {
var peopleInfo = this.data.peopleInfo;
var userinfo = wx.getStorageSync("user");
var personId = userinfo.id;
@@ -149,7 +176,7 @@
header: {
"Content-Type": "application/json"
},
- success: function(res) {
+ success: function (res) {
wx.hideLoading();
if (res.data.code == 0) {
wx.reLaunch({
diff --git a/SunshineLnsMinApp/pages/fzpxInfo/fzpxInfo.wxml b/SunshineLnsMinApp/pages/fzpxInfo/fzpxInfo.wxml
index b4aee34..04236e8 100644
--- a/SunshineLnsMinApp/pages/fzpxInfo/fzpxInfo.wxml
+++ b/SunshineLnsMinApp/pages/fzpxInfo/fzpxInfo.wxml
@@ -1,83 +1,97 @@
<!--pages/fzpxInfo/fzpxInfo.wxml-->
<view class="fzpxInfo-bg" wx:if="{{!loading}}">
- <view class="flex1">
- <swiper class="screen-swiper square-dot" indicator-dots="true" circular="true" autoplay="true" interval="5000" duration="500">
- <swiper-item wx:for="{{activity.attList}}" wx:key>
- <image src="{{item.imgPath}}" mode="aspectFill"></image>
- <!-- <video src="{{item.url}}" autoplay loop muted show-play-btn="{{false}}" controls="{{false}}" objectFit="cover" wx:if="{{item.type=='video'}}"></video> -->
- </swiper-item>
- </swiper>
+ <view class="flex1">
+ <swiper class="screen-swiper square-dot" indicator-dots="true" circular="true" autoplay="true" interval="5000" duration="500">
+ <swiper-item wx:for="{{activity.attList}}" wx:key>
+ <image src="{{item.imgPath}}" mode="aspectFill"></image>
+ <!-- <video src="{{item.url}}" autoplay loop muted show-play-btn="{{false}}" controls="{{false}}" objectFit="cover" wx:if="{{item.type=='video'}}"></video> -->
+ </swiper-item>
+ </swiper>
- <view class="fzpxInfo-main">
- <view class="fzpxInfo-main-t">{{activity.activityTitle}}</view>
- <view class="fzpxInfo-main-group">
- <view class="fzpxInfo-main-group-title">培训时间</view>
- <view class="fzpxInfo-main-group-around">{{activity.startTime}}</view>
- </view>
- <view class="fzpxInfo-main-group">
- <view class="fzpxInfo-main-group-title">报名人数</view>
- <view class="fzpxInfo-main-group-around">{{activity.activityPersonNum}}/{{activity.activityPersonQuota}}人</view>
- </view>
- <view class="fzpxInfo-main-group">
- <view class="fzpxInfo-main-group-title">培训地点</view>
- <view class="fzpxInfo-main-group-around">{{activity.activityAddress}}</view>
- </view>
- <view class="fzpxInfo-main-group">
- <view class="fzpxInfo-main-group-title">组织方</view>
- <view style="display: flex; line-height:48rpx;">
- <view class="fzpxInfo-main-group-around">{{activity.host || '无'}}</view>
- <text class="cuIcon-dianhua lg text-blue margin-left" data-phone="{{activity.activityPhone}}" bindtap="makePhoneCall"></text>
- </view>
- </view>
- <view class="fzpxInfo-main-group">
- <view class="fzpxInfo-main-group-title">培训对象</view>
- <view class="fzpxInfo-main-group-around">{{activity.requirement}}</view>
- </view>
- <view class="fzpxInfo-main-group" style="display:block;padding: 10rpx 30rpx;">
- <view class="fzpxInfo-main-group-title">培训内容</view>
- <view>
- <view class="fzpxInfo-main-group-around">{{activity.activityDesc}}</view>
- </view>
- </view>
- </view>
+ <view class="fzpxInfo-main">
+ <view class="fzpxInfo-main-t">{{activity.activityTitle}}</view>
+ <view class="fzpxInfo-main-group">
+ <view class="fzpxInfo-main-group-title">培训时间</view>
+ <view class="fzpxInfo-main-group-around">{{activity.startTime}}</view>
+ </view>
+ <view class="fzpxInfo-main-group">
+ <view class="fzpxInfo-main-group-title">报名人数</view>
+ <view class="fzpxInfo-main-group-around">{{activity.activityPersonNum}}/{{activity.activityPersonQuota}}人</view>
+ </view>
+ <view class="fzpxInfo-main-group">
+ <view class="fzpxInfo-main-group-title">培训地点</view>
+ <view class="fzpxInfo-main-group-around">{{activity.activityAddress}}</view>
+ </view>
+ <view class="fzpxInfo-main-group">
+ <view class="fzpxInfo-main-group-title">组织方</view>
+ <view style="display: flex; line-height:48rpx;">
+ <view class="fzpxInfo-main-group-around">{{activity.host || '无'}}</view>
+ <text class="cuIcon-dianhua lg text-blue margin-left" data-phone="{{activity.activityPhone}}" bindtap="makePhoneCall"></text>
+ </view>
+ </view>
+ <view class="fzpxInfo-main-group">
+ <view class="fzpxInfo-main-group-title">报名要求</view>
+ <view class="fzpxInfo-main-group-around">{{activity.requirement}}</view>
+ </view>
+ <view class="fzpxInfo-main-group" style="display:block;padding: 10rpx 30rpx;">
+ <view class="fzpxInfo-main-group-title">培训内容</view>
+ <view>
+ <view class="fzpxInfo-main-group-around">{{activity.activityDesc}}</view>
+ </view>
+ </view>
+ </view>
- <block wx:if="{{activity.activityStatus == 1 && flag == 'true'}}">
- <view class="sub-title">报名信息</view>
- <form>
- <view class="cu-form-group">
- <view class="title">姓名
- <span style="color: red;">*</span>
- </view>
- <input placeholder="请输入姓名" data-name="proposerName" bindinput="inputChange" value='{{peopleInfo.proposerName}}'></input>
- </view>
- <view class="cu-form-group">
- <view class="title">电话号码
- <span style="color: red;">*</span>
- </view>
- <input placeholder="请输入电话号码" data-name="proposerPhone" bindinput="inputChange" value='{{peopleInfo.proposerPhone}}'></input>
- </view>
- </form>
- </block>
+ <block wx:if="{{activity.activityStatus == 1 && flag == 'true'}}">
+ <view class="sub-title">报名信息</view>
+ <form>
+ <view class="cu-form-group">
+ <view class="title">姓名
+ <span style="color: red;">*</span>
+ </view>
+ <input placeholder="请输入姓名" data-name="proposerName" bindinput="inputChange" value='{{peopleInfo.proposerName}}'></input>
+ </view>
+ <view class="cu-form-group">
+ <view class="title">电话号码
+ <span style="color: red;">*</span>
+ </view>
+ <input placeholder="请输入电话号码" data-name="proposerPhone" bindinput="inputChange" value='{{peopleInfo.proposerPhone}}'></input>
+ </view>
+ </form>
+ </block>
- </view>
+ </view>
- <view class="fzpxInfo-foot margin-top">
- <!-- <view class="fzpxInfo-foot-title">报名须知</view>
+ <view class="fzpxInfo-foot margin-top">
+ <view wx:if="{{signStatus}}">
+ <view wx:if="{{signStatus == 2}}">
+ <view class="fzpxInfo-foot-button bg-grey" bindtap='sign'>签到</view>
+ </view>
+
+ <view wx:else>
+ <view class="fzpxInfo-foot-button bg-grey" bindtap='goBack'>返回</view>
+ </view>
+ </view>
+
+ <view wx:else>
+ <!-- <view class="fzpxInfo-foot-title">报名须知</view>
<view class="fzpxInfo-foot-txt">请确认所有参赛人员的排列顺序。相关信息会在参赛证件、参赛证明、获取证书等重要比赛文件中提现。</view>
<view class="fzpxInfo-foot-txt">由于参赛队信息填报原因产生的任何错误,在相关文件完成制作后一律不予修改;</view> -->
- <view wx:if="{{flag == 'false'}}">
- <view class="fzpxInfo-foot-button bg-grey">您已报名</view>
- </view>
- <view wx:if="{{flag == 'true'}}">
+ <view wx:if="{{flag == 'false'}}">
+ <view class="fzpxInfo-foot-button bg-grey">您已报名</view>
+ </view>
+ <view wx:if="{{flag == 'true'}}">
- <view class="fzpxInfo-foot-button bg-blue" wx:if="{{activity.activityStatus == 1}}" bindtap='submit'>我要报名</view>
- <view class="fzpxInfo-foot-button bg-blue" wx:elif="{{activity.activityStatus == 2}}">活动正在进行</view>
- <view class="fzpxInfo-foot-button bg-grey" wx:elif="{{activity.activityStatus == 3}}">活动已结束</view>
- <view class="fzpxInfo-foot-button bg-grey" wx:else>报名人数已满</view>
+ <view class="fzpxInfo-foot-button bg-blue" wx:if="{{activity.activityStatus == 1}}" bindtap='submit'>我要报名</view>
+ <view class="fzpxInfo-foot-button bg-blue" wx:elif="{{activity.activityStatus == 2}}">活动正在进行</view>
+ <view class="fzpxInfo-foot-button bg-grey" wx:elif="{{activity.activityStatus == 3}}">活动已结束</view>
+ <view class="fzpxInfo-foot-button bg-grey" wx:else>报名人数已满</view>
- </view>
- <view>
+ </view>
+ </view>
- </view>
- </view>
+
+ <view>
+
+ </view>
+ </view>
</view>
\ No newline at end of file
diff --git a/SunshineLnsMinApp/pages/me/me.js b/SunshineLnsMinApp/pages/me/me.js
index a5f4278..60e235a 100644
--- a/SunshineLnsMinApp/pages/me/me.js
+++ b/SunshineLnsMinApp/pages/me/me.js
@@ -35,6 +35,12 @@
})
},
+ myTranslate: function() {
+ wx.navigateTo({
+ url: '../myTranslate/myTranslate',
+ })
+ },
+
onLoad: function() {
this.notification();
},
diff --git a/SunshineLnsMinApp/pages/me/me.wxml b/SunshineLnsMinApp/pages/me/me.wxml
index 3c636c0..a8ddf5a 100644
--- a/SunshineLnsMinApp/pages/me/me.wxml
+++ b/SunshineLnsMinApp/pages/me/me.wxml
@@ -22,6 +22,16 @@
<image class="me-business-right-icon" src="{{user}}" />
</div>
+ <div class="me-business-nav" bindtap="myTranslate">
+ <image class="me-business-icon" src="{{xxtx}}" />
+ <div class="me-business-title">我的活动</div>
+ <block wx:if="{{notRead > 0}}">
+ <div class="me-business-info">{{notRead}}</div>
+ </block>
+
+ <image class="me-business-right-icon" src="{{user}}" />
+ </div>
+
<div class="me-business-nav" bindtap="msg">
<image class="me-business-icon" src="{{xxtx}}" />
<div class="me-business-title">消息提醒</div>
diff --git a/SunshineLnsMinApp/pages/myTranslate/myTranslate.js b/SunshineLnsMinApp/pages/myTranslate/myTranslate.js
new file mode 100644
index 0000000..5567377
--- /dev/null
+++ b/SunshineLnsMinApp/pages/myTranslate/myTranslate.js
@@ -0,0 +1,146 @@
+// pages/businessSchedule/businessSchedule.js
+const app = getApp()
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ loading: app.globalData.imgUrl + '/image/loading.svg',
+ navbar: ['全部', '未开始', '进行中', '已完成'],
+ currentTab: 0,
+ size: 10,
+ size1: 10,
+ size2: 10,
+ size3: 10,
+ content: '------加载中------',
+ hasMoreData: true,
+ createTime: '',
+ dataSet: []
+ },
+
+ navbarTap: function (e) {
+ this.setData({
+ currentTab: e.currentTarget.dataset.idx
+ })
+ this.showList(this.data.currentTab)
+
+ },
+
+ showList: function (tab) {
+ var userinfo = wx.getStorageSync("user");
+ var that = this;
+ var id = userinfo.id
+ var str;
+ var sizeQty;
+ switch (tab) {
+ case 0:
+ str = "&status=";
+ sizeQty = 'size';
+ break;
+ case 1:
+ str = "&status=1";
+ sizeQty = 'size1';
+ break;
+ case 2:
+ str = "&status=2";
+ sizeQty = 'size2';
+ break;
+ case 3:
+ str = "&status=3";
+ sizeQty = 'size3';
+ break;
+ }
+ wx.request({
+ url: app.globalData.url + '/api/activity/myActivities?page=1&size=' + that.data[sizeQty] + '&userId=' + id + str,
+ success: function (res) {
+ if (res.data.code == 0) {
+ (res.data.data.content).forEach(e => {
+ (e.createTime) = app.formatDate(e.createTime)
+ switch (e.activityType) {
+ case 'act_1':
+ e.activityType = '南检活动';
+ break;
+ case 'act_2':
+ e.activityType = '法治培训';
+ break;
+ case 'act_3':
+ e.activityType = '基地参观';
+ break;
+ }
+
+
+ });
+ if (res.data.data.totalElements < that.data[sizeQty]) {
+ that.setData({
+ dataSet: res.data.data.content,
+ hasMoreData: false,
+ content: '------我是有底线的------'
+ })
+ } else {
+ that.setData({
+ dataSet: res.data.data.content,
+ hasMoreData: true,
+ content: '------加载更多------',
+ [sizeQty]: that.data[sizeQty] + 10
+ })
+ }
+ } else {
+ wx.showModal({
+ title: '提示',
+ content: "请求失败!"
+ })
+ }
+ }
+ })
+ },
+
+ businessSchedule: function (event) {
+ var id = event.currentTarget.id;
+ var activityType = this.data.dataSet[id].activityType;
+ var signStatus = this.data.dataSet[id].signStatus;
+ var id = this.data.dataSet[id].id;
+
+ console.log(activityType)
+ console.log(signStatus);
+ if (activityType == "法治培训") {
+ wx.navigateTo({
+ url: '../fzpxInfo/fzpxInfo?id=' + id + '&signStatus=' + signStatus,
+ })
+ } else if (activityType == "南检活动") {
+ wx.navigateTo({
+ url: '../scanEvildoing/scanEvildoing?id=' + businessId,
+ })
+ } else if (activityType == "基地参观") {
+ wx.navigateTo({
+ url: '../complaintAdvice/complaintAdvice?id=' + businessId,
+ })
+ } else {
+ wx.showModal({
+ title: '提示',
+ content: "文件错误!"
+ })
+ }
+ },
+
+ onLoad: function () {
+ this.showList(0)
+ },
+
+ /**
+ * 页面上拉触底事件的处理函数
+ */
+ onReachBottom: function () {
+ if (this.data.hasMoreData) {
+ this.showList(this.data.currentTab)
+ this.setData({
+ content: '------加载更多------'
+ })
+ } else {
+ this.setData({
+ content: '------我是有底线的------'
+ })
+ }
+ },
+
+})
\ No newline at end of file
diff --git a/SunshineLnsMinApp/pages/myTranslate/myTranslate.json b/SunshineLnsMinApp/pages/myTranslate/myTranslate.json
new file mode 100644
index 0000000..5a26128
--- /dev/null
+++ b/SunshineLnsMinApp/pages/myTranslate/myTranslate.json
@@ -0,0 +1,6 @@
+{
+ "navigationBarTitleText": "我的活动",
+ "backgroundTextStyle": "light",
+ "navigationBarBackgroundColor": "#fff",
+ "navigationBarTextStyle": "black"
+}
\ No newline at end of file
diff --git a/SunshineLnsMinApp/pages/myTranslate/myTranslate.wxml b/SunshineLnsMinApp/pages/myTranslate/myTranslate.wxml
new file mode 100644
index 0000000..db24d31
--- /dev/null
+++ b/SunshineLnsMinApp/pages/myTranslate/myTranslate.wxml
@@ -0,0 +1,26 @@
+<!--pages/myTranslate/myTranslate.wxml-->
+<!--导航条-->
+<view class="navbar">
+ <text wx:for="{{navbar}}" data-idx="{{index}}" class="item {{currentTab==index ? 'active' : ''}}" wx:key="unique" bindtap="navbarTap">{{item}}</text>
+</view>
+
+<!--列表数据-->
+<view style='flex-direction:column;height:94vh;background-color:rgba(80, 119, 170, 0.06)'>
+ <div class="businessSchedule" bindtap='businessSchedule' id="{{key}}" wx:for="{{dataSet}}" wx:for-index='key' wx:key="*this">
+ <div class="businessSchedule-top">
+ <div class="businessSchedule-top-img">
+ <image src="{{item.iconSrc}}" class="businessSchedule-top-img"></image>
+ </div>
+ <div class="businessSchedule-top-title">{{item.activityType}}</div>
+ <div class="businessSchedule-top-status backgroundorange-title" wx:if="{{item.signStatus==1}}">未审核</div>
+ <div class="businessSchedule-top-status backgroundorange-title" wx:if="{{item.signStatus==2}}">未签到</div>
+ <div class="businessSchedule-top-status backgroundorange-title" wx:if="{{item.signStatus==3}}">已签到</div>
+ <div class="businessSchedule-top-status backgroundorange-title" wx:if="{{item.signStatus==4}}">不通过</div>
+ <div class="businessSchedule-top-status backgroundgreen-title" wx:if="{{item.signStatus==99}}">取消</div>
+ </div>
+ <div class="businessSchedule-center">{{item.activityDese}}</div>
+ <div class="businessSchedule-bottom">于 {{item.createTime}} 提交申请</div>
+ </div>
+ <div class="businessSchedule-load">------{{content}}------</div>
+</view>
+
diff --git a/SunshineLnsMinApp/pages/myTranslate/myTranslate.wxss b/SunshineLnsMinApp/pages/myTranslate/myTranslate.wxss
new file mode 100644
index 0000000..e0e3e0f
--- /dev/null
+++ b/SunshineLnsMinApp/pages/myTranslate/myTranslate.wxss
@@ -0,0 +1,111 @@
+/* pages/myTranslate/myTranslate.wxss */
+view {
+ display: flex;
+}
+
+.navbar {
+ flex: none;
+ display: flex;
+ background: #fff;
+ font-size: 18px;
+ color: #999;
+ height: 6vh;
+}
+
+.navbar .item {
+ position: relative;
+ flex: auto;
+ text-align: center;
+ line-height: 80rpx;
+}
+
+.navbar .item.active {
+ color: #2195ff;
+}
+
+.navbar .item.active:after {
+ content: "";
+ display: block;
+ position: absolute;
+ bottom: 0;
+ left: 0;
+ right: 0;
+ height: 4rpx;
+ background: #2195ff;
+}
+
+.businessSchedule {
+ font-size: 16px;
+ padding: 2vh;
+ margin: 2vh;
+ background-color: #fff;
+ box-shadow: 0px 6px 6px 0 rgba(80, 119, 170, 0.06);
+}
+
+.businessSchedule-top {
+ display: flex;
+ color: #333;
+ align-items: center;
+ padding-bottom: 1vh;
+ border-bottom: 1px solid #f2f2f2;
+}
+
+.businessSchedule-top-img {
+ width: 3vh;
+ height: 3vh;
+}
+
+.businessSchedule-top-title {
+ padding-left: 1vh;
+}
+
+.businessSchedule-top-status {
+ margin-left: auto;
+ display: flex;
+ justify-content: center;
+ box-shadow: 0px 4px 8px 0px rgba(136, 136, 136, 0.11);
+ padding: 1vh;
+ border-radius: 18px;
+ color: #fff;
+}
+
+.businessSchedule-center {
+ font-size: 14px;
+ display: flex;
+ padding: 1vh 0;
+ color: #333;
+}
+
+.businessSchedule-bottom {
+ display: flex;
+ font-size: 14px;
+ color: #999;
+}
+
+.loading {
+ padding: 10rpx;
+ text-align: center;
+}
+
+.loading:before {
+ display: inline-block;
+ margin-right: 5rpx;
+ vertical-align: middle;
+ content: '';
+ width: 40rpx;
+ height: 40rpx;
+ background-size: contain;
+ animation: rotate 1s linear infinite;
+}
+
+.loading.complete:before {
+ display: none;
+}
+
+.businessSchedule-load {
+ display: flex;
+ justify-content: center;
+ color: #999;
+ font-size: 14px;
+ margin-bottom: 4vh;
+}
--
Gitblit v1.8.0