|
@@ -4,15 +4,15 @@
|
|
<view class="main">
|
|
<view class="main">
|
|
<view class="infos">
|
|
<view class="infos">
|
|
<view class="class">
|
|
<view class="class">
|
|
- 芭蕾舞新生班
|
|
|
|
|
|
+ {{classList.className}}
|
|
</view>
|
|
</view>
|
|
<view class="item">
|
|
<view class="item">
|
|
<view class="title">
|
|
<view class="title">
|
|
上课时间:
|
|
上课时间:
|
|
</view>
|
|
</view>
|
|
<view class="value">
|
|
<view class="value">
|
|
- 2023-01-03 08:30-10:00
|
|
|
|
-
|
|
|
|
|
|
+ {{scheduleSheet.courseDate}} {{scheduleSheet.coursePeriods}}
|
|
|
|
+
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<view class="item">
|
|
<view class="item">
|
|
@@ -20,7 +20,7 @@
|
|
上课教室:
|
|
上课教室:
|
|
</view>
|
|
</view>
|
|
<view class="value">
|
|
<view class="value">
|
|
- 二楼舞蹈一教室
|
|
|
|
|
|
+ {{classRoom.name}}
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<view class="item">
|
|
<view class="item">
|
|
@@ -28,7 +28,7 @@
|
|
授课老师:
|
|
授课老师:
|
|
</view>
|
|
</view>
|
|
<view class="value">
|
|
<view class="value">
|
|
- 夏奕琳
|
|
|
|
|
|
+ {{employee.employeeName}}
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<view class="item">
|
|
<view class="item">
|
|
@@ -36,48 +36,55 @@
|
|
学员总数:
|
|
学员总数:
|
|
</view>
|
|
</view>
|
|
<view class="value">
|
|
<view class="value">
|
|
- 20人
|
|
|
|
|
|
+ {{studentList.length}}人
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<view class="tabs">
|
|
<view class="tabs">
|
|
- <u-tabs bar-width="80" inactive-color="#777777" active-color="#4F3C27" :list="list" :is-scroll="false" :current="current" @change="change"></u-tabs>
|
|
|
|
|
|
+ <u-tabs bar-width="80" inactive-color="#777777" active-color="#4F3C27" :list="list" :is-scroll="false"
|
|
|
|
+ :current="current" @change="change"></u-tabs>
|
|
</view>
|
|
</view>
|
|
<view class="details">
|
|
<view class="details">
|
|
- <view class="item" v-for="item in 2">
|
|
|
|
|
|
+ <view class="item" v-for="(item,index) in studentList" :key="index">
|
|
<view class="picture">
|
|
<view class="picture">
|
|
- <img src="../../../assets/img/photo@1x.png" alt="">
|
|
|
|
|
|
+ <u-avatar v-if="item.headPhoto != null" class="avatar" mode="square"
|
|
|
|
+ :src="item.headPhoto+'?x-oss-process=image/resize,m_fill,w_256,h_256'" size="112">
|
|
|
|
+ <img src="" alt="">
|
|
|
|
+ </u-avatar>
|
|
</view>
|
|
</view>
|
|
<view class="info">
|
|
<view class="info">
|
|
<view class="name-tel">
|
|
<view class="name-tel">
|
|
<view class="name">
|
|
<view class="name">
|
|
- 周梓轩
|
|
|
|
|
|
+ {{item.studentName}}
|
|
</view>
|
|
</view>
|
|
<view class="tel">
|
|
<view class="tel">
|
|
<view class="img">
|
|
<view class="img">
|
|
<img src="../../../assets/img/riLine-smartphone-line@1x.png" alt="">
|
|
<img src="../../../assets/img/riLine-smartphone-line@1x.png" alt="">
|
|
</view>
|
|
</view>
|
|
- <view>17700112233</view>
|
|
|
|
|
|
+ <view>{{item.takerPhone}}</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<view class="else">
|
|
<view class="else">
|
|
<view class="remain">
|
|
<view class="remain">
|
|
<view>剩余课时</view>
|
|
<view>剩余课时</view>
|
|
- <view class="num">40</view>
|
|
|
|
|
|
+ <view class="num"></view>
|
|
</view>
|
|
</view>
|
|
<view class="leaved">
|
|
<view class="leaved">
|
|
<view>已请假</view>
|
|
<view>已请假</view>
|
|
- <view class="num">3</view>
|
|
|
|
|
|
+ <view class="num"></view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
-
|
|
|
|
|
|
+
|
|
|
|
+ </view>
|
|
|
|
+ <view class="state" @click="showStudent(item)">
|
|
|
|
+ <view class="text" v-if="item.rollCallResult == '1'">到课</view>
|
|
|
|
+ <view class="text" v-if="item.rollCallResult == '2'">请假</view>
|
|
|
|
+ <view class="text" v-if="item.rollCallResult == '3'">旷课</view>
|
|
|
|
+ <view class="text" v-if="item.rollCallResult == '4'">补课</view>
|
|
|
|
+ <view class="icon">
|
|
|
|
+ <u-icon name="arrow-right" color="#cccccc"></u-icon>
|
|
|
|
+ </view>
|
|
</view>
|
|
</view>
|
|
- <view class="state">
|
|
|
|
- <view class="text">到课</view>
|
|
|
|
- <view class="icon">
|
|
|
|
- <u-icon name="arrow-right" color="#cccccc"></u-icon>
|
|
|
|
- </view>
|
|
|
|
- </view>
|
|
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<!-- <u-cell-group>
|
|
<!-- <u-cell-group>
|
|
@@ -92,7 +99,7 @@
|
|
</view>
|
|
</view>
|
|
<u-picker mode="selector" v-model="show" :default-selector="[0]" :range="selectorObj" range-key="cateName"
|
|
<u-picker mode="selector" v-model="show" :default-selector="[0]" :range="selectorObj" range-key="cateName"
|
|
@confirm="confirm"></u-picker>
|
|
@confirm="confirm"></u-picker>
|
|
- <view class="student-details" v-for="(item,index) in studentList" :key="index">
|
|
|
|
|
|
+ <!-- <view class="student-details" v-for="(item,index) in studentList" :key="index">
|
|
<view class="photo">
|
|
<view class="photo">
|
|
<u-avatar v-if="item.headPhoto != null" class="avatar" mode="square"
|
|
<u-avatar v-if="item.headPhoto != null" class="avatar" mode="square"
|
|
:src="item.headPhoto+'?x-oss-process=image/resize,m_fill,w_256,h_256'" size="112">
|
|
:src="item.headPhoto+'?x-oss-process=image/resize,m_fill,w_256,h_256'" size="112">
|
|
@@ -112,12 +119,12 @@
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<view class="class-leave">
|
|
<view class="class-leave">
|
|
- <!-- <view class="class">
|
|
|
|
|
|
+ <view class="class">
|
|
剩余课时<text>40</text>
|
|
剩余课时<text>40</text>
|
|
- </view> -->
|
|
|
|
- <!-- <view class="leave">
|
|
|
|
|
|
+ </view>
|
|
|
|
+ <view class="leave">
|
|
已请假<text>1</text>
|
|
已请假<text>1</text>
|
|
- </view> -->
|
|
|
|
|
|
+ </view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<view class="to-class" @click="showStudent(item)" v-if="item.rollCallResult == '1'">
|
|
<view class="to-class" @click="showStudent(item)" v-if="item.rollCallResult == '1'">
|
|
@@ -135,7 +142,7 @@
|
|
<view class="to-class" @click="showStudent(item)" v-else>
|
|
<view class="to-class" @click="showStudent(item)" v-else>
|
|
<u-icon name="arrow-right" color="#cccccc"></u-icon>
|
|
<u-icon name="arrow-right" color="#cccccc"></u-icon>
|
|
</view>
|
|
</view>
|
|
- </view>
|
|
|
|
|
|
+ </view> -->
|
|
<!-- 底部 -->
|
|
<!-- 底部 -->
|
|
<view class="bottom">
|
|
<view class="bottom">
|
|
<view class="sign-result">
|
|
<view class="sign-result">
|
|
@@ -163,7 +170,7 @@
|
|
<view class="set-btn">
|
|
<view class="set-btn">
|
|
<view class="set">
|
|
<view class="set">
|
|
<view class="set-text">点名结果批量设置</view>
|
|
<view class="set-text">点名结果批量设置</view>
|
|
- <view class="choose">
|
|
|
|
|
|
+ <view class="choose" @click="show = true">
|
|
<view class="text">
|
|
<view class="text">
|
|
到课
|
|
到课
|
|
</view>
|
|
</view>
|
|
@@ -182,7 +189,7 @@
|
|
|
|
|
|
<script>
|
|
<script>
|
|
import * as callNamesApi from '@/apis/teacher/callNames.js'
|
|
import * as callNamesApi from '@/apis/teacher/callNames.js'
|
|
-
|
|
|
|
|
|
+
|
|
export default {
|
|
export default {
|
|
data() {
|
|
data() {
|
|
return {
|
|
return {
|
|
@@ -213,19 +220,19 @@
|
|
id: '4'
|
|
id: '4'
|
|
}
|
|
}
|
|
],
|
|
],
|
|
- list: [{
|
|
|
|
- name: '正常18'
|
|
|
|
- }, {
|
|
|
|
- name: '请假1 '
|
|
|
|
- }, {
|
|
|
|
- name: '停课1',
|
|
|
|
-
|
|
|
|
- }],
|
|
|
|
- current: 0
|
|
|
|
|
|
+ list: [{
|
|
|
|
+ name: '正常18'
|
|
|
|
+ }, {
|
|
|
|
+ name: '请假1 '
|
|
|
|
+ }, {
|
|
|
|
+ name: '停课1',
|
|
|
|
+
|
|
|
|
+ }],
|
|
|
|
+ current: 0
|
|
}
|
|
}
|
|
},
|
|
},
|
|
onLoad(op) {
|
|
onLoad(op) {
|
|
- if(op.id) {
|
|
|
|
|
|
+ if (op.id) {
|
|
this.sheetId = op.id;
|
|
this.sheetId = op.id;
|
|
this.getRollCallDetail();
|
|
this.getRollCallDetail();
|
|
}
|
|
}
|
|
@@ -236,7 +243,7 @@
|
|
title: "加载中",
|
|
title: "加载中",
|
|
mask: true,
|
|
mask: true,
|
|
})
|
|
})
|
|
- callNamesApi.rollCallSignIn(this.sheetId,this.studentList).then((response) => {
|
|
|
|
|
|
+ callNamesApi.rollCallSignIn(this.sheetId, this.studentList).then((response) => {
|
|
uni.hideLoading();
|
|
uni.hideLoading();
|
|
this.getRollCallDetail();
|
|
this.getRollCallDetail();
|
|
}).catch(error => {
|
|
}).catch(error => {
|
|
@@ -252,7 +259,7 @@
|
|
mask: true,
|
|
mask: true,
|
|
})
|
|
})
|
|
callNamesApi.rollCallDetail({
|
|
callNamesApi.rollCallDetail({
|
|
- sheetId: this.sheetId
|
|
|
|
|
|
+ sheetId: this.sheetId
|
|
}).then((response) => {
|
|
}).then((response) => {
|
|
uni.hideLoading();
|
|
uni.hideLoading();
|
|
this.classList = response.data.class;
|
|
this.classList = response.data.class;
|
|
@@ -275,14 +282,14 @@
|
|
this.studentId = item.studentId;
|
|
this.studentId = item.studentId;
|
|
},
|
|
},
|
|
confirm(obj) {
|
|
confirm(obj) {
|
|
- if(!this.studentId){
|
|
|
|
|
|
+ if (!this.studentId) {
|
|
this.resultName = this.selectorObj[obj[0]].cateName;
|
|
this.resultName = this.selectorObj[obj[0]].cateName;
|
|
for (var i = 0; i < this.studentList.length; i++) {
|
|
for (var i = 0; i < this.studentList.length; i++) {
|
|
this.studentList[i].rollCallResult = this.selectorObj[obj[0]].id;
|
|
this.studentList[i].rollCallResult = this.selectorObj[obj[0]].id;
|
|
}
|
|
}
|
|
- }else {
|
|
|
|
|
|
+ } else {
|
|
for (var i = 0; i < this.studentList.length; i++) {
|
|
for (var i = 0; i < this.studentList.length; i++) {
|
|
- if(this.studentId == this.studentList[i].studentId) {
|
|
|
|
|
|
+ if (this.studentId == this.studentList[i].studentId) {
|
|
this.studentList[i].rollCallResult = this.selectorObj[obj[0]].id;
|
|
this.studentList[i].rollCallResult = this.selectorObj[obj[0]].id;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -290,94 +297,112 @@
|
|
}
|
|
}
|
|
},
|
|
},
|
|
change(index) {
|
|
change(index) {
|
|
- this.current = index;
|
|
|
|
- }
|
|
|
|
|
|
+ this.current = index;
|
|
|
|
+ }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
</script>
|
|
</script>
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
<style lang="scss" scoped>
|
|
.main {
|
|
.main {
|
|
-
|
|
|
|
- background: linear-gradient(180deg, rgba(13,186,199,1) 0%,rgba(244,246,246,1) 100%);
|
|
|
|
- .infos{
|
|
|
|
|
|
+
|
|
|
|
+ background: linear-gradient(180deg, rgba(13, 186, 199, 1) 0%, rgba(244, 246, 246, 1) 100%);
|
|
|
|
+
|
|
|
|
+ .infos {
|
|
color: #fff;
|
|
color: #fff;
|
|
padding: 32rpx;
|
|
padding: 32rpx;
|
|
- .class{
|
|
|
|
|
|
+
|
|
|
|
+ .class {
|
|
color: rgba(255, 255, 255, 1);
|
|
color: rgba(255, 255, 255, 1);
|
|
font-size: 48rpx;
|
|
font-size: 48rpx;
|
|
font-weight: bold;
|
|
font-weight: bold;
|
|
margin-bottom: 16rpx;
|
|
margin-bottom: 16rpx;
|
|
}
|
|
}
|
|
- .item{
|
|
|
|
|
|
+
|
|
|
|
+ .item {
|
|
display: flex;
|
|
display: flex;
|
|
margin-top: 16rpx;
|
|
margin-top: 16rpx;
|
|
- .value{
|
|
|
|
|
|
+
|
|
|
|
+ .value {
|
|
margin-left: 8rpx;
|
|
margin-left: 8rpx;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- .tabs{
|
|
|
|
|
|
+
|
|
|
|
+ .tabs {
|
|
border-radius: 16px 16px 0px 0px;
|
|
border-radius: 16px 16px 0px 0px;
|
|
background-color: rgba(255, 255, 255, 1);
|
|
background-color: rgba(255, 255, 255, 1);
|
|
height: 88rpx;
|
|
height: 88rpx;
|
|
padding: 0 170rpx;
|
|
padding: 0 170rpx;
|
|
}
|
|
}
|
|
- .details{
|
|
|
|
|
|
+
|
|
|
|
+ .details {
|
|
background-color: #fff;
|
|
background-color: #fff;
|
|
- .item{
|
|
|
|
|
|
+
|
|
|
|
+ .item {
|
|
padding: 24rpx 32rpx;
|
|
padding: 24rpx 32rpx;
|
|
display: flex;
|
|
display: flex;
|
|
border-top: 1px solid rgba(229, 231, 234, 1);
|
|
border-top: 1px solid rgba(229, 231, 234, 1);
|
|
- .picture{
|
|
|
|
|
|
+
|
|
|
|
+ .picture {
|
|
width: 112rpx;
|
|
width: 112rpx;
|
|
height: 112rpx;
|
|
height: 112rpx;
|
|
- img{
|
|
|
|
|
|
+
|
|
|
|
+ img {
|
|
width: 100%;
|
|
width: 100%;
|
|
height: 100%;
|
|
height: 100%;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- .info{
|
|
|
|
|
|
+
|
|
|
|
+ .info {
|
|
margin-left: 24rpx;
|
|
margin-left: 24rpx;
|
|
display: flex;
|
|
display: flex;
|
|
flex-direction: column;
|
|
flex-direction: column;
|
|
justify-content: space-around;
|
|
justify-content: space-around;
|
|
- .name-tel{
|
|
|
|
|
|
+
|
|
|
|
+ .name-tel {
|
|
display: flex;
|
|
display: flex;
|
|
align-items: center;
|
|
align-items: center;
|
|
-
|
|
|
|
- .name{
|
|
|
|
|
|
+
|
|
|
|
+ .name {
|
|
color: rgba(51, 51, 51, 1);
|
|
color: rgba(51, 51, 51, 1);
|
|
font-size: 18px;
|
|
font-size: 18px;
|
|
- font-weight:bold
|
|
|
|
|
|
+ font-weight: bold
|
|
}
|
|
}
|
|
- .tel{
|
|
|
|
|
|
+
|
|
|
|
+ .tel {
|
|
color: rgba(119, 119, 119, 1);
|
|
color: rgba(119, 119, 119, 1);
|
|
- display: flex;
|
|
|
|
- align-items: center;
|
|
|
|
- line-height: 32rpx;
|
|
|
|
|
|
+ display: flex;
|
|
|
|
+ align-items: center;
|
|
|
|
+ line-height: 32rpx;
|
|
margin-left: 24rpx;
|
|
margin-left: 24rpx;
|
|
- .img{
|
|
|
|
|
|
+
|
|
|
|
+ .img {
|
|
width: 32rpx;
|
|
width: 32rpx;
|
|
height: 32rpx;
|
|
height: 32rpx;
|
|
margin-right: 8rpx;
|
|
margin-right: 8rpx;
|
|
- img{
|
|
|
|
|
|
+
|
|
|
|
+ img {
|
|
width: 100%;
|
|
width: 100%;
|
|
height: 100%;
|
|
height: 100%;
|
|
-
|
|
|
|
|
|
+
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- .else{
|
|
|
|
|
|
+
|
|
|
|
+ .else {
|
|
display: flex;
|
|
display: flex;
|
|
align-items: center;
|
|
align-items: center;
|
|
- .remain,.leaved{
|
|
|
|
|
|
+
|
|
|
|
+ .remain,
|
|
|
|
+ .leaved {
|
|
display: flex;
|
|
display: flex;
|
|
color: rgba(119, 119, 119, 1);
|
|
color: rgba(119, 119, 119, 1);
|
|
align-items: center;
|
|
align-items: center;
|
|
- margin-right:24rpx;
|
|
|
|
- .num{
|
|
|
|
|
|
+ margin-right: 24rpx;
|
|
|
|
+
|
|
|
|
+ .num {
|
|
width: 40rpx;
|
|
width: 40rpx;
|
|
height: 32rpx;
|
|
height: 32rpx;
|
|
line-height: 32rpx;
|
|
line-height: 32rpx;
|
|
@@ -389,19 +414,21 @@
|
|
margin-left: 8rpx;
|
|
margin-left: 8rpx;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
}
|
|
}
|
|
- .state{
|
|
|
|
|
|
+
|
|
|
|
+ .state {
|
|
display: flex;
|
|
display: flex;
|
|
- align-items: center;
|
|
|
|
|
|
+ align-items: end;
|
|
margin-left: auto;
|
|
margin-left: auto;
|
|
-
|
|
|
|
- .text{
|
|
|
|
|
|
+
|
|
|
|
+ .text {
|
|
color: rgba(51, 51, 51, 1);
|
|
color: rgba(51, 51, 51, 1);
|
|
}
|
|
}
|
|
- .icon{
|
|
|
|
|
|
+
|
|
|
|
+ .icon {
|
|
margin-left: 8rpx;
|
|
margin-left: 8rpx;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -578,50 +605,60 @@
|
|
background-color: rgba(0, 187, 170, 1);
|
|
background-color: rgba(0, 187, 170, 1);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- .stop{
|
|
|
|
|
|
+
|
|
|
|
+ .stop {
|
|
color: rgba(238, 49, 56, 1);
|
|
color: rgba(238, 49, 56, 1);
|
|
- text{
|
|
|
|
- background-color: rgba(238, 49, 56, 1); ;
|
|
|
|
|
|
+
|
|
|
|
+ text {
|
|
|
|
+ background-color: rgba(238, 49, 56, 1);
|
|
|
|
+ ;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- .set-btn{
|
|
|
|
|
|
+ .set-btn {
|
|
display: flex;
|
|
display: flex;
|
|
- margin-top: 20rpx;
|
|
|
|
- .set{
|
|
|
|
|
|
+ margin-top: 20rpx;
|
|
|
|
+
|
|
|
|
+ .set {
|
|
display: flex;
|
|
display: flex;
|
|
align-items: center;
|
|
align-items: center;
|
|
- .set-text{
|
|
|
|
|
|
+
|
|
|
|
+ .set-text {
|
|
color: rgba(51, 51, 51, 1);
|
|
color: rgba(51, 51, 51, 1);
|
|
}
|
|
}
|
|
- .choose{
|
|
|
|
|
|
+
|
|
|
|
+ .choose {
|
|
margin-left: 34rpx;
|
|
margin-left: 34rpx;
|
|
display: flex;
|
|
display: flex;
|
|
align-items: center;
|
|
align-items: center;
|
|
height: 20px;
|
|
height: 20px;
|
|
- .text{
|
|
|
|
|
|
+
|
|
|
|
+ .text {
|
|
color: rgba(13, 186, 199, 1);
|
|
color: rgba(13, 186, 199, 1);
|
|
font-weight: bold;
|
|
font-weight: bold;
|
|
}
|
|
}
|
|
- .icon{
|
|
|
|
|
|
+
|
|
|
|
+ .icon {
|
|
margin-left: 8rpx;
|
|
margin-left: 8rpx;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- .btn{
|
|
|
|
|
|
+
|
|
|
|
+ .btn {
|
|
width: 272rpx;
|
|
width: 272rpx;
|
|
margin-left: auto;
|
|
margin-left: auto;
|
|
}
|
|
}
|
|
|
|
+
|
|
button {
|
|
button {
|
|
-
|
|
|
|
|
|
+
|
|
border-radius: 50px;
|
|
border-radius: 50px;
|
|
background-color: rgba(13, 186, 199, 1);
|
|
background-color: rgba(13, 186, 199, 1);
|
|
color: rgba(255, 255, 255, 1);
|
|
color: rgba(255, 255, 255, 1);
|
|
font-size: 16px;
|
|
font-size: 16px;
|
|
height: 80rpx;
|
|
height: 80rpx;
|
|
- line-height:80rpx ;
|
|
|
|
|
|
+ line-height: 80rpx;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|