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"
|
"type" : "uniCloud"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"playground" : "standard",
|
"playground" : "custom",
|
||||||
"type" : "uni-app:app-android"
|
"type" : "uni-app:app-android"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
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://182.90.224.237:51234/' //雄哥内网穿透地址
|
||||||
// Vue.prototype.url_config = 'http://jxj.zhgdyun.com:61212/' //杰哥内网穿透地址
|
// 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:28888/' //郭圣雄本地
|
||||||
Vue.prototype.url_config = 'http://192.168.34.221:9111/' //郭圣雄本地
|
// 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.155:19111/' //彭洁本地
|
||||||
// Vue.prototype.work_url = 'http://47.93.215.234:19997' // 工作流线上地址(弃用)
|
// 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:19997' // 工作流线上地址
|
||||||
// Vue.prototype.work_url = 'http://42.180.188.17:19097' // 工作流测试地址
|
// 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",
|
"path": "pages/personLocation/exam/index/index",
|
||||||
"style": {
|
"style": {
|
||||||
"app-plus": {
|
"navigationBarTitleText": ""
|
||||||
"titleNView": {
|
|
||||||
"titleColor": "#ffffff",
|
|
||||||
"autoBackButton": false
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"navigationBarTitleText": "教育培训"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -2512,9 +2506,17 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
<<<<<<< HEAD
|
||||||
"path": "pages/projectEnd/trainPlan/searchTeam/personList",
|
"path": "pages/projectEnd/trainPlan/searchTeam/personList",
|
||||||
"style": {
|
"style": {
|
||||||
"navigationBarTitleText": ""
|
"navigationBarTitleText": ""
|
||||||
|
=======
|
||||||
|
"path" : "pages/projectEnd/trainPlan/searchTeam/personList",
|
||||||
|
"style" :
|
||||||
|
{
|
||||||
|
"navigationBarTitleText" : "",
|
||||||
|
"onReachBottomDistance": 100
|
||||||
|
>>>>>>> 8d4c6f69b5f932e4842d3f9ddd13043de9837210
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
@ -72,6 +72,7 @@
|
|||||||
let {
|
let {
|
||||||
accountType
|
accountType
|
||||||
} = userInfo;
|
} = userInfo;
|
||||||
|
if (accountType) {
|
||||||
if (accountType == 5 || accountType == 6 || accountType == 10) {
|
if (accountType == 5 || accountType == 6 || accountType == 10) {
|
||||||
// 判断是否点击的是消息通知
|
// 判断是否点击的是消息通知
|
||||||
plus.push.addEventListener('click', function(msg) {
|
plus.push.addEventListener('click', function(msg) {
|
||||||
@ -105,6 +106,8 @@
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.systemInfo = uni.getStorageSync('systemInfo')
|
this.systemInfo = uni.getStorageSync('systemInfo')
|
||||||
|
|||||||
@ -6,22 +6,37 @@
|
|||||||
</view>
|
</view>
|
||||||
</headers>
|
</headers>
|
||||||
<view class="beginexam" v-for="(item,index) in stList" :key="index" v-show="index == stIndex">
|
<view class="beginexam" v-for="(item,index) in stList" :key="index" v-show="index == stIndex">
|
||||||
<view class="">
|
<view class="questionTitle">
|
||||||
<text class="text">{{index + 1}}、{{item.questionName}}</text>
|
<text class="text">{{index + 1}}、{{item.questionName}}({{item.score||0}}分)</text>
|
||||||
|
<text class="rest-time">剩余时间:{{ timeLeft }}</text>
|
||||||
</view>
|
</view>
|
||||||
<view class="radio-content">
|
<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">
|
<label class="radio" v-for="(item2,index2) in item.optionList">
|
||||||
<radio :value="item2.optionCode" /><text>{{item2.optionCode}}、</text>{{item2.optionDesc}}
|
<radio :value="item2.optionCode" /><text>{{item2.optionCode}}、</text>{{item2.optionDesc}}
|
||||||
</label>
|
</label>
|
||||||
</radio-group>
|
</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>
|
</view>
|
||||||
<view class="progress-style">
|
<view class="progress-style" v-show="stList.length > 0">
|
||||||
<progress :percent="(stIndex + 1) * 100 / stList.length" :stroke-width="11" backgroundColor="#F5F5F5" />
|
<progress :percent="((stIndex + 1) * 100 / stList.length).toFixed(0)" :stroke-width="11" backgroundColor="#F5F5F5" />
|
||||||
</view>
|
</view>
|
||||||
<button type="primary" class="btn-front" @click="goFront" v-if="stIndex > 0">上一题</button>
|
<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>
|
<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>
|
||||||
<levitatedsphere :x="100" :y="80"></levitatedsphere>
|
<levitatedsphere :x="100" :y="80"></levitatedsphere>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
@ -31,6 +46,8 @@
|
|||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
totalTime: 10, // 假设考试总时长为60分钟
|
||||||
|
timer: null, // 计时器
|
||||||
percent: 0,
|
percent: 0,
|
||||||
stIndex: 0,
|
stIndex: 0,
|
||||||
stList: [],
|
stList: [],
|
||||||
@ -42,8 +59,82 @@
|
|||||||
},
|
},
|
||||||
onLoad(options) {
|
onLoad(options) {
|
||||||
this.pageData = JSON.parse(options.transportData)
|
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: {
|
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() {
|
getDataFn() {
|
||||||
var that = this
|
var that = this
|
||||||
let requestData = {
|
let requestData = {
|
||||||
@ -55,13 +146,24 @@
|
|||||||
method: 'post',
|
method: 'post',
|
||||||
success(res) {
|
success(res) {
|
||||||
console.log('试题信息', res)
|
console.log('试题信息', res)
|
||||||
if (res.result) {
|
if (res.result && res.result.length > 0) {
|
||||||
that.stList = res.result;
|
that.stList = res.result;
|
||||||
var tab = document.querySelector('.uni-progress-inner-bar');
|
// var tab = document.querySelector('.uni-progress-inner-bar');
|
||||||
var p = document.createElement('p');
|
// var p = document.createElement('p');
|
||||||
p.className = "uni-progress-info"
|
// p.className = "uni-progress-info"
|
||||||
p.innerText = (((that.stIndex + 1) * 100) / that.stList.length).toFixed(0) + '%'
|
// p.innerText = (((that.stIndex + 1) * 100) / that.stList.length).toFixed(0) + '%'
|
||||||
tab.appendChild(p);
|
// 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 => {
|
that.stList.map(item => {
|
||||||
item.trainRecordId = that.pageData.trainRecordId
|
item.trainRecordId = that.pageData.trainRecordId
|
||||||
})
|
})
|
||||||
@ -77,19 +179,46 @@
|
|||||||
if (that.stIndex == that.stList.length - 1) {
|
if (that.stIndex == that.stList.length - 1) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
uni.showLoading()
|
// uni.showLoading()
|
||||||
setTimeout(function() {
|
// setTimeout(function() {
|
||||||
that.stIndex++;
|
// that.stIndex++;
|
||||||
var progressTip = document.querySelector('.uni-progress-info');
|
// var progressTip = document.querySelector('.uni-progress-info');
|
||||||
progressTip.innerText = (((that.stIndex + 1) * 100) / that.stList.length).toFixed(0) + '%'
|
// progressTip.innerText = (((that.stIndex + 1) * 100) / that.stList.length).toFixed(0) + '%'
|
||||||
uni.hideLoading()
|
// uni.hideLoading()
|
||||||
}, 500)
|
// }, 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) {
|
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
|
var that = this
|
||||||
uni.showModal({
|
uni.showModal({
|
||||||
title: '提示',
|
title: '提示',
|
||||||
@ -109,9 +238,13 @@
|
|||||||
icon: "none"
|
icon: "none"
|
||||||
})
|
})
|
||||||
let responseData = res.result;
|
let responseData = res.result;
|
||||||
|
let transportData = {
|
||||||
|
...that.pageData,
|
||||||
|
...responseData
|
||||||
|
}
|
||||||
uni.redirectTo({
|
uni.redirectTo({
|
||||||
url: `/pages/personLocation/exam/examresult/examresult?examData=` +
|
url: `/pages/personLocation/exam/examresult/examresult?examData=` +
|
||||||
JSON.stringify(responseData)
|
JSON.stringify(transportData)
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@ -131,11 +264,24 @@
|
|||||||
.beginexam {
|
.beginexam {
|
||||||
padding: 26.92rpx 32.69rpx;
|
padding: 26.92rpx 32.69rpx;
|
||||||
|
|
||||||
|
.questionTitle {
|
||||||
|
width: 100%;
|
||||||
|
position: relative;
|
||||||
|
|
||||||
.text {
|
.text {
|
||||||
|
width: 61%;
|
||||||
|
display: inline-block;
|
||||||
font-size: 34.62rpx;
|
font-size: 34.62rpx;
|
||||||
color: #272D45;
|
color: #272D45;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.rest-time {
|
||||||
|
position: absolute;
|
||||||
|
top: 7rpx;
|
||||||
|
right: 20rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.radio-content {
|
.radio-content {
|
||||||
.radio-boxs {
|
.radio-boxs {
|
||||||
display: flex;
|
display: flex;
|
||||||
@ -145,6 +291,15 @@
|
|||||||
.radio-boxs>label {
|
.radio-boxs>label {
|
||||||
padding: 20rpx 0;
|
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;
|
padding: 26.92rpx 32.69rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
.btn {
|
.step-btn {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
width: calc(100% - 80.76rpx);
|
width: calc(100% - 80.76rpx);
|
||||||
|
height: auto;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
bottom: 180.77rpx;
|
bottom: 180.77rpx;
|
||||||
left: 50%;
|
left: 50%;
|
||||||
transform: translateX(-50%);
|
transform: translateX(-50%);
|
||||||
|
|
||||||
|
button {
|
||||||
|
width: 100%;
|
||||||
|
margin-bottom: 20rpx;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.btn-front {
|
// .btn {
|
||||||
width: calc(100% - 80.76rpx);
|
// width: calc(100% - 80.76rpx);
|
||||||
position: absolute;
|
// position: absolute;
|
||||||
bottom: 290rpx;
|
// bottom: 180.77rpx;
|
||||||
left: 50%;
|
// left: 50%;
|
||||||
transform: translateX(-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;
|
position: relative;
|
||||||
background: linear-gradient(111deg, #5383F6 0%, #7FF0FF 100%);
|
background: linear-gradient(111deg, #5383F6 0%, #7FF0FF 100%);
|
||||||
}
|
}
|
||||||
|
|
||||||
/deep/ .uni-progress-info {
|
/deep/ .uni-progress-info {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
right: 20rpx;
|
right: 20rpx;
|
||||||
|
|||||||
@ -17,13 +17,13 @@
|
|||||||
<text>对于成绩不满意可再次考试</text>
|
<text>对于成绩不满意可再次考试</text>
|
||||||
</view>
|
</view>
|
||||||
<button type="primary" class="btn"
|
<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"
|
<button type="primary" class="btn1" plain="true"
|
||||||
@click="goHiidden('/personLocation/exam/index/index')">返回</button>
|
@click="goHiidden('/personLocation/exam/index/index')">返回</button>
|
||||||
</view>
|
</view>
|
||||||
<view class="examresult" v-else>
|
<view class="examresult" v-else>
|
||||||
<view class="text-success">
|
<view class="text-success">
|
||||||
<text>80</text>
|
<text>{{pageData.score}}</text>
|
||||||
</view>
|
</view>
|
||||||
<view class="image-tip">
|
<view class="image-tip">
|
||||||
<image src="/static/exam/examSuccess.png" mode=""></image>
|
<image src="/static/exam/examSuccess.png" mode=""></image>
|
||||||
@ -32,7 +32,7 @@
|
|||||||
<text>恭喜您通过考试</text>
|
<text>恭喜您通过考试</text>
|
||||||
</view>
|
</view>
|
||||||
<button type="primary" class="btn"
|
<button type="primary" class="btn"
|
||||||
@click="goHiidden('/personLocation/exam/beginexam/beginexam')">返回</button>
|
@click="goHiidden('/personLocation/exam/index/index')">返回</button>
|
||||||
</view>
|
</view>
|
||||||
<levitatedsphere :x="100" :y="80"></levitatedsphere>
|
<levitatedsphere :x="100" :y="80"></levitatedsphere>
|
||||||
</view>
|
</view>
|
||||||
@ -48,14 +48,20 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
document.querySelector('.uni-page-head-hd').style.display = 'none'
|
// document.querySelector('.uni-page-head-hd').style.display = 'none'
|
||||||
},
|
},
|
||||||
onLoad(options) {
|
onLoad(options) {
|
||||||
this.pageData = JSON.parse(options.examData)
|
this.pageData = JSON.parse(options.examData)
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
examAgain(url){
|
||||||
|
uni.redirectTo({
|
||||||
|
url: `/pages${url}?transportData=` + JSON.stringify(this
|
||||||
|
.pageData)
|
||||||
|
});
|
||||||
|
},
|
||||||
goHiidden(url) {
|
goHiidden(url) {
|
||||||
uni.navigateTo({
|
uni.redirectTo({
|
||||||
url: `/pages${url}`
|
url: `/pages${url}`
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|||||||
@ -50,6 +50,8 @@
|
|||||||
},
|
},
|
||||||
onLoad() {
|
onLoad() {
|
||||||
this.userInfo = JSON.parse(uni.getStorageSync("userInfo"))
|
this.userInfo = JSON.parse(uni.getStorageSync("userInfo"))
|
||||||
|
},
|
||||||
|
onShow() {
|
||||||
this.getDataList();
|
this.getDataList();
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
@ -80,7 +82,8 @@
|
|||||||
courseId: item.courseId,
|
courseId: item.courseId,
|
||||||
examPaperId: item.examPaperId,
|
examPaperId: item.examPaperId,
|
||||||
trainRecordId: item.id,
|
trainRecordId: item.id,
|
||||||
trainId: item.trainId
|
trainId: item.trainId,
|
||||||
|
examDuration: item.examDuration
|
||||||
}
|
}
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
url: `/pages/personLocation/exam/studydetails/studydetails?transportData=` + JSON.stringify(transportData)
|
url: `/pages/personLocation/exam/studydetails/studydetails?transportData=` + JSON.stringify(transportData)
|
||||||
@ -92,6 +95,9 @@
|
|||||||
|
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
.main-content {
|
.main-content {
|
||||||
|
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
.top-diy {
|
.top-diy {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
display: flex;
|
display: flex;
|
||||||
@ -107,8 +113,10 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.index-boxs {
|
.index-boxs {
|
||||||
padding: 58rpx 35rpx;
|
height: calc(100vh - 220rpx);
|
||||||
|
overflow-y: scroll;
|
||||||
|
padding: 0rpx 35rpx;
|
||||||
|
padding-top: 58rpx;
|
||||||
.index-box {
|
.index-box {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
background-color: white;
|
background-color: white;
|
||||||
|
|||||||
@ -11,7 +11,7 @@
|
|||||||
</view>
|
</view>
|
||||||
<view class="rules">
|
<view class="rules">
|
||||||
<view class="rules-box" v-for="(item,index) in listData" :key="index">
|
<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>
|
<image src="../../../../static/images.png" v-else></image>
|
||||||
<view>
|
<view>
|
||||||
<view class="rules-text1">
|
<view class="rules-text1">
|
||||||
@ -68,10 +68,21 @@
|
|||||||
uni.hideLoading() //关闭加载中
|
uni.hideLoading() //关闭加载中
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
fileTypeCondition(file) {
|
||||||
|
// 获取文件后缀名
|
||||||
|
const extension = file.substring(file.lastIndexOf('.') + 1).toLowerCase();
|
||||||
|
|
||||||
|
// 常见的图片文件后缀名
|
||||||
|
const imageExtensions = ['jpg', 'jpeg', 'png', 'gif', 'bmp', 'webp', 'svg'];
|
||||||
|
|
||||||
|
// 检查文件后缀名是否在图片后缀名数组中
|
||||||
|
return imageExtensions.includes(extension);
|
||||||
|
},
|
||||||
getRulesDataFn() {
|
getRulesDataFn() {
|
||||||
var that = this
|
var that = this
|
||||||
let requestData = {
|
let requestData = {
|
||||||
projectSn: this.userInfo.projectSn
|
projectSn: this.userInfo.projectSn,
|
||||||
|
isEnable: 1
|
||||||
}
|
}
|
||||||
this.sendRequest({
|
this.sendRequest({
|
||||||
url: "exam/regulation/list",
|
url: "exam/regulation/list",
|
||||||
@ -90,7 +101,8 @@
|
|||||||
getSafeDataFn() {
|
getSafeDataFn() {
|
||||||
var that = this
|
var that = this
|
||||||
let requestData = {
|
let requestData = {
|
||||||
projectSn: this.userInfo.projectSn
|
projectSn: this.userInfo.projectSn,
|
||||||
|
isEnable: 1
|
||||||
}
|
}
|
||||||
this.sendRequest({
|
this.sendRequest({
|
||||||
url: "exam/safetyManual/list",
|
url: "exam/safetyManual/list",
|
||||||
@ -161,7 +173,11 @@
|
|||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style>
|
<style scoped lang="scss">
|
||||||
|
.main-content{
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
}
|
||||||
.rules-box3 {
|
.rules-box3 {
|
||||||
color: #A2A4AF;
|
color: #A2A4AF;
|
||||||
font-size: 26.92rpx;
|
font-size: 26.92rpx;
|
||||||
@ -186,6 +202,8 @@
|
|||||||
.rules {
|
.rules {
|
||||||
box-shadow: 4rpx 4rpx 8rpx 2rpx rgba(81, 129, 246, 0.12);
|
box-shadow: 4rpx 4rpx 8rpx 2rpx rgba(81, 129, 246, 0.12);
|
||||||
margin-top: 44rpx;
|
margin-top: 44rpx;
|
||||||
|
height: calc(100vh - 300rpx);
|
||||||
|
overflow-y: scroll;
|
||||||
}
|
}
|
||||||
|
|
||||||
.rules-box {
|
.rules-box {
|
||||||
|
|||||||
@ -5,13 +5,20 @@
|
|||||||
学习详情
|
学习详情
|
||||||
</view>
|
</view>
|
||||||
</headers>
|
</headers>
|
||||||
<view class="video" v-if="videoList.length">
|
<view class="video" v-show="videoList.length">
|
||||||
<swiper circular :indicator-dots="true" indicator-color="rgba(99, 99, 99, 1)" style="height: 390rpx;">
|
<video v-for="(item,index) in videoList" :key="index" id="myVideo" class="disable-progress" style="width: 100%;height: 390rpx;"
|
||||||
<swiper-item v-for="(item,index) in videoList" :key="index">
|
:muted="true" :show-mute-btn="true" :src="item.url" :enable-progress-gesture="false"
|
||||||
<video id="myVideo" show-mute-btn :src="item.url" :is-live="true" :controls="item.controlsBool" :enable-progress-gesture="false"
|
:controls="item.controlsBool" @play="videoStart(index)" @ended="videoEnd(index)">
|
||||||
@play="videoStart(index)" @ended="videoEnd(index)"></video>
|
</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-item>
|
||||||
</swiper>
|
</swiper> -->
|
||||||
</view>
|
</view>
|
||||||
<view class="studybox" v-if="videoList.length">
|
<view class="studybox" v-if="videoList.length">
|
||||||
<view class="studybox-line"></view>
|
<view class="studybox-line"></view>
|
||||||
@ -20,7 +27,8 @@
|
|||||||
<text>{{responseData.courseName}}</text>
|
<text>{{responseData.courseName}}</text>
|
||||||
</view>
|
</view>
|
||||||
</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>
|
<levitatedsphere :x="100" :y="80"></levitatedsphere>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
@ -30,6 +38,7 @@
|
|||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
videoUrl: "",
|
||||||
videoList: [],
|
videoList: [],
|
||||||
pageData: {},
|
pageData: {},
|
||||||
videoStartTime: "",
|
videoStartTime: "",
|
||||||
@ -40,7 +49,7 @@
|
|||||||
},
|
},
|
||||||
onReady: function(res) {
|
onReady: function(res) {
|
||||||
// #ifndef MP-ALIPAY
|
// #ifndef MP-ALIPAY
|
||||||
this.videoContext = uni.createVideoContext('myVideo')
|
// this.videoContext = uni.createVideoContext('myVideo')
|
||||||
// #endif
|
// #endif
|
||||||
},
|
},
|
||||||
onLoad(options) {
|
onLoad(options) {
|
||||||
@ -58,16 +67,16 @@
|
|||||||
// 判断是否可以开始考试,需要视频全部看完
|
// 判断是否可以开始考试,需要视频全部看完
|
||||||
that.videoList[index].isVideoOver = true;
|
that.videoList[index].isVideoOver = true;
|
||||||
that.videoList[index].controlsBool = true;
|
that.videoList[index].controlsBool = true;
|
||||||
let startExamBool = false;
|
let startExamBool = true;
|
||||||
that.videoList.map(item => {
|
that.videoList.map(item => {
|
||||||
if (!item.isVideoOver) {
|
if (!item.isVideoOver) {
|
||||||
startExamBool = false;
|
startExamBool = false;
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
if(startExamBool){
|
if (!startExamBool) {
|
||||||
that.isStartExam = false;
|
|
||||||
} else {
|
|
||||||
that.isStartExam = true;
|
that.isStartExam = true;
|
||||||
|
} else {
|
||||||
|
that.isStartExam = false;
|
||||||
}
|
}
|
||||||
let requestData = {
|
let requestData = {
|
||||||
workerId: this.userInfo.id,
|
workerId: this.userInfo.id,
|
||||||
@ -102,6 +111,7 @@
|
|||||||
})
|
})
|
||||||
if (that.videoList.length) {
|
if (that.videoList.length) {
|
||||||
that.isStartExam = true;
|
that.isStartExam = true;
|
||||||
|
that.videoUrl = that.videoList[0].url
|
||||||
}
|
}
|
||||||
console.log(that.src)
|
console.log(that.src)
|
||||||
}
|
}
|
||||||
@ -138,15 +148,23 @@
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
|
|
||||||
.main-content {
|
.main-content {
|
||||||
.video {
|
.video {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
|
||||||
|
:deep() {
|
||||||
|
.uni-video-ball {
|
||||||
|
display: none !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#myVideo {
|
// #myVideo {
|
||||||
width: 100%;
|
// width: 100%;
|
||||||
height: 386.25rpx;
|
// height: 386.25rpx;
|
||||||
}
|
// position: relative;
|
||||||
|
// }
|
||||||
|
|
||||||
.studybox {
|
.studybox {
|
||||||
height: 170rpx;
|
height: 170rpx;
|
||||||
|
|||||||
@ -150,10 +150,10 @@
|
|||||||
url = "exam/courseRecord/list"
|
url = "exam/courseRecord/list"
|
||||||
} else if(this.activeIndex == 3){
|
} else if(this.activeIndex == 3){
|
||||||
requestData.examNum = 1
|
requestData.examNum = 1
|
||||||
url = "exam/trainRecord/list"
|
url = "exam/trainRecord/examRecordList"
|
||||||
} else if(this.activeIndex == 4){
|
} else if(this.activeIndex == 4){
|
||||||
requestData.examNum = 0
|
requestData.examNum = 0
|
||||||
url = "exam/trainRecord/list"
|
url = "exam/trainRecord/examRecordList"
|
||||||
}
|
}
|
||||||
this.sendRequest({
|
this.sendRequest({
|
||||||
url: url,
|
url: url,
|
||||||
|
|||||||
@ -87,9 +87,12 @@
|
|||||||
|
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
.main-content {
|
.main-content {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
.list-box {
|
.list-box {
|
||||||
padding: 60rpx 18rpx 0rpx 18rpx;
|
height: calc(100vh - 220rpx);
|
||||||
|
overflow-y: scroll;
|
||||||
|
padding: 40rpx 18rpx 20rpx 18rpx;
|
||||||
&-item {
|
&-item {
|
||||||
background: linear-gradient(180deg, rgba(255, 255, 255, 0.1) 0%, rgba(198, 220, 255, 0.2) 100%);
|
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);
|
box-shadow: 0px 8rpx 30rpx -8rpx rgba(42, 60, 106, 0.24);
|
||||||
@ -109,6 +112,7 @@
|
|||||||
}
|
}
|
||||||
text:nth-child(1){
|
text:nth-child(1){
|
||||||
margin-right: 10rpx;
|
margin-right: 10rpx;
|
||||||
|
white-space: nowrap;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -121,7 +125,7 @@
|
|||||||
.btn-operate{
|
.btn-operate{
|
||||||
width: 90%;
|
width: 90%;
|
||||||
position: fixed;
|
position: fixed;
|
||||||
bottom: 5%;
|
bottom: 2%;
|
||||||
left: 5%;
|
left: 5%;
|
||||||
z-index: 10;
|
z-index: 10;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -5,7 +5,7 @@
|
|||||||
人员列表
|
人员列表
|
||||||
</view>
|
</view>
|
||||||
</headers>
|
</headers>
|
||||||
<scroll-view scroll-y="true" class="pageContent">
|
<!-- <scroll-view scroll-y="true" class="pageContent"> -->
|
||||||
<view class="personContent">
|
<view class="personContent">
|
||||||
<checkbox-group @change="checkboxChange">
|
<checkbox-group @change="checkboxChange">
|
||||||
<view class="personItem" v-for="(item,index) in personList" :key="index" @click="searchPerson(item.id)">
|
<view class="personItem" v-for="(item,index) in personList" :key="index" @click="searchPerson(item.id)">
|
||||||
@ -33,7 +33,7 @@
|
|||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</scroll-view>
|
<!-- </scroll-view> -->
|
||||||
<view class="addSaveBtn" @click="addSaveBtn">新增保存</view>
|
<view class="addSaveBtn" @click="addSaveBtn">新增保存</view>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
@ -50,16 +50,27 @@
|
|||||||
projectDetail: {},
|
projectDetail: {},
|
||||||
workerName: '',
|
workerName: '',
|
||||||
teamId: 0,
|
teamId: 0,
|
||||||
enterpriseId: "",
|
pageNo: 1,
|
||||||
|
pageSize: 100,
|
||||||
|
objData: "",
|
||||||
selectCheckVal: []
|
selectCheckVal: []
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
onLoad(options) {
|
onLoad(options) {
|
||||||
// this.teamId = options.id
|
// 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.projectDetail = JSON.parse(uni.getStorageSync('projectDetail'))
|
||||||
this.loadData()
|
this.loadData()
|
||||||
},
|
},
|
||||||
|
onReachBottom() {
|
||||||
|
console.log("============================")
|
||||||
|
this.pageNo++;
|
||||||
|
uni.showLoading({
|
||||||
|
title: '加载中'
|
||||||
|
})
|
||||||
|
this.loadData()
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
addSaveBtn() {
|
addSaveBtn() {
|
||||||
let dealData = [];
|
let dealData = [];
|
||||||
@ -77,6 +88,10 @@
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
if (uni.getStorageSync("personInfo")) {
|
||||||
|
let alreadyStoreData = JSON.parse(uni.getStorageSync("personInfo"))
|
||||||
|
dealData = dealData.concat(alreadyStoreData)
|
||||||
|
}
|
||||||
uni.setStorageSync("personInfo", JSON.stringify(dealData))
|
uni.setStorageSync("personInfo", JSON.stringify(dealData))
|
||||||
uni.navigateBack({
|
uni.navigateBack({
|
||||||
delta: 2
|
delta: 2
|
||||||
@ -88,18 +103,30 @@
|
|||||||
},
|
},
|
||||||
loadData() {
|
loadData() {
|
||||||
var that = this
|
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({
|
this.sendRequest({
|
||||||
url: 'xmgl/workerInfo/selectWorkerInfoList',
|
url: 'xmgl/workerInfo/selectWorkerInfoList',
|
||||||
data: {
|
data: requestData,
|
||||||
// teamId: this.teamId,
|
|
||||||
enterpriseId: this.enterpriseId,
|
|
||||||
projectSn: this.projectDetail.projectSn,
|
|
||||||
pageNo: 1,
|
|
||||||
pageSize: 100
|
|
||||||
},
|
|
||||||
method: "POST",
|
method: "POST",
|
||||||
success(res) {
|
success(res) {
|
||||||
that.personList = res.result.records
|
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) => {
|
that.personList.map((item, index) => {
|
||||||
item.checkVal = index + "";
|
item.checkVal = index + "";
|
||||||
})
|
})
|
||||||
@ -152,6 +179,7 @@
|
|||||||
height: 60px;
|
height: 60px;
|
||||||
margin-right: 10px;
|
margin-right: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.addSaveBtn {
|
.addSaveBtn {
|
||||||
width: 60%;
|
width: 60%;
|
||||||
padding: 10px 0;
|
padding: 10px 0;
|
||||||
|
|||||||
@ -6,16 +6,16 @@
|
|||||||
</view>
|
</view>
|
||||||
</headers>
|
</headers>
|
||||||
<view class="searchBox" :style="{ 'padding-top': (statusBarHeight+52) + 'px' }">
|
<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>
|
||||||
<view class="listBox" :style="{ 'padding-top': (statusBarHeight+52+40) + 'px' }">
|
<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">
|
<view class="title">
|
||||||
{{item.teamName}}-{{item.enterpriseName}}
|
{{item.name}}-{{item.enterpriseName}}
|
||||||
</view>
|
</view>
|
||||||
<view class="bottom">
|
<view class="bottom">
|
||||||
<image src="/static/icon-person.png" class="icon-person"></image>
|
<image src="/static/icon-person.png" class="icon-person"></image>
|
||||||
<text class="time">{{item.totalPersonNum}}人</text>
|
<text class="time">{{item.personNum}}人</text>
|
||||||
</view>
|
</view>
|
||||||
<image src="/static/icon-right.png" class="icon-right"></image>
|
<image src="/static/icon-right.png" class="icon-right"></image>
|
||||||
</view>
|
</view>
|
||||||
@ -36,7 +36,7 @@
|
|||||||
projectDetail:{},
|
projectDetail:{},
|
||||||
list:[],
|
list:[],
|
||||||
statusBarHeight:0,
|
statusBarHeight:0,
|
||||||
teamName:''
|
departmentTeamName:''
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
@ -49,17 +49,17 @@
|
|||||||
loadData(){
|
loadData(){
|
||||||
var that = this
|
var that = this
|
||||||
this.sendRequest({
|
this.sendRequest({
|
||||||
url: 'xmgl/workerInfo/selectAllProjectTeamList',
|
url: 'xmgl/departmentInfo/getDepartmentAndTeamList',
|
||||||
data: {teamName:this.teamName,projectSn:this.projectDetail.projectSn},
|
data: {departmentTeamName:this.departmentTeamName,projectSn:this.projectDetail.projectSn},
|
||||||
method: "POST",
|
method: "GET",
|
||||||
success(res){
|
success(res){
|
||||||
that.list=res.result
|
that.list=res.result
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
goAdd(enterpriseId){
|
goAdd(obj){
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
url:'./personList?enterpriseId='+ enterpriseId
|
url:'./personList?obj='+ JSON.stringify(obj)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,7 +6,7 @@
|
|||||||
</view>
|
</view>
|
||||||
</headers>
|
</headers>
|
||||||
<view class="index-boxs" v-if="personList.length">
|
<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>
|
<image :src="url_config+'image/'+item.fieldAcquisitionUrl"></image>
|
||||||
<view class="person-info">
|
<view class="person-info">
|
||||||
<text>{{item.workerName}}</text>
|
<text>{{item.workerName}}</text>
|
||||||
@ -53,6 +53,13 @@
|
|||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
addForm(){
|
addForm(){
|
||||||
|
if(!this.personList.length){
|
||||||
|
uni.showToast({
|
||||||
|
title: '请选择人员',
|
||||||
|
icon: 'none'
|
||||||
|
})
|
||||||
|
return
|
||||||
|
}
|
||||||
let requestData = {
|
let requestData = {
|
||||||
...this.pageData,
|
...this.pageData,
|
||||||
examTrainRecordList: this.personList,
|
examTrainRecordList: this.personList,
|
||||||
@ -102,21 +109,20 @@
|
|||||||
uni.redirectTo({
|
uni.redirectTo({
|
||||||
url: `/pages/personLocation/index/index`
|
url: `/pages/personLocation/index/index`
|
||||||
});
|
});
|
||||||
},
|
}
|
||||||
goDetail(item) {
|
|
||||||
uni.navigateTo({
|
|
||||||
url: `/pages/personLocation/exam/studydetails/studydetails?courseId=` + item.courseId
|
|
||||||
});
|
|
||||||
},
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
.main-content {
|
.main-content {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
.index-boxs {
|
.index-boxs {
|
||||||
|
height: calc(100vh - 200rpx);
|
||||||
|
overflow-y: scroll;
|
||||||
padding: 58rpx 35rpx;
|
padding: 58rpx 35rpx;
|
||||||
|
padding-bottom: 10rpx;
|
||||||
.index-box {
|
.index-box {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
background-color: white;
|
background-color: white;
|
||||||
@ -160,7 +166,7 @@
|
|||||||
|
|
||||||
.editBtn {
|
.editBtn {
|
||||||
position: fixed;
|
position: fixed;
|
||||||
bottom: 40rpx;
|
bottom: 20rpx;
|
||||||
left: 0px;
|
left: 0px;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|||||||
@ -26,9 +26,9 @@
|
|||||||
<view class="zoom zoomout" @click="controlVideoFn(0,0,-0.2,'ZOOM_OUT')"></view>
|
<view class="zoom zoomout" @click="controlVideoFn(0,0,-0.2,'ZOOM_OUT')"></view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<!-- <view class="video-playback" @click="toBackList">
|
<view class="video-playback" @click="toBackList">
|
||||||
视频回放
|
视频回放
|
||||||
</view> -->
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@ -200,7 +200,7 @@
|
|||||||
.fullHeight{
|
.fullHeight{
|
||||||
background-color: #F4F5FD;
|
background-color: #F4F5FD;
|
||||||
height: auto;
|
height: auto;
|
||||||
// padding-bottom: 60rpx;
|
padding-bottom: 60rpx;
|
||||||
}
|
}
|
||||||
/* #endif */
|
/* #endif */
|
||||||
.videoBox{
|
.videoBox{
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user