示例#1
0
def delete_package(request):
    """
    删除版本
    :param request:
    :return:
    """
    response = {"success": False, "error": ""}
    try:
        package_id = request.POST.get('id', None)

        if package_id is None:
            response['error'] = "版本ID为空!"
            return HttpResponse(json.dumps(response),
                                mimetype="application/json")

        package = Package.objects(pk=package_id)

        if len(package) == 0:
            response['error'] = "未获取到版本对象[id=%s]" % package_id
            return HttpResponse(json.dumps(response),
                                mimetype="application/json")

        package = package[0]
        package.delete()

        response['success'] = True
        response['error'] = '删除成功!'
        return HttpResponse(json.dumps(response), mimetype="application/json")
    except Exception as e:
        response['error'] = "程序异常![%s]" % str(e)
        logger.error(response["error"] + getTraceBack())
        return HttpResponse(json.dumps(response), mimetype="application/json")
示例#2
0
def list(request):
    """
    版本列表
    :param request:
    :return:
    """
    try:
        packages = Package.objects().order_by('-create_time')
        return render_to_response("package/package_list.html",
                                  locals(),
                                  context_instance=RequestContext(request))
    except Exception as e:
        error = "程序异常![%s]" % (str(e))
        logger.error(error + getTraceBack())
        return render_to_response('item/temp.html',
                                  locals(),
                                  context_instance=RequestContext(request))
示例#3
0
def download_package(request):
    """
    下载版本
    :param request:
    :return:
    """
    try:
        package_id = request.GET.get('id', None)

        if package_id is None:
            error = "版本ID为空!"
            logger.error(error)
            return render_to_response('item/temp.html',
                                      locals(),
                                      context_instance=RequestContext(request))

        package = Package.objects(pk=package_id)

        if len(package) == 0:
            error = "未获取到版本对象[id=%s]" % package_id
            logger.error(error)
            return render_to_response('item/temp.html',
                                      locals(),
                                      context_instance=RequestContext(request))

        package = package[0]
        content = package.package.read()
        size = len(content)
        response = HttpResponse(content)
        response['Content-Length'] = size
        response[
            'Content-Disposition'] = 'attachment; filename=%s' % package.package_full_name.encode(
                'utf-8')
        return response
    except Exception as e:
        error = "下载文件异常![%s]" % str(e)
        logger.error(error + getTraceBack())
        return render_to_response('item/temp.html',
                                  locals(),
                                  context_instance=RequestContext(request))
示例#4
0
def change_status(request):
    """
    改变状态
    :param request:
    :return:
    """
    response = {"success": False, "error": ""}
    try:
        path = request.path
        is_enabled = None
        if path == '/package/enable/':
            is_enabled = True
        elif path == '/package/disable/':
            is_enabled = False

        package_id = request.POST.get('id', None)

        if package_id is None:
            response['error'] = "版本ID为空!"
            return HttpResponse(json.dumps(response),
                                mimetype="application/json")

        package = Package.objects(pk=package_id)

        if len(package) == 0:
            response['error'] = "未获取到版本对象[id=%s]" % package_id
            return HttpResponse(json.dumps(response),
                                mimetype="application/json")

        package = package[0]
        package.is_enabled = is_enabled
        package.save()

        response['success'] = True
        response['error'] = '启用成功!' if is_enabled else '禁用成功!'
        return HttpResponse(json.dumps(response), mimetype="application/json")
    except Exception as e:
        response['error'] = "程序异常![%s]" % str(e)
        logger.error(response["error"] + getTraceBack())
        return HttpResponse(json.dumps(response), mimetype="application/json")
示例#5
0
def view(request):
    """
    版本列表查看
    :param request:
    :return:
    """
    try:
        package_id = request.GET.get('id', None)

        if package_id is None:
            error = "版本ID为空!"
            logger.error(error.encode(ENCODE))
            return render_to_response('item/temp.html',
                                      locals(),
                                      context_instance=RequestContext(request))

        package = Package.objects(pk=package_id)

        if len(package) == 0:
            error = "未获取到版本对象[id=%s]" % package_id
            logger.error(error.encode(ENCODE))
            return render_to_response('item/temp.html',
                                      locals(),
                                      context_instance=RequestContext(request))

        package = package[0]
        is_view = True

        return render_to_response("package/package_create.html",
                                  locals(),
                                  context_instance=RequestContext(request))
    except Exception as e:
        error = "程序异常![%s]" % str(e)
        logger.error(error + getTraceBack())
        return render_to_response('item/temp.html',
                                  locals(),
                                  context_instance=RequestContext(request))
示例#6
0
def edit(request):
    """
    版本列表编辑
    :param request:
    :return:
    """
    if request.method == 'GET':
        try:
            package_id = request.GET.get('id', None)

            if package_id is None:
                error = "版本ID为空!"
                logger.error(error)
                return render_to_response(
                    'item/temp.html',
                    locals(),
                    context_instance=RequestContext(request))

            package = Package.objects(pk=package_id)

            if len(package) == 0:
                error = "未获取到版本对象[id=%s]" % package_id
                logger.error(error)
                return render_to_response(
                    'item/temp.html',
                    locals(),
                    context_instance=RequestContext(request))

            package = package[0]
            is_edit = True

            return render_to_response("package/package_create.html",
                                      locals(),
                                      context_instance=RequestContext(request))
        except Exception as e:
            error = "程序异常![%s]" % str(e)
            logger.error(error + getTraceBack())
            return render_to_response('item/temp.html',
                                      locals(),
                                      context_instance=RequestContext(request))
    elif request.method == 'POST':
        response = {"success": False, "error": ""}
        try:
            #获取参数
            package_id = request.POST.get('id', None)
            is_enabled = request.POST.get('is_enabled', None)
            if is_enabled == 'true':
                is_enabled = True
            elif is_enabled == 'false':
                is_enabled = False
            else:
                response['error'] = "[is_enabled=%s]参数异常!" % is_enabled
                return HttpResponse(json.dumps(response),
                                    mimetype="application/json")

            remark = request.POST.get('remark', None)
            #json_info = request.POST.get('json_info', None)

            if package_id is None:
                response['error'] = "版本ID为空!"
                return HttpResponse(json.dumps(response),
                                    mimetype="application/json")

            package = Package.objects(pk=package_id)

            if len(package) == 0:
                response['error'] = "未获取到版本对象[id=%s]" % package_id
                return HttpResponse(json.dumps(response),
                                    mimetype="application/json")

            package = package[0]
            #package.version = VERSION_PREFIX_PACKAGE + str(int(time.mktime(package.create_time.timetuple()) * 1000))
            #package.json_info = json.dumps(json.loads(json_info), ensure_ascii=False).encode(ENCODE)
            package.is_enabled = is_enabled
            package.remark = remark
            package.update_user = User.objects(pk=request.user.id)[0]
            package.update_time = datetime.datetime.now()
            package.save()

            response['success'] = True
            response['error'] = '更新成功!'
            return HttpResponse(json.dumps(response),
                                mimetype="application/json")
        except Exception as e:
            response['error'] = "程序异常![%s]" % str(e)
            logger.error(response["error"] + getTraceBack())
            return HttpResponse(json.dumps(response),
                                mimetype="application/json")