问题描述:
1、职位ZP00000740对应员工程**计算返佣时少了10小时的返费数据;
问题分析:
1、经数据库初步查询分析,利用最新的返费规则和考勤数据计算返佣时,发现该员工在6.21有一条考勤数据(10小时)被标记为“没算完”状态,导致该条数据在最新的返费规则中未取值计算;那么问题的核心就是复现如下的数据场景:
问题复现:
1、考勤被标记为“没算完”状态,主要出现在明细模版中的入职、打卡每满返费节点;
2、分析该职位的返费规则记录,发现该职位先后有两次规则修改,第一次配置了“返费节点:打卡每满7天”,第二次配置了“返费节点:考勤工时/天数”,那么6.21号被标记的考勤应该是在第一次配置的“返费节点:打卡每满7天”规则中被标记的;
3、基于上述分析,在测试环境还原对应招聘职位:“职位名称10小时定位职位”,员工:“10小时专员”,考勤数据同现网员工的考勤数据;
职位返费规则如下:
4、上述规则和考勤数据下计算返费,考勤明细标记状态如下,6.21没有被标记,属于正常状态;
5、当再次点击计算返费时,虽然系统页面提示没有产生新的返费数据,但是发现数据库中6.21该条考勤数据被标记为“没算完”状态,至此就复现了核心问题场景;
6、系统撤销前面生成的返费记录后,6.21前面的考勤记录被正常撤销,但是6.21这条考勤数据被残留到系统内并标记了“未算完”状态,这样后续再进行其他返费规则计算时就有可能遗留该条考勤数据;
7、第二次修改该职位的返费规则,同现网职位的规则为“返费节点:考勤工时/天数,返费金额:通用价: ¥ 3.00 元/小时” 后再次计算返费金额:¥1392.00
刚好遗漏了6.21这条的考勤的10小时。至此,该问题已经完全复现还原!
问题核心点:“打卡每满7天”类需要标记考勤为“未计算”状态的返费规则,在计算返费时,没有产生返费记录,但是多标记了一条考勤为“未计算”状态。