修改用户资料 后端同步给腾讯

This commit is contained in:
2025-08-20 17:32:40 +08:00
parent 5eadc246b5
commit b1681054a5
4 changed files with 43 additions and 2 deletions

View File

@@ -727,6 +727,35 @@ class Tencent extends Model
} }
} }
//修改用户信息
public function modify_user_info($member_id, $member_name = '', $member_face_url = '')
{
$config = get_system_config();
$tencentyun_im_appid = $config['tencentyun_im_appid'];
$im_admin = 'administrator';
$admin_sig = $this->tencent_user_sig_info($im_admin);
$rand = rand(111111111,9999999999);
$postUrl = 'https://console.tim.qq.com/v4/profile/portrait_set?sdkappid='.$tencentyun_im_appid.'&identifier='.$im_admin.'&usersig='.$admin_sig.'&random='.$rand.'&contenttype=json';
$curlPost['From_Account'] = 'u'.$member_id;
$curlPost['ProfileItem'] = [
[
'Tag' => 'Tag_Profile_IM_Nick',
'Value' => $member_name
],
[
'Tag' => 'Tag_Profile_IM_Image',
'Value' => $member_face_url
]
];
$curlPost = json_encode($curlPost);
$reslut = $this->tencent_post_url($postUrl, $curlPost);
if($reslut['ActionStatus'] == 'OK'){
return ['code' => 1, 'msg' => '操作成功', 'data' => null];
}else{
return ['code' => 0, 'msg' => $reslut['ErrorCode'], 'data' => null];
}
}
//====新写的↓=====上面的 能用则用============================================================================================================= //====新写的↓=====上面的 能用则用=============================================================================================================
// 获取 Access Token需缓存并定时刷新每20分钟一次 // 获取 Access Token需缓存并定时刷新每20分钟一次

View File

@@ -713,6 +713,12 @@ class User extends Model
$text['text'] = '用户 ' . $text['FromUserInfo']['nickname'] .' 修改了信息'; $text['text'] = '用户 ' . $text['FromUserInfo']['nickname'] .' 修改了信息';
model('Chat')->sendMsg(1035,$room_id,$text,$user_id); model('Chat')->sendMsg(1035,$room_id,$text,$user_id);
} }
//给腾讯同步用户信息
$member_name = db::name('user')->where('id' , $user_id)->value('nickname');
$member_face_url = db::name('user')->where('id' , $user_id)->value('avatar');
model('Tencent')->modify_user_infos($user_id, $member_name, $member_face_url);
return ['code' => 1, 'msg' => '修改成功', 'data' => null]; return ['code' => 1, 'msg' => '修改成功', 'data' => null];
} }
catch(\Exception $e){ catch(\Exception $e){

View File

@@ -82,7 +82,10 @@ class UserData extends Model
$reslut = model('User')->update($data); $reslut = model('User')->update($data);
if ($reslut) { if ($reslut) {
$user_info = model('User')->where('id', $uid)->field('id,nickname,avatar,user_code')->find(); $user_info = model('User')->where('id', $uid)->field('id,nickname,avatar,user_code')->find();
//给腾讯同步用户信息
$member_name = $user_info['nickname'];
$member_face_url = $user_info['avatar'];
model('Tencent')->modify_user_infos($uid, $member_name, $member_face_url);
return ['code' => 1, 'msg' => '修改成功', 'data' => $user_info]; return ['code' => 1, 'msg' => '修改成功', 'data' => $user_info];
} else { } else {
return ['code' => 0, 'msg' => '修改失败,','data' =>null]; return ['code' => 0, 'msg' => '修改失败,','data' =>null];

View File

@@ -641,7 +641,10 @@ class UserZone extends Model
//获取字符串的长度和 判断字符串里面是否有, //获取字符串的长度和 判断字符串里面是否有,
if((mb_strlen($v['loginip'], 'utf-8') > 8 && mb_strpos($v['loginip'], ',') !== false)){ if((mb_strlen($v['loginip'], 'utf-8') > 8 && mb_strpos($v['loginip'], ',') !== false)){
$ipd = explode(',', $v['loginip']); $ipd = explode(',', $v['loginip']);
$v['loginip'] = $ipd[0].' · '.$ipd[1];//省·市 // $v['loginip'] = $ipd[0].' · '.$ipd[1];//省·市
$sheng = $ipd[0] =='(null)' ? '' : $ipd[0];
$shi = $ipd[1] ?? '';
$v['loginip'] = $sheng.' '.$shi;//省·市
}else{ }else{
$v['loginip'] = '未知'; $v['loginip'] = '未知';
} }