Feat(Project Hub): Apply for Founding Partner Program page created with database structure and methods.

This commit is contained in:
2025-08-02 17:39:22 +01:00
parent 09af0a7a93
commit 438909b102
343 changed files with 8047 additions and 4253 deletions

View File

@@ -1,10 +1,10 @@
USE parts;
USE fetchmetrics;
DROP PROCEDURE IF EXISTS parts.p_dog_calc_button_icon;
DROP PROCEDURE IF EXISTS fetchmetrics.p_dog_calc_button_icon;
DELIMITER //
CREATE PROCEDURE parts.p_dog_calc_button_icon (
CREATE PROCEDURE fetchmetrics.p_dog_calc_button_icon (
IN a_guid BINARY(36)
, IN a_id_user INT
, IN a_get_all_file_type BIT
@@ -69,7 +69,7 @@ BEGIN
MET.id_type
, @errno
, @text
FROM parts.CORE_Msg_Error_Type MET
FROM fetchmetrics.CORE_Msg_Error_Type MET
WHERE MET.code = 'MYSQL_ERROR'
;
@@ -84,7 +84,7 @@ BEGIN
, ERROR_TYPE.text_colour
, t_ERROR.msg
FROM tmp_Msg_Error_Calc_Button_Icon t_ERROR
INNER JOIN parts.CORE_Msg_Error_Type ERROR_TYPE ON t_ERROR.id_type = ERROR_TYPE.id_type
INNER JOIN fetchmetrics.CORE_Msg_Error_Type ERROR_TYPE ON t_ERROR.id_type = ERROR_TYPE.id_type
;
DROP TABLE IF EXISTS tmp_Msg_Error_Calc_Button_Icon;
@@ -93,13 +93,13 @@ BEGIN
SET v_time_start := CURRENT_TIMESTAMP(6);
SET v_code_type_error_bad_data := 'BAD_DATA';
SET v_code_type_error_no_permission := 'NO_PERMISSION';
SET v_id_type_error_bad_data := (SELECT ERROR_TYPE.id_type FROM parts.CORE_Msg_Error_Type ERROR_TYPE WHERE ERROR_TYPE.code = v_code_type_error_bad_data LIMIT 1);
SET v_id_type_error_no_permission := (SELECT ERROR_TYPE.id_type FROM parts.CORE_Msg_Error_Type ERROR_TYPE WHERE ERROR_TYPE.code = v_code_type_error_no_permission LIMIT 1);
SET v_id_permission_dog_view := (SELECT PERMISSION.id_permission FROM parts.DOG_Permission PERMISSION WHERE PERMISSION.code = 'DOG_VIEW' LIMIT 1);
SET v_id_access_level_view := (SELECT ACCESS_LEVEL.id_access_level FROM parts.DOG_Access_Level ACCESS_LEVEL WHERE ACCESS_LEVEL.code = 'VIEW' LIMIT 1);
SET v_id_type_error_bad_data := (SELECT ERROR_TYPE.id_type FROM fetchmetrics.CORE_Msg_Error_Type ERROR_TYPE WHERE ERROR_TYPE.code = v_code_type_error_bad_data LIMIT 1);
SET v_id_type_error_no_permission := (SELECT ERROR_TYPE.id_type FROM fetchmetrics.CORE_Msg_Error_Type ERROR_TYPE WHERE ERROR_TYPE.code = v_code_type_error_no_permission LIMIT 1);
SET v_id_permission_dog_view := (SELECT PERMISSION.id_permission FROM fetchmetrics.DOG_Permission PERMISSION WHERE PERMISSION.code = 'DOG_VIEW' LIMIT 1);
SET v_id_access_level_view := (SELECT ACCESS_LEVEL.id_access_level FROM fetchmetrics.DOG_Access_Level ACCESS_LEVEL WHERE ACCESS_LEVEL.code = 'VIEW' LIMIT 1);
CALL parts.p_core_validate_guid ( a_guid );
CALL fetchmetrics.p_core_validate_guid ( a_guid );
SET a_id_user := IFNULL(a_id_user, 0);
/*
@@ -213,7 +213,7 @@ BEGIN
SET v_has_filter_button_icon_notes = CASE WHEN a_notes_button_icon <> '' THEN 1 ELSE 0 END;
-- Call Calc Images
IF NOT EXISTS(SELECT * FROM tmp_Msg_Error_Calc_Button_Icon t_ERROR INNER JOIN parts.CORE_Msg_Error_Type ERROR_TYPE ON t_ERROR.id_type = ERROR_TYPE.id_type WHERE ERROR_TYPE.is_breaking_error = 1 LIMIT 1) THEN
IF NOT EXISTS(SELECT * FROM tmp_Msg_Error_Calc_Button_Icon t_ERROR INNER JOIN fetchmetrics.CORE_Msg_Error_Type ERROR_TYPE ON t_ERROR.id_type = ERROR_TYPE.id_type WHERE ERROR_TYPE.is_breaking_error = 1 LIMIT 1) THEN
IF a_debug = 1 THEN
SELECT
a_guid -- a_guid
@@ -239,7 +239,7 @@ BEGIN
;
END IF;
CALL parts.p_dog_calc_image (
CALL fetchmetrics.p_dog_calc_image (
a_guid -- a_guid
, a_id_user -- a_id_user
, a_get_all_file_type -- a_get_all_file_type
@@ -283,7 +283,7 @@ BEGIN
, IMAGES_T.does_meet_id_filters
, IMAGES_T.does_meet_non_id_filters
FROM parts.DOG_Image_Temp IMAGES_T
FROM fetchmetrics.DOG_Image_Temp IMAGES_T
WHERE IMAGES_T.GUID = a_guid
;
@@ -294,7 +294,7 @@ BEGIN
-- Button_Icons
IF v_has_filter_button_icon_id = 1 THEN
CALL parts.p_core_split(a_guid, a_ids_button_icon, ',', a_debug);
CALL fetchmetrics.p_core_split(a_guid, a_ids_button_icon, ',', a_debug);
SET sql_mode = '';
@@ -305,17 +305,17 @@ BEGIN
SELECT
SPLIT_T.substring
, CAST(SPLIT_T.substring AS DECIMAL(10,0)) AS as_int
FROM parts.CORE_Split_Temp SPLIT_T
FROM fetchmetrics.CORE_Split_Temp SPLIT_T
WHERE
SPLIT_T.GUID = a_guid
AND IFNULL(SPLIT_T.substring, '') <> ''
;
CALL parts.p_core_clear_split( a_guid );
CALL fetchmetrics.p_core_clear_split( a_guid );
END IF;
IF v_has_filter_button_icon_name = 1 THEN
CALL parts.p_core_split(a_guid, a_names_button_icon, ',', a_debug);
CALL fetchmetrics.p_core_split(a_guid, a_names_button_icon, ',', a_debug);
SET sql_mode = '';
@@ -326,17 +326,17 @@ BEGIN
SELECT
SPLIT_T.substring
, CAST(SPLIT_T.substring AS DECIMAL(10,0)) AS as_int
FROM parts.CORE_Split_Temp SPLIT_T
FROM fetchmetrics.CORE_Split_Temp SPLIT_T
WHERE
SPLIT_T.GUID = a_guid
AND IFNULL(SPLIT_T.substring, '') <> ''
;
CALL parts.p_core_clear_split( a_guid );
CALL fetchmetrics.p_core_clear_split( a_guid );
END IF;
IF v_has_filter_button_icon_notes = 1 THEN
CALL parts.p_core_split(a_guid, a_notes_button_icon, ',', a_debug);
CALL fetchmetrics.p_core_split(a_guid, a_notes_button_icon, ',', a_debug);
SET sql_mode = '';
@@ -347,20 +347,20 @@ BEGIN
SELECT
SPLIT_T.substring
, CAST(SPLIT_T.substring AS DECIMAL(10,0)) AS as_int
FROM parts.CORE_Split_Temp SPLIT_T
FROM fetchmetrics.CORE_Split_Temp SPLIT_T
WHERE
SPLIT_T.GUID = a_guid
AND IFNULL(SPLIT_T.substring, '') <> ''
;
CALL parts.p_core_clear_split( a_guid );
CALL fetchmetrics.p_core_clear_split( a_guid );
END IF;
IF NOT EXISTS (SELECT * FROM tmp_Msg_Error_Calc_Button_Icon t_ERROR INNER JOIN parts.CORE_Msg_Error_Type ERROR_TYPE ON t_ERROR.id_type = ERROR_TYPE.id_type WHERE ERROR_TYPE.is_breaking_error = 1 LIMIT 1) THEN
IF NOT EXISTS (SELECT * FROM tmp_Msg_Error_Calc_Button_Icon t_ERROR INNER JOIN fetchmetrics.CORE_Msg_Error_Type ERROR_TYPE ON t_ERROR.id_type = ERROR_TYPE.id_type WHERE ERROR_TYPE.is_breaking_error = 1 LIMIT 1) THEN
IF EXISTS (
SELECT *
FROM tmp_Split_Id_Calc_Button_Icon t_SPLIT_ID
LEFT JOIN parts.DOG_Button_Icon BUTTON_ICON ON t_SPLIT_ID.as_int = BUTTON_ICON.id_button_icon
LEFT JOIN fetchmetrics.DOG_Button_Icon BUTTON_ICON ON t_SPLIT_ID.as_int = BUTTON_ICON.id_button_icon
WHERE
ISNULL(t_SPLIT_ID.as_int)
OR ISNULL(BUTTON_ICON.id_button_icon)
@@ -379,7 +379,7 @@ BEGIN
, v_code_type_error_bad_data
, CONCAT('Invalid or inactive Button_Icon IDs: ', IFNULL(GROUP_CONCAT(t_SPLIT_ID.substring SEPARATOR ', '), 'NULL'))
FROM tmp_Split_Id_Calc_Button_Icon t_SPLIT_ID
LEFT JOIN parts.DOG_Button_Icon BUTTON_ICON ON t_SPLIT_ID.as_int = BUTTON_ICON.id_button_icon
LEFT JOIN fetchmetrics.DOG_Button_Icon BUTTON_ICON ON t_SPLIT_ID.as_int = BUTTON_ICON.id_button_icon
WHERE
ISNULL(t_SPLIT_ID.as_int)
OR ISNULL(BUTTON_ICON.id_button_icon)
@@ -398,12 +398,12 @@ BEGIN
Button_Icon_Id_Filter AS (
SELECT BUTTON_ICON.id_button_icon
FROM tmp_Split_Id_Calc_Button_Icon t_SPLIT_ID
INNER JOIN parts.DOG_Button_Icon BUTTON_ICON ON t_SPLIT_ID.as_int = BUTTON_ICON.id_button_icon
INNER JOIN fetchmetrics.DOG_Button_Icon BUTTON_ICON ON t_SPLIT_ID.as_int = BUTTON_ICON.id_button_icon
)
, Button_Icon_Name_Filter AS (
SELECT BUTTON_ICON.id_button_icon
FROM tmp_Split_Name_Calc_Button_Icon t_SPLIT_NAME
INNER JOIN parts.DOG_Button_Icon BUTTON_ICON ON BUTTON_ICON.name LIKE CONCAT('%', t_SPLIT_NAME.substring, '%')
INNER JOIN fetchmetrics.DOG_Button_Icon BUTTON_ICON ON BUTTON_ICON.name LIKE CONCAT('%', t_SPLIT_NAME.substring, '%')
WHERE
t_SPLIT_NAME.substring IS NOT NULL
AND t_SPLIT_NAME.substring <> ''
@@ -411,7 +411,7 @@ BEGIN
, Button_Icon_Notes_Filter AS (
SELECT BUTTON_ICON.id_button_icon
FROM tmp_Split_Notes_Calc_Button_Icon t_SPLIT_NOTES
INNER JOIN parts.DOG_Button_Icon BUTTON_ICON ON BUTTON_ICON.notes LIKE CONCAT('%', t_SPLIT_NOTES.substring, '%')
INNER JOIN fetchmetrics.DOG_Button_Icon BUTTON_ICON ON BUTTON_ICON.notes LIKE CONCAT('%', t_SPLIT_NOTES.substring, '%')
WHERE
t_SPLIT_NOTES.substring IS NOT NULL
AND t_SPLIT_NOTES.substring <> ''
@@ -465,7 +465,7 @@ BEGIN
OR BUTTON_ICON_FILTERS.does_meet_notes_filter = 1
THEN 1 ELSE 0 END AS does_meet_non_id_filters
, CASE WHEN t_IMAGE.id_image IS NOT NULL THEN 1 ELSE 0 END AS does_image_already_exist_in_temp_table
FROM parts.DOG_Button_Icon BUTTON_ICON
FROM fetchmetrics.DOG_Button_Icon BUTTON_ICON
LEFT JOIN tmp_Image_Calc_Button_Icon t_IMAGE ON BUTTON_ICON.id_image = t_IMAGE.id_image
LEFT JOIN Button_Icon_Filters BUTTON_ICON_FILTERS ON BUTTON_ICON.id_button_icon = BUTTON_ICON_FILTERS.id_button_icon
WHERE
@@ -501,12 +501,12 @@ BEGIN
Button_Icon_Id_Filter AS (
SELECT BUTTON_ICON.id_button_icon
FROM tmp_Split_Id_Calc_Button_Icon t_SPLIT_ID
INNER JOIN parts.DOG_Button_Icon BUTTON_ICON ON t_SPLIT_ID.as_int = BUTTON_ICON.id_button_icon
INNER JOIN fetchmetrics.DOG_Button_Icon BUTTON_ICON ON t_SPLIT_ID.as_int = BUTTON_ICON.id_button_icon
)
, Button_Icon_Name_Filter AS (
SELECT BUTTON_ICON.id_button_icon
FROM tmp_Split_Name_Calc_Button_Icon t_SPLIT_NAME
INNER JOIN parts.DOG_Button_Icon BUTTON_ICON ON BUTTON_ICON.name LIKE CONCAT('%', t_SPLIT_NAME.substring, '%')
INNER JOIN fetchmetrics.DOG_Button_Icon BUTTON_ICON ON BUTTON_ICON.name LIKE CONCAT('%', t_SPLIT_NAME.substring, '%')
WHERE
t_SPLIT_NAME.substring IS NOT NULL
AND t_SPLIT_NAME.substring <> ''
@@ -565,7 +565,7 @@ BEGIN
OR IFNULL(BUTTON_ICON_FILTERS.does_meet_notes_filter, 0) = 1
THEN 1 ELSE 0 END AS does_meet_non_id_filters
, CASE WHEN t_IMAGE.id_image IS NOT NULL THEN 1 ELSE 0 END AS does_image_already_exist_in_temp_table
FROM parts.DOG_Button_Icon BUTTON_ICON
FROM fetchmetrics.DOG_Button_Icon BUTTON_ICON
LEFT JOIN tmp_Image_Calc_Button_Icon t_IMAGE ON BUTTON_ICON.id_image = t_IMAGE.id_image
LEFT JOIN Button_Icon_Filters BUTTON_ICON_FILTERS ON BUTTON_ICON.id_button_icon = BUTTON_ICON_FILTERS.id_button_icon
WHERE
@@ -603,7 +603,7 @@ BEGIN
END IF;
-- Missing Images
IF NOT EXISTS (SELECT * FROM tmp_Msg_Error_Calc_Button_Icon t_ERROR INNER JOIN parts.CORE_Msg_Error_Type ERROR_TYPE ON t_ERROR.id_type = ERROR_TYPE.id_type WHERE ERROR_TYPE.is_breaking_error = 1 LIMIT 1) THEN
IF NOT EXISTS (SELECT * FROM tmp_Msg_Error_Calc_Button_Icon t_ERROR INNER JOIN fetchmetrics.CORE_Msg_Error_Type ERROR_TYPE ON t_ERROR.id_type = ERROR_TYPE.id_type WHERE ERROR_TYPE.is_breaking_error = 1 LIMIT 1) THEN
IF
a_require_all_id_search_filters_met = 0
@@ -618,7 +618,7 @@ BEGIN
IMAGE.id_image
, 0 AS does_meet_id_filters
, 0 AS does_meet_non_id_filters
FROM parts.DOG_Image IMAGE
FROM fetchmetrics.DOG_Image IMAGE
INNER JOIN tmp_Button_Icon_Calc_Button_Icon t_BUTTON_ICON
ON IMAGE.id_image = t_BUTTON_ICON.id_image
AND t_BUTTON_ICON.does_image_already_exist_in_temp_table = 0
@@ -627,7 +627,7 @@ BEGIN
END IF;
-- Filter records
IF NOT EXISTS (SELECT * FROM tmp_Msg_Error_Calc_Button_Icon t_ERROR INNER JOIN parts.CORE_Msg_Error_Type ERROR_TYPE ON t_ERROR.id_type = ERROR_TYPE.id_type WHERE ERROR_TYPE.is_breaking_error = 1 LIMIT 1) THEN
IF NOT EXISTS (SELECT * FROM tmp_Msg_Error_Calc_Button_Icon t_ERROR INNER JOIN fetchmetrics.CORE_Msg_Error_Type ERROR_TYPE ON t_ERROR.id_type = ERROR_TYPE.id_type WHERE ERROR_TYPE.is_breaking_error = 1 LIMIT 1) THEN
DELETE t_BUTTON_ICON
FROM tmp_Button_Icon_Calc_Button_Icon t_BUTTON_ICON
LEFT JOIN tmp_Image_Calc_Button_Icon t_IMAGE ON t_BUTTON_ICON.id_image = t_IMAGE.id_image
@@ -767,7 +767,7 @@ BEGIN
;
END IF;
CALL parts.p_dog_calc_user(
CALL fetchmetrics.p_dog_calc_user(
a_guid -- a_guid
, 0 -- get_all_user
, 0 -- get_inactive_user
@@ -789,7 +789,7 @@ BEGIN
IFNULL(CALC_USER_T.has_access, 0)
INTO
v_can_view
FROM parts.DOG_Calc_User_Temp CALC_USER_T
FROM fetchmetrics.DOG_Calc_User_Temp CALC_USER_T
WHERE CALC_USER_T.GUID = a_guid
LIMIT 1
;
@@ -816,7 +816,7 @@ BEGIN
;
END IF;
CALL parts.p_dog_clear_calc_user(
CALL fetchmetrics.p_dog_clear_calc_user(
a_guid
, 0 -- a_debug
);
@@ -828,7 +828,7 @@ BEGIN
SELECT * FROM tmp_Msg_Error_Calc_Button_Icon;
END IF;
IF EXISTS(SELECT * FROM tmp_Msg_Error_Calc_Button_Icon t_ERROR INNER JOIN parts.CORE_Msg_Error_Type ERROR_TYPE ON t_ERROR.id_type = ERROR_TYPE.id_type WHERE ERROR_TYPE.is_breaking_error = 1 LIMIT 1) THEN
IF EXISTS(SELECT * FROM tmp_Msg_Error_Calc_Button_Icon t_ERROR INNER JOIN fetchmetrics.CORE_Msg_Error_Type ERROR_TYPE ON t_ERROR.id_type = ERROR_TYPE.id_type WHERE ERROR_TYPE.is_breaking_error = 1 LIMIT 1) THEN
IF a_debug = 1 THEN
SELECT * FROM tmp_Image_Calc_Button_Icon;
SELECT * FROM tmp_Button_Icon_Calc_Button_Icon;
@@ -845,7 +845,7 @@ BEGIN
-- Outputs
START TRANSACTION;
-- Button_Icons
INSERT INTO parts.DOG_Button_Icon_Temp (
INSERT INTO fetchmetrics.DOG_Button_Icon_Temp (
guid
, id_button_icon
, id_image
@@ -868,7 +868,7 @@ BEGIN
, t_BUTTON_ICON.does_meet_id_filters
, t_BUTTON_ICON.does_meet_non_id_filters
FROM parts.DOG_Button_Icon BUTTON_ICON
FROM fetchmetrics.DOG_Button_Icon BUTTON_ICON
INNER JOIN tmp_Button_Icon_Calc_Button_Icon t_BUTTON_ICON ON BUTTON_ICON.id_button_icon = t_BUTTON_ICON.id_button_icon
;
COMMIT;
@@ -886,7 +886,7 @@ BEGIN
, ERROR_TYPE.text_colour
, t_ERROR.msg
FROM tmp_Msg_Error_Calc_Button_Icon t_ERROR
INNER JOIN parts.CORE_Msg_Error_Type ERROR_TYPE ON t_ERROR.id_type = ERROR_TYPE.id_type
INNER JOIN fetchmetrics.CORE_Msg_Error_Type ERROR_TYPE ON t_ERROR.id_type = ERROR_TYPE.id_type
;
END IF;
@@ -903,7 +903,7 @@ BEGIN
DROP TEMPORARY TABLE IF EXISTS tmp_Image_Calc_Button_Icon;
IF a_debug = 1 THEN
CALL parts.p_core_debug_timing_reporting ( v_time_start );
CALL fetchmetrics.p_core_debug_timing_reporting ( v_time_start );
END IF;
END //
DELIMITER ;
@@ -912,7 +912,7 @@ DELIMITER ;
/*
CALL parts.p_dog_calc_button_icon (
CALL fetchmetrics.p_dog_calc_button_icon (
'slips ' -- a_guid
, 1 -- 'auth0|6582b95c895d09a70ba10fef', -- a_id_user
, 1 -- a_get_all_file_type
@@ -936,7 +936,7 @@ CALL parts.p_dog_calc_button_icon (
, 0 -- a_debug
);
CALL parts.p_dog_calc_button_icon (
CALL fetchmetrics.p_dog_calc_button_icon (
'slips ' -- a_guid
, 1 -- 'auth0|6582b95c895d09a70ba10fef', -- a_id_user
, 1 -- a_get_all_file_type
@@ -960,16 +960,16 @@ CALL parts.p_dog_calc_button_icon (
, 0 -- a_debug
);
SELECT *
FROM parts.DOG_Button_Icon_Temp
FROM fetchmetrics.DOG_Button_Icon_Temp
;
CALL parts.p_dog_clear_calc_button_icon (
CALL fetchmetrics.p_dog_clear_calc_button_icon (
'slips ' -- a_guid
, 1 -- debug
);
DELETE
FROM parts.DOG_Button_Icon_Temp
FROM fetchmetrics.DOG_Button_Icon_Temp
;
*/