Commit e102b09b authored by April's avatar April

Merge branch 'master' of http://120.77.240.215:9701/limeimei/sim

parents fece0185 5b893edd
...@@ -15,11 +15,13 @@ import hotelInfoPay from "../views/hotels/info/pay.vue"; ...@@ -15,11 +15,13 @@ import hotelInfoPay from "../views/hotels/info/pay.vue";
import hotelInfoGrant from "../views/hotels/info/roomcard.vue"; import hotelInfoGrant from "../views/hotels/info/roomcard.vue";
import hotelInfoSuccess from "../views/hotels/info/success.vue"; import hotelInfoSuccess from "../views/hotels/info/success.vue";
import Disreserve from "../views/visitor/disreserve.vue"; import Disreserve from "../views/visitor/disreserve.vue";
import Disreserve2 from "../views/visitor/disreserve2.vue";
import Authentify from "../views/visitor/authentify.vue"; import Authentify from "../views/visitor/authentify.vue";
import AuthSuccess from "../views/visitor/authSuccess.vue"; import AuthSuccess from "../views/visitor/authSuccess.vue";
import Card from "../views/visitor/card.vue"; import Card from "../views/visitor/card.vue";
import Send from "../views/visitor/send.vue"; import Send from "../views/visitor/send.vue";
import visitorPhoto from "../views/visitor/photograph.vue"; import visitorPhoto from "../views/visitor/photograph.vue";
import visitorPhoto2 from "../views/visitor/photograph2.vue";
import Sim from "../views/sim/index.vue"; import Sim from "../views/sim/index.vue";
import hotelOrderCheck from "../views/hotels/order/check.vue"; import hotelOrderCheck from "../views/hotels/order/check.vue";
import hotelRegistration from "../views/hotels/registration.vue"; import hotelRegistration from "../views/hotels/registration.vue";
...@@ -82,6 +84,13 @@ const routes = [ ...@@ -82,6 +84,13 @@ const routes = [
meta: { meta: {
title: "访客信息", title: "访客信息",
}, },
}, {
path: "/disreserve2",
name: "disreserve2",
component: Disreserve2,
meta: {
title: "访客信息",
},
}, },
{ {
path: "/authentify", path: "/authentify",
...@@ -123,6 +132,14 @@ const routes = [ ...@@ -123,6 +132,14 @@ const routes = [
title: "发放访客卡", title: "发放访客卡",
}, },
}, },
{
path: "/visitor/photo2",
name: "visitorPhoto2",
component: visitorPhoto2,
meta: {
title: "发放访客卡",
},
},
], ],
}, },
......
...@@ -58,7 +58,7 @@ ...@@ -58,7 +58,7 @@
}, },
// 倒计时 // 倒计时
decrease() { decrease() {
return // return
// this.timer && clearInterval(this.timer); // this.timer && clearInterval(this.timer);
var that = this; var that = this;
that.timer = setInterval(() => { that.timer = setInterval(() => {
......
...@@ -96,7 +96,7 @@ ...@@ -96,7 +96,7 @@
}, },
// 倒计时 // 倒计时
decrease() { decrease() {
return // return
// this.timer && clearInterval(this.timer); // this.timer && clearInterval(this.timer);
var that = this; var that = this;
that.timer = setInterval(() => { that.timer = setInterval(() => {
......
...@@ -49,7 +49,7 @@ ...@@ -49,7 +49,7 @@
</div> </div>
<div class="collection_info_single"> <div class="collection_info_single">
<div class="collection_info_single_title">出生:</div> <div class="collection_info_single_title">出生:</div>
<div class="collection_info_single_text">{{ info.birth }}</div> <div class="collection_info_single_text">{{formatBirth( info.birth) }}</div>
</div> </div>
<div class="collection_info_single"> <div class="collection_info_single">
<div class="collection_info_single_title">出生地点:</div> <div class="collection_info_single_title">出生地点:</div>
...@@ -89,122 +89,136 @@ ...@@ -89,122 +89,136 @@
</template> </template>
<script> <script>
export default { export default {
data() { data() {
return { return {
info: {}, info: {},
}; };
}, },
created() { created() {
var info = this.$route.params.info; var info = this.$route.params.info;
if (info) { if (info) {
info = JSON.parse(info); info = JSON.parse(info);
this.info = info; this.info = info;
} }
},
methods: {
// 返回上一步
goback() {
this.$router.go(-1);
}, },
comfin() { methods: {
this.$router.push({ formatBirth(birth) {
name: "hotelInfo", return birth.substring(6, 14)
}); },
// 返回上一步
goback() {
this.$router.go(-1);
},
comfin() {
this.$router.push({
name: "hotelInfo",
});
},
}, },
}, };
};
</script> </script>
<style scoped> <style scoped>
.order { .order {
width: 100%; width: 100%;
height: 100%; height: 100%;
padding: 0 30px; padding: 0 30px;
box-sizing: border-box; box-sizing: border-box;
background: #f6f7fb; background: #f6f7fb;
border-radius: 14px; border-radius: 14px;
} }
.goback {
width: 94px; .goback {
height: 34px; width: 94px;
position: absolute; height: 34px;
top: 30px; position: absolute;
left: 0; top: 30px;
cursor: pointer; left: 0;
font-size: 14px; cursor: pointer;
color: #666666; font-size: 14px;
background: #ffffff; color: #666666;
border-radius: 4px; background: #ffffff;
border: 1px solid #707070; border-radius: 4px;
text-align: center; border: 1px solid #707070;
line-height: 34px; text-align: center;
} line-height: 34px;
.order_top { }
height: 88px;
width: 100%; .order_top {
position: relative; height: 88px;
} width: 100%;
.order_title { position: relative;
font-size: 28px; }
color: #000000;
width: 100%; .order_title {
text-align: center; font-size: 28px;
line-height: 88px; color: #000000;
} width: 100%;
.collection { text-align: center;
width: 100%; line-height: 88px;
background: white; }
padding-top: 80px;
box-sizing: border-box; .collection {
height: 486px; width: 100%;
} background: white;
.collection_info { padding-top: 80px;
display: flex; box-sizing: border-box;
align-items: flex-start; height: 486px;
justify-content: center; }
}
.collection_info_head { .collection_info {
width: 167px; display: flex;
height: 194px; align-items: flex-start;
margin-right: 40px; justify-content: center;
} }
.collection_info_single {
display: flex; .collection_info_head {
align-items: center; width: 167px;
margin-bottom: 12px; height: 194px;
} margin-right: 40px;
.collection_info_single_title { }
font-size: 20px;
color: #333333; .collection_info_single {
margin-right: 10px; display: flex;
} align-items: center;
.collection_info_single_text { margin-bottom: 12px;
font-size: 20px; }
color: #666666;
} .collection_info_single_title {
.collection_bto { font-size: 20px;
width: 132px; color: #333333;
height: 50px; margin-right: 10px;
background: #eb9c4e; }
border-radius: 4px;
text-align: center; .collection_info_single_text {
line-height: 50px; font-size: 20px;
cursor: pointer; color: #666666;
font-size: 18px; }
color: white;
margin: 56px auto 0; .collection_bto {
} width: 132px;
.collection_bto2 { height: 50px;
width: 132px; background: #eb9c4e;
height: 50px; border-radius: 4px;
background: #eb9c4e; text-align: center;
border-radius: 4px; line-height: 50px;
text-align: center; cursor: pointer;
line-height: 50px; font-size: 18px;
cursor: pointer; color: white;
font-size: 18px; margin: 56px auto 0;
color: white; }
margin: 4px auto 0;
} .collection_bto2 {
width: 132px;
height: 50px;
background: #eb9c4e;
border-radius: 4px;
text-align: center;
line-height: 50px;
cursor: pointer;
font-size: 18px;
color: white;
margin: 4px auto 0;
}
</style> </style>
\ No newline at end of file
...@@ -14,14 +14,36 @@ ...@@ -14,14 +14,36 @@
<img :src="info.photo" class="auth_img"> <img :src="info.photo" class="auth_img">
<div class="auth_right"> <div class="auth_right">
<div>姓名:<span style="color: #666666;">{{info.name}}</span></div> <div>姓名:<span style="color: #666666;">{{info.name}}</span></div>
<div>性别:<span style="color: #666666;">{{info.gender}}</span></div> <div>性别:<span style="color: #666666;">{{info.sex}}</span></div>
<div>民族:<span style="color: #666666;">{{info.nation}}</span></div> <div>民族:<span style="color: #666666;">{{info.nation}}</span></div>
<div>出生:<span style="color: #666666;">{{info.birth}}</span></div> <div>出生:<span style="color: #666666;">{{formatBirth(info.idnumber)}}</span></div>
<div>住址:<span style="color: #666666;">{{info.address}}</span></div> <div>住址:<span style="color: #666666;">{{info.address}}</span></div>
<div>身份证号码:<span style="color: #666666;">{{info.idnumber}}</span></div> <div>身份证号码:<span style="color: #666666;">{{info.idnumber}}</span></div>
</div> </div>
</div> </div>
<div class="auth_center" v-if="type==1">
<img :src="info.bmpUrl" class="auth_img">
<div class="auth_right">
<div>姓名:<span style="color: #666666;">{{info.name}}</span></div>
<div>性别:<span style="color: #666666;">{{info.gender}}</span></div>
<div>出生:<span style="color: #666666;">{{info.birth}}</span></div>
<div>住址:<span style="color: #666666;">{{info.birthAddress}}</span></div>
<div>护照号码:<span style="color: #666666;">{{info.passportNum}}</span></div>
<div>签发地点:<span style="color: #666666;">{{info.signAddress}}</span></div>
</div>
</div>
<div class="auth_center" v-if="type==2">
<img src="" class="auth_img">
<div class="auth_right">
<div>姓名:<span style="color: #666666;">{{info.name}}</span></div>
<div>身份证号:<span style="color: #666666;">{{info.Idno}}</span></div>
</div>
</div>
<div><el-button type="primary" @click="toNext">下一步</el-button> <div><el-button type="primary" @click="toNext">下一步</el-button>
</div> </div>
</div> </div>
...@@ -38,24 +60,38 @@ ...@@ -38,24 +60,38 @@
data() { data() {
return { return {
info: {}, info: {},
type: 0, type: null,
} }
}, },
created() { created() {
// var info = this.$route.params.info;
// if (info) { var info = this.$route.params.info;
// info = JSON.parse(info); if (info) {
// this.info = info; info = JSON.parse(info);
// } this.info = info;
// this.type = this.$route.params.type }
this.type = this.$route.params.type
},
beforeRouteLeave(to, from, next) {
to.params.type = this.type
next()
}, },
methods: { methods: {
formatBirth(birth) {
return birth.substring(6, 14)
},
toBack() { toBack() {
this.$router.go(-1); this.$router.go(-1);
}, },
toNext() { toNext() {
this.$router.push({ name: "pay" }); this.$router.push({
name: "pay", params: {
info: this.info,
type: this.type
},
});
}, },
} }
......
...@@ -34,7 +34,7 @@ ...@@ -34,7 +34,7 @@
<div style="margin-top:70px;"><el-button type="primary" @click="verify">身份证、sim卡</el-button> <div style="margin-top:70px;"><el-button type="primary" @click="verify">身份证、sim卡</el-button>
<el-button type="primary" @click="cantonese">护照</el-button> <el-button type="primary" @click="cantonese">护照</el-button>
</div> </div>
<button @click="toNext">下一步</button> <!-- <button @click="toNext">下一步</button> -->
</div> </div>
...@@ -65,16 +65,13 @@ ...@@ -65,16 +65,13 @@
}, },
// 身份证 // 身份证
verify() { verify() {
alert(11)
return
var res = AppInterface.readIdCard(); var res = AppInterface.readIdCard();
if (res) { if (res) {
alert(res)
res = JSON.parse(res); res = JSON.parse(res);
if (res.error == 0) { if (res.error == 0) {
alert(res) if (res.data.nation) {
if (res.nation) {
this.$router.push({ this.$router.push({
name: "simPhoto", name: "simPhoto",
...@@ -83,6 +80,8 @@ ...@@ -83,6 +80,8 @@
}, },
}); });
} }
// sim卡
else { else {
this.$router.push({ this.$router.push({
name: "simPhoto", name: "simPhoto",
...@@ -98,7 +97,6 @@ ...@@ -98,7 +97,6 @@
} }
}, },
cantonese() { cantonese() {
alert(222)
this.$router.push({ this.$router.push({
name: "simPhoto", name: "simPhoto",
params: { params: {
......
...@@ -24,6 +24,23 @@ ...@@ -24,6 +24,23 @@
<script> <script>
export default { export default {
data() {
return {
info: {},
type: null,
}
},
created() {
// this.info = this.$route.params.info
this.type = this.$route.params.type
},
beforeRouteLeave(to, from, next) {
// to.params.info = this.info
to.params.type = this.type
next()
},
methods: { methods: {
gobak() { gobak() {
this.$router.go(-1); this.$router.go(-1);
...@@ -31,7 +48,11 @@ ...@@ -31,7 +48,11 @@
comfim() { comfim() {
this.$router.push({ this.$router.push({
name: "simCard", name: "simCard"
, params: {
type: this.type
},
}); });
}, },
}, },
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<div class="order"> <div class="order">
<div class="order_top"> <div class="order_top">
<div class="goback" @click="toBack">返回上一步</div> <div class="goback" @click="toBack">返回上一步</div>
<div class="order_title">{{type==0?'人脸采集':'护照'}}</div> <div class="order_title">{{type==1?'护照':'人脸采集'}}</div>
</div> </div>
<div class="collection"> <div class="collection">
<div class="auth_body"> <div class="auth_body">
...@@ -30,7 +30,6 @@ ...@@ -30,7 +30,6 @@
created() { created() {
this.type = this.$route.params.type this.type = this.$route.params.type
// alert(this.type)
this.type == 0 ? this.type == 0 ?
AppInterface.openCamera(1) : ''; AppInterface.openCamera(1) : '';
this.type == 1 ? this.type == 1 ?
...@@ -41,12 +40,11 @@ ...@@ -41,12 +40,11 @@
methods: { methods: {
toBack() { toBack() {
this.$router.go(-1); this.$router.go(-1);
AppInterface.closeCamera();
}, },
takephoto() { takephoto() {
// if(this.type==0){
alert(this.type + 1)
var res = AppInterface.photoVerify(this.type + 1); var res = AppInterface.photoVerify(this.type + 1);
alert(res)
if (res) { if (res) {
res = JSON.parse(res); res = JSON.parse(res);
if (res.error == 0) { if (res.error == 0) {
...@@ -55,18 +53,19 @@ ...@@ -55,18 +53,19 @@
name: "realname", name: "realname",
params: { params: {
info: JSON.stringify(res.data), info: JSON.stringify(res.data),
type: this.type
}, },
type: this.type
}); });
} }
} }
// }
// else{
// }
}, },
}, },
// beforeDestroyed() {
// AppInterface.closeCamera();
// }
}; };
</script> </script>
<style scoped> <style scoped>
......
...@@ -68,7 +68,21 @@ ...@@ -68,7 +68,21 @@
<script> <script>
export default { export default {
data() { data() {
return {}; return {
info: {},
type: null,
}
},
created() {
// this.info = this.$route.params.info
this.type = this.$route.params.type
// alert(this.info)
},
beforeRouteLeave(to, from, next) {
// to.params.info = this.info
to.params.type = this.type
next()
}, },
methods: { methods: {
pay() { pay() {
......
...@@ -6,17 +6,60 @@ ...@@ -6,17 +6,60 @@
<div class="collection"> <div class="collection">
<img src="@/assets/sim/simCard.png" class="grant" /> <img src="@/assets/sim/simCard.png" class="grant" />
<div class="waiting">SIM卡发放中,请耐心等待...</div> <div class="waiting">SIM卡发放中,请耐心等待...</div>
<el-progress :show-text="false" color="#61ABEC" :percentage="50" class="progress" <el-progress :show-text="false" color="#61ABEC" :percentage="schedule" class="progress"
:stroke-width="21"></el-progress> :stroke-width="21"></el-progress>
<div class="progress_schedule">40%</div> <div class="progress_schedule">{{schedule}}%</div>
</div> </div>
<button @click="comfim">成功</button> <!-- <button @click="comfim">成功</button> -->
</div> </div>
</template> </template>
<script> <script>
export default { export default {
data() {
return {
schedule: 0,
timer: null,
};
},
created() {
this.setTime();
var res = AppInterface.cardIssue();
if (res) {
res = JSON.parse(res);
if (res.error == 0) {
this.schedule = 100;
clearInterval(this.timer);
this.$router.push({
name: "simSuccess",
params: {
type: 1,
},
});
} else {
clearInterval(this.timer);
this.$router.push({
name: "simSuccess",
params: {
type: 2,
},
});
}
}
},
methods: { methods: {
setTime() {
var that = this;
that.timer = setInterval(() => {
// 计算进度百分比
that.schedule = that.schedule + 20;
// 检查是否倒计时结束
if (that.schedule == 100) {
clearInterval(that.timer);
}
}, 1000); // 每1000毫秒(1秒)更新一次
},
comfim() { comfim() {
this.$router.push({ this.$router.push({
name: "simSuccess", name: "simSuccess",
......
<template> <template>
<div class="order"> <div class="order">
<div class="order_top"> <div class="order_top">
<div class="order_title">制卡成功</div> <div class="order_title" v-if="type == 1">发放成功</div>
<div class="order_title" v-else>发放失败</div>
</div> </div>
<div class="collection"> <div class="collection">
<img src="@/assets/hotel/success2.png" class="success_icon" /> <img src="@/assets/hotel/success2.png" v-if="type == 1" class="success_icon" />
<div class="success_text">SIM发放成功,请拿好您的SIM</div> <img src="@/assets/hotel/fail.png" v-else class="success_icon" />
<div class="success_text" v-if="type == 1">SIM发放成功,请拿好您的SIM卡</div>
<div class="success_text" v-else>SIM发放失败</div>
<div class="success_text">感谢您的使用</div> <div class="success_text">感谢您的使用</div>
<div class="success_back" @click="reset" v-if="type == 2">重新发卡</div>
<div class="success_back" @click="goback">回到首页</div> <div class="success_back" @click="goback">回到首页</div>
</div> </div>
</div> </div>
...@@ -15,9 +19,21 @@ ...@@ -15,9 +19,21 @@
<script> <script>
export default { export default {
data() { data() {
return {}; return {
type: 1, //1是成功
};
},
created() {
var type = this.$route.params.type;
this.type = type;
}, },
methods: { methods: {
// 重新发放房卡
reset() {
this.$router.replace({
name: "simCard",
});
},
// 回到首页 // 回到首页
goback() { goback() {
this.$router.replace({ this.$router.replace({
...@@ -85,6 +101,6 @@ ...@@ -85,6 +101,6 @@
color: white; color: white;
font-size: 24px; font-size: 24px;
cursor: pointer; cursor: pointer;
margin-top: 65px; margin-top: 30px;
} }
</style> </style>
\ No newline at end of file
...@@ -9,18 +9,30 @@ ...@@ -9,18 +9,30 @@
<div class="auth_body"> <div class="auth_body">
<div> <div>
<div class="auth_center">
<img src="@/assets/visitor/camera.png" class="auth_img">
<div class="auth_center" v-if="this.type===2">
<img src="" class="auth_img">
<div class="auth_right">
<div>姓名:<span style="color: #666666;">{{info.name}}</span></div>
<div>身份证号:<span style="color: #666666;">{{info.idNo}}</span></div>
</div>
</div>
<div class="auth_center" v-else>
<img :src="info.photo" class="auth_img">
<div class="auth_right"> <div class="auth_right">
<div>姓名:<span style="color: #666666;">王大锤</span></div> <div>姓名:<span style="color: #666666;">{{info.name}}</span></div>
<div>性别:<span style="color: #666666;"></span></div> <div>性别:<span style="color: #666666;">{{info.sex}}</span></div>
<div>民族:<span style="color: #666666;"></span></div> <div>民族:<span style="color: #666666;">{{info.nation}}</span></div>
<div>出生:<span style="color: #666666;">1994年10月10日</span></div> <div>出生:<span style="color: #666666;">{{formatBirth(info.idnumber)}}</span></div>
<div>住址:<span style="color: #666666;">广东省广州市黄浦区黄埔大道129号</span></div> <div>住址:<span style="color: #666666;">{{info.address}}</span></div>
<div>身份证号码:<span style="color: #666666;">362421********5627</span></div> <div>身份证号码:<span style="color: #666666;">{{info.idnumber}}</span></div>
</div> </div>
</div> </div>
<div><el-button type="primary" @click="toNext">下一步</el-button> <div style="margin-top: 30px;"><el-button type="primary" @click="toNext">下一步</el-button>
</div> </div>
</div> </div>
...@@ -35,39 +47,41 @@ ...@@ -35,39 +47,41 @@
export default { export default {
data() { data() {
return { return {
type: 1, type: null,
phone: '', phone: '',
vform: {}, vform: {},
options: [{ info: {},
value: '选项1',
label: '黄金糕'
}, {
value: '选项2',
label: '双皮奶'
}, {
value: '选项3',
label: '蚵仔煎'
}, {
value: '选项4',
label: '龙须面'
}, {
value: '选项5',
label: '北京烤鸭'
}],
} }
}, },
created() { created() {
this.type = this.$route.params.type; this.type = this.$route.params.type;
// alert(this.type)
var info = this.$route.params.info;
if (info) {
info = JSON.parse(info);
this.info = info;
}
}, },
methods: { methods: {
toBack() { toBack() {
this.$router.go(-1); this.$router.go(-1);
}, },
toNext() { toNext() {
this.$router.push({ name: "send" }); this.$router.push({
name: "send", params: {
type: this.type
},
});
}, },
formatBirth(birth) {
return birth.substring(6, 14)
},
} }
} }
</script> </script>
...@@ -75,7 +89,7 @@ ...@@ -75,7 +89,7 @@
.reserved { .reserved {
width: 100%; width: 100%;
/* height: 650px; */ height: 670px;
box-sizing: border-box; box-sizing: border-box;
......
...@@ -27,11 +27,11 @@ ...@@ -27,11 +27,11 @@
</div> </div>
</div> </div>
</div> </div>
<div style="margin-top:70px;"><el-button type="primary" @click="cardVerify(1)">身份证</el-button> <div style="margin-top:70px;"><el-button type="primary" @click="verify">身份证</el-button>
<el-button type="primary" @click="yueJuCode()">粤居码</el-button> <el-button type="primary" @click="yueJuCode()">粤居码</el-button>
</div> </div>
<button @click="toNext">下一步</button> <!-- <button @click="toNext">下一步</button> -->
</div> </div>
...@@ -46,6 +46,7 @@ ...@@ -46,6 +46,7 @@
export default { export default {
data() { data() {
return { return {
type: null
} }
}, },
...@@ -59,10 +60,59 @@ ...@@ -59,10 +60,59 @@
this.$router.push({ name: "success" }); this.$router.push({ name: "success" });
}, },
cardVerify(num) { // 身份证
AppInterface.photoVerify(num); verify() {
var res = AppInterface.readIdCard();
if (res) {
// alert(res)
res = JSON.parse(res);
if (res.error == 0) {
if (res.data.nation) {
this.$router.push({
name: "success",
params: {
info: JSON.stringify(res.data),
type: 0,
},
});
}
} else {
this.$message.error("读取失败,请重新放置卡片");
}
}
},
yueJuCode() {
var res = AppInterface.yueJuCode();
if (res) {
// alert(res)
res = JSON.parse(res);
if (res.error == 0) {
this.$router.push({
name: "success",
params: {
info: JSON.stringify(res.data),
type: 2,
},
});
} else {
this.$message.error("读取失败,请重新放置卡片");
}
}
}, },
yueJuCode() { AppInterface.yueJuCode() },
} }
} }
</script> </script>
......
...@@ -2,14 +2,23 @@ ...@@ -2,14 +2,23 @@
<div class="reserved"> <div class="reserved">
<div class="card_content"> <div class="card_content">
<div class="card_top"> <div class="card_top">
<div><el-button @click="toBack">返回上一步</el-button> <!-- <div><el-button @click="toBack">返回上一步</el-button>
</div> </div> -->
</div> </div>
<div class="card_body"> <div class="card_body">
<img src="@/assets/hotel/success2.png" class="success_icon" /> <!-- <img src="@/assets/hotel/success2.png" class="success_icon" />
<div class="card_body_text">访客卡发放成功,可在门禁处刷卡通行<br>感谢您的使用</div> <div class="card_body_text">访客卡发放成功,可在门禁处刷卡通行<br>感谢您的使用</div>
<el-button type="primary" @click="toNext">回到首页</el-button> <el-button type="primary" @click="toNext">回到首页</el-button> -->
<img src="@/assets/hotel/success2.png" v-if="type == 1" class="success_icon" />
<img src="@/assets/hotel/fail.png" v-else class="success_icon" />
<div class="card_body_text" v-if="type == 1">访客卡发放成功,可在门禁处刷卡通行<br>感谢您的使用</div>
<div class="card_body_text" v-else>访客发放失败</div>
<div class="card_body_text card_body_text2" @click="reset" v-if="type == 2">重新发卡</div>
<div class="card_body_text card_body_text2" @click="toNext">回到首页</div>
</div> </div>
...@@ -30,22 +39,7 @@ ...@@ -30,22 +39,7 @@
type: 1, type: 1,
phone: '', phone: '',
vform: {}, vform: {},
options: [{
value: '选项1',
label: '黄金糕'
}, {
value: '选项2',
label: '双皮奶'
}, {
value: '选项3',
label: '蚵仔煎'
}, {
value: '选项4',
label: '龙须面'
}, {
value: '选项5',
label: '北京烤鸭'
}],
} }
}, },
...@@ -60,6 +54,11 @@ ...@@ -60,6 +54,11 @@
this.$router.push({ name: "visitor" }); this.$router.push({ name: "visitor" });
}, },
reset() {
this.$router.replace({
name: "send",
});
},
} }
} }
</script> </script>
...@@ -109,6 +108,19 @@ ...@@ -109,6 +108,19 @@
font-weight: 500; font-weight: 500;
} }
.card_body_text2 {
width: 208px;
height: 70px;
background: #437AE5;
border-radius: 4px 4px 4px 4px;
text-align: center;
line-height: 70px;
color: white;
font-size: 24px;
cursor: pointer;
margin-top: 10px;
}
.card_center { .card_center {
display: flex; display: flex;
} }
......
...@@ -4,17 +4,18 @@ ...@@ -4,17 +4,18 @@
<div class="card_left"> <div class="card_left">
<div class="return_btn"><el-button v-show="this.type==0" @click="toBack">返回上一步</el-button></div> <div class="return_btn"><el-button v-show="this.type==0" @click="toBack">返回上一步</el-button></div>
<div class="card_left_c" @click="openCamera"><img src="@/assets/visitor/camera.png" alt="" <div class="card_left_c" @click="openCamera">
class="card_left_img"> <img :src="imgSrc" alt="" class="card_left_img2" v-if="imgSrc!=''">
<img src="@/assets/visitor/camera.png" alt="" class="card_left_img" v-else>
</div> </div>
<div class="card_item"><span class="card_item_span">姓名:</span> <div class="card_item"><span class="card_item_span">姓名:</span>
<el-input v-model="vform.name"></el-input> <el-input v-model="vform.name"></el-input>
</div> </div>
<div class="card_item"><span class="card_item_span">手机号:</span> <div class="card_item"><span class="card_item_span">手机号:</span>
<el-input v-model="vform.name" placeholder="必填"></el-input> <el-input v-model="vform.phone" placeholder="必填"></el-input>
</div> </div>
<div class="card_item"><span class="card_item_span">身份证号:</span> <div class="card_item"><span class="card_item_span">身份证号:</span>
<el-input v-model="vform.name"></el-input> <el-input v-model="vform.idnumber"></el-input>
</div> </div>
<div class="card_item"><span class="card_item_span">来访事由:</span> <div class="card_item"><span class="card_item_span">来访事由:</span>
<el-select v-model="vform.name" width="360px"> <el-select v-model="vform.name" width="360px">
...@@ -27,10 +28,10 @@ ...@@ -27,10 +28,10 @@
<div class="card_center"></div> <div class="card_center"></div>
<div class="card_right"> <div class="card_right">
<div class="card_item"><span class="card_item_span">公司名称:</span> <div class="card_item"><span class="card_item_span">公司名称:</span>
<el-input v-model="vform.name" placeholder="必填"></el-input> <el-input v-model="vform.cname" placeholder="必填"></el-input>
</div> </div>
<div class="card_item"><span class="card_item_span">到访人数:</span> <div class="card_item"><span class="card_item_span">到访人数:</span>
<el-input v-model="vform.name" placeholder="必填"></el-input> <el-input v-model="vform.num" placeholder="必填"></el-input>
</div> </div>
<div class="card_item_next"><el-button type="primary" @click="toNext">下一步</el-button></div> <div class="card_item_next"><el-button type="primary" @click="toNext">下一步</el-button></div>
...@@ -47,26 +48,20 @@ ...@@ -47,26 +48,20 @@
type: 1, type: 1,
phone: '', phone: '',
vform: {}, vform: {},
options: [{ imgSrc: "",
value: '选项1', options: [{ value: 0, label: "面试" }]
label: '黄金糕'
}, {
value: '选项2',
label: '双皮奶'
}, {
value: '选项3',
label: '蚵仔煎'
}, {
value: '选项4',
label: '龙须面'
}, {
value: '选项5',
label: '北京烤鸭'
}],
} }
}, },
created() { created() {
if (this.$route.params.imgSrc)
this.imgSrc = this.$route.params.imgSrc
if (this.$route.params.vform) {
this.vform = JSON.parse(this.$route.params.vform)
}
this.type = this.$route.params.type; this.type = this.$route.params.type;
}, },
methods: { methods: {
...@@ -74,12 +69,44 @@ ...@@ -74,12 +69,44 @@
this.$router.go(-1); this.$router.go(-1);
}, },
toNext() { toNext() {
this.$router.push({ name: "authentify", params: { title: '实名认证', } }); if (this.imgSrc == '') {
alert('请先拍照')
return
}
this.$router.push({
name: "authentify",
// vform: JSON.stringify(this.vform)
});
// var res = AppInterface.readIdCard();
// if (res) {
// res = JSON.parse(res);
// if (res.error == 0) {
// this.$router.push({
// name: "authentify",
// params: {
// info: JSON.stringify(res.data),
// },
// });
// } else {
// this.$message.error("读取失败,请重新拍照");
// }
// }
}, },
openCamera() { openCamera() {
AppInterface.openCamera(1); // AppInterface.openCamera(1);
this.$router.push({
name: "visitorPhoto2",
params: {
type: 1,
vform: JSON.stringify(this.vform)
},
});
} }
} }
} }
</script> </script>
...@@ -117,6 +144,11 @@ ...@@ -117,6 +144,11 @@
margin: 35%; margin: 35%;
} }
.card_left_img2 {
width: 193px;
height: 193px;
}
.card_left_c { .card_left_c {
width: 193px; width: 193px;
height: 193px; height: 193px;
......
<template>
<div class="reserved">
<div class="content">
<div class="card_left">
<div class="return_btn"><el-button v-show="this.type==0" @click="toBack">返回上一步</el-button></div>
<div class="card_left_c">
<img :src="imgSrc" alt="" class="card_left_img" v-if="imgSrc!=''">
<img src="@/assets/visitor/222.png" alt="" class="card_left_img" v-else>
</div>
<div class="card_item"><span class="card_item_span">姓名:</span>
<el-input v-model="vform.name"></el-input>
</div>
<div class="card_item"><span class="card_item_span">手机号:</span>
<el-input v-model="vform.name" placeholder="必填"></el-input>
</div>
<div class="card_item"><span class="card_item_span">身份证号:</span>
<el-input v-model="vform.name"></el-input>
</div>
<div class="card_item"><span class="card_item_span">来访事由:</span>
<el-select v-model="vform.name" width="360px">
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</div>
</div>
<div class="card_center"></div>
<div class="card_right">
<div class="card_item"><span class="card_item_span">公司名称:</span>
<el-input v-model="vform.name" placeholder="必填"></el-input>
</div>
<div class="card_item"><span class="card_item_span">到访人数:</span>
<el-input v-model="vform.name" placeholder="必填"></el-input>
</div>
<div class="card_item_next"><el-button type="primary" @click="toNext">下一步</el-button></div>
</div>
</div>
</div>
</template>
<script>
export default {
data() {
return {
type: null,
phone: '',
vform: {},
imgSrc: ""
}
},
created() {
if (this.$route.params.vform)
this.vform = JSON.parse(this.$route.params.vform)
this.type = this.$route.params.type;
},
methods: {
toBack() {
this.$router.go(-1);
},
toNext() {
this.$router.push({ name: "authentify", params: { title: '实名认证', } });
},
// openCamera() {
// // AppInterface.openCamera(1);
// this.$router.push({
// name: "visitorPhoto2",
// params: {
// type: 1,
// vform: this.vform
// },
// });
// }
}
}
</script>
<style scoped>
.return_btn {
/* margin-top: 45px; */
/* position: absolute; */
height: 34px;
}
.reserved {
width: 100%;
padding: 30px;
height: 670px;
box-sizing: border-box;
}
.content {
width: 100%;
background: #FFFFFF;
border-radius: 14px;
/* padding: 0 45px; */
box-sizing: border-box;
display: flex;
}
.card_left_img {
width: 193px;
height: 193px;
}
.card_left_c {
width: 193px;
height: 193px;
background: #F4F4F4;
border-radius: 15px;
opacity: 1;
margin: 0 207px 53px 175px;
text-align: center;
}
.card_item {
display: flex;
height: 46px;
margin-bottom: 30px;
margin-left: 30px;
}
.card_item_span {
line-height: 46px;
color: #333333;
font-size: 20px;
width: 120px;
}
::v-deep .el-input__inner {
width: 360px;
height: 46px;
border: 1px solid #707070;
color: #333333;
font-size: 20px;
}
::v-deep .el-input {
width: 360px;
height: 46px;
}
::v-deep .el-input__icon {
height: 46px;
}
.card_center {
width: 2px;
height: 548px;
background: #E0E0E0;
margin-top: 20px;
/* margin: 50px 43px 50px 85px; */
}
.card_right {
width: 100%;
margin-top: 70px;
text-align: center;
position: relative;
}
::v-deep .el-button {
width: 94px;
height: 34px;
padding: 0;
font-size: 14px;
}
::v-deep .auth_top .el-button {
position: absolute;
left: 0;
top: 0;
border-radius: 4px;
border: 1px solid #707070;
}
::v-deep .el-button--primary {
width: 132px;
height: 50px;
background: #437AE5;
font-size: 18px;
border: none;
}
.card_item_next {
position: absolute;
bottom: 30px;
left: 40%;
/* display: inline-block; */
}
</style>
\ No newline at end of file
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<div class="order"> <div class="order">
<div class="order_top"> <div class="order_top">
<div class="goback" @click="toBack">返回上一步</div> <div class="goback" @click="toBack">返回上一步</div>
<div class="order_title">护照采集</div> <div class="order_title">{{type==1?"护照采集":"人像采集"}}</div>
</div> </div>
<div class="collection"> <div class="collection">
<div class="auth_body"> <div class="auth_body">
...@@ -24,46 +24,32 @@ ...@@ -24,46 +24,32 @@
type: null, type: null,
phone: "", phone: "",
vform: {}, vform: {},
options: [
{
value: "选项1",
label: "黄金糕",
},
{
value: "选项2",
label: "双皮奶",
},
{
value: "选项3",
label: "蚵仔煎",
},
{
value: "选项4",
label: "龙须面",
},
{
value: "选项5",
label: "北京烤鸭",
},
],
}; };
}, },
created() { created() {
AppInterface.openCamera(0); this.type = this.$route.params.type
this.type == 0 ?
AppInterface.openCamera(1) : '';
this.type == 1 ?
AppInterface.openCamera(0) : '';
// AppInterface.openCamera(0);
}, },
methods: { methods: {
toBack() { toBack() {
this.$router.go(-1); this.$router.go(-1);
}, },
takephoto() { takephoto() {
var res = AppInterface.photoVerify(2); // return
var res = AppInterface.captureAvatar();
if (res) { if (res) {
res = JSON.parse(res); res = JSON.parse(res);
if (res.error == 0) { if (res.error == 0) {
AppInterface.closeCamera(); AppInterface.closeCamera();
this.$router.push({ this.$router.push({
name: "hotelIdentitySuccess", name: "success",
params: { params: {
info: JSON.stringify(res.data), info: JSON.stringify(res.data),
}, },
......
<template>
<div class="order">
<div class="order_top">
<div class="goback" @click="toBack">返回上一步</div>
<div class="order_title">人像采集</div>
</div>
<div class="collection">
<div class="auth_body">
<div class="camer"></div>
<div>
<el-button type="primary" @click="takephoto">拍照</el-button>
</div>
</div>
<!-- <el-button type="primary" @click="toNext">下一步</el-button> -->
</div>
</div>
</template>
<script>
export default {
data() {
return {
type: null,
phone: "",
vform: {},
info: {}
};
},
created() {
AppInterface.openCamera(1)
if (this.$route.params.vform)
this.vform = this.$route.params.vform
// alert(this.vform)
return
this.type = this.$route.params.type
this.type == 0 ?
AppInterface.openCamera(1) : '';
this.type == 1 ?
AppInterface.openCamera(1) : '';
// AppInterface.openCamera(0);
},
methods: {
toBack() {
this.$router.go(-1);
AppInterface.closeCamera();
},
takephoto() {
var res = AppInterface.captureAvatar();
if (res) {
res = JSON.parse(res);
if (res.error == 0) {
// alert(JSON.stringify(res.data))
AppInterface.closeCamera();
this.$router.push({
name: "disreserve",
params: {
imgSrc: JSON.stringify(res.data),
vform: this.vform
},
});
}
}
},
},
};
</script>
<style scoped>
.order {
width: 100%;
height: 680px;
padding: 0 30px;
box-sizing: border-box;
background: white;
border-radius: 14px;
}
.goback {
width: 94px;
height: 34px;
position: absolute;
top: 30px;
left: 0;
cursor: pointer;
font-size: 14px;
color: #666666;
background: #ffffff;
border-radius: 4px;
border: 1px solid #707070;
text-align: center;
line-height: 34px;
}
.order_top {
height: 88px;
width: 100%;
position: relative;
}
.order_title {
font-size: 28px;
color: #000000;
width: 100%;
text-align: center;
line-height: 88px;
}
.collection {
width: 100%;
background: white;
height: 486px;
}
.auth_title {
color: #666666;
font-size: 18px;
}
.auth_body {
width: 100%;
/* height: 100%; */
padding-top: 24px;
box-sizing: border-box;
display: flex;
flex-direction: column;
align-items: center;
}
.auth_center {
display: flex;
}
.auth_img {
width: 387px;
height: 287px;
}
.auth_center_right {
display: flex;
flex-direction: column;
margin-top: 30px;
}
.auth_img_left {
width: 64px;
height: 12px;
margin-right: 9px;
margin-top: 15px;
}
.auth_right {
display: flex;
margin-bottom: 49px;
}
.auth_span {
font-size: 20px;
}
.auth_span_a {
color: #666666;
font-size: 16px;
margin-top: 10px;
}
.content_time {
width: 50px;
height: 50px;
background: #ffffff;
opacity: 1;
border: 3px solid #5a8ff6;
border-radius: 50%;
text-align: center;
line-height: 50px;
}
::v-deep .el-button {
width: 94px;
height: 34px;
padding: 0;
font-size: 14px;
}
::v-deep .el-button--primary {
height: 50px;
margin-top: 50px;
}
.collection_title {
font-size: 18px;
color: #666666;
margin-bottom: 46px;
}
.collection_title span {
color: #437ae5;
}
.camer {
width: 700px;
height: 400px;
margin-bottom: 40px;
}
</style>
\ No newline at end of file
...@@ -54,7 +54,7 @@ ...@@ -54,7 +54,7 @@
}, },
comfirm() { comfirm() {
this.$router.push({ name: "disreserve", params: { title: '访客信息', type: 0 } }); this.$router.push({ name: "disreserve2", params: { title: '访客信息', type: 0 } });
} }
} }
} }
......
...@@ -2,16 +2,16 @@ ...@@ -2,16 +2,16 @@
<div class="reserved"> <div class="reserved">
<div class="card_content"> <div class="card_content">
<div class="card_top"> <div class="card_top">
<div><el-button @click="toBack">返回上一步</el-button> <!-- <div><el-button @click="toBack">返回上一步</el-button>
</div> </div> -->
</div> </div>
<div class="card_body"> <div class="card_body">
<img src="@/assets/visitor/card.png" class="card_img_left"> <img src="@/assets/visitor/card.png" class="card_img_left">
<div class="card_body_text">访客卡发放中,请耐心等待</div> <div class="card_body_text">访客卡发放中,请耐心等待</div>
<el-progress :show-text="false" color="#61ABEC" :percentage="50" class="progress" <el-progress :show-text="false" color="#61ABEC" :percentage="schedule" class="progress"
:stroke-width="21"></el-progress> :stroke-width="21"></el-progress>
<div class="progress_schedule">40%</div> <div class="progress_schedule">{{schedule}}%</div>
</div> </div>
...@@ -27,30 +27,34 @@ ...@@ -27,30 +27,34 @@
export default { export default {
data() { data() {
return { return {
type: 1, schedule: 0,
phone: '', timer: null,
vform: {}, };
options: [{
value: '选项1',
label: '黄金糕'
}, {
value: '选项2',
label: '双皮奶'
}, {
value: '选项3',
label: '蚵仔煎'
}, {
value: '选项4',
label: '龙须面'
}, {
value: '选项5',
label: '北京烤鸭'
}],
}
}, },
created() { created() {
this.type = this.$route.params.type; this.setTime();
var res = AppInterface.cardIssue();
if (res) {
res = JSON.parse(res);
if (res.error == 0) {
this.schedule = 100;
clearInterval(this.timer);
this.$router.push({
name: "card",
params: {
type: 1,
},
});
} else {
clearInterval(this.timer);
this.$router.push({
name: "card",
params: {
type: 2,
},
});
}
}
}, },
methods: { methods: {
toBack() { toBack() {
...@@ -60,6 +64,18 @@ ...@@ -60,6 +64,18 @@
this.$router.push({ name: "card" }); this.$router.push({ name: "card" });
}, },
setTime() {
var that = this;
that.timer = setInterval(() => {
// 计算进度百分比
that.schedule = that.schedule + 20;
// 检查是否倒计时结束
if (that.schedule == 100) {
clearInterval(that.timer);
}
}, 1000); // 每1000毫秒(1秒)更新一次
},
} }
} }
</script> </script>
......
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