TestController.php 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Components\AsyncResponse;
  4. use App\Components\Database;
  5. use App\Components\ErrorPush;
  6. use App\MaterialBox;
  7. use App\MaterialBoxModel;
  8. use App\Order;
  9. use App\OrderDetail;
  10. use App\OrderIssue;
  11. use App\OrderIssueRejectedBill;
  12. use App\RejectedBill;
  13. use App\Services\common\BatchUpdateService;
  14. use App\Services\OracleDocAsnHerderService;
  15. use App\Services\OrderRejectedBillRelationService;
  16. use App\Services\OrderRejectingStatusService;
  17. use App\Services\RejectedService;
  18. use App\Services\WaybillService;
  19. use App\User;
  20. use App\Waybill;
  21. use App\WorkOrder;
  22. use Illuminate\Database\Capsule\Manager;
  23. use Illuminate\Database\DatabaseManager;
  24. use Illuminate\Foundation\Auth\AuthenticatesUsers;
  25. use Illuminate\Http\Request;
  26. use Illuminate\Support\Facades\Cache;
  27. use Illuminate\Support\Facades\DB;
  28. use Illuminate\Support\Facades\Hash;
  29. use Illuminate\Support\Facades\Log;
  30. use Oursdreams\Export\Export;
  31. use Workerman\Worker;
  32. class TestController extends Controller
  33. {
  34. use AsyncResponse, ErrorPush, Database;
  35. const ASNREFERENCE_2 = 'ASNREFERENCE2';
  36. public function __construct()
  37. {
  38. $this->data["active_test"] = "active";
  39. }
  40. public function method(Request $request, $method)
  41. {
  42. try {
  43. return call_user_func([$this, $method], $request);
  44. }catch (\BadMethodCallException $e){
  45. dd("方法不存在");
  46. }
  47. }
  48. public function test(Request $request){
  49. dd(array_filter(array_unique(preg_split('/[,, ]+/u', "125,456,888, 6 , ,"))));
  50. }
  51. public function testOrder()
  52. {
  53. /** @var OrderRejectedBillRelationService $service */
  54. $service = app('OrderRejectedBillRelationService');
  55. $service->orderSyncRejectedBill(Order::query()->find(12));
  56. }
  57. public function testRejectedBill()
  58. {
  59. /** @var OrderRejectedBillRelationService $service */
  60. $service = app(OrderRejectedBillRelationService::class);
  61. /** @var RejectedBill $item */
  62. $item = RejectedBill::query()->find(2);
  63. $service->rejectedBillSyncOrder($item);
  64. }
  65. public function getOrder()
  66. {
  67. $query = Order::query()->select('id')->where('client_code','22011700000161');
  68. dd(OrderDetail::query()->whereIn('order_id',$query)->get());
  69. }
  70. public function sync_order_issue()
  71. {
  72. $items = OrderIssueRejectedBill::query()->with('orderIssue')->get();
  73. $item_array = $items->chunk(500);
  74. foreach ($item_array as $items){
  75. $insert_params = [];
  76. $update_params = [['logistic_number_return','order_id']];
  77. foreach ($items as $item){
  78. if (!$item->orderIssue) continue;
  79. $insert_params[$item->orderIssue->order_id] = [
  80. 'order_id' => $item->orderIssue->order_id,
  81. 'is_new_rejecting' => $item->orderIssue->is_new_rejecting,
  82. 'rejecting_status' => $item->orderIssue->rejecting_status
  83. ];
  84. $update_params[] = ['logistic_number_return' => $item->logistic_number_return,'order_id' => $item->orderIssue->order_id];
  85. }
  86. $this->batchOrderIssueRejectedBIll($update_params);
  87. $items = OrderDetail::query()->whereIn('order_id',array_keys($insert_params))->get()->map(function($item){
  88. return $item->order_id;
  89. })->toArray();
  90. $insert_params = array_filter($insert_params,function($item)use($items){
  91. return !in_array($item['order_id'],$items) && !is_null($item['order_id']);
  92. });
  93. if (count($insert_params) == 0) continue;
  94. OrderDetail::query()->insert(array_values($insert_params));
  95. }
  96. }
  97. public function batchOrderIssueRejectedBIll($array)
  98. {
  99. /** @var BatchUpdateService $service */
  100. $service = app(BatchUpdateService::class);
  101. $service->batchUpdate('order_issue_rejected_bill',$array);
  102. }
  103. public function testQuery()
  104. {
  105. /** @var OracleDocAsnHerderService $oracleDocAsnHerderService */
  106. $oracleDocAsnHerderService = app(OracleDocAsnHerderService::class);
  107. $asnHerders = $oracleDocAsnHerderService->getWmsAsnOnStartDateCreate('2022-01-20 16:38:00');
  108. dd($asnHerders);
  109. }
  110. }