Ejemplo n.º 1
0
function func_manually_split_orders($ebay_id, $other = array())
{
    /**
     * @author Herman.Xi (席慧超)
     * @version 1.0
     * add by Herman.Xi @ 20130224
     * 手动拆分订单函数
     */
    global $dbcon, $user;
    $split_log = "\r\n\r\n";
    $isend = false;
    if ($isend) {
        continue;
    }
    //如果是里面有拦截的不能自动拦截
    $sql = "select a.* from ebay_order as a where ebay_id = '{$ebay_id}' and ebay_combine != '1' and ebay_user = '******' ";
    $result = $dbcon->execute($sql);
    $corder = $dbcon->fetch_one($result);
    if (empty($corder)) {
        echo "目前系统无法找到订单 {$ebay_id} !";
    }
    $ebay_ordersn = $corder['ebay_ordersn'];
    $ebay_paystatus = $corder['ebay_paystatus'];
    $recordnumber = $corder['recordnumber'];
    $ebay_tid = $corder['ebay_tid'];
    $ebay_ptid = $corder['ebay_ptid'];
    $ebay_total0 = $corder['ebay_total'];
    $ebay_orderid = $corder['ebay_orderid'];
    $ebay_createdtime = $corder['ebay_createdtime'];
    $ebay_paidtime = $corder['ebay_paidtime'];
    //$ebay_user = $corder['ebay_user'];
    $ebay_userid = mysql_real_escape_string($corder['ebay_userid']);
    $ebay_username = addslashes($corder['ebay_username']);
    $ebay_usermail = addslashes($corder['ebay_usermail']);
    $ebay_street = addslashes($corder['ebay_street']);
    $ebay_street1 = addslashes($corder['ebay_street1']);
    $ebay_city = addslashes($corder['ebay_city']);
    $ebay_state = addslashes($corder['ebay_state']);
    $ebay_countryname = addslashes($corder['ebay_countryname']);
    $ebay_postcode = addslashes($corder['ebay_postcode']);
    $ebay_phone = $corder['ebay_phone'];
    $ebay_status = 655;
    $ebay_addtime = time();
    $ebay_shipfee = $corder['ebay_shipfee'];
    $ebay_tracknumber = $corder['ebay_tracknumber'];
    $ebay_account = $corder['ebay_account'];
    $ebay_note = mysql_real_escape_string($corder['ebay_note']);
    $ebay_carrier = $corder['ebay_carrier'];
    $ebay_warehouse = $corder['ebay_warehouse'];
    $ebay_currency = $corder['ebay_currency'];
    $ebay_phone1 = $corder['ebay_phone1'];
    $is_main_order = $corder['is_main_order'];
    $combine_package = $corder['combine_package'];
    $packingtype = $corder['packingtype'];
    $scantime = $corder['scantime'];
    $ebay_couny = $corder['ebay_couny'];
    $ebayorder_site = $corder['ebay_site'];
    $eBayPaymentStatus = $corder['eBayPaymentStatus'];
    $orderweight = $corder['orderweight'];
    if ($ebay_account == 'dresslink.com') {
        //支持dresslink.com
        $ebay_noteb = $corder['ebay_noteb'] . ' 拆分 订单';
    } else {
        $ebay_noteb = '拆分 订单';
    }
    if (in_array($ebay_carrier, array('UPS', 'DHL', 'TNT', 'EMS', 'FedEx'))) {
        echo "订单 {$ebay_id} 运输方式为快递,请确认该订单是否需要拆分!<br>";
        continue;
    }
    $order_statistics->deleteAll($ebay_ordersn);
    //删除statistics表中的记录
    if (empty($ebay_carrier)) {
        $fees = calcshippingfee($orderweight, $ebay_countryname, $ebay_id, $ebay_account, $corder['ebay_total']);
        $ebay_carrier = $fees[0];
    }
    $dbcon->free_result($result);
    $sql = "SELECT * FROM ebay_orderdetail as eo WHERE eo.ebay_ordersn = '{$ebay_ordersn}'";
    $result = $dbcon->execute($sql);
    $eo = $dbcon->getResultArray($result);
    $dbcon->free_result($result);
    $weightlists = array();
    $skuinfo = array();
    $goods_sn_nums = 0;
    $shippfee_arr = array();
    foreach ($eo as $k => $f) {
        $sku = $f['sku'];
        $ebay_amount = $f['ebay_amount'];
        $goods_sn_nums += $ebay_amount;
        if (strpos($sku, "#")) {
            $sku = str_replace("#", "", $sku);
        }
        $shippfee_arr[$sku] = round($f['shipingfee'] / $ebay_amount, 3);
        $sql = "select * from ebay_goods where goods_sn='{$sku}' and ebay_user ='******' ";
        $result = $dbcon->execute($sql);
        $eg = $dbcon->fetch_one($result);
        $dbcon->free_result($result);
        $ebay_packingmaterial = $eg['ebay_packingmaterial'];
        $goods_weight = $eg['goods_weight'];
        $capacity = $eg['capacity'];
        $sql = "select * from ebay_packingmaterial where  model='{$ebay_packingmaterial}' and ebay_user ='******' ";
        $result = $dbcon->execute($sql);
        $ep = $dbcon->fetch_one($result);
        $dbcon->free_result($result);
        $pweight = isset($ep['weight']) ? $ep['weight'] : 0;
        $skuinfo[$sku] = $f;
        for ($i = 1; $i <= $ebay_amount; $i++) {
            $var = $sku;
            if ($ebay_amount <= $capacity) {
                $ppweight = $pweight / $ebay_amount;
            } else {
                $ppweight = (1 + ($ebay_amount - $capacity) / $capacity * 0.6) * $pweight / $ebay_amount;
            }
            $weightlists[$var][] = $goods_weight + $ppweight;
        }
    }
    //echo $goods_sn_nums; echo "<br>";
    if ($goods_sn_nums <= 1) {
        continue;
    }
    $sql = "update ebay_order set ebay_combine = '1' where ebay_id = '{$ebay_id}' ";
    $split_log .= "更新被拆分的订单信息,设置为隐藏\r\n" . $sql . "\r\n";
    $dbcon->execute($sql) or die("Fail : {$sql}");
    //echo "<pre>"; print_r($skuinfo); echo "\r\n";
    //echo "<pre>"; print_r($weightlists); echo "\r\n";
    $keyarray = array();
    $keyarrays = array();
    $checkweight = 0;
    $arrinfo = get_order_productsweight($ebay_ordersn);
    $realweight = $arrinfo[0];
    $realcosts = $arrinfo[1];
    $itemprices = $arrinfo[2];
    /*foreach($weightlists AS $wk => $wv){
    		foreach($wv as $weightlist){
    			$checkweight += $weightlist;
    		}
    	}
    	echo $checkweight; echo "<br>"; exit;*/
    foreach ($weightlists as $wk => $wv) {
        foreach ($wv as $weightlist) {
            $checkweight += $weightlist;
            //$realweight += $weightlist;
            if ($checkweight > 1.85) {
                $keyarrays[] = $keyarray;
                $keyarray = array();
                $checkweight = $weightlist;
                $keyarray[$wk][] = $wk;
            } else {
                $keyarray[$wk][] = $wk;
            }
        }
    }
    if (!empty($keyarray)) {
        $keyarrays[] = $keyarray;
    }
    /*echo "<pre>"; print_r($keyarrays); echo "\r\n";
    	exit;*/
    foreach ($keyarrays as $keyarray) {
        $ebay_total = 0;
        $totalweight = 0;
        $insert_ebay_ids = array();
        foreach ($keyarray as $k => $kav) {
            $ebay_total += $skuinfo[$k]['ebay_itemprice'] * count($kav);
        }
        //echo $ebay_total; echo "\r\n";
        $shipfee = 0;
        $val = generateOrdersn();
        $sql = "insert into  ebay_order(ebay_ordersn,ebay_paystatus,recordnumber,ebay_tid,ebay_ptid,ebay_orderid,ebay_createdtime,ebay_paidtime,ebay_userid,ebay_username,ebay_usermail,ebay_street,ebay_street1,ebay_city,ebay_state,ebay_couny,ebay_countryname,ebay_postcode,ebay_phone,ebay_total,ebay_status,ebay_user,ebay_addtime,ebay_shipfee,ebay_account,ebay_note,ebay_noteb,ebay_carrier,ebay_warehouse,ebay_tracknumber,ebay_site,eBayPaymentStatus,ebay_currency,ordershipfee,scantime,orderweight,ebay_phone1,packingtype,is_main_order,combine_package) values('{$val}','{$ebay_paystatus}','{$recordnumber}','{$ebay_tid}','{$ebay_ptid}','{$ebay_orderid}','{$ebay_createdtime}','{$ebay_paidtime}','{$ebay_userid}','{$ebay_username}','{$ebay_usermail}','{$ebay_street}','{$ebay_street1}','{$ebay_city}','{$ebay_state}','{$ebay_couny}','{$ebay_countryname}','{$ebay_postcode}','{$ebay_phone}','{$ebay_total}','{$ebay_status}','{$user}','{$mctime}','{$ebay_shipfee}','{$ebay_account}','{$ebay_note}','{$ebay_noteb}','{$ebay_carrier}','{$ebay_warehouse}','{$ebay_tracknumber}','{$ebayorder_site}','{$eBayPaymentStatus}','{$ebay_currency}','{$shipfee}','{$scantime}','{$totalweight}','{$ebay_phone1}','{$packingtype}','{$is_main_order}','{$combine_package}')";
        //$split_log .= "添加拆分订单信息到订单列表中\r\n".$sql ."\r\n";
        if ($dbcon->execute($sql)) {
            $insert_ebay_id = $dbcon->insert_id();
            $insert_ebay_ids[] = $insert_ebay_id;
            mark_shipping($insert_ebay_id, $ebay_status);
            $sql = "insert into ebay_splitorder (recordnumber, main_order_id, split_order_id, create_date) values ('{$recordnumber}', '{$ebay_id}', '{$insert_ebay_id}', '" . date("Y-m-d H:i:s") . "')";
            $split_log .= "添加主定单和拆分订单到关系表中\r\n" . $sql . "\r\n";
            $dbcon->execute($sql) or die("Fail : {$sql}");
            foreach ($keyarray as $k => $kav) {
                $ebay_itemid = $skuinfo[$k]['ebay_itemid'];
                $ebay_itemtitle = mysql_real_escape_string($skuinfo[$k]['ebay_itemtitle']);
                $ebay_shiptype = $skuinfo[$k]['ebay_shiptype'];
                $shipingfee = $skuinfo[$k]['shipingfee'];
                $ebay_itemurl = $skuinfo[$k]['ebay_itemurl'];
                $ebay_site = $skuinfo[$k]['ebay_site'];
                $storeid = $skuinfo[$k]['storeid'];
                $ListingType = $skuinfo[$k]['ListingType'];
                $ebaydetail_tid = $skuinfo[$k]['ebay_tid'];
                $FeeOrCreditAmount = $skuinfo[$k]['FeeOrCreditAmount'];
                $FinalValueFee = $skuinfo[$k]['FinalValueFee'];
                $attribute = $skuinfo[$k]['attribute'];
                $notes = $skuinfo[$k]['notes'];
                $sku = $k;
                $ebay_amount = count($kav);
                if ($ebay_account == 'dresslink.com') {
                    //支持dresslink.com
                    if (isset($shippfee_arr[$sku])) {
                        $shipingfee = $shippfee_arr[$sku] * $ebay_amount;
                        //相同料号运费拆分
                    }
                }
                $ebay_itemprice = $skuinfo[$k]['ebay_itemprice'];
                $goods_location = $skuinfo[$k]['goods_location'];
                $sql = "INSERT INTO `ebay_orderdetail` (`ebay_ordersn` ,`ebay_itemid` ,`ebay_itemtitle` ,`ebay_itemprice` ,";
                $sql .= "`ebay_amount` ,`ebay_createdtime` ,`ebay_shiptype` ,`ebay_user`,`sku`,`shipingfee`,`ebay_account`,`addtime`,`ebay_itemurl`,`ebay_site`,`recordnumber`,`storeid`,`ListingType`,`ebay_tid`,`FeeOrCreditAmount`,`FinalValueFee`,`attribute`,`notes`,`goods_location`)VALUES ('{$val}', '{$ebay_itemid}' , '{$ebay_itemtitle}' , '{$ebay_itemprice}' , '{$ebay_amount}'";
                $sql .= " , '{$mctime}' , '{$ebay_shiptype}' , '{$user}','{$sku}','{$shipingfee}','{$ebay_account}','{$mctime}','{$ebay_itemurl}','{$ebay_site}','{$recordnumber}','{$storeid}','{$ListingType}','{$ebaydetail_tid}','{$FeeOrCreditAmount}','{$FinalValueFee}','{$attribute}','{$notes}','{$goods_location}')";
                //$split_log .= "添加对应的产品orderdetail信息\r\n".$sql ."\r\n";
                $dbcon->execute($sql) or die("Fail : {$sql}");
            }
            $totalweight = recalcorderweight($val, $ebay_packingmaterial);
            if ($ebay_account == 'dresslink.com') {
                $ordershipfee = calctrueshippingfee($ebay_carrier, $totalweight, $ebay_countryname, $insert_ebay_id);
                $arrinfo2 = get_order_productsweight($val);
                $splitweight = $arrinfo2[0];
                $splitcosts = $arrinfo2[1];
                $splititemprices = $arrinfo2[2];
                $ebay_total2 = round($splititemprices / $itemprices * $ebay_total0, 2);
                //成本价比例拆分
                $ebay_shipfee2 = round($splitweight / $realweight * $ebay_shipfee, 3);
                //运费按重量拆分
                //echo $val."--------".$splititemprices."------------".$itemprices."<br>";
                $sql = "update ebay_order set ebay_total = '{$ebay_total2}', ebay_shipfee = '{$ebay_shipfee2}', ordershipfee='{$ordershipfee}', orderweight ='{$totalweight}' ,packingtype ='{$ebay_packingmaterial}' where ebay_id ='{$insert_ebay_id}' ";
                //echo $sql."<br>";
            } else {
                $ordershipfee = calctrueshippingfee2($ebay_carrier, $totalweight, $ebay_countryname, $insert_ebay_id);
                $sql = "update ebay_order set ordershipfee='{$ordershipfee}', orderweight ='{$totalweight}' ,packingtype ='{$ebay_packingmaterial}' where ebay_id ='{$insert_ebay_id}' ";
                //$split_log .= "超重订单 $ebay_id 拆分出新订单 $insert_ebay_id \r\n";
            }
            $dbcon->execute($sql) or die("Fail : {$sql}");
            $order_statistics->replaceData($val, array('mask' => 1), array('mask' => 1));
            //添加statistics记录
            $split_log .= "[" . date("Y-m-d H:i:s") . "]\t原订单---{$ebay_id}--被{$truename}--拆分出新订单( " . join(',', $insert_ebay_ids) . " )\r\n";
        } else {
            echo "超重订单 {$recordnumber} 拆分失败!<br>";
            break;
        }
    }
    //echo $split_log;
    write_log('split_order_' . date("Ymd") . '/' . date("H") . '.txt', $split_log);
}
Ejemplo n.º 2
0
function auto_contrast_intercept($ebay_orders)
{
    //订单自动拦截完整版 支持虚拟料号
    //add Herman.Xi 2012-12-20
    /*
    * 订单进入系统首先判断 是否为超大订单,如果为超大订单,文件夹为640;
    * B2B 抓取超大订单自动进入 超大订单待确认 modified by Herman.Xi @ 2013.05.20
    * 判断订单下,料号是否全部有货,部分有货,全部没货:
         如果部分有货,判断其运输方式,如果为快递,文件夹为659;非快递则为660;(订单自动部分包货)
    	 如果全部没货,判断其运输方式,如果为快递,文件夹为658;非快递则为661;(订单自动拦截)
    	 如果全部有货:
    	 	先判断如果为组合订单,文件夹为606;
    		如果超重订单,文件夹为608;
    		如果快递订单,文件夹为639;
    		全部不满足则为导入状态
      自动拦截时,判断自动拦截快递,非快递,自动部分包货快递,非快递里面的订单,自动每隔十五分钟执行一次
      //支持 速卖通导入,敦煌导入,ebay线下导入,dresslink导入,快递导入,出口通导入
    */
    global $dbcon, $defaultstoreid, $SYSTEM_ACCOUNTS, $order_statistics, $__liquid_items_fenmocsku, $__liquid_items_SuperSpecific, $__liquid_items_postbyhkpost, $__liquid_items_cptohkpost, $__liquid_items_BuiltinBattery, $__liquid_items_Paste;
    $log_data = "";
    $express_delivery = array('UPS', 'DHL', 'TNT', 'EMS', 'FedEx');
    $no_express_delivery = array('中国邮政平邮', '中国邮政挂号', '香港小包平邮', '香港小包挂号', 'EUB', 'Global Mail');
    foreach ($ebay_orders as $ebay_order) {
        //$import_status = now_order_status_log($osn, false);
        $ebay_id = $ebay_order['ebay_id'];
        $ebay_status = $ebay_order['ebay_status'];
        //$ebay_orderid = $ebay_order['ebay_orderid'];
        $ebay_note = $ebay_order['ebay_note'];
        $order_sn = $ebay_order['ebay_ordersn'];
        $ebay_carrier = $ebay_order['ebay_carrier'];
        $ebay_countryname = $ebay_order['ebay_countryname'];
        $ebay_account = $ebay_order['ebay_account'];
        $ebay_username = $ebay_order['ebay_username'];
        $totalweight = $ebay_order['orderweight'];
        $ebay_total = $ebay_order['ebay_total'];
        $recal_weight = recalcorderweight($order_sn, $ebay_packingmaterial);
        //modified by Herman.Xi 2012-10-17
        if (empty($totalweight)) {
            //按照如果没有重量的即默认为
            $totalweight = $recal_weight;
        }
        $sql = "SELECT sku,ebay_amount FROM ebay_orderdetail WHERE ebay_ordersn='{$order_sn}'";
        $result = $dbcon->execute($sql);
        $orderdetaillist = $dbcon->getResultArray($result);
        $contain_special_item = false;
        $shippment_cptohkpost = false;
        foreach ($orderdetaillist as $orderdetail) {
            $sku_arr = get_realskuinfo($orderdetail['sku']);
            foreach ($sku_arr as $or_sku => $or_nums) {
                if (in_array($or_sku, $__liquid_items_fenmocsku) || in_array($or_sku, $__liquid_items_SuperSpecific)) {
                    //粉末状,超规格产品 走福建邮局
                    $contain_special_item = true;
                }
                if (in_array($or_sku, $__liquid_items_postbyhkpost) || in_array($or_sku, $__liquid_items_cptohkpost) || in_array($or_sku, $__liquid_items_BuiltinBattery) || in_array($or_sku, $__liquid_items_Paste)) {
                    //包含特殊料号,中国邮政转香港小包
                    $shippment_cptohkpost = true;
                }
            }
        }
        if (!empty($ebay_carrier)) {
            //$fees			    = calcshippingfee($totalweight,$ebay_countryname,$ebay_id,$ebay_account,$ebay_total);
            if ($shippment_cptohkpost && strpos($ebay_carrier, '中国邮政') !== false) {
                if (count($orderdetaillist) == 1) {
                    $ebay_carrier = '香港小包挂号';
                } else {
                    $ebay_carrier = '';
                    $aliexpress_ebay_noteb = "系统提示:包含特殊料号不走中国邮政,请重新选择运输方式或者拆包!";
                }
                //$fee			= $fees[1];
                //$totalweight	= $fees[2];
                $bb = "update ebay_order set ebay_carrier = '{$ebay_carrier}', orderweight ='{$totalweight}', packingtype ='{$ebay_packingmaterial}', ebay_noteb = '{$aliexpress_ebay_noteb}' where ebay_id ='{$ebay_id}' ";
            } else {
                //$ebay_carrier	= $fees[0];
                //$fee			= $fees[1];
                //$totalweight	= $fees[2];
                $shipfee = calctrueshippingfee($ebay_carrier, $totalweight, $ebay_countryname, $ebay_id);
                $bb = "update ebay_order set ebay_carrier = '{$ebay_carrier}', ordershipfee='{$shipfee}', orderweight ='{$totalweight}', packingtype ='{$ebay_packingmaterial}' where ebay_id ='{$ebay_id}' ";
            }
            $dbcon->execute($bb);
        }
        if ($contain_special_item) {
            $sql = "update ebay_order set ebay_carrierstyle ='1' where ebay_id ={$ebay_id}";
            //add by Herman.Xi 记录该订单含有特殊料号
            $dbcon->execute($sql);
            $log_data .= "[" . date("Y-m-d H:i:s") . "]\t包含粉末状超规格产品---{$ebay_id}---!\n\n";
        }
        $record_details = array();
        $is_640 = false;
        foreach ($orderdetaillist as $orderdetail) {
            $sku_arr = get_realskuinfo($orderdetail['sku']);
            $hava_goodscount = true;
            foreach ($sku_arr as $or_sku => $or_nums) {
                $allnums = $or_nums * $orderdetail['ebay_amount'];
                if (!check_sku($or_sku, $allnums, $ebay_id)) {
                    //超大订单状态
                    if (in_array($ebay_account, $SYSTEM_ACCOUNTS['aliexpress']) || in_array($ebay_account, $SYSTEM_ACCOUNTS['B2B外单']) || in_array($ebay_account, $SYSTEM_ACCOUNTS['DHgate']) || in_array($ebay_account, $SYSTEM_ACCOUNTS['出口通']) || in_array($ebay_account, $SYSTEM_ACCOUNTS['线下结算客户'])) {
                        $sql = "UPDATE ebay_order SET ebay_status='698' WHERE ebay_id ='{$ebay_id}' ";
                        $log_data .= "[" . date("Y-m-d H:i:s") . "]\t自动跳转---{$ebay_id}---的状态为---698!\n\n";
                    } else {
                        $sql = "UPDATE ebay_order SET ebay_status='640' WHERE ebay_id ='{$ebay_id}' ";
                        $log_data .= "[" . date("Y-m-d H:i:s") . "]\t自动跳转---{$ebay_id}---的状态为---640!\n\n";
                    }
                    $dbcon->execute($sql) or die("Fail : {$sql}");
                    //$order_statistics->replaceData($order_sn, array('mask'=>1), array('mask'=>1));
                    insert_mark_shipping($ebay_id);
                    write_log('contrast_intercept_' . date("Ymd") . '/' . date("H") . '.txt', $log_data . "\n\n");
                    $is_640 = true;
                    break;
                } else {
                    $skuinfo = get_sku_info($or_sku);
                    $salensend = getsaleandnosendall($or_sku, $defaultstoreid);
                    $sql = "UPDATE ebay_sku_statistics SET salensend = {$salensend} WHERE sku = 'or_sku' ";
                    $dbcon->execute($sql);
                    $log_data .= "[" . date("Y-m-d H:i:s") . "]\t---{$sql}\n\n";
                    if ($skuinfo['realnums'] - $salensend < 0) {
                        $hava_goodscount = false;
                        break;
                    }
                }
            }
            if ($hava_goodscount) {
                $record_details[] = $orderdetail;
            }
        }
        if ($is_640) {
            continue;
        }
        $count_record_details = count($record_details);
        $count_orderdetaillist = count($orderdetaillist);
        $final_status = $ebay_status;
        if ($count_record_details == 0) {
            //更新至自动拦截发货状态
            if (!in_array($ebay_carrier, $no_express_delivery)) {
                $final_status = 658;
            } else {
                $final_status = 661;
            }
            $sql = "UPDATE ebay_order SET ebay_status='{$final_status}' WHERE ebay_id ='{$ebay_id}' ";
            $log_data .= "[" . date("Y-m-d H:i:s") . "]\t自动跳转---{$ebay_id}---的状态为---{$final_status}!\n\n";
            $dbcon->execute($sql) or die("Fail : {$sql}");
            //$order_statistics->replaceData($order_sn, array('mask'=>1), array('mask'=>1));
            insert_mark_shipping($ebay_id);
            write_log('contrast_intercept_' . date("Ymd") . '/' . date("H") . '.txt', $log_data . "\n\n");
            continue;
        } else {
            if ($count_record_details < $count_orderdetaillist) {
                //更新至自动部分发货状态
                if (!in_array($ebay_carrier, $no_express_delivery)) {
                    //$final_status = 659;
                    $final_status = 640;
                    //modified by Herman.Xi @ 20130401
                } else {
                    $final_status = 660;
                }
                $sql = "UPDATE ebay_order SET ebay_status='{$final_status}' WHERE ebay_id ='{$ebay_id}' ";
                $log_data .= "[" . date("Y-m-d H:i:s") . "]\t自动跳转---{$ebay_id}---的状态为---{$final_status}!\n\n";
                $dbcon->execute($sql) or die("Fail : {$sql}");
                //$order_statistics->replaceData($order_sn, array('mask'=>1), array('mask'=>1));
                insert_mark_shipping($ebay_id);
                write_log('contrast_intercept_' . date("Ymd") . '/' . date("H") . '.txt', $log_data . "\n\n");
                continue;
            } else {
                if ($count_record_details == $count_orderdetaillist) {
                    //正常发货状态
                    if (in_array($ebay_account, $SYSTEM_ACCOUNTS['ebay平台'])) {
                        if ($ebay_note != '') {
                            $final_status = 593;
                        } else {
                            $final_status = 1;
                        }
                    } else {
                        if (in_array($ebay_account, $SYSTEM_ACCOUNTS['海外销售平台'])) {
                            $final_status = 629;
                            //德国订单
                            $sql = "UPDATE ebay_order SET ebay_status='{$final_status}' WHERE ebay_id ='{$ebay_id}' ";
                            $log_data .= "[" . date("Y-m-d H:i:s") . "]\t自动跳转---{$ebay_id}---的状态为---{$final_status}!\n\n";
                            $dbcon->execute($sql) or die("Fail : {$sql}");
                            //$order_statistics->replaceData($order_sn, array('mask'=>1), array('mask'=>1));
                            write_log('contrast_intercept_' . date("Ymd") . '/' . date("H") . '.txt', $log_data . "\n\n");
                            continue;
                        } else {
                            if (in_array($ebay_account, $SYSTEM_ACCOUNTS['aliexpress']) || in_array($ebay_account, $SYSTEM_ACCOUNTS['B2B外单'])) {
                                if ($ebay_note != '') {
                                    $final_status = 593;
                                } else {
                                    $final_status = 595;
                                }
                                if (in_array($ebay_countryname, array('Russian Federation', 'Russia')) && strpos($ebay_carrier, '中国邮政') !== false && str_word_count($ebay_username) < 2) {
                                    $final_status = 683;
                                    $sql = "UPDATE ebay_order SET ebay_status='{$final_status}' WHERE ebay_id ='{$ebay_id}' ";
                                    $log_data .= "[" . date("Y-m-d H:i:s") . "]\t自动跳转---{$ebay_id}---的状态为---{$final_status}!\n\n";
                                    $dbcon->execute($sql) or die("Fail : {$sql}");
                                    //$order_statistics->replaceData($order_sn, array('mask'=>1), array('mask'=>1));
                                    write_log('contrast_intercept_' . date("Ymd") . '/' . date("H") . '.txt', $log_data . "\n\n");
                                    continue;
                                }
                            } else {
                                if (in_array($ebay_account, $SYSTEM_ACCOUNTS['DHgate'])) {
                                    $final_status = 620;
                                } else {
                                    if (in_array($ebay_account, $SYSTEM_ACCOUNTS['dresslink'])) {
                                        $final_status = 1;
                                    } else {
                                        if (in_array($ebay_account, $SYSTEM_ACCOUNTS['cndirect'])) {
                                            $final_status = 1;
                                        } else {
                                            $final_status = 1;
                                        }
                                    }
                                }
                            }
                        }
                    }
                    if (judge_contain_combinesku($order_sn)) {
                        $final_status = 606;
                    }
                    if ($totalweight > 2) {
                        $final_status = 608;
                    }
                    if (!in_array($ebay_carrier, $no_express_delivery)) {
                        if (in_array($ebay_account, $SYSTEM_ACCOUNTS['ebay平台']) || in_array($ebay_account, $SYSTEM_ACCOUNTS['海外销售平台'])) {
                            $final_status = 641;
                            //ebay和海外都跳转到 待打印线下和异常订单
                        } else {
                            $final_status = 639;
                        }
                    }
                    $sql = "UPDATE ebay_order SET ebay_status='{$final_status}' WHERE ebay_id ='{$ebay_id}' ";
                    $log_data .= "[" . date("Y-m-d H:i:s") . "]\t自动跳转---{$ebay_id}---的状态为---{$final_status}!\n\n";
                    $dbcon->execute($sql) or die("Fail : {$sql}");
                    //$order_statistics->replaceData($order_sn, array('mask'=>1), array('mask'=>1));
                    write_log('contrast_intercept_' . date("Ymd") . '/' . date("H") . '.txt', $log_data . "\n\n");
                } else {
                    $log_data .= "[" . date("Y-m-d H:i:s") . "]\t订单{$ebay_id同步状态有误,请联系IT解决!}";
                }
            }
        }
    }
    if (!empty($log_data)) {
        write_log('contrast_intercept_' . date("Ymd") . '/' . date("H") . '.txt', $log_data . "\n\n");
    }
}
Ejemplo n.º 3
0
function calcWeight($orderid)
{
    global $dbcon;
    $sql = "SELECT ebay_ordersn from ebay_order where ebay_id={$orderid} ";
    $sql = $dbcon->execute($sql);
    $ordersn_arr = $dbcon->fetch_one($sql);
    $ordersn = $ordersn_arr["ebay_ordersn"];
    $totalweight = recalcorderweight($ordersn, $ebay_packingmaterial);
    $sql = "update ebay_order set  orderweight ='{$totalweight}' where ebay_id ={$orderid} ";
    $dbcon->execute($sql);
    return $totalweight;
}