wzh 5 năm trước cách đây
mục cha
commit
420f66c023

+ 15 - 14
api/application/controllers/Lampcontrol.php

@@ -385,27 +385,28 @@ class Lampcontrol extends Base_Controller {
                 }
             }
             if (!empty($project_id)) {
-                // $data['total_data']['install_num'] = $this->Lamp_model->getTotal(array('projectid'=>$project_id), $role, $companyid, $userid);
-                $data['total_data']['light_num'] = $this->Lamp_model->get_light_count_by_project($project_id);
-                $data['total_data']['online_num'] = $this->Lamp_model->get_online_count_by_project($project_id);
-
-                // $data['total_data']['fault_count'] = $this->Lamp_model->get_fault_count(array('L.projectid'=>$project_id,'L.isfaulted'=>1,'AI.status'=>0), $role, $companyid, $userid);
-                $data['total_data']['light_rate'] = empty($data['total_data']['install_num']) ? '0' : round($data['total_data']['light_num']/$data['total_data']['install_num'],4)*100;
-                $data['total_data']['light_rate'] .= '%';
-                $data['total_data']['online_rate'] = empty($data['total_data']['install_num']) ? '0' : round($data['total_data']['online_num']/$data['total_data']['install_num'],4)*100;
-                $data['total_data']['online_rate'] .= '%';
-                $data['total_data']['fault_rate'] = empty($data['total_data']['install_num']) ? '0' : round($data['total_data']['fault_count']/$data['total_data']['install_num'],4)*100;
-                $data['total_data']['fault_rate'] .= '%';
-                $data['total_data']['network_num'] = $this->Network_model->getTotalByProject($project_id);
+                
             }
         }
         unset($filter['page']);
         unset($filter['count']);
+        $data['total_data']['install_num'] = $this->Lamp_model->get_count(array('projectid'=>$project_id));
+        $data['total_data']['light_num'] = $this->Lamp_model->get_light_count_by_project($project_id);
+        $data['total_data']['online_num'] = $this->Lamp_model->get_online_count_by_project($project_id);
+
+        $data['total_data']['fault_count'] = $this->Lamp_model->get_fault_count(array('L.projectid'=>$project_id,'L.isfaulted'=>1,'AI.status'=>0), $role, '', $userid,$project_id);
+        $data['total_data']['light_rate'] = empty($data['total_data']['install_num']) ? '0' : round($data['total_data']['light_num']/$data['total_data']['install_num'],4)*100;
+        $data['total_data']['light_rate'] .= '%';
+        $data['total_data']['online_rate'] = empty($data['total_data']['install_num']) ? '0' : round($data['total_data']['online_num']/$data['total_data']['install_num'],4)*100;
+        $data['total_data']['online_rate'] .= '%';
+        $data['total_data']['fault_rate'] = empty($data['total_data']['install_num']) ? '0' : round($data['total_data']['fault_count']/$data['total_data']['install_num'],4)*100;
+        $data['total_data']['fault_rate'] .= '%';
+        $data['total_data']['network_num'] = $this->Network_model->get_count(['projectid'=>$project_id,'type'=>1]);
+
         $res = $this->Lamp_model->get_list_by_multi_join($filter, 'count(*) total',$limit, $offset, $join, "L.number ASC,N.networkname ASC", NUll, 'L',true);
-        // $res = !empty($pid_arr) ? $this->Lamp_model->get_total('L.projectid', $pid_arr, 'L.id', $filter) : array();
         $result = !empty($pid_arr) ? $this->Lamp_model->get_total('L.projectid', $pid_arr, 'L.id') : array();
         $result = $this->Lamp_model->get_count(['projectid'=>$pid_arr]);
-        $data['total'] = ceil($res['total']/$count);
+        $data['total'] = ceil($res['total']/$limit);
         $data['count'] = $result;
         $data['fault'] = $res['total'];
         exit(json_result('0000', $this->response['0000'], $data));

+ 1 - 2
api/application/models/Lamp_model.php

@@ -442,8 +442,7 @@ class Lamp_model extends Base_model {
 	}
 	
 	// 获取项目下面的故障数
-    public function get_fault_count($filter, $role, $companyid, $userid){
-        $projectIds = $this->get_projectid_by_role($role,$userid,$companyid);
+    public function get_fault_count($filter, $role, $companyid, $userid,$projectIds=0){
         $Ids = empty($projectIds) ? 0 : $projectIds;
 
         $temp = array();