|
After Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 110 KiB After Width: | Height: | Size: 110 KiB |
|
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 48 KiB |
|
Before Width: | Height: | Size: 66 KiB After Width: | Height: | Size: 66 KiB |
|
After Width: | Height: | Size: 74 KiB |
|
After Width: | Height: | Size: 162 KiB |
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 2.0 KiB After Width: | Height: | Size: 2.0 KiB |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
|
Before Width: | Height: | Size: 2.0 KiB After Width: | Height: | Size: 2.0 KiB |
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 2.9 KiB |
|
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 2.8 KiB |
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 2.4 KiB |
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.3 KiB |
|
Before Width: | Height: | Size: 3.0 KiB After Width: | Height: | Size: 3.0 KiB |
|
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.9 KiB |
|
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 2.4 KiB |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 25 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 63 KiB After Width: | Height: | Size: 63 KiB |
|
Before Width: | Height: | Size: 65 KiB After Width: | Height: | Size: 65 KiB |
|
Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 31 KiB |
|
Before Width: | Height: | Size: 69 KiB After Width: | Height: | Size: 69 KiB |
|
Before Width: | Height: | Size: 75 KiB After Width: | Height: | Size: 75 KiB |
|
Before Width: | Height: | Size: 88 KiB After Width: | Height: | Size: 88 KiB |
@ -0,0 +1,49 @@ |
|||||
|
<template> |
||||
|
<view> |
||||
|
<view class="video-wrapper" id="video-container"> |
||||
|
</view> |
||||
|
<sVideo jsonId="6215c8757e8947c8aae0fd0b3d2d503b"></sVideo> |
||||
|
|
||||
|
<tabbar :page="page"></tabbar> |
||||
|
</view> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import tabbar from "@/components/tabbar/tabbar.vue"; |
||||
|
import sVideo from "@/components/s-video/s-video.vue"; |
||||
|
export default { |
||||
|
|
||||
|
data() { |
||||
|
return { |
||||
|
page: "", |
||||
|
}; |
||||
|
}, |
||||
|
onReady() { |
||||
|
this.QR(); |
||||
|
}, |
||||
|
onShow() { |
||||
|
this.page = "scan" |
||||
|
}, |
||||
|
methods: { |
||||
|
QR() { |
||||
|
// uni.scanCode({ |
||||
|
// onlyFromCamera: true, |
||||
|
// success: (res) => { |
||||
|
// console.log('扫描二维码成功,结果:' + res.result); |
||||
|
// }, |
||||
|
// error: (res) => { |
||||
|
// console.log('扫描二维码出现错误') |
||||
|
// } |
||||
|
// }) |
||||
|
}, |
||||
|
}, |
||||
|
components: { |
||||
|
tabbar, |
||||
|
sVideo |
||||
|
} |
||||
|
} |
||||
|
</script> |
||||
|
|
||||
|
<style lang="scss"> |
||||
|
|
||||
|
</style> |
||||
@ -1,49 +1,274 @@ |
|||||
<template> |
<template> |
||||
<view> |
<view class="role-container"> |
||||
<view class="video-wrapper" id="video-container"> |
<view class="wrap"> |
||||
|
<view class="secbar"> <span class="back" onclick="location='scene.html'"></span></view> |
||||
|
<view class="mainwrap3"> |
||||
|
<img src="/static/images/bg_role.jpg" alt="" /> |
||||
|
<view class="role_wrap"> |
||||
|
<view class="<strong>contit</strong>">请选择您在“<block style="color:#fd6d1f;">{{sceneName}}</block>”演练中的角色:</view> |
||||
|
<view class="role_box"> |
||||
|
<block class="role-item" v-for="(item,i) in roleList" :key="i"> |
||||
|
<span>{{item.name}}</span> |
||||
|
</block> |
||||
|
</view> |
||||
|
<view class="more_role" @click="showMoreRole()"><a>更多角色</a></view> |
||||
|
</view> |
||||
|
|
||||
|
<view class="startbtn"><image src="/static/images/btn_start.png"></image><a @click="startPractice()">开始演练</a></view> |
||||
|
</view> |
||||
|
|
||||
|
<view class="cnote">题目来源:深圳市******有限公司</view> |
||||
</view> |
</view> |
||||
<sVideo jsonId="6215c8757e8947c8aae0fd0b3d2d503b"></sVideo> |
|
||||
|
|
||||
<tabbar :page="page"></tabbar> |
<view class="maskbox"></view> |
||||
|
<view class="popbox" v-if="this.showMore == 1"> |
||||
|
<view class="poptit">选择角色<a class="closea"></a></view> |
||||
|
<view class="subsearch"> |
||||
|
<input class="msearchbox" placeholder="搜索角色" name="keyword" id="" onclick=""> |
||||
|
</view> |
||||
|
<view class="role_cont"> |
||||
|
<h5>角色分类一</h5> |
||||
|
<view class="role_item"> |
||||
|
<span>角色1</span> <span>角色2</span> <span>角色3</span> <span>角色4</span> <span>角色5</span> |
||||
|
<span>角色1</span> <span>角色2</span> <span>角色3</span> <span>角色4</span> <span>角色5</span> |
||||
|
<span>角色1</span> <span>角色2</span> <span>角色3</span> <span>角色4</span> <span>角色5</span> |
||||
|
</view> |
||||
|
<h5>角色分类二</h5> |
||||
|
<view class="role_item"> |
||||
|
<span>角色1</span> <span>角色2</span> <span>角色3</span> <span>角色4</span> <span>角色5</span> |
||||
|
<span>角色1</span> <span>角色2</span> <span>角色3</span> <span>角色4</span> <span>角色5</span> |
||||
|
<span>角色1</span> <span>角色2</span> <span>角色3</span> <span>角色4</span> <span>角色5</span> |
||||
|
</view> |
||||
|
<h5>角色分类三</h5> |
||||
|
<view class="role_item"> |
||||
|
<span>角色1</span> <span>角色2</span> <span>角色3</span> <span>角色4</span> <span>角色5</span> |
||||
|
<span>角色1</span> <span>角色2</span> <span>角色3</span> <span>角色4</span> <span>角色5</span> |
||||
|
<span>角色1</span> <span>角色2</span> <span>角色3</span> <span>角色4</span> <span>角色5</span> |
||||
</view> |
</view> |
||||
|
</view> |
||||
|
<view class="onebtn">确定</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<!-- <view> |
||||
|
<view class="role-list"> |
||||
|
<view class="role-item" v-for="(item,i) in roleList" :key="i" @click="navClickHandler(item)"> |
||||
|
<image :src="item" class="scene-img"></image> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> --> |
||||
</template> |
</template> |
||||
|
|
||||
<script> |
<script> |
||||
import tabbar from "@/components/tabbar/tabbar.vue"; |
|
||||
import sVideo from "@/components/s-video/s-video.vue"; |
|
||||
export default { |
export default { |
||||
|
|
||||
data() { |
data() { |
||||
return { |
return { |
||||
page: "", |
showMore: 0, |
||||
|
sceneId:"", |
||||
|
sceneName:"", |
||||
|
roleId:"", |
||||
|
roleList:[] |
||||
}; |
}; |
||||
}, |
}, |
||||
onReady() { |
onLoad(options) { |
||||
this.QR(); |
this.sceneId = options.guid |
||||
}, |
this.sceneName = options.name |
||||
onShow() { |
this.getSwiperList(); |
||||
this.page = "scan" |
|
||||
}, |
}, |
||||
methods: { |
methods: { |
||||
QR() { |
showMoreRole(){ |
||||
// uni.scanCode({ |
this.showMore = 1 |
||||
// onlyFromCamera: true, |
|
||||
// success: (res) => { |
|
||||
// console.log('扫描二维码成功,结果:' + res.result); |
|
||||
// }, |
|
||||
// error: (res) => { |
|
||||
// console.log('扫描二维码出现错误') |
|
||||
// } |
|
||||
// }) |
|
||||
}, |
}, |
||||
|
async getSwiperList() { |
||||
|
|
||||
|
const { |
||||
|
data: res |
||||
|
} = await uni.$http.post('/small/project/role/listAll',{sceneId: this.sceneId}) |
||||
|
if (!res.success) return uni.$showMsg() |
||||
|
|
||||
|
this.roleList = res.data |
||||
|
//uni.$showMsg('数据请求成功!') |
||||
}, |
}, |
||||
components: { |
startPractice(item) { |
||||
tabbar, |
uni.navigateTo({ |
||||
sVideo |
url: '/subpkg/practice/practice?roleId='+this.roleId |
||||
|
}) |
||||
|
} |
||||
} |
} |
||||
} |
} |
||||
</script> |
</script> |
||||
|
|
||||
<style lang="scss"> |
<style lang="scss"> |
||||
|
|
||||
|
.mainwrap3 { |
||||
|
height: calc(100% - 70px); |
||||
|
overflow: hidden; |
||||
|
} |
||||
|
|
||||
|
.mainwrap3 > img { |
||||
|
width: 100%; |
||||
|
height: 1000rpx; |
||||
|
border-radius: 0; |
||||
|
} |
||||
|
|
||||
|
.role_wrap { |
||||
|
position: absolute; |
||||
|
top: 47.5%; |
||||
|
width: 100%; |
||||
|
} |
||||
|
|
||||
|
.role_box { |
||||
|
margin: 1% 0 2% 4%; |
||||
|
width: 96%; |
||||
|
} |
||||
|
|
||||
|
.role_box span { |
||||
|
display: inline-block; |
||||
|
margin: 1% 0 0 3%; |
||||
|
padding: 1.5% 4.5%; |
||||
|
border: 1px solid #1367fe; |
||||
|
border-radius: 8px; |
||||
|
color: #1367fe; |
||||
|
} |
||||
|
|
||||
|
.role_box span.seled { |
||||
|
background: #1367fe; |
||||
|
color: #fff; |
||||
|
} |
||||
|
|
||||
|
.more_role { |
||||
|
margin: 5% 0; |
||||
|
width: 100%; |
||||
|
height: 3rem; |
||||
|
border-bottom: 1px dotted #7eaafb; |
||||
|
text-align: center; |
||||
|
} |
||||
|
|
||||
|
.more_role a { |
||||
|
display: inline-block; |
||||
|
margin: 0 auto; |
||||
|
padding: 2% 8% 2% 3%; |
||||
|
background: #a6c5fd url(/static/images/arrow-b.png) no-repeat right 10% center; |
||||
|
background-size: auto 40%; |
||||
|
border-radius: 8px; |
||||
|
color: #2e6ddd; |
||||
|
} |
||||
|
|
||||
|
.startbtn { |
||||
|
position: relative; |
||||
|
z-index: 1; |
||||
|
bottom: 35%; |
||||
|
width: 100%; |
||||
|
height: 30%; |
||||
|
background:no-repeat 47.5% center; |
||||
|
background-size: 60% auto; |
||||
|
text-align: center; |
||||
|
opacity: .5; |
||||
|
} |
||||
|
|
||||
|
.startbtn.active { |
||||
|
opacity: 1; |
||||
|
} |
||||
|
|
||||
|
.startbtn a { |
||||
|
display: inline-block; |
||||
|
position: relative; |
||||
|
top: 15%; |
||||
|
width: 30%; |
||||
|
height: 40%; |
||||
|
line-height: 30rem; |
||||
|
overflow: hidden; |
||||
|
} |
||||
|
|
||||
|
.cnote { |
||||
|
position: absolute; |
||||
|
bottom: 2%; |
||||
|
width: 100%; |
||||
|
color: rgba(255, 255, 255, .6); |
||||
|
font-size: 0.75rem; |
||||
|
text-align: center; |
||||
|
} |
||||
|
|
||||
|
.maskbox { |
||||
|
display: none; |
||||
|
position: absolute; |
||||
|
z-index: 10000; |
||||
|
top: 0; |
||||
|
left: 0; |
||||
|
width: 100%; |
||||
|
height: 100%; |
||||
|
background-color: rgba(0, 0, 0, .5); |
||||
|
} |
||||
|
|
||||
|
.popbox { |
||||
|
display: none; |
||||
|
position: absolute; |
||||
|
z-index: 10001; |
||||
|
bottom: 0; |
||||
|
width: 100%; |
||||
|
max-height: 80%; |
||||
|
min-height: 50%; |
||||
|
background: #fff; |
||||
|
border-radius: 20px 20px 0 0; |
||||
|
} |
||||
|
|
||||
|
.poptit { |
||||
|
position: relative; |
||||
|
width: 100%; |
||||
|
height: 3rem; |
||||
|
line-height: 2.5; |
||||
|
text-align: center; |
||||
|
font-size: 1.1rem; |
||||
|
font-weight: 600; |
||||
|
border-bottom: 1px solid #f3f4f5; |
||||
|
} |
||||
|
|
||||
|
.poptit a.closea { |
||||
|
position: absolute; |
||||
|
top: 20%; |
||||
|
right: 1rem; |
||||
|
width: 1.75rem; |
||||
|
height: 1.75rem; |
||||
|
background: url(/static/images/icon_60add.png) no-repeat; |
||||
|
background-size: 100%; |
||||
|
transform: rotateZ(45deg); |
||||
|
} |
||||
|
|
||||
|
.role_cont h5 { |
||||
|
margin: 0 3% 2%; |
||||
|
font-size: 1.0rem; |
||||
|
} |
||||
|
|
||||
|
.role_item { |
||||
|
margin: 1% 0 5% 0; |
||||
|
} |
||||
|
|
||||
|
.role_item span { |
||||
|
display: inline-block; |
||||
|
margin: 1% 0 2% 3%; |
||||
|
padding: 1.5% 3.5%; |
||||
|
background: #f2f3f4; |
||||
|
border: 0; |
||||
|
border-radius: 8px; |
||||
|
color: #4c4c4c; |
||||
|
} |
||||
|
|
||||
|
.role_item span.selrole { |
||||
|
background: #e9f2fb; |
||||
|
color: #1367fe; |
||||
|
} |
||||
|
|
||||
|
.popbox .onebtn { |
||||
|
position: relative; |
||||
|
bottom: 1vw; |
||||
|
background: #1367fe; |
||||
|
width: 94%; |
||||
|
border-radius: 30px; |
||||
|
color: #fff; |
||||
|
text-align: center; |
||||
|
margin: 3% 3%; |
||||
|
line-height: 3.0; |
||||
|
letter-spacing: 2px; |
||||
|
} |
||||
|
|
||||
</style> |
</style> |
||||