Commit ff2bd7bc authored by 罗超's avatar 罗超

2

parent 036fc508
...@@ -67,13 +67,9 @@ ...@@ -67,13 +67,9 @@
@click="jumpPage(`/pages/word/word?CourseId=${pageData.Words.CourseId}&&ChapterId=${pageData.Words.NextCourseNo}&&ReviewChapterId=${pageData.Words.ReviewCourseNo}&&ClassId=${pageData.Words.ClassId}`)"> @click="jumpPage(`/pages/word/word?CourseId=${pageData.Words.CourseId}&&ChapterId=${pageData.Words.NextCourseNo}&&ReviewChapterId=${pageData.Words.ReviewCourseNo}&&ClassId=${pageData.Words.ClassId}`)">
开始学习 开始学习
</view> </view>
<view class="wordBtn"
@click="jumpPage(`/pages/word/test?CourseId=${pageData.Words.CourseId}&&ChapterId=${pageData.Words.NextCourseNo}&&ReviewChapterId=${pageData.Words.ReviewCourseNo}`)">
开始测试
</view>
</view> </view>
<view class="courseBox"> <view class="courseBox">
<view class="courseInnerBox"> <view class="courseInnerBox" @click="jumpTimetable">
<view class="top"> <view class="top">
<image src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/educationStu/classtime.png" <image src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/educationStu/classtime.png"
mode="aspectFit" class="courseIcon"></image> mode="aspectFit" class="courseIcon"></image>
...@@ -114,7 +110,7 @@ ...@@ -114,7 +110,7 @@
font-weight: 500; font-weight: 500;
color: #4C50E7;" @click="jumpGarden(item.Id)">查看更多</text> color: #4C50E7;" @click="jumpGarden(item.Id)">查看更多</text>
</view> </view>
<view class="gardenCon" v-for="(item1,index1) in item.List" :key="index1" id="img"> <view class="gardenCon" v-for="(item1,index1) in item.List" :key="index1" id="img" @click="jumpPage(`/pages/learningGarden/learningGardenDetails?Id=${item1.Id}`)">
<image :src="item1.Img" mode="aspectFill" :id="'img'+index1" <image :src="item1.Img" mode="aspectFill" :id="'img'+index1"
style="width: 100%;height:100%;border-radius: 24rpx 24rpx 0 0;"></image> style="width: 100%;height:100%;border-radius: 24rpx 24rpx 0 0;"></image>
<view class="gardenTextBox" <view class="gardenTextBox"
...@@ -185,6 +181,11 @@ ...@@ -185,6 +181,11 @@
url: url, url: url,
}); });
}, },
jumpTimetable() {
uni.switchTab({
url: '/pages/timetable/timeTable',
})
},
scan() { scan() {
// 调起条码扫描 // 调起条码扫描
uni.scanCode({ uni.scanCode({
......
<template> <template>
<view class="person"> <view class="person">
<view class="info flex_between_center flex_nowrap"> <view class="info flex_between_center flex_nowrap">
<view class="left flex_start_between"> <view class="left flex_start_between">
<view class="date"> <!-- <view class="date">
2021年12月30日 2021年12月30日
</view> </view> -->
<view class="name"> Hello,{{ pageData.StuName }} </view> <view class="name"> Hello,{{ pageData.StuName }} </view>
</view> </view>
<view class="right"> <view class="right">
<image <image :src="pageData.StuIcon" mode="aspectFill" style="width:100%;height:100%;border-radius: 50%;">
:src="pageData.StuIcon" </image>
mode="aspectFill" </view>
style="width:100%;height:100%;border-radius: 50%;" </view>
> <view class="orderInfo flex_between_center">
</image> <view class="orderItem ">
</view> <view class=" flex_between_center" style="width:100%">
</view> <view class="orderNum">{{ pageData.OrderNum }}</view>
<view class="orderInfo flex_between_center"> <image src="../../static/image/person/order1.png" mode="aspectFill" class="orderIcon"></image>
<view class="orderItem "> </view>
<view class=" flex_between_center" style="width:100%"> <view class="orderName">
<view class="orderNum">{{ pageData.OrderNum }}</view> 语培订单
<image </view>
src="../../static/image/person/order1.png" </view>
mode="aspectFill" <view class="orderItem ">
class="orderIcon" <view class=" flex_between_center" style="width:100%">
></image> <view class="orderNum">{{ pageData.StudyAbroadNum }}</view>
</view> <image src="../../static/image/person/order2.png" mode="aspectFill" class="orderIcon"></image>
<view class="orderName"> </view>
语培订单 <view class="orderName">
</view> 留学订单
</view> </view>
<view class="orderItem "> </view>
<view class=" flex_between_center" style="width:100%"> <view class="orderItem " >
<view class="orderNum">{{ pageData.StudyAbroadNum }}</view> <view class=" flex_between_center" style="width:100%">
<image <view class="orderNum">{{ pageData.ContractNum }}</view>
src="../../static/image/person/order2.png" <image src="../../static/image/person/order3.png" mode="aspectFill" class="orderIcon"></image>
mode="aspectFill" </view>
class="orderIcon" <view class="orderName">
></image> 合同信息
</view> </view>
<view class="orderName"> </view>
留学订单 </view>
</view> <view class="courseInfo">
</view> <view class="title">课程信息</view>
<view class="orderItem "> <view class="statistic">
<view class=" flex_between_center" style="width:100%"> <view class="statisticItem">
<view class="orderNum">{{ pageData.ContractNum }}</view> <view class="time">{{ pageData.CourseInfo.TotalHours }}
<image <text class="unit"></text>
src="../../static/image/person/order3.png" </view>
mode="aspectFill" <view class="statisticName">总共课时</view>
class="orderIcon" </view>
></image> <view class="statisticItem">
</view> <view class="time">{{ pageData.CourseInfo.CompleteHours }}
<view class="orderName"> <text class="unit"></text>
合同信息 </view>
</view> <view class="statisticName">已学课时</view>
</view> </view>
</view> <view class="statisticItem">
<view class="courseInfo"> <view class="time">{{ pageData.CourseInfo.AbsenceNum }}
<view class="title">课程信息</view> <text class="unit"></text>
<view class="statistic"> </view>
<view class="statisticItem"> <view class="statisticName">缺勤课时</view>
<view class="time" </view>
>{{ pageData.CourseInfo.TotalHours }} <view class="statisticItem">
<text class="unit"></text></view <view class="time">{{ pageData.CourseInfo.LeaveNum }}
> <text class="unit"></text>
<view class="statisticName">总共课时</view> </view>
</view> <view class="statisticName">请假课时</view>
<view class="statisticItem"> </view>
<view class="time" </view>
>{{ pageData.CourseInfo.CompleteHours }} <view class="courseBox">
<text class="unit"></text></view <view class="left">
> <image :src="pageData.CourseInfo.B2BIcon" mode="aspectFill"
<view class="statisticName">已学课时</view> style="width:100%;height:100%;border-radius: 30rpx;"></image>
</view> </view>
<view class="statisticItem"> <view class="right">
<view class="time" <view class="className one_line">{{
>{{ pageData.CourseInfo.AbsenceNum }}
<text class="unit"></text></view
>
<view class="statisticName">缺勤课时</view>
</view>
<view class="statisticItem">
<view class="time"
>{{ pageData.CourseInfo.LeaveNum }}
<text class="unit"></text></view
>
<view class="statisticName">请假课时</view>
</view>
</view>
<view class="courseBox">
<view class="left">
<image
:src="pageData.CourseInfo.B2BIcon"
mode="aspectFill"
style="width:100%;height:100%;border-radius: 30rpx;"
></image>
</view>
<view class="right">
<view class="className one_line">{{
pageData.CourseInfo.CourseName pageData.CourseInfo.CourseName
}}</view> }}</view>
<view class="Grade" style="margin-bottom:20rpx">{{ <view class="Grade" style="margin-bottom:20rpx">{{
pageData.CourseInfo.ClassName pageData.CourseInfo.ClassName
}}</view> }}</view>
<view class="Grade">等级:{{ pageData.CourseInfo.CourseRate }}</view> <view class="Grade">等级:{{ pageData.CourseInfo.CourseRate }}</view>
<view <view><text class="Grade">状态:</text>
><text class="Grade">状态:</text> <text class="StatusName">{{
<text class="StatusName">{{
pageData.CourseInfo.ClassStatusName pageData.CourseInfo.ClassStatusName
}}</text> }}</text>
</view> </view>
</view> </view>
</view> </view>
</view> </view>
<view class="serve"> <view class="serve" v-if="pageData.AssistList.length>0">
<view class="serveSubTitle">随时电话联系哟</view> <view class="serveSubTitle">随时电话联系哟</view>
<view class="serveTitle">服务人员信息</view> <view class="serveTitle">服务人员信息</view>
<view v-for="(item,index) in AssistList" :key="index" class="serviceItem"> <view v-for="(item,index) in pageData.AssistList" :key="index" class="serviceItem">
<view class="headimg"> <view class="headimg">
<image <image :src="item.UserIcon" mode="aspectFill" style="width:100%;height:100%;border-radius: 24rpx;"
:src="item.UserIcon" v-if="item.UserIcon" />
mode="aspectFill" <view class="flex_center_center"
style="width:100%;height:100%;border-radius: 24rpx;" style="width:100%;height:100%;border-radius: 24rpx;font-size: 46rpx;font-weight: bold;color: #FFFFFF;background-color: #4c50e7;"
v-if="item.UserIcon" v-else>{{ item.EmployeeName.slice(0, 1) }}</view>
/> </view>
<view <view class="serviceInfo flex_between_center">
class="flex_center_center" <view class="flex_start_around" style="width:380rpx;height:100%">
style="width:100%;height:100%;border-radius: 24rpx;font-size: 46rpx;font-weight: bold;color: #FFFFFF;background-color: #4c50e7;" <view class="flex_start_center" style="height:32rpx">
v-else <text class="EmployeeName">{{ item.EmployeeName }}</text><text
>{{ item.EmployeeName.slice(0, 1) }}</view class="AssistTypeName">{{ item.AssistTypeName }}</text>
> </view>
</view> <view class="Mobile">{{item.Mobile }}</view>
<view class="serviceInfo flex_between_center"> </view>
<view class="flex_start_around" style="width:380rpx;height:100%"> <view style="width:60rpx;height:40rpx;" @click="callphone(item.Mobile)">
<view class="flex_start_center" style="height:32rpx"> <image
<text class="EmployeeName">{{ item.EmployeeName }}</text src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/educationStu/callphone.png"
><text class="AssistTypeName">{{ item.AssistTypeName }}</text> mode="aspectFit" style="width:100%;height:100%" />
</view> </view>
<view class="Mobile" >{{item.Mobile }}</view> </view>
</view> </view>
<view style="width:60rpx;height:40rpx;" @click="callphone(item.Mobile)"> </view>
<image <bottom />
src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/educationStu/callphone.png" </view>
mode="aspectFit"
style="width:100%;height:100%"
/>
</view>
</view>
</view>
</view>
<bottom />
</view>
</template> </template>
<script> <script>
import { import {
ref, ref,
reactive, reactive,
toRefs, toRefs,
toRef, toRef,
getCurrentInstance, getCurrentInstance,
watch, watch,
computed, computed,
onMounted, onMounted,
inject, inject,
} from "vue"; } from "vue";
import bottom from "../../components/bottom"; import bottom from "../../components/bottom";
export default { export default {
components: { components: {
bottom, bottom,
}, },
setup(props, context) { setup(props, context) {
let { proxy } = getCurrentInstance(); let {
let data = reactive({ proxy
pageData: {}, } = getCurrentInstance();
AssistList: [ let data = reactive({
{ pageData: {
AssistTypeName: "市场经理", AssistList:[]
EmployeeName: "阿里粑粑", },
UserIcon: "", });
Mobile: "18011251414", const methods = {
}, jumpPage(url) {
{ uni.navigateTo({
AssistTypeName: "市场经理", url: url,
EmployeeName: "阿里粑粑", });
UserIcon: "", },
Mobile: "18011251414", getData() {
}, proxy.$request("/AppletCenter/GetMyCenterInfo", {}).then((res) => {
{ data.pageData = res.Data;
AssistTypeName: "市场经理", });
EmployeeName: "阿里粑粑", },
UserIcon: "", callphone(num) {
Mobile: "18011251414", uni.makePhoneCall({
}, phoneNumber: num,
], });
}); },
const methods = { };
async getData() {
proxy.$request("/AppletCenter/GetMyCenterInfo", {}).then((res) => { onMounted(() => {
data.pageData = res.Data; that.getData();
console.log(431, data.pageData); });
}); let that = methods;
}, return {
callphone(num) { ...toRefs(data),
uni.makePhoneCall({ ...methods
phoneNumber: num, };
}); },
}, };
};
onMounted(() => {
that.getData();
});
let that = methods;
return {
...toRefs(data),
...methods
};
},
};
</script> </script>
<style scoped> <style scoped>
.person { .person {
min-height: 100vh; min-height: 100vh;
background-color: #f5f5f5; background-color: #f5f5f5;
} }
.person .info { .person .info {
height: 160rpx; height: 160rpx;
padding: 0 35rpx; padding: 0 35rpx;
} }
.person .info .left { .person .info .left {
width: 50%; width: 50%;
} }
.person .info .left .date { .person .info .left .date {
font-size: 22rpx; font-size: 22rpx;
font-family: PingFang SC; font-family: PingFang SC;
font-weight: 500; font-weight: 500;
color: #999999; color: #999999;
} }
.person .info .left .name { .person .info .left .name {
font-size: 46rpx; font-size: 46rpx;
font-family: PingFang SC; font-family: PingFang SC;
font-weight: bold; font-weight: bold;
color: #111111; color: #111111;
} white-space: nowrap;
}
.person .info .right {
width: 95rpx; .person .info .right {
height: 95rpx; width: 95rpx;
border-radius: 50%; height: 95rpx;
overflow: hidden; border-radius: 50%;
} overflow: hidden;
}
.person .orderInfo {
height: 195rpx; .person .orderInfo {
padding: 0 35rpx; height: 195rpx;
margin-bottom: 50rpx; padding: 0 35rpx;
} margin-bottom: 50rpx;
}
.person .orderItem {
width: 205rpx; .person .orderItem {
height: 195rpx; width: 205rpx;
background-color: #ffffff; height: 195rpx;
opacity: 0.97; background-color: #ffffff;
border-radius: 25rpx; opacity: 0.97;
box-sizing: border-box; border-radius: 25rpx;
padding: 20rpx 25rpx 35rpx 35rpx; box-sizing: border-box;
display: flex; padding: 20rpx 25rpx 35rpx 35rpx;
flex-wrap: wrap; display: flex;
align-content: space-between; flex-wrap: wrap;
} align-content: space-between;
}
.orderItem .orderNum {
font-size: 46rpx; .orderItem .orderNum {
font-weight: 800; font-size: 46rpx;
font-style: italic; font-weight: 800;
color: #111111; font-style: italic;
} color: #111111;
}
.orderItem .orderIcon {
width: 65rpx; .orderItem .orderIcon {
height: 65rpx; width: 65rpx;
background-color: #fff; height: 65rpx;
} background-color: #fff;
}
.orderItem .orderName {
font-size: 24rpx; .orderItem .orderName {
font-weight: 500; font-size: 24rpx;
color: #666666; font-weight: 500;
} color: #666666;
}
.courseInfo {
/* height: 535rpx; */ .courseInfo {
background-color: #ebebeb; /* height: 535rpx; */
padding: 35rpx; background-color: #ebebeb;
margin-bottom: 50rpx; padding: 35rpx;
} margin-bottom: 50rpx;
}
.courseInfo .title {
font-size: 28rpx; .courseInfo .title {
font-weight: bold; font-size: 28rpx;
color: #111111; font-weight: bold;
margin-bottom: 30rpx; color: #111111;
} margin-bottom: 30rpx;
}
.statistic {
/* height: 70rpx; */ .statistic {
display: flex; /* height: 70rpx; */
margin-bottom: 50rpx; display: flex;
} margin-bottom: 50rpx;
}
.statisticItem {
min-width: 80rpx; .statisticItem {
/* height: 70rpx; */ min-width: 80rpx;
display: flex; /* height: 70rpx; */
flex-wrap: wrap; display: flex;
align-content: space-between; flex-wrap: wrap;
margin-right: 100rpx; align-content: space-between;
} margin-right: 100rpx;
}
.statisticItem .time {
width: 100%; .statisticItem .time {
font-size: 46rpx; width: 100%;
line-height: 30rpx; font-size: 46rpx;
font-weight: 800; line-height: 30rpx;
font-style: italic; font-weight: 800;
color: #111111; font-style: italic;
} color: #111111;
}
.statisticItem .unit {
font-size: 20rpx; .statisticItem .unit {
font-weight: 500; font-size: 20rpx;
color: #111111; font-weight: 500;
font-style: normal; color: #111111;
margin-left: 10rpx; font-style: normal;
} margin-left: 10rpx;
}
.statisticName {
font-size: 20rpx; .statisticName {
font-weight: 500; font-size: 20rpx;
color: #666666; font-weight: 500;
white-space: nowrap; color: #666666;
} white-space: nowrap;
}
.courseBox {
display: flex; .courseBox {
} display: flex;
}
.courseBox .left {
width: 215rpx; .courseBox .left {
height: 275rpx; width: 215rpx;
background: #d5f3e9; height: 275rpx;
border-radius: 30rpx; background: #d5f3e9;
margin-right: 40rpx; border-radius: 30rpx;
} margin-right: 40rpx;
}
.courseBox .right {
width: 420rpx; .courseBox .right {
padding-top: 25rpx; width: 420rpx;
} padding-top: 25rpx;
}
.courseBox .className {
font-size: 36rpx; .courseBox .className {
font-weight: bold; font-size: 36rpx;
color: #111111; font-weight: bold;
} color: #111111;
}
.courseBox .Grade {
font-size: 22rpx; .courseBox .Grade {
font-weight: 500; font-size: 22rpx;
color: #666666; font-weight: 500;
margin: 10rpx 0; color: #666666;
} margin: 10rpx 0;
}
.courseBox .StatusName {
/* height: 30rpx; */ .courseBox .StatusName {
line-height: 30rpx; /* height: 30rpx; */
font-size: 22rpx; line-height: 30rpx;
font-weight: 500; font-size: 22rpx;
color: #333333; font-weight: 500;
background-color: #5de3a6; color: #333333;
box-sizing: border-box; background-color: #5de3a6;
border-radius: 4rpx; box-sizing: border-box;
padding: 5rpx 10rpx; border-radius: 4rpx;
} padding: 5rpx 10rpx;
}
.serve {
padding: 0 35rpx; .serve {
background-color: #f5f5f5; padding: 0 35rpx;
} background-color: #f5f5f5;
}
.serveTitle {
font-size: 46rpx; .serveTitle {
font-weight: bold; font-size: 46rpx;
color: #111111; font-weight: bold;
} color: #111111;
}
.serveSubTitle {
font-size: 28rpx; .serveSubTitle {
font-weight: 500; font-size: 28rpx;
color: #666666; font-weight: 500;
margin-bottom: 20rpx; color: #666666;
} margin-bottom: 20rpx;
}
.serviceItem {
box-sizing: border-box; .serviceItem {
width: 680rpx; box-sizing: border-box;
height: 185rpx; width: 680rpx;
background-color: #ffffff; height: 185rpx;
border-radius: 24rpx; background-color: #ffffff;
margin-top: 30rpx; border-radius: 24rpx;
display: flex; margin-top: 30rpx;
/* justify-content: space-between; */ display: flex;
align-items: center; /* justify-content: space-between; */
padding: 25rpx; align-items: center;
} padding: 25rpx;
}
.serviceItem .headimg {
width: 130rpx; .serviceItem .headimg {
height: 130rpx; width: 130rpx;
border-radius: 24rpx; height: 130rpx;
margin-right: 30rpx; border-radius: 24rpx;
} margin-right: 30rpx;
.serviceInfo { }
width: 435rpx;
height: 100%; .serviceInfo {
} width: 435rpx;
.EmployeeName { height: 100%;
font-size: 34rpx; }
font-weight: bold;
color: #111111; .EmployeeName {
} font-size: 34rpx;
.AssistTypeName { font-weight: bold;
height: 26rpx; color: #111111;
background-color: #fa9717; }
border-radius: 6rpx;
font-size: 20rpx; .AssistTypeName {
font-weight: 500; height: 26rpx;
color: #ffffff; background-color: #fa9717;
box-sizing: border-box; border-radius: 6rpx;
display: flex; font-size: 20rpx;
justify-content: center; font-weight: 500;
align-items: center; color: #ffffff;
margin-left: 15rpx; box-sizing: border-box;
padding: 3rpx 6rpx; display: flex;
} justify-content: center;
.Mobile { align-items: center;
font-size: 28rpx; margin-left: 15rpx;
font-weight: 500; padding: 3rpx 6rpx;
color: #111111; }
}
.Mobile {
font-size: 28rpx;
font-weight: 500;
color: #111111;
}
</style> </style>
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