InOutOptionService.php 906 B

12345678910111213141516171819202122232425262728293031323334
  1. <?php
  2. namespace App\Service;
  3. use Illuminate\Support\Facades\Redis;
  4. class InOutOptionService extends Service
  5. {
  6. const OrderKeyQueue = 'InOutOrderNumber';
  7. public function setOrderNumber($data){
  8. if(! empty($data['data']['tagList'])){
  9. foreach ($data['data']['tagList'] as $value){
  10. Redis::lpush(self::OrderKeyQueue, json_encode($value));
  11. }
  12. }
  13. }
  14. public function getOrderNumber($data){
  15. $data = [];
  16. $tmp = [];
  17. while ($item = Redis::lpop(self::OrderKeyQueue)) {
  18. $order = json_decode($item, true);
  19. $order_it = $order['epc'] . $order['direction'];
  20. if(! in_array($order_it, $tmp)){
  21. $order['epc'] = hex2bin($order['epc']);
  22. $data[] = $order;
  23. $tmp[] = $order_it;
  24. }
  25. }unset($tmp);
  26. return [true, $data];
  27. }
  28. }