许鹏程
2024-12-24 1c782e2479c877ed8c2c1353bc8f9a08fc7b3b37
src/main/java/com/product/patch/service/PatchImportService.java
@@ -8,6 +8,7 @@
import cn.hutool.core.util.ZipUtil;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.google.common.collect.Lists;
import com.google.common.collect.Sets;
import com.product.admin.service.PublicService;
import com.product.common.utils.StringUtils;
@@ -161,6 +162,12 @@
    */
   private DataTableEntity readTableStructure(File file) throws Exception {
      DataTableEntity dte = readFileData(file, "product_sys_datamodel_table");
      List<String> tableNames = Lists.newArrayList("product_sys_datamodel_table", "product_sys_datamodel_field", "product_sys_datamodel_index");
      dte.getData().sort((a, b) -> {
         // 表名 product_sys_datamodel_table 、product_sys_datamodel_field、product_sys_datamodel_index 排在前
         return tableNames.contains(a.getString("table_name")) ? -1 : 1;
      });
      DataTableEntity old = getBaseDao().listTable("product_sys_datamodel_table", BaseUtil.buildQuestionMarkFilter("uuid", dte.getUuids().length, true), dte.getUuids(), null, null, Integer.MAX_VALUE, 1, true);
      for (int i = 0; i < dte.getRows(); i++) {
         FieldSetEntity fse = dte.getFieldSetEntity(i);
@@ -196,6 +203,7 @@
                  if (CollectionUtil.isEmpty(fieldSetEntity)) {
                     //不存在
                     FieldSetEntity clones = oldFse1.clones();
                     //查询该字段是否有索引
                     clones.setValue(CoreConst.SYSTEM_DATA_OPERATE_TYPE, CoreConst.SYSTEM_DATA_OPERATE_DEL);
                     sub.addFieldSetEntity(clones);
                  }
@@ -310,6 +318,9 @@
      }
      File fileDir = ZipUtil.unzip(file);
      int result = 0;
      if (fileDir == null || !fileDir.isDirectory()) {
         return 0;
      }
      for (File file1 : fileDir.listFiles()) {
         if (!file1.isFile()) {
            continue;