Explorar o código

公式相关:开启表单更新状态设置

yangyj %!s(int64=2) %!d(string=hai) anos
pai
achega
2c8b431949

+ 1 - 0
blade-service/blade-manager/src/main/java/com/mixsmart/utils/CustomFunction.java

@@ -2570,4 +2570,5 @@ public class CustomFunction {
 
 
 
+
 }

+ 1 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/formula/impl/TableElementConverter.java

@@ -205,6 +205,7 @@ public class TableElementConverter implements ITableElementConverter {
                             /*每一页映射一个tableInfo*/
                             List<ElementData> p = pages.get(i);
                             TableInfo info = tables.get(i);
+                            info.setToBeUpdated(true);
                             info.getDataMap().put(fd.getKey(), recovery(p));
                         }
                     }catch (Exception e){

+ 9 - 4
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/ExcelTabServiceImpl.java

@@ -815,13 +815,18 @@ public class ExcelTabServiceImpl extends BaseServiceImpl<ExcelTabMapper, ExcelTa
         for (String p : part) {
             Matcher m = RegexUtils.matcher("(m_\\d{14}_\\d{19})\\((.+)\\)VALUES\\(([^)]+)\\).+column'(key_\\d{0,2})'", p.replaceAll("[\\n\\s]*", ""));
             if (m.find()) {
-                List<Map<String, Object>> result = this.jdbcTemplate.queryForList("select CONCAT(a.tab_ch_name,'&',b.e_name) tf from m_table_info a join m_wbs_form_element b on b.f_id=a.id where a.tab_en_name='" + m.group(1) + "' and  b.e_key='" + m.group(4) + "'");
-                if (result.size() > 0) {
-                    sb.append("【").append(result.get(0).values().stream().map(String::valueOf).collect(Collectors.joining(","))).append("】");
+                if(p.contains("Data too long for column")){
+                    List<Map<String, Object>> result = this.jdbcTemplate.queryForList("select CONCAT(a.tab_ch_name,'&',b.e_name) tf from m_table_info a join m_wbs_form_element b on b.f_id=a.id where a.tab_en_name='" + m.group(1) + "' and  b.e_key='" + m.group(4) + "'");
+                    if (result.size() > 0) {
+                        sb.append("【").append(result.get(0).values().stream().map(String::valueOf).collect(Collectors.joining(","))).append("数据库字段太短】");
+                    }
+                }else if(p.contains("Unknown column")){
+                    sb.append("【").append(m.group(1)).append(":").append(m.group(4)).append("关联错误】");
                 }
+
             }
         }
-        return sb.append("数据库字段太短,请联系管理员").toString();
+        return sb.append("保存异常,请联系管理员").toString();
     }
 
     // 获取用户