mirror of
https://gitee.com/xiangheng/x_admin.git
synced 2025-10-26 09:30:31 +08:00
198 lines
7.1 KiB
Go
198 lines
7.1 KiB
Go
package flowController
|
||
|
||
import (
|
||
"fmt"
|
||
"x_admin/core/request"
|
||
"x_admin/core/response"
|
||
. "x_admin/schema/flowSchema"
|
||
"x_admin/service/flowService"
|
||
"x_admin/util"
|
||
|
||
"github.com/gin-gonic/gin"
|
||
)
|
||
|
||
type FlowHistoryHandler struct {
|
||
}
|
||
|
||
// @Summary 流程历史列表
|
||
// @Tags flow_history-流程历史
|
||
// @Produce json
|
||
// @Param Token header string true "token"
|
||
// @Param PageNo query int true "页码"
|
||
// @Param PageSize query int true "每页数量"
|
||
// @Param applyId query int false "申请id"
|
||
// @Param templateId query int false "模板id"
|
||
// @Param applyUserId query int false "申请人id"
|
||
// @Param applyUserNickname query string false "申请人昵称"
|
||
// @Param approverId query int false "审批人id"
|
||
// @Param approverNickname query string false "审批用户昵称"
|
||
// @Param nodeId query string false "节点"
|
||
// @Param formValue query string false "表单值"
|
||
// @Param passStatus query int false "通过状态:0待处理,1通过,2拒绝"
|
||
// @Param passRemark query string false "通过备注"
|
||
// @Success 200 {object} response.Response{data=response.PageResp{lists=[]FlowHistoryResp}} "成功"
|
||
// @Router /api/admin/flow/flow_history/list [get]
|
||
func (hd FlowHistoryHandler) List(c *gin.Context) {
|
||
var page request.PageReq
|
||
var listReq = FlowHistoryListReq{
|
||
PassStatus: -9999,
|
||
}
|
||
if response.IsFailWithResp(c, util.VerifyUtil.VerifyQuery(c, &page)) {
|
||
return
|
||
}
|
||
if response.IsFailWithResp(c, util.VerifyUtil.VerifyQuery(c, &listReq)) {
|
||
return
|
||
}
|
||
res, err := flowService.HistoryService.List(page, listReq)
|
||
response.CheckAndRespWithData(c, res, err)
|
||
}
|
||
|
||
// @Summary 流程历史列表-所有
|
||
// @Tags flow_history-流程历史
|
||
// @Produce json
|
||
// @Success 200 {object} response.Response{data=FlowHistoryResp} "成功"
|
||
// @Router /api/admin/flow/flow_history/listAll [get]
|
||
func (hd FlowHistoryHandler) ListAll(c *gin.Context) {
|
||
var listReq FlowHistoryListReq
|
||
if response.IsFailWithResp(c, util.VerifyUtil.VerifyQuery(c, &listReq)) {
|
||
return
|
||
}
|
||
res, err := flowService.HistoryService.ListAll(listReq)
|
||
response.CheckAndRespWithData(c, res, err)
|
||
}
|
||
|
||
// @Summary 流程历史详情
|
||
// @Tags flow_history-流程历史
|
||
// @Produce json
|
||
// @Param Token header string true "token"
|
||
// @Param id query int false "历史id"
|
||
// @Success 200 {object} response.Response{data=FlowHistoryResp} "成功"
|
||
// @Router /api/admin/flow/flow_history/detail [get]
|
||
func (hd FlowHistoryHandler) Detail(c *gin.Context) {
|
||
var detailReq FlowHistoryDetailReq
|
||
if response.IsFailWithResp(c, util.VerifyUtil.VerifyQuery(c, &detailReq)) {
|
||
return
|
||
}
|
||
res, err := flowService.HistoryService.Detail(detailReq.Id)
|
||
response.CheckAndRespWithData(c, res, err)
|
||
}
|
||
|
||
// @Summary 流程历史新增
|
||
// @Tags flow_history-流程历史
|
||
// @Produce json
|
||
// @Param Token header string true "token"
|
||
// @Param applyId body int false "申请id"
|
||
// @Param templateId body int false "模板id"
|
||
// @Param applyUserId body int false "申请人id"
|
||
// @Param applyUserNickname body string false "申请人昵称"
|
||
// @Param approverId body int false "审批人id"
|
||
// @Param approverNickname body string false "审批用户昵称"
|
||
// @Param nodeId body string false "节点"
|
||
// @Param formValue body string false "表单值"
|
||
// @Param passStatus body int false "通过状态:0待处理,1通过,2拒绝"
|
||
// @Param passRemark body string false "通过备注"
|
||
// @Success 200 {object} response.Response "成功"
|
||
// @Router /api/admin/flow/flow_history/add [post]
|
||
func (hd FlowHistoryHandler) Add(c *gin.Context) {
|
||
var addReq FlowHistoryAddReq
|
||
if response.IsFailWithResp(c, util.VerifyUtil.VerifyBody(c, &addReq)) {
|
||
return
|
||
}
|
||
response.CheckAndResp(c, flowService.HistoryService.Add(addReq))
|
||
}
|
||
|
||
// @Summary 流程历史编辑
|
||
// @Tags flow_history-流程历史
|
||
// @Produce json
|
||
// @Param Token header string true "token"
|
||
// @Param id body int false "历史id"
|
||
// @Param applyId body int false "申请id"
|
||
// @Param templateId body int false "模板id"
|
||
// @Param applyUserId body int false "申请人id"
|
||
// @Param applyUserNickname body string false "申请人昵称"
|
||
// @Param approverId body int false "审批人id"
|
||
// @Param approverNickname body string false "审批用户昵称"
|
||
// @Param nodeId body string false "节点"
|
||
// @Param formValue body string false "表单值"
|
||
// @Param passStatus body int false "通过状态:0待处理,1通过,2拒绝"
|
||
// @Param passRemark body string false "通过备注"
|
||
// @Success 200 {object} response.Response "成功"
|
||
// @Router /api/admin/flow/flow_history/edit [post]
|
||
func (hd FlowHistoryHandler) Edit(c *gin.Context) {
|
||
var editReq FlowHistoryEditReq
|
||
if response.IsFailWithResp(c, util.VerifyUtil.VerifyBody(c, &editReq)) {
|
||
return
|
||
}
|
||
response.CheckAndResp(c, flowService.HistoryService.Edit(editReq))
|
||
}
|
||
|
||
// @Summary 流程历史删除
|
||
// @Tags flow_history-流程历史
|
||
// @Produce json
|
||
// @Param Token header string true "token"
|
||
// @Param id body int false "历史id"
|
||
// @Success 200 {object} response.Response "成功"
|
||
// @Router /api/admin/flow/flow_history/del [post]
|
||
func (hd FlowHistoryHandler) Del(c *gin.Context) {
|
||
var delReq FlowHistoryDelReq
|
||
if response.IsFailWithResp(c, util.VerifyUtil.VerifyBody(c, &delReq)) {
|
||
return
|
||
}
|
||
response.CheckAndResp(c, flowService.HistoryService.Del(delReq.Id))
|
||
}
|
||
|
||
// 提交申请,通过审批
|
||
//
|
||
// @Tags flow_history-流程历史
|
||
//
|
||
// @Router /api/admin/flow/flow_apply/pass [post]
|
||
func (hd FlowHistoryHandler) Pass(c *gin.Context) {
|
||
var pass PassReq
|
||
if response.IsFailWithResp(c, util.VerifyUtil.VerifyBody(c, &pass)) {
|
||
return
|
||
}
|
||
err := flowService.HistoryService.Pass(pass)
|
||
|
||
response.CheckAndResp(c, err)
|
||
}
|
||
|
||
// 拒绝审批
|
||
//
|
||
// @Tags flow_history-流程历史
|
||
//
|
||
// @Router /api/admin/flow/flow_apply/back [post]
|
||
func (hd FlowHistoryHandler) Back(c *gin.Context) {
|
||
var back BackReq
|
||
if response.IsFailWithResp(c, util.VerifyUtil.VerifyBody(c, &back)) {
|
||
return
|
||
}
|
||
err := flowService.HistoryService.Back(back)
|
||
fmt.Println(err)
|
||
response.CheckAndResp(c, err)
|
||
}
|
||
|
||
// 获取下一个审批节点,中间可能存在系统任务节点和网关
|
||
func (hd FlowHistoryHandler) NextNode(c *gin.Context) {
|
||
var nextNode NextNodeReq
|
||
if response.IsFailWithResp(c, util.VerifyUtil.VerifyBody(c, &nextNode)) {
|
||
return
|
||
}
|
||
res, _, _, err := flowService.HistoryService.GetNextNode(nextNode.ApplyId)
|
||
response.CheckAndRespWithData(c, res, err)
|
||
}
|
||
|
||
// 获取节点的可审批用户
|
||
func (hd FlowHistoryHandler) GetApprover(c *gin.Context) {
|
||
var nextNode NextNodeReq
|
||
// var node FlowTree
|
||
if response.IsFailWithResp(c, util.VerifyUtil.VerifyBody(c, &nextNode)) {
|
||
return
|
||
}
|
||
res, err := flowService.HistoryService.GetApprover(nextNode.ApplyId)
|
||
if err != nil {
|
||
response.FailWithMsg(c, response.Failed, err.Error())
|
||
return
|
||
}
|
||
response.OkWithData(c, res)
|
||
}
|