#!/bin/bash
##############################################################
# システム名    ：eo顧客基幹システム
#
# サブシステム名：契約管理
#
# シェル名      ：ＰＣセットアップ完了ファイル受信
#
# 機能          ：PCセットアップ完了ファイルをFTPで中間サーバから受信し、バックアップフォルダへコピーする。
#※PCセットアップ会社から受信したファイルは、セットアップ完了ファイルと件数ファイルを圧縮した圧縮ファイルとテキストファイルが格納される。（それぞれ拡張子なし）
#　以下の処理をキューアンドエー、ＪＡＰＲＯ、アルファ通信、オービット、日本ＰＣサービス、ＩＰテクノサービスの６社分行う。
#　１．中間フォルダに格納されている前回処理分のファイルを削除する。（setup_*）
#　２．圧縮ファイルを中間フォルダへコピーする。
#　３．中間フォルダにて圧縮ファイルを解凍し、格納されているファイルを展開する。
#　４．中間フォルダにコピーした圧縮ファイルを削除する。
#　５．外部連携の受信フォルダに格納されている圧縮ファイル、テキストファイルをバックアップフォルダへ移動する。
#　
#　※圧縮ファイルが１件も存在しない場合は中間フォルダに０バイトで「setup_000000.csv」を出力する。
#
#
# コマンド形式  ：EO21M0110J0.sh
#
# 実行環境      ：.../app/shl
#
# 終了ステータス：ゼロ以外異常
#
# 特記事項      ：特になし
#
# 変更履歴      ：変更日      変更者       障害／仕様変更No.
#
##############################################################

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

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

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

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

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

#
#---OPD
#
OPD=$1

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

# 共通ファイル名
FILE_NM=000000500162000001

# キューアンドエーの圧縮ファイル名
YQA_TAR=temp124594${FILE_NM}

# キューアンドエーのテキストファイル名
YQA_TXT=YQA1124594${FILE_NM}

# ＪＡＰＲＯの圧縮ファイル名
JPR_TAR=temp125294${FILE_NM}

# ＪＡＰＲＯのテキストファイル名
JPR_TXT=JPR1125294${FILE_NM}

# アルファ通信の圧縮ファイル名
ALH_TAR=temp127869${FILE_NM}

# アルファ通信のテキストファイル名
ALH_TXT=ALH1127869${FILE_NM}

# オービットの圧縮ファイル名
OBT_TAR=temp502975${FILE_NM}

# オービットのテキストファイル名
OBT_TXT=OBT1502975${FILE_NM}

# 日本ＰＣサービスの圧縮ファイル名
JPC_TAR=temp503142${FILE_NM}

# 日本ＰＣサービスのテキストファイル名
JPC_TXT=JPC1503142${FILE_NM}

# ＩＰテクノサービスの圧縮ファイル名
IPT_TAR=temp129789${FILE_NM}

# ＩＰテクノサービスのテキストファイル名
IPT_TXT=IPT1129789${FILE_NM}

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

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

P1="OPD=$OPD,"
P2="SVCCTL=,"
P3="JOB=EO21M0110J0,"
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

#
#--- 中間フォルダより前回処理分のファイルの削除を行う
#
rm -f ${MID_DIR_KK}/setup_*

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

#
#--- 外部フォルダより５社分の圧縮ファイルのコピー、解凍処理を行う
#

#
#--- キューアンドエーの圧縮ファイルの存在確認
#
file_find_YQA=${GAIBU_RECEIVE_DIR_KK}/KKIFE019/${YQA_TAR}_*

# ファイルが存在する場合
if [ -r $file_find_YQA ]
then
    # 外部フォルダより中間フォルダへコピーする
    cp -p -f ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/${YQA_TAR}_* ${MID_DIR_KK}/

    # 中間フォルダにコピーした圧縮ファイルを解凍する
    tar xfC ${MID_DIR_KK}/${YQA_TAR}_* ${MID_DIR_KK}/

    # 解凍後、中間フォルダにコピーした圧縮ファイルを削除する
    rm -f ${MID_DIR_KK}/${YQA_TAR}_*

    # 圧縮ファイルをバックアップフォルダへ移動
    mv ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/${YQA_TAR}_* ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/bk/

    # テキストファイルをバックアップフォルダへ移動
    mv ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/${YQA_TXT}_* ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/bk/
fi

#
#--- ＪＡＰＲＯの圧縮ファイルの存在確認
#
file_find_JPR=${GAIBU_RECEIVE_DIR_KK}/KKIFE019/${JPR_TAR}_*

# ファイルが存在する場合
if [ -r $file_find_JPR ]
then
    # 外部フォルダより中間フォルダへコピーする
    cp -p -f ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/${JPR_TAR}_* ${MID_DIR_KK}/

    # 中間フォルダにコピーした圧縮ファイルを解凍する
    tar xfC ${MID_DIR_KK}/${JPR_TAR}_* ${MID_DIR_KK}/

    # 解凍後、中間フォルダにコピーした圧縮ファイルを削除する
    rm -f ${MID_DIR_KK}/${JPR_TAR}_*

    # 圧縮ファイルをバックアップフォルダへ移動
    mv ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/${JPR_TAR}_* ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/bk/

    # テキストファイルをバックアップフォルダへ移動
    mv ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/${JPR_TXT}_* ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/bk/
fi

#
#--- アルファ通信の圧縮ファイルの存在確認
#
file_find_ALH=${GAIBU_RECEIVE_DIR_KK}/KKIFE019/${ALH_TAR}_*

# ファイルが存在する場合
if [ -r $file_find_ALH ]
then
    # 外部フォルダより中間フォルダへコピーする
    cp -p -f ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/${ALH_TAR}_* ${MID_DIR_KK}/

    # 中間フォルダにコピーした圧縮ファイルを解凍する
    tar xfC ${MID_DIR_KK}/${ALH_TAR}_* ${MID_DIR_KK}/

    # 解凍後、中間フォルダにコピーした圧縮ファイルを削除する
    rm -f ${MID_DIR_KK}/${ALH_TAR}_*

    # 圧縮ファイルをバックアップフォルダへ移動
    mv ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/${ALH_TAR}_* ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/bk/

    # テキストファイルをバックアップフォルダへ移動
    mv ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/${ALH_TXT}_* ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/bk/
fi

#
#--- オービットの圧縮ファイルの存在確認
#
file_find_OBT=${GAIBU_RECEIVE_DIR_KK}/KKIFE019/${OBT_TAR}_*

# ファイルが存在する場合
if [ -r $file_find_OBT ]
then
    # 外部フォルダより中間フォルダへコピーする
    cp -p -f ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/${OBT_TAR}_* ${MID_DIR_KK}/

    # 中間フォルダにコピーした圧縮ファイルを解凍する
    tar xfC ${MID_DIR_KK}/${OBT_TAR}_* ${MID_DIR_KK}/

    # 解凍後、中間フォルダにコピーした圧縮ファイルを削除する
    rm -f ${MID_DIR_KK}/${OBT_TAR}_*

    # 圧縮ファイルをバックアップフォルダへ移動
    mv ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/${OBT_TAR}_* ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/bk/

    # テキストファイルをバックアップフォルダへ移動
    mv ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/${OBT_TXT}_* ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/bk/
fi

#
#--- 日本ＰＣサービスの圧縮ファイルの存在確認
#
file_find_JPC=${GAIBU_RECEIVE_DIR_KK}/KKIFE019/${JPC_TAR}_*

# ファイルが存在する場合
if [ -r $file_find_JPC ]
then
    # 外部フォルダより中間フォルダへコピーする
    cp -p -f ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/${JPC_TAR}_* ${MID_DIR_KK}/

    # 中間フォルダにコピーした圧縮ファイルを解凍する
    tar xfC ${MID_DIR_KK}/${JPC_TAR}_* ${MID_DIR_KK}/

    # 解凍後、中間フォルダにコピーした圧縮ファイルを削除する
    rm -f ${MID_DIR_KK}/${JPC_TAR}_*

    # 圧縮ファイルをバックアップフォルダへ移動
    mv ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/${JPC_TAR}_* ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/bk/

    # テキストファイルをバックアップフォルダへ移動
    mv ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/${JPC_TXT}_* ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/bk/
fi

#
#--- ＩＰテクノサービスの圧縮ファイルの存在確認
#
file_find_IPT=${GAIBU_RECEIVE_DIR_KK}/KKIFE019/${IPT_TAR}_*

# ファイルが存在する場合
if [ -r $file_find_IPT ]
then
    # 外部フォルダより中間フォルダへコピーする
    cp -p -f ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/${IPT_TAR}_* ${MID_DIR_KK}/

    # 中間フォルダにコピーした圧縮ファイルを解凍する
    tar xfC ${MID_DIR_KK}/${IPT_TAR}_* ${MID_DIR_KK}/

    # 解凍後、中間フォルダにコピーした圧縮ファイルを削除する
    rm -f ${MID_DIR_KK}/${IPT_TAR}_*

    # 圧縮ファイルをバックアップフォルダへ移動
    mv ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/${IPT_TAR}_* ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/bk/

    # テキストファイルをバックアップフォルダへ移動
    mv ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/${IPT_TXT}_* ${GAIBU_RECEIVE_DIR_KK}/KKIFE019/bk/
fi

#
#--- 解凍されたファイルが存在しない場合
#
file_setup_cnt=`find ${MID_DIR_KK} -name "setup_*" | wc -l`
if [ 0 == $file_setup_cnt ]
then
    # 0バイトのファイルを作成する
    cat /dev/null > ${MID_DIR_KK}/setup_000000.csv
fi

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

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

exit ${G_RTN_NORMAL}
