package com.friday.custody.service.trustService.mailHandleService.multiVersionService;

import com.friday.custody.dto.TenantEscrowAuthorizationInfoDto;

import java.io.File;

public interface IHandlerTxtService {
     IHandlerTxtService getHandlerTxtService(String version);

     /**
      * 全量更新
      * @param tenant
      * @param file
      * @param flag
      * @param version
      */
     void getAllData(TenantEscrowAuthorizationInfoDto tenant, File file, String flag,String version);

     /**
      * 每日更新
      * @param tenant
      * @param file
      * @param flag
      * @param version
      */
     void getUpdateData(TenantEscrowAuthorizationInfoDto tenant, File file, String flag,String version);

     /**
      * 1 基金产品信息表（fund_info）
      * @param tenant
      * @param file
      * @param trustNo
      * @param flag
      * @param version
      */
     void processFundInfoData(TenantEscrowAuthorizationInfoDto tenant, File file, String trustNo, String flag,String version);
     /**
      * 2 基金出资人信息表（investor_info）
      * @param tenant
      * @param file
      * @param trustNo
      * @param flag
      * @param version
      */
     void processInvestorInfoData(TenantEscrowAuthorizationInfoDto tenant, File file, String trustNo, String flag,String version);
     /**
      * 2 基金出资人信息表（investeor_bank_info）
      * @param tenant
      * @param file
      * @param trustNo
      * @param flag
      * @param version
      */
     void processInvestorBankInfoData(TenantEscrowAuthorizationInfoDto tenant, File file, String trustNo, String flag,String version);
     /**
      * 4 基金持有信息表（cust_share_detail_info）
      * @param tenant
      * @param file
      * @param trustNo
      * @param flag
      * @param version
      */
     void processCustShareDetailInfoData(TenantEscrowAuthorizationInfoDto tenant, File file, String trustNo, String flag,String version);
     /**
      * 18 基金交易确认信息表（fund_trade_info）
      * @param tenant
      * @param file
      * @param trustNo
      * @param flag
      * @param version
      */
     void processFundTradeInfoData(TenantEscrowAuthorizationInfoDto tenant, File file, String trustNo, String flag,String version);
     /**
      * 17 托管⼾流⽔表（custShare_seq_info）
      * @param tenant
      * @param file
      * @param trustNo
      * @param flag
      * @param version
      */
     void processCustShareSeqInfoData(TenantEscrowAuthorizationInfoDto tenant, File file, String trustNo, String flag,String version);
     /**
      * 14 业绩报酬信息表(fund_profit_info)
      * @param tenant
      * @param file
      * @param trustNo
      * @param flag
      * @param version
      */
     void processFundProfitInfoData(TenantEscrowAuthorizationInfoDto tenant, File file, String trustNo, String flag,String version);
     /**
      * 3 基金净值信息表（fund_net_value_info）
      * @param tenant
      * @param file
      * @param trustNo
      * @param flag
      * @param version
      */
     void processFundNetValueInfoData(TenantEscrowAuthorizationInfoDto tenant, File file, String trustNo, String flag,String version);
     /**
      * 4 基金持有信息表（cust_share_info）
      * @param tenant
      * @param file
      * @param trustNo
      * @param flag
      * @param version
      */
     void processCustShareInfoData(TenantEscrowAuthorizationInfoDto tenant, File file, String trustNo, String flag,String version);
}
