diff --git a/app/Controllers/Prints.php b/app/Controllers/Prints.php index b729cd8..e2e086e 100644 --- a/app/Controllers/Prints.php +++ b/app/Controllers/Prints.php @@ -22,15 +22,27 @@ class Prints extends BaseController { $time = microtime(true); $logTime = date('d-m-Y_H_i_s', $time) . sprintf('_%03d', ($time - floor($time)) * 1000); $filename = "sample_".$logTime; - - $roles = ['Analis', 'Sampling']; + + $role='Analis'; + $rolesType = ['Analis', 'Sampling']; + $networkPath = ""; // Ruang Analis Printer POSTEK - if (in_array('Analis', $roles)) { + if (!in_array($role, $rolesType)) { + + // Eksekusi Kode Berikut Apabila Role Bukan Analis atau Sampling + return $this->response->setJSON([ + 'message' => "Akses Tidak Berwenang", + 'error' => "Hak Akses Anda Tidak Dikenali", + 'status' => false, + ]); + + } else if (in_array($role, $rolesType)) { // Buka Mapping Drive PC Laboratorium exec('net use L: \\\\10.148.5.20\\Labelshare /user:Administrator 2>&1', $output, $return_var); $pathNetworkFolder = 'L:/Sampling_Labels/'; + $letterPath = 'L:'; // Printer Posteck $sampleLable ="N @@ -47,17 +59,18 @@ B149,35,0,1,3,8,70,N,\"24020840\" A199,110,0,2,1,1,N,\"LAB 24020840\" A4,140,0,2,1,1,N,\"UH : 1B094943\" A4,160,0,2,1,1,N,\"BV : BV035725\" -A195,156,0,2,1,1,N,\"03/12/2024 07:10\" +A195,156,0,2,1,1,N,\"$filename\" P1 "; // Ruang Analis Printer Zebra - } else if (in_array('', $roles)) { + } else if (in_array($role, $rolesType)) { // Buka Mapping Drive PC Sampling exec('net use S: \\\\10.148.3.169\\Labelshare /user:Administrator 2>&1', $output, $return_var); $pathNetworkFolder = 'S:/Sampling_Labels/'; + $letterPath = 'S:'; // Printer Zebra $sampleLable ="N @@ -84,22 +97,154 @@ P1 // Tulis file ke folder tujuan if (!file_put_contents($fullPath, $sampleLable)) { - return $this->response->setJSON([ + + exec('net use '. $letterPath .' /delete 2>&1', $output, $return_var); + // Eksekusi Kode Berikut Apabila Ada Error + return $this->response->setJSON([ 'error' => $output, - 'message' => "Gagal Melakukan Print, Mohon Ulangi", + 'message' => "Gagal Melakukan Print, Mohon Ulangi Atau Cek Koneksi Printer Anda", 'status' => false, ]); - } - // Hapus Koneksi - exec('net use L: /delete 2>&1', $output, $return_var); - return $this->response->setJSON( - [ - 'message' => "Print Berhasil", - 'status' => true, - ] - ); + } else { + + // Hapus Koneksi + exec('net use '. $letterPath .' /delete 2>&1', $output, $return_var); + return $this->response->setJSON( + [ + 'message' => "Print Berhasil", + 'status' => true, + ] + ); + + } + + } + + public function allSample() { + $data=5; + + $role='Analis'; + $rolesType = ['Analis', 'Sampling']; + $networkPath = ""; + + // Ruang Analis Printer POSTEK + if (!in_array($role, $rolesType)) { + + // Eksekusi Kode Berikut Apabila Role Bukan Analis atau Sampling + return $this->response->setJSON([ + 'message' => "Akses Tidak Berwenang", + 'error' => "Hak Akses Anda Tidak Dikenali", + 'status' => false, + ]); + + } else if (in_array($role, $rolesType)) { + + // Buka Mapping Drive PC Laboratorium + exec('net use L: \\\\10.148.5.20\\Labelshare /user:Administrator 2>&1', $output, $return_var); + $pathNetworkFolder = 'L:/Sampling_Labels/'; + $letterPath = 'L:'; + + for ($i=0; $i<$data; $i++) { + + $time = microtime(true); + $logTime = date('d-m-Y_H_i_s', $time) . sprintf('_%03d', ($time - floor($time)) * 1000); + $filename = "sample_".$logTime; + + // Printer Posteck + $sampleLable ="N +OD +q400 +Q200,10+0 +I8,A,001 +D10 +A4,3,0,2,1,1,N,\"Mr.I Putu Agus Ariesta Adi Wawan\" +A4,25,0,2,1,1,N,\"M 29Y\" +A4,55,0,2,1,1,N,\"SAMPLE\" +A4,75,0,2,1,1,N,\"Chapter\" +B149,35,0,1,3,8,70,N,\"24020840\" +A199,110,0,2,1,1,N,\"LAB 24020840\" +A4,140,0,2,1,1,N,\"UH : 1B094943\" +A4,160,0,2,1,1,N,\"BV : BV035725\" +A195,156,0,2,1,1,N,\"$filename\" + +P1 +"; + $fullPath = $pathNetworkFolder . $filename; + + // Tulis file ke folder tujuan + if (!file_put_contents($fullPath, $sampleLable)) { + + exec('net use '. $letterPath .' /delete 2>&1', $output, $return_var); + // Eksekusi Kode Berikut Apabila Ada Error + return $this->response->setJSON([ + 'error' => $output, + 'message' => "Gagal Melakukan Print, Mohon Ulangi Atau Cek Koneksi Printer Anda", + 'status' => false, + ]); + } + } + + // Ruang Analis Printer Zebra + } else if (in_array($role, $rolesType)) { + + // Buka Mapping Drive PC Sampling + exec('net use S: \\\\10.148.3.169\\Labelshare /user:Administrator 2>&1', $output, $return_var); + $pathNetworkFolder = 'S:/Sampling_Labels/'; + $letterPath = 'S:'; + + for ($i=0; $i<$data; $i++) { + + $time = microtime(true); + $logTime = date('d-m-Y_H_i_s', $time) . sprintf('_%03d', ($time - floor($time)) * 1000); + $filename = "sample_".$logTime; + + // Printer Zebra + $sampleLable ="N +OD +q400 +Q185,10+0 +I8,A,001 +D10 +A4,3,0,2,1,1,N,\"Mr.I Putu Agus Ariesta Adi Wawan\" +A4,25,0,2,1,1,N,\"M 29Y\" +A4,55,0,2,1,1,N,\"SAMPLE\" +A4,75,0,2,1,1,N,\"Chapter\" +B149,35,0,1,3,8,70,N,\"24020840\" +A199,110,0,2,1,1,N,\"LAB 24020840\" +A4,140,0,2,1,1,N,\"UH : 1B094943\" +A4,160,0,2,1,1,N,\"BV : BV035725\" +A195,156,0,2,1,1,N,\"03/12/2024 07:10\" + +P1 +"; + $fullPath = $pathNetworkFolder . $filename; + + // Tulis file ke folder tujuan + if (!file_put_contents($fullPath, $sampleLable)) { + + exec('net use '. $letterPath .' /delete 2>&1', $output, $return_var); + // Eksekusi Kode Berikut Apabila Ada Error + return $this->response->setJSON([ + 'error' => $output, + 'message' => "Gagal Melakukan Print, Mohon Ulangi Atau Cek Koneksi Printer Anda", + 'status' => false, + ]); + + } + } + } + + // Hapus Koneksi + exec('net use '. $letterPath .' /delete 2>&1', $output, $return_var); + return $this->response->setJSON( + [ + 'message' => "Print Berhasil", + 'status' => true, + ] + ); + } }