package com.energy.manage.service.service.system;


import com.alibaba.fastjson.JSONObject;
import com.energy.manage.common.base.BaseService;
import com.energy.manage.common.base.Page;
import com.energy.manage.common.po.system.SysUserInfoPO;
import com.energy.manage.common.reponse.ResultResp;
import com.energy.manage.service.domain.vo.system.UserRoleVo;
import com.energy.manage.service.domain.vo.system.UserVo;

import java.util.List;

public interface SysUserInfoService extends BaseService<SysUserInfoPO> {

    boolean addSystemUser(SysUserInfoPO userPO, Integer roleId);

    SysUserInfoPO selectOne(SysUserInfoPO userPO);

    Page<UserRoleVo> getUserByName(Integer pageNum, Integer pageSize, String userName, Integer roleId);

    List<SysUserInfoPO> getUserList();

    boolean updateUser(SysUserInfoPO userPO);

    boolean deleteUser(SysUserInfoPO userPO);

    boolean updateUserRole(SysUserInfoPO userPO, Integer roleId);

    UserRoleVo getUserById(Integer userId);

    UserVo getUserInfoByUserId(Integer userId);

    ResultResp updateUserPWD(Integer userId, String oldPWD, String newPWD);

    List<UserVo>  getNonBoundTeacherUser(String userName);


}
