上一篇正好是记录 怎么实现改项目状态为,关闭时,同步把项目下关联的岗位都关闭的文章
今天演示系统时出现了个严重bug ,新建的一个没有个发不过岗位的项目,我点击关闭,改变他的状态为关闭后。
整个系统的岗位状态都是关闭了,简直太吓人了,幸好我是本机测试上操作的。
本以为是多么严重复杂的bug 都想先把这个功能从正式机下线,以免类似灾难发生。
刚分析了代码,原因如下:
因为项目下面没有建立岗位,查询项目岗位对应关系的list是空的,
原来逻辑是把这个list中所有值都关闭,现在list是空的,sql范围就没了 ,就是把全部岗位都关了
找到问题,改很好改,加一个查询关系后的list判断就行了
参照标准写法判断 数组非空 if(CollUtil.isNotEmpty(jobIds)) {