package com.yanzhu.system.service;

import com.yanzhu.system.api.domain.SysUserUniopen;

import java.util.List;

/**
 * 用户授权Service接口
 * 
 * @author JiangYuQi
 * @date 2024-10-13
 */
public interface ISysUserUniopenService 
{
    /**
     * 查询用户授权
     * 
     * @param id 用户授权主键
     * @return 用户授权
     */
    public SysUserUniopen selectSysUserUniopenById(Long id);

    /**
     * 查询用户授权列表
     *
     * @param userId 用户主键
     * @return 用户授权集合
     */
    public List<SysUserUniopen> selectSysUserUniopenByUserId(Long userId);

    /**
     * 查询用户授权列表
     *
     * @param userName 用户名称
     * @return 用户授权集合
     */
    public List<SysUserUniopen> selectSysUserUniopenByUserName(String userName);

    /**
     * 查询用户授权
     *
     * @param unionid 唯一关联id
     * @return 用户授权集合
     */
    public SysUserUniopen selectSysUserUniopenByUnionid(String unionid);

    /**
     * 查询用户授权
     *
     * @param maOpenId 小程序授权id
     * @return 用户授权集合
     */
    public SysUserUniopen selectSysUserUniopenByMaOpenId(String maOpenId);

    /**
     * 查询用户授权
     *
     * @param mpOpenId 公众号授权id
     * @return 用户授权集合
     */
    public SysUserUniopen selectSysUserUniopenByMpOpenId(String mpOpenId);

    /**
     * 查询用户授权列表
     * 
     * @param sysUserUniopen 用户授权
     * @return 用户授权集合
     */
    public List<SysUserUniopen> selectSysUserUniopenList(SysUserUniopen sysUserUniopen);

    /**
     * 新增用户授权
     * 
     * @param sysUserUniopen 用户授权
     * @return 结果
     */
    public int insertSysUserUniopen(SysUserUniopen sysUserUniopen);

    /**
     * 修改用户授权
     * 
     * @param sysUserUniopen 用户授权
     * @return 结果
     */
    public int updateSysUserUniopen(SysUserUniopen sysUserUniopen);

    /**
     * 批量删除用户授权
     * 
     * @param ids 需要删除的用户授权主键集合
     * @return 结果
     */
    public int deleteSysUserUniopenByIds(Long[] ids);

    /**
     * 删除用户授权信息
     * 
     * @param id 用户授权主键
     * @return 结果
     */
    public int deleteSysUserUniopenById(Long id);
}
