About this project
it-programming / desktop-apps
Open
Pretende-se que seja desenvolvido um software Windows desktop que, com base numa lista de stands locais e de vendedores, calcule uma escala de serviço alocando vendedores a locais, tendo em conta as regras/condicionantes definidas abaixo.
Conceitos:
Locais/Stands
• Locais
Braga -1 principal + 3 secundarios
Guimarães -1 principal + 2 secundarios
Paredes -1 principal + 1 secundario
Porto -1 principal
Seixal -1 principal + 1 secundario
Sintra -1 principal
• Quantidade de slots por local
o Cada local terá de ter obrigatoriamente 1 slot (vendedor principal) por dia. Adicionalmente poderão ser configuradas N slots adicionais por cada local.
Chat
• 3 slots por dia (manha, tarde e noite)
Vendedores
• Cada vendedor tem 1 e só 1 local/stand
• Todos os vendedores podem fazer chat, independentemente do seu local de origem
• Deve ser possível adicionar/remover vendedores em backoffice – definindo Nome e email por vendedor.
Pretende-se então que o software defina uma escala mensal de vendedores para todas as slots definidas/configuradas para todos os locais (principal e secundários) e para o chat, com base nas regras abaixo.
Regras:
• 1 vendedor por cada slot local configurada (principal + N secundários) por dia
• 3 vendedores para Chat (3 slots /dia) por dia
• Slots Locais vs Slots Chat
o A um determinado vendedor poderá ser atribuída simultaneamente um slot local e de chat.
O No caso de um vendedor estar de escala local, não deverá no mesmo dia ser-lhe atribuída slot chat noite.
• Folgas:
o Cada vendedor tem 8 folgas p/ mês – nas folgas não trabalha no local nem no chat
o Obrigatoriamente cada vendedor terá de ter 2 folgas seguidas coincidindo com um fim de semana (na pratica, cada vendedor tem, no mínimo, folgas ao fim de semana 1x por mês)
o Maximizar a quantidade de folgas duplas – ou seja, tentar que cada vendedor tenha 2 folgas consecutivas o maior numero de vezes possível.
• Dias de trabalho:
o Um vendedor deverá sempre trabalhar (ter-lhe atribuídas slots locais ou slots chat) em 5 dias seguidos, intercalados com folgas “duplas” (2 dias de folga seguidos)
• Equidade Local:
o Todos os vendedores de um determinado local deverão, num determinado mês, trabalhar a mesma quantidade de dias e o mesmo numero de dias ao fim de semana, localmente e no chat. (Ou seja, num local com 2 vendedores, estes deverão num determinado mês trabalhar a mesma quantidade de slots de chat, a mesma quantidade de slots locais e estas deverão coincidir o mesmo numero de vezes com fins-de-semana e/ou feriados).
Para esta regra, o software deverá permitir um desvio máximo de 1 dia – nos casos em que seja impossível trabalharem exactamente a mesma quantidade de slots.
• Férias/Indisponibilidades/Feriados:
o O software deverá permitir configurar para cada vendedor dias de férias ou dias de indisponibilidade, até ao momento da geração da escala de um determinado mês
o O software não deverá atribuir funções a um determinado vendedor nos dias definidos como férias/indisponibilidade.
O Deverá ser possível definir dias em que determinado local se encontra fechado e, por isso, as suas slots não deverão ser atribuídas a qq vendedor.
O Aos Domingos e Feriados não deverá ser atribuído vendedores à slot Manhã chat.
• Alterações manuais por motivos imprevistos:
• Deverá ser possível fazer alterações manuais à escala, para dar resposta à impossibilidade de um ou mais vendedores poderem desempenhar funções em determinados dias.
• Sempre que haja uma alteração manual à escala, o software deverá recalcular a escala para os restantes dias do mês, garantindo que as folgas de todos os vendedores se mantêm nos mesmos dias. No caso de ser impossível recalcular a escala mantendo as mesmas folgas para todos os vendedores, o software poderá alterar os dias de folga :
o Apenas nos locais onde a escala foi alterada manualmente
o Impactando o menor numero de vendedores possível (idealmente apenas 1)
o No limite, o software poderá ter de deixar slot de domingo (ou feriado que ocorra nessa semana) à tarde por preencher.
• Escala Chat
o O software não deverá atribuir ao mesmo vendedor slots de chat em mais de dois dias consecutivos - ou seja, se o determinado vendedor tem alguma escala de chat atribuída à 2ªF e à 3ªF não deverá ser-lhe atribuída qq escala de chat na 4ªF.
O Não deverá ser atribuída a slot Chat Noite em dois dias consecutivos ao mesmo vendedor.
O No caso de ser atribuído uma slot Chat Noite a um vendedor, este não deverá fazer Chat Manha no dia imediatamente a seguir.
Adicionar stands e vendedores:
• Deverá ser possível adicionar, a qualquer momento, novos locais ou vendedores.
Output:
• A escala deve ser gerada através de instrução manual para os 2 meses seguintes, tendo em conta a escala dos mês anterior
• Para cada mês do ano, o software deverá permitir descarregar:
o Escala Equipa (todos os locais + todos os vendedores)- ficheiro XLS
o Escala Local (todos os vendedores de 1 local)- ficheiro XLS
o Escala Chat - ficheiro XLS
o Escala p/ Vendedor - ficheiro XLS
Outros requisitos
• C#
• Disponibilização de Executável do software + código fonte
Category IT & Programming
Subcategory Desktop apps
What is the scope of the project? Create a new app
Is this a project or a position? Project
I currently have I have specifications
Required availability As needed
Required platforms Windows
Delivery term: Not specified
Skills needed