first commit

This commit is contained in:
2026-09-09 09:14:28 +08:00
commit 5343198112
5199 changed files with 1052895 additions and 0 deletions
@@ -0,0 +1,261 @@
<!--#
layout("/mobile/platform.html"){
#-->
<style>
.van-cell {
font-size: 12px !important;
}
.text-overflow {
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
}
.van-field__label {
color: #39acff
}
#canvas {
position: relative;
}
.cell-card {
box-shadow: 0 2px 12px 0 rgba(0, 0, 0, .1);
width: 100%;
border-radius: 20px;
}
.clearBtn {
position: absolute;
top: 5px;
left: 5px;
color: red;
}
</style>
<div id="app" v-cloak>
<van-nav-bar
title="基层工会审核详情"
left-arrow
placeholder
fixed
@click-left="history.back()"
>
</van-nav-bar>
<van-row style="margin-top: 5px;background-color: white;min-height: calc(100vh - 100px)">
<div style="padding-top: 20px">
<van-collapse v-model="Basic_Information" accordion>
<van-collapse-item title="个人基本信息" name="1">
<van-cell title="姓&emsp;&emsp;名" :value="bfdata.sqrname"></van-cell>
<van-cell title="工&emsp;&emsp;号" :value="bfdata.sqrloginname"></van-cell>
<van-cell title="身份证号" :value="bfdata.idcard"></van-cell>
<van-cell title="民&emsp;&emsp;族" :value="bfdata.mz"></van-cell>
<van-cell title="政治面貌" :value="bfdata.zzmm"></van-cell>
<van-cell title="生&emsp;&emsp;日" :value="bfdata.birthday"></van-cell>
<van-cell title="性&emsp;&emsp;别" :value="bfdata.sex"></van-cell>
<van-cell title="职&emsp;&emsp;称" :value="bfdata.zc"></van-cell>
<van-cell title="职&emsp;&emsp;务" :value="bfdata.zw"></van-cell>
<van-cell title="人事编制" :value="bfdata.rsbz"></van-cell>
<van-cell title="参加工作时间" :value="bfdata.cjgzsj"></van-cell>
<van-cell title="医保状况" :value="bfdata.ybzk"></van-cell>
<van-cell title="所在单位" :value="bfdata.unitname"></van-cell>
<van-cell title="手机号码" :value="bfdata.lxfs"></van-cell>
<van-cell title="本人年收入" :value="bfdata.brnzsr"></van-cell>
<van-cell title="家庭年收入" :value="bfdata.jtnzsr"></van-cell>
<van-cell title="家庭人数" :value="bfdata.jtrs"></van-cell>
<van-cell title="现住房类型" :value="bfdata.xzflx"></van-cell>
<van-cell title="建筑面积" :value="bfdata.jzmj"></van-cell>
<van-cell title="目前住址" :value="bfdata.jtzz"></van-cell>
<van-cell title="婚姻状况" :value="bfdata.hyzt"></van-cell>
<van-cell title="发放补助银行" :value="bfdata.yhmc"></van-cell>
<van-cell title="银行卡号" :value="bfdata.yhkh"></van-cell>
</van-collapse-item>
<van-collapse-item title="家庭房产信息">
<van-collapse v-model="Source" border="false" accordion>
<van-collapse-item v-for="o in bfdata.jtfc" :title="o.fcly">
<van-cell title="地&emsp;&emsp;址" :value="o.dz"></van-cell>
<van-cell title="面&emsp;&emsp;积" :value="o.mj"></van-cell>
</van-collapse-item>
</van-collapse>
</van-collapse-item>
<van-collapse-item title="家庭车产信息">
<van-collapse v-model="Brand" accordion>
<van-collapse-item v-for="o in bfdata.jtcc" :title="o.pp">
<van-cell title="型&emsp;&emsp;号" :value="o.xh"></van-cell>
<van-cell title="价&emsp;&emsp;格" :value="o.jg"></van-cell>
</van-collapse-item>
</van-collapse>
</van-collapse-item>
<van-collapse-item title="主要家庭成员">
<van-collapse v-model="Name" border="false" accordion>
<van-collapse-item v-for="o in bfdata.jtcys" :title="o.xm">
<van-cell title="与本人关系" :value="o.gx"></van-cell>
<van-cell title="年&emsp;&emsp;龄" :value="o.nl"></van-cell>
<van-cell title="工作单位" :value="o.gzdw"></van-cell>
<van-cell title="年收入(元)" :value="o.nsr"></van-cell>
</van-collapse-item>
</van-collapse>
</van-collapse-item>
<van-collapse-item title="主要致困原因">
<div v-for="o in bfdata.zyzkyy">{{o}}</div>
</van-collapse-item>
<van-collapse-item title="备&emsp;&emsp;注">
<div>{{bfdata.zyzkyybz}}</div>
</van-collapse-item>
</van-collapse>
<van-form ref="addForm">
<van-field
readonly
value="${@shiro.getPrincipalProperty('username')}"
name="sqr"
label="审核人"
></van-field>
<van-field v-model="formData.time" label="审核时间"></van-field>
<van-field
type="textarea"
autosize
:rules="[{ required: true, message: '请填写意见' }]"
v-model="formData.fghshyj"
label="审核意见"
placeholder="请填写意见"
></van-field>
<van-button round native-type="button" type="primary" size="large" @click="openDialog"> 通过</van-button>
<van-dialog v-model="showSign" title="请签字确认" show-cancel-button @confirm="signFor"
@close="$refs.signature.reset()">
<mobile-sign ref="signature" :my_sign.sync="sign"></mobile-sign>
</van-dialog>
</van-form>
</div>
</van-row>
</div>
<script>
new Vue({
el: '#app',
data() {
return {
Basic_Information: ['1'],
audit_opinion: [],
notes: [],
Source: [],
Brand: [],
Name: [],
bfdata: {},
formData: {},
showPicker: false,
minDate: new Date(),
fghshsj: new Date(),
showSign: false,
sign: "",
refreshing: false,
}
},
components: {
'mobile-sign': httpVueLoader('/components/sign/mobileSign.vue'),
},
methods: {
signFor() {
this.$refs.signature.submitSign()
if (!this.sign) {
this.$toast('请签名再提交')
return
}
$.post("/mobile/knbf/sh/addDo", {
fghshyj: this.formData.fghshyj,
zt: this.bfdata.zt,
sign: this.sign,
id: GetQueryString('id')
}, (res) => {
if (res.code === 0) {
this.$toast.success('审核成功');
setTimeout(() => {
location.href = '/mobile/knbf/sh'
}, 1000)
} else {
this.$toast.fail('审核失败');
}
})
},
openDialog() {
this.$refs['addForm'].validate().then(() => {
this.showSign = true
this.$nextTick(() => {
this.$refs.signature.getMySign()
})
})
$('body').on('touchmove', '.slidebg', function () {
$(document.body).on('touchmove.prevUC', function (e) {
e.preventDefault();
});
});
$('body').on('touchend', '.slidebg', function () {
$(document.body).off('touchmove.prevUC');
});
},
},
async created() {
this.formData = {
time: moment().format('YYYY-MM-DD'),
}
$.post('/mobile/knbf/sh/findOne', {id: GetQueryString('id')}).then(res => {
if (this.refreshing) {
this.list = [];
this.refreshing = false;
}
if (res.code === 0) {
this.bfdata = res.data
this.bfdata.jtcc = JSON.parse(res.data.jtcc)
this.bfdata.jtfc = JSON.parse(res.data.jtfc)
this.bfdata.zyzkyy = JSON.parse(res.data.zyzkyy)
this.bfdata.zyzkyy = res.data.zyzkyy
}
})
}
})
</script>
<!--#
}
#-->
+137
View File
@@ -0,0 +1,137 @@
<!--#
layout("/mobile/platform.html"){
#-->
<style>
#app {
height: 100%;
}
.text-overflow {
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
}
.cell-card {
padding: 20px;
box-shadow: 0 2px 12px 0 rgba(0, 0, 0, .1);
width: 90%;
margin: 20px auto;
border-radius: 20px;
}
.handleicon {
width: 50%;
text-align: center;
}
</style>
<div id="app" v-cloak>
<van-nav-bar
title="困难帮扶列表"
left-arrow
placeholder
fixed
@click-left="location.href='/mobile/index'"
></van-nav-bar>
<div>
<van-list
v-model="loading"
:finished="finished"
:finished-text="tableData.length>0?'没有更多了':''"
@load="onLoad"
>
<van-cell v-for="o in tableData" class="cell-card" @click="openView(o)">
<div class="text-overflow" style="font-weight: bold;color: #409EFF">{{ o.sqrname }}</div>
<van-divider></van-divider>
<van-row gutter="30" style="font-size: 12px">
<van-col span="8">
<div style="color: gray">申请时间</div>
<div class="text-overflow">{{o.sqsj}}</div>
</van-col>
<van-col span="8">
<div style="color: gray">所属单位</div>
<div class="text-overflow">{{o.unitname}}</div>
</van-col>
<van-col span="8">
<div style="color: gray">&nbsp;&nbsp;</div>
<div class="text-overflow">{{o.sex}}</div>
</van-col>
</van-row>
<div style="position: absolute;right: 0;top: 5px">
<van-tag plain v-if="o.zt===1" type="warning">待基层工会审核</van-tag>
<van-tag plain v-if="o.zt===3" type="warning">待校工会审核</van-tag>
<van-tag plain v-if="o.zt===5" type="danger">审核不通过</van-tag>
<van-tag plain v-if="o.zt===4" type="success">审核通过</van-tag>
</div>
</van-cell>
<van-empty v-if="tableData.length==0" class="custom-image" image="/none.svg"
description="暂无数据">
</van-empty>
</van-list>
</div>
</div>
<script>
new Vue({
el: '#app',
data() {
return {
list: [],
loading: false,
finished: false,
refreshing: false,
pageForm: {
pageNumber: 1,
pageSize: 5,
totalCount: 0
},
tableData: []
}
},
methods: {
async onRefresh() {
this.tableData = []
this.pageForm = {
pageNumber: 1,
pageSize: 5,
totalCount: 0
}
await this.onLoad()
setTimeout(() => {
this.refreshing = false
}, 1000)
},
async onLoad() {
this.loading = true
$.post('/mobile/knbf/sh/pageData', this.pageForm).then(res => {
this.loading = false
if (res.code === 0) {
this.tableData = this.tableData.concat(res.data.list)
if (this.tableData.length === res.data.totalCount) {
this.finished = true
} else {
this.finished = true
this.pageForm.pageNumber++
}
}
})
},
openView(o) {
window.location.href = '/mobile/knbf/sh/detail?id=' + o.id + '&state=' + o.zt
}
}
})
</script>
<!--#
}
#-->
@@ -0,0 +1,296 @@
<!--#
layout("/mobile/platform.html"){
#-->
<style>
.van-field__label {
color: #39acff
}
</style>
<div id="app" v-cloak>
<van-nav-bar
title="校工会审核详情"
left-arrow
placeholder
fixed
@click-left="history.back()"
></van-nav-bar>
<van-collapse v-model="Basic_Information" accordion>
<van-collapse-item title="个人基本信息" name="1">
<van-cell title="姓&emsp;&emsp;名" :value="bfdata.sqrname"></van-cell>
<van-cell title="工&emsp;&emsp;号" :value="bfdata.sqrloginname"></van-cell>
<van-cell title="身份证号" :value="bfdata.idcard"></van-cell>
<van-cell title="民&emsp;&emsp;族" :value="bfdata.mz"></van-cell>
<van-cell title="政治面貌" :value="bfdata.zzmm"></van-cell>
<van-cell title="生&emsp;&emsp;日" :value="bfdata.birthday"></van-cell>
<van-cell title="性&emsp;&emsp;别" :value="bfdata.sex"></van-cell>
<van-cell title="职&emsp;&emsp;称" :value="bfdata.zc"></van-cell>
<van-cell title="职&emsp;&emsp;务" :value="bfdata.zw"></van-cell>
<van-cell title="人事编制" :value="bfdata.rsbz"></van-cell>
<van-cell title="参加工作时间" :value="bfdata.cjgzsj"></van-cell>
<van-cell title="医保状况" :value="bfdata.ybzk"></van-cell>
<van-cell title="所在单位" :value="bfdata.unitname"></van-cell>
<van-cell title="手机号码" :value="bfdata.lxfs"></van-cell>
<van-cell title="本人年收入" :value="bfdata.brnzsr"></van-cell>
<van-cell title="家庭年收入" :value="bfdata.jtnzsr"></van-cell>
<van-cell title="家庭人数" :value="bfdata.jtrs"></van-cell>
<van-cell title="现住房类型" :value="bfdata.xzflx"></van-cell>
<van-cell title="建筑面积" :value="bfdata.jzmj"></van-cell>
<van-cell title="目前住址" :value="bfdata.jtzz"></van-cell>
<van-cell title="婚姻状况" :value="bfdata.hyzt"></van-cell>
<van-cell title="发放补助银行" :value="bfdata.yhmc"></van-cell>
<van-cell title="银行卡号" :value="bfdata.yhkh"></van-cell>
</van-collapse-item>
<van-collapse-item title="家庭房产信息">
<van-collapse v-model="Source" border="false" accordion>
<van-collapse-item v-for="o in bfdata.jtfc" :title="o.fcly">
<van-cell title="地&emsp;&emsp;址" :value="o.dz"></van-cell>
<van-cell title="面&emsp;&emsp;积" :value="o.mj"></van-cell>
</van-collapse-item>
</van-collapse>
</van-collapse-item>
<van-collapse-item title="家庭车产信息">
<van-collapse v-model="Brand" accordion>
<van-collapse-item v-for="o in bfdata.jtcc" :title="o.pp">
<van-cell title="型&emsp;&emsp;号" :value="o.xh"></van-cell>
<van-cell title="价&emsp;&emsp;格" :value="o.jg"></van-cell>
</van-collapse-item>
</van-collapse>
</van-collapse-item>
<van-collapse-item title="主要家庭成员">
<van-collapse v-model="Name" border="false" accordion>
<van-collapse-item v-for="o in bfdata.jtcys" :title="o.xm">
<van-cell title="与本人关系" :value="o.gx"></van-cell>
<van-cell title="年&emsp;&emsp;龄" :value="o.nl"></van-cell>
<van-cell title="工作单位" :value="o.gzdw"></van-cell>
<van-cell title="年收入(元)" :value="o.nsr"></van-cell>
</van-collapse-item>
</van-collapse>
</van-collapse-item>
<van-collapse-item title="主要致困原因">
<div v-for="o in bfdata.zyzkyy">{{o}}</div>
</van-collapse-item>
<van-collapse-item title="备&emsp;&emsp;注">
<div>
{{bfdata.zyzkyybz}}
</div>
</van-collapse-item>
<van-collapse-item title="基层工会审核意见">
<van-cell title="审核人" :value="bfdata.fghshrname"></van-cell>
<van-cell title="审核时间" :value="bfdata.fghshsj"></van-cell>
<van-cell title="审核意见" :value="bfdata.fghshyj"></van-cell>
<van-cell title="签&emsp;&emsp;字">
<div>
<img style="width: 100%" :src="bfdata.fqz"/>
</div>
<div v-if="bfdata.fghshqz==null">
暂无
</div>
</van-cell>
</van-collapse-item>
</van-collapse>
<van-form ref="addForm">
<van-field
readonly
value="${@shiro.getPrincipalProperty('username')}"
name="sqr"
label="审核人"
></van-field>
<van-field v-model="formData.jb" label="档位" @click="jb = true"></van-field>
<van-action-sheet v-model="jb" :actions="actions" @select="onSelect"></van-action-sheet>
<van-field v-model="formData.xghbzje" type="number" label="补助金额"></van-field>
<van-field v-model="formData.time" label="审核时间"></van-field>
<van-field
type="textarea"
autosize
:rules="[{ required: true, message: '请填写意见' }]"
v-model="formData.xghshyj"
label="审核意见"
placeholder="请填写意见"
></van-field>
<van-row gutter="20" style="margin-top: 30px;padding: 0 25px">
<van-col span="12">
<van-button round plain size="large" @click="RefuseDialog"> 拒绝</van-button>
</van-col>
<van-col span="12">
<van-button round type="info" size="large" @click="openDialog"> 通过</van-button>
</van-col>
</van-row>
<van-dialog v-model="showSign" title="请签字确认" show-cancel-button @confirm="signFor"
@close="$refs.signature.reset()">
<mobile-sign ref="signature" :my_sign.sync="sign"></mobile-sign>
</van-dialog>
<van-dialog v-model="fChairmanSign" title="请签字确认" show-cancel-button @confirm="JjSign"
@close="$refs.signature.reset()">
<mobile-sign ref="signature" :my_sign.sync="sign"></mobile-sign>
</van-dialog>
</van-form>
</div>
<script>
new Vue({
el: '#app',
data() {
return {
Basic_Information: ['1'],
audit_opinion: [],
notes: [],
Source: [],
Brand: [],
Name: [],
bfdata: {},
formData: {},
showPicker: false,
showSign: false,
fChairmanSign: false,
sign: "",
jb: false,
actions: [{name: '甲级'}, {name: '乙级'}, {name: '丙级'}],
}
},
components: {
'mobile-sign': httpVueLoader('/components/sign/mobileSign.vue'),
},
methods: {
onSelect(item) {
this.jb = false;
this.formData.jb = item.name
},
JjSign() {
this.$refs.signature.submitSign()
if (!this.sign) {
this.$toast('请签名再提交')
return
}
$.post("/mobile/knbf/sh/Refuse", {
xghshyj: this.formData.xghshyj,
sign: this.sign,
zt: this.bfdata.zt,
id: GetQueryString('id')
}, (res) => {
if (res.code === 0) {
this.$toast.success('审核成功');
setTimeout(() => {
location.href = '/mobile/knbf/sh'
}, 1000)
} else {
this.$toast.fail('审核失败');
}
})
},
signFor() {
this.$refs.signature.submitSign()
if (!this.sign) {
this.$toast('请签名再提交')
return
}
$.post("/mobile/knbf/sh/addDo", {
xghshyj: this.formData.xghshyj,
jb: this.formData.jb,
zt: this.bfdata.zt,
xghbzje: this.formData.xghbzje,
sign: this.sign,
id: GetQueryString('id')
}, (res) => {
if (res.code === 0) {
this.$toast.success('审核成功');
setTimeout(() => {
location.href = '/mobile/knbf/sh'
}, 1000)
} else {
this.$toast.fail('审核失败');
}
})
},
RefuseDialog() {
this.$refs['addForm'].validate().then(() => {
this.fChairmanSign = true
this.$nextTick(() => {
this.$refs.signature.getMySign()
})
})
},
openDialog() {
this.$refs['addForm'].validate().then(() => {
this.showSign = true
this.$nextTick(() => {
this.$refs.signature.getMySign()
})
})
$('body').on('touchmove', '.slidebg', function () {
$(document.body).on('touchmove.prevUC', function (e) {
e.preventDefault();
});
});
$('body').on('touchend', '.slidebg', function () {
$(document.body).off('touchmove.prevUC');
});
},
},
async created() {
this.formData = {
time: moment().format('YYYY-MM-DD'),
}
$.post('/mobile/knbf/sh/findOne', {id: GetQueryString('id')}).then(res => {
if (this.refreshing) {
this.list = [];
this.refreshing = false;
}
if (res.code === 0) {
this.bfdata = res.data
this.bfdata.jtcc = JSON.parse(res.data.jtcc)
this.bfdata.jtfc = JSON.parse(res.data.jtfc)
this.bfdata.zyzkyy = JSON.parse(res.data.zyzkyy)
this.bfdata.zyzkyy = res.data.zyzkyy
}
})
}
})
</script>
<!--#
}
#-->