From a58de98aa75bcdffa0eac2af26f3d8254a377f2f Mon Sep 17 00:00:00 2001 From: vadivelJ96 Date: Tue, 11 Feb 2025 17:23:22 +0530 Subject: [PATCH] stock module latest today vadivel J 11-02-2025 --- app/Config/Routes.php | 1 + app/Controllers/StockController.php | 56 ++++++++++++++++++- app/Views/stock/CoatingMachineDetail.php | 22 ++++++++ app/Views/stock/bagStockDetails.php | 38 +++++++++++++ app/Views/stock/dieselStockDetails.php | 38 +++++++++++++ app/Views/stock/dustAndRoughStockDetails.php | 38 +++++++++++++ app/Views/stock/gasStockDetails.php | 38 +++++++++++++ app/Views/stock/incomingSilicaSandDetails.php | 41 +++++++++++++- app/Views/stock/powerConsumptionDetails.php | 35 ++++++++++++ app/Views/stock/resinStockDetails.php | 38 +++++++++++++ app/Views/stock/trpSandUseStockDetails.php | 40 +++++++++++++ 11 files changed, 383 insertions(+), 2 deletions(-) diff --git a/app/Config/Routes.php b/app/Config/Routes.php index 066f3a49..50fe8953 100755 --- a/app/Config/Routes.php +++ b/app/Config/Routes.php @@ -472,6 +472,7 @@ $routes->match(['GET', 'POST'], 'coatingMachineDetails', 'StockController::loadV $routes->post('addNewCoatingMachineDetails', 'StockController::addNewCoatingMachineDetails'); $routes->post('updateCoatingMachineDetails', 'StockController::updateCoatingMachineDetails'); $routes->post('deleteBatchCardFile','StockController::deleteBatchCardFile'); +$routes->get('download-batchcard-zip','StockController::downloadBatchCardZip'); //drier machine details $routes->match(['GET', 'POST', 'PUT', 'DELETE'], 'drierMachineDetails', 'StockController::drierMachineDetails'); diff --git a/app/Controllers/StockController.php b/app/Controllers/StockController.php index 3fc57845..08de9d9d 100644 --- a/app/Controllers/StockController.php +++ b/app/Controllers/StockController.php @@ -168,7 +168,8 @@ class StockController extends BaseController JSON_OBJECT( "client_given_name", t_batchcard_files.client_file_name, "filename", t_batchcard_files.filename, - "batchCardId" , t_batchcard_files.id + "batchCardId" , t_batchcard_files.id, + "coating_id", t_batchcard_files.coating_id ) ) as batchcard_files') ->join('t_batchcard_files', 't_batchcard_files.coating_id = t_coatingMachineDetails.id', 'left') @@ -437,6 +438,59 @@ class StockController extends BaseController 'message' => "Invalid Request..!!" ]); } + + + public function downloadBatchcardZip() + { + $coatingId = $this->request->getGet('coating_id'); + $date = $this->request->getGet('date'); + $batchCardFiles = $this->getBatchCardFiles($coatingId); // Fetch files from DB + + if (empty($batchCardFiles)) { + return redirect()->back()->with('error', 'No batchcard files found.'); + } + + $zipFileName = 'batchcard_files_' . $date . '.zip'; + $zipFilePath = WRITEPATH . 'uploads/batchcard' . $zipFileName; // CI4 WRITEPATH safe directory + + $zip = new \ZipArchive(); + if ($zip->open($zipFilePath, \ZipArchive::CREATE | \ZipArchive::OVERWRITE) === true) { + foreach ($batchCardFiles as $file) { + $originalFilePath = WRITEPATH . 'uploads/batchcard/' . $file['filename']; // Actual stored file + $clientFileName = $file['client_file_name'] ?? $file['filename']; // Use client name if available + + if (file_exists($originalFilePath)) { + $zip->addFile($originalFilePath, $clientFileName); // Rename inside ZIP + } + } + $zip->close(); + + $response = $this->response->download($zipFilePath, null)->setFileName($zipFileName); + + // Delete ZIP after response is sent + register_shutdown_function(function () use ($zipFilePath) { + if (file_exists($zipFilePath)) { + unlink($zipFilePath); + } + }); + + return $response; + } + + return redirect()->back()->with('error', 'Failed to create ZIP file.'); + } + + // Example function to get batchcard files from DB + private function getBatchCardFiles($coatingId) + { + $batchCardFiles = $this->db->table('t_batchcard_files') + ->where('coating_id', $coatingId) + ->get() + ->getResultArray(); + + return $batchCardFiles; + } + //incoming Silica Sand Details starts diff --git a/app/Views/stock/CoatingMachineDetail.php b/app/Views/stock/CoatingMachineDetail.php index 4ff0b62b..bf975bca 100644 --- a/app/Views/stock/CoatingMachineDetail.php +++ b/app/Views/stock/CoatingMachineDetail.php @@ -356,6 +356,9 @@ $summary = [] ; foreach ($coatingMachineDetails as $record) { + + $batchCardFiles =json_decode($record['batchcard_files'],true); + ?> + + + @@ -403,6 +409,22 @@     + $files) { + if ($index === 0 && !empty($files['batchCardId']) && $files['coating_id'] == $record['id']) + { + ?> + + + + + + diff --git a/app/Views/stock/bagStockDetails.php b/app/Views/stock/bagStockDetails.php index 2675cd81..b3501ac3 100644 --- a/app/Views/stock/bagStockDetails.php +++ b/app/Views/stock/bagStockDetails.php @@ -1036,4 +1036,42 @@ + + + \ No newline at end of file diff --git a/app/Views/stock/dieselStockDetails.php b/app/Views/stock/dieselStockDetails.php index 2c0af006..7ae2c4bf 100644 --- a/app/Views/stock/dieselStockDetails.php +++ b/app/Views/stock/dieselStockDetails.php @@ -1360,4 +1360,42 @@ foreach ($period as $day) { + + + \ No newline at end of file diff --git a/app/Views/stock/dustAndRoughStockDetails.php b/app/Views/stock/dustAndRoughStockDetails.php index a30577b2..e799142e 100644 --- a/app/Views/stock/dustAndRoughStockDetails.php +++ b/app/Views/stock/dustAndRoughStockDetails.php @@ -650,3 +650,41 @@ + + diff --git a/app/Views/stock/gasStockDetails.php b/app/Views/stock/gasStockDetails.php index 1637cac4..4bab0a53 100644 --- a/app/Views/stock/gasStockDetails.php +++ b/app/Views/stock/gasStockDetails.php @@ -1141,4 +1141,42 @@ function convertToDate(dateString) { return input; } + + + \ No newline at end of file diff --git a/app/Views/stock/incomingSilicaSandDetails.php b/app/Views/stock/incomingSilicaSandDetails.php index 0526be34..20e2fdb1 100644 --- a/app/Views/stock/incomingSilicaSandDetails.php +++ b/app/Views/stock/incomingSilicaSandDetails.php @@ -1755,4 +1755,43 @@ $(document).ready(function() { - \ No newline at end of file + + + + \ No newline at end of file diff --git a/app/Views/stock/powerConsumptionDetails.php b/app/Views/stock/powerConsumptionDetails.php index f1a01491..45d6f231 100644 --- a/app/Views/stock/powerConsumptionDetails.php +++ b/app/Views/stock/powerConsumptionDetails.php @@ -1344,4 +1344,39 @@ foreach ($period as $day) { + + + \ No newline at end of file diff --git a/app/Views/stock/resinStockDetails.php b/app/Views/stock/resinStockDetails.php index da4ea4dd..8dd176d3 100644 --- a/app/Views/stock/resinStockDetails.php +++ b/app/Views/stock/resinStockDetails.php @@ -953,4 +953,42 @@ foreach ($period as $day) { + + + \ No newline at end of file diff --git a/app/Views/stock/trpSandUseStockDetails.php b/app/Views/stock/trpSandUseStockDetails.php index d21f1b50..ef86e42b 100644 --- a/app/Views/stock/trpSandUseStockDetails.php +++ b/app/Views/stock/trpSandUseStockDetails.php @@ -706,3 +706,43 @@ + + + +