| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- <?php
- namespace App\Services;
- use App\Batch;
- use Exception;
- Class BatchService
- {
- /** @var StationTaskBatchService $stationTaskBatchService */
- private $stationTaskBatchService;
- public function __construct(){
- $this->stationTaskBatchService=null;
- }
- public function get(array $params)
- {
- $query = Batch::query();
- foreach ($params as $column=>$param){
- if (is_array($param))$query->whereIn($column,$param);
- else $query->where($column,$param);
- }
- return $query->get();
- }
- public function insert(array $insert)
- {
- $result = Batch::query()->insert($insert);
- if($result)$this->assignTasks($insert);
- return $result;
- }
- public function updateWhereIn($key,$values,$updateKeyValues){
- Batch::query()->whereIn($key,$values)->update($updateKeyValues);
- }
- /**
- * 为波次附加任务,已附加的重复任务不影响
- * @param Batch[] $batches
- * @throws Exception
- */
- public function assignTasks(array $batches)
- {
- $this->stationTaskBatchService=app('StationTaskBatchService');
- //按规则过滤需要的波次
- //分配
- $stationTaskBatches=$this->stationTaskBatchService->createByBatches($batches); //注册波次任务
- //注册料箱任务
- //注册商品任务
- //注册总任务
- //执行总任务
- }
- }
|