|
|
@@ -1983,7 +1983,7 @@ public class BusinessScript extends BaseScript {
|
|
|
* @param isAdd 是否新增/更新
|
|
|
* TODO 待验证
|
|
|
*/
|
|
|
- public void insertOrUpdateDataBySql(String sourceTalbe,Map<String, String> whereFieldMap,String insertTable,Map<String, String> getFieldMap,Map<String, String> fiedValueMap,boolean isAdd,Map<String, List<Object[]>> sql){
|
|
|
+ public void insertOrUpdateDataBySql(String sourceTalbe,Map<String, String> whereFieldMap,String insertTable,Map<String, String> getFieldMap,Map<String, String> fiedValueMap,boolean isAdd,Map<String, List<Object[]>> sqls){
|
|
|
Assert.notBlank(sourceTalbe, "源表名称为空!");
|
|
|
Assert.notBlank(insertTable, "原始表标识字段为空!");
|
|
|
|
|
|
@@ -1999,7 +1999,8 @@ public class BusinessScript extends BaseScript {
|
|
|
StringBuilder targetInsertSql = new StringBuilder("insert into ").append(insertTable).append(" ( ");
|
|
|
//定义更新表开始
|
|
|
StringBuilder targetUpdateSql = new StringBuilder("update ").append(insertTable).append(" set ");
|
|
|
- int paramterIndex = 0;
|
|
|
+ int paramIndex = 0;
|
|
|
+ int targetIndex = 0;
|
|
|
for(Entry<String, String> entry : entrySet) {
|
|
|
String sourceField = entry.getKey();
|
|
|
Assert.notBlank(sourceField, "源表字段为空!");
|
|
|
@@ -2007,8 +2008,8 @@ public class BusinessScript extends BaseScript {
|
|
|
Assert.notBlank(targetField, "目标表字段为空!");
|
|
|
sourceSelectSql.append(sourceField).append(StringPool.COMMA);
|
|
|
targetInsertSql.append(targetField).append(StringPool.COMMA);
|
|
|
- targetUpdateSql.append(targetField).append("=#{p").append(paramterIndex ++).append("}").append(StringPool.COMMA);
|
|
|
- subParamSql.append("=#{p").append(paramterIndex ++).append("}").append(StringPool.COMMA);
|
|
|
+ targetUpdateSql.append(targetField).append("#{p").append(targetIndex ++).append("}").append(StringPool.COMMA);
|
|
|
+ subParamSql.append("#{p").append(paramIndex ++).append("}").append(StringPool.COMMA);
|
|
|
}
|
|
|
//插入目标表的后台逻辑的字段值,即参数直接来源
|
|
|
Map<String, String> fieldValueMap = new LinkedHashMap<>(fiedValueMap);
|
|
|
@@ -2016,8 +2017,8 @@ public class BusinessScript extends BaseScript {
|
|
|
for(Entry<String, String> entry : fieldRelationMap0Set){
|
|
|
String targetField = entry.getKey();
|
|
|
targetInsertSql.append(targetField).append(StringPool.COMMA);
|
|
|
- subParamSql.append("=#{p").append(paramterIndex ++).append("}").append(StringPool.COMMA);
|
|
|
- targetUpdateSql.append(targetField).append("=#{p").append(paramterIndex ++).append("}").append(StringPool.COMMA);
|
|
|
+ subParamSql.append("#{p").append(paramIndex ++).append("}").append(StringPool.COMMA);
|
|
|
+ targetUpdateSql.append(targetField).append("#{p").append(targetIndex ++).append("}").append(StringPool.COMMA);
|
|
|
}
|
|
|
|
|
|
// 去掉最后一个“,”
|
|
|
@@ -2048,7 +2049,7 @@ public class BusinessScript extends BaseScript {
|
|
|
//List<Map<String, Object>> listData = jdbcTemplate.queryForList(sourceSelectSql.toString(), values.toArray());
|
|
|
//将问号的值进行赋予值
|
|
|
Map<String, Object> toData = new LinkedHashMap<>();
|
|
|
- Map<String, List<Object[]>> sqls = new HashMap<>();
|
|
|
+// Map<String, List<Object[]>> sqls = new HashMap<>();
|
|
|
//查询的源表是否有值
|
|
|
if(BeanUtils.isNotEmpty(listData)){
|
|
|
List<Object[]> paramObjectsList = new ArrayList<>();
|