|
@@ -52,17 +52,26 @@
|
|
|
class="vr-visitor__item"
|
|
|
>
|
|
|
<div class="vr-input">
|
|
|
- <el-input v-model="item.name" placeholder="请输入姓名" />
|
|
|
+ <el-input
|
|
|
+ v-model="item.name"
|
|
|
+ placeholder="请输入姓名"
|
|
|
+ @click="handleFocus"
|
|
|
+ />
|
|
|
</div>
|
|
|
<div class="vr-input">
|
|
|
<el-input
|
|
|
v-model="item.phone"
|
|
|
placeholder="请输入手机号"
|
|
|
type="number"
|
|
|
+ @click="handleFocus"
|
|
|
/>
|
|
|
</div>
|
|
|
<div class="vr-input">
|
|
|
- <el-input v-model="item.idcard" placeholder="请输入身份证号" />
|
|
|
+ <el-input
|
|
|
+ v-model="item.idcard"
|
|
|
+ placeholder="请输入身份证号"
|
|
|
+ @click="handleFocus"
|
|
|
+ />
|
|
|
</div>
|
|
|
|
|
|
<div
|
|
@@ -72,7 +81,11 @@
|
|
|
/>
|
|
|
</div>
|
|
|
|
|
|
- <div class="vr-visitor__add" @click="addVisitor" />
|
|
|
+ <div
|
|
|
+ v-if="visitorList.length < 5"
|
|
|
+ class="vr-visitor__add"
|
|
|
+ @click="addVisitor"
|
|
|
+ />
|
|
|
</div>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="预约时间">
|
|
@@ -124,8 +137,10 @@
|
|
|
v-model="form.description"
|
|
|
resize="none"
|
|
|
:rows="3"
|
|
|
+ :maxlength="200"
|
|
|
type="textarea"
|
|
|
placeholder="请输入备注"
|
|
|
+ @click="handleFocus"
|
|
|
/>
|
|
|
</div>
|
|
|
</el-form-item>
|
|
@@ -153,6 +168,7 @@ import DYHImg from "./imgs/img_yangzhou.jpg";
|
|
|
import SZImg from "./imgs/img_suzhou.jpg";
|
|
|
|
|
|
import "./index.scss";
|
|
|
+import { OpenVirtualKeyBoard } from "@/utils/open-keyboard";
|
|
|
|
|
|
type DateType = {
|
|
|
label: string;
|
|
@@ -233,6 +249,10 @@ watch(venues, (list) => {
|
|
|
form.venues = list[0];
|
|
|
});
|
|
|
|
|
|
+const handleFocus = () => {
|
|
|
+ OpenVirtualKeyBoard();
|
|
|
+};
|
|
|
+
|
|
|
const clear = () => {
|
|
|
Object.assign(form, {
|
|
|
...DEFAULT_FORM,
|
|
@@ -240,6 +260,7 @@ const clear = () => {
|
|
|
venues: venues.value[0],
|
|
|
exhibitionName: MUSEUM_LIST[0].name,
|
|
|
});
|
|
|
+ bookDay.value = "";
|
|
|
visitorList.length = 0;
|
|
|
visitorList.push({ ...DEFAULT_VISITOR });
|
|
|
curExhibitionId.value = MUSEUM_LIST[0].id;
|
|
@@ -275,7 +296,7 @@ const initDate = () => {
|
|
|
};
|
|
|
|
|
|
function checkTelephone(telephone: string) {
|
|
|
- var reg = /^[1][3,4,5,7,8][0-9]{9}$/;
|
|
|
+ var reg = /^[1][3,4,5,6,7,8,9][0-9]{9}$/;
|
|
|
return reg.test(telephone);
|
|
|
}
|
|
|
|
|
@@ -285,6 +306,13 @@ function checkIdCard(idCard: string) {
|
|
|
}
|
|
|
|
|
|
const submit = async () => {
|
|
|
+ if (!form.bookDay && !bookDay.value) {
|
|
|
+ dialogErrType.value = false;
|
|
|
+ dialogText.value = "请选择预约时间";
|
|
|
+ dialogVisible.value = true;
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
if (!formRef.value || !(await formRef.value.validate())) return;
|
|
|
|
|
|
for (let i = 0; i < visitorList.length; i++) {
|