Files
WMS/Modules/M3/Http/Controllers/ReplenishSettingsController.php
T
2026-09-16 16:46:15 +01:00

199 lines
7.9 KiB
PHP

<?php
namespace Modules\M3\Http\Controllers;
use Modules\M3\Http\Controllers\Controller;
use DB;
use Config;
use Illuminate\Http\Request;
use Symfony\Component\HttpFoundation\Response;
use Modules\M3\Models\ICM658M;
use Datatables;
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 = m3_user() !== '' ? strtoupper(m3_user()) : '' ;
// $userId = 'E1135818'; // Brad : E1135818 Malak : E2011812 ACOM_PDF
$connection = config('m3.connection', 'pgsql');
$ICM428M = \Illuminate\Support\Facades\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 = \Illuminate\Support\Facades\Schema::connection($connection)->hasTable('ic670m')
? DB::connection($connection)->table('ic670m')
->where('WDCO',$userCO)
->where('WDPL',$userPL)
->where('WDWHS',$userWH)
->get()
: [];
}
else{
// $REFCAT658 =[];
$IC670M =[];
}
// $sqlstmt="SELECT t1.REFKEY,t2.FULLID ,t2.*
// 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', compact('IC670M'));
// 'REFCAT658',
}
public function store(Request $request)
{
// dd( $request->all() );
$formInputs = $request->all();
$formInputs = array_filter($formInputs);
unset($formInputs["_token"]);
$formInputs['R658IZLCF'] = isset($formInputs['R658IZLCF']) ? $formInputs['R658IZLCF'] : '0';
// dd($formInputs);
$ICM658MINS = ICM658M::insert($formInputs);
// dd($ICM658MINS);
return redirect()->route('m3.replenishmentSettings.index');
}
public function update(Request $request)
{
// dd($request->all());
$R658PN = (trim($request->R658PN) ?? trim($request->R658PN)) != null ? trim($request->R658PN) : "";
$R658CO = (trim($request->R658CO) ?? trim($request->R658CO)) != null ? trim($request->R658CO) : "";
$R658PL = (trim($request->R658PL) ?? trim($request->R658PL)) != null ? trim($request->R658PL) : "";
$R658WH = (trim($request->R658WH) ?? trim($request->R658WH)) != null ? trim($request->R658WH) : "";
$R658MQ = trim($request->R658MQ);
$R658RQ = trim($request->R658RQ);
$R658RMQ = trim($request->R658RMQ);
$R658TL = trim($request->R658TL);
$R658IZLCF = (trim($request->R658IZLCF) ?? trim($request->R658IZLCF)) != null ? trim($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)
{
// dd( $request->all() );
$R658PN = trim($request->R658PN);
$R658CO = trim($request->R658CO);
$R658LC = trim($request->R658LC);
$R658PL = trim($request->R658PL);
$R658WH = trim($request->R658WH);
$deleteRecord = 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)
{
// dd( $request->all() );
$params = array();
parse_str($request['data'], $params);
$paramsObj = (object)$params;
// dd($paramsObj);
$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();
// dd($recordExists);
$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 = m3_user() !== '' ? strtoupper(m3_user()) : '' ;
// $userId = 'E1135818'; // Brad : E1135818 Malak : E2011812 ACOM_PDF
$connection = config('m3.connection', 'pgsql');
$ICM428M = \Illuminate\Support\Facades\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 =[];
// $IC670M =[];
}
// $sqlstmt="SELECT t1.REFKEY,t2.FULLID ,t2.*
// 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);
// dd( Datatables::of($REFCAT658)->addIndexColumn()->make(true) );
return Datatables::of($REFCAT658)->addIndexColumn()->make(true);
}
}