setPrinter(['order_id'=>$params['order_id'],'event'=>$params['type']])->print(); } } } public static function async_handle($params){ if(!empty($params)){ $p = new PrintOrders(); if(!empty($params['order_id'])&&!empty($params['type'])){ $orderInfo = Order::findOne($params['order_id']); if(!isset($params['print_type'])){ return; } switch ($params['print_type']){ case 0: // 平台 break; case 1: // 门店 $order = Order::findOne($params['order_id']); $orderInfo = StoreOrder::findOne(['order_no' => $order->order_no]); break; case 2: // 多商户 break; default: return; } $order_type = null; if(isset($params['order_type']))$order_type = $params['order_type']; $res = $p->setPrinter(['order_id'=>$params['order_id'],'event'=>$params['type'],'order_type'=>$order_type,'print_type'=>$params['print_type']])->print(); if ($res !== null) { // 开启打印,有打印结果 if($res['err'] == 0){ // 打印成功,修改订单打印状态,打印失败就不改了 $orderInfo->is_print = 1; $orderInfo->save(); } // 增加打印日志 $data['mch_id'] = $orderInfo->mch_id; $data['store_id'] = $orderInfo->store_id; $data['mall_id'] = $orderInfo->mall_id; $data['order_id'] = $orderInfo->id; $data['msg'] = $res['msg'] ?? ''; if ($res['err'] == 0) { //打印成功 $data['status'] = 1; }else{ $data['status'] = 0; } switch($params['type']){ case 'order_printer_config': // 下单 $data['type'] = 1; break; case 'pay_printer_config': // 支付 $data['type'] = 2; break; case 'confirm_printer_config': // 确认收货 $data['type'] = 3; break; case 'system_printer_config': // 后台 $data['type'] = 4; break; default: $data['type'] = 0; } PrintLog::setData($data); } } } } }