This commit is contained in:
knowpia
2022-09-08 15:23:13 +08:00
commit 96a49d1bd6
26 changed files with 1597 additions and 0 deletions

128
app/controller/User.php Normal file
View File

@@ -0,0 +1,128 @@
<?php
namespace app\controller;
use think\facade\Db;
class User
{
//获取用户信息
public function info()
{
if(empty($GLOBALS['data']['userid'])){
return show("请上传TOKEN");
}
$userid = $GLOBALS['data']['userid'];
$info = Db::name("app_users")->where("id",$userid)->find();
if(empty($info)) return show("无此用户信息");
unset($info['openid']);
return show(SUCCESS_MESSAGE,SUCCESS_CODE,$info);
}
//修改头像
public function modify_avatar(){
if(empty($GLOBALS['data']['userid'])){
return show("请上传TOKEN");
}
$userid = $GLOBALS['data']['userid'];
$avatarUrl = $GLOBALS['data']['data']['avatar_url'];
if(empty($avatarUrl)){
return show("请上传头像!");
}
Db::name("app_users")->where("id",$userid)->update(['avatar'=>$avatarUrl]);
return show("头像修改成功!",SUCCESS_CODE,[]);
}
//修改昵称
public function modify_nickname(){
if(empty($GLOBALS['data']['userid'])){
return show("请上传TOKEN");
}
$userid = $GLOBALS['data']['userid'];
$nickname = $GLOBALS['data']['data']['nickname'];
if(empty(nickname)){
return show("请输入昵称!");
}
Db::name("app_users")->where("id",$userid)->update(['nickname'=>$nickname]);
return show("昵称修改成功!",SUCCESS_CODE,[]);
}
//狮友认证
public function verify(){
if(empty($GLOBALS['data']['userid'])){
return show("请上传TOKEN");
}
$userid = $GLOBALS['data']['userid'];
$mobileNumber = $GLOBALS['data']['data']['mobile'];
if(!is_mobile_number($mobileNumber)){
return show("手机号不正确!");
}
$res = Db::name("shiyou")->where("mobile",$mobileNumber)->find();
if(empty($res)) {
return show("未找到狮友信息!");
}
$code = Db::name("app_sms")->order("id desc")->where("mobile", $mobileNumber)->find();
if(empty($code)){
return show("请发送短信后再试!");
}
Db::name("app_sms")->where("id",$code['id'])->inc("count",1)->update();
if((time() - $code['create_time'])>15*60){
return show("短信已经失效,请重新发送!");
}
if($GLOBALS['data']['data']['code'] != $code["code"]){
return show("验证码不正确!");
}
Db::name("app_users")->where("id",$userid)->update(['identity'=>1]);
return show("狮友认证成功!",SUCCESS_CODE,[]);
}
//发送验证码
public function getcode(){
if(empty($GLOBALS['data']['data']['mobile'])){
return show("手机号不能为空!");
}
$mobileNumber = $GLOBALS['data']['data']['mobile'];
if(!is_mobile_number($mobileNumber)){
return show("手机号不正确!");
}
$user = Db::name("shiyou")->where("mobile",$mobileNumber)->find();
if(empty($user)) return show("手机号狮友库中未找到,请核对!");
$timeOut = 60;
$info = Db::name("app_sms")->order("id desc")->where("mobile",$mobileNumber)->find();
if(!empty($info) && (time() - $info['create_time'])<$timeOut){
return show("请在". ($timeOut-(time()-$info['create_time'])) ."后重新发送!");
}
$code = rand(111111,999999);
try {
if(!env("APP_DEBUG")){
$result = \app\tools\Sms::sendmsg($mobileNumber,$code);
if($result['code'] != 1){
return show("运营商接口无法返回!");
}
}else{
$code = "000000";
}
Db::name("app_sms")->insert([
"ipaddress"=>get_client_ip(),
"mobile"=>$mobileNumber,
"code"=>$code,
"create_time"=>time(),
"count"=>0
]);
return show("发送成功!",SUCCESS_CODE);
}catch(\Exception $e){
return show("发送失败,请联系客服人员!");
}
}
}