/*********************************************************************
*  All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名			：eo顧客基幹システム
*	モジュール名		：JBSbatKKEoTokeiChrgFileOputNc
*	ソースファイル名	：JBSbatKKEoTokeiChrgFileOputNc.java
*	作成者				：富士通　
*	作成日				：2024年12月02日
*＜機能概要＞
*　ｅｏ光テレビ統計情報（課金）ファイル出力（ＮＣ）部品です。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v74.00.00	2024/12/02	FJ)井上		新規作成 ANK-4592-00-00   テレビ新コース（スカパー用）導入対応
********************************************************************/
package eo.business.service;

import eo.framework.file.JBSbatOutputFileUtil;
import eo.framework.util.JBSbatDateUtil;


/**
* (クラスの機能概要) <p>
*<BR>
* @author 富士通
*/
public class JBSbatKKEoTokeiChrgFileOputNc extends JBSbatKKEoTokeiChrgFileOputNt
{

	/** 共通ヘッダー部_タイトル１*/
	private static final String TITLE1_STR = "ＣＳ　ｅｏ光テレビ（";

	/** 共通ヘッダー部_タイトル２*/
	private static final String TITLE2_STR = "年";

	/** 共通ヘッダー部_タイトル３*/
	private static final String TITLE3_STR = "月末　課金数）";

	/** ｅｏ光統計情報データ件数ファイル（ネット・テレビ(CSコース)）*/
	private static final String FILE_NAME_TV = "KKIFM224003.csv";

	/** ｅｏ光テレビ統計情報（課金）抽出（Ｐ．Ｋ．Ｏ）ファイル*/
	private static final String FILE_KKIFM137010 = "KKIFM137010.csv";

	/** 文字列_ネット＋テレビ(CSコース)*/
	private static final String STR_TV_ONLY = "ネット＋テレビ";

	@Override
	protected void getCommonHeaderRow(JBSbatOutputFileUtil out_obj) throws Exception {
		
		//先頭に空行を一行追加
		out_obj.write("");
		//ヘッダ情報を取得
		out_obj.write(getCommonHeader());
		
	}
	
	@Override
	protected String getCommonHeader() {
		StringBuilder head_str = new StringBuilder();
		String opeDate = commonItem.getOpeDate();
		String fileYear = JBSbatDateUtil.adjustMonth(opeDate, -1);
		
		
		head_str.append(TITLE1_STR)
				.append(fileYear.substring(0, 4))
				.append(TITLE2_STR)
				.append(Integer.parseInt(fileYear.substring(4, 6)))
				.append(TITLE3_STR);

		return head_str.toString();
	}
	
	@Override
	protected String getCountFileName()
	{
		return FILE_NAME_TV;
	}
	
	@Override
	protected String getInputFileName()
	{
		return FILE_KKIFM137010;
	}
	
	@Override
	protected String getRowHeader()
	{
		return STR_TV_ONLY;
	}

}
