gaocr %!s(int64=3) %!d(string=hai) anos
pai
achega
2a1d586a99

+ 53 - 24
src/main/java/com/goer/project/model/modelEntity/controller/ModelEntityController.java

@@ -1,5 +1,6 @@
 package com.goer.project.model.modelEntity.controller;
 
+import java.io.File;
 import java.util.*;
 
 import com.goer.common.chiner.model.TableEntity;
@@ -212,10 +213,33 @@ public class ModelEntityController extends BaseController
     @GetMapping("/importTable/{projectId}")
     public String importTable(@PathVariable("projectId") Long projectId, ModelMap mmap)
     {
-        ModelProject modelProject = modelProjectService.selectModelProjectById(projectId);
-        mmap.put("modelProject", modelProject);
-//        ModelDbs modelDbs = modelDbsService.selectDefaultDbByProjectId(projectId);
-//        mmap.put("modelDbs", modelDbs);
+        ModelDbs modelDbs = new ModelDbs();
+        modelDbs.setProjectId(projectId);
+        List<ModelDbs> list = modelDbsService.selectModelDbsList(modelDbs);
+        for (Iterator<ModelDbs> iterator = list.listIterator(); iterator.hasNext();) {
+            ModelDbs next = iterator.next();
+            if("Y".equalsIgnoreCase(next.getDefaultDb())) {
+                modelDbs = next;
+                iterator.remove();
+                break;
+            }
+        }
+        list.sort(Comparator.comparing(ModelDbs::getId));
+        list.add(0, modelDbs);
+
+//        Collections.sort(list,new Comparator<ModelDbs>(){
+//                @Override
+//                public int compare(ModelDbs m1,ModelDbs m2){
+//                        int i = m1.getDefaultDb().compareTo(m2.getDefaultDb());
+//                        if(i != 0) {
+//                            return i;
+//                        }
+//                        return Long.compare(m1.getId(), m2.getId().longValue());
+//                    }
+//        });
+        mmap.put("projectId", projectId);
+        mmap.put("modelDbs", list);
+
         return prefix + "/importTable";
     }
 
@@ -225,33 +249,38 @@ public class ModelEntityController extends BaseController
     @RequiresPermissions("model:modelEntity:list")
     @PostMapping("/db/list")
     @ResponseBody
-    public TableDataInfo dataList(ModelEntity modelEntity){
-        ModelDbs modelDbs = modelDbsService.selectDefaultDbByProjectId(modelEntity.getProjectId());
+    public TableDataInfo dataList(ModelDbs modelDbs){
+        ModelDbs dbs = modelDbsService.selectModelDbsById(modelDbs.getId());
         DBReverseGetAllTablesListImpl reverse = new DBReverseGetAllTablesListImpl();
         Map<String, String> argsMap = new HashMap<String, String>();
-        argsMap.put(AbstractDBCommand.KEY_DRIVER_CLASS_NAME,modelDbs.getDriverClassName());
-        argsMap.put(AbstractDBCommand.KEY_URL,modelDbs.getUrl());
-        argsMap.put(AbstractDBCommand.KEY_USERNAME,modelDbs.getUserName());
-        argsMap.put(AbstractDBCommand.KEY_PASSWORD,modelDbs.getPassword());
+        argsMap.put(AbstractDBCommand.KEY_DRIVER_CLASS_NAME,dbs.getDriverClassName());
+        argsMap.put(AbstractDBCommand.KEY_URL,dbs.getUrl());
+        argsMap.put(AbstractDBCommand.KEY_USERNAME,dbs.getUserName());
+        argsMap.put(AbstractDBCommand.KEY_PASSWORD,dbs.getPassword());
         ExecResult ret = reverse.exec(argsMap);
         List<TableEntity> listTable = (List<TableEntity>)ret.getBody();
 
-        modelEntity.setVersionId(0L);
-        List<ModelEntity> listEntity = modelEntityService.selectModelEntityList(modelEntity);
         List<ModelEntity> retList = new ArrayList<>();
-        for(TableEntity t : listTable) {
-            boolean existFlag = false;
-            for(ModelEntity m : listEntity) {
-                if(t.getDefKey().equalsIgnoreCase(m.getEntityCode())) {
-                    existFlag = true;
-                    break;
+        if(listTable != null && listTable.size() >0) {
+            ModelEntity modelEntity = new ModelEntity();
+            modelEntity.setProjectId(modelDbs.getProjectId());
+            modelEntity.setVersionId(0L);
+            List<ModelEntity> listEntity = modelEntityService.selectModelEntityList(modelEntity);
+
+            for (TableEntity t : listTable) {
+                boolean existFlag = false;
+                for (ModelEntity m : listEntity) {
+                    if (t.getDefKey().equalsIgnoreCase(m.getEntityCode())) {
+                        existFlag = true;
+                        break;
+                    }
+                }
+                if (!existFlag) {
+                    ModelEntity ne = new ModelEntity();
+                    ne.setEntityCode(t.getDefKey());
+                    ne.setEntityName(t.getDefName());
+                    retList.add(ne);
                 }
-            }
-            if(!existFlag) {
-                ModelEntity ne = new ModelEntity();
-                ne.setEntityCode(t.getDefKey());
-                ne.setEntityName(t.getDefName());
-                retList.add(ne);
             }
         }
         return getDataTable(retList);

+ 17 - 11
src/main/resources/templates/model/modelEntity/importTable.html

@@ -7,13 +7,15 @@
     <div class="container-div">
 		<div class="row">
 			<form id="gen-form">
-				<input type="hidden" id="projectId" name="projectId" th:value="${modelProject.id}">
-<!--				<div class="col-sm-12 search-collapse">-->
-<!--					<div class="select-list">-->
-<!--						<ul>-->
-<!--							<li>-->
-<!--								表名称:<input type="text" name="entityName"/>-->
-<!--							</li>-->
+				<input type="hidden" id="projectId" name="projectId" th:value="${projectId}">
+				<div class="col-sm-12 search-collapse">
+					<div class="select-list">
+						<ul>
+							<li>
+								数据库:<select name="id" id="id">
+										<option th:each="dict : ${modelDbs}" th:text="${dict.dbName}" th:value="${dict.id}" th:selected="${dict.defaultDb=='Y'}"></option>
+									  </select>
+							</li>
 <!--							<li>-->
 <!--								表逻辑名:<input type="text" name="entityCode"/>-->
 <!--							</li>-->
@@ -21,9 +23,9 @@
 <!--								<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>-->
 <!--								<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i>&nbsp;重置</a>-->
 <!--							</li>-->
-<!--						</ul>-->
-<!--					</div>-->
-<!--				</div>-->
+						</ul>
+					</div>
+				</div>
 			</form>
 		    <div class="col-sm-12 select-table table-striped">
 			    <table id="bootstrap-table"></table>
@@ -73,7 +75,11 @@
 		    };
 		    $.table.init(options);
 		});
-		
+
+		$("#id").on('change',function () {
+			$.table.refresh();
+		});
+
 		/* 导入表结构-选择表结构-提交 */
 		function submitHandler() {
 			var rows = $.table.selectColumns("entityCode");