Compare commits
5 Commits
ce901e3b78
...
gha-test
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
bfed40f535 | ||
|
|
83f98d9e83 | ||
|
|
3d84661640 | ||
|
|
26ecaf49ef | ||
|
|
5fe2b74174 |
30
.github/workflows/pint.yaml
vendored
Normal file
30
.github/workflows/pint.yaml
vendored
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
name: Laravel Pint
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
pint:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
# Reinstall system libraries to ensure compatibility
|
||||||
|
- name: Ensure system libraries are up-to-date
|
||||||
|
run: |
|
||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get install --reinstall --yes git libc6
|
||||||
|
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Set up PHP
|
||||||
|
uses: shivammathur/setup-php@v2
|
||||||
|
with:
|
||||||
|
php-version: "8.3"
|
||||||
|
|
||||||
|
- name: Install dependencies
|
||||||
|
run: composer install --no-interaction --prefer-dist --no-progress
|
||||||
|
|
||||||
|
# Run pint in test mode, check only files different from master branch
|
||||||
|
- name: Run Laravel Pint in test mode
|
||||||
|
run: vendor/bin/pint --test --diff=master
|
||||||
@@ -433,12 +433,6 @@ class ProductionQuantityPage extends Page implements HasForms
|
|||||||
$this->recQr = $itemCode && $serialNumber ? "{$itemCode} | {$serialNumber}" : null;
|
$this->recQr = $itemCode && $serialNumber ? "{$itemCode} | {$serialNumber}" : null;
|
||||||
}
|
}
|
||||||
|
|
||||||
Notification::make()
|
|
||||||
->title("Scanned the valid QR code is $formQRData)")
|
|
||||||
->info()
|
|
||||||
->send();
|
|
||||||
|
|
||||||
|
|
||||||
if (empty($formQRData)) {
|
if (empty($formQRData)) {
|
||||||
$this->form->fill([
|
$this->form->fill([
|
||||||
'plant_id'=> $this->pId,
|
'plant_id'=> $this->pId,
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
namespace App\Http\Controllers;
|
namespace App\Http\Controllers;
|
||||||
|
|
||||||
use App\Models\InvoiceValidation;
|
use App\Models\InvoiceValidation;
|
||||||
|
use App\Models\ModuleList;
|
||||||
use App\Models\Plant;
|
use App\Models\Plant;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
|
|
||||||
@@ -16,6 +17,62 @@ class ModuleInvoiceTypeController extends Controller
|
|||||||
//
|
//
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function get_invoiceFilter(Request $request)
|
||||||
|
{
|
||||||
|
$expectedUser = env('API_AUTH_USER');
|
||||||
|
$expectedPw = env('API_AUTH_PW');
|
||||||
|
|
||||||
|
$header_auth = $request->header('Authorization');
|
||||||
|
$expectedToken = $expectedUser . ':' . $expectedPw;
|
||||||
|
|
||||||
|
if ("Bearer " . $expectedToken != $header_auth)
|
||||||
|
{
|
||||||
|
return response()->json([
|
||||||
|
'status_code' => 'ERROR',
|
||||||
|
'status_description' => 'Invalid authorization token!'
|
||||||
|
], 403);
|
||||||
|
}
|
||||||
|
|
||||||
|
$filterName = $request->header('filter-name');
|
||||||
|
|
||||||
|
if (empty($filterName))
|
||||||
|
{
|
||||||
|
return response()->json([
|
||||||
|
'status_code' => 'ERROR',
|
||||||
|
'status_description' => "Filter Name can't be empty!"
|
||||||
|
], 404);
|
||||||
|
}
|
||||||
|
|
||||||
|
$headerValue = $request->header('filter-name');
|
||||||
|
|
||||||
|
if ($headerValue != 'Filter List') {
|
||||||
|
return response()->json([
|
||||||
|
'status_code' => 'ERROR',
|
||||||
|
'status_description' => "Invalid value for 'module-name' header!"
|
||||||
|
], 404);
|
||||||
|
}
|
||||||
|
|
||||||
|
$uniqueModules = ModuleList::select('filter_name', 'created_at')
|
||||||
|
->orderBy('created_at', 'asc')
|
||||||
|
->get()
|
||||||
|
->unique('filter_name')
|
||||||
|
->pluck('filter_name')
|
||||||
|
->values();
|
||||||
|
|
||||||
|
if ($uniqueModules->isEmpty()) {
|
||||||
|
return response()->json([
|
||||||
|
'status_code' => 'ERROR',
|
||||||
|
'status_description' => 'Filter names not found'
|
||||||
|
], 404);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
return response()->json([
|
||||||
|
'status_code' => 'SUCCESS',
|
||||||
|
'status_description' => $uniqueModules
|
||||||
|
], 200);
|
||||||
|
}
|
||||||
|
|
||||||
// public function get_invoiceCountData(Request $request)
|
// public function get_invoiceCountData(Request $request)
|
||||||
// {
|
// {
|
||||||
// $expectedUser = env('API_AUTH_USER');
|
// $expectedUser = env('API_AUTH_USER');
|
||||||
|
|||||||
@@ -27,6 +27,126 @@ class StickerMasterController extends Controller
|
|||||||
//
|
//
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function get_master_type(Request $request)
|
||||||
|
{
|
||||||
|
$expectedUser = env('API_AUTH_USER');
|
||||||
|
$expectedPw = env('API_AUTH_PW');
|
||||||
|
$header_auth = $request->header('Authorization');
|
||||||
|
$expectedToken = $expectedUser . ':' . $expectedPw;
|
||||||
|
|
||||||
|
if ("Bearer " . $expectedToken != $header_auth)
|
||||||
|
{
|
||||||
|
return response()->json([
|
||||||
|
'status_code' => 'ERROR',
|
||||||
|
'status_description' => 'Invalid authorization token!'
|
||||||
|
], 403);
|
||||||
|
}
|
||||||
|
|
||||||
|
$plantCode = $request->header('plant-code');
|
||||||
|
$itemCode = $request->header('item-code');
|
||||||
|
|
||||||
|
if ($plantCode == null || $plantCode == '')
|
||||||
|
{
|
||||||
|
return response()->json([
|
||||||
|
'status_code' => 'ERROR',
|
||||||
|
'status_description' => "Plant code can't be empty!"
|
||||||
|
], 400);
|
||||||
|
}
|
||||||
|
else if (Str::length($plantCode) < 4 || !is_numeric($plantCode) || !preg_match('/^[1-9]\d{3,}$/', $plantCode))
|
||||||
|
{
|
||||||
|
return response()->json([
|
||||||
|
'status_code' => 'ERROR',
|
||||||
|
'status_description' => "Invalid plant code found!"
|
||||||
|
], 400);
|
||||||
|
}
|
||||||
|
else if ($itemCode == null || $itemCode == '')
|
||||||
|
{
|
||||||
|
return response()->json([
|
||||||
|
'status_code' => 'ERROR',
|
||||||
|
'status_description' => "Item Code can't be empty!"
|
||||||
|
], 400);
|
||||||
|
}
|
||||||
|
else if (Str::length($itemCode) < 6 || !ctype_alnum($itemCode))
|
||||||
|
{
|
||||||
|
return response()->json([
|
||||||
|
'status_code' => 'ERROR',
|
||||||
|
'status_description' => "Invalid item code found!"
|
||||||
|
], 400);
|
||||||
|
}
|
||||||
|
|
||||||
|
$plant = Plant::where('code', $plantCode)->first();
|
||||||
|
|
||||||
|
if (!$plant) {
|
||||||
|
return response()->json([
|
||||||
|
'status_code' => 'ERROR',
|
||||||
|
'status_description' => "Plant not found!"
|
||||||
|
], 400);
|
||||||
|
}
|
||||||
|
|
||||||
|
$plantId = $plant->id;
|
||||||
|
|
||||||
|
$item = Item::where('code', $itemCode)->first();
|
||||||
|
|
||||||
|
if (!$item)
|
||||||
|
{
|
||||||
|
return response()->json([
|
||||||
|
'status_code' => 'ERROR',
|
||||||
|
'status_description' => "Item Code not found in item table!"
|
||||||
|
], 404);
|
||||||
|
}
|
||||||
|
|
||||||
|
$item = Item::where('plant_id', $plantId)->where('code', $itemCode)->first();
|
||||||
|
|
||||||
|
if (!$item)
|
||||||
|
{
|
||||||
|
return response()->json([
|
||||||
|
'status_code' => 'ERROR',
|
||||||
|
'status_description' => "Item Code not found in item table for the plant : '$plant->name'!"
|
||||||
|
], 404);
|
||||||
|
}
|
||||||
|
|
||||||
|
$stickerMaster = StickerMaster::where('plant_id', $plantId)->where('item_id', $item->id)->first();
|
||||||
|
|
||||||
|
if (!$stickerMaster)
|
||||||
|
{
|
||||||
|
return response()->json([
|
||||||
|
'status_code' => 'ERROR',
|
||||||
|
'status_description' => "Item Code not found in sticker master table for the plant : '$plant->name'!"
|
||||||
|
], 404);
|
||||||
|
}
|
||||||
|
$serial_number_motor = $stickerMaster->serial_number_motor ?? null;
|
||||||
|
$serial_number_pump = $stickerMaster->serial_number_pump ?? null;
|
||||||
|
|
||||||
|
if ($serial_number_motor != 1 && $serial_number_pump != 1) {
|
||||||
|
return response()->json([
|
||||||
|
'status_code' => 'ERROR',
|
||||||
|
'status_description' => "The Item Code '$itemCode' does not have serial pump or serial motor selected!"
|
||||||
|
], 400);
|
||||||
|
}
|
||||||
|
|
||||||
|
$serialInfo = [];
|
||||||
|
|
||||||
|
if ($serial_number_motor == 1 && $serial_number_pump == 1)
|
||||||
|
{
|
||||||
|
$serialInfo[] = 'Serial Pump';
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if ($serial_number_motor == 1) {
|
||||||
|
$serialInfo[] = 'Serial Motor';
|
||||||
|
}
|
||||||
|
if ($serial_number_pump == 1) {
|
||||||
|
$serialInfo[] = 'Serial Pump';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$output = [
|
||||||
|
'status_code' => 'SUCCESS',
|
||||||
|
'status_description' => implode(', ', $serialInfo),
|
||||||
|
];
|
||||||
|
return response()->json($output, 200);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Display the specified resource.
|
* Display the specified resource.
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -127,6 +127,9 @@ class PermissionSeeder extends Seeder
|
|||||||
Permission::updateOrCreate(['name' => 'view import mfm parameter']);
|
Permission::updateOrCreate(['name' => 'view import mfm parameter']);
|
||||||
Permission::updateOrCreate(['name' => 'view export mfm parameter']);
|
Permission::updateOrCreate(['name' => 'view export mfm parameter']);
|
||||||
|
|
||||||
|
Permission::updateOrCreate(['name' => 'view import mfm meter']);
|
||||||
|
Permission::updateOrCreate(['name' => 'view export mfm meter']);
|
||||||
|
|
||||||
//Dashboard Permissions
|
//Dashboard Permissions
|
||||||
Permission::updateOrCreate(['name' => 'view invoice dashboard']); //invoice dashboard
|
Permission::updateOrCreate(['name' => 'view invoice dashboard']); //invoice dashboard
|
||||||
Permission::updateOrCreate(['name' => 'view production hourly count dashboard']); //hourly production
|
Permission::updateOrCreate(['name' => 'view production hourly count dashboard']); //hourly production
|
||||||
@@ -137,6 +140,8 @@ class PermissionSeeder extends Seeder
|
|||||||
Permission::updateOrCreate(['name' => 'view guard patrol day count dashboard']);
|
Permission::updateOrCreate(['name' => 'view guard patrol day count dashboard']);
|
||||||
Permission::updateOrCreate(['name' => 'view guard patrol hourly count dashboard']);
|
Permission::updateOrCreate(['name' => 'view guard patrol hourly count dashboard']);
|
||||||
Permission::updateOrCreate(['name' => 'view invoice serial quantity dashboard']);
|
Permission::updateOrCreate(['name' => 'view invoice serial quantity dashboard']);
|
||||||
|
Permission::updateOrCreate(['name' => 'create production sticker reprint page']);
|
||||||
|
|
||||||
|
|
||||||
//Send To Sap Permissions
|
//Send To Sap Permissions
|
||||||
Permission::updateOrCreate(['name' => 'view quality data send to sap']);
|
Permission::updateOrCreate(['name' => 'view quality data send to sap']);
|
||||||
|
|||||||
@@ -21,6 +21,7 @@ use App\Http\Controllers\ModuleProductionOrderDataController;
|
|||||||
use App\Http\Controllers\ObdController;
|
use App\Http\Controllers\ObdController;
|
||||||
use App\Http\Controllers\PalletController;
|
use App\Http\Controllers\PalletController;
|
||||||
use App\Http\Controllers\PlantController;
|
use App\Http\Controllers\PlantController;
|
||||||
|
use App\Http\Controllers\ProductionStickerReprintController;
|
||||||
use App\Http\Controllers\StickerMasterController;
|
use App\Http\Controllers\StickerMasterController;
|
||||||
use App\Http\Controllers\TestingPanelController;
|
use App\Http\Controllers\TestingPanelController;
|
||||||
use App\Http\Controllers\UserController;
|
use App\Http\Controllers\UserController;
|
||||||
@@ -77,8 +78,12 @@ Route::get('machine/get-all-data', [MachineController::class, 'get_all_data']);
|
|||||||
|
|
||||||
Route::get('laser/item/get-master-data', [StickerMasterController::class, 'get_master']);
|
Route::get('laser/item/get-master-data', [StickerMasterController::class, 'get_master']);
|
||||||
|
|
||||||
|
Route::get('sticker/get-master-type-data', [StickerMasterController::class, 'get_master_type']);
|
||||||
|
|
||||||
Route::get('/download-qr-pdf/{palletNo}', [PalletController::class, 'downloadQrPdf'])->name('download-qr-pdf');
|
Route::get('/download-qr-pdf/{palletNo}', [PalletController::class, 'downloadQrPdf'])->name('download-qr-pdf');
|
||||||
|
|
||||||
|
Route::get('/download-qr1-pdf/{palletNo}', [ProductionStickerReprintController::class, 'downloadQrPdf'])->name('download-qr1-pdf');
|
||||||
|
|
||||||
//Production Dashboard Controller
|
//Production Dashboard Controller
|
||||||
|
|
||||||
Route::get('get/module-name/data', [ModuleController::class, 'get_module']);
|
Route::get('get/module-name/data', [ModuleController::class, 'get_module']);
|
||||||
@@ -105,6 +110,8 @@ Route::get('get/module-production-linestop/data', [ModuleProductionLineStopContr
|
|||||||
|
|
||||||
Route::get('get/module-invoice-type/data', [ModuleInvoiceDataController::class, 'get_invoiceData']);
|
Route::get('get/module-invoice-type/data', [ModuleInvoiceDataController::class, 'get_invoiceData']);
|
||||||
|
|
||||||
|
Route::get('get/module-invoice-filter/data', [ModuleInvoiceTypeController::class, 'get_invoiceFilter']);
|
||||||
|
|
||||||
Route::get('get/module-invoice-count/data', [ModuleInvoiceTypeController::class, 'get_invoiceCountData']);
|
Route::get('get/module-invoice-count/data', [ModuleInvoiceTypeController::class, 'get_invoiceCountData']);
|
||||||
|
|
||||||
Route::get('get/module-invoice-quantity/data', [ModuleInvoiceQuantityController::class, 'get_invoiceQuantityData']);
|
Route::get('get/module-invoice-quantity/data', [ModuleInvoiceQuantityController::class, 'get_invoiceQuantityData']);
|
||||||
|
|||||||
Reference in New Issue
Block a user