| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- package com.aijiuyi.admin.service;
- import com.aijiuyi.admin.common.entity.Result;
- import com.aijiuyi.admin.controller.dto.AppLoginDTO;
- import com.aijiuyi.admin.controller.dto.AppUserQueryDTO;
- import com.aijiuyi.admin.controller.dto.LoginDTO;
- import com.aijiuyi.admin.entity.AppUser;
- import com.baomidou.mybatisplus.core.metadata.IPage;
- import com.baomidou.mybatisplus.extension.service.IService;
- import java.util.Map;
- /**
- * 应用用户 Service
- * 统一用户中心:用户、专家、管理员均使用此表,通过 userType 区分
- */
- public interface AppUserService extends IService<AppUser> {
- /**
- * 管理员登录
- * 通过用户名+密码登录,返回 Token 和用户信息
- *
- * @param loginDTO 登录参数(用户名、密码)
- * @return 包含 token 和用户基本信息的 Result
- */
- Result<Map<String, Object>> login(LoginDTO loginDTO);
- /**
- * 退出登录
- * 从 Redis 中删除 Token,使 Token 立即失效
- *
- * @param token 当前用户的 Token(从请求头中获取)
- */
- void logout(String token);
- /**
- * App 端发送短信验证码
- * 60 秒内同一手机号不重复发送,验证码 5 分钟有效
- *
- * @param phone 手机号
- */
- void sendSmsCode(String phone);
- /**
- * App 端手机号验证码登录
- * 手机号未注册时自动注册为用户(userType=1)
- * Token 永久有效(除非后台主动踢下线)
- *
- * @param loginDTO 手机号+验证码
- * @return 包含 token 和用户基本信息的 Result
- */
- Result<Map<String, Object>> appLogin(AppLoginDTO loginDTO);
- /**
- * 分页查询应用用户列表
- *
- * @param queryDTO 查询条件
- * @return 分页结果
- */
- IPage<AppUser> pageList(AppUserQueryDTO queryDTO);
- /**
- * 修改用户状态(禁用/启用)
- *
- * @param id 用户ID
- * @param status 目标状态:1=启用,0=禁用
- */
- void updateStatus(Long id, Integer status);
- /**
- * 新增应用用户
- *
- * @param appUser 用户信息
- */
- void addUser(AppUser appUser);
- /**
- * 修改应用用户
- *
- * @param appUser 用户信息
- */
- void updateUser(AppUser appUser);
- /**
- * 删除应用用户(逻辑删除)
- *
- * @param id 用户ID
- */
- void deleteUser(Long id);
- }
|