first commit
This commit is contained in:
@@ -0,0 +1,711 @@
|
||||
<!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.js"></script>
|
||||
<script src="https://cdn.staticfile.org/jquery/2.2.4/jquery.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="/assets/mobile/img/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_znsex"
|
||||
:value="formData.dj_znsex"
|
||||
label="性别"
|
||||
placeholder="性别"
|
||||
@click="dj_znsexShowPicker = true"
|
||||
required
|
||||
:rules="[{ required: true, message: '请选择性别' }]"
|
||||
></van-field>
|
||||
<van-popup v-model="dj_znsexShowPicker" position="bottom">
|
||||
<van-picker
|
||||
show-toolbar
|
||||
:columns="sexArr"
|
||||
@confirm="function(val){formData.dj_znsex=val;dj_znsexShowPicker=false}"
|
||||
@cancel="dj_znsexShowPicker = false"
|
||||
></van-picker>
|
||||
</van-popup>
|
||||
<!-- <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
|
||||
required
|
||||
name="dj_znidcard"
|
||||
v-model="formData.dj_znidcard"
|
||||
label="身份证号"
|
||||
placeholder="身份证号"
|
||||
:rules="[{ required: true, message: '请填写子女身份证号' }]"
|
||||
></van-field>
|
||||
<van-field
|
||||
name="dj_jdxx"
|
||||
v-model="formData.dj_znidcard"
|
||||
label="就读学校"
|
||||
placeholder="就读学校"
|
||||
></van-field>
|
||||
<van-field
|
||||
name="dj_jdxx"
|
||||
v-model="formData.dj_znidcard"
|
||||
label="子女户口所在地"
|
||||
placeholder="子女户口所在地"
|
||||
></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.staticfile.org/js-cookie/2.2.1/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,753 @@
|
||||
<!--#
|
||||
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;
|
||||
}
|
||||
|
||||
|
||||
</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.go(-1)"
|
||||
:left-arrow="leftArrow"></van-nav-bar>
|
||||
<div>
|
||||
<van-image
|
||||
width="100%"
|
||||
height="200px"
|
||||
fit="cover"
|
||||
src="/assets/mobile/img/school_apply_bg.webp"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<van-form label-width="120" colon style="margin-top: 10px;"
|
||||
input-align="right" ref="form">
|
||||
<van-tabs v-model="checked" color="#004e64" 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: #004e64">
|
||||
子女信息</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_znsex"
|
||||
:value="formData.dj_znsex"
|
||||
label="性别"
|
||||
placeholder="性别"
|
||||
@click="dj_znsexShowPicker = true"
|
||||
required
|
||||
:rules="[{ required: true, message: '请选择性别' }]"
|
||||
></van-field>
|
||||
<van-popup v-model="dj_znsexShowPicker" position="bottom">
|
||||
<van-picker
|
||||
show-toolbar
|
||||
:columns="sexArr"
|
||||
@confirm="function(val){formData.dj_znsex=val;dj_znsexShowPicker=false}"
|
||||
@cancel="dj_znsexShowPicker = false"
|
||||
></van-picker>
|
||||
</van-popup>
|
||||
<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-1-1')"
|
||||
:max-date="new Date(nlxz)"
|
||||
@confirm="birthdayConfirm"
|
||||
@cancel="birthdayShowPicker = false"
|
||||
></van-datetime-picker>
|
||||
</van-popup>
|
||||
|
||||
|
||||
<van-field
|
||||
required
|
||||
name="dj_znidcard"
|
||||
v-model="formData.dj_znidcard"
|
||||
label="身份证号"
|
||||
placeholder="身份证号"
|
||||
:rules="[{ required: true, message: '请填写子女身份证号' }]"
|
||||
></van-field>
|
||||
<van-field
|
||||
required
|
||||
name="dj_jdxx"
|
||||
v-model="formData.dj_jdxx"
|
||||
label="正读学校"
|
||||
:rules="[{ required: true, message: '请填写正读学校' }]"
|
||||
placeholder="正读学校"
|
||||
></van-field>
|
||||
<van-field
|
||||
required
|
||||
name="dj_hjszd"
|
||||
v-model="formData.dj_hjszd"
|
||||
label="户籍所在地"
|
||||
:rules="[{ required: true, message: '请填写户籍所在地' }]"
|
||||
placeholder="户籍所在地"
|
||||
></van-field>
|
||||
|
||||
<van-field
|
||||
required
|
||||
readonly
|
||||
v-model="formData.dj_sqxx"
|
||||
name="dj_sqxx"
|
||||
label="拟选学校"
|
||||
@click="sqxxShow = true"
|
||||
placeholder="拟选学校"
|
||||
></van-field>
|
||||
<van-action-sheet v-model="sqxxShow" :actions="sqxxActions"
|
||||
@select="(val)=>{$set(formData,'dj_sqxx',val.name);sqxxShow=false}"></van-action-sheet>
|
||||
|
||||
|
||||
<!--
|
||||
<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-cell-group>
|
||||
|
||||
<div style="width: 100%;padding: 16px 0;">
|
||||
<h2 class="van-doc-demo-block__title"
|
||||
style="font-weight: bolder;color: #004e64">
|
||||
教职工信息</h2>
|
||||
</div>
|
||||
<van-cell-group>
|
||||
<van-field readonly
|
||||
|
||||
v-model="formData.loginname"
|
||||
name="loginname"
|
||||
label="工  号"
|
||||
placeholder="工资号"
|
||||
></van-field>
|
||||
<van-field readonly
|
||||
v-model="formData.username"
|
||||
name="username"
|
||||
label="姓  名"
|
||||
></van-field>
|
||||
|
||||
<template>
|
||||
<van-field
|
||||
required
|
||||
v-model="formData.dj_zw"
|
||||
name="dj_zw"
|
||||
label="职务、职称"
|
||||
:rules="[{ required: true, message: '请填写职务、职称' }]"
|
||||
placeholder="职务、职称"
|
||||
></van-field>
|
||||
<!-- <van-field
|
||||
required
|
||||
:value="formData.dj_rxsj"
|
||||
label="工作单位起始时间"
|
||||
placeholder="请选择工作单位起始时间"
|
||||
:rules="[{ required: true, message: '请选择工作单位起始时间' }]"
|
||||
@click="dj_rxsjShowPicker = true"
|
||||
></van-field>
|
||||
<van-popup v-model="dj_rxsjShowPicker" position="bottom">
|
||||
<van-datetime-picker
|
||||
type="year-month"
|
||||
cancel-button-text="取消选择"
|
||||
:min-date="new Date('1952-10')"
|
||||
:max-date="maxYearMonth"
|
||||
@confirm="dj_rxsjConfirm"
|
||||
@cancel="dj_rxsjCancel"
|
||||
></van-datetime-picker>
|
||||
</van-popup>-->
|
||||
</template>
|
||||
|
||||
|
||||
<van-field
|
||||
required
|
||||
v-model="formData.dj_iphone"
|
||||
name="dj_iphone"
|
||||
label="手机号码"
|
||||
placeholder="手机号码"
|
||||
:rules="[{ required: true, message: '请填写手机号码' }]"
|
||||
></van-field>
|
||||
<van-field
|
||||
readonly
|
||||
v-model="formData.dj_szdw"
|
||||
name="dj_szdw"
|
||||
label="所在单位"
|
||||
placeholder="所在单位"
|
||||
></van-field>
|
||||
<van-field
|
||||
required
|
||||
readonly
|
||||
v-model="formData.dj_ygfs"
|
||||
name="dj_ygfs"
|
||||
label="用工方式"
|
||||
@click="ygfsShow = true"
|
||||
placeholder="用工方式"
|
||||
></van-field>
|
||||
<van-action-sheet v-model="ygfsShow" :actions="ygfsActions"
|
||||
@select="(val)=>{$set(formData,'dj_ygfs',val.name);ygfsShow=false}"></van-action-sheet>
|
||||
|
||||
|
||||
<!-- <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
|
||||
v-model="formData.dj_bz"
|
||||
name="dj_wxqyy"
|
||||
label="备  注"
|
||||
rows="2"
|
||||
autosize
|
||||
type="textarea"
|
||||
placeholder="请输入备注"
|
||||
></van-field>
|
||||
|
||||
<van-field label="户口簿照片" label-width="300"
|
||||
required></van-field>
|
||||
<van-field>
|
||||
<template #input>
|
||||
<vant-file-upload :files.sync="hkfile"></vant-file-upload>
|
||||
</template>
|
||||
</van-field>
|
||||
|
||||
<van-field required
|
||||
label="子女出生证图片"
|
||||
label-width="300"
|
||||
></van-field>
|
||||
<van-field>
|
||||
<template #input>
|
||||
<vant-file-upload :files.sync="csfile"></vant-file-upload>
|
||||
</template>
|
||||
</van-field>
|
||||
|
||||
<van-field required
|
||||
label="学历学位证或教师资格证"
|
||||
label-width="300"
|
||||
></van-field>
|
||||
<van-field>
|
||||
<template #input>
|
||||
<vant-file-upload :files.sync="jszgfile"></vant-file-upload>
|
||||
</template>
|
||||
</van-field>
|
||||
|
||||
<van-field required
|
||||
label="聘用合同复印件"
|
||||
label-width="300"
|
||||
></van-field>
|
||||
<van-field>
|
||||
<template #input>
|
||||
<vant-file-upload :files.sync="pyhtfile"></vant-file-upload>
|
||||
</template>
|
||||
</van-field>
|
||||
</van-cell-group>
|
||||
</van-tab>
|
||||
|
||||
|
||||
<div style="margin: 16px;">
|
||||
<van-row gutter="20">
|
||||
<van-col span="12">
|
||||
<van-button round block plain color="#004e64" type="info"
|
||||
native-type="submit" @click="doSubmit(false)">
|
||||
保存
|
||||
</van-button>
|
||||
</van-col>
|
||||
<van-col span="12">
|
||||
<van-button round block color="#004e64" type="info"
|
||||
native-type="submit" @click="doSubmit(true)">
|
||||
提交
|
||||
</van-button>
|
||||
</van-col>
|
||||
</van-row>
|
||||
|
||||
|
||||
</div>
|
||||
</van-tabs>
|
||||
</van-form>
|
||||
</div>
|
||||
<script>
|
||||
|
||||
|
||||
var vue = new Vue({
|
||||
el: "#app",
|
||||
data() {
|
||||
return {
|
||||
sqxxShow: false,
|
||||
sqxxActions: [],
|
||||
planList: [],
|
||||
dj_jzgzngxShowPicker: false,
|
||||
dj_rxsjShowPicker: false,
|
||||
dj_znsexShowPicker: false,
|
||||
ygfsShow: false,
|
||||
ygfsActions: [{name: '老体制'}, {name: '人事代理'}, {name: '年薪制'}, {name: '二级单位自聘'}],
|
||||
sexArr: ['男', '女'],
|
||||
fzgxArr: ['父子', '父女', '母子', '母女'],
|
||||
maxYearMonth: new Date(moment().format('YYYY-MM')),
|
||||
leftArrow: false,
|
||||
bmlxObj: [],
|
||||
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,
|
||||
csfile: [],
|
||||
hkfile: [],
|
||||
fcfile: [],
|
||||
qmkffile: [],
|
||||
pyhtfile: [],
|
||||
jszgfile: [],
|
||||
formData: {},
|
||||
isNull: function (val) {
|
||||
if (val == null || val == undefined || val == '') {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
},
|
||||
showMsg: false,
|
||||
msg: '',
|
||||
nlxz: '',
|
||||
}
|
||||
},
|
||||
components: {
|
||||
'vant-file-upload': httpVueLoader('/components/plugins/VantFileUpload.vue')
|
||||
},
|
||||
methods: {
|
||||
dj_rxsjConfirm(val) {
|
||||
this.formData.dj_rxsj = moment(val).format('YYYY-MM');
|
||||
this.dj_rxsjShowPicker = false
|
||||
},
|
||||
dj_rxsjCancel() {
|
||||
this.formData.dj_rxsj = "";
|
||||
this.dj_rxsjShowPicker = false
|
||||
},
|
||||
dj_rcchsjCancel() {
|
||||
this.formData.dj_rcchsj = "";
|
||||
this.dj_rcchsjShowPicker = false
|
||||
},
|
||||
dj_rzsjCancel() {
|
||||
this.formData.dj_rzsj = "";
|
||||
this.dj_rzsjShowPicker = false
|
||||
},
|
||||
dj_zcsjCancel() {
|
||||
this.formData.dj_zcsj = "";
|
||||
this.dj_zcsjShowPicker = false
|
||||
},
|
||||
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(flag) {
|
||||
if (flag) {
|
||||
await this.$refs.form.validate();
|
||||
}
|
||||
if (this.hkfile.length === 0 && flag) {
|
||||
this.$toast.fail("请上传户口簿照片!")
|
||||
return
|
||||
}
|
||||
if (this.csfile.length === 0 && flag) {
|
||||
this.$toast.fail("请上传子女出生证图片!")
|
||||
return
|
||||
}
|
||||
if (this.jszgfile.length === 0 && flag) {
|
||||
this.$toast.fail("请上传教职工学历学位证或教师资格证!")
|
||||
return
|
||||
}
|
||||
if (this.pyhtfile.length === 0 && flag) {
|
||||
this.$toast.fail("请上传聘用合同复印件!")
|
||||
return
|
||||
}
|
||||
let confirm = ""
|
||||
const {data} = await $.get("/platform/zgfw/rxdjsq/hasDJ", this.formData)
|
||||
|
||||
if (data && data.count >= 1 && !this.formData.dj_id) {
|
||||
this.formData.dj_djlx_str = this.formData.dj_djlx_str ? this.formData.dj_djlx_str : this.bmlxObj[0].text
|
||||
confirm = await this.$dialog.confirm({
|
||||
title: '确定要提交【' + this.formData.dj_djlx_str + "】的入学登记吗?",
|
||||
message: '该子女已经提交是否继续,如继续则覆盖上一次提交的内容!'
|
||||
})
|
||||
this.formData.dj_id = data.dj_id
|
||||
} else {
|
||||
confirm = await this.$dialog.confirm({
|
||||
title: '确定要提交【' + this.formData.dj_djlx_str + "】的入学登记吗?",
|
||||
message: flag ? '提交前,请您再次核对“基础信息”和“材料信息”,确保填写完整并准确无误。是否确认提交?' : '保存后如需提交,请前往我的登记修改后在提交'
|
||||
})
|
||||
}
|
||||
if (confirm === "confirm") {
|
||||
this.hkfile.map(v => {
|
||||
v.bz = "hkfile"
|
||||
})
|
||||
this.csfile.map(v => {
|
||||
v.bz = "csfile"
|
||||
})
|
||||
this.jszgfile.map(v => {
|
||||
v.bz = "jszgfile"
|
||||
})
|
||||
this.pyhtfile.map(v => {
|
||||
v.bz = "pyhtfile"
|
||||
})
|
||||
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, {
|
||||
flag: flag,
|
||||
data: JSON.stringify(this.formData),
|
||||
csfile: JSON.stringify(this.csfile),
|
||||
hkfile: JSON.stringify(this.hkfile),
|
||||
jszgfile: JSON.stringify(this.jszgfile),
|
||||
pyhtfile: JSON.stringify(this.pyhtfile)
|
||||
})
|
||||
|
||||
if (data.code === 0) {
|
||||
this.$toast.success('提交成功!')
|
||||
setTimeout(() => {
|
||||
this.$toast.clear();
|
||||
history.go(-1)
|
||||
}, 2000)
|
||||
} 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-DD');
|
||||
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.position)
|
||||
// this.$set(this.formData, 'dj_zw', data.position)
|
||||
this.$set(this.formData, 'dj_iphone', data.mobile)
|
||||
} else {
|
||||
vant.Dialog.alert({
|
||||
title: '提示',
|
||||
message: '智慧工会系统没有查询到您的个人信息,请联系校工会老师进行人员数据更新。',
|
||||
}).then(() => {
|
||||
});
|
||||
}
|
||||
},
|
||||
async getPlanStatus(dj_djlx) {
|
||||
const res = await $.post("/platform/zgfw/rxdjsq/planStatus")
|
||||
if ((res.yey > 0 || this.formData.dj_id) && dj_djlx === "1") {
|
||||
this.bmlxObj.push({text: "幼升小", value: 1})
|
||||
}
|
||||
if ((res.xx > 0 || this.formData.dj_id) && dj_djlx === "2") {
|
||||
this.bmlxObj.push({text: "小学", value: 2})
|
||||
}
|
||||
if ((res.cz > 0 || this.formData.dj_id) && 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
|
||||
}
|
||||
this.nlxz = this.planList.find(v => v.bmlx === this.formData.dj_djlx).nlxz
|
||||
},
|
||||
async getPlanByThisYear() {
|
||||
const res = await $.post("/platform/zgfw/rxdj/plan/getPlanByThisYear")
|
||||
this.planList = res.data
|
||||
},
|
||||
async getFile(dj_id) {
|
||||
const {data} = await $.get('/platform/zgfw/rxdjxx/findOne', {id: dj_id})
|
||||
this.csfile = []
|
||||
this.hkfile = []
|
||||
this.fcfile = []
|
||||
this.qmkffile = []
|
||||
if (data.fjs && data.fjs.length > 0) {
|
||||
const csfile = data.fjs.filter(v => v.bz === "csfile")
|
||||
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")
|
||||
const jszgfile = data.fjs.filter(v => v.bz === "jszgfile")
|
||||
const pyhtfile = data.fjs.filter(v => v.bz === "pyhtfile")
|
||||
this.csfile = csfile
|
||||
this.hkfile = hkfile
|
||||
this.fcfile = fcfile
|
||||
this.qmkffile = qmkffile
|
||||
this.jszgfile = jszgfile
|
||||
this.pyhtfile = pyhtfile
|
||||
}
|
||||
},
|
||||
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() {
|
||||
await this.getPlanByThisYear()
|
||||
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()
|
||||
}
|
||||
await this.getPlanStatus(dj_djlx)
|
||||
getDictByCode('rxdj_xxmc').then(res => {
|
||||
this.sqxxActions = res
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
</script>
|
||||
<!--#
|
||||
}
|
||||
#-->
|
||||
Reference in New Issue
Block a user