Eccube\Entity\ProductClass:
    type: entity
    table: dtb_product_class
    repositoryClass: Eccube\Repository\ProductClassRepository
    id:
        id:
            type: integer
            nullable: false
            unsigned: false
            id: true
            column: product_class_id
            generator:
                strategy: AUTO
    fields:
        code:
            type: text
            column: product_code
            nullable: true
            fixed: false
        stock:
            type: decimal
            nullable: true
            precision: 10
            scale: 0
        stock_unlimited:
            type: smallint
            nullable: false
            unsigned: false
            default: false
        sale_limit:
            type: decimal
            nullable: true
            precision: 10
            scale: 0
        price01:
            type: decimal
            nullable: true
            precision: 10
            scale: 0
        price02:
            type: decimal
            nullable: false
            precision: 10
            scale: 0
        delivery_fee:
            type: decimal
            nullable: true
            precision: 10
            scale: 0
        create_date:
            type: datetime
            nullable: false
        update_date:
            type: datetime
            nullable: false
        del_flg:
            type: smallint
            nullable: false
            unsigned: false
            options:
                default: '0'
    manyToOne:
        Product:
            targetEntity: Eccube\Entity\Product
            inversedBy: ProductClasses
            joinColumn:
                name: product_id
                referencedColumnName: product_id
                nullable: false
        ProductType:
            targetEntity: Eccube\Entity\Master\ProductType
            joinColumn:
                name: product_type_id
                referencedColumnName: id
                nullable: false
        ClassCategory1:
            targetEntity: Eccube\Entity\ClassCategory
            joinColumn:
                name: class_category_id1
                referencedColumnName: class_category_id
                nullable: true
        ClassCategory2:
            targetEntity: Eccube\Entity\ClassCategory
            joinColumn:
                name: class_category_id2
                referencedColumnName: class_category_id
                nullable: true
        DeliveryDate:
            targetEntity: Eccube\Entity\DeliveryDate
            joinColumn:
                name: delivery_date_id
                referencedColumnName: date_id
        Creator:
            targetEntity: Eccube\Entity\Member
            joinColumn:
                name: creator_id
                referencedColumnName: member_id
                nullable: false
    oneToOne:
        ProductStock:
            targetEntity: Eccube\Entity\ProductStock
            cascade: ["persist", "remove"]
            mappedBy: ProductClass
        TaxRule:
            targetEntity: Eccube\Entity\TaxRule
            cascade: ["persist", "remove"]
            mappedBy: ProductClass
    lifecycleCallbacks: {  }
