You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
senzapaura_es/drizzle/0033_superb_silverclaw.sql

78 lines
3.7 KiB

ALTER TABLE "plan_suscripcion" DROP CONSTRAINT "plan_suscripcion_calidad_escucha_conocida";--> statement-breakpoint
ALTER TABLE "plan_suscripcion" ALTER COLUMN "calidad_escucha" DROP NOT NULL;--> statement-breakpoint
ALTER TABLE "plan_suscripcion" ADD COLUMN "ambito" text DEFAULT 'musica' NOT NULL;--> statement-breakpoint
ALTER TABLE "plan_suscripcion" ADD COLUMN "acceso_contenido_taller" boolean DEFAULT false NOT NULL;--> statement-breakpoint
ALTER TABLE "plan_suscripcion" ADD COLUMN "descarga_material_taller" boolean DEFAULT false NOT NULL;--> statement-breakpoint
ALTER TABLE "plan_suscripcion" ADD CONSTRAINT "plan_suscripcion_ambito_conocido" CHECK ("plan_suscripcion"."ambito" in ('musica', 'taller_letras'));--> statement-breakpoint
ALTER TABLE "plan_suscripcion" ADD CONSTRAINT "plan_suscripcion_capacidades_segun_ambito" CHECK ((
"plan_suscripcion"."ambito" = 'musica'
and "plan_suscripcion"."calidad_escucha" is not null
and not "plan_suscripcion"."acceso_contenido_taller"
and not "plan_suscripcion"."descarga_material_taller"
) or (
"plan_suscripcion"."ambito" = 'taller_letras'
and "plan_suscripcion"."calidad_escucha" is null
and not "plan_suscripcion"."incluye_publicidad"
and "plan_suscripcion"."descargas_incluidas" = 0
and "plan_suscripcion"."calidad_descarga" is null
and not "plan_suscripcion"."acceso_versiones"
));--> statement-breakpoint
ALTER TABLE "plan_suscripcion" ADD CONSTRAINT "plan_suscripcion_calidad_escucha_conocida" CHECK ("plan_suscripcion"."calidad_escucha" is null or "plan_suscripcion"."calidad_escucha" in ('media', 'alta'));
--> statement-breakpoint
UPDATE "plan_suscripcion"
SET
"descripcion" = CASE "codigo"
WHEN 'follower' THEN 'Para descubrir el catálogo a tu ritmo, crear tus listas y apoyar el proyecto desde el primer día.'
WHEN 'friend' THEN 'Una escucha sin interrupciones para quienes quieren llevarse sus canciones favoritas.'
WHEN 'vip' THEN 'La experiencia musical más completa: más descargas y acceso a las distintas versiones de cada canción.'
END,
"prestaciones" = '["Favoritos y listas de reproducción"]'::jsonb,
"actualizado_en" = now()
WHERE "codigo" IN ('follower', 'friend', 'vip');
--> statement-breakpoint
INSERT INTO "plan_suscripcion" (
"id", "codigo", "nombre", "descripcion", "nivel", "precio_centimos", "moneda",
"periodicidad", "intervalos", "ambito", "incluye_publicidad", "calidad_escucha",
"descargas_incluidas", "calidad_descarga", "acceso_versiones",
"acceso_contenido_taller", "descarga_material_taller", "prestaciones", "estado"
) VALUES (
'08af3913-6788-47b9-ad50-ce2371d0f05d',
'taller-letras',
'Taller de letras',
'Un año para profundizar en la escritura de canciones, avanzar a tu ritmo y conservar todos los materiales.',
1,
990,
'eur',
'ano',
1,
'taller_letras',
false,
null,
0,
null,
false,
true,
true,
'["Aprendizaje a tu ritmo"]'::jsonb,
'disponible'
)
ON CONFLICT ("codigo") DO UPDATE SET
"nombre" = EXCLUDED."nombre",
"descripcion" = EXCLUDED."descripcion",
"nivel" = EXCLUDED."nivel",
"precio_centimos" = EXCLUDED."precio_centimos",
"moneda" = EXCLUDED."moneda",
"periodicidad" = EXCLUDED."periodicidad",
"intervalos" = EXCLUDED."intervalos",
"ambito" = EXCLUDED."ambito",
"incluye_publicidad" = EXCLUDED."incluye_publicidad",
"calidad_escucha" = EXCLUDED."calidad_escucha",
"descargas_incluidas" = EXCLUDED."descargas_incluidas",
"calidad_descarga" = EXCLUDED."calidad_descarga",
"acceso_versiones" = EXCLUDED."acceso_versiones",
"acceso_contenido_taller" = EXCLUDED."acceso_contenido_taller",
"descarga_material_taller" = EXCLUDED."descarga_material_taller",
"prestaciones" = EXCLUDED."prestaciones",
"estado" = EXCLUDED."estado",
"actualizado_en" = now();

Powered by TurnKey Linux.