Browse Source

getOverviewInfo改为物件层级

jwy
review512jwy@163.com 1 month ago
parent
commit
4f6f2b1581
  1. 2
      dongjian-dashboard-back-dao/src/main/java/com/dongjian/dashboard/back/dao/ex/BasicUserMapperExt.java
  2. 3
      dongjian-dashboard-back-dao/src/main/java/com/dongjian/dashboard/back/dao/ex/LevelMapperExt.java
  3. 10
      dongjian-dashboard-back-dao/src/main/resources/mappers/ex/BasicUserMapperExt.xml
  4. 13
      dongjian-dashboard-back-dao/src/main/resources/mappers/ex/LevelMapperExt.xml
  5. 17
      dongjian-dashboard-back-service/src/main/java/com/dongjian/dashboard/back/service/common/CommonOpt.java
  6. 2
      dongjian-dashboard-back-service/src/main/java/com/dongjian/dashboard/back/service/impl/OverviewServiceImpl.java

2
dongjian-dashboard-back-dao/src/main/java/com/dongjian/dashboard/back/dao/ex/BasicUserMapperExt.java

@ -23,4 +23,6 @@ public interface BasicUserMapperExt extends BasicUserMapper{
UserInfoVO getAccountInfo(Map<String, Object> paramMap);
Integer checkBuildingManager(Long userId);
Integer checkLevelManager(Long userId);
}

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

@ -4,6 +4,7 @@ import com.dongjian.dashboard.back.dto.level.LevelEntity;
import com.dongjian.dashboard.back.dto.level.LevelRelationEntity;
import com.dongjian.dashboard.back.dto.level.OptLevelParam;
import com.dongjian.dashboard.back.dto.level.PageLevelSearchParam;
import com.dongjian.dashboard.back.vo.building.BindedBuildingVO;
import com.dongjian.dashboard.back.vo.level.LevelPageDTO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -32,4 +33,6 @@ public interface LevelMapperExt {
void deleteLevelRelationByIdList(@Param("param") LevelRelationEntity param, @Param("idList") List<Long> idList);
List<LevelPageDTO> getListPage(PageLevelSearchParam pageSearchParam);
List<Long> getBoundBuilding(Long userId);
}

10
dongjian-dashboard-back-dao/src/main/resources/mappers/ex/BasicUserMapperExt.xml

@ -112,5 +112,15 @@
INNER JOIN data_center_aeon_admin.basic_role_menu_relation rmr ON br.id = rmr.role_id
WHERE rmr.menu_id = 52 AND br.flag != 1 AND rru.user_id = #{userId}
</select>
<select id="checkLevelManager" resultType="java.lang.Integer">
SELECT
count(1)
FROM
data_center_aeon_admin.basic_role_user_relation rru
INNER JOIN data_center_aeon_admin.basic_role br ON br.id = rru.role_id
INNER JOIN data_center_aeon_admin.basic_role_menu_relation rmr ON br.id = rmr.role_id
WHERE rmr.menu_id = 88 AND br.flag != 1 AND rru.user_id = #{userId}
</select>
</mapper>

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

@ -180,4 +180,17 @@
order BY base.`id` desc
</select>
<select id="getBoundBuilding" resultType="java.lang.Long">
SELECT
DISTINCT sb.building_id
FROM dashboard_level_role_user rl
INNER JOIN dashboard_level_role_object ro ON rl.level_role_id = ro.level_role_id
INNER JOIN dashboard_level_relation_branch_store brs ON ro.ref_type = 'BRANCH' AND ro.ref_id = brs.branch_id
INNER JOIN dashboard_level_relation_store_area sra ON brs.store_id = sra.store_id
INNER JOIN dashboard_level_relation_area_site ras ON sra.area_id = ras.area_id
INNER JOIN dashboard_level_relation_site_building sb ON ras.site_id = sb.site_id
INNER JOIN basic_building bb ON sb.building_id = bb.building_id
WHERE bb.flag = 0 AND rl.user_id = #{userId}
</select>
</mapper>

17
dongjian-dashboard-back-service/src/main/java/com/dongjian/dashboard/back/service/common/CommonOpt.java

@ -17,6 +17,7 @@ import com.dongjian.dashboard.back.common.Constants;
import com.dongjian.dashboard.back.common.response.ResponseCode;
import com.dongjian.dashboard.back.common.response.SimpleDataResponse;
import com.dongjian.dashboard.back.dao.ex.BasicUserMapperExt;
import com.dongjian.dashboard.back.dao.ex.LevelMapperExt;
import com.dongjian.dashboard.back.dao.ex.UserBuildingRelationMapperExt;
import com.dongjian.dashboard.back.dto.device.LineDataSearchParams;
import com.dongjian.dashboard.back.util.DESUtil;
@ -55,6 +56,8 @@ public class CommonOpt {
private BasicUserMapperExt basicUserMapperExt;
@Autowired
private UserBuildingRelationMapperExt userBuildingRelationMapperExt;
@Autowired
private LevelMapperExt levelMapperExt;
/**
@ -172,6 +175,20 @@ public class CommonOpt {
}
}
public List<Long> getBindLevelBuildingIdList(Long userId) {
Integer levelManager = basicUserMapperExt.checkLevelManager(userId);
if (levelManager > 0) {
return null;//null表示不限制, sql里面判定bindedBuildingList=null的话,就不限制楼宇
} else {
List<Long> bindedBuildingList = levelMapperExt.getBoundBuilding(userId);
if (CollectionUtils.isEmpty(bindedBuildingList)) {
return Collections.singletonList(-1L);//-1的话,表示没有绑定
} else {
return bindedBuildingList;
}
}
}
public List<String> getPreDay(int days) {
// 获取当前日期
LocalDate currentDate = LocalDate.now();

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

@ -53,7 +53,7 @@ public class OverviewServiceImpl implements OverviewService {
public SimpleDataResponse<List<OverviewVO>> getOverviewInfo(Long userId, Long companyId, Integer languageType, Integer utcOffset) {
Map<String, Object> buildingMap = new HashMap<>();
buildingMap.put("companyId", companyId);
buildingMap.put("bindBuildingIdList", commonOpt.getBindBuildingIdList(userId));
buildingMap.put("bindBuildingIdList", commonOpt.getBindLevelBuildingIdList(userId));
List<OverviewVO> buildingInfoList = deviceRawdataRealtimeMapperExt.getBuildingInfo(buildingMap);

Loading…
Cancel
Save