This commit is contained in:
=
2026-06-10 10:00:43 +08:00
parent 753e4f800b
commit e39643bcd4
13 changed files with 177 additions and 9 deletions
Binary file not shown.

Before

Width:  |  Height:  |  Size: 70 KiB

After

Width:  |  Height:  |  Size: 2.1 MiB

@@ -3,6 +3,12 @@
<el-form-item label="审批意见" prop="tf_opinion" :rules="[{required:true,message:'必填',trigger:['change','blur']}]">
<user-opinion-textarea v-model="formData.tf_opinion"></user-opinion-textarea>
</el-form-item>
<el-form-item label="是否需要副主席审核" prop="select">
<el-radio-group v-model="formData.select" size="small">
<el-radio label="need" border>是</el-radio>
<el-radio label="notNeeded" border>否</el-radio>
</el-radio-group>
</el-form-item>
</el-form>
<snaker-flow-task-form-action @task-action="handleTaskAction" @cancel="handleCancel"></snaker-flow-task-form-action>
</div>
@@ -18,8 +24,16 @@
},
}
},
mounted() {
this.$set(this.formData, "select", "")
},
methods: {
handleTaskAction(val) {
// 同意流转时必须带流程分支变量 select,供 HDBX 条件线判断是否进入副主席审核。
if (val.submitType === 1 && !this.formData.select) {
this.$message.warning("请选择是否需要副主席审核")
return
}
this.$refs.formRef.validate(valid => {
if (valid) {
console.log(val)
@@ -127,6 +127,12 @@ layout("/layouts/platform.html"){
:rules="[{required:true,message:'必填',trigger:['change','blur']}]">
<pc-signature v-model="formData.tf_userSign"></pc-signature>
</el-form-item>
<el-form-item label="是否需要副主席审核" prop="select">
<el-radio-group v-model="formData.select" size="small">
<el-radio label="need" border>是</el-radio>
<el-radio label="notNeeded" border>否</el-radio>
</el-radio-group>
</el-form-item>
</el-form>
<el-row type="flex" justify="end">
<el-button @click="$refs.guava.index()" size="small">取消</el-button>
@@ -194,11 +200,17 @@ layout("/layouts/platform.html"){
processTaskId: row.taskId,
taskName: row.curTaskName
}
this.$set(this.formData, "select", "")
this.$refs.infoRef.onOpen(row)
})
},
handleTaskAction(val) {
// 同意流转时必须带流程分支变量 select,供 HDBX 条件线判断是否进入副主席审核。
if (val === 1 && !this.formData.select) {
this.$message.warning("请选择是否需要副主席审核")
return
}
this.$refs.formRef.validate((valid) => {
if (valid) {
this.$confirm("您确定要提交吗?", "提示", {
@@ -132,8 +132,7 @@ layout("/layouts/platform.html"){
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="户口簿照片" :span="2">
<el-form-item prop="huKouFiles"
:rules="[{required:true,message:'必填',trigger:['change','blur']}]">
<el-form-item prop="huKouFiles">
<file-upload :upload_number="10" :value.sync="formData.huKouFiles"
upload_result_type="url"
upload_text="请上传户口首页、户主页、父母和子女页"
@@ -41,14 +41,24 @@ layout("/layouts/platform.html"){
<el-option v-for="item in unitOptions" :label="item.name" :value="item.id"></el-option>
</el-select>
</search-item>
<search-item label="是否解决">
<el-select clearable placeholder="请选择是否解决"
style="width: 100%;"
v-model="pageForm.solved">
<el-option label="已解决" :value="true"></el-option>
<el-option label="未解决" :value="false"></el-option>
</el-select>
</search-item>
</search>
</el-card>
<el-card shadow="never">
<table-tool label="申请列表">
<el-button @click="doExportExcel" size="mini" type="primary">导出汇总名单
<el-button @click="doBatchSetSolved" size="small" type="primary">一键设置已解决
</el-button>
<el-button @click="doExportZip" size="mini" type="primary">导出附件zip
<el-button @click="doExportExcel" icon="el-icon-download" size="small" type="primary">导出汇总名单
</el-button>
<el-button @click="doExportZip" icon="el-icon-download" size="small" type="primary">导出附件zip
</el-button>
</table-tool>
<el-table :data="tableData" @sort-change="pageOrder" style="width: 100%">
@@ -66,9 +76,20 @@ layout("/layouts/platform.html"){
</template>
</el-table-column>
<el-table-column prop="applyTime" label="填报时间"></el-table-column>
<el-table-column prop="solved" label="是否解决">
<template v-slot="{row}">
<el-tag :type="isSolved(row) ? 'success' : 'info'">
{{isSolved(row) ? '已解决' : '未解决'}}
</el-tag>
</template>
</el-table-column>
<el-table-column align="center" fixed="right" header-align="center" label="操作"
width="300px">
<template scope="{row}">
<el-button @click="doUpdateSolved(row, !isSolved(row))" size="mini"
:type="isSolved(row) ? 'success' : 'info'">
{{isSolved(row) ? '已解决' : '未解决'}}
</el-button>
<el-button @click="openView(row)" size="mini" type="primary">查看</el-button>
<el-button @click="doDelete(row)" size="mini" type="danger"
v-if="$auth.hasRoleOr(['SYSADMIN'])">删除
@@ -134,6 +155,44 @@ layout("/layouts/platform.html"){
data: JSON.stringify(this.pageForm)
})
},
isSolved(row) {
return row.solved === true || row.solved === 1 || row.solved === "1"
},
// 切换单条记录解决状态,历史空值在页面上按未解决处理。
doUpdateSolved(row, solved) {
this.$confirm("确定要切换解决状态吗?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
}).then(() => {
this.$axios.post("/platform/enrollmentRegistration/summary/doUpdateSolved", {
id: row.id,
solved: solved
}).then((resp) => {
if (resp.code === 0) {
this.$set(row, "solved", solved)
this.$message.success("操作成功")
}
})
})
},
// 按当前筛选条件批量设置,后端会更新符合条件的全部记录。
doBatchSetSolved() {
this.$confirm("确定将当前筛选条件下的数据全部设置为已解决吗?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
}).then(() => {
this.$axios.post("/platform/enrollmentRegistration/summary/doBatchSetSolved", {
data: JSON.stringify(this.pageForm)
}).then((resp) => {
if (resp.code === 0) {
this.$message.success(resp.msg || "操作成功")
this.doSearch()
}
})
})
},
openView(row) {
this.$refs.guava.view(() => {
this.showApprovalForm = false