DELIMITER //

CREATE OR REPLACE PROCEDURE eip_Calendar_delete (
  IN p_functiontag VARCHAR(100),
  IN p_id VARCHAR(100)
)
/*
  Function   : 行事曆資料的刪除功能
  Description: 使用 Vue+FullCalendar 開發行事曆, 並用 iFrame 崁入 amis 環境
               編輯行事曆: eip_Calendar_crud 
               讀取行事曆: eip_getCalendar
               刪除行事曆: eip_Calendar_delete (本 sp)
               傳入參數使用 functiontag 以保持彈性
  Build Date : 2023/07/19 (MariaDB 版本)
  
  Modify History
    Item Who        Date       Modify Docs
    ==== ========== ========== ================================================
    1    Michael    2024/03/11 傳入參數由 tablename 改為 functiontag
    2    Michael    2025/07/20 改寫為 MariaDB 並最佳化(ChatGPT+DeepSeek)
*/
BEGIN
  -- 根據不同的 functiontag 刪除不同的表記錄
  CASE p_functiontag
    WHEN 'eipm15' THEN  -- 會議室預約
      DELETE FROM eipplace_fc WHERE uniqueno = p_id;
    
    WHEN 'eipm13' THEN  -- 會議通知
      DELETE FROM eipmeetingrec_m WHERE uniqueno = p_id;
    
    WHEN 'eipm02' THEN  -- 行程管理
      DELETE FROM eip_new_calendar WHERE uuid = p_id;
    
    ELSE  -- 默認處理 eip_core_calendar
      DELETE FROM eip_core_calendar WHERE id = p_id;
  END CASE;

  -- 返回成功結果
  SELECT 0 AS code, 'ok' AS msg;
END //

DELIMITER ;