def GetQuestionnaires(self): """ Recherche les questions des questionnaires """ Questionnaires = UTILS_Questionnaires.Questionnaires() listeQuestions = [] for dictQuestion in Questionnaires.GetQuestions(None) : listeQuestions.append(dictQuestion) return listeQuestions
def __init__(self, parent): wx.Choice.__init__(self, parent, -1) self.parent = parent self.listeDonnees = [ {"label": _(u"Jour"), "code": "jour"}, {"label": _(u"Mois"), "code": "mois"}, {"label": _(u"Année"), "code": "annee"}, {"label": _(u"Activité"), "code": "activite"}, {"label": _(u"Catégorie de tarif"), "code": "categorie_tarif"}, {"label": _(u"Ville de résidence"), "code": "ville_residence"}, {"label": _(u"Secteur géographique"), "code": "secteur"}, {"label": _(u"Age"), "code": "age"}, {"label": _(u"Ville de naissance"), "code": "ville_naissance"}, {"label": _(u"Ecole"), "code": "nom_ecole"}, {"label": _(u"Classe"), "code": "nom_classe"}, {"label": _(u"Niveau scolaire"), "code": "nom_niveau_scolaire"}, {"label": _(u"Régime social"), "code": "regime"}, {"label": _(u"Caisse d'allocations"), "code": "caisse"}, {"label": _(u"Quotient familial - Tranches tarifs"), "code": "qf_tarifs"}, {"label": _(u"Quotient familial - Tranches de 100"), "code": "qf_100"}, ] # Intégration des questionnaires q = UTILS_Questionnaires.Questionnaires() for public in ("famille", "individu"): for dictTemp in q.GetQuestions(public): label = _(u"Question %s. : %s") % (public[:3], dictTemp["label"]) code = "question_%s_%d" % (public, dictTemp["IDquestion"]) self.listeDonnees.append({"label": label, "code": code}) self.MAJ()
def GetQuestionnaire(self, IDquestion=None, IDfamille=None, IDindividu=None): if IDquestion in (None, "", 0): return None q = UTILS_Questionnaires.Questionnaires() reponse = q.GetReponse(IDquestion, IDfamille, IDindividu) return reponse
def InitModel(self): # Initialisation des questionnaires categorie = "location" self.UtilsQuestionnaires = UTILS_Questionnaires.Questionnaires() self.liste_questions = self.UtilsQuestionnaires.GetQuestions(type=categorie) self.dict_questionnaires = self.UtilsQuestionnaires.GetReponses(type=categorie) # MAJ du listview self.donnees = self.GetTracks()
def __init__(self, parent): wx.Choice.__init__(self, parent, -1) self.parent = parent self.listeDonnees = [ { "label": _(u"Jour"), "code": "jour" }, { "label": _(u"Mois"), "code": "mois" }, { "label": _(u"Année"), "code": "annee" }, { "label": _(u"Catégorie"), "code": "categorie" }, { "label": _(u"Ville de résidence"), "code": "ville_residence" }, { "label": _(u"Secteur géographique"), "code": "secteur" }, { "label": _(u"Famille"), "code": "famille" }, { "label": _(u"Régime social"), "code": "regime" }, { "label": _(u"Caisse d'allocations"), "code": "caisse" }, { "label": _(u"Quotient familial"), "code": "qf" }, ] # Intégration des questionnaires q = UTILS_Questionnaires.Questionnaires() for public in ("famille", ): for dictTemp in q.GetQuestions(public): label = _(u"Question %s. : %s") % (public[:3], dictTemp["label"]) code = "question_%s_%d" % (public, dictTemp["IDquestion"]) self.listeDonnees.append({"label": label, "code": code}) self.MAJ()
def GetTracks(self): """ Récupération des données """ listeID = None # Importation des titulaires if self.afficher_locations == True : self.dict_titulaires = UTILS_Titulaires.GetTitulaires() # Initialisation des questionnaires categorie = "produit" self.UtilsQuestionnaires = UTILS_Questionnaires.Questionnaires() self.liste_questions = self.UtilsQuestionnaires.GetQuestions(type=categorie) self.dict_questionnaires = self.UtilsQuestionnaires.GetReponses(type=categorie) DB = GestionDB.DB() # Importation des locations en cours self.dictLocations = UTILS_Locations.GetProduitsLoues(DB=DB) # Importation des produits if self.filtreListeID == None : condition = "" else : if len(self.filtreListeID) == 0: condition = "WHERE produits.IDproduit IN ()" elif len(self.filtreListeID) == 1: condition = "WHERE produits.IDproduit IN (%d)" % self.filtreListeID[0] else: condition = "WHERE produits.IDproduit IN %s" % str(tuple(self.filtreListeID)) req = """SELECT IDproduit, produits.nom, produits.observations, produits_categories.nom, quantite FROM produits LEFT JOIN produits_categories ON produits_categories.IDcategorie = produits.IDcategorie %s;""" % condition DB.ExecuterReq(req) listeDonnees = DB.ResultatReq() DB.Close() listeListeView = [] for item in listeDonnees : track = Track(parent=self, donnees=item) valide = True if listeID != None : if item[0] not in listeID : valide = False # Mémorisation position if self.dictPositions != None and track.IDproduit in self.dictPositions: track.position = self.dictPositions[track.IDproduit] # Coche afficher uniquement les disponibles if self.coche_uniquement_disponibles == True and track.disponible == 0 : valide = False if valide == True : listeListeView.append(track) if self.selectionID == item[0] : self.selectionTrack = track return listeListeView
def SetListe(self): # Initialisation des questionnaires self.UtilsQuestionnaires = UTILS_Questionnaires.Questionnaires() self.liste_questions = self.UtilsQuestionnaires.GetQuestions(type="location", avec_filtre=False) self.Clear() self.dictDonnees = {} index = 0 for dictQuestion in self.liste_questions: if dictQuestion["controle"] == "documents" : self.Append(dictQuestion["label"]) self.dictDonnees[index] = dictQuestion["IDquestion"] index += 1 self.SetSelection(0)
def __init__(self, *args, **kwds): # Récupération des paramètres perso self.categorie = kwds.pop("categorie", "individus") self.IDindividu = kwds.pop("IDindividu", None) self.IDfamille = kwds.pop("IDfamille", None) self.listeActivites = None self.presents = None # Infos organisme self.dictOrganisme = GetInfosOrganisme() self.UtilsQuestionnaires = UTILS_Questionnaires.Questionnaires() # Initialisation du listCtrl FastObjectListView.__init__(self, *args, **kwds) # Binds perso self.Bind(wx.EVT_CONTEXT_MENU, self.OnContextMenu)
def __init__(self, *args, **kwds): # Récupération des paramètres perso self.categorie = kwds.pop("categorie", "individu") self.afficher_colonne_numero = False self.dictNumeros = {"famille": {}, "individu": {}} self.donnees = [] # Infos organisme self.UtilsQuestionnaires = UTILS_Questionnaires.Questionnaires() # Initialisation du listCtrl self.nom_fichier_liste = __file__ FastObjectListView.__init__(self, *args, **kwds) # Binds perso self.Bind(wx.EVT_CONTEXT_MENU, self.OnContextMenu) self.Bind(wx.EVT_LIST_ITEM_ACTIVATED, self.OnItemActivated)
def InitModel(self): # Initialisation des questionnaires categorie = "location_demande" self.UtilsQuestionnaires = UTILS_Questionnaires.Questionnaires() self.liste_questions = self.UtilsQuestionnaires.GetQuestions(type=categorie) self.dict_questionnaires = self.UtilsQuestionnaires.GetReponses(type=categorie) # Importation des titulaires de dossier if self.IDfamille == None: self.dict_titulaires = UTILS_Titulaires.GetTitulaires() # Importation des propositions de locations self.dictPropositions = UTILS_Locations.GetPropositionsLocations() # MAJ du listview self.donnees = self.GetTracks()
def MAJ(self): import GestionDB from Utils import UTILS_Questionnaires from Utils import UTILS_Locations from Utils import UTILS_Titulaires # Importation des titulaires self.dict_titulaires = UTILS_Titulaires.GetTitulaires() # Initialisation des questionnaires self.UtilsQuestionnaires = UTILS_Questionnaires.Questionnaires() self.liste_questions = self.UtilsQuestionnaires.GetQuestions( type="produit") self.dict_questionnaires = self.UtilsQuestionnaires.GetReponses( type="produit") DB = GestionDB.DB() # Importation des locations en cours self.dictLocations = UTILS_Locations.GetProduitsLoues(DB=DB) # Importation des caractéristiques du modèle req = """SELECT categorie, IDdonnee FROM documents_modeles WHERE IDmodele=%d;""" % self.IDmodele DB.ExecuterReq(req) listeDonnees = DB.ResultatReq() self.categorie, self.IDdonnee = listeDonnees[0] # Importation des produits req = """SELECT IDproduit, produits.nom, produits.observations, produits_categories.nom, produits.quantite FROM produits LEFT JOIN produits_categories ON produits_categories.IDcategorie = produits.IDcategorie WHERE produits.IDcategorie=%d;""" % self.IDdonnee DB.ExecuterReq(req) listeDonnees = DB.ResultatReq() DB.Close() self.dictTracks = {} for item in listeDonnees: track = Track(parent=self, donnees=item) self.dictTracks[track.IDproduit] = track return self.dictTracks
def __init__(self, parent): wx.Choice.__init__(self, parent, -1) self.parent = parent self.listeDonnees = [ {"label" : _(u"Jour"), "code" : "jour"}, {"label" : _(u"Mois"), "code" : "mois"}, {"label" : _(u"Année"), "code" : "annee"}, {"label" : _(u"Activité"), "code" : "activite"}, {"label" : _(u"Groupe"), "code" : "groupe"}, {"label" : _(u"Evènement"), "code": "evenement"}, {"label" : _(u"Evènement (avec date)"), "code": "evenement_date"}, {"label" : _(u"Etiquette"), "code": "etiquette"}, {"label" : _(u"Catégorie de tarif"), "code" : "categorie_tarif"}, {"label" : _(u"Ville de résidence"), "code" : "ville_residence"}, {"label" : _(u"Secteur géographique"), "code" : "secteur"}, {"label" : _(u"Genre (M/F)"), "code" : "genre"}, {"label" : _(u"Age"), "code" : "age"}, {"label" : _(u"Ville de naissance"), "code" : "ville_naissance"}, {"label" : _(u"Ecole"), "code" : "nom_ecole"}, {"label" : _(u"Classe"), "code" : "nom_classe"}, {"label" : _(u"Niveau scolaire"), "code" : "nom_niveau_scolaire"}, {"label" : _(u"Famille"), "code" : "famille"}, {"label" : _(u"Individu"), "code" : "individu"}, {"label" : _(u"Régime social"), "code" : "regime"}, {"label" : _(u"Caisse d'allocations"), "code" : "caisse"}, {"label" : _(u"Quotient familial"), "code" : "qf"}, {"label" : _(u"Catégorie de travail"), "code" : "categorie_travail"}, {"label" : _(u"Catégorie de travail du père"), "code" : "categorie_travail_pere"}, {"label" : _(u"Catégorie de travail de la mère"), "code" : "categorie_travail_mere"}, ] # Intégration des questionnaires q = UTILS_Questionnaires.Questionnaires() for public in ("famille", "individu") : for dictTemp in q.GetQuestions(public) : label = _(u"Question %s. : %s") % (public[:3], dictTemp["label"]) code = "question_%s_%d" % (public, dictTemp["IDquestion"]) self.listeDonnees.append({"label" : label, "code" : code}) self.MAJ()
def InitModel(self): # Initialisation des questionnaires categorie = "inscription" self.UtilsQuestionnaires = UTILS_Questionnaires.Questionnaires() self.liste_questions = self.UtilsQuestionnaires.GetQuestions( type=categorie) self.dict_questionnaires = self.UtilsQuestionnaires.GetReponses( type=categorie) # Importation des données self.donnees = self.GetTracks() # Infos individus self.infosIndividus = UTILS_Infos_individus.Informations() for track in self.donnees: self.infosIndividus.SetAsAttributs(parent=track, mode="individu", ID=track.IDindividu) for track in self.donnees: self.infosIndividus.SetAsAttributs(parent=track, mode="famille", ID=track.IDfamille)
def Remplissage(self): # Regroupement self.Append(wxpg.PropertyCategory(_(u"Regroupement"))) # Regroupement principal liste_regroupements = [ ("aucun", _(u"Aucun")), ("jour", _(u"Jour")), ("mois", _(u"Mois")), ("annee", _(u"Année")), ("activite", _(u"Activité")), ("groupe", _(u"Groupe")), ("evenement", _(u"Evènement")), ("evenement_date", _(u"Evènement (avec date)")), ("etiquette", _(u"Etiquette")), ("unite_conso", _(u"Unité de consommation")), ("categorie_tarif", _(u"Catégorie de tarif")), ("ville_residence", _(u"Ville de résidence")), ("secteur", _(u"Secteur géographique")), ("genre", _(u"Genre (M/F)")), ("age", _(u"Age")), ("ville_naissance", _(u"Ville de naissance")), ("nom_ecole", _(u"Ecole")), ("nom_classe", _(u"Classe")), ("nom_niveau_scolaire", _(u"Niveau scolaire")), ("individu", _(u"Individu")), ("famille", _(u"Famille")), ("regime", _(u"Régime social")), ("caisse", _(u"Caisse d'allocations")), ("qf_perso", _(u"Quotient familial (tranches personnalisées)")), ("qf_tarifs", _(u"Quotient familial (tranches paramétrées)")), ("qf_100", _(u"Quotient familial (tranches de 100)")), ("categorie_travail", _(u"Catégorie de travail")), ("categorie_travail_pere", _(u"Catégorie de travail du père")), ("categorie_travail_mere", _(u"Catégorie de travail de la mère")), ] # Intégration des questionnaires q = UTILS_Questionnaires.Questionnaires() for public in ("famille", "individu"): for dictTemp in q.GetQuestions(public): label = _(u"Question %s. : %s") % (public[:3], dictTemp["label"]) code = "question_%s_%d" % (public, dictTemp["IDquestion"]) liste_regroupements.append((code, label)) propriete = CTRL_Propertygrid.Propriete_choix( label=_(u"Regroupement principal"), name="regroupement_principal", liste_choix=liste_regroupements, valeur="aucun") propriete.SetEditor("EditeurChoix") propriete.SetHelpString( _(u"Sélectionnez un niveau de regroupement principal")) propriete.SetAttribute("obligatoire", True) self.Append(propriete) # Tranches d'âge propriete = CTRL_Propertygrid.Propriete_liste( label=_(u"Regroupement par tranches d'âge"), name="regroupement_age", liste_selections=[]) propriete.SetHelpString( _(u"Saisissez les tranches d'âge souhaitées séparées par des virgules. Exemple : '3, 6, 12'" )) propriete.SetAttribute("obligatoire", False) self.Append(propriete) # Tranches de QF perso propriete = CTRL_Propertygrid.Propriete_liste( label=_(u"Regroupement par tranches de QF"), name="tranches_qf_perso", liste_selections=[]) propriete.SetHelpString( _(u"Attention, à utiliser avec le regroupement principal 'Quotient familial (tranches personnalisées)'. Saisissez les tranches de QF souhaitées séparées par des virgules. Exemple : '650, 800, 1200'" )) propriete.SetAttribute("obligatoire", False) self.Append(propriete) # Afficher les périodes détaillées propriete = wxpg.BoolProperty( label=_(u"Regroupement par périodes détaillées"), name="periodes_detaillees", value=False) propriete.SetHelpString( _(u"Cochez cette case pour afficher les périodes détaillées")) propriete.SetAttribute("UseCheckbox", True) self.Append(propriete) # Données self.Append(wxpg.PropertyCategory(_(u"Données"))) propriete = CTRL_Propertygrid.Propriete_choix( label=_(u"Format des données"), name="format_donnees", liste_choix=[("horaire", _(u"Horaire")), ("decimal", _(u"Décimal"))], valeur="horaire") propriete.SetEditor("EditeurChoix") propriete.SetHelpString( _(u"Sélectionnez le format d'affichage des données")) propriete.SetAttribute("obligatoire", True) self.Append(propriete) # Afficher l'avertissement 'familles sans régime' propriete = wxpg.BoolProperty( label=_(u"Avertissement si régime famille inconnu"), name="afficher_regime_inconnu", value=True) propriete.SetHelpString( _(u"Cochez cette case pour afficher un avertissement si le régime d'une ou plusieurs familles est inconnu" )) propriete.SetAttribute("UseCheckbox", True) self.Append(propriete) # Associer régime inconnu DB = GestionDB.DB() req = """SELECT IDregime, nom FROM regimes ORDER BY nom;""" DB.ExecuterReq(req) liste_regimes = DB.ResultatReq() DB.Close() liste_regimes.insert(0, ("non", _(u"Non"))) propriete = CTRL_Propertygrid.Propriete_choix( label=_(u"Associer régime inconnu à un régime"), name="associer_regime_inconnu", liste_choix=liste_regimes, valeur="non") propriete.SetEditor("EditeurChoix") propriete.SetHelpString( _(u"Sélectionnez le régime dans lequel vous souhaitez inclure les familles au régime inconnu" )) propriete.SetAttribute("obligatoire", False) self.Append(propriete) # Plafond journalier par individu propriete = wxpg.IntProperty( label=_(u"Plafond journalier par individu (en minutes)"), name="plafond_journalier_individu", value=0) propriete.SetHelpString( _(u"Saisissez un plafond journalier (en minutes) par individu, toutes activités confondues (0 = désactivé). Exemple : une valeur de 120 (minutes) plafonnera le temps retenu pour chaque individu à hauteur de 2 heures." )) propriete.SetAttribute("obligatoire", True) self.Append(propriete) # Filtres self.Append(wxpg.PropertyCategory(_(u"Filtres"))) # Jours hors vacances liste_jours = [(0, _(u"Lundi")), (1, _(u"Mardi")), (2, _(u"Mercredi")), (3, _(u"Jeudi")), (4, _(u"Vendredi")), (5, _(u"Samedi")), (6, _(u"Dimanche"))] propriete = CTRL_Propertygrid.Propriete_multichoix( label=_(u"Jours hors vacances"), name="jours_hors_vacances", liste_choix=liste_jours, liste_selections=[0, 1, 2, 3, 4, 5, 6]) propriete.SetHelpString( _(u"Sélectionnez les jours hors vacances à inclure dans les calculs. Cliquez sur le bouton à droite du champ de saisie pour accéder à la fenêtre de sélection." )) propriete.SetAttribute("obligatoire", True) self.Append(propriete) # Jours de vacances propriete = CTRL_Propertygrid.Propriete_multichoix( label=_(u"Jours de vacances"), name="jours_vacances", liste_choix=liste_jours, liste_selections=[0, 1, 2, 3, 4, 5, 6]) propriete.SetHelpString( _(u"Sélectionnez les jours de vacances à inclure dans les calculs. Cliquez sur le bouton à droite du champ de saisie pour accéder à la fenêtre de sélection." )) propriete.SetAttribute("obligatoire", True) self.Append(propriete) # Etat des consommations self.liste_codes_etats = [ "reservation", "present", "absentj", "absenti" ] liste_etats = [(0, _(u"Pointage en attente")), (1, _(u"Présent")), (2, _(u"Absence justifiée")), (3, _(u"Absence injustifiée"))] propriete = CTRL_Propertygrid.Propriete_multichoix( label=_(u"Etat des consommations"), name="etat_consommations", liste_choix=liste_etats, liste_selections=[0, 1, 2, 3]) propriete.SetHelpString( _(u"Sélectionnez les états de consommations à inclure dans les calculs. Cliquez sur le bouton à droite du champ de saisie pour accéder à la fenêtre de sélection." )) propriete.SetAttribute("obligatoire", True) self.Append(propriete) # Affichage self.Append(wxpg.PropertyCategory(_(u"Affichage"))) # Orientation page propriete = CTRL_Propertygrid.Propriete_choix( label=_(u"Orientation de la page"), name="orientation", liste_choix=[("portrait", _(u"Portrait")), ("paysage", _(u"Paysage"))], valeur="portrait") propriete.SetEditor("EditeurChoix") propriete.SetHelpString(_(u"Sélectionnez l'orientation de la page")) propriete.SetAttribute("obligatoire", True) self.Append(propriete) # Couleur Ligne tranche d'âge propriete = wxpg.ColourProperty( label=_(u"Couleur de la ligne tranche d'âge"), name="couleur_ligne_age", value=wx.Colour(192, 192, 192)) propriete.SetHelpString( _(u"Sélectionnez la couleur de la ligne tranche d'âge")) propriete.SetAttribute("obligatoire", True) self.Append(propriete) # Couleur Ligne total propriete = wxpg.ColourProperty(label=_(u"Couleur de la ligne total"), name="couleur_ligne_total", value=wx.Colour(234, 234, 234)) propriete.SetHelpString( _(u"Sélectionnez la couleur de la ligne total")) propriete.SetAttribute("obligatoire", True) self.Append(propriete) # Couleur case regroupement principal propriete = wxpg.ColourProperty( label=_(u"Couleur de la case regroupement principal"), name="couleur_case_regroupement", value=wx.Colour(0, 0, 0)) propriete.SetHelpString( _(u"Sélectionnez la couleur de la case regroupement principal")) propriete.SetAttribute("obligatoire", True) self.Append(propriete) # Couleur texte regroupement principal propriete = wxpg.ColourProperty( label=_(u"Couleur du texte regroupement principal"), name="couleur_texte_regroupement", value=wx.Colour(255, 255, 255)) propriete.SetHelpString( _(u"Sélectionnez la couleur du texte regroupement principal")) propriete.SetAttribute("obligatoire", True) self.Append(propriete)
def __init__(self, parent): wx.Dialog.__init__(self, parent, -1, style=wx.DEFAULT_DIALOG_STYLE | wx.RESIZE_BORDER | wx.MAXIMIZE_BOX | wx.MINIMIZE_BOX) self.parent = parent # Généralités self.staticbox_generalites_staticbox = wx.StaticBox(self, -1, _(u"Généralités")) self.label_nom = wx.StaticText(self, -1, _(u"Nom :")) self.ctrl_nom = wx.TextCtrl(self, -1, "") self.label_donnee = wx.StaticText(self, -1, _(u"Donnée :")) liste_choix = [ ("aucun", _(u"Aucune")), ("genre", _(u"Genre (M/F)")), ("date_naiss", _(u"Date de naissance")), ("ville_naissance", _(u"Ville de naissance")), ("medecin_nom", _(u"Nom du médecin")), ("tel_mobile", _(u"Tél. mobile")), ("tel_domicile", _(u"Tél. domicile")), ("mail", _(u"Email")), ("ville_residence", _(u"Ville de résidence")), ("secteur", _(u"Secteur géographique")), ("nom_ecole", _(u"Ecole")), ("nom_classe", _(u"Classe")), ("nom_niveau_scolaire", _(u"Niveau scolaire")), ("famille", _(u"Famille")), ("regime", _(u"Régime social")), ("caisse", _(u"Caisse d'allocations")), ] # Intégration des questionnaires q = UTILS_Questionnaires.Questionnaires() for public in ("famille", "individu") : for dictTemp in q.GetQuestions(public) : label = _(u"Question %s. : %s") % (public[:3], dictTemp["label"]) code = "question_%s_%d" % (public, dictTemp["IDquestion"]) liste_choix.append((code, label)) self.ctrl_donnee = CTRL_Choix(self, liste_choix) # Options self.staticbox_options_staticbox = wx.StaticBox(self, -1, _(u"Options")) self.label_largeur = wx.StaticText(self, -1, _(u"Largeur :")) liste_choix = [("automatique", _(u"Automatique")),] for x in range(5, 205, 5): liste_choix.append((str(x), "%d pixels" % x)) self.ctrl_largeur = CTRL_Choix(self, liste_choix) # Boutons self.bouton_aide = CTRL_Bouton_image.CTRL(self, texte=_(u"Aide"), cheminImage="Images/32x32/Aide.png") self.bouton_ok = CTRL_Bouton_image.CTRL(self, texte=_(u"Ok"), cheminImage="Images/32x32/Valider.png") self.bouton_annuler = CTRL_Bouton_image.CTRL(self, id=wx.ID_CANCEL, texte=_(u"Annuler"), cheminImage="Images/32x32/Annuler.png") self.__set_properties() self.__do_layout() self.Bind(wx.EVT_BUTTON, self.OnBoutonOk, self.bouton_ok) self.Bind(wx.EVT_BUTTON, self.OnBoutonAide, self.bouton_aide) # Init self.SetTitle(_(u"Saisie d'une colonne"))