Commit 683a0b92 authored by sujie@126.com's avatar sujie@126.com

dd

parent 036ba1ba
......@@ -57,7 +57,9 @@
"reviewclass",
"selectstudentlist",
"reviewdetail",
"classreviewindex"
"classreviewindex",
"teacherindex",
"classranklist"
]
},
{
......
// business/pages/classservice/classranklist.js
import {
formIdCreate,
rankrecord,
ranklike,
rankPoints
} from '../../../service/common.js';
import {
imagify,
LocalStorage
} from '../../../utilities/index.js';
var app = getApp();
Page({
/**
* 页面的初始数据
*/
data: {
imageRoot: app.globalData.imageRoot,
imageVersion: app.globalData.imageVersion,
page: 1,
perPage: 10,
hasmore: true,
emptyPage: false,
rankingType: 1,
rankingTab: [
{tabname: "打卡榜", rankingType: 1},
{tabname: "获赞榜", rankingType: 2},
{tabname: "积分榜", rankingType: 3},
],
timeType: 1,
tabnName: '总榜',
timeTab: [
{tabname: "总榜", timeType: 1},
{tabname: "本周", timeType: 2},
{tabname: "本日", timeType: 3}
],
timeSelectShow: false,
pointsRankingList: [],
pointsRankingTotal: 0,
likeRankingList: [],
likeRankingTotal: 0,
clockRankingList: [],
clockRankingTotal: 0,
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
const {
id,
from,
sid
} = options;
this.setData({
id,
from: from || 0,
sid
});
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
Object.assign(this.data,{
page: 1,
hasmore: true,
emptyPage: false,
pointsRankingList: [],
pointsRankingTotal: 0,
likeRankingList: [],
likeRankingTotal: 0,
clockRankingList: [],
clockRankingTotal: 0,
})
this.rankingListGet('init');
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
Object.assign(this.data,{
page: 1,
hasmore: true,
emptyPage: false,
pointsRankingList: [],
pointsRankingTotal: 0,
likeRankingList: [],
likeRankingTotal: 0,
clockRankingList: [],
clockRankingTotal: 0,
})
this.rankingListGet('up');
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
this.rankingListGet('down');
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
},
rankingStatusShift(e){
var that = this;
const {rankingtype} = e.currentTarget.dataset;
if(rankingtype==this.data.rankingType){
return
}
that.setData({
rankingType: rankingtype,
hasmore: true,
page: 1,
clockRankingList: [],
clockRankingTotal: 0,
likeRankingList: [],
likeRankingTotal: 0,
pointsRankingList: [],
pointsRankingTotal: 0,
}, () => {
that.rankingListGet('init')
})
},
// 排行榜
rankingListGet(type) {
const rankingType = this.data.rankingType;
switch (rankingType){
case 1:
this.getclockRankingList(type);
break;
case 2:
this.getLikeRankingList(type);
break;
case 3:
this.getPointsRankingList(type);
break;
}
},
//时间选择切换
toSelectTimeType(){
this.setData({
timeSelectShow: !this.data.timeSelectShow
})
},
sureSelectTimeType(e){
const {timeselect} = e.currentTarget.dataset;
this.setData({
timeType: timeselect.timeType,
tabnName: timeselect.tabname,
timeSelectShow: false,
hasmore: true,
page: 1,
clockRankingList: [],
clockRankingTotal: 0,
likeRankingList: [],
likeRankingTotal: 0,
pointsRankingList: [],
pointsRankingTotal: 0,
},()=>{
this.rankingListGet('init');
})
},
caculateArrLength(array) {
let _length = 0;
array.forEach(ele => {
_length = _length + ele.length;
})
return _length;
},
getLikeRankingList(type) {
const visitor = LocalStorage.getItem('visitor');
if (!this.data.hasmore) {
return;
}
if (this.data.listLoading) {
return
}
this.setData({
listLoading: true
})
ranklike({
page: this.data.lpage,
perPage: this.data.perPage,
class_id: this.data.id,
type: Number(this.data.timeType),
consumer_id: visitor && visitor.id
}).then((res) => {
const {
code,
data
} = res;
this.setData({
listLoading: false
})
if (code != 200) { // 失败的处理
} else {
if (data.total) {
this.setData({
likeRankingTotal: data.total
})
}
switch (type) {
case 'init': //页面进来第一次加载
this.setData({
likeRankingList: data.list || []
}, () => {
if (this.data.likeRankingTotal > this.data.likeRankingList.length) {
let page = this.data.page + 1;
this.setData({
page,
})
} else { // 没有更多了
this.setData({
hasmore: false
})
}
})
break;
case 'down': // 页面下拉刷新
this.setData({
likeRankingList: data.list || []
}, () => {
if (this.data.likeRankingTotal > this.data.likeRankingList.length) {
let page = this.data.page + 1;
this.setData({
page,
})
} else { // 没有更多了
this.setData({
hasmore: false
})
}
})
wx.stopPullDownRefresh();
break;
case 'up': // 页面上拉刷新
let list = this.data.likeRankingList;
let _list = list.concat(data.list);
this.setData({
likeRankingList: _list
// [`likeRankingList[${this.data.page - 1}]`]: data.list
}, () => {
if (this.data.likeRankingTotal > this.data.likeRankingList.length) {
let page = this.data.page + 1;
this.setData({
page,
})
} else { // 没有更多了
this.setData({
hasmore: false
})
}
})
break;
default:
break;
}
if (this.data.likeRankingList.length == 0) {
this.setData({
emptyPage: true
})
} else {
this.setData({
emptyPage: false
})
}
}
}).catch((e) => {
this.setData({
listLoading: false
})
})
},
getclockRankingList(type) {
const visitor = LocalStorage.getItem('visitor');
if (!this.data.hasmore) {
return;
}
if (this.data.istLoading) {
return
}
this.setData({
listLoading: true
})
rankrecord({
page: this.data.page,
perPage: this.data.perPage,
class_id: this.data.id,
type: Number(this.data.timeType),
consumer_id: visitor && visitor.id
}).then((res) => {
const {
code,
data
} = res;
this.setData({
listLoading: false
})
if (code != 200) { // 失败的处理
} else {
if (data.total) {
this.setData({
clockRankingTotal: data.total
})
}
switch (type) {
case 'init': //页面进来第一次加载
this.setData({
clockRankingList: data.list || []
}, () => {
if (this.data.clockRankingTotal > this.data.clockRankingList.length) {
let page = this.data.page + 1;
this.setData({
page,
})
} else { // 没有更多了
this.setData({
hasmore: false
})
}
})
break;
case 'down': // 页面下拉刷新
this.setData({
clockRankingList: data.list || []
}, () => {
if (this.data.clockRankingTotal > this.data.clockRankingList.length) {
let page = this.data.page + 1;
this.setData({
page,
})
} else { // 没有更多了
this.setData({
hasmore: false
})
}
})
wx.stopPullDownRefresh();
break;
case 'up': // 页面上拉刷新
let list = this.data.clockRankingList;
let _list = list.concat(data.list);
this.setData({
clockRankingList: _list
// [`clockRankingList[${this.data.page - 1}]`]: data.list
}, () => {
if (this.data.clockRankingTotal > this.data.clockRankingList.length) {
let page = this.data.page + 1;
this.setData({
page,
})
} else { // 没有更多了
this.setData({
hasmore: false
})
}
})
break;
default:
break;
}
if (this.data.clockRankingList.length == 0) {
this.setData({
emptyPage: true
})
} else {
this.setData({
emptyPage: false
})
}
}
}).catch((e) => {
this.setData({
listLoading: false
})
})
},
getPointsRankingList(type) {
const visitor = LocalStorage.getItem('visitor');
if (!this.data.hasmore) {
return;
}
if (this.data.listLoading) {
return
}
this.setData({
listLoading: true
})
// 积分排行榜接口 换
rankPoints({
page: this.data.page,
perPage: this.data.perPage,
school_id: this.data.sid,
type: Number(this.data.timeType),
consumer_id: visitor && visitor.id,
class_id: this.data.id
}).then((res) => {
const {
code,
data
} = res;
this.setData({
listLoading: false
})
if (code != 200) { // 失败的处理
} else {
if (data.total) {
this.setData({
pointsRankingTotal: data.total
})
}
switch (type) {
case 'init': //页面进来第一次加载
this.setData({
pointsRankingList: data.list || []
}, () => {
if (this.data.pointsRankingTotal > this.data.pointsRankingList.length) {
let page = this.data.page + 1;
this.setData({
page,
})
} else { // 没有更多了
this.setData({
hasmore: false
})
}
})
break;
case 'down': // 页面下拉刷新
this.setData({
pointsRankingList: data.list || []
}, () => {
if (this.data.pointsRankingTotal > this.data.pointsRankingList.length) {
let page = this.data.page + 1;
this.setData({
page,
})
} else { // 没有更多了
this.setData({
hasmore: false
})
}
})
wx.stopPullDownRefresh();
break;
case 'up': // 页面上拉刷新
let list = this.data.pointsRankingList;
let _list = list.concat(data.list);
this.setData({
pointsRankingList: _list
// [`pointsRankingList[${this.data.page - 1}]`]: data.list
}, () => {
if (this.data.pointsRankingTotal > this.data.pointsRankingList.length) {
let page = this.data.page + 1;
this.setData({
page,
})
} else { // 没有更多了
this.setData({
hasmore: false
})
}
})
break;
default:
break;
}
if (this.data.pointsRankingList.length == 0) {
this.setData({
emptyPage: true
})
} else {
this.setData({
emptyPage: false
})
}
console.log('积分列表',this.data.pointsRankingList)
}
}).catch((e) => {
this.setData({
listLoading: false
})
})
},
})
\ No newline at end of file
{
"navigationBarTitleText": "排行榜",
"usingComponents": {}
}
\ No newline at end of file
<!--business/pages/classservice/classranklist.wxml-->
<wxs src="../../../filter/index.wxs" module="filter" />
<view class="container">
<view class="content-topbox">
<view class="tab-box">
<view class="tab-item {{item.rankingType == rankingType?'active':''}}" data-rankingtype="{{item.rankingType}}" wx:for="{{rankingTab}}" bindtap="rankingStatusShift" wx:key="">
<view class="tab-itemname">{{item.tabname}}</view>
</view>
</view>
<view class="timeselect-box" bindtap="toSelectTimeType">
<view class="timeselect-type">{{tabnName}}</view>
<image class="icon-arr {{timeSelectShow ? 'up' : ''}}" src="{{imageRoot}}2b/common/real_triangle.png?{{imageVersion}}"></image>
</view>
<view class="timetype-box" hidden="{{!timeSelectShow}}">
<view class="type-item {{item.tabname == tabnName? 'active': ''}}" data-timeselect="{{item}}" wx:for="{{timeTab}}" wx:key="index" bindtap="sureSelectTimeType">{{item.tabname}}</view>
</view>
</view>
<view class="ranking-box" wx:if="{{rankingType == 1 && clockRankingTotal>0}}">
<view class="ranking-item" wx:for="{{clockRankingList}}" wx:key="{{index}}">
<view class="item-indexbox">
<image class="item-index icon" wx:if="{{index==0}}" src="{{imageRoot}}2b/common/ranking/num1.png?{{imageVersion}}"></image>
<image class="item-index icon" wx:if="{{index==1}}" src="{{imageRoot}}2b/common/ranking/num2.png?{{imageVersion}}"></image>
<image class="item-index icon" wx:if="{{index==2}}" src="{{imageRoot}}2b/common/ranking/num3.png?{{imageVersion}}"></image>
<view class="item-index" wx:if="{{index>2}}">{{index + 1}}</view>
</view>
<image class="item-avator" src="{{filter.imagify(item.avatar, 'image/resize,w_160/format,jpg')}}"></image>
<view class="item-contentbox">
<view class="item-name">{{item.nickname}}</view>
</view>
<view class="item-staticbox">
<view class="item-num">{{item.days}}</view>
<view class="item-unit">次</view>
</view>
</view>
</view>
<view class="ranking-box" wx:if="{{rankingType == 2 && likeRankingTotal>0}}">
<view class="ranking-item" wx:for="{{likeRankingList}}" wx:key="{{index}}">
<view class="item-indexbox">
<image class="item-index icon" wx:if="{{index==0}}" src="{{imageRoot}}2b/common/ranking/num1.png?{{imageVersion}}"></image>
<image class="item-index icon" wx:if="{{index==1}}" src="{{imageRoot}}2b/common/ranking/num2.png?{{imageVersion}}"></image>
<image class="item-index icon" wx:if="{{index==2}}" src="{{imageRoot}}2b/common/ranking/num3.png?{{imageVersion}}"></image>
<view class="item-index" wx:if="{{index>2}}">{{index + 1}}</view>
</view>
<image class="item-avator" src="{{filter.imagify(item.avatar, 'image/resize,w_160/format,jpg')}}"></image>
<view class="item-contentbox">
<view class="item-name">{{item.nickname}}</view>
</view>
<view class="item-staticbox">
<view class="item-num">{{item.like_count}}</view>
<view class="item-unit">赞</view>
</view>
</view>
</view>
<view class="ranking-box" wx:if="{{rankingType == 3 && pointsRankingTotal>0}}">
<view class="ranking-item" wx:for="{{pointsRankingList}}" wx:key="{{index}}">
<view class="item-indexbox">
<image class="item-index icon" wx:if="{{index==0}}" src="{{imageRoot}}2b/common/ranking/num1.png?{{imageVersion}}"></image>
<image class="item-index icon" wx:if="{{index==1}}" src="{{imageRoot}}2b/common/ranking/num2.png?{{imageVersion}}"></image>
<image class="item-index icon" wx:if="{{index==2}}" src="{{imageRoot}}2b/common/ranking/num3.png?{{imageVersion}}"></image>
<view class="item-index" wx:if="{{index>2}}">{{index + 1}}</view>
</view>
<image class="item-avator" src="{{filter.imagify(item.avatar, 'image/resize,w_160/format,jpg')}}"></image>
<view class="item-contentbox">
<view class="item-name">{{item.nickname}}</view>
</view>
<view class="item-staticbox">
<view class="item-num">{{item.sum_balance}}</view>
<view class="item-unit">分</view>
</view>
</view>
</view>
<view class="empty-content" wx:if="{{emptyPage}}">
<image class='empty-img' src='{{imageRoot}}2b/potentialcustomer/emptyimg.png?{{imageVersion}}'></image>
<view class="empty-text">暂无数据~</view>
</view>
<list-loading loading="{{listLoading}}"></list-loading>
<view class="has-nomore" wx:if="{{!hasmore && page>1}}">没有更多了</view>
</view>
.content-topbox{
height: 120rpx;
display: flex;
align-items: center;
justify-content: space-between;
padding: 0 24rpx;
position: relative;
box-shadow:0px 2rpx 16rpx 0px rgba(0, 0, 0, 0.1);
}
/* tab操作按钮 */
.tab-box{
display: flex;
}
.tab-box .tab-item{
font-size:26px;
font-family:PingFang SC;
font-weight:400;
color:rgba(0,0,0,1);
line-height:48px;
opacity:0.7;
margin-right: 50rpx;
}
.tab-box .tab-item.active{
font-size: 36rpx;
opacity: 1;
font-weight: bold;
/* background: #65B8F4; */
}
.tab-box .tab-item:last-of-type{
border-right: 0
}
.tab-box .tab-item .tab-itemname{
font-size: 26rpx;
}
.tab-box .tab-item.active .tab-itemname{
font-size: 36rpx;
}
.timeselect-box{
position: absolute;
right: 24rpx;
top: 50%;
transform: translateY(-50%);
display: flex;
align-items: center;
}
.timeselect-box .timeselect-type{
font-size: 28rpx;
color: #65B8F4;
padding-right: 10rpx;
}
.timeselect-box .icon-arr{
width: 11rpx;
height: 6rpx;
transition: all .2s;
}
.timeselect-box .icon-arr.up{
transform: rotate(180deg)
}
.timetype-box{
position: absolute;
right: 24rpx;
top: 107rpx;
width: 180rpx;
background:#fff;
box-shadow: 0 0 10px 0 rgba(0, 0, 0, .1);
border-radius: 10rpx;
z-index: 99;
}
.timetype-box .type-item{
width: 100%;
height: 66rpx;
display: flex;
align-items: center;
justify-content: center;
font-size: 26rpx;
color: rgba(0,0,0,.8);
position: relative;
}
.timetype-box .type-item::after{
content: '';
width: 100%;
height: 1px;
background: rgba(32,32,32,.05);
position: absolute;
bottom: 0;
left: 0;
}
.timetype-box .type-item:last-of-type::after{
display: none;
}
.timetype-box .type-item.active{
color: #65B8F4;
}
.ranking-box{
width: 100%;
position: relative;
padding-top: 16rpx;
}
.ranking-box::before{
content: '';
width: 100%;
height: 1px;
background: rgba(0,0,0,.05);
position: absolute;
left: 0;
top: 0;
transform: scaleY(.5);
}
.ranking-box .ranking-item{
display: flex;
align-items: center;
padding: 16rpx 24rpx;
position: relative;
}
.ranking-box .ranking-item::after{
content: '';
width: 100%;
height: 1px;
background: rgba(0,0,0,.05);
position: absolute;
left: 0;
bottom: 0;
transform: scaleY(.5);
}
.ranking-box .ranking-item{
}
.item-indexbox{
display: block;
width: 67rpx;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
}
.item-index{
font-size: 26rpx;
color: #959595;
font-weight: bold;
}
.item-index.icon{
width: 48rpx;
height: 56rpx;
}
.item-avator{
width: 66rpx;
height: 66rpx;
border-radius: 50%;
margin: 0 30rpx 0 40rpx;
}
.item-contentbox{
flex: 1;
display: flex;
flex-direction: column;
justify-content: center;
/* align-items: center; */
}
.item-contentbox .item-name{
width: 226rpx;
font-size: 24rpx;
color: #000;
}
.item-staticbox{
display: flex;
align-items: center;
color: #959595;
}
.item-staticbox .item-num{
font-size: 26rpx;
}
.item-staticbox .item-unit{
font-size: 22rpx;
padding-left: 15rpx;
}
.empty-content {
position: relative;
text-align: center;
display: flex;
flex-direction: column;
align-items: center;
line-height: 45rpx;
padding: 100rpx 0 40rpx;
}
.empty-content .empty-img {
width: 263rpx;
height: 219rpx;
}
.empty-content .empty-text {
font-size: 24rpx;
color: rgba(0, 0, 0, 0.4);
}
.empty-content .empty-text1{
font-size: 26rpx;
color: rgba(0, 0, 0, 0.6);
}
.has-nomore{
font-size: 26rpx;
color: #9C9C9D;
padding: 75rpx 0;
text-align: center;
}
\ No newline at end of file
// business/pages/deskcenter/index.js
import {
LocalStorage
} from '../../../utilities/index.js';
import {
getMemberMe,
formIdCreate
} from '../../../service/common.js';
import apis from '../../../constants/api.js';
import {
todocallGet,
statisticalGet
} from '../../../service/business/classservice.js'
var app = getApp();
Page({
data: {
titleBarHeight: app.globalData.titleBarHeight,
statusBarHeight: app.globalData.statusBarHeight,
localImageRoot: '../../../images/',
imageRoot: app.globalData.imageRoot,
imageVersion: app.globalData.imageVersion,
schoolTotal:0,
selectSchoolData:{},
sid: 0,
my: 1,
memberChange: false,
accountExpired:false,
tabAct: 1,
allcount: 100,
windowWidth: app.globalData.windowWidth,
windowHeight: app.globalData.windowHeight,
total:0,
todocallTotal:0,
modalshow: false,
modelHideClass: false,
guideDailogShow: false,
guideIndex: 1,
statisticalData:''
},
onLoad: function (options) {
const {sid, from} = options;
this.setData({
sid: sid || 0,
from,
guideDailogShow: from && from == 'onekeydeployment' ? true : false,
})
},
onShow: function () {
this.getMemberMeInfo();
app.watch(this.watchBack,this)
this.todocallGet();
this.statisticalGet();
if(this.data.modalshow){
this.setData({
modelHideClass: true
})
setTimeout(() => {
this.setData({
modalshow: false,
modelHideClass: false
})
}, 200)
}
},
onReady(){
},
onPageScroll(e){
},
getMemberMeInfo(){
let that = this;
getMemberMe({
school_id: that.data.sid,
show_assign_class_status: 1
}).then(res=>{
if (res.code == 200) {
LocalStorage.setItem('memberMeHasClass',res.data.assign_class_status);
that.setData({
memberChange: res.data.assign_class_status
})
}
})
},
statisticalGet(){
statisticalGet({
school_id:this.data.sid,
my: this.data.my
}).then((res)=>{
const {code,data} = res;
if(code==200){
this.setData({
statisticalData:data
})
}
}).catch(() => {})
},
todocallGet(){
todocallGet({
school_id: this.data.sid,
my: this.data.my
}).then((res)=>{
const {code,data} = res;
if(code == 200){
this.setData({
todocallTotal: data.total
})
}
}).catch(() => {})
},
// 预警处理
gotodolist(){
wx.navigateTo({
url: `/business/pages/classservice/todolist?sid=${this.data.sid}`
})
},
// 发布 弹窗
bindAdd(){
this.setData({
modalshow: true
})
},
hidemodal() {
this.setData({
modelHideClass: true
})
setTimeout(() => {
this.setData({
modalshow: false,
modelHideClass: false
})
}, 200)
},
// 打卡
goClocklist(){
wx.navigateTo({
url: `/business/pages/deskcenter/clocklist?sid=${this.data.sid}`
})
},
goPointsMgt(){
wx.navigateTo({
url: `/business/pages/scoremgt/index?sid=${this.data.sid}`
})
},
// 作业点评
goNoComment () {
wx.navigateTo({
url: `/business/pages/nocomment/index?sid=${this.data.sid}`
})
},
goclasslist(){
wx.navigateTo({
url: `/business/pages/classservice/classlist?sid=${this.data.sid}&my=${this.data.my}`,
})
},
goClassreviewindex(){
wx.navigateTo({
url: `/business/pages/classservice/classreviewindex?sid=${this.data.sid}`
})
},
// 发布打卡
addTheme(e){
const {createtype} = e.currentTarget.dataset;
let url = '';
switch (Number(createtype)){
case 1:
url = `/business/pages/themeeditor/index?id=0&tid=0&sid=${this.data.sid}`;
break;
case 2:
url = `/business/pages/calendarthemeeditor/index?id=0&tid=0&sid=${this.data.sid}`;
break;
case 3:
url = `/business/pages/themeeditorlock/index?id=0&tid=0&sid=${this.data.sid}`;
break;
default:
break;
}
wx.navigateTo({
url: `${url}`
})
},
gotodotasks(){
wx.navigateTo({
url: `/business/pages/todotasks/index?sid=${this.data.sid}`
})
},
goClassreviewindex(){
wx.navigateTo({
url: `/business/pages/classservice/classreviewindex?sid=${this.data.sid}`
})
},
// 发布课堂瞬间
toReleaseMoment(){
wx.navigateTo({
url: `/business/pages/websiteindex/highlightsedit?sid=${this.data.sid}`
})
},
// 发布机构新鲜事
toReleaseRefresh() {
wx.navigateTo({
url: `/business/pages/websiteindex/newsedit?sid=${this.data.sid}`
})
},
formIdCreate(e) {
const { formId } = e.detail;
formIdCreate({
formId
})
},
watchBack(name,that){
that.setData({
accountExpired: name
})
},
nextGuide(e){
const { index } = e.currentTarget.dataset;
if(index == 5){
this.setData({
guideDailogShow: false
})
return
}
this.setData({
guideIndex: index+1
})
}
})
\ No newline at end of file
{
"navigationBarBackgroundColor": "#FFD146",
"navigationBarTextStyle": "white",
"navigationStyle": "custom",
"backgroundColor": "#fff",
"backgroundTextStyle": "dark",
"usingComponents": {
"btabbar": "../../../components/btabbar",
"expiredTip": "../../components/expiredTip"
}
}
\ No newline at end of file
<!--business/pages/deskcenter/index.wxml-->
<view class="nav-header" style="padding-top: {{statusBarHeight}}px;">
<view class="nav-custombox" style="height: {{titleBarHeight}}px;">
<view class="menu-box">
<view class="title">{{selectSchoolData.title}}</view>
</view>
</view>
</view>
<view class="container {{modalshow?'containerDisabledScroll':''}}" style="padding-top: {{statusBarHeight+titleBarHeight}}px">
<view class="top-nav" id="get-height1">
<view class="nav-item">
<view class="item-num">{{statisticalData.expend_count || 0}}</view>
<view class="item-title">课时</view>
</view>
<view class="nav-item">
<view class="item-num">{{statisticalData.call_count || 0}}</view>
<view class="item-title">课次</view>
</view>
</view>
<view class="container-padding">
<view class="gray-wrap">
<view class="section-wrap" id="get-height2" wx:if="{{todocallTotal>0}}">
<view class="section section-warn" bindtap="gotodolist">
<view class="title-l">
<image class="icon-warn" src="{{imageRoot}}2b/deskcenter2/icon_warn.png?{{imageVersion}}"/>
<view class="warn-title">有 <text class="warn-num">{{todocallTotal}}</text> 个课次超时未点名</view>
</view>
<view class="title-r">
去处理<image class="icon-arr" src="{{imageRoot}}2b/organizationalmgt/right.png?{{imageVersion}}"/>
</view>
</view>
</view>
<view class="section-wrap" id="get-height3">
<view class="section section-management">
<view class="section-title">
<!-- <image class="title-icon" src="{{imageRoot}}2b/deskcenter2/icon_add.png?{{imageRoot}}"/> -->
<view class="title-text">常用功能</view>
<!-- <view class="subtitle-text">(课时)</view> -->
</view>
<view class="section-innerbox">
<view class="item" bindtap="bindAdd">
<form report-submit="true" bindsubmit="formIdCreate" class="createidform">
<button form-type="submit" class="createidbutton">生成form</button>
</form>
<image class="item-icon" src="{{imageRoot}}2b/deskcenter2/icon_add.png?{{imageRoot}}"/>
<view class="item-title">发布</view>
</view>
<view class="item" bindtap="goClassreviewindex">
<form report-submit="true" bindsubmit="formIdCreate" class="createidform">
<button form-type="submit" class="createidbutton">生成form</button>
</form>
<image class="item-icon" src="{{imageRoot}}2b/deskcenter2/icon_review.png?{{imageRoot}}"/>
<view class="item-title">课堂点评</view>
</view>
<view class="item" bindtap="goNoComment">
<form report-submit="true" bindsubmit="formIdCreate" class="createidform">
<button form-type="submit" class="createidbutton">生成form</button>
</form>
<image class="item-icon" src="{{localImageRoot}}2b/classervice/homewor-comments.png?{{imageRoot}}"/>
<view class="item-title">作业点评</view>
</view>
<view class="item" bindtap="goPointsMgt">
<form report-submit="true" bindsubmit="formIdCreate" class="createidform">
<button form-type="submit" class="createidbutton">生成form</button>
</form>
<image class="item-icon" src="{{imageRoot}}2b/deskcenter2/icon_points.png?{{imageRoot}}"/>
<view class="item-title">积分</view>
</view>
<view class="item" bindtap="goClocklist">
<form report-submit="true" bindsubmit="formIdCreate" class="createidform">
<button form-type="submit" class="createidbutton">生成form</button>
</form>
<image class="item-icon" src="{{imageRoot}}2b/deskcenter2/icon_clock.png?{{imageRoot}}"/>
<view class="item-title">打卡</view>
</view>
<view class="item" bindtap="goclasslist">
<form report-submit="true" bindsubmit="formIdCreate" class="createidform">
<button form-type="submit" class="createidbutton">生成form</button>
</form>
<image class="item-icon" src="{{localImageRoot}}2b/classervice/myclass-icon.png?{{imageRoot}}"/>
<view class="item-title">班级</view>
</view>
<view class="item" bindtap="goClassreviewindex">
<form report-submit="true" bindsubmit="formIdCreate" class="createidform">
<button form-type="submit" class="createidbutton">生成form</button>
</form>
<image class="item-icon" src="{{localImageRoot}}2b/classervice/school-timetable.png?{{imageRoot}}"/>
<view class="item-title">课表</view>
</view>
</view>
</view>
</view>
</view>
<view class="recently-class">
<view class="title">
<view class="left"><image class="recently-clock" src="{{localImageRoot}}2b/classervice/recently-clock.png?{{imageRoot}}" mode="aspectFit|aspectFill|widthFix" />最近关注的班级</view>
<view class="right" bindtap="goclasslist">更多班级 <image class="icon-arr" src="{{imageRoot}}2b/organizationalmgt/right.png?{{imageVersion}}"/></view>
</view>
<view class="content-box">
<view class="class-item">
<view class="icon"></view>
<view class="name">美术课程周二下午3:00班级</view>
</view>
</view>
<view class="wanted-btn">我要点名</view>
</view>
</view>
<view class="modal {{modelHideClass? 'hide': ''}}" hidden="{{!modalshow}}">
<view class="mask" bindtap="hidemodal"></view>
<view class="modal-content">
<view class="part-box">
<view class="part-title">发布任务</view>
<view class="part-list">
<view class="part-item bg-FFA922" bindtap="addTheme" data-createtype="1">
<image class="item-icon" src="{{imageRoot}}2b/deskcenter2/add_zuoye.png?{{imageRoot}}"/>
<view class="item-title-box">
<view class="item-title">作业打卡</view>
<view class="item-desc">每日家庭作业</view>
</view>
<form report-submit="true" bindsubmit="formIdCreate" class="createidform">
<button form-type="submit" class="createidbutton">生成form</button>
</form>
</view>
<view class="part-item bg-2AACFA" bindtap="addTheme" data-createtype="2">
<image class="item-icon" src="{{imageRoot}}2b/deskcenter2/add_rili.png?{{imageRoot}}"/>
<view class="item-title-box">
<view class="item-title">日历打卡</view>
<view class="item-desc">养成学习习惯</view>
</view>
</view>
<view class="part-item bg-24CCA9" bindtap="addTheme" data-createtype="3">
<image class="item-icon" src="{{imageRoot}}2b/deskcenter2/add_chuang.png?{{imageRoot}}"/>
<view class="item-title-box">
<view class="item-title">闯关打卡</view>
<view class="item-desc">每日家庭作业</view>
</view>
<form report-submit="true" bindsubmit="formIdCreate" class="createidform">
<button form-type="submit" class="createidbutton">生成form</button>
</form>
</view>
</view>
</view>
<view class="part-box">
<view class="part-title">机构动态</view>
<view class="part-list">
<view class="part-item bg-9758FF" bindtap="toReleaseMoment">
<image class="item-icon" src="{{imageRoot}}2b/deskcenter2/add_classroommoment.png?{{imageRoot}}"/>
<view class="item-title-box">
<view class="item-title">课堂瞬间</view>
<view class="item-desc">记录班级美好瞬间</view>
</view>
<form report-submit="true" bindsubmit="formIdCreate" class="createidform">
<button form-type="submit" class="createidbutton">生成form</button>
</form>
</view>
<view class="part-item bg-FA5053" bindtap="toReleaseRefresh">
<image class="item-icon" src="{{imageRoot}}2b/deskcenter2/add_orgnews.png?{{imageRoot}}"/>
<view class="item-title-box">
<view class="item-title">机构新鲜事</view>
<view class="item-desc">机构日常活动</view>
</view>
<form report-submit="true" bindsubmit="formIdCreate" class="createidform">
<button form-type="submit" class="createidbutton">生成form</button>
</form>
</view>
</view>
</view>
<view class="part-box">
<view class="part-title">点评</view>
<view class="part-list">
<view class="part-item bg-6AAD22" bindtap="goClassreviewindex">
<image class="item-icon" src="{{imageRoot}}2b/deskcenter2/add_classreview.png?{{imageRoot}}"/>
<view class="item-title-box">
<view class="item-title">课堂点评</view>
<view class="item-desc">点评学员课堂作品</view>
</view>
<form report-submit="true" bindsubmit="formIdCreate" class="createidform">
<button form-type="submit" class="createidbutton">生成form</button>
</form>
</view>
</view>
</view>
<view class="btn-cancel" bindtap="hidemodal">取消</view>
</view>
</view>
<btabbar
sid="{{sid}}"
current="workbench"
memberChange="{{memberChange}}"
>
</btabbar>
</view>
<expiredTip wx:if="{{accountExpired}}"/>
<!-- <view class="guide-dailog" wx:if="{{guideDailogShow}}">
<view class="guide-step guide-step1" wx:if="{{guideIndex == 1}}">
<view class="guide-text" >
<view class="left" >
<view class="line" style="padding-bottom: 30rpx;">工作台(日常管理、发布任务 )</view>
<view class="line">我(账号管理、帮助中心)</view>
</view>
<view class="line-1-box" ></view>
<view class="sure-btn" data-index="{{1}}" bindtap="nextGuide">好的</view>
</view>
<view class="guide-line">
<view class="part1"></view>
<view class="part2"></view>
</view>
<view class="guide-content" >
<view class="tab-item" >
<view class="tab-iamge" >
<image class="class" src="../../../images/btabbar/workbench.png" bindload="" binderror=""></image>
</view>
<view class="tab-text" >工作台</view>
</view>
<view class="tab-item" >
<view class="tab-iamge" >
<image class="class" src="../../../images/btabbar/class.png" bindload="" binderror=""></image>
</view>
<view class="tab-text" >课务</view>
</view>
<view class="tab-item" >
<view class="tab-iamge" >
<image class="class" src="../../../images/btabbar/ucenter.png" bindload="" binderror=""></image>
</view>
<view class="tab-text" >我</view>
</view>
</view>
</view>
<view class="guide-step guide-step2" wx:if="{{guideIndex == 2}}" style="top: {{(statusBarHeight+titleBarHeight)*2}}rpx">
<view class="guide-content" >
<view class="tab-item" >
<view class="tab-num" >100</view>
<view class="tab-text" >今日访客</view>
</view>
<view class="tab-item" >
<view class="tab-num" >100</view>
<view class="tab-text" >今日新增学员</view>
</view>
<view class="tab-item" >
<view class="tab-num" >100</view>
<view class="tab-text" >待消课时</view>
</view>
</view>
<view class="guide-line">
<view class="part2"></view>
<view class="part1"></view>
</view>
<view class="guide-text" >
<view class="left" >
<view class="line" style="padding-bottom: 30rpx;">多少人访问、多少个新增学员</view>
<view class="line">还有多少课时消课,这里查看</view>
</view>
<view class="line-1-box" ></view>
<view class="sure-btn" data-index="{{2}}" bindtap="nextGuide">好的</view>
</view>
</view>
<view class="guide-step guide-step3" wx:if="{{guideIndex == 3}}" style="top: {{(statusBarHeight+titleBarHeight+60)*2}}rpx">
<view class="guide-content" >
<view class="section section-warn" bindtap="gotodolist">
<view class="title-l">
<image class="icon-warn" src="{{imageRoot}}2b/deskcenter2/icon_warn.png?{{imageVersion}}"/>
<view class="warn-title">有 <view class="warn-num">{{todocallTotal || 10}}</view> 个课次超时未点名</view>
</view>
<view class="title-r">
去处理<image class="icon-arr" src="{{imageRoot}}2b/organizationalmgt/right.png?{{imageVersion}}"/>
</view>
</view>
</view>
<view class="guide-line">
<view class="part2"></view>
<view class="part1"></view>
</view>
<view class="guide-text" >
<view class="left" >
<view class="line" style="padding-bottom: 30rpx;">未点名的课次在这里,日常关</view>
<view class="line">注检查不能少</view>
</view>
<view class="line-1-box" ></view>
<view class="sure-btn" data-index="{{3}}" bindtap="nextGuide">好的</view>
</view>
</view>
<view class="guide-step guide-step4" wx:if="{{guideIndex == 4}}" style="top: {{(statusBarHeight+titleBarHeight+110)*2}}rpx">
<view class="guide-content" >
<view class="item" >
<image class="item-icon" src="{{imageRoot}}2b/deskcenter2/icon_add.png?{{imageRoot}}"/>
<view class="item-title">发布</view>
</view>
<view class="item">
<image class="item-icon" src="{{imageRoot}}2b/deskcenter2/icon_clock.png?{{imageRoot}}"/>
<view class="item-title">打卡</view>
</view>
<view class="item">
<image class="item-icon" src="{{imageRoot}}2b/deskcenter2/icon_review.png?{{imageRoot}}"/>
<view class="item-title">课堂点评</view>
</view>
<view class="item" >
<image class="item-icon" src="{{imageRoot}}2b/deskcenter2/icon_classservice.png?{{imageRoot}}"/>
<view class="item-title">教务</view>
</view>
<view class="item" >
<image class="item-icon" src="{{imageRoot}}2b/deskcenter2/icon_signup.png?{{imageRoot}}"/>
<view class="item-title">报名</view>
</view>
</view>
<view class="guide-line">
<view class="part2"></view>
<view class="part1"></view>
</view>
<view class="guide-text" >
<view class="left" >
<view class="line" style="padding-bottom: 30rpx;">在这里发布动态、打卡、课堂</view>
<view class="line">点评、教务管理、新学生报名</view>
</view>
<view class="line-1-box" ></view>
<view class="sure-btn" data-index="{{4}}" bindtap="nextGuide">好的</view>
</view>
</view>
<view class="guide-step guide-step4 guide-step5" wx:if="{{guideIndex == 5}}" style="top: {{(statusBarHeight+titleBarHeight+180)*2}}rpx">
<view class="guide-content" >
<view class="item" >
<image class="item-icon" src="{{imageRoot}}2b/deskcenter2/icon_student.png?{{imageRoot}}"/>
<view class="item-title">学员</view>
</view>
<view class="item">
<image class="item-icon" src="{{imageRoot}}2b/deskcenter2/icon_potentialcustomer.png?{{imageRoot}}"/>
<view class="item-title">潜客</view>
</view>
<view class="item" >
<image class="item-icon" src="{{imageRoot}}2b/deskcenter2/icon_points.png?{{imageRoot}}"/>
<view class="item-title">积分</view>
</view>
<view class="item" >
<image class="item-icon" src="{{imageRoot}}2b/deskcenter2/icon_website.png?{{imageRoot}}"/>
<view class="item-title">微官网</view>
</view>
</view>
<view class="guide-line">
<view class="part2"></view>
<view class="part1"></view>
</view>
<view class="guide-text" >
<view class="left" >
<view class="line" style="padding-bottom: 30rpx;">在这里打造家校个性化服务,</view>
<view class="line">展示个性化校区</view>
</view>
<view class="line-1-box" ></view>
<view class="sure-btn" data-index="{{5}}" bindtap="nextGuide">好的</view>
</view>
</view>
</view> -->
/* business/pages/deskcenter/index.wxss */
page{
/* background: #F2F2F2; */
height: 100%;
}
.nav-header{
width: 100%;
position: fixed;
top: 0;
left: 0;
background: #35BAFD;
z-index: 99
}
.nav-custombox{
height: 100%;
position: relative;
width: 100%;
}
.nav-custombox .message{
width: 60rpx;
height: 60rpx;
position: absolute;
left: 20rpx;
top: 50%;
transform: translateY(-50%);
}
.nav-custombox .message .red-dot{
position: absolute;
top: -7rpx;
right: -7rpx;
padding: 0 8rpx;
height: 30rpx;
min-width: 30rpx;
background:rgba(255,48,48,1);
border-radius: 15rpx;
font-size: 20rpx;
font-weight: 500;
color: #fff;
display: flex;
align-items: center;
justify-content: center;
border: 3rpx solid rgba(255,255,255,1);
}
.nav-custombox .message .icon{
width: 60rpx;
height: 60rpx;
}
.nav-custombox .menu-box{
width: 500rpx;
display: flex;
align-items: center;
justify-content: center;
height: 100%;
position: absolute;
left: 50%;
transform: translateX(-50%);
}
.nav-custombox .menu-box .title{
max-width: 400rpx;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
color: #fff;
}
.nav-custombox .menu-box .arrowwhite {
width: 28rpx;
height: 16rpx;
margin-left: 12rpx;
transition: all 0.1s;
}
.nav-custombox .menu-box .arrowwhite.down {
transform: rotate(180deg);
}
.top-nav{
width: 100%;
background: #35BAFD;
display: flex;
padding: 28rpx 0 86rpx;
}
.top-nav .nav-item{
flex: 1;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
color: #fff;
line-height: 1;
}
.top-nav .nav-item .item-num{
font-size: 34rpx;
font-weight: bold;
}
.top-nav .nav-item .item-title{
font-size: 24rpx;
padding-top: 29rpx;
}
.page-tabbox{
display: flex;
align-items: center;
padding: 8rpx 0 32rpx;
}
.page-tabbox .tab-item{
width: 164rpx;
height: 56rpx;
background: rgba(53,186,253,1);
border-radius: 28rpx;
display: flex;
align-items: center;
justify-content: center;
font-size: 28rpx;
color: #fff;
font-weight: 500;
}
.container{
padding-bottom: 120rpx;
}
.container-padding{
/* padding: 0 24rpx; */
/* position: relative;
top: -60rpx; */
}
.gray-wrap{
/* position: relative;
top: -60rpx; */
background:rgba(242,242,242,1);
}
.section-wrap{
padding: 0 24rpx;
margin-bottom: 24rpx;
position: relative;
top: -60rpx;
}
.section-wrap:last-of-type{
margin-right: 0;
}
.section{
background: #fff;
border-radius: 20rpx;
padding: 32rpx 24rpx;
line-height: 1;
position: relative;
}
.section-warn{
height: 100rpx;
padding: 0 24rpx;
display: flex;
align-items: center;
justify-content: space-between;
}
.section-warn .title-l{
display: flex;
align-items: center;
}
.section-warn .title-l .icon-warn{
width: 63rpx;
height: 31rpx;
position: relative;
margin-right: 28rpx;
}
.section-warn .title-l .icon-warn::after{
content: '';
width: 1px;
height: 30rpx;
background: rgba(0,0,0,.05);
position: absolute;
top: 50%;
right: 23rpx;
transform: translateY(-50%);
}
.section-warn .title-l .warn-title{
font-size: 28rpx;
color: #3D4045;
font-weight: 500;
display: flex;
}
.section-warn .title-l .warn-title .warn-num{
color: #FFA032;
}
.section-warn .title-r{
display: flex;
align-items: center;
font-size: 24rpx;
color: #8B8B8B;
}
.section-warn .title-r .icon-arr{
width: 11rpx;
height: 20rpx;
margin-left: 17rpx;
}
.section .section-title{
display: flex;
align-items: center;
}
.section .section-title .title-icon{
width: 32rpx;
height: 32rpx;
margin-right: 20rpx;
}
.section .section-title .title-text{
font-size: 28rpx;
color: #3D3D3D;
font-weight: bold;
}
.section .section-title .subtitle-text{
font-size: 24rpx;
color: rgba(47,47,47,.6);
}
.section .section-innerbox{
display: flex;
flex-wrap: wrap;
padding-top: 36rpx;
}
.section .section-innerbox .item{
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
width: 95rpx;
margin-right: 45rpx;
position: relative;
padding: 12rpx 0 9rpx;
}
.section .section-innerbox .item:nth-child(5n){
margin-right: 0;
}
.section .section-innerbox .item .item-icon{
width: 77rpx;
height: 77rpx;
}
.section .section-innerbox .item .item-title{
font-size: 22rpx;
color: #515558;
font-weight: 500;
padding: 14rpx 0 4rpx;
}
/* src/pages/datacenter/index.wxss */
.canvas{
width: 100%;
height: 200px;
}
.ringcanvas{
width: 100%;
height: 200px;
position: absoulte;
top: 57%;
left: 50%;
transform: translate(-50%,-50%);
}
.column-chart-box{}
.column-chart-box .tab-box{
width: 136rpx;
height: 50rpx;
border: 1px solid rgba(101,184,244,1);
border-radius: 10rpx;
display: flex;
position: absolute;
right: 36rpx;
top: 23rpx;
}
.column-chart-box .tab-box .tab-item{
flex: 1;
display: flex;
align-items: center;
justify-content: center;
height:100%;
font-size: 26rpx;
color: #65B8F4;
}
.column-chart-box .tab-box .tab-act{
background: #65B8F4;
color: #fff;
}
.column-chart-box .chart-box{
margin-top: 30rpx;
height: 200px;
/* 为了隐藏canvas占位 */
}
.column-chart-box .count-box{}
.column-chart-box .count-box .name{
font-size:26rpx;
font-family:PingFang-SC-Regular;
font-weight:400;
color:rgba(90,90,90,1);
line-height: 1;
}
.column-chart-box .count-box .count{
font-size:28rpx;
font-family:PingFang-SC-Bold;
font-weight:bold;
color:rgba(0,0,0,1);
line-height: 1;
padding-left: 28rpx;
}
.ring-chart-box .title{
/* padding: 44rpx 24rpx 0 24rpx; */
}
.ring-chart-box .title .small{
font-size:24rpx;
font-family:PingFang-SC-Regular;
font-weight:400;
color:rgba(47,47,47,.6);
line-height:1;
}
.ring-chart-box .title .bold {
font-family:PingFang-SC-Bold;
font-weight:bold;
color:rgba(47,47,47,1);
line-height:1;
font-size:28rpx;
}
.ring-chart-box .chart-box{
display: flex;
position: relative;
}
.ring-chart-box .chart-box .chart-item{
flex: 1;
/* overflow: hidden; */
max-width: 33.33%;
padding: 20rpx 0;
}
.ring-chart-box .chart-box .chart-item .canvas-box{
position: relative;
height: 85px;
/* margin-top: -120rpx; */
}
.ring-chart-box .chart-box .chart-item .canvas-box::after{
content: '';
width: 140rpx;
height: 140rpx;
border: 1px solid rgba(255,185,122,1);
border-radius: 50%;
position: absolute;
top: 43%;
left: 50%;
transform: translate(-50%,-50%);
}
.content-box{
position: relative;
/* margin-top: -120rpx; */
}
.ring-chart-box .chart-box .chart-item .name{
font-size: 24rpx;
font-family:PingFang-SC-Regular;
font-weight:400;
color:rgba(90,90,90,1);
line-height: 1;
text-align: center;
overflow: hidden;
text-overflow:ellipsis;
white-space: nowrap;
}
.ring-chart-box .chart-box .chart-item .count{
font-size:24rpx;
font-family:PingFang-SC-Bold;
font-weight:bold;
color:rgba(0,0,0,1);
line-height:1;
padding-top: 18rpx;
text-align: center;
}
.empty-content {
padding: 100rpx 0;
display: flex;
flex-direction: column;
align-items: center;
line-height: 45rpx;
}
.empty-content .empty-text {
font-size: 26rpx;
color: rgba(0, 0, 0, 0.6);
}
@keyframes modalshow {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
@keyframes modalhide {
from {
opacity: 1;
}
to {
opacity: 0;
}
}
@keyframes modalmoveup {
from {
transform: translateY(100%);
}
to {
transform: translateY(0%);
}
}
@keyframes modalmovedown {
from {
transform: translateY(0);
}
to {
transform: translateY(100%);
}
}
/* 发布弹框 */
.modal{
position: fixed;
width: 100%;
height: 100%;
background: rgba(0,0,0,.5);
top: 0;
left: 0;
z-index: 200;
line-height: 1;
animation: modalshow 0.2s linear;
}
.modal.hide{
animation: modalhide 0.2s linear forwards;
}
.modal .mask{
position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
}
.modal .modal-content{
position: fixed;
width: 100%;
left: 0;
bottom: 0;
background: #fff;
border-radius: 30rpx 30rpx 0 0;
z-index: 201;
padding-top: 10rpx;
animation: modalmoveup 0.2s linear forwards;
}
.modal.hide .modal-content{
animation: modalmovedown 0.2s linear forwards;
}
.modal .modal-content .part-box .part-title{
font-size: 26rpx;
color: #3D3D3D;
font-weight: bold;
padding: 40rpx 24rpx 0 24rpx;
}
.modal .modal-content .part-box .part-list{
display: flex;
flex-wrap: wrap;
padding: 0 24rpx;
}
.modal .modal-content .part-box .part-list .part-item{
display: flex;
align-items: center;
width: 340rpx;
height: 120rpx;
padding: 19rpx;
box-sizing: border-box;
position: relative;
margin: 20rpx 22rpx 0 0;
border-radius: 20rpx;
}
.modal .modal-content .part-box .part-list .part-item:nth-child(2n){
margin-right: 0;
}
.modal .modal-content .part-box .part-list .part-item .item-icon{
width: 82rpx;
height: 82rpx;
}
.modal .modal-content .part-box .part-list .part-item .item-title-box{
color: #fff;
padding-left: 21rpx;
}
.modal .modal-content .part-box .part-list .part-item .item-title-box .item-title{
font-size: 26rpx;
font-weight: bold;
}
.modal .modal-content .part-box .part-list .part-item .item-title-box .item-desc{
font-size: 22rpx;
font-weight: 500;
padding-top: 19rpx;
opacity: .7;
}
.modal .modal-content .btn-cancel{
width: 100%;
height: 100rpx;
display: flex;
align-items: center;
justify-content: center;
font-size: 34rpx;
color: #5B5B5B;
font-weight: 500;
position: relative;
margin-top: 35rpx;
}
.modal .modal-content .btn-cancel::before{
content: '';
width: 100%;
height: 1px;
background: rgba(0,0,0,.1);
position: absolute;
left: 0;
top: 0;
}
.bg-FFA922{
background: #FFA922;
}
.bg-2AACFA{
background: #2AACFA;
}
.bg-24CCA9{
background: #24CCA9;
}
.bg-9758FF{
background: #9758FF;
}
.bg-FA5053{
background: #FA5053;
}
.bg-6AAD22{
background: #6AAD22;
}
cover-view{
line-height: 1;
}
.recently-class{
width: 100%;
background: #fff;
position: relative;
top: -40rpx;
}
.recently-class .title{
display: flex;
justify-content: space-between;
align-items: center;
padding: 30rpx 24rpx 26rpx 26rpx;
}
.recently-class .title .left{
font-size:30rpx;
font-family:PingFang SC;
font-weight:bold;
color:rgba(61,61,61,1);
}
.recently-class .title .left image{
width: 32rpx;
height: 32rpx;
margin-right: 18rpx;
}
.recently-class .title .right{
font-size:24rpx;
font-family:PingFang SC;
font-weight:400;
color:rgba(139,139,139,1);
}
.recently-class .title .right image{
width:11rpx;
height:20rpx;
margin-left: 18rpx;
}
.recently-class .content-box{
padding-left: 40rpx;
}
.recently-class .content-box .class-item{
display: flex;
align-items: center;
padding: 37rpx 0;
border-bottom: 1px solid rgba(0, 0, 0, .05);
}
.recently-class .content-box .class-item .icon{
width:7rpx;
height:21rpx;
background:rgba(28,200,246,1);
border-radius:4rpx;
margin-right: 30rpx;
}
.recently-class .content-box .class-item .name{
font-size:26rpx;
font-family:PingFang SC;
font-weight:500;
color:rgba(0,0,0,1);
}
.wanted-btn{
width:414rpx;
height:70rpx;
position: fixed;
left: 168rpx;
bottom: 170rpx;
background:rgba(101,184,244,1);
border-radius:35rpx;
display: flex;
align-items: center;
justify-content: center;
font-size:30rpx;
font-family:PingFang SC;
font-weight:500;
color:rgba(255,255,255,1);
}
\ No newline at end of file
......@@ -43,7 +43,6 @@
</form>
</view>
</view>
<view class="nav-box">
<view class="nav-item" bindtap="goclasslist">
<form report-submit="true" bindsubmit="formIdCreate" class="createidform">
......
<!--business/pages/deskcenter/index.wxml-->
<view class="nav-header" style="padding-top: {{statusBarHeight}}px;">
<view class="nav-custombox" style="height: {{titleBarHeight}}px;">
<view class="message" bindtap="gotodotasks">
<!-- <view class="message" bindtap="gotodotasks">
<image class="icon" src="{{imageRoot}}2b/deskcenter2/icon_msg.png?{{imageRoot}}"/>
<view class="red-dot" wx:if="{{waitJob>0}}">{{waitJob>99?'···':waitJob}}</view>
</view>
</view> -->
<view class="menu-box">
<view class="title">{{selectSchoolData.title}}</view>
</view>
......
......@@ -89,7 +89,7 @@ Page({
return
}
wx.navigateTo({
url: `/business/pages/classservice/tindex?sid=${item.id}`,
url: `/business/pages/classservice/teacherindex?sid=${item.id}`,
})
}
......
......@@ -38,6 +38,7 @@ Page({
//意见反馈参数
feedbackAppId: 'wx8abaf00ee8c3202e',
allSubject:[],
waitJob: 0,
extraData: {
id : "65621",
customData : {
......@@ -51,14 +52,10 @@ Page({
* 生命周期函数--监听页面加载
*/
onLoad: function(options) {
if (options.sid) {
this.setData({
sid: options.sid
});
}
if(wx.hideHomeButton){
wx.hideHomeButton();
}
const { sid, } = options
this.setData({
sid,
});
},
/**
......@@ -77,6 +74,7 @@ Page({
dakarole: dakarole,
})
this.nicknameGet();
this.getCommonwaitJob();
if(this.data.sid){
this.getCategory();
}
......@@ -135,6 +133,17 @@ Page({
}
})
},
getCommonwaitJob() {
commonwaitjobGet({
school_id: this.data.sid
}).then((res) => {
if (res.code == 200) {
this.setData({
waitJob: (res.data.apply_number || 0) + (res.data.customer_number || 0) + (res.data.noReviews || 0)
})
}
})
},
getCategory() {
getCategory().then((res) => {
if (res.code == 200) { // 成功的操作
......@@ -185,5 +194,10 @@ Page({
wx.navigateTo({
url: `/business/pages/organizationalmgt/pcwebsiteintroduction`
})
}
},
gotodotasks(){
wx.navigateTo({
url: `/business/pages/todotasks/index?sid=${this.data.sid}`
})
},
})
\ No newline at end of file
......@@ -25,6 +25,15 @@
</view>
</view>
<view class="line-box">
<view class="line" bindtap="gotodotasks">
<view class="left">
<image class="icon message-icon" src="{{localImageRoot}}2b/classervice/message-icon.png?{{imageVersion}}"/>消息
</view>
<view class="right">
<view class="red-dot" wx:if="{{waitJob>0}}">{{waitJob}}</view>
<image class="right-icon" src="{{imageRoot}}2b/organizationalmgt/right.png?{{imageVersion}}"></image>
</view>
</view>
<view class="line" bindtap="goPcwebsite">
<view class="left">
<image class="icon" src="{{imageRoot}}2b/organizationalmgt/pc-icon.png?{{imageVersion}}"/>登录PC管理
......
......@@ -117,6 +117,25 @@ page{
height: 40rpx;
margin-right: 22rpx;
}
.line-box .line .left .message-icon{
width: 31rpx;
height: 29rpx;
}
.line-box .line .right{
display: flex;
align-items: center;
}
.line-box .line .right .red-dot{
padding: 10rpx 7rpx;
font-size:20rpx;
font-family:PingFang SC;
font-weight:400;
color:rgba(255,255,255,1);
line-height:1;
background:rgba(255,48,48,1);
border-radius:50%;
margin-right: 27rpx;
}
.line-box .line .right-icon{
width:11rpx;
height:20rpx;
......
......@@ -90,7 +90,7 @@ Component({
break
case 'class': // 跳转课务
if(this.data.dakarole==2){
url = `/business/pages/classservice/tindex?sid=${this.data.sid}`;
url = `/business/pages/classservice/teacherindex?sid=${this.data.sid}`;
}else{
url = `/business/pages/classservice/bindex?sid=${this.data.sid}`;
}
......
......@@ -37,9 +37,9 @@
</block>
<block wx:if="{{dakarole==2}}">
<view class="btabbaritem {{current == 'class' ? 'active' : ''}}" bindtap="chooseTab" data-type="class">
<image class="icon class" wx:if="{{current != 'class'}}" src="/images/btabbar/home.png" ></image>
<image class="icon class" wx:if="{{current == 'class'}}" src="/images/btabbar/homeactive.png" ></image>
<text class="btabbaritemname">首页</text>
<image class="icon workbench" wx:if="{{current != 'class'}}" src="/images/btabbar/workbench.png" ></image>
<image class="icon workbench" wx:if="{{current == 'class'}}" src="/images/btabbar/workbenchactive.png" ></image>
<text class="btabbaritemname">工作台</text>
</view>
</block>
<view class="btabbaritem {{current == 'ucenter' ? 'active' : ''}}" bindtap="chooseTab" data-type="ucenter">
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment