diff --git a/hcframe-parent/hcframe-base/src/main/java/com/taixingyiji/base/module/data/dao/TableMapper.java b/hcframe-parent/hcframe-base/src/main/java/com/taixingyiji/base/module/data/dao/TableMapper.java index ec2d136..e2ac6a7 100644 --- a/hcframe-parent/hcframe-base/src/main/java/com/taixingyiji/base/module/data/dao/TableMapper.java +++ b/hcframe-parent/hcframe-base/src/main/java/com/taixingyiji/base/module/data/dao/TableMapper.java @@ -52,5 +52,7 @@ public interface TableMapper { Long countBySql(@Param("sql") String sql); int insertBatch(@Param("list") List> list, @Param("tableName") String tableName); + int insertBatchSeq(@Param("list") List> list, @Param("tableName") String tableName,@Param("pkName")String pkName); + int updateBatchByPk(@Param("sql")String sql); } diff --git a/hcframe-parent/hcframe-base/src/main/java/com/taixingyiji/base/module/data/module/BaseMapperImpl.java b/hcframe-parent/hcframe-base/src/main/java/com/taixingyiji/base/module/data/module/BaseMapperImpl.java index ac1f5e7..f18d1f9 100644 --- a/hcframe-parent/hcframe-base/src/main/java/com/taixingyiji/base/module/data/module/BaseMapperImpl.java +++ b/hcframe-parent/hcframe-base/src/main/java/com/taixingyiji/base/module/data/module/BaseMapperImpl.java @@ -740,36 +740,21 @@ public class BaseMapperImpl implements BaseMapper { throw new ServiceException("list can not empty"); } // JudgesNull(data, "tableName can not be null!"); - String key; - DatasourceConfig datasourceConfig = new DatasourceConfig(); - try { - key = DBContextHolder.getDataSource(); - datasourceConfig = DataSourceUtil.get(key); - } catch (Exception e) { - if (dataType.contains("oracle")) { - datasourceConfig.setCommonType(DataUnit.ORACLE); - } - if (dataType.contains("mysql")) { - datasourceConfig.setCommonType(DataUnit.MYSQL); - } - if (dataType.contains("DmDriver")) { - datasourceConfig.setCommonType(DataUnit.DAMENG); - } - if (dataType.contains("sqlite")) { - datasourceConfig.setCommonType(DataUnit.SQLITE); - } - } + String dataTypeConfig = getDataConfig(); if (StringUtils.isEmpty(pkName)) { pkName = "ID"; } - - if (datasourceConfig.getCommonType().equals(DataUnit.ORACLE) || datasourceConfig.getCommonType().equals(DataUnit.DAMENG)) { + int i; + if (dataTypeConfig.equals(DataUnit.ORACLE) || dataTypeConfig.equals(DataUnit.DAMENG) || dataTypeConfig.equals(DataUnit.HANGO)) { + Object id = getSequence(tableName, pkName); for (Map map : list) { - Object id = getSequence(tableName, pkName); - map.put(pkName, id); + map.put(pkName, "nextval('"+tableName.toLowerCase()+"_seq')"); } + i = tableMapper.insertBatchSeq(list,tableName,pkName); + }else { + i = tableMapper.insertBatch(list, tableName); + } - int i = tableMapper.insertBatch(list, tableName); SqlException.base(i, "保存失败"); return i; } @@ -828,12 +813,12 @@ public class BaseMapperImpl implements BaseMapper { if (!tableMapper.judgeHighGoSequenceExist(tableName.toLowerCase())) { Map map = selectRecentData(tableName, pkName); if (map == null) { - tableMapper.createHighGoSequence(tableName, 1); + tableMapper.createHighGoSequence(tableName.toLowerCase(), 1); } else { - tableMapper.createHighGoSequence(tableName, map.get(pkName)); + tableMapper.createHighGoSequence(tableName.toLowerCase(), map.get(pkName)); } } - id = tableMapper.getHighGoSequence(tableName); + id = tableMapper.getHighGoSequence(tableName.toLowerCase()); } else { try { String url = druidDataSource.getUrl(); diff --git a/hcframe-parent/hcframe-base/src/main/resources/mapping/data/TableMapper.xml b/hcframe-parent/hcframe-base/src/main/resources/mapping/data/TableMapper.xml index 7635df8..181e423 100644 --- a/hcframe-parent/hcframe-base/src/main/resources/mapping/data/TableMapper.xml +++ b/hcframe-parent/hcframe-base/src/main/resources/mapping/data/TableMapper.xml @@ -158,7 +158,7 @@ from dual CREATE @@ -209,8 +209,31 @@ VALUES - - #{value}, + + #{value} + + + + + + INSERT INTO ${tableName} + + + ${column} + + + VALUES + + + + + + ${value} + + + #{value} + +