Pembahasan Soal LKS Web Technologies Module-Server

  • Diposting oleh:
  • Diposting pada:
  • Kategori:
    LKSLKS
  • Sistem:
    Tidak diketahui
  • Harga:
    USD 0
  • Dilihat:
    1437

Membuat Controller User

Pertama, buatlah controller dengan nama userController terlebih dahulu. Buka terminal dan ketikkan kode di bawah ini.

php artisan make:controller userController

Kemudian masuk ke app/Http/Controllers/userController.php

Dapatkan Semua Data Admin

Ayo buat fungsi admin, saya sudah menyiapkan kode. Kamu bisa mengcopy kode di bawah ini.


public function admin(){
        try {
            $admin = administrator::all()->makeHidden('password');
            $count = administrator::count();

            return response()->json(['totalElements'=>$count,'content'=>$admin],200);
        } catch (\Throwable $th) {
            return response()->json(['status' => 'error', 'message' => $th->getMessage()], 422);

        }
    }

Kemudian masuk kedalam routes/api.php lalu ketikkan kode dibawah untuk membuat routing api nya.

Route::get('/v1/admins',[usersController::class, 'admin']);

Tambahkan routing di atas ke dalam middleware yang telah kita buat sebelumnya.

Mari kita test, bila berhasil maka akan seperti ini yaa!

lks web technology

Membuat Fungsi Index

Ayo buat fungsi index, saya sudah menyiapkan kode. Kamu bisa mengcopy kode di bawah ini.


 public function index(){
        try {
            $data = society::all();
            $count = society::count();

            return response()->json(['totalElements'=>$count,'content'=>$data],200);
        } catch (\Throwable $th) {
            return response()->json(['status' => 'error', 'message' => $th->getMessage()], 422);
        }
    }

Kemudian masuk kedalam routes/api.php lalu ketikkan kode dibawah untuk membuat routing api nya.

Route::get('/v1/users',[usersController::class, 'index']);

Tambahkan routing di atas ke dalam middleware yang telah kita buat sebelumnya.

Mari kita test, jika berhasil akan seperti ini yaa!

lks web technology

Membuat Fungsi Show

Ayo buat fungsi show, saya sudah menyiapkan kode. Kamu bisa mengcopy kode di bawah ini.


 public function show($username){
        try {
            $data = society::where('username',$username)->get();

            return response()->json([
                'totalElements'=>$data->count(),
                'content'=>$data
            ]);
        } catch (\Throwable $th) {
            return response()->json(['status' => 'error', 'message' => $th->getMessage()], 422);
        }
    }

Kemudian masuk kedalam routes/api.php lalu ketikkan kode dibawah untuk membuat routing api nya.

Route::get('/v1/users/{username}',[usersController::class, 'show']);

Tambahkan routing di atas ke dalam middleware yang telah kita buat sebelumnya.

Mari kita test, jika berhasil akan seperti ini yaa!

lks web technology

Membuat Fungsi create

Ayo buat fungsi create, saya sudah menyiapkan kode. Kamu bisa mengcopy kode di bawah ini.


 public function create(Request $request){
        try {
            $request->validate([
                'username'=>'required|unique:users,username|min:4|max:60',
                'password'=>'required|min:5|max:10'
            ]);

            $user = new society();
            $user->username = $request->username;
            $user->password = Hash::make($request->password);
            $user->save();

            return response()->json(['status'=>'success','username'=>$user->username],200);
        } catch (\Throwable $th) {
            return response()->json(['status' => 'error', 'message' => $th->getMessage()], 422);
        }
    }

Kemudian masuk kedalam routes/api.php lalu ketikkan kode dibawah untuk membuat routing api nya.

Route::post('/v1/users',[usersController::class, 'create']);

Tambahkan routing di atas ke dalam middleware yang telah kita buat sebelumnya.

Mari kita test, jika berhasil akan seperti ini yaa!

lks web technology

Membuat Fungsi Update

Ayo buat fungsi update, saya sudah menyiapkan kode. Kamu bisa mengcopy kode di bawah ini.


public function update($id, Request $request){
        try {
            $request->validate([
                'username'=>'required|unique:users,username|min:4|max:60',
                'password'=>'required|min:5|max:10'
            ]);

            $user = society::where('id', $id)->first();

            if(!$user){
                return response()->json(["status"=> "not-found",
                "message"=> "User Not found"
                ]);
            }

            $user->update([
                'username' => $request->username ? $request->username : $user->username,
                'password'=> $request->password ? Hash::make($request->password) : $user->password
            ]);

            return response()->json(['status'=>'success','username'=>$user->username],200);
        } catch (\Throwable $th) {
            return response()->json(['status' => 'error', 'message' => $th->getMessage()], 422);
        }
    }

Kemudian masuk kedalam routes/api.php lalu ketikkan kode dibawah untuk membuat routing api nya.

Route::put('/v1/users/{id}',[usersController::class,'update']);

Tambahkan routing di atas ke dalam middleware yang telah kita buat sebelumnya.

lks web technology

 Membuat Fungsi Delete

Ayo buat fungsi delete, saya sudah menyiapkan kode. Kamu bisa mengcopy kode di bawah ini.


public function delete($id){
        try {
            $user = society::where('id', $id)->first();

            if(!$user){
                return response()->json(['status'=>'invalid','message'=>'user not found'],422);
            }

            $user->delete();

            return response()->json();
        } catch (\Throwable $th) {
            return response()->json(['status' => 'error', 'message' => $th->getMessage()], 422);
        }
    }

Kemudian masuk kedalam routes/api.php lalu ketikkan kode dibawah untuk membuat routing api nya.

Route::delete('/v1/users/{id}',[usersController::class,'delete']);

Tambahkan routing di atas ke dalam middleware yang telah kita buat sebelumnya.

Rating

0

( 0 Votes )
Silahkan Rating!
Pembahasan Soal LKS Web Technologies Module-Server

No votes so far! Be the first to rate this post.

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *