package com.amms.service;

import com.amms.domain.SysUser;
import com.amms.domain.dto.LoginParam;
import com.amms.domain.vo.Result;

import java.util.List;

public interface ISysUserService {

    /**
     * 登录方法
     * @param loginParam 登录参数
     * @return
     */
    Result login(LoginParam loginParam);

    /**
     * 查询用户列表
     * @param sysUser 用户
     * @return 用户
     */
    List<SysUser> selectSysUserList(SysUser sysUser);

    /**
     * 查询用户
     * @param username 用户
     * @return 用户
     */
    SysUser selectByUsername(String username);

    /**
     * 查询用户详情
     * @param id 用户
     * @return 用户
     */
    SysUser selectById(Long id);

    /**
     * 新增用户
     *
     * @param sysUser 用户
     * @return 结果
     */
    int insertSysUser(SysUser sysUser);

    /**
     * 修改用户
     *
     * @param sysUser 用户
     * @return 结果
     */
    int updateSysUser(SysUser sysUser);

    /**
     * 删除用户
     *
     * @param id 用户主键
     * @return 结果
     */
    int deleteSysUserById(Long id);

    int registerTourist(SysUser sysUser);

}
