You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

64 lines
1.7 KiB

<?php
namespace app\base\logic\mptoutiao;
use app\base\model\mptoutiao\MpToutiaoUser;
use app\base\model\user\UserInfo;
use think\App;
use think\facade\Db;
class User extends Base
{
/**
* 更新用户信息
* @param array $data 用户信息
* @date 2022-10-19
*/
public function updateUserInfo($data)
{
$mp_toutiao_user_model = new MpToutiaoUser();
$info_model = new UserInfo();
Db::startTrans();
// 更新抖音小程序用户表
$data = [
'uid' => $this->mid,
'openid' => $data['openid'],
'nickname' => $data['nickname'],
'avatar_url' => $data['avatar_url'],
'gender' => $data['gender'],
'country' => $data['country'],
'province' => $data['province'],
'city' => $data['city'],
'language' => $data['language'],
];
$res = $mp_toutiao_user_model->updateUser($data);
if (!$res) {
Db::rollback();
return sendErrorArray(3001, '更新小程序信息失败');
}
// 更新用户信息表
if ($this->userId) {
$info_data = [
'uid' => $this->mid,
'user_id' => $this->userId,
'user_agent' => $this->userAgent,
'nick_name' => $data['nickname'],
'head_img' => $data['avatar_url']
];
$res = $info_model->updateUser($info_data);
if (!$res) {
Db::rollback();
return sendErrorArray(3002, '更新用户信息失败');
}
}
Db::commit();
return sendSuccessArray();
}
}