def get_demande_encours(annee_deb, annee_fin): return (_db.session.query(TravauxBatiment).filter( _db.and_( TravauxBatiment.dem_date <= annee_fin, _db.or_( TravauxBatiment.rea_date == None, # noqa TravauxBatiment.rea_date >= annee_deb))).all())
def get_demande_encours(annee_deb, annee_fin): return (_db.session.query(Demande).filter( _db.and_( Demande.dem_date <= annee_fin, _db.or_( Demande.rea_date == None, # noqa Demande.rea_date >= annee_deb))).all())
def load_changes(instance, full=False): results = db.session.query(Changelog).filter( db.and_(Changelog.module_name == instance.__class__.__module__, Changelog.model_name == instance.__class__.__name__, Changelog.entity_id == instance.id)).all() if full: return [map_changes(x) for x in results] else: return [ChangelogSerializer(x).dump() for x in results]
def posts_for_feed(): """ return the posts for logged in user's feed""" user_id = session.get('user_id') friend_posts = Post.query.join( Friend, db.and_(Post.user_id == Friend.user_2, Friend.active == True)).outerjoin( Comment, db.and_(Comment.post_id == Post.post_id, Comment.active == True)).filter( Friend.user_1 == user_id, Post.active == True).order_by( Post.post_id.desc()).all() post_list = [] for post in friend_posts: post_list.append(post.to_dict_for_json()) resp = make_response(jsonify(post_list), 200) return resp
def get_demande_encours(annee_deb, annee_fin): return ( _db.session.query(Demande) .filter( _db.and_( Demande.dem_date <= annee_fin, _db.or_( Demande.rea_date == None, Demande.rea_date >= annee_deb ) ) ) .all())
def get_demande_encours(annee_deb, annee_fin): return ( _db.session.query(TravauxBatiment) .filter( _db.and_( TravauxBatiment.dem_date <= annee_fin, _db.or_( TravauxBatiment.rea_date == None, TravauxBatiment.rea_date >= annee_deb ) ) ) .all())
def get_agents_presents(annee_deb, annee_fin, frmt='dict'): ''' Retourne la liste des agents présents au cours de l'année ''' if frmt == 'dict': klass = Agent else: klass = AgentDetail qr = klass.query.filter( _db.and_( _db.or_( klass.depart > annee_deb, klass.depart == None), klass.arrivee < annee_fin)) return qr.order_by(_db.asc(klass.arrivee)).all()
def get_agents_presents(annee_deb, annee_fin, frmt='dict'): ''' Retourne la liste des agents présents au cours de l'année ''' if frmt == 'dict': klass = Agent else: klass = AgentDetail qr = klass.query.filter( _db.and_( _db.or_( klass.depart >= annee_deb, klass.depart == None # noqa ), klass.arrivee <= annee_fin)) return qr.order_by(_db.asc(klass.arrivee)).all()
def search(): search_term = request.args.get('term') user_id = session['user_id'] results = db.session.query(User, Friend).outerjoin( Friend, db.and_( Friend.user_1 == user_id, Friend.active == True, Friend.user_2 == User.user_id)).filter( (User.user_id != user_id) & (User.public == True) & ((Friend.user_2 == None) | (Friend.user_2 != User.user_id)) & (((User.first_name.like(f'%{search_term}%')) | (User.last_name.like(f'%{search_term}%'))))).all() return render_template('search.html', results=results)
def users_posts(): """ return the users's posts""" user_id = session.get('user_id') posts = Post.query.outerjoin( Comment, db.and_(Comment.post_id == Post.post_id, Comment.active == True)).filter(Post.user_id == user_id, Post.active == True).order_by( Post.post_id.desc()).all() post_list = [] for post in posts: post_list.append(post.to_dict_for_json()) resp = make_response(jsonify(post_list), 200) return resp
def get_entites(): ''' retourne la liste des groupes ''' entite_ids = request.args.getlist('params') _format = request.args.get('format', None) _etype = request.args.get('type', 'correspondant') if not len(entite_ids): if not request.args.get('all', False): return {} entites = Entite.query.all() else: parents = Entite.query.filter(Entite.id.in_(entite_ids)).all() filters = [Entite.parents.contains(z) for z in parents] entites = Entite.query.filter(_db.and_(*filters)).order_by( Entite.type_entite).order_by(Entite.nom).all() if _format in ('csv', 'tsv'): ent_type, serializer = TYPES_E[_etype] entites = filter(lambda x: isinstance(x, ent_type), entites) if _format == 'csv': csv = serializer.export_csv(entites, fields=FIELDS_E[_etype]) else: csv = serializer.export_csv(entites, fields=FIELDS_E[_etype], sep='\t') return csv_response(csv, 'annuaire.csv') if _format == 'vcard': vcards = '\r\n'.join([ format_vcard(CorrespondantSerializer(e)) for e in entites if isinstance(e, Correspondant) ]) return vcard_response(vcards, 'annuaire.vcf') return { 'recherche': [TYPES_E[e.type_entite][1](e).dump() for e in parents], 'liste': [TYPES_E[e.type_entite][1](e).dump() for e in entites] }