{
    "name": "Ticket",
	"base": "Loggable",
	"log": {
		"model":"TicketLog"
	},
    "options": {
        "mysql": {
        "table": "ticket"
        }
    },
    "properties": {
        "id": {
            "id": true,
            "type": "Number",
            "description": "Identifier"
        },
        "shipped": {
            "type": "Date",
            "required": true
        },
        "landed": {
            "type": "Date"
        },
        "nickname": {
            "type": "String"
        },
        "location": {
            "type": "String"
        },
        "solution": {
            "type": "String"
        },
        "packages": {
            "type": "Number"
        },
        "created": {
            "type": "Date"
        },
        "isDeleted": {
            "type": "boolean"
        },
        "priority": {
            "type": "Number"
        }
    },
    "relations": {
        "client": {
            "type": "belongsTo",
            "model": "Client",
            "foreignKey": "clientFk"
        },
        "ship": {
            "type": "hasMany",
            "model": "Stowaway",
            "foreignKey": "shipFk"
        },
        "stowaway": {
            "type": "hasOne",
            "model": "Stowaway",
            "foreignKey": "id"
        },
        "warehouse": {
            "type": "belongsTo",
            "model": "Warehouse",
            "foreignKey": "warehouseFk"
        },
        "invoiceOut": {
            "type": "belongsTo",
            "model": "InvoiceOut",
            "foreignKey": "refFk",
            "primaryKey": "ref"
        },
        "address": {
            "type": "belongsTo",
            "model": "Address",
            "foreignKey": "addressFk"
        },
        "route": {
            "type": "belongsTo",
            "model": "Route",
            "foreignKey": "routeFk"
        },
        "company": {
            "type": "belongsTo",
            "model": "Company",
            "foreignKey": "companyFk"
        },
        "agencyMode": {
            "type": "belongsTo",
            "model": "AgencyMode",
            "foreignKey": "agencyModeFk",
            "required": true
        },
        "packages": {
            "type": "hasMany",
            "model": "TicketPackaging",
            "foreignKey": "ticketFk"
        },
        "tracking": {
            "type": "hasMany",
            "model": "TicketTracking",
            "foreignKey": "ticketFk"
        },
        "notes": {
            "type": "hasMany",
            "model": "TicketObservation",
            "foreignKey": "ticketFk"
        },
        "state": {
            "type": "hasOne",
            "model": "TicketState",
            "foreignKey": "ticketFk"
        },
        "zone": {
            "type": "belongsTo",
            "model": "Zone",
            "foreignKey": "zoneFk"
        }
    }
}