<?php
require_once ('config.php');
$flagFile = APPLICATION_PATH . '/../data/log/submitReceiving.lock';
if (@file_exists($flagFile)) {
    echo 'Anather process is running.'."\r\n\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";

try {
	$ftProcess = new Service_FtpReceiveProcess();
	//$receivingList = Service_Receiving::getByCondition(array('receiving_status'=>3));
	$sendList = Service_FtpMessageSendlist::getByCondition(array('fmt_code'=>'MRK', 'fml_status'=>1));
	/* var_dump($sendList);
	exit; */
	foreach($sendList as $sendRow) {
		$affect = $ftProcess->updateSendMessage($sendRow);
		if(!$affect) {
			echo "创建入库报文失败[".$sendRow['refercence_no']."]\r\n";
			continue;
		}
		$result = $ftProcess->ftpSendMessage($sendRow['fml_id']);
		if(!$result) {
			echo "发送入库报文失败[".$sendRow['refercence_no']."]\r\n";
			continue;
		}
		//修改状态
		$aUpdate['fml_status'] = 2;
		$aUpdate['fml_update_time'] = date('Y-m-d H:i:s');
		Service_FtpMessageSendlist::update($aUpdate, $sendRow['fml_id']);
		echo "发送入库报文成功[".$sendRow['refercence_no']."]\r\n";
	}
	/*foreach($receivingList as $receivingRow) {
		$fml_id = $ftProcess->addSendMessage($receivingRow['receiving_code']);
		if(!$fml_id) {
			echo "创建入库报文失败[".$receivingRow['receiving_code']."]\r\n";
			continue;
		}
		$result = $ftProcess->ftpSendMessage($fml_id);
		if(!$result) {
			Service_FtpMessageSendlist::delete($fml_id);
			echo "发送入库报文失败[".$receivingRow['receiving_code']."]\r\n";
			continue;
		}
		//修改状态
		$aUpdate['fml_status'] = 2;
		$aUpdate['fml_update_time'] = date('Y-m-d H:i:s');
		Service_FtpMessageSendlist::update($aUpdate, $fml_id);
		echo "发送入库报文成功[".$receivingRow['receiving_code']."]\r\n";
	}*/
} catch (Exception $e) {
    @unlink($flagFile);
    echo '[' . date('Y-m-d H:i:s') . '] Fail Exception:' . $e->getTraceAsString() ."\r\n";
}

echo "[" . date('Y-m-d H:i:s') . "] End run\r\n\r\n";
@unlink($flagFile);