|
@@ -26,14 +26,14 @@ public class SubConfigServiceImpl implements SubConfigService {
|
|
|
private final String[] JSON_NAME = {
|
|
|
"urladdr", "insttype", "roption", "global", "base", "editPage", "id",
|
|
|
"rowEdit", "layout", "form", "data", "tableColumnName", "columns",
|
|
|
- "tableColumnType", "tableName", "label","dataSource","formData",
|
|
|
- "insttype","heads","field"
|
|
|
+ "tableColumnType", "tableName", "label", "dataSource", "formData",
|
|
|
+ "insttype", "heads", "field"
|
|
|
};
|
|
|
|
|
|
private final String[] TYPE_NAME = {
|
|
|
"controlType", "enumType",
|
|
|
- "dict", "customapi","custom","sql","pagesource",
|
|
|
- "customApiUrl", "customEnum", "customSql","cacheIdSql"
|
|
|
+ "dict", "customapi", "custom", "sql", "pagesource",
|
|
|
+ "customApiUrl", "customEnum", "customSql", "cacheIdSql"
|
|
|
};
|
|
|
@Autowired
|
|
|
private RwAdminFeign rwAdminFeign;
|
|
@@ -53,7 +53,7 @@ public class SubConfigServiceImpl implements SubConfigService {
|
|
|
// 获得pagePartID
|
|
|
JSONObject module = JSONUtil.parseObj(sysModule.getData());
|
|
|
Object urlAddr = module.get(JSON_NAME[0]);
|
|
|
- if (urlAddr==null){
|
|
|
+ if (urlAddr == null) {
|
|
|
return R.error("该菜单未配置编辑页或页编辑,请重新选择!");
|
|
|
}
|
|
|
String[] split = urlAddr.toString().split("/");
|
|
@@ -61,10 +61,10 @@ public class SubConfigServiceImpl implements SubConfigService {
|
|
|
|
|
|
// 获取编辑页信息
|
|
|
String pagePart = getPagePart(pagePartId);
|
|
|
- if (pagePart==null){
|
|
|
+ if (pagePart == null) {
|
|
|
return R.error("该菜单未配置编辑页或页编辑,请重新选择!");
|
|
|
}
|
|
|
- //查询页面展示的所有字段
|
|
|
+ // 查询页面展示的所有字段
|
|
|
return R.ok(getTableNameByData(pagePart));
|
|
|
}
|
|
|
|
|
@@ -79,7 +79,7 @@ public class SubConfigServiceImpl implements SubConfigService {
|
|
|
*/
|
|
|
|
|
|
public String getPagePart(String pagePartId) {
|
|
|
- if (pagePartId == null){
|
|
|
+ if (pagePartId == null) {
|
|
|
return null;
|
|
|
}
|
|
|
R sysPagePart = rwAdminFeign.infoPagePart(pagePartId);
|
|
@@ -113,45 +113,45 @@ public class SubConfigServiceImpl implements SubConfigService {
|
|
|
|
|
|
public List<KdSubsystemDetailVo> getTableNameByData(String pagePart) {
|
|
|
boolean instType = "table".equals(JSONUtil.parseObj(JSONUtil.parseObj(JSONUtil.parseObj(pagePart).get(JSON_NAME[16])).get(JSON_NAME[17])).get(JSON_NAME[18], String.class));
|
|
|
- //获得layout中的form
|
|
|
- List<String> form = JSONUtil.toList(JSONUtil.parseObj(JSONUtil.parseObj(pagePart).get(JSON_NAME[8])).get(instType?JSON_NAME[19]:JSON_NAME[9], String.class),String.class);
|
|
|
- //将页面上展示的真实字段获取到
|
|
|
- List<String> tableColumNameList = form.stream().map(info -> instType?JSONUtil.parseObj(info).get(JSON_NAME[20], String.class)
|
|
|
- :JSONUtil.parseObj(JSONUtil.parseObj(info).get(JSON_NAME[10])).get(JSON_NAME[11], String.class))
|
|
|
- .filter(Objects::nonNull).collect(Collectors.toList());
|
|
|
- //获取到columns中的base集合
|
|
|
- List<String> base = JSONUtil.toList(JSONUtil.parseObj(JSONUtil.parseObj(pagePart).get(JSON_NAME[12])).get(JSON_NAME[4],String.class),String.class);
|
|
|
- //遍历获取base中的信息
|
|
|
+ // 获得layout中的form
|
|
|
+ List<String> form = JSONUtil.toList(JSONUtil.parseObj(JSONUtil.parseObj(pagePart).get(JSON_NAME[8])).get(instType ? JSON_NAME[19] : JSON_NAME[9], String.class), String.class);
|
|
|
+ // 将页面上展示的真实字段获取到
|
|
|
+ List<String> tableColumNameList = form.stream().map(info -> instType ? JSONUtil.parseObj(info).get(JSON_NAME[20], String.class)
|
|
|
+ : JSONUtil.parseObj(JSONUtil.parseObj(info).get(JSON_NAME[10])).get(JSON_NAME[11], String.class))
|
|
|
+ .filter(Objects::nonNull).collect(Collectors.toList());
|
|
|
+ // 获取到columns中的base集合
|
|
|
+ List<String> base = JSONUtil.toList(JSONUtil.parseObj(JSONUtil.parseObj(pagePart).get(JSON_NAME[12])).get(JSON_NAME[4], String.class), String.class);
|
|
|
+ // 遍历获取base中的信息
|
|
|
return base.stream()
|
|
|
- .filter(info ->tableColumNameList.contains(JSONUtil.parseObj(JSONUtil.parseObj(info).get(JSON_NAME[4])).get(JSON_NAME[11], String.class)) )
|
|
|
+ .filter(info -> tableColumNameList.contains(JSONUtil.parseObj(JSONUtil.parseObj(info).get(JSON_NAME[4])).get(JSON_NAME[11], String.class)))
|
|
|
.map(info -> {
|
|
|
- KdSubsystemDetailVo kdSubsystemDetail = new KdSubsystemDetailVo();
|
|
|
- JSONObject json = JSONUtil.parseObj(JSONUtil.parseObj(info).get(JSON_NAME[4]));
|
|
|
- String tableColumnNane = json.get(JSON_NAME[11], String.class);
|
|
|
- kdSubsystemDetail.setTABLECOLUMNNANE(tableColumnNane)
|
|
|
- .setTABLECOLUMNTYPE(json.get(JSON_NAME[13], String.class))
|
|
|
- .setTABLENAME(json.get(JSON_NAME[14], String.class))
|
|
|
- .setLABEL(json.get(JSON_NAME[15], String.class));
|
|
|
- JSONObject controlType = JSONUtil.parseObj(JSONUtil.parseObj(json.get(TYPE_NAME[0])));
|
|
|
- String enumType = controlType.get(TYPE_NAME[1], String.class);
|
|
|
- kdSubsystemDetail.setCONTROLTYPE(controlType.get(TYPE_NAME[0], String.class))
|
|
|
- .setENUMTYPE(enumType);
|
|
|
- if (enumType==null) {
|
|
|
- return kdSubsystemDetail;
|
|
|
- }
|
|
|
- if (TYPE_NAME[2].equals(enumType)) {
|
|
|
- kdSubsystemDetail.setDATAORIGIN(controlType.get(TYPE_NAME[2], String.class));
|
|
|
- } else if (TYPE_NAME[3].equals(enumType)) {
|
|
|
- kdSubsystemDetail.setDATAORIGIN(controlType.get(TYPE_NAME[7], String.class));
|
|
|
- } else if (TYPE_NAME[4].equals(enumType)) {
|
|
|
- kdSubsystemDetail.setDATAORIGIN(controlType.get(TYPE_NAME[8], String.class));
|
|
|
- } else if (TYPE_NAME[5].equals(enumType)) {
|
|
|
- kdSubsystemDetail.setDATAORIGIN(controlType.get(TYPE_NAME[9], String.class));
|
|
|
- } else if (TYPE_NAME[6].equals(enumType)) {
|
|
|
- kdSubsystemDetail.setDATAORIGIN(controlType.get(TYPE_NAME[10], String.class));
|
|
|
- }
|
|
|
- return kdSubsystemDetail;
|
|
|
- }).collect(Collectors.toList());
|
|
|
+ KdSubsystemDetailVo kdSubsystemDetail = new KdSubsystemDetailVo();
|
|
|
+ JSONObject json = JSONUtil.parseObj(JSONUtil.parseObj(info).get(JSON_NAME[4]));
|
|
|
+ String tableColumnNane = json.get(JSON_NAME[11], String.class);
|
|
|
+ kdSubsystemDetail.setTABLECOLUMNNANE(tableColumnNane);
|
|
|
+ kdSubsystemDetail.setTABLECOLUMNTYPE(json.get(JSON_NAME[13], String.class));
|
|
|
+ kdSubsystemDetail.setTABLENAME(json.get(JSON_NAME[14], String.class));
|
|
|
+ kdSubsystemDetail.setLABEL(json.get(JSON_NAME[15], String.class));
|
|
|
+ JSONObject controlType = JSONUtil.parseObj(JSONUtil.parseObj(json.get(TYPE_NAME[0])));
|
|
|
+ String enumType = controlType.get(TYPE_NAME[1], String.class);
|
|
|
+ kdSubsystemDetail.setCONTROLTYPE(controlType.get(TYPE_NAME[0], String.class));
|
|
|
+ kdSubsystemDetail .setENUMTYPE(enumType);
|
|
|
+ if (enumType == null) {
|
|
|
+ return kdSubsystemDetail;
|
|
|
+ }
|
|
|
+ if (TYPE_NAME[2].equals(enumType)) {
|
|
|
+ kdSubsystemDetail.setDATAORIGIN(controlType.get(TYPE_NAME[2], String.class));
|
|
|
+ } else if (TYPE_NAME[3].equals(enumType)) {
|
|
|
+ kdSubsystemDetail.setDATAORIGIN(controlType.get(TYPE_NAME[7], String.class));
|
|
|
+ } else if (TYPE_NAME[4].equals(enumType)) {
|
|
|
+ kdSubsystemDetail.setDATAORIGIN(controlType.get(TYPE_NAME[8], String.class));
|
|
|
+ } else if (TYPE_NAME[5].equals(enumType)) {
|
|
|
+ kdSubsystemDetail.setDATAORIGIN(controlType.get(TYPE_NAME[9], String.class));
|
|
|
+ } else if (TYPE_NAME[6].equals(enumType)) {
|
|
|
+ kdSubsystemDetail.setDATAORIGIN(controlType.get(TYPE_NAME[10], String.class));
|
|
|
+ }
|
|
|
+ return kdSubsystemDetail;
|
|
|
+ }).collect(Collectors.toList());
|
|
|
}
|
|
|
|
|
|
|