Beispiel #1
0
class EmployeeSalary(db.Document):
    _id = db.StringField(required=True)
    employeeSalary = db.FloatField(required=True)
    apprasialsOverTheYears = db.ListField(db.EmbeddedDocumentField(ApprasialsandAllowance), default=None)
    allowancesOverTheYears = db.ListField(db.EmbeddedDocumentField(ApprasialsandAllowance), default=None)
    employeePF = db.IntField(required=True)
    employeeAllowances = db.FloatField(required=True)
class EmployeeAttendance(db.Document):
    _id = db.StringField(required=True)
    employeeAttendance = db.ListField(
        db.EmbeddedDocumentField(AttendanceBluePrint))
    meta = {
        "indexes": [
            "employeeAttendance.year", "employeeAttendance.month",
            "employeeAttendance.week.weekNo"
        ]
    }
class AttendanceBluePrint(db.EmbeddedDocument):
    year = db.StringField(required=True, default=getYears())
    month = db.StringField(required=True, default=getMonths())
    week = db.ListField(db.EmbeddedDocumentField(WeeklyUpdate), required=True)
class WeeklyUpdate(db.EmbeddedDocument):
    weekNo = db.StringField(required=True, default=getWeeks())
    weeklyAttendance = db.ListField(db.EmbeddedDocumentField(DaysOfTheWeek),
                                    required=True)
    meta = {"indexes": ["weekNo"]}
class EmployeeTeamDetails(db.Document):
    _id = db.StringField(required=True)
    teamsWorked = db.ListField(db.EmbeddedDocumentField(EmployeePastTeams),
                               default=None)
    projectsWorked = db.ListField()
    departmentHead = db.BooleanField(default=False)