<?php
/**
 * Created by events.
 * User: user
 * Date: 16-12-20
 * 海关产品信息查询文件
 */
require_once ('config.php');
// header("Content-type:text/html;charset=utf-8");
$flagFile = APPLICATION_PATH . '/../data/log/autoProductSearch.lock';
if (@file_exists($flagFile)) {
	echo 'Anather process is running.'."\r\n";
	echo $flagFile."\r\n";
	exit();
}
//防止重复调用生成文件
$link = fopen($flagFile, 'wb');
fclose($link);

define('RUNTIME', '[' . date('Y-m-d H:i:s') . '] ');
echo RUNTIME . "Starting.\r\n\r\n";
$condition = array(
    'fmt_code' => 'PS',
    'fml_status' => '0',
);

$count = Service_FtpMessageSendlist::getByCondition($condition,"count(*)");
$pageSize = 20;
$totalPage = ceil($count/$pageSize);
for($page=1;$page<=$totalPage;$page++){
    $sendMessageList = Service_FtpMessageSendlist::getByCondition($condition,"*",$pageSize,$page,'fml_id desc');
    foreach ($sendMessageList as $key => $value) {
        // print_r($value);exit;
        if(!empty($value['refercence_no'])){
                $condition =  array(
                'sb_code' => $value['refercence_no'], 
                'order_status' => array('11','12','13'), 
                'order_mode_type' => '0', 
            );
            $data = Service_ShipBatchDetail::getByJoinProductGroupCondition($condition);
            //插入数据到product_search表
            if(!empty($data)){
                foreach ($data as $k => $v) {
                    //  mb_convert_encoding($v['customer_company_name'], 'gbk', 'utf-8');
                    $psData = array(
                        'product_id' => $v['product_id'],
                        'product_barcode' => $v['product_barcode'],
                        'product_sku' => $v['product_sku'],
                        'product_title' => $v['product_title'],
                        'goods_id' => $v['goods_id'],
                        'hs_code' => $v['hs_code'],
                        'customer_company_name' => $v['customer_company_name'],
                        'shipment_time' => $v['shipment_time']
                    );
                    // print_r($psData);exit;
                    try {
                        Service_ProductSearch::add($psData);
                        $row = array(
                            'fml_status' => '1',
                        );
                        Service_FtpMessageSendlist::update($row,$value['fml_id'],'fml_id');
                    } catch (Exception $e) {
                        // 捕捉异常，记录日志或其他的操作
                        echo "出货总单[".$value['refercence_no']."]添加输错:".$e->getMessage()."\r\n";     
                    }  
                }
            }
        } 
    }
}
echo "\r\n[" . date('Y-m-d H:i:s') . "] End run\r\n";
@unlink($flagFile);