Compare commits

..

No commits in common. '22f99b29fa976d650682ae765f561ed77fc92783' and 'eee7c263ab0f989b82199c8f904fa3e1070c3b3c' have entirely different histories.

@ -17,8 +17,8 @@ class TvController extends Controller {
public function checkUpdate(Request $request) { public function checkUpdate(Request $request) {
$request->validate(['id' => 'nullable|integer', $request->validate(['id' => 'nullable|integer',
'apk_version_code' => 'required|integer', 'version_code' => 'required|integer',
'apk_version_name' => 'required|string']); 'version_name' => 'required|string']);
$tv = null; $tv = null;
$latestApkUpdate = null; $latestApkUpdate = null;
@ -26,8 +26,8 @@ class TvController extends Controller {
if($request->id) { if($request->id) {
$tv = Tv::find($request->id); $tv = Tv::find($request->id);
$tv->last_connected_at = now(); $tv->last_connected_at = now();
$tv->apk_version_code = $request->apk_version_code; $tv->version_code = $request->version_code;
$tv->apk_version_name = $request->apk_version_name; $tv->version_name = $request->version_name;
$tv->save(); $tv->save();
$latestApkUpdate = ApkUpdate::getLatest(); $latestApkUpdate = ApkUpdate::getLatest();
$latestVideoUpdate = VideoUpdate::getLatestSelected(); $latestVideoUpdate = VideoUpdate::getLatestSelected();

@ -133,6 +133,7 @@ class NewTvRequest extends Model {
if($tvRequest->code) $tvRequest->merge(['code' => strtoupper($tvRequest->code)]); if($tvRequest->code) $tvRequest->merge(['code' => strtoupper($tvRequest->code)]);
$tvRequest->validate([ $tvRequest->validate([
'code' => 'required|string|unique:App\Models\Tv,code',
'company_name' => 'nullable|string', 'company_name' => 'nullable|string',
'address' => 'nullable|string', 'address' => 'nullable|string',
'street_address' => 'nullable|string', 'street_address' => 'nullable|string',
@ -156,7 +157,7 @@ class NewTvRequest extends Model {
try { try {
DB::beginTransaction(); DB::beginTransaction();
$tv = new Tv(); $tv = new Tv();
$tv->code = TV::generateUniqueCode(); $tv->code = $tvRequest->code;
$tv->company_name = $tvRequest->company_name; $tv->company_name = $tvRequest->company_name;
$tv->address = $tvRequest->address; $tv->address = $tvRequest->address;
$tv->street_address = $tvRequest->street_address; $tv->street_address = $tvRequest->street_address;

@ -15,7 +15,6 @@ use Illuminate\Database\Eloquent\Relations\HasOne;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\DB;
use Illuminate\Validation\Rule; use Illuminate\Validation\Rule;
use Illuminate\Support\Str;
class Tv extends Model { class Tv extends Model {
use HasFactory; use HasFactory;
@ -41,22 +40,6 @@ class Tv extends Model {
//------------------------------------------------------------ //------------------------------------------------------------
// -- RELATED TO DATA FUNCTION // -- RELATED TO DATA FUNCTION
public static function generateUniqueCode() {
// init
$totalSuffixDigit = 5;
date_default_timezone_set('Asia/Jakarta');
$prefixCode = 'TV' . date('Ym');
// try to get unique suffix
$uniqueCode = '';
while(true) {
$suffixCode = strtoupper(Str::random($totalSuffixDigit));
$uniqueCode = $prefixCode . $suffixCode;
$isUnique = TV::where('code', $uniqueCode)->first();
if(!$isUnique) break;
}
return $uniqueCode;
}
// -- END RELATED TO DATA FUNCTION // -- END RELATED TO DATA FUNCTION
//------------------------------------------------------------ //------------------------------------------------------------

@ -11,10 +11,11 @@ return new class extends Migration {
public function up(): void { public function up(): void {
Schema::create('tvs', function (Blueprint $table) { Schema::create('tvs', function (Blueprint $table) {
$table->id(); $table->id();
$table->foreignId('outlet_fk')->nullable();
$table->string('code', 50)->unique(); $table->string('code', 50)->unique();
$table->string('ik_address_id', 255)->nullable(); $table->string('ik_address_id', 255)->nullable();
$table->integer('apk_version_code')->nullable(); $table->integer('version_code')->nullable();
$table->string('apk_version_name')->nullable(); $table->string('version_name')->nullable();
$table->string('company_name')->nullable(); $table->string('company_name')->nullable();
$table->string('address')->nullable(); $table->string('address')->nullable();
$table->string('street_address')->nullable(); $table->string('street_address')->nullable();

Loading…
Cancel
Save