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))
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))