|
|
@@ -0,0 +1,74 @@
|
|
|
+<?php
|
|
|
+
|
|
|
+namespace Tests\Unit;
|
|
|
+
|
|
|
+use App\Authority;
|
|
|
+use App\Commodity;
|
|
|
+use App\CommodityBarcode;
|
|
|
+use App\MeasuringMachine;
|
|
|
+use App\Order;
|
|
|
+use App\OrderIssue;
|
|
|
+use App\OrderIssueRejectedBill;
|
|
|
+use App\OrderPackage;
|
|
|
+use App\OrderPackageCommodities;
|
|
|
+use App\RejectedBill;
|
|
|
+use App\RejectedBillItem;
|
|
|
+use App\Role;
|
|
|
+use App\User;
|
|
|
+use Illuminate\Support\Facades\DB;
|
|
|
+use Tests\TestCase;
|
|
|
+use Illuminate\Foundation\Testing\WithFaker;
|
|
|
+use Illuminate\Foundation\Testing\RefreshDatabase;
|
|
|
+use function Matrix\add;
|
|
|
+
|
|
|
+class OrderIssueTest extends TestCase{
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ public function testSyncRejectingStatusComparisonIsEqual()
|
|
|
+ {
|
|
|
+ $orderIssue = factory(OrderIssue::class)->create(['rejecting_status' => '未退回']);
|
|
|
+ $orderPackage = factory(OrderPackage::class)->create(['order_id'=>$orderIssue->order->id]);
|
|
|
+ $commodities = factory(Commodity::class)->times(3)->create();
|
|
|
+ $orderPackageCommodities = collect();
|
|
|
+ $commodities_barcodes = collect();
|
|
|
+ foreach ($commodities as $commodity){
|
|
|
+ $commodities_barcode = factory(CommodityBarcode::class)->create(['commodity_id'=>$commodity->id]);
|
|
|
+ $commodities_barcodes->push($commodities_barcode);
|
|
|
+ $orderPackageCommodity = factory(OrderPackageCommodities::class)->create(['order_package_id'=>$orderPackage->id,'amount'=>1,'commodity_id' =>$commodity->id]);
|
|
|
+ $orderPackageCommodities->push($orderPackageCommodity);
|
|
|
+ }
|
|
|
+ $rejectedBill = factory(RejectedBill::class)->create(['logistic_number_return' => $orderIssue->logistic_number_return]);
|
|
|
+
|
|
|
+ $rejectedBill_items = collect();
|
|
|
+ foreach ($commodities_barcodes as $commodities_barcode){
|
|
|
+ $item = factory(RejectedBillItem::class)->create(['id_rejected_bill'=>$rejectedBill->id,'barcode_goods' => $commodities_barcode->code,'amount'=>1]);
|
|
|
+ $rejectedBill_items->push($item);
|
|
|
+ }
|
|
|
+ $orderIssueRejectedBill = factory(OrderIssueRejectedBill::class)->create(['order_issue_id'=>$orderIssue->id,'logistic_number_return'=>$rejectedBill->logistic_number_return]);
|
|
|
+ $orderIssue->update(['logistic_number_return' =>$rejectedBill->logistic_number_return ]);
|
|
|
+ $orderIssue= OrderIssue::query()->find($orderIssue->id);
|
|
|
+ $orderIssue->syncRejectingStatus();
|
|
|
+
|
|
|
+ $this->assertEquals($orderIssue->rejecting_status,"完全退回");
|
|
|
+ $orderIssue->order->delete();
|
|
|
+ $orderIssue->forceDelete();
|
|
|
+ $orderPackage->forceDelete();
|
|
|
+ $orderPackageCommodities->map(function($item){
|
|
|
+ $item->delete();
|
|
|
+ return 1;
|
|
|
+ });
|
|
|
+ $rejectedBill->forceDelete();
|
|
|
+ $rejectedBill_items->map(function($item){
|
|
|
+ $item->delete();
|
|
|
+ return 1;
|
|
|
+ });
|
|
|
+ $orderIssueRejectedBill->delete();
|
|
|
+ }
|
|
|
+
|
|
|
+ public function testOrderIssue()
|
|
|
+ {
|
|
|
+ $orderIssue = OrderIssue::query()->find(1);
|
|
|
+
|
|
|
+ }
|
|
|
+}
|