From 23855599412c4d61b38d78f0f3abd3430a48b5b1 Mon Sep 17 00:00:00 2001
From: zhangherong <571457620@qq.com>
Date: 星期三, 25 六月 2025 11:51:38 +0800
Subject: [PATCH] Merge branch 'mdc_hyjs_master'

---
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysUserService.java |  347 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 347 insertions(+), 0 deletions(-)

diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysUserService.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysUserService.java
new file mode 100644
index 0000000..103f93a
--- /dev/null
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysUserService.java
@@ -0,0 +1,347 @@
+package org.jeecg.modules.system.service;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.system.vo.LoginUser;
+import org.jeecg.common.system.vo.SysUserCacheInfo;
+import org.jeecg.modules.system.entity.SysRoleIndex;
+import org.jeecg.modules.system.entity.SysUser;
+import org.jeecg.modules.system.model.SysUserSysDepartModel;
+import org.jeecg.modules.system.vo.UserSelector;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.Collection;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * <p>
+ * 鐢ㄦ埛琛� 鏈嶅姟绫�
+ * </p>
+ *
+ * @Author scott
+ * @since 2018-12-20
+ */
+public interface ISysUserService extends IService<SysUser> {
+
+	/**
+	 * 閲嶇疆瀵嗙爜
+	 *
+	 * @param username
+	 * @param oldpassword
+	 * @param newpassword
+	 * @param confirmpassword
+	 * @return
+	 */
+    Result<?> resetPassword(String username, String oldpassword, String newpassword, String confirmpassword);
+
+	/**
+	 * 淇敼瀵嗙爜
+	 *
+	 * @param sysUser
+	 * @return
+	 */
+    Result<?> changePassword(SysUser sysUser);
+
+	/**
+	 * 鍒犻櫎鐢ㄦ埛
+	 * @param userId
+	 * @return
+	 */
+    boolean deleteUser(String userId);
+
+	/**
+	 * 鎵归噺鍒犻櫎鐢ㄦ埛
+	 * @param userIds
+	 * @return
+	 */
+    boolean deleteBatchUsers(String userIds);
+
+    /**
+     * 鏍规嵁鐢ㄦ埛鍚嶆煡璇�
+     * @param username 鐢ㄦ埛鍚�
+     * @return SysUser
+     */
+    SysUser getUserByName(String username);
+
+	/**
+	 * 娣诲姞鐢ㄦ埛鍜岀敤鎴疯鑹插叧绯�
+	 * @param user
+	 * @param roles
+	 */
+    void addUserWithRole(SysUser user, String roles);
+
+
+	/**
+	 * 淇敼鐢ㄦ埛鍜岀敤鎴疯鑹插叧绯�
+	 * @param user
+	 * @param roles
+	 */
+    void editUserWithRole(SysUser user, String roles);
+
+	/**
+	 * 鑾峰彇鐢ㄦ埛鐨勬巿鏉冭鑹�
+	 * @param username
+	 * @return
+	 */
+    List<String> getRole(String username);
+
+	/**
+	 * 鑾峰彇鏍规嵁鐧诲綍鐢ㄦ埛鐨勮鑹茶幏鍙栧姩鎬侀椤�
+	 *
+	 * @param username
+	 * @param version 鍓嶇UI鐗堟湰
+	 * @return
+	 */
+    SysRoleIndex getDynamicIndexByUserRole(String username, String version);
+
+	/**
+	  * 鏌ヨ鐢ㄦ埛淇℃伅鍖呮嫭 閮ㄩ棬淇℃伅
+	 * @param username
+	 * @return
+	 */
+	@Deprecated
+    SysUserCacheInfo getCacheUser(String username);
+
+	/**
+	 * 鏍规嵁閮ㄩ棬Id鏌ヨ
+	 * @param page
+     * @param departId 閮ㄩ棬id
+     * @param username 鐢ㄦ埛璐︽埛鍚嶇О
+	 * @return
+	 */
+    IPage<SysUser> getUserByDepId(Page<SysUser> page, String departId, String username);
+
+	/**
+	 * 鏍规嵁閮ㄩ棬Ids鏌ヨ
+	 * @param page
+     * @param departIds  閮ㄩ棬id闆嗗悎
+     * @param username 鐢ㄦ埛璐︽埛鍚嶇О
+	 * @return
+	 */
+    IPage<SysUser> getUserByDepIds(Page<SysUser> page, List<String> departIds, String username);
+
+	/**
+	 * 鏍规嵁 userIds鏌ヨ锛屾煡璇㈢敤鎴锋墍灞為儴闂ㄧ殑鍚嶇О锛堝涓儴闂ㄥ悕閫楀彿闅斿紑锛�
+	 * @param userIds
+	 * @return
+	 */
+    Map<String,String> getDepNamesByUserIds(List<String> userIds);
+
+    /**
+     * 鏍规嵁閮ㄩ棬 Id 鍜� QueryWrapper 鏌ヨ
+     *
+     * @param page
+     * @param departId
+     * @param queryWrapper
+     * @return
+     */
+    //update-begin-author:taoyan date:2022-9-13 for: VUEN-2245銆愭紡娲炪�戝彂鐜版柊婕忔礊寰呭鐞�20220906 ----sql娉ㄥ叆 鏂规硶娌℃湁浣跨敤锛屾敞鎺�
+    // public IPage<SysUser> getUserByDepartIdAndQueryWrapper(Page<SysUser> page, String departId, QueryWrapper<SysUser> queryWrapper);
+	//update-end-author:taoyan date:2022-9-13 for: VUEN-2245銆愭紡娲炪�戝彂鐜版柊婕忔礊寰呭鐞�20220906 ----sql娉ㄥ叆 鏂规硶娌℃湁浣跨敤锛屾敞鎺�
+
+	/**
+	 * 鏍规嵁 orgCode 鏌ヨ鐢ㄦ埛锛屽寘鎷瓙閮ㄩ棬涓嬬殑鐢ㄦ埛
+	 *
+	 * @param orgCode
+	 * @param userParams 鐢ㄦ埛鏌ヨ鏉′欢锛屽彲涓虹┖
+	 * @param page 鍒嗛〉鍙傛暟
+	 * @return
+	 */
+	IPage<SysUserSysDepartModel> queryUserByOrgCode(String orgCode, SysUser userParams, IPage page);
+
+	/**
+	 * 鏍规嵁瑙掕壊Id鏌ヨ
+	 * @param page
+     * @param roleId 瑙掕壊id
+     * @param username 鐢ㄦ埛璐︽埛鍚嶇О
+	 * @return
+	 */
+    IPage<SysUser> getUserByRoleId(Page<SysUser> page, String roleId, String username);
+
+	/**
+	 * 閫氳繃鐢ㄦ埛鍚嶈幏鍙栫敤鎴疯鑹查泦鍚�
+	 *
+	 * @param username 鐢ㄦ埛鍚�
+	 * @return 瑙掕壊闆嗗悎
+	 */
+	Set<String> getUserRolesSet(String username);
+
+	/**
+	 * 閫氳繃鐢ㄦ埛鍚嶈幏鍙栫敤鎴锋潈闄愰泦鍚�
+	 *
+	 * @param username 鐢ㄦ埛鍚�
+	 * @return 鏉冮檺闆嗗悎
+	 */
+	Set<String> getUserPermissionsSet(String username);
+
+	/**
+	 * 鏍规嵁鐢ㄦ埛鍚嶈缃儴闂↖D
+	 * @param username
+	 * @param orgCode
+	 */
+	void updateUserDepart(String username,String orgCode);
+
+	/**
+	 * 鏍规嵁鎵嬫満鍙疯幏鍙栫敤鎴峰悕鍜屽瘑鐮�
+     * @param phone 鎵嬫満鍙�
+     * @return SysUser
+	 */
+    SysUser getUserByPhone(String phone);
+
+
+	/**
+	 * 鏍规嵁閭鑾峰彇鐢ㄦ埛
+     * @param email 閭
+     * @return SysUser
+     */
+    SysUser getUserByEmail(String email);
+
+
+	/**
+	 * 娣诲姞鐢ㄦ埛鍜岀敤鎴烽儴闂ㄥ叧绯�
+	 * @param user
+	 * @param selectedParts
+	 */
+	void addUserWithDepart(SysUser user, String selectedParts);
+
+	/**
+	 * 缂栬緫鐢ㄦ埛鍜岀敤鎴烽儴闂ㄥ叧绯�
+	 * @param user
+	 * @param departs
+	 */
+	void editUserWithDepart(SysUser user, String departs);
+
+	/**
+	   * 鏍¢獙鐢ㄦ埛鏄惁鏈夋晥
+	 * @param sysUser
+	 * @return
+	 */
+	Result checkUserIsEffective(SysUser sysUser, String loginType);
+
+	/**
+	 * 鏌ヨ琚�昏緫鍒犻櫎鐨勭敤鎴�
+     * @return List<SysUser>
+	 */
+	List<SysUser> queryLogicDeleted();
+
+	/**
+	 * 鏌ヨ琚�昏緫鍒犻櫎鐨勭敤鎴凤紙鍙嫾瑁呮煡璇㈡潯浠讹級
+     * @param wrapper
+     * @return List<SysUser>
+	 */
+	List<SysUser> queryLogicDeleted(LambdaQueryWrapper<SysUser> wrapper);
+
+	/**
+	 * 杩樺師琚�昏緫鍒犻櫎鐨勭敤鎴�
+     * @param userIds  瀛樻斁鐢ㄦ埛id闆嗗悎
+     * @param updateEntity
+     * @return boolean
+	 */
+	boolean revertLogicDeleted(List<String> userIds, SysUser updateEntity);
+
+	/**
+	 * 褰诲簳鍒犻櫎琚�昏緫鍒犻櫎鐨勭敤鎴�
+     * @param userIds 瀛樻斁鐢ㄦ埛id闆嗗悎
+     * @return boolean
+	 */
+	boolean removeLogicDeleted(List<String> userIds);
+
+    /**
+     * 鏇存柊鎵嬫満鍙枫�侀偖绠辩┖瀛楃涓蹭负 null
+     * @return boolean
+     */
+    @Transactional(rollbackFor = Exception.class)
+    boolean updateNullPhoneEmail();
+
+	/**
+	 * 淇濆瓨绗笁鏂圭敤鎴蜂俊鎭�
+	 * @param sysUser
+	 */
+	void saveThirdUser(SysUser sysUser);
+
+	/**
+	 * 鏍规嵁閮ㄩ棬Ids鏌ヨ
+	 * @param departIds 閮ㄩ棬id闆嗗悎
+     * @param username 鐢ㄦ埛璐︽埛鍚嶇О
+	 * @return
+	 */
+	List<SysUser> queryByDepIds(List<String> departIds, String username);
+
+	/**
+	 * 淇濆瓨鐢ㄦ埛
+	 * @param user 鐢ㄦ埛
+	 * @param selectedRoles 閫夋嫨鐨勮鑹瞚d锛屽涓互閫楀彿闅斿紑
+	 * @param selectedDeparts 閫夋嫨鐨勯儴闂╥d锛屽涓互閫楀彿闅斿紑
+	 * @param selectedProductions 閫夋嫨鐨勪骇绾縤d锛屽涓互閫楀彿闅斿紑
+	 */
+	void saveUser(SysUser user, String selectedRoles, String selectedDeparts, String selectedProductions);
+
+	/**
+	 * 缂栬緫鐢ㄦ埛
+	 * @param user 鐢ㄦ埛
+	 * @param roles 閫夋嫨鐨勮鑹瞚d锛屽涓互閫楀彿闅斿紑
+	 * @param departs 閫夋嫨鐨勯儴闂╥d锛屽涓互閫楀彿闅斿紑
+	 * @param productions 閫夋嫨鐨勪骇绾縤d锛屽涓互閫楀彿闅斿紑
+	 */
+	void editUser(SysUser user, String roles, String departs, String productions);
+
+	/**
+     * userId杞负username
+     * @param userIdList
+     * @return List<String>
+     */
+	List<String> userIdToUsername(Collection<String> userIdList);
+
+
+	/**
+	 * 鑾峰彇鐢ㄦ埛淇℃伅 瀛楁淇℃伅鏄姞瀵嗗悗鐨� 銆愬姞瀵嗙敤鎴蜂俊鎭��
+	 * @param username
+	 * @return
+	 */
+	LoginUser getEncodeUserInfo(String username);
+
+	/**
+	 * 鏍规嵁 userIds鏌ヨ锛屾煡璇㈢敤鎴锋墍灞炰骇绾跨殑鍚嶇О锛堝涓骇绾垮悕閫楀彿闅斿紑锛�
+	 */
+	Map<String, String> getProNamesByUserIds(List<String> userIds);
+
+	/**
+	 * 鏍规嵁瑙掕壊Id鏌ヨ璇ヨ鑹蹭笅鐨勬墍鏈夌敤鎴蜂俊鎭�,涓嶅垎椤�
+	 *
+	 * @param
+	 * @return
+	 */
+    List<SysUser> getAllUsersByRoleId(String roleId);
+
+	List<String> getUserByRoleCode(String roleCode);
+
+	List<SysUser> getEquipmentAdmin(String roleCode, String equipmentId);
+
+	/**
+	 * 閫夋嫨鐢ㄦ埛
+	 * @param equipmentCode 閫夋嫨鐨勮澶嘔D
+	 * @param productionId 閫夋嫨鐨勮溅闂碔D
+	 * @param positionCode 宀椾綅缂栧彿
+	 * @return
+	 */
+    List<UserSelector> selectOperatorList(String equipmentCode, String productionId, String positionCode);
+
+	/**
+	 * 閫夋嫨鐢ㄦ埛
+	 * @param positionCode 宀椾綅缂栧彿
+	 * @return
+	 */
+	List<UserSelector> selectOperatorList( String positionCode);
+
+	/**
+	 * 鏍规嵁鐢ㄦ埛鍚嶆壒閲忚幏鍙栫湡瀹炲鍚嶆槧灏�
+     * @param userNames 鐢ㄦ埛鍚嶅垪琛�
+     * @return 鐢ㄦ埛鍚�->鐪熷疄濮撳悕鐨勬槧灏勶紙涓嶅瓨鍦ㄦ椂鍊间负null锛�
+	 */
+	Map<String, String> getUserRealNamesByUserNames(List<String> userNames);
+}

--
Gitblit v1.9.3