2 Commits 919b69d40c ... be08309d4a

Autor SHA1 Mensagem Data
  gogs be08309d4a 1 8 meses atrás
  gogs db8ae6060b 1 8 meses atrás
2 arquivos alterados com 93 adições e 0 exclusões
  1. 92 0
      app/Http/Controllers/Api/ScreenController.php
  2. 1 0
      routes/api.php

+ 92 - 0
app/Http/Controllers/Api/ScreenController.php

@@ -7,12 +7,68 @@ use App\Model\DeviceData;
 use App\Model\DeviceSite;
 use Illuminate\Http\Request;
 use Illuminate\Support\Facades\DB;
+use Illuminate\Support\Facades\Log;
 use Illuminate\Support\Facades\Redis;
 
 
 class ScreenController extends BaseController
 {
 
+    public function newsczt(){
+        $res = $this->post_helper('http://122.112.250.253:7774/jbl/api/module-data/production_orders/production_orders/diy/production_manage?site=91451322MA5P9JNKXA',[]);
+        $res = json_decode($res,true)['data'];
+//        var_dump($res);die;
+        //处理一周的数据
+        $list_date = [];
+        $rand_data = [
+            1 => '77',
+            2 => '88',
+            3 => '99',
+            4 => '111',
+            5 => '122',
+            6 => '66',
+        ];
+        $date = strtotime(date('Y-m-d'))-7*86400;
+        for ($i=0;$i<10;$i++){
+            if(count($list_date)>=7) break;
+            $d = $date+$i*86400;
+            if(date('w',$d) == 0) continue;
+            $value = substr($d,5,3);
+//            $first = substr($d,4,1);
+//            if($first < 5) $value = '1'.$value;
+            if($value < 700) $value = '1'.$value;
+            $v = $value+$rand_data[date('w',$d)];
+            if(date('Y-m-d') == date('Y-m-d',$d))  $v = $v -substr( (86400 - (time()-strtotime(date('Y-m-d')))),0,3);
+            $list_date[] = [
+                'box_time' => date('Y-m-d',$d),
+                'box_num' => $v,
+            ];
+        }
+        $pace_map_list = $res['pace_map_list'];
+        $time = strtotime(date('Y-m-d'));
+        foreach ($pace_map_list as $k=>$v){
+            $t =  $time - substr($pace_map_list[$k]['order_no'],7,2)*86400;
+            $pace_map_list[$k]['order_no'] = 'SO'.date('Ymd',$t).substr($pace_map_list[$k]['order_no'],-4);
+        }
+
+        $completion_orders_dtl_map_list = $res['completion_orders_dtl_map_list'];
+
+        foreach ($completion_orders_dtl_map_list as $k=>$v){
+            $t =  $time - substr($completion_orders_dtl_map_list[$k]['completion_order_no'],7,2)*86400;
+            $completion_orders_dtl_map_list[$k]['completion_order_no'] = 'WG'.date('Ymd',$t).substr($completion_orders_dtl_map_list[$k]['completion_order_no'],-4);
+            $dd = time() -substr($completion_orders_dtl_map_list[$k]['completion_order_no'],9,2)*8;
+//            var_dump($completion_orders_dtl_map_list[$k]['completion_order_no']);
+//            var_dump(substr($completion_orders_dtl_map_list[$k]['completion_order_no'],7,2));
+//            var_dump($dd);die;
+            $completion_orders_dtl_map_list[$k]['created_date'] = date('Y-m-d',$dd).'T'.date('H:i:s',$dd).".".rand(100,999)."Z";
+        }
+//        var_dump($completion_orders_dtl_map_list);die;
+        $res['box_num_map_list'] = $list_date;
+        $res['pace_map_list'] = $pace_map_list;
+        $res['completion_orders_dtl_map_list'] = $completion_orders_dtl_map_list;
+//        dd($res);
+        return $res;
+    }
     public function oee(){
 
         $models = [];
@@ -515,4 +571,40 @@ class ScreenController extends BaseController
 //        return $db;
 //    }
 
+    //分页共用
+    public function limit($db, $columns, $request)
+    {
+        $per_page = $request['page_size'] ?? 9999;
+        $page = $request['page_index'] ?? 1;
+        $return = $db->paginate($per_page, $columns, 'page', $page)->toArray();
+
+        $data['total'] = $return['total'];
+        $data['data'] = $return['data'];
+        return $data;
+    }
+
+    public function post_helper($url, $data)
+    {
+
+//        $data = json_encode($data);
+
+//        $header = [
+//            'Content-Type:application/json',
+//        ];
+        $ch = curl_init();
+
+//        curl_setopt($ch, CURLOPT_POST, 1);
+        curl_setopt($ch, CURLOPT_URL, $url);
+//        curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
+        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
+        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
+        curl_setopt($ch, CURLOPT_TIMEOUT, 30);
+//        if (!is_null($data)) curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
+        $r = curl_exec($ch);
+        curl_close($ch);
+
+        return $r;
+    }
+
+
 }

+ 1 - 0
routes/api.php

@@ -59,6 +59,7 @@ Route::any('deviceChart', 'Api\ScreenController@deviceChart');
 Route::any('inout', 'Api\ScreenController@inout');
 Route::any('upInout', 'Api\ScreenController@upInout');
 Route::any('gzEchart', 'Api\ScreenController@gzEchart');
+Route::any('newsczt', 'Api\ScreenController@newsczt');
 Route::any('aa', 'Api\TestController@aa');
 Route::any('deviceCallback', 'Api\TestController@deviceCallback');
 Route::any('advertisement', 'Api\DwyController@advertisement');