暂无描述

SyncMjWarehouse.php 1.6KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. <?php
  2. namespace App\Console\Commands;
  3. use Illuminate\Console\Command;
  4. use DB;
  5. use App\Order;
  6. class SyncMjWarehouse extends Command {
  7. protected $signature = 'SyncMjWarehouse';
  8. /**
  9. * The console command description.
  10. *
  11. * @var string
  12. */
  13. protected $description = '同步库存';
  14. public function handle()
  15. {
  16. $this->SyncMjWarehouse();
  17. }
  18. public function SyncMjWarehouse(){
  19. $params = array();
  20. $params['eshopCode'] = config('constants.ESHOP_CODE');
  21. //$params['warehouseCode'] = config('constants.ESHOP_CODE'); //仓库编码
  22. $params['pageIndex'] = '1';
  23. $params['pageSize'] = '20';
  24. $mjRes = Order::mjWarehouseSkuGet($params);
  25. if($mjRes == false){
  26. exit('获取卖家云数据出错');
  27. }
  28. //插入第一页:
  29. $this->insertData( $mjRes['resultSet']['skuList'] );
  30. $count = $mjRes['resultSet']['totalNum'];
  31. $pages = ceil($count / 20);
  32. //插入其他页面
  33. for($i=2; $i<=$pages; $i++){
  34. $params['pageIndex'] = $i;
  35. $mjRes = Order::mjWarehouseSkuGet($params);
  36. $this->insertData( $mjRes['resultSet']['skuList'] );
  37. }
  38. }
  39. /**
  40. * 获取订单信息,可用来判断订单是否存在,同步订单状态
  41. */
  42. public function insertData($data){
  43. foreach($data as $k=>$sku){
  44. $code = $sku['skuProductCode'];
  45. $up = array();
  46. $up['quantity'] = $sku['quantity'];
  47. $up_re = DB::table('goods_skus')->where('code', $code)->update($up);
  48. }
  49. return true;
  50. }
  51. }