package com.xkrs.straw.service; import com.xkrs.model.qo.SysUserQo; import com.xkrs.model.vo.SysUserVo; import com.xkrs.straw.model.entity.SysUserEntity; import javax.servlet.http.HttpServletRequest; import java.util.List; /** * 系统用户服务接口 */ public interface SysUserService { /** * 查询Vip用户 * * @return */ String selectVipUser(); /** * 检查用户名 * * @param userName * @return */ boolean checkUserName(String userName); /** * 保存用户 * * @param sysUserQo * @return */ String addUser(SysUserQo sysUserQo, HttpServletRequest servletRequest); /** * 删除系统用户 * * @param userName * @return */ String deleteSysUser(String userName); /** * 获取系统用户实体根据用户名 * * @param userName * @return */ SysUserEntity getSysUserByUserName(String userName); /** * 用户登录更新 * * @param userName * @param ipAddress * @return */ int updateSysUserLogin(String userName, String ipAddress); /** * 系统用户更新 * * @param sysUserQo * @return */ int updateSysUser(SysUserQo sysUserQo); /** * 软删除系统用户 * * @param id * @return */ int softDeleteGeneralUser(Long id); /** * 查询用户的信息 * * @return */ List selectAllUser(); /** * 启用 * * @param userId */ void updateEnable(Long userId); /** * 禁用 * * @param userId */ void updateDisable(Long userId); /** * 用户修改密码 * * @param oldPassword * @param newPassword * @param confirmPassword * @param sysUserEntity * @return */ String updatePassword(String oldPassword, String newPassword, String confirmPassword, SysUserEntity sysUserEntity); /** * 管理员修改用户的密码 * * @param userId * @param newPassword * @param confirmPassword * @return */ String adminUpdatePassword(Long userId, String newPassword, String confirmPassword); /** * 获取系统用户实体根据用户名 * * @param userName * @return */ SysUserVo getUserByUserName(String userName); /** * 按天数修改账号到期时间 * * @param userId * @param dayNum * @return */ String updateExpireDateDay(Long userId, Integer dayNum); /** * 按月份修改账号到期时间 * * @param userId * @param dayNum * @return */ String updateExpireDateMonth(Long userId, Integer dayNum); /** * 按年份修改账号到期时间 * * @param userId * @param dayNum * @return */ String updateExpireDateYear(Long userId, Integer dayNum); /** * 设置账号时间永久有效 * * @param userId * @return */ String updatePermanent(Long userId); /** * 修改账号到期时间 * * @param userId * @param overTime * @return */ String updateOverTime(Long userId, String overTime); /** * 记录用户登录次数 * * @param userId * @param loginNum */ void updateLoginNum(Long userId, Integer loginNum); /** * 记录用户登录时间 * * @param userId * @param loginLastTime */ void updateLoginLastTime(Long userId, String loginLastTime); }