This commit is contained in:
V-LiuShuang committed 2026-09-22 17:39:02 +08:00
1 parent bbaf0d18a8
commit da41eb6d45
3 files changed
+222 -364

No files matched your search

+70
View File
@@ -8,6 +8,7 @@
- [查项目统计数据](#查项目统计数据)
- [新增devco账号](#新增devco账号)
- [查paw-agent信息](#查paw-agent信息)
- [查工作流工单状态](#查工作流工单状态)
## 查智能体用户数
@@ -208,4 +209,73 @@ from
`mis-paw-claw`.`agent`
where
create_by = < user_id >;
```
## 查工作流工单状态
```sql
CREATE DEFINER=`root`@`%` PROCEDURE `sp_flow_status_by_business_key`(IN p_business_key VARCHAR(64))
BEGIN
-- 1) 流程实例摘要
SELECT
h.BUSINESS_KEY_ AS business_key,
h.PROC_INST_ID_ AS process_instance_id,
SUBSTRING_INDEX(h.PROC_DEF_ID_, ':', 1) AS process_key,
h.BUSINESS_STATUS_ AS business_status,
CASE h.BUSINESS_STATUS_
WHEN 'waiting' THEN '待审核'
WHEN 'finish' THEN '已完成'
WHEN 'back' THEN '已退回'
WHEN 'cancel' THEN '已撤销'
WHEN 'draft' THEN '草稿'
ELSE IFNULL(h.BUSINESS_STATUS_, '未知')
END AS business_status_name,
h.START_USER_ID_ AS start_user_id,
h.START_TIME_ AS start_time,
h.END_TIME_ AS end_time,
CASE WHEN h.END_TIME_ IS NULL THEN 'RUNNING' ELSE 'FINISHED' END AS flow_state,
(SELECT COUNT(1)
FROM ACT_RU_TASK t
INNER JOIN ACT_RU_EXECUTION e ON e.ID_ = t.PROC_INST_ID_
WHERE e.BUSINESS_KEY_ = h.BUSINESS_KEY_
AND e.PROC_INST_ID_ = h.PROC_INST_ID_) AS pending_task_count
FROM ACT_HI_PROCINST h
WHERE h.BUSINESS_KEY_ = p_business_key
ORDER BY h.START_TIME_ DESC;
-- 2) 当前待办
SELECT
t.ID_ AS task_id,
t.NAME_ AS task_name,
t.TASK_DEF_KEY_ AS task_definition_key,
t.ASSIGNEE_ AS assignee,
t.CREATE_TIME_ AS create_time,
t.PROC_INST_ID_ AS process_instance_id,
e.BUSINESS_KEY_ AS business_key
FROM ACT_RU_TASK t
INNER JOIN ACT_RU_EXECUTION e ON e.ID_ = t.PROC_INST_ID_
WHERE e.BUSINESS_KEY_ = p_business_key
ORDER BY t.CREATE_TIME_ ASC;
-- 3) 历史任务 + 意见
SELECT
ht.ID_ AS task_id,
ht.NAME_ AS task_name,
ht.TASK_DEF_KEY_ AS task_definition_key,
ht.ASSIGNEE_ AS assignee,
ht.START_TIME_ AS start_time,
ht.END_TIME_ AS end_time,
c.TYPE_ AS comment_type,
c.MESSAGE_ AS comment_msg,
h.PROC_INST_ID_ AS process_instance_id,
h.BUSINESS_KEY_ AS business_key
FROM ACT_HI_TASKINST ht
INNER JOIN ACT_HI_PROCINST h ON h.PROC_INST_ID_ = ht.PROC_INST_ID_
LEFT JOIN ACT_HI_COMMENT c
ON c.TASK_ID_ = ht.ID_
AND c.TYPE_ IN ('pass', 'back')
WHERE h.BUSINESS_KEY_ = p_business_key
AND (ht.PARENT_TASK_ID_ IS NULL OR ht.PARENT_TASK_ID_ = '')
ORDER BY ht.START_TIME_ ASC, ht.ID_ ASC;
END
```