TestController.php 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Components\AsyncResponse;
  4. use App\Components\ErrorPush;
  5. use App\ErrorTemp;
  6. use App\Feature;
  7. use App\MaterialBoxModel;
  8. use App\Owner;
  9. use App\OwnerFeeDetail;
  10. use App\OwnerPriceOperation;
  11. use App\OrderPackageCountingRecord;
  12. use Illuminate\Http\Request;
  13. use Illuminate\Support\Facades\Cache;
  14. use Illuminate\Support\Facades\DB;
  15. use Illuminate\Support\Facades\Http;
  16. class TestController extends Controller
  17. {
  18. use AsyncResponse,ErrorPush;
  19. const ASNREFERENCE_2 = 'ASNREFERENCE2';
  20. private $data = [];
  21. public function __construct()
  22. {
  23. $this->data["active_test"] = "active";
  24. }
  25. public function method(Request $request, $method)
  26. {
  27. return call_user_func([$this, $method], $request);
  28. }
  29. public function lightUp()
  30. {
  31. app("CacheShelfService")->lightUp('HAIB1-02-02','3','2');
  32. }
  33. public function lightOff()
  34. {
  35. $params = [
  36. "areaCode" => "1004",
  37. 'locCode' => "HAIB1-02-02",
  38. 'PTLAction' => 0,
  39. ];
  40. $response = Http::post(config('api.haiq.storage.light'), $params);
  41. return json_decode($response->body());
  42. }
  43. public function test()
  44. {
  45. MaterialBoxModel::query()->where("id","!=",1)->delete();
  46. MaterialBoxModel::query()->where("id",1)->update([
  47. "description" => "单商品料箱"
  48. ]);
  49. }
  50. public function addRecord()
  51. {
  52. $yesterday = '2021-06-08';
  53. $sql = <<<sql
  54. SELECT DATE_FORMAT(order_packages.created_at,'%Y-%m-%d') date,IFNULL(order_packages.measuring_machine_id,0) measuring_machine_id,order_packages.owner_id,
  55. SUM(CASE WHEN order_packages.weighed_at IS NOT NULL THEN 1 ELSE 0 END) AS count,
  56. COUNT(1) total FROM order_packages LEFT JOIN orders ON order_packages.order_id=orders.id
  57. WHERE orders.wms_status != '订单取消'
  58. AND order_packages.created_at BETWEEN '{$yesterday} 00:00:00' AND '{$yesterday} 23:59:59' GROUP BY date,order_packages.measuring_machine_id,order_packages.owner_id
  59. sql;
  60. $result = DB::select(DB::raw($sql));
  61. if (!$result) {
  62. $obj = [
  63. "targeted_at" => $yesterday,
  64. "un_weigh_count" => 0,
  65. "total_count" => 0,
  66. "measuring_machine_id" => 0,
  67. "owner_id" => 0
  68. ];
  69. $model = OrderPackageCountingRecord::query()->create($obj);
  70. Cache::put("weight.".$yesterday, $obj);
  71. }else{
  72. $objs = [];
  73. foreach ($result as $v){
  74. $obj = [
  75. "targeted_at" => $v->date,
  76. "un_weigh_count" => $v->count,
  77. "total_count" => $v->total,
  78. "measuring_machine_id" => $v->measuring_machine_id,
  79. "owner_id" => $v->owner_id
  80. ];
  81. $model = OrderPackageCountingRecord::query()->create($obj);
  82. array_push($objs, $obj);
  83. }
  84. Cache::put("weight.".$yesterday, $objs);
  85. }
  86. }
  87. public function redis()
  88. {
  89. Cache::pull('weight.2021-06-06');
  90. }
  91. }