@@ -0,0 +1,23 @@
|
||||
BEGIN;
|
||||
|
||||
WITH transitioned AS (
|
||||
UPDATE device d
|
||||
SET activation_state='ACTIVE',activation_revision=activation_revision+1,
|
||||
activation_reason='license-v51-rollback',activation_updated_at=now(),version=version+1,updated_at=now()
|
||||
FROM device_twin dt
|
||||
WHERE dt.device_id=d.id AND d.status='registered' AND d.activation_state='PROVISIONING'
|
||||
AND d.activation_reason='license-required-v51'
|
||||
AND COALESCE(dt.desired_config->>'voice_runtime','legacy_voicechat')='volc_hardware_agent'
|
||||
AND EXISTS (SELECT 1 FROM hardware_agent_provider_credential pc WHERE pc.device_id=d.id AND pc.status='ACTIVE')
|
||||
RETURNING d.tenant_id,d.id,d.activation_revision
|
||||
)
|
||||
INSERT INTO device_activation_transition(
|
||||
tenant_id,device_id,from_state,to_state,reason,source,actor_type,activation_revision
|
||||
)
|
||||
SELECT tenant_id,id,'PROVISIONING','ACTIVE','回滚License强制门禁','migration-51-rollback','system',activation_revision
|
||||
FROM transitioned;
|
||||
|
||||
DROP TABLE hardware_agent_license;
|
||||
DROP FUNCTION enforce_hardware_license_device_state();
|
||||
|
||||
COMMIT;
|
||||
Reference in New Issue
Block a user