# altes Search-Model

=> Beinhaltet die Suchen der Nutzer.

  • Functionality
  • Implementierung: ✅
  • Erweiterung:
    • Ausgliedern verschiedener Eigenschaften (ggf.):
    • indexing => Pivottabelle
    • consulting => Pivottabelle
    • qualification_addition => Pivottabelle
    • search_reason => ❌ (Suchgrund fällt weg)
    • => is_hidden fällt somit auch weg

# Data


CREATE TABLE `pyou_searches` (
    `search_uuid` varchar(36) NOT NULL,
    `search_hash` varchar(36) DEFAULT NULL,
    `user_uuid` varchar(36) DEFAULT NULL,
    `business_uuid` varchar(36) DEFAULT NULL,
    `consulting` tinyint(1) DEFAULT NULL,
    `able_to_move` tinyint(1) DEFAULT NULL,
    `is_anonymous` tinyint(1) DEFAULT '0',
    `is_hidden` tinyint(1) DEFAULT '0',
    `search_reason` varchar(36) DEFAULT NULL,
    `additional_info` varchar(255) DEFAULT NULL,
    `qualification_addition` varchar(255) DEFAULT '[""]',
    `indexing` tinyint(1) DEFAULT '0',
    `reinstated_to` varchar(36) DEFAULT NULL,
    `reinstated_from` varchar(36) DEFAULT NULL,
    `search_ts_indexed` timestamp NULL DEFAULT NULL,
    `search_ts_deindexed` timestamp NULL DEFAULT NULL,
    `search_ts_done` timestamp NULL DEFAULT NULL,
    `search_ts_create` timestamp NULL DEFAULT NULL,
    `search_ts_update` timestamp NULL DEFAULT NULL,
    `search_ts_delete` timestamp NULL DEFAULT NULL,
    PRIMARY KEY (`search_uuid`),
    UNIQUE (`search_hash`)
) ENGINE = InnoDB DEFAULT CHARSET = utf8;

# neues Search-Model

Hilfreiche Ressourcen:

  • https://laraveldaily.com/save-users-last-login-time-ip-address/
  • https://ryangjchandler.co.uk/articles/track-your-users-last-activity-in-laravel

Beziehungen

public function up()
{
    Schema::create('searches', function (Blueprint $table) {
    $table->uuid('id')->primary();
    $table->char('hash', 12)->unique();
    $table->foreignUuid('user_id')->index()->constrained()->onDelete('cascade');
    $table->uuid('business_id');
    $table->boolean('able_to_move')->nullable();
    $table->boolean('is_anonymous')->nullable();
    $table->text('additional_info')->nullable();
    $table->uuid('reinstated_to')->nullable();
    $table->uuid('reinstated_from')->nullable();
    $table->timestamp('done_at')->nullable();
    $table->timestamps();
    $table->softDeletes();
    });
}

# übergeordnetes Thema

2.6 Datenstruktur

Last Updated: 7/28/2021, 5:57:14 PM