#!/bin/bash
##############################################################
# システム名    ：eo顧客基幹システム
#
# サブシステム名：料金管理
#
# シェル名      ：再計算対象請求先番号情報マージ・ソート
#
# 機能          ：各再計算対象請求先番号情報をマージし、以下のキーでソートする
# 請求先番号（昇順）
#
#＜対象インプットファイル判定＞
#引数２＝"2"の場合のみ、
#抽出対象請求先蓄積情報「${MID_DIR_AC}/ACIFM050026.csv」を対象とする。
#
# コマンド形式  ：EO3011250J0.sh
#
# 実行環境      ：.../app/shl
#
# 終了ステータス：ゼロ以外異常
#
# 特記事項      ：特になし
#
# 変更履歴      ：変更日      変更者       障害／仕様変更No.
# v4.00         2012/09/14    FJ) 本多     【ANK-0377-00-00】対応
# v4.01         2012/11/29    FJ）今井     【ST2-2012-0001779】対応
# v4.02         2013/02/13    FJ）浜口     【ST3-2013-0000358】対象インプットファイル判定処理追加
# v4.03         2013/03/15    FJ）指原     【ST4-2013-0000198】性能改善 bsortパラメータの指定サイズ最適化
# v4.04         2013/06/01    FJ）藤田     【IT2-2013-0000485】マージファイルにACIFM050028を追加する
# v5.00         2013/07/29    FJ) 小柴     【TG1-2013-0000720】ケース文の条件エラー時にログ出力を行うように修正
# v5.01         2013/08/02    FJ) 岡田     【IT2-2013-0000679】ジョブネット組み換えに伴う入出力の変更
# v8.00         2014/06/12    FJ) 小掠     【OM-2014-0001815】入力ファイルの追加
# v19.00.00     2015/11/04    FJ) 福山     【OM-2015-0002854】不要入力ファイル削除
# v24.00        2015/09/03    FJ）酒井     【ANK-2691-00-00】請求書発行手数料の課金方式の変更
# v34.00        2018/02/14    FJ）森       【ANK-3313-10-00】ACIFM050034.csvの生成・削除処理を追加、マージファイルにACIFM050034.csvを追加
# v38.00.00     2018/06/13    FJ) 柳川     【ANK-3404-00-00】【性能改善】MVNO料金計算夜間処理のmineo単独契約切離し
# v38.00.01     2018/08/15    FJ) 原田     【ST-2018-0000030】ファイル削除タイミングの変更
# v57.00.01     2022/03/22    FJ) 鈴木     【ANK-4205-01-00】異動検証対象の抽出条件見直し
##############################################################

##############################################################
# 環境変数定義
##############################################################

#
#---ツール格納場所
#
G_TOOLSH=.

#
#---環境変数定義Shell呼び出し
#
. EOK010110J0.sh

#
#---ＪＯＢ名
#
JOBNAME=`basename $0 | sed -e "s/\.sh//g"`

#
#---サービス（業務プロセス）
#
SVC=$JOBNAME

#
#---OPD
#
OPD=$1

#
#---業務で必要な変数定義
#
#xxx=xxxxxxx
# ST-2018-0000030 ADD START
#---運用日付取得
if [ "${OPD}" = "20991231" ]; then
   . EOK010310J0.sh "BDATE"
else
   RSLT_OPEDATE="${OPD}"
fi
#- バッチ運用日
OPEDATE=${RSLT_OPEDATE}
# ST-2018-0000030 ADD END
##############################################################
# 業務処理
##############################################################
sh ${G_TOOLSH}/EOK010210J0.sh CS00025I $JOBNAME

# v34.00 ANK-3313-10-00 ADD STA
# 初期ファイル生成
if [ ! -r ${MID_DIR_AC}/ACIFM050034.csv ]
then
	touch ${MID_DIR_AC}/ACIFM050034.csv
fi
# v34.00 ANK-3313-10-00 ADD END

#
#---パラメタ定義
#

P1="OPD=,"
P2="SVCCTL=,"
P3="JOB=EO3011250J0,"
P4="IND1=,"
P5="INF1=,"
P6="IND2=,"
P7="INF2=,"
P8="OTD1=,"
P9="OTF1=,"
P10="OTD2=,"
P11="OTF2=,"
P12="TABLENAME=,"
P13="SQLKEY=,"
P14="SQLPARAM=,"
P15="ERRFILE=,"
P16="RECOVERY=,"
P17="BREAKPTN=,"
P18="FREE="
PARA="$P1$P2$P3$P4$P5$P6$P7$P8$P9$P10$P11$P12$P13$P14$P15$P16$P17$P18"

sh ${G_TOOLSH}/EOK010210J0.sh CS00027I $JOBNAME

# ST-2018-0000030 ADD START
# 当月の料金計算日を取得するため、請求年月を取得
#-------------------------------------------------------------
#---請求年月(TOGETSU)
#-------------------------------------------------------------
#--- イベントコード（料金計算日）
EVENT_CD="03"

#- 請求年月取得（料金計算日基準）
. EO3SEIKYYM.sh ${EVENT_CD} ${RSLT_OPEDATE} ${JOBNAME}
TOGETSU=${SEIKY_YM}
# 取得した請求年月から料金計算日を取得
#-------------------------------------------------------------
#---料金計算日(PRC_CALCYMD)
#-------------------------------------------------------------
#--- イベントコード（料金計算日）
EVENT_CD_PRC_CALCYMD="03"

#- 料金計算日取得（請求年月基準）
. EO3EVENTYMD.sh ${EVENT_CD_PRC_CALCYMD} ${TOGETSU} ${JOBNAME}
PRC_CALCYMD=${EVENT_YMD}

# 料金計算日以外の場合で、mineo単独再計算対象請求先番号情報が存在する場合削除
if [ $PRC_CALCYMD -ne $OPEDATE ]
then
	if [ -r ${MID_DIR_AC}/ACIFM050035.csv ]
	then
		rm ${MID_DIR_AC}/ACIFM050035.csv
	fi
fi
# ST-2018-0000030 ADD END

#
#---ＳＯＲＴ
#

case $2 in
	1)
# OM-2015-0002854 不要入力ファイル削除 2015/11/04 福山 MOD START
#bsort -s -z20 -0.10asca  -Tflt -t, \
# -o ${MID_DIR_AC}/ACIFM050031.csv \
# ${MID_DIR_AC}/ACIFM050023.csv \
# ${MID_DIR_AC}/ACIFM050003.csv \
# ${MID_DIR_AC}/ACIFM050024.csv \
# ${MID_DIR_AC}/ACIFM050001.csv \
# ${MID_DIR_AC}/ACIFM050002.csv \
# ${MID_DIR_AC}/ACIFM050026.csv \
# ${MID_DIR_AC}/ACIFM050028.csv \
# ${MID_DIR_AC}/ACIFM050033.csv ;;
# v24.00.00 ANK-2691-00-00 MOD STA
#bsort -s -z20 -0.10asca  -Tflt -t, \
# -o ${MID_DIR_AC}/ACIFM050031.csv \
# ${MID_DIR_AC}/ACIFM050023.csv \
# ${MID_DIR_AC}/ACIFM050003.csv \
# ${MID_DIR_AC}/ACIFM050024.csv \
# ${MID_DIR_AC}/ACIFM050001.csv \
# ${MID_DIR_AC}/ACIFM050002.csv \
# ${MID_DIR_AC}/ACIFM050026.csv \
# ${MID_DIR_AC}/ACIFM050033.csv ;;
# v34.00 ANK-3313-10-00       MOD STA
#bsort -s -z20 -0.10asca  -Tflt -t, \
# -o ${MID_DIR_AC}/ACIFM050031.csv \
# ${MID_DIR_AC}/ACIFM050023.csv \
# ${MID_DIR_AC}/ACIFM050003.csv \
# ${MID_DIR_AC}/ACIFM050001.csv \
# ${MID_DIR_AC}/ACIFM050002.csv \
# ${MID_DIR_AC}/ACIFM050026.csv \
# ${MID_DIR_AC}/ACIFM050033.csv ;;
# ANK-3404-00-00 MOD START
#bsort -s -z20 -0.10asca  -Tflt -t, \
# -o ${MID_DIR_AC}/ACIFM050031.csv \
# ${MID_DIR_AC}/ACIFM050023.csv \
# ${MID_DIR_AC}/ACIFM050003.csv \
# ${MID_DIR_AC}/ACIFM050001.csv \
# ${MID_DIR_AC}/ACIFM050002.csv \
# ${MID_DIR_AC}/ACIFM050026.csv \
# ${MID_DIR_AC}/ACIFM050033.csv \
# ${MID_DIR_AC}/ACIFM050034.csv ;;
# ST-2018-0000030 DEL START
## ACIFM050035.csv（再計算対象請求先番号情報(mineo単独) ファイル）が存在しない場合があるため分岐処理を追加。
#if [ ! -r ${MID_DIR_AC}/ACIFM050035.csv ]
#then
# ST-2018-0000030 DEL END
	bsort -s -z20 -0.10asca  -Tflt -t, \
	 -o ${MID_DIR_AC}/ACIFM050031.csv \
	 ${MID_DIR_AC}/ACIFM050023.csv \
	 ${MID_DIR_AC}/ACIFM050003.csv \
	 ${MID_DIR_AC}/ACIFM050001.csv \
	 ${MID_DIR_AC}/ACIFM050002.csv \
	 ${MID_DIR_AC}/ACIFM050026.csv \
	 ${MID_DIR_AC}/ACIFM050033.csv \
	 ${MID_DIR_AC}/ACIFM050034.csv
# ST-2018-0000030 DEL START
#else
#	bsort -s -z20 -0.10asca  -Tflt -t, \
#	 -o ${MID_DIR_AC}/ACIFM050031.csv \
#	 ${MID_DIR_AC}/ACIFM050023.csv \
#	 ${MID_DIR_AC}/ACIFM050003.csv \
#	 ${MID_DIR_AC}/ACIFM050001.csv \
#	 ${MID_DIR_AC}/ACIFM050002.csv \
#	 ${MID_DIR_AC}/ACIFM050026.csv \
#	 ${MID_DIR_AC}/ACIFM050033.csv \
#	 ${MID_DIR_AC}/ACIFM050034.csv \
#	 ${MID_DIR_AC}/ACIFM050035.csv
#fi
# ST-2018-0000030 DEL END
;;
# ANK-3404-00-00 MOD END
# v34.00 ANK-3313-10-00       MOD END
# v24.00.00 ANK-2691-00-00 MOD END
# OM-2015-0002854 不要入力ファイル削除 2015/11/04 福山 MOD END
	2)
# OM-2015-0002854 不要入力ファイル削除 2015/11/04 福山 MOD START
#bsort -s -z20 -0.10asca  -Tflt -t, \
# -o ${MID_DIR_AC}/ACIFM050031.csv \
# ${MID_DIR_AC}/ACIFM050023.csv \
# ${MID_DIR_AC}/ACIFM050003.csv \
# ${MID_DIR_AC}/ACIFM050024.csv \
# ${MID_DIR_AC}/ACIFM050001.csv \
# ${MID_DIR_AC}/ACIFM050002.csv \
# ${MID_DIR_AC}/ACIFM050028.csv \
# ${MID_DIR_AC}/ACIFM050033.csv ;;
# v24.00.00 ANK-2691-00-00 MOD STA
#bsort -s -z20 -0.10asca  -Tflt -t, \
# -o ${MID_DIR_AC}/ACIFM050031.csv \
# ${MID_DIR_AC}/ACIFM050023.csv \
# ${MID_DIR_AC}/ACIFM050003.csv \
# ${MID_DIR_AC}/ACIFM050024.csv \
# ${MID_DIR_AC}/ACIFM050001.csv \
# ${MID_DIR_AC}/ACIFM050002.csv \
# ${MID_DIR_AC}/ACIFM050033.csv ;;
# v34.00 ANK-3313-10-00       MOD STA
#bsort -s -z20 -0.10asca  -Tflt -t, \
# -o ${MID_DIR_AC}/ACIFM050031.csv \
# ${MID_DIR_AC}/ACIFM050023.csv \
# ${MID_DIR_AC}/ACIFM050003.csv \
# ${MID_DIR_AC}/ACIFM050001.csv \
# ${MID_DIR_AC}/ACIFM050002.csv \
# ${MID_DIR_AC}/ACIFM050033.csv ;;
# ANK-3404-00-00 MOD START
#bsort -s -z20 -0.10asca  -Tflt -t, \
# -o ${MID_DIR_AC}/ACIFM050031.csv \
# ${MID_DIR_AC}/ACIFM050023.csv \
# ${MID_DIR_AC}/ACIFM050003.csv \
# ${MID_DIR_AC}/ACIFM050001.csv \
# ${MID_DIR_AC}/ACIFM050002.csv \
# ${MID_DIR_AC}/ACIFM050033.csv \
# ${MID_DIR_AC}/ACIFM050034.csv ;;
# ACIFM050035.csv（再計算対象請求先番号情報(mineo単独) ファイル）が存在しない場合があるため分岐処理を追加。
if [ ! -r ${MID_DIR_AC}/ACIFM050035.csv ]
then
	bsort -s -z20 -0.10asca  -Tflt -t, \
	 -o ${MID_DIR_AC}/ACIFM050031.csv \
	 ${MID_DIR_AC}/ACIFM050023.csv \
	 ${MID_DIR_AC}/ACIFM050003.csv \
	 ${MID_DIR_AC}/ACIFM050001.csv \
	 ${MID_DIR_AC}/ACIFM050002.csv \
	 ${MID_DIR_AC}/ACIFM050033.csv \
	 ${MID_DIR_AC}/ACIFM050034.csv
else
	bsort -s -z20 -0.10asca  -Tflt -t, \
	 -o ${MID_DIR_AC}/ACIFM050031.csv \
	 ${MID_DIR_AC}/ACIFM050023.csv \
	 ${MID_DIR_AC}/ACIFM050003.csv \
	 ${MID_DIR_AC}/ACIFM050001.csv \
	 ${MID_DIR_AC}/ACIFM050002.csv \
	 ${MID_DIR_AC}/ACIFM050033.csv \
	 ${MID_DIR_AC}/ACIFM050034.csv \
	 ${MID_DIR_AC}/ACIFM050035.csv
fi
;;
# ANK-3404-00-00 MOD END
# v34.00 ANK-3313-10-00       MOD END
# v24.00.00 ANK-2691-00-00 MOD END
# OM-2015-0002854 不要入力ファイル削除 2015/11/04 福山 MOD END
	*)
		sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " ARGV Error [value=${2}] "
		sh ${G_TOOLSH}/EOK010210J0.sh CS00028I $JOBNAME
		sh ${G_TOOLSH}/EOK010210J0.sh CS00026I $JOBNAME
		echo $JOBNAME "ARGV Error ${2}"
		exit ${G_RTN_ERROR}
esac

rc=$?
if [ $rc -ne 0 ]
then
    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " SORT Error($SVC sort:rc=$rc) "
    echo $JOBNAME " SORT Error($SVC sort:rc=$rc) "
    exit ${G_RTN_ERROR}
fi

# v34.00 ANK-3313-10-00 ADD STA
# ANK-4205-01-00 DEL START
# ファイルの削除
#rm -f ${MID_DIR_AC}/ACIFM050034.csv
# ANK-4205-01-00 DEL END
# ST-2018-0000030 DEL START
## ANK-3404-00-00 ADD START
#if [ -r ${MID_DIR_AC}/ACIFM050035.csv ]; then
#    rm -f ${MID_DIR_AC}/ACIFM050035.csv
#fi
## ANK-3404-00-00 ADD END
# ST-2018-0000030 DEL END
# v34.00 ANK-3313-10-00 ADD STA

#
#--- ジョブの終了メッセージを出力する
#
sh ${G_TOOLSH}/EOK010210J0.sh CS00028I $JOBNAME
sh ${G_TOOLSH}/EOK010210J0.sh CS00026I $JOBNAME

exit ${G_RTN_NORMAL}
