[./utils/stats_prises.py] Statistiques sur les cablages CRANS/CROUS
darcs-hash:20100915085349-c8775-503ab895fb478d01afc6fcd72b546637cdc593f3.gz
This commit is contained in:
parent
72074c5bf7
commit
91ebdd168b
1 changed files with 39 additions and 0 deletions
39
utils/stats_prises.py
Executable file
39
utils/stats_prises.py
Executable file
|
@ -0,0 +1,39 @@
|
|||
#!/usr/bin/python
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
"""Affiche des statistiques sur le câblage des prises des chambres
|
||||
(CRANS ou CROUS)."""
|
||||
|
||||
import sys
|
||||
import psycopg2
|
||||
sys.path.append('/usr/scripts/gestion')
|
||||
from affich_tools import tableau
|
||||
|
||||
conn = psycopg2.connect("user=crans dbname=switchs host=pgsql.adm.crans.org")
|
||||
|
||||
def compte_prises(reseau, batiment=''):
|
||||
"""Compte les prises câblées sur reseau (crans ou crous)."""
|
||||
|
||||
reseau = reseau.lower()
|
||||
cur = conn.cursor()
|
||||
if batiment == '':
|
||||
cur.execute("SELECT COUNT(prises) FROM prises WHERE " + reseau + "=True")
|
||||
n = cur.fetchone()[0]
|
||||
else:
|
||||
batiment = batiment.lower()
|
||||
cur.execute("SELECT COUNT(prises) FROM prises WHERE (batiment, " + reseau + ")=(%s, True)", (batiment, ))
|
||||
n = cur.fetchone()[0]
|
||||
return n
|
||||
|
||||
data = []
|
||||
for bat in ['A', 'B', 'C', 'G', 'H', 'I', 'J', 'M', '']:
|
||||
n_crans = compte_prises('crans', bat)
|
||||
n_crous = compte_prises('crous', bat)
|
||||
frac_crans = 1.*n_crans/(n_crous + n_crans)
|
||||
if bat == '':
|
||||
bat = 'Total'
|
||||
data.append([bat, n_crans, n_crous, '%0.2f' % (100*frac_crans)])
|
||||
|
||||
print tableau(data, [u'Bât.', u'CRANS',
|
||||
u'CROUS', u'% CRANS'],
|
||||
[7, 7, 7, 9], ['c', 'd', 'd', 'd'])
|
Loading…
Add table
Add a link
Reference in a new issue