public function view_showForm() { global $memc_obj; $pagesize = 200; //页面大小 $whereSql = $this->buildWhereSql(); //echo $whereSql;exit; $packorder_obj = new PackingOrderModel(); $rownumber = $packorder_obj->getRowAllNumber($whereSql . ' group by po.id '); //获得所有的行数 $pager = new Page($rownumber, $pagesize); $billlist = $packorder_obj->getBillList($whereSql . ' group by po.id order by pd.pName ' . $pager->limit); //更具条件获得发货单 $packorder_obj->buildOrderinfo($billlist); /* //去除重复的 $currentid = NULL; $prekey = 0; foreach ($billlist as $key=>$valbill){ if ($currentid == $valbill['id']) { $billlist[$prekey]['originOrderId'] .= ', '.$valbill['originOrderId']; unset($billlist[$key]); }else { $prekey = $key; $currentid = $valbill['id']; } } */ $materInfo = CommonModel::getMaterInfoAll(); //获取包材信息 $materInfo = reverse_array($materInfo, 'pmName', 'id'); $shipingtyplist = CommonModel::getShipingTypeList(); //运输方式列表 $shipingtyplist = reverse_array($shipingtyplist, 'carrierNameCn', 'id'); $salesaccountlist = CommonModel::getSalesaccountList(); //获取销售帐号 $salesaccountlist = reverse_array($salesaccountlist, 'account', 'id'); //print_r($salesaccountlist);exit; $platformList = CommonModel::getPlatformInfo(); //获取平台帐号 $platformList = reverse_array($platformList, 'platform', 'id'); $this->smarty->assign('shipingtypelist', $shipingtyplist); $this->smarty->assign('salesaccountlist', $salesaccountlist); $this->smarty->assign('platformList', $platformList); foreach ($billlist as $key => $valbil) { $tracknumber = ''; $str_info = OmAvailableModel::getTNameList("wh_order_tracknumber", "tracknumber", "where shipOrderId='{$valbil['id']}' and is_delete=0"); if (!empty($str_info)) { $tracknumber = $str_info[0]['tracknumber']; } $billlist[$key]['tracknumber'] = $tracknumber; $originOrder_arr = array(); $originOrder_str = ''; $originOrder_info = OmAvailableModel::getTNameList("wh_shipping_order_relation", "originOrderId", "where shipOrderId='{$valbil['id']}'"); if (!empty($originOrder_info)) { foreach ($originOrder_info as $originOrder) { $originOrder_arr[] = $originOrder['originOrderId']; } $originOrder_str = implode(',', $originOrder_arr); } $billlist[$key]['originOrder'] = $originOrder_str; //运输方式 $billlist[$key]['shipingname'] = $shipingtyplist[$valbil['transportId']]; //包材 $billlist[$key]['materName'] = $materInfo[$valbil['pmId']]; //平台 $billlist[$key]['platformName'] = $platformList[$valbil['platformId']]; //销售账号 $billlist[$key]['salesaccountinfo'] = $salesaccountlist[$valbil['accountId']]; } if ($rownumber > $pagesize) { //分页 $pagestr = $pager->fpage(array(0, 2, 3, 4, 5, 6, 7, 8, 9)); } else { $pagestr = $pager->fpage(array(0, 2, 3)); } $this->smarty->assign('pagestr', $pagestr); $this->smarty->assign('billlist', $billlist); //发货单列表 $this->smarty->assign('secnev', 3); $libstu_obj = new LibraryStatusModel(); //出库状态类型 $libstatuslist = $libstu_obj->getAllLibStatusList(' and groupId in (4 ,5)'); $this->smarty->assign('outstatuslist', $libstatuslist); $toptitle = '订单查询'; //头部title $this->smarty->assign('toptitle', $toptitle); $storeId = isset($_GET['storeId']) ? intval($_GET['storeId']) : 0; if ($storeId == 1) { $navlist = array(array('url' => '', 'title' => '出库'), array('url' => '', 'title' => '发货单查询'), array('url' => '', 'title' => 'A仓发货单')); } elseif ($storeId == 2) { $navlist = array(array('url' => '', 'title' => '出库'), array('url' => '', 'title' => '发货单查询'), array('url' => '', 'title' => 'B仓发货单')); } else { $navlist = array(array('url' => '', 'title' => '出库'), array('url' => '', 'title' => '发货单查询')); } $this->smarty->assign('navlist', $navlist); $toplevel = 2; //一级菜单的序号 0 开始 $this->smarty->assign('toplevel', $toplevel); $secondlevel = isset($_GET['secondlevel']) ? trim($_GET['secondlevel']) : ''; if (empty($secondlevel)) { $secondlevel = '21'; //当前的二级菜单 } $this->smarty->assign('secondlevel', $secondlevel); $this->smarty->assign('platLists', $_SESSION['platformList']); $this->smarty->assign('accounts', $_SESSION['accountList']); $this->smarty->assign('shippingList', $_SESSION['shippingList']); $this->smarty->display('dispatchbillquery.htm'); }
public function act_orderPartion() { $orderid = isset($_POST['orderid']) ? trim($_POST['orderid']) : ""; if (!is_numeric($orderid)) { $tracknumber = $orderid; $info = orderWeighingModel::selectOrderId($tracknumber); if (!$info) { self::$errCode = 501; self::$errMsg = "此跟踪号不存在!"; return false; } $orderid = $info[0]['shipOrderId']; } $where = "where id={$orderid}"; $order = orderPartionModel::selectOrder($where); if (!$order) { self::$errCode = 601; self::$errMsg = "此发货单不存在!"; return false; } if (!is_numeric($orderid)) { $orderid = $order[0]['id']; } $msg = orderPartionModel::selectPartionRecord($orderid); if ($msg) { self::$errCode = 603; self::$errMsg = "此发货单已扫描!"; return false; } if ($order[0]['orderStatus'] != 406) { self::$errCode = 602; self::$errMsg = "此发货单不在待分区!"; return false; } $shipping = CommonModel::getShipingNameById($order[0]['transportId']); if (!in_array($shipping, array('中国邮政平邮', '中国邮政挂号', 'EUB', 'Global Mail', '香港小包平邮', '香港小包挂号', '德国邮政'))) { self::$errCode = 604; self::$errMsg = "此发货单不是小包!"; return false; } $partion = $shipping; $platformName = CommonModel::getPlatformInfo($order[0]['platformId']); if ($shipping == 'Global Mail') { if ($platformName == '亚马逊') { $partion = "非德国Global Mail"; } elseif ($platformName == '海外销售平台') { if ($order[0]['countryName'] == 'Deutschland') { $partion = "Global Mail"; } else { $partion = "非德国Global Mail"; } } } elseif ($shipping == '中国邮政平邮') { $partion = printLabelModel::showPartionScan($orderid, $order[0]['accountId'], $shipping, $order[0]['countryName']); } elseif ($shipping == '中国邮政挂号') { $partion = printLabelModel::showPartionScan($orderid, $order[0]['accountId'], $shipping, $order[0]['countryName']); } /* $lists = $memc_obj->get_extral('trans_system_carrierinfo'); //print_r($lists); foreach($lists as $list){ foreach($list as $value){ if($record[0]['channelId']==$value['channelId']){ $countries = $value['countries']; $country_arr = explode("','",$countries); $country_arr[0] = str_replace("'","",$country_arr[0]); $country_arr[count($country_arr)-1] = str_replace("'","",$country_arr[count($country_arr)-1]); if(in_array($record[0]['countryName'],$country_arr)){ $partionId = $value['id']; } } } }*/ TransactionBaseModel::begin(); $weight = orderPartionModel::selectWeight($orderid); if (!$weight) { self::$errCode = 605; self::$errMsg = "此发货单无重量!"; return false; } $userId = $_SESSION['userId']; $result = orderPartionModel::insertRecord($orderid, $partion, $weight, $userId); if (!result) { self::$errCode = 606; self::$errMsg = "插入分区记录失败!"; TransactionBaseModel::rollback(); return false; } $ret = orderPartionModel::updateOrderRecords($orderid, $userId); if (!ret) { self::$errCode = 607; self::$errMsg = "更新操作记录失败!"; TransactionBaseModel::rollback(); return false; } $ostatus = orderPartionModel::updateOrderStatus($orderid); if (!ostatus) { self::$errCode = 608; self::$errMsg = "更新发货单状态失败!"; TransactionBaseModel::rollback(); return false; } $arr['orderid'] = $orderid; $arr['partion'] = urlencode($partion); TransactionBaseModel::commit(); return $arr; }