-- ============================================
-- 习讲话经办人反馈流程（xispeak经办人反馈流程）节点权限对齐
-- 依据: 习讲话反馈流程节点权限.ods（以 ODS 为准）
-- 涉及表: ext_act_process_node / ext_act_process_node_reject_target
-- 目标: 7 个节点按 ODS 设置 model_and_view(URL参数)、default_opinion、reject_status、cc_status、驳回目标
-- 说明:
--   - 基本信息权限全部"可见，不可编辑" → form_edit_status 保持 0（不改）
--   - 反馈信息权限: 可反馈可编辑→showAdd+showEdit; 可见不可编辑→只读; 纪检字段生效→showJiJianFields
--     · 1.6 纪检经办人监察：可编辑纪检字段（showEdit+nonJiJianFieldsReadonly+showJiJian）
--     · 1.7 纪检负责人审批：只读显示纪检字段（showJiJian）
--   - 选择经办人权限: 全部"不可见" → 不带 showSubApproveUser
--   - 抄送: ODS 全部"不抄送" → cc_status='0'
--   - 驳回: 可驳回→reject_status='1'+reject_target；不可驳回→'0'
-- 执行环境: 先 deploy-test 验证，再同步其他环境；执行后去流程设计器点"发布"
-- ============================================

START TRANSACTION;

-- ============================================
-- 1. 节点配置 UPDATE（7 节点，按 ODS 全量覆盖）
-- ============================================

-- 1.1 部门经办人反馈完成情况（可反馈可编辑 / 已完成反馈，请领导审批 / 不可驳回 / 不抄送）
UPDATE ext_act_process_node SET
  model_and_view = 'bg/xispeak/components/BgXiSpeakBPMForm?showProcessHandle=1&showFeedbackInfo=1&showAddFeedback=1&showEditFeedback=1',
  default_opinion = '已完成反馈，请领导审批',
  reject_status = '0',
  cc_status = '0'
WHERE process_id='2058711133876629506' AND process_node_code='Task_12vdqzv';

-- 1.2 部门负责人直接反馈（可反馈可编辑 / 已完成反馈，请督办经办人核查 / 不可驳回 / 不抄送）
UPDATE ext_act_process_node SET
  model_and_view = 'bg/xispeak/components/BgXiSpeakBPMForm?showProcessHandle=1&showFeedbackInfo=1&showAddFeedback=1&showEditFeedback=1',
  default_opinion = '已完成反馈，请督办经办人核查',
  reject_status = '0',
  cc_status = '0'
WHERE process_id='2058711133876629506' AND process_node_code='Task_0sialna';

-- 1.3 部门负责人审批（可反馈可编辑 / 已审批，请督办经办人核查 / 可驳回1.1 / 不抄送）
UPDATE ext_act_process_node SET
  model_and_view = 'bg/xispeak/components/BgXiSpeakBPMForm?showProcessHandle=1&showFeedbackInfo=1&showAddFeedback=1&showEditFeedback=1',
  default_opinion = '已审批，请督办经办人核查',
  reject_status = '1',
  cc_status = '0'
WHERE process_id='2058711133876629506' AND process_node_code='Task_06di2wf';

-- 1.4 督办经办人核查（可见不可编辑 / 已核查，请领导涉审批 / 可驳回1.1,1.2,1.3 / 不抄送）
UPDATE ext_act_process_node SET
  model_and_view = 'bg/xispeak/components/BgXiSpeakBPMForm?showProcessHandle=1&showFeedbackInfo=1',
  default_opinion = '已核查，请领导涉审批',
  reject_status = '1',
  cc_status = '0'
WHERE process_id='2058711133876629506' AND process_node_code='Task_13olnz1';

-- 1.5 督办部门负责人审批（可见不可编辑 / 已审批，请纪检经办人监察 / 可驳回1.1-1.4 / 不抄送）
UPDATE ext_act_process_node SET
  model_and_view = 'bg/xispeak/components/BgXiSpeakBPMForm?showProcessHandle=1&showFeedbackInfo=1',
  default_opinion = '已审批，请纪检经办人监察',
  reject_status = '1',
  cc_status = '0'
WHERE process_id='2058711133876629506' AND process_node_code='Task_1l650tz';

-- 1.6 纪检经办人监察（纪检字段生效·可编辑纪检字段 / 已监察，请领导审批 / 可驳回1.1-1.5 / 不抄送）
UPDATE ext_act_process_node SET
  model_and_view = 'bg/xispeak/components/BgXiSpeakBPMForm?showProcessHandle=1&showFeedbackInfo=1&showEditFeedback=1&nonJiJianFieldsReadonly=1&showJiJianFields=1',
  default_opinion = '已监察，请领导审批',
  reject_status = '1',
  cc_status = '0'
WHERE process_id='2058711133876629506' AND process_node_code='Task_0bahwr8';

-- 1.7 纪检负责人审批（纪检字段生效·只读显示 / 已审批 / 可驳回1.1-1.6 / 不抄送）
UPDATE ext_act_process_node SET
  model_and_view = 'bg/xispeak/components/BgXiSpeakBPMForm?showProcessHandle=1&showFeedbackInfo=1&showJiJianFields=1',
  default_opinion = '已审批',
  reject_status = '1',
  cc_status = '0'
WHERE process_id='2058711133876629506' AND process_node_code='Task_005iiwi';

-- ============================================
-- 2. 驳回目标（先清后插，保证与 ODS 完全一致）
-- ============================================
DELETE FROM ext_act_process_node_reject_target WHERE process_id='2058711133876629506';

INSERT INTO ext_act_process_node_reject_target (id, process_id, source_node_code, target_node_code, target_node_name) VALUES
  -- 1.3 可驳回到 1.1
  (UUID(), '2058711133876629506', 'Task_06di2wf', 'Task_12vdqzv', '部门经办人反馈完成情况'),
  -- 1.4 可驳回到 1.1, 1.2, 1.3
  (UUID(), '2058711133876629506', 'Task_13olnz1', 'Task_12vdqzv', '部门经办人反馈完成情况'),
  (UUID(), '2058711133876629506', 'Task_13olnz1', 'Task_0sialna', '部门负责人直接反馈'),
  (UUID(), '2058711133876629506', 'Task_13olnz1', 'Task_06di2wf', '部门负责人审批'),
  -- 1.5 可驳回到 1.1-1.4
  (UUID(), '2058711133876629506', 'Task_1l650tz', 'Task_12vdqzv', '部门经办人反馈完成情况'),
  (UUID(), '2058711133876629506', 'Task_1l650tz', 'Task_0sialna', '部门负责人直接反馈'),
  (UUID(), '2058711133876629506', 'Task_1l650tz', 'Task_06di2wf', '部门负责人审批'),
  (UUID(), '2058711133876629506', 'Task_1l650tz', 'Task_13olnz1', '督办经办人核查'),
  -- 1.6 可驳回到 1.1-1.5
  (UUID(), '2058711133876629506', 'Task_0bahwr8', 'Task_12vdqzv', '部门经办人反馈完成情况'),
  (UUID(), '2058711133876629506', 'Task_0bahwr8', 'Task_0sialna', '部门负责人直接反馈'),
  (UUID(), '2058711133876629506', 'Task_0bahwr8', 'Task_06di2wf', '部门负责人审批'),
  (UUID(), '2058711133876629506', 'Task_0bahwr8', 'Task_13olnz1', '督办经办人核查'),
  (UUID(), '2058711133876629506', 'Task_0bahwr8', 'Task_1l650tz', '督办部门负责人审批'),
  -- 1.7 可驳回到 1.1-1.6
  (UUID(), '2058711133876629506', 'Task_005iiwi', 'Task_12vdqzv', '部门经办人反馈完成情况'),
  (UUID(), '2058711133876629506', 'Task_005iiwi', 'Task_0sialna', '部门负责人直接反馈'),
  (UUID(), '2058711133876629506', 'Task_005iiwi', 'Task_06di2wf', '部门负责人审批'),
  (UUID(), '2058711133876629506', 'Task_005iiwi', 'Task_13olnz1', '督办经办人核查'),
  (UUID(), '2058711133876629506', 'Task_005iiwi', 'Task_1l650tz', '督办部门负责人审批'),
  (UUID(), '2058711133876629506', 'Task_005iiwi', 'Task_0bahwr8', '纪检经办人监察');

COMMIT;

-- ============================================
-- 校验语句（执行后核对，期望 15 行）
-- ============================================
-- SELECT COUNT(*) FROM ext_act_process_node_reject_target WHERE process_id='2058711133876629506';
