AI Review Center
Commit Review Workspace ?
Select a commit on the left to inspect quality, security, business value, findings, and suggested code changes.
Project AI Score
?
67%
Quality Avg
?
72%
Security Avg
?
54%
Reviews
?
37
Review Result ?
jattin01/army · e94679dc
The commit adds controllers with structured code including input validation, transaction handling, and relational data fetching. The code follows Laravel conventions and ensures data integrity with transactions and validation, although some minor improvements could enhance security and error management. The commit message is poor and lacks meaningful information.
Quality
?
80%
Security
?
70%
Business Value
?
75%
Maintainability
?
85%
Issues & Suggested Fixes
?
1AI detects the issue
2Shows file, line, or evidence
3Suggests the fix to apply
Poor Description
Where
commit message
Issue / Evidence
poor description
Suggested Fix
provide a clear, concise, and descriptive commit message to improve maintainability and traceability
Missing Validation
Where
app/Http/Controllers/CrcEntryController.php:26-41
Issue / Evidence
validation is good but lacks explicit sanitization
Suggested Fix
consider sanitizing inputs where necessary for improved security
Error Message Exposes Exception Message
Where
app/Http/Controllers/CrcEntryController.php:87
Issue / Evidence
error message exposes exception message
Suggested Fix
change this to a generic user-friendly message to avoid information leakage and improve security
Crc Date Uses Current Date, Might Be Inacc...
Where
app/Http/Controllers/CrcEntryController.php:52-53
Issue / Evidence
crc_date uses current date, might be inaccurate
Suggested Fix
consider using validated input or explain rationale
Facade Imports Can Be Optimized For Clarit...
Where
app/Http/Controllers/CrcEntryController.php:10-12
Issue / Evidence
facade imports can be optimized for clarity
Suggested Fix
use alias or import specific classes to improve readability
Consider Adding Pagination And Result Limi...
Where
app/Http/Controllers/EquipmentReportController.php:23-79
Issue / Evidence
consider adding pagination and result limits to large queries for performance
Suggested Fix
Review and simplify this section.
Missing Validation
Where
app/Http/Controllers/EquipmentReportController.php:23-79
Issue / Evidence
no request input validation observed
Suggested Fix
add validation rules for filter parameters to reduce risk of injection or improper queries
Code Change Preview · app/Http/Controllers/CrcEntryController.php
?
Removed / Before Commit
Added / After Commit
+ <?php + + namespace App\Http\Controllers; + + use App\Models\CrcEntry; + use App\Models\CrcIvUnit; + use App\Models\CrcIvPart; + use App\Models\CrcPartMaster; + use Illuminate\Http\Request; + use App\Models\Unit; + use App\Models\MasterCommand; + use DB; + + class CrcEntryController extends Controller + { + public function create() + { + $units = Unit::select('id', 'name')->get();
Removed / Before Commit
Added / After Commit
+ <?php + + namespace App\Http\Controllers; + use App\Models\WorkEquipment; + use App\Models\Group; + use App\Models\Unit; + use Illuminate\Http\Request; + use App\Models\Div; + use App\Models\MasterCommand; + use App\Models\Wksp; + use App\Models\Corp; + use App\Models\Co; + use App\Models\RepairClass; + use App\Models\Equipment; + use App\Models\SubAssyEquipment; + use App\Models\WorkOrder; + use Carbon\Carbon; +
Removed / Before Commit
Added / After Commit
+ <?php + + namespace App\Models; + + use Illuminate\Database\Eloquent\Model; + + class CrcEntry extends Model + { + protected $fillable = [ + 'unit_id', + 'command_id', + 'crc_no', + 'crc_date', + ]; + + public function ivUnits() + { + return $this->hasMany(CrcIvUnit::class);
Removed / Before Commit
Added / After Commit
+ <?php + + namespace App\Models; + + use Illuminate\Database\Eloquent\Model; + + class CrcIvPart extends Model + { + protected $fillable = [ + 'iv_unit_id', + 'part_no', + 'qty', + 'equipment_name', + 'nomenclature', + 'hours', + ]; + }
Removed / Before Commit
Added / After Commit
+ <?php + + namespace App\Models; + + use Illuminate\Database\Eloquent\Model; + + class CrcIvUnit extends Model + { + protected $fillable = [ + 'crc_entry_id', + 'iv_no', + 'iv_date', + 'crc_no', + ]; + + public function parts() + { + return $this->hasMany(CrcIvPart::class, 'iv_unit_id');
Removed / Before Commit
- \ No newline at end of file
Added / After Commit
+ <?php + + namespace App\Models; + + use Illuminate\Database\Eloquent\Factories\HasFactory; + use Illuminate\Database\Eloquent\Model; + + class CrcPartMaster extends Model + { + protected $table = 'crc_part_master'; + + protected $fillable = [ + 'part_no', + 'equipment_name', + 'nomenclature', + 'hours', + ]; + }
Removed / Before Commit
Added / After Commit
+ <?php + + use Illuminate\Database\Migrations\Migration; + use Illuminate\Database\Schema\Blueprint; + use Illuminate\Support\Facades\Schema; + + return new class extends Migration + { + /** + * Run the migrations. + */ + public function up(): void + { + Schema::create('crc_part_master', function (Blueprint $table) { + $table->id(); + $table->string('part_no')->unique(); + $table->string('equipment_name'); + $table->string('nomenclature');
Removed / Before Commit
Added / After Commit
+ <?php + + use Illuminate\Database\Migrations\Migration; + use Illuminate\Database\Schema\Blueprint; + use Illuminate\Support\Facades\Schema; + + return new class extends Migration + { + /** + * Run the migrations. + */ + public function up(): void + { + Schema::create('crc_entries', function (Blueprint $table) { + $table->id(); + $table->string('unit_name'); + $table->string('command_name'); + $table->string('crc_no')->unique(); // CRC/0001/2025
Removed / Before Commit
Added / After Commit
+ <?php + + use Illuminate\Database\Migrations\Migration; + use Illuminate\Database\Schema\Blueprint; + use Illuminate\Support\Facades\Schema; + + return new class extends Migration + { + /** + * Run the migrations. + */ + public function up(): void + { + Schema::create('crc_iv_units', function (Blueprint $table) { + $table->id(); + $table->foreignId('crc_entry_id')->constrained('crc_entries')->onDelete('cascade'); + $table->string('iv_no'); + $table->date('iv_date');
Removed / Before Commit
Added / After Commit
+ <?php + + use Illuminate\Database\Migrations\Migration; + use Illuminate\Database\Schema\Blueprint; + use Illuminate\Support\Facades\Schema; + + return new class extends Migration + { + /** + * Run the migrations. + */ + public function up(): void + { + Schema::create('crc_iv_parts', function (Blueprint $table) { + $table->id(); + $table->foreignId('iv_unit_id')->constrained('crc_iv_units')->onDelete('cascade'); + + $table->string('part_no');
Removed / Before Commit
Added / After Commit
+ @extends('layouts.app') + + @section('content') + <link href="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/css/select2.min.css" rel="stylesheet" /> + + <style> + .addpart { color: #008cff !important; } + .addpart:hover { color: #fff !important; } + </style> + + @if(session('success')) + <div class="alert alert-success">{{ session('success') }}</div> + @endif + + @if($errors->any()) + <div class="alert alert-danger"> + <strong>Validation failed:</strong> + <ul class="mb-0 mt-1">
Removed / Before Commit
Added / After Commit
+ @extends('layouts.app') + + @section('content') + <div class="container"> + <h2 class="mb-4">Issue IV Parts</h2> + + <form action="{{ route('crc.entries.issue.store', $crcEntry->id) }}" method="POST"> + @csrf + + <div class="mb-3"> + <button type="submit" class="btn btn-success">Submit Issued IVs</button> + </div> + + @foreach($crcEntry->ivUnits as $ivUnit) + <div class="card mb-4"> + <div class="card-header"> + <strong>IV No:</strong> {{ $ivUnit->iv_no }} | + <strong>CRC No:</strong> {{ $ivUnit->crc_no }}
Removed / Before Commit
Added / After Commit
+ @extends('layouts.app') + @section('content') + <style> + .select2-container { + width: 100% !important; + } + .select2-selection { + min-height: 32px; + } + form{ + margin-bottom: 40px; + } + </style> + <style> + .select2-results__option { + padding-left: 10px; + display: flex; + align-items: center;
Removed / Before Commit
- use App\Http\Controllers\VerticalController; - use App\Http\Controllers\MasterCommandController; - use App\Http\Controllers\SubGroupController; - use App\Http\Controllers\MasterLogoController; - use App\Http\Controllers\UnitController; - use App\Http\Controllers\WkspController; - use App\Http\Controllers\GatePassController; - use App\Http\Controllers\MRProcessController; - use App\Http\Controllers\McoUserScaleController; - use App\Http\Controllers\CrcController; - use App\Http\Controllers\CrcIvController; - use App\Http\Controllers\CrcRepairController; - use App\Http\Controllers\CrcIvRepairController; - - /* - |-------------------------------------------------------------------------- - -
Added / After Commit
+ use App\Http\Controllers\VerticalController; + use App\Http\Controllers\MasterCommandController; + use App\Http\Controllers\SubGroupController; + use App\Http\Controllers\EquipmentReportController; + use App\Http\Controllers\MasterLogoController; + use App\Http\Controllers\UnitController; + use App\Http\Controllers\WkspController; + use App\Http\Controllers\GatePassController; + use App\Http\Controllers\MRProcessController; + use App\Http\Controllers\McoUserScaleController; + use App\Http\Controllers\CrcEntryController; + + /* + |-------------------------------------------------------------------------- + + + }); + Route::prefix('crc/entries')->name('crc.entries.')->group(function () {