| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- <?php
- namespace Tests\Services\OrderService;
- use App\Logistic;
- use App\OracleDOCOrderHeader;
- use App\Order;
- use App\Owner;
- use App\Services\OrderService;
- use App\Shop;
- use Illuminate\Foundation\Testing\RefreshDatabase;
- use Illuminate\Foundation\Testing\WithFaker;
- use Tests\TestCase;
- class CreateOrFindOrderTest extends TestCase
- {
- use RefreshDatabase;
- /**
- * @var OrderService $orderService
- */
- public $orderService;
- public function setUp(): void
- {
- parent::setUp();
- $this->orderService = app('OrderService');
- }
- /**
- * @test
- */
- public function createOrFindOrder()
- {
- $orderHeader = OracleDOCOrderHeader::query()->where('sostatus',99)->orderByDesc('addtime')->first();
- Logistic::query()->firstOrCreate(['code'=>$orderHeader->userdefine1,'name'=>'']);
- $owner = Owner::query()->firstOrCreate(['code'=>$orderHeader->customerid,'name'=>'']);
- Shop::query()->firstOrCreate(['name'=>$orderHeader->issuepartyname,'owner_id'=>$owner->id]);
- app('WarehouseService')->firstOrCreate(["code"=>$orderHeader->warehouseid],["code"=>$orderHeader->warehouseid,"name"=>$orderHeader->warehouseid]);
- if(!$orderHeader){
- $this->assertNull($orderHeader);
- return;
- }
- $this->orderService->createOrFindOrder($orderHeader);
- $order = Order::query()->where('code',$orderHeader->orderno)->first();
- $this->assertNotNull($order);
- $this->assertEquals($order->code,$orderHeader->orderno);
- }
- }
|