File size: 2,432 Bytes
ef1ad9e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
from typing import Any

from sqlalchemy import Column, ForeignKey, Integer, String, UniqueConstraint
from sqlalchemy.dialects.postgresql import BIT

# from app.models.base import Base
from app.utils.utility import to_dict
from sqlalchemy.orm import declarative_base

Base = declarative_base()

class UserEmploymentAndIncome(Base):
    __tablename__ = "UserEmploymentAndIncomes"

    userEmploymentAndIncomeId = Column(Integer, primary_key=True)
    employmentTypeId = Column(Integer, ForeignKey("EmploymentTypes.employmentTypeId"))
    employerName = Column(String)
    designation = Column(String)
    employerAddress = Column(String)
    stateId = Column(Integer)
    cityId = Column(Integer)
    stateName = Column(String)
    stateId = Column(Integer, ForeignKey("States.stateId"))
    cityName = Column(String)
    companyEmail = Column(String)
    employerExperienceYears = Column(Integer)
    employerExperienceMonths = Column(Integer)
    employerWorkYears = Column(Integer)
    LOBWorkYears = Column(Integer)
    LOBWorkMonths = Column(Integer)
    baseIncome = Column(Integer)
    OTIncome = Column(Integer)
    bonusIncome = Column(Integer)
    otherIncome = Column(Integer)
    employedByOtherParty = Column(BIT)
    selfEmployed = Column(BIT)
    presentEmployerLessThanTwoYears = Column(BIT)
    previousEmployerName = Column(String)
    previousEmployerDesignation = Column(String)
    previousEmployerAddress = Column(String)
    previousEmployerStateId = Column(Integer)
    previousEmployerCityId = Column(Integer)
    previousEmployerStateName = Column(String)
    previousEmployerStateId = Column(Integer, ForeignKey("States.stateId"))
    previousEmployerCityName = Column(String)
    previousEmployerExperienceYears = Column(Integer)
    previousEmployerExperienceMonths = Column(Integer)
    incomeTypeId = Column(Integer, ForeignKey("IncomeTypes.incomeTypeId"))
    applicationId = Column(Integer, ForeignKey("Applications.applicationId"))
    userProfileId = Column(Integer, ForeignKey("UserProfiles.userProfileId"))
    userId = Column(Integer, ForeignKey("Users.userId"))
    isCompleted = Column(BIT, nullable=True)
    order = Column(Integer, nullable=True, default=1)

    __table_args__ = (UniqueConstraint("applicationId", "order", name="applicationId_order_unique_key2"),)

    def dict(self) -> dict[str, Any]:
        return to_dict(self)