ShareDataController.class.php 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178
  1. <?php
  2. namespace Home\Controller;
  3. use Think\Controller;
  4. class ShareDataController extends ComController {
  5. public function index(){
  6. $Data=I();
  7. if(isset($Data['list'])){
  8. $GetPage=$Data['pageCurrent'];//第几页
  9. $GetSize=$Data['pageSize'];//每页条数
  10. $Page=($GetPage-1)*$GetSize;
  11. $Map=array();
  12. if(!empty($Data['owner_code'])){
  13. $Map['owner_code']=$Data['owner_code'];
  14. }
  15. //明天 連貫操作sp_owner
  16. $Count=M('owner_share')->where($Map)->count();
  17. $List=M('owner_share as o')
  18. ->join('sp_share_provider as p on o.share_id=p.share_id')
  19. ->join('sp_share_category as c on o.category_code=c.category_code')
  20. ->join('sp_share_organization as r on o.organization_id=r.organization_id')
  21. ->limit($Page,$GetSize)
  22. ->field('o.owner_code,o.enabled,o.ports,o.iotype,o.append_time,p.provider_name,c.category_name,r.organization_name')
  23. ->where($Map)
  24. ->select();
  25. $list2 =array();
  26. foreach ($List as $key=>$value){
  27. $list2[$key]['append_time'] = $value['append_time'];
  28. $list2[$key]['enabled'] = $value['enabled'];
  29. $list2[$key]['ports'] = $value['ports'];
  30. $list2[$key]['iotype'] = $value['iotype'];
  31. $list2[$key]['organization_name'] = $value['organization_name'];
  32. $list2[$key]['category_name'] = $value['category_name'];
  33. $list2[$key]['provider_name'] = $value['provider_name'];
  34. $list2[$key]['owner_code'] = $value['owner_code'];
  35. }
  36. $Info = array(
  37. 'totalRow' => $Count,
  38. 'list' => $list2,
  39. );
  40. echo json_encode($Info);
  41. }
  42. else
  43. {
  44. $this->display();
  45. }
  46. }
  47. public function deldata(){
  48. $Model=M('owner_share');
  49. $Data=I();
  50. if (session('power')==2){
  51. $this->mtReturn(300,'本账号没有该权限,如需开通请联系管理员',1);
  52. }else {
  53. $used_data = M()->query("select * from sp_owner_share where owner_code=".$Data['id']);
  54. $res=$Model->where('owner_code='.$Data['id'])->delete();
  55. if($res){
  56. //日志开始
  57. $filename_log = "/var/www/html/jdxf/log/config_log".date("Y-m-d").".log";
  58. $data_log ="\r\n".'['.date("Y-m-d H:i:s").']操作人员手机号:'.session('phone_login').'---删除sp_owner_share表---设备编号:'.$Data['id']."\r\n";
  59. $data_log1 ='删除前数据:'.json_encode($used_data)."\r\n";
  60. file_put_contents($filename_log, $data_log, FILE_APPEND|LOCK_EX);
  61. file_put_contents($filename_log, $data_log1, FILE_APPEND|LOCK_EX);
  62. //日志开始结束
  63. $this->mtReturn(200,'删除成功'.$Data['id']);
  64. }else{
  65. $this->mtReturn(300,'删除失败');
  66. }
  67. }
  68. }
  69. public function share_edit(){
  70. $Data=I();
  71. $Tab=M('owner_share as o');
  72. if(IS_POST)
  73. {
  74. if ($Data['ports']!=='0'){
  75. $provider_id=$Data['provider'];
  76. $share=M('share_provider')->where("provider_id = '$provider_id'")->find();
  77. $owner_code=$Data['unitId'].'-'.$Data['ports'];
  78. $data2['owner_code']=$Data['unitId'];
  79. $data2['share_id']=$share['share_id'];
  80. $data2['category_code']=$Data['category'];
  81. $data2['organization_id']=1;
  82. $data2['enabled']=1;
  83. $data2['ports']=$Data['ports'];
  84. $data2['iotype']=$Data['iotype'];
  85. $data2['append_time']=date('Y-m-d H:i:s');
  86. $data2['updata_time']=date('Y-m-d H:i:s');
  87. $res1= M('owner_share')->add($data2);
  88. if ($Data['iotype']=='2'){
  89. $ports=16+(int)($Data['ports']);
  90. $data1['unitId']=$Data['unitId'].'-'.$ports;
  91. }else{
  92. $data1['unitId']=$owner_code;
  93. }
  94. }else{
  95. $data1['unitId']=$Data['unitId'];
  96. }
  97. $data1['provider']=$Data['provider'];
  98. $data1['category']=$Data['category'];
  99. $post_data=json_encode($data1 );
  100. $post_url=$Data['organization'];
  101. $ch = curl_init();//初始化
  102. curl_setopt($ch, CURLOPT_TIMEOUT, '30');//超时时间
  103. curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json; charset=utf-8',
  104. 'Content-Length: ' . strlen($post_data))) ;
  105. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  106. //curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; GTB7.4; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.2)');
  107. curl_setopt($ch, CURLOPT_POST,1);
  108. curl_setopt($ch, CURLOPT_URL,$post_url);
  109. curl_setopt($ch, CURLOPT_POSTFIELDS,$post_data);
  110. $contents = curl_exec($ch);
  111. $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
  112. if(curl_errno($ch)){//出错则显示错误信息
  113. print curl_error($ch);
  114. }
  115. curl_close($ch);
  116. if($httpCode == 200){
  117. $data['enabled']=1;
  118. if($Data['provider']=='OOGuxw0JVti5xtsWoEczQQ=='){
  119. $data['share_id']=1;
  120. }else{
  121. $data['share_id']=2;
  122. }
  123. if ($Data['organization']){
  124. $data['organization_id']=1;
  125. }
  126. $owner_code=$Data['unitId'].'-'.$Data['ports'];
  127. $data['category_code']=$Data['category'];
  128. $data['updata_time']=date('Y-m-d H:i:s');
  129. if ($Data['ports']==0){
  130. $wx=M()->query("SELECT * FROM sp_owner where owner_code='".$Data['unitId']."'");
  131. $res=M('owner_share')->where("owner_code = {$Data['unitId']}")->save($data);
  132. }
  133. }
  134. if($httpCode == 200){
  135. //日志代码开始
  136. $data_log ="\r\n".'['.date("Y-m-d H:i:s").']操作人员手机号:'.session('phone_login').'---修改sp_owner表---设备编号:'.$Data['unitId']."数据\r\n";
  137. $data_log1 ='修改前数据:'.json_encode($wx)."\r\n";
  138. $data_log2 ='修改的数据:'.json_encode($data)."\r\n";
  139. $filename_log = "/var/www/html/jdxf/log/config_log".date("Y-m-d").".log";
  140. file_put_contents($filename_log, $data_log, FILE_APPEND|LOCK_EX);
  141. file_put_contents($filename_log, $data_log1, FILE_APPEND|LOCK_EX);
  142. file_put_contents($filename_log, $data_log2, FILE_APPEND|LOCK_EX);
  143. //日志代码结束
  144. $this->mtReturn(200,'共享成功');
  145. }else{
  146. $this->mtReturn(300,'共享失败');
  147. }
  148. }else{
  149. // $where['owner_code'] = $Data['code'];
  150. // $info = $Tab
  151. // ->join('sp_share_provider as p on o.share_id=p.share_id')
  152. // ->join('sp_share_category as c on o.category_id=c.category_id')
  153. // ->where($where)
  154. // ->find();
  155. $category=M('share_category')->where('category_id > 0')->select();
  156. $organization=M('share_organization')->where('organization_id > 0')->select();
  157. $this->assign('organization',$organization);
  158. $this->assign('category',$category);
  159. $this->assign('code',$Data['code']);
  160. $this->assign('action','/home/ShareData/share_edit');
  161. //print_r($info);
  162. }
  163. $this->display();
  164. }
  165. }