fix(reliability): resolve F-12 — wrap AdminController write operations in DB::transaction()
This commit is contained in:
@@ -71,20 +71,21 @@ class AdminController extends Controller
|
||||
$waterlevel = $request->has('waterlevel') ? 1 : 0;
|
||||
$siren = $request->has('siren') ? 1 : 0;
|
||||
|
||||
DB::table('station')->insert([
|
||||
'stationid' => $validated['stationid'],
|
||||
'name' => $validated['stationname'],
|
||||
'district' => $validated['district'],
|
||||
'lng' => $validated['longitude'],
|
||||
'lat' => $validated['latitude'],
|
||||
'mainriverbasin' => $validated['mainriverbasin'],
|
||||
'subriverbasin' => $validated['subriverbasin'],
|
||||
'rainfall' => $rainfall,
|
||||
'waterlevel' => $waterlevel,
|
||||
'siren' => $siren,
|
||||
'cctv_link' => $validated['cctv_link'],
|
||||
|
||||
]);
|
||||
DB::transaction(function () use ($validated, $rainfall, $waterlevel, $siren) {
|
||||
DB::table('station')->insert([
|
||||
'stationid' => $validated['stationid'],
|
||||
'name' => $validated['stationname'],
|
||||
'district' => $validated['district'],
|
||||
'lng' => $validated['longitude'],
|
||||
'lat' => $validated['latitude'],
|
||||
'mainriverbasin' => $validated['mainriverbasin'],
|
||||
'subriverbasin' => $validated['subriverbasin'],
|
||||
'rainfall' => $rainfall,
|
||||
'waterlevel' => $waterlevel,
|
||||
'siren' => $siren,
|
||||
'cctv_link' => $validated['cctv_link'],
|
||||
]);
|
||||
});
|
||||
|
||||
return redirect()->back()->with('success',__('toast.stationsuccess'));
|
||||
|
||||
@@ -101,16 +102,18 @@ class AdminController extends Controller
|
||||
'access_level' => 'required|integer',
|
||||
]);
|
||||
|
||||
DB::table('users')->insert([
|
||||
'name' => $validated['name'],
|
||||
'email' => $validated['email'] ?? null,
|
||||
'password' => bcrypt($validated['password']),
|
||||
'access_level' => $validated['access_level'],
|
||||
'login_attempts' => 0,
|
||||
'is_blocked' => 0,
|
||||
'created_at' => now(),
|
||||
'updated_at' => now(),
|
||||
]);
|
||||
DB::transaction(function () use ($validated) {
|
||||
DB::table('users')->insert([
|
||||
'name' => $validated['name'],
|
||||
'email' => $validated['email'] ?? null,
|
||||
'password' => bcrypt($validated['password']),
|
||||
'access_level' => $validated['access_level'],
|
||||
'login_attempts' => 0,
|
||||
'is_blocked' => 0,
|
||||
'created_at' => now(),
|
||||
'updated_at' => now(),
|
||||
]);
|
||||
});
|
||||
|
||||
return redirect()->back()->with('success', __('toast.usersuccess'));
|
||||
|
||||
@@ -175,34 +178,32 @@ class AdminController extends Controller
|
||||
|
||||
]);
|
||||
|
||||
if ($request->has('is_blocked'))
|
||||
{
|
||||
DB::transaction(function () use ($request, $validated, $userid) {
|
||||
if ($request->has('is_blocked'))
|
||||
{
|
||||
DB::table('users')->where('id',$userid)
|
||||
->update([
|
||||
'is_blocked' => 0,
|
||||
'login_attempts' => 0,
|
||||
'updated_at' => now(),
|
||||
]);
|
||||
|
||||
}else{
|
||||
DB::table('users')->where('id',$userid)
|
||||
->update([
|
||||
'is_blocked' => 1,
|
||||
'updated_at' => now(),
|
||||
]);
|
||||
}
|
||||
|
||||
DB::table('users')->where('id',$userid)
|
||||
->update([
|
||||
'is_blocked' => 0,
|
||||
'login_attempts' => 0,
|
||||
'updated_at' => now(),
|
||||
'name' => $validated['name'],
|
||||
'email' => $validated['email'],
|
||||
'access_level' => $validated['access_level'],
|
||||
'updated_at' => now(),
|
||||
]);
|
||||
|
||||
}else{
|
||||
DB::table('users')->where('id',$userid)
|
||||
->update([
|
||||
'is_blocked' => 1,
|
||||
'updated_at' => now(),
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
|
||||
DB::table('users')->where('id',$userid)
|
||||
->update([
|
||||
|
||||
'name' => $validated['name'],
|
||||
'email' => $validated['email'],
|
||||
'access_level' => $validated['access_level'],
|
||||
'updated_at' => now(),
|
||||
|
||||
]);
|
||||
});
|
||||
|
||||
return redirect()->back()->with('success',__('toast.userupdated'));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user