| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- <?php
- namespace Tests\Services\OrderService\FindOrCreateByClientCodeTest;
- use App\Logistic;
- use App\OracleDOCOrderHeader;
- use App\Order;
- use App\Owner;
- use App\Services\OrderService;
- use App\Shop;
- use App\Warehouse;
- use Illuminate\Foundation\Testing\RefreshDatabase;
- use Illuminate\Foundation\Testing\WithFaker;
- use Tests\TestCase;
- class FindOrCreateByClientCodeTest extends TestCase
- {
- use RefreshDatabase;
- /** @var OrderService $service */
- public $service;
- private $data;
- public function setUp(): void
- {
- parent::setUp(); // TODO: Change the autogenerated stub
- $this->service=app('OrderService');
- $orderHeader = new OracleDOCOrderHeader();
- $orderHeader->orderno = md5('订单编号');
- $orderHeader->c_contact= '京东旗舰店';
- $orderHeader->c_tel2 = md5('承运商');
- $orderHeader->c_province = md5('收货人');
- $orderHeader->c_city = md5('shou');
- $orderHeader->c_district = md5('shou');
- $orderHeader->c_address1 = md5('shou');
- $orderHeader->soreference1 = md5('客户订单号');
- $orderHeader->userdefine1 = $this->data['userdefine1'];
- $orderHeader->warehouseid = $this->data['warehouse_code'];
- $orderHeader->customerid = $this->data['customerid'];
- $orderHeader->issuepartyname =$this->data['issuepartyname'];
- $orderHeader->setAppends(['orderType'=>['codename_c'=>$this->data['orderType']]]);
- $this->data['orderHeader'] = $orderHeader;
- $this->data['logistic'] = Logistic::query()->firstOrCreate(['code'=>$this->data['userdefine1'],'name'=>'测试物流']);
- $this->data['owner'] = Owner::query()->firstOrCreate(['code'=>$this->data['customerid'],'name'=>'测试货主']);
- $this->data['shop'] =Shop::query()->firstOrCreate(['name'=>$this->data['issuepartyname'],'owner_id'=>$this->data['owner']->id]);
- $this->data['warehouse'] = Warehouse::query()->firstOrCreate(["code"=>$this->data['warehouse_code'],"name"=>'测试仓库']);
- }
- /**
- * @test
- */
- public function findOrCreateByClientCode()
- {
- $order = $this->service->findOrCreateByClientCode($this->data['orderHeader']->soreference1);
- $this->assertNotEmpty($this->data['orderHeader']['soreference1']);
- $this->assertNotEmpty($order);
- $this->assertNotNull($order->client_code);
- $this->assertNotNull($order->warehouse_id);
- }
- public function tearDown(): void
- {
- cache()->flush();
- $this->data['logistic']->delete();
- $this->data['owner']->delete();
- $this->data['shop']->delete();
- $this->data['warehouse']->delete();
- Order::query()->where('code',$this->data['orderHeader']['orderno'])->delete();
- parent::tearDown(); // TODO: Change the autogenerated stub
- }
- }
|