|
@ -1,5 +1,10 @@
|
|
|
package com.yihu.hos.resource.service.impl;
|
|
|
|
|
|
import com.fasterxml.jackson.databind.JsonNode;
|
|
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
|
|
import com.fasterxml.jackson.databind.node.ArrayNode;
|
|
|
import com.fasterxml.jackson.databind.node.ObjectNode;
|
|
|
import com.yihu.hos.core.httpclient.HttpHelper;
|
|
|
import com.yihu.hos.resource.dao.*;
|
|
|
import com.yihu.hos.resource.model.*;
|
|
|
import com.yihu.hos.resource.service.IRsResourceService;
|
|
@ -323,20 +328,20 @@ public class RsResourceServiceImpl implements IRsResourceService {
|
|
|
*/
|
|
|
@Override
|
|
|
public String searchRomoteResourceList(String code, Map<String, Object> params) throws Exception {
|
|
|
// String result = HttpHelper.getByGateway(code, params).getBody();
|
|
|
|
|
|
return ""; //TODO: Use jackson
|
|
|
// JSONObject jsonobject = JSONObject.fromObject(result);
|
|
|
// Object response_params = jsonobject.get("responseResult");
|
|
|
// if (response_params.equals("null")) {
|
|
|
// return "";
|
|
|
// }
|
|
|
// return (String) response_params;
|
|
|
String result = HttpHelper.getByGateway(code, params).getBody();
|
|
|
ObjectMapper mapper = new ObjectMapper();
|
|
|
JsonNode jsonobject = mapper.readValue(result,JsonNode.class);
|
|
|
Object response_params = jsonobject.get("responseResult");
|
|
|
if (response_params.equals("null")) {
|
|
|
return "";
|
|
|
}
|
|
|
return (String) response_params;
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public Result getDataSet(Map<String, Object> params) throws Exception {
|
|
|
DataGridResult re = new DataGridResult();
|
|
|
ObjectMapper mapper = new ObjectMapper();
|
|
|
if (StringUtils.isEmpty(params.get("datasetId"))) {
|
|
|
|
|
|
if (params.get("rsResourceImportDatasetDialogName") != null) {
|
|
@ -351,12 +356,11 @@ public class RsResourceServiceImpl implements IRsResourceService {
|
|
|
} else {
|
|
|
RsResourceDataset rd = resourceDatasetDao.getEntity(RsResourceDataset.class, (String) params.get("datasetId"));
|
|
|
List list = new ArrayList();
|
|
|
|
|
|
//TODO: Use jackson
|
|
|
// JSONObject jo = JSONObject.fromObject(rd);
|
|
|
// jo.put("checked", "true");
|
|
|
// list.add(jo);
|
|
|
// re.setDetailModelList(list);
|
|
|
String jsonStr = mapper.writeValueAsString(rd);
|
|
|
ObjectNode jo = mapper.readValue(jsonStr,ObjectNode.class);
|
|
|
jo.put("checked", "true");
|
|
|
list.add(jo);
|
|
|
re.setDetailModelList(list);
|
|
|
}
|
|
|
return re;
|
|
|
}
|
|
@ -381,36 +385,37 @@ public class RsResourceServiceImpl implements IRsResourceService {
|
|
|
|
|
|
Map<String, Object> paramsTemp = new HashMap<String, Object>();
|
|
|
|
|
|
//TODO: Use jackson
|
|
|
// paramsTemp.put("condition", JSONObject.fromObject(params).toString());
|
|
|
//
|
|
|
// List responseParasm = stdService.metadatasAllVersionList(params);
|
|
|
// JSONArray array = JSONArray.fromObject(responseParasm);
|
|
|
// if (array.size() == 0) {
|
|
|
// throw new Exception("该数据集没有数据元");
|
|
|
// }
|
|
|
// //保存数据集
|
|
|
// //保存数据元
|
|
|
// for (int i = 0; i < array.size(); i++) {
|
|
|
// JSONObject jsonObject = array.getJSONObject(i);
|
|
|
// RsResourceMetadata rsResourceMetadata = new RsResourceMetadata();
|
|
|
// rsResourceMetadata.setDatasetId(dataSetId);
|
|
|
// rsResourceMetadata.setCode((String) jsonObject.get("code"));
|
|
|
// rsResourceMetadata.setDeCode((String) jsonObject.get("deCode"));
|
|
|
// rsResourceMetadata.setResourceId(reourceId);
|
|
|
// rsResourceMetadata.setName((String) jsonObject.get("name"));
|
|
|
// rsResourceMetadata.setType((String) jsonObject.get("type"));
|
|
|
// rsResourceMetadata.setFormat((String) jsonObject.get("format"));
|
|
|
// rsResourceMetadata.setDictId((Integer) jsonObject.get("dictId"));
|
|
|
// rsResourceMetadata.setDefinition((String) jsonObject.get("definition"));
|
|
|
// rsResourceMetadata.setNullable((Integer) jsonObject.get("nullable"));
|
|
|
// rsResourceMetadata.setColumnLength((String) jsonObject.get("columnLength"));
|
|
|
// rsResourceMetadata.setColumnType((String) jsonObject.get("columnType"));
|
|
|
// rsResourceMetadata.setColumnName((String) jsonObject.get("columnName"));
|
|
|
// rsResourceMetadata.setPrimaryKey((Integer) jsonObject.get("primaryKey"));
|
|
|
// rsResourceMetadata.setDataSupportType(1);
|
|
|
// resourceMetadataDao.saveEntity(rsResourceMetadata);
|
|
|
// }
|
|
|
ObjectMapper mapper = new ObjectMapper();
|
|
|
paramsTemp.put("condition",mapper.writeValueAsString(params));
|
|
|
|
|
|
List responseParasm = stdService.metadatasAllVersionList(params);
|
|
|
String jsonlist = mapper.writeValueAsString(responseParasm);
|
|
|
ArrayNode array = mapper.readValue(jsonlist, ArrayNode.class);
|
|
|
if (array.size() == 0) {
|
|
|
throw new Exception("该数据集没有数据元");
|
|
|
}
|
|
|
//保存数据集
|
|
|
//保存数据元
|
|
|
for (int i = 0; i < array.size(); i++) {
|
|
|
JsonNode jsonObject = array.get(i);
|
|
|
RsResourceMetadata rsResourceMetadata = new RsResourceMetadata();
|
|
|
rsResourceMetadata.setDatasetId(dataSetId);
|
|
|
rsResourceMetadata.setCode(jsonObject.get("code").asText());
|
|
|
rsResourceMetadata.setDeCode(jsonObject.get("deCode").asText());
|
|
|
rsResourceMetadata.setResourceId(reourceId);
|
|
|
rsResourceMetadata.setName(jsonObject.get("name").asText());
|
|
|
rsResourceMetadata.setType(jsonObject.get("type").asText());
|
|
|
rsResourceMetadata.setFormat(jsonObject.get("format").asText());
|
|
|
rsResourceMetadata.setDictId( jsonObject.get("dictId").asInt());
|
|
|
rsResourceMetadata.setDefinition(jsonObject.get("definition").asText());
|
|
|
rsResourceMetadata.setNullable( jsonObject.get("nullable").asInt());
|
|
|
rsResourceMetadata.setColumnLength(jsonObject.get("columnLength").asText());
|
|
|
rsResourceMetadata.setColumnType(jsonObject.get("columnType").asText());
|
|
|
rsResourceMetadata.setColumnName(jsonObject.get("columnName").asText());
|
|
|
rsResourceMetadata.setPrimaryKey( jsonObject.get("primaryKey").asInt());
|
|
|
rsResourceMetadata.setDataSupportType(1);
|
|
|
resourceMetadataDao.saveEntity(rsResourceMetadata);
|
|
|
}
|
|
|
|
|
|
return Result.success("导入成功");
|
|
|
}
|
|
@ -463,23 +468,23 @@ public class RsResourceServiceImpl implements IRsResourceService {
|
|
|
}
|
|
|
DataGridResult r = new DataGridResult();
|
|
|
Map<String, Object> params = new HashMap<String, Object>();
|
|
|
ObjectMapper mapper = new ObjectMapper();
|
|
|
params.put("code", code);
|
|
|
|
|
|
//得到所有的数据元
|
|
|
List responseParasm = stdService.metadatasAllVersionList(params);
|
|
|
|
|
|
//TODO: Use jackson
|
|
|
// JSONArray jr = JSONArray.fromObject(responseParasm);
|
|
|
// if (!StringUtils.isEmpty(datasetId)) {
|
|
|
// List<RsResourceMetadata> md = resourceMetadataDao.getMetadataByLocalDatssetId(datasetId);
|
|
|
// for (int i = 0; i < JSONArray.fromObject(responseParasm).size(); i++) {
|
|
|
// for (int j = 0; j < md.size(); j++) {
|
|
|
// if (JSONArray.fromObject(responseParasm).getJSONObject(i).get("code").equals(md.get(j).getCode())) {
|
|
|
// jr.getJSONObject(i).put("checked", "true");
|
|
|
// }
|
|
|
// }
|
|
|
// }
|
|
|
// }
|
|
|
String jsonlist = mapper.writeValueAsString(responseParasm);
|
|
|
ArrayNode jr = mapper.readValue(jsonlist,ArrayNode.class);
|
|
|
if (!StringUtils.isEmpty(datasetId)) {
|
|
|
List<RsResourceMetadata> md = resourceMetadataDao.getMetadataByLocalDatssetId(datasetId);
|
|
|
for (int i = 0; i < jr.size(); i++) {
|
|
|
for (int j = 0; j < md.size(); j++) {
|
|
|
if (jr.get("code").asText().equals(md.get(j).getCode())) {
|
|
|
((ObjectNode) jr.get(i)).put("checked", "true");
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
// r.setDetailModelList(jr);
|
|
|
return r;
|
|
|
}
|
|
@ -487,44 +492,43 @@ public class RsResourceServiceImpl implements IRsResourceService {
|
|
|
@Transactional
|
|
|
public Result improtSameMetadata(String reourceId, String metaData, String dataset, String datasetId) throws Exception {
|
|
|
RsResource resource = rsResourceDao.getResourceById(reourceId);
|
|
|
ObjectMapper mapper = new ObjectMapper();
|
|
|
if (StringUtils.isEmpty(datasetId)) {
|
|
|
//第一次导入
|
|
|
String datasetID = PKUtil.getUuid();//得到ID
|
|
|
RsResourceDataset rsResourceDataset = new RsResourceDataset();
|
|
|
|
|
|
//TODO: Use jackson
|
|
|
// org.apache.commons.beanutils.BeanUtils.populate(rsResourceDataset, JSONObject.fromObject(dataset));
|
|
|
// rsResourceDataset.setId(datasetID);
|
|
|
// resourceDatasetDao.saveEntity(rsResourceDataset);
|
|
|
// JSONArray array = JSONArray.fromObject(metaData);
|
|
|
// if (array.size() == 0) {
|
|
|
// throw new Exception("该数据集没有数据元");
|
|
|
// }
|
|
|
// for (int i = 0; i < array.size(); i++) {
|
|
|
// JSONObject jsonObject = array.getJSONObject(i);
|
|
|
// RsResourceMetadata rsResourceMetadata = new RsResourceMetadata();
|
|
|
// org.apache.commons.beanutils.BeanUtils.populate(rsResourceMetadata, jsonObject);
|
|
|
// rsResourceMetadata.setDataSupportType(1);
|
|
|
// rsResourceMetadata.setDatasetId(datasetID);
|
|
|
// rsResourceMetadata.setResourceId(reourceId);
|
|
|
// resourceMetadataDao.saveEntity(rsResourceMetadata);
|
|
|
// }
|
|
|
org.apache.commons.beanutils.BeanUtils.populate(rsResourceDataset, mapper.readValue(dataset, Map.class));
|
|
|
rsResourceDataset.setId(datasetID);
|
|
|
resourceDatasetDao.saveEntity(rsResourceDataset);
|
|
|
ArrayNode array = mapper.readValue(metaData,ArrayNode.class);
|
|
|
if (array.size() == 0) {
|
|
|
throw new Exception("该数据集没有数据元");
|
|
|
}
|
|
|
for (int i = 0; i < array.size(); i++) {
|
|
|
JsonNode jsonObject = array.get(i);
|
|
|
RsResourceMetadata rsResourceMetadata = new RsResourceMetadata();
|
|
|
org.apache.commons.beanutils.BeanUtils.populate(rsResourceMetadata, mapper.readValue(jsonObject.toString(),Map.class));
|
|
|
rsResourceMetadata.setDataSupportType(1);
|
|
|
rsResourceMetadata.setDatasetId(datasetID);
|
|
|
rsResourceMetadata.setResourceId(reourceId);
|
|
|
resourceMetadataDao.saveEntity(rsResourceMetadata);
|
|
|
}
|
|
|
resource.setDatasetCode(datasetID);
|
|
|
} else {
|
|
|
//修改
|
|
|
resourceMetadataDao.deleteLogicDataSupportMetaDataByLocalDataSetId(datasetId);
|
|
|
|
|
|
//TODO: Use jackson
|
|
|
// JSONArray array = JSONArray.fromObject(metaData);
|
|
|
// for (int i = 0; i < array.size(); i++) {
|
|
|
// JSONObject jsonObject = array.getJSONObject(i);
|
|
|
// RsResourceMetadata rsResourceMetadata = new RsResourceMetadata();
|
|
|
// org.apache.commons.beanutils.BeanUtils.populate(rsResourceMetadata, jsonObject);
|
|
|
// rsResourceMetadata.setDataSupportType(1);
|
|
|
// rsResourceMetadata.setResourceId(reourceId);
|
|
|
// rsResourceMetadata.setDatasetId(resource.getDatasetCode());
|
|
|
// resourceMetadataDao.saveEntity(rsResourceMetadata);
|
|
|
// }
|
|
|
ArrayNode array = mapper.readValue(metaData, ArrayNode.class);
|
|
|
for (int i = 0; i < array.size(); i++) {
|
|
|
JsonNode jsonObject = array.get(i);
|
|
|
RsResourceMetadata rsResourceMetadata = new RsResourceMetadata();
|
|
|
org.apache.commons.beanutils.BeanUtils.populate(rsResourceMetadata, mapper.readValue(jsonObject.toString(),Map.class));
|
|
|
rsResourceMetadata.setDataSupportType(1);
|
|
|
rsResourceMetadata.setResourceId(reourceId);
|
|
|
rsResourceMetadata.setDatasetId(resource.getDatasetCode());
|
|
|
resourceMetadataDao.saveEntity(rsResourceMetadata);
|
|
|
}
|
|
|
}
|
|
|
return Result.success("导入成功");
|
|
|
}
|