package com.imooc.service;

import java.util.List;
import java.util.Map;
import com.imooc.bo.UpdatedUserBO;
import com.imooc.mo.Token;
import com.imooc.pojo.Users;
import com.imooc.utils.PagedGridResult;
import com.imooc.vo.UsersVO;

/**
 * @author vercen
 * @version 1.0
 * @date 2023/5/25 21:02
 */
public interface UserService {
	/**
	 * 判断用户是否存在，如果存在则返回用户信息
	 */
	public Users queryMobileIsExist(String mobile);

	/**
	 * 创建用户信息，并且返回用户对象
	 */
	public Users createUser(String mobile);

	/**
	 * 根据用户主键查询用户信息
	 */
	public Users getUser(String userId);

	/**
	 * 用户信息修改
	 */
	public Users updateUserInfo(UpdatedUserBO updatedUserBO);

	/**
	 * 用户信息修改
	 */
	public Users updateUserInfo(UpdatedUserBO updatedUserBO, Integer type);

	/**
	 * 创建用户打通短视频和商城系统
	 * 
	 * @param mobile
	 * @return
	 */
	Map<String, Object> createUserNew(String mobile);

	/**
	 * 获取商城token
	 * 
	 * @param userId
	 * @return
	 */
	Token getShopToken(String userId);

	/**
	 * 从商城系统创建账号
	 * 
	 * @param mobile
	 * @return
	 */
	Users createUserFromShop(String mobile, String memberId);
	
	/**
	 * 从商城系统获取短视频账户信息
	 * @param memberId
	 * @return
	 */
	String getUserInfoFromShop(String memberId);

	/**
	 * 根据昵称搜索用户
	 * @param nickname
	 * @param page
	 * @param pageSize
	 * @return
	 */
    List<UsersVO> searchByNickname(String nickname, Integer page, Integer pageSize, String id);
}
