diff --git a/Modules/Internal/Http/Controllers/Api/AuthController.php b/Modules/Internal/Http/Controllers/Api/AuthController.php index 36ee7e4c..6c32f45d 100644 --- a/Modules/Internal/Http/Controllers/Api/AuthController.php +++ b/Modules/Internal/Http/Controllers/Api/AuthController.php @@ -4,6 +4,7 @@ namespace Modules\Internal\Http\Controllers\Api; use App\Http\Controllers\Controller; use App\Models\User; +use App\Models\Person; use Crypt; use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; @@ -136,6 +137,7 @@ class AuthController extends Controller $validator = Validator::make($request->all(), [ 'email' => 'required|email|unique:users,email', 'username' => 'required|unique:users,username', + 'name' => 'required', 'password' => [ 'required', 'min:5', @@ -154,6 +156,16 @@ class AuthController extends Controller 'password' => Hash::make($request->password), ]); + $person = Person::updateOrCreate( + [ + 'id' => $user->person_id + ], + [ + 'name' => $request->name ?? null + ] + ); + $user->person_id = $person->id; + $user->save(); return response()->json($user); } catch (\Exception $e) { return response()->json([ diff --git a/Modules/Internal/Services/MemberEnrollmentService.php b/Modules/Internal/Services/MemberEnrollmentService.php index a4f25ac7..bcaa3aef 100644 --- a/Modules/Internal/Services/MemberEnrollmentService.php +++ b/Modules/Internal/Services/MemberEnrollmentService.php @@ -937,7 +937,9 @@ class MemberEnrollmentService // $memberPlan->plan_id = $plan->id; // $memberPlan->save(); // } - + + // Hapus Member plan terkait + $member->memberPlans()->delete(); //Update plan $plans = explode(",",$row['plan_id']); if (count($plans) > 0) { diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php index ec3e3e7e..c62770ae 100644 --- a/app/Providers/AppServiceProvider.php +++ b/app/Providers/AppServiceProvider.php @@ -12,6 +12,7 @@ use App\Models\CorporateService; use App\Models\CorporatePlan; use App\Models\CorporateBenefit; use App\Models\Member; +use App\Models\MemberPlan; use App\Models\CorporateHospital; use App\Models\ExclusionRules; use App\Models\ExclusionImport; @@ -70,6 +71,11 @@ class AppServiceProvider extends ServiceProvider $this->logAuditTrail($model, 'updated'); }); + MemberPlan::updated(function ($model) { + + $this->logAuditTrail($model, 'updated'); + }); + Member::deleted(function ($model) { $this->logAuditTrail($model, 'deleted'); }); diff --git a/frontend/dashboard/src/pages/Corporates/Member/History.tsx b/frontend/dashboard/src/pages/Corporates/Member/History.tsx index d9c33aed..1e10d9f1 100644 --- a/frontend/dashboard/src/pages/Corporates/Member/History.tsx +++ b/frontend/dashboard/src/pages/Corporates/Member/History.tsx @@ -118,38 +118,38 @@ export default function MemberHistory() { - {Object.entries(item.old_values).map(([key, value]) => { - let renderedValue; - if (key === 'reason' || key === 'updated_at') { - switch (key) { - case 'updated_at': - renderedValue = fDateTime(item.new_values[key]); - value = fDateTime(value); - break; - default: - renderedValue = item.new_values[key]; - break; + {Object.entries(item.old_values).map(([key, value]) => { + let renderedValue; + if (renderedValue !== value) { + switch (key) { + case 'updated_at': + renderedValue = fDateTime(item.new_values[key]); + value = fDateTime(value); + break; + default: + renderedValue = item.new_values[key]; + break; + } + const field = key.charAt(0).toUpperCase() + key.slice(1); + + return ( + + + {field ? field : '-'} + + + {value ? value : '-'} + + + {renderedValue ? renderedValue : ''} + + + ); } - const field = key.charAt(0).toUpperCase() + key.slice(1); - - return ( - - - {field ? field : '-'} - - - {value ? value : '-'} - - - {renderedValue ? renderedValue : ''} - - - ); - } - else{ - return null; - } - })} + else{ + return null; + } + })}