This commit is contained in:
Paidax
2024-11-29 09:03:59 +08:00
commit 2ffadd89a7
3480 changed files with 879405 additions and 0 deletions
@@ -0,0 +1,155 @@
<template>
<div>
<transition name="el-zoom-in-center">
<div style="padding: 10px" v-show="smm.status==='detail'">
<el-button icon="el-icon-back" type="text" @click="changeStatus" style="font-size: 18px">返回</el-button>
<el-tabs v-model="smm.activeName">
<el-tab-pane label="申请信息" name="1">
<el-card>
<table class="table table-bordered">
<tr>
<td width="20%">申请人</td>
<td>{{viewData.dsqrname}}</td>
<td width="20%">受补助人</td>
<td>{{viewData.sqrname}}</td>
</tr>
<tr>
<td>性别</td>
<td>{{viewData.sq_sex}}</td>
<td>工号</td>
<td>{{viewData.sqrgh}}</td>
</tr>
<tr>
<td>职称()</td>
<td>{{viewData.sq_zwzc}}</td>
<td>出生年月</td>
<td>{{viewData.sq_birthday}}</td>
</tr>
<tr>
<td>联系电话</td>
<td>{{viewData.sq_mobile}}</td>
<td>单位</td>
<td>{{viewData.sq_sqrdw}}</td>
</tr>
<tr>
<td>申请事由</td>
<td colspan="3">
<div class="text-left">
{{viewData.wwsqsy}}
</div>
</td>
</tr>
<tr>
<td>申请人签字</td>
<td colspan="3">
<div>
<el-image style="width: 200px;height:auto" :src="viewData.sqrqz"/>
</div>
</td>
</tr>
</table>
</el-card>
</el-tab-pane>
<el-tab-pane label="院级工会审核" name="2" v-if="viewData.sq_sqzt>1">
<el-card>
<el-form label-position="right" label-width="100px">
<el-form-item label="审核人">
<div>{{viewData.sq_jcdwshr}}</div>
</el-form-item>
<el-form-item label="审核时间">
<div>{{viewData.sq_jcdwshsj}}</div>
</el-form-item>
<el-form-item label="审核结果">
<div>{{[2,3,5].includes(viewData.sq_sqzt)?'通过':'不通过'}}</div>
</el-form-item>
<el-form-item label="审核意见">
<div style="word-wrap: break-word!important">{{viewData.sq_jcdwshyj}}</div>
</el-form-item>
<el-form-item label="签字">
<el-image style="width: 200px;height:auto" :src="viewData.jcdwqz"/>
</el-form-item>
</el-form>
</el-card>
</el-tab-pane>
<el-tab-pane label="校工会审核" name="3" v-if="viewData.sq_sqzt>3">
<el-card>
<el-form label-position="right" label-width="100px">
<el-form-item label="审核人">
<div>{{viewData.sq_xghshr}}</div>
</el-form-item>
<el-form-item label="审核时间">
<div>{{viewData.sq_xghshsj}}</div>
</el-form-item>
<el-form-item label="审核结果">
<div>{{[2,3,5].includes(viewData.sq_sqzt)?'通过':'不通过'}}</div>
</el-form-item>
<el-form-item label="审核意见">
<div style="word-wrap: break-word!important">{{viewData.sq_xghshyj}}</div>
</el-form-item>
<el-form-item label="签字">
<el-image style="width: 200px;height:auto" :src="viewData.xghqz"/>
</el-form-item>
</el-form>
</el-card>
</el-tab-pane>
<slot name="handle">
</slot>
</el-tabs>
</div>
</transition>
</div>
</template>
<script>
module.exports = {
props: {
smm: {
type: 'Object',
default: () => {
return {
status: 'table',
id: '',
data: {},
activeName: '',
}
}
}
},
data() {
return {
viewData: {
sqrusername:""
}
}
},
methods: {
changeStatus() {
this.smm = {status: 'table', id: ''}
this.$emit('update:smm', this.smm)
},
},
watch: {
smm(o) {
if(o.status==='detail'){
this.viewData = o.data
}
}
}
}
</script>
<style scoped>
.el-card{
margin: 10px;
}
.el-tab-pane {
height: 100%;
overflow-y: auto;
}
td{
text-align: center!important;
vertical-align: middle!important;
}
</style>
@@ -0,0 +1,150 @@
<template>
<div style="padding-bottom: 20px;">
<template name="基本信息">
<van-cell-group class="info">
<van-cell title="教职工" :value="viewData.jzgname"></van-cell>
<van-cell title="职称" :value="viewData.dj_zc"></van-cell>
<van-cell title="学历" :value="viewData.dj_xl"></van-cell>
<van-cell title="家庭住址" :value="viewData.dj_jtzz"></van-cell>
<van-cell title="户口所在地" :value="viewData.dj_hjszd"></van-cell>
<van-cell title="户口所在地派出所" :value="viewData.dj_hjssxq"></van-cell>
<van-cell title="联系电话" :value="viewData.dj_iphone"></van-cell>
<van-cell title="是否集体户" :value="viewData.isCollectiveHouseholds">
{{viewData.isCollectiveHouseholds ?'是':'否'}}
</van-cell>
<van-cell title="子女姓名" :value="viewData.dj_znname"></van-cell>
<van-cell title="性别" :value="viewData.dj_znsex"></van-cell>
<van-cell title="出生日期" :value="viewData.dj_znzsny" v-if="viewData.dj_djlx===1"></van-cell>
<van-cell title="备注" :value="viewData.dj_bz"></van-cell>
</van-cell-group>
</template>
<template name="分工会审核信息" v-if="viewData.dj_fghshr">
<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-cell-group class="info">
<van-cell title="审&emsp14;&emsp14;核&emsp14;&emsp14;人"> {{ viewData.dj_fghshr }}</van-cell>
<van-cell title="审核时间">{{ viewData.dj_fghshsj }}</van-cell>
<van-cell title="审核意见">{{ viewData.dj_fghshyj }}</van-cell>
</van-cell-group>
<van-cell-group class="info">
</van-cell-group>
</template>
<template name="校工会审核信息" v-if="viewData.dj_xghshr">
<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-cell-group class="info">
<van-cell title="审&emsp14;&emsp14;核&emsp14;&emsp14;人"> {{ viewData.dj_xghshr }}</van-cell>
<van-cell title="审核时间">{{ viewData.dj_xghshsj }}</van-cell>
<van-cell title="审核意见">{{ viewData.dj_xghshyj }}</van-cell>
</van-cell-group>
<van-cell-group class="info">
</van-cell-group>
</template>
<template name="备案信息" v-if="viewData.dj_bashr">
<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-cell-group class="info">
<van-cell title="备&emsp14;&emsp14;案&emsp14;&emsp14;人"> {{ viewData.dj_bashr }}</van-cell>
<van-cell title="备案时间">{{ viewData.dj_bashsj }}</van-cell>
<van-cell title="备案信息">{{ viewData.dj_sfrx ? '继续等待' : '放弃名额' }}</van-cell>
<van-cell title="备注">{{ viewData.dj_babz }}</van-cell>
</van-cell-group>
<van-cell-group class="info">
</van-cell-group>
</template>
<template v-if="handle">
<div style="width: 100%;padding: 16px 0;">
<h2 class="van-doc-demo-block__title" style="font-weight: bolder;color: RGB(8,23,118)">
{{ title }}</h2>
</div>
<slot name="handle"></slot>
</template>
</div>
</template>
<script>
module.exports = {
data() {
return {
fileList: [],
activeName: 1,
viewData: {},
csfile: [],
hkfile: [],
fcfile: [],
qmkffile: [],
jszgfile: [],
pyhtfile: [],
}
},
props: {
handle: {
type: Boolean,
default: false,
},
title: {
type: String,
default: '审核'
},
dj_id: String
},
components: {
'vant-file-upload': httpVueLoader('/components/plugins/VantFileUpload.vue')
},
methods: {
async getFile() {
const res = await $.get('/platform/zgfw/rxdjxx/findfjList', {id: this.dj_id})
if (res.code === 0) {
this.csfile = res.data.filter(v => v.bz === "csfile")
this.hkfile = res.data.filter(v => v.bz === "hkfile")
this.fcfile = res.data.filter(v => v.bz === "fcfile")
this.qmkffile = res.data.filter(v => v.bz === "qmkffile")
this.pyhtfile = res.data.filter(v => v.bz === "pyhtfile")
this.jszgfile = res.data.filter(v => v.bz === "jszgfile")
}
},
async openView(dj_id) {
const {data} = await $.get('/platform/zgfw/rxdjxx/findRxdj', {dj_id: dj_id})
this.viewData = data
await this.getFile()
}
},
async created() {
await this.openView(this.dj_id)
}
}
</script>
<style>
.van-doc-demo-block__title {
margin: 0;
padding: 0 16px;
color: #1867b0;
font-weight: normal;
font-size: 14px;
line-height: 16px;
}
.van-field__label {
width: 8.2em !important;
}
</style>
@@ -0,0 +1,113 @@
<template>
<el-tabs v-model="activeName">
<el-tab-pane label="申请信息" name="1">
<el-descriptions border class="descriptions-form">
<el-descriptions-item label="登记类型" :span="3">
<dict-tag :options="dict.type.childrenSchoolRegisterType" :value="viewData.dj_djlx"></dict-tag>
</el-descriptions-item>
<el-descriptions-item label="青年教职工姓名">
{{ viewData.dj_xm }}
</el-descriptions-item>
<el-descriptions-item label="职称">
{{ viewData.dj_zc }}
</el-descriptions-item>
<el-descriptions-item label="学历">
{{ viewData.dj_xl }}
</el-descriptions-item>
<el-descriptions-item label="青年教职工家庭住址" :span="3">
{{ viewData.dj_jtzz }}
</el-descriptions-item>
<el-descriptions-item label="户口所在地" :span="3">
{{ viewData.dj_hjszd }}
</el-descriptions-item>
<el-descriptions-item label="户口所在地派出所" :span="3">
{{ viewData.dj_hjssxq }}
</el-descriptions-item>
<el-descriptions-item label="联系电话">
{{ viewData.dj_iphone }}
</el-descriptions-item>
<el-descriptions-item></el-descriptions-item>
<el-descriptions-item></el-descriptions-item>
<el-descriptions-item label="子女姓名">
{{ viewData.dj_znname }}
</el-descriptions-item>
<el-descriptions-item label="子女性别">
{{ viewData.dj_znsex }}
</el-descriptions-item>
<el-descriptions-item label="子女出生年月">
{{ viewData.dj_znzsny }}
</el-descriptions-item>
<el-descriptions-item label="备注" :span="3">
{{ viewData.dj_babz }}
</el-descriptions-item>
<el-descriptions-item label="附件" :span="3">
<file-upload view :files="viewData.files"></file-upload>
</el-descriptions-item>
</el-descriptions>
</el-tab-pane>
<el-tab-pane v-if="viewData.dj_fghshr" label="分工会审核信息" name="2">
<el-card>
<el-form label-position="right" label-width="100px">
<el-form-item label="审核人">
<div>{{ viewData.dj_fghshr }}</div>
</el-form-item>
<el-form-item label="审核时间">
<div>{{ viewData.dj_fghshsj }}</div>
</el-form-item>
<el-form-item label="审核意见">
<div>{{ viewData.dj_fghshyj }}</div>
</el-form-item>
</el-form>
</el-card>
</el-tab-pane>
<el-tab-pane v-if="viewData.dj_xghshr" label="校工会审核信息" name="3">
<el-card>
<el-form label-position="right" label-width="100px">
<el-form-item label="审核人">
<div>{{ viewData.dj_xghshr }}</div>
</el-form-item>
<el-form-item label="审核时间">
<div>{{ viewData.dj_xghshsj }}</div>
</el-form-item>
<el-form-item label="审核意见">
<div>{{ viewData.dj_xghshyj }}</div>
</el-form-item>
</el-form>
</el-card>
</el-tab-pane>
<slot name="audit">
</slot>
</el-tabs>
</template>
<script>
module.exports = {
dicts: ['childrenSchoolRegisterType'],
props: {
activeName: {
type: String,
default: '1'
}
},
data() {
return {
viewData: {},
}
},
methods: {
async openView(row) {
this.viewData = row
},
async openAudit(row, activeName) {
this.openView(row)
this.activeName = activeName
}
}
}
</script>
<style>
</style>
@@ -0,0 +1,252 @@
<template>
<div>
<el-dialog
title="校工会修改"
top="50px"
:visible.sync="dialogVisible"
width="70%">
<el-form :model="AddFormData"
:rules="rules"
ref="AddForm"
class="applyForm"
label-width="0">
<el-descriptions border class="descriptions-form">
<el-descriptions-item label="登记类型" :span="3">
<el-form-item label-width="0" prop="dj_djlx"
:rules="[{required:true,message:'必填',trigger:['change','blur']}]">
<el-radio-group v-model="AddFormData.dj_djlx" size="small">
<el-radio v-for="item in currentYearSchoolPlans"
:key="item.id"
:label="item.bmlx"
:disabled="!item.bmkqzt"
border>
<span v-if="item.bmlx==1">
幼儿园({{ item.bmkssj + '' + item.bmjssj }})
</span>
<span v-else-if="item.bmlx==2">
小学({{ item.bmkssj + '' + item.bmjssj }})
</span>
</el-radio>
</el-radio-group>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="青年教职工姓名">
<el-form-item label-width="0" prop="dj_xm">
<el-input clearable v-model="AddFormData.dj_xm"
disabled
placeholder="青年教职工姓名"></el-input>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="职称">
<el-form-item label-width="0" prop="dj_zc"
:rules="[{required:true,message:'必填',trigger:['change','blur']}]">
<el-input clearable v-model="AddFormData.dj_zc"
placeholder="职称"></el-input>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="学历"
:rules="[{required:true,message:'必填',trigger:['change','blur']}]">
<el-form-item label-width="0" prop="dj_xl">
<el-input clearable v-model="AddFormData.dj_xl"
placeholder="学历"></el-input>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="青年教职工家庭住址" :span="3">
<el-form-item label-width="0" prop="dj_jtzz"
:rules="[{required:true,message:'必填',trigger:['change','blur']}]">
<el-input v-model="AddFormData.dj_jtzz" max="50"
placeholder="请填写家庭住址"
></el-input>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="户口所在地" :span="3">
<el-form-item label-width="0" prop="dj_hjszd"
:rules="[{required:true,message:'必填',trigger:['change','blur']}]">
<el-input v-model="AddFormData.dj_hjszd" max="50"
placeholder="请填写户口所在地"
></el-input>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="户口所在地派出所" :span="3">
<el-form-item label-width="0" prop="dj_hjssxq"
:rules="[{required:true,message:'必填',trigger:['change','blur']}]">
<el-input v-model="AddFormData.dj_hjssxq" max="50"
placeholder="请填写户口所在地派出所"
></el-input>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="联系电话">
<el-form-item label-width="0" prop="dj_iphone"
:rules="[{required:true,message:'必填',trigger:['change','blur']}]">
<el-input v-model="AddFormData.dj_iphone" max="11"
placeholder="请填写联系电话"></el-input>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="是否集体户">
<el-form-item label-width="0" prop="isCollectiveHouseholds"
:rules="[{required:true,message:'必填',trigger:['change','blur']}]">
<el-radio-group v-model="AddFormData.isCollectiveHouseholds" size="small">
<el-radio :label="true" border></el-radio>
<el-radio :label="false" border></el-radio>
</el-radio-group>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item></el-descriptions-item>
<el-descriptions-item label="子女姓名">
<el-form-item label-width="0" prop="dj_znname"
:rules="[{required:true,message:'必填',trigger:['change','blur']}]">
<el-input v-model="AddFormData.dj_znname" max="30"
placeholder="请填写子女姓名"
></el-input>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="子女性别">
<el-form-item label-width="0" prop="dj_znsex"
:rules="[{required:true,message:'必填',trigger:['change','blur']}]">
<el-radio-group v-model="AddFormData.dj_znsex" size="small">
<el-radio label="男" border></el-radio>
<el-radio label="女" border></el-radio>
</el-radio-group>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="子女出生年月">
<el-form-item label-width="0" prop="dj_znzsny"
:rules="[{required:true,message:'必填',trigger:['change','blur']}]">
<el-date-picker v-model="AddFormData.dj_znzsny"
placeholder="请选择子女出生年月"
value-format="yyyy-MM-dd"
></el-date-picker>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="备注">
<el-form-item label-width="0" prop="dj_babz">
<el-input v-model="AddFormData.dj_babz" placeholder="备注"
max="200"></el-input>
</el-form-item>
</el-descriptions-item>
</el-descriptions>
</el-form>
<span slot="footer" class="dialog-footer">
<el-row type="flex" justify="end" class="mt20">
<el-button type="" @click="dialogVisible=false">
关闭
</el-button>
<el-button type="primary" @click="adminSave">
保存
</el-button>
</el-row>
</span>
</el-dialog>
</div>
</template>
<script>
module.exports = {
name: "rxdjEdit",
dicts: ['childrenSchoolRegisterType'],
data() {
return {
id: null,
sqxxOptions: [],
dj_znzsny_placeholder: "",
planstatus: {dj_znzsny: null},
AddFormData: {
csfile: [],
hkfile: []
},
rules: {},
loading: false,
userList: {},
hkfile: [],
csfile: [],
qmkffile: [],
znnameOptions: [],
currentYearSchoolPlans: [],
dialogVisible: false
}
},
computed: {
typeStatus() {
if (this.AddFormData.dj_djlx) {
return this.currentYearSchoolPlans.find(v => v.bmlx === this.AddFormData.dj_djlx)
}
return null
}
},
methods: {
async open(id) {
const {code, msg, data} = await $.post('/platform/zgfw/rxdjsq/findOne', {id})
if (code === 0) {
this.AddFormData = data
this.dialogVisible = true
}
},
async adminSave() {
const {code, msg, data} = await $.post('/platform/zgfw/rxdj/sh/adminSave', {
info: JSON.stringify(this.AddFormData)
})
if (code === 0) {
this.$message.success(msg)
this.dialogVisible = false
} else {
this.$message.error(msg)
}
}
},
async created() {
$.get('/platform/zgfw/rxdjsq/schoolPlans').then(resp => {
if (resp.code === 0) {
this.currentYearSchoolPlans = resp.data
}
})
},
}
</script>
<style scoped>
.applyForm .el-row--flex .el-form-item {
flex: auto;
}
.descriptions-form .el-form-item {
margin-bottom: 0;
}
.disabled-group .el-radio {
pointer-events: none;
}
.nowrap-select-tag .el-select__tags {
flex-wrap: nowrap;
overflow: hidden;
}
.required-form-item::before {
content: '*';
color: #f56c6c;
margin-right: 3px;
}
.el-descriptions-item__label {
min-width: 180px;
}
.applyForm .el-table__empty-block {
background: unset;
min-height: 60px;
}
</style>
@@ -0,0 +1,149 @@
<template>
<div>
<transition name="el-zoom-in-center">
<div style="padding: 10px" v-show="smm.status==='detail'">
<el-button icon="el-icon-back" type="text" @click="changeStatus" style="font-size: 18px">返回</el-button>
<el-tabs v-model="smm.activeName">
<el-tab-pane label="申请信息" name="1">
<el-card>
<table class="table table-bordered">
<tr>
<td width="20%">申请人</td>
<td>{{viewData.sqrusername}}</td>
<td width="20%">慰问对象</td>
<td>{{viewData.wwrusername}}</td>
</tr>
<tr>
<td>慰问部门</td>
<td>{{viewData.wwbm}}</td>
<td>职称</td>
<td>{{viewData.wwuserzc}}</td>
</tr>
<tr>
<td>拟慰问时间</td>
<td>{{viewData.planwwsj}}</td>
<td>申请金额</td>
<td>{{viewData.wwsqje}}</td>
</tr>
<tr>
<td>申请事由</td>
<td colspan="3">
<div class="text-left">
{{viewData.wwsqsy}}
</div>
</td>
</tr>
<tr>
<td>申请人签字</td>
<td colspan="3">
<div>
<el-image style="width: 200px;height:auto" :src="viewData.sqrqz"/>
</div>
</td>
</tr>
</table>
</el-card>
</el-tab-pane>
<el-tab-pane label="院级工会审核" name="2" v-if="viewData.status>1">
<el-card>
<el-form label-position="right" label-width="100px">
<el-form-item label="审核人">
<div>{{viewData.fghshrname}}</div>
</el-form-item>
<el-form-item label="审核时间">
<div>{{viewData.fghshsj}}</div>
</el-form-item>
<el-form-item label="审核结果">
<div>{{[2,3,5].includes(viewData.status)?'通过':'不通过'}}</div>
</el-form-item>
<el-form-item label="审核意见">
<div style="word-wrap: break-word!important">{{viewData.fghshyj}}</div>
</el-form-item>
<el-form-item label="签字">
<el-image style="width: 200px;height:auto" :src="viewData.fghqz"/>
</el-form-item>
</el-form>
</el-card>
</el-tab-pane>
<el-tab-pane label="校工会审核" name="3" v-if="viewData.status>3">
<el-card>
<el-form label-position="right" label-width="100px">
<el-form-item label="审核人">
<div>{{viewData.xghshrname}}</div>
</el-form-item>
<el-form-item label="审核时间">
<div>{{viewData.xghshsj}}</div>
</el-form-item>
<el-form-item label="审核结果">
<div>{{[2,3,5].includes(viewData.status)?'通过':'不通过'}}</div>
</el-form-item>
<el-form-item label="审核意见">
<div style="word-wrap: break-word!important">{{viewData.xghshyj}}</div>
</el-form-item>
<el-form-item label="签字">
<el-image style="width: 200px;height:auto" :src="viewData.fghqz"/>
</el-form-item>
</el-form>
</el-card>
</el-tab-pane>
<slot name="handle">
</slot>
</el-tabs>
</div>
</transition>
</div>
</template>
<script>
module.exports = {
props: {
smm: {
type: 'Object',
default: () => {
return {
status: 'table',
id: '',
data: {},
activeName: '',
}
}
}
},
data() {
return {
viewData: {
sqrusername:""
}
}
},
methods: {
changeStatus() {
this.smm = {status: 'table', id: ''}
this.$emit('update:smm', this.smm)
},
},
watch: {
smm(o) {
if(o.status==='detail'){
this.viewData = o.data
}
}
}
}
</script>
<style scoped>
.el-card{
margin: 10px;
}
.el-tab-pane {
height: 100%;
overflow-y: auto;
}
td{
text-align: center!important;
vertical-align: middle!important;
}
</style>