GetByWmsOrderTest.php 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. <?php
  2. namespace Tests\Services\WarehouseService\GetByWmsOrdersTest;
  3. use App\OracleBasCustomer;
  4. use App\OracleDOCOrderHeader;
  5. use App\Services\WarehouseService;
  6. use App\Warehouse;
  7. use Carbon\Carbon;
  8. use Illuminate\Foundation\Testing\RefreshDatabase;
  9. use Tests\TestCase;
  10. class GetByWmsOrderTest extends TestCase
  11. {
  12. use RefreshDatabase;
  13. /** @var WarehouseService $service */
  14. public $service;
  15. public $data = [];
  16. public function setUp(): void
  17. {
  18. parent::setUp();
  19. $this->service = app(WarehouseService::class);
  20. $basCustomers = OracleBasCustomer::query()->selectRaw('Customer_Type,CustomerId,Descr_C')->where('Customer_Type','WH')->get();
  21. foreach ($basCustomers as $basCustomer) {
  22. $this->data['data'][]['warehouseid'] = $basCustomer->customerid;
  23. }
  24. }
  25. public function testGetByWmsOrder()
  26. {
  27. $warehouses = $this->service->getByWmsOrders($this->data['data']);
  28. $warehouse_ids = data_get($this->data['data'],'*.warehouseid');
  29. $warehouse_s = Warehouse::query()->whereIn('code',$warehouse_ids)->get();
  30. $this->assertEquals($warehouses->count(),$warehouse_s->count());
  31. }
  32. }