diff --git a/digital_doctor/application/api/controller/Usersty.php b/digital_doctor/application/api/controller/Usersty.php index 3ae20f6..1fd42e7 100644 --- a/digital_doctor/application/api/controller/Usersty.php +++ b/digital_doctor/application/api/controller/Usersty.php @@ -71,21 +71,24 @@ class Usersty extends BaseHttpApi unset($user['password']); - //$expires = 7*86400+time(); - - - //返回票据 - $ticketstr = md5($user['username']); - - //修改有效期 - Db::table('fa_ty_users') - ->data([ - 'ticket'=>$ticketstr, - //'expires'=>$expires,//7天 - ]) - ->where('username',$username) - ->update(); + //表示已登陆 + if($user['ticket']){ + //返回票据 + $ticketstr = $user['ticket']; + }else{ + //未登录 + $expires = 7*86400+time(); + $ticketstr = md5($user['username'].$expires); + //修改有效期 + Db::table('fa_ty_users') + ->data([ + 'ticket'=>$ticketstr, + 'expires'=>$expires,//7天 + ]) + ->where('username',$username) + ->update(); + } return Tools::set_ok('登录成功',['ticket'=>$ticketstr,'user'=>$user]); }); diff --git a/digital_doctor/application/api/logic/TyuserLogic.php b/digital_doctor/application/api/logic/TyuserLogic.php index 593f13e..79beb02 100644 --- a/digital_doctor/application/api/logic/TyuserLogic.php +++ b/digital_doctor/application/api/logic/TyuserLogic.php @@ -40,10 +40,17 @@ class TyuserLogic extends BaseLogic } Tools::log_to_write_txt(['设置离线时间:clientid:' . $client_id]); + $username = $user['username']; Db::table(TabConf::$fa_device) ->where('clientid', $client_id) ->delete(); - + //把ticket设置为空,标识离线 + Db::table('fa_ty_users') + ->data([ + 'ticket'=>'',//修改为离线 + ]) + ->where('username',$username) + ->update(); //在$client_id无效的情况下可能会抛出异常 //$json = BaseWssApi::wss_json('ok', '用户已离线');