راکت

ایجاد و ذخیره کد رهگیری طبق فرمت خاص و نمایش آن به ثبت‌نام کننده

3 پاسخ

با سلام
من یک فرم ثبت‌نام دارم که بعد از ثبت‌نام می‌خوام یک کد رهگیری یونیک با فرمت 990001 به ازای هر ثبت نام ایجاد بشه که با اضافه شدن هر رکورد یک واحد به این عدد اضافه میشه و پس از ثبت رکورد کد رهگیری مربوطه به کاربر نمایش داده بشه. حالا در لاراول به صورت منطقی باید چکار کرد؟
کد در چه مرحله‌ای تولید بشه و در کدوم مرحله فیلد آخرین رکورد بررسی بشه که نسبت به اون کد جدید ساخته بشه و آیا در لاراول فانکشنی برای این کار وجود داره.
ممنون میشم تجربیاتتون رو در اختیارم قرار بدید.

احسان
احسان
@ehsan99
ثبت پرسش جدید

پاسخ‌ها

3
محمدجواد صیدی
محمدجواد صیدی
@mrjavadseydi

تخصص: برنامه نویس وب

سلام
برای اینکه از عدد خاصی شروع بشه از این روش استفاده کنید

    Schema::create('users', function (Blueprint $table) {
    $table->bigIncrements('id')->unsigned();
    $table->integer('test1')->nullable();
    $table->integer('test2')->nullable();
});

DB::update("ALTER TABLE users AUTO_INCREMENT = 990001;");
Muhammad
Muhammad
@muhammad

تخصص: Back-End Developer

من باشم این کد رو به صورت داینامیک داخل مدلم می سازم.
کافیه که ۹۹۰۰۰۰ رو با آیدی یوزر جمع کنید تا این کد به دست بیاد.

شاید پاسخ شما همین‌جا باشد

بهزاد عزیزان
بهزاد عزیزان
@behzad.azizan

به نظرم یه فیلد از char به اسم مثلا tracking_code تعریف کنید
متد save مدلتونو اورراید کنید و در صورتی که فید tracking_code مقدار نداشت مقدار دهی کنید. (یه متد protected توی مدل بزارید که کارش جنریت کردن این کد هست که داخل اون میتونید بر اساس نیازسنجی خودتون یه رشته ایجاد کنید برای این فیلد)

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام