コード例 #1
0
ファイル: home.php プロジェクト: murahman2008/plogistics
 public function index()
 {
     die('fsfsdfsd');
     $this->load->library('basic_barcode');
     $imageName = Basic_Barcode::generateBarcode('OL00000000000000000027');
     inspect($imageName);
     die;
     $this->load->model('product');
     try {
         $this->product->addInstanceForProduct(array('qty' => 20, 'product_id' => 1));
     } catch (Exception $ex) {
         var_dump($ex->getMessage());
     }
     //var_dump($this->product->bookBarcode(2));
     die;
     $this->load->library('basicauth');
     // 		BasicAuth::test();
     // 		$user = BasicAuth::authenticate(array('username' => 'mrahman', 'password' => 'mrahman'));
     // 		inspect($user);
     // 		die();
     // 		$this->db->query("insert into user (`username`, `password`, `role_id`, `first_name`, `last_name`, `email`, `active`, `created`, `created_by_id`, `updated`, `updated_by_id`)
     // 						  VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", array('mrahman', sha1('mrahman'), 1, 'Mushfique', 'Rahman', '*****@*****.**', 1, date('Y-m-d H:i:s'), 1, date('Y-m-d H:i:s'), 1));
     die;
     $valueArray = $param = array();
     for ($i = 2; $i <= 50; $i++) {
         $valueArray[] = "(" . implode(", ", array('?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?')) . ")";
         $param[] = 'Bay ' . $i;
         $param[] = 'Footscray Warehouse Bay ' . $i;
         $param[] = 11;
         $param[] = 2;
         $param[] = '100010001' . str_pad($i, 4, '0', STR_PAD_LEFT);
         $param[] = 0;
         $param[] = '';
         $param[] = 0;
         $param[] = 1;
         $param[] = date('Y-m-d H:i:s');
         $param[] = 1;
         $param[] = date('Y-m-d H:i:s');
         $param[] = 1;
     }
     $query = "insert into warehouse (`name`, `description`, `parent_id`, `root_id`, `position`, `address_id`, `code`, `warehouse_type_id`, `active`, `created`, `created_by_id`, `updated`, `updated_by_id`)\n\t\t\t VALUES " . implode(", ", $valueArray);
     $result = $this->db->query($query, $param);
     die;
     $this->load->model('warehouse');
     $output = $output2 = array();
     //$this->warehouse->getAllWarehouseHierachy(0, 'id', $output);
     $output = $this->warehouse->getAllChildWarehouseHierachyForWarehouse(0, false, '*');
     $this->warehouse->converWarehouseArrayForFancyTree($output, $output2);
     inspect($output);
     inspect($output2);
     die;
     $output = $this->warehouse->displayAllChildWarehouseHierachyForWarehouse(3, false);
     echo $output;
     die;
     inspect($output);
     die;
 }
コード例 #2
0
 /**
  * This function generates the actual barcode image based on the param provided
  * @param String $text
  * @return Image Path of the png barcode file generated
  */
 public static function generateBarcode($text)
 {
     $code_string = '';
     self::$text = trim($text) !== '' ? trim($text) : '0';
     self::$file_path = FCPATH . 'images/barcode/';
     /// first check if the barcode image already exists in the system ///
     if (($barcodeImage = self::_checkBarcodeExists($text)) !== false) {
         return $barcodeImage;
     }
     // Translate the self::$text into barcode the correct self::$code_type
     if (in_array(strtolower(self::$code_type), array("code128", "code128b"))) {
         $chksum = 104;
         // Must not change order of array elements as the checksum depends on the array's key to validate final code
         $code_array = array(" " => "212222", "!" => "222122", "\"" => "222221", "#" => "121223", "\$" => "121322", "%" => "131222", "&" => "122213", "'" => "122312", "(" => "132212", ")" => "221213", "*" => "221312", "+" => "231212", "," => "112232", "-" => "122132", "." => "122231", "/" => "113222", "0" => "123122", "1" => "123221", "2" => "223211", "3" => "221132", "4" => "221231", "5" => "213212", "6" => "223112", "7" => "312131", "8" => "311222", "9" => "321122", ":" => "321221", ";" => "312212", "<" => "322112", "=" => "322211", ">" => "212123", "?" => "212321", "@" => "232121", "A" => "111323", "B" => "131123", "C" => "131321", "D" => "112313", "E" => "132113", "F" => "132311", "G" => "211313", "H" => "231113", "I" => "231311", "J" => "112133", "K" => "112331", "L" => "132131", "M" => "113123", "N" => "113321", "O" => "133121", "P" => "313121", "Q" => "211331", "R" => "231131", "S" => "213113", "T" => "213311", "U" => "213131", "V" => "311123", "W" => "311321", "X" => "331121", "Y" => "312113", "Z" => "312311", "[" => "332111", "\\" => "314111", "]" => "221411", "^" => "431111", "_" => "111224", "\\`" => "111422", "a" => "121124", "b" => "121421", "c" => "141122", "d" => "141221", "e" => "112214", "f" => "112412", "g" => "122114", "h" => "122411", "i" => "142112", "j" => "142211", "k" => "241211", "l" => "221114", "m" => "413111", "n" => "241112", "o" => "134111", "p" => "111242", "q" => "121142", "r" => "121241", "s" => "114212", "t" => "124112", "u" => "124211", "v" => "411212", "w" => "421112", "x" => "421211", "y" => "212141", "z" => "214121", "{" => "412121", "|" => "111143", "}" => "111341", "~" => "131141", "DEL" => "114113", "FNC 3" => "114311", "FNC 2" => "411113", "SHIFT" => "411311", "CODE C" => "113141", "FNC 4" => "114131", "CODE A" => "311141", "FNC 1" => "411131", "Start A" => "211412", "Start B" => "211214", "Start C" => "211232", "Stop" => "2331112");
         $code_keys = array_keys($code_array);
         $code_values = array_flip($code_keys);
         for ($X = 1; $X <= strlen(self::$text); $X++) {
             $activeKey = substr(self::$text, $X - 1, 1);
             $code_string .= $code_array[$activeKey];
             $chksum = $chksum + $code_values[$activeKey] * $X;
         }
         $code_string .= $code_array[$code_keys[$chksum - intval($chksum / 103) * 103]];
         $code_string = "211214" . $code_string . "2331112";
     } elseif (strtolower(self::$code_type) == "code128a") {
         $chksum = 103;
         self::$text = strtoupper(self::$text);
         // Code 128A doesn't support lower case
         // Must not change order of array elements as the checksum depends on the array's key to validate final code
         $code_array = array(" " => "212222", "!" => "222122", "\"" => "222221", "#" => "121223", "\$" => "121322", "%" => "131222", "&" => "122213", "'" => "122312", "(" => "132212", ")" => "221213", "*" => "221312", "+" => "231212", "," => "112232", "-" => "122132", "." => "122231", "/" => "113222", "0" => "123122", "1" => "123221", "2" => "223211", "3" => "221132", "4" => "221231", "5" => "213212", "6" => "223112", "7" => "312131", "8" => "311222", "9" => "321122", ":" => "321221", ";" => "312212", "<" => "322112", "=" => "322211", ">" => "212123", "?" => "212321", "@" => "232121", "A" => "111323", "B" => "131123", "C" => "131321", "D" => "112313", "E" => "132113", "F" => "132311", "G" => "211313", "H" => "231113", "I" => "231311", "J" => "112133", "K" => "112331", "L" => "132131", "M" => "113123", "N" => "113321", "O" => "133121", "P" => "313121", "Q" => "211331", "R" => "231131", "S" => "213113", "T" => "213311", "U" => "213131", "V" => "311123", "W" => "311321", "X" => "331121", "Y" => "312113", "Z" => "312311", "[" => "332111", "\\" => "314111", "]" => "221411", "^" => "431111", "_" => "111224", "NUL" => "111422", "SOH" => "121124", "STX" => "121421", "ETX" => "141122", "EOT" => "141221", "ENQ" => "112214", "ACK" => "112412", "BEL" => "122114", "BS" => "122411", "HT" => "142112", "LF" => "142211", "VT" => "241211", "FF" => "221114", "CR" => "413111", "SO" => "241112", "SI" => "134111", "DLE" => "111242", "DC1" => "121142", "DC2" => "121241", "DC3" => "114212", "DC4" => "124112", "NAK" => "124211", "SYN" => "411212", "ETB" => "421112", "CAN" => "421211", "EM" => "212141", "SUB" => "214121", "ESC" => "412121", "FS" => "111143", "GS" => "111341", "RS" => "131141", "US" => "114113", "FNC 3" => "114311", "FNC 2" => "411113", "SHIFT" => "411311", "CODE C" => "113141", "CODE B" => "114131", "FNC 4" => "311141", "FNC 1" => "411131", "Start A" => "211412", "Start B" => "211214", "Start C" => "211232", "Stop" => "2331112");
         $code_keys = array_keys($code_array);
         $code_values = array_flip($code_keys);
         for ($X = 1; $X <= strlen(self::$text); $X++) {
             $activeKey = substr(self::$text, $X - 1, 1);
             $code_string .= $code_array[$activeKey];
             $chksum = $chksum + $code_values[$activeKey] * $X;
         }
         $code_string .= $code_array[$code_keys[$chksum - intval($chksum / 103) * 103]];
         $code_string = "211412" . $code_string . "2331112";
     } elseif (strtolower(self::$code_type) == "code39") {
         $code_array = array("0" => "111221211", "1" => "211211112", "2" => "112211112", "3" => "212211111", "4" => "111221112", "5" => "211221111", "6" => "112221111", "7" => "111211212", "8" => "211211211", "9" => "112211211", "A" => "211112112", "B" => "112112112", "C" => "212112111", "D" => "111122112", "E" => "211122111", "F" => "112122111", "G" => "111112212", "H" => "211112211", "I" => "112112211", "J" => "111122211", "K" => "211111122", "L" => "112111122", "M" => "212111121", "N" => "111121122", "O" => "211121121", "P" => "112121121", "Q" => "111111222", "R" => "211111221", "S" => "112111221", "T" => "111121221", "U" => "221111112", "V" => "122111112", "W" => "222111111", "X" => "121121112", "Y" => "221121111", "Z" => "122121111", "-" => "121111212", "." => "221111211", " " => "122111211", "\$" => "121212111", "/" => "121211121", "+" => "121112121", "%" => "111212121", "*" => "121121211");
         // Convert to uppercase
         $upper_text = strtoupper(self::$text);
         for ($X = 1; $X <= strlen($upper_text); $X++) {
             $code_string .= $code_array[substr($upper_text, $X - 1, 1)] . "1";
         }
         $code_string = "1211212111" . $code_string . "121121211";
     } elseif (strtolower(self::$code_type) == "code25") {
         $code_array1 = array("1", "2", "3", "4", "5", "6", "7", "8", "9", "0");
         $code_array2 = array("3-1-1-1-3", "1-3-1-1-3", "3-3-1-1-1", "1-1-3-1-3", "3-1-3-1-1", "1-3-3-1-1", "1-1-1-3-3", "3-1-1-3-1", "1-3-1-3-1", "1-1-3-3-1");
         for ($X = 1; $X <= strlen(self::$text); $X++) {
             for ($Y = 0; $Y < count($code_array1); $Y++) {
                 if (substr(self::$text, $X - 1, 1) == $code_array1[$Y]) {
                     $temp[$X] = $code_array2[$Y];
                 }
             }
         }
         for ($X = 1; $X <= strlen(self::$text); $X += 2) {
             if (isset($temp[$X]) && isset($temp[$X + 1])) {
                 $temp1 = explode("-", $temp[$X]);
                 $temp2 = explode("-", $temp[$X + 1]);
                 for ($Y = 0; $Y < count($temp1); $Y++) {
                     $code_string .= $temp1[$Y] . $temp2[$Y];
                 }
             }
         }
         $code_string = "1111" . $code_string . "311";
     } elseif (strtolower(self::$code_type) == "codabar") {
         $code_array1 = array("1", "2", "3", "4", "5", "6", "7", "8", "9", "0", "-", "\$", ":", "/", ".", "+", "A", "B", "C", "D");
         $code_array2 = array("1111221", "1112112", "2211111", "1121121", "2111121", "1211112", "1211211", "1221111", "2112111", "1111122", "1112211", "1122111", "2111212", "2121112", "2121211", "1121212", "1122121", "1212112", "1112122", "1112221");
         // Convert to uppercase
         $upper_text = strtoupper(self::$text);
         for ($X = 1; $X <= strlen($upper_text); $X++) {
             for ($Y = 0; $Y < count($code_array1); $Y++) {
                 if (substr($upper_text, $X - 1, 1) == $code_array1[$Y]) {
                     $code_string .= $code_array2[$Y] . "1";
                 }
             }
         }
         $code_string = "11221211" . $code_string . "1122121";
     }
     // Pad the edges of the barcode
     $code_length = 20;
     for ($i = 1; $i <= strlen($code_string); $i++) {
         $code_length = $code_length + (int) substr($code_string, $i - 1, 1);
     }
     if (strtolower(self::$orientation) == "horizontal") {
         $img_width = $code_length;
         $img_height = self::$size;
     } else {
         $img_width = self::$size;
         $img_height = $code_length;
     }
     $image = imagecreate($img_width, $img_height);
     $black = imagecolorallocate($image, 0, 0, 0);
     $white = imagecolorallocate($image, 255, 255, 255);
     imagefill($image, 0, 0, $white);
     $location = 10;
     for ($position = 1; $position <= strlen($code_string); $position++) {
         $cur_size = $location + substr($code_string, $position - 1, 1);
         if (strtolower(self::$orientation) == "horizontal") {
             imagefilledrectangle($image, $location, 0, $cur_size, $img_height, $position % 2 == 0 ? $white : $black);
         } else {
             imagefilledrectangle($image, 0, $location, $img_width, $cur_size, $position % 2 == 0 ? $white : $black);
         }
         $location = $cur_size;
     }
     $fileName = self::$file_path . self::$text . ".png";
     if (file_exists($fileName)) {
         @unlink($fileName);
     }
     imagepng($image, $fileName);
     return $fileName;
     //imagedestroy($image);
 }