getWorkDay接口天数判断更新

This commit is contained in:
XaoLi717 2024-12-20 10:19:02 +08:00
parent f03b257a19
commit 40076fe110

View File

@ -154,6 +154,8 @@ public class CalendarServiceImpl implements CalendarService {
public BigDecimal getWorkDay(CalendarPageReqVO workDayVO) {
// 储存判断后扣除天数
float day = 0.0f;
int sWorkHour = 0;
int eWorkHour = 0;
// 储存返回天数
BigDecimal result = null;
@ -192,22 +194,54 @@ public class CalendarServiceImpl implements CalendarService {
// 判断开始天为工作日时才判断
if (sTotal > 0) {
// 开始日期的时间判断
if (sHour > 8 && (sHour - 8) == 4) {
day += 0.5F;
} else if (sHour > 8&&(sHour - 8) > 4) {
day += 1F;
if (sHour < 8 ) {
day += 0f;
} else if (sHour <= 12) {
sWorkHour = 16 - sHour;
} else if (sHour < 17 ) {
sWorkHour = 17 - sHour;
} else {
day += 1f;
}
}
// 判断结束天为工作日时才判断
if (eTotal > 0) {
// 结束日期的时间判断
if (sHour >= 0&&eHour<8) {
if (eHour <= 8 ) {
day += 1f;
} else if (eHour <= 12) {
eWorkHour = eHour - 8;
}else if (eHour <= 17 ) {
eWorkHour = eHour - 9;
} else {
day += 0f;
}
}
// 计算开始时间
if (sWorkHour == 1) {
day += 1F;
} else if (sHour > 8 && (eHour - 8) <= 4) {
} else if (sWorkHour >= 2&&sWorkHour <= 4) {
day += 0.5F;
} else if (sWorkHour > 4) {
day += 0F;
}
// 计算结束时间
if (eWorkHour != 0 && eWorkHour <= 5) {
day += 0.5F;
} else if (eWorkHour > 5) {
day += 0F;
}
// 小时数相等时
if (sHour.equals(eHour)) {
day = 1;
}
// System.out.println("sWorkHour: " + workHour);
// System.out.println("eWorkHour: " + workHour2);
// System.out.println("day: " + day);
}