# Knowncompany
# Beschreibung
Beinhaltet die infos zu den Arbeitgebernamen in unserer Datenbank, welche den Arbeitgeberkonten zugeordnet werden.
# altes knowncompany-Model
# old migration
CREATE TABLE `pyou_knowncompanies` (
`knowncompany_id` MEDIUMINT NOT NULL AUTO_INCREMENT,
`knowncompany_name` varchar(255) DEFAULT NULL,
`knowncompany_alternativename` varchar(255) DEFAULT NULL,
`knowncompany_link` MEDIUMINT DEFAULT NULL,
`knowncompany_added_by` varchar(36) DEFAULT NULL,
`knowncompany_ts_create` timestamp NULL DEFAULT NULL,
`knowncompany_ts_update` timestamp NULL DEFAULT NULL,
`knowncompany_ts_delete` timestamp NULL DEFAULT NULL,
PRIMARY KEY (`knowncompany_id`)
) ENGINE = InnoDB DEFAULT CHARSET = utf8;
# neues Knowncompany-Model
Anmerkung
Functionality- Implementierung: ✅
- Erweiterung:
- kleinere Anpassungen
# Model (json)
{
"class": "App\\Models\\Knowncompany",
"database": "mysql",
"table": "knowncompanies",
"policy": null,
"attributes": [
{
"name": "id",
"type": "bigint unsigned",
"increments": false,
"nullable": false,
"default": null,
"unique": false,
"fillable": true,
"hidden": false,
"appended": null,
"cast": "int"
},
{
"name": "name",
"type": "string(255)",
"increments": false,
"nullable": false,
"default": null,
"unique": false,
"fillable": true,
"hidden": false,
"appended": null,
"cast": "accessor"
},
{
"name": "slug",
"type": "string(255)",
"increments": false,
"nullable": true,
"default": null,
"unique": false,
"fillable": true,
"hidden": false,
"appended": null,
"cast": null
},
{
"name": "alternative_name",
"type": "string(255)",
"increments": false,
"nullable": true,
"default": null,
"unique": false,
"fillable": true,
"hidden": false,
"appended": null,
"cast": null
},
{
"name": "link",
"type": "bigint unsigned",
"increments": false,
"nullable": true,
"default": null,
"unique": false,
"fillable": true,
"hidden": false,
"appended": null,
"cast": null
},
{
"name": "initials",
"type": "string(255)",
"increments": false,
"nullable": false,
"default": "",
"unique": false,
"fillable": true,
"hidden": false,
"appended": null,
"cast": null
},
{
"name": "note",
"type": "text(65535)",
"increments": false,
"nullable": true,
"default": null,
"unique": false,
"fillable": true,
"hidden": false,
"appended": null,
"cast": null
},
{
"name": "added_by",
"type": "string(255)",
"increments": false,
"nullable": true,
"default": null,
"unique": false,
"fillable": true,
"hidden": false,
"appended": null,
"cast": null
},
{
"name": "created_at",
"type": "datetime",
"increments": false,
"nullable": true,
"default": null,
"unique": false,
"fillable": true,
"hidden": false,
"appended": null,
"cast": "datetime"
},
{
"name": "updated_at",
"type": "datetime",
"increments": false,
"nullable": true,
"default": null,
"unique": false,
"fillable": true,
"hidden": false,
"appended": null,
"cast": "datetime"
},
{
"name": "deleted_at",
"type": "datetime",
"increments": false,
"nullable": true,
"default": null,
"unique": false,
"fillable": true,
"hidden": false,
"appended": null,
"cast": "datetime"
},
{
"name": "tooltip",
"type": null,
"increments": false,
"nullable": null,
"default": null,
"unique": null,
"fillable": true,
"hidden": false,
"appended": true,
"cast": "accessor"
}
],
"relations": [
{ "name": "jobseekerExcludedCompanies", "type": "BelongsToManySoft", "related": "App\\Models\\Jobseeker" },
{ "name": "jobseekers", "type": "HasMany", "related": "App\\Models\\Jobseeker" },
{ "name": "company", "type": "HasOne", "related": "App\\Models\\Company" },
{ "name": "children", "type": "HasMany", "related": "App\\Models\\Knowncompany" },
{ "name": "parent", "type": "BelongsTo", "related": "App\\Models\\Knowncompany" }
],
"observers": [
{ "event": "creating", "observer": ["Closure"] },
{ "event": "updating", "observer": ["Closure"] },
{ "event": "created", "observer": ["App\\Observers\\KnowncompanyObserver@created"] }
]
}
# Beziehungen
- Knowncompany - [
children()-HasMany] - Company - [
jobseekerExcludedCompanies()-BelongsToMany] - Jobseeker - [
children()-HasMany] - Jobseeker - [
jobseekers()-HasMany] - Knowncompany - [
parent()-BelongsTo]
# übergeordnetes Thema
2.6 Datenstruktur