申诉管理模块: 查询统计已完成新增删除按钮(仅超级管理员可见);
This commit is contained in:
+22
@@ -4,17 +4,23 @@ import cn.dev33.satoken.annotation.SaCheckPermission;
|
|||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import com.budwk.app.base.page.Pagination;
|
import com.budwk.app.base.page.Pagination;
|
||||||
import com.budwk.app.base.result.Result;
|
import com.budwk.app.base.result.Result;
|
||||||
|
import com.budwk.app.flow.engine.FlowEngine;
|
||||||
|
import com.budwk.app.flow.entity.ProcessInstance;
|
||||||
|
import com.budwk.app.flow.enums.ProcessInstanceStateEnum;
|
||||||
import com.budwk.app.zhgh.democratic.appeal.service.AppealInfoService;
|
import com.budwk.app.zhgh.democratic.appeal.service.AppealInfoService;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
|
import org.nutz.aop.interceptor.ioc.TransAop;
|
||||||
import org.nutz.dao.Cnd;
|
import org.nutz.dao.Cnd;
|
||||||
import org.nutz.dao.Sqls;
|
import org.nutz.dao.Sqls;
|
||||||
import org.nutz.dao.sql.Sql;
|
import org.nutz.dao.sql.Sql;
|
||||||
|
import org.nutz.ioc.aop.Aop;
|
||||||
import org.nutz.ioc.loader.annotation.Inject;
|
import org.nutz.ioc.loader.annotation.Inject;
|
||||||
import org.nutz.ioc.loader.annotation.IocBean;
|
import org.nutz.ioc.loader.annotation.IocBean;
|
||||||
import org.nutz.lang.util.NutMap;
|
import org.nutz.lang.util.NutMap;
|
||||||
import org.nutz.mvc.annotation.At;
|
import org.nutz.mvc.annotation.At;
|
||||||
import org.nutz.mvc.annotation.Ok;
|
import org.nutz.mvc.annotation.Ok;
|
||||||
|
import org.nutz.mvc.annotation.Param;
|
||||||
|
|
||||||
@IocBean
|
@IocBean
|
||||||
@At("/platform/appeal/query")
|
@At("/platform/appeal/query")
|
||||||
@@ -24,6 +30,8 @@ public class AppealQueryController {
|
|||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
private AppealInfoService appealInfoService;
|
private AppealInfoService appealInfoService;
|
||||||
|
@Inject
|
||||||
|
private FlowEngine flowEngine;
|
||||||
|
|
||||||
@At("")
|
@At("")
|
||||||
@Ok("beetl:/platform/zhgh/democratic/appeal/query/index.html")
|
@Ok("beetl:/platform/zhgh/democratic/appeal/query/index.html")
|
||||||
@@ -72,6 +80,20 @@ public class AppealQueryController {
|
|||||||
return Result.success(data);
|
return Result.success(data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@At
|
||||||
|
@SaCheckPermission("appeal.query")
|
||||||
|
@Aop(TransAop.READ_COMMITTED)
|
||||||
|
@ApiOperation("删除申诉")
|
||||||
|
public Result delete(@Param("id") String id) {
|
||||||
|
ProcessInstance instance = flowEngine.processInstanceService().fetch(Cnd.where(ProcessInstance::getBusinessNo, "=", id));
|
||||||
|
if (instance == null || !ProcessInstanceStateEnum.FINISHED.getCode().equals(instance.getState())) {
|
||||||
|
return Result.error("仅可删除已完成的申诉记录");
|
||||||
|
}
|
||||||
|
appealInfoService.delete(id);
|
||||||
|
flowEngine.processInstanceService().deleteProcessInstanceByBusinessKey(id);
|
||||||
|
return Result.success();
|
||||||
|
}
|
||||||
|
|
||||||
private Cnd buildCondition(String searchKeyword, String appealTypeId, String state, String unitId,
|
private Cnd buildCondition(String searchKeyword, String appealTypeId, String state, String unitId,
|
||||||
String defendantUnitId, Integer year) {
|
String defendantUnitId, Integer year) {
|
||||||
Cnd cnd = Cnd.NEW();
|
Cnd cnd = Cnd.NEW();
|
||||||
|
|||||||
@@ -77,7 +77,7 @@ layout("/layouts/platform.html"){
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="taskName" label="当前节点" width="120"></el-table-column>
|
<el-table-column prop="taskName" label="当前节点" width="120"></el-table-column>
|
||||||
<el-table-column label="操作" fixed="right" width="200">
|
<el-table-column label="操作" fixed="right" width="250">
|
||||||
<template slot-scope="{row}">
|
<template slot-scope="{row}">
|
||||||
<el-button size="mini" type="primary" @click="onOpen(row)">查看</el-button>
|
<el-button size="mini" type="primary" @click="onOpen(row)">查看</el-button>
|
||||||
<el-button size="mini" type="primary" v-if="canEdit(row)" @click="onEdit(row)">修改</el-button>
|
<el-button size="mini" type="primary" v-if="canEdit(row)" @click="onEdit(row)">修改</el-button>
|
||||||
|
|||||||
@@ -196,9 +196,10 @@ layout("/layouts/platform.html"){
|
|||||||
<span v-else>-</span>
|
<span v-else>-</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="操作" fixed="right" width="90">
|
<el-table-column label="操作" fixed="right" width="150">
|
||||||
<template slot-scope="{row}">
|
<template slot-scope="{row}">
|
||||||
<el-button size="mini" type="primary" @click="onOpen(row)">查看</el-button>
|
<el-button size="mini" type="primary" @click="onOpen(row)">查看</el-button>
|
||||||
|
<el-button v-if="canDelete(row)" size="mini" type="danger" @click="onDelete(row)">删除</el-button>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
@@ -257,6 +258,24 @@ layout("/layouts/platform.html"){
|
|||||||
this.$refs.infoRef.onOpen(row)
|
this.$refs.infoRef.onOpen(row)
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
canDelete(row) {
|
||||||
|
return this.$auth.hasRole('SYSADMIN') && row.state === '已办结' && Number(row.instanceState) === 20
|
||||||
|
},
|
||||||
|
onDelete(row) {
|
||||||
|
this.$confirm("您确定要删除吗?", "提示", {
|
||||||
|
confirmButtonText: "确定",
|
||||||
|
cancelButtonText: "取消",
|
||||||
|
type: "warning"
|
||||||
|
}).then(() => {
|
||||||
|
this.$axios.post("/platform/appeal/query/delete", {id: row.id}).then((res) => {
|
||||||
|
if (res.code === 0) {
|
||||||
|
this.$message.success(res.msg)
|
||||||
|
this.pageData()
|
||||||
|
this.loadStatistics()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
doSearch() {
|
doSearch() {
|
||||||
this.pageNumber = 1
|
this.pageNumber = 1
|
||||||
this.pageData()
|
this.pageData()
|
||||||
|
|||||||
Reference in New Issue
Block a user