fix: 使用 form_data 存储运行时审批人,不修改 approval_node 模板
主要修改:
1. submit() 方法不再修改 approval_node 表,节点仅作为流程模板
2. getList() 的 pending 查询从 form_data.approvers 获取审批人列表
3. approve() 方法从 form_data.approvers 检查用户是否有权限
4. 兼容两种数据格式:[1,2,3] 或 [{id:1},{id:2},{id:3}]
修复问题:
- 之前每次提交申请都会修改 approval_node 表的 approvers 字段
- 这导致流程模板被污染,不同的申请共享同一个节点配置
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -129,9 +129,15 @@ class BusinessTripController extends BaseController
|
||||
$data = $request->post();
|
||||
$data = $data ?? [];
|
||||
|
||||
error_log("📝 提交申请 - 用户ID: {$userId}, 申请ID: {$id}");
|
||||
error_log("📦 接收到的数据: " . json_encode($data, JSON_UNESCAPED_UNICODE));
|
||||
|
||||
$approvers = $data['approvers'] ?? [];
|
||||
$ccUsers = $data['cc_users'] ?? [];
|
||||
|
||||
error_log("👥 审批人列表: " . json_encode($approvers, JSON_UNESCAPED_UNICODE));
|
||||
error_log("📨 抄送人列表: " . json_encode($ccUsers, JSON_UNESCAPED_UNICODE));
|
||||
|
||||
if (empty($approvers)) {
|
||||
return $this->error('请选择审批人');
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user