PublicController.class.php 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300
  1. <?php
  2. namespace Home\Controller;
  3. use Think\Controller;
  4. //include '../Common/function.php';
  5. class PublicController extends Controller {
  6. public function login1(){
  7. $login = I('post.');
  8. // print_r($login);
  9. // var_dump(json_decode($login, true));
  10. if($login['action']=='loginphone'){
  11. $login_phone=M()->query("select * from sp_login_phone where phone=".$login['phonenumber']);
  12. if (empty($login_phone)){
  13. $err='手机号无此权限,无法登录';
  14. $this->assign('almsg',"AltMessage('".$err."');");
  15. }else{
  16. $login['username']='admin ';
  17. $login['password']='15e1e49e643dfb95bb67f21f173457fe';
  18. }
  19. $rs = D('Login', 'Service')->login($login);
  20. if (!$rs['status']) {
  21. $err='手机号无此权限,无法登录';
  22. $this->assign('almsg',"AltMessage('".$err."');");
  23. // $this->assign('almsg',"AltMessage('".$rs['data']."');");
  24. }else{
  25. return 1;
  26. // header('location:https://'.$_SERVER['SERVER_NAME'].'/'.C('CRM').'/admin1.php');
  27. }
  28. }
  29. $this->display('login');
  30. }
  31. public function login(){
  32. $login = I('post.');
  33. if($login['action']=='loginphone'){
  34. $login_phone=M()->query("select * from sp_login_phone where phone=".$login['phonenumber']);
  35. if (empty($login_phone)){
  36. $err='手机号无此权限,无法登录';
  37. $this->assign('almsg',"AltMessage('".$err."');");
  38. }else{
  39. $login['username']='admin ';
  40. $login['password']='15e1e49e643dfb95bb67f21f173457fe';
  41. $login['power']=$login_phone[0]['power'];
  42. }
  43. $rs = D('Login', 'Service')->login($login);
  44. if (!$rs['status']) {
  45. $err='手机号无此权限,无法登录';
  46. $this->assign('almsg',"AltMessage('".$err."');");
  47. // $this->assign('almsg',"AltMessage('".$rs['data']."');");
  48. }else{
  49. // exit();
  50. // header('location:https://www.baidu.com/');
  51. header('location:https://'.$_SERVER['SERVER_NAME'].'/'.C('CRM').'/admin1.php');
  52. }
  53. }
  54. $this->display('login');
  55. }
  56. public function qr_login(){
  57. $data="{\"actfrom\":\"loginpage\",\"action\":\"query_ercode\"}";
  58. $url='http://101.133.214.75:55125/report';
  59. $ch = curl_init(); //初始化
  60. curl_setopt($ch, CURLOPT_URL, $url); //请求地址
  61. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  62. curl_setopt($ch, CURLOPT_POST, true);
  63. //https协议需要以下两行,否则请求不成功
  64. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
  65. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  66. //post方法所需要的参数
  67. curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
  68. // curl_setopt($ch, CURLOPT_HTTPHEADER,array());
  69. $result = curl_exec($ch);
  70. curl_close($ch);
  71. echo $result;
  72. }
  73. public function phone_login(){
  74. $data_c = I('post.');
  75. // $result_login=$data_c['phone_log'].'获取手机号前期';
  76. // $log = "[时间".date("Y-m-d H:i:s")."]".$result_login."\r\n";
  77. // $filename_log = "/var/www/html/jdxf/log/phone_log".date("Y-m-d").".log";
  78. // file_put_contents($filename_log, $log, FILE_APPEND|LOCK_EX);
  79. $ercode=$data_c['ercode'];
  80. // if (empty($ercode)){
  81. $data="{\"action\":\"loginphone\",\"ercode\":\"".$ercode."\"}";
  82. $url='http://101.133.214.75:55125/report';
  83. $ch = curl_init(); //初始化
  84. curl_setopt($ch, CURLOPT_URL, $url); //请求地址
  85. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  86. curl_setopt($ch, CURLOPT_POST, true);
  87. //https协议需要以下两行,否则请求不成功
  88. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
  89. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  90. //post方法所需要的参数
  91. curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
  92. // curl_setopt($ch, CURLOPT_HTTPHEADER,array());
  93. $result = curl_exec($ch);
  94. curl_close($ch);
  95. echo $result;
  96. // }
  97. }
  98. // public function login(){
  99. // $login = I('post.');
  100. // if($login['action']=='loginphone')
  101. // {
  102. //
  103. // $login_phone=M()->query("select * from sp_login_phone where phone=".$login['phonenumber']);
  104. // if (empty($login_phone)){
  105. // echo 2;
  106. // $err='手机号无此权限,无法登录';
  107. // $this->assign('almsg',"AltMessage('".$err."');");
  108. // $this->display('login');
  109. // }else{
  110. // $login['username']='admin ';
  111. // $login['password']='15e1e49e643dfb95bb67f21f173457fe';
  112. // }
  113. // $rs = D('Login', 'Service')->login($login);
  114. // if (!$rs['status']) {
  115. // //$this->error($rs['data']);
  116. // $this->assign('almsg',"AltMessage('".$rs['data']."');");
  117. //
  118. // }
  119. // else {
  120. // //success('登录成功,正在跳转...',__ROOT__,1); $_SERVER['SERVER_NAME']
  121. //// echo 1;
  122. //// print_r('location:https://'.$_SERVER['SERVER_NAME'].'/'.C('CRM').'/admin1.php');
  123. // header('location:https://'.$_SERVER['SERVER_NAME'].'/'.C('CRM').'/admin1.php');
  124. // }
  125. // }
  126. // $this->display('login');
  127. // }
  128. public function jdlogin()
  129. {
  130. $login = I();
  131. if ($login['token']!='jd' || $login['username']!='jdxf')
  132. {
  133. return print_r(json_encode(array('status'=>'404')));
  134. }
  135. $login['username']= session('zt_webusername');
  136. $login['password']= session('zt_webpasswd');
  137. $rs = D('Login', 'Service')->login($login);
  138. if (!$rs['status']) {
  139. //$this->error($rs['data']);
  140. return print_r(json_encode(array('status'=>'404','mgs'=>'error---')));
  141. }
  142. else {
  143. header('location:http://'.$_SERVER['SERVER_NAME'].'/'.C('CRM').'/admin1.php');
  144. }
  145. }
  146. public function verify(){
  147. ob_clean();
  148. $config = array(
  149. 'fontSize' => 20, // 验证码字体大小
  150. 'length' => 4, // 验证码位数
  151. 'imageH' => 35,
  152. 'useNoise' => false, // 关闭验证码杂点
  153. );
  154. $verify = new \Think\Verify($config);
  155. $verify->codeSet = '0123456789';
  156. $verify->entry();
  157. }
  158. public function logout() {
  159. if(!session('zt_uid')){
  160. redirect(U('Public/login'));
  161. }
  162. D('Login', 'Service')->logout();
  163. $this->redirect('Public/login');
  164. }
  165. public function changepwd() {
  166. // $login_phone_power=M()->query("select power from sp_login_phone where phone=".session('phone_login'));
  167. if (session('power')==2){
  168. $this->mtReturn(300,'本账号没有该权限,如需开通请联系管理员',1);
  169. }else{
  170. if(IS_POST){
  171. $password=I('post.password');
  172. $map = array();
  173. if(I('post.password')!=I('post.repassword'))
  174. {
  175. $data['statusCode']=300;
  176. $data['message']='两次输入密码不一致!';
  177. }
  178. $map['password'] = md5(md5((I('post.oldpassword'))));
  179. $map['id'] = session('zt_uid');
  180. $User = M("User");
  181. if (!$User->where($map)->field('id')->find()) {
  182. $data['statusCode']=300;
  183. $data['message']='旧密码不符!';
  184. } else {
  185. if (empty($password) || strlen($password) < 5) {
  186. $data['statusCode']=300;
  187. $data['message']='密码长度必须大于6个字符!';
  188. }else{
  189. $User->password =md5(md5(($password)));
  190. $User->save();
  191. $data['statusCode']=200;
  192. $data['message']='密码修改成功!';
  193. }
  194. }
  195. $this->mtReturn($data['statusCode'],$data['message'],1);
  196. }else{
  197. $this->assign('username',session('zt_username'));
  198. $this->assign('truename',session('zt_truename'));
  199. $this->display();
  200. }
  201. }
  202. }
  203. protected function mtReturn($status,$info,$type=0) {
  204. if($status===200){
  205. $dat['username'] =session('zt_username');
  206. $dat['content'] = $info;
  207. $dat['os']=$_SERVER['HTTP_USER_AGENT'];
  208. $dat['url'] = U();
  209. $dat['addtime'] = date("Y-m-d H:i:s",time());
  210. $dat['ip'] = get_client_ip();
  211. M("log")->add($dat);
  212. }
  213. if($type==1){
  214. echo json_encode(array('statusCode'=> $status,'message'=> $info));
  215. }
  216. else{
  217. exit(json_encode(array('statusCode'=> $status,'message'=> $info)));
  218. }
  219. ;
  220. }
  221. public function Calling(){
  222. $ModelList=M('customer');
  223. $Data=I();
  224. $Phone=$Data['phone'];
  225. $DataCallid=$Data['callid'];
  226. if(empty($Phone)){
  227. $this->mtReturn(300,'来电话为空',0);
  228. }
  229. if(preg_match('/^00.*/',$Phone)){
  230. $Phone=substr($Phone,1);
  231. }//匹配两个0去除一个0 得出数据01500001125、15000011254、07753556432、02133328656
  232. if(preg_match('/^010.*/',$Phone)){
  233. }//匹配010 得出数据01033328656
  234. else if(preg_match('/^01.*/',$Phone)){
  235. $Phone=substr($Phone,1);
  236. }//匹配01 去除一个0 得出数据15000011254
  237. else{
  238. }//匹配其他 得出数据15000011254、07753556432/021333328656
  239. $Map['phone']=array('like','%'.$Phone);
  240. $Map['office_tel']=array('like','%'.$Phone);
  241. $Map['_logic'] = 'OR';
  242. $ResData=$ModelList->where($Map)->field('id')->select();
  243. if(!empty($ResData)){
  244. $ResFult['par1']="index.php/Home/Work/edit/id/".$ResData[0]['id']."/callid/".$DataCallid;
  245. $ResFult['par2']="来电(编辑)";
  246. }
  247. else{
  248. $ResFult['par1']="index.php/Home/Work/add/phone/".$Phone."/callid/".$DataCallid;
  249. $ResFult['par2']="来电(新增)";
  250. }
  251. $ResFult['par3']=$Phone;
  252. echo json_encode($ResFult);
  253. }
  254. /*
  255. module devices使用
  256. public function getaddr2(){
  257. $_SESSION['XXXXXXXXXXXXXXXXXXXXXXXXX']=I();
  258. echo '[
  259. {"value":"0", "label":"所有城市"},
  260. {"value":"1", "label":"asdf"}
  261. ]';
  262. }*/
  263. public function openowner(){
  264. $data=I();
  265. // if ($data){
  266. $sql="select * from sp_movewater where time>=DATE_SUB(NOW(),INTERVAL 1 MINUTE)";
  267. $res = M()->query($sql);
  268. // }
  269. $this->assign('device',$res);
  270. $this->display('onpenowner');
  271. }
  272. }