Completed

Query de alocação de projeto no Mysql

Published on the November 24, 2017 in IT & Programming

About this project

Open

Preciso criar uma query no Mysql com as seguintes especificações.

Em minha empresa tenho um equipe que trabalha em vários projetos de forma simultânea, e no do decorrer do dia minha gestora aloca cada colabora em um determinado projeto. Toda que vez que acontece a troca de projeto, meu sistema registra a troca no banco de dados. Eu preciso conseguir gerar um relatório que me mostre todos projetos e tempo em que os colaboradores ficaram alocados nele.


Meu banco de dados registra as trocas no seguinte formato.

Id                  cliente_id                member_id                  created
1                  12                            25                                  10/10/2017 15:12:10

Isso quer dizer que o colaborador 25 foi alocado para o cliente 12 no dia 10/10/2017 as 15:12.

Observações:
-Um colaborador só pode estar alocado em um único projeto por vez, e um projeto pode ter nenhum,  um ou mais colaboradores alocados.
- Meu colaboradores só trabalham das 8:30 até 17:30 com uma hora de almoço e 15 minutos de café na parte manhã e 15 minutos na parte da tarde. Esses valores devem ser descontados.
- Se alguém trabalhar em um projeto de um dia para o outro, o período fora do trabalho deve ser descontado.

Id    user_id      cliente_id          created
12992    120    73                            2017-11-23 08:55:33
12993    138    101                        2017-11-23 09:55:23
12994    120    109                        2017-11-23 10:21:48
12996    138    55                        2017-11-23 10:50:29
12997    120    107                        2017-11-23 11:00:44
12998    138    81                        2017-11-23 11:01:21

A tabela ficaria no seguinte formato.

Cliente            Horas Alocado
73                    86 minutos  (Na primeira linha o usuário 120 entra no cliente 73 as 8:55 e sai do cliente 73 as 10:21)
101                  40 minutos (Na segunda linha o usuário 138 entra no cliente 101 as 9:55 e saio do cliente 101 as 10:55, o valor total é de 55 minutos, porem como tem o período do café as 10:30 de 15 minutos,  foi descontrato sobre o valor total.

Caso seja mais fácil, aceito uma função em php ou javascript para resolução desse problema.

Category IT & Programming
Subcategory Web development
What is the scope of the project? Small change or bug
Is this a project or a position? Project
I currently have I have specifications
Required availability As needed
Roles needed Developer

Delivery term: Not specified

Skills needed