SpringContextUtil.java 5.74 KB
Newer Older
frank.xa.zhang's avatar
frank.xa.zhang committed
1 2 3 4 5 6 7
package pwc.taxtech.atms.common.util;

import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.stereotype.Component;
import pwc.taxtech.atms.dao.FormulaAdminMapper;
8
import pwc.taxtech.atms.dao.OrganizationMapper;
9
import pwc.taxtech.atms.dao.ProjectDao;
10
import pwc.taxtech.atms.dao.ProjectMapper;
frank.xa.zhang's avatar
frank.xa.zhang committed
11
import pwc.taxtech.atms.dao.ProjectServiceTypeMapper;
12
import pwc.taxtech.atms.service.impl.DistributedIdService;
frank.xa.zhang's avatar
frank.xa.zhang committed
13 14 15 16 17 18 19 20 21
import pwc.taxtech.atms.vat.dao.*;

//用来获取spring托管的bean
@Component
public class SpringContextUtil implements ApplicationContextAware {

    private static ApplicationContext webApplicationContext;

    public static FormulaAdminMapper formulaAdminMapper;
22
    public static PeriodReportMapper reportMapper;
frank.xa.zhang's avatar
frank.xa.zhang committed
23
    public static CellDataMapper cellDataMapper;
24
    public static PeriodCellDataMapper periodCellDataMapper;
25
    public static DistributedIdService distributedIdService;
frank.xa.zhang's avatar
frank.xa.zhang committed
26 27 28 29
    public static PeriodFormulaBlockMapper formulaBlockMapper;
    public static PeriodCellTemplateMapper periodCellTemplateMapper;
    public static ProjectServiceTypeMapper projectServiceTypeMapper;
    public static PeriodTemplateMapper periodTemplateMapper;
30
    public static PeriodStandardAccountMapper periodStandardAccountMapper;
frank.xa.zhang's avatar
frank.xa.zhang committed
31 32 33
    public static ProjectDao projectDao;
    public static BalanceMapper balanceMapper;
    public static DataSourceMapper dataSourceMapper;
34
    public static PeriodDataSourceMapper periodDataSourceMapper;
frank.xa.zhang's avatar
frank.xa.zhang committed
35
    public static DataSourceDetailMapper dataSourceDetailMapper;
36
    public static PeriodDataSourceDetailMapper periodDataSourceDetailMapper;
frank.xa.zhang's avatar
frank.xa.zhang committed
37 38 39
    public static PeriodFormulaBlockMapper periodFormulaBlockMapper;
    public static VatEnterpriseAccountDao vatEnterpriseAccountDao;
    public static VatEnterpriseAccountMapper vatEnterpriseAccountMapper;
40
    public static PeriodEnterpriseAccountMapper periodEnterpriseAccountMapper;
frank.xa.zhang's avatar
frank.xa.zhang committed
41
    public static BalanceStdManualMapper balanceStdManualMapper;
42
    public static OutputVatInvoiceMapper outputVATInvoiceMapper;
43
    public static PeriodTaxRuleSettingMapper periodTaxRuleSettingMapper;
44
    public static InputVatInvoiceDao inputVatInvoiceDao;
45
    public static InputVatInvoiceMapper inputVATInvoiceMapper;
46
    public static AssetsListMapper assetsListMapper;
47
    public static ProjectMapper projectMapper;
48
    public static CellDataSourceMapper cellDataSourceMapper;
49
    public static PeriodCellDataSourceMapper periodCellDataSourceMapper;
50
    public static OrganizationMapper organizationMapper;
frank.xa.zhang's avatar
frank.xa.zhang committed
51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66

    /**
     * 获取bean
     *
     * @param requiredType
     * @param <T>
     * @return
     */
    public static <T> T getBean(Class<T> requiredType) {
        return SpringContextUtil.webApplicationContext.getBean(requiredType);
    }

    @Override
    public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
        webApplicationContext = applicationContext;
        formulaAdminMapper = webApplicationContext.getBean(FormulaAdminMapper.class);
67
        reportMapper = webApplicationContext.getBean(PeriodReportMapper.class);
frank.xa.zhang's avatar
frank.xa.zhang committed
68
        cellDataMapper = webApplicationContext.getBean(CellDataMapper.class);
69
        periodCellDataMapper = webApplicationContext.getBean(PeriodCellDataMapper.class);
70
        distributedIdService = webApplicationContext.getBean(DistributedIdService.class);
frank.xa.zhang's avatar
frank.xa.zhang committed
71 72 73 74
        formulaBlockMapper = webApplicationContext.getBean(PeriodFormulaBlockMapper.class);
        periodCellTemplateMapper = webApplicationContext.getBean(PeriodCellTemplateMapper.class);
        projectServiceTypeMapper = webApplicationContext.getBean(ProjectServiceTypeMapper.class);
        periodTemplateMapper = webApplicationContext.getBean(PeriodTemplateMapper.class);
75
        periodStandardAccountMapper = webApplicationContext.getBean(PeriodStandardAccountMapper.class);
76
        periodStandardAccountMapper = webApplicationContext.getBean(PeriodStandardAccountMapper.class);
frank.xa.zhang's avatar
frank.xa.zhang committed
77 78 79
        projectDao = webApplicationContext.getBean(ProjectDao.class);
        balanceMapper = webApplicationContext.getBean(BalanceMapper.class);
        dataSourceMapper = webApplicationContext.getBean(DataSourceMapper.class);
80
        periodDataSourceMapper = webApplicationContext.getBean(PeriodDataSourceMapper.class);
81
        dataSourceDetailMapper = webApplicationContext.getBean(DataSourceDetailMapper.class);
82
        periodDataSourceDetailMapper = webApplicationContext.getBean(PeriodDataSourceDetailMapper.class);
frank.xa.zhang's avatar
frank.xa.zhang committed
83 84 85
        periodFormulaBlockMapper = webApplicationContext.getBean(PeriodFormulaBlockMapper.class);
        vatEnterpriseAccountDao = webApplicationContext.getBean(VatEnterpriseAccountDao.class);
        vatEnterpriseAccountMapper = webApplicationContext.getBean(VatEnterpriseAccountMapper.class);
86
        periodEnterpriseAccountMapper = webApplicationContext.getBean(PeriodEnterpriseAccountMapper.class);
frank.xa.zhang's avatar
frank.xa.zhang committed
87
        balanceStdManualMapper = webApplicationContext.getBean(BalanceStdManualMapper.class);
88
        outputVATInvoiceMapper = webApplicationContext.getBean(OutputVatInvoiceMapper.class);
89
        periodTaxRuleSettingMapper = webApplicationContext.getBean(PeriodTaxRuleSettingMapper.class);
90
        inputVatInvoiceDao = webApplicationContext.getBean(InputVatInvoiceDao.class);
91
        inputVATInvoiceMapper = webApplicationContext.getBean(InputVatInvoiceMapper.class);
92
        assetsListMapper = webApplicationContext.getBean(AssetsListMapper.class);
93
        projectMapper = webApplicationContext.getBean(ProjectMapper.class);
94
        cellDataSourceMapper = webApplicationContext.getBean(CellDataSourceMapper.class);
95
        periodCellDataSourceMapper = webApplicationContext.getBean(PeriodCellDataSourceMapper.class);
96
        organizationMapper = webApplicationContext.getBean(OrganizationMapper.class);
frank.xa.zhang's avatar
frank.xa.zhang committed
97 98
    }
}