数据集成连接器对象api-根据时间获取erp对象数据 批量查询
/** * 连接器对象api-根据时间获取erp对象数据 批量查询 * todo的为需要用户自己修改添加的, * 需要先在右上角设置参数 Map类型syncArg **/ String errorCodeKey = "code" // 错误返回码字段名称-需要和连接器配置的 error code字段 对应 String successCode = "0" // 成功时的错误返回码-需要和连接器配置的 成功的code 对应 String errorMessageKey = "message" // 错误提示语字段名称-需要和连接器配置的 error msg字段 对应 String dataKey = "data" // 数据字段名称-需要和连接器配置的 数据字段 对应 String totalKey = "totalNum" // 数据总条数字段名称 String dataListKey = "dataList" // 数据详情列表字段名称 Map objectData = syncArg["objectData"] as Map def apiName = objectData["objAPIName"] // ERP对象apiName 例如:BD_MATERIAL def startTime = objectData["startTime"] // 数据变更的开始时间(unix时间戳,单位毫秒) def endTime = objectData["endTime"] // 数据变更的结束时间(unix时间戳,单位毫秒) def includeDetail = objectData["includeDetail"] // 是否包含明细 def offset = objectData["offset"] // 获取记录的偏移 def limit = objectData["limit"] // 当前请求记录条数 // todo 获取数据 Map<String, String> headers = ["token": "xxxxxx"] def url = "http://xxx/xxx//queryMasterBatch?objAPIName=" + apiName + "&startTime=" + startTime + "&endTime=" + endTime + "&includeDetail=" + includeDetail + "&offset=" + offset + "&limit=" + limit def (Boolean error, HttpResult httpResult, String msg) = http.get(url, headers) if (error) { log.info("根据时间获取erp对象数据错误:" + msg) // 返回错误数据 Map<String, Object> result = [:] result[errorCodeKey] = "500" result[errorMessageKey] = msg return result } log.info("根据时间获取erp对象数据,url:" + url + " 返回值:" + httpResult) Map<String, Object> queryDataByTimeResult = httpResult.content as Map int totalNum = queryDataByTimeResult["data"]["totalNum"] as Integer List<Map<String, Object>> dataList = queryDataByTimeResult["data"]["dataList"] as List // 构建对象数据 Map<String, Object> data = [:] data[totalKey] = totalNum data[dataListKey] = dataList // 返回数据 Map<String, Object> result = [:] result[errorCodeKey] = successCode result[errorMessageKey] = "" result[dataKey] = data return result