id(); $table->string('uid')->unique()->nullable(); // Bagus untuk sinkronisasi Dexie offline $table->string('title'); // Judul aktivitas panen $table->unsignedBigInteger('land_id')->nullable(); $table->unsignedBigInteger('farmer_id')->nullable(); $table->text('land_description')->nullable(); // Deskripsi kondisi lahan saat panen $table->date('harvest_date'); $table->text('notes')->nullable(); $table->string('sync_status')->default('pending'); // Audit Columns $table->foreignId('created_by')->nullable()->constrained('users')->onDelete('set null'); $table->foreignId('updated_by')->nullable()->constrained('users')->onDelete('set null'); $table->foreignId('deleted_by')->nullable()->constrained('users')->onDelete('set null'); $table->timestamps(); $table->softDeletes(); }); } public function down(): void { Schema::dropIfExists('map_panen'); } };