import java.sql.*; public class QueryAdminMenus2 { public static void main(String[] args) throws Exception { String url = "jdbc:mysql://cq-cdb-8fjmemkb.sql.tencentcdb.com:27220/ylrz_saas?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8"; try (Connection c = DriverManager.getConnection(url, "root", "Ylrz_1q2w3e4r5t6y"); Statement st = c.createStatement()) { System.out.println("=== saas tenant menus (parent chain) ==="); try (ResultSet rs = st.executeQuery( "SELECT m.menu_id, m.menu_name, m.parent_id, p.menu_name AS pname, m.path, m.component, m.icon " + "FROM sys_menu m LEFT JOIN sys_menu p ON m.parent_id=p.menu_id " + "WHERE m.component LIKE 'saas/%' OR m.path LIKE '%tenant%' OR m.menu_name LIKE '%" + "\u79df\u6237" + "%' " + "ORDER BY m.menu_id")) { while (rs.next()) { System.out.printf("%s | %s | parent=%s(%s) | path=%s | comp=%s | icon=%s%n", rs.getString(1), rs.getString(2), rs.getString(3), rs.getString(4), rs.getString(5), rs.getString(6), rs.getString(7)); } } System.out.println("\n=== lobster parent 2864 children ==="); try (ResultSet rs = st.executeQuery( "SELECT menu_id, menu_name, path, component, icon FROM sys_menu WHERE parent_id=2864 ORDER BY order_num")) { while (rs.next()) { System.out.printf("%s | %s | path=%s | icon=%s%n", rs.getString(1), rs.getString(2), rs.getString(4), rs.getString(5)); } } System.out.println("\n=== menus icon null/empty/# (all types) ==="); try (ResultSet rs = st.executeQuery( "SELECT menu_id, menu_name, parent_id, path, component, icon, menu_type, visible " + "FROM sys_menu WHERE (icon IS NULL OR icon='' OR icon='#') AND menu_type IN ('C','M') " + "AND visible='0' AND status='0' ORDER BY menu_id LIMIT 80")) { while (rs.next()) { System.out.printf("%s | %s | parent=%s | path=%s | icon=[%s] | type=%s%n", rs.getString(1), rs.getString(2), rs.getString(3), rs.getString(4), rs.getString(5), rs.getString(7)); } } System.out.println("\n=== check view files exist for upgrade ==="); String[] comps = { "saas/tenant/upgrade/index", "admin/tenantDict/sync/index", "saas/tenant/dict/sync/index", "admin/tenant/upgrade/index" }; for (String comp : comps) { java.nio.file.Path p = java.nio.file.Paths.get("d:/ylrz_saas_new/adminui/src/views/" + comp + ".vue"); System.out.println(comp + " -> " + (java.nio.file.Files.exists(p) ? "OK" : "MISSING")); } } } }