package com.bstek.bdf2.core.service; import java.util.Collection; import org.springframework.security.core.userdetails.UserDetailsService; import com.bstek.bdf2.core.business.IUser; import com.bstek.bdf2.core.model.DefaultUser; import com.bstek.dorado.data.provider.Criteria; import com.bstek.dorado.data.provider.Page; /** * @since 2013-1-18 * @author Jacky.gao */ public interface IUserService extends UserDetailsService { public static final String BEAN_ID = "bdf2.userService"; /** * 鍒嗛〉鍔犺浇鐢ㄦ埛鏁版嵁 * * @param page * Dorado7鍒嗛〉瀵硅薄锛屽叾涓寘鍚玴ageNo,pageSize锛屽垎椤靛悗鐨勬暟鎹篃濉 * 厖鍒拌繖涓猵age瀵硅薄褰撲腑锛岃鍙傛暟涓嶅彲涓虹┖ * @param companyId * 瑕佸姞杞藉摢涓猚ompanyId涓嬬殑鐢ㄦ埛淇℃伅锛岃鍙傛暟涓嶅彲涓虹┖ * @param criteria * Dorado7鏉′欢瀵硅薄锛屽彲浠庝腑鍙栧埌鐩稿簲鐨勬潯浠跺�硷紝璇ュ弬鏁板彲涓虹┖ */ void loadPageUsers(Page page, String companyId, Criteria criteria); /** * 鍔犺浇鎸囧畾閮ㄩ棬ID涓嬬殑鐢ㄦ埛淇℃伅 * * @param deptId * 闅跺睘鐨勯儴闂↖D锛岃鍙傛暟涓嶅彲涓虹┖ * @return 杩斿洖鍙栧埌鐨勭敤鎴烽泦鍚� */ Collection loadUsersByDeptId(String deptId); /** * 妫�鏌ョ敤鎴峰瘑鐮佹槸鍚︽纭紝濡傛灉涓嶆纭繑鍥為敊璇秷鎭紝濡傛纭垯杩斿洖null * * @param username * 鐢ㄦ埛鍚� * @param password * 瑕佹鏌ユ湭鍔犲瘑鐨勫瘑鐮� * @return 涓嶆纭繑鍥為敊璇秷鎭紝濡傛纭垯杩斿洖null */ String checkPassword(String username, String password); boolean checkPassword(String username, String password,DefaultUser user); /** * 淇敼鎸囧畾鐢ㄦ埛鐨勫瘑鐮佷俊鎭� * * @param username * 鐢ㄦ埛鍚� * @param newPassword * 鏂板瘑鐮� */ void changePassword(String username, String newPassword); /** * 根据信息修噶, * * @param username * 不为空 * @param newPassword * 可以为空 * @param cname * 可以为空 * @param mobile * 可以为空 */ void changeUserInfo(String username, String newPassword, String cname, String mobile); /** * 获取用户基本信息 * * @param username * @return */ DefaultUser loadUser(String username); /** * 娉ㄥ唽涓�涓郴缁熺鐞嗗憳璐﹀彿 * * @param username * 鐢ㄤ簬鐧诲綍鐨勭敤鎴峰悕 * @param cname * 涓枃鍚� * @param ename * 鑻辨枃鍚� * @param password * 瀵嗙爜 * @param mobile * 鎵嬫満鍙� * @param email * 鐢靛瓙閭欢 * @param companyId * 鎵�鍦ㄥ叕鍙窱D */ void registerAdministrator(String username, String cname, String ename, String password, String email, String mobile, String companyId); /** * 鏍规嵁鐢ㄦ埛鍚嶏紝瀹炵幇鍖栦竴涓┖鐨勭敤鎴峰璞′緵绯荤粺浣跨敤锛屽疄渚嬪寲鐨勭敤鎴峰璞★紝鍙渶瑕佸皢缁欏畾鐨勭敤鎴峰悕濉厖杩涘幓鍗冲彲 * * @param username * 鐢ㄦ埛鍚� * @return 瀹炰緥鍖栧悗鐨勭敤鎴峰璞� */ IUser newUserInstance(String username); }