first commit
This commit is contained in:
@@ -0,0 +1,672 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<!-- 在 head 标签中添加 meta 标签,并设置 viewport-fit=cover 值 -->
|
||||
<meta name="viewport"
|
||||
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, viewport-fit=cover">
|
||||
<title>南京大学教职工子女入学登记
|
||||
</title>
|
||||
<!-- 引入样式文件 -->
|
||||
<link rel="stylesheet" href="https://cdn.staticfile.org/vant/2.12.5/index.min.css">
|
||||
<link rel="stylesheet" href="https://res.wx.qq.com/open/libs/weui/2.2.0/weui.min.css">
|
||||
|
||||
<!-- 引入 Vue 和 Vant 的 JS 文件 -->
|
||||
<script src="https://cdn.staticfile.org/vue/2.6.9/vue.min.js"></script>
|
||||
<script src="https://cdn.staticfile.org/vant/2.12.5/vant.min.js"></script>
|
||||
<script src="https://cdn.staticfile.org/jquery/1.11.1/jquery.min.js"></script>
|
||||
<script src="/assets/platform/plugins/moment/moment.min.js"></script>
|
||||
|
||||
</head>
|
||||
<style>
|
||||
[v-clock] {
|
||||
display: none
|
||||
}
|
||||
|
||||
html, body {
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
font-family: PingFang SC, 'Helvetica Neue', Arial, sans-serif;
|
||||
}
|
||||
|
||||
#v-cover {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
bottom: 0;
|
||||
right: 0;
|
||||
margin: auto;
|
||||
z-index: 9999;
|
||||
box-sizing: border-box;
|
||||
/*background-color: rgba(216,191,216,.3);*/
|
||||
background-image: url(//image.wjx.com/images/newimg/mobile-cover/cover3@1x.jpg);
|
||||
background-repeat: no-repeat;
|
||||
background-size: cover;
|
||||
background-color: #7b99ec;
|
||||
}
|
||||
|
||||
@keyframes mylogo {
|
||||
from {
|
||||
top: 3px;
|
||||
}
|
||||
to {
|
||||
top: -3px;
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-keyframes mylogo /* Firefox */
|
||||
{
|
||||
from {
|
||||
top: 3px;
|
||||
}
|
||||
to {
|
||||
top: -3px;
|
||||
}
|
||||
}
|
||||
|
||||
@-webkit-keyframes mylogo /* Safari 和 Chrome */
|
||||
{
|
||||
from {
|
||||
top: 3px;
|
||||
}
|
||||
to {
|
||||
top: -3px;
|
||||
}
|
||||
}
|
||||
|
||||
@-o-keyframes mylogo /* Opera */
|
||||
{
|
||||
from {
|
||||
top: 3px;
|
||||
}
|
||||
to {
|
||||
top: -3px;
|
||||
}
|
||||
}
|
||||
|
||||
.start_title {
|
||||
position: relative;
|
||||
font-size: 12px;
|
||||
/*color: rgb(106, 0, 95);*/
|
||||
color: white;
|
||||
animation: mylogo 0.1s linear 0s infinite alternate;
|
||||
/* Firefox: */
|
||||
-moz-animation: mylogo 0.1s linear 0s infinite alternate;
|
||||
/* Safari 和 Chrome: */
|
||||
-webkit-animation: mylogo 0.1s linear 0s infinite alternate;
|
||||
/* Opera: */
|
||||
-o-animation: mylogo 0.1s linear 0s infinite alternate;
|
||||
}
|
||||
|
||||
.start_logo {
|
||||
text-align: center;
|
||||
border-radius: 50%;
|
||||
/*border: rgb(106, 0, 95) 1px solid;*/
|
||||
border: white 1px solid;
|
||||
position: relative;
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
left: 0;
|
||||
right: 0;
|
||||
margin: auto;
|
||||
margin-bottom: 30px;
|
||||
cursor: pointer;
|
||||
box-sizing: border-box;
|
||||
animation: mylogo 0.1s linear 0s infinite alternate;
|
||||
/* Firefox: */
|
||||
-moz-animation: mylogo 0.1s linear 0s infinite alternate;
|
||||
/* Safari 和 Chrome: */
|
||||
-webkit-animation: mylogo 0.1s linear 0s infinite alternate;
|
||||
/* Opera: */
|
||||
-o-animation: mylogo 0.1s linear 0s infinite alternate;
|
||||
}
|
||||
|
||||
.v-cover-title {
|
||||
padding: 30px 20px;
|
||||
box-sizing: border-box;
|
||||
width: 100%;
|
||||
height: 60%;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
margin: auto;
|
||||
}
|
||||
|
||||
.van-doc-demo-block__title {
|
||||
margin: 0;
|
||||
padding: 0 16px;
|
||||
color: rgba(69, 90, 100, 0.6);
|
||||
font-weight: normal;
|
||||
font-size: 14px;
|
||||
line-height: 16px;
|
||||
}
|
||||
|
||||
.delete-button {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.van-swipe-cell__wrapper {
|
||||
border: none;
|
||||
}
|
||||
</style>
|
||||
<body>
|
||||
<div id="v-cover">
|
||||
<div class="v-cover-title">
|
||||
<div style="font-size: 24px;width: 100%;text-align: center;color: white">幼儿园秋季入园登记</div>
|
||||
</div>
|
||||
<div style="position: absolute;height: 55px;width: 100%;bottom: 0;left: 0;text-align: center">
|
||||
<div class="start_title" style="height: 16px;line-height: 16px">上滑开始</div>
|
||||
<div class="start_logo">
|
||||
<svg style="height: 40%;width: 100%;margin-top: 30%" t="1583736487548" class="icon" viewBox="0 0 1462 1024"
|
||||
version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3119" width="32" height="32">
|
||||
<path d="M788.187 477.842a80.823 80.823 0 0 0-111.908 0l-484.937 469.65c-21.358 20.773-26.99 50.25-18.652 76.508l494.958-415.451c6.437-5.486 13.75-9.436 21.358-13.02 26.331-16.603 60.708-16.603 86.82 0.146 7.46 3.438 14.629 7.388 20.846 12.727L1291.776 1024a74.533 74.533 0 0 0-18.725-76.654L788.187 477.842z m645.56 165.01L804.132 29.33a104.74 104.74 0 0 0-145.335 0L29.038 642.853C1.17 669.915-5.925 708.535 4.754 742.839l642.56-542.866a121.417 121.417 0 0 1 27.868-16.97 105.106 105.106 0 0 1 112.786 0.366c9.655 4.389 18.87 9.801 27.136 16.604l642.926 542.866a97.134 97.134 0 0 0-24.357-99.986z"
|
||||
p-id="3120" fill="white"></path>
|
||||
</svg>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div v-clock id="app" style="width: 100%;height: 100%;position: relative;overflow-y: auto;">
|
||||
<van-nav-bar title="入学登记" fixed placeholder safe-area-inset-top @click-left="history.back()"
|
||||
:left-arrow="leftArrow"></van-nav-bar>
|
||||
<div>
|
||||
<van-image
|
||||
width="100%"
|
||||
height="200px"
|
||||
fit="cover"
|
||||
src="https://zhgh.nju.edu.cn/file_server/assets/school_apply_bg.webp"
|
||||
/>
|
||||
</div>
|
||||
<van-form @submit="doSubmit" style="margin-top: 10px">
|
||||
<van-tabs v-model="checked" color="rgb(106, 0, 95)" type="card">
|
||||
<van-tab name="1" title="基础信息">
|
||||
<div style="width: 100%;padding: 16px 0;">
|
||||
<h2 class="van-doc-demo-block__title" style="font-weight: bolder;color: rgb(106, 0, 95)">
|
||||
用户信息</h2>
|
||||
</div>
|
||||
<van-cell-group>
|
||||
<van-field
|
||||
@input="doInput"
|
||||
required
|
||||
v-model="formData.loginname"
|
||||
name="loginname"
|
||||
label="工  号"
|
||||
placeholder="工资号"
|
||||
:rules="[{ required: true, message: '请填写工资号' }]"
|
||||
></van-field>
|
||||
<van-field
|
||||
v-model="formData.username"
|
||||
name="username"
|
||||
label="姓  名"
|
||||
:placeholder="getPlaceholder(formData,'username')"
|
||||
></van-field>
|
||||
<van-field
|
||||
v-model="formData.unionname"
|
||||
name="unionname"
|
||||
label="所属工会"
|
||||
:placeholder="getPlaceholder(formData,'unionname')"
|
||||
></van-field>
|
||||
<van-field
|
||||
required
|
||||
v-model="formData.dj_iphone"
|
||||
name="dj_iphone"
|
||||
label="手机号码"
|
||||
placeholder="手机号码"
|
||||
:rules="[{ required: true, message: '请填写手机号码' }]"
|
||||
></van-field>
|
||||
<van-field
|
||||
required
|
||||
v-model="formData.dj_zw"
|
||||
name="dj_zw"
|
||||
label="职  务"
|
||||
placeholder="职务"
|
||||
:rules="[{ required: true, message: '请填写职务' }]"
|
||||
></van-field>
|
||||
</van-cell-group>
|
||||
<div style="width: 100%;padding: 16px 0;">
|
||||
<h2 class="van-doc-demo-block__title" style="font-weight: bolder;color: rgb(106, 0, 95)">
|
||||
登记信息</h2>
|
||||
</div>
|
||||
<van-cell-group>
|
||||
<van-field
|
||||
required
|
||||
v-model="formData.dj_znname"
|
||||
name="dj_znname"
|
||||
label="子女姓名"
|
||||
placeholder="子女姓名"
|
||||
:rules="[{ required: true, message: '请填写子女姓名' }]"
|
||||
></van-field>
|
||||
<van-field
|
||||
readonly
|
||||
clickable
|
||||
name="dj_znzsny"
|
||||
:value="formData.dj_znzsny"
|
||||
label="出生日期"
|
||||
placeholder="点击选择"
|
||||
@click="birthdayShowPicker = true"
|
||||
required
|
||||
:rules="[{ required: true, message: '请选择出生日期' }]"
|
||||
></van-field>
|
||||
<van-popup v-model="birthdayShowPicker" position="bottom">
|
||||
<van-datetime-picker
|
||||
type="date"
|
||||
:min-date="new Date('2000-01-01')"
|
||||
:max-date="new Date()"
|
||||
@confirm="birthdayConfirm"
|
||||
@cancel="birthdayShowPicker = false"
|
||||
></van-datetime-picker>
|
||||
</van-popup>
|
||||
<van-field
|
||||
@blur="checkIdCard"
|
||||
required
|
||||
name="dj_znidcard"
|
||||
v-model="formData.dj_znidcard"
|
||||
label="身份证号"
|
||||
placeholder="身份证号"
|
||||
:rules="[{ required: true, message: '请填写子女身份证号' }]"
|
||||
></van-field>
|
||||
<van-field
|
||||
readonly
|
||||
clickable
|
||||
name="dj_jzgzngx"
|
||||
:value="formData.dj_jzgzngx"
|
||||
label="子女关系"
|
||||
placeholder="点击选择"
|
||||
@click="dj_jzgzngxShowPicker = true"
|
||||
required
|
||||
:rules="[{ required: true, message: '请选择子女关系' }]"
|
||||
></van-field>
|
||||
<van-popup v-model="dj_jzgzngxShowPicker" position="bottom">
|
||||
<van-picker
|
||||
show-toolbar
|
||||
:columns="fzgxArr"
|
||||
@confirm="function(val){formData.dj_jzgzngx=val;dj_jzgzngxShowPicker=false}"
|
||||
@cancel="dj_jzgzngxShowPicker = false"
|
||||
></van-picker>
|
||||
</van-popup>
|
||||
<van-field
|
||||
readonly
|
||||
clickable
|
||||
name="dj_sqxx"
|
||||
:value="formData.dj_sqxx"
|
||||
label="申请班级"
|
||||
placeholder="点击选择"
|
||||
@click="dj_sqxxShowPicker = true"
|
||||
required
|
||||
:rules="[{ required: true, message: '请选择申请班级' }]"
|
||||
></van-field>
|
||||
<van-popup v-model="dj_sqxxShowPicker" position="bottom">
|
||||
<van-picker
|
||||
show-toolbar
|
||||
:columns="sqbjArr"
|
||||
@confirm="function(val){formData.dj_sqxx=val;dj_sqxxShowPicker=false}"
|
||||
@cancel="dj_sqxxShowPicker = false"
|
||||
></van-picker>
|
||||
</van-popup>
|
||||
<van-field
|
||||
v-model="formData.dj_wxqyy"
|
||||
name="dj_wxqyy"
|
||||
label="备  注"
|
||||
rows="2"
|
||||
autosize
|
||||
type="textarea"
|
||||
placeholder="请输入备注"
|
||||
></van-field>
|
||||
</van-cell-group>
|
||||
</van-tab>
|
||||
<van-tab name="2" title="材料信息">
|
||||
<van-cell-group style="margin-top: 20px">
|
||||
<van-field label="户口簿照片" required label-width="250" disabled style="border: none;"></van-field>
|
||||
<van-field>
|
||||
<template #input>
|
||||
<van-uploader multiple
|
||||
accept="image/*"
|
||||
:max-count="5"
|
||||
v-model="formData.fileList1">
|
||||
</van-uploader>
|
||||
</template>
|
||||
</van-field>
|
||||
<van-field label="子女出生证照片" required label-width="250" disabled style="border: none;"></van-field>
|
||||
<van-field>
|
||||
<template #input>
|
||||
<van-uploader multiple
|
||||
accept="image/*"
|
||||
:max-count="5"
|
||||
v-model="formData.fileList2">
|
||||
</van-uploader>
|
||||
</template>
|
||||
</van-field>
|
||||
<!-- <van-field label="人才骨干证明材料" label-width="250" disabled style="border: none;"></van-field>-->
|
||||
<!-- <van-field>-->
|
||||
<!-- <template #input>-->
|
||||
<!-- <van-uploader multiple-->
|
||||
<!-- accept="image/*"-->
|
||||
<!-- :max-count="5"-->
|
||||
<!-- v-model="formData.fileList3">-->
|
||||
<!-- </van-uploader>-->
|
||||
<!-- </template>-->
|
||||
<!-- </van-field>-->
|
||||
<!-- <van-field label="无学区房证明材料" label-width="250" disabled style="border: none;"></van-field>-->
|
||||
<!-- <van-field>-->
|
||||
<!-- <template #input>-->
|
||||
<!-- <van-uploader multiple-->
|
||||
<!-- accept="image/*"-->
|
||||
<!-- :max-count="5"-->
|
||||
<!-- v-model="formData.fileList4">-->
|
||||
<!-- </van-uploader>-->
|
||||
<!-- </template>-->
|
||||
<!-- </van-field>-->
|
||||
</van-cell-group>
|
||||
</van-tab>
|
||||
</van-tabs>
|
||||
|
||||
<div style="margin: 16px;">
|
||||
<van-button round block color="rgb(106, 0, 95)" :disabled="subFlag" type="info" native-type="submit">
|
||||
提交
|
||||
</van-button>
|
||||
</div>
|
||||
</van-form>
|
||||
<van-number-keyboard safe-area-inset-bottom/>
|
||||
</div>
|
||||
<script src="https://cdn.jsdelivr.net/npm/js-cookie@2/src/js.cookie.min.js"></script>
|
||||
<script>
|
||||
|
||||
var startX, startY, moveEndX, moveEndY, X, Y;
|
||||
|
||||
$("#v-cover").on("touchstart", function (e) {
|
||||
|
||||
e.preventDefault();
|
||||
|
||||
startX = e.originalEvent.changedTouches[0].pageX,
|
||||
|
||||
startY = e.originalEvent.changedTouches[0].pageY;
|
||||
|
||||
});
|
||||
|
||||
$("#v-cover").on("touchmove", function (e) {
|
||||
$(".start_logo").click(function () {
|
||||
$("#v-cover").animate({"bottom": '200%'}, "slow");
|
||||
})
|
||||
e.preventDefault();
|
||||
moveEndX = e.originalEvent.changedTouches[0].pageX
|
||||
moveEndY = e.originalEvent.changedTouches[0].pageY
|
||||
X = moveEndX - startX
|
||||
Y = moveEndY - startY
|
||||
if (Math.abs(X) > Math.abs(Y) && X > 0) {
|
||||
// alert("像右滑动");
|
||||
} else if (Math.abs(X) > Math.abs(Y) && X < 0) {
|
||||
// alert("像左滑动");
|
||||
} else if (Math.abs(Y) > Math.abs(X) && Y > 0) {
|
||||
// alert("下滑动");
|
||||
} else if (Math.abs(Y) > Math.abs(X) && Y < -100) {
|
||||
$("#v-cover").animate({"bottom": '200%'}, "slow");
|
||||
} else {
|
||||
// alert("触摸");
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
$(".start_logo").click(function () {
|
||||
$("#v-cover").animate({"bottom": '200%'}, "slow");
|
||||
})
|
||||
$("#v-cover").click(function () {
|
||||
$("#v-cover").animate({"bottom": '200%'}, "slow");
|
||||
})
|
||||
|
||||
|
||||
var vue = new Vue({
|
||||
el: "#app",
|
||||
data: function () {
|
||||
return {
|
||||
fzgxArr: ['父子', '父女', '母子', '母女', '第三代'],
|
||||
sqbjArr: ['亲子班', '托班', '小班', '中班', '大班'],
|
||||
fjlxArr: ['户口簿复印件', '子女出生证复印件', '单位主要负责人签字、盖章的书面证明材料', '书面情况说明以及相关证明材料'],
|
||||
fjlxObj: {'户口簿复印件': 1, '子女出生证复印件': 2, '单位主要负责人签字、盖章的书面证明材料': 3, '书面情况说明以及相关证明材料': 4},
|
||||
birthdayShowPicker: false,
|
||||
dj_jzgzngxShowPicker: false,
|
||||
dj_sqxxShowPicker: false,
|
||||
fj_lxShowPicker: false,
|
||||
fileIdx: '',
|
||||
checked: 1,
|
||||
formData: {
|
||||
dj_djlx: 1,
|
||||
fileList1: [],
|
||||
fileList2: [],
|
||||
fileList3: [],
|
||||
fileList4: [],
|
||||
},
|
||||
isNull: function (val) {
|
||||
if (val == null || val == undefined || val == '') {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
},
|
||||
showMsg: false,
|
||||
msg: '',
|
||||
subFlag: true,
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
checkIdCard(val) {
|
||||
const p = /^[1-9]\d{5}(18|19|20)\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/;
|
||||
const result = p.test(this.formData.dj_znidcard)
|
||||
if (!result) {
|
||||
vant.Toast('请输入正确的身份证号码')
|
||||
return
|
||||
}
|
||||
if (this.formData.dj_znzsny) {
|
||||
const calc_birthday = this.formData.dj_znidcard.substr(6, 8)
|
||||
const input_birthday = this.formData.dj_znzsny.replaceAll('-', '')
|
||||
if (calc_birthday !== input_birthday) {
|
||||
vant.Toast('您输入正确的身份证号码与出生日期不符合')
|
||||
}
|
||||
}
|
||||
},
|
||||
doSubmit: function () {
|
||||
const calc_birthday = this.formData.dj_znidcard.substr(6, 8)
|
||||
const input_birthday = this.formData.dj_znzsny.replaceAll('-', '')
|
||||
if (calc_birthday !== input_birthday) {
|
||||
vant.Toast('您输入正确的身份证号码与出生日期不符合')
|
||||
}
|
||||
if (vue.formData.fileList1.length == 0) {
|
||||
vue.$toast.fail("请上传户口簿照片!")
|
||||
return
|
||||
}
|
||||
if (vue.formData.fileList2.length == 0) {
|
||||
vue.$toast.fail("请上传子女出生证照片!")
|
||||
return
|
||||
}
|
||||
|
||||
vue.$dialog.confirm({
|
||||
title: '提醒',
|
||||
message: '提交前,请您再次核对“基础信息”和“材料信息”,确保填写完整并准确无误。是否确认提交?'
|
||||
}).then(function (value) {
|
||||
setTimeout(function () {
|
||||
|
||||
var formdata = new FormData();
|
||||
|
||||
var data = Object.assign({}, vue.formData);
|
||||
data.fileList1 = undefined
|
||||
data.fileList2 = undefined
|
||||
data.fileList3 = undefined
|
||||
data.fileList4 = undefined
|
||||
for (key in data) {
|
||||
formdata.append(key, vue.isNull(data[key]) ? '' : data[key]);
|
||||
}
|
||||
|
||||
formdata.append("dj_tbrq", moment().format('YYYY-MM-DD'));
|
||||
formdata.append("dj_sqzt", 0);
|
||||
formdata.append("dj_year", moment().format('YYYY'));
|
||||
vue.formData.fileList1.forEach(function (val) {
|
||||
formdata.append("files1", val.file, val.file.name);
|
||||
});
|
||||
vue.formData.fileList2.forEach(function (val) {
|
||||
formdata.append("files2", val.file, val.file.name);
|
||||
});
|
||||
vue.formData.fileList3.forEach(function (val) {
|
||||
formdata.append("files3", val.file, val.file.name);
|
||||
});
|
||||
vue.formData.fileList4.forEach(function (val) {
|
||||
formdata.append("files4", val.file, val.file.name);
|
||||
});
|
||||
|
||||
const toast = vue.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true,
|
||||
message: '数据提交中...'
|
||||
});
|
||||
|
||||
|
||||
$.ajax({
|
||||
url: "/platform/zgfw/mobile/rxdj/doSubmit",
|
||||
type: "post",
|
||||
data: formdata,
|
||||
processData: false,
|
||||
contentType: false,
|
||||
success: function (data) {
|
||||
if (data.code === 0) {
|
||||
setTimeout(function () {
|
||||
// 手动清除 Toast
|
||||
vue.$toast.clear();
|
||||
vue.$toast.success('提交成功!')
|
||||
vue.formData = {
|
||||
dj_djlx: 1,
|
||||
loginname: vue.formData.loginname,
|
||||
dj_iphone: vue.formData.dj_iphone,
|
||||
dj_jzgid: vue.formData.dj_jzgid,
|
||||
dj_zw: vue.formData.dj_zw,
|
||||
dj_rylx: vue.formData.dj_rylx,
|
||||
dj_szdw: vue.formData.dj_szdw,
|
||||
dj_tbrfgh: vue.formData.dj_tbrfgh,
|
||||
dj_gzh: vue.formData.dj_gzh,
|
||||
username: vue.formData.username,
|
||||
unionname: vue.formData.unionname,
|
||||
fileList1: [],
|
||||
fileList2: [],
|
||||
fileList3: [],
|
||||
fileList4: [],
|
||||
}
|
||||
Cookies.remove('formData_rk');
|
||||
})
|
||||
} else {
|
||||
setTimeout(function () {
|
||||
vue.$toast.clear();
|
||||
vue.$toast.fail(data.msg)
|
||||
}, 500)
|
||||
}
|
||||
},
|
||||
error: function (data) {
|
||||
setTimeout(function () {
|
||||
vue.$toast.clear();
|
||||
vue.$toast.fail(data.msg)
|
||||
}, 500)
|
||||
}
|
||||
});
|
||||
}, 500)
|
||||
}).catch(function (reason) {
|
||||
|
||||
});
|
||||
},
|
||||
fjlxConfirm: function (val) {
|
||||
vue.formData.fileList[vue.fileIdx].fj_lxName = val
|
||||
vue.formData.fileList[vue.fileIdx].fj_lx = vue.fjlxObj[val]
|
||||
vue.fj_lxShowPicker = false
|
||||
},
|
||||
birthdayConfirm: function (val) {
|
||||
vue.formData.dj_znzsny = moment(val).format('YYYY-MM-DD');
|
||||
vue.birthdayShowPicker = false
|
||||
},
|
||||
getPlaceholder: function (formData, key) {
|
||||
|
||||
if (this.isNull(formData.userid)) {
|
||||
return "输入工资号后自动匹配"
|
||||
} else {
|
||||
if (this.isNull(formData[key])) {
|
||||
return '暂无'
|
||||
}
|
||||
return formData[key]
|
||||
}
|
||||
},
|
||||
doInput: function (val) {
|
||||
vue.$set(vue.formData, 'username', undefined)
|
||||
vue.$set(vue.formData, 'unionname', undefined)
|
||||
vue.$set(vue.formData, 'dj_jzgid', undefined)
|
||||
vue.$set(vue.formData, 'dj_szdw', undefined)
|
||||
vue.$set(vue.formData, 'dj_tbrfgh', undefined)
|
||||
vue.$set(vue.formData, 'dj_gzh', undefined)
|
||||
$.get("/platform/zgfw/mobile/rxdj/queryUserByLoginname", {loginname: val}, function (data) {
|
||||
if (data.code == 0) {
|
||||
if (!vue.isNull(data.data)) {
|
||||
vue.$set(vue.formData, 'dj_jzgid', data.data.id)
|
||||
vue.$set(vue.formData, 'dj_szdw', data.data.unitid)
|
||||
vue.$set(vue.formData, 'dj_tbrfgh', data.data.unioninfomgr_id)
|
||||
vue.$set(vue.formData, 'dj_gzh', data.data.loginname)
|
||||
vue.$set(vue.formData, 'username', data.data.username)
|
||||
vue.$set(vue.formData, 'unionname', data.data.unionname)
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
async getUserInfo() {
|
||||
const {data} = await $.get('/platform/zgfw/mobile/rxdj/getUserInfo')
|
||||
if (data != null) {
|
||||
vue.$set(vue.formData, 'dj_jzgid', data.id)
|
||||
vue.$set(vue.formData, 'dj_szdw', data.unitid)
|
||||
vue.$set(vue.formData, 'dj_tbrfgh', data.unionid)
|
||||
vue.$set(vue.formData, 'dj_gzh', data.loginname)
|
||||
vue.$set(vue.formData, 'username', data.username)
|
||||
vue.$set(vue.formData, 'unionname', data.unionname)
|
||||
vue.$set(vue.formData, 'loginname', data.loginname)
|
||||
} else {
|
||||
vant.Dialog.alert({
|
||||
title: '提示',
|
||||
message: '智慧工会系统没有查询到您的个人信息,请联系校工会老师进行人员数据更新。',
|
||||
}).then(() => {
|
||||
});
|
||||
}
|
||||
}
|
||||
},
|
||||
async created() {
|
||||
GetQueryString("client") == "mobile" ? this.leftArrow = true : this.leftArrow = false
|
||||
await this.getUserInfo()
|
||||
let self = this
|
||||
$.post("/platform/zgfw/mobile/rxdj/getFlag", {'lx': self.formData.dj_djlx}, function (data) {
|
||||
if (data.code != 0) {
|
||||
self.$toast.fail(data.msg)
|
||||
} else {
|
||||
self.subFlag = false
|
||||
}
|
||||
})
|
||||
if (Cookies.get("formData_rk") != undefined) {
|
||||
parseData = JSON.parse(Cookies.get("formData_rk"))
|
||||
parseData.fileList1 = []
|
||||
parseData.fileList2 = []
|
||||
parseData.fileList3 = []
|
||||
parseData.fileList4 = []
|
||||
self.formData = parseData
|
||||
Cookies.remove('formData_rk');
|
||||
}
|
||||
setInterval(function () {
|
||||
var data = Object.assign({}, self.formData);
|
||||
data.fileList1 = []
|
||||
data.fileList2 = []
|
||||
data.fileList3 = []
|
||||
data.fileList4 = []
|
||||
Cookies.set("formData_rk", JSON.stringify(data))
|
||||
}, 1000)
|
||||
}
|
||||
})
|
||||
|
||||
function GetQueryString(name) {
|
||||
const reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
|
||||
const r = window.location.search.substr(1).match(reg);
|
||||
if (r != null) return unescape(r[2]);
|
||||
return "";
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,825 @@
|
||||
<!--#
|
||||
layout("/mobile/platform.html"){
|
||||
#-->
|
||||
<style>
|
||||
[v-clock] {
|
||||
display: none
|
||||
}
|
||||
|
||||
html, body {
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
font-family: PingFang SC, 'Helvetica Neue', Arial, sans-serif;
|
||||
}
|
||||
|
||||
#v-cover {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
bottom: 0;
|
||||
right: 0;
|
||||
margin: auto;
|
||||
z-index: 9999;
|
||||
box-sizing: border-box;
|
||||
/*background-color: rgba(216,191,216,.3);*/
|
||||
background-image: url(//image.wjx.com/images/newimg/mobile-cover/cover3@1x.jpg);
|
||||
background-repeat: no-repeat;
|
||||
background-size: cover;
|
||||
background-color: #1867b0;
|
||||
}
|
||||
|
||||
@keyframes mylogo {
|
||||
from {
|
||||
top: 3px;
|
||||
}
|
||||
to {
|
||||
top: -3px;
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-keyframes mylogo /* Firefox */
|
||||
{
|
||||
from {
|
||||
top: 3px;
|
||||
}
|
||||
to {
|
||||
top: -3px;
|
||||
}
|
||||
}
|
||||
|
||||
@-webkit-keyframes mylogo /* Safari 和 Chrome */
|
||||
{
|
||||
from {
|
||||
top: 3px;
|
||||
}
|
||||
to {
|
||||
top: -3px;
|
||||
}
|
||||
}
|
||||
|
||||
@-o-keyframes mylogo /* Opera */
|
||||
{
|
||||
from {
|
||||
top: 3px;
|
||||
}
|
||||
to {
|
||||
top: -3px;
|
||||
}
|
||||
}
|
||||
|
||||
.start_title {
|
||||
position: relative;
|
||||
font-size: 12px;
|
||||
/*color: rgb(106, 0, 95);*/
|
||||
color: white;
|
||||
animation: mylogo 0.1s linear 0s infinite alternate;
|
||||
/* Firefox: */
|
||||
-moz-animation: mylogo 0.1s linear 0s infinite alternate;
|
||||
/* Safari 和 Chrome: */
|
||||
-webkit-animation: mylogo 0.1s linear 0s infinite alternate;
|
||||
/* Opera: */
|
||||
-o-animation: mylogo 0.1s linear 0s infinite alternate;
|
||||
}
|
||||
|
||||
.start_logo {
|
||||
text-align: center;
|
||||
border-radius: 50%;
|
||||
/*border: rgb(106, 0, 95) 1px solid;*/
|
||||
border: white 1px solid;
|
||||
position: relative;
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
left: 0;
|
||||
right: 0;
|
||||
margin: auto;
|
||||
margin-bottom: 30px;
|
||||
cursor: pointer;
|
||||
box-sizing: border-box;
|
||||
animation: mylogo 0.1s linear 0s infinite alternate;
|
||||
/* Firefox: */
|
||||
-moz-animation: mylogo 0.1s linear 0s infinite alternate;
|
||||
/* Safari 和 Chrome: */
|
||||
-webkit-animation: mylogo 0.1s linear 0s infinite alternate;
|
||||
/* Opera: */
|
||||
-o-animation: mylogo 0.1s linear 0s infinite alternate;
|
||||
}
|
||||
|
||||
.v-cover-title {
|
||||
padding: 30px 20px;
|
||||
box-sizing: border-box;
|
||||
width: 100%;
|
||||
height: 60%;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
margin: auto;
|
||||
}
|
||||
|
||||
.van-doc-demo-block__title {
|
||||
margin: 0;
|
||||
padding: 0 16px;
|
||||
color: #1867b0;
|
||||
font-weight: normal;
|
||||
font-size: 14px;
|
||||
line-height: 16px;
|
||||
}
|
||||
|
||||
.delete-button {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.van-swipe-cell__wrapper {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.van-cell {
|
||||
width: 90%;
|
||||
margin-left: 24px;
|
||||
}
|
||||
|
||||
.van-nav-bar {
|
||||
background-color: RGB(8, 23, 118)
|
||||
}
|
||||
|
||||
.van-nav-bar__title {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.van-nav-bar .van-icon {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
</style>
|
||||
<body>
|
||||
<!--<div id="v-cover" >
|
||||
<div class="v-cover-title">
|
||||
<div style="font-size: 20px;width: 100%;text-align: center;color: white">教职工子女幼升小、小升初入学调查</div>
|
||||
</div>
|
||||
<div style="position: absolute;height: 55px;width: 100%;bottom: 0;left: 0;text-align: center">
|
||||
<div class="start_title" style="height: 16px;line-height: 16px">上滑开始</div>
|
||||
<div class="start_logo">
|
||||
<svg style="height: 40%;width: 100%;margin-top: 30%" t="1583736487548" class="icon" viewBox="0 0 1462 1024"
|
||||
version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3119" width="32" height="32">
|
||||
<path d="M788.187 477.842a80.823 80.823 0 0 0-111.908 0l-484.937 469.65c-21.358 20.773-26.99 50.25-18.652 76.508l494.958-415.451c6.437-5.486 13.75-9.436 21.358-13.02 26.331-16.603 60.708-16.603 86.82 0.146 7.46 3.438 14.629 7.388 20.846 12.727L1291.776 1024a74.533 74.533 0 0 0-18.725-76.654L788.187 477.842z m645.56 165.01L804.132 29.33a104.74 104.74 0 0 0-145.335 0L29.038 642.853C1.17 669.915-5.925 708.535 4.754 742.839l642.56-542.866a121.417 121.417 0 0 1 27.868-16.97 105.106 105.106 0 0 1 112.786 0.366c9.655 4.389 18.87 9.801 27.136 16.604l642.926 542.866a97.134 97.134 0 0 0-24.357-99.986z"
|
||||
p-id="3120" fill="white"></path>
|
||||
</svg>
|
||||
</div>
|
||||
</div>
|
||||
</div>-->
|
||||
<div v-clock id="app" style="width: 100%;height: 100%;position: relative;overflow-y: auto;">
|
||||
<van-nav-bar title="入学登记" fixed placeholder safe-area-inset-top
|
||||
@click-left="history.back()"
|
||||
:left-arrow="leftArrow"></van-nav-bar>
|
||||
<div>
|
||||
<van-image
|
||||
width="100%"
|
||||
height="200px"
|
||||
fit="cover"
|
||||
src="https://zhgh.nju.edu.cn/file_server/assets/school_apply_bg.webp"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<van-form @submit="doSubmit" label-width="120" colon style="margin-top: 10px;" input-align="right">
|
||||
<van-tabs v-model="checked" color="RGB(8,23,118)" type="card">
|
||||
<van-tab name="1" title="基础信息">
|
||||
<van-cell-group>
|
||||
<van-field
|
||||
readonly
|
||||
clickable
|
||||
name="dj_djlx"
|
||||
:value="formData.dj_djlx_str"
|
||||
label="类  型"
|
||||
placeholder="点击选择"
|
||||
@click="dj_djlxShowPicker = true"
|
||||
required
|
||||
:rules="[{ required: true, message: '请选择类型' }]"
|
||||
></van-field>
|
||||
<van-popup v-model="dj_djlxShowPicker" position="bottom">
|
||||
<van-picker show-toolbar
|
||||
:columns="bmlxObj"
|
||||
@confirm="djlxConfirm"
|
||||
@cancel="dj_djlxShowPicker = false"
|
||||
></van-picker>
|
||||
</van-popup>
|
||||
|
||||
|
||||
<div style="width: 100%;padding: 16px 0;">
|
||||
<h2 class="van-doc-demo-block__title" style="font-weight: bolder;color: RGB(8,23,118)">
|
||||
子女信息</h2>
|
||||
</div>
|
||||
<van-field required
|
||||
v-model="formData.dj_znname"
|
||||
name="dj_znname"
|
||||
label="子女姓名"
|
||||
placeholder="子女姓名"
|
||||
:rules="[{ required: true, message: '请填写子女姓名' }]"
|
||||
></van-field>
|
||||
<template v-if="formData.dj_djlx==='3'">
|
||||
|
||||
|
||||
<van-field required
|
||||
v-model="formData.dj_szxx"
|
||||
name="dj_znname"
|
||||
label="所在小学"
|
||||
placeholder="所在小学"
|
||||
></van-field>
|
||||
|
||||
<van-field required
|
||||
v-model="formData.dj_qmkfy"
|
||||
name="dj_qmkfy"
|
||||
label="语文"
|
||||
type="number"
|
||||
placeholder="六上期末考分(语文)"
|
||||
:rules="[{ required: true, message: '请填写语文成绩' }]"
|
||||
></van-field>
|
||||
|
||||
<van-field required
|
||||
v-model="formData.dj_qmkfs"
|
||||
name="dj_qmkfs"
|
||||
label="数学"
|
||||
type="number"
|
||||
placeholder="六上期末考分(数学)"
|
||||
:rules="[{ required: true, message: '请填写数学成绩' }]"
|
||||
></van-field>
|
||||
|
||||
<van-field required
|
||||
v-model="formData.dj_qmkfw"
|
||||
name="dj_qmkfw"
|
||||
label="外语"
|
||||
type="number"
|
||||
placeholder="六上期末考分(外语)"
|
||||
:rules="[{ required: true, message: '请填写外语成绩' }]"
|
||||
></van-field>
|
||||
|
||||
<van-field required
|
||||
v-model="formData.dj_xqzx"
|
||||
name="dj_znname"
|
||||
label="学区中学"
|
||||
placeholder="学区中学"
|
||||
:rules="[{ required: true, message: '学区中学' }]"
|
||||
></van-field>
|
||||
|
||||
<van-field readonly
|
||||
clickable
|
||||
name="dj_djlx"
|
||||
:value="formData.dj_sqxx_name"
|
||||
label="意向学校"
|
||||
placeholder="点击选择"
|
||||
@click="dj_sqxxShowPicker = true"
|
||||
required
|
||||
:rules="[{ required: true, message: '请选择类型' }]"
|
||||
></van-field>
|
||||
<van-popup v-model="dj_sqxxShowPicker" position="bottom">
|
||||
<van-picker
|
||||
show-toolbar
|
||||
:columns="dj_sqxxColumns"
|
||||
@confirm="dj_sqxxConfirm"
|
||||
@cancel="dj_sqxxShowPicker = false"
|
||||
></van-picker>
|
||||
</van-popup>
|
||||
|
||||
</template>
|
||||
|
||||
<template v-if="formData.dj_djlx==='2'">
|
||||
<van-field
|
||||
readonly
|
||||
clickable
|
||||
name="dj_znzsny"
|
||||
:value="formData.dj_znzsny"
|
||||
label="出生日期"
|
||||
placeholder="请选择出生日期"
|
||||
@click="birthdayShowPicker = true"
|
||||
required
|
||||
:rules="[{ required: true, message: '请选择出生日期' }]"
|
||||
></van-field>
|
||||
<van-field
|
||||
required
|
||||
:value="formData.dj_hjssxq"
|
||||
name="dj_hjssxq"
|
||||
label="户籍所属辖区"
|
||||
placeholder="请选择户籍所属辖区"
|
||||
@click="dj_hjssxqShowPicker = true"
|
||||
:rules="[{ required: true, message: '请选择户籍所属辖区' }]"
|
||||
></van-field>
|
||||
<van-popup v-model="dj_hjssxqShowPicker" position="bottom">
|
||||
<van-picker
|
||||
show-toolbar
|
||||
:columns="dj_hjssxqColumns"
|
||||
@confirm="dj_hjssxqConfirm"
|
||||
@cancel="dj_hjssxqShowPicker = false"
|
||||
></van-picker>
|
||||
</van-popup>
|
||||
<van-field
|
||||
required
|
||||
v-model="formData.dj_hjssxx"
|
||||
name="dj_hjszd"
|
||||
label="户籍所属小学"
|
||||
placeholder="户籍所属小学"
|
||||
:rules="[{ required: true, message: '请填写户籍所属小学' }]"
|
||||
></van-field>
|
||||
<van-field
|
||||
required
|
||||
v-model="formData.dj_znhjszd"
|
||||
name="dj_znhjszd"
|
||||
label="子女户籍所在地"
|
||||
placeholder="子女户籍所在地"
|
||||
:rules="[{ required: true, message: '请填写子女户籍所在地' }]"
|
||||
></van-field>
|
||||
</template>
|
||||
|
||||
|
||||
<van-popup v-model="birthdayShowPicker" position="bottom">
|
||||
<van-datetime-picker
|
||||
type="date"
|
||||
:min-date="new Date('2000-01-01')"
|
||||
:max-date="new Date()"
|
||||
@confirm="birthdayConfirm"
|
||||
@cancel="birthdayShowPicker = false"
|
||||
></van-datetime-picker>
|
||||
</van-popup>
|
||||
|
||||
|
||||
<div style="width: 100%;padding: 16px 0;">
|
||||
<h2 class="van-doc-demo-block__title" style="font-weight: bolder;color:RGB(8,23,118)">
|
||||
用户信息</h2>
|
||||
</div>
|
||||
|
||||
<van-field readonly
|
||||
required
|
||||
v-model="formData.loginname"
|
||||
name="loginname"
|
||||
label="工  号"
|
||||
placeholder="工资号"
|
||||
></van-field>
|
||||
<van-field readonly
|
||||
v-model="formData.username"
|
||||
name="username"
|
||||
label="姓  名"
|
||||
></van-field>
|
||||
|
||||
<van-field v-model="formData.dj_zc"
|
||||
type="tel"
|
||||
name="dj_zc"
|
||||
label="技术职称"
|
||||
placeholder="技术职称"
|
||||
></van-field>
|
||||
|
||||
<van-field clickable
|
||||
name="dj_zcsj"
|
||||
:value="formData.dj_zcsj"
|
||||
label="职称评定时间"
|
||||
placeholder="职称评定时间"
|
||||
@click="dj_zcsjShowPicker = true"
|
||||
></van-field>
|
||||
<van-popup v-model="dj_zcsjShowPicker" position="bottom">
|
||||
<van-datetime-picker
|
||||
type="year-month"
|
||||
:min-date="new Date('1952-10')"
|
||||
:max-date="maxYearMonth"
|
||||
@confirm="dj_zcsjConfirm"
|
||||
@cancel="dj_zcsjShowPicker = false"
|
||||
></van-datetime-picker>
|
||||
</van-popup>
|
||||
|
||||
<van-field :value="formData.dj_zw"
|
||||
name="dj_zw"
|
||||
label="行政职务级别"
|
||||
placeholder="请选择行政职务级别"
|
||||
@click="dj_zwShowPicker = true"
|
||||
></van-field>
|
||||
<van-popup v-model="dj_zwShowPicker" position="bottom">
|
||||
<van-picker
|
||||
show-toolbar
|
||||
:columns="dj_zwColumns"
|
||||
@confirm="dj_zwConfirm"
|
||||
@cancel="dj_zwShowPicker = false"
|
||||
></van-picker>
|
||||
</van-popup>
|
||||
|
||||
<van-field :value="formData.dj_rzsj"
|
||||
label="行政职级任职时间"
|
||||
placeholder="请选择行政职级任职时间"
|
||||
@click="dj_rzsjShowPicker = true"
|
||||
></van-field>
|
||||
<van-popup v-model="dj_rzsjShowPicker" position="bottom">
|
||||
<van-datetime-picker
|
||||
type="year-month"
|
||||
:min-date="new Date('1952-10')"
|
||||
:max-date="maxYearMonth"
|
||||
@confirm="dj_rzsjConfirm"
|
||||
@cancel="dj_rzsjShowPicker = false"
|
||||
></van-datetime-picker>
|
||||
</van-popup>
|
||||
|
||||
|
||||
<van-field v-model="formData.dj_rcch"
|
||||
name="dj_rcch"
|
||||
label="省级人才称号"
|
||||
placeholder="人才称号"
|
||||
></van-field>
|
||||
|
||||
<van-field clickable
|
||||
name="dj_rcchsj"
|
||||
:value="formData.dj_rcchsj"
|
||||
label="获人才称号时间"
|
||||
placeholder="请选择获人才称号时间"
|
||||
@click="dj_rcchsjShowPicker = true"
|
||||
></van-field>
|
||||
<van-popup v-model="dj_rcchsjShowPicker" position="bottom">
|
||||
<van-datetime-picker
|
||||
type="year-month"
|
||||
:min-date="new Date('1952-10')"
|
||||
:max-date="maxYearMonth"
|
||||
@confirm="dj_rcchsjConfirm"
|
||||
@cancel="dj_rcchsjShowPicker = false"
|
||||
></van-datetime-picker>
|
||||
</van-popup>
|
||||
|
||||
<van-field v-if="formData.dj_djlx==='3'"
|
||||
v-model="formData.dj_rxjx"
|
||||
name="dj_rxjx"
|
||||
label="荣誉或奖项"
|
||||
placeholder="荣誉或奖项(只填写最高的一项)"
|
||||
></van-field>
|
||||
|
||||
<van-field
|
||||
required
|
||||
v-model="formData.dj_iphone"
|
||||
type="tel"
|
||||
name="dj_iphone"
|
||||
label="手机号码"
|
||||
placeholder="手机号码"
|
||||
:rules="[{ required: true, message: '请填写手机号码' }]"
|
||||
></van-field>
|
||||
|
||||
<van-field
|
||||
required
|
||||
v-model="formData.dj_szdw"
|
||||
name="dj_szdw"
|
||||
label="所在单位"
|
||||
placeholder="所在单位"
|
||||
></van-field>
|
||||
|
||||
|
||||
<template v-if="formData.dj_djlx==='2'">
|
||||
|
||||
|
||||
<van-field
|
||||
required
|
||||
v-model="formData.dj_hjszd"
|
||||
name="dj_hjszd"
|
||||
label="教职工户籍所在地"
|
||||
placeholder="教职工户籍所在地"
|
||||
rows="2"
|
||||
type="textarea"
|
||||
:rules="[{ required: true, message: '请填写教职工户籍所在地' }]"
|
||||
></van-field>
|
||||
|
||||
<van-field
|
||||
required
|
||||
v-model="formData.dj_jtzz"
|
||||
name="dj_jtzz"
|
||||
label="房产证地址"
|
||||
rows="2"
|
||||
type="textarea"
|
||||
placeholder="房产证地址"
|
||||
:rules="[{ required: true, message: '请填写房产证地址' }]"
|
||||
></van-field>
|
||||
|
||||
|
||||
</template>
|
||||
|
||||
|
||||
<van-field
|
||||
v-model="formData.dj_bz"
|
||||
name="dj_bz"
|
||||
label="备  注"
|
||||
rows="2"
|
||||
autosize
|
||||
type="textarea"
|
||||
placeholder="请输入备注"
|
||||
></van-field>
|
||||
</van-cell-group>
|
||||
</van-tab>
|
||||
<van-tab name="2" title="材料信息">
|
||||
<van-cell-group style="margin-top: 20px">
|
||||
<template v-if="formData.dj_djlx==='2'">
|
||||
<van-field label="户口簿照片" required label-width="250" disabled
|
||||
style="border: none;"></van-field>
|
||||
<van-field>
|
||||
<template #input>
|
||||
<vant-file-upload :files.sync="hkfile"></vant-file-upload>
|
||||
</template>
|
||||
</van-field>
|
||||
|
||||
<van-field label="房产证或无房证明" required label-width="250" disabled
|
||||
style="border: none;"></van-field>
|
||||
<van-field>
|
||||
<template #input>
|
||||
<vant-file-upload :files.sync="fcfile"></vant-file-upload>
|
||||
</template>
|
||||
</van-field>
|
||||
</template>
|
||||
<template v-if="formData.dj_djlx==='3'">
|
||||
<van-field label="六上期末考分证明" required label-width="250" disabled
|
||||
style="border: none;"></van-field>
|
||||
<van-field>
|
||||
<template #input>
|
||||
<vant-file-upload :files.sync="qmkffile"></vant-file-upload>
|
||||
</template>
|
||||
</van-field>
|
||||
</template>
|
||||
</van-cell-group>
|
||||
</van-tab>
|
||||
|
||||
<div style="margin: 16px;">
|
||||
<van-button round block color="RGB(8,23,118)" type="info" native-type="submit">
|
||||
提交
|
||||
</van-button>
|
||||
</div>
|
||||
</van-tabs>
|
||||
</van-form>
|
||||
|
||||
|
||||
<van-number-keyboard safe-area-inset-bottom/>
|
||||
</div>
|
||||
<script>
|
||||
|
||||
var startX, startY, moveEndX, moveEndY, X, Y;
|
||||
|
||||
$("#v-cover").on("touchstart", function (e) {
|
||||
|
||||
e.preventDefault();
|
||||
|
||||
startX = e.originalEvent.changedTouches[0].pageX,
|
||||
|
||||
startY = e.originalEvent.changedTouches[0].pageY;
|
||||
|
||||
});
|
||||
|
||||
$("#v-cover").on("touchmove", function (e) {
|
||||
$(".start_logo").click(function () {
|
||||
$("#v-cover").animate({"bottom": '200%'}, "slow");
|
||||
})
|
||||
e.preventDefault();
|
||||
moveEndX = e.originalEvent.changedTouches[0].pageX
|
||||
moveEndY = e.originalEvent.changedTouches[0].pageY
|
||||
X = moveEndX - startX
|
||||
Y = moveEndY - startY
|
||||
if (Math.abs(X) > Math.abs(Y) && X > 0) {
|
||||
// alert("像右滑动");
|
||||
} else if (Math.abs(X) > Math.abs(Y) && X < 0) {
|
||||
// alert("像左滑动");
|
||||
} else if (Math.abs(Y) > Math.abs(X) && Y > 0) {
|
||||
// alert("下滑动");
|
||||
} else if (Math.abs(Y) > Math.abs(X) && Y < -100) {
|
||||
$("#v-cover").animate({"bottom": '200%'}, "slow");
|
||||
} else {
|
||||
// alert("触摸");
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
$(".start_logo").click(function () {
|
||||
$("#v-cover").animate({"bottom": '200%'}, "slow");
|
||||
})
|
||||
$("#v-cover").click(function () {
|
||||
$("#v-cover").animate({"bottom": '200%'}, "slow");
|
||||
})
|
||||
|
||||
|
||||
const vue = new Vue({
|
||||
el: "#app",
|
||||
data() {
|
||||
return {
|
||||
maxYearMonth: new Date(moment().format('YYYY-MM')),
|
||||
leftArrow: false,
|
||||
bmlxObj: [],
|
||||
dj_sqxxColumns: [
|
||||
{text: "南京郑和外国语学校(A)", value: "A"},
|
||||
{text: "南京航空航天大学附属初级中学(B)", value: "B"},
|
||||
{text: "南京市第五初级中学(C)", value: "C"}],
|
||||
dj_zwColumns: ['无', '副科级', '正科级', '副处级', '正处级'],
|
||||
dj_hjssxqColumns: ['南京市秦淮区', '南京市其它区', '南京市以外'],
|
||||
dj_sqxxShowPicker: false,
|
||||
dj_rylxShowPicker: false,
|
||||
birthdayShowPicker: false,
|
||||
dj_rzsjShowPicker: false,
|
||||
dj_zcsjShowPicker: false,
|
||||
dj_rcchsjShowPicker: false,
|
||||
dj_djlxShowPicker: false,
|
||||
dj_zwShowPicker: false,
|
||||
dj_hjssxqShowPicker: false,
|
||||
fileIdx: '',
|
||||
checked: 1,
|
||||
hkfile: [],
|
||||
fcfile: [],
|
||||
qmkffile: [],
|
||||
formData: {},
|
||||
isNull: function (val) {
|
||||
if (val == null || val == undefined || val == '') {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
},
|
||||
showMsg: false,
|
||||
msg: '',
|
||||
}
|
||||
},
|
||||
components: {
|
||||
'vant-file-upload': httpVueLoader('/components/plugins/VantFileUpload.vue')
|
||||
},
|
||||
methods: {
|
||||
dj_hjssxqConfirm(val) {
|
||||
this.formData.dj_hjssxq = val
|
||||
this.dj_hjssxqShowPicker = false
|
||||
},
|
||||
dj_zwConfirm(val) {
|
||||
this.formData.dj_zw = val
|
||||
this.dj_zwShowPicker = false
|
||||
},
|
||||
dj_sqxxConfirm(val) {
|
||||
this.formData.dj_sqxx = val.value
|
||||
this.formData.dj_sqxx_name = val.text
|
||||
this.dj_sqxxShowPicker = false
|
||||
},
|
||||
djlxConfirm(val) {
|
||||
this.formData.dj_djlx = val.value
|
||||
this.formData.dj_djlx_str = val.text
|
||||
this.dj_djlxShowPicker = false
|
||||
},
|
||||
async doSubmit() {
|
||||
if (this.hkfile.length === 0 && this.formData.dj_djlx === "2") {
|
||||
this.$toast.fail("请上传户口簿照片!")
|
||||
setTimeout(() => {
|
||||
this.checked = "2"
|
||||
}, 1500)
|
||||
return
|
||||
}
|
||||
if (this.fcfile.length === 0 && this.formData.dj_djlx === "2") {
|
||||
this.$toast.fail("请上传房产证或无房证明 !")
|
||||
setTimeout(() => {
|
||||
this.checked = "2"
|
||||
}, 1500)
|
||||
return
|
||||
}
|
||||
if (this.qmkffile.length === 0 && this.formData.dj_djlx === "3") {
|
||||
this.$toast.fail("请上传六上期末考分证明!")
|
||||
setTimeout(() => {
|
||||
this.checked = "2"
|
||||
}, 1000)
|
||||
return
|
||||
}
|
||||
const confirm = await this.$dialog.confirm({
|
||||
title: '提醒',
|
||||
message: '提交前,请您再次核对“基础信息”和“材料信息”,确保填写完整并准确无误。是否确认提交?'
|
||||
})
|
||||
if (confirm === "confirm") {
|
||||
|
||||
|
||||
if (this.formData.dj_djlx === "2") {
|
||||
this.hkfile.map(v => {
|
||||
v.bz = "hkfile"
|
||||
})
|
||||
this.fcfile.map(v => {
|
||||
v.bz = "fcfile"
|
||||
})
|
||||
} else {
|
||||
this.qmkffile.map(v => {
|
||||
v.bz = "qmkffile"
|
||||
})
|
||||
}
|
||||
|
||||
const toast = vue.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true,
|
||||
message: '数据提交中...'
|
||||
})
|
||||
const a = this.formData.dj_id ? "/doEdit" : "/doSubmit"
|
||||
const data = await $.post("/platform/zgfw/mobile/rxdj" + a, {
|
||||
data: JSON.stringify(this.formData),
|
||||
hkfile: JSON.stringify(this.hkfile),
|
||||
fcfile: JSON.stringify(this.fcfile),
|
||||
qmkffile: JSON.stringify(this.qmkffile)
|
||||
})
|
||||
|
||||
if (data.code === 0) {
|
||||
setTimeout(() => {
|
||||
this.$toast.clear();
|
||||
this.$toast.success('提交成功!')
|
||||
window.history.back()
|
||||
}, 200)
|
||||
} else {
|
||||
this.$toast.clear();
|
||||
this.$toast.fail(data.msg)
|
||||
}
|
||||
}
|
||||
},
|
||||
dj_rcchsjConfirm(val) {
|
||||
this.formData.dj_rcchsj = moment(val).format('YYYY-MM');
|
||||
this.dj_rcchsjShowPicker = false
|
||||
},
|
||||
dj_zcsjConfirm(val) {
|
||||
this.formData.dj_zcsj = moment(val).format('YYYY-MM');
|
||||
this.dj_zcsjShowPicker = false
|
||||
},
|
||||
dj_rzsjConfirm(val) {
|
||||
this.formData.dj_rzsj = moment(val).format('YYYY-MM');
|
||||
this.dj_rzsjShowPicker = false
|
||||
},
|
||||
birthdayConfirm(val) {
|
||||
this.formData.dj_znzsny = moment(val).format('YYYY-MM');
|
||||
this.birthdayShowPicker = false
|
||||
},
|
||||
getPlaceholder: function (formData, key) {
|
||||
if (this.isNull(formData.userid)) {
|
||||
return "输入工资号后自动匹配"
|
||||
} else {
|
||||
if (this.isNull(formData[key])) {
|
||||
return '暂无'
|
||||
}
|
||||
return formData[key]
|
||||
}
|
||||
},
|
||||
async getUserInfo() {
|
||||
const {data} = await $.get('/platform/zgfw/mobile/rxdj/getUserInfo')
|
||||
if (data != null) {
|
||||
this.$set(this.formData, 'dj_jzgid', data.id)
|
||||
this.$set(this.formData, 'dj_szdw', data.unitname)
|
||||
this.$set(this.formData, 'dj_tbrfgh', data.unionid)
|
||||
this.$set(this.formData, 'dj_gzh', data.loginname)
|
||||
this.$set(this.formData, 'username', data.username)
|
||||
this.$set(this.formData, 'unionname', data.unionname)
|
||||
this.$set(this.formData, 'loginname', data.loginname)
|
||||
this.$set(this.formData, 'dj_zc', data.jobTitle)
|
||||
// this.$set(this.formData, 'dj_zw', data.position)
|
||||
this.$set(this.formData, 'dj_iphone', data.mobile)
|
||||
} else {
|
||||
vant.Dialog.alert({
|
||||
title: '提示',
|
||||
message: '智慧工会系统没有查询到您的个人信息,请联系校工会老师进行人员数据更新。',
|
||||
}).then(() => {
|
||||
});
|
||||
}
|
||||
},
|
||||
getPlanStatus(dj_djlx) {
|
||||
$.post("/platform/zgfw/rxdjsq/planStatus").then(res => {
|
||||
if (res.xx > 0 && dj_djlx === "2") {
|
||||
this.bmlxObj.push({text: "幼升小", value: "2"})
|
||||
|
||||
}
|
||||
if (res.cz > 0 && dj_djlx === "3") {
|
||||
this.bmlxObj.push({text: "小升初", value: "3"})
|
||||
}
|
||||
if (this.bmlxObj && this.bmlxObj.length > 0) {
|
||||
this.formData.dj_djlx = this.bmlxObj[0].value
|
||||
this.formData.dj_djlx_str = this.bmlxObj[0].text
|
||||
}
|
||||
})
|
||||
},
|
||||
async getFile(dj_id) {
|
||||
const {data} = await $.get('/platform/zgfw/rxdjxx/findOne', {id: dj_id})
|
||||
this.hkfile = []
|
||||
this.fcfile = []
|
||||
this.qmkffile = []
|
||||
if (data.fjs && data.fjs.length > 0) {
|
||||
const hkfile = data.fjs.filter(v => v.bz === "hkfile")
|
||||
const fcfile = data.fjs.filter(v => v.bz === "fcfile")
|
||||
const qmkffile = data.fjs.filter(v => v.bz === "qmkffile")
|
||||
this.hkfile = hkfile
|
||||
this.fcfile = fcfile
|
||||
this.qmkffile = qmkffile
|
||||
}
|
||||
},
|
||||
async findOne(dj_id) {
|
||||
const {data} = await $.get("/platform/zgfw/mobile/rxdj/audit/findOne", {dj_id: dj_id})
|
||||
data.username = "${@shiro.getPrincipalProperty('username')}"
|
||||
data.loginname = "${@shiro.getPrincipalProperty('loginname')}"
|
||||
|
||||
this.formData = data
|
||||
}
|
||||
|
||||
},
|
||||
async created() {
|
||||
GetQueryString("client") == "mobile" ? this.leftArrow = true : this.leftArrow = false
|
||||
const dj_id = GetQueryString("dj_id")
|
||||
const dj_djlx = GetQueryString("dj_djlx")
|
||||
if (dj_id) {
|
||||
this.findOne(dj_id)
|
||||
this.getFile(dj_id)
|
||||
} else {
|
||||
await this.getUserInfo()
|
||||
}
|
||||
this.getPlanStatus(dj_djlx)
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
</script>
|
||||
<!--#
|
||||
}
|
||||
#-->
|
||||
Reference in New Issue
Block a user