first commit
This commit is contained in:
@@ -0,0 +1,272 @@
|
||||
<!--#
|
||||
layout("/mobile/platform.html"){
|
||||
#-->
|
||||
|
||||
<div id="app" v-cloak>
|
||||
<van-nav-bar title="困难补助申请" left-arrow placeholder fixed
|
||||
@click-left="history.back()"></van-nav-bar>
|
||||
<van-form ref="addForm" :show-error-message="false" input-align="right">
|
||||
<van-cell-group inset class="mt10">
|
||||
<van-field readonly
|
||||
value="${@shiro.getPrincipalProperty('username')} ( ${@shiro.getPrincipalProperty('loginname')} )"
|
||||
name="sqrname"
|
||||
label="申请人"></van-field>
|
||||
|
||||
<van-field name="apply_mode" label="申请模式">
|
||||
<template #input>
|
||||
<van-radio-group v-model="formData.apply_mode" direction="horizontal" @change="applyModeChange">
|
||||
<van-radio :name="1">本人申请</van-radio>
|
||||
<van-radio :name="2">替他人申请</van-radio>
|
||||
</van-radio-group>
|
||||
</template>
|
||||
</van-field>
|
||||
|
||||
<van-field @input="userRemoteMethod" name="bbzrusername"
|
||||
v-model="formData.bbzrusername" label="受补助人" placeholder="请输入受补助人姓名"
|
||||
:rules="[{ required: true, message: '请填写受补助人姓名' }]"></van-field>
|
||||
|
||||
<van-action-sheet v-model="sheetShow"
|
||||
:actions="userList"
|
||||
cancel-text="重新输入姓名或工号查询"
|
||||
@cancel="userList = []"
|
||||
:close-on-click-overlay="false"
|
||||
@select="onUserSelect">
|
||||
</van-action-sheet>
|
||||
<van-field label="身份证号" v-model="formData.idcard"></van-field>
|
||||
|
||||
|
||||
<van-field label="性别" v-model="formData.sex"></van-field>
|
||||
|
||||
<van-field label="职称" v-model="formData.zc"></van-field>
|
||||
<van-field label="职务" v-model="formData.zw"></van-field>
|
||||
|
||||
<van-field label="单位" v-model="formData.unitname"></van-field>
|
||||
|
||||
<van-field label="出生日期" v-model="formData.birthday"></van-field>
|
||||
|
||||
<van-field label="手机号码" v-model="formData.lxfs" type="tel"></van-field>
|
||||
|
||||
|
||||
<van-field name="sq_bzlx_name"
|
||||
@click="sq_bzlxShow = true"
|
||||
:value="formData.sq_bzlx_name" label="补助类型" placeholder="请选择补助类型"></van-field>
|
||||
<van-popup v-model:show="sq_bzlxShow" position="bottom" round>
|
||||
<van-picker show-toolbar :columns="sq_bzlxList" @confirm="onSq_bzlxConfirm"
|
||||
@cancel="sq_bzlxShow = false">
|
||||
</van-picker>
|
||||
</van-popup>
|
||||
|
||||
<van-field name="sq_knlx_name"
|
||||
@click="sq_knlxShow = true"
|
||||
:value="formData.sq_knlx_name" label="困难类型" placeholder="请选择困难类型"></van-field>
|
||||
<van-popup v-model:show="sq_knlxShow" position="bottom" round>
|
||||
<van-picker show-toolbar :columns="sq_knlxist" @confirm="onSq_knlxConfirm"
|
||||
@cancel="sq_knlxShow = false">
|
||||
</van-picker>
|
||||
</van-popup>
|
||||
|
||||
<template v-if="formData.sq_knlx==1">
|
||||
<van-field label="所在医院" placeholder="请填写所在所在医院" v-model="formData.hospital"></van-field>
|
||||
<van-field label="住院时间" :value="formData.hospitalized_time_name"
|
||||
placeholder="请填写住院时间"
|
||||
@click="hospitalized_timeShow = true"></van-field>
|
||||
<van-calendar v-model="hospitalized_timeShow" :min-date="new Date('1999-01-01')" :show-confirm="false"
|
||||
type="range"
|
||||
@confirm="onHospitalized_timeConfirm"></van-calendar>
|
||||
</template>
|
||||
|
||||
<van-field v-model="formData.apply_reason" name="remark" label="申请理由" style="flex-flow: column"
|
||||
placeholder="请填写申请理由"
|
||||
input-align="left"
|
||||
rows="3" maxlength="200" type="textarea" show-word-limit autosize>
|
||||
<template #label>
|
||||
<div class="mb10">申请事由</div>
|
||||
</template>
|
||||
</van-field>
|
||||
|
||||
</van-cell-group>
|
||||
|
||||
<van-cell-group inset class="mt10">
|
||||
<van-field name="files" label="附  件" required style="flex-flow: column" input-align="left">
|
||||
<template #label>
|
||||
<div class="mb10">附  件</div>
|
||||
</template>
|
||||
<template #input>
|
||||
<vant-file-upload :files.sync="formData.files"></vant-file-upload>
|
||||
</template>
|
||||
</van-field>
|
||||
</van-cell-group>
|
||||
|
||||
<van-cell-group inset class="mt10">
|
||||
<van-field label="签字" required style="flex-flow: column">
|
||||
<template #label>
|
||||
<div class="mb10">签  字</div>
|
||||
</template>
|
||||
<template #input>
|
||||
<mobile-sign ref="signature" :my_sign.sync="formData.sqsign"></mobile-sign>
|
||||
</template>
|
||||
</van-field>
|
||||
</van-cell-group>
|
||||
|
||||
<div style="margin: 20px 20px 10px 20px">
|
||||
<van-button @click="onSubmit()" style="border-radius: 10px" block type="info" :color="themeColor">
|
||||
提 交
|
||||
</van-button>
|
||||
</div>
|
||||
</van-form>
|
||||
</div>
|
||||
<script src="/assets/platform/module/difficulty/common.js?v=1.0.0"></script>
|
||||
|
||||
<script>
|
||||
const vue = new Vue({
|
||||
el: '#app',
|
||||
mixins: [mobileMixins],
|
||||
data() {
|
||||
return {
|
||||
id: GetQueryString("id"),
|
||||
hospitalized_timeShow: false,
|
||||
sq_bzlxShow: false,
|
||||
sq_bzlxList: [],
|
||||
minDate: {},
|
||||
sq_knlxShow: false,
|
||||
sq_knlxist: [],
|
||||
userList: [],
|
||||
formData: {
|
||||
apply_mode: 1
|
||||
},
|
||||
sheetShow: false,
|
||||
files: [],
|
||||
}
|
||||
},
|
||||
components: {
|
||||
'mobile-sign': httpVueLoader('/components/sign/mobileSign.vue'),
|
||||
},
|
||||
methods: {
|
||||
onHospitalized_timeConfirm(val) {
|
||||
this.$set(this.formData, "hospitalized_time_name", moment(val[0]).format('YYYY-MM-DD') + "至" + moment(val[1]).format('YYYY-MM-DD'))
|
||||
this.$set(this.formData, "hospitalized_time", moment(val[0]).format('YYYY-MM-DD') + "至" + moment(val[1]).format('YYYY-MM-DD'))
|
||||
this.hospitalized_timeShow = false
|
||||
},
|
||||
onSq_bzlxConfirm(val) {
|
||||
this.$set(this.formData, "sq_bzlx_name", val.text)
|
||||
this.$set(this.formData, "sq_bzlx", val.value)
|
||||
for (let i in difficulty.getHard(val.value)) {
|
||||
this.sq_knlxist.push({value: i, text: difficulty.getHard(val.value)[i]})
|
||||
}
|
||||
this.$set(this.formData, "sq_knlx_name", null)
|
||||
this.$set(this.formData, "sq_knlx", null)
|
||||
this.sq_bzlxShow = false
|
||||
},
|
||||
onSq_knlxConfirm(val) {
|
||||
this.$set(this.formData, "sq_knlx_name", val.text)
|
||||
this.$set(this.formData, "sq_knlx", val.value)
|
||||
this.sq_knlxShow = false
|
||||
|
||||
},
|
||||
applyModeChange(val) {
|
||||
if (val === 1) {
|
||||
this.$set(this.formData, 'difficultyUser', "${@shiro.getPrincipalProperty('id')}")
|
||||
this.$set(this.formData, 'bbzrusername', "${@shiro.getPrincipalProperty('username')}")
|
||||
this.$set(this.formData, 'sex', "${@shiro.getPrincipalProperty('sex')}")
|
||||
this.$set(this.formData, 'zc', "${@shiro.getPrincipalProperty('jobTitle')}")
|
||||
this.$set(this.formData, 'zw', "${@shiro.getPrincipalProperty('position')}")
|
||||
this.$set(this.formData, 'unitname', "${@shiro.getPrincipalProperty('unit').getName()}")
|
||||
this.$set(this.formData, 'birthday', "${@shiro.getPrincipalProperty('birthday')}")
|
||||
this.$set(this.formData, 'lxfs', "${@shiro.getPrincipalProperty('mobile')}")
|
||||
this.$set(this.formData, 'idcard', "${@shiro.getPrincipalProperty('idCard')}")
|
||||
} else if (val === 2) {
|
||||
this.formData = {}
|
||||
this.$set(this.formData, 'apply_mode', 2)
|
||||
this.$set(this.formData, 'bbzrusername', undefined)
|
||||
}
|
||||
},
|
||||
async userRemoteMethod(query) {
|
||||
if (query) {
|
||||
const {data} = await $.get("/platform/fw/condolence/apply/queryUser", {query})
|
||||
data.forEach(v => {
|
||||
v.name = v.username
|
||||
v.subname = v.loginname
|
||||
return v
|
||||
})
|
||||
this.userList = data
|
||||
this.sheetShow = true
|
||||
}
|
||||
},
|
||||
onUserSelect(val) {
|
||||
this.$set(this.formData, 'difficultyUser', val.id)
|
||||
this.$set(this.formData, 'bbzrusername', val.name)
|
||||
this.$set(this.formData, 'lxfs', val.mobile)
|
||||
this.$set(this.formData, 'sex', val.sex)
|
||||
this.$set(this.formData, 'unitname', val.unitname)
|
||||
this.$set(this.formData, 'zc', val.jobTitle)
|
||||
this.$set(this.formData, 'zw', val.position)
|
||||
this.$set(this.formData, 'birthday', val.birthday)
|
||||
this.$set(this.formData, "sq_bzlx_name", this.sq_bzlxList[0].text)
|
||||
this.$set(this.formData, "sq_bzlx", this.sq_bzlxList[0].value)
|
||||
this.sheetShow = false
|
||||
},
|
||||
|
||||
async onSubmit() {
|
||||
this.$refs.signature.submitSign()
|
||||
/* if (!this.formData.sqsign) {
|
||||
vant.Toast('请签名!')
|
||||
return
|
||||
}*/
|
||||
const formData = clone(this.formData)
|
||||
formData.files = JSON.stringify(formData.files)
|
||||
formData.applicantsign = formData.sqsign
|
||||
formData.bbzrusername = formData.difficultyUser
|
||||
this.$refs['addForm'].validate().then(async () => {
|
||||
this.$toast.loading('提交中...')
|
||||
const res = await $.post('/platform/fw/difficulty/apply/doAdd', formData)
|
||||
if (res.code === 0) {
|
||||
this.$toast.success('申请成功');
|
||||
setTimeout(() => {
|
||||
location.replace('/mobile/difficulty/apply/apply_list')
|
||||
}, 1000)
|
||||
} else {
|
||||
this.$toast.fail('申请失败');
|
||||
}
|
||||
})
|
||||
},
|
||||
async getApplyInfo(id) {
|
||||
const {data, code, msg} = await $.get("/platform/fw/difficulty/applylist/findOne", {id})
|
||||
if (data) {
|
||||
data.apply_mode = parseInt(data.apply_mode)
|
||||
this.formData = data
|
||||
if (this.formData.files && this.formData.files.length > 0) {
|
||||
this.formData.files = JSON.parse(data.files)
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.$nextTick(() => {
|
||||
if (this.$refs.signature) {
|
||||
this.$refs.signature.getMySign()
|
||||
}
|
||||
})
|
||||
},
|
||||
async created() {
|
||||
this.applyModeChange(1)
|
||||
for (let i in difficulty.subsidy) {
|
||||
this.sq_bzlxList.push({value: i, text: difficulty.subsidy[i]})
|
||||
}
|
||||
|
||||
this.$set(this.formData, "sq_bzlx_name", this.sq_bzlxList[0].text)
|
||||
this.$set(this.formData, "sq_bzlx", this.sq_bzlxList[0].value)
|
||||
for (let i in difficulty.getHard(this.formData.sq_bzlx)) {
|
||||
this.sq_knlxist.push({value: i, text: difficulty.getHard(this.formData.sq_bzlx)[i]})
|
||||
}
|
||||
this.formData.apply_time = moment().format('YYYY-MM-DD')
|
||||
|
||||
if (this.id) {
|
||||
this.getApplyInfo(this.id)
|
||||
}
|
||||
|
||||
}
|
||||
})
|
||||
</script>
|
||||
<!--#
|
||||
}
|
||||
#-->
|
||||
Reference in New Issue
Block a user