package com.brilliance.isc.common.limmod.service.impl;

import com.brilliance.isc.common.codetable.service.CodetableService;
import com.brilliance.isc.common.context.SettleContext;
import com.brilliance.isc.common.context.SpringEnvContext;
import com.brilliance.isc.common.esb.clm.IClmFeign;
import com.brilliance.isc.common.exception.CommonServiceException;
import com.brilliance.isc.common.limmod.service.LimOptionService;
import com.brilliance.isc.common.limmod.service.LimmodService;
import com.brilliance.isc.common.limmod.vo.LimmodVo;
import com.brilliance.isc.common.register.lim.ILimRegister;
import com.brilliance.isc.esb.model.inner.InnerRes;
import com.brilliance.isc.esb.model.inner.InnerResCL41;
import org.springframework.beans.factory.NoSuchBeanDefinitionException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service("limshare")
public class LimShareServiceImpl implements LimOptionService<InnerResCL41> {

    @Autowired
    private LimmodService limmodService;
    @Autowired
    private CodetableService codetableService;
    @Autowired(required = false)
    private IClmFeign clmFeign;



    @Override
    public void assertLim(LimmodVo limmodVo) {
        LimRegParstm(limmodVo);
    }

    @Override
    public void callEsb(LimmodVo limmodVo) {

    }

    @Override
    public void limDataCal(LimmodVo limmodVo) {

    }

    @Override
    public void LimRegParstm(LimmodVo limmodVo) {

        limDataCal(limmodVo);
        limmodService.limRegister().limShareRegister(limmodVo);
        callEsb(limmodVo);
        saveTables(limmodVo);
    }

    @Override
    public void responseMapping(InnerRes<InnerResCL41> innerRes, LimmodVo limmodVo) {

    }

    @Override
    public void saveTables(LimmodVo limmodVo) {

    }
}
