package com.ywt.alipaympapi.web.configs;

import com.ywt.alipaympapi.core.SpringContext;
import com.ywt.alipaympapi.web.interceptors.AccessBehaviorInterceptor;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;

@Configuration
public class WebMvcConfigure extends WebMvcConfigurerAdapter {

    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor((AccessBehaviorInterceptor) SpringContext.getBean(AccessBehaviorInterceptor.class))
                .addPathPatterns("/**")
                // 排除的接口，无法通过 ContextHelper 获取 userId, terminal & alipayUid，也无法通过 BizUtil 获取 hospitalId，需要自行获取
                .excludePathPatterns("/auth/bind")
                .excludePathPatterns("/dev/*")
                .excludePathPatterns("/register/*")
                .excludePathPatterns("/isvRequest.inpatient.list")
                .excludePathPatterns("/isvRequest.home.dailyBill.list")
                .excludePathPatterns("/isvRequest.order.doctorScheduleList")
        ;
        super.addInterceptors(registry);
    }
}
