Joburgess 5 лет назад
Родитель
Сommit
d532d2d155

+ 9 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/dao/OrganizationDao.java

@@ -18,4 +18,13 @@ public interface OrganizationDao extends BaseDAO<Integer, Organization> {
      */
     List<Organization> getByTenant(@Param("tenantId") String tenantId);
 
+    /**
+     * @describe 获取指定单位及其所有下级单位的编号
+     * @author Joburgess
+     * @date 2020.06.28
+     * @param parentOrganIdTag:
+     * @return java.util.List<java.lang.Integer>
+     */
+    List<Integer> getSelfAndChildOrganIds(@Param("parentOrganIdTag") String parentOrganIdTag);
+
 }

+ 12 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/OrganizationService.java

@@ -3,6 +3,9 @@ package com.keao.edu.user.service;
 
 import com.keao.edu.common.service.BaseService;
 import com.keao.edu.user.entity.Organization;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 public interface OrganizationService extends BaseService<Integer, Organization> {
 
@@ -17,4 +20,13 @@ public interface OrganizationService extends BaseService<Integer, Organization>
      * @param organization
      */
     void updateOrganization(Organization organization);
+
+    /**
+     * @describe 获取当前分部及其所有子分部编号
+     * @author Joburgess
+     * @date 2020.06.28
+     * @param organId:
+     * @return java.util.List<java.lang.Integer>
+     */
+    List<Integer> getSelfAndChildOrganIds(Integer organId);
 }

+ 9 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/OrganizationServiceImpl.java

@@ -19,6 +19,8 @@ import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.util.List;
+
 @Service
 public class OrganizationServiceImpl extends BaseServiceImpl<Integer, Organization> implements OrganizationService {
 	
@@ -103,4 +105,11 @@ public class OrganizationServiceImpl extends BaseServiceImpl<Integer, Organizati
 		sysUserDao.update(sysUser);
 		imFeignService.update(new ImUserModel(sysUser.getId().toString(),sysUser.getRealName(),sysUser.getAvatar()));
 	}
+
+	@Override
+	public List<Integer> getSelfAndChildOrganIds(Integer organId) {
+		Organization organization = organDao.get(organId);
+		organDao.getSelfAndChildOrganIds(organization.getParentOrganIdTag());
+		return null;
+	}
 }

+ 3 - 0
edu-user/edu-user-server/src/main/resources/config/mybatis/OrganizationMapper.xml

@@ -111,4 +111,7 @@
 	<select id="getByTenant" resultMap="Organization">
 		SELECT * FROM organization WHERE tenant_id_ = #{tenantId} ORDER BY id_
 	</select>
+	<select id="getSelfAndChildOrganIds" resultType="int">
+		SELECT id_ FROM organization WHERE parent_organ_id_tag_ LIKE CONCAT(#{parentOrganIdTag}, '%');
+	</select>
 </mapper>