def validate(self): rv = Form.validate(self) if not rv: return False current_time = int(time.time()) if self.team_id.data: team = Team.query.get(self.team_id.data) else: team = Team() team.admin_id = self.admin_user.id team.name = self.name.data team.created_at = current_time if self.status.data: team.status = 1 else: team.status = 0 db.session.add(team) db.session.commit() if not self.team_id.data: team_user = TeamUser() team_user.team_id = team.id team_user.user_id = self.admin_user.id db.session.add(team_user) db.session.commit() if self.status.data: team_user = TeamUser.query.filter(db.and_(TeamUser.team_id == team.id and TeamUser.user_id == self.admin_user.id)).first() if team_user: db.session.delete(team_user) db.session.commit() db.session.query(Project).filter(Project.team_id == team.id).update({Project.status: 1}) db.session.commit() self.team = team return True
def validate(self): rv = Form.validate(self) if not rv: return False invite_code = InviteCode.query.filter_by(code=self.code.data, used=0).first() if not invite_code: self.code.errors.append(u'邀请码不正确') return False invite_code.email = self.user.email invite_code.user_id = self.user.id invite_code.used = 1 db.session.add(invite_code) db.session.commit() team_user = TeamUser() team_user.team_id = invite_code.team_id team_user.user_id = self.user.id db.session.add(team_user) db.session.commit() self.team_id = invite_code.team_id return True