procurement=$procurement; } /** * Execute the job. * * @return void */ public function handle() { /** @var ProcurementService $procurementService*/ /**@var ConfigurationService $configurationService */ $configurationService=app(ConfigurationService::class); $receive_time=$configurationService->getReceiveTime(); $priceCoefficient=$configurationService->getPriceCoefficient(); $procurementService=app(ProcurementService::class); $procurementQuotation=$procurementService->screenLowestQuotation($this->procurement->id); if (!$procurementQuotation){ $this->procurement->update(['status'=>3]); return; } if(!$this->procurement->unit_price)$this->unit_price=$priceCoefficient*$procurementQuotation['offer']; else $this->unit_price=$this->procurement->unit_price; try{ $this->procurement->update([ 'status'=>2, 'unit_price'=>$this->unit_price, 'cost_price'=>$procurementQuotation['offer'], 'supplier_id'=>$procurementQuotation['supplier_id'], 'deadline'=>Carbon::parse(Carbon::now()->toDateTimeString())->subHours(-$receive_time)->toDateTimeString(), ]); dispatch(new ProcurementReceive($this->procurement))->delay(now()->addHours($receive_time)); //可从系统配置获取 dispatch(new ProcurementWaitConfirmInform($this->procurement)); }catch (\Exception $e){ LogService::log(__METHOD__,"ERROR-采购延时选定最低报价供应商",$this->procurement->toJson()." | ".$e->getMessage()); } } }