cqpCow 2 anni fa
parent
commit
96bbfe4cbe

+ 12 - 4
app/Http/Controllers/Api/ScreenController.php

@@ -36,12 +36,15 @@ class ScreenController extends BaseController
             ->select(DB::raw('sum(order_quantity) as total'), DB::raw('sum(finished_num) as finished_num'),'out_order_no as Code','customer_name as CustomerName')
             ->groupBy('out_order_no')
             ->get()->toArray();
+
         if(! empty($result)){
             foreach ($result as $key => $value){
-                $result[$key]['rate'] = intval($value['finished_num'] / $value['total']);
+                $result[$key]['rate'] = number_format($value['finished_num'] / $value['total'],2) * 100;
                 unset($result[$key]['total']);
                 unset($result[$key]['finished_num']);
             }
+            $rate = array_column($result, 'rate'); // 提取列作为排序依据
+            array_multisort($rate, SORT_DESC,$result);
         }
 
         return $this->json_return(200,'',$result);
@@ -224,7 +227,7 @@ class ScreenController extends BaseController
                 "break_day_num"=> 0,
                 "break_month_num"=> 0,
                 "break_week_num"=> 0,
-                "start_time"=> date("Y-m-d H:i:s",time()),
+                "start_time"=> '',
                 "day_num"=> 0,
                 "week_num"=> 0,
                 "month_num"=> 0,
@@ -239,7 +242,7 @@ class ScreenController extends BaseController
         //查询当日
         $today = SystemL::where('time','>=',$timestamp_today_start * 1000)
             ->where('time','<=',$timestamp_today_end * 1000)
-            ->select('device_name','data_point_name')
+            ->select('device_name','data_point_name','time')
             ->whereIn('data_point_name',[SystemL::run,SystemL::work,SystemL::stop])
             ->get()->toArray();
         //组织当日数据
@@ -371,8 +374,12 @@ class ScreenController extends BaseController
     public function fillData($list,$type,&$models){
         if(empty($list)) return;
 
-        $run_time = $process_time = $fault = [];
+        $run_time = $process_time = $fault = $start_time = [];
         foreach ($list as $value){
+            if($type == 1 && ! isset($start_time[$value['device_name']])){
+                $start_time_tmp = date("Y-m-d H:i:s", $value['time'] / 1000);
+                $start_time[$value['device_name']] = $start_time_tmp;
+            }
             if($value['data_point_name'] == SystemL::run){
                 //运行次数
                 if(isset($run_time[$value['device_name']])){
@@ -430,6 +437,7 @@ class ScreenController extends BaseController
                 $models[$key]['day_num'] = $process_num;
                 $models[$key]['break_day_num'] = $fault_tmp;
                 $models[$key]['rate'] = $oee;
+                $models[$key]['start_time'] = $start_time[$key] ?? '暂未开机';
             }elseif($type == 2){
                 $models[$key]['machine_week_num'] = $run_num;
                 $models[$key]['week_num'] = $process_num;

+ 3 - 1
app/Service/EmployeeService.php

@@ -38,8 +38,10 @@ class EmployeeService extends Service
                 $model->password = Hash::make($data['password']);
             }
             $model->sqlserver_account = $data['sqlserver_account'] ?? '';
-            if($data['sqlserver_password'] !== '********'){
+            if(! empty($data['sqlserver_password']) && $data['sqlserver_password'] !== '********'){
                 $model->sqlserver_password = $data['sqlserver_password'];
+            }else{
+                $model->sqlserver_password = '';
             }
         }
         $model->save();