|
|
@@ -2,7 +2,6 @@ package com.lc.ibps.aop;
|
|
|
|
|
|
import cn.hutool.core.date.StopWatch;
|
|
|
import cn.hutool.json.JSONArray;
|
|
|
-import cn.hutool.json.JSONObject;
|
|
|
import cn.hutool.json.JSONUtil;
|
|
|
import com.lc.ibps.base.core.util.BeanUtils;
|
|
|
import com.lc.ibps.base.framework.table.ICommonDao;
|
|
|
@@ -22,7 +21,6 @@ import org.springframework.web.context.request.ServletRequestAttributes;
|
|
|
import javax.annotation.Resource;
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
import java.util.*;
|
|
|
-import java.util.stream.Collectors;
|
|
|
|
|
|
@Aspect
|
|
|
@Component
|
|
|
@@ -115,12 +113,15 @@ public class EquipmentDBLogAspect {
|
|
|
String WhereStr = whereBuilder.toString();
|
|
|
String zbWhereStr = WhereStr.replace("id_", "parent_id_");
|
|
|
String query = String.format("SELECT * FROM %s WHERE %s", tableName,WhereStr);
|
|
|
- List<Map<String,Object>> list = commonDao.query(query);
|
|
|
+ List<Map<String,Object>> masterList = commonDao.query(query);
|
|
|
//获取子表的数据
|
|
|
- String zbData = getChildData(tableName, zbWhereStr);
|
|
|
+ getChildData(tableName, zbWhereStr,masterList);
|
|
|
//拼接主子表的数据
|
|
|
- if(BeanUtils.isNotEmpty(list)){
|
|
|
- oldData = JSONUtil.toJsonStr(list)+zbData;
|
|
|
+ if(BeanUtils.isNotEmpty(masterList)){
|
|
|
+ // 使用 JSONArray 并设置日期格式防止时间被转换为毫秒
|
|
|
+ JSONArray jsonArrayResult = new JSONArray(masterList);
|
|
|
+ jsonArrayResult.setDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
+ oldData = jsonArrayResult.toString();
|
|
|
}
|
|
|
}
|
|
|
if (SAVE_METHOD.equals(methodName)) {
|
|
|
@@ -132,38 +133,46 @@ public class EquipmentDBLogAspect {
|
|
|
// 构建条件
|
|
|
String zbWhereStr = " parent_id_ = '"+id+"'";
|
|
|
String query = String.format("SELECT * FROM %s WHERE id_ = '"+id+"' ", tableName);
|
|
|
- List<Map<String,Object>> list = commonDao.query(query);
|
|
|
+ List<Map<String,Object>> masterList = commonDao.query(query);
|
|
|
//获取子表的数据
|
|
|
- String zbData = getChildData(tableName, zbWhereStr);
|
|
|
- if(BeanUtils.isNotEmpty(list)){
|
|
|
- oldData = JSONUtil.toJsonStr(list)+zbData;
|
|
|
+ getChildData(tableName, zbWhereStr, masterList);
|
|
|
+ if(BeanUtils.isNotEmpty(masterList)){
|
|
|
+ // 使用 JSONArray 并设置日期格式防止时间被转换为毫秒
|
|
|
+ JSONArray jsonArrayResult = new JSONArray(masterList);
|
|
|
+ jsonArrayResult.setDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
+ oldData = jsonArrayResult.toString();
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
return oldData;
|
|
|
}
|
|
|
|
|
|
- private String getChildData(String tableName, String whereStr) {
|
|
|
- String zbData =",T_FSSBJPJB-";
|
|
|
- String zbData2 =",T_WHZQJXM-";
|
|
|
+ private void getChildData(String tableName, String whereStr, List<Map<String, Object>> masterList) {
|
|
|
if("T_SBDJ".equals(tableName)){
|
|
|
//ids.replace("id_","parent_id_");
|
|
|
+ if(BeanUtils.isNotEmpty(masterList)){
|
|
|
+ for (Map<String, Object> map : masterList) {
|
|
|
+ map.put("table_name", "T_SBDJ");
|
|
|
+ }
|
|
|
+ }
|
|
|
String query = String.format("SELECT * FROM T_FSSBJPJB WHERE %s",whereStr);
|
|
|
List<Map<String,Object>> list = commonDao.query(query);
|
|
|
if(BeanUtils.isNotEmpty(list)){
|
|
|
- zbData = zbData+JSONUtil.toJsonStr(list);
|
|
|
- }else{
|
|
|
- zbData ="T_FSSBJPJB-{}";
|
|
|
+ for (Map<String, Object> map : list) {
|
|
|
+ map.put("table_name", "T_FSSBJPJB");
|
|
|
+ }
|
|
|
+ masterList.addAll(list);
|
|
|
}
|
|
|
String query2 = String.format("SELECT * FROM T_WHZQJXM WHERE %s",whereStr);
|
|
|
List<Map<String,Object>> list2 = commonDao.query(query2);
|
|
|
if(BeanUtils.isNotEmpty(list2)){
|
|
|
- zbData2 = zbData2+JSONUtil.toJsonStr(list2);
|
|
|
- }else{
|
|
|
- zbData2 ="T_WHZQJXM-{}";
|
|
|
+ for (Map<String, Object> map : list2) {
|
|
|
+ map.put("table_name", "T_WHZQJXM");
|
|
|
+ }
|
|
|
+ masterList.addAll(list2);
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
- return zbData+zbData2;
|
|
|
}
|
|
|
|
|
|
/**
|