#!/bin/bash
##############################################################
# システム名    ：eo顧客基幹システム
#
# サブシステム名：契約管理
#
# シェル名      ：WAO注文登録情報連携
#
# 機能          ：新規申込、コース変更、解約で抽出したデータをWAO注文登録対象データ_①に出力する。
#WAO注文登録対象データ抽出
#
# コマンド形式  ：EO2IX0140J0.sh
#
# 実行環境      ：.../app/shl
#
# 終了ステータス：ゼロ以外異常
#
# 特記事項      ：特になし
#
# 変更履歴      ：変更日      変更者       障害／仕様変更No.
# v75.00.00      2025/04/03   GDC)V.Auditor     ANK-4640-00-00_typeN：追加要件対応
#
########################################################################

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

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

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

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

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

#
#---OPD
#
OPD=$1

#---運用日付取得
if [ "${OPD}" = "" ]; then
   . EOK010310J0.sh "BDATE"
   OPD=${RSLT_OPEDATE}
else
   RSLT_OPEDATE="${OPD}"
fi

#
#---業務で必要な変数定義
#

#
#--- IN
# ファイル（新規申込）
INFILE1=${MID_DIR_KK}/EO2IX0110J0_OUTPUTFILE.csv
# ファイル（コース変更）
INFILE2=${MID_DIR_KK}/EO2IX0120J0_OUTPUTFILE.csv
# ファイル（解約）
INFILE3=${MID_DIR_KK}/EO2IX0130J0_OUTPUTFILE.csv

#
#--- 一時ファイル
#
TMP_MERGE1=${MID_DIR_KK}/${JOBNAME}_TMP_MERGE1.csv
TMP_MERGE2=${MID_DIR_KK}/${JOBNAME}_TMP_MERGE2.csv
TMP_MERGE3=${MID_DIR_KK}/${JOBNAME}_TMP_MERGE3.csv

#--- OUT
KKIFM977_OUTFILE=${MID_DIR_KK}/KKIFM977.csv

##############################################################
# 業務処理
##############################################################
sh ${G_TOOLSH}/EOK010210J0.sh CS00025I $JOBNAME

#
#--- カレント抽出元ファイルの存在チェックを行う
#
if [ ! -r $INFILE1 ]
then
    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " File is nonexist($INFILE1) "
    echo $JOBNAME " File is nonexist($INFILE1) "
    exit ${G_RTN_ERROR}
fi

cat /dev/null > $TMP_MERGE1

bsortex -sort key=1.10asc -record recform=txtcsv -input file=${INFILE1} reclen=51 \
reconst="0.1,1.10,2.10,3.3,EMPTYA,EMPTYA,4.12" \
-output file=${TMP_MERGE1}

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

#
#--- カレント抽出元ファイルの存在チェックを行う
#
if [ ! -r $INFILE2 ]
then
    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " File is nonexist($INFILE2) "
    echo $JOBNAME " File is nonexist($INFILE2) "
    exit ${G_RTN_ERROR}
fi

cat /dev/null > $TMP_MERGE2

bsortex -sort key=1.10asc -record recform=txtcsv -input file=${INFILE2} reclen=57 \
reconst="0.1,1.10,2.10,EMPTYA,3.3,4.3,5.12" \
-output file=${TMP_MERGE2}

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

#
#--- カレント抽出元ファイルの存在チェックを行う
#
if [ ! -r $INFILE3 ]
then
    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " File is nonexist($INFILE3) "
    echo $JOBNAME " File is nonexist($INFILE3) "
    exit ${G_RTN_ERROR}
fi

bsortex -sort key=1.10asc -record recform=txtcsv -input file=${INFILE3} reclen=45 \
reconst="0.1,1.10,2.10,EMPTYA,EMPTYA,EMPTYA,3.12" \
-output file=${TMP_MERGE3}

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

cat ${TMP_MERGE1} ${TMP_MERGE2} ${TMP_MERGE3} > ${KKIFM977_OUTFILE}

rm ${INFILE1}
rm ${INFILE2}
rm ${INFILE3}
rm ${TMP_MERGE1}
rm ${TMP_MERGE2}
rm ${TMP_MERGE3}

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

exit $exit_rc
