feat(bpm): add admin cancel process instance functionality

- Added admin-cancel endpoint in BpmProcessInstanceController
- Implemented adminCancelProcessInstance method in service layer
- Added permission check for admin cancel operation
- Handled both active and historic process instance cancellation
- Updated bill approval status after cancellation
- Added corresponding service method declaration in interface
This commit is contained in:
2025-11-17 10:30:19 +08:00
parent 28037792cf
commit ba19342fa9
3 changed files with 500 additions and 1 deletions

View File

@@ -84,4 +84,12 @@ public class BpmProcessInstanceController extends BaseController {
return success(true);
}
@DeleteMapping("/admin-cancel")
@Operation(tags = "流程管理", summary = "管理员取消流程实例", description = "管理员强制取消任意流程实例")
@PreAuthorize("@ss.hasPermission('bpm:process-instance:admin-cancel')")
public CommonResult<Boolean> adminCancelProcessInstance(@Valid @RequestBody BpmProcessInstanceCancelReqVO cancelReqVO) {
processInstanceService.adminCancelProcessInstance(getLoginUserId(), cancelReqVO);
return success(true);
}
}

View File

@@ -111,6 +111,14 @@ public interface IBpmProcessInstanceService {
*/
void cancelProcessInstance(Long userId, @Valid BpmProcessInstanceCancelReqVO cancelReqVO);
/**
* 管理员取消流程实例
*
* @param adminUserId 管理员用户编号
* @param cancelReqVO 取消信息
*/
void adminCancelProcessInstance(Long adminUserId, @Valid BpmProcessInstanceCancelReqVO cancelReqVO);
/**
* 获得历史的流程实例
*