Class OptUtil

java.lang.Object
cn.sinozg.applet.opt.util.OptUtil

public class OptUtil extends Object
工具类
Since:
2024-02-27 19:57
Author:
xieyubin
  • Field Details

  • Constructor Details

    • OptUtil

      public OptUtil()
  • Method Details

    • firstMethodParams

      public static Class<?> firstMethodParams(Method method, String requestMethod)
      获取方法的第一个参数范型类型
      Parameters:
      method - 方法
      requestMethod - 请求类型
      Returns:
      参数类型
    • requestParamsToJson

      public static String requestParamsToJson(String requestMethod, org.aspectj.lang.JoinPoint joinPoint)
      获取到请求参数
      Parameters:
      requestMethod - 请求类型
      joinPoint - joinPoint
      Returns:
      参数 json 或者字符串
    • exclude

      public static boolean exclude(String info, List<String> include, List<String> exclude)
      排除全局表 或者字段
      Parameters:
      info - 表名称或者字段名称
      include - 含有
      exclude - 排除
      Returns:
      是否满足
    • substring

      public static String substring(Object params)
    • optTie

      public static <T> OptTieRelation<T> optTie(Class<T> clazz)
      递归获取映射关系
      Parameters:
      clazz - 类
      Returns:
      映射关系
    • allDiffJson

      public static String allDiffJson(AnalysisMiddleware mom)
      所有的 对比 按照表显示 不按照父子关系
      Parameters:
      mom - 数据
      Returns:
      差异集合
    • diffWithDependency

      public static void diffWithDependency(AnalysisMiddleware mom, Class<?> tie)
      对比信息 按照依赖关系返回
      Parameters:
      mom - 参数
      tie - 依赖关系结构
    • compare

      public static List<OptLogTableInfo> compare(List<Map<String,Object>> newValues, Map<String,Map<String,Object>> oldValues, Map<String,OptMapperColumn> propMap, OptLogTableDetail tableDetail, ModeEnum modeEnum)
      对比一次sql 执行后的数据差异
      Parameters:
      newValues - 新值
      oldValues - 旧数据
      propMap - 属性
      tableDetail - 表详情
      modeEnum - 修改类型
      Returns:
      具体信息
    • compareTable

      private static OptLogTableInfo compareTable(Map<String,Object> newValues, Map<String,Object> oldValues, Map<String,OptMapperColumn> propMap, OptLogTableDetail tableDetail, ModeEnum modeEnum)
      对比表一条记录的数据差异
      Parameters:
      newValues - 新值
      oldValues - 旧数据
      propMap - 属性
      tableDetail - 表详情
      modeEnum - 修改类型
      Returns:
      具体信息
    • valueIsEquals

      private static org.apache.commons.lang3.tuple.Pair<String,String> valueIsEquals(Object oldValue, Object newValue)
      判断对象是否相等
      Parameters:
      oldValue - oldValue
      newValue - newValue
      Returns:
      是否相等
    • formatColumnValue

      public static String formatColumnValue(Object value)
      不同类型的数据格式化
      Parameters:
      value - 格式化值
      Returns:
      格式化
    • optTieList

      private static List<OptTieCache<?>> optTieList(Class<?> clazz, Map<Class<?>,OptTieRecord> keyMap)
      递归获取映射关系
      Parameters:
      clazz - 类
      keyMap - map
      Returns:
      映射关系
    • itemTale

      private static void itemTale(OptTieCache<?> tie, AnalysisMiddleware mom, OptLogDiffTable diffTable, String pId)
      迭代处理数据
      Parameters:
      tie - 依赖
      mom - 参数
      diffTable - 父级diff 信息
      pId - 父id
    • setTableDiffByMode

      private static void setTableDiffByMode(Map<ModeEnum,OptLogDiffTableChange> map, OptLogTableInfo t, AnalysisMiddleware mom)
      根据类型 设置表的修改信息
      Parameters:
      map - map
      t - 表数据
      mom - 原始数据
    • getOneTableDiff

      private static OptLogDiffTable getOneTableDiff(List<OptLogTableInfo> tables, AnalysisMiddleware mom)
      设置一个类型的表的数据
      Parameters:
      tables - 数据
      mom - 参数
      Returns:
      表信息
    • setChangeList

      private static void setChangeList(Map<ModeEnum,OptLogDiffTableChange> changes, OptLogDiffTable table)
      设置 对比结果到一个表的集合里面去
      Parameters:
      changes - 对比结果
      table - 表
    • firstEntityClass

      private static void firstEntityClass(AnalysisMiddleware mom, OptTieRelation<?> optTie)
      获取主表的类型
      Parameters:
      mom - 已经处理后的表数据
      optTie - 依赖
    • initDiffTable

      private static OptLogDiffTable initDiffTable(List<OptLogTableInfo> list)
      初始化设置表的diff信息
      Parameters:
      list - 数据集合
      Returns:
      表信息
    • isFilterObject

      private static boolean isFilterObject(Object o)
      判断是否需要过滤的对象。
      Parameters:
      o - 对象信息。
      Returns:
      如果是需要过滤的对象,则返回true;否则返回false。