Night shift attendance calculation

Can someone please help me to calculate attendance for night shift with multiple punches.

Currently using this query to fetch data from my table(day shift),
d1 = (“”“SELECT
UserId,
MIN(LogDate),
MAX(LogDate),
ABS(ROUND(TIMESTAMPDIFF(second, MAX(LogDate), MIN(LogDate))/(60 * 60),2)) AS diff,
CASE
WHEN ABS(ROUND(TIMESTAMPDIFF(second, MAX(LogDate), MIN(LogDate))/(60 * 60),2))>7 THEN ‘full day’
WHEN ABS(ROUND(TIMESTAMPDIFF(minute, MAX(TIME(LogDate)), shiftStart),2))<15 THEN ‘Grace Time’
WHEN ABS(ROUND(TIMESTAMPDIFF(second, MAX(LogDate), MIN(LogDate))/(60 * 60),2))=4.5 THEN ‘half day’
WHEN ABS(ROUND(TIMESTAMPDIFF(second, MAX(LogDate), MIN(LogDate))/(60 * 60),2))<4.5 THEN ‘absent’
END,
IF(MINUTE(TIMEDIFF(shiftStart,MIN(TIME(LogDate)))) > 15, ‘grace time’,‘’),
IF(MOD(HOUR(TIMEDIFF(shiftEnd,MAX(TIME(LogDate)))),24) > 2, ‘early going’,‘’)
FROM
biometric
WHERE
DATE(LOGDATE) = ‘2019-10-10’
GROUP BY
UserId”“”)

Data is in this format:
|UserId |C1 |Shiftstart|Shiftend|LogDate |
|ITL-703|out|21:00:00|06:00:00|2019-10-10 13:47:17|
|ITL-703|out|21:00:00|06:00:00|2019-10-10 13:47:20|
|ITL-703|out|21:00:00|06:00:00|2019-10-10 13:47:22|
|ITL-703|out|21:00:00|06:00:00|2019-10-10 13:47:25|
|ITL-703|out|21:00:00|06:00:00|2019-10-10 13:47:27|
|ITL-703|out|21:00:00|06:00:00|2019-10-10 13:47:29|
|ITL-703|out|21:00:00|06:00:00|2019-10-10 13:47:42|
|ITL-703|out|21:00:00|06:00:00|2019-10-10 13:47:44|
|ITL-703|out|21:00:00|06:00:00|2019-10-10 22:47:26|
|ITL-703|out|21:00:00|06:00:00|2019-10-11 20:22:54|
|ITL-703|out|21:00:00|06:00:00|2019-10-11 23:16:19|
|ITL-703|out|21:00:00|06:00:00|2019-10-11 23:30:30|
|ITL-703|out|21:00:00|06:00:00|2019-10-12 07:34:46|
|ITL-703|out|21:00:00|06:00:00|2019-10-14 19:13:35|
|ITL-703|out|21:00:00|06:00:00|2019-10-14 23:36:00|
|ITL-703|out|21:00:00|06:00:00|2019-10-14 23:48:25|
|ITL-703|out|21:00:00|06:00:00|2019-10-15 06:36:05|
|ITL-703|out|21:00:00|06:00:00|2019-10-15 20:56:44|
|ITL-703|out|21:00:00|06:00:00|2019-10-15 23:03:00|
|ITL-703|out|21:00:00|06:00:00|2019-10-15 23:17:50|
|ITL-703|out|21:00:00|06:00:00|2019-10-16 06:39:38|
|ITL-703|out|21:00:00|06:00:00|2019-10-16 21:12:36|
|ITL-703|out|21:00:00|06:00:00|2019-10-17 06:32:49|

Thanks in advance…