示例#1
0
def assign_dev():
    ticket_id = request.form.get('ticket_id')
    ticket = Ticket.query.get(ticket_id)
    ticket.assigned_user_id = request.form.get('dev_name')
    ticket.update()

    #Insert record in ticket history
    user_id = request.form.get('dev_name')
    today = date.today()
    #t_update_date = today.strftime("%d/%m/%Y")
    t_update_date = constants.CURRENT_DATE
    t_history_id = db.session.query(func.max(
        Ticket_history.t_history_id)).all()
    if t_history_id[0][0] == None:
        ticket_history = Ticket_history(1, ticket_id, user_id, ticket.t_status,
                                        t_update_date, ticket.t_priority)
    else:
        ticket_history = Ticket_history(t_history_id[0][0] + 1, ticket_id,
                                        user_id, ticket.t_status,
                                        t_update_date, ticket.t_priority)

    try:
        ticket_history.insert()
    except:
        print(sys.exc_info())
        abort(500)

    #Insert record in comments
    userinfo = session.get('profile')
    assigned_user_name = Users.query.with_entities(
        Users.user_name).filter(Users.user_id == user_id).one()
    c_id = db.session.query(func.max(Comment.c_id)).all()
    if c_id[0][0] == None:
        comment = Comment(1, ticket_id, userinfo['user_id'], t_update_date,
                          " assigned developer " + assigned_user_name[0])
    else:
        comment = Comment(c_id[0][0] + 1, ticket_id, userinfo['user_id'],
                          t_update_date,
                          " assigned developer " + assigned_user_name[0])
    try:
        comment.insert()
    except:
        print(sys.exc_info())
        abort(500)

    #Record a notification
    notification = Notification(ticket_id, user_id, 'Assigned')
    try:
        notification.insert()
    except:
        print(sys.exc_info())
        abort(500)
    return redirect('/ticketdetails/' + ticket_id)
示例#2
0
def submit_comment():
    comment_text = request.form.get('comment')
    ticket_id = request.form.get('ticket_id')
    today = date.today()
    #update_date = today.strftime("%d/%m/%Y")
    update_date = constants.CURRENT_DATE
    userinfo = session.get('profile')
    user_id = Users.query.with_entities(
        Users.user_id).filter_by(user_email=userinfo['email'])
    c_id = db.session.query(func.max(Comment.c_id)).all()
    if c_id[0][0] == None:
        comment_entry = Comment(1, ticket_id, user_id, update_date,
                                comment_text)
    else:
        comment_entry = Comment(c_id[0][0] + 1, ticket_id, user_id,
                                update_date, comment_text)
    try:
        comment_entry.insert()
    except:
        print(sys.exc_info())
        abort(500)

    return redirect('/ticketdetails/' + ticket_id)
示例#3
0
 def get_comment(request, question_id):
     content = request.form.get("comment")
     if content:
         user_id = session.get("user_id")
         com = Comment(content=content,
                       question_id=question_id,
                       author_id=user_id)
         try:
             db.session.add(com)
             db.session.commit()
             return "ok"
         except Exception as e:
             print(e)
             db.session.rollback()
             return "fall"
     else:
         return "mn"
示例#4
0
def update_project_status():
    userinfo = session.get('profile')
    ticket_id = request.form.get('ticket_id')
    ticket_entry = Ticket.query.get(ticket_id)
    #today = date.today()
    #t_update_date = today.strftime("%d/%m/%Y")
    t_update_date = constants.CURRENT_DATE
    t_status = request.form.get('input')
    p_name = request.form.get('p_name')

    ticket_entry.t_status = t_status
    try:
        ticket_entry.update()
    except:
        print(sys.exc_info())
        abort(500)

    if t_status == "Closed":
        ticket_entry.t_close_date = t_update_date

    #ENTER IN TICKET HISTORY
    ticket_id = ticket_entry.t_id
    t_history_id = db.session.query(func.max(
        Ticket_history.t_history_id)).all()
    if t_history_id[0][0] == None:
        ticket_history_entry = Ticket_history(1, ticket_id,
                                              ticket_entry.assigned_user_id,
                                              t_status, t_update_date,
                                              ticket_entry.t_priority)
    else:
        ticket_history_entry = Ticket_history(t_history_id[0][0] + 1,
                                              ticket_id,
                                              ticket_entry.assigned_user_id,
                                              t_status, t_update_date,
                                              ticket_entry.t_priority)

    try:
        ticket_history_entry.insert()
    except:
        print(sys.exc_info())
        abort(500)

    #ENTER IN NOTIFICATIONS
    p_id = Project.query.with_entities(
        Project.p_id).filter(Project.p_name == p_name).one()
    user_list = Map_user_proj.query.with_entities(
        Map_user_proj.user_id).filter(Map_user_proj.p_id == p_id).all()
    for user in user_list:
        notification = Notification(ticket_id, user, 'Update')
        try:
            notification.insert()
        except:
            print(sys.exc_info())
            abort(500)

    #Insert record in comments
    c_id = db.session.query(func.max(Comment.c_id)).all()
    if c_id[0][0] == None:
        comment = Comment(1, ticket_id, userinfo['user_id'], t_update_date,
                          " Updated ticket status to  " + t_status)
    else:
        comment = Comment(c_id[0][0] + 1, ticket_id, userinfo['user_id'],
                          t_update_date,
                          " Updated ticket status to  " + t_status)

    try:
        comment.insert()
    except:
        print(sys.exc_info())
        abort(500)
    return redirect('/ticketdetails/' + str(ticket_id))