收银机订单打印回执
This commit is contained in:
@@ -401,6 +401,53 @@ class Cashier extends Base
|
|||||||
Log::info('修改购物车时[error]->>>>>' . $e->getMessage());
|
Log::info('修改购物车时[error]->>>>>' . $e->getMessage());
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case 'order_print_status':
|
||||||
|
// 订单打印状态 收银机
|
||||||
|
// 打印成功
|
||||||
|
if(!empty($message['print_status']) && $message['print_status'] == 1 && $message['order_id'] && $message['print_id']) {
|
||||||
|
$order = Db::name('tb_order_info')->where(['id' => $message['order_id']])->find();
|
||||||
|
$print = Db::name('tb_print_machine')->where(['id' => $message['print_id'], 'shop_id' => $message['shop_id']])->find();
|
||||||
|
if($order && $print) {
|
||||||
|
$is_insert = true;
|
||||||
|
$insert_arr = [
|
||||||
|
'id' => $message['print_id'],
|
||||||
|
'name' => $print['name'],
|
||||||
|
'time' => date('Y-m-d H:i:s'),
|
||||||
|
];
|
||||||
|
if(!empty($order['print_status'])) {
|
||||||
|
$print_status_arr = json_decode($order['print_status'], true);
|
||||||
|
foreach ($print_status_arr as $k => $v) {
|
||||||
|
if($v['id'] == $message['print_id']) {
|
||||||
|
// 已经记录过,无需在插入
|
||||||
|
$is_insert = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$insert_print_status_arr = array_merge($print_status_arr, [$insert_arr]);
|
||||||
|
}else {
|
||||||
|
$insert_print_status_arr = [
|
||||||
|
$insert_arr
|
||||||
|
];
|
||||||
|
}
|
||||||
|
if($is_insert) {
|
||||||
|
Db::name('tb_order_info')->where(['id' => $message['order_id'], 'shop_id' => $message['shop_id']])->update(['print_status' => json_encode($insert_print_status_arr, JSON_UNESCAPED_UNICODE)]);
|
||||||
|
}
|
||||||
|
$rand = 'cashier_print_status' . Random::build();
|
||||||
|
$snd_data = [
|
||||||
|
'msg' => '订单打印通知回执',
|
||||||
|
'type' => 'cashier',
|
||||||
|
'status' => 1,
|
||||||
|
'operate_type' => 'order_print_status',
|
||||||
|
'data_type' => '',
|
||||||
|
'msg_id' => $rand,
|
||||||
|
'data' => []
|
||||||
|
];
|
||||||
|
self::gateway_query('sendToClient', [$client_id, json_encode($snd_data)]);
|
||||||
|
}else {
|
||||||
|
Gateway::sendToClient($client_id, json_encode(['msg' => '订单或者打印机不存在']));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user