예제 #1
0
    def get(self, request):
        func = FuncionalidadesCore()
        if not func.administardor(request):
            return redirect('solicitacoes')

        func = Utilidades()
        dados = seleciona_dados(request)
        setor = request.user.perfil.setor
        dados['colaboradores_do_setor'] = setor.perfis_do_setor.all()
        dados['dados_grafico'] = self.formata_dados_do_grafico(request)

        # Sistema de paginação
        paginacao = Paginator(
            func.seleciona_todas_movimentacoes(
                perfis=request.user.perfil.setor.perfis_do_setor.all(),
                entrada=False), 5)
        page = request.GET.get('pagina')
        dados['username'] = id

        try:
            dados['solciitacoes_pendentes'] = paginacao.get_page(page)
        except Exception:
            dados['solciitacoes_pendentes'] = paginacao.page(1)
            if page is not None:
                messages.add_message(request, messages.INFO,
                                     'A página {} não existe'.format(page))

        return render(request, self.template_name, dados)
예제 #2
0
def dashboard(request):
    func = FuncionalidadesCore()
    if not func.administardor(request):
        return redirect('solicitacoes')
    
    tamplate_name = 'core/dashboard/dashboard.html'
    setor = request.user.perfil.setor
    dados = seleciona_dados(request)
    dados['colaboradores_do_setor'] = setor.perfis_do_setor.all()
    dados['dados_grafico'] = formata_dados_do_grafico(request)
    return render(request, tamplate_name, dados)
예제 #3
0
def solciitacao_finaliza(request, id):
    func = FuncionalidadesCore()
    if not func.administardor(request):
        return redirect('solicitacoes')

    movimentacao = Movimentacao.objects.get(id=id)
    analise = Status.objects.filter(analise=True)[0]

    if movimentacao.status == analise:
        messages.add_message(
            request, messages.INFO,
            'Impossível finalizar uma movimentação em análise, por favor verifique o status antes de finalizar.'
        )
    else:
        movimentacao.finalizado = True
        movimentacao.save()
        perfil = request.user.perfil
        msg_padrao = 'Solicitação finalizada'
        LogMovimentacao.objects.create(log=msg_padrao,
                                       perfil_emissor=perfil,
                                       movimentacao=movimentacao)

    return redirect('solicitacoes_mostrar', id=id)