[lib/impression] hack rapide pour tester la validite de ces fichiers
Ignore-this: 9b996c273bb91c0dfc39f016acde9fcc darcs-hash:20090515113955-bd074-1919250a70a9ff14366d8ae9d9723dfbfd865502.gz
This commit is contained in:
parent
284c189c8e
commit
5eba5336fb
2 changed files with 119 additions and 117 deletions
|
@ -25,8 +25,8 @@
|
||||||
# Copyright (c) 2006 by www.crans.org
|
# Copyright (c) 2006 by www.crans.org
|
||||||
# #############################################################
|
# #############################################################
|
||||||
"""
|
"""
|
||||||
Classe pour gŽrer l'envoie de pdf ˆ l'imprimante.
|
Classe pour gérer l'envoie de pdf à l'imprimante.
|
||||||
Calcule le cožt des options d'impression.
|
Calcule le coût des options d'impression.
|
||||||
"""
|
"""
|
||||||
__version__ = '1'
|
__version__ = '1'
|
||||||
|
|
||||||
|
@ -37,10 +37,10 @@ import cout
|
||||||
from crans.utils import QuoteForPOSIX as escapeForShell
|
from crans.utils import QuoteForPOSIX as escapeForShell
|
||||||
import crans.utils.logs
|
import crans.utils.logs
|
||||||
log = crans.utils.logs.getFileLogger('impression')
|
log = crans.utils.logs.getFileLogger('impression')
|
||||||
# Début : Ajout log pour réestimer les coûts
|
# Début : Ajout log pour réestimer les coûts
|
||||||
import time
|
import time
|
||||||
import hptools
|
import hptools
|
||||||
comm = hptools.snmp(host="laserjet.adm.crans.org",version="1",community="public")
|
comm = hptools.snmp(host="imprimante.adm.crans.org",version="1",community="public")
|
||||||
# Fin
|
# Fin
|
||||||
|
|
||||||
# ######################################################## #
|
# ######################################################## #
|
||||||
|
@ -48,7 +48,7 @@ comm = hptools.snmp(host="laserjet.adm.crans.org",version="1",community="public"
|
||||||
# ######################################################## #
|
# ######################################################## #
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
# Début : Ajout log pour réestimer les coûts
|
# Début : Ajout log pour réestimer les coûts
|
||||||
FICHIER_LOG="/var/log/log_couts/impressions"
|
FICHIER_LOG="/var/log/log_couts/impressions"
|
||||||
|
|
||||||
SNMP_CAR_B_PC="enterprises.11.2.3.9.4.2.1.4.1.10.1.1.18.1.0"
|
SNMP_CAR_B_PC="enterprises.11.2.3.9.4.2.1.4.1.10.1.1.18.1.0"
|
||||||
|
@ -156,8 +156,8 @@ LPR_OPTIONS = {
|
||||||
|
|
||||||
class FichierInvalide(Exception):
|
class FichierInvalide(Exception):
|
||||||
"""
|
"""
|
||||||
Exception renvoyée lorsqu'un fichier ne passe pas.
|
Exception renvoyée lorsqu'un fichier ne passe pas.
|
||||||
utilisée avec deux arguments : une chaîndéÃécrivant l'erreur et une chÃine avec le nom du fichier
|
utilisée avec deux arguments : une chaîndéÃécrivant l'erreur et une chÃine avec le nom du fichier
|
||||||
"""
|
"""
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
"""
|
"""
|
||||||
|
@ -166,7 +166,7 @@ class FichierInvalide(Exception):
|
||||||
return self.args[0]
|
return self.args[0]
|
||||||
def file(self):
|
def file(self):
|
||||||
"""
|
"""
|
||||||
Nom du fichier qui pose problème
|
Nom du fichier qui pose problème
|
||||||
"""
|
"""
|
||||||
try:
|
try:
|
||||||
return self.args[1]
|
return self.args[1]
|
||||||
|
@ -175,7 +175,7 @@ class FichierInvalide(Exception):
|
||||||
|
|
||||||
class SoldeInsuffisant(Exception):
|
class SoldeInsuffisant(Exception):
|
||||||
"""
|
"""
|
||||||
Solde insuffisant pour l'impression demandée
|
Solde insuffisant pour l'impression demandée
|
||||||
"""
|
"""
|
||||||
pass
|
pass
|
||||||
class PrintError(Exception):
|
class PrintError(Exception):
|
||||||
|
@ -185,7 +185,7 @@ class PrintError(Exception):
|
||||||
pass
|
pass
|
||||||
class SettingsError(Exception):
|
class SettingsError(Exception):
|
||||||
"""
|
"""
|
||||||
Erreur de paramètres.
|
Erreur de paramètres.
|
||||||
"""
|
"""
|
||||||
pass
|
pass
|
||||||
# ######################################################## #
|
# ######################################################## #
|
||||||
|
@ -196,7 +196,7 @@ class SettingsError(Exception):
|
||||||
class impression:
|
class impression:
|
||||||
"""impression
|
"""impression
|
||||||
|
|
||||||
Un objet impression correspond ˆ un fichier pdf et un adhŽrent.
|
Un objet impression correspond un fichier pdf et un adhrent.
|
||||||
"""
|
"""
|
||||||
# fichier (chemin)
|
# fichier (chemin)
|
||||||
_fichier = ""
|
_fichier = ""
|
||||||
|
@ -223,9 +223,11 @@ class impression:
|
||||||
def __init__(self, path_to_pdf, adh = None):
|
def __init__(self, path_to_pdf, adh = None):
|
||||||
"""impression(path_to_pdf [, adh])
|
"""impression(path_to_pdf [, adh])
|
||||||
|
|
||||||
CrŽe un nouvel objet impression ˆ partir du fichier pdf pointŽ par path_to_pdf.
|
Crée un nouvel objet impression à partir du fichier pdf pointé
|
||||||
Si adh ext donnŽ, il peut <EFBFBD>tre soit une instance d'un objet adhŽrent de crans_ldap soit le login de l'adhŽrent.
|
par path_to_pdf. Si adh ext donné, il peut être soit une
|
||||||
L<EFBFBD>ve l'exception FichierInvalide si le fichier n'existe pas ou si ce n'est pas un pdf.
|
instance d'un objet adhérent de crans_ldap soit le login de
|
||||||
|
l'adhérent. Lève l'exception FichierInvalide si le fichier
|
||||||
|
n'existe pas ou si ce n'est pas un pdf.
|
||||||
"""
|
"""
|
||||||
self._fichier = path_to_pdf
|
self._fichier = path_to_pdf
|
||||||
# on verifie que le fichier existe
|
# on verifie que le fichier existe
|
||||||
|
@ -249,7 +251,7 @@ class impression:
|
||||||
"""changeSettings([keyword=value])
|
"""changeSettings([keyword=value])
|
||||||
|
|
||||||
Change les parametres de l'impression, recalcule et renvoie le nouveau prix.
|
Change les parametres de l'impression, recalcule et renvoie le nouveau prix.
|
||||||
L<EFBFBD>ve une exceotion SettingError si les param<EFBFBD>tres son invalides.
|
Lève une exceotion SettingError si les paramètres son invalides.
|
||||||
"""
|
"""
|
||||||
#recalcule et renvoie le prix
|
#recalcule et renvoie le prix
|
||||||
if (couleurs):
|
if (couleurs):
|
||||||
|
@ -291,7 +293,7 @@ class impression:
|
||||||
def printSettings(self):
|
def printSettings(self):
|
||||||
"""printSettings()
|
"""printSettings()
|
||||||
|
|
||||||
Affiche les param<EFBFBD>tres courrants sur la sortie standard
|
Affiche les paramètres courrants sur la sortie standard
|
||||||
"""
|
"""
|
||||||
print "Type impression: " + LABELS[self._settings['couleurs']]
|
print "Type impression: " + LABELS[self._settings['couleurs']]
|
||||||
print "Agraphes: " + LABELS[self._settings['agraphes']]
|
print "Agraphes: " + LABELS[self._settings['agraphes']]
|
||||||
|
@ -317,7 +319,7 @@ class impression:
|
||||||
def filePath(self):
|
def filePath(self):
|
||||||
"""filePath()
|
"""filePath()
|
||||||
|
|
||||||
renvoie le chemin d'acc<EFBFBD>s au fichier pdf.
|
renvoie le chemin d'accs au fichier pdf.
|
||||||
"""
|
"""
|
||||||
return self._fichier
|
return self._fichier
|
||||||
|
|
||||||
|
@ -325,7 +327,7 @@ class impression:
|
||||||
def devisDetaille(self):
|
def devisDetaille(self):
|
||||||
"""devisDetaille()
|
"""devisDetaille()
|
||||||
|
|
||||||
renvoie un disctionnaire contenant le devis (intitulŽ, PU., quantitŽ) pour tous les ŽlŽments de l'impression
|
renvoie un disctionnaire contenant le devis (intitulé, PU., quantité) pour tous les éléments de l'impression
|
||||||
(papier, encre, agrafes...)
|
(papier, encre, agrafes...)
|
||||||
"""
|
"""
|
||||||
return self._details_devis
|
return self._details_devis
|
||||||
|
@ -333,7 +335,7 @@ class impression:
|
||||||
def pages(self):
|
def pages(self):
|
||||||
"""pages()
|
"""pages()
|
||||||
|
|
||||||
renvoie le nombre de pages du document (page au sens nombre de faces ˆ imprimer et non le nombre de feuilles)
|
renvoie le nombre de pages du document (page au sens nombre de faces à imprimer et non le nombre de feuilles)
|
||||||
"""
|
"""
|
||||||
return self._nb_pages
|
return self._nb_pages
|
||||||
|
|
||||||
|
@ -341,10 +343,10 @@ class impression:
|
||||||
def imprime(self):
|
def imprime(self):
|
||||||
"""imprime()
|
"""imprime()
|
||||||
|
|
||||||
imprime le document pdf. dŽbite l'adhŽrent si adhŽrent il y a.
|
imprime le document pdf. débite l'adhérent si adhérent il y a.
|
||||||
(si il a ŽtŽ indiquŽ ˆ l'initialisation de l'objet)
|
(si il a été indiqué à l'initialisation de l'objet)
|
||||||
"""
|
"""
|
||||||
# debite l'adhŽrent si adherent il y a
|
# debite l'adhérent si adherent il y a
|
||||||
if (self._adh != None):
|
if (self._adh != None):
|
||||||
adh = self._get_adh(self._adh)
|
adh = self._get_adh(self._adh)
|
||||||
if (self._prix > (adh.solde() - DECOUVERT_AUTHORISE)):
|
if (self._prix > (adh.solde() - DECOUVERT_AUTHORISE)):
|
||||||
|
@ -469,7 +471,7 @@ class impression:
|
||||||
# options couleurs
|
# options couleurs
|
||||||
options += LPR_OPTIONS[self._settings['couleurs']]
|
options += LPR_OPTIONS[self._settings['couleurs']]
|
||||||
|
|
||||||
# Début : Ajout log pour réestimer les coûts
|
# Début : Ajout log pour réestimer les coûts
|
||||||
# Commandes snmp recuperation des etats
|
# Commandes snmp recuperation des etats
|
||||||
val_car_b_pc=int(comm.get(SNMP_CAR_B_PC))
|
val_car_b_pc=int(comm.get(SNMP_CAR_B_PC))
|
||||||
val_car_c_pc=int(comm.get(SNMP_CAR_C_PC))
|
val_car_c_pc=int(comm.get(SNMP_CAR_C_PC))
|
||||||
|
@ -501,7 +503,7 @@ class impression:
|
||||||
val_car_y_pr,
|
val_car_y_pr,
|
||||||
val_tam_b_pc,
|
val_tam_b_pc,
|
||||||
val_tam_c_pc,
|
val_tam_c_pc,
|
||||||
val_tam_m_pc,
|
Val_tam_m_pc,
|
||||||
val_tam_y_pc,
|
val_tam_y_pc,
|
||||||
val_tam_b_pr,
|
val_tam_b_pr,
|
||||||
val_tam_c_pr,
|
val_tam_c_pr,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue