ShareDataController.class.php.bak.20200601 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  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. $res=$Model->where('owner_code='.$Data['id'])->delete();
  51. if($res)
  52. $this->mtReturn(200,'删除成功'.$Data['id']);
  53. else
  54. $this->mtReturn(300,'删除失败');
  55. }
  56. public function share_edit(){
  57. $Data=I();
  58. $Tab=M('owner_share as o');
  59. if(IS_POST)
  60. {
  61. if ($Data['ports']!=='0'){
  62. $provider_id=$Data['provider'];
  63. $share=M('share_provider')->where("provider_id = '$provider_id'")->find();
  64. $owner_code=$Data['unitId'].'-'.$Data['ports'];
  65. $data2['owner_code']=$Data['unitId'];
  66. $data2['share_id']=$share['share_id'];
  67. $data2['category_code']=$Data['category'];
  68. $data2['organization_id']=1;
  69. $data2['enabled']=1;
  70. $data2['ports']=$Data['ports'];
  71. $data2['iotype']=$Data['iotype'];
  72. $data2['append_time']=date('Y-m-d H:i:s');
  73. $data2['updata_time']=date('Y-m-d H:i:s');
  74. $res1= M('owner_share')->add($data2);
  75. if ($Data['iotype']=='2'){
  76. $ports=16+(int)($Data['ports']);
  77. $data1['unitId']=$Data['unitId'].'-'.$ports;
  78. }else{
  79. $data1['unitId']=$owner_code;
  80. }
  81. }else{
  82. $data1['unitId']=$Data['unitId'];
  83. }
  84. $data1['provider']=$Data['provider'];
  85. $data1['category']=$Data['category'];
  86. $post_data=json_encode($data1 );
  87. $post_url=$Data['organization'];
  88. $ch = curl_init();//初始化
  89. curl_setopt($ch, CURLOPT_TIMEOUT, '30');//超时时间
  90. curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json; charset=utf-8',
  91. 'Content-Length: ' . strlen($post_data))) ;
  92. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  93. //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)');
  94. curl_setopt($ch, CURLOPT_POST,1);
  95. curl_setopt($ch, CURLOPT_URL,$post_url);
  96. curl_setopt($ch, CURLOPT_POSTFIELDS,$post_data);
  97. $contents = curl_exec($ch);
  98. $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
  99. if(curl_errno($ch)){//出错则显示错误信息
  100. print curl_error($ch);
  101. }
  102. curl_close($ch);
  103. if($httpCode == 200){
  104. $data['enabled']=1;
  105. if($Data['provider']=='OOGuxw0JVti5xtsWoEczQQ=='){
  106. $data['share_id']=1;
  107. }else{
  108. $data['share_id']=2;
  109. }
  110. if ($Data['organization']){
  111. $data['organization_id']=1;
  112. }
  113. $owner_code=$Data['unitId'].'-'.$Data['ports'];
  114. $data['category_code']=$Data['category'];
  115. $data['updata_time']=date('Y-m-d H:i:s');
  116. if ($Data['ports']==0){
  117. $res=M('owner_share')->where("owner_code = {$Data['unitId']}")->save($data);
  118. }
  119. }
  120. if($httpCode == 200)
  121. $this->mtReturn(200,'共享成功');
  122. else
  123. $this->mtReturn(300,'共享失败');
  124. }else{
  125. // $where['owner_code'] = $Data['code'];
  126. // $info = $Tab
  127. // ->join('sp_share_provider as p on o.share_id=p.share_id')
  128. // ->join('sp_share_category as c on o.category_id=c.category_id')
  129. // ->where($where)
  130. // ->find();
  131. $category=M('share_category')->where('category_id > 0')->select();
  132. $organization=M('share_organization')->where('organization_id > 0')->select();
  133. $this->assign('organization',$organization);
  134. $this->assign('category',$category);
  135. $this->assign('code',$Data['code']);
  136. $this->assign('action','/home/ShareData/share_edit');
  137. //print_r($info);
  138. }
  139. $this->display();
  140. }
  141. }