Ejemplo n.º 1
0
    def get_redirect_url(self, **kwargs):
        consulta = get_object_or_404(Consulta, pk=kwargs['pk'])

        items, precios = consulta.facturar()

        recibo = Recibo()
        recibo.cajero = self.request.user
        recibo.cliente = consulta.persona
        if consulta.persona.obtener_edad() >= config.ELDER_AGE:
            tipo_de_venta = TipoVenta.objects.get(pk=config.ELDER_VENTA_TYPE)
        else:
            tipo_de_venta = TipoVenta.objects.get(pk=config.DEFAULT_VENTA_TYPE)

        recibo.tipo_de_venta = tipo_de_venta

        recibo.save()

        crear_ventas_consulta(items, precios, recibo)

        consulta.facturada = True
        consulta.activa = False
        consulta.save()

        messages.info(self.request, u'¡La consulta se marcó como facturada!')
        return recibo.get_absolute_url()
Ejemplo n.º 2
0
    def get_redirect_url(self, **kwargs):
        consulta = get_object_or_404(Consulta, pk=kwargs['pk'])

        items, precios = consulta.facturar()

        recibo = Recibo()
        recibo.cajero = self.request.user
        recibo.cliente = consulta.persona
        if consulta.persona.obtener_edad() >= config.ELDER_AGE:
            tipo_de_venta = TipoVenta.objects.get(pk=config.ELDER_VENTA_TYPE)
        else:
            tipo_de_venta = TipoVenta.objects.get(pk=config.DEFAULT_VENTA_TYPE)

        recibo.tipo_de_venta = tipo_de_venta

        recibo.save()

        crear_ventas_consulta(items, precios, recibo)

        consulta.facturada = True
        consulta.activa = False
        consulta.save()

        messages.info(self.request, u'¡La consulta se marcó como facturada!')
        return recibo.get_absolute_url()
Ejemplo n.º 3
0
    def get_redirect_url(self, **kwargs):
        aseguradora = get_object_or_404(Aseguradora, pk=kwargs['pk'])

        recibo = Recibo()
        recibo.cajero = self.request.user
        recibo.cliente = aseguradora.cardex
        recibo.credito = True

        recibo.save()
        for master in aseguradora.master_contracts.all():
            venta = Venta()
            venta.item = master.plan.item
            venta.recibo = recibo
            venta.descripcion = u'Poliza {0}  {1}'.format(
                master.poliza, master.contratante.nombre)
            venta.cantidad = master.active_contracts_count()
            venta.precio = master.plan.item.precio_de_venta
            venta.impuesto = master.plan.item.impuestos
            venta.save()
            recibo.ventas.add(venta)
            venta.save()

        recibo.save()

        messages.info(self.request, u'¡La consulta se marcó como facturada!')
        return recibo.get_absolute_url()
Ejemplo n.º 4
0
    def get_redirect_url(self, **kwargs):
        aseguradora = get_object_or_404(Aseguradora, pk=kwargs['pk'])

        recibo = Recibo()
        recibo.cajero = self.request.user
        recibo.cliente = aseguradora.cardex
        recibo.credito = True

        recibo.save()
        for master in aseguradora.master_contracts.all():
            venta = Venta()
            venta.item = master.plan.item
            venta.recibo = recibo
            venta.descripcion = u'Poliza {0}  {1}'.format(master.poliza,
                                                          master.contratante.nombre)
            venta.cantidad = master.active_contracts_count()
            venta.precio = master.plan.item.precio_de_venta
            venta.impuesto = master.plan.item.impuestos
            venta.save()
            recibo.ventas.add(venta)
            venta.save()

        recibo.save()

        messages.info(self.request, u'¡La consulta se marcó como facturada!')
        return recibo.get_absolute_url()
Ejemplo n.º 5
0
    def get_redirect_url(self, **kwargs):
        emergencia = get_object_or_404(Emergencia, pk=kwargs['pk'])

        items = emergencia.facturar()

        recibo = Recibo()
        recibo.cajero = self.request.user
        recibo.cliente = emergencia.persona
        recibo.tipo_de_venta = emergencia.tipo_de_venta

        recibo.save()

        crear_ventas(items, recibo)

        emergencia.facturada = True
        emergencia.save()

        return recibo.get_absolute_url()
Ejemplo n.º 6
0
    def form_valid(self, form):
        self.object = form.save(commit=False)

        recibo = Recibo()
        recibo.cajero = self.request.user
        recibo.cliente = self.object.admision.paciente
        recibo.save()

        venta = Venta()
        venta.item = ItemTemplate.objects.get(pk=config.DEPOSIT_ACCOUNT)
        venta.recibo = recibo
        venta.cantidad = 1
        venta.precio = self.object.monto
        venta.impuesto = 0
        venta.descontable = False
        venta.save()

        return HttpResponseRedirect(recibo.get_absolute_url())
Ejemplo n.º 7
0
    def form_valid(self, form):
        self.object = form.save(commit=False)

        items = self.object.facturar()

        recibo = Recibo()
        recibo.cajero = self.request.user
        recibo.cliente = self.object.persona
        recibo.tipo_de_venta = self.object.tipo_de_venta

        recibo.save()

        crear_ventas(items, recibo)

        self.object.facturado = True
        self.object.save()

        return HttpResponseRedirect(recibo.get_absolute_url())
Ejemplo n.º 8
0
    def form_valid(self, form):
        self.object = form.save(commit=False)

        recibo = Recibo()
        recibo.cajero = self.request.user
        recibo.cliente = self.object.admision.paciente
        recibo.save()

        venta = Venta()
        venta.item = ItemTemplate.objects.get(pk=config.DEPOSIT_ACCOUNT)
        venta.recibo = recibo
        venta.cantidad = 1
        venta.precio = self.object.monto
        venta.impuesto = 0
        venta.descontable = False
        venta.save()

        return HttpResponseRedirect(recibo.get_absolute_url())
Ejemplo n.º 9
0
    def form_valid(self, form):
        self.object = form.save(commit=False)

        items = self.object.facturar()

        recibo = Recibo()
        recibo.cajero = self.request.user
        recibo.cliente = self.object.persona
        recibo.tipo_de_venta = self.object.tipo_de_venta

        recibo.save()

        crear_ventas(items, recibo)

        self.object.facturado = True
        self.object.save()

        return HttpResponseRedirect(recibo.get_absolute_url())
Ejemplo n.º 10
0
    def get_redirect_url(self, **kwargs):
        emergencia = get_object_or_404(Emergencia, pk=kwargs['pk'])

        items = emergencia.facturar()

        recibo = Recibo()
        recibo.cajero = self.request.user
        recibo.cliente = emergencia.persona
        recibo.tipo_de_venta = emergencia.tipo_de_venta

        recibo.save()

        crear_ventas(items, recibo)

        emergencia.facturada = True
        emergencia.save()

        return recibo.get_absolute_url()
Ejemplo n.º 11
0
    def form_valid(self, form):
        self.object = form.save(commit=False)

        items = self.object.facturar()

        recibo = Recibo()
        recibo.cajero = self.request.user
        recibo.cliente = self.object.persona
        recibo.radiologo = self.object.radiologo
        recibo.tipo_de_venta = self.object.tipo_de_venta
        recibo.save()

        # Crear los honorarios de los radiologos
        honorarios = sum(i.precio_de_venta * i.comision * dot01 for i in items)
        venta = Venta()
        venta.recibo = recibo
        venta.precio = honorarios
        venta.cantidad = 1
        venta.item = self.object.radiologo.item
        venta.impuesto = self.object.radiologo.item.impuestos
        venta.save()

        venta_tecnico = False
        if not self.object.tecnico is None:
            # Crear los honorarios de los tecnicos
            tecnico = sum(i.precio_de_venta * i.comision2 * dot01
                          for i in items)
            venta = Venta()
            venta.recibo = recibo
            venta.precio = tecnico
            venta.cantidad = 1
            venta.item = self.object.tecnico.item
            venta.impuesto = self.object.tecnico.item.impuestos
            venta.save()
            venta_tecnico = True

        crear_ventas(items, recibo, True, venta_tecnico)

        self.object.save()

        return HttpResponseRedirect(recibo.get_absolute_url())
Ejemplo n.º 12
0
    def form_valid(self, form):
        self.object = form.save(commit=False)

        items = self.object.facturar()

        recibo = Recibo()
        recibo.cajero = self.request.user
        recibo.cliente = self.object.persona
        recibo.radiologo = self.object.radiologo
        recibo.tipo_de_venta = self.object.tipo_de_venta
        recibo.save()

        # Crear los honorarios de los radiologos
        honorarios = sum(i.precio_de_venta * i.comision * dot01 for i in items)
        venta = Venta()
        venta.recibo = recibo
        venta.precio = honorarios
        venta.cantidad = 1
        venta.item = self.object.radiologo.item
        venta.impuesto = self.object.radiologo.item.impuestos
        venta.save()

        venta_tecnico = False
        if not self.object.tecnico is None:
            # Crear los honorarios de los tecnicos
            tecnico = sum(
                i.precio_de_venta * i.comision2 * dot01 for i in items)
            venta = Venta()
            venta.recibo = recibo
            venta.precio = tecnico
            venta.cantidad = 1
            venta.item = self.object.tecnico.item
            venta.impuesto = self.object.tecnico.item.impuestos
            venta.save()
            venta_tecnico = True

        crear_ventas(items, recibo, True, venta_tecnico)

        self.object.save()

        return HttpResponseRedirect(recibo.get_absolute_url())
Ejemplo n.º 13
0
    def form_valid(self, form):
        self.object = form.save(commit=False)

        items = self.object.facturar()

        recibo = Recibo()
        recibo.cajero = self.request.user
        recibo.cliente = self.object.paciente
        recibo.tipo_de_venta = self.object.tipo_de_venta

        recibo.save()

        crear_ventas(items, recibo)

        for honorario in self.object.honorarios.all():
            venta = Venta()
            venta.item = honorario.item
            venta.recibo = recibo
            venta.cantidad = 1
            venta.precio = honorario.monto
            venta.impuesto = honorario.item.impuestos
            venta.descontable = False

            venta.save()
            recibo.ventas.add(venta)

        for deposito in self.object.depositos.all():
            pago = Pago()
            pago.recibo = recibo
            pago.monto = deposito.monto
            pago.tipo = TipoPago.objects.get(pk=config.DEPOSIT_PAYMENT)
            pago.save()

        self.object.ultimo_cobro = timezone.now()
        self.object.save()

        return HttpResponseRedirect(recibo.get_absolute_url())
Ejemplo n.º 14
0
    def form_valid(self, form):
        self.object = form.save(commit=False)

        items = self.object.facturar()

        recibo = Recibo()
        recibo.cajero = self.request.user
        recibo.cliente = self.object.paciente
        recibo.tipo_de_venta = self.object.tipo_de_venta

        recibo.save()

        crear_ventas(items, recibo)

        for honorario in self.object.honorarios.all():
            venta = Venta()
            venta.item = honorario.item
            venta.recibo = recibo
            venta.cantidad = 1
            venta.precio = honorario.monto
            venta.impuesto = honorario.item.impuestos
            venta.descontable = False

            venta.save()
            recibo.ventas.add(venta)

        for deposito in self.object.depositos.all():
            pago = Pago()
            pago.recibo = recibo
            pago.monto = deposito.monto
            pago.tipo = TipoPago.objects.get(pk=config.DEPOSIT_PAYMENT)
            pago.save()

        self.object.ultimo_cobro = timezone.now()
        self.object.save()

        return HttpResponseRedirect(recibo.get_absolute_url())