|
@@ -0,0 +1,65 @@
|
|
|
|
+<?php
|
|
|
|
+
|
|
|
|
+namespace App\Jobs;
|
|
|
|
+
|
|
|
|
+use App\Service\DwyService;
|
|
|
|
+use App\Service\LabelDealService;
|
|
|
|
+use Illuminate\Bus\Queueable;
|
|
|
|
+use Illuminate\Contracts\Queue\ShouldQueue;
|
|
|
|
+use Illuminate\Foundation\Bus\Dispatchable;
|
|
|
|
+use Illuminate\Queue\InteractsWithQueue;
|
|
|
|
+use Illuminate\Queue\SerializesModels;
|
|
|
|
+use Illuminate\Support\Facades\Log;
|
|
|
|
+use Symfony\Component\Console\Output\ConsoleOutput;
|
|
|
|
+use Symfony\Component\Console\Output\OutputInterface;
|
|
|
|
+
|
|
|
|
+class LabelDealCsJob implements ShouldQueue
|
|
|
|
+{
|
|
|
|
+ use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
|
|
|
|
+
|
|
|
|
+ protected $data;
|
|
|
|
+ protected $header;
|
|
|
|
+ protected $id;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * Create a new job instance.
|
|
|
|
+ *
|
|
|
|
+ * @return void
|
|
|
|
+ */
|
|
|
|
+ public function __construct($data,$header)
|
|
|
|
+ {
|
|
|
|
+ $this->data = $data;
|
|
|
|
+ $this->header = $header;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public function handle()
|
|
|
|
+ {
|
|
|
|
+ try {
|
|
|
|
+ $data = $this->data;
|
|
|
|
+ $dv = $data['key'];
|
|
|
|
+ $return = $box_list = [];
|
|
|
|
+ Log::channel('apiLog')->info('测试--出库源数据', ["param" => $data]);
|
|
|
|
+
|
|
|
|
+ //处理数据
|
|
|
|
+ LabelDealService::getInstance()->clearData($data,$return,$box_list);
|
|
|
|
+ Log::channel('apiLog')->info('测试--出库(清洗数据)', ["param" => $return]);
|
|
|
|
+
|
|
|
|
+ //调用外部方法
|
|
|
|
+ list($lead_bind,$lead_out) = DwyService::getInstance()->setBoxData($this->header,$dv,$return,$box_list,$data);
|
|
|
|
+
|
|
|
|
+ //删除限制
|
|
|
|
+ DwyService::getInstance()->delLimitForBoxOut($lead_bind);
|
|
|
|
+
|
|
|
|
+ //调用保存接口 cs todo
|
|
|
|
+ LabelDealService::getInstance()->boxOut($lead_bind,$lead_out,$this->header,$this->id);
|
|
|
|
+ }catch (\Throwable $exception){
|
|
|
|
+ Log::channel('apiLog')->info('测试--队列捕获(出库异常)', ["message" => $exception->getFile() . "|" . $exception->getLine() . "|" . $exception->getMessage(). "|" . $exception->getCode()]);
|
|
|
|
+ $this->delete();
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ protected function echoMessage(OutputInterface $output)
|
|
|
|
+ {
|
|
|
|
+ $output->writeln($this->data);
|
|
|
|
+ }
|
|
|
|
+}
|