示例#1
0
def editLancamento(request):

    if (request.method == 'POST'):

        id_user = request.user.id

        agencia = request.POST.get('banco')

        #id do lancamento clicado
        idLancamento = request.POST.get('id')
        #busca o lancamento a ser alterado
        lancamento = LancamentosBanco.objects.get(pk=idLancamento)
        #atribui o lancamento ao form
        form = LancamentosBancoForm(request.POST, instance=lancamento)

        if (form.is_valid()):
            form.save()
            conta = ContaBanco.objects.get(pk=agencia)
            lancamentos = LancamentosBanco.objects.filter(
                user_id=id_user).filter(banco=agencia)
            saldo = 0

            for l in lancamentos:
                if (l.tipo == '1'):
                    saldo += l.valor
                else:
                    saldo -= l.valor
            conta.saldo = saldo

            conta.save()

            return HttpResponse("Lançamento alterado com sucesso")
        else:
            return HttpResponseServerError("Formulário inválido")

    #id do lancamento clicado
    idLancamento = request.GET.get('id')
    lancamento = LancamentosBanco.objects.get(pk=idLancamento)

    form = LancamentosBancoForm(instance=lancamento)
    form.getEditLancamentoForm(request)

    if (lancamento.conta_a_pagar != None):
        contaID = "<div id='status_conta'>Pago</div>"
    elif (lancamento.conta_a_receber != None):
        contaID = "<div id='status_conta'>Recebido</div>"
    else:
        contaID = "<div id='status_conta'>Nenhum</div>"

    #retorna o id do lancamento junto com o formulario
    divId = "<div id='id_lancamento'>" + idLancamento + "</div>"

    form_html = {form.as_p(), divId, contaID}
    return HttpResponse(form_html)
示例#2
0
def addLancamento(request):
    if (request.method == 'POST'):

        form = LancamentosBancoForm(request.POST)
        agencia = request.POST.get('banco')

        if (form.is_valid()):
            lancamento = form.save(commit=False)

            conta = ContaBanco.objects.get(pk=agencia)

            if (lancamento.tipo == "1"):
                conta.saldo += lancamento.valor
            else:
                conta.saldo -= lancamento.valor

            conta.save()

            #relacionao o usuario logado com o lançamento
            lancamento.user = request.user
            lancamento.save()
            return HttpResponse('Lançamento efetuado com sucesso.')
    return HttpResponseServerError('Lançamento inválido')