示例#1
0
def createTeam():
    if session.get("id") is None:
        return redirect("/user/login")
    name = session.get("name")
    if request.method == "GET":
        return render_template('student_templates/createTeam.html', name=name)
    else:
        name = request.form.get("name")
        userId = session.get("id")
        course = CourseAndStudent.query.filter(
            CourseAndStudent.studentId == userId).first()
        with db.auto_commit():
            team = Team()
            team.courseId = course.CourseId
            team.TeamName = name
            team.isFinish = 0
            db.session.add(team)
            team = Team.query.filter(
                Team.courseId == course.CourseId).order_by(
                    Team.TeamNumber.desc()).first()

            member = Member()
            member.studentId = userId
            member.teamId = team.TeamNumber
            member.votenum = 0

            db.session.add(member)

        return redirect('/student/display')
def get_team_image():
    teams = rackhd_config.Teams
    repo = rackhd_config.repos
    team_name = request.form['TeamName'] or 'Maglev Team'
    startDate = request.form['StartDate'] or '2015-10-01'
    endDate = request.form['EndDate'] or datetime.now()
    image_name = request.form['image_name']
    if type(startDate) == type(""):
        startDate = datetime.strptime(startDate, "%Y-%m-%d")
    if type(endDate) == type(""):
        endDate = datetime.strptime(endDate, "%Y-%m-%d")
    team_members = teams[team_name]
    #print("startDate %s, endDate: %s" % (startDate,endDate)	)
    t = Team(team_name, team_members)
    operator = {
        'image1': t.draw_team_pr_count_monthly(startDate, endDate),
        'image2': t.draw_team_comments_count_monthly(startDate, endDate),
        'image3': t.draw_team_avg_duration_monthly(startDate, endDate),
        'image4': t.draw_pr_count_member(startDate, endDate),
        'image5': t.draw_comments_count_member(startDate, endDate),
        'image6': t.draw_avg_duration_member(startDate, endDate)
    }
    image_output = operator[image_name]
    image = base64.b64encode(image_output).decode('UTF-8')
    return make_response(image)
示例#3
0
def create_team(team_name: str, owner: str):
    """Create new team."""
    new_team = Team(name=team_name,
                    owner=owner,
                    team_members=[],
                    draft_position=0)
    new_team.save()
    return new_team
示例#4
0
def get_team():
    with db.auto_commit():
        team = Team()
        team.TeamName = 'g1'
        team.TeamNumber = 0
        # 数据库的insert操作
        db.session.add(team)

    return 'hello team'
 def post(self):
     # create
     league_name = self.get_body_argument("league_name")
     manager_team_name = self.get_body_argument("manager_team_name")
     league = League(name=league_name)
     team = Team(name=manager_team_name, league=league)
     league.manager = team
     self.session.add_all([league, team])
     self.session.commit()
示例#6
0
def create_team():
    jsonData = request.get_json()
    with db.auto_commit():
        team = Team()
        team.team_name = jsonData['team_name']
        team.team_logo = jsonData['team_logo']
        team.team_type = jsonData['team_type']
        team.team_captain = jsonData['team_captain']
        team.team_slogan = jsonData['team_slogan']
        team.team_comment = jsonData['team_comment']
        team.school_id = jsonData['school_id']
        team.category_id = jsonData['category_id']
        db.session.add(team)
    return Success(msg='新增成功')
示例#7
0
def post_team(req):
    """
    """
    # Get data from request
    req.get_data()
    league_id = req.json.get('league_id')
    user_id = req.json.get('user_id')
    name = req.json.get('name')

    # Create instance of GoalScored and add to database
    new_team = Team(user_id=user_id, league_id=league_id, name=name)
    db.session.add(new_team)

    # Commit data to database - if exception is caught, return the error message
    try:
        db.session.commit()
    except IntegrityError as e:
        db.session.rollback()
        return jsonify(status='fail', error=str(e.orig))

    # Return success message
    return jsonify(status='success', data={'Team': new_team.to_dict()})
示例#8
0
def byStudent():
    if session.get("id") is None:
        return redirect("/user/login")
    name=session.get("name")
    courseId=request.args.get("courseId")

    studentList=CourseAndStudent.query.filter_by(CourseId=courseId).all()
    list=[]
    for i in studentList:

        student=Student.query.filter_by(id=i.studentId).first()
        if student is not None:
            list.append(student)


    #每组的人数
    totalNum=Course.query.filter_by(CourseId=courseId).first().numofmember


    #组的数量
    # teamNum=len(list)/totalNum+1
    # print(teamNum)
    #
    # if teamNum==1:
    #     list2=[]
    #     list2.append(list)
    #     pass
    # else:
    from random import shuffle

    shuffle(list)  # 重排序
    list2 = []
    for i in range(0, len(list), totalNum):
        list2.append(list[i:i + totalNum])

    result=[]

    for i in list2:
        dict1 = dict()

        nameTeam=random.randint(100,1000)
        dict1["name"]=str(nameTeam)
        dict1["value"]=i
        print(i)
        result.append(dict1)

        with db.auto_commit():
            team = Team()
            team.TeamName=str(nameTeam)
            team.courseId=courseId
            # 数据库的insert操作
            db.session.add(team)

        team=Team.query.filter(Team.courseId==courseId).filter(Team.TeamName==nameTeam).first()
        with db.auto_commit():
            for x in i:
                member=Member()
                member.teamId=team.TeamNumber
                member.studentId=x.id
                db.session.add(member)


    Course.query.filter(Course.CourseId == courseId).update({"teamType": 2})
    db.session.commit()
    return render_template("teacher_templates/displaygroup.html",name=name,courseId=courseId,result=result)
示例#9
0
 def __init__(self):
     self.rackhd = Team("rackhd", [])
     self.no_rackhd = Team("no_rackhd", [])
     self.db = SQLiteDB()
     self.set_rackhd()
     self.set_no_rackhd()