From fa24d347d4c5a796297184f9957b0582dc52c66e Mon Sep 17 00:00:00 2001 From: kimi <kimi42345@gmail.com> Date: 星期五, 14 二月 2020 14:34:00 +0800 Subject: [PATCH] init 2/14 --- src/main/java/com/highdatas/mdm/service/impl/MasterDataServiceImpl.java | 40 +++++++++++++++++++++++++++++++++++++++- 1 files changed, 39 insertions(+), 1 deletions(-) diff --git a/src/main/java/com/highdatas/mdm/service/impl/MasterDataServiceImpl.java b/src/main/java/com/highdatas/mdm/service/impl/MasterDataServiceImpl.java index a04589d..855e7a2 100644 --- a/src/main/java/com/highdatas/mdm/service/impl/MasterDataServiceImpl.java +++ b/src/main/java/com/highdatas/mdm/service/impl/MasterDataServiceImpl.java @@ -472,6 +472,7 @@ try { String[] split = fields.split(Constant.SEMICOLON); List<String> fieldNameList = Arrays.stream(split).map(s -> s.trim()).collect(Collectors.toList()); + fields = fieldNameList.stream().collect(Collectors.joining(Constant.COMMA)); ContentBuilder builder = new ContentBuilder(Constant.COMMA); Object parse = JSON.parse(values); List<String> ids = new ArrayList<>(); @@ -481,7 +482,7 @@ ids.add(id); String sqlValues = builder.toString(); mapper.insert(tableName, fields, sqlValues); - return Result.success(CodeMsg.INSERT_SUCCESS); + return Result.success(ids); } else if (parse instanceof JSONArray) { JSONArray jsonArray = (JSONArray) parse; int size = jsonArray.size(); @@ -582,6 +583,12 @@ } @Override + public Result updateByStdId(String tableName, String fieldsSegment, String id, boolean total) { + String whereStr = DbUtils.combieOneSegment(Constant.STD_ID, id); + return update(tableName, fieldsSegment,whereStr, total); + } + + @Override public Result update(String tableName, String fieldsSegment, boolean total) { String whereSegment = Constant.WHERE_DEFAULT; return update(tableName, fieldsSegment,whereSegment, total); @@ -614,6 +621,31 @@ segment = new Segment(fieldName, String.valueOf(o)); } else { segment = new Segment(fieldName, o); + } + builder.append(segment.toString()); + } + return builder.toString(); + } + + @Override + public String getUpdateSegment(String tableName, String alias, String fieldsSegment) { + ContentBuilder builder = new ContentBuilder(Constant.COMMA); + JSONObject jsonObject = JSONObject.parseObject(fieldsSegment); + List<TableSchemaResult> tableFieldResultList = mapper.getTableField(tableName); + for (TableSchemaResult tableSchemaResult : tableFieldResultList) { + String dbType = tableSchemaResult.getDbType(); + String fieldName = tableSchemaResult.getFieldName(); + Object o = jsonObject.get(fieldName); + if (o == null) { + continue; + } + String javaTypeStr = DbUtils.toSqlToJava(dbType); + Segment segment; + if ("string".equalsIgnoreCase(javaTypeStr.trim())) { + + segment = new Segment(MessageFormat.format(Constant.Alias, alias, fieldName), String.valueOf(o)); + } else { + segment = new Segment(MessageFormat.format(Constant.Alias, alias, fieldName), o); } builder.append(segment.toString()); } @@ -691,6 +723,12 @@ String whereStr = DbUtils.combieOneSegment(Constant.ID, id); return delete(tableName, whereStr); } + + @Override + public Result deleteByStdId(String tableName, String id) { + String whereStr = DbUtils.combieOneSegment(Constant.STD_ID, id); + return delete(tableName, whereStr); + } @Override public Result delete(String tableName, String whereSegment) { try { -- Gitblit v1.8.0