-- =====================================================================
-- 2026_sprint11_nurse_wage.sql — اسپرینت ۱۱
-- دستمزدِ پرستار: قیمتِ پایه و درصدِ پرستار (مجری/اَد) روی هر پروسیجر
-- + جدولِ تنظیماتِ سبک (برای همگام‌سازیِ خودکارِ سایت).
-- افزایشی و اجرای مجدد امن. دیتابیس: shadicli_nurse
-- =====================================================================
SET NAMES utf8mb4;

-- قیمتِ پایه‌ی پروسیجر (تومان) — مبنای محاسبه‌ی درصد
SET @c := (SELECT COUNT(*) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='procedures' AND COLUMN_NAME='base_price');
SET @s := IF(@c=0, "ALTER TABLE `procedures` ADD COLUMN `base_price` DECIMAL(14,0) NULL DEFAULT NULL AFTER `unit_label`", 'SELECT 1');
PREPARE st FROM @s; EXECUTE st; DEALLOCATE PREPARE st;

-- درصدِ پرستار وقتی خودش مجری است
SET @c := (SELECT COUNT(*) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='procedures' AND COLUMN_NAME='nurse_pct_primary');
SET @s := IF(@c=0, "ALTER TABLE `procedures` ADD COLUMN `nurse_pct_primary` DECIMAL(5,2) NOT NULL DEFAULT 0 AFTER `base_price`", 'SELECT 1');
PREPARE st FROM @s; EXECUTE st; DEALLOCATE PREPARE st;

-- درصدِ پرستار وقتی اَد می‌ایستد (کمکِ کنارِ پزشک یا پرستارِ مجری)
SET @c := (SELECT COUNT(*) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='procedures' AND COLUMN_NAME='nurse_pct_assist');
SET @s := IF(@c=0, "ALTER TABLE `procedures` ADD COLUMN `nurse_pct_assist` DECIMAL(5,2) NOT NULL DEFAULT 0 AFTER `nurse_pct_primary`", 'SELECT 1');
PREPARE st FROM @s; EXECUTE st; DEALLOCATE PREPARE st;

-- جدولِ تنظیماتِ سبک (key/value) — برای زمانِ آخرین همگام‌سازیِ سایت و…
CREATE TABLE IF NOT EXISTS `cw_settings` (
  `k` VARCHAR(80) NOT NULL PRIMARY KEY,
  `v` TEXT NULL,
  `updated_at` DATETIME NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- =====================================================================
-- ROLLBACK:
-- ALTER TABLE `procedures` DROP COLUMN `nurse_pct_assist`, DROP COLUMN `nurse_pct_primary`, DROP COLUMN `base_price`;
-- DROP TABLE IF EXISTS `cw_settings`;
-- =====================================================================
