Commit 5ea2bf53 authored by youjie's avatar youjie

no message

parent 0805fa4b
...@@ -144,7 +144,7 @@ export function GetOrderPage(data) { ...@@ -144,7 +144,7 @@ export function GetOrderPage(data) {
} }
/** /**
* 根据编号删除“我的孩子 * 根据编号删除“亲友团
* @param {JSON参数} data * @param {JSON参数} data
*/ */
export function RemoveMyChild(data) { export function RemoveMyChild(data) {
...@@ -192,7 +192,7 @@ export function GetOrderPage(data) { ...@@ -192,7 +192,7 @@ export function GetOrderPage(data) {
} }
/** /**
* 微信邀请 * 获取面对面邀请码
* @param {JSON参数} data * @param {JSON参数} data
*/ */
export function CreateFriendQrCode(data) { export function CreateFriendQrCode(data) {
...@@ -201,4 +201,16 @@ export function GetOrderPage(data) { ...@@ -201,4 +201,16 @@ export function GetOrderPage(data) {
method: 'post', method: 'post',
data data
}) })
}
/**
* 获取用户二维码码
* @param {JSON参数} data
*/
export function CreateTeacherCode(data) {
return request({
url: '/AppletCenter/CreateTeacherCode',
method: 'post',
data
})
} }
\ No newline at end of file
...@@ -87,6 +87,8 @@ ...@@ -87,6 +87,8 @@
proxy proxy
} = getCurrentInstance(); } = getCurrentInstance();
let data = reactive({ let data = reactive({
erpUserInfo:null,
userInfo:null,
loading:true, loading:true,
Account:'', Account:'',
form:{ form:{
...@@ -143,8 +145,8 @@ ...@@ -143,8 +145,8 @@
if (res) { if (res) {
uni.hideLoading() uni.hideLoading()
data.loading = true data.loading = true
uni.navigateTo({ uni.redirectTo({
url: '', url: `/pages/login/login?RealPhone=${this.erpUserInfo.RealPhone}&Account=${this.userInfo.Account}`,
}); });
} }
}, },
...@@ -169,6 +171,10 @@ ...@@ -169,6 +171,10 @@
onLoad(options) { onLoad(options) {
}, },
onShow(){
this.erpUserInfo = uni.getStorageSync('erpUserInfo')
this.userInfo = uni.getStorageSync('userInfo')
},
onReachBottom() { onReachBottom() {
if (this.msg.pageIndex < this.pageCount) { if (this.msg.pageIndex < this.pageCount) {
data.pageState = "loading"; data.pageState = "loading";
......
...@@ -157,7 +157,7 @@ ...@@ -157,7 +157,7 @@
style="width: 99rpx;height: 99rpx;"></image> style="width: 99rpx;height: 99rpx;"></image>
<text class="left-title">微信邀请</text> <text class="left-title">微信邀请</text>
</view> </view>
<view class="right-image" style="margin-right: 33rpx;" @click="showPopup=true,QRcode()"> <view class="right-image" style="margin-right: 33rpx;" @click="QRcode()">
<image src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1664164159000_60.png" <image src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1664164159000_60.png"
style="width: 99rpx;height: 99rpx;"></image> style="width: 99rpx;height: 99rpx;"></image>
<text class="left-title">面对面邀请</text> <text class="left-title">面对面邀请</text>
...@@ -216,7 +216,7 @@ ...@@ -216,7 +216,7 @@
import Loadmore from "../../components/loadmore.vue"; import Loadmore from "../../components/loadmore.vue";
import bottom from "../../components/bottom"; import bottom from "../../components/bottom";
import { import {
GetFriend,CreateFriendQrCode GetFriend,CreateFriendQrCode,RemoveMyChild
} from "../../api/erp"; } from "../../api/erp";
export default { export default {
components: { components: {
...@@ -250,8 +250,14 @@ ...@@ -250,8 +250,14 @@
content: '将要删除数据,是否继续', content: '将要删除数据,是否继续',
success: function (res) { success: function (res) {
if (res.confirm) { if (res.confirm) {
let Msg = { uni.showLoading()
let msg = {
Id: item.AccountId
}
let res = RemoveMyChild(msg);
if (res) {
uni.hideLoading()
that.getData()
} }
} else if (res.cancel) { } else if (res.cancel) {
...@@ -277,7 +283,7 @@ ...@@ -277,7 +283,7 @@
if (res) { if (res) {
uni.hideLoading() uni.hideLoading()
data.QRcodeImg = data.erpUrl+res.Data data.QRcodeImg = data.erpUrl+res.Data
console.log(data.QRcodeImg,'---') data.showPopup = true
} }
}, },
async getData() { async getData() {
...@@ -327,7 +333,7 @@ ...@@ -327,7 +333,7 @@
// console.log(uni.getStorageSync('Account')) // console.log(uni.getStorageSync('Account'))
return { return {
title: "邀请好友", title: "邀请好友",
query: `/pages/login/login?RealPhone=${this.erpUserInfo.RealPhone}&Account=${this.userInfo.Account}`, query: `/pages/FriendsAndRelatives/addFriendsAndRelatives?RealPhone=${this.erpUserInfo.RealPhone}&Account=${this.userInfo.Account}`,
imageUrl: "https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1664163809000_838.png", imageUrl: "https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1664163809000_838.png",
}; };
}, },
......
...@@ -69,90 +69,98 @@ ...@@ -69,90 +69,98 @@
</view> </view>
</view> </view>
</view> </view>
<template v-if="pageData.CourseInfo.length>0"> <view class="courseInfo" v-if="pageData.CourseInfo.length>0">
<view class="courseInfo" v-for="(item,index) in pageData.CourseInfo">
<template v-if="item.State==1"> <view class="title">当前学习课程</view>
<view class="title">当前学习课程</view> <view class="box" :style="{ 'margin-top': `${statusBarHeight}px` }">
<view class="statistic"> <view class="box-top">
<view class="statisticItem"> <carousel :img-list="pageData.CourseInfo" url-key="B2BIcon" @selected='selectedBanner'></carousel>
<view class="time">{{ item.TotalHours||0 }} </view>
<!-- <text class="unit"></text> --> </view>
<scroll-view scroll-y="true" style="display: none;">
<template v-for="(item,index) in pageData.CourseInfo">
<template v-if="item.State==1">
<view class="statistic">
<view class="statisticItem">
<view class="time">{{ item.TotalHours||0 }}
<!-- <text class="unit"></text> -->
</view>
<view class="statisticName">总共课时</view>
</view> </view>
<view class="statisticName">总共课时</view> <view class="statisticItem" style="display: none;">
</view> <view class="time">{{ item.CompleteHours||0 }}
<view class="statisticItem" style="display: none;"> </view>
<view class="time">{{ item.CompleteHours||0 }} <view class="statisticName">已学课时</view>
</view> </view>
<view class="statisticName">已学课时</view> <view class="statisticItem">
</view> <view class="time">{{ item.AbsenceNum||0 }}
<view class="statisticItem"> </view>
<view class="time">{{ item.AbsenceNum||0 }} <view class="statisticName">缺勤课时</view>
</view> </view>
<view class="statisticName">缺勤课时</view> <view class="statisticItem">
</view> <view class="time">{{ item.LeaveNum||0 }}
<view class="statisticItem"> </view>
<view class="time">{{ item.LeaveNum||0 }} <view class="statisticName">请假课时</view>
</view> </view>
<view class="statisticName">请假课时</view>
</view> </view>
</view> <view class="courseBox">
<view class="courseBox"> <view class="left">
<view class="left"> <view style="width: 115rpx;
<view style="width: 115rpx; height: 13rpx;
height: 13rpx; background-color: #9CD4C1;
background-color: #9CD4C1; border-radius: 6rpx;
border-radius: 6rpx; margin-bottom: 20rpx;
margin-bottom: 20rpx; ">
"> </view>
</view> <view style="width: 90rpx;
<view style="width: 90rpx; height: 13rpx;
height: 13rpx; background-color: #9CD4C1;
background-color: #9CD4C1; border-radius: 6rpx;
border-radius: 6rpx; margin-bottom: 20rpx;
margin-bottom: 20rpx; ">
"> </view>
<view style="width: 60rpx;
height: 13rpx;
background-color: #9CD4C1;
border-radius: 6rpx;
">
</view>
<image :src="item.B2BIcon" mode="aspectFill"
style="width:115rpx;height:115rpx;border-radius: 6rpx; position: absolute;bottom:10rpx;right: 18rpx;">
</image>
</view> </view>
<view style="width: 60rpx; <view class="right">
height: 13rpx; <view class="className one_line">{{
background-color: #9CD4C1; item.CourseName
border-radius: 6rpx; }}</view>
"> <view class="Grade" style="margin-bottom:20rpx" v-if="item.ClassScrollType!==2">{{
item.ClassName
}}</view>
<view><text class="Grade">状态:</text>
<text class="StatusName" v-if="item.TotalHours>item.CompleteHours">
学习中
</text>
<text class="StatusName" v-if="item.TotalHours==item.CompleteHours">
已结课
</text>
</view>
</view> </view>
<image :src="item.B2BIcon" mode="aspectFill"
style="width:115rpx;height:115rpx;border-radius: 6rpx; position: absolute;bottom:10rpx;right: 18rpx;">
</image>
</view> </view>
<view class="right"> </template>
<view class="className one_line">{{ </template>
item.CourseName </scroll-view>
}}</view>
<view class="Grade" style="margin-bottom:20rpx" v-if="item.ClassScrollType!==2">{{
item.ClassName
}}</view>
<view><text class="Grade">状态:</text>
<text class="StatusName" v-if="item.TotalHours>item.CompleteHours">
学习中
</text>
<text class="StatusName" v-if="item.TotalHours==item.CompleteHours">
已结课
</text>
</view>
</view>
</view>
</template>
</view> </view>
</template>
<view class="serve" v-if="pageData.AssistList.length>0"> <view class="serve" v-if="pageData.AssistList.length>0">
<view class="serveSubTitle">随时电话联系哟</view>
<view class="serveTitle">服务人员信息</view> <view class="serveTitle">服务人员信息</view>
<view class="serveSubTitle">随时电话联系哟</view>
<view v-for="(item,index) in pageData.AssistList" :key="index" class="serviceItem"> <view v-for="(item,index) in pageData.AssistList" :key="index" class="serviceItem">
<view class="headimg"> <view class="headimg">
<image :src="item.UserIcon" mode="aspectFill" style="width:100%;height:100%;border-radius: 24rpx;" <image :src="item.UserIcon" mode="aspectFill" style="width:100%;height:100%;border-radius: 40rpx;"
v-if="item.UserIcon" /> v-if="item.UserIcon" />
<view class="flex_center_center" <view class="flex_center_center"
style="width:100%;height:100%;border-radius: 24rpx;font-size: 46rpx;font-weight: bold;color: #FFFFFF;background-color: #4c50e7;" style="width:100%;height:100%;border-radius: 40rpx;font-size: 46rpx;font-weight: bold;color: #CE8086;background-color: #FCEEEF;"
v-else>{{ item.EmployeeName.slice(0, 1) }}</view> v-else>{{ item.EmployeeName.slice(0, 1) }}</view>
</view> </view>
<view class="serviceInfo flex_between_center"> <view class="serviceInfo flex_between_center">
...@@ -160,19 +168,35 @@ ...@@ -160,19 +168,35 @@
<view class="flex_start_center" style="height:32rpx;width:100%"> <view class="flex_start_center" style="height:32rpx;width:100%">
<text class="EmployeeName">{{ item.EmployeeName }}</text><text <text class="EmployeeName">{{ item.EmployeeName }}</text><text
class="AssistTypeName">{{ item.AssistTypeName }}</text> class="AssistTypeName">{{ item.AssistTypeName }}</text>
</view> </view>
<view class="Mobile">{{item.Mobile }}</view> <view class="Mobile">{{item.Mobile }}</view>
</view> </view>
<view style="width:60rpx;height:40rpx;" @click="callphone(item.Mobile)"> <view style="width:60rpx;height:40rpx;text-align: right;">
<image <image v-if="item.WXQRCode" :src="item.WXQRCode" @click="ImageSee(item)"
style="width:50rpx;height:50rpx;border-radius: 10rpx;"></image>
<van-icon v-else name="photo-o" size="30" color="#919191" @click="ImageSee(item)"></van-icon>
<!-- <image
src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1663903083000_729.png" src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1663903083000_729.png"
mode="aspectFit" style="width:100%;height:100%" /> mode="aspectFit" style="width:100%;height:100%" /> -->
</view> </view>
</view> </view>
</view> </view>
</view> </view>
<bottom /> <bottom />
<tabbar active-name='usercenter'></tabbar> <tabbar active-name='usercenter'></tabbar>
<van-popup
:show="showPopup"
round
>
<view style="padding: 63rpx;">
<image :src="QRcodeImg"
style="width: 378rpx;height: 377rpx;"></image>
</view>
<view class="cross-box">
<van-icon name="close" color="#111111" size="48rpx" @click="showPopup=false"/>
</view>
</van-popup>
</view> </view>
</template> </template>
...@@ -190,20 +214,24 @@ ...@@ -190,20 +214,24 @@
inject, inject,
} from "vue"; } from "vue";
import bottom from "../../components/bottom"; import bottom from "../../components/bottom";
import carousel from './components/vear-carousel/vear-carousel.vue'
import { VersionUpdate } from '../../utils/index.js' import { VersionUpdate } from '../../utils/index.js'
import { import {
GetMyCenterInfo,GetMyAppointPageList GetMyCenterInfo,GetMyAppointPageList,CreateTeacherCode
} from "../../api/erp"; } from "../../api/erp";
export default { export default {
components: { components: {
tabbar, tabbar,
bottom, bottom,
carousel
}, },
setup(props, context) { setup(props, context) {
let { let {
proxy proxy
} = getCurrentInstance(); } = getCurrentInstance();
let data = reactive({ let data = reactive({
QRcodeImg:'',
showPopup:false,
colors:['#9ADBC5','#87DDEA','#FE8D6F','#F986AA','#FDC453'], colors:['#9ADBC5','#87DDEA','#FE8D6F','#F986AA','#FDC453'],
pageData: { pageData: {
AssistList: [] AssistList: []
...@@ -211,11 +239,35 @@ ...@@ -211,11 +239,35 @@
yuyueNum: 0, yuyueNum: 0,
currentErpUser:null, currentErpUser:null,
erpUsers:[], erpUsers:[],
statusBarHeight: 0,
}); });
data.erpUsers=uni.getStorageSync('ErpStus') data.erpUsers=uni.getStorageSync('ErpStus')
data.currentErpUser=uni.getStorageSync('erpUserInfo') data.currentErpUser=uni.getStorageSync('erpUserInfo')
const methods = { const methods = {
VersionUpdate, VersionUpdate,
selectedBanner(){
},
ImageSee(item){
if(item.WXQRCode){
data.QRcodeImg = item.WXQRCode
data.showPopup = true
}else{
that.getQRcodeImg(item)
}
},
async getQRcodeImg(item){
uni.showLoading()
let msg = {
TeacherId: item.AccountId
}
let res = await CreateTeacherCode(msg);
if (res) {
uni.hideLoading()
that.getData()
}
},
initColor(){ initColor(){
if(data.erpUsers){ if(data.erpUsers){
let i=0 let i=0
...@@ -382,22 +434,28 @@ ...@@ -382,22 +434,28 @@
.courseInfo { .courseInfo {
/* height: 535rpx; */ /* height: 535rpx; */
background-color: #ebebeb; background-color: #ebebeb;
padding: 40rpx 35rpx; padding: 40rpx 35rpx 40rpx 0rpx;
margin-bottom: 70rpx; margin-bottom: 52rpx;
} }
.courseInfo .title { .courseInfo .title {
font-size: 28rpx; padding: 15rpx 0 0 40rpx;
font-size: 34rpx;
font-weight: bold; font-weight: bold;
color: #111111; color: #111111;
margin-bottom: 40rpx; margin-bottom: 31rpx;
font-weight: 800;
} }
.statistic { .statistic {
/* height: 70rpx; */ /* height: 70rpx; */
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
margin-bottom: 70rpx; margin-bottom: 20rpx;
margin-top: 30rpx;
}
.statistic:first-child{
margin-top: 0;
} }
.statisticItem { .statisticItem {
...@@ -487,16 +545,17 @@ ...@@ -487,16 +545,17 @@
} }
.serveTitle { .serveTitle {
font-size: 46rpx; font-size: 34rpx;
font-weight: bold; font-weight: 800;
color: #111111; color: #111111;
} }
.serveSubTitle { .serveSubTitle {
font-size: 28rpx; font-size: 26rpx;
font-weight: 500; font-weight: 500;
color: #666666; color: #666666;
margin-bottom: 30rpx; margin-bottom: 51rpx;
margin-top: 22rpx;
} }
.serviceItem { .serviceItem {
...@@ -550,4 +609,8 @@ ...@@ -550,4 +609,8 @@
font-weight: 500; font-weight: 500;
color: #111111; color: #111111;
} }
.cross-box{
text-align: center;
margin-bottom: 20rpx;
}
</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