Merge branch 'bjxz-dev' of http://139.9.66.234:18023/dhp/zhgdyunapp into bjxz-rain
This commit is contained in:
commit
1a27280593
@ -19,7 +19,7 @@
|
||||
"type" : "uniCloud"
|
||||
},
|
||||
{
|
||||
"playground" : "standard",
|
||||
"playground" : "custom",
|
||||
"type" : "uni-app:app-android"
|
||||
},
|
||||
{
|
||||
|
||||
2
App.vue
2
App.vue
@ -210,7 +210,7 @@
|
||||
// background-color: #f3f5fd;
|
||||
color: $uni-text-color;
|
||||
}
|
||||
|
||||
|
||||
.bgLightBlue {
|
||||
background-color: #f3f5fd;
|
||||
}
|
||||
|
||||
4
main.js
4
main.js
@ -41,8 +41,8 @@ if (process.env.NODE_ENV === 'development') {
|
||||
// Vue.prototype.url_config = 'http://182.90.224.237:51234/' //雄哥内网穿透地址
|
||||
// Vue.prototype.url_config = 'http://jxj.zhgdyun.com:61212/' //杰哥内网穿透地址
|
||||
// Vue.prototype.url_config = ' http://192.168.34.221:28888/' //郭圣雄本地
|
||||
Vue.prototype.url_config = 'http://192.168.34.221:9111/' //郭圣雄本地
|
||||
// Vue.prototype.url_config = 'http://192.168.34.155:19111/' //彭洁本地
|
||||
// Vue.prototype.url_config = 'http://192.168.34.221:9111/' //郭圣雄本地
|
||||
Vue.prototype.url_config = 'http://192.168.34.155:19111/' //彭洁本地
|
||||
// Vue.prototype.work_url = 'http://47.93.215.234:19997' // 工作流线上地址(弃用)
|
||||
// Vue.prototype.work_url = 'http://42.180.188.17:19997' // 工作流线上地址
|
||||
// Vue.prototype.work_url = 'http://42.180.188.17:19097' // 工作流测试地址
|
||||
|
||||
16
pages.json
16
pages.json
@ -2401,13 +2401,7 @@
|
||||
{
|
||||
"path": "pages/personLocation/exam/index/index",
|
||||
"style": {
|
||||
"app-plus": {
|
||||
"titleNView": {
|
||||
"titleColor": "#ffffff",
|
||||
"autoBackButton": false
|
||||
}
|
||||
},
|
||||
"navigationBarTitleText": "教育培训"
|
||||
"navigationBarTitleText": ""
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -2512,9 +2506,17 @@
|
||||
}
|
||||
},
|
||||
{
|
||||
<<<<<<< HEAD
|
||||
"path": "pages/projectEnd/trainPlan/searchTeam/personList",
|
||||
"style": {
|
||||
"navigationBarTitleText": ""
|
||||
=======
|
||||
"path" : "pages/projectEnd/trainPlan/searchTeam/personList",
|
||||
"style" :
|
||||
{
|
||||
"navigationBarTitleText" : "",
|
||||
"onReachBottomDistance": 100
|
||||
>>>>>>> 8d4c6f69b5f932e4842d3f9ddd13043de9837210
|
||||
}
|
||||
},
|
||||
{
|
||||
|
||||
@ -1,22 +1,22 @@
|
||||
<template>
|
||||
<!-- <web-view src="http://niunian.hk.fq99.top"></web-view> -->
|
||||
<view class="loginPage">
|
||||
<!-- <view class="barBox" :style="{'height':systemInfo.statusBarHeight+'px'}"> -->
|
||||
<view class="barBox">
|
||||
</view>
|
||||
<view class="loginBox">
|
||||
<view class="loginTitle">
|
||||
<image class="loginLogo" src="@/static/login/logo.pic.jpg" mode="heightFix"></image>
|
||||
智慧工地服务平台
|
||||
</view>
|
||||
<view class="btns">
|
||||
<view class="user feedback" @click="goto('user')">用户登录</view>
|
||||
<view class="feedback personLocation" @click="gotoPersonLocation()">施工人员登录</view>
|
||||
<!-- <view class="user feedback" @click="goto('user')">我是用户</view> -->
|
||||
<!-- <view class="supplier feedback black" @click="goto('supplier')">我是供应商</view> -->
|
||||
</view>
|
||||
</view>
|
||||
<!-- <view class="bottomTitle" @click="showModal=true">
|
||||
<!-- <web-view src="http://niunian.hk.fq99.top"></web-view> -->
|
||||
<view class="loginPage">
|
||||
<!-- <view class="barBox" :style="{'height':systemInfo.statusBarHeight+'px'}"> -->
|
||||
<view class="barBox">
|
||||
</view>
|
||||
<view class="loginBox">
|
||||
<view class="loginTitle">
|
||||
<image class="loginLogo" src="@/static/login/logo.pic.jpg" mode="heightFix"></image>
|
||||
智慧工地服务平台
|
||||
</view>
|
||||
<view class="btns">
|
||||
<view class="user feedback" @click="goto('user')">用户登录</view>
|
||||
<view class="feedback personLocation" @click="gotoPersonLocation()">施工人员登录</view>
|
||||
<!-- <view class="user feedback" @click="goto('user')">我是用户</view> -->
|
||||
<!-- <view class="supplier feedback black" @click="goto('supplier')">我是供应商</view> -->
|
||||
</view>
|
||||
</view>
|
||||
<!-- <view class="bottomTitle" @click="showModal=true">
|
||||
云服务器设置
|
||||
</view> -->
|
||||
<!-- <view class="modalBox" v-show="showModal">
|
||||
@ -72,38 +72,41 @@
|
||||
let {
|
||||
accountType
|
||||
} = userInfo;
|
||||
if (accountType == 5 || accountType == 6 || accountType == 10) {
|
||||
// 判断是否点击的是消息通知
|
||||
plus.push.addEventListener('click', function(msg) {
|
||||
uni.navigateTo({
|
||||
url: '/pages/messageCenter/messageCenter'
|
||||
})
|
||||
}, false);
|
||||
// 用户端
|
||||
uni.reLaunch({
|
||||
url: '/pages/projectEnd/projectIndex/projectIndex'
|
||||
})
|
||||
} else if (accountType == 11) {
|
||||
// 供应商
|
||||
let company = uni.getStorageSync("company");
|
||||
if (company) {
|
||||
// 判断用户登录时是否选中了组织
|
||||
if (accountType) {
|
||||
if (accountType == 5 || accountType == 6 || accountType == 10) {
|
||||
// 判断是否点击的是消息通知
|
||||
plus.push.addEventListener('click', function(msg) {
|
||||
uni.navigateTo({
|
||||
url: '/pages/messageCenter/messageCenter'
|
||||
})
|
||||
}, false);
|
||||
// 用户端
|
||||
uni.reLaunch({
|
||||
url: '/pages/supplier/supplier'
|
||||
url: '/pages/projectEnd/projectIndex/projectIndex'
|
||||
})
|
||||
} else if (accountType == 11) {
|
||||
// 供应商
|
||||
let company = uni.getStorageSync("company");
|
||||
if (company) {
|
||||
// 判断用户登录时是否选中了组织
|
||||
uni.reLaunch({
|
||||
url: '/pages/supplier/supplier'
|
||||
})
|
||||
} else {
|
||||
// 未选中代表新注册用户 只看查看资质
|
||||
uni.reLaunch({
|
||||
url: "/pages/supplier/qualifications/qualifications?isNull=1"
|
||||
})
|
||||
}
|
||||
|
||||
} else {
|
||||
// 未选中代表新注册用户 只看查看资质
|
||||
uni.reLaunch({
|
||||
url: "/pages/supplier/qualifications/qualifications?isNull=1"
|
||||
// 集团
|
||||
uni.redirectTo({
|
||||
url: '/pages/projectManage/projectManage'
|
||||
})
|
||||
}
|
||||
|
||||
} else {
|
||||
// 集团
|
||||
uni.redirectTo({
|
||||
url: '/pages/projectManage/projectManage'
|
||||
})
|
||||
}
|
||||
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
@ -131,33 +134,33 @@
|
||||
}
|
||||
|
||||
|
||||
},
|
||||
methods: {
|
||||
gotoPersonLocation(){
|
||||
uni.navigateTo({
|
||||
url: `/pages/personLocation/login/login`
|
||||
})
|
||||
},
|
||||
goto(type) {
|
||||
// 跳转用户和供应商注册页面 存储选择的类型
|
||||
uni.setStorageSync("Type", type);
|
||||
uni.navigateTo({
|
||||
url: `/pages/login/compatibleLogin?type=${type}`
|
||||
})
|
||||
},
|
||||
saveServerData(e) {
|
||||
// uni.setStorageSync('ipPort', e.detail.value.ipPort)
|
||||
// Vue.prototype.url_config = uni.getStorageSync('ipPort') + '/'
|
||||
// getApp().globalData.siteUrl = uni.getStorageSync('ipPort') + '/'
|
||||
this.showModal = false
|
||||
},
|
||||
formSubmit(e) {
|
||||
// console.log(e)
|
||||
var json = {
|
||||
account: e.detail.value.account,
|
||||
password: e.detail.value.password,
|
||||
clientId: this.clientid
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
gotoPersonLocation() {
|
||||
uni.navigateTo({
|
||||
url: `/pages/personLocation/login/login`
|
||||
})
|
||||
},
|
||||
goto(type) {
|
||||
// 跳转用户和供应商注册页面 存储选择的类型
|
||||
uni.setStorageSync("Type", type);
|
||||
uni.navigateTo({
|
||||
url: `/pages/login/compatibleLogin?type=${type}`
|
||||
})
|
||||
},
|
||||
saveServerData(e) {
|
||||
// uni.setStorageSync('ipPort', e.detail.value.ipPort)
|
||||
// Vue.prototype.url_config = uni.getStorageSync('ipPort') + '/'
|
||||
// getApp().globalData.siteUrl = uni.getStorageSync('ipPort') + '/'
|
||||
this.showModal = false
|
||||
},
|
||||
formSubmit(e) {
|
||||
// console.log(e)
|
||||
var json = {
|
||||
account: e.detail.value.account,
|
||||
password: e.detail.value.password,
|
||||
clientId: this.clientid
|
||||
}
|
||||
|
||||
this.sendRequest({
|
||||
url: "xmgl/base/login",
|
||||
@ -215,18 +218,18 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.personLocation {
|
||||
color: #1D49B2;
|
||||
background-color: #EDF2FE;
|
||||
}
|
||||
|
||||
.loginPage {
|
||||
position: relative;
|
||||
height: 100vh;
|
||||
color: $uni-text-color;
|
||||
background: url("@/static/WechatIMG15.jpg");
|
||||
background-size: cover;
|
||||
}
|
||||
.personLocation {
|
||||
color: #1D49B2;
|
||||
background-color: #EDF2FE;
|
||||
}
|
||||
|
||||
.loginPage {
|
||||
position: relative;
|
||||
height: 100vh;
|
||||
color: $uni-text-color;
|
||||
background: url("@/static/WechatIMG15.jpg");
|
||||
background-size: cover;
|
||||
}
|
||||
|
||||
.feedback {
|
||||
&:active {
|
||||
|
||||
@ -6,22 +6,37 @@
|
||||
</view>
|
||||
</headers>
|
||||
<view class="beginexam" v-for="(item,index) in stList" :key="index" v-show="index == stIndex">
|
||||
<view class="">
|
||||
<text class="text">{{index + 1}}、{{item.questionName}}</text>
|
||||
<view class="questionTitle">
|
||||
<text class="text">{{index + 1}}、{{item.questionName}}({{item.score||0}}分)</text>
|
||||
<text class="rest-time">剩余时间:{{ timeLeft }}</text>
|
||||
</view>
|
||||
<view class="radio-content">
|
||||
<radio-group @change="radioChange" class="radio-boxs">
|
||||
<radio-group @change="radioChange" class="radio-boxs" v-if="item.type == 1">
|
||||
<label class="radio" v-for="(item2,index2) in item.optionList">
|
||||
<radio :value="item2.optionCode" /><text>{{item2.optionCode}}、</text>{{item2.optionDesc}}
|
||||
</label>
|
||||
</radio-group>
|
||||
<checkbox-group @change="checkChange" class="check-boxs" v-if="item.type == 2">
|
||||
<label class="radio" v-for="(item2,index2) in item.optionList">
|
||||
<checkbox :value="item2.optionCode" /><text>{{item2.optionCode}}、</text>{{item2.optionDesc}}
|
||||
</label>
|
||||
</checkbox-group>
|
||||
</view>
|
||||
</view>
|
||||
<view class="progress-style">
|
||||
<progress :percent="(stIndex + 1) * 100 / stList.length" :stroke-width="11" backgroundColor="#F5F5F5" />
|
||||
<view class="progress-style" v-show="stList.length > 0">
|
||||
<progress :percent="((stIndex + 1) * 100 / stList.length).toFixed(0)" :stroke-width="11" backgroundColor="#F5F5F5" />
|
||||
</view>
|
||||
<view class="step-btn" v-show="stList.length > 0">
|
||||
<button type="primary" class="btn-front" @click="goFront" v-show="stIndex > 0">上一题</button>
|
||||
<button type="primary" class="btn-front" @click="goNext" v-show="stIndex < stList.length - 1">下一题</button>
|
||||
<button type="primary" class="btn" @click="goHiidden">交卷</button>
|
||||
</view>
|
||||
<view class="placeholderBox" v-if="stList.length == 0">
|
||||
<image src="/static/exam/noCourseData.png" class="noDataImg" style="width: 180rpx; height: 160rpx;"></image>
|
||||
<!-- <view class="text">
|
||||
暂无数据
|
||||
</view> -->
|
||||
</view>
|
||||
<button type="primary" class="btn-front" @click="goFront" v-if="stIndex > 0">上一题</button>
|
||||
<button type="primary" class="btn" @click="goHiidden">交卷</button>
|
||||
<levitatedsphere :x="100" :y="80"></levitatedsphere>
|
||||
</view>
|
||||
</template>
|
||||
@ -31,6 +46,8 @@
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
totalTime: 10, // 假设考试总时长为60分钟
|
||||
timer: null, // 计时器
|
||||
percent: 0,
|
||||
stIndex: 0,
|
||||
stList: [],
|
||||
@ -42,8 +59,82 @@
|
||||
},
|
||||
onLoad(options) {
|
||||
this.pageData = JSON.parse(options.transportData)
|
||||
console.log(this.pageData.examDuration)
|
||||
this.totalTime = +this.pageData.examDuration * 60;
|
||||
},
|
||||
onShow() {
|
||||
this.startTimer();
|
||||
},
|
||||
onHide() {
|
||||
this.stopTimer();
|
||||
},
|
||||
computed: {
|
||||
timeLeft() {
|
||||
let hours = Math.floor(this.totalTime / 3600);
|
||||
let minutes = Math.floor((this.totalTime % 3600) / 60);
|
||||
let seconds = this.totalTime % 60;
|
||||
|
||||
hours = hours < 10 ? '0' + hours : hours;
|
||||
minutes = minutes < 10 ? '0' + minutes : minutes;
|
||||
seconds = seconds < 10 ? '0' + seconds : seconds;
|
||||
|
||||
return `${hours}:${minutes}:${seconds}`;
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
// 自动交卷
|
||||
autoSubmit() {
|
||||
var that = this
|
||||
uni.showModal({
|
||||
title: '提示',
|
||||
showCancel: false,
|
||||
content: '考试时间已到,正在交卷...',
|
||||
success: function(res) {
|
||||
if (res.confirm) {
|
||||
let requestData = {
|
||||
examAnswerQuestionList: that.stList
|
||||
}
|
||||
that.sendRequest({
|
||||
url: "xmgl/workerExam/submit",
|
||||
data: that.stList,
|
||||
method: 'post',
|
||||
success(res) {
|
||||
uni.showToast({
|
||||
title: "提交成功",
|
||||
icon: "none"
|
||||
})
|
||||
let responseData = res.result;
|
||||
let transportData = {
|
||||
...that.pageData,
|
||||
...responseData
|
||||
}
|
||||
uni.redirectTo({
|
||||
url: `/pages/personLocation/exam/examresult/examresult?examData=` +
|
||||
JSON.stringify(transportData)
|
||||
});
|
||||
}
|
||||
})
|
||||
} else if (res.cancel) {
|
||||
console.log('用户点击取消');
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
startTimer() {
|
||||
this.timer = setInterval(() => {
|
||||
if (this.totalTime > 0) {
|
||||
this.totalTime -= 1;
|
||||
} else {
|
||||
this.stopTimer();
|
||||
this.autoSubmit();
|
||||
// 考虑考试时间到,需要做的操作,比如提示考试结束
|
||||
}
|
||||
}, 1000);
|
||||
},
|
||||
stopTimer() {
|
||||
clearInterval(this.timer);
|
||||
this.timer = null;
|
||||
},
|
||||
getDataFn() {
|
||||
var that = this
|
||||
let requestData = {
|
||||
@ -55,13 +146,24 @@
|
||||
method: 'post',
|
||||
success(res) {
|
||||
console.log('试题信息', res)
|
||||
if (res.result) {
|
||||
if (res.result && res.result.length > 0) {
|
||||
that.stList = res.result;
|
||||
var tab = document.querySelector('.uni-progress-inner-bar');
|
||||
var p = document.createElement('p');
|
||||
p.className = "uni-progress-info"
|
||||
p.innerText = (((that.stIndex + 1) * 100) / that.stList.length).toFixed(0) + '%'
|
||||
tab.appendChild(p);
|
||||
// var tab = document.querySelector('.uni-progress-inner-bar');
|
||||
// var p = document.createElement('p');
|
||||
// p.className = "uni-progress-info"
|
||||
// p.innerText = (((that.stIndex + 1) * 100) / that.stList.length).toFixed(0) + '%'
|
||||
// tab.appendChild(p);
|
||||
// const query = uni.createSelectorQuery().in(this);
|
||||
// query.select('.uni-progress-inner-bar').boundingClientRect(data => {
|
||||
// // data 是选中元素的大小位置信息
|
||||
// console.log(data)
|
||||
// const element = data[0]
|
||||
// var p = document.createElement('p');
|
||||
// p.className = "uni-progress-info"
|
||||
// p.innerText = (((that.stIndex + 1) * 100) / that.stList.length).toFixed(
|
||||
// 0) + '%'
|
||||
// element.appendChild(p);
|
||||
// }).exec();
|
||||
that.stList.map(item => {
|
||||
item.trainRecordId = that.pageData.trainRecordId
|
||||
})
|
||||
@ -77,19 +179,46 @@
|
||||
if (that.stIndex == that.stList.length - 1) {
|
||||
return;
|
||||
}
|
||||
uni.showLoading()
|
||||
setTimeout(function() {
|
||||
that.stIndex++;
|
||||
var progressTip = document.querySelector('.uni-progress-info');
|
||||
progressTip.innerText = (((that.stIndex + 1) * 100) / that.stList.length).toFixed(0) + '%'
|
||||
uni.hideLoading()
|
||||
}, 500)
|
||||
// uni.showLoading()
|
||||
// setTimeout(function() {
|
||||
// that.stIndex++;
|
||||
// var progressTip = document.querySelector('.uni-progress-info');
|
||||
// progressTip.innerText = (((that.stIndex + 1) * 100) / that.stList.length).toFixed(0) + '%'
|
||||
// uni.hideLoading()
|
||||
// }, 500)
|
||||
},
|
||||
checkChange(evt) {
|
||||
console.log(evt)
|
||||
this.stList[this.stIndex].answer = evt.detail.value.join('')
|
||||
let that = this;
|
||||
// 当到达最后一题时
|
||||
if (that.stIndex == that.stList.length - 1) {
|
||||
return;
|
||||
}
|
||||
// uni.showLoading()
|
||||
// setTimeout(function() {
|
||||
// that.stIndex++;
|
||||
// var progressTip = document.querySelector('.uni-progress-info');
|
||||
// progressTip.innerText = (((that.stIndex + 1) * 100) / that.stList.length).toFixed(0) + '%'
|
||||
// uni.hideLoading()
|
||||
// }, 500)
|
||||
},
|
||||
// 去上一题
|
||||
goFront(index) {
|
||||
this.stIndex--;
|
||||
let that = this;
|
||||
that.stIndex--;
|
||||
var progressTip = document.querySelector('.uni-progress-info');
|
||||
progressTip.innerText = (((that.stIndex + 1) * 100) / that.stList.length).toFixed(0) + '%'
|
||||
},
|
||||
goHiidden(item) {
|
||||
// 去下一题
|
||||
goNext(index) {
|
||||
let that = this;
|
||||
that.stIndex++;
|
||||
var progressTip = document.querySelector('.uni-progress-info');
|
||||
progressTip.innerText = (((that.stIndex + 1) * 100) / that.stList.length).toFixed(0) + '%'
|
||||
// uni.hideLoading()
|
||||
},
|
||||
goHiidden() {
|
||||
var that = this
|
||||
uni.showModal({
|
||||
title: '提示',
|
||||
@ -109,9 +238,13 @@
|
||||
icon: "none"
|
||||
})
|
||||
let responseData = res.result;
|
||||
let transportData = {
|
||||
...that.pageData,
|
||||
...responseData
|
||||
}
|
||||
uni.redirectTo({
|
||||
url: `/pages/personLocation/exam/examresult/examresult?examData=` +
|
||||
JSON.stringify(responseData)
|
||||
JSON.stringify(transportData)
|
||||
});
|
||||
}
|
||||
})
|
||||
@ -131,9 +264,22 @@
|
||||
.beginexam {
|
||||
padding: 26.92rpx 32.69rpx;
|
||||
|
||||
.text {
|
||||
font-size: 34.62rpx;
|
||||
color: #272D45;
|
||||
.questionTitle {
|
||||
width: 100%;
|
||||
position: relative;
|
||||
|
||||
.text {
|
||||
width: 61%;
|
||||
display: inline-block;
|
||||
font-size: 34.62rpx;
|
||||
color: #272D45;
|
||||
}
|
||||
|
||||
.rest-time {
|
||||
position: absolute;
|
||||
top: 7rpx;
|
||||
right: 20rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.radio-content {
|
||||
@ -145,6 +291,15 @@
|
||||
.radio-boxs>label {
|
||||
padding: 20rpx 0;
|
||||
}
|
||||
|
||||
.check-boxs {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.check-boxs>label {
|
||||
padding: 20rpx 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -152,21 +307,39 @@
|
||||
padding: 26.92rpx 32.69rpx;
|
||||
}
|
||||
|
||||
.btn {
|
||||
.step-btn {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
width: calc(100% - 80.76rpx);
|
||||
height: auto;
|
||||
position: absolute;
|
||||
bottom: 180.77rpx;
|
||||
left: 50%;
|
||||
transform: translateX(-50%);
|
||||
|
||||
button {
|
||||
width: 100%;
|
||||
margin-bottom: 20rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.btn-front {
|
||||
width: calc(100% - 80.76rpx);
|
||||
position: absolute;
|
||||
bottom: 290rpx;
|
||||
left: 50%;
|
||||
transform: translateX(-50%);
|
||||
}
|
||||
// .btn {
|
||||
// width: calc(100% - 80.76rpx);
|
||||
// position: absolute;
|
||||
// bottom: 180.77rpx;
|
||||
// left: 50%;
|
||||
// transform: translateX(-50%);
|
||||
// }
|
||||
|
||||
// .btn-front {
|
||||
// width: calc(100% - 80.76rpx);
|
||||
// position: absolute;
|
||||
// bottom: 290rpx;
|
||||
// left: 50%;
|
||||
// transform: translateX(-50%);
|
||||
// }
|
||||
}
|
||||
|
||||
|
||||
@ -189,7 +362,6 @@
|
||||
position: relative;
|
||||
background: linear-gradient(111deg, #5383F6 0%, #7FF0FF 100%);
|
||||
}
|
||||
|
||||
/deep/ .uni-progress-info {
|
||||
position: absolute;
|
||||
right: 20rpx;
|
||||
|
||||
@ -17,13 +17,13 @@
|
||||
<text>对于成绩不满意可再次考试</text>
|
||||
</view>
|
||||
<button type="primary" class="btn"
|
||||
@click="goHiidden('/personLocation/exam/beginexam/beginexam')">再考一次</button>
|
||||
@click="examAgain('/personLocation/exam/beginexam/beginexam')">再考一次</button>
|
||||
<button type="primary" class="btn1" plain="true"
|
||||
@click="goHiidden('/personLocation/exam/index/index')">返回</button>
|
||||
</view>
|
||||
<view class="examresult" v-else>
|
||||
<view class="text-success">
|
||||
<text>80</text>
|
||||
<text>{{pageData.score}}</text>
|
||||
</view>
|
||||
<view class="image-tip">
|
||||
<image src="/static/exam/examSuccess.png" mode=""></image>
|
||||
@ -32,7 +32,7 @@
|
||||
<text>恭喜您通过考试</text>
|
||||
</view>
|
||||
<button type="primary" class="btn"
|
||||
@click="goHiidden('/personLocation/exam/beginexam/beginexam')">返回</button>
|
||||
@click="goHiidden('/personLocation/exam/index/index')">返回</button>
|
||||
</view>
|
||||
<levitatedsphere :x="100" :y="80"></levitatedsphere>
|
||||
</view>
|
||||
@ -48,14 +48,20 @@
|
||||
}
|
||||
},
|
||||
created() {
|
||||
document.querySelector('.uni-page-head-hd').style.display = 'none'
|
||||
// document.querySelector('.uni-page-head-hd').style.display = 'none'
|
||||
},
|
||||
onLoad(options) {
|
||||
this.pageData = JSON.parse(options.examData)
|
||||
},
|
||||
methods: {
|
||||
examAgain(url){
|
||||
uni.redirectTo({
|
||||
url: `/pages${url}?transportData=` + JSON.stringify(this
|
||||
.pageData)
|
||||
});
|
||||
},
|
||||
goHiidden(url) {
|
||||
uni.navigateTo({
|
||||
uni.redirectTo({
|
||||
url: `/pages${url}`
|
||||
});
|
||||
},
|
||||
|
||||
@ -50,6 +50,8 @@
|
||||
},
|
||||
onLoad() {
|
||||
this.userInfo = JSON.parse(uni.getStorageSync("userInfo"))
|
||||
},
|
||||
onShow() {
|
||||
this.getDataList();
|
||||
},
|
||||
methods: {
|
||||
@ -80,7 +82,8 @@
|
||||
courseId: item.courseId,
|
||||
examPaperId: item.examPaperId,
|
||||
trainRecordId: item.id,
|
||||
trainId: item.trainId
|
||||
trainId: item.trainId,
|
||||
examDuration: item.examDuration
|
||||
}
|
||||
uni.navigateTo({
|
||||
url: `/pages/personLocation/exam/studydetails/studydetails?transportData=` + JSON.stringify(transportData)
|
||||
@ -92,6 +95,9 @@
|
||||
|
||||
<style scoped lang="scss">
|
||||
.main-content {
|
||||
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
.top-diy {
|
||||
height: 100%;
|
||||
display: flex;
|
||||
@ -107,8 +113,10 @@
|
||||
}
|
||||
|
||||
.index-boxs {
|
||||
padding: 58rpx 35rpx;
|
||||
|
||||
height: calc(100vh - 220rpx);
|
||||
overflow-y: scroll;
|
||||
padding: 0rpx 35rpx;
|
||||
padding-top: 58rpx;
|
||||
.index-box {
|
||||
width: 100%;
|
||||
background-color: white;
|
||||
|
||||
@ -11,7 +11,7 @@
|
||||
</view>
|
||||
<view class="rules">
|
||||
<view class="rules-box" v-for="(item,index) in listData" :key="index">
|
||||
<image :src="item.logoUrl" v-if="item.logoUrl"></image>
|
||||
<image :src="item.logoUrl" v-if="fileTypeCondition(item.logoUrl)"></image>
|
||||
<image src="../../../../static/images.png" v-else></image>
|
||||
<view>
|
||||
<view class="rules-text1">
|
||||
@ -68,17 +68,28 @@
|
||||
uni.hideLoading() //关闭加载中
|
||||
},
|
||||
methods: {
|
||||
getRulesDataFn(){
|
||||
fileTypeCondition(file) {
|
||||
// 获取文件后缀名
|
||||
const extension = file.substring(file.lastIndexOf('.') + 1).toLowerCase();
|
||||
|
||||
// 常见的图片文件后缀名
|
||||
const imageExtensions = ['jpg', 'jpeg', 'png', 'gif', 'bmp', 'webp', 'svg'];
|
||||
|
||||
// 检查文件后缀名是否在图片后缀名数组中
|
||||
return imageExtensions.includes(extension);
|
||||
},
|
||||
getRulesDataFn() {
|
||||
var that = this
|
||||
let requestData = {
|
||||
projectSn: this.userInfo.projectSn
|
||||
projectSn: this.userInfo.projectSn,
|
||||
isEnable: 1
|
||||
}
|
||||
this.sendRequest({
|
||||
url: "exam/regulation/list",
|
||||
data: requestData,
|
||||
method: 'post',
|
||||
success(res) {
|
||||
if(res.result){
|
||||
if (res.result) {
|
||||
that.listData = res.result;
|
||||
that.listData.map(item => {
|
||||
item.logoUrl = JSON.parse(item.fileUrl)[0].url
|
||||
@ -87,17 +98,18 @@
|
||||
}
|
||||
})
|
||||
},
|
||||
getSafeDataFn(){
|
||||
getSafeDataFn() {
|
||||
var that = this
|
||||
let requestData = {
|
||||
projectSn: this.userInfo.projectSn
|
||||
projectSn: this.userInfo.projectSn,
|
||||
isEnable: 1
|
||||
}
|
||||
this.sendRequest({
|
||||
url: "exam/safetyManual/list",
|
||||
data: requestData,
|
||||
method: 'post',
|
||||
success(res) {
|
||||
if(res.result){
|
||||
if (res.result) {
|
||||
that.listData = res.result;
|
||||
that.listData.map(item => {
|
||||
item.logoUrl = JSON.parse(item.fileUrl)[0].url
|
||||
@ -106,11 +118,11 @@
|
||||
}
|
||||
})
|
||||
},
|
||||
changeType(id){
|
||||
changeType(id) {
|
||||
this.type2 = id
|
||||
if(this.type2 == 1){
|
||||
if (this.type2 == 1) {
|
||||
this.getRulesDataFn();
|
||||
} else if(this.type2 == 2){
|
||||
} else if (this.type2 == 2) {
|
||||
this.getSafeDataFn();
|
||||
}
|
||||
},
|
||||
@ -161,7 +173,11 @@
|
||||
}
|
||||
</script>
|
||||
|
||||
<style>
|
||||
<style scoped lang="scss">
|
||||
.main-content{
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
.rules-box3 {
|
||||
color: #A2A4AF;
|
||||
font-size: 26.92rpx;
|
||||
@ -186,6 +202,8 @@
|
||||
.rules {
|
||||
box-shadow: 4rpx 4rpx 8rpx 2rpx rgba(81, 129, 246, 0.12);
|
||||
margin-top: 44rpx;
|
||||
height: calc(100vh - 300rpx);
|
||||
overflow-y: scroll;
|
||||
}
|
||||
|
||||
.rules-box {
|
||||
|
||||
@ -5,13 +5,20 @@
|
||||
学习详情
|
||||
</view>
|
||||
</headers>
|
||||
<view class="video" v-if="videoList.length">
|
||||
<swiper circular :indicator-dots="true" indicator-color="rgba(99, 99, 99, 1)" style="height: 390rpx;">
|
||||
<swiper-item v-for="(item,index) in videoList" :key="index">
|
||||
<video id="myVideo" show-mute-btn :src="item.url" :is-live="true" :controls="item.controlsBool" :enable-progress-gesture="false"
|
||||
@play="videoStart(index)" @ended="videoEnd(index)"></video>
|
||||
<view class="video" v-show="videoList.length">
|
||||
<video v-for="(item,index) in videoList" :key="index" id="myVideo" class="disable-progress" style="width: 100%;height: 390rpx;"
|
||||
:muted="true" :show-mute-btn="true" :src="item.url" :enable-progress-gesture="false"
|
||||
:controls="item.controlsBool" @play="videoStart(index)" @ended="videoEnd(index)">
|
||||
</video>
|
||||
<!-- <swiper circular :indicator-dots="false" indicator-color="rgba(99, 99, 99, 1)"
|
||||
style="width: 100%;height: 390rpx;">
|
||||
<swiper-item v-for="(item,index) in videoList" :key="index" style="width: 100%;height: 390rpx;">
|
||||
<video id="myVideo" class="disable-progress" style="width: 100%;height: 390rpx;"
|
||||
:muted="true" :show-mute-btn="true" :src="item.url" :enable-progress-gesture="false"
|
||||
:controls="item.controlsBool" @play="videoStart(index)" @ended="videoEnd(index)">
|
||||
</video>
|
||||
</swiper-item>
|
||||
</swiper>
|
||||
</swiper> -->
|
||||
</view>
|
||||
<view class="studybox" v-if="videoList.length">
|
||||
<view class="studybox-line"></view>
|
||||
@ -20,7 +27,8 @@
|
||||
<text>{{responseData.courseName}}</text>
|
||||
</view>
|
||||
</view>
|
||||
<button type="primary" :disabled="isStartExam" class="btn" @click="goHiidden" v-if="pageData.examPaperId">开始考试</button>
|
||||
<button type="primary" :disabled="isStartExam" class="btn" @click="goHiidden"
|
||||
v-if="pageData.examPaperId">开始考试</button>
|
||||
<levitatedsphere :x="100" :y="80"></levitatedsphere>
|
||||
</view>
|
||||
</template>
|
||||
@ -30,6 +38,7 @@
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
videoUrl: "",
|
||||
videoList: [],
|
||||
pageData: {},
|
||||
videoStartTime: "",
|
||||
@ -40,7 +49,7 @@
|
||||
},
|
||||
onReady: function(res) {
|
||||
// #ifndef MP-ALIPAY
|
||||
this.videoContext = uni.createVideoContext('myVideo')
|
||||
// this.videoContext = uni.createVideoContext('myVideo')
|
||||
// #endif
|
||||
},
|
||||
onLoad(options) {
|
||||
@ -58,16 +67,16 @@
|
||||
// 判断是否可以开始考试,需要视频全部看完
|
||||
that.videoList[index].isVideoOver = true;
|
||||
that.videoList[index].controlsBool = true;
|
||||
let startExamBool = false;
|
||||
let startExamBool = true;
|
||||
that.videoList.map(item => {
|
||||
if(!item.isVideoOver){
|
||||
if (!item.isVideoOver) {
|
||||
startExamBool = false;
|
||||
}
|
||||
})
|
||||
if(startExamBool){
|
||||
that.isStartExam = false;
|
||||
} else {
|
||||
if (!startExamBool) {
|
||||
that.isStartExam = true;
|
||||
} else {
|
||||
that.isStartExam = false;
|
||||
}
|
||||
let requestData = {
|
||||
workerId: this.userInfo.id,
|
||||
@ -95,13 +104,14 @@
|
||||
console.log('试题信息', res)
|
||||
if (res.result) {
|
||||
that.responseData = res.result;
|
||||
that.videoList = res.result.fileUrl?JSON.parse(res.result.fileUrl):[],
|
||||
that.videoList.map(item => {
|
||||
item.isVideoOver = false
|
||||
item.controlsBool = false
|
||||
})
|
||||
if(that.videoList.length){
|
||||
that.videoList = res.result.fileUrl ? JSON.parse(res.result.fileUrl) : [],
|
||||
that.videoList.map(item => {
|
||||
item.isVideoOver = false
|
||||
item.controlsBool = false
|
||||
})
|
||||
if (that.videoList.length) {
|
||||
that.isStartExam = true;
|
||||
that.videoUrl = that.videoList[0].url
|
||||
}
|
||||
console.log(that.src)
|
||||
}
|
||||
@ -138,15 +148,23 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
|
||||
.main-content {
|
||||
.video {
|
||||
width: 100%;
|
||||
|
||||
:deep() {
|
||||
.uni-video-ball {
|
||||
display: none !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#myVideo {
|
||||
width: 100%;
|
||||
height: 386.25rpx;
|
||||
}
|
||||
// #myVideo {
|
||||
// width: 100%;
|
||||
// height: 386.25rpx;
|
||||
// position: relative;
|
||||
// }
|
||||
|
||||
.studybox {
|
||||
height: 170rpx;
|
||||
|
||||
@ -150,10 +150,10 @@
|
||||
url = "exam/courseRecord/list"
|
||||
} else if(this.activeIndex == 3){
|
||||
requestData.examNum = 1
|
||||
url = "exam/trainRecord/list"
|
||||
url = "exam/trainRecord/examRecordList"
|
||||
} else if(this.activeIndex == 4){
|
||||
requestData.examNum = 0
|
||||
url = "exam/trainRecord/list"
|
||||
url = "exam/trainRecord/examRecordList"
|
||||
}
|
||||
this.sendRequest({
|
||||
url: url,
|
||||
|
||||
@ -87,9 +87,12 @@
|
||||
|
||||
<style scoped lang="scss">
|
||||
.main-content {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
.list-box {
|
||||
padding: 60rpx 18rpx 0rpx 18rpx;
|
||||
|
||||
height: calc(100vh - 220rpx);
|
||||
overflow-y: scroll;
|
||||
padding: 40rpx 18rpx 20rpx 18rpx;
|
||||
&-item {
|
||||
background: linear-gradient(180deg, rgba(255, 255, 255, 0.1) 0%, rgba(198, 220, 255, 0.2) 100%);
|
||||
box-shadow: 0px 8rpx 30rpx -8rpx rgba(42, 60, 106, 0.24);
|
||||
@ -109,6 +112,7 @@
|
||||
}
|
||||
text:nth-child(1){
|
||||
margin-right: 10rpx;
|
||||
white-space: nowrap;
|
||||
}
|
||||
}
|
||||
|
||||
@ -121,7 +125,7 @@
|
||||
.btn-operate{
|
||||
width: 90%;
|
||||
position: fixed;
|
||||
bottom: 5%;
|
||||
bottom: 2%;
|
||||
left: 5%;
|
||||
z-index: 10;
|
||||
}
|
||||
|
||||
@ -5,35 +5,35 @@
|
||||
人员列表
|
||||
</view>
|
||||
</headers>
|
||||
<scroll-view scroll-y="true" class="pageContent">
|
||||
<view class="personContent">
|
||||
<checkbox-group @change="checkboxChange">
|
||||
<view class="personItem" v-for="(item,index) in personList" :key="index" @click="searchPerson(item.id)">
|
||||
<image v-if="item.fieldAcquisitionUrl" :src="url_config+'image/'+item.fieldAcquisitionUrl"
|
||||
class="profile_photo"></image>
|
||||
<image v-else src="/static/profile_photo.png" class="profile_photo"></image>
|
||||
<view class="personInfo">
|
||||
<view class="name">
|
||||
{{item.workerName}}
|
||||
</view>
|
||||
<view class="teamName">
|
||||
{{item.teamName}}
|
||||
</view>
|
||||
<view class="small">
|
||||
{{item.sex==2?'女':'男'}} {{item.age}}
|
||||
</view>
|
||||
<!-- <scroll-view scroll-y="true" class="pageContent"> -->
|
||||
<view class="personContent">
|
||||
<checkbox-group @change="checkboxChange">
|
||||
<view class="personItem" v-for="(item,index) in personList" :key="index" @click="searchPerson(item.id)">
|
||||
<image v-if="item.fieldAcquisitionUrl" :src="url_config+'image/'+item.fieldAcquisitionUrl"
|
||||
class="profile_photo"></image>
|
||||
<image v-else src="/static/profile_photo.png" class="profile_photo"></image>
|
||||
<view class="personInfo">
|
||||
<view class="name">
|
||||
{{item.workerName}}
|
||||
</view>
|
||||
<view class="teamName">
|
||||
{{item.teamName}}
|
||||
</view>
|
||||
<view class="small">
|
||||
{{item.sex==2?'女':'男'}} {{item.age}}
|
||||
</view>
|
||||
<checkbox :value="item.checkVal" />
|
||||
</view>
|
||||
</checkbox-group>
|
||||
<view class="placeholderBox" v-show="personList.length==0">
|
||||
<image src="/static/noData.png" class="noDataImg"></image>
|
||||
<view class="text">
|
||||
暂无数据
|
||||
</view>
|
||||
<checkbox :value="item.checkVal" />
|
||||
</view>
|
||||
</checkbox-group>
|
||||
<view class="placeholderBox" v-show="personList.length==0">
|
||||
<image src="/static/noData.png" class="noDataImg"></image>
|
||||
<view class="text">
|
||||
暂无数据
|
||||
</view>
|
||||
</view>
|
||||
</scroll-view>
|
||||
</view>
|
||||
<!-- </scroll-view> -->
|
||||
<view class="addSaveBtn" @click="addSaveBtn">新增保存</view>
|
||||
</view>
|
||||
</template>
|
||||
@ -50,21 +50,32 @@
|
||||
projectDetail: {},
|
||||
workerName: '',
|
||||
teamId: 0,
|
||||
enterpriseId: "",
|
||||
pageNo: 1,
|
||||
pageSize: 100,
|
||||
objData: "",
|
||||
selectCheckVal: []
|
||||
};
|
||||
},
|
||||
onLoad(options) {
|
||||
// this.teamId = options.id
|
||||
this.enterpriseId = options.enterpriseId
|
||||
this.objData = JSON.parse(options.obj)
|
||||
console.log(this.objData, 777888)
|
||||
this.projectDetail = JSON.parse(uni.getStorageSync('projectDetail'))
|
||||
this.loadData()
|
||||
},
|
||||
onReachBottom() {
|
||||
console.log("============================")
|
||||
this.pageNo++;
|
||||
uni.showLoading({
|
||||
title: '加载中'
|
||||
})
|
||||
this.loadData()
|
||||
},
|
||||
methods: {
|
||||
addSaveBtn(){
|
||||
addSaveBtn() {
|
||||
let dealData = [];
|
||||
this.personList.map(item => {
|
||||
if(this.selectCheckVal.includes(item.checkVal)){
|
||||
if (this.selectCheckVal.includes(item.checkVal)) {
|
||||
dealData.push({
|
||||
workerCard: item.idCard,
|
||||
workerId: item.id,
|
||||
@ -77,30 +88,46 @@
|
||||
})
|
||||
}
|
||||
})
|
||||
if (uni.getStorageSync("personInfo")) {
|
||||
let alreadyStoreData = JSON.parse(uni.getStorageSync("personInfo"))
|
||||
dealData = dealData.concat(alreadyStoreData)
|
||||
}
|
||||
uni.setStorageSync("personInfo", JSON.stringify(dealData))
|
||||
uni.navigateBack({
|
||||
delta: 2
|
||||
})
|
||||
},
|
||||
checkboxChange(e){
|
||||
checkboxChange(e) {
|
||||
console.log(e)
|
||||
this.selectCheckVal = e.detail.value
|
||||
},
|
||||
loadData() {
|
||||
var that = this
|
||||
let requestData = {
|
||||
projectSn: this.projectDetail.projectSn,
|
||||
pageNo: this.pageNo,
|
||||
pageSize: this.pageSize,
|
||||
inserviceType: 1
|
||||
}
|
||||
if (this.objData.type == 1) {
|
||||
requestData.teamId = this.objData.id
|
||||
}
|
||||
if (this.objData.type == 2) {
|
||||
requestData.departmentId = this.objData.id
|
||||
}
|
||||
this.sendRequest({
|
||||
url: 'xmgl/workerInfo/selectWorkerInfoList',
|
||||
data: {
|
||||
// teamId: this.teamId,
|
||||
enterpriseId: this.enterpriseId,
|
||||
projectSn: this.projectDetail.projectSn,
|
||||
pageNo: 1,
|
||||
pageSize: 100
|
||||
},
|
||||
data: requestData,
|
||||
method: "POST",
|
||||
success(res) {
|
||||
that.personList = res.result.records
|
||||
that.personList.map((item,index) =>{
|
||||
if (that.pageNo == 1) {
|
||||
that.personList = []
|
||||
}
|
||||
// console.log('--------')
|
||||
// this.personList = res.result.records
|
||||
that.personList = [...that.personList, ...res.result.records]
|
||||
uni.hideLoading() //关闭加载中
|
||||
that.personList.map((item, index) => {
|
||||
item.checkVal = index + "";
|
||||
})
|
||||
}
|
||||
@ -152,6 +179,7 @@
|
||||
height: 60px;
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
.addSaveBtn {
|
||||
width: 60%;
|
||||
padding: 10px 0;
|
||||
|
||||
@ -6,16 +6,16 @@
|
||||
</view>
|
||||
</headers>
|
||||
<view class="searchBox" :style="{ 'padding-top': (statusBarHeight+52) + 'px' }">
|
||||
<input type="text" v-model="teamName" confirm-type="search" class="input" placeholder-style="color:rgba(72, 141, 236, 0.5)" placeholder="按班组名称查找" @confirm="list=[];loadData()" />
|
||||
<input type="text" v-model="departmentTeamName" confirm-type="search" class="input" placeholder-style="color:rgba(72, 141, 236, 0.5)" placeholder="按班组/部门名称查找" @confirm="list=[];loadData()" />
|
||||
</view>
|
||||
<view class="listBox" :style="{ 'padding-top': (statusBarHeight+52+40) + 'px' }">
|
||||
<view class="listItem" v-for="item in list" :key="item.id" @click="goAdd(item.enterpriseId)">
|
||||
<view class="listItem" v-for="item in list" :key="item.id" @click="goAdd(item)">
|
||||
<view class="title">
|
||||
{{item.teamName}}-{{item.enterpriseName}}
|
||||
{{item.name}}-{{item.enterpriseName}}
|
||||
</view>
|
||||
<view class="bottom">
|
||||
<image src="/static/icon-person.png" class="icon-person"></image>
|
||||
<text class="time">{{item.totalPersonNum}}人</text>
|
||||
<text class="time">{{item.personNum}}人</text>
|
||||
</view>
|
||||
<image src="/static/icon-right.png" class="icon-right"></image>
|
||||
</view>
|
||||
@ -36,7 +36,7 @@
|
||||
projectDetail:{},
|
||||
list:[],
|
||||
statusBarHeight:0,
|
||||
teamName:''
|
||||
departmentTeamName:''
|
||||
};
|
||||
},
|
||||
mounted() {
|
||||
@ -49,17 +49,17 @@
|
||||
loadData(){
|
||||
var that = this
|
||||
this.sendRequest({
|
||||
url: 'xmgl/workerInfo/selectAllProjectTeamList',
|
||||
data: {teamName:this.teamName,projectSn:this.projectDetail.projectSn},
|
||||
method: "POST",
|
||||
url: 'xmgl/departmentInfo/getDepartmentAndTeamList',
|
||||
data: {departmentTeamName:this.departmentTeamName,projectSn:this.projectDetail.projectSn},
|
||||
method: "GET",
|
||||
success(res){
|
||||
that.list=res.result
|
||||
}
|
||||
})
|
||||
},
|
||||
goAdd(enterpriseId){
|
||||
goAdd(obj){
|
||||
uni.navigateTo({
|
||||
url:'./personList?enterpriseId='+ enterpriseId
|
||||
url:'./personList?obj='+ JSON.stringify(obj)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
</view>
|
||||
</headers>
|
||||
<view class="index-boxs" v-if="personList.length">
|
||||
<view class="index-box" @click="goDetail" v-for="(item,index) in personList" :key="index">
|
||||
<view class="index-box" v-for="(item,index) in personList" :key="index">
|
||||
<image :src="url_config+'image/'+item.fieldAcquisitionUrl"></image>
|
||||
<view class="person-info">
|
||||
<text>{{item.workerName}}</text>
|
||||
@ -53,6 +53,13 @@
|
||||
},
|
||||
methods: {
|
||||
addForm(){
|
||||
if(!this.personList.length){
|
||||
uni.showToast({
|
||||
title: '请选择人员',
|
||||
icon: 'none'
|
||||
})
|
||||
return
|
||||
}
|
||||
let requestData = {
|
||||
...this.pageData,
|
||||
examTrainRecordList: this.personList,
|
||||
@ -102,21 +109,20 @@
|
||||
uni.redirectTo({
|
||||
url: `/pages/personLocation/index/index`
|
||||
});
|
||||
},
|
||||
goDetail(item) {
|
||||
uni.navigateTo({
|
||||
url: `/pages/personLocation/exam/studydetails/studydetails?courseId=` + item.courseId
|
||||
});
|
||||
},
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.main-content {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
.index-boxs {
|
||||
height: calc(100vh - 200rpx);
|
||||
overflow-y: scroll;
|
||||
padding: 58rpx 35rpx;
|
||||
|
||||
padding-bottom: 10rpx;
|
||||
.index-box {
|
||||
width: 100%;
|
||||
background-color: white;
|
||||
@ -160,7 +166,7 @@
|
||||
|
||||
.editBtn {
|
||||
position: fixed;
|
||||
bottom: 40rpx;
|
||||
bottom: 20rpx;
|
||||
left: 0px;
|
||||
width: 100%;
|
||||
display: flex;
|
||||
|
||||
@ -26,9 +26,9 @@
|
||||
<view class="zoom zoomout" @click="controlVideoFn(0,0,-0.2,'ZOOM_OUT')"></view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- <view class="video-playback" @click="toBackList">
|
||||
<view class="video-playback" @click="toBackList">
|
||||
视频回放
|
||||
</view> -->
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
@ -200,7 +200,7 @@
|
||||
.fullHeight{
|
||||
background-color: #F4F5FD;
|
||||
height: auto;
|
||||
// padding-bottom: 60rpx;
|
||||
padding-bottom: 60rpx;
|
||||
}
|
||||
/* #endif */
|
||||
.videoBox{
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user