-- ============================================
-- 习讲话审批流程（bg_xispeak_process）节点权限对齐
-- 依据: 习讲话流程节点权限.ods（以 ODS 为准）
-- 涉及表: ext_act_process_node / ext_act_process_node_reject_target
-- 目标: 15 个节点按 ODS 设置 model_and_view(URL参数)、default_opinion、reject_status、cc_status、驳回目标
-- 说明:
--   - 基本信息权限全部"显示，不可编辑" → form_edit_status 保持 0（不改）
--   - 反馈信息权限: 不显示→不带showFeedbackInfo; 可编辑→showAdd+showEdit; 不可编辑→只读;
--                  按部门过滤→showDeptFeedback; 纪检字段生效→showJiJianFields; 可监察→showEdit+nonJiJianFieldsReadonly
--   - 选择经办人权限: 仅 1.4 显示 → showSubApproveUser=1
--   - 抄送: ODS"不抄送"→cc_status='0'；1.15"默认抄送所领导"→cc_status='1'（抄送对象由办理时选择，node 表无抄送人字段）
--   - 驳回: 可驳回→reject_status='1'+reject_target；不可驳回→'0'
-- 执行环境: 先 deploy-test 验证，再同步其他环境；执行后去流程设计器点"发布"
-- ============================================

START TRANSACTION;

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

-- 1.1 督办部门经办人发起流程（反馈信息:不显示 / 默认意见:无 / 驳回:不可 / 抄送:不）
UPDATE ext_act_process_node SET
  model_and_view = 'bg/xispeak/components/BgXiSpeakBPMForm?showProcessHandle=1',
  default_opinion = NULL,
  reject_status = '0',
  cc_status = '0'
WHERE process_id='2044685280381399042' AND process_node_code='Task_00v3pcv';

-- 1.2 督办部门负责人审批（不显示 / 同意 / 可驳回1.1 / 不抄送）
UPDATE ext_act_process_node SET
  model_and_view = 'bg/xispeak/components/BgXiSpeakBPMForm?showProcessHandle=1',
  default_opinion = '同意',
  reject_status = '1',
  cc_status = '0'
WHERE process_id='2044685280381399042' AND process_node_code='Task_0zmn6ik';

-- 1.3 所党委审批（不显示 / 同意 / 可驳回1.1,1.2 / 不抄送）
UPDATE ext_act_process_node SET
  model_and_view = 'bg/xispeak/components/BgXiSpeakBPMForm?showProcessHandle=1',
  default_opinion = '同意',
  reject_status = '1',
  cc_status = '0'
WHERE process_id='2044685280381399042' AND process_node_code='Task_15sm4w5';

-- 1.4 收集流程部门负责人接受任务并分配（可编辑+部门过滤+经办人 / 选择经办人... / 不可驳回 / 不抄送）
UPDATE ext_act_process_node SET
  model_and_view = 'bg/xispeak/components/BgXiSpeakBPMForm?showProcessHandle=1&showSubApproveUser=1&showFeedbackInfo=1&showAddFeedback=1&showEditFeedback=1&showDeptFeedback=1',
  default_opinion = '选择经办人的话是交经办人办，自己办的话是已办结',
  reject_status = '0',
  cc_status = '0'
WHERE process_id='2044685280381399042' AND process_node_code='Task_1v9ce78';

-- 1.5 收集流程门经办人填写（可编辑+部门过滤 / 已办，请领导审批 / 不可驳回 / 不抄送）
UPDATE ext_act_process_node SET
  model_and_view = 'bg/xispeak/components/BgXiSpeakBPMForm?showProcessHandle=1&showFeedbackInfo=1&showAddFeedback=1&showEditFeedback=1&showDeptFeedback=1',
  default_opinion = '已办，请领导审批',
  reject_status = '0',
  cc_status = '0'
WHERE process_id='2044685280381399042' AND process_node_code='Task_0jrgrzs';

-- 1.6 收集流程部门负责人审批（可编辑+部门过滤 / 已审批，请督办发起人确认 / 可驳回1.5 / 不抄送）
UPDATE ext_act_process_node SET
  model_and_view = 'bg/xispeak/components/BgXiSpeakBPMForm?showProcessHandle=1&showFeedbackInfo=1&showAddFeedback=1&showEditFeedback=1&showDeptFeedback=1',
  default_opinion = '已审批，请督办发起人确认',
  reject_status = '1',
  cc_status = '0'
WHERE process_id='2044685280381399042' AND process_node_code='Task_0mf32ge';

-- 1.7 收集流程督办发起人确认部门经办人填写内容（不可编辑+部门过滤 / 已确认 / 可驳回1.4,1.5,1.6 / 不抄送）
UPDATE ext_act_process_node SET
  model_and_view = 'bg/xispeak/components/BgXiSpeakBPMForm?showProcessHandle=1&showFeedbackInfo=1&showDeptFeedback=1',
  default_opinion = '已确认',
  reject_status = '1',
  cc_status = '0'
WHERE process_id='2044685280381399042' AND process_node_code='Task_1w4vxgc';

-- 1.8 反馈流程部门经办人填写反馈情况（可编辑+部门过滤 / 已反馈，请领导审批 / 不可驳回 / 不抄送）
UPDATE ext_act_process_node SET
  model_and_view = 'bg/xispeak/components/BgXiSpeakBPMForm?showProcessHandle=1&showFeedbackInfo=1&showAddFeedback=1&showEditFeedback=1&showDeptFeedback=1',
  default_opinion = '已反馈，请领导审批',
  reject_status = '0',
  cc_status = '0'
WHERE process_id='2044685280381399042' AND process_node_code='Task_08zb04x';

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

-- 1.10 反馈流程部门负责人反馈（可编辑+部门过滤 / 已反馈，请督办经办人核查 / 不可驳回 / 不抄送）
UPDATE ext_act_process_node SET
  model_and_view = 'bg/xispeak/components/BgXiSpeakBPMForm?showProcessHandle=1&showFeedbackInfo=1&showAddFeedback=1&showEditFeedback=1&showDeptFeedback=1',
  default_opinion = '已反馈，请督办经办人核查',
  reject_status = '0',
  cc_status = '0'
WHERE process_id='2044685280381399042' AND process_node_code='Task_133caii';

-- 1.11 反馈流程督办经办人核查（不可编辑+部门过滤 / 已核查，请领导审批 / 可驳回1.8,1.9,1.10 / 不抄送）
UPDATE ext_act_process_node SET
  model_and_view = 'bg/xispeak/components/BgXiSpeakBPMForm?showProcessHandle=1&showFeedbackInfo=1&showDeptFeedback=1',
  default_opinion = '已核查，请领导审批',
  reject_status = '1',
  cc_status = '0'
WHERE process_id='2044685280381399042' AND process_node_code='Task_175afz2';

-- 1.12 反馈流程督办部门负责人审批（不可编辑+部门过滤 / 已审批，请纪检经办人监察 / 可驳回1.8-1.11 / 不抄送）
UPDATE ext_act_process_node SET
  model_and_view = 'bg/xispeak/components/BgXiSpeakBPMForm?showProcessHandle=1&showFeedbackInfo=1&showDeptFeedback=1',
  default_opinion = '已审批，请纪检经办人监察',
  reject_status = '1',
  cc_status = '0'
WHERE process_id='2044685280381399042' AND process_node_code='Task_00i7rrp';

-- 1.13 反馈流程纪检经办人监察（可监察+纪检+部门过滤 / 已监察，请领导审批 / 可驳回1.8-1.12 / 不抄送）
UPDATE ext_act_process_node SET
  model_and_view = 'bg/xispeak/components/BgXiSpeakBPMForm?showProcessHandle=1&showFeedbackInfo=1&showEditFeedback=1&nonJiJianFieldsReadonly=1&showJiJianFields=1&showDeptFeedback=1',
  default_opinion = '已监察，请领导审批',
  reject_status = '1',
  cc_status = '0'
WHERE process_id='2044685280381399042' AND process_node_code='Task_1wfkrvj';

-- 1.14 反馈流程纪检负责人审批（可监察+纪检+部门过滤 / 已审批 / 可驳回1.8-1.13 / 不抄送）
UPDATE ext_act_process_node SET
  model_and_view = 'bg/xispeak/components/BgXiSpeakBPMForm?showProcessHandle=1&showFeedbackInfo=1&showEditFeedback=1&nonJiJianFieldsReadonly=1&showJiJianFields=1&showDeptFeedback=1',
  default_opinion = '已审批',
  reject_status = '1',
  cc_status = '0'
WHERE process_id='2044685280381399042' AND process_node_code='Task_1ogk921';

-- 1.15 督办部门经办人确认全部反馈事项（不可编辑+纪检+部门过滤 / 已归档 / 不可驳回 / 默认抄送所领导）
UPDATE ext_act_process_node SET
  model_and_view = 'bg/xispeak/components/BgXiSpeakBPMForm?showProcessHandle=1&showFeedbackInfo=1&showDeptFeedback=1&showJiJianFields=1',
  default_opinion = '已归档',
  reject_status = '0',
  cc_status = '1'
WHERE process_id='2044685280381399042' AND process_node_code='Task_0bj578x';

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

INSERT INTO ext_act_process_node_reject_target (id, process_id, source_node_code, target_node_code, target_node_name) VALUES
  -- 1.2 可驳回到 1.1
  (UUID(), '2044685280381399042', 'Task_0zmn6ik', 'Task_00v3pcv', '督办部门经办人发起流程'),
  -- 1.3 可驳回到 1.1, 1.2
  (UUID(), '2044685280381399042', 'Task_15sm4w5', 'Task_00v3pcv', '督办部门经办人发起流程'),
  (UUID(), '2044685280381399042', 'Task_15sm4w5', 'Task_0zmn6ik', '督办部门负责人审批'),
  -- 1.6 可驳回到 1.5
  (UUID(), '2044685280381399042', 'Task_0mf32ge', 'Task_0jrgrzs', '收集流程门经办人填写'),
  -- 1.7 可驳回到 1.4, 1.5, 1.6
  (UUID(), '2044685280381399042', 'Task_1w4vxgc', 'Task_1v9ce78', '收集流程部门负责人接受任务并分配'),
  (UUID(), '2044685280381399042', 'Task_1w4vxgc', 'Task_0jrgrzs', '收集流程门经办人填写'),
  (UUID(), '2044685280381399042', 'Task_1w4vxgc', 'Task_0mf32ge', '收集流程部门负责人审批'),
  -- 1.9 可驳回到 1.8
  (UUID(), '2044685280381399042', 'Task_04bazej', 'Task_08zb04x', '反馈流程部门经办人填写反馈情况'),
  -- 1.11 可驳回到 1.8, 1.9, 1.10
  (UUID(), '2044685280381399042', 'Task_175afz2', 'Task_08zb04x', '反馈流程部门经办人填写反馈情况'),
  (UUID(), '2044685280381399042', 'Task_175afz2', 'Task_04bazej', '反馈流程部门负责人审批'),
  (UUID(), '2044685280381399042', 'Task_175afz2', 'Task_133caii', '反馈流程部门负责人反馈'),
  -- 1.12 可驳回到 1.8, 1.9, 1.10, 1.11
  (UUID(), '2044685280381399042', 'Task_00i7rrp', 'Task_08zb04x', '反馈流程部门经办人填写反馈情况'),
  (UUID(), '2044685280381399042', 'Task_00i7rrp', 'Task_04bazej', '反馈流程部门负责人审批'),
  (UUID(), '2044685280381399042', 'Task_00i7rrp', 'Task_133caii', '反馈流程部门负责人反馈'),
  (UUID(), '2044685280381399042', 'Task_00i7rrp', 'Task_175afz2', '反馈流程督办经办人核查'),
  -- 1.13 可驳回到 1.8, 1.9, 1.10, 1.11, 1.12
  (UUID(), '2044685280381399042', 'Task_1wfkrvj', 'Task_08zb04x', '反馈流程部门经办人填写反馈情况'),
  (UUID(), '2044685280381399042', 'Task_1wfkrvj', 'Task_04bazej', '反馈流程部门负责人审批'),
  (UUID(), '2044685280381399042', 'Task_1wfkrvj', 'Task_133caii', '反馈流程部门负责人反馈'),
  (UUID(), '2044685280381399042', 'Task_1wfkrvj', 'Task_175afz2', '反馈流程督办经办人核查'),
  (UUID(), '2044685280381399042', 'Task_1wfkrvj', 'Task_00i7rrp', '反馈流程督办部门负责人审批'),
  -- 1.14 可驳回到 1.8, 1.9, 1.10, 1.11, 1.12, 1.13
  (UUID(), '2044685280381399042', 'Task_1ogk921', 'Task_08zb04x', '反馈流程部门经办人填写反馈情况'),
  (UUID(), '2044685280381399042', 'Task_1ogk921', 'Task_04bazej', '反馈流程部门负责人审批'),
  (UUID(), '2044685280381399042', 'Task_1ogk921', 'Task_133caii', '反馈流程部门负责人反馈'),
  (UUID(), '2044685280381399042', 'Task_1ogk921', 'Task_175afz2', '反馈流程督办经办人核查'),
  (UUID(), '2044685280381399042', 'Task_1ogk921', 'Task_00i7rrp', '反馈流程督办部门负责人审批'),
  (UUID(), '2044685280381399042', 'Task_1ogk921', 'Task_1wfkrvj', '反馈流程纪检经办人监察');

COMMIT;

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