学生资助、学生奖惩等内容提交

This commit is contained in:
2025-12-03 09:55:58 +08:00
parent a5c6980bdd
commit aa83bf8b94
26 changed files with 2288 additions and 1411 deletions

View File

@@ -41,6 +41,7 @@
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-view" @click="lookVClick(scope.row)">查看</el-button>
<el-button v-if="scope.row.applyStatus != 1" size="mini" type="text" icon="el-icon-refresh-left" @click="handleRevoke(scope.row)">撤回</el-button>
</template>
</el-table-column>
</el-table>
@@ -121,7 +122,7 @@ import {getTokenKeySessionStorage as getToken} from '@/utils/auth'
import TufaApply from '@/views/comprehensive/knzzZzqApply/cpnt/TufaApply.vue'
import TufaLook from '@/views/comprehensive/knzzZzqApply/cpnt/TufaLook.vue'
import {listFdyAll as listView, doAudit} from '@/api/comprehensive/knzzZzqApply'
import {listFdyAll as listView, doEdit} from '@/api/comprehensive/knzzZzqApply'
import {getOwnSign} from '@/api/workstudy/post'
@@ -212,6 +213,29 @@ export default {
this.lookV = true
},
// 撤回到“已提交审核”applyStatus=1
async handleRevoke(row) {
try {
await this.$confirm('确定撤回该申请至“已提交审核”状态吗?', '提示', { type: 'warning' })
} catch (e) {
return
}
const loading = this.$loading({ lock: true, text: '撤回中…' })
try {
const payload = { id: row.id, applyStatus: 1 }
const res = await doEdit(payload)
if (res.code === 200) {
this.$message.success('撤回成功,状态已变更为:已提交审核')
this.getList()
} else {
this.$message.error(res.msg || '撤回失败')
}
} catch (err) {
this.$message.error(`撤回失败:${err?.message || '网络错误'}`)
} finally {
loading.close && loading.close()
}
},
/** 导出按钮操作 */
handleExport() {
this.download('/comprehensive/knzzZzqApply/export', {

View File

@@ -42,6 +42,7 @@
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-view" @click="lookVClick(scope.row)">审核</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="openEdit(scope.row)">修改数据</el-button>
</template>
</el-table-column>
</el-table>
@@ -164,7 +165,58 @@
</el-dialog>
</div>
<!-- 修改数据弹窗 -->
<el-dialog title="修改" :visible.sync="editV" width="900px" @close="getList">
<el-form label-width="200px" size="mini" class="lookForm">
<el-form-item label="入学时间">
<el-input v-model="editForm.inTime" />
</el-form-item>
<el-form-item label="曾获何种奖励">
<el-input v-model="editForm.helpHis" type="textarea" />
</el-form-item>
<el-form-item label="专业名次">
<el-input v-model="editForm.majorRank" />
</el-form-item>
<el-form-item label="专业总人数">
<el-input v-model="editForm.majorNum" />
</el-form-item>
<el-form-item label="是否实行综合考评排名">
<el-radio-group v-model="editForm.isCph">
<el-radio :label="'是'"></el-radio>
<el-radio :label="'否'"></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="必修课门数">
<el-input v-model="editForm.bxk" />
</el-form-item>
<el-form-item label="及格门数">
<el-input v-model="editForm.jg" />
</el-form-item>
<el-form-item label="班级排名">
<el-input v-model="editForm.classRank" />
</el-form-item>
<el-form-item label="班级总人数">
<el-input v-model="editForm.classNum" />
</el-form-item>
<el-form-item label="申请理由">
<el-input v-model="editForm.applyReason" type="textarea" />
</el-form-item>
<el-form-item label="申请材料">
<FileUpload v-model="editForm.applyFile" />
</el-form-item>
<el-form-item label="申请人签名">
<el-upload style="display: inline;" :before-upload="boolImg" accept="image/jpg,image/jpeg,image/png,image/bmp" :limit="1" class="avatar-uploader" :action="upload.url" :headers="upload.headers" :show-file-list="false" :file-list="upload.fileList" :on-success="handleEditSignSuccess">
<img v-if="editForm.applySign" :src="baseurl + editForm.applySign" width="200px" height="50px" class="avatar">
<span v-else> 点击上传</span>
</el-upload>
</el-form-item>
<el-form-item label=" ">
<el-button type="primary" plain @click="handleEditSave">提交修改</el-button>
</el-form-item>
</el-form>
</el-dialog>
</div>
</template>
<script>
@@ -175,7 +227,7 @@ import {getTokenKeySessionStorage as getToken} from '@/utils/auth'
import TufaApply from '@/views/comprehensive/knzzZzqApply/cpnt/TufaApply.vue'
import TufaLook from '@/views/comprehensive/knzzZzqApply/cpnt/TufaLook.vue'
import {listFdy as listView, doAudit, doMany} from '@/api/comprehensive/knzzZzqApply'
import {listFdy as listView, doAudit, doMany, doEdit, getKnzzZzqApply, updateKnzzZzqApply} from '@/api/comprehensive/knzzZzqApply'
import {getOwnSign} from '@/api/workstudy/post'
@@ -199,6 +251,23 @@ export default {
lookForm: {},
lookV: false,
editV: false,
editForm: {
id: null,
inTime: '',
helpHis: '',
majorRank: '',
majorNum: '',
isCph: '',
bxk: '',
jg: '',
classRank: '',
classNum: '',
applyReason: '',
applyFile: '',
applySign: ''
},
originalEditForm: {},
auditForm: {
fdySign: '',
@@ -388,6 +457,47 @@ export default {
this.lookV = true
},
async openEdit(row) {
const loading = fullLoading(this)
try {
const res = await getKnzzZzqApply(row.id)
if (res.code === 200) {
this.editForm = { ...res.data }
this.originalEditForm = { ...res.data }
this.editV = true
} else {
this.$message.error(res.msg || '获取详情失败')
}
} catch (e) {
this.$message.error('获取详情异常,请稍后重试')
} finally {
loading.close()
}
},
handleEditSignSuccess(response, file, fileList) {
this.editForm.applySign = response.fileName
this.upload.fileList = []
this.$forceUpdate()
},
async handleEditSave() {
const sdata = { ...this.editForm }
const loading = fullLoading(this)
try {
const res = await doEdit(sdata)
if (res.code == 200) {
this.$message.success('保存成功')
this.editV = false
this.getList()
} else {
this.$message.error(res.msg || '保存失败')
}
} catch (e) {
this.$message.error('保存异常,请稍后重试')
} finally {
loading.close()
}
},
changeAuditRes(v) {
switch (v) {
case '通过':