first commit

This commit is contained in:
2026-09-08 19:49:21 +08:00
commit ebffbab428
7320 changed files with 1477614 additions and 0 deletions
+215
View File
@@ -0,0 +1,215 @@
<!--#
layout("/mobile/platform.html"){
#-->
<div id="app" v-cloak>
<van-nav-bar
@click-left="history.go(-1)"
fixed
left-arrow
placeholder
title="信息填报"
></van-nav-bar>
<van-form ref="addForm" :show-error-message="false" input-align="right">
<van-cell-group inset class="mt10">
<van-field name="dj_znname" v-model="formData.dj_znname" label="子女姓名"
required
placeholder="请输入子女姓名"
:rules="[{ required: true, message: '请填写子女姓名' }]"></van-field>
<van-field name="dj_znsex" v-model="formData.dj_znsex" label="性&emsp;别"
required
readonly
placeholder="请选择性别"
@click="znsexShow = true"
:rules="[{ required: true, message: '请选择性别' }]"></van-field>
<van-action-sheet v-model="znsexShow" :actions="znsexActions"
cancel-text="取消"
@cancel="znsexShow=false"
@select="(val)=>{$set(formData,'dj_znsex',val.name);znsexShow=false}"></van-action-sheet>
<van-field name="dj_znzsny" v-model="formData.dj_znzsny" label="出生日期"
required
readonly
placeholder="请选择出生日期"
@click="znzsnyShow = true"
:rules="[{ required: true, message: '请选择出生日期' }]"></van-field>
<van-popup v-model="znzsnyShow" position="bottom" :style="{ height: '50%' }">
<van-datetime-picker
v-model="currentDate"
type="date"
title="选择年月日"
:min-date="minDate"
:max-date="maxDate"
cancel-button-text="关闭"
@confirm="znzsnyConfirm"
@cancel="znzsnyShow=false"
></van-datetime-picker>
</van-popup>
<van-field name="dj_djlx_name" v-model="formData.dj_djlx_name" label="学生类型"
required
readonly
placeholder="请选择学生类型"
@click="djlxShow = true"
:rules="[{ required: true, message: '请选择学生类型' }]"></van-field>
<van-action-sheet v-model="djlxShow" :actions="djlxActions"
cancel-text="取消"
@cancel="djlxShow=false"
@select="djlxOnSelect"></van-action-sheet>
<van-field name="dj_jdxx" v-model="formData.dj_jdxx" label="就读年级"
required
readonly
placeholder="请选择就读年级"
@click="jdxxShow = true"
:rules="[{ required: true, message: '请选择就读年级' }]"></van-field>
<van-action-sheet v-model="jdxxShow"
:actions="jdxxActions.filter(v=>v.type===formData.dj_djlx)"
cancel-text="取消"
@cancel="jdxxShow=false"
@select="(val)=>{$set(formData,'dj_jdxx',val.name);jdxxShow=false}"></van-action-sheet>
<van-field name="dj_stjkzk" v-model="formData.dj_stjkzk" label="身体健康状态"
rows="2"
autosize
type="textarea"
placeholder="请输入身体健康状态"></van-field>
<van-field name="username" v-model="formData.username" label="教职工姓名"
required
readonly></van-field>
<van-field name="dj_gzh" v-model="formData.dj_gzh" label="教职工工号"
required
readonly></van-field>
<van-field name="dj_iphone" v-model="formData.dj_iphone" label="手机号码"
required
placeholder="请输入手机号码"
:rules="[{ required: true, message: '请输入手机号码' }]"></van-field>
<van-field name="dj_szdw" v-model="formData.dj_szdw" label="所在单位"
required
readonly></van-field>
<van-field name="dj_sdjtxx" v-model="formData.dj_sdjtxx" label="三代家庭成员信息"
rows="2"
autosize
type="textarea"
placeholder="请输入三代家庭成员信息"></van-field>
</van-cell-group>
</van-form>
<div style="margin: 20px 20px 10px 20px">
<van-button @click="onSubmit()" style="border-radius: 10px" block type="info"
:color="themeColor">
提 交
</van-button>
</div>
</div>
<script>
let vue = new Vue({
el: '#app',
mixins: [mobileMixins],
data() {
return {
minDate: new Date(1989, 1, 1),
maxDate: new Date(moment(new Date).format('YYYY-MM-DD')),
currentDate: null,
djlxActions: [
{name: "幼儿园", value: 1},
{name: "小学", value: 2},
{name: "初中", value: 3},
{name: "高中", value: 4},
],
znsexActions: [
{name: "男"},
{name: "女"},
],
jdxxActions: [
{name: "幼儿园", type: 1},
{name: "一年级", type: 2},
{name: "二年级", type: 2},
{name: "三年级", type: 2},
{name: "四年级", type: 2},
{name: "五年级", type: 2},
{name: "六年级", type: 2},
{name: "七年级", type: 3},
{name: "八年级", type: 3},
{name: "九年级", type: 3},
{name: "高一", type: 4},
{name: "高二", type: 4},
{name: "高三", type: 4},
],
djlxShow: false,
znsexShow: false,
znzsnyShow: false,
jdxxShow: false,
}
},
methods: {
onSubmit() {
this.$refs['addForm'].validate().then(async () => {
this.$toast.loading('提交中...')
const res = await $.post('/platform/zgfw/znxx/apply/doAdd', this.formData)
if (res.code === 0) {
this.$toast.success('填报成功');
setTimeout(() => {
window.history.go(-1)
}, 1000)
} else {
this.$toast.fail('填报失败');
}
})
},
znzsnyConfirm(val) {
this.$set(this.formData, "dj_znzsny", moment(val).format('YYYY-MM-DD'))
this.znzsnyShow = false
},
djlxOnSelect(val) {
this.$set(this.formData, "dj_djlx", val.value)
this.$set(this.formData, "dj_djlx_name", val.name)
this.djlxShow = false
},
init() {
this.$set(this.formData, "dj_jzgid", "${@shiro.getPrincipalProperty('id')}")
this.$set(this.formData, 'dj_gzh', "${@shiro.getPrincipalProperty('loginname')}")
this.$set(this.formData, 'dj_iphone', "${@shiro.getPrincipalProperty('mobile')}")
this.$set(this.formData, 'username', "${@shiro.getPrincipalProperty('username')}")
this.$set(this.formData, 'dj_szdw', "${@shiro.getPrincipalProperty('unit').getName()}")
},
async findOne(id) {
const resp = await $.post("/platform/zgfw/znxx/apply/findOne", {id})
if (resp.code === 0) {
this.formData = resp.data
this.$set(this.formData, "dj_djlx_name", this.djlxActions.find(v => v.value === resp.data.dj_djlx).name)
this.currentDate = new Date(resp.data.dj_znzsny)
}
},
},
async created() {
const id = GetQueryString("id")
id ? this.findOne(id) : this.init()
}
})
</script>
<!--#
}
#-->
@@ -0,0 +1,219 @@
<!--#
layout("/mobile/platform.html"){
#-->
<style>
.goods-card {
margin: 0;
background-color: white;
}
.delete-button {
height: 100%;
}
</style>
<div id="app" v-cloak>
<m-page-loading v-if="mLoading"></m-page-loading>
<van-nav-bar
@click-left="history.go(-1)"
fixed
left-arrow
placeholder
title="我的填报"
></van-nav-bar>
<div class="search-fixed">
<van-search
@search="doSearch"
placeholder="请输入子女姓名搜索"
show-action
v-model="pageForm.dj_znname">
<template #action>
<div @click="doSearch">搜索</div>
</template>
</van-search>
</div>
<div style="margin: 70px auto 0">
<van-list :finished="finished" :finished-text="tableData.length>0?'没有更多了':''"
@load="pageData"
v-model="mLoading">
<div @click="openView(o)" class="list-card" v-for="o in tableData">
<van-cell-group inset>
<van-swipe-cell>
<van-cell :border="false" title="子女姓名">{{o.dj_znname}}</van-cell>
<van-cell :border="false" title="性别">{{o.dj_znsex}}</van-cell>
<van-cell :border="false" title="出生日期">{{o.dj_znzsny}}</van-cell>
<!-- <van-cell :border="false" title="填报类型">
<div v-if="o.dj_djlx===1">幼儿园</div>
<div v-if="o.dj_djlx===2">小学</div>
<div v-if="o.dj_djlx===3">初中</div>
<div v-if="o.dj_djlx===4">高中</div>
</van-cell>-->
<van-cell :border="false" title="就读年级">{{o.dj_jdxx}}</van-cell>
<van-cell :border="false" title="教职工姓名">{{o.username}}</van-cell>
<!-- <van-cell :border="false" title="工号">{{o.dj_gzh}}</van-cell>-->
<!-- <van-cell :border="false" title="手机号码">{{o.dj_iphone}}</van-cell>-->
<!-- <van-cell :border="false" title="所在单位">{{o.dj_szdw}}</van-cell>-->
<div style="text-align: right;margin-bottom: 10px;margin-right: 10px;margin-top: -10px;">
<van-button :color="themeColor" @click.stop="openView(o)" plain
round
size="small"
style="width: 60px" type="primary">
查看
</van-button>
<van-button :color="themeColor" @click.stop="openEdit(o)" round
size="small"
style="width: 60px" type="primary">
修改
</van-button>
</div>
<template #right>
<van-button square text="删除" type="danger"
@click="doDelete(o.dj_id)"
class="delete-button"></van-button>
</template>
</van-swipe-cell>
</van-cell-group>
</div>
</van-list>
<van-empty class="custom-image" description="暂无数据"
image="/none.svg"
v-if="mLoading==false&&tableData.length==0">
</van-empty>
</div>
<div :style="{color:themeColor}"
style="text-align: right;position: fixed;bottom: 20px;right: 20px">
<image class="register-icon" src="/assets/mobile/svg/znxx/apply.svg"
@click.stop="openApply"
></image>
</div>
<van-popup :style="{ height: '100%', width: '100%'}" position="right" v-model="viewPopupShow">
<van-nav-bar @click-left="viewPopupShow=false"
fixed
left-arrow
placeholder
title="填报详情"></van-nav-bar>
<van-cell-group inset>
<van-cell title="学生类型">
<div v-if="viewData.dj_djlx===1">幼儿园</div>
<div v-if="viewData.dj_djlx===2">小学</div>
<div v-if="viewData.dj_djlx===3">初中</div>
<div v-if="viewData.dj_djlx===4">高中</div>
</van-cell>
<van-cell title="子女姓名">
{{viewData.dj_znname}}
</van-cell>
<van-cell title="性别">
{{viewData.dj_znsex}}
</van-cell>
<van-cell title="出生日期">
{{viewData.dj_znzsny}}
</van-cell>
<van-cell title="就读年级">
{{viewData.dj_jdxx}}
</van-cell>
<van-cell title="身体健康状态">
{{viewData.dj_stjkzk}}
</van-cell>
<van-cell title="教职工姓名">
{{viewData.username}}
</van-cell>
<van-cell title="工号">
{{viewData.dj_gzh}}
</van-cell>
<van-cell title="手机号码">
{{viewData.dj_iphone}}
</van-cell>
<van-cell title="所在单位">
{{viewData.dj_szdw}}
</van-cell>
<van-cell title="三代家庭成员信息">
{{viewData.dj_sdjtxx}}
</van-cell>
</van-cell-group>
</van-popup>
</div>
<script>
let vue = new Vue({
el: '#app',
mixins: [mobileMixins],
data() {
return {
viewPopupShow: false,
viewData: {},
}
},
methods: {
async doDelete(id) {
vant.Dialog.confirm({
title: '温馨提示',
message: '确定要删除吗?',
})
.then(async () => {
const data = await $.post(' /platform/zgfw/znxx/manage//doDelete', {id})
if (data.code === 0) {
this.$toast.success('删除成功');
this.doSearch()
} else {
this.$toast.fail('删除失败');
}
})
.catch(() => {
// on cancel
});
},
openView(o) {
this.viewData = o
this.viewPopupShow = true
},
openApply() {
window.location.href = '/mobile/znxx/manage/apply'
},
openEdit(o) {
window.location.href = '/mobile/znxx/manage/apply?id=' + o.dj_id
},
async pageData() {
this.mLoading = true
$.post('/platform/zgfw/znxx/manage/pageData', this.pageForm).then(res => {
if (res.code === 0) {
this.tableData = this.tableData.concat(res.data.list)
if (this.tableData.length === res.data.totalCount) {
this.finished = true
} else {
this.pageForm.pageNumber++
}
}
this.mLoading = false
})
},
},
})
window.addEventListener('pageshow', e => {
if (e.persisted || (window.performance && window.performance.navigation.type === 2)) {
vue.doSearch()
}
})
</script>
<!--#
}
#-->