Example #1
0
 /**
  * 
  * @author cxy
  * @return
  */
 public function act_pda_Tracking()
 {
     $userId = $_SESSION['userId'];
     $ebay_id = trim($_POST['ebay_id']);
     if (empty($userId)) {
         self::$errCode = '0';
         self::$errMsg = '系统登录超时,请先关闭浏览器 然后登录扫描!!';
         return false;
     }
     if (empty($ebay_id)) {
         self::$errCode = 0;
         self::$errMsg = '请填写单号!';
         return;
     }
     $where = "where id={$ebay_id}";
     $order = orderPartionModel::selectOrder($where);
     if (!$order) {
         self::$errCode = 0;
         self::$errMsg = $ebay_id . '发货单不存在!';
         return false;
     }
     if ($order[0]['orderStatus'] != PKS_PRINT_SHIPPING_INVOICE) {
         self::$errCode = 0;
         self::$errMsg = $ebay_id . '此发货单状态不是在待打印面单状态!';
         return false;
     }
     $array = array('shipOrderId' => $ebay_id, 'is_delete' => 0);
     //根据发货单号获取快递需要的箱子和跟踪号数量
     $result_tracking_count = WhWaveTrackingBoxModel::select_by_shipOrderId($ebay_id);
     $count_binding = WhOrderTracknumberModel::count($array);
     //发货单已经绑定跟踪号的数量
     if (empty($result_tracking_count)) {
         if ($count_binding > 0) {
             self::$errCode = 211;
             self::$errMsg = $ebay_id . "该发货单已经绑定好跟踪号了!";
             return true;
         }
     } else {
         $result_tracking_count = $result_tracking_count['trackingCount'];
         //发货单需要绑定跟踪号的数量
         if ($result_tracking_count <= $count_binding) {
             self::$errCode = 212;
             self::$errMsg = $ebay_id . "该发货单已经绑定好跟踪号了!";
             return true;
         }
     }
     self::$errCode = 200;
     self::$errMsg = $ebay_id . "发货单号正确,请扫描该发货单的跟踪号,注意跟踪号的数量!";
     return true;
 }
 public function act_pda_loading_express()
 {
     $userId = $_SESSION['userId'];
     $packageId = trim($_POST['order_group']);
     //发货单号1000013
     //这里是装车扫描快递的
     $shipOrderId = $packageId;
     $where = "where id ='{$shipOrderId}'";
     $order = orderPartionModel::selectOrder($where);
     if (!$order) {
         self::$errCode = 0;
         self::$errMsg = "此发货单不存在!";
         return false;
     }
     if ($order[0]['isExpressDelivery'] == 0) {
         self::$errCode = 10;
         self::$errMsg = "此发货单为非快递单号!";
         return false;
     }
     //运输方式
     $shipping = CommonModel::getShipingNameById($order[0]['transportId']);
     $no_express_delivery = array('俄速通平邮', '俄速通挂号', '中国邮政平邮', '中国邮政挂号', 'EUB', 'UPS美国专线', 'Global Mail', '香港小包平邮', '香港小包挂号', '德国邮政挂号', '新加坡小包挂号', '新加坡DHL GM平邮', '新加坡DHL GM挂号', '瑞士小包平邮', '瑞士小包挂号', 'USPS FirstClass', 'UPS SurePost', 'UPS Ground Commercia', '比利时小包EU');
     if (in_array($shipping, $no_express_delivery)) {
         self::$errCode = 604;
         self::$errMsg = "此发货单不是快递!";
         return false;
     }
     if ($order[0]['orderStatus'] != PKS_WAITING_LOADING) {
         self::$errCode = 0;
         self::$errMsg = "此发货单状态不是在待装车扫描状态!";
         return false;
     }
     self::$errCode = '400';
     self::$errMsg = '扫描' . $packageId . '成功!';
     $res['shipOrderId'] = $shipOrderId;
     return $res;
 }
Example #3
0
 public function initDB()
 {
     global $dbConn;
     self::$dbConn = $dbConn;
     mysql_query('SET NAMES UTF8');
 }
</style>
</head>

<body style="font-family:Arial;font-size:18px">
		   
<?php 
$partion = trim($_REQUEST['partions']);
$num = trim($_REQUEST['nums']);
$HAWB = trim($_REQUEST['HAWB']);
if (!$num) {
    echo "<script type='text/javascript'>alert('没有输入数量!');window.history.go(-1);</script>";
    exit;
}
$userId = $_SESSION['userId'];
for ($j = 0; $j < $num; $j++) {
    $id = orderPartionModel::insertPrintRecord($partion, $userId);
    if ($id) {
        ?>
<div class="main">
    <div class="text" style="font-weight:bold;height:80px;">
        <span style="padding-left: 100px; padding-top: 0px;font-size: 22px;">赛维博</span>
        <span style="padding-left: 10px;padding-top: 2px;"><?php 
        echo $partion;
        ?>
</span>
        <p style="font-size:16px;">HAWB#:<?php 
        echo $HAWB ? $HAWB : '';
        ?>
</p>
        <p style="float:left;font-size:16px;">CTN NO. <?php 
        echo $id;
 /**
  * pda_shippingGroupReviewAct::Act_orderReview()
  * 对随机扫描的发货单号进行判断
  * @author cxy
  * @return
  */
 public function Act_orderReview()
 {
     $userId = $_SESSION['userId'];
     $packageId = intval(trim($_POST['packageid']));
     $shipOrderId = trim($_POST['ebay_id']);
     //先核对订单
     //兼容 EUB或者 包裹 扫描的是 trackno 而非ebayid
     $p_real_ebayid = '#^\\d+$#';
     $p_trackno_eub = '#^(LK|RA|RI|RL|RB|RC|RD|RM|RR|RF|LN|LM|AG)\\d+(CN|HK|DE200)$#';
     $p_trackno_ups = '#^(1ZR)\\d+$#';
     $p_trackno_bpost = '#^(BLVS)\\d+$#';
     $is_eub_package_type = false;
     if (preg_match($p_real_ebayid, $shipOrderId)) {
     } else {
         if (preg_match($p_trackno_eub, $shipOrderId)) {
             $is_eub_package_type = true;
         } else {
             if (preg_match($p_trackno_ups, $shipOrderId)) {
                 $is_eub_package_type = true;
             } else {
                 if (preg_match($p_trackno_bpost, $shipOrderId)) {
                     $is_eub_package_type = true;
                 } else {
                     if (strlen($shipOrderId) > 11) {
                         $is_eub_package_type = true;
                     } else {
                         self::$errCode = '001';
                         self::$errMsg = '订单号[' . $shipOrderId . ']格式有误';
                         return false;
                     }
                 }
             }
         }
     }
     if ($is_eub_package_type == true) {
         //$is_eub_package_type是真的时候$ebay_id是跟踪号
         $info = orderWeighingModel::selectOrderId($shipOrderId);
         if (!$info) {
             self::$errCode = 501;
             self::$errMsg = "此跟踪号不存在!";
             return false;
         }
         //得到发货单号
         $shipOrderId = $info[0]['shipOrderId'];
     }
     //得到发货单明细
     $order_records = WhOrderPartionRecordsModel::get_OrderPartionRecords($shipOrderId);
     if (empty($order_records)) {
         self::$errCode = 0;
         self::$errMsg = "此跟踪号/发货单号还没有进行分区!";
         return false;
     }
     if ($order_records['packageId'] != $packageId) {
         self::$errCode = 0;
         self::$errMsg = "此跟踪号/发货单号应该在{$order_records['packageId']}口袋编号中!";
         return false;
     }
     $where = "where id={$shipOrderId}";
     $order = orderPartionModel::selectOrder($where);
     if (!$order) {
         self::$errCode = 0;
         self::$errMsg = "此发货单不存在!";
         return false;
     }
     if ($order[0]['orderStatus'] != PKS_WAITING_LOADING) {
         self::$errCode = 0;
         self::$errMsg = "此发货单没有在待装车扫描状态下!";
         return false;
     }
     $order_str = $shipOrderId;
     $result_group_review = WhWaveOrderPartionShippingReviewModel::get_pocket($packageId);
     if (empty($result_group_review)) {
         self::$errCode = 0;
         self::$errMsg = "此口袋编号没有进行过分区复核!";
         return false;
     } else {
         if ($result_group_review['orders'] != 0) {
             $order_str .= ',' . $result_group_review['orders'];
             $order_str = trim($order_str, ',');
             $order_str = explode(',', $order_str);
             $order_str = array_unique($order_str);
             $order_str = implode(',', $order_str);
         }
         $update_group_shipping = WhWaveOrderPartionShippingReviewModel::update_shipping_review($packageId, $order_str);
         if ($update_group_shipping) {
             self::$errCode = '200';
             self::$errMsg = "请复核下一个发货单或者下一个口袋编号";
             return true;
         } else {
             self::$errCode = '20';
             self::$errMsg = "扫描发货单号失败,请联系负责人";
             return false;
         }
     }
 }
Example #6
0
 public function act_orderPartionPack()
 {
     $partion = isset($_POST['partion']) ? trim($_POST['partion']) : "";
     $packageId = isset($_POST['packageid']) ? trim($_POST['packageid']) : "";
     $userId = $_SESSION['userId'];
     $msg = orderPartionModel::selectPartionPack($packageId);
     if ($msg[0]['partion'] != $partion) {
         self::$errCode = 608;
         self::$errMsg = "选择的分区与扫描口袋的分区不匹配!";
         return false;
     }
     TransactionBaseModel::begin();
     $where = " where partion='{$partion}' and scanUserId={$userId} and packageid is null";
     $data = orderPartionModel::selectData($where);
     if ($data[0]['totalNum'] == 0) {
         self::$errCode = 611;
         self::$errMsg = "已打包!";
         return false;
     }
     $result1 = orderPartionModel::updatePartionRecord($partion, $userId, $packageId);
     if (!$result1) {
         self::$errCode = 609;
         self::$errMsg = "更新分区记录失败!";
         TransactionBaseModel::rollback();
         return false;
     }
     $result2 = orderPartionModel::updatePartionPack($packageId, $data[0]['totalNum'], $data[0]['totalWeight'], $userId);
     if (!$result1) {
         self::$errCode = 610;
         self::$errMsg = "更新口袋记录失败!";
         TransactionBaseModel::rollback();
         return false;
     }
     TransactionBaseModel::commit();
     return true;
 }
Example #7
0
 /**
  * printAct::act_abnormalRestore()
  * 异常发货单恢复
  * @return
  */
 public function act_abnormalRestore()
 {
     $userId = $_SESSION['userId'];
     $orderids = isset($_POST['orderids']) ? trim($_POST['orderids']) : '';
     if (empty($userId)) {
         self::$errCode = 0;
         self::$errMsg = '请重新登录!';
         return false;
     }
     if (empty($orderids)) {
         self::$errCode = 0;
         self::$errMsg = '请选择发货单号!';
         return false;
     }
     $order_arr = explode(',', $orderids);
     foreach ($order_arr as $shipOrderId) {
         $where = "where id={$shipOrderId}";
         $order = orderPartionModel::selectOrder($where);
         if (!$order) {
             self::$errCode = 0;
             self::$errMsg .= "此发货单'{$shipOrderId}'不存在!";
             continue;
         } else {
             $status = PKS_WIQC;
             $update_result = WhShippingOrderModel::update_shipping_order_by_id("id = '{$shipOrderId}' and is_delete = 0", "orderStatus = '{$status}'");
             if ($update_result) {
                 self::$errMsg .= "此发货单'{$shipOrderId}'状态还原为待复核状态!";
             } else {
                 self::$errMsg .= "此发货单'{$shipOrderId}'异常恢复失败!";
             }
         }
     }
     self::$errCode = 200;
     self::$errMsg .= '操作完成';
     return true;
 }
Example #8
0
 public function view_pda_orderPartion()
 {
     //$this->smarty->template_dir = WEB_PATH.'pda/html/';
     $userId = $_SESSION['userId'];
     $type = isset($_GET['type']) ? trim($_GET['type']) : "";
     if ($type == "pack") {
         $this->smarty->assign("successLog", "打包成功!");
         $this->smarty->assign("lists", array());
     }
     if ($type == "scan") {
         $partion = isset($_GET['partion']) ? urldecode(trim($_GET['partion'])) : "";
         $orderid = isset($_GET['orderid']) ? trim($_GET['orderid']) : "";
         $where = " where partion='{$partion}' and scanUserId={$userId} and packageid is null";
         $lists = orderPartionModel::selectData($where);
         $lists[0]['partion'] = $partion;
         $this->smarty->assign("successLog", "扫描成功!" . "(" . $orderid . ")");
         $this->smarty->assign("orderid", $orderid);
         $this->smarty->assign("partion", $partion);
         $this->smarty->assign("lists", $lists);
     }
     /*$channel_list = $memc_obj->get_extral('trans_system_channelinfo');
     		
     		//print_r($channel_list);
     		$this->smarty->assign("channel_list",$channel_list);
     		
     		
     		$partion_list = $memc_obj->get_extral('trans_system_carrierinfo');
     		
     		
     		
     		foreach($partion_list as $key=> $value_arr){
     			foreach($value_arr as $key1=> $value){
     				$partion[$key1] = $value;
     				$carrierId = $key;
     				$carrier_list = $memc_obj->get_extral('trans_system_carrier');
     				//print_r($carrier_list);
     				foreach($carrier_list as $carrier_value){
     					if($carrierId == $carrier_value['id']){
     						$partion[$key1]['carrierName'] = $carrier_value['carrierNameCn'];
     					}
     					
     				}
     			}
     		}
     		//print_r($partion);
     		$this->smarty->assign("partion",$partion);*/
     $where = " where scanUserId='{$userId}' and packageid is null";
     $ret = orderPartionModel::selectUserPartion($where);
     /*
     		foreach($ret as $key=>$ret_value){
     			foreach($partion_list as $key=> $value_arr){
     				foreach($value_arr as $key1=> $value){
     					if($ret_value['partionId']==$value['partionId']){
     						$ret[$key]['partionName'] = $value['partitionName'];
     					}
     					
     				}
     			}
     		}*/
     $toptitle = '分区扫描';
     $this->smarty->assign('toptitle', $toptitle);
     $this->smarty->assign('action', $toptitle);
     $this->smarty->assign("partionuser", $ret);
     $this->smarty->display('pda_orderPartion.htm');
 }
 /**
  * pda_ExpressWeighingAct::act_trackingCount()
  * @author cxy 
  *快递箱子和跟踪号数量添加到数据库
  * @return
  */
 public function act_trackingCount()
 {
     $userId = $_SESSION['userId'];
     $ebay_id = trim($_POST['ebay_id']);
     $count_box = trim(intval($_POST['count_box']));
     $tracking_count = trim(intval($_POST['tracking']));
     $weighing = trim($_POST['weighing']);
     $weighing = $weighing * 1000;
     if (empty($userId)) {
         self::$errCode = '0';
         self::$errMsg = '系统登录超时,请先关闭浏览器 然后登录扫描!!';
         return false;
     }
     if (empty($ebay_id)) {
         self::$errCode = 0;
         self::$errMsg = '请填写单号!';
         return;
     }
     if ($count_box <= 1) {
         self::$errCode = 0;
         self::$errMsg = '请输入正确的箱子数量,最小是2!';
         return false;
     }
     if ($tracking_count < 1) {
         self::$errCode = 0;
         self::$errMsg = '请输入正确的跟踪号数量,最小是1!';
         return false;
     }
     if ($weighing <= 0) {
         self::$errCode = 0;
         self::$errMsg = '请输入正确的重量!';
         return;
     }
     $where = "where id={$ebay_id}";
     $order = orderPartionModel::selectOrder($where);
     if ($order[0]['transportId'] == 48) {
         //顺丰快递的跟踪号值能是一个
         $tracking_count = 1;
     } else {
         if ($tracking_count != $count_box) {
             self::$errCode = 0;
             self::$errMsg = '跟踪号数量与箱子数量不相等!';
             return;
         }
     }
     //逻辑删除以前称重的记录
     $update = WhWaveTrackingBoxModel::update(array('is_delete' => 1), array('shipOrderId' => $ebay_id));
     $data = array('boxCount' => $count_box, 'trackingCount' => $tracking_count, 'shipOrderId' => $ebay_id, 'weighTime' => time());
     $result = WhWaveTrackingBoxModel::insert($data);
     if ($result) {
         WhBaseModel::begin();
         $status = PKS_PRINT_SHIPPING_INVOICE;
         $result = WhShippingOrderModel::update_shipping_order_by_id("id = '{$ebay_id}' and is_delete = 0", "orderStatus = '{$status}',orderWeight = '{$weighing}'");
         if (!$result) {
             WhBaseModel::rollback();
             self::$errCode = 0;
             self::$errMsg = '称重添加失败,请联系负责人';
             return false;
         }
         $msg = orderWeighingModel::insertRecord($ebay_id, $userId);
         if (!$msg) {
             self::$errCode = 511;
             self::$errMsg = "插入称重记录失败!";
             WhBaseModel::rollback();
             return false;
         }
         $msg_update = orderWeighingModel::updateRecord($ebay_id, $weighing, $userId);
         if (!$msg_update) {
             self::$errCode = 512;
             self::$errMsg = "更新操作记录表失败!";
             WhBaseModel::rollback();
             return false;
         }
         WhPushModel::pushOrderStatus($ebay_id, 'PKS_PRINT_SHIPPING_INVOICE', $_SESSION['userId'], time());
         //状态推送,需要改为待打印面单(订单系统提供状态常量)
         WhBaseModel::commit();
         self::$errCode = 200;
         self::$errMsg = '操作成功,请称重下一个发货单号';
         return true;
     } else {
         self::$errCode = 211;
         self::$errMsg = '操作失败,请联系IT部门';
         return false;
     }
 }
Example #10
0
 public function view_formDataImport()
 {
     // $tir_obj = new TrackInfoRecordModel();
     $ebay_id = $_POST['order'][1];
     $tracking = $_POST['express'][1];
     if (empty($ebay_id) && empty($tracking)) {
         $data = array("data" => array('发货单和跟踪号不能是空!'), 'link' => 'index.php?mod=expressRecheck&act=trackNumberInput');
         goErrMsgPage($data);
     }
     $where = "where id={$ebay_id}";
     $order = orderPartionModel::selectOrder($where);
     if (!$order) {
         $data = array("data" => array('发货单不存在!'), 'link' => 'index.php?mod=expressRecheck&act=trackNumberInput');
         goErrMsgPage($data);
         exit;
     }
     if ($order[0]['orderStatus'] != PKS_PRINT_SHIPPING_INVOICE) {
         $data = array("data" => array($ebay_id . '此发货单状态不是在待打印面单状态!'), 'link' => 'index.php?mod=expressRecheck&act=trackNumberInput');
         goErrMsgPage($data);
         exit;
     }
     $array = array('shipOrderId' => $ebay_id, 'is_delete' => 0);
     //根据发货单号获取快递需要的箱子和跟踪号数量
     $result_tracking_count = WhWaveTrackingBoxModel::select_by_shipOrderId($ebay_id);
     $count_binding = WhOrderTracknumberModel::count($array);
     //发货单已经绑定跟踪号的数量
     if (empty($result_tracking_count)) {
         if ($count_binding > 0) {
             $data = array("data" => array($ebay_id . "该发货单已经绑定好跟踪号了!"), 'link' => 'index.php?mod=expressRecheck&act=trackNumberInput');
             goErrMsgPage($data);
             exit;
         }
     } else {
         $result_tracking_count = $result_tracking_count['trackingCount'];
         //发货单需要绑定跟踪号的数量
         if ($result_tracking_count <= $count_binding) {
             $data = array("data" => array($ebay_id . "该发货单已经绑定好跟踪号了!"), 'link' => 'index.php?mod=expressRecheck&act=trackNumberInput');
             goErrMsgPage($data);
             exit;
         }
     }
     //查询扫描的跟踪号是否已经扫描过了的
     $result_select = WhOrderTracknumberModel::select_ByTracknumber($tracking);
     if ($result_select) {
         $data = array("data" => array('该跟踪号已经绑定' . $result_select['shipOrderId'] . ',请检查!'), 'link' => 'index.php?mod=expressRecheck&act=trackNumberInput');
         goErrMsgPage($data);
         exit;
     }
     $data_insert = array('tracknumber' => $tracking, 'shipOrderId' => $ebay_id, 'createdTime' => time());
     $array_count = array('shipOrderId' => $ebay_id, 'is_delete' => 0);
     //根据发货单号获取快递需要的箱子和跟踪号数量
     $result_tracking_count = WhWaveTrackingBoxModel::select_by_shipOrderId($ebay_id);
     //说明该快递单只有一个箱子和一个跟踪号,所以不需要在wh_wave_tracking_box "快递单号的箱子与跟踪号数量表"添加记录
     if (empty($result_tracking_count)) {
         $count_binding = WhOrderTracknumberModel::count($array_count);
         //发货单已经绑定跟踪号的数量
         if ($count_binding > 0) {
             $data = array("data" => array('该发货单号已经绑定好跟踪号了,不在需要和这个跟踪号绑定!'), 'link' => 'index.php?mod=expressRecheck&act=trackNumberInput');
             goErrMsgPage($data);
             exit;
         }
         WhBaseModel::begin();
         $result_insert = WhOrderTracknumberModel::insert($data_insert);
         if (!$result_insert) {
             WhBaseModel::rollback();
             $data = array("data" => array('跟踪号绑定失败,请联系负责人!'), 'link' => 'index.php?mod=expressRecheck&act=trackNumberInput');
             goErrMsgPage($data);
             exit;
         }
         //更新发货表状态
         $ostatus = WhWaveOrderPartionScanReviewModel::updateShippingOrderStatus($ebay_id, $status = PKS_WAITING_LOADING);
         if (!$ostatus) {
             WhBaseModel::rollback();
             $data = array("data" => array('更新发货单状态失败,请联系负责人!'), 'link' => 'index.php?mod=expressRecheck&act=trackNumberInput');
             goErrMsgPage($data);
             exit;
         }
         WhPushModel::pushOrderStatus($ebay_id, 'PKS_WAITING_LOADING', $_SESSION['userId'], time());
         //状态推送,需要改为待装车扫描(订单系统提供状态常量)
         WhBaseModel::commit();
         $data = array("data" => array('绑定成功,请扫描另外一个发货单!'), 'link' => 'index.php?mod=expressRecheck&act=trackNumberInput');
         goOkMsgPage($data);
     } else {
         $result_tracking_count = $result_tracking_count['trackingCount'];
         //发货单需要绑定跟踪号的数量
         $count_binding = WhOrderTracknumberModel::count($array_count);
         //发货单已经绑定跟踪号的数量
         if ($result_tracking_count > $count_binding) {
             WhBaseModel::begin();
             $result_insert = WhOrderTracknumberModel::insert($data_insert);
             if (!$result_insert) {
                 WhBaseModel::rollback();
                 $data = array("data" => array('跟踪号绑定失败,请联系负责人!'), 'link' => 'index.php?mod=expressRecheck&act=trackNumberInput');
                 goErrMsgPage($data);
                 exit;
             }
             $num = $result_tracking_count - $count_binding - 1;
             if ($num == 0) {
                 //更新发货表状态
                 $ostatus = WhWaveOrderPartionScanReviewModel::updateShippingOrderStatus($ebay_id, $status = PKS_WAITING_LOADING);
                 if (!$ostatus) {
                     WhBaseModel::rollback();
                     $data = array("data" => array('更新发货单状态失败,请联系负责人!'), 'link' => 'index.php?mod=expressRecheck&act=trackNumberInput');
                     goErrMsgPage($data);
                     exit;
                 }
                 WhPushModel::pushOrderStatus($ebay_id, ' ', $_SESSION['userId'], time());
                 //状态推送,需要改为待装车扫描(订单系统提供状态常量)
                 WhBaseModel::commit();
                 $data = array("data" => array('绑定成功,该发货单不需要绑定跟踪号了!'), 'link' => 'index.php?mod=expressRecheck&act=trackNumberInput');
                 goErrMsgPage($data);
             } else {
                 WhBaseModel::commit();
                 $data = array("data" => array('绑定成功,该发货单还需要绑定' . $num . '个跟踪号!'), 'link' => 'index.php?mod=expressRecheck&act=trackNumberInput');
                 goOkMsgPage($data);
             }
         } else {
             $data = array("data" => array('绑定失败,绑定的跟踪号已经够' . $result_tracking_count . '个,请扫描另外一个发货单!'), 'link' => 'index.php?mod=expressRecheck&act=trackNumberInput');
             goErrMsgPage($data);
             exit;
         }
     }
     $navlist = array(array('url' => '', 'title' => '出库'), array('url' => 'index.php?mod=expressRecheck&act=ExpressList', 'title' => '快递待复核'), array('url' => '', 'title' => '快递待复核数据导入 '));
     $this->smarty->assign('navlist', $navlist);
     $toptitle = '待复核';
     // 顶部链接
     $this->smarty->assign('toptitle', $toptitle);
     $toplevel = 2;
     // 顶层菜单
     $this->smarty->assign('toplevel', $toplevel);
     $secondlevel = '28';
     // 当前的二级菜单
     $this->smarty->assign('secondlevel', $secondlevel);
     $this->smarty->assign('secnev', 3);
     // 二级导航
     $this->smarty->assign('list', TrackInfoRecordModel::$data);
     $this->smarty->display('tracknumimport.htm');
 }
 /**
  * pda_partitionCheckingAct::act_scanOrderReview()
  * 在PDA扫描分区编号后对订单号进行分区复核
  * @author cxy
  * @return boolean
  */
 public function act_scanOrderReview()
 {
     $userId = $_SESSION['userId'];
     $ebay_id = trim($_POST['ebay_id']);
     $ebay_id = substr($ebay_id, -22);
     $partion = trim($_POST['partion']);
     $package_id = intval(trim($_POST['package_id']));
     if (empty($userId)) {
         self::$errCode = '0';
         self::$errMsg = '系统登录超时,请先关闭浏览器 然后登录扫描!!';
         return false;
     }
     //先核对订单
     //兼容 EUB或者 包裹 扫描的是 trackno 而非ebayid 拿LN229773466CN追踪号对应1012970发货单号测试
     $p_real_ebayid = '#^\\d+$#';
     $p_trackno_eub = '#^(LK|RA|RI|RL|RB|RM|RC|RD|RR|RF|LN|LM|AG)\\d+(CN|HK|DE200)$#';
     $p_trackno_ups = '#^(BLVS|1ZR)\\d+$#';
     $p_ups = '/^(1ZA)/';
     $is_eub_package_type = false;
     if (preg_match($p_real_ebayid, $ebay_id)) {
     } else {
         if (preg_match($p_trackno_eub, $ebay_id)) {
             $is_eub_package_type = true;
         } else {
             if (preg_match($p_trackno_ups, $ebay_id)) {
                 $is_eub_package_type = true;
             } else {
                 if (preg_match($p_ups, $ebay_id)) {
                     $is_eub_package_type = true;
                 } else {
                     self::$errCode = '001';
                     self::$errMsg = '订单号[' . $ebay_id . ']格式有误';
                     return false;
                 }
             }
         }
     }
     if (strlen($ebay_id) > 20) {
         $is_eub_package_type = true;
     }
     if ($is_eub_package_type == true) {
         //$is_eub_package_type是真的时候$ebay_id是跟踪号
         $info = orderWeighingModel::selectOrderId($ebay_id);
         if (!$info) {
             self::$errCode = 501;
             self::$errMsg = "此跟踪号不存在!";
             return false;
         }
         //得到发货单号
         $shipOrderId = $info[0]['shipOrderId'];
     } else {
         $shipOrderId = $ebay_id;
     }
     //得到发货单明细
     $order_records = WhOrderPartionRecordsModel::get_OrderPartionRecords($shipOrderId);
     if (empty($order_records)) {
         self::$errCode = 0;
         self::$errMsg = "此跟踪号/发货单号还没有进行分区!";
         return false;
     }
     if ($order_records['packageId'] != $package_id) {
         self::$errCode = 0;
         self::$errMsg = "此跟踪号/发货单号应该在{$order_records['packageId']}口袋编号中!";
         return false;
     }
     if ($order_records['partion'] != $partion) {
         self::$errCode = 0;
         self::$errMsg = "此跟踪号/发货单号没有在{$partion}分区中!";
         return false;
     }
     $where = "where id={$shipOrderId}";
     $order = orderPartionModel::selectOrder($where);
     if (!$order) {
         self::$errCode = 0;
         self::$errMsg = "此发货单不存在!";
         return false;
     }
     if ($order[0]['orderStatus'] != PKS_DISTRICT_CHECKING) {
         self::$errCode = 0;
         self::$errMsg = "此发货单状态不是在待分区复核!";
         return false;
     }
     $review_list = WhWaveOrderPartionScanReviewModel::get_reviewById($shipOrderId);
     if (!empty($review_list)) {
         self::$errCode = 0;
         self::$errMsg = "此发货单已经分区复核过了!";
         return false;
     } else {
         WhBaseModel::begin();
         $data = array('shipOrderId' => $shipOrderId, 'partion' => $partion, 'userId' => $userId, 'scantime' => time(), 'packageId' => $package_id);
         $result = WhWaveOrderPartionScanReviewModel::insert($data);
         if ($result) {
             $update = WhWaveOrderPartionScanReviewModel::updateOrderRecords($shipOrderId, $userId);
             if (!$update) {
                 self::$errCode = '206';
                 self::$errMsg = '更新操作记录失败,请联系负责人!';
                 WhBaseModel::rollback();
                 return false;
             }
             //更新发货表状态
             $ostatus = WhWaveOrderPartionScanReviewModel::updateShippingOrderStatus($shipOrderId, $status = PKS_PRINT_SHIPPING_INVOICE);
             if (!ostatus) {
                 self::$errCode = 608;
                 self::$errMsg = "更新发货单状态失败!";
                 WhBaseModel::rollback();
                 return false;
             }
             WhPushModel::pushOrderStatus($shipOrderId, 'PKS_PRINT_SHIPPING_INVOICE', $_SESSION['userId'], time());
             //状态推送,需要改为待打印面单(订单系统提供状态常量)
         } else {
             self::$errCode = '206';
             self::$errMsg = '该订单分区复核失败,请联系负责人!';
             WhBaseModel::rollback();
             return false;
         }
         self::$errCode = '200';
         self::$errMsg = '该订单分区正确,请复核下一订单!';
         WhBaseModel::commit();
         return true;
     }
 }