getList([ ['is_video_number', '=', 1], ['is_sync_order', 'in', [0, 2]], ['order_status', '=', 3], ], $field, '', 'o', $join, '', 30); if ($orderInfo) { foreach ($orderInfo as $item) { if (in_array($item['pay_type'], ['alipay', 'zmgopay', 'zmxxpay', 'huabie'])) { $this->pushOrder($item); } } } return success(); } /*** * 推送订单 * @param $item * @return void */ public function pushOrder($item) { $temp = [ 'TRADE_CREATED' => '订单创建', 'WAIT_PAY' => '等待支付', 'PAID' => '支付成功', 'INIT' => '冻结', 'PARTIAL_DELIVERED' => '部分发货', 'DELIVERED' => '全部发货', 'RECEIVED_CONFIRM' => '确认收货', 'TIMEOUT_CLOSED' => '超时取消', 'REFUND_CLOSED' => '全部退款' ]; $apiApp = new MinCode($item['site_id']); $info = $apiApp->miniOrderQuery($item['out_trade_no'], $item['ali_openid']); if ($info && $info['code'] == 10000 && $info['status'] == 'DELIVERED') { //已发货同步 model('order')->update(['is_sync_order' => 1, 'sync_msg' => ''], ['order_id' => $item['order_id']]); } else if ($info['code'] == 10000 && $info['status'] == 'PAID') { $res = event('OrderDelivery', ['order_id' => $item['order_id']]);//设置发货同步 if ($res[0]['code'] == 0) { model('order')->update(['is_sync_order' => 1], ['order_id' => $item['order_id']]); } else { model('order')->update(['is_sync_order' => 2, 'sync_msg' => $res[0]['message']], ['order_id' => $item['order_id']]); } } else if ($info['code'] != 10000) { model('order')->update(['is_sync_order' => 3, 'sync_msg' => $info['sub_msg']], ['order_id' => $item['order_id']]); } else if ($info['code'] == 10000) { $is_sync_order = 2; if (in_array($info['status'], ['RECEIVED_CONFIRM', 'REFUND_CLOSED', 'TIMEOUT_CLOSED'])) { $is_sync_order = 1; } model('order')->update(['is_sync_order' => $is_sync_order, 'sync_msg' => $temp[$info['status']]], ['order_id' => $item['order_id']]); } } }