updated column name, updated Api license checkin and out

This commit is contained in:
Godfrey M 2025-01-16 11:53:15 -08:00
parent 344b4e7d60
commit f47a2b10c0
7 changed files with 15 additions and 9 deletions

View file

@ -1535,7 +1535,7 @@ class Helper
{
if (!$license->reassignable) {
$count = LicenseSeat::where('unavailable', '=', true)
$count = LicenseSeat::where('dead', '=', true)
->where('license_id', '=', $license->id)
->count();
return $count;

View file

@ -119,7 +119,9 @@ class LicenseSeatsController extends Controller
// nothing to update
return response()->json(Helper::formatStandardApiResponse('success', $licenseSeat, trans('admin/licenses/message.update.success')));
}
if( $touched && $licenseSeat->dead) {
return response()->json(Helper::formatStandardApiResponse('error', $licenseSeat, trans('admin/licenses/message.checkout.unavailable')));
}
// the logging functions expect only one "target". if both asset and user are present in the request,
// we simply let assets take precedence over users...
if ($licenseSeat->isDirty('assigned_to')) {
@ -137,6 +139,10 @@ class LicenseSeatsController extends Controller
if ($is_checkin) {
$licenseSeat->logCheckin($target, $request->input('note'));
if(!$licenseSeat->license->ressignable){
$licenseSeat->dead = 1;
$licenseSeat->save();
}
return response()->json(Helper::formatStandardApiResponse('success', $licenseSeat, trans('admin/licenses/message.update.success')));
}

View file

@ -96,7 +96,7 @@ class LicenseCheckinController extends Controller
$licenseSeat->asset_id = null;
$licenseSeat->notes = $request->input('notes');
if (! $licenseSeat->license->reassignable) {
$licenseSeat->unavailable = 1;
$licenseSeat->dead = 1;
$licenseSeat->notes .= "\n" . trans('admin/licenses/message.checkin.not_reassignable') . '.';
}

View file

@ -49,7 +49,7 @@ class LicenseSeatsTransformer
'reassignable' => (bool) $seat->license->reassignable,
'notes' => e($seat->notes),
'user_can_checkout' => (($seat->assigned_to == '') && ($seat->asset_id == '')),
'disabled' => $seat->unavailable,
'disabled' => $seat->dead,
];
if ($seat_count != 0) {

View file

@ -14,7 +14,7 @@ class LicenseSeatFactory extends Factory
{
return [
'license_id' => License::factory(),
'unavailable' => 0,
'dead' => 0,
];
}

View file

@ -14,7 +14,7 @@ return new class extends Migration
public function up(): void
{
Schema::table('license_seats', function (Blueprint $table) {
$table->addColumn('boolean', 'unavailable')->default(false)->after('assigned_to');
$table->addColumn('boolean', 'dead')->default(false)->after('assigned_to');
});
}
/**
@ -22,8 +22,8 @@ return new class extends Migration
*/
public function down(): void
{
Schema::table('license_seats_tables', function (Blueprint $table) {
$table->dropColumn('unavailable');
Schema::table('license_seats', function (Blueprint $table) {
$table->dropColumn('dead');
});
}
};

View file

@ -32,7 +32,7 @@ class LicenseCheckinTest extends TestCase
$licenseSeat->refresh();
$this->assertEquals(1, $licenseSeat->unavailable);
$this->assertEquals(1, $licenseSeat->dead);
}
public function testCannotCheckinLicenseThatIsNotAssigned()