Feat: Assessment page complete and new Home page layout for marketing phase 1 of the customer acquisition plan and offering a demo and for trainers to join the alpha trials. Reporting images created for radar diagram of Command mastery by Command Category; line graph of single command progress measured by obedience level, response latency, and compliance duration over time; Calendar Entries page filtered to unpaid bill calendary entries created using dummy data created in web server as database implementation not yet started.
This commit is contained in:
264
static/MySQL/90050_create_and_view_radar_diagram.sql
Normal file
264
static/MySQL/90050_create_and_view_radar_diagram.sql
Normal file
@@ -0,0 +1,264 @@
|
||||
SELECT *
|
||||
FROM demo.DOG_Assessment A
|
||||
WHERE A.id_assessment = 21
|
||||
ORDER BY A.created_on DESC
|
||||
;
|
||||
SELECT *
|
||||
FROM demo.DOG_Distraction D
|
||||
INNER JOIN demo.DOG_Assessment A ON D.id_assessment = A.id_assessment
|
||||
WHERE
|
||||
D.id_distraction = 5
|
||||
-- A.id_assessment = 21
|
||||
ORDER BY A.created_on DESC, D.created_on DESC
|
||||
;
|
||||
SELECT *
|
||||
FROM demo.DOG_Assessment_Command_Modality_Link ACML
|
||||
INNER JOIN demo.DOG_Assessment A ON ACML.id_assessment = A.id_assessment
|
||||
WHERE
|
||||
-- ACML.id_link = 5
|
||||
A.id_assessment = 21
|
||||
ORDER BY A.created_on DESC, ACML.created_on DESC
|
||||
;
|
||||
SELECT *
|
||||
FROM demo.DOG_Assessment_Response AR
|
||||
INNER JOIN demo.DOG_Assessment_Command_Modality_Link ACML ON AR.id_assessment_command_modality_link = ACML.id_link
|
||||
INNER JOIN demo.DOG_Assessment A ON ACML.id_assessment = A.id_assessment
|
||||
WHERE
|
||||
-- ACML.id_link = 5
|
||||
A.id_assessment = 21
|
||||
ORDER BY A.created_on DESC, ACML.created_on DESC
|
||||
;
|
||||
|
||||
/*
|
||||
INSERT INTO demo.DOG_Assessment_Command_Modality_Link (
|
||||
|
||||
id_assessment
|
||||
, id_command
|
||||
, id_command_modality
|
||||
,id_bribe
|
||||
,distance_from_handler_metres
|
||||
,is_in_sight_of_handler
|
||||
,is_in_scent_range_of_handler
|
||||
,is_in_hearing_range_of_handler
|
||||
,is_on_lead
|
||||
,active
|
||||
)
|
||||
SELECT
|
||||
21 -- id_assessment
|
||||
, C.id_command
|
||||
, 1 + (C.id_command % 3) -- id_command_modality
|
||||
, 1 + ((1 + C.id_command) % 3) -- id_bribe
|
||||
, 1 + ((2 + C.id_command) % 3) -- distance_from_handler_metres
|
||||
, case when (C.id_command % 3) = 0 then 0 else 1 end -- is_in_sight_of_handler
|
||||
,case when ((1 + C.id_command) % 3) = 0 then 0 else 1 end -- is_in_scent_range_of_handler
|
||||
, case when ((2 + C.id_command) % 3) = 0 then 0 else 1 end -- is_in_hearing_range_of_handler
|
||||
, case when (C.id_command % 17) = 0 then 1 else 0 end -- is_on_lead
|
||||
, 1 -- active
|
||||
FROM demo.DOG_Command C
|
||||
-- INNER JOIN Filtered_Commands FC ON C.id_command = FC.id_command
|
||||
-- WHERE FC.index_command_in_category % 3 =
|
||||
WHERE (C.id_command % 7 = 0) or (C.id_command % 11 = 0) or (C.id_command % 13 = 0)
|
||||
;
|
||||
|
||||
INSERT INTO demo.DOG_Assessment_Response (
|
||||
id_assessment_command_modality_link
|
||||
, id_response_quality_metric
|
||||
, id_obedience_level
|
||||
, value_measured
|
||||
)
|
||||
SELECT
|
||||
ACML.id_link AS id_assessment_command_modality_link
|
||||
, METRIC.id_response_quality_metric
|
||||
, 1 + (ACML.id_command % 8) id_obedience_level
|
||||
, 1 + ((METRIC.id_response_quality_metric * 3 + ACML.id_command) % 8) value_measured
|
||||
FROM demo.DOG_Assessment_Command_Modality_Link ACML
|
||||
INNER JOIN demo.DOG_Assessment A ON ACML.id_assessment = A.id_assessment
|
||||
CROSS JOIN (
|
||||
SELECT 3 AS id_response_quality_metric
|
||||
UNION
|
||||
SELECT 1 AS id_response_quality_metric
|
||||
) METRIC
|
||||
WHERE
|
||||
A.id_assessment = 21
|
||||
AND ACML.id_link <> 5
|
||||
;
|
||||
|
||||
WITH
|
||||
ACML_Response_Count AS (
|
||||
SELECT
|
||||
ACML.id_link
|
||||
, COUNT(*) AS response_count
|
||||
FROM demo.DOG_Assessment_Command_Modality_Link ACML
|
||||
INNER JOIN demo.DOG_Assessment_Response AR ON ACML.id_link = AR.id_assessment_command_modality_link
|
||||
GROUP BY ACML.id_link
|
||||
)
|
||||
, ACML_With_Responses AS (
|
||||
SELECT
|
||||
ACML.id_link
|
||||
, CASE WHEN IFNULL(ACML_RESPONSE_COUNT.response_count, 0) > 0 THEN 1 ELSE 0 END AS has_responses
|
||||
FROM demo.DOG_Assessment_Command_Modality_Link ACML
|
||||
LEFT JOIN ACML_Response_Count ACML_RESPONSE_COUNT ON ACML.id_link = ACML_RESPONSE_COUNT.id_link
|
||||
)
|
||||
, Category_Size_Known AS (
|
||||
SELECT
|
||||
CC.id_command_category
|
||||
, COUNT(*) AS count_known_commands
|
||||
FROM demo.DOG_Command_Category CC
|
||||
INNER JOIN demo.DOG_Command C ON CC.id_command_category = C.id_command_category
|
||||
LEFT JOIN demo.DOG_Assessment_Command_Modality_Link ACML ON C.id_command = ACML.id_command
|
||||
LEFT JOIN ACML_With_Responses ACML_WITH_RESPONSES ON ACML.id_link = ACML_WITH_RESPONSES.id_link
|
||||
LEFT JOIN demo.DOG_Assessment A ON ACML.id_assessment = A.id_assessment
|
||||
-- LEFT JOIN demo.DOG_Assessment_Response AR ON ACML.id_link = AR.id_assessment_command_modality_link
|
||||
WHERE
|
||||
ACML_WITH_RESPONSES.has_responses = 1
|
||||
AND CC.active = 1
|
||||
AND C.active = 1
|
||||
AND ACML.active = 1
|
||||
AND A.active = 1
|
||||
AND A.id_assessment = 21
|
||||
GROUP BY CC.id_command_category
|
||||
)
|
||||
, Category_Size AS (
|
||||
SELECT
|
||||
CC.id_command_category
|
||||
, COUNT(*) AS count_commands
|
||||
FROM demo.DOG_Command_Category CC
|
||||
INNER JOIN demo.DOG_Command C ON CC.id_command_category = C.id_command_category
|
||||
WHERE
|
||||
CC.active = 1
|
||||
AND C.active = 1
|
||||
GROUP BY CC.id_command_category
|
||||
)
|
||||
SELECT *
|
||||
FROM demo.DOG_Command_Category CC
|
||||
LEFT JOIN Category_Size_Known C_SIZE_KNOWN ON CC.id_command_category = C_SIZE_KNOWN.id_command_category
|
||||
LEFT JOIN Category_Size C_SIZE ON CC.id_command_category = C_SIZE.id_command_category
|
||||
WHERE CC.active = 1
|
||||
;
|
||||
|
||||
|
||||
INSERT INTO demo.DOG_Assessment (
|
||||
id_temp
|
||||
, id_weather
|
||||
, id_lighting_level
|
||||
, id_location
|
||||
, id_user_handler
|
||||
, notes
|
||||
, temperature_celcius
|
||||
, created_on
|
||||
)
|
||||
SELECT
|
||||
A.id_assessment
|
||||
, A.id_weather
|
||||
, A.id_lighting_level
|
||||
, A.id_location
|
||||
, A.id_user_handler
|
||||
, A.notes
|
||||
, A.temperature_celcius
|
||||
, DATE_SUB(A.created_on, INTERVAL 5 WEEK)
|
||||
FROM demo.DOG_Assessment A
|
||||
WHERE A.id_assessment <= 21
|
||||
;
|
||||
|
||||
INSERT INTO demo.DOG_Distraction (
|
||||
id_temp
|
||||
, 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
|
||||
, quantity
|
||||
, proximity_metres
|
||||
, notes
|
||||
)
|
||||
SELECT
|
||||
D.id_distraction
|
||||
, D.id_assessment
|
||||
, D.id_distraction_type
|
||||
, D.id_intensity_level_emotional
|
||||
, D.id_intensity_level_scent
|
||||
, D.id_intensity_level_sight
|
||||
, D.id_intensity_level_sound
|
||||
, D.id_intensity_level_touch
|
||||
, D.quantity
|
||||
, D.proximity_metres
|
||||
, D.notes
|
||||
FROM demo.DOG_Distraction D
|
||||
INNER JOIN demo.DOG_Assessment A
|
||||
-- ON D.id_assessment = A.id_assessment
|
||||
ON D.id_assessment = A.id_temp
|
||||
AND A.id_assessment > 910
|
||||
-- WHERE A.id_assessment <= 21
|
||||
;
|
||||
|
||||
INSERT INTO demo.DOG_Assessment_Command_Modality_Link (
|
||||
id_temp
|
||||
, id_assessment
|
||||
, id_command
|
||||
, id_command_modality
|
||||
, id_bribe
|
||||
, distance_from_handler_metres
|
||||
, is_in_sight_of_handler
|
||||
, is_in_scent_range_of_handler
|
||||
, is_in_hearing_range_of_handler
|
||||
, is_on_lead
|
||||
)
|
||||
SELECT
|
||||
ACML.id_link
|
||||
, ACML.id_assessment
|
||||
, ACML.id_command
|
||||
, ACML.id_command_modality
|
||||
, ACML.id_bribe
|
||||
, ACML.distance_from_handler_metres
|
||||
, ACML.is_in_sight_of_handler
|
||||
, ACML.is_in_scent_range_of_handler
|
||||
, ACML.is_in_hearing_range_of_handler
|
||||
, ACML.is_on_lead
|
||||
FROM demo.DOG_Assessment_Command_Modality_Link ACML
|
||||
INNER JOIN demo.DOG_Assessment A
|
||||
-- ON ACML.id_assessment = A.id_assessment
|
||||
ON ACML.id_assessment = A.id_temp
|
||||
AND A.id_assessment > 910
|
||||
-- WHERE A.id_assessment <= 21
|
||||
;
|
||||
|
||||
INSERT INTO demo.DOG_Assessment_Response (
|
||||
id_temp
|
||||
, id_assessment_command_modality_link
|
||||
, id_response_quality_metric
|
||||
, id_obedience_level
|
||||
, value_measured
|
||||
, notes
|
||||
)
|
||||
SELECT
|
||||
AR.id_response
|
||||
, ACML.id_link -- (SELECT ACML_NEW.id_assessment_command_modality_link FROM demo.DOG_Assessment_Command_Modality_Link ACML_NEW WHERE ACML_NEW.id_temp
|
||||
, AR.id_response_quality_metric
|
||||
, AR.id_obedience_level
|
||||
, POWER(CASE WHEN AR.id_obedience_level = 3 THEN 0.9 ELSE 1.35 END, 6) * AR.value_measured
|
||||
, AR.notes
|
||||
FROM demo.DOG_Assessment_Response AR
|
||||
INNER JOIN demo.DOG_Assessment_Command_Modality_Link ACML
|
||||
-- ON AR.id_assessment_command_modality_link = ACML.id_link
|
||||
ON AR.id_assessment_command_modality_link = ACML.id_temp
|
||||
AND ACML.id_link > 3168
|
||||
-- INNER JOIN demo.DOG_Assessment A ON AR.id_assessment = A.id_assessment
|
||||
-- WHERE A.id_assessment <= 21
|
||||
;
|
||||
|
||||
-- DELETE A FROM demo.DOG_Assessment A WHERE A.id_assessment > 21;
|
||||
-- DELETE A FROM demo.DOG_Assessment A WHERE A.id_assessment > 21;
|
||||
-- DELETE A FROM demo.DOG_Assessment A WHERE A.id_assessment > 21;
|
||||
-- DELETE A FROM demo.DOG_Assessment A WHERE A.id_assessment > 21;
|
||||
*/
|
||||
|
||||
SELECT *
|
||||
FROM demo.DOG_Assessment_Response AR
|
||||
INNER JOIN demo.DOG_Assessment_Command_Modality_Link ACML ON AR.id_assessment_command_modality_link = ACML.id_link
|
||||
INNER JOIN demo.DOG_Assessment A ON ACML.id_assessment = A.id_assessment
|
||||
INNER JOIN demo.DOG_Command C ON ACML.id_command = C.id_command
|
||||
WHERE C.name LIKE '%SIT%'
|
||||
ORDER BY A.created_on, AR.id_response
|
||||
;
|
||||
Reference in New Issue
Block a user