auf.django.skin = 0.15dev
auf.django.auth = 0.5.2dev
django-reversion = 1.3.3
-auf.django.workflow = 0.10dev
+auf.django.workflow = 0.13dev
django-ajax-selects = 1.1.4
#reportlab = 2.5
#html5lib = 0.90
--- /dev/null
+# -*- encoding: utf-8 -*-
+
+from django.contrib import admin
+
+from budget.models import *
+from rh.lib import *
+
+admin.site.register(Classement, ClassementAdmin)
+admin.site.register(Dossier, DossierAdmin)
+admin.site.register(Evenement, EvenementAdmin)
+admin.site.register(EvenementRemuneration, EvenementRemunerationAdmin)
+admin.site.register(Poste, PosteAdmin)
+admin.site.register(Remuneration, RemunerationAdmin)
+admin.site.register(ValeurPoint, ValeurPointAdmin)
+admin.site.register(TauxChange, TauxChangeAdmin)
--- /dev/null
+# encoding: utf-8
+import datetime
+from south.db import db
+from south.v2 import SchemaMigration
+from django.db import models
+
+class Migration(SchemaMigration):
+
+ def forwards(self, orm):
+
+ # Adding model 'Classement'
+ db.create_table('budget_classement', (
+ ('coefficient', self.gf('django.db.models.fields.FloatField')(default=0)),
+ ('user_desactivation', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='+', null=True, db_column='user_desactivation', to=orm['auth.User'])),
+ ('type', self.gf('django.db.models.fields.CharField')(max_length=10)),
+ ('degre', self.gf('django.db.models.fields.IntegerField')()),
+ ('date_creation', self.gf('django.db.models.fields.DateField')(auto_now_add=True, blank=True)),
+ ('user_creation', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='+', null=True, db_column='user_creation', to=orm['auth.User'])),
+ ('echelon', self.gf('django.db.models.fields.IntegerField')()),
+ ('commentaire', self.gf('django.db.models.fields.TextField')(null=True, blank=True)),
+ ('user_modification', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='+', null=True, db_column='user_modification', to=orm['auth.User'])),
+ ('date_modification', self.gf('django.db.models.fields.DateField')(auto_now=True, blank=True)),
+ ('date_desactivation', self.gf('django.db.models.fields.DateField')(null=True, blank=True)),
+ ('actif', self.gf('django.db.models.fields.BooleanField')(default=True, blank=True)),
+ ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
+ ('simulation', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['budget.Simulation'])),
+ ))
+ db.send_create_signal('budget', ['Classement'])
+
+ # Adding model 'TauxChange'
+ db.create_table('budget_tauxchange', (
+ ('user_desactivation', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='+', null=True, db_column='user_desactivation', to=orm['auth.User'])),
+ ('devise', self.gf('django.db.models.fields.related.ForeignKey')(related_name='+', to_field='code', db_column='devise', to=orm['rh.Devise'])),
+ ('taux', self.gf('django.db.models.fields.FloatField')()),
+ ('date_creation', self.gf('django.db.models.fields.DateField')(auto_now_add=True, blank=True)),
+ ('annee', self.gf('django.db.models.fields.IntegerField')()),
+ ('user_creation', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='+', null=True, db_column='user_creation', to=orm['auth.User'])),
+ ('user_modification', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='+', null=True, db_column='user_modification', to=orm['auth.User'])),
+ ('date_modification', self.gf('django.db.models.fields.DateField')(auto_now=True, blank=True)),
+ ('date_desactivation', self.gf('django.db.models.fields.DateField')(null=True, blank=True)),
+ ('actif', self.gf('django.db.models.fields.BooleanField')(default=True, blank=True)),
+ ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
+ ('simulation', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['budget.Simulation'])),
+ ))
+ db.send_create_signal('budget', ['TauxChange'])
+
+ # Adding model 'ValeurPoint'
+ db.create_table('budget_valeurpoint', (
+ ('user_desactivation', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='+', null=True, db_column='user_desactivation', to=orm['auth.User'])),
+ ('devise', self.gf('django.db.models.fields.related.ForeignKey')(default=5, related_name='+', db_column='devise', to=orm['rh.Devise'])),
+ ('date_creation', self.gf('django.db.models.fields.DateField')(auto_now_add=True, blank=True)),
+ ('annee', self.gf('django.db.models.fields.IntegerField')()),
+ ('implantation', self.gf('django.db.models.fields.related.ForeignKey')(related_name='budget_valeur_point', db_column='implantation', to=orm['datamaster_modeles.Implantation'])),
+ ('user_creation', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='+', null=True, db_column='user_creation', to=orm['auth.User'])),
+ ('valeur', self.gf('django.db.models.fields.FloatField')()),
+ ('user_modification', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='+', null=True, db_column='user_modification', to=orm['auth.User'])),
+ ('date_modification', self.gf('django.db.models.fields.DateField')(auto_now=True, blank=True)),
+ ('date_desactivation', self.gf('django.db.models.fields.DateField')(null=True, blank=True)),
+ ('actif', self.gf('django.db.models.fields.BooleanField')(default=True, blank=True)),
+ ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
+ ('simulation', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['budget.Simulation'])),
+ ))
+ db.send_create_signal('budget', ['ValeurPoint'])
+
+ # Adding model 'Remuneration'
+ db.create_table('budget_remuneration', (
+ ('montant', self.gf('django.db.models.fields.FloatField')(default=0, null=True, blank=True)),
+ ('user_desactivation', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='+', null=True, db_column='user_desactivation', to=orm['auth.User'])),
+ ('dossier', self.gf('django.db.models.fields.related.ForeignKey')(related_name='budget_remuneration_remunerations', db_column='dossier', to=orm['rh.Dossier'])),
+ ('type', self.gf('django.db.models.fields.related.ForeignKey')(related_name='+', db_column='type', to=orm['rh.TypeRemuneration'])),
+ ('date_fin', self.gf('django.db.models.fields.DateField')(null=True, blank=True)),
+ ('date_creation', self.gf('django.db.models.fields.DateField')(auto_now_add=True, blank=True)),
+ ('date_debut', self.gf('django.db.models.fields.DateField')(null=True, blank=True)),
+ ('devise', self.gf('django.db.models.fields.related.ForeignKey')(default=5, related_name='+', db_column='devise', to=orm['rh.Devise'])),
+ ('user_creation', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='+', null=True, db_column='user_creation', to=orm['auth.User'])),
+ ('commentaire', self.gf('django.db.models.fields.CharField')(max_length=255, null=True, blank=True)),
+ ('type_revalorisation', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='+', null=True, db_column='type_revalorisation', to=orm['rh.TypeRevalorisation'])),
+ ('user_modification', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='+', null=True, db_column='user_modification', to=orm['auth.User'])),
+ ('date_modification', self.gf('django.db.models.fields.DateField')(auto_now=True, blank=True)),
+ ('date_desactivation', self.gf('django.db.models.fields.DateField')(null=True, blank=True)),
+ ('actif', self.gf('django.db.models.fields.BooleanField')(default=True, blank=True)),
+ ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
+ ('simulation', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['budget.Simulation'])),
+ ))
+ db.send_create_signal('budget', ['Remuneration'])
+
+ # Adding model 'Evenement'
+ db.create_table('budget_evenement', (
+ ('nom', self.gf('django.db.models.fields.CharField')(max_length=255)),
+ ('user_desactivation', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='+', null=True, db_column='user_desactivation', to=orm['auth.User'])),
+ ('dossier', self.gf('django.db.models.fields.related.ForeignKey')(related_name='+', db_column='dossier', to=orm['rh.Dossier'])),
+ ('date_fin', self.gf('django.db.models.fields.DateField')(null=True, blank=True)),
+ ('date_creation', self.gf('django.db.models.fields.DateField')(auto_now_add=True, blank=True)),
+ ('user_creation', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='+', null=True, db_column='user_creation', to=orm['auth.User'])),
+ ('date_debut', self.gf('django.db.models.fields.DateField')()),
+ ('user_modification', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='+', null=True, db_column='user_modification', to=orm['auth.User'])),
+ ('date_modification', self.gf('django.db.models.fields.DateField')(auto_now=True, blank=True)),
+ ('date_desactivation', self.gf('django.db.models.fields.DateField')(null=True, blank=True)),
+ ('actif', self.gf('django.db.models.fields.BooleanField')(default=True, blank=True)),
+ ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
+ ('simulation', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['budget.Simulation'])),
+ ))
+ db.send_create_signal('budget', ['Evenement'])
+
+ # Adding model 'EvenementRemuneration'
+ db.create_table('budget_evenementremuneration', (
+ ('montant', self.gf('django.db.models.fields.FloatField')(default=0, null=True, blank=True)),
+ ('user_desactivation', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='+', null=True, db_column='user_desactivation', to=orm['auth.User'])),
+ ('dossier', self.gf('django.db.models.fields.related.ForeignKey')(related_name='budget_evenementremuneration_remunerations', db_column='dossier', to=orm['rh.Dossier'])),
+ ('type', self.gf('django.db.models.fields.related.ForeignKey')(related_name='+', db_column='type', to=orm['rh.TypeRemuneration'])),
+ ('evenement', self.gf('django.db.models.fields.related.ForeignKey')(related_name='+', db_column='evenement', to=orm['rh.Evenement'])),
+ ('date_fin', self.gf('django.db.models.fields.DateField')(null=True, blank=True)),
+ ('date_creation', self.gf('django.db.models.fields.DateField')(auto_now_add=True, blank=True)),
+ ('date_debut', self.gf('django.db.models.fields.DateField')(null=True, blank=True)),
+ ('devise', self.gf('django.db.models.fields.related.ForeignKey')(default=5, related_name='+', db_column='devise', to=orm['rh.Devise'])),
+ ('user_creation', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='+', null=True, db_column='user_creation', to=orm['auth.User'])),
+ ('commentaire', self.gf('django.db.models.fields.CharField')(max_length=255, null=True, blank=True)),
+ ('type_revalorisation', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='+', null=True, db_column='type_revalorisation', to=orm['rh.TypeRevalorisation'])),
+ ('user_modification', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='+', null=True, db_column='user_modification', to=orm['auth.User'])),
+ ('date_modification', self.gf('django.db.models.fields.DateField')(auto_now=True, blank=True)),
+ ('date_desactivation', self.gf('django.db.models.fields.DateField')(null=True, blank=True)),
+ ('actif', self.gf('django.db.models.fields.BooleanField')(default=True, blank=True)),
+ ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
+ ('simulation', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['budget.Simulation'])),
+ ))
+ db.send_create_signal('budget', ['EvenementRemuneration'])
+
+
+ def backwards(self, orm):
+
+ # Deleting model 'Classement'
+ db.delete_table('budget_classement')
+
+ # Deleting model 'TauxChange'
+ db.delete_table('budget_tauxchange')
+
+ # Deleting model 'ValeurPoint'
+ db.delete_table('budget_valeurpoint')
+
+ # Deleting model 'Remuneration'
+ db.delete_table('budget_remuneration')
+
+ # Deleting model 'Evenement'
+ db.delete_table('budget_evenement')
+
+ # Deleting model 'EvenementRemuneration'
+ db.delete_table('budget_evenementremuneration')
+
+
+ models = {
+ 'auth.group': {
+ 'Meta': {'object_name': 'Group'},
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
+ 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
+ },
+ 'auth.permission': {
+ 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'},
+ 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
+ },
+ 'auth.user': {
+ 'Meta': {'object_name': 'User'},
+ 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
+ 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
+ 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
+ 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
+ },
+ 'budget.classement': {
+ 'Meta': {'object_name': 'Classement'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'coefficient': ('django.db.models.fields.FloatField', [], {'default': '0'}),
+ 'commentaire': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_desactivation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'degre': ('django.db.models.fields.IntegerField', [], {}),
+ 'echelon': ('django.db.models.fields.IntegerField', [], {}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'simulation': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['budget.Simulation']"}),
+ 'type': ('django.db.models.fields.CharField', [], {'max_length': '10'}),
+ 'user_creation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_creation'", 'to': "orm['auth.User']"}),
+ 'user_desactivation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_desactivation'", 'to': "orm['auth.User']"}),
+ 'user_modification': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_modification'", 'to': "orm['auth.User']"})
+ },
+ 'budget.dossier': {
+ 'Meta': {'object_name': 'Dossier'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'classement': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'classement'", 'to': "orm['rh.Classement']"}),
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_debut': ('django.db.models.fields.DateField', [], {}),
+ 'date_desactivation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_fin': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'employe': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'db_column': "'employe'", 'to': "orm['rh.Employe']"}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'organisme_bstg': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'organisme_bstg'", 'to': "orm['rh.OrganismeBstg']"}),
+ 'poste': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'db_column': "'poste'", 'to': "orm['rh.Poste']"}),
+ 'regime_travail': ('django.db.models.fields.DecimalField', [], {'default': '100.0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'regime_travail_nb_heure_semaine': ('django.db.models.fields.DecimalField', [], {'default': '35.0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'remplacement': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'simulation': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['budget.Simulation']"}),
+ 'statut': ('django.db.models.fields.related.ForeignKey', [], {'default': '3', 'related_name': "'+'", 'to': "orm['rh.Statut']"}),
+ 'statut_residence': ('django.db.models.fields.CharField', [], {'default': "'local'", 'max_length': '10'}),
+ 'user_creation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_creation'", 'to': "orm['auth.User']"}),
+ 'user_desactivation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_desactivation'", 'to': "orm['auth.User']"}),
+ 'user_modification': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_modification'", 'to': "orm['auth.User']"})
+ },
+ 'budget.evenement': {
+ 'Meta': {'object_name': 'Evenement'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_debut': ('django.db.models.fields.DateField', [], {}),
+ 'date_desactivation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_fin': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'dossier': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'db_column': "'dossier'", 'to': "orm['rh.Dossier']"}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'simulation': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['budget.Simulation']"}),
+ 'user_creation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_creation'", 'to': "orm['auth.User']"}),
+ 'user_desactivation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_desactivation'", 'to': "orm['auth.User']"}),
+ 'user_modification': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_modification'", 'to': "orm['auth.User']"})
+ },
+ 'budget.evenementremuneration': {
+ 'Meta': {'object_name': 'EvenementRemuneration'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'commentaire': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_debut': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_desactivation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_fin': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'devise': ('django.db.models.fields.related.ForeignKey', [], {'default': '5', 'related_name': "'+'", 'db_column': "'devise'", 'to': "orm['rh.Devise']"}),
+ 'dossier': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'budget_evenementremuneration_remunerations'", 'db_column': "'dossier'", 'to': "orm['rh.Dossier']"}),
+ 'evenement': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'db_column': "'evenement'", 'to': "orm['rh.Evenement']"}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'montant': ('django.db.models.fields.FloatField', [], {'default': '0', 'null': 'True', 'blank': 'True'}),
+ 'simulation': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['budget.Simulation']"}),
+ 'type': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'db_column': "'type'", 'to': "orm['rh.TypeRemuneration']"}),
+ 'type_revalorisation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'type_revalorisation'", 'to': "orm['rh.TypeRevalorisation']"}),
+ 'user_creation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_creation'", 'to': "orm['auth.User']"}),
+ 'user_desactivation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_desactivation'", 'to': "orm['auth.User']"}),
+ 'user_modification': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_modification'", 'to': "orm['auth.User']"})
+ },
+ 'budget.poste': {
+ 'Meta': {'object_name': 'Poste'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'appel': ('django.db.models.fields.CharField', [], {'default': "'interne'", 'max_length': '10'}),
+ 'autre_max': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'autre_min': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'classement_max': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'classement_max'", 'to': "orm['rh.Classement']"}),
+ 'classement_min': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'classement_min'", 'to': "orm['rh.Classement']"}),
+ 'comp_autre_max': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_autre_min': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_fonctionpub_max': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_fonctionpub_min': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_locale_max': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_locale_min': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_ong_max': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_ong_min': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_universite_max': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_universite_min': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_debut': ('django.db.models.fields.DateField', [], {}),
+ 'date_desactivation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_fin': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'date_validation': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
+ 'devise_comparaison': ('django.db.models.fields.related.ForeignKey', [], {'default': '5', 'related_name': "'+'", 'db_column': "'devise_comparaison'", 'to': "orm['rh.Devise']"}),
+ 'devise_max': ('django.db.models.fields.related.ForeignKey', [], {'default': '5', 'related_name': "'+'", 'db_column': "'devise_max'", 'to': "orm['rh.Devise']"}),
+ 'devise_min': ('django.db.models.fields.related.ForeignKey', [], {'default': '5', 'related_name': "'+'", 'db_column': "'devise_min'", 'to': "orm['rh.Devise']"}),
+ 'expatrie': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'implantation': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'db_column': "'implantation'", 'to': "orm['datamaster_modeles.Implantation']"}),
+ 'indemn_max': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'indemn_min': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'justification': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'local': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'mise_a_disposition': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'nom_feminin': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True'}),
+ 'regime_travail': ('django.db.models.fields.DecimalField', [], {'default': '100.0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'regime_travail_nb_heure_semaine': ('django.db.models.fields.DecimalField', [], {'default': '35.0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'responsable': ('django.db.models.fields.related.ForeignKey', [], {'default': '149', 'related_name': "'+'", 'db_column': "'responsable'", 'to': "orm['rh.Poste']"}),
+ 'salaire_max': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'salaire_min': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'service': ('django.db.models.fields.related.ForeignKey', [], {'default': '1', 'related_name': "'+'", 'db_column': "'service'", 'to': "orm['rh.Service']"}),
+ 'simulation': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['budget.Simulation']"}),
+ 'type_poste': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'null': 'True', 'db_column': "'type_poste'", 'to': "orm['rh.TypePoste']"}),
+ 'user_creation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_creation'", 'to': "orm['auth.User']"}),
+ 'user_desactivation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_desactivation'", 'to': "orm['auth.User']"}),
+ 'user_modification': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_modification'", 'to': "orm['auth.User']"}),
+ 'valeur_point_max': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'valeur_point_max'", 'to': "orm['rh.ValeurPoint']"}),
+ 'valeur_point_min': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'valeur_point_min'", 'to': "orm['rh.ValeurPoint']"})
+ },
+ 'budget.remuneration': {
+ 'Meta': {'object_name': 'Remuneration'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'commentaire': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_debut': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_desactivation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_fin': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'devise': ('django.db.models.fields.related.ForeignKey', [], {'default': '5', 'related_name': "'+'", 'db_column': "'devise'", 'to': "orm['rh.Devise']"}),
+ 'dossier': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'budget_remuneration_remunerations'", 'db_column': "'dossier'", 'to': "orm['rh.Dossier']"}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'montant': ('django.db.models.fields.FloatField', [], {'default': '0', 'null': 'True', 'blank': 'True'}),
+ 'simulation': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['budget.Simulation']"}),
+ 'type': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'db_column': "'type'", 'to': "orm['rh.TypeRemuneration']"}),
+ 'type_revalorisation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'type_revalorisation'", 'to': "orm['rh.TypeRevalorisation']"}),
+ 'user_creation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_creation'", 'to': "orm['auth.User']"}),
+ 'user_desactivation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_desactivation'", 'to': "orm['auth.User']"}),
+ 'user_modification': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_modification'", 'to': "orm['auth.User']"})
+ },
+ 'budget.simulation': {
+ 'Meta': {'object_name': 'Simulation'},
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+ },
+ 'budget.tauxchange': {
+ 'Meta': {'object_name': 'TauxChange'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'annee': ('django.db.models.fields.IntegerField', [], {}),
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_desactivation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'devise': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to_field': "'code'", 'db_column': "'devise'", 'to': "orm['rh.Devise']"}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'simulation': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['budget.Simulation']"}),
+ 'taux': ('django.db.models.fields.FloatField', [], {}),
+ 'user_creation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_creation'", 'to': "orm['auth.User']"}),
+ 'user_desactivation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_desactivation'", 'to': "orm['auth.User']"}),
+ 'user_modification': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_modification'", 'to': "orm['auth.User']"})
+ },
+ 'budget.valeurpoint': {
+ 'Meta': {'object_name': 'ValeurPoint'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'annee': ('django.db.models.fields.IntegerField', [], {}),
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_desactivation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'devise': ('django.db.models.fields.related.ForeignKey', [], {'default': '5', 'related_name': "'+'", 'db_column': "'devise'", 'to': "orm['rh.Devise']"}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'implantation': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'budget_valeur_point'", 'db_column': "'implantation'", 'to': "orm['datamaster_modeles.Implantation']"}),
+ 'simulation': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['budget.Simulation']"}),
+ 'user_creation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_creation'", 'to': "orm['auth.User']"}),
+ 'user_desactivation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_desactivation'", 'to': "orm['auth.User']"}),
+ 'user_modification': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_modification'", 'to': "orm['auth.User']"}),
+ 'valeur': ('django.db.models.fields.FloatField', [], {})
+ },
+ 'contenttypes.contenttype': {
+ 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
+ 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
+ },
+ 'datamaster_modeles.bureau': {
+ 'Meta': {'object_name': 'Bureau', 'db_table': "u'ref_bureau'"},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'implantation': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Implantation']", 'db_column': "'implantation'"}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'nom_court': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'nom_long': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'region': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Region']", 'db_column': "'region'"})
+ },
+ 'datamaster_modeles.implantation': {
+ 'Meta': {'object_name': 'Implantation', 'db_table': "u'ref_implantation'"},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'adresse_physique_bureau': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'adresse_physique_code_postal': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'adresse_physique_code_postal_avant_ville': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'adresse_physique_no': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'adresse_physique_pays': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'impl_adresse_physique'", 'to_field': "'code'", 'db_column': "'adresse_physique_pays'", 'to': "orm['datamaster_modeles.Pays']"}),
+ 'adresse_physique_precision': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'adresse_physique_precision_avant': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'adresse_physique_region': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'adresse_physique_rue': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'adresse_physique_ville': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'adresse_postale_boite_postale': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_bureau': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_code_postal': ('django.db.models.fields.CharField', [], {'max_length': '20', 'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_code_postal_avant_ville': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_no': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_pays': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'impl_adresse_postale'", 'to_field': "'code'", 'db_column': "'adresse_postale_pays'", 'to': "orm['datamaster_modeles.Pays']"}),
+ 'adresse_postale_precision': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_precision_avant': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_region': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_rue': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_ville': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'bureau_rattachement': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Implantation']", 'db_column': "'bureau_rattachement'"}),
+ 'code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}),
+ 'code_meteo': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'commentaire': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'courriel': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
+ 'courriel_interne': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
+ 'date_extension': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_fermeture': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_inauguration': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_ouverture': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'fax': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'fax_interne': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'fuseau_horaire': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'hebergement_convention': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'hebergement_convention_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'hebergement_etablissement': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'modif_date': ('django.db.models.fields.DateField', [], {}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'nom_court': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'nom_long': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'region': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Region']", 'db_column': "'region'"}),
+ 'remarque': ('django.db.models.fields.TextField', [], {}),
+ 'responsable_implantation': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'statut': ('django.db.models.fields.IntegerField', [], {}),
+ 'telephone': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'telephone_interne': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'type': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'url': ('django.db.models.fields.URLField', [], {'max_length': '255', 'blank': 'True'})
+ },
+ 'datamaster_modeles.pays': {
+ 'Meta': {'object_name': 'Pays', 'db_table': "u'ref_pays'"},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '2'}),
+ 'code_bureau': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Bureau']", 'to_field': "'code'", 'db_column': "'code_bureau'"}),
+ 'code_iso3': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '3', 'blank': 'True'}),
+ 'developpement': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'monnaie': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'nord_sud': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'region': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Region']", 'db_column': "'region'"})
+ },
+ 'datamaster_modeles.region': {
+ 'Meta': {'object_name': 'Region', 'db_table': "u'ref_region'"},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'implantation_bureau': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'gere_region'", 'db_column': "'implantation_bureau'", 'to': "orm['datamaster_modeles.Implantation']"}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+ },
+ 'rh.classement': {
+ 'Meta': {'object_name': 'Classement'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'coefficient': ('django.db.models.fields.FloatField', [], {'default': '0'}),
+ 'commentaire': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_desactivation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'degre': ('django.db.models.fields.IntegerField', [], {}),
+ 'echelon': ('django.db.models.fields.IntegerField', [], {}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'type': ('django.db.models.fields.CharField', [], {'max_length': '10'}),
+ 'user_creation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_creation'", 'to': "orm['auth.User']"}),
+ 'user_desactivation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_desactivation'", 'to': "orm['auth.User']"}),
+ 'user_modification': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_modification'", 'to': "orm['auth.User']"})
+ },
+ 'rh.devise': {
+ 'Meta': {'object_name': 'Devise'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '10'}),
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_desactivation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'user_creation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_creation'", 'to': "orm['auth.User']"}),
+ 'user_desactivation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_desactivation'", 'to': "orm['auth.User']"}),
+ 'user_modification': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_modification'", 'to': "orm['auth.User']"})
+ },
+ 'rh.dossier': {
+ 'Meta': {'object_name': 'Dossier'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'classement': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'classement'", 'to': "orm['rh.Classement']"}),
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_debut': ('django.db.models.fields.DateField', [], {}),
+ 'date_desactivation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_fin': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'employe': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'db_column': "'employe'", 'to': "orm['rh.Employe']"}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'organisme_bstg': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'organisme_bstg'", 'to': "orm['rh.OrganismeBstg']"}),
+ 'poste': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'db_column': "'poste'", 'to': "orm['rh.Poste']"}),
+ 'regime_travail': ('django.db.models.fields.DecimalField', [], {'default': '100.0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'regime_travail_nb_heure_semaine': ('django.db.models.fields.DecimalField', [], {'default': '35.0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'remplacement': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'statut': ('django.db.models.fields.related.ForeignKey', [], {'default': '3', 'related_name': "'+'", 'to': "orm['rh.Statut']"}),
+ 'statut_residence': ('django.db.models.fields.CharField', [], {'default': "'local'", 'max_length': '10'}),
+ 'user_creation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_creation'", 'to': "orm['auth.User']"}),
+ 'user_desactivation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_desactivation'", 'to': "orm['auth.User']"}),
+ 'user_modification': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_modification'", 'to': "orm['auth.User']"})
+ },
+ 'rh.employe': {
+ 'Meta': {'object_name': 'Employe'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'adresse': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'code_postal': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_desactivation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_entree': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'date_naissance': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'genre': ('django.db.models.fields.CharField', [], {'max_length': '1'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'nationalite': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'employes_nationalite'", 'to_field': "'code'", 'db_column': "'nationalite'", 'to': "orm['datamaster_modeles.Pays']"}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'nom_affichage': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'pays': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'employes'", 'db_column': "'pays'", 'to_field': "'code'", 'to': "orm['datamaster_modeles.Pays']", 'blank': 'True', 'null': 'True'}),
+ 'prenom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'province': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'situation_famille': ('django.db.models.fields.CharField', [], {'max_length': '1', 'null': 'True', 'blank': 'True'}),
+ 'tel_cellulaire': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'tel_domicile': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'user_creation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_creation'", 'to': "orm['auth.User']"}),
+ 'user_desactivation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_desactivation'", 'to': "orm['auth.User']"}),
+ 'user_modification': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_modification'", 'to': "orm['auth.User']"}),
+ 'ville': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'})
+ },
+ 'rh.evenement': {
+ 'Meta': {'object_name': 'Evenement'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_debut': ('django.db.models.fields.DateField', [], {}),
+ 'date_desactivation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_fin': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'dossier': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'db_column': "'dossier'", 'to': "orm['rh.Dossier']"}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'user_creation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_creation'", 'to': "orm['auth.User']"}),
+ 'user_desactivation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_desactivation'", 'to': "orm['auth.User']"}),
+ 'user_modification': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_modification'", 'to': "orm['auth.User']"})
+ },
+ 'rh.familleemploi': {
+ 'Meta': {'object_name': 'FamilleEmploi'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_desactivation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'user_creation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_creation'", 'to': "orm['auth.User']"}),
+ 'user_desactivation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_desactivation'", 'to': "orm['auth.User']"}),
+ 'user_modification': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_modification'", 'to': "orm['auth.User']"})
+ },
+ 'rh.organismebstg': {
+ 'Meta': {'object_name': 'OrganismeBstg'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_desactivation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'pays': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'organismes_bstg'", 'db_column': "'pays'", 'to_field': "'code'", 'to': "orm['datamaster_modeles.Pays']", 'blank': 'True', 'null': 'True'}),
+ 'type': ('django.db.models.fields.CharField', [], {'max_length': '10'}),
+ 'user_creation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_creation'", 'to': "orm['auth.User']"}),
+ 'user_desactivation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_desactivation'", 'to': "orm['auth.User']"}),
+ 'user_modification': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_modification'", 'to': "orm['auth.User']"})
+ },
+ 'rh.poste': {
+ 'Meta': {'object_name': 'Poste'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'appel': ('django.db.models.fields.CharField', [], {'default': "'interne'", 'max_length': '10'}),
+ 'autre_max': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'autre_min': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'classement_max': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'classement_max'", 'to': "orm['rh.Classement']"}),
+ 'classement_min': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'classement_min'", 'to': "orm['rh.Classement']"}),
+ 'comp_autre_max': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_autre_min': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_fonctionpub_max': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_fonctionpub_min': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_locale_max': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_locale_min': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_ong_max': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_ong_min': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_universite_max': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_universite_min': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_debut': ('django.db.models.fields.DateField', [], {}),
+ 'date_desactivation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_fin': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'date_validation': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
+ 'devise_comparaison': ('django.db.models.fields.related.ForeignKey', [], {'default': '5', 'related_name': "'+'", 'db_column': "'devise_comparaison'", 'to': "orm['rh.Devise']"}),
+ 'devise_max': ('django.db.models.fields.related.ForeignKey', [], {'default': '5', 'related_name': "'+'", 'db_column': "'devise_max'", 'to': "orm['rh.Devise']"}),
+ 'devise_min': ('django.db.models.fields.related.ForeignKey', [], {'default': '5', 'related_name': "'+'", 'db_column': "'devise_min'", 'to': "orm['rh.Devise']"}),
+ 'expatrie': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'implantation': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'db_column': "'implantation'", 'to': "orm['datamaster_modeles.Implantation']"}),
+ 'indemn_max': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'indemn_min': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'justification': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'local': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'mise_a_disposition': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'nom_feminin': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True'}),
+ 'regime_travail': ('django.db.models.fields.DecimalField', [], {'default': '100.0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'regime_travail_nb_heure_semaine': ('django.db.models.fields.DecimalField', [], {'default': '35.0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'responsable': ('django.db.models.fields.related.ForeignKey', [], {'default': '149', 'related_name': "'+'", 'db_column': "'responsable'", 'to': "orm['rh.Poste']"}),
+ 'salaire_max': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'salaire_min': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'service': ('django.db.models.fields.related.ForeignKey', [], {'default': '1', 'related_name': "'+'", 'db_column': "'service'", 'to': "orm['rh.Service']"}),
+ 'type_poste': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'null': 'True', 'db_column': "'type_poste'", 'to': "orm['rh.TypePoste']"}),
+ 'user_creation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_creation'", 'to': "orm['auth.User']"}),
+ 'user_desactivation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_desactivation'", 'to': "orm['auth.User']"}),
+ 'user_modification': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_modification'", 'to': "orm['auth.User']"}),
+ 'valeur_point_max': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'valeur_point_max'", 'to': "orm['rh.ValeurPoint']"}),
+ 'valeur_point_min': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'valeur_point_min'", 'to': "orm['rh.ValeurPoint']"})
+ },
+ 'rh.service': {
+ 'Meta': {'object_name': 'Service'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_desactivation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'user_creation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_creation'", 'to': "orm['auth.User']"}),
+ 'user_desactivation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_desactivation'", 'to': "orm['auth.User']"}),
+ 'user_modification': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_modification'", 'to': "orm['auth.User']"})
+ },
+ 'rh.statut': {
+ 'Meta': {'object_name': 'Statut'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'code': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '25'}),
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_desactivation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'user_creation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_creation'", 'to': "orm['auth.User']"}),
+ 'user_desactivation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_desactivation'", 'to': "orm['auth.User']"}),
+ 'user_modification': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_modification'", 'to': "orm['auth.User']"})
+ },
+ 'rh.typeposte': {
+ 'Meta': {'object_name': 'TypePoste'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_desactivation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'famille_emploi': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'db_column': "'famille_emploi'", 'to': "orm['rh.FamilleEmploi']"}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'is_responsable': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'nom_feminin': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'user_creation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_creation'", 'to': "orm['auth.User']"}),
+ 'user_desactivation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_desactivation'", 'to': "orm['auth.User']"}),
+ 'user_modification': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_modification'", 'to': "orm['auth.User']"})
+ },
+ 'rh.typeremuneration': {
+ 'Meta': {'object_name': 'TypeRemuneration'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_desactivation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'nature_remuneration': ('django.db.models.fields.CharField', [], {'max_length': '30'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'type_paiement': ('django.db.models.fields.CharField', [], {'max_length': '30'}),
+ 'user_creation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_creation'", 'to': "orm['auth.User']"}),
+ 'user_desactivation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_desactivation'", 'to': "orm['auth.User']"}),
+ 'user_modification': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_modification'", 'to': "orm['auth.User']"})
+ },
+ 'rh.typerevalorisation': {
+ 'Meta': {'object_name': 'TypeRevalorisation'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_desactivation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'user_creation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_creation'", 'to': "orm['auth.User']"}),
+ 'user_desactivation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_desactivation'", 'to': "orm['auth.User']"}),
+ 'user_modification': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_modification'", 'to': "orm['auth.User']"})
+ },
+ 'rh.valeurpoint': {
+ 'Meta': {'object_name': 'ValeurPoint'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'annee': ('django.db.models.fields.IntegerField', [], {}),
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_desactivation': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'devise': ('django.db.models.fields.related.ForeignKey', [], {'default': '5', 'related_name': "'+'", 'db_column': "'devise'", 'to': "orm['rh.Devise']"}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'implantation': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'rh_valeur_point'", 'db_column': "'implantation'", 'to': "orm['datamaster_modeles.Implantation']"}),
+ 'user_creation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_creation'", 'to': "orm['auth.User']"}),
+ 'user_desactivation': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_desactivation'", 'to': "orm['auth.User']"}),
+ 'user_modification': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'db_column': "'user_modification'", 'to': "orm['auth.User']"}),
+ 'valeur': ('django.db.models.fields.FloatField', [], {})
+ }
+ }
+
+ complete_apps = ['budget']
# -=- encoding: utf-8 -=-
+import inspect
+
from django.db import models
from rh import models as rh
nom = models.CharField(max_length=255,
verbose_name=u'Nom de la simulation')
+ def initialize(self):
+ """ Copie les données nécessaires à une simulation. """
+ if not self.is_empty():
+ raise ValueError(u'Cette simulation a déjà été initialisée.')
+
+ self.seen_models = {}
+
+ for model in [rh.Poste, rh.Dossier, rh.Remuneration, rh.Evenement,
+ rh.EvenementRemuneration, rh.Classement, rh.ValeurPoint,
+ rh.TauxChange]:
+ self.seen_models[model.__class__.__name__.lower()] = \
+ self.copy_rh_models(model)
+
+ def is_empty(self):
+ for attr in ['classement_set', 'dossier_set', 'evenement_set',
+ 'evenementremuneration_set', 'poste_set',
+ 'remuneration_set', 'valeurpoint_set', 'tauxchange_set']:
+ if not getattr(self, attr).all().count() == 0:
+ return False
+ return True
+
+ def reset(self):
+ for attr in ['classement_set', 'dossier_set', 'evenement_set',
+ 'evenementremuneration_set', 'poste_set',
+ 'remuneration_set', 'valeurpoint_set', 'tauxchange_set']:
+ getattr(self, attr).all().delete()
+
+ def copy_rh_models(self, model):
+ """ Crée une copie de simulation de tous les enregistrements d'un
+ modèle donné et en retourne la liste indexée dans un dictionnaire.
+
+ Opère une translation des id si nécessaire. """
+ xlate = getattr(self, 'xlate_%s' % model.__class__.__name__.lower(),
+ None)
+ seen = {}
+ for orig in model.objects.all():
+ sim = self.copy_rh_model(orig)
+ if xlate is not None:
+ xlate(sim)
+ sim.save()
+ seen[orig.id] = sim
+ return seen
+
def copy_rh_model(self, obj):
""" Crée une copie de simulation d'un modèle rh. """
- initial = dict(['simulation', self] +
+ initial = dict([('simulation', self)] +
[(f.name, getattr(obj, f.name))
for f in obj._meta.fields
if not isinstance(f, models.AutoField) and
not f in obj._meta.parents.values()])
return globals()[obj.__class__.__name__](**initial)
+ def xlate_dossier(self, d):
+ if not d.poste.id in self.seen_models['poste']:
+ raise ValueError(u'Données inconsistantes.')
+ d.poste = self.seen_models['poste'][d.poste.id]
+ if not d.classement.id in self.seen_models['classement']:
+ raise ValueError(u'Données inconsistantes.')
+ d.classement = self.seen_models['classement'] [d.classement.id]
- def initialize(self):
- """ Copie les données nécessaires à une simulation. """
- if (self.poste_set.all().count() > 0 or
- self.dossier_set.all().count() > 0):
- raise ValueError(u'Cette simulation a déjà été initialisée.')
+ def xlate_evenement(self, e):
+ if not e.dossier.id in self.seen_models['dossier']:
+ raise ValueError(u'Données inconsistantes.')
+ e.dossier = self.seen_models['dossier'][e.dossier.id]
- postes = {}
- for rh_p in rh.Poste.objects.all():
- sim_p = self.copy_rh_model(rh_p)
- sim_p.save()
- postes[rh_p.id] = sim_p
-
- dossiers = {}
- for rh_d in rh.Dossier.objects.all():
- sim_d = self.copy_rh_model(rh_d)
- if not sim_d.poste.id in postes:
- self.poste_set.all().delete()
- self.dossier_set.all().delete()
- raise ValueError(u'Données inconsistantes.')
- sim_d.poste = postes[sim_d.poste.id]
- sim_d.save()
- dossiers[rh_d.id] = sim_d
+ def xlate_remuneration(self, r):
+ if not r.dossier.id in self.seen_models['dossier']:
+ raise ValueError(u'Données inconsistantes.')
+ r.dossier = self.seen_models['dossier'] [r.dossier.id]
-class Poste(rh.Poste_):
- __doc__ = rh.Poste_.__doc__
+ def xlate_evenementremuneration(self, er):
+ if not er.dossier.id in self.seen_models['dossier']:
+ raise ValueError(u'Données inconsistantes.')
+ er.dossier = self.seen_models['dossier'] [er.dossier.id]
+ if not er.evenement.id in self.seen_models['evenement']:
+ raise ValueError(u'Données inconsistantes.')
+ er.evenement = self.seen_models['evenement'] [er.evenement.id]
+
+
+class Classement(rh.Classement_):
+ __doc__ = rh.Classement_.__doc__
simulation = models.ForeignKey(Simulation)
class Dossier(rh.Dossier_):
__doc__ = rh.Dossier_.__doc__
simulation = models.ForeignKey(Simulation)
+
+
+class Evenement(rh.Evenement_):
+ __doc__ = rh.Evenement_.__doc__
+ simulation = models.ForeignKey(Simulation)
+
+
+class EvenementRemuneration(rh.EvenementRemuneration_):
+ __doc__ = rh.EvenementRemuneration_.__doc__
+ simulation = models.ForeignKey(Simulation)
+
+
+class Poste(rh.Poste_):
+ __doc__ = rh.Poste_.__doc__
+ simulation = models.ForeignKey(Simulation)
+
+
+class Remuneration(rh.Remuneration_):
+ __doc__ = rh.Remuneration_.__doc__
+ simulation = models.ForeignKey(Simulation)
+
+
+class TauxChange(rh.TauxChange_):
+ __doc__ = rh.TauxChange_.__doc__
+ simulation = models.ForeignKey(Simulation)
+
+
+class ValeurPoint(rh.ValeurPoint_):
+ __doc__ = rh.ValeurPoint_.__doc__
+ simulation = models.ForeignKey(Simulation)
from dae import models as dae
from utils import get_employe_from_user, is_user_dans_service
from rh_v1 import models as rh
-from workflow import grp_drh
+from workflow import grp_drh, POSTE_ETATS_BOUTONS
def _implantation_choices(obj, request):
# TRAITEMENT NORMAL
class Meta:
model = dae.Poste
exclude = ('actif', )
- fields = ('poste', 'implantation', 'type_poste', 'service', 'nom',
+ fields = ('type_intervention',
+ 'poste', 'implantation', 'type_poste', 'service', 'nom',
'responsable', 'local', 'expatrie', 'mise_a_disposition',
'appel', 'date_debut', 'date_fin',
'regime_travail', 'regime_travail_nb_heure_semaine',
'classement_min', 'classement_max',
'valeur_point_min', 'valeur_point_max',
'devise_min', 'devise_max',
- 'salaire_min', 'salaire_max', 'indemn_min', 'indemn_max',
+ 'salaire_min', 'salaire_max',
+ 'indemn_expat_min', 'indemn_expat_max',
+ 'indemn_fct_min', 'indemn_fct_max',
+ 'charges_patronales_min', 'charges_patronales_max',
'autre_min', 'autre_max', 'devise_comparaison',
'comp_locale_min', 'comp_locale_max',
'comp_universite_min', 'comp_universite_max',
'comp_autre_min', 'comp_autre_max',
'justification',
)
- widgets = dict(appel=forms.RadioSelect(),
+ widgets = dict(type_intervention=forms.RadioSelect(),
+ appel=forms.RadioSelect(),
nom=forms.TextInput(attrs={'size': 60},),
date_debut=admin_widgets.AdminDateWidget(),
date_fin=admin_widgets.AdminDateWidget(),
self._errors["valeur_point_max"] = self.error_class([msg])
raise forms.ValidationError("Les valeurs de point sont vides")
- print cleaned_data.get("local")
if cleaned_data.get("local") is False and cleaned_data.get("expatrie") is False:
msg = "Le poste doit au moins être ouvert localement ou aux expatriés"
self._errors["local"] = self.error_class([msg])
contrat_date_fin=admin_widgets.AdminDateWidget(),
)
-WF_HELP_TEXT = """Ce champs affiche par défaut l'étape de traitement de la demande.
-La liste déroulante vous permet de sélectionner l'étape suivante."""
WF_HELP_TEXT = ""
class PosteWorkflowForm(WorkflowFormMixin):
-
+ bouton_libelles = POSTE_ETATS_BOUTONS
class Meta:
fields = ('etat', )
model = dae.Poste
-
+
def __init__(self, *args, **kwargs):
super(self.__class__, self).__init__(*args, **kwargs)
self.fields['etat'].help_text = WF_HELP_TEXT
class DossierWorkflowForm(WorkflowFormMixin):
-
+ bouton_libelles = POSTE_ETATS_BOUTONS # meme workflow que poste...
class Meta:
fields = ('etat', )
model = dae.Dossier
from django.db import models
from django.db.models import Q
from utils import is_user_dans_service, get_employe_from_user
-from workflow import POSTE_ETAT_HAUTE_DIRECTION, POSTE_ETAT_POLE_FINANCIER, MAP_GROUPE_ETATS_A_FAIRE
+from workflow import POSTE_ETAT_HAUTE_DIRECTION, \
+ POSTE_ETAT_POLE_FINANCIER, \
+ POSTE_ETAT_REFUSE, \
+ DOSSIER_ETAT_REFUSE, \
+ MAP_GROUPE_ETATS_A_FAIRE
from workflow import dae_groupes, \
grp_administrateurs, \
grp_gestionnaires, \
On s'intéresse aussi au groupe auquel appartient le user car certains groupes
peuvent tout voir.
"""
-
# On s'assure que le manager travaille sur un modèle avec WF, autrement
# on ne teste pas sur l'état
try:
# REGION
else:
q = Q(**{ '%s__region' % self.prefixe_implantation : employe.implantation.region })
+
+ if workflowed_model:
+ q_non_refuse = ~Q(etat__in=(POSTE_ETAT_REFUSE, DOSSIER_ETAT_REFUSE,))
+ q = q & q_non_refuse
+
liste = self.get_query_set().filter(q)
- ############################################
- # TRAITEMENT POLE FINANCIER
- ############################################
- if workflowed_model and grp_pole_financier in user.groups.all():
- liste = self.get_query_set().filter(etat=POSTE_ETAT_POLE_FINANCIER)
+ # Il peut être bon que ces personnes connaissent l'état d'avancement du poste ou dossier
+ #############################################
+ ## TRAITEMENT POLE FINANCIER
+ #############################################
+ #if workflowed_model and grp_pole_financier in user.groups.all():
+ # liste = self.get_query_set().filter(etat=POSTE_ETAT_POLE_FINANCIER)
- ############################################
- # TRAITEMENT HAUTE DIRECTION
- ############################################
- if workflowed_model and grp_haute_direction in user.groups.all():
- liste = self.get_query_set().filter(etat=POSTE_ETAT_HAUTE_DIRECTION)
+ #############################################
+ ## TRAITEMENT HAUTE DIRECTION
+ #############################################
+ #if workflowed_model and grp_haute_direction in user.groups.all():
+ # liste = self.get_query_set().filter(etat=POSTE_ETAT_HAUTE_DIRECTION)
############################################
# TRAITEMENT DRH
############################################
if grp_drh in user.groups.all():
liste = self.get_query_set()
-
+
return liste
prefixe_implantation = "implantation"
def ma_region_ou_service(self, user):
- return super(PosteManager, self).filter(actif=True)
+ return super(PosteManager, self).ma_region_ou_service(user).filter(actif=True)
def get_query_set(self):
fkeys = (
prefixe_implantation = "poste__implantation"
def ma_region_ou_service(self, user):
- return super(DossierManager, self).filter(poste__actif=True)
+ return super(DossierManager, self).ma_region_ou_service(user).filter(poste__actif=True)
--- /dev/null
+# encoding: utf-8
+import datetime
+from south.db import db
+from south.v2 import SchemaMigration
+from django.db import models
+
+class Migration(SchemaMigration):
+
+ def forwards(self, orm):
+
+ # Deleting field 'Poste.indemn_min'
+ db.delete_column('dae_poste', 'indemn_min')
+
+ # Deleting field 'Poste.indemn_max'
+ db.delete_column('dae_poste', 'indemn_max')
+
+ # Adding field 'Poste.charges_patronales_min'
+ db.add_column('dae_poste', 'charges_patronales_min', self.gf('django.db.models.fields.DecimalField')(default=0, max_digits=12, decimal_places=2), keep_default=False)
+
+ # Adding field 'Poste.charges_patronales_max'
+ db.add_column('dae_poste', 'charges_patronales_max', self.gf('django.db.models.fields.DecimalField')(default=0, max_digits=12, decimal_places=2), keep_default=False)
+
+ # Adding field 'Poste.indemn_fct_min'
+ db.add_column('dae_poste', 'indemn_fct_min', self.gf('django.db.models.fields.DecimalField')(default=0, max_digits=12, decimal_places=2), keep_default=False)
+
+ # Adding field 'Poste.indemn_fct_max'
+ db.add_column('dae_poste', 'indemn_fct_max', self.gf('django.db.models.fields.DecimalField')(default=0, max_digits=12, decimal_places=2), keep_default=False)
+
+ # Adding field 'Poste.indemn_expat_max'
+ db.add_column('dae_poste', 'indemn_expat_max', self.gf('django.db.models.fields.DecimalField')(default=0, max_digits=12, decimal_places=2), keep_default=False)
+
+ # Adding field 'Poste.indemn_expat_min'
+ db.add_column('dae_poste', 'indemn_expat_min', self.gf('django.db.models.fields.DecimalField')(default=0, max_digits=12, decimal_places=2), keep_default=False)
+
+
+ def backwards(self, orm):
+
+ # Adding field 'Poste.indemn_min'
+ db.add_column('dae_poste', 'indemn_min', self.gf('django.db.models.fields.DecimalField')(default=0, max_digits=12, decimal_places=2), keep_default=False)
+
+ # Adding field 'Poste.indemn_max'
+ db.add_column('dae_poste', 'indemn_max', self.gf('django.db.models.fields.DecimalField')(default=0, max_digits=12, decimal_places=2), keep_default=False)
+
+ # Deleting field 'Poste.charges_patronales_min'
+ db.delete_column('dae_poste', 'charges_patronales_min')
+
+ # Deleting field 'Poste.charges_patronales_max'
+ db.delete_column('dae_poste', 'charges_patronales_max')
+
+ # Deleting field 'Poste.indemn_fct_min'
+ db.delete_column('dae_poste', 'indemn_fct_min')
+
+ # Deleting field 'Poste.indemn_fct_max'
+ db.delete_column('dae_poste', 'indemn_fct_max')
+
+ # Deleting field 'Poste.indemn_expat_max'
+ db.delete_column('dae_poste', 'indemn_expat_max')
+
+ # Deleting field 'Poste.indemn_expat_min'
+ db.delete_column('dae_poste', 'indemn_expat_min')
+
+
+ models = {
+ 'auth.group': {
+ 'Meta': {'object_name': 'Group'},
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '80', 'unique': 'True'}),
+ 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
+ },
+ 'auth.permission': {
+ 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'},
+ 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
+ },
+ 'auth.user': {
+ 'Meta': {'object_name': 'User'},
+ 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
+ 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
+ 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
+ 'username': ('django.db.models.fields.CharField', [], {'max_length': '30', 'unique': 'True'})
+ },
+ 'contenttypes.contenttype': {
+ 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
+ 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
+ },
+ 'dae.dossier': {
+ 'Meta': {'object_name': 'Dossier'},
+ 'classement': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Classement']"}),
+ 'classement_anterieur': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Classement']"}),
+ 'classement_titulaire_anterieur': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Classement']"}),
+ 'compte_compta': ('django.db.models.fields.CharField', [], {'default': "'aucun'", 'max_length': '10'}),
+ 'compte_courriel': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'contrat_date_debut': ('django.db.models.fields.DateField', [], {}),
+ 'contrat_date_fin': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_creation': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'devise': ('django.db.models.fields.related.ForeignKey', [], {'default': '5', 'related_name': "'+'", 'to': "orm['rh_v1.Devise']"}),
+ 'employe': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to': "orm['dae.Employe']"}),
+ 'employe_anterieur': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Employe']"}),
+ 'etat': ('django.db.models.fields.CharField', [], {'default': 'None', 'max_length': '20', 'null': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'justif_nouveau_commentaire': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'justif_nouveau_salaire': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'justif_nouveau_statut': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'justif_nouveau_tmp_remplacement': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'justif_rempl_commentaire': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'justif_rempl_evaluation': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'justif_rempl_salaire': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'justif_rempl_statut_employe': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'justif_rempl_type_contrat': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'organisme_bstg': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.OrganismeBstg']"}),
+ 'organisme_bstg_autre': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'poste': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to': "orm['dae.Poste']"}),
+ 'regime_travail': ('django.db.models.fields.DecimalField', [], {'default': '100.0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'regime_travail_nb_heure_semaine': ('django.db.models.fields.DecimalField', [], {'default': '35.0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'remplacement': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'salaire': ('django.db.models.fields.DecimalField', [], {'default': 'None', 'null': 'True', 'max_digits': '12', 'decimal_places': '2'}),
+ 'salaire_anterieur': ('django.db.models.fields.DecimalField', [], {'default': 'None', 'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'salaire_titulaire_anterieur': ('django.db.models.fields.DecimalField', [], {'default': 'None', 'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'statut': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to': "orm['rh_v1.Statut']"}),
+ 'statut_anterieur': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Statut']"}),
+ 'statut_residence': ('django.db.models.fields.CharField', [], {'default': "'local'", 'max_length': '10'}),
+ 'statut_titulaire_anterieur': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Statut']"}),
+ 'type_contrat': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to': "orm['rh_v1.TypeContrat']"})
+ },
+ 'dae.dossiercomparaison': {
+ 'Meta': {'object_name': 'DossierComparaison'},
+ 'devise': ('django.db.models.fields.related.ForeignKey', [], {'default': '5', 'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Devise']"}),
+ 'dossier': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comparaisons'", 'to': "orm['dae.Dossier']"}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'implantation': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Implantation']", 'null': 'True', 'blank': 'True'}),
+ 'montant': ('django.db.models.fields.IntegerField', [], {'null': 'True'}),
+ 'montant_euros': ('django.db.models.fields.IntegerField', [], {'null': 'True'}),
+ 'personne': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'poste': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'})
+ },
+ 'dae.dossierpiece': {
+ 'Meta': {'object_name': 'DossierPiece'},
+ 'dossier': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['dae.Dossier']"}),
+ 'fichier': ('django.db.models.fields.files.FileField', [], {'max_length': '100'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+ },
+ 'dae.employe': {
+ 'Meta': {'object_name': 'Employe'},
+ 'genre': ('django.db.models.fields.CharField', [], {'max_length': '1'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'id_rh': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'null': 'True', 'to': "orm['rh_v1.Employe']"}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'prenom': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+ },
+ 'dae.poste': {
+ 'Meta': {'object_name': 'Poste'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'appel': ('django.db.models.fields.CharField', [], {'default': "'interne'", 'max_length': '10'}),
+ 'autre_max': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'autre_min': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'charges_patronales_max': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'charges_patronales_min': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'classement_max': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Classement']"}),
+ 'classement_min': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Classement']"}),
+ 'comp_autre_max': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_autre_min': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_fonctionpub_max': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_fonctionpub_min': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_locale_max': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_locale_min': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_ong_max': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_ong_min': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_universite_max': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_universite_min': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'date_creation': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_debut': ('django.db.models.fields.DateField', [], {}),
+ 'date_fin': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'devise_comparaison': ('django.db.models.fields.related.ForeignKey', [], {'default': '5', 'related_name': "'+'", 'to': "orm['rh_v1.Devise']"}),
+ 'devise_max': ('django.db.models.fields.related.ForeignKey', [], {'default': '5', 'related_name': "'+'", 'to': "orm['rh_v1.Devise']"}),
+ 'devise_min': ('django.db.models.fields.related.ForeignKey', [], {'default': '5', 'related_name': "'+'", 'to': "orm['rh_v1.Devise']"}),
+ 'etat': ('django.db.models.fields.CharField', [], {'default': 'None', 'max_length': '20', 'null': 'True', 'blank': 'True'}),
+ 'expatrie': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'id_rh': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'null': 'True', 'to': "orm['rh_v1.Poste']"}),
+ 'implantation': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Implantation']"}),
+ 'indemn_expat_max': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'indemn_expat_min': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'indemn_fct_max': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'indemn_fct_min': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'justification': ('django.db.models.fields.TextField', [], {}),
+ 'local': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'mise_a_disposition': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'pourvu': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'regime_travail': ('django.db.models.fields.DecimalField', [], {'default': '100.0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'regime_travail_nb_heure_semaine': ('django.db.models.fields.DecimalField', [], {'default': '35.0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'responsable': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to': "orm['rh_v1.Poste']"}),
+ 'salaire_max': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'salaire_min': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'service': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to': "orm['rh_v1.Service']"}),
+ 'type_poste': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'null': 'True', 'to': "orm['rh_v1.TypePoste']"}),
+ 'valeur_point_max': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.ValeurPoint']"}),
+ 'valeur_point_min': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.ValeurPoint']"})
+ },
+ 'dae.postefinancement': {
+ 'Meta': {'object_name': 'PosteFinancement'},
+ 'commentaire': ('django.db.models.fields.TextField', [], {}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'poste': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'financements'", 'to': "orm['dae.Poste']"}),
+ 'pourcentage': ('django.db.models.fields.DecimalField', [], {'max_digits': '12', 'decimal_places': '2'}),
+ 'type': ('django.db.models.fields.CharField', [], {'max_length': '1'})
+ },
+ 'dae.postepiece': {
+ 'Meta': {'object_name': 'PostePiece'},
+ 'fichier': ('django.db.models.fields.files.FileField', [], {'max_length': '100'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'poste': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['dae.Poste']"})
+ },
+ 'dae.remuneration': {
+ 'Meta': {'object_name': 'Remuneration'},
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'devise': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to_field': "'code'", 'db_column': "'devise'", 'to': "orm['rh_v1.Devise']"}),
+ 'dossier': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['dae.Dossier']", 'db_column': "'dossier'"}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'montant': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2'}),
+ 'precision': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'type': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'db_column': "'type'", 'to': "orm['rh_v1.TypeRemuneration']"}),
+ 'user_creation': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'})
+ },
+ 'datamaster_modeles.bureau': {
+ 'Meta': {'object_name': 'Bureau', 'db_table': "u'ref_bureau'"},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'code': ('django.db.models.fields.CharField', [], {'max_length': '255', 'unique': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'implantation': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Implantation']", 'db_column': "'implantation'"}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'nom_court': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'nom_long': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'region': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Region']", 'db_column': "'region'"})
+ },
+ 'datamaster_modeles.implantation': {
+ 'Meta': {'object_name': 'Implantation', 'db_table': "u'ref_implantation'"},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'adresse_physique_bureau': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'adresse_physique_code_postal': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'adresse_physique_code_postal_avant_ville': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'adresse_physique_no': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'adresse_physique_pays': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'impl_adresse_physique'", 'to_field': "'code'", 'db_column': "'adresse_physique_pays'", 'to': "orm['datamaster_modeles.Pays']"}),
+ 'adresse_physique_precision': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'adresse_physique_precision_avant': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'adresse_physique_region': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'adresse_physique_rue': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'adresse_physique_ville': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'adresse_postale_boite_postale': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_bureau': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_code_postal': ('django.db.models.fields.CharField', [], {'max_length': '20', 'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_code_postal_avant_ville': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_no': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_pays': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'impl_adresse_postale'", 'to_field': "'code'", 'db_column': "'adresse_postale_pays'", 'to': "orm['datamaster_modeles.Pays']"}),
+ 'adresse_postale_precision': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_precision_avant': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_region': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_rue': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_ville': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'bureau_rattachement': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Implantation']", 'db_column': "'bureau_rattachement'"}),
+ 'code': ('django.db.models.fields.CharField', [], {'max_length': '255', 'unique': 'True'}),
+ 'code_meteo': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'commentaire': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'courriel': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
+ 'courriel_interne': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
+ 'date_extension': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_fermeture': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_inauguration': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_ouverture': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'fax': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'fax_interne': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'fuseau_horaire': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'hebergement_convention': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'hebergement_convention_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'hebergement_etablissement': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'modif_date': ('django.db.models.fields.DateField', [], {}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'nom_court': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'nom_long': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'region': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Region']", 'db_column': "'region'"}),
+ 'remarque': ('django.db.models.fields.TextField', [], {}),
+ 'responsable_implantation': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'statut': ('django.db.models.fields.IntegerField', [], {}),
+ 'telephone': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'telephone_interne': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'type': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'url': ('django.db.models.fields.URLField', [], {'max_length': '255', 'blank': 'True'})
+ },
+ 'datamaster_modeles.pays': {
+ 'Meta': {'object_name': 'Pays', 'db_table': "u'ref_pays'"},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'code': ('django.db.models.fields.CharField', [], {'max_length': '2', 'unique': 'True'}),
+ 'code_bureau': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Bureau']", 'to_field': "'code'", 'db_column': "'code_bureau'"}),
+ 'code_iso3': ('django.db.models.fields.CharField', [], {'max_length': '3', 'unique': 'True', 'blank': 'True'}),
+ 'developpement': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'monnaie': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'nord_sud': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'region': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Region']", 'db_column': "'region'"})
+ },
+ 'datamaster_modeles.region': {
+ 'Meta': {'object_name': 'Region', 'db_table': "u'ref_region'"},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'code': ('django.db.models.fields.CharField', [], {'max_length': '255', 'unique': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'implantation_bureau': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'gere_region'", 'db_column': "'implantation_bureau'", 'to': "orm['datamaster_modeles.Implantation']"}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+ },
+ 'rh_v1.classement': {
+ 'Meta': {'object_name': 'Classement'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'coefficient': ('django.db.models.fields.FloatField', [], {}),
+ 'commentaire': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'degre': ('django.db.models.fields.IntegerField', [], {}),
+ 'echelon': ('django.db.models.fields.IntegerField', [], {}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'type': ('django.db.models.fields.CharField', [], {'max_length': '10'})
+ },
+ 'rh_v1.devise': {
+ 'Meta': {'object_name': 'Devise'},
+ 'code': ('django.db.models.fields.CharField', [], {'max_length': '10', 'unique': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+ },
+ 'rh_v1.employe': {
+ 'Meta': {'object_name': 'Employe'},
+ 'adresse': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'code_postal': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'commentaire': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_entree': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_maj': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'date_naissance': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'genre': ('django.db.models.fields.CharField', [], {'max_length': '1', 'null': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'nationalite': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nationalite'", 'to_field': "'code'", 'db_column': "'nationalite'", 'to': "orm['datamaster_modeles.Pays']"}),
+ 'no_rue': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'pays': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'pays'", 'db_column': "'pays'", 'to_field': "'code'", 'to': "orm['datamaster_modeles.Pays']", 'blank': 'True', 'null': 'True'}),
+ 'prenom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'province': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'situation_famille': ('django.db.models.fields.CharField', [], {'max_length': '1', 'null': 'True', 'blank': 'True'}),
+ 'tel_cellulaire': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'tel_domicile': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'ville': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'})
+ },
+ 'rh_v1.familleemploi': {
+ 'Meta': {'object_name': 'FamilleEmploi'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+ },
+ 'rh_v1.organismebstg': {
+ 'Meta': {'object_name': 'OrganismeBstg'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'type': ('django.db.models.fields.CharField', [], {'max_length': '10'})
+ },
+ 'rh_v1.poste': {
+ 'Meta': {'object_name': 'Poste'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'implantation': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'db_column': "'implantation'", 'to': "orm['datamaster_modeles.Implantation']"}),
+ 'proportion': ('django.db.models.fields.CharField', [], {'max_length': '10'}),
+ 'type_poste': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['rh_v1.TypePoste']", 'db_column': "'type_poste'"})
+ },
+ 'rh_v1.service': {
+ 'Meta': {'object_name': 'Service'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+ },
+ 'rh_v1.statut': {
+ 'Meta': {'object_name': 'Statut'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'code': ('django.db.models.fields.CharField', [], {'max_length': '25', 'unique': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'type_contrat_categorie': ('django.db.models.fields.CharField', [], {'max_length': '10'})
+ },
+ 'rh_v1.typecontrat': {
+ 'Meta': {'object_name': 'TypeContrat'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'categorie': ('django.db.models.fields.CharField', [], {'max_length': '10'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'nom_long': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+ },
+ 'rh_v1.typeposte': {
+ 'Meta': {'object_name': 'TypePoste'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'description': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'famille_emploi': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['rh_v1.FamilleEmploi']", 'db_column': "'famille_emploi'"}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'is_responsable': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'nom_feminin': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+ },
+ 'rh_v1.typeremuneration': {
+ 'Meta': {'object_name': 'TypeRemuneration'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'nature_remuneration': ('django.db.models.fields.CharField', [], {'max_length': '30'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'type_paiement': ('django.db.models.fields.CharField', [], {'max_length': '30'})
+ },
+ 'rh_v1.valeurpoint': {
+ 'Meta': {'object_name': 'ValeurPoint'},
+ 'annee': ('django.db.models.fields.IntegerField', [], {}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'implantation': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'valeurs_point'", 'db_column': "'implantation'", 'to': "orm['datamaster_modeles.Implantation']"}),
+ 'valeur': ('django.db.models.fields.FloatField', [], {})
+ },
+ 'workflow.workflowcommentaire': {
+ 'Meta': {'object_name': 'WorkflowCommentaire'},
+ 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
+ 'date': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'etat_final': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'etat_initial': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}),
+ 'owner': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']"}),
+ 'texte': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'})
+ }
+ }
+
+ complete_apps = ['dae']
--- /dev/null
+# encoding: utf-8
+import datetime
+from south.db import db
+from south.v2 import SchemaMigration
+from django.db import models
+
+class Migration(SchemaMigration):
+
+ def forwards(self, orm):
+
+ # Adding field 'Poste.type_intervention'
+ db.add_column('dae_poste', 'type_intervention', self.gf('django.db.models.fields.CharField')(default='', max_length=1), keep_default=False)
+
+
+ def backwards(self, orm):
+
+ # Deleting field 'Poste.type_intervention'
+ db.delete_column('dae_poste', 'type_intervention')
+
+
+ models = {
+ 'auth.group': {
+ 'Meta': {'object_name': 'Group'},
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '80', 'unique': 'True'}),
+ 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
+ },
+ 'auth.permission': {
+ 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'},
+ 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
+ },
+ 'auth.user': {
+ 'Meta': {'object_name': 'User'},
+ 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
+ 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
+ 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
+ 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
+ 'username': ('django.db.models.fields.CharField', [], {'max_length': '30', 'unique': 'True'})
+ },
+ 'contenttypes.contenttype': {
+ 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
+ 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
+ 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
+ },
+ 'dae.dossier': {
+ 'Meta': {'object_name': 'Dossier'},
+ 'classement': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Classement']"}),
+ 'classement_anterieur': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Classement']"}),
+ 'classement_titulaire_anterieur': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Classement']"}),
+ 'compte_compta': ('django.db.models.fields.CharField', [], {'default': "'aucun'", 'max_length': '10'}),
+ 'compte_courriel': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'contrat_date_debut': ('django.db.models.fields.DateField', [], {}),
+ 'contrat_date_fin': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_creation': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'devise': ('django.db.models.fields.related.ForeignKey', [], {'default': '5', 'related_name': "'+'", 'to': "orm['rh_v1.Devise']"}),
+ 'employe': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to': "orm['dae.Employe']"}),
+ 'employe_anterieur': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Employe']"}),
+ 'etat': ('django.db.models.fields.CharField', [], {'default': 'None', 'max_length': '20', 'null': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'justif_nouveau_commentaire': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'justif_nouveau_salaire': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'justif_nouveau_statut': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'justif_nouveau_tmp_remplacement': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'justif_rempl_commentaire': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'justif_rempl_evaluation': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'justif_rempl_salaire': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'justif_rempl_statut_employe': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'justif_rempl_type_contrat': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'organisme_bstg': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.OrganismeBstg']"}),
+ 'organisme_bstg_autre': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'poste': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to': "orm['dae.Poste']"}),
+ 'regime_travail': ('django.db.models.fields.DecimalField', [], {'default': '100.0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'regime_travail_nb_heure_semaine': ('django.db.models.fields.DecimalField', [], {'default': '35.0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'remplacement': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'salaire': ('django.db.models.fields.DecimalField', [], {'default': 'None', 'null': 'True', 'max_digits': '12', 'decimal_places': '2'}),
+ 'salaire_anterieur': ('django.db.models.fields.DecimalField', [], {'default': 'None', 'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'salaire_titulaire_anterieur': ('django.db.models.fields.DecimalField', [], {'default': 'None', 'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'statut': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to': "orm['rh_v1.Statut']"}),
+ 'statut_anterieur': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Statut']"}),
+ 'statut_residence': ('django.db.models.fields.CharField', [], {'default': "'local'", 'max_length': '10'}),
+ 'statut_titulaire_anterieur': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Statut']"}),
+ 'type_contrat': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to': "orm['rh_v1.TypeContrat']"})
+ },
+ 'dae.dossiercomparaison': {
+ 'Meta': {'object_name': 'DossierComparaison'},
+ 'devise': ('django.db.models.fields.related.ForeignKey', [], {'default': '5', 'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Devise']"}),
+ 'dossier': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'comparaisons'", 'to': "orm['dae.Dossier']"}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'implantation': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Implantation']", 'null': 'True', 'blank': 'True'}),
+ 'montant': ('django.db.models.fields.IntegerField', [], {'null': 'True'}),
+ 'montant_euros': ('django.db.models.fields.IntegerField', [], {'null': 'True'}),
+ 'personne': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'poste': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'})
+ },
+ 'dae.dossierpiece': {
+ 'Meta': {'object_name': 'DossierPiece'},
+ 'dossier': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['dae.Dossier']"}),
+ 'fichier': ('django.db.models.fields.files.FileField', [], {'max_length': '100'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+ },
+ 'dae.employe': {
+ 'Meta': {'object_name': 'Employe'},
+ 'genre': ('django.db.models.fields.CharField', [], {'max_length': '1'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'id_rh': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'null': 'True', 'to': "orm['rh_v1.Employe']"}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'prenom': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+ },
+ 'dae.poste': {
+ 'Meta': {'object_name': 'Poste'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'appel': ('django.db.models.fields.CharField', [], {'default': "'interne'", 'max_length': '10'}),
+ 'autre_max': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'autre_min': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'charges_patronales_max': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'charges_patronales_min': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'classement_max': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Classement']"}),
+ 'classement_min': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.Classement']"}),
+ 'comp_autre_max': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_autre_min': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_fonctionpub_max': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_fonctionpub_min': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_locale_max': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_locale_min': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_ong_max': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_ong_min': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_universite_max': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'comp_universite_min': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2', 'blank': 'True'}),
+ 'date_creation': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_debut': ('django.db.models.fields.DateField', [], {}),
+ 'date_fin': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'devise_comparaison': ('django.db.models.fields.related.ForeignKey', [], {'default': '5', 'related_name': "'+'", 'to': "orm['rh_v1.Devise']"}),
+ 'devise_max': ('django.db.models.fields.related.ForeignKey', [], {'default': '5', 'related_name': "'+'", 'to': "orm['rh_v1.Devise']"}),
+ 'devise_min': ('django.db.models.fields.related.ForeignKey', [], {'default': '5', 'related_name': "'+'", 'to': "orm['rh_v1.Devise']"}),
+ 'etat': ('django.db.models.fields.CharField', [], {'default': 'None', 'max_length': '20', 'null': 'True', 'blank': 'True'}),
+ 'expatrie': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'id_rh': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'null': 'True', 'to': "orm['rh_v1.Poste']"}),
+ 'implantation': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Implantation']"}),
+ 'indemn_expat_max': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'indemn_expat_min': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'indemn_fct_max': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'indemn_fct_min': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'justification': ('django.db.models.fields.TextField', [], {}),
+ 'local': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
+ 'mise_a_disposition': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'pourvu': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'regime_travail': ('django.db.models.fields.DecimalField', [], {'default': '100.0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'regime_travail_nb_heure_semaine': ('django.db.models.fields.DecimalField', [], {'default': '35.0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'responsable': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to': "orm['rh_v1.Poste']"}),
+ 'salaire_max': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'salaire_min': ('django.db.models.fields.DecimalField', [], {'default': '0', 'max_digits': '12', 'decimal_places': '2'}),
+ 'service': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to': "orm['rh_v1.Service']"}),
+ 'type_intervention': ('django.db.models.fields.CharField', [], {'max_length': '1'}),
+ 'type_poste': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'null': 'True', 'to': "orm['rh_v1.TypePoste']"}),
+ 'valeur_point_max': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.ValeurPoint']"}),
+ 'valeur_point_min': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'blank': 'True', 'null': 'True', 'to': "orm['rh_v1.ValeurPoint']"})
+ },
+ 'dae.postefinancement': {
+ 'Meta': {'object_name': 'PosteFinancement'},
+ 'commentaire': ('django.db.models.fields.TextField', [], {}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'poste': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'financements'", 'to': "orm['dae.Poste']"}),
+ 'pourcentage': ('django.db.models.fields.DecimalField', [], {'max_digits': '12', 'decimal_places': '2'}),
+ 'type': ('django.db.models.fields.CharField', [], {'max_length': '1'})
+ },
+ 'dae.postepiece': {
+ 'Meta': {'object_name': 'PostePiece'},
+ 'fichier': ('django.db.models.fields.files.FileField', [], {'max_length': '100'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'poste': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['dae.Poste']"})
+ },
+ 'dae.remuneration': {
+ 'Meta': {'object_name': 'Remuneration'},
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'devise': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'to_field': "'code'", 'db_column': "'devise'", 'to': "orm['rh_v1.Devise']"}),
+ 'dossier': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['dae.Dossier']", 'db_column': "'dossier'"}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'montant': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '12', 'decimal_places': '2'}),
+ 'precision': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'type': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'db_column': "'type'", 'to': "orm['rh_v1.TypeRemuneration']"}),
+ 'user_creation': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'})
+ },
+ 'datamaster_modeles.bureau': {
+ 'Meta': {'object_name': 'Bureau', 'db_table': "u'ref_bureau'"},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'code': ('django.db.models.fields.CharField', [], {'max_length': '255', 'unique': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'implantation': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Implantation']", 'db_column': "'implantation'"}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'nom_court': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'nom_long': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'region': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Region']", 'db_column': "'region'"})
+ },
+ 'datamaster_modeles.implantation': {
+ 'Meta': {'object_name': 'Implantation', 'db_table': "u'ref_implantation'"},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'adresse_physique_bureau': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'adresse_physique_code_postal': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'adresse_physique_code_postal_avant_ville': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'adresse_physique_no': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
+ 'adresse_physique_pays': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'impl_adresse_physique'", 'to_field': "'code'", 'db_column': "'adresse_physique_pays'", 'to': "orm['datamaster_modeles.Pays']"}),
+ 'adresse_physique_precision': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'adresse_physique_precision_avant': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'adresse_physique_region': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'adresse_physique_rue': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'adresse_physique_ville': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'adresse_postale_boite_postale': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_bureau': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_code_postal': ('django.db.models.fields.CharField', [], {'max_length': '20', 'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_code_postal_avant_ville': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_no': ('django.db.models.fields.CharField', [], {'max_length': '30', 'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_pays': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'impl_adresse_postale'", 'to_field': "'code'", 'db_column': "'adresse_postale_pays'", 'to': "orm['datamaster_modeles.Pays']"}),
+ 'adresse_postale_precision': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_precision_avant': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_region': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_rue': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'adresse_postale_ville': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'bureau_rattachement': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Implantation']", 'db_column': "'bureau_rattachement'"}),
+ 'code': ('django.db.models.fields.CharField', [], {'max_length': '255', 'unique': 'True'}),
+ 'code_meteo': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'commentaire': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'courriel': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
+ 'courriel_interne': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
+ 'date_extension': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_fermeture': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_inauguration': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_ouverture': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'fax': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'fax_interne': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'fuseau_horaire': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'hebergement_convention': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}),
+ 'hebergement_convention_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'hebergement_etablissement': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'modif_date': ('django.db.models.fields.DateField', [], {}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'nom_court': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'nom_long': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'region': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Region']", 'db_column': "'region'"}),
+ 'remarque': ('django.db.models.fields.TextField', [], {}),
+ 'responsable_implantation': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
+ 'statut': ('django.db.models.fields.IntegerField', [], {}),
+ 'telephone': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'telephone_interne': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
+ 'type': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'url': ('django.db.models.fields.URLField', [], {'max_length': '255', 'blank': 'True'})
+ },
+ 'datamaster_modeles.pays': {
+ 'Meta': {'object_name': 'Pays', 'db_table': "u'ref_pays'"},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'code': ('django.db.models.fields.CharField', [], {'max_length': '2', 'unique': 'True'}),
+ 'code_bureau': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Bureau']", 'to_field': "'code'", 'db_column': "'code_bureau'"}),
+ 'code_iso3': ('django.db.models.fields.CharField', [], {'max_length': '3', 'unique': 'True', 'blank': 'True'}),
+ 'developpement': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'monnaie': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'nord_sud': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'region': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['datamaster_modeles.Region']", 'db_column': "'region'"})
+ },
+ 'datamaster_modeles.region': {
+ 'Meta': {'object_name': 'Region', 'db_table': "u'ref_region'"},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'code': ('django.db.models.fields.CharField', [], {'max_length': '255', 'unique': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'implantation_bureau': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'gere_region'", 'db_column': "'implantation_bureau'", 'to': "orm['datamaster_modeles.Implantation']"}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+ },
+ 'rh_v1.classement': {
+ 'Meta': {'object_name': 'Classement'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'coefficient': ('django.db.models.fields.FloatField', [], {}),
+ 'commentaire': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'degre': ('django.db.models.fields.IntegerField', [], {}),
+ 'echelon': ('django.db.models.fields.IntegerField', [], {}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'type': ('django.db.models.fields.CharField', [], {'max_length': '10'})
+ },
+ 'rh_v1.devise': {
+ 'Meta': {'object_name': 'Devise'},
+ 'code': ('django.db.models.fields.CharField', [], {'max_length': '10', 'unique': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+ },
+ 'rh_v1.employe': {
+ 'Meta': {'object_name': 'Employe'},
+ 'adresse': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'code_postal': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'commentaire': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_creation': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'date_entree': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'date_maj': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'date_naissance': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
+ 'genre': ('django.db.models.fields.CharField', [], {'max_length': '1', 'null': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'nationalite': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'nationalite'", 'to_field': "'code'", 'db_column': "'nationalite'", 'to': "orm['datamaster_modeles.Pays']"}),
+ 'no_rue': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'pays': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'pays'", 'db_column': "'pays'", 'to_field': "'code'", 'to': "orm['datamaster_modeles.Pays']", 'blank': 'True', 'null': 'True'}),
+ 'prenom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'province': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'situation_famille': ('django.db.models.fields.CharField', [], {'max_length': '1', 'null': 'True', 'blank': 'True'}),
+ 'tel_cellulaire': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'tel_domicile': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'ville': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'})
+ },
+ 'rh_v1.familleemploi': {
+ 'Meta': {'object_name': 'FamilleEmploi'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+ },
+ 'rh_v1.organismebstg': {
+ 'Meta': {'object_name': 'OrganismeBstg'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'type': ('django.db.models.fields.CharField', [], {'max_length': '10'})
+ },
+ 'rh_v1.poste': {
+ 'Meta': {'object_name': 'Poste'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'implantation': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'+'", 'db_column': "'implantation'", 'to': "orm['datamaster_modeles.Implantation']"}),
+ 'proportion': ('django.db.models.fields.CharField', [], {'max_length': '10'}),
+ 'type_poste': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['rh_v1.TypePoste']", 'db_column': "'type_poste'"})
+ },
+ 'rh_v1.service': {
+ 'Meta': {'object_name': 'Service'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+ },
+ 'rh_v1.statut': {
+ 'Meta': {'object_name': 'Statut'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'code': ('django.db.models.fields.CharField', [], {'max_length': '25', 'unique': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'type_contrat_categorie': ('django.db.models.fields.CharField', [], {'max_length': '10'})
+ },
+ 'rh_v1.typecontrat': {
+ 'Meta': {'object_name': 'TypeContrat'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'categorie': ('django.db.models.fields.CharField', [], {'max_length': '10'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'nom_long': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+ },
+ 'rh_v1.typeposte': {
+ 'Meta': {'object_name': 'TypePoste'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'date_modification': ('django.db.models.fields.DateField', [], {'auto_now': 'True', 'blank': 'True'}),
+ 'description': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'famille_emploi': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['rh_v1.FamilleEmploi']", 'db_column': "'famille_emploi'"}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'is_responsable': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'nom_feminin': ('django.db.models.fields.CharField', [], {'max_length': '255'})
+ },
+ 'rh_v1.typeremuneration': {
+ 'Meta': {'object_name': 'TypeRemuneration'},
+ 'actif': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'nature_remuneration': ('django.db.models.fields.CharField', [], {'max_length': '30'}),
+ 'nom': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
+ 'type_paiement': ('django.db.models.fields.CharField', [], {'max_length': '30'})
+ },
+ 'rh_v1.valeurpoint': {
+ 'Meta': {'object_name': 'ValeurPoint'},
+ 'annee': ('django.db.models.fields.IntegerField', [], {}),
+ 'id': ('django.db.models.fields.IntegerField', [], {'primary_key': 'True'}),
+ 'implantation': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'valeurs_point'", 'db_column': "'implantation'", 'to': "orm['datamaster_modeles.Implantation']"}),
+ 'valeur': ('django.db.models.fields.FloatField', [], {})
+ },
+ 'workflow.workflowcommentaire': {
+ 'Meta': {'object_name': 'WorkflowCommentaire'},
+ 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
+ 'date': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}),
+ 'etat_final': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'etat_initial': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
+ 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+ 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}),
+ 'owner': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']"}),
+ 'texte': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'})
+ }
+ }
+
+ complete_apps = ['dae']
('interne', 'Interne'),
('externe', 'Externe'),
)
+POSTE_ACTION = (
+ ('N', u"Nouveau poste"),
+ ('M', u"Poste existant"),
+ ('E', u"Évolution de poste"),
+)
+
class Poste(PosteWorkflow, models.Model):
+
+ type_intervention = models.CharField(max_length=1, choices=POSTE_ACTION, default='N')
+
# Modèle existant
id_rh = models.ForeignKey(rh.Poste, null=True, related_name='+',
editable=False,
devise_max = models.ForeignKey(rh.Devise, default=5, related_name='+')
salaire_min = models.DecimalField(max_digits=12, decimal_places=2,
default=0)
- salaire_max = models.DecimalField(max_digits=12, decimal_places=2,
- default=0)
- indemn_min = models.DecimalField(max_digits=12, decimal_places=2,
- default=0)
- indemn_max = models.DecimalField(max_digits=12, decimal_places=2,
- default=0)
- autre_min = models.DecimalField(max_digits=12, decimal_places=2,
- default=0)
- autre_max = models.DecimalField(max_digits=12, decimal_places=2,
- default=0)
+ salaire_max = models.DecimalField(max_digits=12, decimal_places=2, default=0)
+ indemn_expat_min = models.DecimalField(max_digits=12, decimal_places=2, default=0)
+ indemn_expat_max = models.DecimalField(max_digits=12, decimal_places=2, default=0)
+ indemn_fct_min = models.DecimalField(max_digits=12, decimal_places=2, default=0)
+ indemn_fct_max = models.DecimalField(max_digits=12, decimal_places=2, default=0)
+ charges_patronales_min = models.DecimalField(max_digits=12, decimal_places=2, default=0)
+ charges_patronales_max = models.DecimalField(max_digits=12, decimal_places=2, default=0)
+ autre_min = models.DecimalField(max_digits=12, decimal_places=2, default=0)
+ autre_max = models.DecimalField(max_digits=12, decimal_places=2, default=0)
# Comparatifs de rémunération
devise_comparaison = models.ForeignKey(rh.Devise, related_name='+',
#####################
def get_couts_minimum(self):
- return (float)(self.salaire_min + self.indemn_min + self.autre_min)
+ return (float)(self.salaire_min + self.indemn_expat_min + + self.indemn_fct_min + self.charges_patronales_min + self.autre_min)
def get_taux_minimum(self):
taux_changes = rh.TauxChange.objects.filter(devise=self.devise_min).order_by('annee')
return self.get_couts_minimum() * self.get_taux_minimum()
def get_couts_maximum(self):
- return (float)(self.salaire_max + self.indemn_max + self.autre_max)
+ return (float)(self.salaire_max + self.indemn_expat_max + + self.indemn_fct_max + self.charges_patronales_max + self.autre_max)
def get_taux_maximum(self):
taux_changes = rh.TauxChange.objects.filter(devise=self.devise_max).order_by('annee')
tx = 1
return (float)(tx) * (float)(self.salaire)
- def get_couts_auf(self):
+ def get_remunerations_brutes(self):
"""
- On retire les MAD BSTG
+ 1 Salaire de base
+ 3 Indemnité de base
+ 4 Indemnité d'expatriation
+ 5 Indemnité pour frais
+ 6 Indemnité de logement
+ 7 Indemnité de fonction
+ 8 Indemnité de responsabilité
+ 9 Indemnité de transport
+ 10 Indemnité compensatrice
+ 11 Indemnité de subsistance
+ 12 Indemnité différentielle
+ 13 Prime d'installation
+ 14 Billet d'avion
+ 15 Déménagement
+ 16 Indemnité de départ
+ 18 Prime de 13ième mois
+ 19 Prime d'intérim
"""
- return [r for r in self.remuneration_set.all() if r.type_id not in (2, )]
-
- def get_total_couts_auf(self):
+ ids = [1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,18,19]
+ return [r for r in self.remuneration_set.all() if r.type_id in ids]
+
+ def get_charges_salariales(self):
+ """
+ 20 Charges salariales ?
+ """
+ ids = [20, ]
+ return [r for r in self.remuneration_set.all() if r.type_id in ids]
+
+ def get_total_charges_salariales(self):
total = 0.0
- for r in self.get_couts_auf():
+ for r in self.get_charges_salariales():
total += r.montant_euro()
return total
- def get_aides_auf(self):
+ def get_charges_patronales(self):
+ """
+ 17 Charges patronales
+ """
+ ids = [17, ]
+ return [r for r in self.remuneration_set.all() if r.type_id in ids]
+
+ def get_total_charges_patronales(self):
+ total = 0.0
+ for r in self.get_charges_patronales():
+ total += r.montant_euro()
+ return total
+
+ def get_salaire_brut(self):
+ """
+ somme des rémuérations brutes
+ """
+ total = 0.0
+ for r in self.get_remunerations_brutes():
+ total += r.montant_euro()
+ return total
+
+ def get_salaire_net(self):
+ """
+ salaire brut - charges salariales
+ """
+ total_charges = 0.0
+ for r in self.get_charges_salariales():
+ total_charges += r.montant_euro()
+ return self.get_salaire_brut() - total_charges
+
+ def get_couts_auf(self):
+ """
+ salaire net + charges patronales
+ """
+ total_charges = 0.0
+ for r in self.get_charges_patronales():
+ total_charges += r.montant_euro()
+ return self.get_salaire_net() + total_charges
+
+ def get_remunerations_tierces(self):
"""
- On récupère les MAD BSTG
+ 2 Salaire MAD
"""
return [r for r in self.remuneration_set.all() if r.type_id in (2, )]
- def get_total_aides_auf(self):
+ def get_total_remunerations_tierces(self):
total = 0.0
- for r in self.get_aides_auf():
+ for r in self.get_remunerations_tierces():
total += r.montant_euro()
return total
- def get_total_remun(self):
- return self.get_total_couts_auf() + self.get_total_aides_auf()
# Tester l'enregistrement car les models.py sont importés au complet
if not reversion.is_registered(Dossier):
<fieldset>
<h2>Classement et salaire de base</h2>
+
+<h3>Ancien dossier <span class="info">(le cas échéant)</span></h3>
+{% if dossier.employe.id_rh.dossier_set.count > 0 %}
<table>
<tbody>
<tr>
<td colspan="7">
- <h3>Ancien dossier <span class="info">(le cas échéant)</span></h3>
- </td>
- </tr>
- <tr>
- <td colspan="7">
{{ dossier.employe }} <span class="info">{{ dossier.employe.id_rh.dossier_set.all.reverse }}</span>
</td>
</tr>
<td>{{ dossier.salaire_anterieur|floatformat:0 }}</td>
<td>{{ dossier.statut_anterieur|default:"" }}</td>
<td>{{ dossier.type_contrat|default:"" }}</td>
- <td colspan="3"></td>
- </tr>
- <tr>
- <td colspan="7">
- <h3>Précédent titulaire <span class="info">(le cas échéant)</span></h3>
- </td>
</tr>
+ </tbody>
+</table>
+{% else %}
+ <p>Il n'y a pas d'ancien dossier pour ce poste</p>
+{% endif %}
+
+<h3>Précédent titulaire <span class="info">(le cas échéant)</span></h3>
+{% if dossier.classement_titulaire_anterieur %}
+<table>
+ <tbody>
<tr>
<td colspan="7">
- {{ dossier.employe_anterieur }}
+ {{ dossier.employe_anterieur|default:"" }}
</td>
</tr>
<tr>
<th>Classement du titulaire antérieur</th>
<th colspan="4">Salaire du titulaire antérieur</th>
<th>Statut du titulaire antérieur</th>
- <th></th>
</tr>
<tr>
- <td>{{ dossier.classement_titulaire_anterieur }}</td>
+ <td>{{ dossier.classement_titulaire_anterieur|default:"" }}</td>
<td>{{ dossier.salaire_titulaire_anterieur|floatformat:0 }}</td>
- <td>{{ form.instance.statut_titulaire_anterieur }}</td>
- <td></td>
- </tr>
- <tr>
- <td colspan="7">
- <h3>Proposition de classement</h3>
- </td>
+ <td>{{ dossier.statut_titulaire_anterieur|default:"" }}</td>
</tr>
+ </tbody>
+<table>
+{% else %}
+ <p>Il n'y a pas de précédent titulaire</p>
+{% endif %}
+
+<h3>Proposition de classement</h3>
+<table>
+ <tbody>
<tr>
<th>Classement proposé</th>
- <th colspan="6">Salaire proposé</span>
-</th>
+ <th colspan="6">Salaire proposé</span></th>
</tr>
<tr>
<td>{{ dossier.classement }}</td>
</tr>
</tbody>
</table>
+
</fieldset>
<fieldset>
<th>Précision</th>
</tr>
-{% if dossier.get_couts_auf %}
<tr>
- <th colspan="5">Coûts AUF</th>
- <th id="sous-total-cout" class="montant">{{ dossier.get_total_couts_auf|floatformat:0 }}€</th>
+ <th colspan="5">Salaire brut</th>
+ <th id="sous-total-cout" class="montant">{{ dossier.get_salaire_brut|floatformat:0 }}€</th>
<th></th>
</tr>
-{% endif %}
-{% for remun in dossier.get_couts_auf %}
+{% for remun in dossier.get_remunerations_brutes %}
<tr class="cout">
<td>{{ remun.type }}</td>
<td>{{ remun.devise }}</td>
</tr>
{% endfor %}
-{% if dossier.get_aides_auf %}
<tr>
- <th colspan="5">BSTG - Salaire de mise à disposition</th>
- <th id="sous-total-aide" class="montant">{{ dossier.get_total_aides_auf|floatformat:0 }}€</th>
+ <th colspan="5">Charges salariales</th>
+ <th id="sous-total-aide" class="montant">{{ dossier.get_total_charges_salariales|floatformat:0 }}€</th>
<th></th>
</tr>
-{% endif %}
-{% for remun in dossier.get_aides_auf %}
+{% for remun in dossier.get_charges_salariales %}
+ <tr class="aide">
+ <td>{{ remun.type }}</td>
+ <td>{{ remun.devise }}</td>
+ <td class="montant">{{ remun.montant_mois|floatformat:0 }}</td>
+ <td class="montant">{{ remun.montant|floatformat:0 }}</td>
+ <td class="montant">{{ remun.montant_euro_mois|floatformat:0 }}</td>
+ <td class="montant">{{ remun.montant_euro|floatformat:0 }}</td>
+ <td>{{ remun.precision }}</td>
+ </tr>
+{% endfor %}
+
+<tr>
+ <th colspan="5">Charges patronales</th>
+ <th id="sous-total-cout" class="montant">{{ dossier.get_total_charges_patronales|floatformat:0 }}€</th>
+ <th></th>
+</tr>
+
+{% for remun in dossier.get_charges_patronales %}
<tr class="aide">
<td>{{ remun.type }}</td>
<td>{{ remun.devise }}</td>
{% endfor %}
<tr>
- <th colspan="5">TOTAL</th>
- <th id="remun-total" class="montant">{{ dossier.get_total_remun|floatformat:0 }}€</th>
+ <th colspan="5">Côuts AUF</th>
+ <th id="sous-total-cout" class="montant">{{ dossier.get_couts_auf|floatformat:0 }}€</th>
<th></th>
</tr>
+
+
+{% if dossier.get_remunerations_tierces %}
+<tr>
+ <th colspan="5">Autres rémunérations</th>
+ <th id="sous-total-cout" class="montant">{{ dossier.get_total_remunerations_tierces|floatformat:0 }}€</th>
+ <th></th>
+</tr>
+{% endif %}
+
+{% for remun in dossier.get_remunerations_tierces %}
+ <tr class="aide">
+ <td>{{ remun.type }}</td>
+ <td>{{ remun.devise }}</td>
+ <td class="montant">{{ remun.montant_mois|floatformat:0 }}</td>
+ <td class="montant">{{ remun.montant|floatformat:0 }}</td>
+ <td class="montant">{{ remun.montant_euro_mois|floatformat:0 }}</td>
+ <td class="montant">{{ remun.montant_euro|floatformat:0 }}</td>
+ <td>{{ remun.precision }}</td>
+ </tr>
+{% endfor %}
+
{% block title %}RH - DAE - Embauche{% endblock %}
{% block titre %}Ressources humaines{% endblock %}
-{% block sous_titre %}Demande d'autorisation d'embauche{% endblock %}
+{% block sous_titre %}Demande d'autorisation d'engagement{% endblock %}
{% block extrahead %}
<script src="{{ MEDIA_URL }}js/jquery-1.5.1.min.js"
{% block main %}
-<h1>Demandes d'autorisation d'engagement de personnel</h1>
+<h1>Demande d'autorisation d'engagement de personnel</h1>
<form action="" method="post" enctype="multipart/form-data">
{% if step == 'poste' %}
<h2 class="section">SECTION 1 - POSTE</h2>
</td>
</tr>
</table>
- <input type="submit" name="continue" value="Sauvegarder et continuer" />
+ <input type="submit" name="continue" value="Sauvegarder (et ajouter des lignes)" />
<input type="submit" name="save" value="Sauvegarder" />
</form>
{% endif %}
{% block title %}RH - DAE - Embauche{% endblock %}
{% block titre %}Ressources humaines{% endblock %}
-{% block sous_titre %}Demande d'autorisation d'embauche{% endblock %}
+{% block sous_titre %}Demande d'autorisation d'engagement{% endblock %}
{% block extrahead %}
<link rel="stylesheet" type="text/css" href="{{ MEDIA_URL }}css/dae.css" />
{% endblock %}
{% block main %}
-<h1 class="gauche">Demandes d'autorisation d'engagement de personnel</h1>
+<h1 class="gauche">Demande d'autorisation d'engagement de personnel</h1>
<a class="droite bouton-action" target="_blank" href="?mode=vpdf">Format impression</a>
{% if dossier|est_editable %}<a class="droite bouton-action" href="{% url embauche dossier.poste.key dossier.id %}">Modifier</a>{% endif %}
<div class="visualClear"></div>
<fieldset>
<h2>Validations</h2>
- <ul>
+ <table>
+ <tr>
+ <th>Action</th>
+ <th>Destinataire de l'action</th>
+ <th>Commentaire</th>
+ </tr>
{% for commentaire in dossier.historique_desc %}
- <li>{{ commentaire }}</li>
+ {% include "dae/ligne_validation.html" %}
{% endfor %}
- </ul>
+ </table>
<h2>Votre validation (ou commentaire)</h2>
- <p>Ce dossier est présentement à l'état <span class="note">{{ poste.get_etat_display }}</span>.</p>
- <ul>
- <li>Si vous laissez le statut actuel, votre commentaire sera enregistré.</li>
- <li>Si vous sélectionnez un autre statut, votre action sera considérée comme une validation, mais vous pourrez toujours ajouter un commentaire par la suite.</li>
- </ul>
+ <p>Ce dossier est actuellement à l'état <span class="note">{{ dossier.get_etat_display }}</span>.</p>
<form action="" method="post">
<table>
- {{ validationForm }}
+ {{ validationForm.commentaire }}
</table>
- <input type="submit" value="valider" />
+ {{ validationForm.get_input_etats_as_buttons|safe }}
</form>
</fieldset>
</head>
<body>
-<h1>Demandes d'autorisation d'engagement de personnel</h1>
+<h1>Demande d'autorisation d'engagement de personnel</h1>
<h2 class="section">SECTION 1 - POSTE</h2>
{% with dossier.poste as poste %}
{% block title %}RH - DAE - Embauches{% endblock %}
{% block titre %}Ressources humaines{% endblock %}
-{% block sous_titre %}Demande d'autorisation d'embauche{% endblock %}
+{% block sous_titre %}Demande d'autorisation d'engagement{% endblock %}
{% block main %}
<h1>Liste des demandes d'autorisation d'engagement de personnel</h1>
{% block title %}RH - DAE{% endblock %}
{% block titre %}Ressources humaines{% endblock %}
-{% block sous_titre %}Demande d'autorisation d'embauche{% endblock %}
+{% block sous_titre %}Demande d'autorisation d'engagement{% endblock %}
{% block main %}
<h1>Demande d'autorisation d'embauche (DAE)</h1>
--- /dev/null
+<tr>
+<td>
+ {% if commentaire.etat_final == 'REFUSE' %}
+ {{ commentaire.owner }} a refusé la demande le {{ commentaire.date|date:"d M Y" }}
+ {% else %}
+ {{ commentaire.owner }} a validé la demande le {{ commentaire.date|date:"d M Y"}}
+ {% endif %}
+</td>
+<td>
+ {{ commentaire.get_etat_final_label }}
+</td>
+<td>
+ {% if commentaire.texte %} ({{ commentaire.texte }}){% endif %}
+</td>
+</tr>
<form action="" method="post" enctype="multipart/form-data">
+ <div id="type_intervention">{{ form.type_intervention }}</div>
+
+ <div class="clear"></div>
+
<fieldset>
<h2>
{% if new %}
Poste existant : {{ poste.nom }} ({{ poste.implantation.nom }})
{% endif %}
</h2>
+
<table>
<tbody>
<tr>
<th>Valeur du point</th>
<th>Devise</th>
<th colspan="2">Salaire de base</th>
- <th colspan="2">Indemnité, responsabilité (le cas échéant)</th>
+ <th colspan="2">Indemnités d'expatriation</th>
+ <th colspan="2">Indemnités de fonction</th>
+ <th colspan="2">Charges patronales</th>
<th colspan="2">Autres</th>
<th colspan="2">TOTAL</th>
<th>Taux > €</th>
{{ form.salaire_min.errors }}
</td>
<td><span class="devise_code">EUR</span></td>
- <td>{{ form.indemn_min }} {{ form.indemn_min.errors }}</td>
+ <td>{{ form.indemn_expat_min }} {{ form.indemn_expat_min.errors }}</td>
+ <td><span class="devise_code">EUR</span></td>
+ <td>{{ form.indemn_fct_min }} {{ form.indemn_fct_min.errors }}</td>
+ <td><span class="devise_code">EUR</span></td>
+ <td>{{ form.charges_patronales_min }} {{ form.charges_patronales_min.errors }}</td>
<td><span class="devise_code">EUR</span></td>
<td>{{ form.autre_min }} {{ form.autre_min.errors }}</td>
<td><span class="devise_code">EUR</span></td>
{{ form.salaire_max.errors }}
</td>
<td><span class="devise_code">EUR</span></td>
- <td>{{ form.indemn_max }} {{ form.indemn_max.errors }}</td>
+ <td>{{ form.indemn_expat_max }} {{ form.indemn_expat_max.errors }}</td>
+ <td><span class="devise_code">EUR</span></td>
+ <td>{{ form.indemn_fct_max }} {{ form.indemn_fct_max.errors }}</td>
+ <td><span class="devise_code">EUR</span></td>
+ <td>{{ form.charges_patronales_max }} {{ form.charges_patronales_max.errors }}</td>
<td><span class="devise_code">EUR</span></td>
<td>{{ form.autre_max }} {{ form.autre_max.errors }}</td>
<td><span class="devise_code">EUR</span></td>
</div>
</fieldset>
- <input type="submit" name="continue" value="Sauvegarder et continuer" />
+ <input type="submit" name="continue" value="Sauvegarder (et ajouter des lignes)" />
<input type="submit" name="save" value="Sauvegarder" />
</form>
<fieldset>
<h2>Validations</h2>
-<ul>
+<table>
+<tr>
+ <th>Action</th>
+ <th>Destinataire de l'action</th>
+ <th>Commentaire</th>
+</tr>
{% for commentaire in poste.historique_desc %}
- <li>{{ commentaire }}</li>
+ {% include "dae/ligne_validation.html" %}
{% endfor %}
-</ul>
+</table>
-<h2>Votre validation (ou commentaire)</h2>
-<p>Ce poste est présentement à l'état <span class="note">{{ poste.get_etat_display }}</span>.</p>
-<ul>
- <li>Si vous laissez le statut actuel, votre commentaire sera enregistré.</li>
- <li>Si vous sélectionnez un autre statut, votre action sera considérée comme une validation, mais vous pourrez toujours ajouter un commentaire par la suite.</li>
-</ul>
+<h2>Votre validation</h2>
+<p>Le poste est actuellement à l'état : <span class="note">{{ poste.get_etat_display }}</span>.</p>
<form action="" method="post">
<table>
-{{ validationForm }}
+{{ validationForm.commentaire }}
</table>
-<input type="submit" value="valider" />
+{{ validationForm.get_input_etats_as_buttons|safe }}
</form>
</fieldset>
<fieldset>
+ <h2><label>Type d'intervention : </label>{{ poste.get_type_intervention_display }}</h2>
+</fieldset>
+
+<fieldset>
<h2>{{ poste.nom }} ({{ poste.implantation.nom }})</h2>
<table>
<tbody>
<th></th>
<th>Échelon AUF</th>
<th>Salaire de base</th>
- <th>Indemnité, responsabilité (le cas échéant)</th>
+ <th>Indemnités d'expatriation</th>
+ <th>Indemnités de fonction</th>
+ <th>Charges patronales</th>
<th>Autres</th>
<th>TOTAL</th>
<th>Taux > €</th>
<th>Minimum</th>
<td>{{ poste.classement_min }}</td>
<td class="montant">{{ poste.salaire_min|floatformat:0 }} {{ poste.devise_min.code }}</td>
- <td class="montant">{{ poste.indemn_min|floatformat:0 }} {{ poste.devise_min.code }}</td>
+ <td class="montant">{{ poste.indemn_expat_min|floatformat:0 }} {{ poste.devise_min.code }}</td>
+ <td class="montant">{{ poste.indemn_fct_min|floatformat:0 }} {{ poste.devise_min.code }}</td>
+ <td class="montant">{{ poste.charges_patronales_min|floatformat:0 }} {{ poste.devise_min.code }}</td>
<td class="montant">{{ poste.autre_min|floatformat:0 }} {{ poste.devise_min.code }}</td>
<td class="montant">{{ poste.get_couts_minimum|floatformat:0 }} {{ poste.devise_min.code }}</td>
<td>{{ poste.show_taux_minimum }}</td>
<th>Maximum</th>
<td>{{ poste.classement_max }}</td>
<td class="montant">{{ poste.salaire_max|floatformat:0 }} {{ poste.devise_max.code }}</td>
- <td class="montant">{{ poste.indemn_max|floatformat:0 }} {{ poste.devise_max.code }}</td>
+ <td class="montant">{{ poste.indemn_expat_max|floatformat:0 }} {{ poste.devise_max.code }}</td>
+ <td class="montant">{{ poste.indemn_fct_max|floatformat:0 }} {{ poste.devise_max.code }}</td>
+ <td class="montant">{{ poste.charges_patronales_max|floatformat:0 }} {{ poste.devise_max.code }}</td>
<td class="montant">{{ poste.autre_max|floatformat:0 }} {{ poste.devise_max.code }}</td>
<td class="montant">{{ poste.get_couts_maximum|floatformat:0 }} {{ poste.devise_max.code }}</td>
<td>{{ poste.show_taux_maximum }}</td>
{% block title %}RH - DAE - Postes{% endblock %}
{% block titre %}Ressources humaines{% endblock %}
-{% block sous_titre %}Demande d'autorisation d'embauche{% endblock %}
+{% block sous_titre %}Demande d'autorisation d'engagement{% endblock %}
{% block main %}
<h1>Liste des demandes d'autorisation de création de poste</h1>
from django import template
from project.dae.workflow import ETATS_EDITABLE
-from project.dae.workflow import grp_gestionnaires, grp_service_utilisateurs, grp_correspondants_rh, grp_administrateurs, grp_directeurs_bureau, grp_drh, grp_directeurs_service
+from project.dae.workflow import grp_gestionnaires, grp_service_utilisateurs, grp_correspondants_rh, grp_administrateurs, grp_directeurs_bureau, grp_drh, grp_directeurs_service, grp_correspondants_rh
register = template.Library()
@register.filter
def peut_ajouter(user):
for g in user.groups.all():
- if g in (grp_gestionnaires, grp_service_utilisateurs, grp_administrateurs, grp_drh, grp_directeurs_bureau, grp_directeurs_service):
+ if g in (grp_gestionnaires, grp_service_utilisateurs, grp_administrateurs, grp_drh, grp_directeurs_bureau, grp_directeurs_service, grp_correspondants_rh):
return True
return False
def is_user_dans_service(user):
employe = get_employe_from_user(user)
- return employe.implantation.bureau_rattachement_id == -1
+ return employe.implantation_id in (15, 19)
def is_user_dans_region(user):
employe = get_employe_from_user(user)
- return employe.implantation.bureau_rattachement_id != -1
+ return not is_user_dans_service(user)
if validationForm.is_valid():
validationForm.save()
messages.add_message(request, messages.SUCCESS, "La validation a été enregistrée.")
- return redirect('poste_consulter', key=key)
+ return redirect('dae_postes_liste')
else:
validationForm = PosteWorkflowForm(instance=poste, request=request)
if validationForm.is_valid():
validationForm.save()
messages.add_message(request, messages.SUCCESS, "La validation a été enregistrée.")
- return redirect('embauche_consulter', dossier_id=dossier.id)
+ return redirect('dae_embauches_liste')
else:
validationForm = DossierWorkflowForm(instance=dossier, request=request)
POSTE_ETAT_DRH_FINALISATION : u'Retour à la DRH et région',
}
+#libellés états pour boutons
+POSTE_ETATS_BOUTONS = {
+ POSTE_ETAT_REFUSE : u"Refuser",
+ POSTE_ETAT_DIRECTEUR_BUREAU_OU_SERVICE : u"Envoyer au directeur de bureau, pôle ou service",
+ POSTE_ETAT_ADMINISTRATEUR : u"Envoyer à l'adminstrateur",
+ POSTE_ETAT_DRH_CONTROLE : u"Envoyer à la DRH (validation)",
+ POSTE_ETAT_POLE_FINANCIER : u"Envoyer au pôle finances",
+ POSTE_ETAT_HAUTE_DIRECTION : u"Envoyer à la haute direction",
+ POSTE_ETAT_DRH_FINALISATION : u'Envoyer à la DRH (traitement)',
+ }
+
# définition du worflow séquentiel
POSTE_ACTIONS = {
POSTE_ACTION_ENVOYER_REFUSE : {
},
POSTE_ACTION_ENVOYER_ADMINISTRATEUR : {
'nom' : u'Envoyer',
- 'etat_initial' : POSTE_ETAT_DIRECTEUR_BUREAU_OU_SERVICE,
+ 'etat_initial' : (POSTE_ETAT_REFUSE, POSTE_ETAT_DIRECTEUR_BUREAU_OU_SERVICE),
'etat_final' : POSTE_ETAT_ADMINISTRATEUR,
},
POSTE_ACTION_ENVOYER_DRH_CONTROLE : {
'nom' : u'Envoyer',
- 'etat_initial' : (POSTE_ETAT_DIRECTEUR_BUREAU_OU_SERVICE, POSTE_ETAT_ADMINISTRATEUR, ),
+ 'etat_initial' : (POSTE_ETAT_REFUSE, POSTE_ETAT_DIRECTEUR_BUREAU_OU_SERVICE, POSTE_ETAT_ADMINISTRATEUR, ),
'etat_final' : POSTE_ETAT_DRH_CONTROLE,
},
POSTE_ACTION_ENVOYER_POLE_FINANCIER : {
'nom' : u'Envoyer',
- 'etat_initial' : POSTE_ETAT_DRH_CONTROLE,
+ 'etat_initial' : (POSTE_ETAT_REFUSE, POSTE_ETAT_DRH_CONTROLE, ),
'etat_final' : POSTE_ETAT_POLE_FINANCIER,
},
POSTE_ACTION_ENVOYER_HAUTE_DIRECTION : {
'nom' : u'Envoyer',
- 'etat_initial' : POSTE_ETAT_POLE_FINANCIER,
+ 'etat_initial' : (POSTE_ETAT_REFUSE, POSTE_ETAT_POLE_FINANCIER, ),
'etat_final' : POSTE_ETAT_HAUTE_DIRECTION,
},
POSTE_ACTION_ENVOYER_DRH_FINALISATION : {
'nom' : u'Envoyer',
- 'etat_initial' : POSTE_ETAT_HAUTE_DIRECTION,
+ 'etat_initial' : (POSTE_ETAT_REFUSE, POSTE_ETAT_HAUTE_DIRECTION, ),
'etat_final' : POSTE_ETAT_DRH_FINALISATION,
},
}
+
+def refuse_sauf_pour_drh(f):
+ """
+ Personne ne peut manipuler quelque chose à l'état refusé excepté la DRH
+ """
+ def inner(obj, action, request):
+ if obj.etat != 'REFUSE':
+ return f(obj, action, request)
+ if grp_drh in request.user.groups.all():
+ return f(obj, action, request)
+ else:
+ return False
+ return inner
+
class PosteWorkflow(WorkflowMixin):
etat_initial = POSTE_ETAT_BROUILLON
etats = POSTE_ETATS
abstract = True
def acces_refuse(self, action, request):
- return True
+ if grp_pole_financier in request.user.groups.all():
+ return False
+
+ user_groupes = request.user.groups.all()
+ for g, etats in MAP_GROUPE_ETATS_A_FAIRE.items():
+ if g in user_groupes and self.etat in etats:
+ return True
+ return False
+ @refuse_sauf_pour_drh
def acces_directeur_bur_srv(self, action, request):
for g in request.user.groups.all():
if g in (grp_administrateurs, grp_gestionnaires, grp_service_utilisateurs, grp_correspondants_rh, grp_drh,):
return True
return False
+ @refuse_sauf_pour_drh
def acces_administrateur(self, action, request):
for g in request.user.groups.all():
if g in (grp_directeurs_service, grp_drh,):
return True
return False
+ @refuse_sauf_pour_drh
def acces_drh_controle(self, action, request):
for g in request.user.groups.all():
if g in (grp_directeurs_bureau, grp_administrateurs, grp_drh,):
return True
return False
+ @refuse_sauf_pour_drh
def acces_finance(self, action, request):
for g in request.user.groups.all():
if g in (grp_drh, ):
return True
return False
+ @refuse_sauf_pour_drh
def acces_haute_direction(self, action, request):
for g in request.user.groups.all():
if g in (grp_pole_financier, grp_drh, ):
return True
return False
+ @refuse_sauf_pour_drh
def acces_drh_finalisation(self, action, request):
for g in request.user.groups.all():
if g in (grp_haute_direction, grp_drh, ):
#codes actions
+DOSSIER_ETAT_REFUSE = POSTE_ETAT_REFUSE
DOSSIER_ETAT_BROUILLON = POSTE_ETAT_BROUILLON
DOSSIER_ETAT_DIRECTEUR_BUREAU_OU_SERVICE = POSTE_ETAT_DIRECTEUR_BUREAU_OU_SERVICE
DOSSIER_ETAT_ADMINISTRATEUR = POSTE_ETAT_ADMINISTRATEUR
h2.section {width:100%; background-color: #D0E8F8; text-align: center; color: #5F5F5F; margin: 50px 0px 26px 0px; border-bottom: 3px solid #BBD8EC; padding: 4px;}
.montant {text-align: right;}
.bouton-action {border:1px #BBD8EC solid; font-size: 14px; font-weight: bold; margin: 12px 0; padding: 4px 8px; color: #BBD8EC; margin-left: 6px;}
+#type_intervention li {float: left; list-style: none; font-size: 1.6em; margin: 0 1em 0 0;}
body { margin:0; padding:0; background:#fff; color:#454545; font:0.8em verdana, arial, helvetica, sans-serif; }
-h1 { margin:10px 0 0 0; padding:0; color:#d15517; font-size:200%;font-weight:bold; }
-h2 { margin:10px 0 0 0; padding:0; color:#5f5f5f; font-size:190%; }
-h3 { margin:10px 0 0 0; padding:0; color:#5f5f5f; font-size:170%; }
-h4 { margin:10px 0 0 0; padding:0; color:#5f5f5f; font-size:150%; }
+h1 { margin:10px 0 0 0; padding:0; color:#d15517; font-size:120%;font-weight:bold; }
+h2 { margin:10px 0 0 0; padding:0; color:#5f5f5f; font-size:100%; }
+h3 { margin:10px 0 0 0; padding:0; color:#5f5f5f; font-size:90%; }
+h4 { margin:10px 0 0 0; padding:0; color:#5f5f5f; font-size:80%; }
h5 { margin:10px 0 0 0; padding:0; background:inherit; color:#5f5f5f; font-size:130%; }
li {margin-left: 1em; line-height:1.4em; }
label {font-weight: bold;}
table { margin:10px 0px; border-collapse:collapse; padding:5px; }
-table th, table td{ font-size: 14px; border-top:1px solid #d0e8f8; border-left:1px solid #d0e8f8; padding: 5px; }
+table th, table td{ font-size: 80%; border-top:1px solid #d0e8f8; border-left:1px solid #d0e8f8; padding: 5px; }
table { border-bottom:1px solid #d0e8f8; border-right:1px solid #d0e8f8; }
th { height:28px; border-top:2px solid #d0e8f8; padding:0 10px; background-color:#F8FBFD; font-size:14px; text-align:left; font-weight: bold;}
td { vertical-align: top; }
-table h1, table h2, table h3, table h4, table h5 {font-size: 120%; }
.cell-nombre { padding-right:0px; text-align:right; }
.row1, .even {}
var ligne = element.parents("tr");
var inputs = ligne.find("input, select");
var salaire_input;
+ var salaire;
var valeur_point_input;
+ var classement_id;
+ var indemn_expat;
+ var indemn_fct;
+ var charges_patronales;
+ var autre;
+
inputs.each(function() {
var input = $(this);
salaire_input = input;
salaire = clean_float(input.val())
}
- if (input.attr('id').match('id_indemn*')) {
- indemn = clean_float(input.val())
+ if (input.attr('id').match('id_indemn_expat*')) {
+ indemn_expat = clean_float(input.val())
+ }
+ if (input.attr('id').match('id_indemn_fct*')) {
+ indemn_fct = clean_float(input.val())
+ }
+ if (input.attr('id').match('id_charges_patronales*')) {
+ charges_patronales = clean_float(input.val())
}
if (input.attr('id').match('id_autre*')) {
autre = clean_float(input.val())
salaire = clean_float(valeur_point * coeff);
salaire_input.val(salaire);
}
-
taux_euro = parseFloat(ligne.find(".taux").html())
total = 0;
- total = salaire + indemn + autre;
+ total = salaire + indemn_expat + indemn_fct + charges_patronales + autre;
total_euro = total * taux_euro;
ligne.find(".total-devise").text(clean_float(total));
});
}
+function setup_taux_ligne(element) {
+ var input = element;
+ var ligne = input.parents("tr");
+ var chargement_devise = $.getJSON("/dae/devise/code", {'devise': input.val()});
+ chargement_devise.success(function(data) {
+ ligne.find(".taux").text(data.taux_euro)
+ ligne.find(".devise_code").text(data.devise_code)
+ recalculer_ligne(input);
+ });
+ chargement_devise.error(function(data) {
+ alert(data.responseText);
+ ligne.find(".taux").text(0)
+ ligne.find(".devise_code").text("???")
+ });
+}
+
$(document).ready(function() {
/* Lorsqu'on choisit un poste dans la liste on recharge la page avec le
});
$('#id_devise_min, #id_devise_max').change(function(e) {
- var input = $(this);
- var ligne = input.parents("tr");
- var chargement_devise = $.getJSON("/dae/devise/code", {'devise': this.value});
- chargement_devise.success(function(data) {
- ligne.find(".taux").text(data.taux_euro)
- ligne.find(".devise_code").text(data.devise_code)
- recalculer_ligne(input);
- });
- chargement_devise.error(function(data) {
- alert(data.responseText);
- ligne.find(".taux").text(0)
- ligne.find(".devise_code").text("???")
- });
-
+ setup_taux_ligne($(this));
});
$('#id_classement_min, #id_classement_max, #classement input, #classement select').change(function(e) {
});
/* au chargement, on calcule tout */
- recalculer_tout();
+ $('#id_devise_min, #id_devise_max').each(function() {
+ setup_taux_ligne($(this));
+ });
+ // le setup de la devise par ligne est déjà suivi d'un recalcul de la ligne automatique
+ //recalculer_tout();
/* calcul de la différence en mois */
$("#id_date_debut, #id_date_fin").focusout(function() {
# -*- encoding: utf-8 -*-
-from models import *
from django.contrib import admin
-
-class CommentaireAdmin(admin.ModelAdmin):
- pass
-
-
-class PosteAdmin(admin.ModelAdmin):
- fieldsets = (
- (None, {
- 'fields': ('nom', 'nom_feminin', 'implantation', 'type_poste',
- 'service', 'responsable')
- }),
- ('Contrat', {
- 'fields': ('regime_travail', 'regime_travail_nb_heure_semaine')
- }),
- ('Recrutement', {
- 'fields': ('local', 'expatrie', 'mise_a_disposition', 'appel')
- }),
- ('Rémunération', {
- 'fields': ('classement_min', 'classement_max', 'valeur_point_min',
- 'valeur_point_max', 'devise_min', 'devise_max',
- 'salaire_min', 'salaire_max', 'indemn_min',
- 'indemn_max', 'autre_min', 'autre_max')
- }),
- ('Comparatifs de rémunération', {
- 'fields': ('devise_comparaison', 'comp_locale_min',
- 'comp_locale_max', 'comp_universite_min',
- 'comp_universite_max', 'comp_fonctionpub_min',
- 'comp_fonctionpub_max', 'comp_ong_min', 'comp_ong_max',
- 'comp_autre_min', 'comp_autre_max')
- }),
- ('Justification', {
- 'fields': ('justification',)
- }),
- ('Autres Metadata', {
- 'fields': ('date_validation', 'date_debut', 'date_fin')
- }),
- )
-
-
-class PosteFinancementAdmin(admin.ModelAdmin):
- pass
-
-class PostePieceAdmin(admin.ModelAdmin):
- pass
-
-class PosteCommentaireAdmin(admin.ModelAdmin):
- pass
-
-class EmployeAdmin(admin.ModelAdmin):
- pass
-
-class EmployePieceAdmin(admin.ModelAdmin):
- pass
-
-class EmployeCommentaireAdmin(admin.ModelAdmin):
- pass
-
-class AyantDroitAdmin(admin.ModelAdmin):
- pass
-
-class AyantDroitCommentaireAdmin(admin.ModelAdmin):
- pass
-
-class DossierAdmin(admin.ModelAdmin):
- pass
-
-class DossierPieceAdmin(admin.ModelAdmin):
- pass
-
-class DossierCommentaireAdmin(admin.ModelAdmin):
- pass
-
-class RemunerationAdmin(admin.ModelAdmin):
- pass
-
-class ContratAdmin(admin.ModelAdmin):
- pass
-
-class EvenementAdmin(admin.ModelAdmin):
- pass
-
-class EvenementRemunerationAdmin(admin.ModelAdmin):
- pass
-
-class FamilleEmploiAdmin(admin.ModelAdmin):
- pass
-
-class TypePosteAdmin(admin.ModelAdmin):
- pass
-
-class TypeRemunerationAdmin(admin.ModelAdmin):
- pass
-
-class TypeRevalorisationAdmin(admin.ModelAdmin):
- pass
-
-class ServiceAdmin(admin.ModelAdmin):
- pass
-
-class OrganismeBstgAdmin(admin.ModelAdmin):
- pass
-
-class StatutAdmin(admin.ModelAdmin):
- pass
-
-class ClassementAdmin(admin.ModelAdmin):
- pass
-
-class TauxChangeAdmin(admin.ModelAdmin):
- pass
-
-class ValeurPointAdmin(admin.ModelAdmin):
- pass
-
-class DeviseAdmin(admin.ModelAdmin):
- pass
-
-class TypeContratAdmin(admin.ModelAdmin):
- pass
+from rh.models import *
+from rh.lib import *
admin.site.register(Commentaire, CommentaireAdmin)
--- /dev/null
+# -*- encoding: utf-8 -*-
+
+from django.contrib import admin
+
+
+class CommentaireAdmin(admin.ModelAdmin):
+ pass
+
+
+class PosteAdmin(admin.ModelAdmin):
+ fieldsets = (
+ (None, {
+ 'fields': ('nom', 'nom_feminin', 'implantation', 'type_poste',
+ 'service', 'responsable')
+ }),
+ ('Contrat', {
+ 'fields': ('regime_travail', 'regime_travail_nb_heure_semaine')
+ }),
+ ('Recrutement', {
+ 'fields': ('local', 'expatrie', 'mise_a_disposition', 'appel')
+ }),
+ ('Rémunération', {
+ 'fields': ('classement_min', 'classement_max', 'valeur_point_min',
+ 'valeur_point_max', 'devise_min', 'devise_max',
+ 'salaire_min', 'salaire_max', 'indemn_min',
+ 'indemn_max', 'autre_min', 'autre_max')
+ }),
+ ('Comparatifs de rémunération', {
+ 'fields': ('devise_comparaison', 'comp_locale_min',
+ 'comp_locale_max', 'comp_universite_min',
+ 'comp_universite_max', 'comp_fonctionpub_min',
+ 'comp_fonctionpub_max', 'comp_ong_min', 'comp_ong_max',
+ 'comp_autre_min', 'comp_autre_max')
+ }),
+ ('Justification', {
+ 'fields': ('justification',)
+ }),
+ ('Autres Metadata', {
+ 'fields': ('date_validation', 'date_debut', 'date_fin')
+ }),
+ )
+
+
+class PosteFinancementAdmin(admin.ModelAdmin):
+ pass
+
+class PostePieceAdmin(admin.ModelAdmin):
+ pass
+
+class PosteCommentaireAdmin(admin.ModelAdmin):
+ pass
+
+class EmployeAdmin(admin.ModelAdmin):
+ pass
+
+class EmployePieceAdmin(admin.ModelAdmin):
+ pass
+
+class EmployeCommentaireAdmin(admin.ModelAdmin):
+ pass
+
+class AyantDroitAdmin(admin.ModelAdmin):
+ pass
+
+class AyantDroitCommentaireAdmin(admin.ModelAdmin):
+ pass
+
+class DossierAdmin(admin.ModelAdmin):
+ pass
+
+class DossierPieceAdmin(admin.ModelAdmin):
+ pass
+
+class DossierCommentaireAdmin(admin.ModelAdmin):
+ pass
+
+class RemunerationAdmin(admin.ModelAdmin):
+ pass
+
+class ContratAdmin(admin.ModelAdmin):
+ pass
+
+class EvenementAdmin(admin.ModelAdmin):
+ pass
+
+class EvenementRemunerationAdmin(admin.ModelAdmin):
+ pass
+
+class FamilleEmploiAdmin(admin.ModelAdmin):
+ pass
+
+class TypePosteAdmin(admin.ModelAdmin):
+ pass
+
+class TypeRemunerationAdmin(admin.ModelAdmin):
+ pass
+
+class TypeRevalorisationAdmin(admin.ModelAdmin):
+ pass
+
+class ServiceAdmin(admin.ModelAdmin):
+ pass
+
+class OrganismeBstgAdmin(admin.ModelAdmin):
+ pass
+
+class StatutAdmin(admin.ModelAdmin):
+ pass
+
+class ClassementAdmin(admin.ModelAdmin):
+ pass
+
+class TauxChangeAdmin(admin.ModelAdmin):
+ pass
+
+class ValeurPointAdmin(admin.ModelAdmin):
+ pass
+
+class DeviseAdmin(admin.ModelAdmin):
+ pass
+
+class TypeContratAdmin(admin.ModelAdmin):
+ pass
('C', 'C - Autre')
)
-class PosteFinancement(models.Model):
+
+class PosteFinancement_(models.Model):
"""Pour un Poste, structure d'informations décrivant comment on prévoit
financer ce Poste.
"""
poste = models.ForeignKey('Poste', db_column='poste',
- related_name='financements')
+ related_name='%(app_label)s_financements')
type = models.CharField(max_length=1, choices=POSTE_FINANCEMENT_CHOICES)
pourcentage = models.DecimalField(max_digits=12, decimal_places=2,
help_text=u"ex.: 33.33 % (décimale avec point)")
help_text=u"Spécifiez la source de financement.")
class Meta:
+ abstract = True
ordering = ['type']
def __unicode__(self):
return u'%s : %s %' % (self.type, self.pourcentage)
+
+class PosteFinancement(PosteFinancement_):
+ __doc__ = PosteFinancement_.__doc__
+
+
class PostePiece(models.Model):
"""Documents relatifs au Poste.
Ex.: Description de poste
null=True, blank=True)
class Meta:
- ordering = ['nom_affichage']
+ ordering = ['nom_affichage','nom']
def __unicode__(self):
# TODO : gérer nom d'affichage
- return u'%s' % (self.nom_affichage)
+ nom_affichage = self.nom_affichage
+ if not nom_affichage:
+ nom_affichage = u'%s %s' % (self.nom.upper(), self.prenom)
+ return u'%s' % (nom_affichage)
class EmployePiece(models.Model):
"""Documents relatifs à un employé.
('aucun', 'Aucun'),
)
+
class Dossier_(Metadata):
"""Le Dossier regroupe les informations relatives à l'occupation
d'un Poste par un Employe. Un seul Dossier existe par Poste occupé
class RemunerationMixin(Metadata):
# Identification
- dossier = models.ForeignKey('Dossier', db_column='dossier')
+ dossier = models.ForeignKey('Dossier', db_column='dossier',
+ related_name='%(app_label)s_%(class)s_remunerations')
type = models.ForeignKey('TypeRemuneration', db_column='type',
related_name='+')
type_revalorisation = models.ForeignKey('TypeRevalorisation',
def __unicode__(self):
return u'%s %s (%s)' % (self.montant, self.devise.code, self.type.nom)
-class Remuneration(RemunerationMixin):
+class Remuneration_(RemunerationMixin):
"""Structure de rémunération (données budgétaires) en situation normale
pour un Dossier. Si un Evenement existe, utiliser la structure de
rémunération EvenementRemuneration de cet événement.
devise = "???"
return "%s %s" % (self.montant, devise)
+ class Meta:
+ abstract = True
+
+
+class Remuneration(Remuneration_):
+ __doc__ = Remuneration_.__doc__
+
### CONTRATS
### ÉVÉNEMENTS
-class Evenement(Metadata):
+class Evenement_(Metadata):
"""Un Evenement sert à déclarer une situation temporaire (exceptionnelle)
d'un Dossier qui vient altérer des informations normales liées à un Dossier
(ex.: la Remuneration).
date_debut = models.DateField(help_text=HELP_TEXT_DATE)
date_fin = models.DateField(help_text=HELP_TEXT_DATE,
null=True, blank=True)
+
class Meta:
+ abstract = True
ordering = ['nom']
def __unicode__(self):
return u'%s' % (self.nom)
+
+
+class Evenement(Evenement_):
+ __doc__ = Evenement_.__doc__
+
-class EvenementRemuneration(RemunerationMixin):
+class EvenementRemuneration_(RemunerationMixin):
"""Structure de rémunération liée à un Evenement qui remplace
temporairement la Remuneration normale d'un Dossier, pour toute la durée
de l'Evenement.
evenement = models.ForeignKey("Evenement", db_column='evenement',
related_name='+')
+ class Meta:
+ abstract = True
+
+
+class EvenementRemuneration(EvenementRemuneration_):
+ __doc__ = EvenementRemuneration_.__doc__
+
### RÉFÉRENCES RH
('HG', 'HG - Hors grille [direction]'),
)
-class Classement(Metadata):
+
+class Classement_(Metadata):
"""Éléments de classement de la
"Grille générique de classement hiérarchique".
commentaire = models.TextField(null=True, blank=True)
class Meta:
+ abstract = True
ordering = ['type','echelon','degre','coefficient']
def __unicode__(self):
return u'%s.%s.%s (%s)' % (self.type, self.echelon, self.degre,
self.coefficient)
-class TauxChange(Metadata):
+class Classement(Classement_):
+ __doc__ = Classement_.__doc__
+
+
+class TauxChange_(Metadata):
"""Taux de change de la devise vers l'euro (EUR)
pour chaque année budgétaire.
"""
related_name='+')
annee = models.IntegerField()
taux = models.FloatField()
-
+
class Meta:
+ abstract = True
ordering = ['annee', 'devise__code']
def __unicode__(self):
return u'%s : %s €' % (self.devise.code, self.taux)
-class ValeurPoint(Metadata):
+
+class TauxChange(TauxChange_):
+ __doc__ = TauxChange_.__doc__
+
+
+class ValeurPoint_(Metadata):
"""Utile pour connaître, pour un Dossier, le salaire de base théorique lié
au classement dans la grille. La ValeurPoint s'obtient par l'implantation
du POste de ce Dossier : dossier.poste.implantation (pseudo code).
devise = models.ForeignKey('Devise', db_column='devise',
related_name='+', default=5)
implantation = models.ForeignKey(ref.Implantation,
- db_column='implantation',
- related_name='valeur_point')
+ db_column='implantation',
+ related_name='%(app_label)s_valeur_point')
# Méta
annee = models.IntegerField()
.filter(annee=annee_courante)
class Meta:
- ordering = ['annee', 'implantation__nom']
+ abstract = True
+ ordering = ['valeur']
def get_tauxchange_courant(self):
"""
devise_code = "??"
return u'%s %s (%s-%s)' % (self.valeur, devise_code,
self.implantation_id, self.annee)
-
- class Meta:
- ordering = ['valeur']
+
+
+class ValeurPoint(ValeurPoint_):
+ __doc__ = ValeurPoint_.__doc__
+
class Devise(Metadata):
"""Devise monétaire.