Browse Source

getOverallBoundLevel的bug

zhc
review512jwy@163.com 1 week ago
parent
commit
6a85f244d5
  1. 3
      dongjian-dashboard-back-dao/src/main/java/com/dongjian/dashboard/back/dao/ex/LevelMapperExt.java
  2. 15
      dongjian-dashboard-back-dao/src/main/resources/mappers/ex/LevelMapperExt.xml
  3. 6
      dongjian-dashboard-back-service/src/main/java/com/dongjian/dashboard/back/service/impl/OverviewServiceImpl.java

3
dongjian-dashboard-back-dao/src/main/java/com/dongjian/dashboard/back/dao/ex/LevelMapperExt.java

@ -11,6 +11,7 @@ import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.util.List; import java.util.List;
import java.util.Map;
@Mapper @Mapper
public interface LevelMapperExt { public interface LevelMapperExt {
@ -37,6 +38,6 @@ public interface LevelMapperExt {
List<Long> getBoundBuilding(Long userId); List<Long> getBoundBuilding(Long userId);
List<BuildingPathDTO> selectBuildingFullPath(@Param("bindBuildingIdList") List<Long> bindBuildingIdList); List<BuildingPathDTO> selectBuildingFullPath(Map<String, Object> buildingMap);
} }

15
dongjian-dashboard-back-dao/src/main/resources/mappers/ex/LevelMapperExt.xml

@ -184,7 +184,6 @@
SELECT DISTINCT building_id SELECT DISTINCT building_id
FROM ( FROM (
-- BUILDING
SELECT b.building_id SELECT b.building_id
FROM dashboard_level_role_user ru FROM dashboard_level_role_user ru
JOIN dashboard_level_role_object ro JOIN dashboard_level_role_object ro
@ -197,7 +196,6 @@
UNION ALL UNION ALL
-- SITE → BUILDING
SELECT b.building_id SELECT b.building_id
FROM dashboard_level_role_user ru FROM dashboard_level_role_user ru
JOIN dashboard_level_role_object ro JOIN dashboard_level_role_object ro
@ -213,7 +211,6 @@
UNION ALL UNION ALL
-- AREA → SITE → BUILDING
SELECT b.building_id SELECT b.building_id
FROM dashboard_level_role_user ru FROM dashboard_level_role_user ru
JOIN dashboard_level_role_object ro JOIN dashboard_level_role_object ro
@ -233,7 +230,6 @@
UNION ALL UNION ALL
-- STORE → AREA → SITE → BUILDING
SELECT b.building_id SELECT b.building_id
FROM dashboard_level_role_user ru FROM dashboard_level_role_user ru
JOIN dashboard_level_role_object ro JOIN dashboard_level_role_object ro
@ -257,7 +253,6 @@
UNION ALL UNION ALL
-- BRANCH → STORE → AREA → SITE → BUILDING
SELECT b.building_id SELECT b.building_id
FROM dashboard_level_role_user ru FROM dashboard_level_role_user ru
JOIN dashboard_level_role_object ro JOIN dashboard_level_role_object ro
@ -321,11 +316,11 @@
JOIN dashboard_level_branch br ON rbs.branch_id = br.id AND br.flag = 0 JOIN dashboard_level_branch br ON rbs.branch_id = br.id AND br.flag = 0
WHERE b.building_id IN WHERE b.flag = 0
<foreach collection="bindBuildingIdList" item="id" open="(" separator="," close=")"> AND b.company_id = #{companyId}
#{id} <if test="bindBuildingIdList != null">
</foreach> AND b.building_id IN <foreach collection="bindBuildingIdList" item="item" open="(" separator="," close=")">#{item}</foreach>
AND b.flag = 0; </if>
</select> </select>
</mapper> </mapper>

6
dongjian-dashboard-back-service/src/main/java/com/dongjian/dashboard/back/service/impl/OverviewServiceImpl.java

@ -274,8 +274,10 @@ public class OverviewServiceImpl implements OverviewService {
@Override @Override
public SimpleDataResponse<List<TreeMenusDTO>> getOverallBoundLevel(Long companyId, Long userId, Integer languageType) { public SimpleDataResponse<List<TreeMenusDTO>> getOverallBoundLevel(Long companyId, Long userId, Integer languageType) {
List<Long> bindBuildingIdList = commonOpt.getBindBuildingIdList(userId); Map<String, Object> buildingMap = new HashMap<>();
List<BuildingPathDTO> selectBuildingFullPath = levelMapperExt.selectBuildingFullPath(bindBuildingIdList); buildingMap.put("companyId", companyId);
buildingMap.put("bindBuildingIdList", commonOpt.getBindBuildingIdList(userId));
List<BuildingPathDTO> selectBuildingFullPath = levelMapperExt.selectBuildingFullPath(buildingMap);
// 构建节点 // 构建节点
Map<String, TreeMenusDTO> nodeMap = new HashMap<>(); Map<String, TreeMenusDTO> nodeMap = new HashMap<>();

Loading…
Cancel
Save