Я занимаюсь разработкой системы хронометража, в которой есть расписание на дневную и ночную смены.
Вот моя таблица [tbl_datetime_records]
+---------------+---------------+--------------------+
| biometrics_id | employee_name | date_time_logs |
+---------------+---------------+--------------------+
| 1221 | EMPLOYEE 1 | 2014-07-11 09:00 |
| 1221 | EMPLOYEE 1 | 2014-07-11 18:00 |
| 1221 | EMPLOYEE 1 | 2014-07-12 08:54 |
| 1221 | EMPLOYEE 1 | 2014-07-12 18:01 |
| 7445 | EMPLOYEE 2 | 2014-07-11 09:00 |
| 7445 | EMPLOYEE 2 | 2014-07-11 18:00 |
| 7445 | EMPLOYEE 2 | 2014-07-12 08:54 |
| 7445 | EMPLOYEE 2 | 2014-07-12 18:01 |
| 2332 | EMPLOYEE 3 | 2014-07-11 18:00 |
| 2332 | EMPLOYEE 3 | 2014-07-12 02:00 |
| 2332 | EMPLOYEE 3 | 2014-07-12 02:01 |
| 2332 | EMPLOYEE 3 | 2014-07-12 18:00 |
| 2332 | EMPLOYEE 3 | 2014-07-13 02:03 |
| 4114 | EMPLOYEE 4 | 2014-07-11 08:43 |
| 4114 | EMPLOYEE 4 | 2014-07-11 08:44 |
| 4114 | EMPLOYEE 4 | 2014-07-11 14:02 |
| 4114 | EMPLOYEE 4 | 2014-07-12 08:56 |
| 4114 | EMPLOYEE 4 | 2014-07-12 18:04 |
| 4114 | EMPLOYEE 4 | 2014-07-13 09:00 |
+---------------+---------------+--------------------+
Я фильтрую это как ПЕРВЫЙ и ПОСЛЕДНИЙOUT
Условия:
- Для сотрудников будет несколько входов и выходов в один и тот же день.Таким образом, правила будут первым входом и последним выходом.
- будет производиться фильтрация в ночную смену.
- Время входа и время ожидания могут быть равны нулю для сотрудника.
- Их уникальной идентификацией будет поле (biomterics_id).
Вывод должен быть:
+---------------+---------------+------------------+------------------+
| biometrics_id | employee_name | date_time_in | date_time_out |
+---------------+---------------+------------------+------------------+
| 1221 | EMPLOYEE 1 | 2014-07-11 09:00 | 2014-07-11 18:00 |
| 1221 | EMPLOYEE 1 | 2014-07-12 08:54 | 2014-07-12 18:01 |
| 7445 | EMPLOYEE 2 | 2014-07-11 09:00 | 2014-07-11 18:00 |
| 7445 | EMPLOYEE 2 | 2014-07-12 08:54 | 2014-07-12 18:01 |
| 2332 | EMPLOYEE 3 | 2014-07-11 18:00 | 2014-07-12 02:01 | ---> NIGHT SHIFT
| 2332 | EMPLOYEE 3 | 2014-07-12 18:00 | 2014-07-13 02:03 | ---> NIGHT SHIFT
| 4114 | EMPLOYEE 4 | 2014-07-11 08:43 | 2014-07-11 14:02 | ---> HALF DAY
| 4114 | EMPLOYEE 4 | NULL | 2014-07-12 18:04 | ---> NO TIME IN
| 4114 | EMPLOYEE 4 | 2014-07-1309:00 | NULL | ---> NO TIME OUT
+---------------+---------------+------------------+------------------+
Я до сих пор не имею представления об этом сценарии.Я использую MYSQL / PHP / LARAVEL