liujie
2026-08-11 323764c813a09cd56cdab780155ef659dbe0b364
ruoyi-admin/src/main/java/com/ruoyi/web/controller/tool/MiddlePlatformDataQuery.java
@@ -1,5 +1,6 @@
package com.ruoyi.web.controller.tool;
import cn.hutool.crypto.SecureUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
@@ -35,7 +36,7 @@
    public static String login(String username, String password) throws IOException {
        Map<String, Object> body = new LinkedHashMap<>();
        body.put("username", username);
        body.put("password", password);
        body.put("password", SecureUtil.sha256(password));
        JSONObject root = JSON.parseObject(BaseDataApiUtil.requestJson(BaseDataApiUtil.Api.POST_AUTH_USER_LOGIN, body));
        if (root == null) {
            throw new IOException("middle platform login returned empty response");
@@ -69,7 +70,8 @@
        Map<String, Object> params = new LinkedHashMap<>();
        Object data = data(BaseDataApiUtil.request(BaseDataApiUtil.Api.GET_REGION_TREE, params));
        String keyword = request == null ? null : request.getAreaName();
        return mapRegionTree(data, keyword);
        List<Map<String, Object>> list = mapRegionTree(data, keyword);
        return list;
    }
    /**
@@ -111,8 +113,8 @@
        // 中台人员列表只有 keyword 模糊查询,合并本地姓名、编号、电话、岗位等查询条件。
        putIfNotBlank(params, "keyword", firstNotBlank(query.getEmployeeName(), query.getEmployeeNo(),
                query.getContactPhone(), query.getPosition()));
        if (query.getDeptId() != null) {
            params.put("orgId", query.getDeptId());
        if (StringUtils.isNotBlank(query.getDeptId())) {
            params.put("orgId", query.getDeptId().trim());
        }
        return mapPage(data(BaseDataApiUtil.request(BaseDataApiUtil.Api.GET_PERSON_LIST, params)), true);
    }
@@ -161,18 +163,19 @@
    /**
     * 目的:组装中台设备分页查询参数,并按设备类型映射主键字段名。
     */
    private static Object devicePage(Integer pageNum, Integer pageSize, Object areaId, String deviceName,
    private static Object devicePage(Integer pageNum, Integer pageSize, String areaId, String deviceName,
                                     String deviceId, String onlineStatus, String idName) throws IOException {
        Map<String, Object> params = new LinkedHashMap<>();
        params.put("current", defaultPageNum(pageNum));
        params.put("size", defaultPageSize(pageSize));
        putIfNotBlank(params, "name", firstNotBlank(deviceName, deviceId));
        putIfNotBlank(params, "onlineStatus", toMiddleOnlineStatus(onlineStatus));
        if (areaId != null) {
        if (StringUtils.isNotBlank(areaId)) {
            // 中台设备接口按 mapIds 过滤区域,本地页面只传单个 areaId。
            params.put("mapIds", Collections.singletonList(areaId));
            params.put("mapIds", Collections.singletonList(areaId.trim()));
        }
        return mapPage(data(BaseDataApiUtil.request(BaseDataApiUtil.Api.POST_HIK_DEVICE_LIST, params)), false, idName);
        Map<String, Object> stringObjectMap = mapPage(data(BaseDataApiUtil.request(BaseDataApiUtil.Api.POST_HIK_DEVICE_LIST, params)), false, idName);
        return stringObjectMap;
    }
    /**