Files
midi-php/application/api/controller/UserData.php

153 lines
5.4 KiB
PHP
Raw Normal View History

2025-08-13 10:43:56 +08:00
<?php
namespace app\api\controller;
use app\common\controller\BaseCom;
use think\Db;
class UserData extends BaseCom
{
//用户第一次修改信息
public function modify_fist_user_info()
{
// $this->uid = input('user_id', 0);
$key_name = "api:user:follow_user:" . $this->uid;
redis_lock_exit($key_name);
$nick_name = input('nickname');
$birthday = input('birthday');
$sex = input('sex', 0);
$head_pic = input('avatar', '');
$reg_code = input('init_code', '');
$reslut = model('UserData')->modify_fist_user_info($nick_name, $birthday, $sex, $head_pic, $reg_code,$this->uid);
redis_unlock($key_name);
return V($reslut['code'], $reslut['msg'], $reslut['data']);
}
//根据性别选择用户头像
public function modify_user_sex_pic(){
$sex = input('sex', 0);
$reslut = model('UserData')->modify_pic_user_info($sex);
return V($reslut['code'], $reslut['msg'], $reslut['data']);
}
/*
* 随机生成用户昵称
*/
public function random_nickname()
{
$nickname = random_nickname(1);
return V(1, "获取成功", $nickname);
}
//修改用户 信息
public function modify_user_info()
{
$key_name = "api:user:follow_user:" . $this->uid;
redis_lock_exit($key_name);
$nick_name = input('nick_name');
$birthday = input('birthday');
$sex = input('sex', 1);
$head_pic = input('head_pic', '');
$images = input('images', '');//背景图(以json字符串的形式可以多图)
$autograph = input('autograph', '');//简介)
$tag_id = input('tag_id','');//标签id 多选逗号分隔
$reslut = model('UserData')->modify_user_info($this->uid, $nick_name, $birthday, $sex, $head_pic, $images, $autograph,$tag_id);
redis_unlock($key_name);
return V($reslut['code'], $reslut['msg'], $reslut['data']);
}
//修改/设置登录密码
public function modify_password()
{
$trade_password = input('new_password');
$mobile = input('mobile');
$user_id = input('user_id');
$sms_code = input('sms_code', ''); //短信验证码
//default-默认登录1-更换手机号2绑定手机号3-忘记密码4-设置密码5-账号注销6-提现
$reslut = model('sms')->verification_code(4,$mobile, $sms_code);
if ($reslut['code'] == 0) {
return V($reslut['code'], $reslut['msg'], $reslut['data']);
}
$reslut = model('UserData')->modify_password($trade_password,$user_id);
return V($reslut['code'], $reslut['msg'], $reslut['data']);
}
//绑定手机号
public function bind_mobile()
{
$key_name = "api:user:bind_mobile:" . $this->uid;
redis_lock_exit($key_name);
$mobile = input('new_mobile');
$sms_code = input('sms_code', '');
//default-默认登录1-更换手机号2绑定手机号3-忘记密码4-设置密码5-账号注销6-提现
$reslut = model('sms')->verification_code(2,$mobile, $sms_code);
if ($reslut['code'] == 0) {
redis_unlock($key_name);
return v($reslut['code'], $reslut['msg'], $reslut['data']);
}
$reslut = model('UserData')->modify_mobile($mobile,$this->uid);
redis_unlock($key_name);
return V($reslut['code'], $reslut['msg'], $reslut['data']);
}
//更换手机号
public function modify_mobile()
{
$key_name = "api:user:modify_mobile:" . $this->uid;
redis_lock_exit($key_name);
$mobile = input('mobile');
$new_mobile = input('new_mobile');
$sms_code = input('sms_code', '');
$user_mobile = db::name('user')->where('id',$this->uid)->value('mobile');
if ($user_mobile != $mobile){
redis_unlock($key_name);
return V(0, "旧手机号错误", null);
}
if ($new_mobile == $user_mobile){
redis_unlock($key_name);
return V(0, "新手机号不能与旧手机号一致", null);
}
$reslut = model('sms')->verification_code(1,$new_mobile, $sms_code);
if ($reslut['code'] == 0) {
redis_unlock($key_name);
return v($reslut['code'], $reslut['msg'], $reslut['data']);
}
$reslut = model('UserData')->modify_mobile($new_mobile,$this->uid);
redis_unlock($key_name);
return V($reslut['code'], $reslut['msg'], $reslut['data']);
}
//实名认证
public function real_name()
{
$key_name = "api:user:real_name:" . $this->uid;
redis_lock_exit($key_name);
$real_name = input('real_name');
$card_number = input('card_number');
$reslut = model('UserData')->real_name($this->uid,$real_name, $card_number);
redis_unlock($key_name);
return V($reslut['code'], $reslut['msg'], $reslut['data']);
}
//实名认证结果获取
public function real_name_result()
{
$orderNo = input('orderNo', '');
$reslut = model('UserData')->real_name_result($this->uid,$orderNo);
return V($reslut['code'], $reslut['msg'], $reslut['data']);
}
//实名认证后的信息
public function real_name_info()
{
$reslut = model('UserData')->real_name_info($this->uid);
return V($reslut['code'], $reslut['msg'], $reslut['data']);
}
}