From 9db8157fa24fa0125a025258e2575ea7ecbc4c2f Mon Sep 17 00:00:00 2001 From: "Zhenfei.Li" Date: Tue, 28 Jul 2020 12:49:32 +0800 Subject: [PATCH] =?UTF-8?q?BI-69758=20fix:=20=E8=A1=A8=E5=85=B3=E8=81=94?= =?UTF-8?q?=E4=B8=A2=E5=A4=B1=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../request/handler/UpgradeHandler.java | 51 ++++++++++--------- 1 file changed, 28 insertions(+), 23 deletions(-) diff --git a/src/main/java/com/fr/plugin/decision/request/handler/UpgradeHandler.java b/src/main/java/com/fr/plugin/decision/request/handler/UpgradeHandler.java index 82c94f5..179847b 100644 --- a/src/main/java/com/fr/plugin/decision/request/handler/UpgradeHandler.java +++ b/src/main/java/com/fr/plugin/decision/request/handler/UpgradeHandler.java @@ -6,6 +6,7 @@ import com.finebi.burger.api.bean.configuration.table.field.FineBusinessField; import com.finebi.burger.api.request.configuration.table.DataBaseAddTableItemRequestBean; import com.finebi.burger.api.request.configuration.table.DataBaseAddTableRequestBean; import com.finebi.burger.api.response.configuration.table.TableAddResponseBean; +import com.finebi.common.impl.vo.relation.FineBusinessRelation; import com.finebi.common.impl.vo.table.FineDBBusinessTable; import com.finebi.direct.burger.api.service.FineTableService; import com.finebi.direct.burger.api.service.FineUserInfoService; @@ -137,35 +138,39 @@ public class UpgradeHandler extends HWAbstractHandler { if (StringUtils.equals("success", dmlResult.getString("status")) && dmlResult.getBoolean("addLink")) { ExcelLinkService.getInstance().addLink(name, connection, schema, tableName, createUser); FineLoggerFactory.getLogger().info("HW_excel导入:FineDB 新增数据成功" + name); + List fineBusinessRelations = CellCreator.getCellProvider().relationPathCell().getRelationsByTableNameWithoutAuth(fineBusinessTable.getName()); CellCreator.getCellProvider().tableCell().removeTable(fineBusinessTable.getName(), CellCreator.getCellProvider().userCellProvider().authorityCell().getSuperAuthority()); + + ObjectMapper mapper = new ObjectMapper(); + JSONObject table = JSONObject.create().put("tableName", fineBusinessTable.getName()).put("connectionName", connection); + JSONArray tables = JSONArray.create().put(table); + JSONObject tablesBean = JSONObject.create().put("tables", tables); + try{ + UserAuthority authorityUser = getFineUserInfoService().getUserAuthority(req); + String packid = "__my_analysis__" + authorityUser.getUser().getInfo().getUserId() + "1"; +// String packid = "a94ee0f2b79f4a1e907e4def59a23454"; + try { + String tableString = tablesBean.toString(); + FineBusinessTable[] businessTables = createBusinessTablesFromDBNewAddTableInfo(mapper.readValue(tableString, DataBaseAddTableRequestBean.class), authorityUser.getUser().getInfo().getUserId()); + TableAddResponseBean responed = getTableService().addNewTable(packid, authorityUser, businessTables); + CellCreator.getCellProvider().relationPathCell().addRelations(fineBusinessRelations, authorityUser); + addDbResult.put(FineRespond.success(responed)); + } catch (JsonMappingException e) { + e.printStackTrace(); + } catch (JsonGenerationException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } + } + catch(Exception e){ + e.printStackTrace(); + } } } catch(Exception e){ e.printStackTrace(); } - ObjectMapper mapper = new ObjectMapper(); - JSONObject table = JSONObject.create().put("tableName", fineBusinessTable.getName()).put("connectionName", connection); - JSONArray tables = JSONArray.create().put(table); - JSONObject tablesBean = JSONObject.create().put("tables", tables); - try{ - UserAuthority authorityUser = getFineUserInfoService().getUserAuthority(req); - String packid = "__my_analysis__" + authorityUser.getUser().getInfo().getUserId() + "1"; - try { - String tableString = tablesBean.toString(); - FineBusinessTable[] businessTables = createBusinessTablesFromDBNewAddTableInfo(mapper.readValue(tableString, DataBaseAddTableRequestBean.class), authorityUser.getUser().getInfo().getUserId()); - TableAddResponseBean responed = getTableService().addNewTable(packid, authorityUser, businessTables); - addDbResult.put(FineRespond.success(responed)); - } catch (JsonMappingException e) { - e.printStackTrace(); - } catch (JsonGenerationException e) { - e.printStackTrace(); - } catch (IOException e) { - e.printStackTrace(); - } - } - catch(Exception e){ - e.printStackTrace(); - } } });