mirror of
https://github.com/opelly27/WinStudentGoalTracker.git
synced 2026-05-20 01:47:41 +00:00
Updates to encompass benchmarks
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
DELIMITER ;;
|
||||
CREATE DEFINER=`root`@`%` PROCEDURE `sp_Benchmark_GetByStudentId`(IN p_id_student CHAR(36))
|
||||
BEGIN
|
||||
SELECT
|
||||
s.`identifier` AS `studentIdentifier`,
|
||||
b.`id_benchmark` AS `benchmarkId`,
|
||||
b.`id_goal` AS `goalId`,
|
||||
g.`title` AS `goalTitle`,
|
||||
b.`benchmark` AS `benchmark`,
|
||||
u.`name` AS `createdByName`,
|
||||
b.`created_at` AS `createdAt`,
|
||||
b.`updated_at` AS `updatedAt`
|
||||
FROM `benchmark` b
|
||||
INNER JOIN `goal` g ON g.`id_goal` = b.`id_goal`
|
||||
INNER JOIN `student` s ON s.`id_student` = g.`id_student`
|
||||
LEFT JOIN `user` u ON u.`id_user` = b.`id_user_created`
|
||||
WHERE g.`id_student` = p_id_student
|
||||
ORDER BY b.`created_at` DESC;
|
||||
END;;
|
||||
DELIMITER ;
|
||||
@@ -0,0 +1,38 @@
|
||||
DELIMITER ;;
|
||||
CREATE DEFINER=`root`@`%` PROCEDURE `sp_Benchmark_Insert`(
|
||||
IN p_id_benchmark CHAR(36),
|
||||
IN p_id_goal CHAR(36),
|
||||
IN p_id_user_created CHAR(36),
|
||||
IN p_benchmark TEXT
|
||||
)
|
||||
BEGIN
|
||||
INSERT INTO benchmark
|
||||
(
|
||||
id_benchmark,
|
||||
id_goal,
|
||||
id_user_created,
|
||||
benchmark,
|
||||
created_at,
|
||||
updated_at
|
||||
)
|
||||
VALUES
|
||||
(
|
||||
p_id_benchmark,
|
||||
p_id_goal,
|
||||
p_id_user_created,
|
||||
p_benchmark,
|
||||
UTC_TIMESTAMP(),
|
||||
NULL
|
||||
);
|
||||
SELECT
|
||||
id_benchmark,
|
||||
id_goal,
|
||||
id_user_created,
|
||||
benchmark,
|
||||
created_at,
|
||||
updated_at
|
||||
FROM benchmark
|
||||
WHERE id_benchmark = p_id_benchmark
|
||||
LIMIT 1;
|
||||
END;;
|
||||
DELIMITER ;
|
||||
@@ -0,0 +1,14 @@
|
||||
DELIMITER ;;
|
||||
CREATE DEFINER=`root`@`%` PROCEDURE `sp_Benchmark_Update`(
|
||||
IN p_id_benchmark CHAR(36),
|
||||
IN p_benchmark TEXT
|
||||
)
|
||||
BEGIN
|
||||
UPDATE benchmark
|
||||
SET
|
||||
benchmark = p_benchmark,
|
||||
updated_at = UTC_TIMESTAMP()
|
||||
WHERE id_benchmark = p_id_benchmark;
|
||||
SELECT ROW_COUNT() AS rowsAffected;
|
||||
END;;
|
||||
DELIMITER ;
|
||||
@@ -8,7 +8,8 @@ BEGIN
|
||||
vc.`title`,
|
||||
vc.`description`,
|
||||
vc.`category`,
|
||||
vc.`progressEventCount`
|
||||
vc.`progressEventCount`,
|
||||
vc.`benchmarkCount`
|
||||
FROM `v_goal_card` vc
|
||||
INNER JOIN `student` s ON s.`id_student` = vc.`studentId`
|
||||
WHERE vc.`studentId` = p_id_student
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
CREATE TABLE `benchmark` (
|
||||
`id_benchmark` char(36) NOT NULL DEFAULT (uuid()),
|
||||
`id_goal` char(36) NOT NULL,
|
||||
`id_user_created` char(36) NOT NULL,
|
||||
`benchmark` text NOT NULL,
|
||||
`created_at` datetime NOT NULL,
|
||||
`updated_at` datetime DEFAULT NULL,
|
||||
PRIMARY KEY (`id_benchmark`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
@@ -0,0 +1,7 @@
|
||||
CREATE TABLE `progress_event_benchmark` (
|
||||
`id_progress_event_benchmark` char(36) NOT NULL DEFAULT (uuid()),
|
||||
`id_progress_event` char(36) NOT NULL,
|
||||
`id_benchmark` char(36) NOT NULL,
|
||||
`created_at` datetime NOT NULL,
|
||||
PRIMARY KEY (`id_progress_event_benchmark`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
@@ -1,5 +1,7 @@
|
||||
CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`%` SQL SECURITY DEFINER VIEW `winstudentgoaltracker`.`v_goal_card` AS
|
||||
select `winstudentgoaltracker`.`goal`.`id_goal` AS `goalId`,`winstudentgoaltracker`.`goal`.`id_goal_parent` AS `goalParentId`,`winstudentgoaltracker`.`goal`.`id_student` AS `studentId`,`winstudentgoaltracker`.`goal`.`title` AS `title`,`winstudentgoaltracker`.`goal`.`description` AS `description`,`winstudentgoaltracker`.`goal`.`category` AS `category`,count(`pe`.`id_progress_event`) AS `progressEventCount`
|
||||
from (`winstudentgoaltracker`.`goal`
|
||||
select `g`.`id_goal` AS `goalId`,`g`.`id_goal_parent` AS `goalParentId`,`g`.`id_student` AS `studentId`,`g`.`title` AS `title`,`g`.`description` AS `description`,`g`.`category` AS `category`,count(distinct `pe`.`id_progress_event`) AS `progressEventCount`,count(distinct `b`.`id_benchmark`) AS `benchmarkCount`
|
||||
from ((`winstudentgoaltracker`.`goal` `g`
|
||||
left
|
||||
join `winstudentgoaltracker`.`progress_event` `pe` on((`pe`.`id_goal` = `winstudentgoaltracker`.`goal`.`id_goal`))) group by `winstudentgoaltracker`.`goal`.`id_goal`,`winstudentgoaltracker`.`goal`.`id_goal_parent`,`winstudentgoaltracker`.`goal`.`id_student`,`winstudentgoaltracker`.`goal`.`title`,`winstudentgoaltracker`.`goal`.`description`,`winstudentgoaltracker`.`goal`.`category`;
|
||||
join `winstudentgoaltracker`.`progress_event` `pe` on((`pe`.`id_goal` = `g`.`id_goal`)))
|
||||
left
|
||||
join `winstudentgoaltracker`.`benchmark` `b` on((`b`.`id_goal` = `g`.`id_goal`))) group by `g`.`id_goal`,`g`.`id_goal_parent`,`g`.`id_student`,`g`.`title`,`g`.`description`,`g`.`category`;
|
||||
|
||||
@@ -2,4 +2,5 @@ CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`%` SQL SECURITY DEFINER VIEW `winstud
|
||||
select `pe`.`id_progress_event` AS `progressEventId`,`pe`.`id_goal` AS `goalId`,`g`.`id_student` AS `studentId`,`pe`.`content` AS `content`,`pe`.`created_at` AS `createdAt`,`u`.`name` AS `createdByName`
|
||||
from ((`winstudentgoaltracker`.`progress_event` `pe`
|
||||
join `winstudentgoaltracker`.`goal` `g` on((`g`.`id_goal` = `pe`.`id_goal`)))
|
||||
left join `winstudentgoaltracker`.`user` `u` on((`u`.`id_user` = `pe`.`id_user_created`)));
|
||||
left
|
||||
join `winstudentgoaltracker`.`user` `u` on((`u`.`id_user` = `pe`.`id_user_created`)));
|
||||
|
||||
Reference in New Issue
Block a user