package jnpf.attendance.fallback; import jnpf.attendance.FtbStatisticsApi; import jnpf.attendance.dto.*; import jnpf.base.ActionResult; import jnpf.model.attendance.dto.DayStatisticsDto; import jnpf.model.attendance.dto.SalaryAttendanceSupportDto; import jnpf.model.attendance.vo.attendance.AttendanceCustomizeTableVo; import jnpf.model.attendance.vo.attendance.DayStatisticsPageListVo; import jnpf.model.attendance.vo.attendance.DayStatisticsVo; import jnpf.model.attendance.vo.attendance.SalaryAttendanceSupportVo; import lombok.extern.slf4j.Slf4j; import org.springframework.cloud.openfeign.FallbackFactory; import org.springframework.stereotype.Component; import java.util.Date; import java.util.List; import java.util.Map; @Slf4j @Component public class FtbStatisticsApiFallback implements FallbackFactory { @Override public FtbStatisticsApi create(Throwable cause) { // 打印降级原因 log.error("进入 FtbStatisticsApi 的 fallback,降级原因:", cause); return new FtbStatisticsApi() { @Override public ActionResult userDayStatisticsInit(String tenantId) { return ActionResult.success(Boolean.FALSE); } @Override public ActionResult dayStatisticsNotice(String tenantId) { return ActionResult.success(Boolean.FALSE); } @Override public ActionResult monthStatisticsNotice(String tenantId) { return ActionResult.success(Boolean.FALSE); } @Override public ActionResult teamMonthStatisticsNotice(String tenantId) { return ActionResult.success(Boolean.FALSE); } @Override public void consentUnscheduledNotice(String tenantId) { } @Override public ActionResult autoSealTimer(String tenantId) { return ActionResult.success(Boolean.FALSE); } @Override public List countAttendanceAvgHours(AttendanceCountAvgHoursDto dto) { return List.of(); } @Override public ActionResult getAttendanceAvgHoursDetails(MonthStatsDetailsDto dto) { return ActionResult.success(null); } @Override public ActionResult> getAttendanceMonthPerCapita(MonthStatsDetailsDto dto) { return ActionResult.success(List.of()); } @Override public ActionResult> getAttendanceDailySituation(MonthStatsDetailsDto dto) { return ActionResult.success(List.of()); } @Override public ActionResult> getAttendanceHoursRanking(MonthStatsDetailsDto dto) { return ActionResult.success(List.of()); } @Override public ActionResult> getAttendanceFullSituation(MonthStatsDetailsDto dto) { return ActionResult.success(List.of()); } @Override public ActionResult getAttendanceAbnormalCondition(MonthStatsDetailsDto dto) { return ActionResult.success(null); } @Override public ActionResult> getAttendanceOvertimeSituation(MonthStatsDetailsDto dto) { return ActionResult.success(List.of()); } @Override public Map salaryAttendanceSupport(SalaryAttendanceSupportDto dto) { return Map.of(); } @Override public List attendanceDayStaTable() { return List.of(); } @Override public List attendanceDayStaList(SalaryAttendanceSupportDto dto) { return List.of(); } @Override public List getAttendanceDayStaList(DayStatisticsDto dto) { return List.of(); } @Override public Map> getDimensionsAttendanceCountMap(DimensionsAttendanceCountDto dto) { return Map.of(); } @Override public Map> getDimensionsAttendanceDayCountMap(DimensionsAttendanceDayCountDto dto) { return Map.of(); } }; } }