TestController.php 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159
  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\OrderRejectedBillRelationService;
  15. use App\Services\OrderRejectingStatusService;
  16. use App\Services\RejectedService;
  17. use App\User;
  18. use App\Waybill;
  19. use Illuminate\Database\Capsule\Manager;
  20. use Illuminate\Database\DatabaseManager;
  21. use Illuminate\Foundation\Auth\AuthenticatesUsers;
  22. use Illuminate\Http\Request;
  23. use Illuminate\Support\Facades\DB;
  24. use Illuminate\Support\Facades\Hash;
  25. use Illuminate\Support\Facades\Log;
  26. use Oursdreams\Export\Export;
  27. class TestController extends Controller
  28. {
  29. use AsyncResponse, ErrorPush, Database;
  30. const ASNREFERENCE_2 = 'ASNREFERENCE2';
  31. public function __construct()
  32. {
  33. $this->data["active_test"] = "active";
  34. }
  35. public function method(Request $request, $method)
  36. {
  37. try {
  38. return call_user_func([$this, $method], $request);
  39. }catch (\BadMethodCallException $e){
  40. dd("方法不存在");
  41. }
  42. }
  43. public function test($main, $x)
  44. {
  45. return;
  46. $db = DB::connection("aliyunMysql");
  47. foreach ($db->select(DB::raw("select * from equipments where code like 'W4%' and info is not null and id <= 4972")) as $eq){
  48. $arr = str_split ($eq->code);
  49. if (strlen($main)==2){
  50. $arr1 = str_split ($main);
  51. $arr[4] = $arr1[0];
  52. $arr[5] = $arr1[1];
  53. }else{
  54. $arr[5] = $main;
  55. }
  56. $code = implode("",$arr);
  57. $obj = json_decode($eq->info);
  58. $obj->x +=$x;
  59. $db->insert("insert into equipments(code,parent_id,info,depth,width,created_at,updated_at,warehouse_detail_id)
  60. values(?,null,?,?,?,?,?,1)",[$code,json_encode($obj),$eq->depth,$eq->width,now()->toDateTimeString(),now()->toDateTimeString()]);
  61. $a = $db->selectOne("select * from equipments where parent_id is null and code = ? ",[$code]);
  62. foreach ($db->select("select * from equipments where parent_id = ?",[$eq->id]) as $item){
  63. $arr = str_split ($item->code);
  64. if (strlen($main)==2){
  65. $arr1 = str_split ($main);
  66. $arr[4] = $arr1[0];
  67. $arr[5] = $arr1[1];
  68. }else{
  69. $arr[5] = $main;
  70. }
  71. $code = implode("",$arr);
  72. $db->insert("insert into equipments(code,parent_id,info,depth,width,height,location_tab,created_at,updated_at,warehouse_detail_id)
  73. values(?,?,null,?,?,?,?,?,?,2)",[$code,$a->id,$item->depth,$item->width,$item->height,$item->location_tab,now()->toDateTimeString(),now()->toDateTimeString()]);
  74. }
  75. }
  76. }
  77. public function test2(){
  78. return;
  79. $db = DB::connection("aliyunMysql");
  80. foreach ($db->select("select * from equipments where (code like 'W3%') and info is not null") as $eq){
  81. $obj = json_decode($eq->info);
  82. $obj->x -= 105;
  83. $db->update("UPDATE equipments SET info = ? where id = ?",[json_encode($obj),$eq->id]);
  84. }
  85. }
  86. public function test1(Request $request){
  87. return;
  88. $x = 0;
  89. $a1 = 8 + 30;
  90. $a2 = 80 + 30;
  91. $a3 = 32 + 30;
  92. }
  93. use AuthenticatesUsers;
  94. public function test3($request){
  95. dd(Hash::make("wangyan"));
  96. }
  97. public function testOrder()
  98. {
  99. /** @var OrderRejectedBillRelationService $service */
  100. $service = app('OrderRejectedBillRelationService');
  101. $service->orderSyncRejectedBill(Order::find(3));
  102. }
  103. public function testRejectedBill()
  104. {
  105. /** @var OrderRejectedBillRelationService $service */
  106. $service = app(OrderRejectedBillRelationService::class);
  107. /** @var RejectedBill $item */
  108. $item = RejectedBill::query()->orderByDesc('id')->first();
  109. $service->rejectedBillSyncOrder($item);
  110. }
  111. public function getOrder()
  112. {
  113. $query = Order::query()->select('id')->where('client_code','22011700000161');
  114. dd(OrderDetail::query()->whereIn('order_id',$query)->get());
  115. }
  116. public function syncOrderIssue()
  117. {
  118. $items = OrderIssueRejectedBill::query()->with('orderIssue')->get();
  119. $item_array = $items->chunk(500);
  120. foreach ($item_array as $items){
  121. $insert_params = [];
  122. $update_params = [['logistic_number_return','order_id']];
  123. foreach ($items as $item){
  124. $insert_params[] = [
  125. 'order_id' => $item->orderIssue->order_id,
  126. 'is_new_rejecting' => $item->orderIssue->is_new_rejecting,
  127. 'rejecting_status' => $item->orderIssue->rejecting_status
  128. ];
  129. $update_params[] = ['logistic_number_return' => $item->logistic_number_return,'order_id' => $item->orderIssue->order_id];
  130. }
  131. $this->batchOrderIssueRejectedBIll($update_params);
  132. OrderDetail::query()->insert($insert_params);
  133. }
  134. }
  135. public function batchOrderIssueRejectedBIll($array)
  136. {
  137. /** @var BatchUpdateService $service */
  138. $service = app(BatchUpdateService::class);
  139. $service->batchUpdate('order_issue_rejected_bill',$array);
  140. }
  141. }