db = new MdbLib(); $this->common = new CommonLib(); } public function getOrders(){ if(!isset($_GET['now'])){ return false; }else{ $now = $this->common->my_filter_input($_GET['now']); $pnsn = isset($_GET['pnsn'])?$this->common->my_filter_input($_GET['pnsn']):15; } $offset = ($now-1)*$pnsn; $sql = 'SELECT `oid`,`order_barcode`,`order_status`,`out_time`,`in_time`,`print_times`,`print_date`'; $sql .= " FROM `app_track` ORDER BY `oid` DESC LIMIT {$offset},$pnsn;"; $query = $this->db->querySql($sql); $line = ""; while($item = $this->db->queryRs($query)) { if($item['order_status'] == '2'){ $order_status = "已入库"; $in_time = $item['in_time']; $out_time = '暂无'; $class = 'ok1'; }elseif($item['order_status'] == '5'){ $order_status = "未入库"; $in_time = '暂无'; $out_time = '暂无'; $class = 'no'; }elseif($item['order_status'] == '3'){ $order_status = "已出库"; $in_time = $item['in_time']; $out_time = $item['out_time']; $class = 'ok2'; } if($item['print_times'] == 0){ $print_status = "未打印"; $print_clazz = 'no'; }else{ $print_status = "已打印"; $print_clazz = 'ok2'; } $line .= '
'; $line .= "{$item['oid']}"; $line .= "{$item['order_barcode']}"; $line .= "{$order_status}"; $line .= "{$in_time}"; $line .= "{$out_time}"; $line .= "{$print_status}"; $line .= "{$item['print_date']}"; $line .= ''; $line .= ""; $line .= '
'; } return $line; } public function searchOrders(){ $sql = 'SELECT `oid`,`order_barcode`,`order_status`,`out_time`,`in_time`,`print_times`,`print_date` '; $sql .= 'FROM `app_track` '; if(isset($_GET['code'])){ $code = $this->common->my_filter_input($_GET['code']); $sql .= "WHERE `order_barcode`='{$code}';"; } $query = $this->db->querySql($sql); $line = ""; while($item = $this->db->queryRs($query)) { if($item['order_status'] == '2'){ $order_status = "已入库"; $in_time = $item['in_time']; $out_time = '暂无'; $class = 'ok1'; }elseif($item['order_status'] == '5'){ $order_status = "未入库"; $in_time = '暂无'; $out_time = '暂无'; $class = 'no'; }elseif($item['order_status'] == '3'){ $order_status = "已出库"; $in_time = $item['in_time']; $out_time = $item['out_time']; $class = 'ok2'; } if($item['print_times'] == 0){ $print_status = "未打印"; $print_clazz = 'no'; }else{ $print_status = "已打印"; $print_clazz = 'ok2'; } $line .= '
'; $line .= "{$item['oid']}"; $line .= "{$item['order_barcode']}"; $line .= "{$order_status}"; $line .= "{$in_time}"; $line .= "{$out_time}"; $line .= "{$print_status}"; $line .= "{$item['print_date']}"; $line .= ''; $line .= ""; $line .= '
'; } if(!empty($line)){ return $line; }else{ return -1; } } public function updateOrder(){ if(isset($_GET['code']) && !empty($_GET['code']) && isset($_GET['status']) && !empty($_GET['status'])){ $code = $this->common->my_filter_input($_GET['code']); $order_status = $this->common->my_filter_input($_GET['status']); }else{ return false; } $sql_status = "SELECT `order_status`,`out_time`,`in_time`,`update_time` FROM `app_track` WHERE `order_barcode`='{$code}' ORDER BY `oid` DESC;"; $query = $this->db->querySql($sql_status); $arr_status = $this->db->queryRsAll($query); if(empty($arr_status)){ return json_encode(array( 'no' => '-10' )); } $now = date("Y-m-d H:i:s", time()); $sql = "UPDATE `app_track` SET `order_status`='{$order_status}',`in_time`='{$now}',`out_time`='{$now}' WHERE `order_barcode`='{$code}';"; if($arr_status[0]['order_status'] == 5 && $order_status == 2){ $this->db->querySql($sql); if($this->db->queryAR() == 1){ return json_encode(array( 'no' => '1' )); }else{ return json_encode(array( 'no' => '-1' )); } }elseif($arr_status[0]['order_status'] == 2 && $order_status == 3){ $this->db->querySql($sql); if($this->db->queryAR() == 1){ return json_encode(array( 'no' => '2' )); }else{ return json_encode(array( 'no' => '-2' )); } }elseif($arr_status[0]['order_status'] == 5 && $order_status == 3){ return json_encode(array( 'no' => '-4' )); }elseif($arr_status[0]['order_status'] == 2 && $order_status == 2){ return json_encode(array( 'no' => '-5', 'time' => $arr_status[0]['in_time'], )); }elseif($arr_status[0]['order_status'] == 3 && $order_status == 2){ return json_encode(array( 'no' => '-6', 'time' => $arr_status[0]['out_time'], )); }elseif($arr_status[0]['order_status'] == 3 && $order_status == 3){ return json_encode(array( 'no' => '-7', 'time' => $arr_status[0]['out_time'], )); }else{ return json_encode(array( 'no' => '-11' )); } } public function pagination(){ if(!isset($_GET['wh'])){ return false; }else{ $wh = $this->common->my_filter_input($_GET['wh']); $pnsn = isset($_GET['pnsn'])?$this->common->my_filter_input($_GET['pnsn']):15; } $sql = "SELECT `oid` FROM `app_track`;"; $query = $this->db->querySql($sql); $total = $this->db->queryNum($query); if($total == 0){ $num = '0'; }else{ $num = ceil($total/$pnsn); $wh_max = ceil($num/10); } $direction = substr($wh, 0, 1); $wh = substr($wh, 1); if($direction == 'h'){ $whh = ($wh==0)?'0':$wh-1; $wht = ($wh==0)?'1':$wh; }elseif($direction == 't'){ $whh = ($wh==$wh_max)?($wh-1):$wh; $wht = ($wh==$wh_max)?$wh:($wh+1); }else{ $whh = '0'; $wht = '1'; } $pagination = '共 '.$num.' 页'; if($num > 1){ $pagination .= ($num>10)?"<<":''; $clazz = ''; for($i=1+$whh*10; $i<=10+$whh*10; $i++){ if($i > $num){ break; }else{ if($i != 1+$whh*10){ $clazz = 'page'; }else{ $clazz = 'page pn'; } $param = "&now={$i}&pnsn={$pnsn}"; $pagination .= "".$i.""; } } $pagination .= ($num>10)?">>":''; } $pagination .= "展示 记录"; return $pagination; } public function updatePrint(){ if(isset($_POST['oid']) && !empty($_POST['oid'])){ $oid = $this->common->my_filter_input($_POST['oid']); }else{ return false; } $time_now = date("Y-m-d H:i:s", time()); $sql = "UPDATE `app_track` SET `print_times`=`print_times`+1,`print_date`='{$time_now}' WHERE `oid`='{$oid}';"; if($this->db->querySql($sql)){ return 1; }else{ return -1; } } public function printAll(){ $sql = 'SELECT `order_barcode` FROM `app_track` WHERE `print_times`=0 ORDER BY `in_time`;'; $query = $this->db->querySql($sql); $rs = $this->db->queryRsAll($query); if(empty($rs)){ return -1; }else{ $time_now = date("Y-m-d H:i:s", time()); $sql_update = "UPDATE `app_track` SET `print_times`=`print_times`+1,`print_date`='{$time_now}',`order_status`=2 AND `print_times`=0;"; $query_update = $this->db->querySql($sql_update); $arr = array(); foreach($rs as $val){ $arr[] = array( 'barcode' => $val['order_barcode'] ); } return json_encode($arr); } } public function createNew(){ $now = time(); $order_barcode = strtoupper('GSN-'.date('ymd', $now).substr(hash('md5', $now), rand(0, 28), 4)); $sql = "INSERT INTO `app_track` (`order_barcode`) VALUES ('{$order_barcode}');"; $query = $this->db->querySql($sql); if($this->db->queryErrno() == 0){ return 1; }else{ return -1; } } public function __destruct(){ //TODO } }