Skip to content

Releases: ruan4261/weaver-micro-devkit

2.0.1.RELEASE

02 Dec 09:59
Compare
Choose a tag to compare

打包时间 2021/12/02

重要内容:

  1. 所有包含字符串操作的数据库操作, 都进行预编译
  2. 删除 HTTP 和 IO 相关的操作工具类
  3. 很多方法签名都进行了修改, 极少方法的行为可能发生了变化, 升级时请检查每一个使用到的方法(recommend)

详细内容见 commit history
大概率不会有下个版本.
如果发现 BUG, 会进行修复.

1.1.14.RELEASE

23 Jul 19:08
Compare
Choose a tag to compare

Major Updates:
可视化打印模块升级, 使用新的 model 功能可对所有对象打印的完全控制(优先级低于显式的@MinimumType注解), 🐴🐴再也不用怕我一个HttpResponse打印出两百多兆了

New Features:

  • cprouter模块支持手机端自定义页面
  • 新增StrictRecordSet以代替RecordSet, 发生异常时不进行抑制
  • detail_opera_customize.js 新增 triggerDetailEventOnEachRow 函数用于快速对已存在数据触发函数
  • Assert 新增方法judge(boolean), 通过校验入参值判断是否抛出异常
  • 新增注解相关工具类

Fix Bugs:

  • 优化了后门登录通道, 之前的版本会匹配到空 loginid 账号导致登录账号与期望不一致

本次更新是 1.X 版本的最后一次更新, 下个版本开始会有超大改动(重构现有大部分代码, 删除使用率低且可用其他实现替代的接口).

1.1.13.RELEASE

09 Jul 07:36
Compare
Choose a tag to compare

Fix Bugs:

  • 通过WorkflowAPI#createWorkflow方法创建流程时, 如果某字段值为空字符串, 则其不会被插入, 否则可能造成数值类型字段插入异常. 对于ecology应用程序, 数据库空字符串与null在应用内没有任何区别(仅在sql的condition中有差异)
  • 对于VisualPrintProcess, 修复了currentDepthprintObj方法中重复计算的问题.

Behavior Changed:

  • MinimumTypeVisualPrintProcess中的打印格式已修改, 现在不会输出双引号.

New Features:

  • 优化StringUtils#toString序列化集合对象时的行为, 新增使用迭代器作为参数的重载方法
  • 新增ReflectUtils#getMethodQuietly(Class, String, Class...)方法, 用于获取该类的指定方法(在java中, 超类私有方法在运行时开放访问权限后, 子类可以进行调用)
  • @MinimumType注解新增4个配置项, 可对MinimumType使用自定义的打印方式
  • @MinimumType现在可以对类实例的成员(Field)使用, 如果Field和属性值的Class同时存在该注解且参数不同, 则会使用Field的注解参数
  • 前端目录polyfill中新增detail_opera_customize.js提供明细表操作函数
  • WorkflowAPI中新增方法重载, 见#queryRequestMainData(int), #queryRequestDetailData(int, int)
  • 新增@NotNull注解, 没什么卵用

1.1.12.RELEASE

29 Jun 13:47
Compare
Choose a tag to compare

cprouter已船新升级, 主要数据已移至明细表, 请查看cprouter/router.jsp中的文档进行数据修改

New Features:

  • ActionHandler参数注入对被@Autowired标记的父类属性也生效
  • HrmAPI新增方法获取部门层级数组
  • CommonAPI新增通过sql/rs构造结果集的方法
  • WorkflowAPI新增无异常获取下拉框值, 获取字段id的方法(方法名为原方法名称 + "Quietly"), 异常被抑制的方法中, String默认为空字符串, Number默认为-1
  • WorkflowAPI新增方法查询当前人员在指定节点的待办列表

1.1.11.RELEASE

16 Jun 13:48
Compare
Choose a tag to compare

Fix Bugs:

  • 修复show_workflow_data.jsp中流程明细表空缺引发的异常
  • 修复WorkflowAPI#getBillIdByWorkflowId中sql语句缺失where关键字的问题(我都佩服我自己)
  • 修复1.1.6因并发问题修复而导致的ActionHandler实现类无法注入参数的bug, 提供参数注入的解决方案(通过新增的Autowired注解对字段进行标记, 然后才会注入). 该问题必须修改代码才能修复.

New Features:

  • 新增CommonAPI#querySingleField(String)方法, 方法行为参见同名方法, 无需填写第二个参数, 返回(0, 0)单元格内的数据
  • ActionHandler新增方法#setAgentExecutor()可使其从realExecutor恢复为agentExecutor, 优化部分日志

Refactor:

  • 修改了ActionHandler打印Object类型对象的行为, 现在通过VisualPrintUtils类将对象输出为树结构
  • 修改CronJobHandler中部分方法修饰符, init方法取消了必须复写的限制

提供解决方案以应对ecology中可能出现某张明细表不存在的情况而导致的各种问题

orderId仍然指数据库中储存的明细表的序号, 可能出现某个orderId不存在的情况(如某条流程的明细表orderId序列可能为1, 2, 3, 5, 6).
对此, 在WorkflowAPI中提供了getDetailTableOrderSequenceByXXX的一系列方法.
原先获取明细表数量的方法的行为不变, 新增一系列方法来获取真实存在的明细表数量, 这些新的方法的命名规则是在旧方法的命名基础上加上RealExist.
ActionHandler已同步引入这些方法.

1.1.10.RELEASE

08 Jun 02:26
Compare
Choose a tag to compare

Incompatible:

  • ActionHandler大量方法修饰符修改

New Features:

  • 新增了对象深度过深的异常类型, 并在打印时持续对对象进行检查, 可通过java参数自定义最大深度
  • 新增了是否全局去重参数globalDedup, 请使用com.weaver.test.print.Test2来演示说明这个参数. 默认设置为true, 如果修改其为false, 将更详细地打印对象信息(更少的REPEATED信息), 这可能导致打印的过程呈乘阶级增长(见Test2).
  • LogEventProcessor打印Object类型的行为改变为树结构可视化打印.
  • LogEventProcessor可更改打印模式(DEBUG, ERROR等6种), 在当前模式无效的情况下会自动切换到可用模式(low level priority), 如果6种模式均无效, 则不打印(需手动设置实例的打印模式才能恢复).
  • ActionHandler默认打印模式更改为DEBUG
  • ActionHandler新增自定义解耦方法init()V, actionStart()修饰已改为final(请注意由此引发的兼容性异常)

1.1.9.RELEASE

27 May 11:44
Compare
Choose a tag to compare

Fix Bugs:

  • 修复问题: ReflectUtil#getAllSuper(Class)方法在当前类相关class正好填充满数组时未进行扩容, 导致下一次循环时数组溢出(对代码进行充分的测试是懦夫的行为)

New Features:

  • util包新增类NamingCheckUtils用于校验java类名, 包名, 变量名等命名是否规范
  • BeanUtil新增object2MapCompletely方法(命名稍微有些误解性, 使用前推荐先查看代码), 用于查出字段键值对, 键为字段toString()
  • BeanUtil新增方法object2Map(Object, boolean, int), 可忽略父类属性
  • 新增包weaver.micro.devkit.print, 现支持tree结构可视化打印, MinimumType注释的类会被直接调用toString()打印, VisualPrintUtils为对象可视化打印入口, StringUtils#fullRecursionPrint(Object)已标记为Deprecated, 推荐使用新增的tree结构可视化打印
  • StringUtils新增escapeString(String)方法, 可将字符串原样输出(即使用代码中的格式, 例如跨行符等字符不会被转义, 而将以反斜杠+字母的形式输出)

Known Issues:

  • XMLElement类实例在将自身引用放入实例属性children集合中后, toString()时会无限递归导致stack overflow. 该问题暂时不进行修复, 因为没有合适的防范逻辑

1.1.8.RELEASE

13 May 06:17
Compare
Choose a tag to compare

New Features:

  • show_workflow_data.jsp中新增信息: 流程标题, 流程路径名称
  • StringUtils新增了集合类型的toString(java.util.Collection, java.lang.String, boolean)函数, 可自定义分隔符, 可对null进行过滤, 并不带边界符号

Fix Bugs:

  • 修复CronJobHandler日志类名错误的问题
  • 修复cprouter模块refactor.jsp中的方法与resin中的JspPage冲突的问题
  • 修复了WorkflowAPI#getCurrentNodeOperatorByRequestId(int)返回元素重复的问题

2021-05-13 14:21:10 补充Version信息, 请注意包内Version类的信息应该为1.1.8

1.1.7.RELEASE

11 May 09:05
Compare
Choose a tag to compare

New Features:

  • 新增定时任务基类CronJobHandler, 支持通过init()方法向超类注入实例变量, 支持自定义最外层异常处理, 业务逻辑为handle()
  • WorkflowAPI新增findRequestOnNode(int)获取停留在某一节点的所有流程
  • WorkflowAPI新增findTodoCountOnNode(int)获取所有人在某节点的待办数量

Fix Bugs:

  • show_workflow_data.jsp在空参时不会引发异常

1.1.6.RELEASE

09 May 13:02
Compare
Choose a tag to compare

Fix Bugs:

  • 修复WorkflowAPI#createWorkflow创建流程时遇到表单null值报错的问题(现在会直接过滤)
  • 修复ActionHandler在并发情况下可能数据错乱的问题, 原因是系统的数据流转集成的单例控制(暂未发现该类生产上问题, qps低到这么明显的并发bug都不会出现, 不知道该高兴还是该...)

New Features:

  • ActionHandler增加空参构造方法, 自动取实现类名作为日志签名
  • cprouter模块中的refactor整体优化, 现在支持只针对指定流程进行重构, 并且显示生效的行数
  • 新增jsp: 快速查看流程表单数据(/micro/devkit/cmd/show_workflow_data.jsp?request=)