|
@@ -461,12 +461,12 @@ public class KYCDServiceImpl extends ServiceImpl<AdvancedLeaveMapper, AdvancedLe
|
|
|
@Override
|
|
|
public Map getUserLeaveInfo(String userId) {
|
|
|
|
|
|
- LambdaQueryWrapper<AdvancedLeave> advancedLeaveLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ /*LambdaQueryWrapper<AdvancedLeave> advancedLeaveLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
advancedLeaveLambdaQueryWrapper.eq(AdvancedLeave::getUserId,userId)
|
|
|
.eq(AdvancedLeave::getYear,String.valueOf(DateUtil.year(new Date())))
|
|
|
.eq(AdvancedLeave::getValidFlag,"1");
|
|
|
AdvancedLeave advancedLeave = advancedLeaveMapper.selectOne(advancedLeaveLambdaQueryWrapper);
|
|
|
-
|
|
|
+*/
|
|
|
|
|
|
Map leaveMap = new HashMap();
|
|
|
//查询员工年假余额
|
|
@@ -482,25 +482,40 @@ public class KYCDServiceImpl extends ServiceImpl<AdvancedLeaveMapper, AdvancedLe
|
|
|
|
|
|
|
|
|
//年假余额
|
|
|
- double annualLeaveNum = 0;
|
|
|
+ double annualLeaveNum = 0.00;
|
|
|
+ //预支年假数量
|
|
|
+ double advancedLeaveNum = 8.00;
|
|
|
+
|
|
|
if (Objects.nonNull(result1.get("leave_quotas"))){
|
|
|
for (Map leaveQuotas : (List<Map>) result1.get("leave_quotas")) {
|
|
|
if (Objects.isNull(leaveQuotas.get("quota_num_per_hour")) && Objects.nonNull(leaveQuotas.get("quota_num_per_day"))){
|
|
|
annualLeaveNum += ((int) leaveQuotas.get("quota_num_per_day")) / 100.0;
|
|
|
}
|
|
|
}
|
|
|
- //预支年假数量
|
|
|
- int advancedLeaveNum = 0;
|
|
|
- if (Objects.nonNull(advancedLeave)){
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ /*if (Objects.nonNull(advancedLeave)){
|
|
|
advancedLeaveNum = advancedLeave.getLeaveNum();
|
|
|
}else{
|
|
|
advancedLeaveNum = annualLeaveNum >= 8 ? 8 : (int)annualLeaveNum;
|
|
|
- }
|
|
|
-
|
|
|
- leaveMap.put("可预支年假",advancedLeaveNum);
|
|
|
- leaveMap.put("实际年假余额",Math.max(0,NumberUtil.sub(annualLeaveNum,advancedLeaveNum)));
|
|
|
- leaveMap.put("已预支年假",Math.max(0,Math.ceil(advancedLeaveNum-annualLeaveNum)));
|
|
|
+ }*/
|
|
|
+
|
|
|
+ if (annualLeaveNum >= 8){
|
|
|
+ annualLeaveNum = advancedLeaveNum - 8;
|
|
|
+ leaveMap.put("可预支年假",8);
|
|
|
+ leaveMap.put("实际年假余额",annualLeaveNum);
|
|
|
+ leaveMap.put("已预支年假",0);
|
|
|
+ }else {
|
|
|
+ double relYearLeave = annualLeaveNum % 0.5;
|
|
|
+ leaveMap.put("可预支年假",annualLeaveNum - relYearLeave);
|
|
|
+ leaveMap.put("实际年假余额",annualLeaveNum - 8);
|
|
|
+ leaveMap.put("已预支年假",8 - (annualLeaveNum - relYearLeave));
|
|
|
}
|
|
|
+/* leaveMap.put("可预支年假",Math.min(8,annualLeaveNum));
|
|
|
+ leaveMap.put("实际年假余额",NumberUtil.sub(annualLeaveNum,advancedLeaveNum));
|
|
|
+ leaveMap.put("已预支年假",Math.max(0,Math.ceil(advancedLeaveNum-annualLeaveNum)));*/
|
|
|
+
|
|
|
|
|
|
|
|
|
|