Commit 55611f2f authored by liuyuping's avatar liuyuping

'2022-3-8'

parent e70dd7a3
...@@ -43,20 +43,31 @@ App({ ...@@ -43,20 +43,31 @@ App({
// }) // })
}, },
globalData: { globalData: {
appBaseUrl: 'https://safe.c-icc.cn:8035', // appBaseUrl: 'https://safe.c-icc.cn:8035',
appBaseUrlV2: 'https://safe.c-icc.cn:8036', // appBaseUrlV2: 'https://safe.c-icc.cn:8036',
appBaseUrlV3: 'https://safe.c-icc.cn:8030', // appBaseUrlV3: 'https://safe.c-icc.cn:8030',
appBaseUrl: 'https://www.kuangshanzhixing.cn:8035',
appBaseUrlV2: 'https://www.kuangshanzhixing.cn:8036',
appBaseUrlV3: 'https://www.kuangshanzhixing.cn:8030',
// appBaseUrl: 'https://8.143.198.78:8035',
// appBaseUrlV2: 'https://8.143.198.78:8036',
// appBaseUrlV3: 'https://8.143.198.78:8030',
userInfo: null, userInfo: null,
Authorization: '', Authorization: '',
curRole: '', // 运营商 企业管理 企业员工 政府 超级管理员 curRole: '', // 运营商 企业管理 企业员工 政府 超级管理员
companyId: -1, companyId: -1,
companyName: '', companyName: '',
currentEnter: { currentEnter: {},
},
currentHD: {}, currentHD: {},
currentLawItem: {}, currentLawItem: {},
currentAdviceItem: {}, currentAdviceItem: {},
currentCourse: {}, currentCourse: {},
currentTrainImg: {} currentTrainImg: {},
curEvaluate: {},
testPaperId: -1,
singleScore: 0,
multiScore: 0,
justifyScore: 0,
isNeedNavigateTo: false
} }
}) })
...@@ -25,8 +25,8 @@ Page({ ...@@ -25,8 +25,8 @@ Page({
}, },
data: { data: {
page: this.data.curPage, page: this.data.curPage,
size: this.data.curPageSize, size: this.data.curPageSize
sort: 'noticeId,desc' //sort: 'noticeId,desc'
}, },
success: (res) => { success: (res) => {
console.log(res, 'app.globalData.appBaseUrlV2') console.log(res, 'app.globalData.appBaseUrlV2')
...@@ -122,8 +122,8 @@ Page({ ...@@ -122,8 +122,8 @@ Page({
}, },
data: { data: {
page: this.data.curPage, page: this.data.curPage,
size: this.data.curPageSize, size: this.data.curPageSize
sort: 'noticeId,desc' // sort: 'noticeId,desc'
}, },
success: (res) => { success: (res) => {
this.setData({ this.setData({
......
...@@ -34,6 +34,12 @@ Page({ ...@@ -34,6 +34,12 @@ Page({
}, },
success: (res) => { success: (res) => {
console.log(res) console.log(res)
this.setData({
title: res.data.noticeTitle,
depart: res.data.noticePublisher,
time: res.data.createTime,
content: res.data.noticeContent
})
/** /**
* createBy * createBy
* createTIme * createTIme
...@@ -50,14 +56,14 @@ Page({ ...@@ -50,14 +56,14 @@ Page({
strips: [], strips: [],
content content
*/ */
this.setData({ // this.setData({
title: res.noticeTitle, // title: res.data.noticeTitle,
depart: res.noticePublisher, // depart: res.data.noticePublisher,
time: res.updateTime, // time: res.data.updateTime,
content: res.noticeContent // content: res.data.noticeContent
}) // })
wx.setNavigationBarTitle({ wx.setNavigationBarTitle({
title: res.noticeTitle title: res.data.noticeTitle
}) })
}, },
fail: () => {}, fail: () => {},
......
...@@ -54,6 +54,7 @@ Page({ ...@@ -54,6 +54,7 @@ Page({
* 页面的初始数据 * 页面的初始数据
*/ */
data: { data: {
isShowVideo: true,
curCourse: app.globalData.currentCourse.courseBriefIntroduction, curCourse: app.globalData.currentCourse.courseBriefIntroduction,
curCoursePic: 'https://img0.baidu.com/it/u=2265254049,1802113800&fm=26&fmt=auto&gp=0.jpg', curCoursePic: 'https://img0.baidu.com/it/u=2265254049,1802113800&fm=26&fmt=auto&gp=0.jpg',
courseVideoSrc: 'http://39.102.232.151:8030/video/8.mp4', courseVideoSrc: 'http://39.102.232.151:8030/video/8.mp4',
...@@ -75,6 +76,15 @@ Page({ ...@@ -75,6 +76,15 @@ Page({
curCourse: app.globalData.currentCourse.courseBriefIntroduction, curCourse: app.globalData.currentCourse.courseBriefIntroduction,
courses: app.globalData.currentCourse.coursehour courses: app.globalData.currentCourse.coursehour
}) })
console.log(app.globalData.currentCourse.coursehour, 'app.globaldata.currentCourse.coursehour app.globaldata.currentCourse.coursehour')
const arr1 = app.globalData.currentCourse.coursehour.filter(item => {
return item.lessonFilePath.indexOf(".pdf") > -1
})
if (arr1.length === app.globalData.currentCourse.coursehour.length) {
this.setData({
isShowVideo: false
})
}
}, },
/** /**
......
<!--pages/course/course.wxml--> <!--pages/course/course.wxml-->
<view class="course-wrapper"> <view class="course-wrapper">
<view class="course-title">当前课程: {{curCourse}}</view> <view class="course-title">当前课程: {{curCourse}}</view>
<view class="video-wrapper"> <view class="video-wrapper" wx:if="{{isShowVideo}}">
<video id="course" show-center-play-btn="{{false}}" src="{{courseVideoSrc}}" bindtimeupdate="videoUpdate"></video> <video id="course" show-center-play-btn="{{false}}" src="{{courseVideoSrc}}" bindtimeupdate="videoUpdate" ></video>
<!-- <image class="video-cover" mode="scaleToFill" src="{{curCoursePic}}" animation="{{animationDisappear}}"></image> <!-- <image class="video-cover" mode="scaleToFill" src="{{curCoursePic}}" animation="{{animationDisappear}}"></image>
<view class="mask-video" animation="{{animationDisappear}}"> <view class="mask-video" animation="{{animationDisappear}}">
<image class="paly-video-btn" src="{{courseVideoPlay}}" bindtap="playvideo"> <image class="paly-video-btn" src="{{courseVideoPlay}}" bindtap="playvideo">
......
...@@ -10,6 +10,8 @@ Page({ ...@@ -10,6 +10,8 @@ Page({
companyId: app.globalData.currentEnter.companyId, companyId: app.globalData.currentEnter.companyId,
// 隐患验收人 // 隐患验收人
hdAcceptancePerson: "", hdAcceptancePerson: "",
// 备注
comment: '',
// 隐患id // 隐患id
hdId: -1, hdId: -1,
// 隐患描述 // 隐患描述
...@@ -42,7 +44,8 @@ Page({ ...@@ -42,7 +44,8 @@ Page({
rectFilePath: '', rectFilePath: '',
// 放大图片的路径 // 放大图片的路径
enlargeUrl: '', enlargeUrl: '',
topAnimation: {} topAnimation: {},
isToEnLarge: false
}, },
/** /**
...@@ -295,7 +298,8 @@ Page({ ...@@ -295,7 +298,8 @@ Page({
this.animation.bottom(0).step() this.animation.bottom(0).step()
this.setData({ this.setData({
topAnimation: this.animation.export(), topAnimation: this.animation.export(),
enlargeUrl: this.data.imgsrcurl enlargeUrl: this.data.imgsrcurl,
isToEnLarge: true
}) })
// toEnlargePicByRectPic // toEnlargePicByRectPic
}, },
...@@ -303,13 +307,15 @@ Page({ ...@@ -303,13 +307,15 @@ Page({
this.animation.bottom(0).step() this.animation.bottom(0).step()
this.setData({ this.setData({
topAnimation: this.animation.export(), topAnimation: this.animation.export(),
enlargeUrl: this.data.imgrecturl enlargeUrl: this.data.imgrecturl,
isToEnLarge: true
}) })
}, },
toCancelEnlargePic() { toCancelEnlargePic() {
this.animation.bottom('-100%').step() this.animation.bottom('-100%').step()
this.setData({ this.setData({
topAnimation: this.animation.export() topAnimation: this.animation.export(),
isToEnLarge: false
}) })
} }
}) })
\ No newline at end of file
...@@ -25,7 +25,10 @@ ...@@ -25,7 +25,10 @@
<text>隐患名称:</text> <text>隐患名称:</text>
<textarea type="text" disabled="true" placeholder="请输入隐患名称" value="{{hdName}}" bindinput="" maxlength="-1" /> <textarea type="text" disabled="true" placeholder="请输入隐患名称" value="{{hdName}}" bindinput="" maxlength="-1" />
</view> </view>
<view class="danger-expert">
<text>备注: </text>
<input type="text" disabled="true" placeholder="请输入备注" value="{{comment}}" bindinput="" />
</view>
<!-- <view class="danger-type"> <!-- <view class="danger-type">
<text>隐患类型:</text> <text>隐患类型:</text>
<radio-group bindchange=""> <radio-group bindchange="">
...@@ -84,7 +87,7 @@ ...@@ -84,7 +87,7 @@
<button type="primary" bindtap="submitEdit" style="background-color: #1d2089;">提交修改</button> <button type="primary" bindtap="submitEdit" style="background-color: #1d2089;">提交修改</button>
</view> </view>
</scroll-view> </scroll-view>
<view class="enlarge-pic-wrapper" animation="{{topAnimation}}"> <view class="enlarge-pic-wrapper {{isToEnLarge? 'enlarge-pic-show': ''}}">
<image <image
src="{{enlargeUrl}}" src="{{enlargeUrl}}"
mode="aspectFit" mode="aspectFit"
......
...@@ -160,15 +160,20 @@ ...@@ -160,15 +160,20 @@
} }
.enlarge-pic-wrapper { .enlarge-pic-wrapper {
position: absolute; position: fixed;
bottom: -100%; display: none;
width: 100vw; z-index: 999;
height: 100vh; left: 0;
top: 0;
bottom: 0;
right: 0;
background-color: black; background-color: black;
display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
} }
.enlarge-pic-show {
display: flex;
}
.enlarge-pic { .enlarge-pic {
width: 100vw; width: 100vw;
height: 100vh; height: 100vh;
......
...@@ -6,6 +6,33 @@ Page({ ...@@ -6,6 +6,33 @@ Page({
* 页面的初始数据 * 页面的初始数据
*/ */
data: { data: {
// 总的安全类别
secType: [
{
name: '安全资料类'
},
{
name: '现场检查类'
}
],
//
curSelectSecType: '',
// 安全检查类别
secCheckType: [],
// 安全检查类别替代
secCheckTypeReplace: [],
// 当前选择的安全检查类别
curSelectSecCheckTypeReplace: '',
// 安全检查内容
secCheckContent: [],
// 当前选择的安全检查内容
curSelectCheckContent: '',
// 发现问题
secCheckDiscover: [],
// 整改建议
suggestion: '',
// 检查依据
basis: '',
// 企业id // 企业id
companyId: app.globalData.currentEnter.companyId, companyId: app.globalData.currentEnter.companyId,
// 隐患验收人 // 隐患验收人
...@@ -37,7 +64,10 @@ Page({ ...@@ -37,7 +64,10 @@ Page({
// 隐患图片文件路径 // 隐患图片文件路径
hdFilePath: '', hdFilePath: '',
// 整改图片文件路径 // 整改图片文件路径
rectFilePath: '' rectFilePath: '',
// 备注
comment: '',
//
}, },
/** /**
...@@ -65,6 +95,24 @@ Page({ ...@@ -65,6 +95,24 @@ Page({
backgroundColor: '#090D9C', backgroundColor: '#090D9C',
frontColor: '#ffffff', frontColor: '#ffffff',
}) })
wx.request({
url: app.globalData.appBaseUrl + '/api/enterpriseSafetyInspectionContent',
method: 'GET',
header: {
Authorization: app.globalData.Authorization
},
data: {
level: 1,
page: 0,
size: 9999
},
success: res => {
console.log(res, '企业安全检查类别 企业安全检查类别')
this.setData({
secCheckType: res.data.content
})
}
})
}, },
/** /**
...@@ -102,6 +150,58 @@ Page({ ...@@ -102,6 +150,58 @@ Page({
}, },
chooseSecCheckType(event) {
wx.request({
url: app.globalData.appBaseUrl + '/api/enterpriseSafetyInspectionContent',
method: 'get',
header: {
Authorization: app.globalData.Authorization
},
data: {
level: 2,
page: 0,
size: 9999,
pid: this.data.secCheckType[event.detail.value].id
},
success: (res) => {
console.log(res, 'chooseSecCheckType chooseSecCheckType chooseSecCheckType')
this.setData({
secCheckContent: [...res.data.content],
curSelectSecCheckTypeReplace: this.data.secCheckType[event.detail.value].name
})
}
})
},
chooseSecCheckContent(event) {
console.log(this.data.secCheckContent[event.detail.value], 'chooseSecCheckContent chooseSecCheckContent chooseSecCheckContent')
wx.request({
url: app.globalData.appBaseUrl + '/api/enterpriseSafetyMatter',
method: 'get',
header: {
Authorization: app.globalData.Authorization
},
data: {
inspectionContentId: this.data.secCheckContent[event.detail.value].id,
page: 0,
size: 9999
},
success: (res) => {
this.setData({
secCheckDiscover: res.data.content,
curSelectCheckContent: this.data.secCheckContent[event.detail.value].name
})
}
})
},
chooseSecCheckDiscover(event) {
this.data.hdName = this.data.secCheckDiscover[event.detail.value].name
this.setData({
hdName: this.data.hdName,
basis: this.data.secCheckDiscover[event.detail.value].basis,
suggestion: this.data.secCheckDiscover[event.detail.value].suggestion
})
},
/** /**
* 拍照 * 拍照
*/ */
...@@ -162,6 +262,10 @@ Page({ ...@@ -162,6 +262,10 @@ Page({
inputHdInspectExpert(event) { inputHdInspectExpert(event) {
this.data.hdInspectExpert = event.detail.value this.data.hdInspectExpert = event.detail.value
}, },
//
inputHdComment(event) {
this.data.comment = event.detail.value
},
// 输入隐患名称 // 输入隐患名称
inputHdName(event) { inputHdName(event) {
this.data.hdName = event.detail.value this.data.hdName = event.detail.value
...@@ -171,10 +275,17 @@ Page({ ...@@ -171,10 +275,17 @@ Page({
console.log(event, 'hdTypeInput') console.log(event, 'hdTypeInput')
this.data.hdLevel = event.detail.value this.data.hdLevel = event.detail.value
}, },
// 输入检查依据
inpoutBasis(event) {
this.data.basis = event.detail.value
},
// 输入整改建议 // 输入整改建议
inputRectSug(event) { inputRectSug(event) {
console.log(event, '请输入整改建议') console.log(event, '请输入整改建议')
this.data.hdRectificationSug = event.detail.value // this.data.hdRectificationSug = event.detail.value
this.data.suggestion = event.detail.value
}, },
// 输入整改日期 // 输入整改日期
inputRectDate(event) { inputRectDate(event) {
...@@ -306,5 +417,16 @@ Page({ ...@@ -306,5 +417,16 @@ Page({
dataString += `\r\nContent-Disposition: form-data; name="${key}"\r\n\r\n${formdata[key]}\r\n--XXX` dataString += `\r\nContent-Disposition: form-data; name="${key}"\r\n\r\n${formdata[key]}\r\n--XXX`
} }
return dataString return dataString
},
chooseSecType(event) {
console.log(event, 'chooseSecType chooseSecType chooseSecType')
// this.setData({
// secCheckTypeReplace:
// })
this.setData({
secCheckTypeReplace: this.data.secCheckType.filter(item => item.type === this.data.secType[event.detail.value].name),
curSelectSecType: this.data.secType[event.detail.value].name
})
} }
}) })
\ No newline at end of file
<!--pages/dangerregister/dangerregister.wxml--> <!--pages/dangerregister/dangerregister.wxml-->
<view class="danger-register-wrapper"> <view class="danger-register-wrapper">
<view class="danger-form-wrapper"> <view class="danger-form-wrapper">
<!-- <view class="danger-order">
<text>序号:</text>
<input type="text" disabled="true" />
</view> -->
<view class="danger-check-date"> <view class="danger-check-date">
<text>检查日期:</text> <text>检查日期:</text>
<picker class="danger-pick-date" mode="date" value="{{hdInspectDate}}" bindchange="selectCheckDate"> <picker class="danger-pick-date" mode="date" value="{{hdInspectDate}}" bindchange="selectCheckDate">
...@@ -19,29 +15,108 @@ ...@@ -19,29 +15,108 @@
<input type="text" placeholder="请输入专家名称" bindinput="inputHdInspectExpert" /> <input type="text" placeholder="请输入专家名称" bindinput="inputHdInspectExpert" />
</view> </view>
<view class="danger-name">
<text>隐患名称:</text>
<textarea type="text" placeholder="请输入隐患名称" bindinput="inputHdName" maxlength="-1"/>
</view>
<view class="danger-type"> <view class="danger-type">
<text>隐患类型:</text> <text>隐患等级:</text>
<radio-group bindchange="inputHDType"> <radio-group bindchange="inputHDType">
<radio checked="{{true}}" value="1" color="#1d2089">一般隐患</radio> <radio checked="{{true}}" value="1" color="#1d2089">一般隐患</radio>
<radio checked="{{false}}" value="2" color="#1d2089">重大隐患</radio> <radio checked="{{false}}" value="2" color="#1d2089">重大隐患</radio>
</radio-group> </radio-group>
</view> </view>
<view class="c11-1">
<text>安全类别:</text>
<view>
<picker
header-text="安全类别"
mode="selector"
range="{{secType}}"
range-key="name"
bindchange="chooseSecType"
>
当前选择: {{curSelectSecType}}
</picker>
</view>
</view>
<view class="c11-1">
<text>安全检查类别</text>
<view>
<picker
header-text="安全检查类别"
mode="selector"
range="{{secCheckTypeReplace}}"
range-key="name"
bindchange="chooseSecCheckType"
>
当前选择: {{curSelectSecCheckTypeReplace}}
</picker>
</view>
</view>
<view class="c11-1">
<text>安全检查内容</text>
<view>
<picker
header-text="安全检查内容"
mode="selector"
range="{{secCheckContent}}"
range-key="name"
bindchange="chooseSecCheckContent"
>当前选择: {{curSelectCheckContent}}</picker>
</view>
</view>
<view class="c11-1">
<text>发现问题</text>
<view>
<picker
header-text="发现问题"
mode="selector"
range="{{secCheckDiscover}}"
range-key="name"
bindchange="chooseSecCheckDiscover"
>当前选择:{{hdName}}</picker>
</view>
</view>
<view class="c11-1">
<text>检查依据</text>
<view>
<textarea maxlength="-1" bindinput="inpoutBasis" value="{{basis}}"/>
</view>
</view>
<view class="danger-rect"> <view class="danger-rect">
<text>整改建议:</text> <text>整改建议:</text>
<textarea maxlength="-1" bindinput="inputRectSug" value="{{}}"></textarea> <textarea maxlength="-1" bindinput="inputRectSug" value="{{suggestion}}"></textarea>
</view> </view>
<!--<view class="c11-1">
<text>整改建议</text>
<view>
<textarea value="{{suggestion}}" />
</view>
</view>-->
<view class="danger-img"> <view class="danger-img">
<text>隐患照片</text> <text>隐患照片</text>
<!-- <camera device-position="back" flash="off" style="width:100%;height:300px;"></camera> --> <!-- <camera device-position="back" flash="off" style="width:100%;height:300px;"></camera> -->
<image mode="aspectFit" src="{{imgsrcurl}}"></image> <image mode="aspectFit" src="{{imgsrcurl}}"></image>
<button type="primary" bindtap="takePhoto">拍照</button> <button type="primary" bindtap="takePhoto">拍照</button>
</view> </view>
<view class="danger-expert">
<text>备注</text>
<input type="text" placeholder="备注"
bindinput="inputHdComment" />
</view>
<!-- <view class="danger-preview"> <!-- <view class="danger-preview">
<text>隐患照片预览:</text> <text>隐患照片预览:</text>
......
...@@ -59,6 +59,12 @@ ...@@ -59,6 +59,12 @@
border-radius: 5px; border-radius: 5px;
box-shadow: 1rpx 1rpx 0.5rpx 0.5rpx #eee, -1rpx -1rpx 0.5rpx 0.5rpx #eee; box-shadow: 1rpx 1rpx 0.5rpx 0.5rpx #eee, -1rpx -1rpx 0.5rpx 0.5rpx #eee;
} }
.child-hdname {
padding: 20rpx;
border-radius: 5rpx;
box-shadow: 1rpx 1rpx 0.5rpx 0.5rpx #eee, -1rpx -1rpx 0.5rpx 0.5rpx #eee;
margin: 10rpx 10rpx;
}
.danger-type { .danger-type {
display: flex; display: flex;
...@@ -149,4 +155,13 @@ ...@@ -149,4 +155,13 @@
.danger-submit button { .danger-submit button {
background-color: #1d2089!important; background-color: #1d2089!important;
}
.c11-1 {
display: flex;
background-color: white;
margin: 3vh 5vw;
justify-content: space-between;
padding: 1vh 2vw;
border-radius: 5px;
box-shadow: 1rpx 1rpx 0.5rpx 0.5rpx #eee, -1rpx -1rpx 0.5rpx 0.5rpx #eee;
} }
\ No newline at end of file
// pages/evaluate/evaluate.js // pages/evaluate/evaluate.js
import * as echarts from '../ec-canvas/echarts'
const app = getApp();
function initChart(canvas, width, height, dpr) {
const chart = echarts.init(canvas, null, {
width: width,
height: height,
devicePixelRatio: dpr // new
});
canvas.setChart(chart);
var option = {
backgroundColor: "#ffffff",
series: [{
label: {
normal: {
fontSize: 14
}
},
type: 'pie',
center: ['50%', '50%'],
radius: ['20%', '40%'],
data: [{
value: app.globalData.curEvaluate.lessThan60PeopleNum,
name: '低于60分人数'
}, {
value: app.globalData.curEvaluate.between60And70PeopleNum,
name: '60到70分之间的人数'
}, {
value: app.globalData.curEvaluate.between70And80PeopleNum,
name: '70到80分之间的人数'
}, {
value: app.globalData.curEvaluate.between80And90PeopleNum,
name: '80到90分之间的人数'
}, {
value: app.globalData.curEvaluate.moreThan90PeopleNum,
name: '高于90分的人数'
}]
}]
};
chart.setOption(option);
return chart;
}
/**
* avgScore integer($int32)
企业平均考试成绩
lessThan60PeopleNum integer($int32)
低于60分人数
moreThan90PeopleNum integer($int32)
高于90分的人数
between60And70PeopleNum integer($int32)
60到70分之间的人数
between70And80PeopleNum integer($int32)
70到80分之间的人数
between80And90PeopleNum integer($int32)
80到90分之间的人数
courseCompletedLearnerNum integer($int32)
完成全部课程人数
courseCompletedLearnerRate string
完成全部课程比例(%)
courseLearnerNum integer($int32)
参与学习人数
courseLearnerRate string
学习比例(%)
courseStarLevel integer($int32)
课程评价星级
examCompletedExamineeNum integer($int32)
完成全部考试人数
examCompletedExamineeRate string
完成全部考试比例(%)
examStarLevel integer($int32)
考试评价星级
examineeNum integer($int32)
参与考试人数
examineeRate string
参与考试比例(%)
totalPeopleNum integer($int32)
总人数
*/
Page({ Page({
/** /**
...@@ -7,14 +105,76 @@ Page({ ...@@ -7,14 +105,76 @@ Page({
data: { data: {
grayStar: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAYAAADhAJiYAAAAAXNSR0IArs4c6QAAAuhJREFUWEftlz1oFEEUx9/LWuhZWRmwEMRYeFh4++bYVJpGEWPjFwliIYKNgpUaMaIgBNTKj0YEEQsTNWChgrGKndmZ4YIBJUI8UqnVgZgi3m6eTLiDy3l7s9mRGMSBhWXnvff/8Z83c3MIq2zgKuOBfw9Ia70VAG4z8w9mHhBCfHZx3dkhrfVdZj5tIBDxge/7J/8a0MTExDbP86YbARYWFnYXi8W3WaGcHFJKDQHAxSbxZ0R0dMWBwjDs7Ojo+NJKmJl7hBDjWaAyO6S1vsLMVxOAXgsh9q0YkFIqBwBz7QSzupTJoXbuNECOE1HPcl1KBVQul9dWKpUtzLz4AMCtlEIDzDwDADNxHM8EQfDdlvcbkNa614giohGuA5j3dbZilvmImc2huQhoHgNbLBZfNOYtAZJS3kPEU47Cy01/SEQn6klLgJRSTwHgyHIrOsZrIqKWQFLKw4g4DABrHEXSpptl7BdCjLYEMh/DMDzged4wM69PWzVLHCLOxXHc37aH6oWVUnsAYAQANmQRS5FTAYA+InrTHJu47cMw3IWII4jYmUIgdQgzf2XmvqQf4LbnkNY6YGbj1ObUiu0DZxGxz/f9d0lh1oNRSrnTLB8ibnOBYuZPZpmEEKV2daxAJrnWU2MuQACwt1XPpO6hxkCllLnzmLtP5sHMF4QQN2wFUjmktR5l5kO2Ypb5x0R0zFYjFZCUctq1hxDxg+/7+T8CpJRiW6E080RkNcAaoJTaAQDv0wjaYqrV6vbu7u6PTrtMSnkcER9ZxK4hYpx0pa3n1s6gJ65A1xHxfKsizHwzl8sN5vP5n7XjIYeI55LAEHHI9/1LTkBKqZcAsL+pyJ0oigaTboBTU1Mb5+fnzwDAYFPeKyLqdQKSUjY6dD+KostBEHyz9YuZL5VKXXEcm3+1Z2vxz4nooBPQ5OTkpmq12uV5XrlQKMymAWmOUUoVACAAgDEiMtfXxGHdZVkAXHL+A9ncW3UO/QKKjCQ0t+MyGQAAAABJRU5ErkJggg==', grayStar: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAYAAADhAJiYAAAAAXNSR0IArs4c6QAAAuhJREFUWEftlz1oFEEUx9/LWuhZWRmwEMRYeFh4++bYVJpGEWPjFwliIYKNgpUaMaIgBNTKj0YEEQsTNWChgrGKndmZ4YIBJUI8UqnVgZgi3m6eTLiDy3l7s9mRGMSBhWXnvff/8Z83c3MIq2zgKuOBfw9Ia70VAG4z8w9mHhBCfHZx3dkhrfVdZj5tIBDxge/7J/8a0MTExDbP86YbARYWFnYXi8W3WaGcHFJKDQHAxSbxZ0R0dMWBwjDs7Ojo+NJKmJl7hBDjWaAyO6S1vsLMVxOAXgsh9q0YkFIqBwBz7QSzupTJoXbuNECOE1HPcl1KBVQul9dWKpUtzLz4AMCtlEIDzDwDADNxHM8EQfDdlvcbkNa614giohGuA5j3dbZilvmImc2huQhoHgNbLBZfNOYtAZJS3kPEU47Cy01/SEQn6klLgJRSTwHgyHIrOsZrIqKWQFLKw4g4DABrHEXSpptl7BdCjLYEMh/DMDzged4wM69PWzVLHCLOxXHc37aH6oWVUnsAYAQANmQRS5FTAYA+InrTHJu47cMw3IWII4jYmUIgdQgzf2XmvqQf4LbnkNY6YGbj1ObUiu0DZxGxz/f9d0lh1oNRSrnTLB8ibnOBYuZPZpmEEKV2daxAJrnWU2MuQACwt1XPpO6hxkCllLnzmLtP5sHMF4QQN2wFUjmktR5l5kO2Ypb5x0R0zFYjFZCUctq1hxDxg+/7+T8CpJRiW6E080RkNcAaoJTaAQDv0wjaYqrV6vbu7u6PTrtMSnkcER9ZxK4hYpx0pa3n1s6gJ65A1xHxfKsizHwzl8sN5vP5n7XjIYeI55LAEHHI9/1LTkBKqZcAsL+pyJ0oigaTboBTU1Mb5+fnzwDAYFPeKyLqdQKSUjY6dD+KostBEHyz9YuZL5VKXXEcm3+1Z2vxz4nooBPQ5OTkpmq12uV5XrlQKMymAWmOUUoVACAAgDEiMtfXxGHdZVkAXHL+A9ncW3UO/QKKjCQ0t+MyGQAAAABJRU5ErkJggg==',
yelloStar: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAYAAADhAJiYAAAAAXNSR0IArs4c6QAAAyFJREFUWEftlj9oE2EYxp83aXMXdXEQCw5CsB0sDopDF8mlFUWti/9IESHttUWo4KRWrCgIBXXSuoi5VgVttAUHFayDubMgHRTBQVFIpZM6CdrS5Ei+V65ajW2S73ontYi3HOR73uf58X7fd3kJS+yhJcaDfw+I0/o6m3AZwCQHuVvd0j/up+u+O2Rb7VeYucuBIKA/pBn6XwPKjnbUUUG8LQYQQmjhxgHLK5SvDuVMvRfAyTnhQ4pmHFh0IE4namwKfigVLJhi4VjS9ALluUM5q+0MmM6WCmXGIzVm7Fg0IH7eucyeLExVCvTaJU8dqtSdWUgCzJBmxBbaJVdAnE6odpAiQaqKiAJHGHzJVRCjGxAZCgQy1VPZDO289UVWNw8oP9rR7ISCOMKMCIAIEUWYOSwzq7ROoLwAjwOcAVNm5k2UUTXjfnHdb0BZs+0qgTr9BC+0loDrIc1oLdrqXxY5U78LYP9CTX3pCS+UqLG5NFC6dR9RcJDBVb5CXBY728hcaFFiA8MlgZwfs6a+OwAMMrDcpa8nGQFTAmipeIZmnbNW2zZiSgFY6SlNXvSZieNqtP/xXGnZaz/9pDVKAUoRqEbu717B4I8sOF7uD7jid8hOtzcIcIoIa91HllcyYyIAiodiybFyKumH0bb0jYKRIqDODxQD7wKEeChqvKz8vXKR8uNMjbiQlpVwgberTfPPjOszVCzMmboz8zizj/dH4ITSaFyQGUi3zDHIWfowGHtlZpL124pmHJR5uAMydWdM9XWGALxWNKP+TwGxzMjNuqIZ0gZIBTkrsQEcfOUmUKohWq9Ek2983TLb1A8xcLNimOBzCKJQbqT9WcsUV2LJO76AsqZ+noDjpU34YmjV1x6qH7Kd9ZnRdip/rDwY9Spa8pQvoJylPwBjV7EJgfqq1XAPNfSVnAB5rH21Pc1HQOgprmPGQzVmNPsCKu4QAdfsPJ1esTX5SXpenMnBStQGEOxixtHver6naP17fAHxs8Nrsrl8LQS/DzcZE25A5mrsp62bIAINopAfUZtuZHwBeQHwUyO99n7MvdT+B5J17Rt8DiM07n1e9QAAAABJRU5ErkJggg==', yelloStar: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAYAAADhAJiYAAAAAXNSR0IArs4c6QAAAyFJREFUWEftlj9oE2EYxp83aXMXdXEQCw5CsB0sDopDF8mlFUWti/9IESHttUWo4KRWrCgIBXXSuoi5VgVttAUHFayDubMgHRTBQVFIpZM6CdrS5Ei+V65ajW2S73ontYi3HOR73uf58X7fd3kJS+yhJcaDfw+I0/o6m3AZwCQHuVvd0j/up+u+O2Rb7VeYucuBIKA/pBn6XwPKjnbUUUG8LQYQQmjhxgHLK5SvDuVMvRfAyTnhQ4pmHFh0IE4namwKfigVLJhi4VjS9ALluUM5q+0MmM6WCmXGIzVm7Fg0IH7eucyeLExVCvTaJU8dqtSdWUgCzJBmxBbaJVdAnE6odpAiQaqKiAJHGHzJVRCjGxAZCgQy1VPZDO289UVWNw8oP9rR7ISCOMKMCIAIEUWYOSwzq7ROoLwAjwOcAVNm5k2UUTXjfnHdb0BZs+0qgTr9BC+0loDrIc1oLdrqXxY5U78LYP9CTX3pCS+UqLG5NFC6dR9RcJDBVb5CXBY728hcaFFiA8MlgZwfs6a+OwAMMrDcpa8nGQFTAmipeIZmnbNW2zZiSgFY6SlNXvSZieNqtP/xXGnZaz/9pDVKAUoRqEbu717B4I8sOF7uD7jid8hOtzcIcIoIa91HllcyYyIAiodiybFyKumH0bb0jYKRIqDODxQD7wKEeChqvKz8vXKR8uNMjbiQlpVwgberTfPPjOszVCzMmboz8zizj/dH4ITSaFyQGUi3zDHIWfowGHtlZpL124pmHJR5uAMydWdM9XWGALxWNKP+TwGxzMjNuqIZ0gZIBTkrsQEcfOUmUKohWq9Ek2983TLb1A8xcLNimOBzCKJQbqT9WcsUV2LJO76AsqZ+noDjpU34YmjV1x6qH7Kd9ZnRdip/rDwY9Spa8pQvoJylPwBjV7EJgfqq1XAPNfSVnAB5rH21Pc1HQOgprmPGQzVmNPsCKu4QAdfsPJ1esTX5SXpenMnBStQGEOxixtHver6naP17fAHxs8Nrsrl8LQS/DzcZE25A5mrsp62bIAINopAfUZtuZHwBeQHwUyO99n7MvdT+B5J17Rt8DiM07n1e9QAAAABJRU5ErkJggg==',
headPotraitPic: 'data:image/jpg;base64,/9j/4AAQSkZJRgABAQEAAQABAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCj/wAARCAQ4BDgDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD2uiiivOPpwooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigBKKUdarz3ltbozT3EMYHdnAosTzIsUVg3ni/w/af6/VrUeoVwx/SsO8+KXhi2Yg3ry4/55xk00hc6O6pK8ruPjdo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rwzqVzuwyQsF/wB48CvmbB3FmJJY5JNKlHqFR6B06CgU6iuhIxCigUVWw9gooooAKKKKAGkZFdV8NNefQ9diDOfs9yRHID0Hoa5eruhadPqmqW9raKWd3Gcfwj1rOSuhwZ9QRuHVXBBB5GO9PNVrGH7PaQxE5KKFJ9wKsL901xHTFhRRRQUFFFFMAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAp6np9tqVnJbXkayROMEMOn0968D8deE7nw5fMyoZLFz+7lH8j719EVU1PT7fUrOS1vI1kideh/mPerhNxeplKB8sg9adXTeOvCNx4cvmaMb7GQ5jk9B6GuYWuta6mDVmLR0oopiRCrmK5jmBIZWDDHsc19VaJci90ayuc7i8K5+uK+Vpl+Q+or6S+G0nm+CNMOc4TGT7Gsaq0NoHQvGJoZYGA2yKVIPuDXytfwG11a9tzx5crL+RNfVsJ2uDXzX8Q4RbeNtTA4VpN351NDqOojoPgbffY/HUMTHC3UbRn+Yr6WHevk74bsR430jacZm/SvrEdTWsx4fqh1FAoqDqCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACgdDRQKBGT4sk8rwxq7/3bOT/0E18cnBcMOhGf1r7D8YRGfwtrESnBa0kA/BDXx8y4Qj0GK1gclbdHqHwIt92p6jOP4IgteyKc8V5D8AZFFxqqE8lFH616/naa5Kq1Kp7HnfxuujB4YggAGZ5gG/CvEF5/CvZPj2P+JLpp7ef/AErxpeRW9FaGc2PooorYzCiiigYUUUUAFFHHen2kMt3dw2tvGZJpCAqikBLpVjdarqCWdlEXldsDjge5r37wR4Rt/DVmpwHvXH7yQj9Kb8PfCcPhvTg8iiS+lG6R/T2FdYTuzXLUqX0RvThpdiUUUViWFFFFBQUUUUwCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooCxR1bTbfVLKS1vEDxOMcjp9Pevnrxj4cuPDepvBJloGJ8uT+8K+k6wfGPhuDxHpE1tJhZwCYn9D/wDXrWlPldmZTh1Pm1TmlqxqdjPpd5La3UZSWNip96rLXSc6Y2QZQgV9GfC4bPAunKeu3P4V87dfl/D8a+l/B9mbLwzp0J6iFcj3rGq9DWmbAbmvnL4nsJPGeoMP7+K+jFHNfMvjK4+1eJtSlz96ZvyqaS1KqPQs/DhGbxppIwzbZxgD0r63Xoa+V/gtbPeeP7JQTtjy5P0r6pXqa2kPD9RRRQKKg6gooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooEVdTgN1p13ApwZYXQH6givjS8iaG5uInBVkcqc98GvtQcnFfLHxY0Y6N4zvU6pcH7Sv0b/wCvmtYHPWXUvfA27EPiyS2c4+0QNt+q817sRnivlvwxqB0nxDYXyMR5Ugz9Dwa+oY5UnhjmQgo6hgR7iueqrsimzjPjFYfbPBNxIq7pLeVJR7Dof518/wAXIr6tv7VLzTbi1nGY5VKsD7jFfMWs6ZNpGrXdjcD54ZCBnuM8Gqoy6BJFOiiitzIKKKKYBR+NFNPek3YSDG44HXsK9y+GHgtdJtk1O/XN7InyKw+4p/rXJ/CjwcNTn/tS/T/RYj+6U/xEd69txhTzx2rnqVG9EbQjrcbRRSVz2NkhaKKKBhRRRTAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAPPPix4S/tey/tGzUfbIB84A++v8AjXiRypIIwRxX1eQCCDjpjB7ivBfip4abR9ZN3bR4srkluOit3Fb0Z9GYTglqjE8C6dFqniiwt7hwsRk3NnvjnFfSwVUAVeFUYAr5W066eyvYbmPIeJgyn+Yr6X8NatDrekQXlu3DDDD+6e4orJhB2DxDeLp+iXt2zbRFET+OMCvmGR/OkkkY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/OtTvXM1Z2OmOquLRRRSGFFFFMAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKABaiuYEubeWGYBopFKsD71LRTi7CaufMnivSH0TXLmzKnYjEofUHpXXfAzxAdH8R/YpXxbXvy89m7Vt/HLSTJY2upwL/AKsmOTA5weleRW0720iTRkiSMhlI7EHIrqg7o578sj7VBzSisHwRrC674asb5W3NJGA/+8Otb9I64u6EooopFhRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABXh/wC0ZrjAadokDcZFxP6eij+Zr252CIzN91Rk/Svkbx3rJ13xTqF91jMhWLn+BeB/KqiYVXZGNbQvc3EUMQy8jBFHuTivTbL4Ry/bIxfXwFsvLBF5PtWP8HtKF/4lW5kXMVoC/sW7GvdxWdWdtEY04p6shsbeKzs4baBQscahVAGKnooHesNzoQUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAGd4i01NW0W7snAPmpgf73avmK9ga2nlt5QVdGKkH1r6urwL4xaUNP8VGeMARXS7xj171tRl0MKkdbnc/s8a4WW90aQ/Kg86LJ/Aiva6+RfAerSaJ4o0+7UkJ5gSTnHB4r63iYPGrDowBFas0oyurMfRRRUnQFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUCgDkvihrH9i+Cd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QAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFA6GgBrsEjZm+6ASa+MtYnNzrmozn/lpO7fqa+v/EE62uhalcSfcjgcn/vk18aKcySkdAe/6VcTlrPoevfAi1/datdf7Sxflz/WvVfWuB+CkHk+FppQMLLcNgfTj+ld+Dmuaq7ysOlsFFIOhpazNAooopgFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUVk+IfEOnaBbiXUpvL3cIg5L/AEFFm9hNpbmtRXI6V8Q9A1BvLF35MmcYmUr+tdTb3ENxGHgnilQ942DD9Kbi0SpJ7EtFFFIsKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKa7Kis0jBVHcnArlPEPj/RNIZolnN3cqD8kQz+Z6Cmot7EuaR1tVbvUbOz/AOPu7ghyMje4Xj8a8Q8QfE/W9QZk04pp8J7qNzf99dvwriLy6u7ovLeTtO5OSznJNaqi2Zusj6tt5Yp4Vlt5FkjboynINPryT4D3d9IuoQTbmtVVWUt2Y8YFet1nKPK7Fwd9QoooqSwooooAKKKKACiiigBR1r59+LkPleNrxsYEiq4+mK+ghXh/xsQjxPE5Bw0CgHHBrWluY1dil8FZvJ8f2XON4ZT78V9RA18l/DKVovG+ksP+eoX86+ta2kXQ2CiiipOgKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKB3ooFAHM/EiUQeBtbfv9ldM/Wvk1OGOe5zX1H8ZHC/DvVh/E2xfzYV8tkneSOtaROOrufQXwkhMfge0LdXd3H4k/wD167Bfumuc+HEYj8D6Quc5hz+pro1+6a457s1p/CFFFFIoKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAK8Y+OGm3v9sW2oIrGz8ry+OQrDOfzr2emXMEVxE0U8aSIwwVddyn6irhLldyJx5lY+Tm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KKKKACiiigAooooASpbVtkwJ6Hio6VBlsDrWdWKlBpji9TbtHEdzG56A11kbBlBHIIrjU+7XQaJdeZGY26qOPevk8TTvqjLF021zGsOlApBS1wHnFa8hE9u8Z7iuYiZra4yeCprrhWPrFgXJmhA3dwO9dNGaXuvY68NVSvCWzNO1nSePch57ipVrkIpZYX+VnQira6ncbMMwJHenKhd6McsI27xeh0nFZ+o6gsCFY2BfHQHpWJJezyDDyH8DioANxyaulh3c0p4OzvIWSR5ZGZzkmpol2rTI0AOTzU3avVo0eXVnW7JWQlV9QuBaWU9w7ALFGznJ44GasV518bfEI0zw01jEf3158uR2Xvmu6lBykkYzdkfPurXr6hql3dOSTNKzj6Zr1n9m/TPMudS1FlBCfuwT1zXjMQO7AGT0A96+pPg9oTaF4Oto5lCz3B86Qe5/+tXtLRGEFeVztqKKKk7AooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigBOxrx342+Bzdq3iDTUzcRgLcRKPvKP4/qOhr2KmSxLNE6SKGRgVYHuKaZnOKkj4qVSkwdDhlbIPcEV7p8LvGK61Z/2feyf6fAMAt/GnauK+K/gd/DmqyXtnGTpdw5ZTj/AFbd1NcPpt3Np91HdWrlJYyCrA9eabipI5U3Bn1WtFcz4E8UweJdMD5CXcfyyx55+o/SulrlcXF6m8ZKSFooopFBRRRQAUUUUAFS2bbbhCfXFRUA4OR1FS1dAdHRUNq/mQKxPOKmrz2rOxYUUUUgCiiigAooooAKKKKACiiigAooooAbUF+cW71ZrO1VyFVR3FXSXvEt2M1aKO1Fd8RBRRRTAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAq3Zw4BZx16CmWcQYlmHA6VcBAViTivMxWIv7kDanDqxQwXqalglaNw6HBFZc0m9+tSwT8BX/AANc08G/ZqQ+ZS91naaddC4i/wBodRVwVyFrO8EgeM8j9a6Swu0uUyDhu4rxatHl1PNxFBwd1sWxSYpRRXOzlK8ttFKc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89+K52EfNW14hfEcag8E81jQDL8V62Ag+ZHqYRWp3Lg6U5aaKd619hHY1EoooqhieleafF77lj/vNXplcJ8WLNptGSaMKWifJPcD2rGurwZ04KSjWjc8pt/9cv1FdF2rmlO0gg8iuht5BJCjDnivOgfZU2SUUGha1NgooooAKKKKACiiigAooooABVPUbgRRFAcuafd3IgQgfePTFYkkjSOWY5NZzkloZTqW0Qzkn3NerfDjwybOIahep++kGYx/dX/GuX8BeGZNVu1up1K2kbA8j75HavY4VCRhFAAAxgV04el9pnzuZYu/7uD9SQDilpB0pa7DxAFFAopjCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigApD0NLRQhM+V/jGMfEjVD6bP/QRTPhQf+K0sv8Adb+Vanx6gRPHksqAL58aMw9wKwvhpOIPGWnZDHcxUY9wf8KuS91nDa0j6NWlpvelriOgKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAoHHIoopWuC0NOJ1ddwP4VWvI/4xTLJwjkN3q66hkIryJXoVtNjqj78TLop7ptYim4r1ozUldHPJa2EoooqiQooooAKKKKACiiigZ5N8dpVMulwg/MAzkfXivLEUu6oOdxA/HNehfG6YP4htIwR8kAzjsSSf8ACuO8K2hvfEWm2y9ZLhAD+Oa7qatFHLPc+sPDkZh0DTYSD+7t0T8hWj2o+VFVUACgAcCo5JVUVhWrRhdtnZTi7IWVwg96qxI0suxASx6UM29vXNbmj2ZjBkcfMentXzOPxftNiqs1Tj5mjbxCOJV9BUtAorwmePJ3ClpDUU8ghjZmPAFKKu7BFNuyMHW5t91tGMLVW1XqajmfzJXY9zVmIYQV9JllK8r9j2YpQgkSUZoor6MAooooGFZ2tWK6hYT28mdsikVo0nXrQ0mrMItxd0fOF3A1tdTQSKQY2KkHr1q/pE3WMn6V1PxQ0M29yNThAEcmFcDsfWuFgcxtuWvJnFwlY+vwVdVYKSOjoqG1nWeMEfeHUVP1q07nopiUUUUxhRRRQAUU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s5UdGHQ145BM0c6SoSrqwIYcEYq5rmVjjjeMrM+rh0PP/wBelrnfAuvRa7ocM6585AEkVjzkd66KuKSs7G6dwooopDCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKcg3NgU2rFouZDWVWfJBsqCuy3FHsQCuh0axEa+bIMuemRWRp8Pn3SIR8vU11kYCptWvlcTWbZliqnKuRCr3pTQKDXAeciKaVIYi8hAArmb+9a6mPB2dFFWdbuvNk8pT8q1Jo1kHbzZBwOgNdcIqnG73O6lBUo88tygllOy5WJqPsVzjiFq6xQBSUvrDF9dl2OQe3kjGZI2A9xUYXBrsmVWGGUEe4rC1u2WFldFAUnBAFaUq3O7M3o4vnlZlOFEIJ4JqYd6r2xAYirVfV4HllTTR0SVmIKWigdDXeSFFFFAwooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACjtRRQBmeIdKi1nRbuwmC4nQoCwyAexr5Q8VeHr7w7q0tjfxMu3/VyY+Vx6g19gkZ69K4X4r+Co/FejGWHK6nbDdAc/K3sa0izlrQ+0jwrwD4mk8OaoHdibORtsy45x619B2lzFeWsdxburxSKGVh3FfLmpWM+m3clpdJ5dxGdrjtmuw+G3jN9Fvfsmoyyvp8vGQc+U3+FYVafVGdOR7zRTIpFljWSNgyOoZSO4p9YG4UUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFIAooopgFFFFABRRRQAVbsRy5+lVKu2HR/wAK5cX/AA2aUviNvRP+Pk/Sujrm9E/4+z9K6SvksR8RxYr4wNNY4Rj6DNOpkgzG49RiskcsdzkJDukcnnJrrLWMRwIoHGK5WRDHKVccg11NpKssKlSDx2rqqL3Ud2JTcVbYlqlNqVvFMI2LZPcdqszSCOJmJGAK5V8NK5X+JuPes6dPmTuY4ehzptnXr8y5zkGs/W4w9o5IzjFW7QFbdAeoFRaj/wAeb/SopvlmRT92ojmIvvirtUU4YGrqdK+syuV4tHry7jqKKK9ckKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACkxS0lArXPFv2gvDtmlouuQrsu5GEbhfuv749fevDos/w/KMZNfRP7Qn/IoxHv5wr52U/uzjI4rVu8bHHZRbsfTvg6JofDeno7lj5Skk/StntWN4Lcv4W05mJJMK8mtfNcD6mkQooopFBRRRTAKKKKACiiigAooooAKKKha5gUkGeLI7FhRZvYTdiaioftcH/PeL/voUouYScebF/30KVn2FzIlopEIYZDoQfQ5pcj1FOzHzIKKQfpS0DCiiigAooUEg4/nSZwMnAHqTRYVxaKiNzCuQZoff5h/jR9qg/57Q/99CjlbFdEtFU59VsIGAlvLdcjP3xVc+INIX72o2w+sgoSfYfMjUornLvxv4etciTVLdiBuwpzWTP8UfD8cTGM3ErDoqpimoN9BOSO6orzTS/i1Y3Wo+Vc2UtvbH5RKXzj3bivR7W4huYEmgkWSJwCrr3FNxa3BNPYfRRRUlBRRRQAVesejVRq5YsAXB7iuXF3dNpF03Zm3oX/AB9t9K6TFcrp04t7kMeh4NdSjBlyDkGvk68feucmLT57i0UUVgcaMXVrEnMsYz68dayo5poQVR3T2yRXXYHSqz2MEjZaMGuiFXTU7KWJsuWepzb3UzqQ8jEemau6PYmVvNlXEangEdTWqunWynIiX8eatIoVcDoKbrK1kOpiFy2hoKvHFVdR/wCPST6VbHSqOsSeXZv6kYFY01eSOalrNHNL94VdXoapJ98VdXoa+symLs2exIcKKBRXsCCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigA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CkdT/wCgpB/3zT4PghqRbMmr26gf9M+te7AAdqb3Ip2D2jPLNM+Cmjxx/wDEwvLmWY9fKOB+VdXongHw3pMySwadE0qdJX5J/CunpyrkUIlyYIAqjaNv+yOgpe/WiigncDSUvFHFMaCikPXilQE9altIuFNy2QnNOReadtpVGBUSn2Oqlhne8hwAFH0ozxS1lex3JWAUUUUigooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigApMUtFABRRRQAmKTHfFOpMUXJcU9xrRgimCPHSpaB0NWptGToRfQjwaTHFTYppWqVQxeEiyL3pKl2j0o2CnzmcsI+hDjFCjg1MIwQeaZ5RB68U1NGTw0huBR9Kk2e4pPL9xT50P6vOwyinbaAhwaXMiVQl2G0q0u00BcVXMgdGSWwlGKTDf3TRg+hpcyI9nLsFAowfQ0YPoapSSD2cuwYpMUvTqSKPxNHMieV9hMUoAo49aPxo5g5X2Cij8aUD2oUkhqEn0Eopdp9KXYaOZD9nLsNopcH0pEDHtT5kHs5dgopdpp3lmlzxK9jPsMFFO2YpNpqeaLD2M+wtNFP2ml2UcyKWHmRijr0pxQ04LRzIFhpkeaTr0qXyhQIh60udF/VJEeKBmpdopdvtS9oWsI+rIcH3peR0GampQvpS9oWsJFbkKIxHNKIh1JqU0VLqNmkcPCIzYKXFKKdtqbm0YqIlKtJSjoaRQlFFFAwooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooATFLRRQAZooooAQUtFFABRRRQAUUUUAJiloooATAowKWigBKKMUYoFZBRRijFAWQYHpRgUYoxTuTyIMD0owPSloo5mHIhMD0paTFGKVx8qFzSUYoxQOyDj0ooxRii4WQYpaKKBhSYpaKAExS0UUAFJilooATFLRRQAmKWiigAozRRQAUmKWigBMUtFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQB//9k=' headPotraitPic: '',
completedCourseNum: 0,
completedCourseRate: "0%",
completedPaperNum: 0,
completedPaperRate: "0%",
courseStarLevel: 0,
paperStarLevel: 0,
totalCourseNum: 0,
totalPaperNum: 0,
isManager: false,
isStaff: false,
avgScore: 0,
lessThan60PeopleNum: 0,
between60And70PeopleNum: 0,
between70And80PeopleNum: 0,
between80And90PeopleNum: 0,
moreThan90PeopleNum: 0,
courseCompletedLearnerNum: 0,
courseCompletedLearnerRate: 0,
courseLearnerNum: 0,
courseLearnerRate: 0,
courseStarLevel1: 0,
examCompletedExamineeNum: 0,
examCompletedExamineeRate: 0,
examStarLevel: 0,
examineeNum: 0,
examineeRate: 0,
totalPeopleNum: 0,
ec: {
onInit: initChart
}
}, },
/** /**
* 生命周期函数--监听页面加载 * 生命周期函数--监听页面加载
*/ */
onLoad: function (options) { onLoad: function (options) {
console.log(app.globalData, 'app.globalData app.globalData')
if (app.globalData.curRole === '企业管理') {
this.setData({
isManager: true,
...app.globalData.curEvaluate
})
}
if (app.globalData.curRole === '企业员工') {
this.setData({
isStaff: true
})
}
wx.request({
url: app.globalData.appBaseUrlV2 + '/api/learningEvaluation/evaluatePerson',
method: 'GET',
header: {
Authorization: app.globalData.Authorization
},
success: (res) => {
console.log(res, 'app.globalData')
this.setData({
completedCourseNum: res.data.completedCourseNum,
completedCourseRate: res.data.completedCourseRate,
completedPaperNum: res.data.completedPaperNum,
completedPaperRate: res.data.completedPaperRate,
courseStarLevel: res.data.courseStarLevel,
paperStarLevel: res.data.paperStarLevel,
totalCourseNum: res.data.totalCourseNum,
totalPaperNum: res.data.totalPaperNum
})
}
})
console.log(app.globalData.curRole, 'app.globalData.curRole')
}, },
/** /**
......
{ {
"usingComponents": {} "usingComponents": {
"ec-canvas": "../ec-canvas/ec-canvas"
}
} }
\ No newline at end of file
<!--pages/evaluate/evaluate.wxml--> <!--pages/evaluate/evaluate.wxml-->
<view class="evaluate-wrapper"> <view class="evaluate-wrapper">
<view class="card-wrapper"> <view class="card-wrapper">
<view class="nickname-wrapper">相善若水</view> <!-- <view class="nickname-wrapper">相善若水</view>
<view class="nickname-interface">当前用户名称</view> <view class="nickname-interface">当前用户名称</view> -->
<view class="person-image-wrapper"> <!-- <view class="person-image-wrapper">
<image class="person-image" src="{{headPotraitPic}}"></image> <image class="person-image" src="{{headPotraitPic}}"></image>
</view> -->
<!-- <view class="entry-belong-to">所属企业</view>
<view class="entry-name">威海华发房地产开发有限公司</view> -->
<view wx:if="{{ isStaff }}">
<view class="study-info">学习情况</view>
<view class="complete-class">完成<span class="complete-degree">{{completedCourseNum}}</span>课程/共<span class="complete-degree">{{totalCourseNum}}</span>课程</view>
<view class="complete-percent">完成百分比: <span class="complete-degree">{{completedCourseRate}}</span></view>
<view class="evaluate-star">评价: <image wx:for="{{courseStarLevel}}" class="star-for-evaluate" src="{{yelloStar}}"></image><image wx:for="{{5 - courseStarLevel}}" class="star-for-evaluate"src="{{grayStar}}"></image></view>
<view class="study-info to-top-margin">考试情况</view>
<view class="complete-class">完成<span class="complete-degree">{{completedPaperNum}}</span>课程/共<span class="complete-degree">{{totalPaperNum}}</span>课程</view>
<view class="complete-percent">完成百分比: <span class="complete-degree">{{completedPaperRate}}</span></view>
<view class="evaluate-star">评价: <image wx:for="{{courseStarLevel}}"class="star-for-evaluate" src="{{yelloStar}}"></image><image wx:for="{{5 - courseStarLevel}}" class="star-for-evaluate"src="{{grayStar}}"></image></view>
</view>
<view wx:if="{{ isManager }}">
<view>
<view class="class1-0">参与学习情况</view>
<view class="class2-0">
<span class="class2-2">参与<text class="class2-1">{{courseLearnerNum}}</text>人</span>
<span class="class2-2">参与度<text class="class2-1">{{courseLearnerRate}}</text></span>
</view>
<view class="class2-0">
<span class="class2-2">完成全部课程<text class="class2-1">{{courseCompletedLearnerNum}}</text>人</span>
<span class="class2-2">共<text class="class2-1">{{totalPeopleNum}}</text>人</span>
<span class="class2-2">完成度<text class="class2-1">{{courseCompletedLearnerRate}}</text></span>
</view>
</view>
<view>
<view class="class1-0">参与考试情况</view>
<view class="class2-0">
<span class="class2-2">参与<text class="class2-1">{{examineeNum}}</text>人</span>
<span class="class2-2">共<text class="class2-1">{{totalPeopleNum}}</text>人</span>
</view>
<view class="class2-0">
<span class="class2-2">完成全部考试<text class="class2-1">{{examCompletedExamineeNum}}</text>人</span>
<span class="class2-2">共<text class="class2-1">{{totalPeopleNum}}</text>人</span>
<span class="class2-2">完成度<text class="class2-1">{{examCompletedExamineeRate}}</text></span>
</view>
</view>
<view>
<view class="class1-0">成绩统计情况</view>
<view class="class2-0" wx:if="{{avgScore !== null}}">
<span class="class2-2">企业平均成绩<text class="class2-1">{{avgScore}}</text>分</span>
</view>
<view class="evaluate-star">评价: <image wx:for="{{courseStarLevel}}" class="star-for-evaluate" src="{{yelloStar}}"></image><image wx:for="{{5 - courseStarLevel}}" class="star-for-evaluate"src="{{grayStar}}"></image></view>
<view class="container" style="width: 500rpx;height: 500rpx;display: flex;justify-content: center;margin: 0 auto;" wx:if="{{avgScore !== null}}">
<ec-canvas style="width: 700rpx;height: 500rpx;" id="mychart-dom-pie" canvas-id="mychart-pie" ec="{{ ec }}"></ec-canvas>
</view>
</view>
</view> </view>
<view class="entry-belong-to">所属企业</view>
<view class="entry-name">威海华发房地产开发有限公司</view>
<view class="study-info">学习情况</view>
<view class="complete-class">完成<span class="complete-degree">2</span>课程/共<span class="complete-degree">10</span>课程</view>
<view class="complete-percent">完成百分比: <span class="complete-degree">20%</span></view>
<view class="evaluate-star">评价: <image class="star-for-evaluate" src="{{yelloStar}}"></image><image class="star-for-evaluate" src="{{yelloStar}}"></image><image class="star-for-evaluate"src="{{yelloStar}}"></image><image class="star-for-evaluate"src="{{yelloStar}}"></image><image class="star-for-evaluate"src="{{grayStar}}"></image></view>
<view class="study-info to-top-margin">考试情况</view>
<view class="complete-class">完成<span class="complete-degree">2</span>课程/共<span class="complete-degree">10</span>课程</view>
<view class="complete-percent">完成百分比: <span class="complete-degree">20%</span></view>
<view class="evaluate-star">评价: <image class="star-for-evaluate" src="{{yelloStar}}"></image><image class="star-for-evaluate" src="{{yelloStar}}"></image><image class="star-for-evaluate"src="{{yelloStar}}"></image><image class="star-for-evaluate"src="{{yelloStar}}"></image><image class="star-for-evaluate"src="{{grayStar}}"></image></view>
</view> </view>
<view class="bgcolor-cover"></view> <view class="bgcolor-cover"></view>
</view> </view>
\ No newline at end of file
...@@ -121,4 +121,39 @@ ...@@ -121,4 +121,39 @@
background-color: #090D9C; background-color: #090D9C;
z-index: -1; z-index: -1;
border-radius: 0 0 70rpx 70rpx; border-radius: 0 0 70rpx 70rpx;
}
.class1-0 {
position: relative;
font-size: 34rpx;
font-family: 'PingFang SC';
font-weight: bold;
color: #333333;
line-height: 39rpx;
margin: 10rpx 38rpx;
}
.class1-0::before {
content: '';
display: block;
position: absolute;
left: -20rpx;
top: 50%;
width: 11rpx;
height: 29rpx;
background: #090D9C;
transform: translatey(-50%);
}
.class2-0 {
margin-left: 38rpx;
font-family: 'PingFang-SC-Medium';
font-size: 30rpx;
}
.class2-1 {
color: #090D9C;
font-family: 'PingFang-SC-Medium';
font-size: 38rpx;
margin: 0 10rpx;
}
.class2-2 {
margin-right: 30rpx;
} }
\ No newline at end of file
// pages/exam/exam.js // pages/exam/exam.js
const app = getApp();
Page({ Page({
/** /**
...@@ -27,11 +28,37 @@ Page({ ...@@ -27,11 +28,37 @@ Page({
* 生命周期函数--监听页面加载 * 生命周期函数--监听页面加载
*/ */
onLoad: function (options) { onLoad: function (options) {
wx.request({
url: app.globalData.appBaseUrlV2 + '/api/onlineExamPaper/page',
method: 'get',
header: {
Authorization: app.globalData.Authorization
},
data: {
page: 0,
size: 999
},
success: (res) => {
if (res.statusCode === 200) {
console.log(res.data.content, 'res.data.content res.data.content')
res.data.content.forEach(item => {
if(!item.score) {
item.isExamed = false
item.score = 0
} else {
item.isExamed = true
}
})
this.setData({
examList: res.data.content
})
}
}
})
}, },
/** /**
* 生命周期函数--监听页面初次渲染完成 * 生命周期函数--监听页面初次渲染完成
*/ */
onReady: function () { onReady: function () {
...@@ -48,6 +75,13 @@ Page({ ...@@ -48,6 +75,13 @@ Page({
backgroundColor: '#090D9C', backgroundColor: '#090D9C',
frontColor: '#ffffff', frontColor: '#ffffff',
}) })
if (app.globalData.isNeedNavigateTo) {
app.globalData.isNeedNavigateTo = false
wx.navigateTo({
url: '/pages/testpaper/testpaper?id=' + app.globalData.testPaperId +'&singleScore=' + app.globalData.singleScore + '&multiScore=' + app.globalData.multiScore + '&justifyScore=' + app.globalData.justifyScore,
success: function(event) {}
})
}
}, },
/** /**
...@@ -97,20 +131,47 @@ Page({ ...@@ -97,20 +131,47 @@ Page({
this.setData({ this.setData({
animationSearch: repAnimation.export() animationSearch: repAnimation.export()
}) })
},
/**
* 搜索考试内容
*/
searchExam() {
}, },
/** /**
* 跳转到考试试题 * 跳转到考试试题
*/ */
LinkToTestPaper() { LinkToTestPaper(event) {
wx.navigateTo({ wx.navigateTo({
url: '/pages/testpaper/testpaper', url: '/pages/testpaper/testpaper?id=' + event.currentTarget.dataset.index.id +'&singleScore=' + event.currentTarget.dataset.index.singleChoiceScore + '&multiScore=' + event.currentTarget.dataset.index.multipleChoiceScore + '&justifyScore=' + event.currentTarget.dataset.index.judgmentScore,
success: function(event) {} success: function(event) {}
}) })
},
/**
* 搜索考试内容
*/
searchExam(event) {
wx.request({
url: app.globalData.appBaseUrlV2 + '/api/onlineExamPaper/page',
method: 'get',
header: {
Authorization: app.globalData.Authorization
},
data: {
page: 0,
size: 999,
name: event.detail.value
},
success: (res) => {
if (res.statusCode === 200) {
console.log(res.data.content, 'res.data.content res.data.content')
res.data.content.forEach(item => {
if(!item.score) {
item.isExamed = false
item.score = 0
} else {
item.isExamed = true
}
})
this.setData({
examList: res.data.content
})
}
}
})
} }
}) })
\ No newline at end of file
...@@ -11,18 +11,31 @@ ...@@ -11,18 +11,31 @@
</input> </input>
</view> </view>
<scroll-view scroll-y="true" class="exam-scroll-wrapper"> <scroll-view scroll-y="true" class="exam-scroll-wrapper">
<view wx:for="{{examList}}" class="exam-list-wrapper"> <view wx:for="{{examList}}" class="class1-0">
<view class="class1-1">{{item.name}}</view>
<view class="class1-2">
<view class="class1-3">
<view class="exam-score" wx:if="{{item.isExamed}}">
已考试: {{item.score}}分
</view>
<view wx:else class="no-exam">还未考试</view>
</view>
<button class="startExamBtn" data-index="{{item}}"
bindtap="LinkToTestPaper">开始考试</button>
</view>
</view>
<!-- <view wx:for="{{examList}}" class="exam-list-wrapper">
<image src="{{item.coverPic}}" class="exam-cover"></image> <image src="{{item.coverPic}}" class="exam-cover"></image>
<view class="down-wrapper"> <view class="down-wrapper">
<view class="down-title">{{item.examName}}</view> <view class="down-title">{{item.name}}</view>
<view class="exam-score-wrapper"> <view class="exam-score-wrapper">
<view class="exam-score" wx:if="{{item.isExamed}}"> <view class="exam-score" wx:if="{{item.isExamed}}">
已考试: {{item.score}}分 已考试: {{item.score}}分
</view> </view>
<view wx:else class="no-exam">还未考试</view> <view wx:else class="no-exam">还未考试</view>
</view> </view>
<button class="startExamBtn" bindtap="LinkToTestPaper">开始考试</button> <button class="startExamBtn" data-index="{{item}}" bindtap="LinkToTestPaper">开始考试</button>
</view> </view>
</view> </view> -->
</scroll-view> </scroll-view>
</view> </view>
\ No newline at end of file
...@@ -110,4 +110,24 @@ ...@@ -110,4 +110,24 @@
/* line-height: 43rpx!important; */ /* line-height: 43rpx!important; */
/* display: flex; /* display: flex;
align-items: center; */ align-items: center; */
} }
\ No newline at end of file
.class1-0 {
width: 710rpx;
margin: 20rpx auto;
box-shadow: 2rpx 2rpx 2rpx 2rpx #eee, -1rpx -1rpx 1rpx 1rpx #eee;
border-radius: 20rpx;
overflow: hidden;
padding-top: 10rpx;
}
.class1-1 {
margin-top: 20rpx;
margin-left: 20rpx;
}
.class1-2 {
margin-top: 30rpx;
display: flex;
align-items: center;
justify-content: space-between;
padding: 5rpx 20rpx;
}
...@@ -165,10 +165,31 @@ Page({ ...@@ -165,10 +165,31 @@ Page({
* 跳转到学习评价 * 跳转到学习评价
*/ */
LinkToEvaluate() { LinkToEvaluate() {
wx.navigateTo({ if (app.globalData.curRole === '企业管理') {
url: '/pages/evaluate/evaluate', wx.request({
success: function(event) {} url: app.globalData.appBaseUrlV2 + '/api/learningEvaluation/evaluateEnterprise',
}) method: 'GET',
header: {
Authorization: app.globalData.Authorization
},
success: (res) => {
console.log(res ,'app.globalData.curRole>>>>>>>>>>>>>>>>>>')
app.globalData.curEvaluate = {
...res.data
}
wx.navigateTo({
url: '/pages/evaluate/evaluate',
success: function(event) {}
})
}
})
} else {
wx.navigateTo({
url: '/pages/evaluate/evaluate',
success: function(event) {}
})
}
}, },
/** /**
* 跳转到隐患管理 * 跳转到隐患管理
......
// pages/info/info.js // pages/info/info.js
const app = getApp();
Page({ Page({
/** /**
...@@ -6,30 +7,6 @@ Page({ ...@@ -6,30 +7,6 @@ Page({
*/ */
data: { data: {
infoList: [ infoList: [
{
title: '[隐患预警] 贵公司“重大隐患”—“联动台紧急停止按钮无效”整改即将到期,请及时整改',
isRead: false,
time: '2020-05-19 19:25',
infoId: '11'
},
{
title: '[隐患预警] 贵公司“一般隐患”—“力矩限位不灵敏”整改即将到期,请及时整改',
isRead: false,
time: '2020-05-19 19:24',
infoId: '22'
},
{
title: '[隐患预警] 贵公司“一般隐患”—“起升钢丝绳排布不均匀”整改已超期,请及时整改',
isRead: true,
time: '2020-05-18 17:23',
infoId: '33'
},
{
title: '[隐患预警] 贵公司“一般隐患”—“脚手架外架与脚手架内架相连,拉接点较少”整改已超期,请及时整改',
isRead: true,
time: '2020-05-18 13:34',
infoId: '44'
}
] ]
}, },
...@@ -37,7 +14,29 @@ Page({ ...@@ -37,7 +14,29 @@ Page({
* 生命周期函数--监听页面加载 * 生命周期函数--监听页面加载
*/ */
onLoad: function (options) { onLoad: function (options) {
wx.request({
url: app.globalData.appBaseUrlV2 + '/api/infoPush/page',
header: {
Authorization: app.globalData.Authorization
},
method: 'get',
data: {
page: 0,
size: 999
},
success: (res) => {
console.log(res, 'info 推送')
this.setData({
infoList: res.data.content.map(item => {
return {
title: item.content,
isRead: false,
time: item.createTime
}
})
})
}
})
}, },
/** /**
...@@ -58,6 +57,8 @@ Page({ ...@@ -58,6 +57,8 @@ Page({
backgroundColor: '#090D9C', backgroundColor: '#090D9C',
frontColor: '#ffffff', frontColor: '#ffffff',
}) })
}, },
/** /**
......
...@@ -2,12 +2,12 @@ ...@@ -2,12 +2,12 @@
<view class="info-page-wrapper"> <view class="info-page-wrapper">
<scroll-view scroll-y="true" class="info-list-scroll"> <scroll-view scroll-y="true" class="info-list-scroll">
<view wx:for="{{infoList}}" class="info-item-wrapper" wx:key="infoId"> <view wx:for="{{infoList}}" class="info-item-wrapper" wx:key="infoId">
<view wx:if="{{item.isRead}}" class="read-icon">已读</view> <!--<view wx:if="{{item.isRead}}" class="read-icon">已读</view>
<view wx:else class="unread-icon">未读</view> <view wx:else class="unread-icon">未读</view>-->
<view wx:if="{{item.isRead}}" class="read-time">{{item.time}}</view> <view wx:if="{{item.isRead}}" class="read-time">{{item.time}}</view>
<view wx:else class="unread-time">{{item.time}}</view> <view wx:else class="unread-time">{{item.time}}</view>
<view wx:if="{{item.isRead}}" class="read-point-icon"></view> <!--<view wx:if="{{item.isRead}}" class="read-point-icon"></view>
<view wx:else class="unread-point-icon"></view> <view wx:else class="unread-point-icon"></view>-->
<view wx:if="{{item.isRead}}" class="info-item-read-title">{{item.title}}</view> <view wx:if="{{item.isRead}}" class="info-item-read-title">{{item.title}}</view>
<view wx:else class="info-item-title">{{item.title}}</view> <view wx:else class="info-item-title">{{item.title}}</view>
</view> </view>
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
box-sizing: border-box; box-sizing: border-box;
margin: 30rpx auto; margin: 30rpx auto;
padding-top: 45rpx; padding-top: 45rpx;
padding-left: 60rpx; padding-left: 20rpx;
padding-right: 8rpx; padding-right: 8rpx;
border-radius: 10rpx; border-radius: 10rpx;
box-shadow: 2rpx 2rpx 2rpx 2rpx #eee, -1.5rpx -1.5rpx 1.5rpx 1.5rpx #eee; box-shadow: 2rpx 2rpx 2rpx 2rpx #eee, -1.5rpx -1.5rpx 1.5rpx 1.5rpx #eee;
......
...@@ -29,7 +29,7 @@ Page({ ...@@ -29,7 +29,7 @@ Page({
data: { data: {
page: this.data.curPage, page: this.data.curPage,
size: this.data.curPageSize, size: this.data.curPageSize,
sort: 'lawDate,desc' sort: 'law_date,desc'
}, },
success: (res) => { success: (res) => {
console.log(res, 'wx.request') console.log(res, 'wx.request')
......
...@@ -144,6 +144,7 @@ Page({ ...@@ -144,6 +144,7 @@ Page({
console.log(res, 'authorization authorization authorizatoin') console.log(res, 'authorization authorization authorizatoin')
let courses = [] let courses = []
courses = [...res.data.content] courses = [...res.data.content]
console.log(courses, 'courses courses courses courses')
for (let i = 0; i < courses.length; i++) { for (let i = 0; i < courses.length; i++) {
courses[i].coursehour = [] courses[i].coursehour = []
courses[i].sum = 0 courses[i].sum = 0
...@@ -230,8 +231,61 @@ Page({ ...@@ -230,8 +231,61 @@ Page({
/** /**
* 用户搜索课程 * 用户搜索课程
*/ */
searchTeachCourse() { searchTeachCourse(event) {
console.log(event, 'search______________>>>>>>course')
// 获取所有课程
wx.request({
url: app.globalData.appBaseUrlV2 + '/api/onlineTraining/pageCourse',
method: 'get',
header: {
Authorization: app.globalData.Authorization
},
data: {
page: 0,
size: 9999,
courseTitle: event.detail.value
},
success: (res) => {
console.log(res, 'authorization authorization authorizatoin')
let courses = []
courses = [...res.data.content]
console.log(courses, 'courses courses courses courses')
for (let i = 0; i < courses.length; i++) {
courses[i].coursehour = []
courses[i].sum = 0
courses[i].isLearnedSum = 0
courses[i].validDate = 6
}
for (let i = 0; i < courses.length; i++) {
wx.request({
url: app.globalData.appBaseUrlV2 + '/api/onlineTraining/findLesson',
method: 'get',
header: {
Authorization: app.globalData.Authorization
},
data: {
page: 0,
size: 9999,
pid: courses[i].id
},
success: (res1) => {
console.log(res1, 'coursehour coursehour')
courses[i].coursehour = [...res1.data]
courses[i].sum = courses[i].coursehour.length
courses[i].isLearnedSum = courses[i].coursehour.filter(item => parseInt(item.speed) > 98).length
courses[i].cover = app.globalData.appBaseUrlV3 + '/online-training/cover/' + courses[i].courseCoverFilePath.split('\\online-training\\cover\\')[1]
courses[i].introduce = courses[i].courseBriefIntroduction
this.setData({
teachList: courses
})
},
fail: () => {}
})
}
},
fail: () => {}
})
}, },
/** /**
* 获取焦点 * 获取焦点
......
...@@ -21,7 +21,7 @@ ...@@ -21,7 +21,7 @@
<view data-index="{{index}}">{{item.introduce}}</view> <view data-index="{{index}}">{{item.introduce}}</view>
</view> </view>
</view> </view>
<view class="course-subject">课程题目: {{item.title}}</view> <view class="course-subject">课程题目: {{item.courseTitle}}</view>
<view class="sum-price-wrapper"> <view class="sum-price-wrapper">
<view class="course-sum-wrapper">课程数量: <span>{{item.sum}}</span>课时, 已经学习了<span>{{item.isLearnedSum}}</span>课时</view> <view class="course-sum-wrapper">课程数量: <span>{{item.sum}}</span>课时, 已经学习了<span>{{item.isLearnedSum}}</span>课时</view>
<view class="price-wrapper"> <view class="price-wrapper">
......
// pages/testpaper/testpaper.js // pages/testpaper/testpaper.js
const app = getApp();
Page({ Page({
/** /**
...@@ -6,385 +7,10 @@ Page({ ...@@ -6,385 +7,10 @@ Page({
*/ */
data: { data: {
singleQuestions: [ singleQuestions: [
{
questionType: 'single',
questionOutline: '生产经营单位的( )是本单位安全生产第一责任人,对本单位的安全生产工作全面负责。',
questionList: [
'主要负责人',
'董事长',
'总经理',
'分管负责人'
]
},
{
questionType: 'single',
questionOutline: '《安全生产法》规定:( )发现危及从业人员生命安全的情况时,有权向生产经营单位建议组织从业人员撤离危险场所。',
questionList: [
'工会',
'从业人员',
'团队管理方面',
'安全管理人员'
]
},
{
questionType: 'single',
questionOutline: '《安全生产法》规定:事故调查报告应当依法及时向( )公布。',
questionList: [
'社会',
'从业人员',
'调查人员',
'政府有关部门'
]
},
{
questionType: 'single',
questionOutline: '《安全生产事故隐患排查治理暂行规定》,生产经营单位对承包、承租单位的事故隐患排查治理负有( )的职责。',
questionList: [
'监督',
'检查',
'协调',
'统一协调和监督管理'
]
},
{
questionType: 'single',
questionOutline: '《安全生产违法行为行政处罚办法(2015修正)》,( )以上人民政府安全生产监督管理部门对生产经营单位及其有关人员在生产经营活动中违反有关安全生产的法律、行政法规、部门规章、国家标准、行业标准和规程的违法行为实施行政处罚。',
questionList: [
'国务院',
'省、自治区、直辖市',
'设区的市级',
'县级'
]
},
{
questionType: 'single',
questionOutline: '《安全生产违法行为行政处罚办法(2015修正)》,行政处罚案件应当自立案之日起( )日内作出行政处罚决定;由于客观原因不能完成的,经安全监管监察部门负责人同意,可以延长。',
questionList: [
'10日',
'30日',
'60日',
'90日'
]
},
{
questionType: 'single',
questionOutline: '《安全生产违法行为行政处罚办法(2015修正)》,进行案件调查时,安全生产行政执法人员不得少于( )。',
questionList: [
'一名',
'两名',
'三名',
'五名'
]
},
{
questionType: 'single',
questionOutline: '《关于开展安全生产驻点监管工作的通知》要求,驻点监管时间。暂定为2年,分批次进行,每半年轮换一次。驻点人员进驻到位后,要设置办公地点,日常化开展监管工作;要制定监管工作计划,明确任务完成节点,至少( )向派出单位报告一次驻点监管工作情况。',
questionList: [
'每周',
'每半月',
'每月',
'每半年'
]
},
{
questionType: 'single',
questionOutline: '《国务院关于坚持科学发展安全发展促进安全生产形势持续稳定好转的意见》(国发〔2011〕40号)提出:加强安全知识普及和技能培训。全面开展安全生产、应急避险知识进学校、进乡村、进社区、进家庭活动,努力提升( )。',
questionList: [
'全民安全水平',
'全民安全素质',
'全民安全知识'
]
},
{
questionType: 'single',
questionOutline: '《国务院关于坚持科学发展安全发展促进安全生产形势持续稳定好转的意见》(国发〔2011〕40号)提出:认真落实企业安全生产主体责任,强化企业( )和指挥权,注重发挥注册安全工程师对企业安全状况诊断、评估、整改方面的作用。',
questionList: [
'生产负责人领导决策',
'主要负责人指挥决策',
'技术负责人技术决策'
]
},
{
questionType: 'single',
questionOutline: '《国务院关于坚持科学发展安全发展促进安全生产形势持续稳定好转的意见》(国发〔2011〕40号)提出:严格危险化学品安全管理。全面开展危险化学品安全管理现状( ),建立危险化学品安全管理信息系统。',
questionList: [
'普查评估',
'安全评估',
'风险评估'
]
},
{
questionType: 'single',
questionOutline: '《国务院关于进一步加强企业安全生产工作的通知》(国发〔2010〕23号)提出:进一步规范企业生产经营行为。加强对生产现场监督检查,凡( )组织生产的,要责令停产停工整顿,并对企业和企业主要负责人依法给予规定上限的经济处罚。',
questionList: [
'超水平、超强度、超定员',
'超能力、超强度、超定员',
'超能力、超强度、超范围'
]
},
{
questionType: 'single',
questionOutline: '《国务院关于进一步加强企业安全生产工作的通知》要求,建立完善企业安全生产预警机制。企业要建立完善安全生产动态监控及预警预报体系,每( )进行一次安全生产风险分析。',
questionList: [
'',
'',
'季度',
''
]
},
{
questionType: 'single',
questionOutline: '《山东省人民政府关于贯彻落实国发[2010]23号文件进一步加强企业安全生产工作的意见》(鲁政发[2010]77号)提出:严格执行建设项目安全设施核准审批制度。对项目建设生产经营单位存在违法分包、转包等行为的,立即依法停工停产整顿,并追究项目业主、承包方及( )等各方责任。',
questionList: [
'设计、施工、监理、监管',
'建设、设计、施工、监管',
'建设、设计、施工、监理、监管'
]
},
{
questionType: 'single',
questionOutline: '《山东省生产安全事故应急办法》,高危和人员密集单位应当( )对所有专项应急预案至少组织1次演练。',
questionList: [
'每半年',
'每年',
'每2年',
'每3年'
]
}
], ],
multiQuestions: [ multiQuestions: [
{
questionType: 'multiple',
questionOutline: '《山东省安全生产条例》规定,主要负责人包括对本单位生产经营负有全面领导责任的( )。',
questionList: [
'法定代表人',
'实际控制人',
'以及其他主要决策人',
'技术负责人'
]
},
{
questionType: 'multiple',
questionOutline: '( ),在遇到险情时第一时间享有下达停产撤人命令的直接决策权和指挥权。 ',
questionList: [
'生产现场带班人员',
'班组长',
'调度人员',
'主要负责人'
]
},
{
questionType: 'multiple',
questionOutline: '《安全生产法》规定:从业人员有权对本单位安全生产工作中存在的问题提出( )。',
questionList: [
'批评',
'检举',
'控告',
'报告'
]
},
{
questionType: 'multiple',
questionOutline: '《山东省生产经营单位安全生产主体责任规定》第四条,生产经营单位是安全生产的责任主体,对本单位的安全生产承担主体责任。主体责任主要包括( )、安全管理保障责任、事故报告和应急救援责任。',
questionList: [
'组织机构保障责任',
'规章制度保障责任',
'物质资金保障责任',
'教育培训保障责任'
]
},
{
questionType: 'multiple',
questionOutline: '《生产安全事故报告和调查处理条例》,根据生产安全事故造成的人员伤亡或者直接经济损失,事故一般分为( )。',
questionList: [
'一般事故',
'较大事故',
'重大事故',
'特别重大事故'
]
},
{
questionType: 'multiple',
questionOutline: '《中共中央国务院关于推进安全生产领域改革发展的意见》,大力推进企业安全生产标准化建设,实现( )的标准化。',
questionList: [
'安全管理',
'操作行为',
'设备设施',
'作业环境'
]
},
{
questionType: 'multiple',
questionOutline: '《中华人民共和国安全生产法》第二十四条 ( )和危险物品的生产、经营、储存、装卸单位,应当设置安全生产管理机构或者配备专职安全生产管理人员。',
questionList: [
'矿山',
'金属冶炼',
'运输单位',
'建筑施工'
]
},
{
questionType: 'multiple',
questionOutline: '安全设备的设计、制造、( )、改造和报废,应当符合国家标准或者行业标准。',
questionList: [
'安装',
'使用',
'检测',
'维修'
]
},
{
questionType: 'multiple',
questionOutline: '按照《生产安全事故报告和调查处理条例》规定,报告事故应当包括下列内容:( )',
questionList: [
'事故发生单位概况',
'事故发生的时间、地点以及事故现场情况',
'事故的简要经过',
'事故已经造成或者可能造成的伤亡人数'
]
},
{
questionType: 'multiple',
questionOutline: '从业人员有权对本单位安全生产工作中存在的问题提出批评、检举、控告,有权拒绝( )。',
questionList: [
'违章指挥',
'领导指令',
'不合理安排',
'强令冒险作业'
]
},
{
questionType: 'multiple',
questionOutline: '任何单位和个人对事故不得( )',
questionList: [
'迟报',
'谎报',
'漏报',
'瞒报'
]
},
{
questionType: 'multiple',
questionOutline: '生产经营单位对重大危险源应当登记建档,进行定期( ),并制定应急预案,告知从业人员和相关人员在紧急情况下应当采取的应急措施。',
questionList: [
'评价',
'检测',
'评估',
'监控'
]
},
{
questionType: 'multiple',
questionOutline: '《全省安全生产大排查大整治行动方案》,创新检查方式,重点采取( )等方式开展检查,确保查实查深。',
questionList: [
'双随机一公开',
'四不两直',
'异地交互',
'驻点检查'
]
},
{
questionType: 'multiple',
questionOutline: '《山东省生产经营单位安全生产主体责任规定》要求,生产经营单位应当按照国家有关规定,开展以( )为主要内容的安全生产标准化建设。',
questionList: [
'岗位达标',
'班组达标',
'专业达标',
'企业达标'
]
},
{
questionType: 'multiple',
questionOutline: '安全生产工作应当以人为本,坚持( ),坚持安全第一、预防为主、综合治理的方针,从源头上防范化解重大安全风险。',
questionList: [
'安全发展理念',
'人民至上、生命至上',
'把保护人民生命安全摆在首位',
'树牢安全发展理念'
]
}
], ],
checkQuestions: [ checkQuestions: [
{
questionType: 'check',
questionOutline: '购买和发放劳动防护用品的情况应当记录在案。可以货币或者其他物品替代劳动防护用品。( )',
questionList: [
'',
''
]
},
{
questionType: 'check',
questionOutline: '生产经营单位使用劳务派遣人员从事作业的,劳务派遣人员不计入该生产经营单位的从业人员人数。( )',
questionList: [
'',
''
]
},
{
questionType: 'check',
questionOutline: '生产经营单位应当按照国家标准、行业标准或者地方标准为从业人员有偿提供合格的劳动防护用品,并督促、检查、教育从业人员正确佩戴和使用。( )',
questionList: [
'',
''
]
},
{
questionType: 'check',
questionOutline: '事故隐患分为一般事故隐患和较大事故隐患。( )',
questionList: [
'',
''
]
},
{
questionType: 'check',
questionOutline: '《安全生产法》规定:国家实行生产安全事故责任追溯制度。( )',
questionList: [
'',
''
]
},
{
questionType: 'check',
questionOutline: '《安全生产法》规定的行政处罚,由应急管理部门和其他负有安全生产监督管理职责的部门按照职责分工决定。( )',
questionList: [
'',
''
]
},
{
questionType: 'check',
questionOutline: '《国务院关于坚持科学发展安全发展促进安全生产形势持续稳定好转的意见》(国发〔2011〕40号)提出:解决安全生产问题的根本途径是坚持科学发展安全发展。( )',
questionList: [
'',
''
]
},
{
questionType: 'check',
questionOutline: '《山东省生产经营单位安全生产主体责任规定》要求,安全总监协助本单位主要负责人履行安全生产管理职责,专业分管本单位安全生产管理工作。( )',
questionList: [
'',
''
]
},
{
questionType: 'check',
questionOutline: '《中共中央国务院关于推进安全生产领域改革发展的意见》提出加强新材料、新工艺、新业态安全风险评估和管控。( )',
questionList: [
'',
''
]
},
{
questionType: 'check',
questionOutline: '安全监管监察部门不得因当事人陈述或者申辩而加重处罚。( )',
questionList: [
'',
''
]
}
], ],
questions: [ questions: [
{ {
...@@ -416,19 +42,124 @@ Page({ ...@@ -416,19 +42,124 @@ Page({
] ]
} }
], ],
singleScore: 0,
multiScore: 0,
justifyScore: 0,
singleQuestionNum: 0,
multiQuestionNum: 0,
justifyQuestionNum: 0,
isShowExamPage: false,
resultScore: 0,
isToScroll: true, isToScroll: true,
closeBtnImage: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAA5pJREFUWEfFl0mIXUUUhr8f1IXzRrIwSoyCoAQcQCGCGgXjFCcw7tSABmOMGnBjTCBi0I1g4hAlCRjdqaDGOAbUuFBQiAqiIDgEh4W4UaMuVPjlb+o21bfvve9196ILHt2v6gz/qXPqP+eJeV6aZ//MCIDt04BrgRuABeWTGH4pn5eBPZK+GTewsQDYvgS4B7hmTMOvAdskvTdKfhCA7eOAR4HbWoYOAN8BP5X9hcBi4NyW3C7gPkm/9wHpBWB7CZBIFhXlj4FHgPcl/dFl0PaxwDLgfuD8InMwNyfpiy6dTgC2TykRNjqb41zSP6OuNOe2jyggotesxZK+b+tPA2D7KCBXfHoRXi5p3ziO2zK2LwPeKftfJ0WS/qrlugA8C9za5FbSz7Nx3ujYPrGqld2SVvUCsB3HAZB1vaRX5+K8AnEd8Er5vkrS7uZs8gZsHw98Vopur6QpT852Kjy1IUkv9RThxWX/kKSkcXLZTkGvAFKUZ0v6LYc1gBrlCkmvd+TUZW+7pLUtB08Bd04YlbpSezWwt327NYDHgHuTL0kn9UR4IfBBOVsvaWv+tx296Gctk7S/R/9HIJyxVdL69g18CCwFnpG0pi/3th8AtpTzS8vfd8vfzZIeHNB9GrgD+EjSBW0A4e9TgUEjJeJEHmr+tTg7oVBvbqJ32U6KkqpvJaWvTKmBQ8DR4wAoIJ4Dbi7enpd0y5DzopPC3gP8KemYuQLYAdxenO6UtHquAGaSgnD9wy2HGySlV8w6BU0RPilp3UAhrQReKOeTN1C+3yTpxQHdJ4C7+oowESWyg5JCONOW7bNKh8wz3SJpU8ntQ8BGIM8sne/zHv00o3TXNLYN7RpYDrxdFKcRke0jgTeAsN0uSU30Eyq2d5a5IRxwlaS/axC2ayK6XNJEk6qJKL08PfvkMFYHFTc0G6brI5rMAhN42jIVFf8ALGlmiimUWb3TGFnZx/mjqr19bvtGoKmNtZK2NzJdnP0mcEUROFPSVzN12Lr6M4Avy95bkq6sz7sAHAb8WwktnO1M0JoFYvJwSf8NAigFVT+1bM14NrBdd9fY6HyiQ0NpXbUxkFa6o6tNd1R7WDG9v1md7X3KK+jKs+3zgHSwc6rzjOKZFfJi6rE8U3RAp90261NgjaRP+upo5A+TMuHeXbpfbXyoNgNsG/D4qEl6JIDGSxnZwgUXAbmZrp9miTQDy/5m5Br1gsYGMMrQbM/nHcD/KsVxMIuPd2kAAAAASUVORK5CYII=' id: -1,
isExam: false,
closeBtnImage: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAA5pJREFUWEfFl0mIXUUUhr8f1IXzRrIwSoyCoAQcQCGCGgXjFCcw7tSABmOMGnBjTCBi0I1g4hAlCRjdqaDGOAbUuFBQiAqiIDgEh4W4UaMuVPjlb+o21bfvve9196ILHt2v6gz/qXPqP+eJeV6aZ//MCIDt04BrgRuABeWTGH4pn5eBPZK+GTewsQDYvgS4B7hmTMOvAdskvTdKfhCA7eOAR4HbWoYOAN8BP5X9hcBi4NyW3C7gPkm/9wHpBWB7CZBIFhXlj4FHgPcl/dFl0PaxwDLgfuD8InMwNyfpiy6dTgC2TykRNjqb41zSP6OuNOe2jyggotesxZK+b+tPA2D7KCBXfHoRXi5p3ziO2zK2LwPeKftfJ0WS/qrlugA8C9za5FbSz7Nx3ujYPrGqld2SVvUCsB3HAZB1vaRX5+K8AnEd8Er5vkrS7uZs8gZsHw98Vopur6QpT852Kjy1IUkv9RThxWX/kKSkcXLZTkGvAFKUZ0v6LYc1gBrlCkmvd+TUZW+7pLUtB08Bd04YlbpSezWwt327NYDHgHuTL0kn9UR4IfBBOVsvaWv+tx296Gctk7S/R/9HIJyxVdL69g18CCwFnpG0pi/3th8AtpTzS8vfd8vfzZIeHNB9GrgD+EjSBW0A4e9TgUEjJeJEHmr+tTg7oVBvbqJ32U6KkqpvJaWvTKmBQ8DR4wAoIJ4Dbi7enpd0y5DzopPC3gP8KemYuQLYAdxenO6UtHquAGaSgnD9wy2HGySlV8w6BU0RPilp3UAhrQReKOeTN1C+3yTpxQHdJ4C7+oowESWyg5JCONOW7bNKh8wz3SJpU8ntQ8BGIM8sne/zHv00o3TXNLYN7RpYDrxdFKcRke0jgTeAsN0uSU30Eyq2d5a5IRxwlaS/axC2ayK6XNJEk6qJKL08PfvkMFYHFTc0G6brI5rMAhN42jIVFf8ALGlmiimUWb3TGFnZx/mjqr19bvtGoKmNtZK2NzJdnP0mcEUROFPSVzN12Lr6M4Avy95bkq6sz7sAHAb8WwktnO1M0JoFYvJwSf8NAigFVT+1bM14NrBdd9fY6HyiQ0NpXbUxkFa6o6tNd1R7WDG9v1md7X3KK+jKs+3zgHSwc6rzjOKZFfJi6rE8U3RAp90261NgjaRP+upo5A+TMuHeXbpfbXyoNgNsG/D4qEl6JIDGSxnZwgUXAbmZrp9miTQDy/5m5Br1gsYGMMrQbM/nHcD/KsVxMIuPd2kAAAAASUVORK5CYII=',
shuImg: 'https://8.143.198.78/fonts/shu.png'
}, },
/** /**
* 生命周期函数--监听页面加载 * 生命周期函数--监听页面加载
*/ */
onLoad: function (options) { onLoad: function (options) {
setTimeout(() => { console.log(options, 'options options')
this.setData({ // singleScore: 0,
isToScroll: false // multiScore: 0,
}) // justifyScore: 0,
}, 100) // this.data.singleScore = parseInt(options.singleScore)
// this.data.multiScore = parseInt(options.multiScore)
// this.data.justifyScore = parseInt(options.justifyScore)
this.setData({
singleScore: parseInt(options.singleScore),
multiScore: parseInt(options.multiScore),
justifyScore: parseInt(options.justifyScore)
})
this.data.id = options.id
wx.request({
url: app.globalData.appBaseUrlV2 + '/api/onlineExamPaper/findSubject',
method: 'get',
header: {
Authorization: app.globalData.Authorization
},
data: {
id: options.id
},
success: (res) => {
console.log(res, 'wx.request wx.request ')
res.data.forEach(item => {
item.result = ''
})
this.setData({
singleQuestions: res.data.filter(item => item.type === '单选题').map(item => {
const questionItem = []
if (item.optiona) {
questionItem.push(item.optiona)
}
if (item.optionb) {
questionItem.push(item.optionb)
}
if (item.optionc) {
questionItem.push(item.optionc)
}
if (item.optiond) {
questionItem.push(item.optiond)
}
if (item.optione) {
questionItem.push(item.optione)
}
if (item.optionf) {
questionItem.push(item.optionf)
}
return {
...item,
questionOutline: item.question,
questionList: questionItem
}
}),
multiQuestions: res.data.filter(item => item.type === '多选题').map(item => {
const questionItem = []
if (item.optiona) {
questionItem.push(item.optiona)
}
if (item.optionb) {
questionItem.push(item.optionb)
}
if (item.optionc) {
questionItem.push(item.optionc)
}
if (item.optiond) {
questionItem.push(item.optiond)
}
if (item.optione) {
questionItem.push(item.optione)
}
if (item.optionf) {
questionItem.push(item.optionf)
}
return {
...item,
questionOutline: item.question,
questionList: questionItem
}
}),
checkQuestions: res.data.filter(item => item.type === '判断题').map(item => {
return {
...item,
questionOutline: item.question,
questionList: [item.optiona, item.optionb]
}
}),
singleQuestionNum: res.data.filter(item => item.type === '单选题').length,
multiQuestionNum: res.data.filter(item => item.type === '多选题').length,
justifyQuestionNum: res.data.filter(item => item.type === '判断题').length
})
}
})
// setTimeout(() => {
// this.setData({
// isToScroll: false
// })
// }, 100)
}, },
/** /**
...@@ -502,6 +233,37 @@ Page({ ...@@ -502,6 +233,37 @@ Page({
*/ */
submitTestPaper(event) { submitTestPaper(event) {
// 提交考卷 // 提交考卷
this.setData({
isExam: true,
singleQuestions: this.data.singleQuestions,
multiQuestions: this.data.multiQuestions,
checkQuestions: this.data.checkQuestions,
isShowExamPage: true,
resultScore: this.data.singleQuestions.filter(item => item.isAnswer).length * this.data.singleScore + this.data.multiQuestions.filter(item => item.isAnswer).length * this.data.multiScore + this.data.checkQuestions.filter(item => item.isAnswer).length * this.data.justifyScore
})
// wx.showModal({
// title: '您的考试分数',
// content: this.data.resultScore + ' 分'
// })
console.log(app.globalData.userInfo, 'app.globalData.userInfo')
wx.request({
url: app.globalData.appBaseUrlV2 + '/api/onlineExamPaper/recordScore',
method: 'post',
header: {
Authorization: app.globalData.Authorization
},
data: {
paperId: this.data.id,
score: this.data.resultScore,
userId: app.globalData.userInfo.id
},
success: (res) => {
console.log('上传成功 api/onlineExamPaper/recordScore')
}
})
console.log(this.data.singleQuestions, 'this.singleQuestions')
console.log(this.data.multiQuestions, 'this.multiQuestions')
console.log(this.data.checkQuestions, 'this.checkQuestions')
}, },
/** /**
* *
...@@ -510,5 +272,105 @@ Page({ ...@@ -510,5 +272,105 @@ Page({
console.log(event) console.log(event)
// return false // return false
// return true // return true
},
chooseSingle(event) {
//event.detail.value
const index = event.detail.value.split('|')[0]
const index1 = event.detail.value.split('|')[1]
if (index1 === '0') {
this.data.singleQuestions[index].result = 'A'
} else if (index1 === '1') {
this.data.singleQuestions[index].result = 'B'
} else if (index1 === '2') {
this.data.singleQuestions[index].result = 'C'
} else if (index1 === '3') {
this.data.singleQuestions[index].result = 'D'
} else if (index1 === '4') {
this.data.singleQuestions[index].result = 'E'
} else if (index1 === '5') {
this.data.singleQuestions[index].result = 'F'
}
if (this.data.singleQuestions[index].result === this.data.singleQuestions[index].answer) {
this.data.singleQuestions[index].isAnswer = true
} else {
this.data.singleQuestions[index].isAnswer = false
}
},
chooseMulti(event) {
//event.detail.value
console.log(event, 'chooseMulti')
if (!event.detail.value || event.detail.value.length === 0) {
return
}
let result = []
let index = -1
event.detail.value.forEach(item => {
index = item.split('|')[0]
const index1 = item.split('|')[1]
if (index1 === '0') {
result.push('A')
} else if (index1 === '1') {
result.push('B')
} else if (index1 === '2') {
result.push('C')
} else if (index1 === '3') {
result.push('D')
} else if (index1 === '4') {
result.push('E')
} else if (index1 === '5') {
result.push('F')
}
})
result = result.sort()
console.log(result, 'result___________________________')
console.log(result, 'result___________________________')
if (result.length > 0) {
this.data.multiQuestions[index].result = result.join('')
} else {
this.data.multiQuestions[index].result = ''
}
if (this.data.multiQuestions[index].result === this.data.multiQuestions[index].answer) {
this.data.multiQuestions[index].isAnswer = true
} else {
this.data.multiQuestions[index].isAnswer = false
}
},
chooseJustify(event) {
console.log(event, 'chooseJustify chooseJustify')
const index = event.detail.value.split('|')[0]
const index1 = event.detail.value.split('|')[1]
if (index1 === '0') {
this.data.checkQuestions[index].result = ''
} else if (index1 === '1') {
this.data.checkQuestions[index].result = ''
}
console.log(this.data.checkQuestions[index], 'this.data.checkQuestions')
if (this.data.checkQuestions[index].result === this.data.checkQuestions[index].answer) {
this.data.checkQuestions[index].isAnswer = true
} else {
this.data.checkQuestions[index].isAnswer = false
}
},
closeMySelf(event) {
console.log(event, 'cloiseMySelf closeMySelf')
this.setData({
isShowExamPage: false
})
},
viewWrong() {
this.setData({
isExam: true,
isShowExamPage: false
})
},
quitTest() {
app.globalData.isNeedNavigateTo = true
app.globalData.testPaperId = this.data.id
app.globalData.singleScore = this.data.singleScore
app.globalData.multiScore = this.data.multiScore
app.globalData.justifyScore = this.data.justifyScore
wx.navigateBack({
delta: 1,
})
} }
}) })
\ No newline at end of file
<!--pages/testpaper/testpaper.wxml--> <!--pages/testpaper/testpaper.wxml-->
<view class="testpaper-wrapper"> <view class="testpaper-wrapper">
<scroll-view scroll-y="{{false}}" class="scroll-wrapper"> <scroll-view scroll-y="{{false}}" class="scroll-wrapper">
<view class="class0-0" wx:if="{{singleQuestionNum > 0 }}">
<span class="class1-0">单选题数量: <text class="class1-1">{{singleQuestionNum}}</text></span>
<span class="class2-0">单选题分值: <text class="class2-1">{{singleScore}}</text></span>
</view>
<view wx:for="{{singleQuestions}}" class="test-question-wrapper"> <view wx:for="{{singleQuestions}}" class="test-question-wrapper">
<view class="test-question-outline-wrapper"> <view class="test-question-outline-wrapper">
{{(index + 1) < 10 ? '0' + (index + 1) : (index + 1 + '')}} {{(index + 1) < 10 ? '0' + (index + 1) : (index + 1 + '')}}
...@@ -9,23 +13,30 @@ ...@@ -9,23 +13,30 @@
<text class="decorate-must">*</text> <text class="decorate-must">*</text>
</view> </view>
<view class="test-question-body-wrapper"> <view class="test-question-body-wrapper">
<radio-group> <radio-group bindchange="chooseSingle">
<view wx:for="{{item.questionList}}" <view wx:for="{{item.questionList}}"
wx:for-item="item1" wx:for-item="item1"
wx:for-index="index1" wx:for-index="index1"
class="test-question-line">{{index1 === 0? 'A、' : (index1 === 1? 'B、' : (index1 === 2? 'C、': (index1 === 3? 'D、' : 'E、')))}}{{item1}}</view> class="test-question-line">{{index1 === 0? 'A、' : (index1 === 1? 'B、' : (index1 === 2? 'C、': (index1 === 3? 'D、' : (index1 === 4 ? 'E、' : (index1 === 5 ? 'F、' : 'G、')))))}}{{item1}}</view>
<view wx:if="{{isExam&&(!item.isAnswer)}}" class="question-answer"><text class="right-answer">正确答案: </text><text class="answer">{{item.answer}}</text></view>
<view wx:if="{{isExam&&(!item.isAnswer)}}" class="question-analysis"><text class="right-answer">答案解析: </text><text class="answer">{{item.analysis}}</text></view>
<view class="select-optoin-wrapper"> <view class="select-optoin-wrapper">
<radio wx:for="{{item.questionList}}" <radio wx:for="{{item.questionList}}"
wx:for-index="index1" wx:for-index="index1"
class="one-option" class="one-option"
color="#090D9C" color="#090D9C"
value="{{index+'|'+index1}}"
> >
{{index1 === 0? 'A' : (index1 === 1? 'B' : (index1 === 2? 'C': (index1 === 3? 'D' : 'E')))}} {{index1 === 0? 'A' : (index1 === 1? 'B' : (index1 === 2? 'C': (index1 === 3? 'D' : (index1 === 4 ? 'E' : (index1 === 5 ? 'F' : 'G')))))}}
</radio> </radio>
</view> </view>
</radio-group> </radio-group>
</view> </view>
</view> </view>
<view class="class0-0" wx:if="{{multiQuestionNum > 0}}">
<span class="class1-0">多选题数量: <text class="class1-1">{{multiQuestionNum}}</text></span>
<span class="class2-0">多选题分值: <text class="class2-1">{{multiScore}}</text></span>
</view>
<view wx:for="{{multiQuestions}}" class="test-question-wrapper"> <view wx:for="{{multiQuestions}}" class="test-question-wrapper">
<view class="test-question-outline-wrapper"> <view class="test-question-outline-wrapper">
{{(index + 1) < 10 ? '0' + (index + 1) : (index + 1 + '')}} {{(index + 1) < 10 ? '0' + (index + 1) : (index + 1 + '')}}
...@@ -34,23 +45,30 @@ ...@@ -34,23 +45,30 @@
<text class="decorate-must">*</text> <text class="decorate-must">*</text>
</view> </view>
<view class="test-question-body-wrapper"> <view class="test-question-body-wrapper">
<checkbox-group> <checkbox-group bindchange="chooseMulti">
<view wx:for="{{item.questionList}}" <view wx:for="{{item.questionList}}"
wx:for-item="item1" wx:for-item="item1"
wx:for-index="index1" wx:for-index="index1"
class="test-question-line">{{index1 === 0? 'A、' : (index1 === 1? 'B、' : (index1 === 2? 'C、': (index1 === 3? 'D、' : 'E、')))}}{{item1}}</view> class="test-question-line">{{index1 === 0? 'A、' : (index1 === 1? 'B、' : (index1 === 2? 'C、': (index1 === 3? 'D、' : (index1 === 4 ? 'E、' : (index1 === 5 ? 'F、' : 'G、')))))}}{{item1}}</view>
<view wx:if="{{isExam&&(!item.isAnswer)}}" class="question-answer"><text class="right-answer">正确答案: </text><text class="answer">{{item.answer}}</text></view>
<view wx:if="{{isExam&&(!item.isAnswer)}}" class="question-analysis"><text class="right-answer">答案解析: </text><text class="answer">{{item.analysis}}</text></view>
<view class="select-optoin-wrapper"> <view class="select-optoin-wrapper">
<checkbox wx:for="{{item.questionList}}" <checkbox wx:for="{{item.questionList}}"
wx:for-index="index1" wx:for-index="index1"
class="one-option" class="one-option"
color="#090D9C" color="#090D9C"
value="{{index + '|' + index1}}"
> >
{{index1 === 0? 'A' : (index1 === 1? 'B' : (index1 === 2? 'C': (index1 === 3? 'D' : 'E')))}} {{index1 === 0? 'A' : (index1 === 1? 'B' : (index1 === 2? 'C': (index1 === 3? 'D' : (index1 === 4 ? 'E' : (index1 === 5 ? 'F' : 'G、')))))}}
</checkbox> </checkbox>
</view> </view>
</checkbox-group> </checkbox-group>
</view> </view>
</view> </view>
<view class="class0-0" wx:if="{{justifyQuestionNum > 0}}">
<span class="class1-0">判断题数量: <text class="class1-1">{{justifyQuestionNum}}</text></span>
<span class="class2-0">判断题分值: <text class="class2-1">{{justifyScore}}</text></span>
</view>
<view wx:for="{{checkQuestions}}" class="test-question-wrapper"> <view wx:for="{{checkQuestions}}" class="test-question-wrapper">
<view class="test-question-outline-wrapper"> <view class="test-question-outline-wrapper">
{{(index + 1) < 10 ? '0' + (index + 1) : (index + 1 + '')}} {{(index + 1) < 10 ? '0' + (index + 1) : (index + 1 + '')}}
...@@ -59,18 +77,21 @@ ...@@ -59,18 +77,21 @@
<text class="decorate-must">*</text> <text class="decorate-must">*</text>
</view> </view>
<view class="test-question-body-wrapper"> <view class="test-question-body-wrapper">
<radio-group> <radio-group bindchange="chooseJustify">
<view wx:for="{{item.questionList}}" <!-- <view wx:for="{{item.questionList}}"
wx:for-item="item1" wx:for-item="item1"
wx:for-index="index1" wx:for-index="index1"
class="test-question-line">{{item1}}</view> class="test-question-line">{{item1}}</view> -->
<view wx:if="{{isExam&&(!item.isAnswer)}}" class="question-answer"><text class="right-answer">正确答案: </text><text class="answer">{{item.answer}}</text></view>
<view wx:if="{{isExam&&(!item.isAnswer)}}" class="question-analysis"><text class="right-answer">答案解析: </text><text class="answer">{{item.analysis}}</text></view>
<view class="select-optoin-wrapper"> <view class="select-optoin-wrapper">
<radio wx:for="{{item.questionList}}" <radio wx:for="{{item.questionList}}"
wx:for-index="index1" wx:for-index="index1"
class="one-option" class="one-option"
color="#090D9C" color="#090D9C"
value="{{index + '|' + index1}}"
> >
{{index1 === 0? '是' : (index1 === 1? '否' : (index1 === 2? '是': (index1 === 3? '否' : '否')))}} {{index1 === 0? '对' : (index1 === 1? '错' : (index1 === 2? '对': (index1 === 3? '错' : '错')))}}
</radio> </radio>
</view> </view>
</radio-group> </radio-group>
...@@ -78,19 +99,22 @@ ...@@ -78,19 +99,22 @@
</view> </view>
<view class="submit-row"><button class="submit-btn" bindtap="submitTestPaper">提交考卷</button></view> <view class="submit-row"><button class="submit-btn" bindtap="submitTestPaper">提交考卷</button></view>
</scroll-view> </scroll-view>
<view class="score-wrapper" catchtouchmove="cancelmove"> <view class="score-wrapper {{isShowExamPage?'' : ' score-hide'}}" catchtouchmove="cancelmove">
<view class="real-score-outline"> <view class="real-score-outline">
<view class="real-score-outline-title">您的考试得分为</view> <view class="real-score-outline-title">您的考试得分为</view>
<view class="real-score">90</view> <view class="real-score">{{resultScore}}</view>
<view class="score-slogan">恭喜您顺利通过考试</view> <view class="score-slogan">恭喜您顺利通过考试</view>
<view class="wrong-test-wrapper"> <view class="wrong-test-wrapper">
<view class="wrong-btn">查看错题</view> <view class="wrong-btn" bindtap="viewWrong">查看错题</view>
<view class="test-btn">重新考试</view> <view class="test-btn" bindtap="quitTest">重新考试</view>
</view> </view>
<view class="close-score-outline"> <view class="close-score-outline" bindtap="closeMySelf">
<image class="close-score-image" mode="aspectFill" src="{{closeBtnImage}}"></image> <image class="close-score-image" mode="aspectFill" src="{{closeBtnImage}}"></image>
</view> </view>
<view class="real-score-book">
<image class="real-score-book-img" mode="aspectFill"
src="{{shuImg}}"></image>
</view>
</view> </view>
</view> </view>
</view> </view>
\ No newline at end of file
...@@ -173,6 +173,8 @@ ...@@ -173,6 +173,8 @@
top: 0; top: 0;
bottom: 0; bottom: 0;
background-color: rgba(0, 0, 0, .3); background-color: rgba(0, 0, 0, .3);
}
.score-hide {
display: none; display: none;
} }
.real-score-outline { .real-score-outline {
...@@ -260,3 +262,50 @@ ...@@ -260,3 +262,50 @@
width: 100%; width: 100%;
height: 100%; height: 100%;
} }
.question-answer {
border-top: 1rpx solid #eee;
}
.right-answer {
color: #1f208c;
}
.answer {
color: #ff0000;
}
.question-analysis {
border-top: 1rpx solid #eee;
color: #ff0000;
}
.class0-0 {
padding: 15rpx;
margin: 15rpx 10rpx;
background-color: #fff;
border-radius: 5rpx;
}
.class1-0 {
margin: 0 20rpx;
}
.class1-1 {
margin: 0 20rpx;
color: #090d9c;
font-size: 30rpx;
}
.class2-0 {
margin: 0 20rpx;
}
.class2-1 {
margin: 0 20rpx;
color: #090d9c;
font-size: 30rpx;
}
.real-score-book {
position: absolute;
left: 50%;
top: 0;
transform: translate(-50%, -50%);
width: 360rpx;
height: 220rpx;
}
.real-score-book-img {
width: 100%;
height: 100%;
}
\ No newline at end of file
...@@ -21,6 +21,7 @@ ...@@ -21,6 +21,7 @@
"checkSiteMap": true, "checkSiteMap": true,
"uploadWithSourceMap": true, "uploadWithSourceMap": true,
"compileHotReLoad": false, "compileHotReLoad": false,
"lazyloadPlaceholderEnable": false,
"useMultiFrameRuntime": true, "useMultiFrameRuntime": true,
"useApiHook": true, "useApiHook": true,
"useApiHostProcess": true, "useApiHostProcess": true,
...@@ -29,15 +30,15 @@ ...@@ -29,15 +30,15 @@
"disablePlugins": [], "disablePlugins": [],
"outputPath": "" "outputPath": ""
}, },
"enableEngineNative": false,
"useIsolateContext": true, "useIsolateContext": true,
"useCompilerModule": true,
"userConfirmedUseCompilerModuleSwitch": false,
"userConfirmedBundleSwitch": false, "userConfirmedBundleSwitch": false,
"packNpmManually": false, "packNpmManually": false,
"packNpmRelationList": [], "packNpmRelationList": [],
"minifyWXSS": true, "minifyWXSS": true,
"minifyWXML": true "disableUseStrict": false,
"minifyWXML": true,
"showES6CompileOption": false,
"useCompilerPlugins": false
}, },
"compileType": "miniprogram", "compileType": "miniprogram",
"libVersion": "2.18.0", "libVersion": "2.18.0",
......
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