-- 设备成本归设备台账维护;运营页只读取,不另设一份手工分成参数。 -- NULL 表示尚未从设备档案迁入,不能用默认成本伪造回本结果。可重复执行。 SET @cost_column_exists = (SELECT COUNT(*) FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'sa_device' AND column_name = 'cost_price'); SET @cost_ddl = IF(@cost_column_exists = 0, 'ALTER TABLE sa_device ADD COLUMN cost_price DECIMAL(10,2) UNSIGNED NULL COMMENT ''设备台账成本,对应旧 market_goods.cost_price''', 'SELECT 1'); PREPARE cost_statement FROM @cost_ddl; EXECUTE cost_statement; DEALLOCATE PREPARE cost_statement; -- 撤下误加的参数编辑权限;保留历史表与角色关系,避免破坏已有审计数据。 UPDATE sa_system_menu SET status=2, delete_time=COALESCE(delete_time,NOW()), update_time=NOW() WHERE slug='core:operation:device:update';