package com.ard.system.api.factory; import com.ard.common.core.domain.R; import com.ard.common.core.web.domain.TreeDeptWell; import com.ard.system.api.RemoteDeptService; import com.ard.system.api.domain.SysDept; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.cloud.openfeign.FallbackFactory; import org.springframework.stereotype.Component; import java.util.List; import java.util.Map; /** * 部门服务降级处理 * * @author ard */ @Component public class RemoteDeptFallbackFactory implements FallbackFactory { private static final Logger log = LoggerFactory.getLogger(RemoteDeptFallbackFactory.class); @Override public RemoteDeptService create(Throwable throwable) { log.error("用户服务调用失败:{}", throwable.getMessage()); return new RemoteDeptService() { @Override public R> list(SysDept sysDept, String source) { return R.fail("获取所有部门信息失败:" + throwable.getMessage()); } @Override public R> getAllByUser(Long[] deptList, String source) { return R.fail("获取当前用户及以下的所有部门信息失败:" + throwable.getMessage()); } @Override public R getDeptById(Long deptId, String source) { return R.fail("获取部门详细信息失败:" + throwable.getMessage()); } @Override public R> getWellTree(List depts, String source) { return R.fail("获取预留结构的树形失败:" + throwable.getMessage()); } @Override public R> getDeptIdBySub(Long deptId, String source) { return R.fail("获取当前及所属下级的所有deptId失败:" + throwable.getMessage()); } @Override public R> getZYBAndZYQByWellId(String wellId, String source) { return R.fail("根据井号查询井所在作业班和作业区失败:" + throwable.getMessage()); } }; } }