from sqlalchemy import Column, Integer, String, DateTime, Text, Float, Date, TIMESTAMP from sqlalchemy.ext.declarative import declarative_base from datetime import datetime Base = declarative_base() class UserModel(Base): __tablename__ = "llx_user" ROWID = Column(Integer, primary_key=True, autoincrement=True, nullable=False) ENTITY = Column(Integer, nullable=False, default=1) REF_EMPLOYEE = Column(String(50), nullable=True) REF_EXT = Column(String(50), nullable=True) ADMIN = Column(Integer, nullable=True, default=0) EMPLOYEE = Column(Integer, nullable=True, default=1) FK_ESTABLISHMENT = Column(Integer, nullable=True, default=0) DATEC = Column(DateTime, nullable=True) TMS = Column(TIMESTAMP, nullable=True) FK_USER_CREAT = Column(Integer, nullable=True) FK_USER_MODIF = Column(Integer, nullable=True) LOGIN = Column(String(50), nullable=False) PASS_ENCODING = Column(String(24), nullable=True) PASS = Column(String(128), nullable=True) PASS_CRYPTED = Column(String(128), nullable=True) PASS_TEMP = Column(String(128), nullable=True) API_KEY = Column(String(128), nullable=True) GENDER = Column(String(10), nullable=True) CIVILITY = Column(String(6), nullable=True) LASTNAME = Column(String(50), nullable=True) FIRSTNAME = Column(String(50), nullable=True) ADDRESS = Column(String(255), nullable=True) ZIP = Column(String(25), nullable=True) TOWN = Column(String(50), nullable=True) FK_STATE = Column(Integer, nullable=True, default=0) FK_COUNTRY = Column(Integer, nullable=True, default=0) BIRTH = Column(Date, nullable=True) BIRTH_PLACE = Column(String(64), nullable=True) JOB = Column(String(128), nullable=True) OFFICE_PHONE = Column(String(20), nullable=True) OFFICE_FAX = Column(String(20), nullable=True) USER_MOBILE = Column(String(20), nullable=True) PERSONAL_MOBILE = Column(String(20), nullable=True) EMAIL = Column(String(255), nullable=True) PERSONAL_EMAIL = Column(String(255), nullable=True) SIGNATURE = Column(Text, nullable=True) SOCIALNETWORKS = Column(Text, nullable=True) FK_SOC = Column(Integer, nullable=True) FK_SOCPEOPLE = Column(Integer, nullable=True) FK_MEMBER = Column(Integer, nullable=True) FK_USER = Column(Integer, nullable=True) FK_USER_EXPENSE_VALIDATOR = Column(Integer, nullable=True) FK_USER_HOLIDAY_VALIDATOR = Column(Integer, nullable=True) NOTE_PUBLIC = Column(Text, nullable=True) NOTE_PRIVATE = Column(Text, nullable=True) MODEL_PDF = Column(String(255), nullable=True) DATELASTLOGIN = Column(DateTime, nullable=True) DATEPREVIOUSLOGIN = Column(DateTime, nullable=True) DATELASTPASSVALIDATION = Column(DateTime, nullable=True) DATESTARTVALIDITY = Column(DateTime, nullable=True) DATEENDVALIDITY = Column(DateTime, nullable=True) IPLASTLOGIN = Column(String(250), nullable=True) IPPREVIOUSLOGIN = Column(String(250), nullable=True) EGROUPWARE_ID = Column(Integer, nullable=True) LDAP_SID = Column(String(255), nullable=True) OPENID = Column(String(255), nullable=True) STATUT = Column(Integer, nullable=True, default=1) PHOTO = Column(String(255), nullable=True) LANG = Column(String(6), nullable=True) COLOR = Column(String(6), nullable=True) BARCODE = Column(String(255), nullable=True) FK_BARCODE_TYPE = Column(Integer, nullable=True, default=0) ACCOUNTANCY_CODE = Column(String(32), nullable=True) NB_HOLIDAY = Column(Integer, nullable=True, default=0) THM = Column(Float, nullable=True) TJM = Column(Float, nullable=True) SALARY = Column(Float, nullable=True) SALARYEXTRA = Column(Float, nullable=True) DATEEMPLOYMENT = Column(Date, nullable=True) DATEEMPLOYMENTEND = Column(Date, nullable=True) WEEKLYHOURS = Column(Float, nullable=True) IMPORT_KEY = Column(String(14), nullable=True) DEFAULT_RANGE = Column(Integer, nullable=True) DEFAULT_C_EXP_TAX_CAT = Column(Integer, nullable=True) NATIONAL_REGISTRATION_NUMBER = Column(String(50), nullable=True) FK_WAREHOUSE = Column(Integer, nullable=True) CREATED_AT = Column(DateTime, default=datetime.utcnow) UPDATED_AT = Column(DateTime, default=datetime.utcnow, onupdate=datetime.utcnow)