<?php

use Hyperf\Database\Schema\Schema;
use Hyperf\Database\Schema\Blueprint;
use Hyperf\Database\Migrations\Migration;

return new class extends Migration
{
    /**
     * Run the migrations.
     */
    public function up(): void
    {
        Schema::create('skus_origin', function (Blueprint $table) {

            $table->comment('存储客户原始 SKU');

            $table->bigIncrements('id')->comment('主键');
            $table->integer('company_id')->comment('公司 ID 与 Tools 保持一致');
            $table->text('sku')->comment('客户侧提供的 SKU - 作为向客户提供数据报表的基准');
            $table->text('hs')->nullable()->comment('海关商品分类编码');
            $table->text('barcode')->comment('客户侧提供的 条形码/GTIN 编码');
            $table->text('name')->comment('客户侧提供的 产品名称');
            $table->text('label')->nullable()->default(null)->comment('客户侧提供的 产品 中文 名称');
            $table->text('ledger')->nullable()->default(null)->comment('账册与批次备注');
            $table->jsonb('ext')->nullable()->default(null)->comment('扩展字段');
            $table->timestampsTz();

            // 创建联合唯一索引
            $table->unique(['company_id', 'sku'], 'uk_company_sku');
        });


    }

    /**
     * Reverse the migrations.
     */
    public function down(): void
    {
        Schema::dropIfExists('skus_origin');
    }
};
 