Login.php 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. <?php
  2. /**
  3. * @2021-7-10
  4. **/
  5. namespace app\Admin\controller;
  6. use think\admin\helper\TokenHelper;
  7. use think\Db;
  8. use app\Admin\model\User;
  9. class Login
  10. {
  11. /**
  12. * @method post
  13. * @param username 账户名
  14. * @param password 密码
  15. *
  16. */
  17. public function index(){
  18. $post=request()->post();
  19. $username = isset($post['username'])&&$post['username']!="" ? trim($post['username']) :"";
  20. if($username==""){
  21. return error_show(1004,"参数username 不能为空");
  22. }
  23. $password = isset($post['password'])&&$post['password']!="" ? trim($post['password']):"";
  24. if($password==""){
  25. return error_show(1004,"参数password 不能为空");
  26. }
  27. $account = Db::name("admin")->where(["is_del"=>0,"username"=>$username])->find();
  28. if(empty($account)){
  29. // User::get(1);
  30. echo User::getLastSql();
  31. //var_dump(\app\Admin\model\User::getLastSql());
  32. return error_show(1005,"账户未找到");
  33. }
  34. if($account['status']==0){
  35. return error_show(1005,"账户已禁用");
  36. }
  37. $pass = sha1($password.$account['salt']);
  38. if($pass!=$account['password']){
  39. return error_show(1006,"账户密码错误");
  40. }
  41. $token = makeToken($account);
  42. $userinfo = Db::name("account_info")->alias("a")->join("fc_rela_account b","b.account_info=a.id")->where(["b.accountid"=>$account['id']])->field("a.*")->find();
  43. $userinfo['token'] = $token;
  44. write_log("账户{$account['username']}登录系统","","login","",0);
  45. return app_show(0,"登录成功",$userinfo);
  46. }
  47. /**
  48. * @param Token
  49. * 退出登录
  50. */
  51. public function logout(){
  52. $post=request()->post();
  53. $token = isset($post['token'])&&$post['token']!="" ? trim($post['token']) :"";
  54. if($token==""){
  55. return error_show(101,"参数token 不能为空");
  56. }
  57. $verify = verifyToken($token);
  58. if($verify['code']!=0){
  59. return error_show($verify['code'],$verify['msg']);
  60. }
  61. $info = Db::name("admin_token")->where(["token"=>$token])->update(['token'=>""]);
  62. if($info){
  63. return app_show(0,"退出成功");
  64. }else{
  65. return error_show(1004,"退出失败");
  66. }
  67. }
  68. public function LastVersion(){
  69. $version = Db::name("version")->order("addtime desc")->find();
  70. return app_show(0,"获取成功",$version);
  71. }
  72. }