getdevice(); if(count($por)>0){ //$por=array('10000001','10000000') if(!empty($Data['owner_code'])){ $p=""; foreach ($por as $val) { $p.="'".$val."',"; } $p.="'www'"; $Map['_string']=" (owner_code in(".$p.")) AND (owner_code LIKE '%".$Data['owner_code']."%') "; }else{ $Map['owner_code']=array('in',$por); } }else{ $Map['owner_code']='xxx'; } }else{ if(!empty($Data['owner_code'])){ $Map['owner_code']=array('like','%'.$Data['owner_code'].'%'); } } //$DataAuth=$this->permdata(); // if(!empty($DataAuth)){ // $Map['owner_code']=$DataAuth; // } //$por=$this->getdevice(); //file_put_contents("/var/www/html/log/log.txt",print_r($por,true), FILE_APPEND); $Count= $ModelList->join("left join __OWNER_COMPANY__ ON owner_id=company")->where($Map)->count();// 查询满足要求的总记录数 $ListData = $ModelList->field('sp_owner.id,owner_code,sp_owner.owner_name,sim,addr1,unitinfo,addr2,addr3,address,posistion,install_time,install_man,sp_owner_company.owner_name as owner_name1') ->where($Map)->order('id desc')->join("left join __OWNER_COMPANY__ ON owner_id=company")->limit($Gage,$GetSize)->select(); // s_print($ListData);die; $InfoList = array( 'totalRow' => $Count, //'pageSize' => $count,//分页时不传 'list' => $ListData, ); echo json_encode($InfoList); } else { $this->display(); } } public function getowner(){ //echo '1111'; // $por=M('owner_weibao')->field('owner_code')->where(array('agentid'=>$_SESSION['zt_username']))->select(); $arr=array(); foreach ($por as $value) { $arr[]=$value['owner_code']; } return $arr; } public function getdevice(){ //sp_user表 username=agentid //$por=M('owner_weibao')->query("SELECT owner_code FROM sp_owner WHERE company IN(SELECT owner_code FROM sp_owner_weibao WHERE agentid='".$_SESSION['zt_username']."')"); $por=M()->query("SELECT owner_code FROM sp_owner WHERE install_man='".$_SESSION['zt_username']."' or company IN(SELECT owner_code FROM sp_owner_weibao WHERE agentid='".$_SESSION['zt_username']."');"); $arr=array(); foreach ($por as $value) { $arr[]=$value['owner_code']; } return $arr; } public function edit(){ if (session('power')==2){ $this->mtReturn(300,'本账号没有该权限,如需开通请联系管理员',1); }else{ $data=I(); switch ($data['type']) { case 'owner': $Owner=M('owner'); //$list=$Owner->where(array('id'=> $data['id']))->select();//二维数组 $list=$Owner->where(array('owner_code'=> $data['owner_code']))->select();//二维数组 if (!empty($list[0]['posistion'])) { $str=explode(",", $list[0]['posistion']); $list[0]['posistion']=$str[1].','.$str[0]; } $this->assign('Ownerlist',$list[0]); $company=M('owner_company')->select(); $this->assign('companylist',$company); $model=M('host_model')->field("id,host_name,parts_mapping,description,CONCAT(id,',',parts_mapping) as types")->select(); $this->assign('owner_xinghao',$model); $arr = explode(',',$list[0]['owner_xh']); $arr1 = str_split($arr[1]); if ($arr1[0]=='' || $arr1[0]=='z'){ $arr1[0]=-2; } if ($arr1[1]=='' || $arr1[1]=='z'){ $arr1[1]=-2; } if ($arr1[2]=='' || $arr1[2]=='z'){ $arr1[2]=-2; } // print_r($arr); $this->assign('owner_xh_z',$arr1); $PorTyp=M('port_type')->select(); $this->assign('portyp',$PorTyp); $PorSyT=M('port_systype')->select(); $this->assign('porsyt',$PorSyT); $SystemType=M('systemtype')->select(); $this->assign('SystemType',$SystemType); $Port=M('owner_port');// $port_list=$Port->where(array('owner_code'=> $data['owner_code']))->order('id asc')->select();//二维数组 $this->assign('Portlist',$port_list); $this->assign('action','/home/Owner/edit'); $this->assign('delaction','/home/Owner/del'); $this->assign('delport','/home/Owner/DelPort'); $this->assign('delweibao','/home/Owner/Delwei'); $this->assign('delfujin','/home/Owner/Delfujin'); $this->assign('owner_code_uid',$data['owner_code']); $this->display(); break; case 'savaowner': $owner=M('owner'); $data['install_man']=$_SESSION['zt_username']; $data['install_time']=date('Y-m-d H:i:s'); if (!empty($data['posistion'])) { $str=explode(",", $data['posistion']); $data['posistion']=$str[1].','.$str[0]; } // print_r($data); if ($data['dwtype']==1){ $data['owner_xh']='0,'.$data['owner_xh_a'].$data['owner_xh_b'].$data['owner_xh_c']; unset($data['owner_xh_a']); unset($data['owner_xh_b']); unset($data['owner_xh_c']); }else{ unset($data['owner_xh']); unset($data['owner_xh_a']); unset($data['owner_xh_b']); unset($data['owner_xh_c']); } $data1=array(); $data1['iccids']=$data['sim']; $data1['device_code']=$data['owner_code']; if(!empty($data['ownerid'])){ $wx=M()->query("SELECT * FROM sp_owner where id='".$data['ownerid']."'"); $res = $owner->where(array('id'=> $data['ownerid']))->save($data); if($res){ //日志代码开始 $data_log ="\r\n".'['.date("Y-m-d H:i:s").']操作人员手机号:'.session('phone_login').'---修改sp_owner表---ID:'.$data['ownerid']."数据\r\n"; $data_log1 ='修改前数据:'.json_encode($wx)."\r\n"; $data_log2 ='修改的数据:'.json_encode($data)."\r\n"; $filename_log = "/var/www/html/jdxf/log/config_log".date("Y-m-d").".log"; file_put_contents($filename_log, $data_log, FILE_APPEND|LOCK_EX); file_put_contents($filename_log, $data_log1, FILE_APPEND|LOCK_EX); file_put_contents($filename_log, $data_log2, FILE_APPEND|LOCK_EX); //日志代码结束 // $urlsim='http://39.98.37.17:8080/UskyIOT/sim/querySimStatus'; // $postData = http_build_query($data1); // $curl = curl_init(); // curl_setopt($curl, CURLOPT_URL, $urlsim); // curl_setopt($curl, CURLOPT_USERAGENT,'Opera/9.80 (Windows NT 6.2; Win64; x64) Presto/2.12.388 Version/12.15'); // curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); // stop verifying certificate // curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); // curl_setopt($curl, CURLOPT_POST, true); // curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type: application/x-www-form-urlencoded')); // curl_setopt($curl, CURLOPT_POSTFIELDS, $postData); // curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true); // $result = curl_exec($curl); // curl_close($curl); $this->mtReturn(200,'配置成功'); }else{ echo json_encode(array('statusCode'=> 300,'message'=>'配置未改变')); } }else{ $rest= $owner->where(array('owner_code'=> $data['owner_code']))->select(); if(count($rest) < 1){ $data['install_man']=$_SESSION['zt_username']; $res = $owner->add($data); if($res){ $tab='x'; //if($data['dwtype'] != '6'){//dwtype if($data['dwtype'] == '128'){ $tab=$owner->execute("CALL device_table('".$data['owner_code']."','".$data['dwtype']."')"); }else{ $tab=$owner->execute("CALL device_table1('".$data['owner_code']."','".$data['dwtype']."')"); } //} $status=$owner->execute("INSERT INTO sp_devices_status(deviceid,deviceno,devicestatus,statustime) VALUES('".$data['owner_code']."','','',NOW())"); // print_r($data['owner_code']); //$trg=$owner->execute("CREATE TRIGGER `dev_status".$data['owner_code']."` AFTER INSERT ON `sp_D".$data['owner_code']."` FOR EACH ROW BEGIN CALL SetDevStatus ( new.device_code, new.device_id, new.`port`, new.istest, new.`status`, new.reserve, new.address, new.data1, new.data2, new.data3, new.data4, new.data5, new.data6, new.data7, new.data8 ); END;"); // $urlsim='http://39.98.37.17:8080/UskyIOT/sim/insertSim'; // $postData = http_build_query($data1); // $curl = curl_init(); // curl_setopt($curl, CURLOPT_URL, $urlsim); // curl_setopt($curl, CURLOPT_USERAGENT,'Opera/9.80 (Windows NT 6.2; Win64; x64) Presto/2.12.388 Version/12.15'); // curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); // stop verifying certificate // curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); // curl_setopt($curl, CURLOPT_POST, true); // curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type: application/x-www-form-urlencoded')); // curl_setopt($curl, CURLOPT_POSTFIELDS, $postData); // curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true); // $result = curl_exec($curl); // curl_close($curl); //日志开始 $filename_log = "/var/www/html/jdxf/log/config_log".date("Y-m-d").".log"; $data_log ="\r\n".'['.date("Y-m-d H:i:s").']操作人员手机号:'.session('phone_login').'---添加设备\r\n'; $data_log1 ='添加数据:'.json_encode($data)."\r\n"; file_put_contents($filename_log, $data_log, FILE_APPEND|LOCK_EX); file_put_contents($filename_log, $data_log1, FILE_APPEND|LOCK_EX); //日志结束 $this->mtReturn(200,'添加成功'.$res.'数据表生成'.$tab.'状态生成'.$status); }else{ echo json_encode(array('statusCode'=> 300,'message'=>'添加失败')); } }else{ echo json_encode(array('statusCode'=> 300,'message'=>'未添加成功,请确认是否已经添加')); } } break; case 'sevaport': $device=M('owner_port'); //$data['install_man']=$_SESSION['zt_username']; //$data['install_time']=date('Y-m-d H:i:s'); if(!empty($data['port_id'])){ $rest= $device->where(array('id'=> $data['port_id']))->select(); $res = $device->where(array('id'=> $data['port_id']))->save($data); if($res){ //日志开始 $filename_log = "/var/www/html/jdxf/log/config_log".date("Y-m-d").".log"; $data_log ="\r\n".'['.date("Y-m-d H:i:s").']操作人员手机号:'.session('phone_login').'---修改sp_owner_port表---ID:'.$data['port_id']."\r\n"; $data_log1 ='修改前数据:'.json_encode($rest)."\r\n"; $data_log2 ='修改的数据:'.json_encode($data)."\r\n"; file_put_contents($filename_log, $data_log, FILE_APPEND|LOCK_EX); file_put_contents($filename_log, $data_log1, FILE_APPEND|LOCK_EX); file_put_contents($filename_log, $data_log2, FILE_APPEND|LOCK_EX); //日志结束 echo json_encode($this->mtReturn(200,'配置成功')); }else{ echo json_encode(array('statusCode'=> 300,'message'=>'配置未改变')); } }else{ $res = $device->add($data); //日志开始 $filename_log = "/var/www/html/jdxf/log/config_log".date("Y-m-d").".log"; $data_log ="\r\n".'['.date("Y-m-d H:i:s").']操作人员手机号:'.session('phone_login').'---添加sp_owner_port表---设备编号:'.$data['owner_code']."-----端口号:".$data['ports']."\r\n"; $data_log1 ='添加数据:'.json_encode($data)."\r\n"; file_put_contents($filename_log, $data_log, FILE_APPEND|LOCK_EX); file_put_contents($filename_log, $data_log1, FILE_APPEND|LOCK_EX); //日志结束 echo $res; } break; case 'addlian': $wx=M()->query("SELECT phone,idphone,openid, username FROM ztcrm.sp_customuser where idphone='".$data['idphone']."'"); $lian=M('owner_phone'); if(count($wx)>0){ $res=$lian->add(array('owner_code'=>$data['owner_code'],'username'=>$wx[0]['username'],'phone'=>$data['idphone'],'time'=>date('Y-m-d H:i:s'),'data1'=>$wx[0]['openid'])); }else{ $res=$lian->add(array('owner_code'=>$data['owner_code'],'username'=>'','phone'=>'','time'=>date('Y-m-d H:i:s'),'data1'=>'')); } // $ress=$lian->where(array('id'=>$res))->select(); // if ($res) { // $this->mtReturn(200,'添加成功'); // }else{ // $this->mtReturn(200,'添加失败'); // } echo json_encode($ress[0]); break; case 'sevalian': $res=M('owner_phone')->where(array('id'=>$data['lianid']))->save($data); echo $res; break; case 'addweibao': $weibao=M('owner_weibao'); $res=$weibao->add(array('agentid'=>$data['username'],'owner_code'=>$data['owner_code'])); $list=$weibao->query("SELECT w.id as id, w.owner_code as owner_code ,truename,w.datetime FROM sp_owner_weibao w left JOIN sp_user u on w.agentid=u.agentid where w.id='".$res."'"); // if ($res) { // $this->mtReturn(200,'添加成功'); // }else{ // $this->mtReturn(200,'添加失败'); // } echo json_encode($list[0]); break; case 'addfujin': $fujin=M('owner_fujin'); $res=$fujin->add(array('other_code'=>$data['myownercode'],'owner_code'=>$data['owner_code'])); $fujinlist=$fujin->query("SELECT f.id, f.owner_code,f.other_code,owner_name,unitinfo,address FROM sp_owner_fujin f LEFT JOIN sp_owner o ON f.other_code=o.owner_code where f.id='".$res."'"); // if ($res) { // $this->mtReturn(200,'添加成功'); // }else{ // $this->mtReturn(200,'添加失败'); // } echo json_encode($fujinlist[0]); break; default: # code... break; } } } public function del(){ $data=I(); if(!empty($data['id'])){ $device=M('owner_device'); $res = $device->delete($data['id']); if($res){ echo json_encode($this->mtReturn(200,'删除成功')); }else{ echo json_encode(array('statusCode'=> 300,'message'=>'删除失败')); } } } public function DelPort(){ $data=I(); if(!empty($data['id'])){ $device=M('owner_port'); $used_data = M()->query("select * from sp_owner_port where id=".$data['id']); $res = $device->delete($data['id']); if($res){ //日志开始 $filename_log = "/var/www/html/jdxf/log/config_log".date("Y-m-d").".log"; $data_log ="\r\n".'['.date("Y-m-d H:i:s").']操作人员手机号:'.session('phone_login').'---删除sp_owner_port表---ID:'.$data['id']."\r\n"; $data_log1 ='删除前数据:'.json_encode($used_data)."\r\n"; file_put_contents($filename_log, $data_log, FILE_APPEND|LOCK_EX); file_put_contents($filename_log, $data_log1, FILE_APPEND|LOCK_EX); //日志开始结束 echo json_encode($this->mtReturn(200,'删除成功')); }else{ echo json_encode(array('statusCode'=> 300,'message'=>'删除失败')); } } } public function Delwei(){ $data=I(); if(!empty($data['id'])){ $device=M('owner_weibao'); $res = $device->delete($data['id']); if($res){ echo json_encode($this->mtReturn(200,'删除成功')); }else{ echo json_encode(array('statusCode'=> 300,'message'=>'删除失败')); } } } public function Dellian(){ $data=I(); if(!empty($data['id'])){ $device=M('owner_phone'); $res = $device->delete($data['id']); if($res){ echo json_encode($this->mtReturn(200,'删除成功')); }else{ echo json_encode(array('statusCode'=> 300,'message'=>'删除失败')); } } } public function Delfujin(){ $data=I(); if(!empty($data['id'])){ $device=M('owner_fujin'); $res = $device->delete($data['id']); if($res){ echo json_encode($this->mtReturn(200,'删除成功')); }else{ echo json_encode(array('statusCode'=> 300,'message'=>'删除失败')); } } } public function DelOwner(){//删除设备 未用 //$Data['deviceid'] $Data=I(); if (!empty($Data['id'])) { $owner=M('owner'); $res = $owner->delete($Data['id']); } if ($res>0) { $stu = M('devices_status')->where(array('deviceid'=>$Data['deviceid']))->delete(); } if ($stu>0) { $del=$owner->execute("DROP TABLE IF EXISTS sp_d".$Data['deviceid']); } } }