Feat(SQL, UI): 1. Calc and Get Many Stored Procedures created for Weather, Lighting Level, Assessment, Distraction Type, Distraction Intensity Level, Distraction, Bribe, Assessment Command Modality Link, Response Quality Metric, Obedience Level, and Assessment Response. \n 2. Assessments and Assessment pages created with data loading and hooked up, but not saving.

This commit is contained in:
2025-07-24 16:48:18 +01:00
parent 6bb3a77a34
commit fad5336cc4
137 changed files with 10442 additions and 1116 deletions

View File

@@ -23,6 +23,10 @@ CREATE PROCEDURE parts.p_dog_calc_distraction (
, IN a_get_inactive_intensity_level_emotional BIT
, IN a_ids_intensity_level_emotional TEXT
, IN a_names_intensity_level_emotional TEXT
, IN a_get_all_intensity_level_scent BIT
, IN a_get_inactive_intensity_level_scent BIT
, IN a_ids_intensity_level_scent TEXT
, IN a_names_intensity_level_scent TEXT
, IN a_get_all_intensity_level_sight BIT
, IN a_get_inactive_intensity_level_sight BIT
, IN a_ids_intensity_level_sight TEXT
@@ -180,6 +184,10 @@ BEGIN
, a_get_inactive_intensity_level_emotional
, a_ids_intensity_level_emotional
, a_names_intensity_level_emotional
, a_get_all_intensity_level_scent
, a_get_inactive_intensity_level_scent
, a_ids_intensity_level_scent
, a_names_intensity_level_scent
, a_get_all_intensity_level_sight
, a_get_inactive_intensity_level_sight
, a_ids_intensity_level_sight
@@ -239,6 +247,7 @@ BEGIN
DROP TEMPORARY TABLE IF EXISTS tmp_Intensity_Level_Touch_Calc_Distraction;
DROP TEMPORARY TABLE IF EXISTS tmp_Intensity_Level_Sound_Calc_Distraction;
DROP TEMPORARY TABLE IF EXISTS tmp_Intensity_Level_Sight_Calc_Distraction;
DROP TEMPORARY TABLE IF EXISTS tmp_Intensity_Level_Scent_Calc_Distraction;
DROP TEMPORARY TABLE IF EXISTS tmp_Intensity_Level_Emotional_Calc_Distraction;
DROP TEMPORARY TABLE IF EXISTS tmp_Distraction_Type_Calc_Distraction;
DROP TEMPORARY TABLE IF EXISTS tmp_Assessment_Calc_Distraction;
@@ -274,6 +283,15 @@ BEGIN
, does_meet_non_id_filters BIT NOT NULL
);
CREATE TEMPORARY TABLE tmp_Intensity_Level_Scent_Calc_Distraction (
id_intensity_level INT NOT NULL
, code VARCHAR(250)
, name VARCHAR(250)
, active BIT
, does_meet_id_filters BIT NOT NULL
, does_meet_non_id_filters BIT NOT NULL
);
CREATE TEMPORARY TABLE tmp_Intensity_Level_Sight_Calc_Distraction (
id_intensity_level INT NOT NULL
, code VARCHAR(250)
@@ -306,6 +324,7 @@ BEGIN
, id_assessment INT
, id_distraction_type INT
, id_intensity_level_emotional INT
, id_intensity_level_scent INT
, id_intensity_level_sight INT
, id_intensity_level_sound INT
, id_intensity_level_touch INT
@@ -576,6 +595,71 @@ BEGIN
);
END IF;
-- Call Calc Intensity Level Scent
IF NOT EXISTS(SELECT * FROM tmp_Msg_Error_Calc_Distraction 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 a_debug = 1 THEN
SELECT
a_guid -- a_guid
, a_id_user -- a_id_user
, a_get_all_intensity_level_scent -- a_get_all_intensity_level_scent
, a_get_inactive_intensity_level_scent -- a_get_inactive_intensity_level_scent
, a_ids_intensity_level_scent -- a_ids_intensity_level_scent
, a_names_intensity_level_scent -- a_names_intensity_level_scent
, a_require_all_id_search_filters_met -- a_require_all_id_search_filters_met
, 0 -- a_require_any_id_search_filters_met
, a_require_all_non_id_search_filters_met -- a_require_all_non_id_search_filters_met
, 0 -- a_require_any_non_id_search_filters_met
, 0 -- a_show_errors
, 0 -- a_debug
;
END IF;
CALL parts.p_dog_calc_distraction_intensity_level (
a_guid -- a_guid
, a_id_user -- a_id_user
, a_get_all_intensity_level_scent -- a_get_all_intensity_level_scent
, a_get_inactive_intensity_level_scent -- a_get_inactive_intensity_level_scent
, a_ids_intensity_level_scent -- a_ids_intensity_level_scent
, a_names_intensity_level_scent -- a_names_intensity_level_scent
, a_require_all_id_search_filters_met -- a_require_all_id_search_filters_met
, 0 -- a_require_any_id_search_filters_met -- a_require_any_id_search_filters_met
, a_require_all_non_id_search_filters_met -- a_require_all_non_id_search_filters_met
, 0 -- a_require_any_non_id_search_filters_met -- a_require_any_non_id_search_filters_met
, 0 -- a_show_errors
, 0 -- a_debug
);
INSERT INTO tmp_Intensity_Level_Scent_Calc_Distraction (
id_intensity_level
, code
, name
, active
, does_meet_id_filters
, does_meet_non_id_filters
)
SELECT
INTENSITY_LEVEL_SCENT_T.id_intensity_level
, INTENSITY_LEVEL_SCENT_T.code
, INTENSITY_LEVEL_SCENT_T.name
, INTENSITY_LEVEL_SCENT_T.active
, INTENSITY_LEVEL_SCENT_T.does_meet_id_filters
, INTENSITY_LEVEL_SCENT_T.does_meet_non_id_filters
FROM parts.DOG_Distraction_Intensity_Level_Temp INTENSITY_LEVEL_SCENT_T
WHERE INTENSITY_LEVEL_SCENT_T.GUID = a_guid
;
IF a_debug = 1 THEN
SELECT * FROM tmp_Intensity_Level_Scent_Calc_Distraction;
END IF;
CALL parts.p_dog_clear_calc_distraction_intensity_level (
a_guid
, 0 -- a_debug
);
END IF;
-- Call Calc Intensity Level Sight
IF NOT EXISTS(SELECT * FROM tmp_Msg_Error_Calc_Distraction 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 a_debug = 1 THEN
@@ -889,6 +973,7 @@ BEGIN
, DISTRACTION.id_assessment
, DISTRACTION.id_distraction_type
, DISTRACTION.id_intensity_level_emotional
, DISTRACTION.id_intensity_level_scent
, DISTRACTION.id_intensity_level_sight
, DISTRACTION.id_intensity_level_sound
, DISTRACTION.id_intensity_level_touch
@@ -979,6 +1064,7 @@ BEGIN
, id_assessment
, id_distraction_type
, id_intensity_level_emotional
, id_intensity_level_scent
, id_intensity_level_sight
, id_intensity_level_sound
, id_intensity_level_touch
@@ -1028,6 +1114,7 @@ BEGIN
, DISTRACTION.id_assessment
, DISTRACTION.id_distraction_type
, DISTRACTION.id_intensity_level_emotional
, DISTRACTION.id_intensity_level_scent
, DISTRACTION.id_intensity_level_sight
, DISTRACTION.id_intensity_level_sound
, DISTRACTION.id_intensity_level_touch
@@ -1130,6 +1217,7 @@ BEGIN
LEFT JOIN tmp_Assessment_Calc_Distraction t_ASSESSMENT ON t_DISTRACTION.id_assessment = t_ASSESSMENT.id_assessment
LEFT JOIN tmp_Distraction_Type_Calc_Distraction t_DISTRACTION_TYPE ON t_DISTRACTION.id_distraction_type = t_DISTRACTION_TYPE.id_type
LEFT JOIN tmp_Intensity_Level_Emotional_Calc_Distraction t_INTENSITY_LEVEL_EMOTIONAL ON t_DISTRACTION.id_intensity_level_emotional = t_INTENSITY_LEVEL_EMOTIONAL.id_intensity_level
LEFT JOIN tmp_Intensity_Level_Scent_Calc_Distraction t_INTENSITY_LEVEL_SCENT ON t_DISTRACTION.id_intensity_level_scent = t_INTENSITY_LEVEL_SCENT.id_intensity_level
LEFT JOIN tmp_Intensity_Level_Sight_Calc_Distraction t_INTENSITY_LEVEL_SIGHT ON t_DISTRACTION.id_intensity_level_sight = t_INTENSITY_LEVEL_SIGHT.id_intensity_level
LEFT JOIN tmp_Intensity_Level_Sound_Calc_Distraction t_INTENSITY_LEVEL_SOUND ON t_DISTRACTION.id_intensity_level_sound = t_INTENSITY_LEVEL_SOUND.id_intensity_level
LEFT JOIN tmp_Intensity_Level_Touch_Calc_Distraction t_INTENSITY_LEVEL_TOUCH ON t_DISTRACTION.id_intensity_level_touch = t_INTENSITY_LEVEL_TOUCH.id_intensity_level
@@ -1141,6 +1229,7 @@ BEGIN
OR IFNULL(t_ASSESSMENT.does_meet_id_filters, 1) = 0
OR IFNULL(t_DISTRACTION_TYPE.does_meet_id_filters, 1) = 0
OR IFNULL(t_INTENSITY_LEVEL_EMOTIONAL.does_meet_id_filters, 1) = 0
OR IFNULL(t_INTENSITY_LEVEL_SCENT.does_meet_id_filters, 1) = 0
OR IFNULL(t_INTENSITY_LEVEL_SIGHT.does_meet_id_filters, 1) = 0
OR IFNULL(t_INTENSITY_LEVEL_SOUND.does_meet_id_filters, 1) = 0
OR IFNULL(t_INTENSITY_LEVEL_TOUCH.does_meet_id_filters, 1) = 0
@@ -1153,6 +1242,7 @@ BEGIN
OR IFNULL(t_ASSESSMENT.does_meet_non_id_filters, 1) = 0
OR IFNULL(t_DISTRACTION_TYPE.does_meet_non_id_filters, 1) = 0
OR IFNULL(t_INTENSITY_LEVEL_EMOTIONAL.does_meet_non_id_filters, 1) = 0
OR IFNULL(t_INTENSITY_LEVEL_SCENT.does_meet_non_id_filters, 1) = 0
OR IFNULL(t_INTENSITY_LEVEL_SIGHT.does_meet_non_id_filters, 1) = 0
OR IFNULL(t_INTENSITY_LEVEL_SOUND.does_meet_non_id_filters, 1) = 0
OR IFNULL(t_INTENSITY_LEVEL_TOUCH.does_meet_non_id_filters, 1) = 0
@@ -1164,6 +1254,7 @@ BEGIN
AND IFNULL(t_ASSESSMENT.does_meet_id_filters, 1) = 0
AND IFNULL(t_DISTRACTION_TYPE.does_meet_id_filters, 1) = 0
AND IFNULL(t_INTENSITY_LEVEL_EMOTIONAL.does_meet_id_filters, 1) = 0
AND IFNULL(t_INTENSITY_LEVEL_SCENT.does_meet_id_filters, 1) = 0
AND IFNULL(t_INTENSITY_LEVEL_SIGHT.does_meet_id_filters, 1) = 0
AND IFNULL(t_INTENSITY_LEVEL_SOUND.does_meet_id_filters, 1) = 0
AND IFNULL(t_INTENSITY_LEVEL_TOUCH.does_meet_id_filters, 1) = 0
@@ -1174,6 +1265,7 @@ BEGIN
AND IFNULL(t_ASSESSMENT.does_meet_non_id_filters, 1) = 0
AND IFNULL(t_DISTRACTION_TYPE.does_meet_non_id_filters, 1) = 0
AND IFNULL(t_INTENSITY_LEVEL_EMOTIONAL.does_meet_non_id_filters, 1) = 0
AND IFNULL(t_INTENSITY_LEVEL_SCENT.does_meet_non_id_filters, 1) = 0
AND IFNULL(t_INTENSITY_LEVEL_SIGHT.does_meet_non_id_filters, 1) = 0
AND IFNULL(t_INTENSITY_LEVEL_SOUND.does_meet_non_id_filters, 1) = 0
AND IFNULL(t_INTENSITY_LEVEL_TOUCH.does_meet_non_id_filters, 1) = 0
@@ -1186,6 +1278,7 @@ BEGIN
SELECT * FROM tmp_Assessment_Calc_Distraction;
SELECT * FROM tmp_Distraction_Type_Calc_Distraction;
SELECT * FROM tmp_Intensity_Level_Emotional_Calc_Distraction;
SELECT * FROM tmp_Intensity_Level_Scent_Calc_Distraction;
SELECT * FROM tmp_Intensity_Level_Sight_Calc_Distraction;
SELECT * FROM tmp_Intensity_Level_Sound_Calc_Distraction;
SELECT * FROM tmp_Intensity_Level_Touch_Calc_Distraction;
@@ -1273,6 +1366,7 @@ BEGIN
SELECT * FROM tmp_Assessment_Calc_Distraction;
SELECT * FROM tmp_Distraction_Type_Calc_Distraction;
SELECT * FROM tmp_Intensity_Level_Emotional_Calc_Distraction;
SELECT * FROM tmp_Intensity_Level_Scent_Calc_Distraction;
SELECT * FROM tmp_Intensity_Level_Sight_Calc_Distraction;
SELECT * FROM tmp_Intensity_Level_Sound_Calc_Distraction;
SELECT * FROM tmp_Intensity_Level_Touch_Calc_Distraction;
@@ -1283,19 +1377,21 @@ BEGIN
IF a_debug = 1 THEN
SELECT * FROM tmp_Assessment_Calc_Distraction;
SELECT * FROM tmp_Distraction_Type_Calc_Distraction;
SELECT * FROM tmp_Intensity_Level_Emotional_Calc_Distraction;
SELECT * FROM tmp_Intensity_Level_Sight_Calc_Distraction;
SELECT * FROM tmp_Intensity_Level_Sound_Calc_Distraction;
SELECT * FROM tmp_Intensity_Level_Touch_Calc_Distraction;
SELECT * FROM tmp_Intensity_Level_Emotional_Calc_Distraction;
SELECT * FROM tmp_Intensity_Level_Scent_Calc_Distraction;
SELECT * FROM tmp_Intensity_Level_Sight_Calc_Distraction;
SELECT * FROM tmp_Intensity_Level_Sound_Calc_Distraction;
SELECT * FROM tmp_Intensity_Level_Touch_Calc_Distraction;
SELECT * FROM tmp_Distraction_Calc_Distraction;
END IF;
DELETE FROM tmp_Assessment_Calc_Distraction;
DELETE FROM tmp_Distraction_Type_Calc_Distraction;
DELETE FROM tmp_Intensity_Level_Emotional_Calc_Distraction;
DELETE FROM tmp_Intensity_Level_Sight_Calc_Distraction;
DELETE FROM tmp_Intensity_Level_Sound_Calc_Distraction;
DELETE FROM tmp_Intensity_Level_Touch_Calc_Distraction;
DELETE FROM tmp_Intensity_Level_Sound_Calc_Distraction;
DELETE FROM tmp_Intensity_Level_Sight_Calc_Distraction;
DELETE FROM tmp_Intensity_Level_Scent_Calc_Distraction;
DELETE FROM tmp_Intensity_Level_Emotional_Calc_Distraction;
DELETE FROM tmp_Distraction_Type_Calc_Distraction;
DELETE FROM tmp_Assessment_Calc_Distraction;
DELETE FROM tmp_Distraction_Calc_Distraction;
END IF;
@@ -1312,6 +1408,7 @@ BEGIN
, id_assessment
, id_distraction_type
, id_intensity_level_emotional
, id_intensity_level_scent
, id_intensity_level_sight
, id_intensity_level_sound
, id_intensity_level_touch
@@ -1329,6 +1426,7 @@ BEGIN
, t_DISTRACTION.id_assessment
, t_DISTRACTION.id_distraction_type
, t_DISTRACTION.id_intensity_level_emotional
, t_DISTRACTION.id_intensity_level_scent
, t_DISTRACTION.id_intensity_level_sight
, t_DISTRACTION.id_intensity_level_sound
, t_DISTRACTION.id_intensity_level_touch
@@ -1365,6 +1463,7 @@ BEGIN
SELECT * FROM tmp_Assessment_Calc_Distraction;
SELECT * FROM tmp_Distraction_Type_Calc_Distraction;
SELECT * FROM tmp_Intensity_Level_Emotional_Calc_Distraction;
SELECT * FROM tmp_Intensity_Level_Scent_Calc_Distraction;
SELECT * FROM tmp_Intensity_Level_Sight_Calc_Distraction;
SELECT * FROM tmp_Intensity_Level_Sound_Calc_Distraction;
SELECT * FROM tmp_Intensity_Level_Touch_Calc_Distraction;
@@ -1388,6 +1487,7 @@ BEGIN
DROP TEMPORARY TABLE IF EXISTS tmp_Intensity_Level_Touch_Calc_Distraction;
DROP TEMPORARY TABLE IF EXISTS tmp_Intensity_Level_Sound_Calc_Distraction;
DROP TEMPORARY TABLE IF EXISTS tmp_Intensity_Level_Sight_Calc_Distraction;
DROP TEMPORARY TABLE IF EXISTS tmp_Intensity_Level_Scent_Calc_Distraction;
DROP TEMPORARY TABLE IF EXISTS tmp_Intensity_Level_Emotional_Calc_Distraction;
DROP TEMPORARY TABLE IF EXISTS tmp_Distraction_Type_Calc_Distraction;
DROP TEMPORARY TABLE IF EXISTS tmp_Assessment_Calc_Distraction;
@@ -1423,6 +1523,11 @@ CALL parts.p_dog_calc_distraction (
, '' -- a_ids_intensity_level_emotional
, '' -- a_names_intensity_level_emotional
, 1 -- a_get_all_intensity_level_scent
, 0 -- a_get_inactive_intensity_level_scent
, '' -- a_ids_intensity_level_scent
, '' -- a_names_intensity_level_scent
, 1 -- a_get_all_intensity_level_sight
, 0 -- a_get_inactive_intensity_level_sight
, '' -- a_ids_intensity_level_sight