Parcourir la source

保存表单,解析json失败

xiexh il y a 10 mois
Parent
commit
1eb8e09b79

+ 6 - 1
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/business/service/impl/AuditServiceImpl.java

@@ -333,7 +333,12 @@ public class AuditServiceImpl implements AuditService {
         String sql = "select data_ from "+LOG_TABLE+" where id_ ='"+logId+"'";
         Map<String,Object> map = commonDao.queryOne(sql);
         if (BeanUtils.isNotEmpty(map) && BeanUtils.isNotEmpty(map.get("data_"))){
-            JSONArray jsonArray = JSONUtil.parseArray(map.get("data_").toString());
+            //JSONArray jsonArray = JSONUtil.parseArray(map.get("data_").toString());
+            String replaceSql = map.get("data_").toString().replaceAll("\\\\", "").
+                    replaceAll("\"\\[","[").replaceAll("]\"","]");
+            //预处理,去除空格和换行符导致json转换失败问题
+            replaceSql = replaceSql.trim().replace("\r\n", "\\r\\n").replace("\n", "\\n");
+            JSONArray jsonArray = JSONUtil.parseArray(replaceSql);
             StringBuilder sqlBuilder = new StringBuilder();
             for (int i = 0; i < jsonArray.size(); i++) {
                 JSONObject jsonObject = jsonArray.getJSONObject(i);