Refactor project pages and update related docs

This commit is contained in:
wkc
2026-05-28 16:37:51 +08:00
parent 000e8698a5
commit 7ce721ef93
40 changed files with 730 additions and 785 deletions

File diff suppressed because one or more lines are too long

View File

@@ -11,7 +11,7 @@ CREATE TABLE `ccdi_project` (
`project_name` VARCHAR(200) NOT NULL COMMENT '项目名称',
`description` VARCHAR(500) DEFAULT NULL COMMENT '项目描述',
`config_type` VARCHAR(20) NOT NULL DEFAULT 'default' COMMENT '配置方式default-全局默认custom-自定义',
`status` CHAR(1) NOT NULL DEFAULT '0' COMMENT '项目状态0-进行中1-已完成2-已归档3-打标中',
`status` CHAR(1) NOT NULL DEFAULT '0' COMMENT '项目状态0-进行中1-已完成2-已归档3-打标中4-打标失败',
`is_archived` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否归档0-未归档1-已归档',
`target_count` INT NOT NULL DEFAULT 0 COMMENT '目标人数',
`high_risk_count` INT NOT NULL DEFAULT 0 COMMENT '高风险人数',
@@ -42,7 +42,8 @@ VALUES
(1, '进行中', '0', 'ccdi_project_status', '', 'primary', 'Y', '0', 'admin', NOW()),
(2, '已完成', '1', 'ccdi_project_status', '', 'success', 'N', '0', 'admin', NOW()),
(3, '已归档', '2', 'ccdi_project_status', '', 'info', 'N', '0', 'admin', NOW()),
(4, '打标中', '3', 'ccdi_project_status', '', 'warning', 'N', '0', 'admin', NOW());
(4, '打标中', '3', 'ccdi_project_status', '', 'warning', 'N', '0', 'admin', NOW()),
(5, '打标失败', '4', 'ccdi_project_status', '', 'danger', 'N', '0', 'admin', NOW());
-- ----------------------------
-- 4. 插入配置方式字典

View File

@@ -0,0 +1,53 @@
ALTER TABLE ccdi_project
MODIFY COLUMN status CHAR(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0'
COMMENT '项目状态0-进行中1-已完成2-已归档3-打标中4-打标失败';
INSERT INTO sys_dict_data (
dict_sort,
dict_label,
dict_value,
dict_type,
css_class,
list_class,
is_default,
status,
create_by,
create_time
)
SELECT
5,
'打标失败',
'4',
'ccdi_project_status',
'',
'danger',
'N',
'0',
'admin',
NOW()
WHERE NOT EXISTS (
SELECT 1
FROM sys_dict_data
WHERE dict_type = 'ccdi_project_status'
AND dict_value = '4'
);
UPDATE ccdi_project project
JOIN (
SELECT latest.project_id, latest.status
FROM ccdi_bank_tag_task latest
JOIN (
SELECT project_id, MAX(id) AS latest_id
FROM ccdi_bank_tag_task
GROUP BY project_id
) latest_id
ON latest.id = latest_id.latest_id
) latest_task
ON latest_task.project_id = project.project_id
SET project.status = '4',
project.update_by = 'system',
project.update_time = NOW()
WHERE latest_task.status = 'FAILED'
AND project.status IN ('0', '3')
AND (project.is_archived IS NULL OR project.is_archived = 0)
AND project.del_flag = '0';