Files
WMS/Modules/M3/Http/Controllers/ReplenishSettingsController.php
T
2026-09-21 13:25:44 +01:00

182 lines
6.9 KiB
PHP
Executable File

<?php
namespace Modules\M3\Http\Controllers;
use Config;
use Datatables;
use DB;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Schema;
use Modules\M3\Models\ICM658M;
class ReplenishSettingsController extends Controller
{
public static function index(Request $request)
{
// Replenishment Table
// $rEFCAT658 = DB::connection(config('m3.connection', 'pgsql'))->table('icm658m')->get();
// Warehouse Table
// $iC670M = DB::connection(config('m3.connection', 'pgsql'))->table('ic670m')->get();
// Get Logged user Id
$userId = m3User() !== '' ? strtoupper(m3User()) : '';
// $userId = 'E1135818'; // Brad : E1135818 Malak : E2011812 ACOM_PDF
$connection = config('m3.connection', 'pgsql');
$iCM428M = Schema::connection($connection)->hasTable('icm428m')
? DB::connection($connection)->table('icm428m')->where('R428US', $userId)->where('R428STS', 'A')->first()
: null;
$userCO = isset($iCM428M->R428CO) ? $iCM428M->R428CO : '';
$userPL = isset($iCM428M->R428PL) ? $iCM428M->R428PL : '';
$userWH = isset($iCM428M->R428WH) ? $iCM428M->R428WH : '';
if ($userCO != '') {
// Warehouse Table
$iC670M = Schema::connection($connection)->hasTable('ic670m')
? DB::connection($connection)->table('ic670m')
->where('WDCO', $userCO)
->where('WDPL', $userPL)
->where('WDWHS', $userWH)
->get()
: [];
} else {
$iC670M = [];
}
// FROM PRDAT.REFERPS t1 LEFT JOIN ( SELECT R658CO,R658PL,R658WH,R658LC,R658PN,R658MQ,R658RQ,R658TL,R658RMQ,
// TRIM(R658WH)||TRIM(R658LC)||TRIM(R658PN) AS FULLID FROM EWOBJTST.ICM658M
// ) t2 ON t1.REFKEY = t2.FULLID WHERE t1.REFCAT = '658'";
// $rEFCAT658 = DB::connection(config('m3.connection', 'pgsql'))->select($sqlstmt);
// dd($rEFCAT658);
return view('m3::liberty-theme.pages.ReplenishSettings', ['IC670M' => $iC670M]);
// 'REFCAT658',
}
public function store(Request $request)
{
$formInputs = $request->all();
$formInputs = array_filter($formInputs);
unset($formInputs['_token']);
$formInputs['R658IZLCF'] = isset($formInputs['R658IZLCF']) ? $formInputs['R658IZLCF'] : '0';
ICM658M::insert($formInputs);
return redirect()->route('m3.replenishmentSettings.index');
}
public function update(Request $request)
{
$r658PN = trim((string) ($request->R658PN ?? ''));
$r658CO = trim((string) ($request->R658CO ?? ''));
$r658PL = trim((string) ($request->R658PL ?? ''));
$r658WH = trim((string) ($request->R658WH ?? ''));
$r658MQ = trim($request->R658MQ);
$r658RQ = trim($request->R658RQ);
$r658RMQ = trim($request->R658RMQ);
$r658TL = trim($request->R658TL);
$r658IZLCF = trim((string) ($request->R658IZLCF ?? '0'));
DB::connection(config('m3.connection', 'pgsql'))->table('icm658m')
->where('R658PN', $r658PN)
->where('R658CO', $r658CO)
->where('R658PL', $r658PL)
->where('R658WH', $r658WH)
->update(['R658MQ' => $r658MQ, 'R658RQ' => $r658RQ, 'R658RMQ' => $r658RMQ, 'R658TL' => $r658TL, 'R658IZLCF' => $r658IZLCF]);
return redirect()->route('m3.replenishmentSettings.index');
}
public function deleteRec(Request $request)
{
$r658PN = trim($request->R658PN);
$r658CO = trim($request->R658CO);
$r658LC = trim($request->R658LC);
$r658PL = trim($request->R658PL);
$r658WH = trim($request->R658WH);
DB::connection(config('m3.connection', 'pgsql'))->table('icm658m')
->where('R658PN', $r658PN)
->where('R658CO', $r658CO)
->where('R658LC', $r658LC)
->where('R658PL', $r658PL)
->where('R658WH', $r658WH)
->delete();
return response()->json(['success' => 'Record Deleted']);
}
public function checkRecExit(Request $request)
{
$params = [];
parse_str($request['data'], $params);
$paramsObj = (object) $params;
$r658PN = trim($paramsObj->R658PN);
$r658CO = trim($paramsObj->R658CO);
$r658LC = trim($paramsObj->R658LC);
$r658PL = trim($paramsObj->R658PL);
$r658WH = trim($paramsObj->R658WH);
$recordExistSQL = DB::connection(config('m3.connection', 'pgsql'))->table('icm658m')
->where('R658PN', $r658PN)
->where('R658CO', $r658CO)
->where('R658LC', $r658LC)
->where('R658PL', $r658PL)
->where('R658WH', $r658WH)
->first();
$recordExists = $recordExistSQL == null ? true : false;
return response()->json(['recordExists' => $recordExists]);
}
public function datatables(Request $request)
{
// Replenishment Table
// $rEFCAT658 = DB::connection(config('m3.connection', 'pgsql'))->table('icm658m')->get();
// Warehouse Table
// $iC670M = DB::connection(config('m3.connection', 'pgsql'))->table('ic670m')->get();
// Get Logged user Id
$userId = m3User() !== '' ? strtoupper(m3User()) : '';
// $userId = 'E1135818'; // Brad : E1135818 Malak : E2011812 ACOM_PDF
$connection = config('m3.connection', 'pgsql');
$iCM428M = Schema::connection($connection)->hasTable('icm428m')
? DB::connection($connection)->table('icm428m')->where('R428US', $userId)->where('R428STS', 'A')->first()
: null;
$userCO = isset($iCM428M->R428CO) ? $iCM428M->R428CO : '';
$userPL = isset($iCM428M->R428PL) ? $iCM428M->R428PL : '';
$userWH = isset($iCM428M->R428WH) ? $iCM428M->R428WH : '';
if ($userCO != '') {
// Replenishment Table
$rEFCAT658 = DB::connection(config('m3.connection', 'pgsql'))->table('icm658m')
->select('*')
->where('R658CO', $userCO)
->where('R658PL', $userPL)
->where('R658WH', $userWH)
->orderBy('R658CO', 'asc');
// Warehouse Table
// $iC670M = DB::connection(config('m3.connection', 'pgsql'))->table('ic670m')
// ->where('WDCO',$userCO)
// ->where('WDPL',$userPL)
// ->where('WDWHS',$userWH)
// ->get();
} else {
$rEFCAT658 = [];
}
// FROM PRDAT.REFERPS t1 LEFT JOIN ( SELECT R658CO,R658PL,R658WH,R658LC,R658PN,R658MQ,R658RQ,R658TL,R658RMQ,
// TRIM(R658WH)||TRIM(R658LC)||TRIM(R658PN) AS FULLID FROM EWOBJTST.ICM658M
// ) t2 ON t1.REFKEY = t2.FULLID WHERE t1.REFCAT = '658'";
// $rEFCAT658 = DB::connection(config('m3.connection', 'pgsql'))->select($sqlstmt);
// dd($rEFCAT658);
return Datatables::of($rEFCAT658)->addIndexColumn()->make(true);
}
}