package com.pig4cloud.pigx.app.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.pig4cloud.pigx.app.api.dto.AppUserDTO;
import com.pig4cloud.pigx.app.api.dto.AppUserInfo;
import com.pig4cloud.pigx.app.api.entity.AppUser;
import com.pig4cloud.pigx.app.api.vo.AppUserExcelVO;
import com.pig4cloud.pigx.app.api.vo.AppUserVO;
import com.pig4cloud.pigx.common.core.util.R;
import org.springframework.validation.BindingResult;

import java.util.List;

/**
 * app用户表
 *
 * @author aeizzz
 * @date 2022-12-07 09:52:03
 */
public interface AppUserService extends IService<AppUser> {

	Boolean regUser(AppUserDTO appUser);

	Boolean updateUser(AppUserDTO appUser);

	Boolean saveUser(AppUserDTO appUser);

	List<AppUserExcelVO> listUser(AppUserDTO appUser);

	IPage getUsersWithRolePage(Page page, AppUserDTO appUserDTO);

	AppUserInfo findUserInfo(AppUser user);

	R updateUserInfo(AppUserDTO userDto);

	AppUserVO selectUserVoById(Long userId);

	Boolean deleteAppUserByIds(Long[] ids);

	R importUser(List<AppUserExcelVO> excelVOList, BindingResult bindingResult);

	R registerAppUser(AppUserDTO appUser);

}
