This repository has been archived on 2026-03-21. You can view files and clone it, but cannot push or open issues or pull requests.
payfrit-biz/api/tasks/setup.cfm
John 16a3b7c9a3 Replace queryExecute with queryTimed across all endpoints for perf tracking
Converts 200+ endpoint files to use queryTimed() wrapper which tracks
DB query count and execution time. Restores perf dashboard files that
were accidentally moved to _scripts/. Includes portal UI updates.
2026-02-02 00:28:37 -08:00

46 lines
1.7 KiB
Text

<cfsetting showdebugoutput="false">
<cfcontent type="application/json; charset=utf-8">
<cftry>
<cfset queryTimed("
CREATE TABLE IF NOT EXISTS TaskCategories (
ID INT AUTO_INCREMENT PRIMARY KEY,
BusinessID INT NOT NULL,
Name VARCHAR(100) NOT NULL,
Color VARCHAR(20) DEFAULT '#888888',
IsActive BIT(1) DEFAULT b'1',
AddedOn DATETIME DEFAULT CURRENT_TIMESTAMP,
INDEX idx_business (BusinessID)
)
", [], { datasource = "payfrit" })>
<!--- Check if categories exist --->
<cfset qCheck = queryTimed("SELECT COUNT(*) AS cnt FROM TaskCategories WHERE BusinessID = 17", [], { datasource = "payfrit" })>
<cfif qCheck.cnt EQ 0>
<cfset queryTimed("
INSERT INTO TaskCategories (BusinessID, Name, Color) VALUES
(17, 'Delivery', '##FF5722'),
(17, 'Pickup', '##4CAF50'),
(17, 'Kitchen', '##2196F3')
", [], { datasource = "payfrit" })>
</cfif>
<!--- Add test tasks if none exist --->
<cfset qTasks = queryTimed("SELECT COUNT(*) AS cnt FROM Tasks WHERE BusinessID = 17 AND StatusID = 0", [], { datasource = "payfrit" })>
<cfif qTasks.cnt EQ 0>
<cfset queryTimed("
INSERT INTO Tasks (BusinessID, CategoryID, Title, Details, StatusID) VALUES
(17, 1, 'Deliver Order ##1042', 'Customer: John Smith, Address: 123 Main St', 0),
(17, 2, 'Pickup Ready - Table 5', 'Order ready for customer pickup', 0),
(17, 1, 'Deliver Order ##1043', 'Customer: Jane Doe, Address: 456 Oak Ave', 0)
", [], { datasource = "payfrit" })>
</cfif>
<cfoutput>{"OK": true, "MESSAGE": "Setup complete"}</cfoutput>
<cfcatch>
<cfoutput>{"OK": false, "ERROR": "#cfcatch.message#"}</cfoutput>
</cfcatch>
</cftry>