App\MemberBundle\Entity\MemberFirm:
  type: entity
  repositoryClass: App\MemberBundle\Repository\MemberFirmRepository
  table: tblMemberFirms
  id:
    id:
      type: integer
      column: FirmID
      generator:
        strategy: IDENTITY
  fields:
    firm_name:
      type: string
      length: 255
      column: FirmName
    form_of_incorporation:
      type: string
      length: 50
      column: FormOfIncorporation
      nullable: true
    date_joined:
      type: datetime
      column: DateJoined
      nullable: true
    date_terminated:
      type: datetime
      column: DateTerminated
      nullable: true
    directory_last_update:
      type: datetime
      column: DirectoryLastUpdate
      nullable: true
    entry_type:
      type: string
      length: 50
      column: EntryType
      nullable: true
    page_ref:
      type: string
      length: 50
      column: PageRef
      nullable: true
    logo_received:
      type: string
      length: 50
      column: LogoReceived
      nullable: true
    photographs:
      type: integer
      column: Photographs
      options:
          default: 0
      nullable: true
    run_ons:
      type: integer
      column: RunOns
      options:
          default: 0
      nullable: true
    order_number:
      type: string
      length: 50
      column: OrderNumber
      nullable: true
    invoice_number:
      type: string
      length: 50
      column: InvoiceNumber
      nullable: true
    payment_received:
      type: boolean
      column: PaymentReceived
      nullable: true
      options:
          default: 0
    declaration_received:
      type: datetime
      column: DeclarationReceived
      nullable: true
    member_status:
      type: string
      length: 50
      column: MemberStatus
      nullable: true
    acoustics:
      type: boolean
      column: Acoustics
      nullable: true
      options:
          default: 0
    agricultural:
      type: boolean
      column: Agricultural
      nullable: true
      options:
          default: 0
    building_services:
      type: boolean
      column: BuildingServices
      nullable: true
      options:
          default: 0
    chemical:
      type: boolean
      column: Chemical
      nullable: true
      options:
          default: 0
    civil:
      type: boolean
      column: Civil
      nullable: true
      options:
          default: 0
    development:
      type: boolean
      column: Development
      nullable: true
      options:
          default: 0
    electrical:
      type: boolean
      column: Electrical
      nullable: true
      options:
          default: 0
    electronic:
      type: boolean
      column: Electronic
      nullable: true
      options:
          default: 0
    environmental:
      type: boolean
      column: Environmental
      nullable: true
      options:
          default: 0
    geotechnical:
      type: boolean
      column: Geotechnical
      nullable: true
      options:
          default: 0
    industrial:
      type: boolean
      column: Industrial
      nullable: true
      options:
          default: 0
    mechanical:
      type: boolean
      column: Mechanical
      nullable: true
      options:
          default: 0
    marine:
      type: boolean
      column: Marine
      nullable: true
      options:
          default: 0
    mining:
      type: boolean
      column: Mining
      nullable: true
      options:
          default: 0
    process:
      type: boolean
      column: Process
      nullable: true
      options:
          default: 0
    structural:
      type: boolean
      column: Structural
      nullable: true
      options:
          default: 0
    transportation:
      type: boolean
      column: Transportation
      nullable: true
      options:
          default: 0
    architecture:
      type: boolean
      column: Architecture
      nullable: true
      options:
          default: 0
    rural_development:
      type: boolean
      column: RuralDevelopment
      nullable: true
      options:
          default: 0
    project_management:
      type: boolean
      column: ProjectManagement
      nullable: true
      options:
          default: 0
    quantity_surveying:
      type: boolean
      column: QuantitySurveying
      nullable: true
      options:
          default: 0
    town_planning:
      type: boolean
      column: TownPlanning
      nullable: true
      options:
          default: 0
    multidisciplinary:
      type: boolean
      column: Multidisciplinary
      nullable: true
      options:
          default: 0
    dispute_resolution:
      type: boolean
      column: DisputeResolution
      nullable: true
      options:
          default: 0
    expert_witness:
      type: boolean
      column: ExpertWitness
      nullable: true
      options:
          default: 0
    information_systems:
      type: boolean
      column: InformationSystems
      nullable: true
      options:
          default: 0
    facilities_management:
      type: boolean
      column: FacilitiesManagement
      nullable: true
      options:
          default: 0
    gis:
      type: boolean
      column: GIS
      nullable: true
      options:
          default: 0
    p_i_underwriter:
      type: string
      length: 50
      column: PIUnderwriter
      nullable: true
    level_of_cover:
      type: decimal
      precicion: 2
      scale: 2
      column: LevelOfCover
      nullable: true
    level_of_cover_short:
      type: string
      length: 50
      column: LevelOfCoverShort
      nullable: true
#    quality_management:
#      type: string
#      length: 50
#      column: "Quality Management"
#      nullable: true
#    date_of_last_peer_review:
#      type: string
#      length: 50
#      column: "Date of last peer review"
#      nullable: true
    url:
      type: string
      length: 50
      column: URL
      nullable: true
    document_access:
      type: string
      length: 1
      column: DocumentAccess
      nullable: true
    quality_mx_system:
      type: string
      length: 1
      column: QualityMxSystem
      nullable: true
    export_division:
      type: string
      length: 1
      column: ExportDivision
      nullable: true
    active:
      type: string
      length: 3
      column: Active
      nullable: true
    school:
      type: string
      length: 1
      column: School
      nullable: true
    l_number:
      type: string
      length: 50
      column: lnumber
      nullable: true
    existing_or_experience:
      type: text
      column: ExistingOrExperience
      nullable: true
    seeking_to_exportTo:
      type: text
      column: SeekingToExportTo
      nullable: true
    qms_plan:
      type: string
      length: 1
      column: QMSPlan
      nullable: true
    qms_docs:
      type: string
      length: 1
      column: QMSDocs
      nullable: true
    qms_iso_comply:
      type: string
      length: 1
      column: QMSISOComply
      nullable: true
    qms_iso_cert:
      type: string
      length: 1
      column: QMSISOCert
      nullable: true
    qms_iso_cert_date:
      type: datetime
      column: QMSISOCertDate
      nullable: true
    qms_offices:
      type: string
      length: 1
      column: QMSOffices
      nullable: true
    qms_consult:
      type: string
      length: 255
      column: QMSConsult
      nullable: true
    qms_cert_body:
      type: string
      length: 255
      column: QMSCertBody
      nullable: true
    acoustics_name:
      type: string
      length: 255
      column: AcousticsName
      nullable: true
    agricultural_name:
      type: string
      length: 255
      column: AgriculturalName
      nullable: true
    building_services_name:
      type: string
      length: 255
      column: BuildingServicesName
      nullable: true
    chemical_name:
      type: string
      length: 255
      column: ChemicalName
      nullable: true
    civil_name:
      type: string
      length: 255
      column: CivilName
      nullable: true
    development_name:
      type: string
      length: 255
      column: DevelopmentName
      nullable: true
    electrical_name:
      type: string
      length: 255
      column: ElectricalName
      nullable: true
    electronic_name:
      type: string
      length: 255
      column: ElectronicName
      nullable: true
    environmental_name:
      type: string
      length: 255
      column: EnvironmentalName
      nullable: true
    geotechnical_name:
      type: string
      length: 255
      column: GeotechnicalName
      nullable: true
    industrial_name:
      type: string
      length: 255
      column: IndustrialName
      nullable: true
    mechanical_name:
      type: string
      length: 255
      column: MechanicalName
      nullable: true
    marine_name:
      type: string
      length: 255
      column: MarineName
      nullable: true
    mining_name:
      type: string
      length: 255
      column: MiningName
      nullable: true
    process_name:
      type: string
      column: ProcessName
      nullable: true
    structural_name:
      type: string
      length: 255
      column: StructuralName
      nullable: true
    transportation_name:
      type: string
      length: 255
      column: TransportationName
      nullable: true
    architecture_name:
      type: string
      length: 255
      column: ArchitectureName
      nullable: true
    rural_development_name:
      type: string
      length: 255
      column: RuralDevelopmentName
      nullable: true
    project_management_name:
      type: string
      length: 255
      column: ProjectManagementName
      nullable: true
    quantity_surveying_name:
      type: string
      length: 255
      column: QuantitySurveyingName
      nullable: true
    town_planning_name:
      type: string
      length: 255
      column: TownPlanningName
      nullable: true
    multidisciplinary_name:
      type: string
      length: 255
      column: MultidisciplinaryName
      nullable: true
    dispute_resolution_name:
      type: string
      length: 255
      column: DisputeResolutionName
      nullable: true
    expert_witness_name:
      type: string
      length: 255
      column: ExpertWitnessName
      nullable: true
    information_systems_name:
      type: string
      length: 255
      column: InformationSystemsName
      nullable: true
    facilities_management_name:
      type: string
      length: 255
      column: FacilitiesManagementName
      nullable: true
    gis_name:
      type: string
      length: 255
      column: GISName
      nullable: true
    main_firm_invoice:
      type: string
      length: 255
      column: MainFirmInvoice
      nullable: true
    group_firms_invoice:
      type: text
      column: GroupFirmsInvoice
      nullable: true
    qms_implemented:
      type: string
      length: 1
      column: QMSImplemented
      nullable: true
    qms_impl_fully:
      type: string
      length: 255
      column: QMSImplFully
      nullable: true
    qms_impl_part:
      type: string
      length: 255
      column: QMSImplPart
      nullable: true
    qms_assess:
      type: string
      length: 1
      column: QMSAssess
      nullable: true
    qms_use_consult:
      type: string
      length: 1
      column: QMSUseConsult
      nullable: true
    qms_intend:
      type: string
      length: 1
      column: QMSIntend
      nullable: true
    bep_meds:
      type: string
      length: 1
      column: BEPMEDS
      nullable: true
    web_hide:
      type: string
      length: 1
      column: WebHide
      nullable: false
      options:
          default: 'n'
    mentoring_prog:
      type: string
      length: 1
      column: MentoringProg
      nullable: true
    candidate_prog:
      type: string
      length: 1
      column: CandidateProg
      nullable: true
    subscriptions_contact:
      type: string
      length: 255
      column: SubscriptionsContact
      nullable: true
    subscriptions_email:
      type: string
      length: 255
      column: SubscriptionsEmail
      nullable: true
    hr_training_contact:
      type: string
      length: 255
      column: HRTrainingContact
      nullable: true
    hr_training_email:
      type: string
      length: 255
      column: HRTrainingEmail
      nullable: true
    marketing_contact:
      type: string
      length: 255
      column: MarketingContact
      nullable: true
    marketing_email:
      type: string
      length: 255
      column: MarketingEmail
      nullable: true
    ca_u_signed:
      type: string
      length: 1
      column: CaUSigned
      nullable: true
    bbbee:
      type: string
      length: 255
      column: BBBEE
      nullable: true
    ypf_contact:
      type: string
      length: 255
      column: YPFContact
      nullable: true
    ypf_email:
      type: string
      length: 255
      column: YPFEmail
      nullable: true
    smme:
      type: string
      length: 255
      column: SMME
      nullable: true
    black_owned:
      type: string
      length: 255
      column: BlackOwned
      nullable: true
    bbbee_level:
      type: integer
      column: BBBEELevel
      nullable: true
    sustainability_policy:
      type: string
      length: 1
      column: SustainabilityPolicy
      nullable: true
    sustainability_issues:
      type: string
      length: 1
      column: SustainabilityIssues
      nullable: true
    sustainability_process:
      type: string
      length: 1
      column: SustainabilityProcess
      nullable: true
    sustainability_champion:
      type: string
      length: 1
      column: SustainabilityChampion
      nullable: true
    sustainability_champ_name:
      type: string
      length: 255
      column: SustainabilityChampName
      nullable: true
    comments:
      type: text
      column: Comments
      nullable: true
    sustainability_framework:
      type: string
      length: 1
      column: SustainabilityFramework
      nullable: true
    sustainability_discussed:
      type: string
      length: 1
      column: SustainabilityDiscussed
      nullable: true
    sustainability_indicator_1:
      type: text
      column: SustainabilityIndicator1
      nullable: true
    sustainability_indicator_2:
      type: text
      column: SustainabilityIndicator2
      nullable: true
    sustainability_indicator_3:
      type: text
      column: SustainabilityIndicator3
      nullable: true
    sustainability_indicator_4:
      type: text
      column: SustainabilityIndicator4
      nullable: true
    sustainability_indicator_5:
      type: text
      column: SustainabilityIndicator5
      nullable: true
    qmig:
      type: string
      length: 1
      column: QMIG
      nullable: true
    qms_champion:
      type: string
      length: 1
      column: QMSChampion
      nullable: true
    qms_champ_name:
      type: string
      length: 255
      column: QMSChampName
      nullable: true
    qms_champ_email:
      type: string
      length: 255
      column: QMSChampEmail
      nullable: true
    sustainability_champ_email:
      type: string
      length: 255
      column: SustainabilityChampEmail
      nullable: true
    procurement_contact:
      type: string
      length: 255
      column: ProcurementContact
      nullable: true
    procurement_email:
      type: string
      length: 255
      column: ProcurementEmail
      nullable: true
    subscriptions_tel:
      type: string
      length: 255
      column: SubscriptionsTel
      nullable: true
    hr_training_tel:
      type: string
      length: 255
      column: HRTrainingTel
      nullable: true
    marketing_tel:
      type: string
      length: 255
      column: MarketingTel
      nullable: true
    procurement_tel:
      type: string
      length: 255
      column: ProcurementTel
      nullable: true
    ypf_contact_tel:
      type: string
      length: 255
      column: YPFContactTel
      nullable: true
    black_women_owned:
      type: string
      length: 255
      column: BlackWomenOwned
      nullable: true
    sabtaco:
      type: string
      length: 1
      column: SABTACO
      nullable: true
    bbcbe:
      type: string
      length: 1
      column: BBCBE
      nullable: true
    gbcsa:
      type: string
      length: 1
      column: GBCSA
      nullable: true
    go_to_person_name:
      type: string
      length: 255
      column: GoToPersonName
      nullable: true
    go_to_person_tel:
      type: string
      length: 255
      column: GoToPersonTel
      nullable: true
    go_to_person_email:
      type: string
      length: 255
      column: GoToPersonEmail
      nullable: true
    total_staff:
      type: integer
      column: TotalStaff
      nullable: true
    total_staff_short:
      type: string
      length: 50
      column: TotalStaffShort
      nullable: true
    three_years_average_turnover:
      type: decimal
      column: ThreeYearsAverageTurnover
      precicion: 2
      scale: 2
      nullable: true
  oneToOne:
    member_transformation:
      targetEntity: MemberFirmTransformation
      mappedBy: member_firm
  oneToMany:
    member_office:
      targetEntity: MemberOffice
      mappedBy: member_firm