package com.izouma.awesomeadmin.service;

import java.util.List;

import com.izouma.awesomeadmin.dto.Page;
import com.izouma.awesomeadmin.model.UserInfo;
import com.izouma.awesomeadmin.service.impl.UserInfoServiceImpl;

/**
 * user_info service接口类
 * Tue Apr 17 10:32:49 CST 2018  Suo Chen Cheng
 */
public interface UserInfoService {

    List<UserInfo> getUserInfoList(UserInfo record);

    List<UserInfo> getUserInfoByPage(Page page, UserInfo record);

    UserInfo getUserInfoById(String id);

    UserInfo getUserInfo(UserInfo record);

    boolean createUserInfo(UserInfo record);

    boolean deleteUserInfo(String id);

    boolean updateUserInfo(UserInfo record);

    UserInfo login(String username, String password);

    UserInfo loginSms(String phone, String code, String sessionId) throws UserInfoServiceImpl.LoginException;

    UserInfo loginAppToken(String token);

    List<String> findDepartLeader(String userId);

    List<String> findUserByRoleName(String roleName);

    UserInfo loginWeiXin(String openId, String nickname, String sex, String headimgurl);

}

