Example #1
0
def newComment(request, apikey, iderror):
    #Error에 Comment를 생성함.
    #커맨드를 생성한 사용자가 Project에 Comment를 쓸수있는지 검증
    result, msg, userElement, projectElement, errorElement = validUserPjtError(request.user,apikey,iderror)

    print msg
    if not result:
        return HttpResponse(msg)

    time = utility.getUTCDatetime()
    datetime = naive2aware(time)

    #입력받은 POST데이터에서 comment받아옴
    comment = request.POST['comment']
    element = Comments.objects.create(uid=userElement, iderror=errorElement, datetime=datetime, comment=comment)

    #타임존을 적용한다.
    adtimezone = toTimezone(datetime,projectElement.timezone)
    print 'newcommand',adtimezone,datetime
    dict = {'imgsrc':userElement.image_path, 'name': userElement.last_name + userElement.first_name,
            'message': comment,
            'date': adtimezone.__format__('%Y.%m.%d<br>%H:%M:%S'),
            'id' : element.idcomment}

    print dict

    return HttpResponse(json.dumps(dict), 'application/json')
Example #2
0
def newComment(request, apikey, iderror):
    #Error에 Comment를 생성함.
    #커맨드를 생성한 사용자가 Project에 Comment를 쓸수있는지 검증
    result, msg, userElement, projectElement, errorElement = validUserPjtError(
        request.user, apikey, iderror)

    print msg
    if not result:
        return HttpResponse(msg)

    time = utility.getUTCDatetime()
    datetime = naive2aware(time)

    #입력받은 POST데이터에서 comment받아옴
    comment = request.POST['comment']
    element = Comments.objects.create(uid=userElement,
                                      iderror=errorElement,
                                      datetime=datetime,
                                      comment=comment)

    #타임존을 적용한다.
    adtimezone = toTimezone(datetime, projectElement.timezone)
    print 'newcommand', adtimezone, datetime
    dict = {
        'imgsrc': userElement.image_path,
        'name': userElement.last_name + userElement.first_name,
        'message': comment,
        'date': adtimezone.__format__('%Y.%m.%d<br>%H:%M:%S'),
        'id': element.idcomment
    }

    print dict

    return HttpResponse(json.dumps(dict), 'application/json')
Example #3
0
def country(request,apikey,iderror):
    #Error Detail페이지에서 Device별 에러량을 보여주는 루틴
    result, msg, userElement, projectElement, errorElement = validUserPjtError(request.user, apikey, iderror)

    print msg
    if not result:
        return HttpResponse(msg)

    #DB쿼리를 생성
    sql = "select idinstance as iderrorstatistics, country as keyname, count(*) as count "
    sql = sql + "from instances where iderror = %(id_error)s "
    sql = sql + "group by keyname order by count desc"

    params = {'id_error':iderror}
    places = ErrorStatistics.objects.raw(sql, params)

    #DB로부터 받은 데이터를 JSON으로 변경
    data = []
    counter = 0
    others = 0
    for idx, pl in enumerate(places):
        counter += 1
        if counter <= 5:
            tuple = {'label' : pl.keyname, 'value' : pl.count}
            data.append(tuple)
        else:
            others += pl.count
    if others != 0:
        tuple = {'label' : 'Ohters' , 'value' : others}
        data.append(tuple)


    return HttpResponse(json.dumps(data),'application/json')
Example #4
0
def country(request, apikey, iderror):
    #Error Detail페이지에서 Device별 에러량을 보여주는 루틴
    result, msg, userElement, projectElement, errorElement = validUserPjtError(
        request.user, apikey, iderror)

    print msg
    if not result:
        return HttpResponse(msg)

    #DB쿼리를 생성
    sql = "select idinstance as iderrorstatistics, country as keyname, count(*) as count "
    sql = sql + "from instances where iderror = %(id_error)s "
    sql = sql + "group by keyname order by count desc"

    params = {'id_error': iderror}
    places = ErrorStatistics.objects.raw(sql, params)

    #DB로부터 받은 데이터를 JSON으로 변경
    data = []
    counter = 0
    others = 0
    for idx, pl in enumerate(places):
        counter += 1
        if counter <= 5:
            tuple = {'label': pl.keyname, 'value': pl.count}
            data.append(tuple)
        else:
            others += pl.count
    if others != 0:
        tuple = {'label': 'Ohters', 'value': others}
        data.append(tuple)

    return HttpResponse(json.dumps(data), 'application/json')
Example #5
0
def chstatus(request,apikey,iderror):
    result, msg, userElement, projectElement, errorElement = validUserPjtError(request.user,apikey,iderror)

    print msg
    if not result:
        return HttpResponse(msg)
    status = request.POST['status']
    print 'y',status
    errorElement.status = status
    errorElement.save()
    return HttpResponse('success')
Example #6
0
def chstatus(request, apikey, iderror):
    result, msg, userElement, projectElement, errorElement = validUserPjtError(
        request.user, apikey, iderror)

    print msg
    if not result:
        return HttpResponse(msg)
    status = request.POST['status']
    print 'y', status
    errorElement.status = status
    errorElement.save()
    return HttpResponse('success')
Example #7
0
def chstatus(request,apikey,iderror):
    #Error의 Status를 변경하는 루틴
    #Error의 Status는 0=New, 1=Open, 2=Ignore, 3=Fix를 의미한다.
    result, msg, userElement, projectElement, errorElement = validUserPjtError(request.user,apikey,iderror)

    print msg
    if not result:
        return HttpResponse(msg)
    status = request.POST['status']
    #print 'y',status
    errorElement.status = status
    errorElement.save()
    return HttpResponse('success')
Example #8
0
def newTag(request, apikey, iderror):
    result, msg, userElement, projectElement, errorElement = validUserPjtError(request.user,apikey,iderror)

    print msg
    if not result:
        return HttpResponse(msg)

    tag = request.POST['tag']
    tagElement, created = Tags.objects.get_or_create(iderror=errorElement, tag=tag, pid=projectElement)

    if not created:
        return HttpResponse('tag %s already exists' % tag)
    else:
        return HttpResponse('success')
Example #9
0
def chstatus(request, apikey, iderror):
    #Error의 Status를 변경하는 루틴
    #Error의 Status는 0=New, 1=Open, 2=Ignore, 3=Fix를 의미한다.
    result, msg, userElement, projectElement, errorElement = validUserPjtError(
        request.user, apikey, iderror)

    print msg
    if not result:
        return HttpResponse(msg)
    status = request.POST['status']
    #print 'y',status
    errorElement.status = status
    errorElement.save()
    return HttpResponse('success')
Example #10
0
def deleteComment(request, apikey, iderror):
    result, msg, userElement, projectElement, errorElement = validUserPjtError(request.user, apikey, iderror)

    print msg
    if not result:
        return HttpResponse(msg)

    idcomment = request.POST['idcomment']
    try:
        commentElement = Comments.objects.get(idcomment=idcomment)
        commentElement.delete()
    except ObjectDoesNotExist:
        HttpResponse('comment %s not exists' % idcomment)

    return HttpResponse('success')
Example #11
0
def deleteComment(request, apikey, iderror):
    result, msg, userElement, projectElement, errorElement = validUserPjtError(
        request.user, apikey, iderror)

    print msg
    if not result:
        return HttpResponse(msg)

    idcomment = request.POST['idcomment']
    try:
        commentElement = Comments.objects.get(idcomment=idcomment)
        commentElement.delete()
    except ObjectDoesNotExist:
        HttpResponse('comment %s not exists' % idcomment)

    return HttpResponse('success')
Example #12
0
def deleteTag(request, apikey, iderror):
    result, msg, userElement, projectElement, errorElement = validUserPjtError(
        request.user, apikey, iderror)

    print msg
    if not result:
        return HttpResponse(msg)

    tag = request.POST['tag']
    try:
        #Tags.objects.get(iderror=errorElement, tag=tag).delete()
        tagElement = Tags.objects.get(iderror=errorElement, tag=tag)
        tagElement.delete()
    except ObjectDoesNotExist:
        HttpResponse('tag %s not exists' % tag)

    return HttpResponse('success')
Example #13
0
def newTag(request, apikey, iderror):
    result, msg, userElement, projectElement, errorElement = validUserPjtError(
        request.user, apikey, iderror)

    print msg
    if not result:
        return HttpResponse(msg)

    tag = request.POST['tag']
    tagElement, created = Tags.objects.get_or_create(iderror=errorElement,
                                                     tag=tag,
                                                     pid=projectElement)

    if not created:
        return HttpResponse('tag %s already exists' % tag)
    else:
        return HttpResponse('success')
Example #14
0
def deleteTag(request, apikey, iderror):
    result, msg, userElement, projectElement, errorElement = validUserPjtError(request.user, apikey, iderror)

    print msg
    if not result:
        return HttpResponse(msg)

    tag = request.POST['tag']
    try:
        #Tags.objects.get(iderror=errorElement, tag=tag).delete()
        tagElement = Tags.objects.get(iderror=errorElement, tag=tag)
        tagElement.delete()
    except ObjectDoesNotExist:
        HttpResponse('tag %s not exists' % tag)



    return HttpResponse('success')
Example #15
0
def country(request,apikey,iderror):
    result, msg, userElement, projectElement, errorElement = validUserPjtError(request.user, apikey, iderror)

    print msg
    if not result:
        return HttpResponse(msg)

    data = []
    InstanceElements = Instances.objects.filter(iderror=iderror)

    dict = {}
    for Instance in InstanceElements:
        if Instance.country in dict:
            dict[Instance.country] += 1
        else:
            dict[Instance.country] = 1

    sortdict = OrderedDict(sorted(dict.iteritems(), key=lambda dict: dict[1], reverse=True))


    counter = 0
    others = 0
    for key,value in sortdict.items():
        counter += 1
        if counter <= 5:
            tuple = {'label' : key, 'value' : value}
            data.append(tuple)
        else:
            others += 1

    if len(sortdict) > 5:
        tuple = {'label' : 'Ohters' , 'value' : others}
        data.append(tuple)


    return HttpResponse(json.dumps(data),'application/json')
Example #16
0
def country(request, apikey, iderror):
    result, msg, userElement, projectElement, errorElement = validUserPjtError(
        request.user, apikey, iderror)

    print msg
    if not result:
        return HttpResponse(msg)

    data = []
    InstanceElements = Instances.objects.filter(iderror=iderror)

    dict = {}
    for Instance in InstanceElements:
        if Instance.country in dict:
            dict[Instance.country] += 1
        else:
            dict[Instance.country] = 1

    sortdict = OrderedDict(
        sorted(dict.iteritems(), key=lambda dict: dict[1], reverse=True))

    counter = 0
    others = 0
    for key, value in sortdict.items():
        counter += 1
        if counter <= 5:
            tuple = {'label': key, 'value': value}
            data.append(tuple)
        else:
            others += 1

    if len(sortdict) > 5:
        tuple = {'label': 'Ohters', 'value': others}
        data.append(tuple)

    return HttpResponse(json.dumps(data), 'application/json')