示例#1
0
def categoria_detalle(request,id_comunidad,id_categoria,id=0):
    usuario=request.user
    if get_comunidad(usuario) != int(id_comunidad) and usuario.has_perm(USUARIO_LIMITADO):
        return HttpResponseRedirect('/admin')
    categoria=Categoria.objects.get(pk=id_categoria)
    
    if id == 0:
        categoria_detalle=CategoriaDetalle()
        categoria_detalle.descripcion=""
        modo="Registrar Descripcion"
        precio_unitario=PrecioForm()
    else:
        categoria_detalle=CategoriaDetalle.objects.get(pk=id)
        if int(categoria_detalle.categoria_id) != int(id_categoria):
            return HttpResponseRedirect('/admin')
        categoria_detalle.precio_unitario=str(categoria_detalle.precio_unitario)
        modo="Modificar Descripcion"
    if request.method == 'POST':            
            categoria_detalle.cantidad=int(request.POST.get('cantidad',0))
            categoria_detalle.precio_unitario=request.POST.get('precio_unitario',0.00)
            categoria_detalle.categoria_id=categoria.id
            categoria_detalle.descripcion = request.POST.get('descripcion','') 
            categoria_detalle.comunidad_id=id_comunidad
            if id != 0:
                categoria_detalle.id=id
            categoria_detalle.save()
            if id == 0:
                movimiento=CategoriaDetalleMovimiento()
                movimiento.movimiento='INI'
                movimiento.observacion="carga del stock inicial"
                movimiento.categoria_detalle=categoria_detalle
                movimiento.cantidad=categoria_detalle.cantidad
                fecha=request.POST.get('fecha')
                movimiento.fecha=datetime.datetime.strptime(fecha, "%d/%m/%Y")
                movimiento.save()
               
            
            return HttpResponseRedirect('/inventario/categoria/'+str(id_comunidad)+'/'+str(categoria.id))
    
    return render_to_response('balance/categoria_detalle.html',
                              {'categoria_detalle':categoria_detalle,'categoria':categoria,
                               'modo':modo,'id_comunidad':id_comunidad},
                                  context_instance=RequestContext(request))
示例#2
0
def movimiento(request,id_detalle,id=0):
    detalle=CategoriaDetalle.objects.get(pk=id_detalle)
    usuario=request.user
    
    if get_comunidad(usuario) != detalle.comunidad_id and usuario.has_perm(USUARIO_LIMITADO):
        return HttpResponseRedirect('/admin')
    if id == 0:
        movimiento=CategoriaDetalleMovimiento()
        movimiento.observacion=""
        modo="Registrar Movimiento"
    else:
        movimiento=CategoriaDetalleMovimiento.objects.get(pk=id)
        modo="Modificar Movimiento"
    if request.method == 'POST':
            movimiento.cantidad=int(request.POST.get('cantidad',0))
            movimiento.categoria_detalle_id=id_detalle
            movimiento.observacion=request.POST.get('observacion',0)
            movimiento.movimiento=request.POST.get('movimiento','INI')
            fecha=request.POST.get('fecha','')
            fecha=datetime.datetime.strptime(fecha, "%d/%m/%Y")
            movimiento.fecha=fecha
            if id != 0:
                movimiento.id=id
            movimiento.save()
            if movimiento.movimiento == 'ENT':
                detalle.cantidad+=movimiento.cantidad
            elif movimiento.movimiento == 'SAL':
                detalle.cantidad-=movimiento.cantidad
            else:
                detalle.cantidad=movimiento.cantidad
            detalle.save()
            
            return HttpResponseRedirect('/inventario/movimiento_list/'+str(detalle.id))
    
    return render_to_response('balance/movimiento.html',
                              {'detalle':detalle,'modo':modo,'tipo_movimientos':TIPO_MOVIMIENTO,'movimiento':movimiento},
                                context_instance=RequestContext(request))