Commit 6d1fb6dc authored by chenchuanwen's avatar chenchuanwen

pc

parent 139c6d4f
......@@ -752,8 +752,8 @@ class OrderConfirmUtil {
public function pushMessage(){
if($this->pushMessageOrders){
foreach($this->pushMessageOrders as $tempOrder){
\Business\Order\OrderServiceModel::getInstance(DbNameConst::masterDBConnectName)->pushRecieveOrder($tempOrder);
//\Our\Common::redisPublish('\Business\Order\OrderServiceModel','pushRecieveOrder',array($tempOrder));
//\Business\Order\OrderServiceModel::getInstance(DbNameConst::masterDBConnectName)->pushRecieveOrder($tempOrder);
\Our\Common::redisPublish('\Business\Order\OrderServiceModel','pushRecieveOrder',array($tempOrder));
}
}
}
......
......@@ -314,52 +314,58 @@ class Push
{
$push = \Yaf\Registry::get('config')->get('push');
$conf = \Yaf\Registry::get('config')->get('redis.database.params');
if ($push['open']) {
if(!empty($this->data)){
$redis=new \Redis();
$redis->connect($conf['host'], $conf['port']);
if(!empty($conf['password'])){
$redis->auth($conf['password']);
}
$message['data'] = $this->data;
$message['uid'] = !empty($this->uid)?$this->uid:ApiConst::zero;
// $message['data']=array_slice($message['data'],2,14);
$message = json_encode($message);
$key=md5($message);
$redis->set($key,$message);
$message=$key;
$message = $message . "\r\n";
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
if (!@socket_connect($socket, $push['host'], $push['port'])) {
$this->errorCode = CodeConfigModel::pushConnectError;
return false;
}
// @socket_connect($socket, $push['host'], $push['port']) or die("推送连接失败");
$num = ApiConst::zero;
$length = strlen($message);
do {
$buffer = substr($message, $num);
$ret = @socket_write($socket, $buffer);
$num += $ret;
} while ($num < $length);
$ret = '';
do {
$buffer = @socket_read($socket, 1024, PHP_BINARY_READ);
$ret .= $buffer;
} while (strlen($buffer) == 1024);
socket_close($socket);
$server_data = json_decode($ret, true);
if ($server_data['status'] == 1) {
try{
if ($push['open']) {
if(!empty($this->data)){
$redis=new \Redis();
$redis->connect($conf['host'], $conf['port']);
if(!empty($conf['password'])){
$redis->auth($conf['password']);
}
$message['data'] = $this->data;
$message['uid'] = !empty($this->uid)?$this->uid:ApiConst::zero;
// $message['data']=array_slice($message['data'],2,14);
$message = json_encode($message);
$key=md5($message);
$redis->set($key,$message);
$message=$key;
$message = $message . "\r\n";
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
if (!@socket_connect($socket, $push['host'], $push['port'])) {
$this->errorCode = CodeConfigModel::pushConnectError;
return false;
}
// @socket_connect($socket, $push['host'], $push['port']) or die("推送连接失败");
$num = ApiConst::zero;
$length = strlen($message);
do {
$buffer = substr($message, $num);
$ret = @socket_write($socket, $buffer);
$num += $ret;
} while ($num < $length);
$ret = '';
do {
$buffer = @socket_read($socket, 1024, PHP_BINARY_READ);
$ret .= $buffer;
} while (strlen($buffer) == 1024);
socket_close($socket);
$server_data = json_decode($ret, true);
if ($server_data['status'] == 1) {
unset($this->data);
return true;
}
$redis->close();
unset($this->data);
return true;
unset($redis);
}
unset($this->data);
unset($redis);
} else {
$this->errorCode = CodeConfigModel::pushIsNotOpen;
return false;
}
} else {
$this->errorCode = CodeConfigModel::pushIsNotOpen;
return false;
}catch(\Exception $ex){
echo $ex->getMessage();
}
}
/**
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment