Compare commits

..

4 Commits

Author SHA1 Message Date
Patrick Fic
1cd11bdc18 Add unique/dupe columns to media analytics. 2025-11-17 16:42:39 -08:00
Patrick Fic
9cce2696e2 Merge branch 'master-AIO' into feature/media-analytics-logging 2025-11-17 16:31:04 -08:00
Patrick Fic
cccc307862 Add indexes for media analytics. 2025-11-11 20:35:59 -08:00
Patrick Fic
70028c8be6 Add trigger to remove fk violations for media analytics. 2025-11-10 15:38:17 -08:00
23 changed files with 92 additions and 9 deletions

View File

@@ -4,18 +4,10 @@ import { useTranslation } from "react-i18next";
import { TemplateList } from "../../utils/TemplateConstants";
import FormListMoveArrows from "../form-list-move-arrows/form-list-move-arrows.component";
import LayoutFormRow from "../layout-form-row/layout-form-row.component";
import InstanceRenderManager from "../../utils/instanceRenderMgr";
export default function ShopInfoSpeedPrint() {
const { t } = useTranslation();
const allTemplates = TemplateList("job");
const TemplateListGenerated = InstanceRenderManager({
imex: Object.fromEntries(
Object.entries(allTemplates).filter(([, { enhanced_payroll }]) => !enhanced_payroll)
),
rome: allTemplates
});
const TemplateListGenerated = TemplateList("job");
return (
<Form.List name={["speedprint"]}>
{(fields, { add, remove, move }) => {

View File

@@ -0,0 +1,5 @@
alter table "public"."media_analytics_detail" drop constraint "media_analytics_detail_jobid_fkey",
add constraint "media_analytics_detail_jobid_fkey"
foreign key ("jobid")
references "public"."jobs"
("id") on update restrict on delete restrict;

View File

@@ -0,0 +1,5 @@
alter table "public"."media_analytics_detail" drop constraint "media_analytics_detail_jobid_fkey",
add constraint "media_analytics_detail_jobid_fkey"
foreign key ("jobid")
references "public"."jobs"
("id") on update set null on delete set null;

View File

@@ -0,0 +1,23 @@
-- Could not auto-generate a down migration.
-- Please write an appropriate down migration for the SQL below:
-- CREATE OR REPLACE FUNCTION set_fk_to_null_if_invalid_media_analytics()
-- RETURNS TRIGGER AS $$
-- BEGIN
-- -- Check if the foreign key value is not NULL
-- IF NEW.jobid IS NOT NULL THEN
-- -- Check if the corresponding record exists in the parent table
-- IF NOT EXISTS (SELECT 1 FROM jobs WHERE id = NEW.jobid) THEN
-- -- If it doesn't exist, set the foreign key to NULL
-- NEW.jobid = NULL;
-- END IF;
-- END IF;
--
-- -- Return the (potentially modified) record to be inserted/updated
-- RETURN NEW;
-- END;
-- $$ LANGUAGE plpgsql;
--
-- CREATE TRIGGER media_analytics_fk_null
-- BEFORE INSERT OR UPDATE ON media_analytics_detail
-- FOR EACH ROW
-- EXECUTE FUNCTION set_fk_to_null_if_invalid_media_analytics();

View File

@@ -0,0 +1,21 @@
CREATE OR REPLACE FUNCTION set_fk_to_null_if_invalid_media_analytics()
RETURNS TRIGGER AS $$
BEGIN
-- Check if the foreign key value is not NULL
IF NEW.jobid IS NOT NULL THEN
-- Check if the corresponding record exists in the parent table
IF NOT EXISTS (SELECT 1 FROM jobs WHERE id = NEW.jobid) THEN
-- If it doesn't exist, set the foreign key to NULL
NEW.jobid = NULL;
END IF;
END IF;
-- Return the (potentially modified) record to be inserted/updated
RETURN NEW;
END;
$$ LANGUAGE plpgsql;
CREATE TRIGGER media_analytics_fk_null
BEFORE INSERT OR UPDATE ON media_analytics_detail
FOR EACH ROW
EXECUTE FUNCTION set_fk_to_null_if_invalid_media_analytics();

View File

@@ -0,0 +1 @@
DROP INDEX IF EXISTS "public"."media_analytics_detail_bodyshopid";

View File

@@ -0,0 +1,2 @@
CREATE INDEX "media_analytics_detail_bodyshopid" on
"public"."media_analytics_detail" using btree ("bodyshopid");

View File

@@ -0,0 +1 @@
DROP INDEX IF EXISTS "public"."media_analytics_detail_jobid";

View File

@@ -0,0 +1,2 @@
CREATE INDEX "media_analytics_detail_jobid" on
"public"."media_analytics_detail" using btree ("jobid");

View File

@@ -0,0 +1 @@
DROP INDEX IF EXISTS "public"."media_analytics_detail_media_analytics";

View File

@@ -0,0 +1,2 @@
CREATE INDEX "media_analytics_detail_media_analytics" on
"public"."media_analytics_detail" using btree ("media_analytics_id");

View File

@@ -0,0 +1,4 @@
-- Could not auto-generate a down migration.
-- Please write an appropriate down migration for the SQL below:
-- alter table "public"."media_analytics" add column "unique_documents" numeric
-- null;

View File

@@ -0,0 +1,2 @@
alter table "public"."media_analytics" add column "unique_documents" numeric
null;

View File

@@ -0,0 +1,4 @@
-- Could not auto-generate a down migration.
-- Please write an appropriate down migration for the SQL below:
-- alter table "public"."media_analytics" add column "duplicate_documents" numeric
-- null;

View File

@@ -0,0 +1,2 @@
alter table "public"."media_analytics" add column "duplicate_documents" numeric
null;

View File

@@ -0,0 +1,4 @@
-- Could not auto-generate a down migration.
-- Please write an appropriate down migration for the SQL below:
-- alter table "public"."media_analytics_detail" add column "unique_documents" numeric
-- null;

View File

@@ -0,0 +1,2 @@
alter table "public"."media_analytics_detail" add column "unique_documents" numeric
null;

View File

@@ -0,0 +1,4 @@
-- Could not auto-generate a down migration.
-- Please write an appropriate down migration for the SQL below:
-- alter table "public"."media_analytics_detail" add column "duplicate_documents" numeric
-- null;

View File

@@ -0,0 +1,2 @@
alter table "public"."media_analytics_detail" add column "duplicate_documents" numeric
null;

View File

@@ -0,0 +1 @@
alter table "public"."media_analytics_detail" rename column "unique_document_count" to "unique_documents";

View File

@@ -0,0 +1 @@
alter table "public"."media_analytics_detail" rename column "unique_documents" to "unique_document_count";

View File

@@ -0,0 +1 @@
alter table "public"."media_analytics_detail" rename column "duplicate_count" to "duplicate_documents";

View File

@@ -0,0 +1 @@
alter table "public"."media_analytics_detail" rename column "duplicate_documents" to "duplicate_count";