Beispiel #1
0
 /**
  *添加指定表记录,返回TRUE or FALSE
  */
 public static function act_insertRow($tName, $set)
 {
     $ret = OmAvailableModel::insertRow($tName, $set);
     if ($ret !== FALSE) {
         return $ret;
     } else {
         self::$errCode = OmAvailableModel::$errCode;
         self::$errMsg = OmAvailableModel::$errMsg;
         return false;
     }
 }
Beispiel #2
0
require_once "scripts.comm.php";
$accountArr = UserCacheModel::getOpenSysApi("getaccount", array('add' => 1));
$platformArr = array("aliexpress" => 2, "cndirect" => 8, "DHgate" => 4, "dresslink" => 10, "ebay平台" => 1, "Newegg" => 15, "亚马逊" => 11, "出口通" => 3, "国内销售部" => 16, "天猫哲果" => 13, "天猫芬哲" => 12, "海外仓" => 14, "海外销售平台" => 1, "线下结算客户" => 9);
foreach ($accountArr as $account) {
    $insertarr = array();
    foreach ($platformArr as $key => $value) {
        if ($key == $account['ebay_platform']) {
            $platformId = $value;
            break;
        }
    }
    $insertarr['id'] = $account['id'];
    $insertarr['account'] = $account['ebay_account'];
    $insertarr['addTime'] = 0;
    $insertarr['addUser'] = $account['ebay_user'];
    $insertarr['platformId'] = $platformId;
    $insertarr['appname'] = $account['appname'];
    $insertarr['email'] = $account['mail'];
    $insertarr['suffix'] = $account['account_suffix'];
    $insertarr['token'] = $account['ebay_token'];
    $count = OmAvailableModel::getTNameList("fb_account", "id", " where id={$account['id']}");
    $sql = array2sql($insertarr);
    if (!count($count) > 0) {
        if (OmAvailableModel::insertRow("fb_account", " set {$sql}")) {
            echo "{$account['id']} \n";
        } else {
            echo "失败";
        }
    }
    unset($insertarr);
}
Beispiel #3
0
         foreach ($v as $v0) {
             $sku_price += $v0['real_price'];
             $qty += $v0['qty'];
         }
         //$fedex_remark['ebay_ordersn'] 	= $order['ebay_ordersn'];
         $fedex_remark['price'] = round($sku_price / $qty, 2);
         $fedex_remark['amount'] = $qty;
         $fedex_remark['hamcodes'] = $v[0]['hamcodes'];
         if ($carrierList[$orderdata['transportId']] == 'DHL' || $carrierList[$orderdata['transportId']] == 'EMS') {
             $fedex_remark['price'] = round($sku_price, 2);
         }
         $fedex_remark['createdTime'] = time();
         $fedex_remark['omOrderId'] = $omOrderId;
         $fedex_remark['creatorId'] = 253;
         //$insert_fedex_sql = "INSERT INTO fedex_remark set ".array2sql($fedex_remark);
         $info = OmAvailableModel::insertRow("om_express_remark", " set " . array2sql($fedex_remark));
         if ($info) {
             //echo "----<font color=green> {$order['recordnumber']} 导入海关记录成功!</font><br>";
         } else {
             //echo $insert_fedex_sql; echo "<br>";
             //echo "----<font color=red>{$order['recordnumber']} 导入海关记录失败!</font><br>";
             $fail_order[] = $orderdata['recordnumber'];
         }
     }
     //echo "订单".$ebay_id."抓取成功!<br>";
     //baseModel::commit();
 }
 if ($val['ACK'] != "Success") {
     if ($val['Errors']['ShortMessage'] != "") {
         echo "orderdetails ShortMessage:" . $val['Errors']['ShortMessage'] . "\n";
     }
Beispiel #4
0
function updateNewPostion($sku, $location)
{
    global $dbConn;
    $goodsinfos = OmAvailableModel::getTNameList("pc_goods", "sku,id", "where sku='{$sku}'");
    $pId = $goodsinfos[0]['id'];
    //产品id
    if ($location) {
        $sql1 = "select * from `wh_position_distribution` where pName = '{$location}'";
        $query = $dbConn->query($sql1);
        $wh_position_distribution = $dbConn->fetch_array($query);
        if ($wh_position_distribution) {
            $positionId = $wh_position_distribution['id'];
            //$postionId = OmAvailableModel::insertRow2("wh_position_distribution","set pName='$location',x_alixs=0,y_alixs=0,z_alixs=0,floor=0,is_enable=0,type=1,storeId=2");
            if ($positionId) {
                $positioninfos = OmAvailableModel::getTNameList("wh_product_position_relation", "id", "where pId='{$pId}' and storeId = '{$wh_position_distribution['storeId']}'");
                if (!empty($positioninfos)) {
                    if ($data = OmAvailableModel::updateTNameRow("wh_product_position_relation", "set positionId='{$positionId}', storeId={$wh_position_distribution['storeId']}", " where pId='{$pId}' and storeId = '{$wh_position_distribution['storeId']}'")) {
                        //echo "update <".$sku."> ===(".$positionId.") success\n";
                        return true;
                    } else {
                        return false;
                    }
                } else {
                    //$infos = OmAvailableModel::getTNameList("wh_sku_location","sku,actualStock","where sku='{$sku}'");
                    //					$num = $info['actualStock'];
                    $data = OmAvailableModel::insertRow("wh_product_position_relation", "set pId='{$pId}',positionId='{$positionId}', storeId={$wh_position_distribution['storeId']}");
                }
            } else {
                return false;
            }
        } else {
            return false;
        }
    }
}
Beispiel #5
0
 public function act_whReturnSkuShelf()
 {
     //print_r($_POST);
     $sku = trim($_POST['sku']);
     $sku = get_goodsSn($sku);
     $nums = $_POST['nums'];
     $select_now_position = $_POST['select_now_position'];
     $select_now_store = $_POST['select_now_store'];
     $select_hope_position = $_POST['select_hope_position'];
     $select_hope_store = $_POST['select_hope_store'];
     if (empty($sku)) {
         self::$errCode = 401;
         self::$errMsg = "sku不能为空";
         return false;
     }
     if (empty($select_now_position) && empty($select_now_store) && empty($select_hope_position) && empty($select_hope_store)) {
         self::$errCode = 401;
         self::$errMsg = "上架位置不能为空";
         return false;
     }
     $where = "where sku='{$sku}' and status=0";
     $tallying_list = PostReturnModel::getReturnList("*", $where);
     if (empty($tallying_list)) {
         self::$errCode = 402;
         self::$errMsg = "无该料号退回信息";
         return false;
     } else {
         $tallying_num = 0;
         foreach ($tallying_list as $tallying) {
             $tallying_num += $tallying['ichibanNums'] - $tallying['shelvesNums'];
         }
         if ($nums > $tallying_num) {
             self::$errCode = 402;
             self::$errMsg = "上架数不能大于qc良品数[{$tallying_num}]";
             return false;
         }
     }
     if ($nums < 1) {
         self::$errCode = 403;
         self::$errMsg = "入库数量不能小于1";
         return false;
     }
     $where = " where sku = '{$sku}'";
     $skuinfo = whShelfModel::selectSku($where);
     if (empty($skuinfo)) {
         self::$errCode = 404;
         self::$errMsg = "无该料号信息";
         return false;
     } else {
         $skuId = $skuinfo['id'];
         $purchaseId = $skuinfo['purchaseId'];
     }
     $userId = $_SESSION['userId'];
     $in_positionId = 0;
     TransactionBaseModel::begin();
     /***无料号对应仓位的关系时更新关系表***/
     if ($select_hope_store != 0 || $select_hope_position != 0) {
         $type = 1;
         $positionId = $select_hope_position;
         if ($select_hope_store != 0) {
             $type = 2;
             $positionId = $select_hope_store;
         }
         $in_positionId = $positionId;
         $tname = "wh_product_position_relation";
         $set = "set pId='{$skuId}',positionId='{$positionId}',nums='{$nums}',type='{$type}'";
         $insert_relation = OmAvailableModel::insertRow($tname, $set);
         if (!$insert_relation) {
             self::$errCode = 408;
             self::$errMsg = "插入关系表失败!";
             TransactionBaseModel::rollback();
             return false;
         }
         //更新仓位使用状态
         $update_position = OmAvailableModel::updateTNameRow("wh_position_distribution", "set is_enable=1", "where id={$positionId}");
         if ($update_position === false) {
             self::$errCode = 409;
             self::$errMsg = "更新仓位使用状态失败!";
             TransactionBaseModel::rollback();
             return false;
         }
     }
     //更新指定仓位存货数量
     if ($select_now_store != 0) {
         $positioninfo = whShelfModel::selectRelation("where id={$select_now_store}");
         $in_positionId = $positioninfo[0]['positionId'];
         $update_position = whShelfModel::updateProductPositionRelation($nums, "where id='{$select_now_store}'");
         if (!$update_position) {
             self::$errCode = 410;
             self::$errMsg = "更新仓位库存失败!";
             TransactionBaseModel::rollback();
             return false;
         }
     }
     if ($select_now_store == 0 && $select_hope_position == 0 && $select_hope_store == 0) {
         $positioninfo = whShelfModel::selectRelation("where id={$select_now_position}");
         $in_positionId = $positioninfo[0]['positionId'];
         $update_position = whShelfModel::updateProductPositionRelation($nums, "where id='{$select_now_position}'");
         if (!$update_position) {
             self::$errCode = 411;
             self::$errMsg = "更新仓位库存失败!";
             TransactionBaseModel::rollback();
             return false;
         }
     }
     /**** 更新总库存 *****/
     $where = "where sku='{$sku}'";
     $info = whShelfModel::updateStoreNumOnly($nums, $where);
     if (!$info) {
         self::$errCode = 412;
         self::$errMsg = "更新总库存失败!";
         TransactionBaseModel::rollback();
         return false;
     }
     /**** 插入出入库记录 *****/
     $paraArr = array('sku' => $sku, 'amount' => $nums, 'positionId' => $in_positionId, 'purchaseId' => $purchaseId, 'ioType' => 2, 'ioTypeId' => 14, 'userId' => $userId, 'reason' => '退货料号入库');
     $record = CommonModel::addIoRecores($paraArr);
     //出库记录
     if (!$record) {
         self::$errCode = 413;
         self::$errMsg = "插入出入库记录失败!";
         TransactionBaseModel::rollback();
         return false;
     }
     //更新邮局退回记录状态
     $where = "where sku='{$sku}' and status=0 and ichibanNums>0";
     $list = PostReturnModel::getReturnList("*", $where);
     $i = 0;
     while ($list[$i] && $nums) {
         $need_nums = $list[$i]['ichibanNums'] - $list[$i]['shelvesNums'];
         if ($nums >= $need_nums) {
             //更改状态
             $msg = PostReturnModel::updateReturnStatus($list[$i]['id'], $need_nums);
             if (!$msg) {
                 self::$errCode = 413;
                 self::$errMsg = "更新邮局退回记录状态失败!";
                 TransactionBaseModel::rollback();
                 return false;
             }
             $nums = $nums - $need_nums;
         } else {
             $msg = PostReturnModel::updateReturnShelfNum($list[$i]['id'], $nums);
             if (!$msg) {
                 self::$errCode = 414;
                 self::$errMsg = "更新邮局退回记录已上架数量失败!";
                 TransactionBaseModel::rollback();
                 return false;
             }
             $nums = 0;
         }
         $i++;
     }
     TransactionBaseModel::commit();
     self::$errMsg = "料号[{$sku}]入库成功!";
     return true;
 }
Beispiel #6
0
 public static function showPrintPartionLabel($shipOrderId, $carrier, $countryName)
 {
     self::initDB();
     $result = array();
     $sz_array = $sz_namebiref_array = $sz_fromaddresshtml_array = array();
     $partions = CommonModel::getChannelNameByIds('all');
     foreach ($partions as $partion) {
         $sz_array[$partion['partitionCode']] = $partion['countries'];
         $sz_namebiref_array[$partion['partitionCode']] = $partion['partitionAli'];
         $sz_fromaddresshtml_array[$partion['partitionCode']] = htmlspecialchars_decode($partion['returnAddHtml']);
     }
     //匹配回邮地址
     foreach ($sz_array as $sz_key => $sz_value) {
         $sz_value_arr = explode("],[", $sz_value);
         $sz_value_arr[0] = str_replace("[", "", $sz_value_arr[0]);
         $sz_value_arr[count($sz_value_arr) - 1] = str_replace("]", "", $sz_value_arr[count($sz_value_arr) - 1]);
         if (!empty($countryName) && in_array(trim($countryName), $sz_value_arr)) {
             $result = array($sz_namebiref_array[$sz_key], $sz_fromaddresshtml_array[$sz_key]);
             break;
         }
     }
     //增加因缺少国家直接为福七区的逻辑 add by guanyongjun 2014/03/07
     if (!in_array($countryName, array('Australia', 'Australla')) && empty($result)) {
         $addUser = empty($_SESSION['sysUserId']) ? 0 : $_SESSION['sysUserId'];
         $tName = 'wh_no_country_partion';
         $set = "SET shipOrderId='{$shipOrderId}',countryName='[{$countryName}]',userId='{$addUser}',createdTime='" . time() . "'";
         $affectRow = OmAvailableModel::insertRow($tName, $set);
         $result = array($sz_namebiref_array[7], $sz_fromaddresshtml_array[7]);
     }
     return $result;
     // if(strpos($carrier, '中国邮政')!==false){
     // if(in_array(trim($countryName), array('Albania','Algeria','Argentina','Egypt','Ethiopia','Estonia','Anguilla','Austria','Bahrain','Panama','Belarus','Bulgaria','Benin','Belgium','Iceland','Bosnia and Herzegovina','Bolivia','Botswana','Burkina Faso','Burundi','Denmark','Togo','Dominica','Russian Federation','Ecuador','Falkland Islands(Malvinas)','Gambia','Colombia','Costa Rica','Greenland','Georgia','Guyana','Haiti','Djibouti','Guinea','Guinea','Ghana','Cambodia','Czech Republic','Zimbabwe','Cameroon','Qatar','Cote d Ivoire (Ivory Coast)','Kuwait','Kenya','Latvia','Lesotho','Laos','Lebanon','Lithuania','Liberia','Libya','Rwanda','Romania','Madagascar','Malta','Malawi','Mali','Mauritania','Mongolia','Bangladesh','Peru','Morocco','Mozambique','Namibia','Nepal','Niger','Nigeria','Palau','Portugal','Sweden','Senegal','Cyprus','Seychelles','Slovakia','Sudan','Suriname','Tanzania','Trinidad and Tobago','Tunisia','Turkey','Venezuela','Uganda','Uruguay','Western Sahara','Greece','Hungary','Syria','Jamaica','Armenia','Yemen','Iraq','Iran','India','Zambia','Zaire','Chad','Chile','Cuba,Republic of','Congo, Republic of the','Congo, Democratic Republic of the','Russia','Azerbaijan Republic','Azerbaijan','Dominica','Dominican Republic','Equatorial Guinea','Gabon Republic','Papua New Guinea'))/* || $ebay_carrierstyle == 1*/){
     // return array($sz_namebiref_array[7], $sz_fromaddresshtml_array[7]);
     // }else{
     // $mailways = self::getOrderGoodsMailwayIds($shipOrderId);
     // if(in_array(2,$mailways) || in_array(5,$mailways)){
     // foreach($sz_array as $sz_key => $sz_value){
     // $sz_value_arr = explode("],[",$sz_value);
     // $sz_value_arr[0] =  str_replace("[","",$sz_value_arr[0]);
     // $sz_value_arr[count($sz_value_arr)-1] = str_replace("]","",$sz_value_arr[count($sz_value_arr)-1]);
     // if(!empty($countryName) && in_array(trim($countryName),$sz_value_arr)){
     // return array($sz_namebiref_array[$sz_key], $sz_fromaddresshtml_array[$sz_key]);
     // break;
     // }
     // }
     // }else if(in_array(1,$mailways)){
     // return array($sz_namebiref_array[7], $sz_fromaddresshtml_array[7]);
     // }
     // }
     // }
 }
 public function view_index()
 {
     /*$OmAccountAct = new OmAccountAct();
     
         	$ebayAccountList = $OmAccountAct->act_getEbayAccountList();
     		print_r($ebayAccountList);*/
     //print_r($_SESSION);
     $orderid = isset($_GET['orderid']) ? $_GET['orderid'] : "";
     if (isset($_POST['orderid'])) {
         $orderid = $_POST['orderid'];
         $where = " where omOrderId ={$orderid}";
         $details = OmAvailableModel::getTNameList("om_unshipped_order_detail", "*", $where);
         $order = OmAvailableModel::getTNameList("om_unshipped_order", "*", "where id={$orderid}");
         $accountId = $order[0]['accountId'];
         $message = "";
         foreach ($details as $detail) {
             $sql_arr = array();
             $sql_arr['omOrderId'] = $orderid;
             $sql_arr['sku'] = $detail['sku'];
             $sql_arr['amount'] = $detail['amount'];
             $sql_arr['accountId'] = $accountId;
             $app = $detail['sku'] . "*app";
             $reason1 = $detail['sku'] . "*reason1";
             $reason2 = $detail['sku'] . "*reason2";
             $remark = $detail['sku'] . "*remark";
             $sql_arr['type'] = $_POST[$app];
             $sql_arr['reason1'] = $_POST[$reason1];
             $sql_arr['reason2'] = $_POST[$reason2];
             $sql_arr['remark'] = $_POST[$remark];
             $sql_arr['userId'] = $_SESSION['sysUserId'];
             $sql_arr['createdTime'] = time();
             if ($sql_arr['type'] == "" && $sql_arr['reason1'] == "" && $sql_arr['reason2'] == "" && $sql_arr['remark'] == "") {
                 continue;
             } elseif ($sql_arr['type'] != "" && ($sql_arr['reason1'] != "" || $sql_arr['reason2'] != "")) {
                 $set = array2sql($sql_arr);
                 $where = " where omOrderId={$orderid} and sku='{$detail['sku']}'";
                 $order_appraise = OmAvailableModel::getTNameList("om_order_detail_appraisal", "*", $where);
                 if ($order_appraise) {
                     $msg = OmAvailableModel::updateTNameRow("om_order_detail_appraisal", " set " . $set, $where);
                     if (!$msg) {
                         $message .= "<font color='red'>料号{$detail['sku']}数据保存失败!</font><br>";
                     } else {
                         $message .= "<font color='green'>料号{$detail['sku']}数据保存成功!</font><br>";
                     }
                 } else {
                     $msg = OmAvailableModel::insertRow("om_order_detail_appraisal", " set " . $set);
                     if (!$msg) {
                         $message .= "<font color='red'>料号{$detail['sku']}数据保存失败!</font><br>";
                     } else {
                         $message .= "<font color='green'>料号{$detail['sku']}数据保存成功!</font><br>";
                     }
                 }
             } else {
                 $message .= "<font color='red'>请将料号{$detail['sku']}的数据填写完整!</font><br>";
             }
         }
         $this->smarty->assign("message", $message);
     }
     $where = " where omOrderId ={$orderid}";
     $details = OmAvailableModel::getTNameList("om_unshipped_order_detail", "*", $where);
     $reasons = OmAvailableModel::getTNameList("om_order_refund_reason", "*", " where typeId=3");
     $reason = array();
     foreach ($reasons as $value) {
         $reason[$value['id']] = $value['reason'];
     }
     $appraise = array();
     $i = 0;
     foreach ($details as $detail) {
         $where = " where omOrderId={$orderid} and sku='{$detail['sku']}'";
         $order_appraise = OmAvailableModel::getTNameList("om_order_detail_appraisal", "*", $where);
         if ($order_appraise) {
             foreach ($order_appraise as $key => $value) {
                 $appraise[$i]['reason1'] = $value['reason1'];
                 $appraise[$i]['reason2'] = $value['reason2'];
                 $appraise[$i]['type'] = $value['type'];
                 $appraise[$i]['sku'] = $detail['sku'];
                 $appraise[$i]['remark'] = $value['remark'];
             }
         } else {
             $appraise[$i]['reason1'] = "";
             $appraise[$i]['reason2'] = "";
             $appraise[$i]['type'] = "";
             $appraise[$i]['sku'] = $detail['sku'];
             $appraise[$i]['remark'] = "";
         }
         $i++;
     }
     //print_r($appraise);
     $this->smarty->assign("skuinfoList", $appraise);
     $this->smarty->assign("reasonList", $reason);
     $this->smarty->assign("orderid", $orderid);
     $this->smarty->assign("ebayAccountList", $ebayAccountList);
     $this->smarty->assign('toptitle', '添加B2B中差评');
     $this->smarty->display("negativeFeedback.htm");
 }
Beispiel #8
0
 public function act_modifyOrder()
 {
     if (isset($_POST) && !empty($_POST)) {
         //$OrderModifyAct->act_modifyOrder();
         $orderid = isset($_POST['orderid']) ? $_POST['orderid'] : '';
         $ostatus = isset($_POST['edit_ostatus']) ? $_POST['edit_ostatus'] : $_POST['ostatus'];
         $otype = isset($_POST['edit_otype']) ? $_POST['edit_otype'] : $_POST['otype'];
         $update_order = array();
         $update_userinfo = array();
         $update_tracknumber = array();
         //$orderid = $_POST['orderid'];
         //var_dump($_POST); exit;
         $updatestatus = false;
         if (!empty($_POST['data'])) {
             $data = $_POST['data'];
         }
         if (isset($data['username'])) {
             $update_userinfo['username'] = $data['username'];
         }
         if (isset($data['orderStatus'])) {
             $update_order['orderStatus'] = $data['orderStatus'];
         }
         if (isset($data['orderType'])) {
             $update_order['orderType'] = $data['orderType'];
             $updatestatus = true;
         }
         if (isset($data['street'])) {
             $update_userinfo['street'] = $data['street'];
         }
         if (isset($data['platformUsername'])) {
             $update_userinfo['platformUsername'] = $data['platformUsername'];
         }
         if (isset($data['address2'])) {
             $update_userinfo['address2'] = $data['address2'];
         }
         if (isset($data['actualShipping'])) {
             $update_order['actualShipping'] = $data['actualShipping'];
         }
         if (isset($data['city'])) {
             $update_userinfo['city'] = $data['city'];
         }
         if (isset($data['state'])) {
             $update_userinfo['state'] = $data['state'];
         }
         if (isset($data['countryName'])) {
             $update_userinfo['countryName'] = $data['countryName'];
         }
         if (isset($data['zipCode'])) {
             $update_userinfo['zipCode'] = $data['zipCode'];
         }
         if (isset($data['landline'])) {
             $update_userinfo['landline'] = $data['landline'];
         }
         if (isset($data['phone'])) {
             $update_userinfo['phone'] = $data['phone'];
         }
         if (isset($data['transportId'])) {
             $update_order['transportId'] = $data['transportId'];
         }
         if (isset($data['update_notes'])) {
             $update_note = $data['update_notes'];
         }
         if (isset($data['note_new'])) {
             $add_note = $data['note_new'];
         }
         if ($data['edit_tracknumber']) {
             $update_tracknumber['omOrderId'] = $orderid;
             $update_tracknumber['tracknumber'] = $data['edit_tracknumber'];
             $update_tracknumber['addUser'] = $_SESSION['sysUserId'];
             $update_tracknumber['createdTime'] = time();
             //var_dump($update_tracknumber); exit;
         }
         BaseModel::begin();
         //开始事务
         if ($update_order) {
             //$sql = "UPDATE om_unshipped_order set ".array2sql($update_order)." WHERE id = ".$orderid;
             //$msg = commonModel::orderLog($orderid,$update_order['orderStatus'],$update_order['orderType'],$sql);
             if (OrderindexModel::updateOrder('om_unshipped_order', $update_order, ' WHERE id = ' . $orderid)) {
                 if ($updatestatus) {
                     $ProductStatus = new ProductStatus();
                     if (!$ProductStatus->updateSkuStatusByOrderStatus(array($orderid), $batch_ostatus_val, $batch_otype_val)) {
                         BaseModel::rollback();
                     }
                 }
                 $modify_showerrorinfo = "<font color='green'>更新成功</font>";
             } else {
                 self::$errCode = "001";
                 self::$errMsg = "更新订单信息失败!";
                 BaseModel::rollback();
                 return false;
             }
         }
         if ($update_userinfo) {
             //var_dump($update_userinfo);
             if (OrderindexModel::updateOrder('om_unshipped_order_userInfo', $update_userinfo, ' WHERE omOrderId = ' . $orderid)) {
                 $modify_showerrorinfo = "<font color='green'>更新成功</font>";
             } else {
                 self::$errCode = "002";
                 self::$errMsg = "更新订单用户信息失败!";
                 BaseModel::rollback();
                 return false;
             }
         }
         if ($update_tracknumber) {
             //echo $msg;
             if (!OrderAddModel::insertOrderTrackRow($update_tracknumber)) {
                 self::$errCode = "003";
                 self::$errMsg = "更新订单跟踪号插入失败!";
                 BaseModel::rollback();
                 return false;
             }
         }
         if ($update_note) {
             foreach ($update_note as $key => $value) {
                 $notes = explode("###", $value);
                 $where = " where content='{$notes[0]}' and omOrderId={$orderid}";
                 $set = "set content='{$notes[1]}',userId={$_SESSION['sysUserId']},createdTime=" . time();
                 $msg = OmAvailableModel::updateTNameRow("om_order_notes", $set, $where);
                 if (!$msg) {
                     self::$errCode = "004";
                     self::$errMsg = "更新订单备注失败!";
                     BaseModel::rollback();
                     return false;
                 }
             }
         }
         if ($add_note) {
             foreach ($add_note as $key => $value) {
                 $set = "set omOrderId={$orderid},content='{$value}',userId={$_SESSION['sysUserId']},createdTime=" . time();
                 $msg = OmAvailableModel::insertRow("om_order_notes", $set);
                 if (!$msg) {
                     self::$errCode = "005";
                     self::$errMsg = "插入订单备注失败!";
                     BaseModel::rollback();
                     return false;
                 }
             }
         }
         self::$errCode = "200";
         self::$errMsg = "整个订单信息更新成功!";
         BaseModel::commit();
         BaseModel::autoCommit();
     }
 }
Beispiel #9
0
 public function act_whShelf()
 {
     //print_r($_POST);
     $userCnName = $_SESSION['userCnName'];
     $sku = trim($_POST['sku']);
     $sku = get_goodsSn($sku);
     $nums = $_POST['nums'];
     $select_now_position = $_POST['select_now_position'];
     $select_now_store = $_POST['select_now_store'];
     $select_hope_position = $_POST['select_hope_position'];
     $select_hope_store = $_POST['select_hope_store'];
     if (empty($sku)) {
         self::$errCode = 401;
         self::$errMsg = "sku不能为空";
         return false;
     }
     if (empty($select_now_position) && empty($select_now_store) && empty($select_hope_position) && empty($select_hope_store)) {
         self::$errCode = 401;
         self::$errMsg = "上架位置不能为空";
         return false;
     }
     /*
     $where = "where sku='{$sku}' and tallyStatus=0";
     $tallying_list  = packageCheckModel::selectList($where);
     if(empty($tallying_list)){
     	self::$errCode = 402;
     	self::$errMsg  = "无该料号点货信息";
     	return false;
     }else{
     	$tallying_num = 0;
     	foreach($tallying_list as $tallying){
     		$tallying_num += $tallying['ichibanNums']-$tallying['shelvesNums'];
     	}
     	if($nums>$tallying_num){
     		self::$errCode = 402;
     		self::$errMsg  = "上架数不能大于点货良品数[{$tallying_num}]";
     		return false;
     	}
     }
     */
     if ($nums < 1) {
         self::$errCode = 403;
         self::$errMsg = "上架数量不能小于1";
         return false;
     }
     $where = " where sku = '{$sku}'";
     $skuinfo = whShelfModel::selectSku($where);
     if (empty($skuinfo)) {
         self::$errCode = 404;
         self::$errMsg = "无该料号信息";
         return false;
     } else {
         $skuId = $skuinfo['id'];
         $purchaseId = $skuinfo['purchaseId'];
     }
     /*
     		$purInfo = CommonModel::endPurchaseOrder($sku,$nums);             //api获取采购订单处理情况
     		if($purInfo!=0){
     			self::$errCode = 405;
     			self::$errMsg  = "完结采购订单出错,上架失败";
     			return false;
     		}
     		
     		//更新旧erp库存
     		$update_onhand = CommonModel::updateOnhand($sku,$nums);
     		if($update_onhand==0){
     			self::$errCode = 415;
     			self::$errMsg = "更新erp库存失败";
     			return false;
     		}*/
     $return_num = $nums;
     $in_positionId = 0;
     $userId = $_SESSION['userId'];
     TransactionBaseModel::begin();
     /****插入采购未订单记录****/
     /*
     if($return_num>0){
     	$where = " where sku = '{$sku}' and tallyStatus=0";
     	$list  = whShelfModel::selectList($where);
     	$purchaseId = $list[0]['purchaseId'];
     	$totalNums = 0;
     	foreach($list as $key=>$value){
     		$totalNums += $value['num'];
     	}
     	if ($return_num==$nums){
     		$reach_note = "sku[{$sku}]到货{$nums}个,未找到该料号的订单,请物料点货确认和采购补单!";
     	}else{
     		$reach_note = "sku[{$sku}]到货{$nums}个,入库完毕后还多余{$return_num}个,请物料点货确认和采购补单!";
     	}
     	$msg = whShelfModel::insertNoOrder($sku,$return_num,$totalNums,$purchaseId,$userId,$reach_note);
     	if(!$msg){
     		self::$errCode = whShelfModel::$errCode;
     		self::$errMsg  = whShelfModel::$errMsg;
     		return false;
     	}
     }
     */
     /***无料号对应仓位的关系时更新关系表***/
     if ($select_hope_store != 0 || $select_hope_position != 0) {
         $type = 1;
         $positionId = $select_hope_position;
         if ($select_hope_store != 0) {
             $type = 2;
             $positionId = $select_hope_store;
         }
         $in_positionId = $positionId;
         $tname = "wh_product_position_relation";
         $set = "set pId='{$skuId}',positionId='{$positionId}',nums='{$nums}',type='{$type}',storeId=2";
         $insert_relation = OmAvailableModel::insertRow($tname, $set);
         if (!$insert_relation) {
             self::$errCode = 408;
             self::$errMsg = "插入关系表失败!";
             TransactionBaseModel::rollback();
             return false;
         }
         //更新仓位使用状态
         $update_position = OmAvailableModel::updateTNameRow("wh_position_distribution", "set is_enable=1", "where id={$positionId}");
         if ($update_position === false) {
             self::$errCode = 409;
             self::$errMsg = "更新仓位使用状态失败!";
             TransactionBaseModel::rollback();
             return false;
         }
     }
     //更新指定仓位存货数量
     if ($select_now_store != 0) {
         $positioninfo = whShelfModel::selectRelation("where id={$select_now_store}");
         $in_positionId = $positioninfo[0]['positionId'];
         $update_position = whShelfModel::updateProductPositionRelation($nums, "where id='{$select_now_store}'");
         if (!$update_position) {
             self::$errCode = 410;
             self::$errMsg = "更新仓位库存失败!";
             TransactionBaseModel::rollback();
             return false;
         }
     }
     if ($select_now_store == 0 && $select_hope_position == 0 && $select_hope_store == 0) {
         $positioninfo = whShelfModel::selectRelation("where id={$select_now_position}");
         $in_positionId = $positioninfo[0]['positionId'];
         $update_position = whShelfModel::updateProductPositionRelation($nums, "where id='{$select_now_position}'");
         if (!$update_position) {
             self::$errCode = 411;
             self::$errMsg = "更新仓位库存失败!";
             TransactionBaseModel::rollback();
             return false;
         }
     }
     /**** 更新总库存 *****/
     $actualStock = whShelfModel::selectSkuNums($sku, 2);
     if (!empty($actualStock)) {
         $where = "where sku='{$sku}' and storeId=2";
         $info = whShelfModel::updateStoreNum($nums, $where);
         if (!$info) {
             self::$errCode = 412;
             self::$errMsg = "更新总库存失败!";
             TransactionBaseModel::rollback();
             return false;
         }
     } else {
         $info = packageCheckModel::insertStore($sku, $nums, 2);
         if (!$info) {
             self::$errCode = 412;
             self::$errMsg = "更新总库存失败!";
             TransactionBaseModel::rollback();
             return false;
         }
     }
     /**** 插入出入库记录 *****/
     $paraArr = array('sku' => $sku, 'amount' => $nums, 'positionId' => $in_positionId, 'purchaseId' => $purchaseId, 'ioType' => 2, 'ioTypeId' => 13, 'userId' => $userId, 'reason' => '上架入库', 'storeId' => 2);
     $record = CommonModel::addIoRecores($paraArr);
     //出库记录
     if (!$record) {
         self::$errCode = 413;
         self::$errMsg = "插入出入库记录失败!";
         TransactionBaseModel::rollback();
         return false;
     }
     /*
     //更新点货记录状态
     $where = "where sku='{$sku}' and tallyStatus=0 and ichibanNums>0";
         	$list  = packageCheckModel::selectList($where);
     $i = 0;
     while($list[$i]&&$nums){
     	$need_nums = $list[$i]['ichibanNums']-$list[$i]['shelvesNums'];
     	if($nums >= $need_nums){
     		//更改状态
     		$msg = whShelfModel::updateTallyStatus($list[$i]['id'],$need_nums);
     		if(!$msg){
     			self::$errCode = 413;
     			self::$errMsg  = "更新点货记录状态失败!";
     			TransactionBaseModel :: rollback();
     			return false;
     		}
     		$nums = $nums-$need_nums;
     	}else{
     		$msg = whShelfModel::updateShelfNum($list[$i]['id'],$nums);
     		if(!$msg){
     			self::$errCode = 414;
     			self::$errMsg  = "更新点货记录已上架数量失败!";
     			TransactionBaseModel :: rollback();
     			return false;
     		}
     		$nums = 0;
     	}
     	$i++;
     }
     */
     /*
     $purInfo = CommonModel::endPurchaseOrder($sku,$return_num);             //api获取采购订单处理情况
     if($purInfo!=0){
     	self::$errCode = 405;
     	self::$errMsg  = "完结采购订单出错,上架失败";
     	TransactionBaseModel :: rollback();
     	return false;
     }
     
     //更新旧erp库存
     $position_info = PositionModel::getPositionList("pName","where id={$in_positionId}");
     $update_onhand = CommonModel::updateOnhand($sku,$return_num,$userCnName,$position_info[0]['pName']);
     if($update_onhand==0){
     	self::$errCode = 415;
     	self::$errMsg = "更新旧erp库存失败";
     	TransactionBaseModel :: rollback();
     	return false;
     }
     */
     TransactionBaseModel::commit();
     self::$errMsg = "料号[{$sku}]上架成功!";
     return true;
 }
 public function view_dresslinkOrderImport()
 {
     include_once WEB_PATH . "lib/PHPExcel.php";
     //phpexcel
     include_once WEB_PATH . "conf/scripts/script.ebay.config.php";
     $toptitle = 'dresslink线下订单导入';
     //头部title
     $this->smarty->assign('toptitle', $toptitle);
     $this->smarty->assign('toplevel', 2);
     $this->smarty->assign('secondlevel', 210);
     $OmAccountAct = new OmAccountAct();
     $dresslinkAccountList = $OmAccountAct->act_dresslinkaccountAllList();
     //$dresslinkAccountList = array(array('id'=>8,'account'=>'dresslink.com'),array('id'=>10,'account'=>'cndirect.com'));
     $this->smarty->assign("dresslinkAccountList", $dresslinkAccountList);
     if (isset($_FILES['cndlFile']['tmp_name']) && isset($_POST['cndlAccount'])) {
         $filePath = $_FILES['cndlFile']['tmp_name'];
         $account = $_POST['cndlAccount'];
         $PHPExcel = new PHPExcel();
         $PHPReader = new PHPExcel_Reader_Excel2007();
         if (!$PHPReader->canRead($filePath)) {
             $PHPReader = new PHPExcel_Reader_Excel5();
             if (!$PHPReader->canRead($filePath)) {
                 echo 'no Excel';
                 return;
             }
         }
         $PHPExcel = $PHPReader->load($filePath);
         $currentSheet = $PHPExcel->getSheet(0);
         $allRow = $currentSheet->getHighestRow();
         /**从第二行开始输出,因为excel表中第一行为列名*/
         /**取得最大的列号*/
         $allColumn = $currentSheet->getHighestColumn();
         $orderData = array();
         $cndlAccounts = array();
         $transportation = CommonModel::getCarrierList();
         //所有的
         $transportationList = array();
         foreach ($transportation as $tranValue) {
             $transportationList[$tranValue['id']] = $tranValue['carrierNameCn'];
         }
         //账号对应
         foreach ($dresslinkAccountList as $accounts) {
             $cndlAccounts[$accounts['id']] = $accounts['account'];
         }
         $c = 2;
         $dresslinks = array();
         $ebay_fedex_remark = array();
         $ChineseDescs = array();
         for ($c = 2; $c <= $allRow; $c++) {
             $aa = 'A' . $c;
             $bb = 'B' . $c;
             $cc = 'C' . $c;
             $dd = 'D' . $c;
             $ee = 'E' . $c;
             $ff = 'F' . $c;
             $gg = 'G' . $c;
             $hh = 'H' . $c;
             $ii = 'I' . $c;
             $jj = 'J' . $c;
             $kk = 'K' . $c;
             $ll = 'L' . $c;
             $mm = 'M' . $c;
             $nn = 'N' . $c;
             $oo = 'O' . $c;
             $pp = 'P' . $c;
             $qq = 'Q' . $c;
             $rr = 'R' . $c;
             $ss = 'S' . $c;
             $tt = 'T' . $c;
             $uu = 'U' . $c;
             $vv = 'V' . $c;
             $ww = 'W' . $c;
             $xx = 'X' . $c;
             $yy = 'Y' . $c;
             $zz = 'Z' . $c;
             $aaa = 'AA' . $c;
             $abb = 'AB' . $c;
             $acc = 'AC' . $c;
             $add = 'AD' . $c;
             $aee = 'AE' . $c;
             $aff = 'AF' . $c;
             $agg = 'AG' . $c;
             $ahh = 'AH' . $c;
             $aii = 'AI' . $c;
             $ajj = 'AJ' . $c;
             $akk = 'AK' . $c;
             $all = 'AL' . $c;
             $amm = 'AM' . $c;
             $ann = 'AN' . $c;
             $aww = 'AW' . $c;
             $recordnumber = trim($currentSheet->getCell($aa)->getValue());
             //订单号
             $recordNumber = $recordnumber;
             $is_order = intval($currentSheet->getCell($bb)->getValue());
             //1代表为订单,0代表订单明细
             if (empty($recordnumber)) {
                 $message .= "<font color=red> 第{$c}行recordnumber为空!</font><br>";
                 break;
             }
             /***************判断订单是否已存在***************/
             $where = "where recordnumber='{$recordnumber}'";
             $orderinfo = cndlModel::selectOrder($where);
             if ($orderinfo) {
                 if ($is_order != 0) {
                     $message .= "<font color='blue'>订单 {$recordnumber}已存在!</font><br>";
                 }
                 continue;
             }
             /**************/
             if ($is_order != 0) {
                 if ($cndlAccounts[$account] == "dresslink.com") {
                     $str = substr($recordnumber, 0, 2);
                     if ($str !== "DL") {
                         $message .= "<font color=red> {$recordnumber}不在账号{$cndlAccounts[$account]}中!</font><br>";
                         continue;
                     }
                 } elseif ($cndlAccounts[$account] == "cndirect.com") {
                     $str = substr($recordnumber, 0, 2);
                     if ($str !== "CN") {
                         $message .= "<font color=red> {$recordnumber}不在账号{$cndlAccounts[$account]}中!</font><br>";
                         continue;
                     }
                 }
                 $platformUsername = mysql_real_escape_string(trim($currentSheet->getCell($cc)->getValue()));
                 $email = mysql_real_escape_string(trim($currentSheet->getCell($dd)->getValue()));
                 $transId = mysql_real_escape_string(trim($currentSheet->getCell($ee)->getValue()));
                 $ordersTime = (array) PHPExcel_Shared_Date::ExcelToPHPObject(trim($currentSheet->getCell($ll)->getValue()));
                 $paymentTime = (array) PHPExcel_Shared_Date::ExcelToPHPObject(trim($currentSheet->getCell($mm)->getValue()));
                 $shippingFee = round_num(trim($currentSheet->getCell($oo)->getValue()), 2);
                 $calcWeight = round_num(trim($currentSheet->getCell($ahh)->getValue()), 3);
                 $actualTotal = round_num(trim($currentSheet->getCell($pp)->getValue()), 2);
                 $onlineTotal = round_num(trim($currentSheet->getCell($aff)->getValue()), 2);
                 $currency = mysql_real_escape_string(trim($currentSheet->getCell($qq)->getValue()));
                 //$orders['ebay_orderqk'] = round_num(trim($currentSheet->getCell($rr)->getValue()), 2);
                 $note = mysql_real_escape_string(trim($currentSheet->getCell($ss)->getValue()));
                 $username = mysql_real_escape_string(trim($currentSheet->getCell($tt)->getValue()));
                 $countryName = mysql_real_escape_string(trim($currentSheet->getCell($uu)->getValue()));
                 $state = mysql_real_escape_string(trim($currentSheet->getCell($vv)->getValue()));
                 $city = mysql_real_escape_string(trim($currentSheet->getCell($ww)->getValue()));
                 $street = mysql_real_escape_string(trim($currentSheet->getCell($xx)->getValue()));
                 $address2 = mysql_real_escape_string(trim($currentSheet->getCell($yy)->getValue()));
                 $zipCode = mysql_real_escape_string(trim($currentSheet->getCell($zz)->getValue()));
                 $phone = mysql_real_escape_string(trim($currentSheet->getCell($abb)->getValue()));
                 $landline = mysql_real_escape_string(trim($currentSheet->getCell($aaa)->getValue()));
                 if ($account == "dresslink.com") {
                     $feedback = mysql_real_escape_string(trim($currentSheet->getCell($ann)->getValue()));
                 } elseif ($account == "cndirect.com") {
                     $feedback = mysql_real_escape_string(trim($currentSheet->getCell($akk)->getValue()));
                 }
                 $carrierNameCn = strtolower(mysql_real_escape_string(trim($currentSheet->getCell($kk)->getValue())));
                 $carrierNameCn = cndlModel::carrier($carrierNameCn);
                 $payment_method = mysql_real_escape_string(trim($currentSheet->getCell($ff)->getValue()));
                 $payment_module = mysql_real_escape_string(trim($currentSheet->getCell($gg)->getValue()));
                 $bank_account = mysql_real_escape_string(trim($currentSheet->getCell($hh)->getValue()));
                 $bank_country = mysql_real_escape_string(trim($currentSheet->getCell($ii)->getValue()));
                 $shipping_method = mysql_real_escape_string(trim($currentSheet->getCell($jj)->getValue()));
                 $shipping_module = mysql_real_escape_string(trim($currentSheet->getCell($kk)->getValue()));
                 $dresslinks['payment_method'] = $payment_method;
                 $dresslinks['payment_module'] = $payment_module;
                 $dresslinks['bank_account'] = $bank_account;
                 $dresslinks['bank_country'] = $bank_country;
                 $dresslinks['shipping_method'] = $shipping_method;
                 $dresslinks['shipping_module'] = $shipping_module;
                 $PayPalPaymentId = $transId;
                 /***************BEGIN 订单表数据***************/
                 $orderData[$recordNumber]['orderData']['recordNumber'] = $recordnumber;
                 if ($cndlAccounts[$account] == "dresslink.com") {
                     $orderData[$recordNumber]['orderData']['platformId'] = 10;
                     $orderData[$recordNumber]['orderData']['accountId'] = $account;
                 } elseif ($cndlAccounts[$account] == "cndirect.com") {
                     $orderData[$recordNumber]['orderData']['platformId'] = 8;
                     $orderData[$recordNumber]['orderData']['accountId'] = $account;
                 }
                 $orderData[$recordNumber]['orderData']['orderStatus'] = C('STATEPENDING');
                 $orderData[$recordNumber]['orderData']['orderType'] = C('STATEPENDING_INITIAL');
                 $orderData[$recordNumber]['orderData']['ordersTime'] = strtotime($ordersTime['date']);
                 //平台下单时间
                 $orderData[$recordNumber]['orderData']['paymentTime'] = strtotime($paymentTime['date']);
                 $orderData[$recordNumber]['orderData']['onlineTotal'] = $onlineTotal;
                 //线上总金额
                 $orderData[$recordNumber]['orderData']['actualTotal'] = $actualTotal;
                 //付款总金额
                 $orderData[$recordNumber]['orderData']['isFixed'] = 1;
                 $orderData[$recordNumber]['orderData']['calcShipping'] = $shippingFee;
                 //物流费用
                 $orderData[$recordNumber]['orderData']['orderAddTime'] = time();
                 $orderData[$recordNumber]['orderData']['isNote'] = empty($note) ? 0 : 1;
                 foreach ($transportation as $tranValue) {
                     if ($tranValue['carrierNameCn'] == $carrierNameCn) {
                         $orderData[$recordNumber]['orderData']['transportId'] = $tranValue['id'];
                         //运输方式id
                         break;
                     }
                 }
                 /***************END 订单表数据***************/
                 /***************BEGIN 订单扩展表数据***************/
                 $orderData[$recordNumber]['orderExtenData']['paymentStatus'] = "Complete";
                 $orderData[$recordNumber]['orderExtenData']['transId'] = $transId;
                 $orderData[$recordNumber]['orderExtenData']['PayPalPaymentId'] = $PayPalPaymentId;
                 $orderData[$recordNumber]['orderExtenData']['paymentMethod'] = $payment_method;
                 $orderData[$recordNumber]['orderExtenData']['paymentModule'] = $payment_module;
                 $orderData[$recordNumber]['orderExtenData']['shippingMethod'] = $shipping_method;
                 $orderData[$recordNumber]['orderExtenData']['ShippingModule'] = $shipping_module;
                 $orderData[$recordNumber]['orderExtenData']['currency'] = $currency;
                 $orderData[$recordNumber]['orderExtenData']['feedback'] = $feedback;
                 //客户留言
                 /***************END 订单扩展表数据***************/
                 /***************BEGIN 订单用户表数据***************/
                 $orderData[$recordNumber]['orderUserInfoData']['username'] = $username;
                 $orderData[$recordNumber]['orderUserInfoData']['platformUsername'] = $platformUsername;
                 $orderData[$recordNumber]['orderUserInfoData']['email'] = $email;
                 $orderData[$recordNumber]['orderUserInfoData']['countryName'] = $countryName;
                 $orderData[$recordNumber]['orderUserInfoData']['currency'] = $currency;
                 $orderData[$recordNumber]['orderUserInfoData']['state'] = $state;
                 // 省
                 $orderData[$recordNumber]['orderUserInfoData']['city'] = $city;
                 // 市
                 $orderData[$recordNumber]['orderUserInfoData']['street'] = $street;
                 $orderData[$recordNumber]['orderUserInfoData']['address2'] = $address2;
                 $orderData[$recordNumber]['orderUserInfoData']['landline'] = $landline;
                 // 座机电话
                 $orderData[$recordNumber]['orderUserInfoData']['phone'] = $phone;
                 // 手机
                 $orderData[$recordNumber]['orderUserInfoData']['zipCode'] = $zipCode;
                 // 邮编
                 /*************END 订单用户表数据***************/
                 //note信息
                 if (!empty($note)) {
                     $orderData[$recordNumber]['orderNote'][$c]['content'] = $note;
                     $orderData[$recordNumber]['orderNote'][$c]['userId'] = $_SESSION['sysUserId'];
                 }
             } else {
                 $sku = mysql_real_escape_string(trim($currentSheet->getCell($acc)->getValue()));
                 $itemTitle = mysql_real_escape_string(trim($currentSheet->getCell($add)->getValue()));
                 $itemPrice = round_num(trim($currentSheet->getCell($aff)->getValue()), 2);
                 $amount = intval(trim($currentSheet->getCell($agg)->getValue()));
                 $shipingfee = round_num(trim($currentSheet->getCell($ahh)->getValue()), 2);
                 /***************BEGIN 订单详细数据***************/
                 $orderData[$recordNumber]['orderDetail'][$c]['orderDetailData']['recordNumber'] = $recordnumber;
                 $orderData[$recordNumber]['orderDetail'][$c]['orderDetailData']['sku'] = $sku;
                 $orderData[$recordNumber]['orderDetail'][$c]['orderDetailData']['itemPrice'] = $itemPrice;
                 $orderData[$recordNumber]['orderDetail'][$c]['orderDetailData']['amount'] = $amount;
                 $orderData[$recordNumber]['orderDetail'][$c]['orderDetailData']["shippingFee"] = $shipingfee;
                 $orderData[$recordNumber]['orderDetail'][$c]['orderDetailData']['createdTime'] = time();
                 /*************END 订单详细数据***************/
                 /***************BEGIN 订单详细扩展表数据***************/
                 $orderData[$recordNumber]['orderDetail'][$c]['orderDetailExtenData']['itemTitle'] = $itemTitle;
                 $orderData[$recordNumber]['orderDetail'][$c]['orderDetailExtenData']['transId'] = $transId;
                 //$orderData['orderDetail']['orderDetailExtenData']['note'] = $value[10];
                 $categoryName = trim($currentSheet->getCell($ajj)->getValue());
                 $customCode = trim($currentSheet->getCell($akk)->getValue());
                 $material = trim($currentSheet->getCell($all)->getValue());
                 $ShenBaoQuantity = trim($currentSheet->getCell($amm)->getValue());
                 $ShenBaoUnitPrice = trim($currentSheet->getCell($ann)->getValue());
                 $ChineseDesc = trim($currentSheet->getCell($aww)->getValue());
                 //$salePrice						   =	round_num(mysql_real_escape_string(trim($detail['SalePrice'])), 2);	//实际SKU付款价
                 /*************END 订单详细扩展表数据***************/
                 $ebay_fedex_remark[$recordNumber][$categoryName][] = array('real_price' => $ShenBaoUnitPrice, 'qty' => $ShenBaoQuantity, 'hamcodes' => $customCode, 'detail' => $material);
                 $orderData[$recordNumber]['fedexRemark'] = $ebay_fedex_remark[$recordNumber];
                 $orderData[$recordNumber]['dresslinkInfo'] = $dresslinks;
                 $ChineseDescs[$recordNumber][$categoryName] = $ChineseDesc;
             }
         }
         if ($orderData) {
             foreach ($orderData as $id => $order) {
                 $msg = commonModel::checkOrder($id);
                 if ($msg) {
                     $message .= "<font color='red'>订单{$id}已存在!</font><br>";
                     continue;
                 }
                 //计算订单属性
                 if (count($order['orderDetail']) == 1) {
                     $detail = current($order['orderDetail']);
                     if ($detail['orderDetailData']['amount'] == 1) {
                         $orderData[$id]['orderData']['orderAttribute'] = 1;
                     } else {
                         $orderData[$id]['orderData']['orderAttribute'] = 2;
                     }
                 } else {
                     $orderData[$id]['orderData']['orderAttribute'] = 3;
                 }
                 //计算订单重量及包材
                 $obj_order_detail_data = array();
                 foreach ($order['orderDetail'] as $sku => $detail) {
                     $obj_order_detail_data[] = $detail['orderDetailData'];
                 }
                 $weightfee = commonModel::calcOrderWeight($obj_order_detail_data);
                 $orderData[$id]['orderData']['calcWeight'] = $weightfee[0];
                 $orderData[$id]['orderData']['pmId'] = $weightfee[1];
                 //计算运费
                 $calcShippingInfo = CommonModel::calcAddOrderShippingFee($insertOrder, $orderData[$id]['orderData']['isFixed']);
                 //计算运费
                 $orderData[$id]['orderData']['channelId'] = $calcShippingInfo['fee']['channelId'];
                 $orderData[$id]['orderData']['calcShipping'] = $calcShippingInfo['fee'];
                 $ChineseDescs_arr = array_filter(array_unique($ChineseDescs[$id]));
                 $orderData[$id]['orderNote'] = array('content' => join(' ', $ChineseDescs_arr), 'userId' => $_SESSION['sysUserId'], 'createdTime' => time());
                 /*//缺货拦截
                 		$orderData[$id] = AutoModel :: auto_contrast_intercept($orderData[$id]);
                 		//$orderData[$id] = cndlModel :: auto_contrast_intercept($orderData[$id]);*/
                 //插入订单OrderAddModel::insertAllOrderRow($orderData[$id],'cndl');
                 //调用旧系统接口,先插入数据到旧系统
                 //echo "<pre>"; var_dump($orderData[$id]); exit;
                 $rtn = OldsystemModel::orderErpInsertorder($orderData[$id]);
                 //echo "<pre>";print_r($rtn);exit;
                 $insertData = array();
                 if (empty($rtn)) {
                     $message .= "<font color='red'>订单{$id}同步ERP发生异常,跳过!</font><br>";
                     continue;
                 }
                 if ($rtn['errcode'] == 200) {
                     $rtn_data = $rtn['data'];
                     $orderId = $rtn_data['orderId'];
                     $message .= "<font color='green'>插入老系统成功,订单编号 [{$orderId}]</font><br>";
                     $pmId = $rtn_data['pmId'];
                     $totalweight = $rtn_data['totalweight'];
                     $shipfee = $rtn_data['shipfee'];
                     $carrier = $rtn_data['carrier'];
                     $carrierId = $rtn_data['carrierId'];
                     $status = $rtn_data['status'];
                     $orderData[$id]['orderData']['id'] = $orderId;
                     //赋予新系统订单编号,一切数据已老系统返回的为准
                     if ($orderData[$id]['orderData']['calcWeight'] != $totalweight) {
                         $insertData['old_totalweight'] = $totalweight;
                         $insertData['new_totalweight'] = $orderData[$id]['orderData']['calcWeight'];
                         $orderData[$id]['orderData']['calcWeight'] = $totalweight;
                     }
                     if ($orderData[$id]['orderData']['pmId'] != $pmId) {
                         $insertData['old_pmId'] = $pmId;
                         $insertData['new_pmId'] = $orderData[$id]['orderData']['pmId'];
                         $orderData[$id]['orderData']['pmId'] = $pmId;
                     }
                     if ($orderData[$id]['orderData']['calcShipping'] != $shipfee) {
                         $insertData['old_shippfee'] = $shipfee;
                         $insertData['new_shippfee'] = $orderData[$id]['orderData']['calcShipping'];
                         $orderData[$id]['orderData']['calcShipping'] = $shipfee;
                     }
                     if ($orderData[$id]['orderData']['transportId'] != $carrierId) {
                         $insertData['old_carrierId'] = $carrierId;
                         $insertData['new_carrierId'] = $orderData[$id]['orderData']['transportId'];
                         $orderData[$id]['orderData']['transportId'] = $carrierId;
                     }
                     if (!empty($insertData)) {
                         $insertData['ebay_id'] = $orderId;
                         $insertData['addtime'] = time();
                         OldsystemModel::insertTempSyncRecords($insertData);
                         // 插入临时对比记录表
                     }
                     //缺货拦截
                     $orderData[$id] = AutoModel::auto_contrast_intercept($orderData[$id]);
                     //插入订单
                     $info = OrderAddModel::insertAllOrderRowNoEvent($orderData[$id]);
                     if ($info) {
                         $dresslinkinfos = $orderData[$id]['dresslinkInfo'];
                         $dresslinkinfos['omOrderId'] = $orderId;
                         if (DresslinkinfoModel::insertDresslinkinfoList($dresslinkinfos)) {
                             $message .= "<font color='green'>订单{$id}上传dresslinkInfo成功!</font><br>";
                         } else {
                             $message .= "<font color='red'>订单{$id}上传dresslinkInfo失败!</font><br>";
                         }
                         $message .= "<font color='green'>新系统订单{$id}添加成功!</font><br>";
                     } else {
                         $message .= "<font color='red'>新系统订单{$id}添加失败!</font><br>";
                     }
                 } else {
                     $message .= "<font color='red'>添加失败,原因为:{$rtn['msg']}!</font><br>";
                 }
                 if ($orderId) {
                     foreach ($ebay_fedex_remark[$id] as $k => $v) {
                         $fedex_remark = array();
                         $fedex_remark['description'] = trim("[No Brand]" . $k . "{$v[0]['detail']}");
                         if (in_array($transportationList[$order['orderData']['transportId']], array('FedEx'))) {
                             //$fedex_remark['description'] = "[No Brand]". $k."({$v[0]['detail']})";
                             $fedex_remark['type'] = 1;
                         } else {
                             if (in_array($transportationList[$order['orderData']['transportId']], array('DHL', 'EMS', 'UPS美国专线'))) {
                                 //$fedex_remark['description'] = trim($k);
                                 $fedex_remark['type'] = 2;
                             } else {
                                 continue;
                             }
                         }
                         $sku_price = 0;
                         $qty = 0;
                         foreach ($v as $v0) {
                             $sku_price += $v0['real_price'];
                             $qty += $v0['qty'];
                         }
                         //$fedex_remark['ebay_ordersn'] 	= $order['ebay_ordersn'];
                         $fedex_remark['price'] = round($sku_price / $qty, 2);
                         $fedex_remark['amount'] = $qty;
                         $fedex_remark['hamcodes'] = $v[0]['hamcodes'];
                         if (in_array($transportationList[$order['orderData']['transportId']], array('DHL', 'EMS', 'UPS美国专线'))) {
                             $fedex_remark['price'] = round($sku_price, 2);
                         }
                         $fedex_remark['createdTime'] = time();
                         $fedex_remark['omOrderId'] = $orderId;
                         $fedex_remark['creatorId'] = $_SESSION['sysUserId'];
                         //$insert_fedex_sql = "INSERT INTO fedex_remark set ".array2sql($fedex_remark);
                         $info = OmAvailableModel::insertRow("om_express_remark", " set " . array2sql_bak($fedex_remark));
                         if ($info) {
                             $message .= "<font color=green> {$id} 导入海关记录成功!</font><br>";
                             //echo "----<font color=green> {$order['recordnumber']} 导入海关记录成功!</font><br>";
                         } else {
                             //echo $insert_fedex_sql; echo "<br>";
                             $message .= "<font color=green> {$id} 导入海关记录失败!</font><br>";
                             //echo "----<font color=red>{$order['recordnumber']} 导入海关记录失败!</font><br>";
                             //$fail_order[] = $order['orderData']['recordnumber'];
                         }
                     }
                 }
             }
         }
         $this->smarty->assign("showerrorinfo", $message);
     }
     $this->smarty->display('dresslinkOrderImport.htm');
 }
Beispiel #11
0
 public function act_shiftLibrary()
 {
     $sku = trim($_POST['sku']);
     $sku = get_goodsSn($sku);
     $oldposition = trim($_POST['oldposition']);
     $newposition = trim($_POST['newposition']);
     $nums = intval(trim($_POST['nums']));
     if (empty($sku)) {
         self::$errCode = 401;
         self::$errMsg = "sku不能为空";
         return false;
     }
     if (empty($oldposition)) {
         self::$errCode = 402;
         self::$errMsg = "旧仓位号不能为空";
         return false;
     }
     if (empty($newposition)) {
         self::$errCode = 403;
         self::$errMsg = "新仓位号不能为空";
         return false;
     }
     if ($oldposition == $newposition) {
         self::$errCode = 404;
         self::$errMsg = "新旧仓位号不能相同";
         return false;
     }
     $where = " where sku = '{$sku}'";
     $skuinfo = whShelfModel::selectSku($where);
     if (empty($skuinfo)) {
         self::$errCode = 404;
         self::$errMsg = "无该料号信息";
         return false;
     } else {
         $skuId = $skuinfo['id'];
     }
     $old_positon_info = OmAvailableModel::getTNameList("wh_position_distribution", "id", "where pName='{$oldposition}' and storeId in(1,2)");
     if (empty($old_positon_info)) {
         self::$errCode = 405;
         self::$errMsg = "无旧仓位号信息";
         return false;
     } else {
         $old_location = $old_positon_info[0]['id'];
     }
     $new_positon_info = OmAvailableModel::getTNameList("wh_position_distribution", "id,type", "where pName='{$newposition}' and storeId in(1,2)");
     if (empty($new_positon_info)) {
         self::$errCode = 406;
         self::$errMsg = "无新仓位号信息";
         return false;
     } else {
         $new_location = $new_positon_info[0]['id'];
     }
     $old_sku_pos_info = OmAvailableModel::getTNameList("wh_product_position_relation", "*", "where pId='{$skuId}' and positionId='{$old_location}' and storeId in(1,2) and is_delete=0");
     if (empty($old_sku_pos_info)) {
         self::$errCode = 407;
         self::$errMsg = "无sku对应的旧仓位号信息";
         return false;
     }
     $new_sku_pos_info = OmAvailableModel::getTNameList("wh_product_position_relation", "*", "where pId='{$skuId}' and positionId='{$new_location}' and storeId in(1,2) and is_delete=0");
     if ($nums > $old_sku_pos_info[0]['nums'] || empty($nums)) {
         $change_nums = $old_sku_pos_info[0]['nums'];
     } else {
         $change_nums = $nums;
     }
     OmAvailableModel::begin();
     if (!empty($new_sku_pos_info)) {
         if (empty($nums)) {
             $tname_old = "wh_product_position_relation";
             $set_old = "set nums=0,is_delete=1";
             $where_old = "where id={$old_sku_pos_info[0]['id']}";
             $update_old = OmAvailableModel::updateTNameRow($tname_old, $set_old, $where_old);
             if (!$update_old) {
                 self::$errCode = 408;
                 self::$errMsg = "更新旧仓位库存失败!";
                 TransactionBaseModel::rollback();
                 return false;
             }
         } else {
             $tname_old = "wh_product_position_relation";
             $set_old = "set nums=nums-{$change_nums}";
             $where_old = "where id={$old_sku_pos_info[0]['id']}";
             $update_old = OmAvailableModel::updateTNameRow($tname_old, $set_old, $where_old);
             if (!$update_old) {
                 self::$errCode = 409;
                 self::$errMsg = "更新旧仓位库存失败!";
                 TransactionBaseModel::rollback();
                 return false;
             }
         }
         $tname_new = "wh_product_position_relation";
         $set_new = "set nums=nums+{$change_nums}";
         $where_new = "where id={$new_sku_pos_info[0]['id']}";
         $update_new = OmAvailableModel::updateTNameRow($tname_new, $set_new, $where_new);
         if (!$update_new) {
             self::$errCode = 410;
             self::$errMsg = "更新新仓位库存失败!";
             TransactionBaseModel::rollback();
             return false;
         }
     } else {
         if (empty($nums)) {
             $tname_old = "wh_product_position_relation";
             $set_old = "set nums=0,is_delete=1";
             $where_old = "where id={$old_sku_pos_info[0]['id']}";
             $update_old = OmAvailableModel::updateTNameRow($tname_old, $set_old, $where_old);
             if (!$update_old) {
                 self::$errCode = 411;
                 self::$errMsg = "更新旧仓位库存失败!";
                 TransactionBaseModel::rollback();
                 return false;
             }
         } else {
             $tname_old = "wh_product_position_relation";
             $set_old = "set nums=nums-{$change_nums}";
             $where_old = "where id={$old_sku_pos_info[0]['id']}";
             $update_old = OmAvailableModel::updateTNameRow($tname_old, $set_old, $where_old);
             if (!$update_old) {
                 self::$errCode = 412;
                 self::$errMsg = "更新旧仓位库存失败!";
                 TransactionBaseModel::rollback();
                 return false;
             }
         }
         $tname_insert = "wh_product_position_relation";
         $set_insert = "set pId='{$skuId}',positionId='{$new_location}',nums='{$change_nums}',type={$new_positon_info[0]['type']}";
         $relation_insert = OmAvailableModel::insertRow($tname_insert, $set_insert);
         if (!$relation_insert) {
             self::$errCode = 413;
             self::$errMsg = "插入关系表失败!";
             TransactionBaseModel::rollback();
             return false;
         }
         /*
         //更新仓位使用状态
         $update_position = OmAvailableModel::updateTNameRow("wh_position_distribution","set is_enable=1","where id=$new_location");
         if(!$update_position){
         	self::$errCode = 414;
         	self::$errMsg = "更新仓位使用状态失败!";
         	TransactionBaseModel :: rollback();
         	return false;
         }
         */
     }
     //全部转移到新仓位,则将仓位同步到老ERP
     if (!$nums) {
         $info = CommonModel::updateSkuLocation($sku, $newposition);
         //print_r($info);exit;
         if ($info['res_code'] != 200) {
             self::$errCode = 414;
             self::$errMsg = '同步旧ERP仓位失败!';
             return FALSE;
         }
     }
     OmAvailableModel::commit();
     self::$errMsg = "料号[{$sku}]移库成功!";
     return true;
 }
 function act_applyEUBTrackNumber()
 {
     //
     global $memc_obj;
     //调用memcache获取sku信息
     $addUser = $_SESSION['sysUserId'];
     $omData = isset($_POST['omData']) ? $_POST['omData'] : '';
     if (empty($omData)) {
         self::$errCode = '1000';
         self::$errMsg = "订单ID参数为空";
         return false;
     }
     $omOrderId = $omData;
     $tName = 'om_unshipped_order';
     $select = '*';
     $where = "WHERE id='{$omOrderId}'";
     $unShippedOrderList = OmAvailableModel::getTNameList($tName, $select, $where);
     if (empty($unShippedOrderList)) {
         //订单号在未发货表中不存在
         self::$errCode = '0001';
         self::$errMsg = "empty unShippedOrderList";
         return 1;
     }
     $platformId = $unShippedOrderList[0]['platformId'];
     $tName = 'om_platform';
     $select = 'platform';
     $where = "WHERE id='{$platformId}'";
     $platformList = OmAvailableModel::getTNameList($tName, $select, $where);
     if (empty($platformList)) {
         self::$errCode = '0002';
         self::$errMsg = "empty platformList";
         return 2;
     }
     $platform = $platformList[0]['platform'];
     if (strcasecmp(trim($platform), 'ebay') != 0) {
         //订单所在平台不是ebay时
         self::$errCode = '0003';
         self::$errMsg = "is not a ebay order";
         return 3;
     }
     //这里还要判断一下运输方式是不是EUB
     ////////////////////////////////
     //return 4;
     ////////////////////////////////
     $accountId = $unShippedOrderList[0]['accountId'];
     //订单中的账号id
     $tName = 'om_eub_account';
     $select = '*';
     $where = "WHERE accountId='{$accountId}'";
     $accountList = OmAvailableModel::getTNameList($tName, $select, $where);
     if (empty($accountList)) {
         self::$errCode = '0005';
         self::$errMsg = "orderAccountId is not in EubAccount";
         return 5;
     }
     if (!in_array($accountList[0]['account'], array('eshoppingstar75', 'ishoppingclub68', 'newcandy789', 'mysoulfor', 'estore456'))) {
         self::$errCode = '0006';
         self::$errMsg = "目前只有 eshoppingstar75,ishoppingclub68,newcandy789,mysoulfor,estore456 可以执行线上申请跟踪号";
         return false;
     }
     //print_r($accountList);
     $APIDevUserID = $accountList[0]['account'];
     //API参数
     $APISellerUserID = $accountList[0]['dev_id'];
     //API参数
     $APIPassword = $accountList[0]['dev_sig'];
     //API参数
     //揽货地址
     $pname = $accountList[0]['pname'];
     $pcompany = $accountList[0]['pcompany'];
     $pcountry = $accountList[0]['pcountry'];
     $pprovince = $accountList[0]['pprovince'];
     $pcity = $accountList[0]['pcity'];
     $pdis = $accountList[0]['pdis'];
     $pstreet = $accountList[0]['pstreet'];
     $pzip = $accountList[0]['pzip'];
     $ptel = $accountList[0]['ptel'];
     $pte1 = $accountList[0]['pte1'];
     $pemail = $accountList[0]['pemail'];
     //寄件人地址
     $dname = $accountList[0]['dname'];
     $dcompany = $accountList[0]['dcompany'];
     $dcountry = $accountList[0]['dcountry'];
     $dprovince = $accountList[0]['dprovince'];
     $dcity = $accountList[0]['dcity'];
     $ddis = $accountList[0]['ddis'];
     $dstreet = $accountList[0]['dstreet'];
     $dzip = $accountList[0]['dzip'];
     $dtel = $accountList[0]['dtel'];
     $demail = $accountList[0]['demail'];
     $shiptype = $accountList[0]['shiptype'];
     //EMS派送类型,上门或自送
     //退货地址
     $rname = $accountList[0]['rname'];
     $rcompany = $accountList[0]['rcompany'];
     $rcountry = $accountList[0]['rcountry'];
     $rprovince = $accountList[0]['rprovince'];
     $rdis = $accountList[0]['rdis'];
     $rstreet = $accountList[0]['rstreet'];
     $rcity = $accountList[0]['rcity'];
     //收件人地址
     $tName = 'om_unshipped_order_userInfo';
     $select = '*';
     $where = "WHERE omOrderId='{$omOrderId}'";
     $userInfoList = OmAvailableModel::getTNameList($tName, $select, $where);
     if (empty($userInfoList)) {
         self::$errCode = '0006';
         self::$errMsg = "empty userInfoList";
         return 6;
     }
     $tusername = $userInfoList[0]['username'];
     //收件人
     $tstreet = $userInfoList[0]['street'];
     //街道
     $tcity = $userInfoList[0]['city'];
     //城市
     $tstate = $userInfoList[0]['state'];
     //省份
     $tcountry = $userInfoList[0]['countryName'];
     //国家名称
     $tcountryCode = $userInfoList[0]['countrySn'];
     //国家简称
     $tpostcode = $userInfoList[0]['zipCode'];
     //邮编
     $tphone = $userInfoList[0]['phone'] ? $userInfoList[0]['phone'] : $userInfoList[0]['landline'];
     //固话,手机号为空时,用座机号
     $temail = $userInfoList[0]['email'];
     //电邮
     //置入参数数组中
     $PickUpAddress = array('Contact' => $pname, 'Company' => $pcompany, 'Street' => $pstreet, 'District' => $pdis, 'City' => $pcity, 'Province' => $pprovince, 'Postcode' => $pzip, 'Country' => $pcountry, 'Email' => $pemail, 'Mobile' => $ptel, 'Phone' => $pte1);
     $ShipFromAddress = array("Contact" => $dname, "Company" => $dcompany, "Street" => $dstreet, "District" => $ddis, "City" => $dcity, "Province" => $dprovince, "Postcode" => $dzip, "Country" => $dcountry, "Email" => $demail, "Mobile" => $dtel);
     $ReturnAddress = array('Contact' => $rname, 'Company' => $rcompany, 'Street' => $rstreet, 'District' => $rdis, 'City' => $rcity, 'Province' => $rprovince, 'Postcode' => $pzip, 'Country' => '中国');
     $ShipToAddress = array('Email' => $temail, 'Company' => '', 'Contact' => $tusername, 'Phone' => $tphone, 'Street' => $tstreet, 'City' => $tcity, 'Province' => $tstate, 'Postcode' => $tpostcode, 'Country' => $tcountry, 'CountryCode' => $tcountryCode);
     ////////////////////////////
     //Item参数
     //orderDetail
     $omOrderDetailIds = OmEUBTrackNumberModel::getOrderDetailIds($omOrderId);
     //print_r($omOrderDetailIds);
     if (count($omOrderDetailIds) == 1) {
         $info = $omOrderDetailIds[0]['id'];
     } else {
         $info = array();
         foreach ($omOrderDetailIds as $value) {
             $info[] = $value['id'];
         }
         $info = implode(",", $info);
     }
     $tName = 'om_unshipped_order_detail_extension_ebay';
     $select = '*';
     $where = "WHERE omOrderdetailId in ({$info})";
     $ebayOrderDetailList = OmAvailableModel::getTNameList($tName, $select, $where);
     if (empty($ebayOrderDetailList)) {
         self::$errCode = '0007';
         self::$errMsg = "empty ebayOrderDetailList";
         return 7;
     }
     //print_r($ebayOrderDetailList);
     $tName = 'om_unshipped_order_extension_ebay';
     $select = '*';
     $where = "WHERE omOrderId='{$omOrderId}'";
     $ebayShippedOrderList = OmAvailableModel::getTNameList($tName, $select, $where);
     if (empty($ebayShippedOrderList)) {
         self::$errCode = '0008';
         self::$errMsg = "empty ebayShippedOrderList";
         return 8;
     }
     //查询订单下的货品数量
     $tName = 'om_unshipped_order_detail';
     $select = 'count(amount) amount';
     $where = "WHERE omOrderId='{$omOrderId}'";
     $amountList = OmAvailableModel::getTNameList($tName, $select, $where);
     $amounts = $amountList[0]['amount'];
     if (empty($amounts)) {
         self::$errCode = '0009';
         self::$errMsg = "empty amounts";
         return 9;
     }
     $Item = array();
     /*foreach ($ebayOrderDetailList as $ebayOrderDetail) {
     		print_r($ebayShippedOrderList);
     		$EBayItemID = $ebayOrderDetail['itemId']; //API参数,物品号
     		$EBayTransactionID = $ebayOrderDetail['transId']; //API参数,交易号,拍卖物品为0
     		$EBayBuyerID = $userInfoList[0]['platformUsername']; //API参数,买家ID
     		$email = $userInfoList[0]['email']; //API参数,买家ID
     		$PostedQTY = $amounts; //寄货数量
     		$currency = $ebayShippedOrderList[0]['currency'];
     		$omOrderdetailId = $ebayOrderDetail['omOrderdetailId'];
     		$tName = 'om_unshipped_order_detail';
     		$select = '*';
     		$where = "WHERE id='$omOrderdetailId'";
     		$omOrderDetailList = OmAvailableModel :: getTNameList($tName, $select, $where);
     		if (empty ($omOrderDetailList)) {
     			self :: $errCode = '0010';
     			self :: $errMsg = "empty omOrderDetailList";
     			return 10;
     		}
     		$sku = $omOrderDetailList[0]['sku'];
     		$amount = $omOrderDetailList[0]['amount'];
     		$skuInfo = $memc_obj->get_extral("sku_info_" . $sku);
     		$DeclaredValue = $skuInfo['goods_sbjz'] * $amount ? $skuInfo['goods_sbjz'] * $amount : 1; //申报价值
     		$Weight = $skuInfo['goods_weight'] * $amount ? $skuInfo['goods_weight'] * $amount : 0.01; //重量
     		$CustomsTitleCN = $skuInfo['goods_zysbmc'] ? $skuInfo['goods_zysbmc'] : $sku; //中文申报名称
     		$CustomsTitleEN = $skuInfo['goods_ywsbmc'] ? $skuInfo['goods_ywsbmc'] : $sku; //英文申报名称
     		$OriginCountryCode = 'CN'; //原产地简码
     		//echo "##".$EBayItemID."##";
     		/*if((!in_array($ebay_itemid.'-'.$ebay_tid, $unique_item_tid))){
     			$unique_item_tid[] = $ebay_itemid.'-'.$ebay_tid;
     			$item[$i]		= array(
     			'CurrencyCode' => $ebay_currency,
     			'EBayEmail' => $ebay_usermail,
     			'EBayBuyerID' => $ebay_userid,
     			'EBayItemID' => $ebay_itemid,
     			'EBayItemTitle' => $ebay_itemtitle,
     			'EBayMessage' => $ebay_note,
     			'EBaySiteID' => "0",
     			'EBayTransactionID' => $ebay_tid,  
     			'Note' => $ebay_noteb,  
     			'OrderSalesRecordNumber' => $recordnumber,
     			'PaymentDate' => $ebay_paidtime,
     			'PayPalEmail' => "0",
     			'PayPalMessage' => $ebay_note,
     			'PostedQTY' => $ebay_amount,
     			'ReceivedAmount' => $ebay_total,
     			'SalesRecordNumber' => $recordnumber1,
     			'SoldDate'			=> $ebay_createdtime,
     			'SoldPrice'			=> $ebay_itemprice,
     			'SoldQTY' 			=> $ebay_amount,
     			'SKU'				=>array(
     								'SKUID' => $sku,
     								'Weight' => $weight * $ebay_amount,
     								'CustomsTitleCN' => $goods_zysbmc,
     								'CustomsTitleEN' => $goods_ywsbmc.' '.$sku,
     								'DeclaredValue' => $goods_sbjz*$ebay_amount,
     								'OriginCountryName' => "China",
     								'OriginCountryCode' => "CN",
     								)
     			);
     		}*/
     $where = "WHERE omOrderId='{$omOrderId}'";
     $orderarr = OrderindexModel::showSearchOrderList("om_unshipped_order", $where);
     //print_r($orderarr);
     $unique_item_tid = array();
     foreach ($orderarr as $key => $order) {
         foreach ($order['orderDetail'] as $k => $detail) {
             $sku = $detail['orderDetailData']['sku'];
             $amount = $detail['orderDetailData']['amount'];
             //$goods = ExportsToXlsModel::getGoods($detail['orderDetailData']['sku']);
             $skus = GoodsModel::get_realskuinfo($detail['orderDetailData']['sku']);
             foreach ($skus as $k => $v) {
                 $goods = GoodsModel::getSkuList($k);
                 if (!in_array($detail['orderDetailExtenData']['itemId'] . '-' . $detail['orderDetailExtenData']['transId'], $unique_item_tid)) {
                     $unique_item_tid[] = $detail['orderDetailExtenData']['itemId'] . '-' . $detail['orderDetailExtenData']['transId'];
                     $Item[] = array('EBayBuyerID' => $order['orderUserInfoData']['platformUsername'], 'EBayItemID' => $detail['orderDetailExtenData']['itemId'], 'EBayEmail' => $order['orderUserInfoData']['email'], 'EBayTransactionID' => $detail['orderDetailExtenData']['transId'], 'PostedQTY' => $detail['orderDetailData']['amount'], 'EBaySiteID' => "0", 'PayPalEmail' => "0", 'EBayItemTitle' => $detail['orderDetailExtenData']['itemTitle'], 'OrderSalesRecordNumber' => $order['orderData']['recordNumber'], 'EBayMessage' => $order['orderExtenData']['feedback'], 'CurrencyCode' => $order['orderExtenData']['currency'], 'SoldDate' => date("Y-m-d", $order['orderData']['ordersTime']), 'SoldPrice' => $detail['orderDetailData']['itemPrice'], 'SoldQTY' => $detail['orderDetailData']['amount'], 'ReceivedAmount' => $order['orderData']['actualTotal'], 'PayPalMessage' => $order['orderExtenData']['feedback'], 'PaymentDate' => date("Y-m-d", $order['orderData']['paymentTime']), 'SalesRecordNumber' => $order['orderData']['recordNumber'], 'Note' => isset($order['orderNote'][0]['content']) ? $order['orderNote'][0]['content'] : "", 'SKU' => array('SKUID' => $detail['orderDetailData']['sku'], 'Weight' => $goods['goodsWeight'] * $amount * $v, 'CustomsTitleCN' => $goods['goodsName'], 'CustomsTitleEN' => $sku, 'DeclaredValue' => $detail['orderDetailData']['itemPrice'] * $amount * $v, 'OriginCountryName' => "China", 'OriginCountryCode' => "CN"));
                 }
             }
         }
     }
     $url_test = "http://epacketws.pushauction.net/v3/orderservice.asmx?WSDL";
     $url = "http://shippingapi.ebay.cn/production/v3/orderservice.asmx?wsdl";
     $soapclient = new soapclient($url);
     $params = array('Version' => "3.0.0", 'APIDevUserID' => $APIDevUserID, 'APIPassword' => $APIPassword, 'APISellerUserID' => $APISellerUserID, "OrderDetail" => array("PickUpAddress" => $PickUpAddress, "ShipFromAddress" => $ShipFromAddress, "ShipToAddress" => $ShipToAddress, "ItemList" => array("Item" => $Item), "EMSPickUpType" => $shiptype, "ReturnAddress" => $ReturnAddress));
     try {
         //print_r($params);
         $functions = $soapclient->AddAPACShippingPackage(array("AddAPACShippingPackageRequest" => $params));
         //echo "dfg";
         foreach ($functions as $value) {
             $bb = (array) $value;
             $ack = $bb['Ack'];
             if ($ack == 'Success') {
                 $TrackCode = $bb['TrackCode'];
                 //这里插入记录到records表中
                 $tName = 'om_order_tracknumber';
                 $set = "SET omOrderId='{$omOrderId}',addUser='******',tracknumber='{$TrackCode}',createdTime='" . time() . "'";
                 $affectRow = OmAvailableModel::insertRow($tName, $set);
                 if ($affectRow) {
                     self::$errCode = '200';
                     self::$errMsg = "success";
                     return 200;
                 } else {
                     self::$errCode = '0011';
                     self::$errMsg = "添加跟踪号失败";
                     return 11;
                 }
             } else {
                 $tName = 'om_order_notes';
                 $set = "SET omOrderId='{$omOrderId}',content='{$bb['Message']}',userId='{$addUser}',createdTime='" . time() . "'";
                 $affectRow = OmAvailableModel::insertRow($tName, $set);
                 self::$errCode = '0012';
                 self::$errMsg = $bb['Message'];
                 return 12;
             }
         }
     } catch (Exception $e) {
         self::$errCode = '0013';
         self::$errMsg = $e->getMessage();
         return 0;
     }
 }