wzh 5 år sedan
förälder
incheckning
7a9346b3dc

+ 56 - 0
api/application/controllers/Home.php

@@ -19,6 +19,62 @@ class Home extends Base_Controller {
     		'faulty_count' => 0,
     	);
 
+        $date = date('Y-m-d 00:00:00',time());
+
+        $role = $this->get_user_info('role');
+        if ($role == SYSTEM_ADMIN) {
+            $data['total_light_count'] = $this->Lamp_model->get_count();
+            $data['day_new_count'] = $this->Lamp_model->get_count(['createtime >='=>$date]);
+
+            $join = [['table'=>'network as N','cond'=>'N.id = L.networkid','type'=>'inner']];
+            $total = $this->Lamp_model->get_list_by_multi_join(['N.status'=>1,'L.logtime >='=>$date,'L.devstatus !='=>0], 'count(*) as total',NULL, NULL, $join, NULL, NUll, 'L', true);
+            $data['day_faulty_count'] = $total['total'];
+
+            $join = [['table'=>'network as N','cond'=>'N.id = L.networkid','type'=>'inner']];
+            $total = $this->Lamp_model->get_list_by_multi_join(['N.status'=>1,'L.status'=>1], 'count(*) as total',NULL, NULL, $join, NULL, NUll, 'L', true);
+            $data['light_up_count'] = $total['total'];
+
+            $join = [['table'=>'network as N','cond'=>'N.id = L.networkid','type'=>'inner']];
+            $total = $this->Lamp_model->get_list_by_multi_join(['N.status'=>1], 'count(*) as total',NULL, NULL, $join, NULL, NUll, 'L', true);
+            $data['online_count'] = $total['total'];
+
+            $join = [['table'=>'network as N','cond'=>'N.id = L.networkid','type'=>'inner']];
+            $total = $this->Lamp_model->get_list_by_multi_join(['N.status'=>1,'L.devstatus !='=>0], 'count(*) as total',NULL, NULL, $join, NULL, NUll, 'L', true);
+            $data['faulty_count'] = $total['total'];
+        }else{
+            $company = $this->get_user_info('company');
+            $where = ['P.company'=>$company];
+            $join = [
+                ['table'=>'project as P','cond'=>'P.id = L.projectid','type'=>'inner']
+            ];
+            $total = $this->Lamp_model->get_list_by_multi_join($where, 'count(*) as total',NULL, NULL, $join, NULL, NUll, 'L', true);
+            $data['total_light_count'] = $total['total'];
+
+            $where['L.createtime >='] = $date;
+            $total = $this->Lamp_model->get_list_by_multi_join($where, 'count(*) as total',NULL, NULL, $join, NULL, NUll, 'L', true);
+            $data['day_new_count'] = $total['total'];
+            unset($where['L.createtime >=']);
+
+            $join[] = ['table'=>'project as P','cond'=>'P.id = L.projectid','type'=>'inner'];
+            $where['N.status'] = 1;
+            $total = $this->Lamp_model->get_list_by_multi_join($where, 'count(*) as total',NULL, NULL, $join, NULL, NUll, 'L', true);
+            $data['online_count'] = $total['total'];
+
+            $where['L.status'] = 1;
+            $total = $this->Lamp_model->get_list_by_multi_join($where, 'count(*) as total',NULL, NULL, $join, NULL, NUll, 'L', true);
+            $data['light_up_count'] = $total['total'];
+            unset($where['L.status']);
+
+            $where['L.devstatus !='] = 0;
+            $total = $this->Lamp_model->get_list_by_multi_join($where, 'count(*) as total',NULL, NULL, $join, NULL, NUll, 'L', true);
+            $data['faulty_count'] = $total['total'];
+
+            $where['L.devstatus !='] = 0;
+            $where['L.logtime >='] = $date;
+            $total = $this->Lamp_model->get_list_by_multi_join($where, 'count(*) as total',NULL, NULL, $join, NULL, NUll, 'L', true);
+            $data['day_faulty_count'] = $total['total'];
+        }
+
     	exit(json_result('0000',$this->response['0000'],$data));
     }
 

Filskillnaden har hållts tillbaka eftersom den är för stor
+ 107 - 516
api/application/controllers/Lampcontrol.php


+ 29 - 29
api/application/models/Network_model.php

@@ -346,37 +346,37 @@ class Network_model extends Base_model {
 	}
 	
 	// 更新网络信息
-	public function update($filter,$data){
-		if (empty($filter)){
-			return false;
-		}
+	// public function update($filter,$data){
+	// 	if (empty($filter)){
+	// 		return false;
+	// 	}
 		
-		$sql = "SELECT `projectid`, `company` FROM `project` WHERE id = {$data['projectid']}";
-		$query = $this->db->query($sql);
-		$project =  $query->row_array();
-
-		// $sql = "SELECT `ename` FROM `company` WHERE id = {$project['company']}";
-		// $query = $this->db->query($sql);
-		// $company =  $query->row_array();
-
-		$data['regpack'] = 'register-weclouds-'.$project['projectid'].'-'.$data['networkid'];
-		// $data['regpack'] = 'register-'.$company['ename'].'-'.$project['projectid'].'-'.$data['networkid'];
-		$sql =  $this->db->update_string($this->table,$data,$filter);
-		return $this->db->query($sql);
-	}
+	// 	$sql = "SELECT `projectid`, `company` FROM `project` WHERE id = {$data['projectid']}";
+	// 	$query = $this->db->query($sql);
+	// 	$project =  $query->row_array();
+
+	// 	// $sql = "SELECT `ename` FROM `company` WHERE id = {$project['company']}";
+	// 	// $query = $this->db->query($sql);
+	// 	// $company =  $query->row_array();
+
+	// 	$data['regpack'] = 'register-weclouds-'.$project['projectid'].'-'.$data['networkid'];
+	// 	// $data['regpack'] = 'register-'.$company['ename'].'-'.$project['projectid'].'-'.$data['networkid'];
+	// 	$sql =  $this->db->update_string($this->table,$data,$filter);
+	// 	return $this->db->query($sql);
+	// }
 	
-	public function insert($data){
-		$sql = "SELECT `projectid`, `company` FROM `project` WHERE id = {$data['projectid']}";
-		$query = $this->db->query($sql);
-		$project =  $query->row_array();
-
-		// $sql = "SELECT `ename` FROM `company` WHERE id = {$project['company']}";
-		// $query = $this->db->query($sql);
-		// $company =  $query->row_array();
-
-		$data['regpack'] = 'register-weclouds-'.$project['projectid'].'-'.$data['networkid'];
-		$this->db->insert($this->table, $data);
-		return $this->db->insert_id();
+	// public function insert($data){
+	// 	$sql = "SELECT `projectid`, `company` FROM `project` WHERE id = {$data['projectid']}";
+	// 	$query = $this->db->query($sql);
+	// 	$project =  $query->row_array();
+
+	// 	// $sql = "SELECT `ename` FROM `company` WHERE id = {$project['company']}";
+	// 	// $query = $this->db->query($sql);
+	// 	// $company =  $query->row_array();
+
+	// 	$data['regpack'] = 'register-weclouds-'.$project['projectid'].'-'.$data['networkid'];
+	// 	$this->db->insert($this->table, $data);
+	// 	return $this->db->insert_id();
 	}
 
 	public function getDataCount($condition, $id = 0) {