package com.hzya.frame.plugin.incomeInvoiceData.plugin;

import com.alibaba.fastjson.JSONObject;
import com.hzya.frame.base.PluginBaseEntity;
import com.hzya.frame.plugin.incomeInvoiceData.service.IIncomeInvoiceService;
import com.hzya.frame.web.entity.BaseResult;
import com.hzya.frame.web.entity.JsonResultEntity;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;

/**
 * 主数据同步
 *
 * @author makejava
 * @since 2024-06-21 13:52:35
 */
public class FinancialReportPluginInitializer extends PluginBaseEntity{
    Logger logger = LoggerFactory.getLogger(FinancialReportPluginInitializer.class);

    @Autowired
    private IIncomeInvoiceService incomeInvoiceService;

      @Override
    public void initialize() {
        logger.info(getPluginLabel() + "执行初始化方法initialize()");
    }

    @Override
    public void destroy() {
        logger.info(getPluginLabel() + "执行销毁方法destroy()");
    }

    @Override
    public String getPluginId() {
        return "FinancialReportPlugin";
    }

    @Override
    public String getPluginName() {
        return "FinancialReportPlugin插件";
    }

    @Override
    public String getPluginLabel() {
        return "FinancialReportPlugin";
    }

    @Override
    public String getPluginType() {
        return "1";
    }
    @Override
    public JsonResultEntity executeBusiness(JSONObject requestJson) {
        try {
            logger.info("======开始执行财务信息同步========");
            //return BaseResult.getSuccessMessageEntity("数据获取成功");
            return incomeInvoiceService.sendFinancialReportPlugin(requestJson);
        }catch (Exception e){
            logger.info("======执行财务同步失败:{}========",e.getMessage());
            e.printStackTrace();
        }
        return null;
    }
}
