whereIn('order_number',$params['order_number']); } return $query; } public function get(array $params){ return $this->conditionQuery($params)->get(); } public function create(array $params){ return RejectedBill::query()->create($params); } /** * @param RejectedBill $rejectedBill */ public function syncOrderIssue($rejectedBill) { $orderIssue = $rejectedBill->orderIssue()->first(); if($rejectedBill['logistic_number'] === '原单退回'){ // 原单退回 $orderIssue = OrderIssue::query()->with('order')->whereHas('order',function($query)use($rejectedBill){ $query->where('client_code',$rejectedBill['order_number']); })->first(); } if(!isset($orderIssue)){ // 有对应的问题发货订单 $orderHeader = OracleDOCOrderHeader::query()->where('soreference1',function($query)use($rejectedBill){ $query->select('asnreference2')->from('DOC_ASN_HEADER')->where('asnreference3',$rejectedBill->logistic_number_return)->first(); })->first(); // $orderHeader = OracleDOCOrderHeader::query()->where('soreference1',function($query)use($rejectedBill){ // $query->select('asnreference2')->from('DOC_ASN_HEADER')->where('asnreference3',$rejectedBill->logistic_number_return)->first(); // })->first(); if(!isset($orderHeader))return; $orderIssue = OrderIssue::query()->with('order')->whereHas('order',function($query)use($orderHeader){ $query->where('code',$orderHeader->orderno); })->first(); } if(isset($orderIssue)){ // 更新问题件的退回单号 if($orderIssue['logistic_number_return']!=$rejectedBill['logistic_number_return']) $orderIssue->update(['logistic_number_return'=>$rejectedBill['logistic_number_return']]); //确认问题件有的时候需要更新状态和提示 $orderIssue->同步退单状态(); $orderIssue->update(['is_new_rejecting' => '有']); app('LogService')->log(__METHOD__,__FUNCTION__,'退回单同步问题件'.json_encode($rejectedBill).json_encode($orderIssue)); } } public function syncLoadedStatusByAsnHerder($asnHerders){ } }