| | | | | | | | --- | --- | --- | --- | --- | --- | | <変更履歴> | | | | | | | | | | | | | | NO | 変更年月日 | 変更担当者 | 案件名 | 変更シート | 変更内容 | | 1 | 2011-11-02 | DTS岩崎 | | ネットキャッシング振込予定年月日算出(IF) | 新規作成 | | 2 | 2014-12-28 | DTS深田 | | ネットキャッシング振込予定年月日算出(IF) | 現行の実装に合わせ、パッケージ、クラスを修正 | | 3 | 2018-10-25 | DTS青戸 | Netキャッシング即時振込サービス拡大対応 | ネットキャッシング振込予定年月日算出(IF) | 【振込キャッシング取扱時間拡張対応】 ・引数に金融機関コードを追加。 ・金融機関マスタの取得 ・時刻判定の修正 ・銀行休業日判定の修正 | | 4 | 2019-03-07 | DTS直木 | Netキャッシング即時振込サービス拡大対応 | ネットキャッシング振込予定年月日算出(IF) 電話キャッシング振込予定年月日算出(IF) | ・電話キャッシングの場合は現行どおり(取扱時間を拡大しない)とするため、 引数の金融機関コードと金融機関支店コードがないメソッドも復活する。 また、引数チェックも金融機関コードと金融機関支店コードはnullでもOKとする。 | | 5 | 2019-03-26 | DTS直木 | Netキャッシング即時振込サービス拡大対応 | ネットキャッシング振込予定年月日算出(IF) 電話キャッシング振込予定年月日算出(IF) | ・引数の金融機関支店コードをなくす。 ・金融機関マスタのカラム名決定(振込可能時間区分(PAYINTO\_AVLBL\_TIME\_DIV) CHAR(1)) | | 6 | 2019-04-17 | DTS直木 | Netキャッシング即時振込サービス拡大対応 | ネットキャッシング振込予定年月日算出(IF) | ・金融機関年中無休判定の結果をCodeMasterConstantを使用するように修正。 (SalesCodeConstからCLOSED\_DAY\_DIV\_CURRENT、CLOSED\_DAY\_DIV\_YEAR\_NONEを削除) ・戻り値をネットキャッシング振込予定ValueObjectに変更して、金融機関年中無休判定結果も返却。 | | 7 | 2019-04-17 | DTS直木 | Netキャッシング即時振込サービス拡大対応 | 電話キャッシング振込予定年月日算出(IF) | ・ネットキャッシング振込予定年月日算出(IF)の戻り値がVOに変更になったが、電話側に影響を出さないために、電話キャッシング振込予定年月日算出(IF)の戻り値は振込予定日を取り出し、返却する。 | | 8 | 2019-04-22 | DTS中野 | Netキャッシング即時振込サービス拡大対応 | ネットキャッシング振込予定年月日算出(IF) | 2.金融機関年中無休判定 金融機関マスタ.振込可能時間区分=nullのときは、『通常営業』と判断するように修正。 | | 9 | 2024-11-18 | DTS原川 | 振込予定日算出修正対応 | ネットキャッシング振込予定年月日算出(IF) | 0.呼び出し回数の定義 12.振込サービス停止日マスタ参照 ・振込サービス停止日マスタの検索を行い、マスタに日付が存在する場合は再帰処理で同じメソッドを呼出し、再度日付の検索を行うように修正(検索回数は最大100回) | | 10 | | | | | | | 11 | | | | | | | 12 | | | | | | | 13 | | | | | | | 14 | | | | | | | 15 | | | | | | | 16 | | | | | | | 17 | | | | | | | 18 | | | | | | | 19 | | | | | | | 20 | | | | | | | 21 | | | | | | | 22 | | | | | | | 23 | | | | | | | 24 | | | | | | | 25 | | | | | | | 26 | | | | | | | 27 | | | | | | | 28 | | | | | | | 29 | | | | | | | 30 | | | | | | | 機能詳細説明書 | | | | | | | | | | | | | | | | | プロジェクト | | | | | | | | | | | | | 処理名(機能名) | | | | | | | | | | | プログラム名(コマンド名) | | | | | | | 作成日 | | | | | | 担当者 | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | 次期顧客システム 債権受付 | | | | | | | | | | | | | ネットキャッシング 振込予定年月日算出I/F | | | | | | | | | | | NetCashingCalcPayIntoScdlDateBC#calcPayIntoScdlDateForNetCashing | | | | | | | 2011-11-02 | | | | | | DTS 岩崎 龍一 | | | | | | | | | --- | | 〔概要〕 | | | | | --- | --- | | 〔処理概要〕 | | | | 引数:指定日付、指定時刻 から、当日を含む未来で直近の振込予定年月日を返却します。 | | | | --- | | 〔機能概要〕 | | 《基本機能》 | | | | --- | | パッケージ | | | | | --- | --- | | : | jp.mcsystems.marui.credit.business.server.logic.publicbc.sales.cashing.net | | | | --- | | クラス | | | | | --- | --- | | : | NetCashingCalcPayIntoScdlDateBC | | | | --- | | 継承 | | | | | --- | --- | | : | なし | | | | --- | | メソッド | | | | | --- | --- | | : | calcPayIntoScdlDateForNetCashing | | | | --- | | 引数 | | | | | --- | --- | | : | (1)Date | | | (2)String | | | (3)String | | | (4)String | | | | --- | | 指定日付 | | 指定時刻 | | 金融機関コード | | 金融機関支店コード | | | | --- | | 戻り値 | | | | | | | --- | --- | --- | --- | | : | NetCashingCalcPayIntoScdlValue | | | | | | ├ | java.sql.Date | | | | └ | String | | | | --- | | 振込予定年月日 | | 振込可能時間区分 | | | | --- | | 例外 | | | | | --- | --- | | : | なし(MCSRuntimeExceptionは発生する) | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | 〔使用ファイル〕 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ※引数(1)、(2)は必須項目です。 | | | | | | | | | No | | テーブル名 | | | | | | | | | | ID | | | | | | | I/O | | | 備考 | | | | | | | | | ※引数(3)、(4)は任意項目です。 | | | | | | | | | 1 | | ネットキャッシング銀行カレンダーマスタ | | | | | | | | | | MS\_NETCASH\_FNCL\_CALENDAR | | | | | | | I | | | 債権受付サブ | | | | | | | | | | | | | | | | | | 2 | | 金融機関マスタ | | | | | | | | | | MS\_FNCL | | | | | | | I | | | マスタ管理 | | | | | | | | | ※引数(2)の指定時刻は 時・分 を表す4桁の文字列(HHMM)で指定してください。 | | | | | | | | | 3 | | ネットキャッシング銀行取扱時刻マスタ | | | | | | | | | | MS\_NETCASH\_FNCL\_HNDL\_TIME | | | | | | | I | | | 債権受付サブ | | | | | | | | | | | | | | | | | | 4 | | 振込サービス停止日マスタ | | | | | | | | | | MS\_PAYINTO\_SRVC\_STP\_DATE | | | | | | | I | | | 債権受付サブ | | | | | | | | | ※エラーが発生した場合は RuntimeException を発生させます。 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ※このメソッドを呼ぶ際には、必ずnewでインスタンス再作成を行うこと。 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (再帰処理の回数カウントをリセットするため) | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 版 | | 日 付 | | | | | 変更担当者 | | | | | 変更内容 | | | | | | | | | | | | | | | | | | | | | | | | | | 備考 | | 1.1 | | 2018-10-25 | | | | | DTS青戸 | | | | | 【Netキャッシング即時振込サービス拡大対応】 | | | | | | | | | | | | | | | | | | | | | | | | | | | 1.2 | | 2019-02-20 | | | | | DTS直木 | | | | | 【Netキャッシング即時振込サービス拡大対応】 | | | | | | | | | | | | | | | | | | | | | | | | | | | 1.3 | | 2019-03-07 | | | | | DTS直木 | | | | | 【Netキャッシング即時振込サービス拡大対応】 | | | | | | | | | | | | | | | | | | | | | | | | | | | 〔処理フロー〕 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | --- | | チェックNG | | | | --- | | チェックOK | | | | --- | | 年中無休 | | | | --- | | 取得NG | | | | --- | | 通常営業 | | | | --- | | 取得OK | | | | --- | | 取得NG | | | | --- | | 取得OK | | | | --- | | 取扱時間内 | | | | --- | | 取扱時間外 | | | | --- | | 取扱時間内 | | | | --- | | 取扱時間外 | | | | --- | | TDCKFキー:当日日付 | | | | --- | | TDCKFキー:当日日付+1日 | | | | --- | | TDCKFキー:当日日付 | | | | --- | | TDCKFキー:当日日付+1日 | | | | --- | | 取得NG | | | | --- | | 取得NG | | | | --- | | 取得OK | | | | --- | | 取得OK | | | | --- | | フラグ=false | | (休業日ではない) | | | | --- | | フラグ=false | | (休業日ではない) | | | | --- | | フラグ=true(休業日) | | TDCKFキー+1日で再取得 | | | | --- | | 金融機関取扱時刻特殊区分="0"(休業日) | | TDCKFキー+1日で再取得 | | | | --- | | 該当ありの場合、 | | | | --- | | 引数:指定日付(戻り値振込予定日)+1日、指定時刻:0:05で | | 再帰処理で自分自身呼び出し | | | | --- | | 該当なしの場合 | | | | --- | | 〔処理詳細〕 | | | | --- | | 0.呼び出し回数の定義 | | | | --- | | 2.金融機関年中無休判定 | | | | | | | | --- | --- | --- | --- | --- | | | 再起処理のカウントを行うため、メンバ変数として呼び出し回数=0を定義する。 | | | | | | (メソッド内には定義せず、staticを使用しないこと) | | | | | | | | | | | | | | | | | 1.引数チェック | | | | | | | 引数:①.Date(指定日付)、②.String (指定時刻)、③.String (金融機関コード)、 | | | | | | | ④.String(金融機関支店コード)のチェックを行う。 | | | | | エラーが発生した場合は IllegalArgumentException を発生させて処理終了。 | | | | | | | | | | | | 1-1.引数Nullチェック | | | | | | | 引数:①、②、③、④のどれかが Null または空白だった場合はエラー。 | | | | | | | | | | | 1-2.指定時刻 妥当性チェック | | | | | | | 引数:② が4ケタ以外だった場合はエラー。 | | | | | | また、下記クラスにて時刻の妥当性チェックを行い、チェックNGだった場合はエラー。 | | | | | | | | | | | | ※ 時刻妥当性チェックを行うクラス | | | | | | | ・ | パッケージ:jp.mcsystems.marui.credit.share.util.function.date | | | | | ・ | クラス :Validation | | | | | ・ | メソッド :isValidTime | | | | | ・ | 引数 :①.String(時刻) | | | | | ・ | 戻り値 :boolean (true:チェックOK / false:チェックNG) | | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | | ・引数.金融機関コード=null または 空白 の場合: | | | | | | | | | → | 『通常営業』と判断する | | | | | | ・引数.金融機関支店コード=null または 空白 の場合: | | | | | | | | | → | 『通常営業』と判断する | | | | | | | | | | | | | | ・上記以外の場合: | | | | | | | | | | | | | | | | | | 金融機関コード 、金融機関支店コード 、指定日付を条件として、金融機関マスタを検索する。 | | | | | | | | パッケージ | | | : | jp.mcsystems.marui.credit.business.server.logic.publicbc.master | | | | クラス | | | : | MsFnclBC | | | | メソッド | | | : | findByFnclCodeAndDate | | | | 引数 | | | : | 金融機関コード | | | | | | | | 金融機関支店コード | | | | | | | | 指定日付 | | | | 戻り値 | | | : | エンティティ配列[金融機関マスタEntity, 金融機関支店マスタEntity] | | | | 例外 | | | : | EntityNotFoundException 該当レコードが存在しない場合 | | | | | | | | | | | | | | | | | | | | ・該当データなし(EntityNotFoundException発生)の場合: | | | | | | | | | → | MCSRuntimeException を発生させて処理終了。 | | | | | | | | | | | | | | ・金融機関マスタ.振込可能時間区分="1"(24時間可)の場合: | | | | | | | | | → | 『年中無休』と判断する | | | | | | | --- | --- | | << | 引数.金融機関コード | | << | 引数.金融機関支店コード | | << | 引数.指定日付 | | | | | | --- | --- | --- | | ・上記以外の場合: | | | | | → | 『通常営業』と判断する | | | | | | --- | --- | --- | | ・金融機関マスタ.振込可能時間区分=nullの場合: | | | | | → | 『通常営業』と判断する | | | | --- | | (20190422修正) | | | | | | --- | --- | --- | | ・上記以外の場合: | | | | | → | 金融機関マスタ.振込可能時間区分をそのまま | | | | --- | | (20190417修正) | | | | --- | | 〔処理詳細〕つづき | | | | --- | | ・『通常営業』の場合: | | | | --- | | (2019/02/20判断を追加) | | | | --- | | ・『通常営業』以外の場合: | | | | --- | | (2019/2/20追加) | | 3.時刻判定 | | | | | | --- | --- | --- | --- | --- | | | 引数:指定時刻 から、当日の銀行営業時間に間に合うか判定を行う。 | | | | | | | | | | | | ・ | 引数:指定時刻が 00:00 ~ 14:29 の場合 | | | | | | | ⇒ | 当日の営業時間に間に合うと判定。何もせず 4.の処理へ進む。 | | 6.ネットキャッシング銀行カレンダーマスタTBL 検索 | | | --- | --- | | | 引数:指定日付 をキーとして、マスタTBLをPK検索する。 | | | ※ 検索ロジックは標準メソッドの find を使用。 | | | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | | | | | | --- | --- | --- | --- | | ・ | 引数:指定時刻が 14:30 ~ 23:59 の場合 | | | | | | ⇒ | 当日の営業時間に間に合わないと判定。引数:指定日付 を1日進めて4.の処理へ進む。 | | | | | --- | --- | | 7.金融機関取扱時刻の取得 | | | | 引数:指定日付 から、当日の銀行営業時間を取得する。 | | | | | | | --- | --- | --- | --- | | ・ | 項番6:ネットキャッシング銀行カレンダーマスタ.金融機関取扱時刻特殊区分="0"(休業日)の場合: | | | | | | ⇒ | 当日は休業日と判定。引数:指定日付 を1日進めて9.の処理へ進む。 | | | | | | | ・ | 項番6:ネットキャッシング銀行カレンダーマスタ.金融機関取扱時刻特殊区分=nullの場合: | | | | | | ⇒ | 引数:指定日付から曜日区分を求め、ネットキャッシング銀行取扱時刻マスタを検索する。 | | | | | TBL:ネットキャッシング銀行取扱時刻マスタ | | | | | 条件:金融機関取扱時刻特殊区分 = TO\_CHAR(引数:指定日付,'D') | | | | | AND DELETE\_TSTAMP IS NULL | | | | | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | | | | | | ・ | 上記以外の場合: | | | | | | ⇒ | カレンダーマスタ.金融機関取扱時刻特殊区分を条件に、ネットキャッシング銀行取扱時刻マスタを検索する。 | | | | | TBL:ネットキャッシング銀行取扱時刻マスタ | | | | | 条件:金融機関取扱時刻特殊区分 = 項番6:カレンダーマスタ.金融機関取扱時刻特殊区分 | | | | | AND DELETE\_TSTAMP IS NULL | | | | | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | 4.ネットキャッシング銀行カレンダーマスタTBL 検索 | | | | | | --- | --- | --- | --- | --- | | | 引数:指定日付 をキーとして、マスタTBLをPK検索する。 | | | | | | (3.の処理で1日進めていた場合は、その日付を使用する。) | | | | | | | | | | | | ※ 検索ロジックは標準メソッドの find を使用。 | | | | | | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | | | | | | | | | | | | | | | | 5.金融機関休業日フラグ判定 | | | | | | | 4.で取得したマスタTBL Entityから金融機関休業日フラグを取得して判定する。 | | | | | | | | | | | | ・ | 金融機関休業日フラグ = true(休業日) の場合 | | | | | | | ⇒ | 引数:指定日付 を1日進めて4.の処理へ戻る。(Loop処理) | | | | | | | | | ・ | 金融機関休業日フラグ = false(休業日ではない) の場合 | | | | | | | ⇒ | Loop処理を抜けて 11.の処理へ進む。 | | | | | --- | --- | | 8.時刻判定 | | | | 引数:指定時刻 から、当日の銀行営業時間に間に合うか判定を行う。 | | | | | | | --- | --- | --- | --- | | ・ | 引数:指定時刻が 00:00 ~ (項番7:ネットキャッシング銀行取扱時刻マスタ.取扱終了時間 - 31分) の場合 | | | | | | ⇒ | 当日の営業時間に間に合うと判定。何もせず 9.の処理へ進む。 | | | | | | | --- | --- | --- | --- | | ・ | 引数:指定時刻が (項番7:ネットキャッシング銀行取扱時刻マスタ.取扱終了時間 - 30分)~ 23:59 の場合 | | | | | | ⇒ | 当日の営業時間に間に合わないと判定。引数:指定日付 を1日進めて9.の処理へ進む。 | | | | --- | | 〔処理詳細〕つづき | | 12.振込サービス停止日マスタ参照 | | | --- | --- | | | | | | (1).以下のメソッドを呼び出し、振込サービス停止日マスタを検索する。 | | | パッケージ | | | クラス | | | メソッド | | | 引数 | | | 戻り値 | | | 例外 | | 9.ネットキャッシング銀行カレンダーマスタTBL 検索 | | | --- | --- | | | 引数:指定日付 をキーとして、マスタTBLをPK検索する。 | | | (7~8.の処理で1日進めていた場合は、その日付を使用する。) | | | | | | ※ 検索ロジックは標準メソッドの find を使用。 | | | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | | | | --- | --- | | : | jp.mcsystems.marui.credit.eis.dao | | : | MsPayintoSrvcStpDateManager | | : | find | | : | 振込サービス停止日 | | : | MsPayintoSrvcStpDateEntity 振込サービス停止日マスタEntity | | : | EntityNotFoundException 該当レコードが存在しない場合 | | | | | --- | --- | | << | 11.ネットキャッシング振込予定VO.振込予定年月日 | | | | | | | | | --- | --- | --- | --- | --- | --- | | | | 9.で取得したマスタTBL Entityから金融機関取扱時刻特殊区分を取得して判定する。 | | | | | | | | | | | | | | ・ | 金融機関取扱時刻特殊区分= "0"(休業日) の場合 | | | | | | | | ⇒ | 引数:指定日付 を1日進めて9.の処理へ戻る。(Loop処理) | | | | | | | | | | | ・ | 上記以外の場合 | | | | | | | | ⇒ | Loop処理を抜けて 11.の処理へ進む。 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 11.戻り値 設定 | | | | | | | | 3.~ 10.の処理を行った結果の 引数:指定日付 をjava,sql.Dateに変換して返却。処理終了。 | | | | | | | | | | | | | | ネットキャッシング振込予定ValueObjectを生成して、下記項目を設定して返却。処理終了。 | | | | | | | ネットキャッシング振込予定ValueObjectを生成して、下記項目を設定する。 | | | | | | | 項目名 | | | | | | | 振込予定年月日 | | | | | | | | | | | | | | 振込可能時間区分 | | | | | | | | | --- | --- | | ・該当レコードが存在しない(EntityNotFoundException発生)場合: | | | | →11.で設定したネットキャッシング振込予定VOを返却して処理を終了する。 | | | | | ・0.呼び出し回数 = 100の場合: | | | | →MCSRuntimeException を発生させて処理を終了する。 | | | | | (2).振込予定年月日を+1日し、再度当メソッドを呼び出す。 | | | 0.呼び出し回数を+1、振込予定年月日を+1日し、 | | | 再度直近の振込予定年月日を算出して戻り値を返却して処理を終了する。 | | | パッケージ | | | クラス | | | メソッド | | | 引数 | | | | | | | | | 戻り値 | | | 例外 | | | | | | --- | --- | | : | jp.mcsystems.marui.credit.business.server.logic.publicbc.sales.cashing.net | | : | NetCashingCalcPayIntoScdlDateBC | | : | calcPayIntoScdlDateForNetCashing | | : | (1)指定日付 | | | (2)指定時刻 | | | (3)金融機関コード | | : | NetCashingCalcPayIntoScdlValue ネットキャッシング振込予定VO | | : | なし | | | | | --- | --- | | << | 11.ネットキャッシング振込予定VO.振込予定年月日 + 1日 | | << | "0005"(00:05) | | << | 引数:金融機関コード | | | | --- | | (20190417修正) | | | | --- | | セット内容 | | 3.~ 10.の処理を行った結果の 引数:指定日付を | | java,sql.Dateに変換してセットする。 | | 2.金融機関年中無休判定の結果 | | | | --- | | 〔処理詳細〕つづき | | | | --- | | ■ ネットキャッシング銀行カレンダーマスタ(MS\_NETCASH\_FNCL\_CALENDAR) レイアウト | | 項目名 | | 当日日付 | | 金融機関休業日フラグ | | 金融機関取扱時刻特殊区分 | | | | --- | | 物理名 | | TODAY\_YMD | | FNCL\_CLOSED\_DAY\_FLAG | | FNCL\_HNDL\_TIME\_SP\_DIV | | | | --- | | 型 | | char(8) | | char(1) | | varchar2(2) | | | | --- | | 備考 | | PK | | Not Null | | | | --- | | ■ ネットキャッシング銀行取扱時刻マスタ(MS\_NETCASH\_FNCL\_HNDL\_TIME) レイアウト | | 項目名 | | 金融機関取扱時刻特殊区分 | | 取扱開始時間 | | 取扱終了時間 | | | | --- | | 物理名 | | FNCL\_HNDL\_TIME\_SP\_DIV | | HNDL\_STRT\_TIME | | HNDL\_END\_TIME | | | | --- | | 型 | | varchar2(2) | | char(6) | | char(6) | | | | --- | | 備考 | | PK | | Not Null | | Not Null | | 機能詳細説明書 | | | | | | | | | | | | | | | | | プロジェクト | | | | | | | | | | | | | 処理名(機能名) | | | | | | | | | | | プログラム名(コマンド名) | | | | | | | 作成日 | | | | | | 担当者 | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | 次期顧客システム 債権受付 | | | | | | | | | | | | | 電話キャッシング 振込予定年月日算出I/F | | | | | | | | | | | NetCashingCalcPayIntoScdlDateBC#calcPayIntoScdlDateForNetCashing | | | | | | | 2019-03-07 | | | | | | DTS 直木 奈苗 | | | | | | | | | --- | | 〔概要〕 | | | | | --- | --- | | 〔処理概要〕 | | | | 引数:指定日付、指定時刻 から、当日を含む未来で直近の振込予定年月日を返却します。 | | | | --- | | 〔機能概要〕 | | 《基本機能》 | | | | --- | | パッケージ | | | | | --- | --- | | : | jp.mcsystems.marui.credit.business.server.logic.publicbc.sales.cashing.net | | | | --- | | クラス | | | | | --- | --- | | : | NetCashingCalcPayIntoScdlDateBC | | | | --- | | 継承 | | | | | --- | --- | | : | なし | | | | --- | | メソッド | | | | | --- | --- | | : | calcPayIntoScdlDateForNetCashing | | | | --- | | 引数 | | | | | --- | --- | | : | (1)Date | | | (2)String | | | | --- | | 指定日付 | | 指定時刻 | | | | --- | | 戻り値 | | | | | --- | --- | | : | Date | | | | --- | | 振込予定年月日 | | | | --- | | 例外 | | | | | --- | --- | | : | なし(MCSRuntimeExceptionは発生する) | | | | --- | | ※引数(1)、(2)は必須項目です。 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | 〔使用ファイル〕 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ※引数(2)の指定時刻は 時・分 を表す4桁の文字列(HHMM)で指定してください。 | | | | | | | | | No | | テーブル名 | | | | | | | | | | ID | | | | | | | I/O | | | 備考 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ※エラーが発生した場合は RuntimeException を発生させます。 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 版 | | 日 付 | | | | | 変更担当者 | | | | | 変更内容 | | | | | | | | | | | | | | | | | | | | | | | | | | 備考 | | 1.1 | | 2019-03-07 | | | | | DTS直木 | | | | | 【Netキャッシング即時振込サービス拡大対応】電話キャッシング用 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 〔処理詳細〕 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | --- | | 1.ネットキャッシング振込予定年月日算出(IF)の呼び出し | | | | --- | | ネットキャッシング振込予定年月日算出IFを呼び出す。 | | ただし、取扱時間サービス拡大はしないため、金融機関コードと金融機関支店コードは | | セットしないで、通常営業として振込予定年月日を算出する。 | | | | --- | | パッケージ | | クラス | | メソッド | | 引数 | | | | | | | | 戻り値 | | 例外 | | | | | --- | --- | | : | jp.mcsystems.marui.credit.business.server.logic.publicbc.sales.cashing.net | | : | NetCashingCalcPayIntoScdlDateBC | | : | calcPayIntoScdlDateForNetCashing | | : | (1)Date | | | (2)String | | | (3)String | | | (4)String | | : | NetCashingCalcPayIntoScdlValue ネットキャシング振込予定ValueObject | | : | なし(MCSRuntimeExceptionは発生する) | | | | --- | | 指定日付 | | 指定時刻 | | 金融機関コード | | 金融機関支店コード | | | | | --- | --- | | << | 引数.指定日付 | | << | 引数.指定時刻 | | << | null | | << | null | | | | --- | | 2.振込予定年月日の返却 | | | | --- | | 処理1の戻り値VO.振込予定年月日をそのまま返却する。 | | 機能詳細説明書 | | | | | | | | | | | | | | | | | プロジェクト | | | | | | | | | | | | | 処理名(機能名) | | | | | | | | | | | プログラム名(コマンド名) | | | | | | | 作成日 | | | | | | 担当者 | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | 次期顧客システム 債権受付 | | | | | | | | | | | | | ネットキャッシング 振込予定年月日算出I/F | | | | | | | | | | | NetCashingCalcPayIntoScdlDateBC#calcPayIntoScdlDateForNetCashing | | | | | | | 2011-11-02 | | | | | | DTS 岩崎 龍一 | | | | | | | | | --- | | 〔概要〕 | | | | | --- | --- | | 〔処理概要〕 | | | | 引数:指定日付、指定時刻 から、当日を含む未来で直近の振込予定年月日を返却します。 | | | | --- | | 〔機能概要〕 | | 《基本機能》 | | | | --- | | パッケージ | | | | | --- | --- | | : | jp.mcsystems.marui.credit.business.server.logic.publicbc.sales.cashing.net | | | | --- | | クラス | | | | | --- | --- | | : | NetCashingCalcPayIntoScdlDateBC | | | | --- | | 継承 | | | | | --- | --- | | : | なし | | | | --- | | メソッド | | | | | --- | --- | | : | calcPayIntoScdlDateForNetCashing | | | | --- | | 引数 | | | | | --- | --- | | : | (1)Date | | | (2)String | | | (3)String | | | (4)String | | | | --- | | 指定日付 | | 指定時刻 | | 金融機関コード | | 金融機関支店コード | | | | --- | | 戻り値 | | | | | | | --- | --- | --- | --- | | : | NetCashingCalcPayIntoScdlValue | | | | | | ├ | java.sql.Date | | | | └ | String | | | | --- | | 振込予定年月日 | | 振込可能時間区分 | | | | --- | | 例外 | | | | | --- | --- | | : | なし(MCSRuntimeExceptionは発生する) | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | 〔使用ファイル〕 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ※引数(1)、(2)は必須項目です。 | | | | | | | | | No | | テーブル名 | | | | | | | | | | ID | | | | | | | I/O | | | 備考 | | | | | | | | | ※引数(3)、(4)は任意項目です。 | | | | | | | | | 1 | | ネットキャッシング銀行カレンダーマスタ | | | | | | | | | | MS\_NETCASH\_FNCL\_CALENDAR | | | | | | | I | | | 債権受付サブ | | | | | | | | | | | | | | | | | | 2 | | 金融機関マスタ | | | | | | | | | | MS\_FNCL | | | | | | | I | | | マスタ管理 | | | | | | | | | ※引数(2)の指定時刻は 時・分 を表す4桁の文字列(HHMM)で指定してください。 | | | | | | | | | 3 | | ネットキャッシング銀行取扱時刻マスタ | | | | | | | | | | MS\_NETCASH\_FNCL\_HNDL\_TIME | | | | | | | I | | | 債権受付サブ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ※エラーが発生した場合は RuntimeException を発生させます。 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 版 | | 日 付 | | | | | 変更担当者 | | | | | 変更内容 | | | | | | | | | | | | | | | | | | | | | | | | | | 備考 | | 1.1 | | 2018-10-25 | | | | | DTS青戸 | | | | | 【Netキャッシング即時振込サービス拡大対応】 | | | | | | | | | | | | | | | | | | | | | | | | | | | 1.2 | | 2019-02-20 | | | | | DTS直木 | | | | | 【Netキャッシング即時振込サービス拡大対応】 | | | | | | | | | | | | | | | | | | | | | | | | | | | 1.3 | | 2019-03-07 | | | | | DTS直木 | | | | | 【Netキャッシング即時振込サービス拡大対応】 | | | | | | | | | | | | | | | | | | | | | | | | | | | 〔処理フロー〕 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | --- | | チェックNG | | | | --- | | チェックOK | | | | --- | | 年中無休 | | | | --- | | 取得NG | | | | --- | | 通常営業 | | | | --- | | 取得OK | | | | --- | | 取得NG | | | | --- | | 取得OK | | | | --- | | 取扱時間内 | | | | --- | | 取扱時間外 | | | | --- | | 取扱時間内 | | | | --- | | 取扱時間外 | | | | --- | | TDCKFキー:当日日付 | | | | --- | | TDCKFキー:当日日付+1日 | | | | --- | | TDCKFキー:当日日付 | | | | --- | | TDCKFキー:当日日付+1日 | | | | --- | | 取得NG | | | | --- | | 取得NG | | | | --- | | 取得OK | | | | --- | | 取得OK | | | | --- | | フラグ=false | | (休業日ではない) | | | | --- | | フラグ=false | | (休業日ではない) | | | | --- | | フラグ=true(休業日) | | TDCKFキー+1日で再取得 | | | | --- | | 金融機関取扱時刻特殊区分="0"(休業日) | | TDCKFキー+1日で再取得 | | | | --- | | 〔処理詳細〕 | | 1.引数チェック | | | | | | --- | --- | --- | --- | --- | | | 引数:①.Date(指定日付)、②.String (指定時刻)、③.String (金融機関コード)、 | | | | | | | ④.String(金融機関支店コード)のチェックを行う。 | | | | | エラーが発生した場合は IllegalArgumentException を発生させて処理終了。 | | | | | | | | | | | | 1-1.引数Nullチェック | | | | | | | 引数:①、②、③、④のどれかが Null または空白だった場合はエラー。 | | | | | | | | | | | 1-2.指定時刻 妥当性チェック | | | | | | | 引数:② が4ケタ以外だった場合はエラー。 | | | | | | また、下記クラスにて時刻の妥当性チェックを行い、チェックNGだった場合はエラー。 | | | | | | | | | | | | ※ 時刻妥当性チェックを行うクラス | | | | | | | ・ | パッケージ:jp.mcsystems.marui.credit.share.util.function.date | | | | | ・ | クラス :Validation | | | | | ・ | メソッド :isValidTime | | | | | ・ | 引数 :①.String(時刻) | | | | | ・ | 戻り値 :boolean (true:チェックOK / false:チェックNG) | | 2.金融機関年中無休判定 | | | | | --- | --- | --- | --- | | | | | | | | ・引数.金融機関コード=null または 空白 の場合: | | | | | | → | 『通常営業』と判断する | | | ・引数.金融機関支店コード=null または 空白 の場合: | | | | | | → | 『通常営業』と判断する | | | | | | | | ・上記以外の場合: | | | | | | | | | | | | 金融機関コード 、金融機関支店コード 、指定日付を条件として、金融機関マスタを検索する。 | | | | | パッケージ | | | | | クラス | | | | | メソッド | | | | | 引数 | | | | | | | | | | | | | | | 戻り値 | | | | | 例外 | | | | | --- | --- | | : | jp.mcsystems.marui.credit.business.server.logic.publicbc.master | | : | MsFnclBC | | : | findByFnclCodeAndDate | | : | 金融機関コード | | | 金融機関支店コード | | | 指定日付 | | : | エンティティ配列[金融機関マスタEntity, 金融機関支店マスタEntity] | | : | EntityNotFoundException 該当レコードが存在しない場合 | | | | | --- | --- | | << | 引数.金融機関コード | | << | 引数.金融機関支店コード | | << | 引数.指定日付 | | | | | | --- | --- | --- | | ・該当データなし(EntityNotFoundException発生)の場合: | | | | | → | MCSRuntimeException を発生させて処理終了。 | | | | | | --- | --- | --- | | ・金融機関マスタ.振込可能時間区分="1"(24時間可)の場合: | | | | | → | 『年中無休』と判断する | | | | | | --- | --- | --- | | ・上記以外の場合: | | | | | → | 『通常営業』と判断する | | | | | | --- | --- | --- | | ・上記以外の場合: | | | | | → | 金融機関マスタ.振込可能時間区分をそのまま | | | | --- | | (20190417修正) | | | | --- | | 〔処理詳細〕つづき | | | | --- | | ・『通常営業』の場合: | | | | --- | | (2019/02/20判断を追加) | | | | --- | | ・『通常営業』以外の場合: | | | | --- | | (2019/2/20追加) | | 3.時刻判定 | | | | | | --- | --- | --- | --- | --- | | | 引数:指定時刻 から、当日の銀行営業時間に間に合うか判定を行う。 | | | | | | | | | | | | ・ | 引数:指定時刻が 00:00 ~ 14:29 の場合 | | | | | | | ⇒ | 当日の営業時間に間に合うと判定。何もせず 4.の処理へ進む。 | | 6.ネットキャッシング銀行カレンダーマスタTBL 検索 | | | --- | --- | | | 引数:指定日付 をキーとして、マスタTBLをPK検索する。 | | | ※ 検索ロジックは標準メソッドの find を使用。 | | | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | | | | | | --- | --- | --- | --- | | ・ | 引数:指定時刻が 14:30 ~ 23:59 の場合 | | | | | | ⇒ | 当日の営業時間に間に合わないと判定。引数:指定日付 を1日進めて4.の処理へ進む。 | | | | | --- | --- | | 7.金融機関取扱時刻の取得 | | | | 引数:指定日付 から、当日の銀行営業時間を取得する。 | | | | | | | --- | --- | --- | --- | | ・ | 項番6:ネットキャッシング銀行カレンダーマスタ.金融機関取扱時刻特殊区分="0"(休業日)の場合: | | | | | | ⇒ | 当日は休業日と判定。引数:指定日付 を1日進めて9.の処理へ進む。 | | | | | | | ・ | 項番6:ネットキャッシング銀行カレンダーマスタ.金融機関取扱時刻特殊区分=nullの場合: | | | | | | ⇒ | 引数:指定日付から曜日区分を求め、ネットキャッシング銀行取扱時刻マスタを検索する。 | | | | | TBL:ネットキャッシング銀行取扱時刻マスタ | | | | | 条件:金融機関取扱時刻特殊区分 = TO\_CHAR(引数:指定日付,'D') | | | | | AND DELETE\_TSTAMP IS NULL | | | | | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | | | | | | ・ | 上記以外の場合: | | | | | | ⇒ | カレンダーマスタ.金融機関取扱時刻特殊区分を条件に、ネットキャッシング銀行取扱時刻マスタを検索する。 | | | | | TBL:ネットキャッシング銀行取扱時刻マスタ | | | | | 条件:金融機関取扱時刻特殊区分 = 項番6:カレンダーマスタ.金融機関取扱時刻特殊区分 | | | | | AND DELETE\_TSTAMP IS NULL | | | | | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | 4.ネットキャッシング銀行カレンダーマスタTBL 検索 | | | | | | --- | --- | --- | --- | --- | | | 引数:指定日付 をキーとして、マスタTBLをPK検索する。 | | | | | | (3.の処理で1日進めていた場合は、その日付を使用する。) | | | | | | | | | | | | ※ 検索ロジックは標準メソッドの find を使用。 | | | | | | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | | | | | | | | | | | | | | | | 5.金融機関休業日フラグ判定 | | | | | | | 4.で取得したマスタTBL Entityから金融機関休業日フラグを取得して判定する。 | | | | | | | | | | | | ・ | 金融機関休業日フラグ = true(休業日) の場合 | | | | | | | ⇒ | 引数:指定日付 を1日進めて4.の処理へ戻る。(Loop処理) | | | | | | | | | ・ | 金融機関休業日フラグ = false(休業日ではない) の場合 | | | | | | | ⇒ | Loop処理を抜けて 11.の処理へ進む。 | | | | | --- | --- | | 8.時刻判定 | | | | 引数:指定時刻 から、当日の銀行営業時間に間に合うか判定を行う。 | | | | | | | --- | --- | --- | --- | | ・ | 引数:指定時刻が 00:00 ~ (項番7:ネットキャッシング銀行取扱時刻マスタ.取扱終了時間 - 31分) の場合 | | | | | | ⇒ | 当日の営業時間に間に合うと判定。何もせず 9.の処理へ進む。 | | | | | | | --- | --- | --- | --- | | ・ | 引数:指定時刻が (項番7:ネットキャッシング銀行取扱時刻マスタ.取扱終了時間 - 30分)~ 23:59 の場合 | | | | | | ⇒ | 当日の営業時間に間に合わないと判定。引数:指定日付 を1日進めて9.の処理へ進む。 | | | | --- | | 〔処理詳細〕つづき | | 11.戻り値 設定 | | | --- | --- | | | 3.~ 10.の処理を行った結果の 引数:指定日付 をjava,sql.Dateに変換して返却。処理終了。 | | | | | | ネットキャッシング振込予定ValueObjectを生成して、下記項目を設定して返却。処理終了。 | | | 項目名 | | | 振込予定年月日 | | | | | | 振込可能時間区分 | | 9.ネットキャッシング銀行カレンダーマスタTBL 検索 | | | --- | --- | | | 引数:指定日付 をキーとして、マスタTBLをPK検索する。 | | | (7~8.の処理で1日進めていた場合は、その日付を使用する。) | | | | | | ※ 検索ロジックは標準メソッドの find を使用。 | | | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | | | --- | | (20190417修正) | | | | --- | | セット内容 | | 3.~ 10.の処理を行った結果の 引数:指定日付を | | java,sql.Dateに変換してセットする。 | | 2.金融機関年中無休判定の結果 | | | | | --- | --- | | 10.金融機関休業日判定 | | | | 9.で取得したマスタTBL Entityから金融機関取扱時刻特殊区分を取得して判定する。 | | | | | | | --- | --- | --- | --- | | ・ | 金融機関取扱時刻特殊区分= "0"(休業日) の場合 | | | | | | ⇒ | 引数:指定日付 を1日進めて9.の処理へ戻る。(Loop処理) | | | | | | | --- | --- | --- | --- | | ・ | 上記以外の場合 | | | | | | ⇒ | Loop処理を抜けて 11.の処理へ進む。 | | | | --- | | ■ ネットキャッシング銀行カレンダーマスタ(MS\_NETCASH\_FNCL\_CALENDAR) レイアウト | | 項目名 | | 当日日付 | | 金融機関休業日フラグ | | 金融機関取扱時刻特殊区分 | | | | --- | | 物理名 | | TODAY\_YMD | | FNCL\_CLOSED\_DAY\_FLAG | | FNCL\_HNDL\_TIME\_SP\_DIV | | | | --- | | 型 | | char(8) | | char(1) | | varchar2(2) | | | | --- | | 備考 | | PK | | Not Null | | | | --- | | ■ ネットキャッシング銀行取扱時刻マスタ(MS\_NETCASH\_FNCL\_HNDL\_TIME) レイアウト | | 項目名 | | 金融機関取扱時刻特殊区分 | | 取扱開始時間 | | 取扱終了時間 | | | | --- | | 物理名 | | FNCL\_HNDL\_TIME\_SP\_DIV | | HNDL\_STRT\_TIME | | HNDL\_END\_TIME | | | | --- | | 型 | | varchar2(2) | | char(6) | | char(6) | | | | --- | | 備考 | | PK | | Not Null | | Not Null | | 機能詳細説明書 | | | | | | | | | | | | | | | | | プロジェクト | | | | | | | | | | | | | 処理名(機能名) | | | | | | | | | | | プログラム名(コマンド名) | | | | | | | 作成日 | | | | | | 担当者 | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | 次期顧客システム 債権受付 | | | | | | | | | | | | | ネットキャッシング 振込予定年月日算出I/F | | | | | | | | | | | NetCashingCalcPayIntoScdlDateBC#calcPayIntoScdlDateForNetCashing | | | | | | | 2011-11-02 | | | | | | DTS 岩崎 龍一 | | | | | | | | | --- | | 〔概要〕 | | | | | --- | --- | | 〔処理概要〕 | | | | 引数:指定日付、指定時刻 から、当日を含む未来で直近の振込予定年月日を返却します。 | | | | --- | | 〔機能概要〕 | | 《基本機能》 | | | | --- | | パッケージ | | | | | --- | --- | | : | jp.mcsystems.marui.credit.business.server.logic.publicbc.sales.cashing.net | | | | --- | | クラス | | | | | --- | --- | | : | NetCashingCalcPayIntoScdlDateBC | | | | --- | | 継承 | | | | | --- | --- | | : | なし | | | | --- | | メソッド | | | | | --- | --- | | : | calcPayIntoScdlDateForNetCashing | | | | --- | | 引数 | | | | | --- | --- | | : | (1)Date | | | (2)String | | | (3)String | | | (4)String | | | | --- | | 指定日付 | | 指定時刻 | | 金融機関コード | | 金融機関支店コード | | | | --- | | 戻り値 | | | | | --- | --- | | : | Date | | | | --- | | 振込予定年月日 | | | | --- | | 例外 | | | | | --- | --- | | : | なし | | | | --- | | ※引数(1)、(2)、(3)、(4)は必須項目です。 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | 〔使用ファイル〕 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ※引数(2)の指定時刻は 時・分 を表す4桁の文字列(HHMM)で指定してください。 | | | | | | | | | No | | テーブル名 | | | | | | | | | | ID | | | | | | | I/O | | | 備考 | | | | | | | | | | | | | | | | | | 1 | | ネットキャッシング銀行カレンダーマスタ | | | | | | | | | | MS\_NETCASH\_FNCL\_CALENDAR | | | | | | | I | | | 債権受付サブ | | | | | | | | | ※エラーが発生した場合は RuntimeException を発生させます。 | | | | | | | | | 2 | | 金融機関マスタ | | | | | | | | | | MS\_FNCL | | | | | | | I | | | マスタ管理 | | | | | | | | | | | | | | | | | | 3 | | 金融機関支店マスタ | | | | | | | | | | MS\_FNCL\_BRANCH | | | | | | | I | | | マスタ管理 | | | | | | | | | | | | | | | | | | 4 | | ネットキャッシング銀行取扱時刻マスタ | | | | | | | | | | MS\_NETCASH\_FNCL\_HNDL\_TIME | | | | | | | I | | | 債権受付サブ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 版 | | 日 付 | | | | | 変更担当者 | | | | | 変更内容 | | | | | | | | | | | | | | | | | | | | | | | | | | 備考 | | 1.1 | | 2018-10-25 | | | | | DTS青戸 | | | | | 【Netキャッシング即時振込サービス拡大対応】 | | | | | | | | | | | | | | | | | | | | | | | | | | | 1.2 | | 2019-02-20 | | | | | DTS直木 | | | | | 【Netキャッシング即時振込サービス拡大対応】 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 〔処理フロー〕 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | --- | | チェックNG | | | | --- | | チェックOK | | | | --- | | 年中無休 | | | | --- | | 取得NG | | | | --- | | 通常営業 | | | | --- | | 取得OK | | | | --- | | 取得NG | | | | --- | | 取得OK | | | | --- | | 取扱時間内 | | | | --- | | 取扱時間外 | | | | --- | | 取扱時間内 | | | | --- | | 取扱時間外 | | | | --- | | TDCKFキー:当日日付 | | | | --- | | TDCKFキー:当日日付+1日 | | | | --- | | TDCKFキー:当日日付 | | | | --- | | TDCKFキー:当日日付+1日 | | | | --- | | 取得NG | | | | --- | | 取得NG | | | | --- | | 取得OK | | | | --- | | 取得OK | | | | --- | | フラグ=false | | (休業日ではない) | | | | --- | | フラグ=false | | (休業日ではない) | | | | --- | | フラグ=true(休業日) | | TDCKFキー+1日で再取得 | | | | --- | | 金融機関取扱時刻特殊区分="0"(休業日) | | TDCKFキー+1日で再取得 | | | | --- | | 〔処理詳細〕 | | 1.引数チェック | | | | --- | --- | --- | | | 引数:①.Date(指定日付)、②.String (指定時刻)、③.String (金融機関コード)、 | | | | | ④.String(金融機関支店コード)のチェックを行う。 | | | エラーが発生した場合は IllegalArgumentException を発生させて処理終了。 | | | | | | | --- | --- | --- | | ・『通常営業』の場合: | | | | | | | | | 3.時刻判定 | | | | | 引数:指定時刻 から、当日の銀行営業時間に間に合うか判定を行う。 | | | | --- | | (2019/02/20判断を追加) | | | | | --- | --- | | 1-1.引数Nullチェック | | | | 引数:①、②、③、④のどれかが Null または空白だった場合はエラー。 | | | | | | | --- | --- | --- | --- | | ・ | 引数:指定時刻が 00:00 ~ 14:29 の場合 | | | | | | ⇒ | 当日の営業時間に間に合うと判定。何もせず 4.の処理へ進む。 | | | | | --- | --- | | 1-2.指定時刻 妥当性チェック | | | | 引数:② が4ケタ以外だった場合はエラー。 | | | また、下記クラスにて時刻の妥当性チェックを行い、チェックNGだった場合はエラー。 | | | | | | | --- | --- | --- | --- | | ・ | 引数:指定時刻が 14:30 ~ 23:59 の場合 | | | | | | ⇒ | 当日の営業時間に間に合わないと判定。引数:指定日付 を1日進めて4.の処理へ進む。 | | | | | | --- | --- | --- | | ※ 時刻妥当性チェックを行うクラス | | | | | ・ | パッケージ:jp.mcsystems.marui.credit.share.util.function.date | | | ・ | クラス :Validation | | | ・ | メソッド :isValidTime | | | ・ | 引数 :①.String(時刻) | | | ・ | 戻り値 :boolean (true:チェックOK / false:チェックNG) | | 4.ネットキャッシング銀行カレンダーマスタTBL 検索 | | | --- | --- | | | 引数:指定日付 をキーとして、マスタTBLをPK検索する。 | | | (3.の処理で1日進めていた場合は、その日付を使用する。) | | | | | | ※ 検索ロジックは標準メソッドの find を使用。 | | | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | 2.金融機関年中無休判定 | | | --- | --- | | | | | | 金融機関コード 、金融機関支店コード 、指定日付を条件として、金融機関マスタを検索する。 | | | パッケージ | | | クラス | | | メソッド | | | 引数 | | | | | | | | | 戻り値 | | | 例外 | | 5.金融機関休業日フラグ判定 | | | | | | --- | --- | --- | --- | --- | | | 4.で取得したマスタTBL Entityから金融機関休業日フラグを取得して判定する。 | | | | | | | | | | | | ・ | 金融機関休業日フラグ = true(休業日) の場合 | | | | | | | ⇒ | 引数:指定日付 を1日進めて4.の処理へ戻る。(Loop処理) | | | | | | | | | ・ | 金融機関休業日フラグ = false(休業日ではない) の場合 | | | | | | | ⇒ | Loop処理を抜けて 11.の処理へ進む。 | | | | | --- | --- | | : | jp.mcsystems.marui.credit.business.server.logic.publicbc.master | | : | MsFnclBC | | : | findByPKandAppointedDay | | : | 金融機関コード | | : | 金融機関支店コード | | : | 指定日付 | | : | エンティティ配列[金融機関マスタEntity, 金融機関支店マスタEntity] | | : | EntityNotFoundException 該当レコードが存在しない場合 | | | | | --- | --- | | << | 引数.金融機関コード | | << | 引数.金融機関支店コード | | << | 引数.指定日付 | | | | | | --- | --- | --- | | ・該当データなし(EntityNotFoundException発生)の場合: | | | | | → | MCSRuntimeException を発生させて処理終了。 | | ・金融機関マスタ.休業日区分="1"(年中無休)の場合: | | | | | → | 『年中無休』と判断する | | ・上記以外の場合: | | | | | → | 『通常営業』と判断する | | | | --- | | 〔処理詳細〕つづき | | | | | | --- | --- | --- | | ・『年中無休』の場合: | | | | | | | | | 6.ネットキャッシング銀行カレンダーマスタTBL 検索 | | | | | 引数:指定日付 をキーとして、マスタTBLをPK検索する。 | | | | ※ 検索ロジックは標準メソッドの find を使用。 | | | | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | | | --- | | (2019/2/20追加) | | 9.ネットキャッシング銀行カレンダーマスタTBL 検索 | | | --- | --- | | | 引数:指定日付 をキーとして、マスタTBLをPK検索する。 | | | (7~8.の処理で1日進めていた場合は、その日付を使用する。) | | | | | | ※ 検索ロジックは標準メソッドの find を使用。 | | | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | 7.金融機関取扱時刻の取得 | | | | | | --- | --- | --- | --- | --- | | | 引数:指定日付 から、当日の銀行営業時間を取得する。 | | | | | | | | | | | | ・ | 項番6:ネットキャッシング銀行カレンダーマスタ.金融機関取扱時刻特殊区分="0"(休業日)の場合: | | | | | | | ⇒ | 当日は休業日と判定。引数:指定日付 を1日進めて9.の処理へ進む。 | | | | | | | | | ・ | 項番6:ネットキャッシング銀行カレンダーマスタ.金融機関取扱時刻特殊区分=nullの場合: | | | | | | | ⇒ | 引数:指定日付から曜日区分を求め、ネットキャッシング銀行取扱時刻マスタを検索する。 | | | | | | TBL:ネットキャッシング銀行取扱時刻マスタ | | | | | | 条件:金融機関取扱時刻特殊区分 = TO\_CHAR(引数:指定日付,'D') | | | | | | AND DELETE\_TSTAMP IS NULL | | | | | | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | | | | | | | | ・ | 上記以外の場合: | | | | | | | ⇒ | カレンダーマスタ.金融機関取扱時刻特殊区分を条件に、ネットキャッシング銀行取扱時刻マスタを検索する。 | | | | | | TBL:ネットキャッシング銀行取扱時刻マスタ | | | | | | 条件:金融機関取扱時刻特殊区分 = 項番6:カレンダーマスタ.金融機関取扱時刻特殊区分 | | | | | | AND DELETE\_TSTAMP IS NULL | | | | | | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | | | | | | | | | | | | | 8.時刻判定 | | | | | | | 引数:指定時刻 から、当日の銀行営業時間に間に合うか判定を行う。 | | | | | | | | | | | | ・ | 引数:指定時刻が 00:00 ~ (項番7:ネットキャッシング銀行取扱時刻マスタ.取扱終了時間 - 31分) の場合 | | | | | | | ⇒ | 当日の営業時間に間に合うと判定。何もせず 9.の処理へ進む。 | | | | | | | | | ・ | 引数:指定時刻が (項番7:ネットキャッシング銀行取扱時刻マスタ.取扱終了時間 - 30分)~ 23:59 の場合 | | | | | | | ⇒ | 当日の営業時間に間に合わないと判定。引数:指定日付 を1日進めて9.の処理へ進む。 | | | 10.金融機関休業日判定 | | | | | | --- | --- | --- | --- | --- | --- | | | | 9.で取得したマスタTBL Entityから金融機関取扱時刻特殊区分を取得して判定する。 | | | | | | | | | | | | | | ・ | 金融機関取扱時刻特殊区分= "0"(休業日) の場合 | | | | | | | | ⇒ | 引数:指定日付 を1日進めて9.の処理へ戻る。(Loop処理) | | | | | | | | | | | ・ | 上記以外の場合 | | | | | | | | ⇒ | Loop処理を抜けて 11.の処理へ進む。 | | | | | | | | | | | | | | | | | | | | | | | 11.戻り値 設定 | | | | | | | | 3.~ 10.の処理を行った結果の 引数:指定時刻 を戻り値に設定して処理終了。 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ■ ネットキャッシング銀行カレンダーマスタ(MS\_NETCASH\_FNCL\_CALENDAR) レイアウト | | | | | | | 項目名 | | | | | | | 当日日付 | | | | | | | 金融機関休業日フラグ | | | | | | | 金融機関取扱時刻特殊区分 | | | | | | | | | | | | | | | | | | | | | ■ ネットキャッシング銀行取扱時刻マスタ(MS\_NETCASH\_FNCL\_HNDL\_TIME) レイアウト | | | | | | | 項目名 | | | | | | | 金融機関取扱時刻特殊区分 | | | | | | | 取扱開始時間 | | | | | | | 取扱終了時間 | | | | | | | | | --- | | 物理名 | | TODAY\_YMD | | FNCL\_CLOSED\_DAY\_FLAG | | FNCL\_HNDL\_TIME\_SP\_DIV | | | | | | | | 物理名 | | FNCL\_HNDL\_TIME\_SP\_DIV | | HNDL\_STRT\_TIME | | HNDL\_END\_TIME | | | | --- | | 型 | | char(8) | | char(1) | | varchar2(2) | | | | | | | | 型 | | varchar2(2) | | char(6) | | char(6) | | | | --- | | 備考 | | PK | | Not Null | | | | | | | | | | 備考 | | PK | | Not Null | | Not Null | | 機能詳細説明書 | | | | | | | | | | | | | | | | | プロジェクト | | | | | | | | | | | | | 処理名(機能名) | | | | | | | | | | | プログラム名(コマンド名) | | | | | | | 作成日 | | | | | | 担当者 | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | 次期顧客システム 債権受付 | | | | | | | | | | | | | ネットキャッシング 振込予定年月日算出I/F | | | | | | | | | | | NetCashingCalcPayIntoScdlDateBC#calcPayIntoScdlDateForNetCashing | | | | | | | 2011-11-02 | | | | | | DTS 岩崎 龍一 | | | | | | | | | --- | | 〔概要〕 | | | | | --- | --- | | 〔処理概要〕 | | | | 引数:指定日付、指定時刻 から、当日を含む未来で直近の振込予定年月日を返却します。 | | | | --- | | 〔機能概要〕 | | 《基本機能》 | | | | --- | | パッケージ | | | | | --- | --- | | : | jp.mcsystems.marui.credit.business.server.logic.publicbc.sales.cashing.net | | | | --- | | クラス | | | | | --- | --- | | : | NetCashingCalcPayIntoScdlDateBC | | | | --- | | 継承 | | | | | --- | --- | | : | なし | | | | --- | | メソッド | | | | | --- | --- | | : | calcPayIntoScdlDateForNetCashing | | | | --- | | 引数 | | | | | --- | --- | | : | (1)Date | | | (2)String | | | (3)String | | | (4)String | | | | --- | | 指定日付 | | 指定時刻 | | 金融機関コード | | 金融機関支店コード | | | | --- | | 戻り値 | | | | | --- | --- | | : | Date | | | | --- | | 振込予定年月日 | | | | --- | | 例外 | | | | | --- | --- | | : | なし | | | | --- | | ※引数(1)、(2)、(3)、(4)は必須項目です。 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | 〔使用ファイル〕 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ※引数(2)の指定時刻は 時・分 を表す4桁の文字列(HHMM)で指定してください。 | | | | | | | | | No | | テーブル名 | | | | | | | | | | ID | | | | | | | I/O | | | 備考 | | | | | | | | | | | | | | | | | | 1 | | ネットキャッシング銀行カレンダーマスタ | | | | | | | | | | MS\_NETCASH\_FNCL\_CALENDAR | | | | | | | I | | | 債権受付サブ | | | | | | | | | ※エラーが発生した場合は RuntimeException を発生させます。 | | | | | | | | | 2 | | 金融機関マスタ | | | | | | | | | | MS\_FNCL | | | | | | | I | | | マスタ管理サブ | | | | | | | | | | | | | | | | | | 3 | | 金融機関支店マスタ | | | | | | | | | | MS\_FNCL\_BRANCH | | | | | | | I | | | マスタ管理サブ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 版 | | 日 付 | | | | | 変更担当者 | | | | | 変更内容 | | | | | | | | | | | | | | | | | | | | | | | | | | 備考 | | | | 2018-10-25 | | | | | DTS青戸 | | | | | 【Netキャッシング即時振込サービス拡大対応】 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 〔処理フロー〕 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ■ ネットキャッシング銀行カレンダーマスタ(MS\_NETCASH\_FNCL\_CALENDAR) レイアウト | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 項目名 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 当日日付 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 金融機関休業日フラグ | | | | | | | | | | | --- | | 物理名 | | TODAY\_YMD | | FNCL\_CLOSED\_DAY\_FLAG | | | | --- | | 型 | | char(8) | | char(1) | | | | --- | | 備考 | | PK | | Not Null | | | | --- | | チェックNG | | | | --- | | チェックOK | | | | --- | | 取扱時間内 | | | | --- | | 取扱時間外 | | | | --- | | TDCKFキー:当日日付 | | | | --- | | TDCKFキー:当日日付+1日 | | | | --- | | 年中無休 | | | | | --- | --- | | 年中無休ではない | or 金融機関マスタ情報なし | | | | --- | | 取得NG | | | | --- | | 取得OK | | | | --- | | フラグ=false | | (休業日ではない) | | | | --- | | フラグ=true(休業日) | | TDCKFキー+1日で再取得 | | | | --- | | 〔処理詳細〕 | | 1.引数チェック | | | | --- | --- | --- | | | 引数:①.Date(指定日付)、②.String (指定時刻)、③.String (金融機関コード)、 | | | | | ④.String(金融機関支店コード)のチェックを行う。 | | | エラーが発生した場合は IllegalArgumentException を発生させて処理終了。 | | | | | | --- | --- | | 3.時刻判定 | | | | 引数:指定時刻 から、当日の銀行営業時間に間に合うか判定を行う。 | | | | | | 金融機関マスタ情報ありの場合: | | | | | --- | --- | | 1-1.引数Nullチェック | | | | 引数:①、②、③、④のどれかが Null だった場合はエラー。 | | | | | | | --- | --- | --- | --- | | ・ | 引数:指定時刻が 00:00 ~ (金融機関マスタ.マスタ取扱可能時間TO-31分) の場合 | | | | | | ⇒ | 当日の営業時間に間に合うと判定。何もせず 4.の処理へ進む。 | | | | | --- | --- | | 1-2.指定時刻 妥当性チェック | | | | 引数:② が4ケタ以外だった場合はエラー。 | | | また、下記クラスにて時刻の妥当性チェックを行い、チェックNGだった場合はエラー。 | | | | | | | --- | --- | --- | --- | | ・ | 引数:指定時刻が (金融機関マスタ.マスタ取扱可能時間TO-30分) ~ 23:59 の場合 | | | | | | ⇒ | 当日の営業時間に間に合わないと判定。引数:指定日付 を1日進めて4.の処理へ進む。 | | | | | | --- | --- | --- | | ※ 時刻妥当性チェックを行うクラス | | | | | ・ | パッケージ:jp.mcsystems.marui.credit.share.util.function.date | | | ・ | クラス :Validation | | | ・ | メソッド :isValidTime | | | ・ | 引数 :①.String(時刻) | | | ・ | 戻り値 :boolean (true:チェックOK / false:チェックNG) | | | | | --- | --- | | 例.対象の銀行の取扱時間が10:00~18:00の場合: | | | | 金融機関マスタ.マスタ取扱可能時間FROM | | | 金融機関マスタ.マスタ取扱可能時間TO | | | | | | 指定時刻 17:29(TO-31分)までは当日振込、 | | | 指定時刻 17:30(TO-30分)からは翌日以降の振込となる。 | | | | | --- | --- | | → | 1000 | | → | 1800 | | | | --- | | ※マスタにはFROM<TOで時間が設定されている想定。 | | 2.金融機関マスタTBL 検索 | | | --- | --- | | | 引数:金融機関コード 、引数:金融機関支店コード 、引数:指定日付をキーとして、 | | | マスタTBLをPK検索する。 | | | パッケージ | | | クラス | | | メソッド | | | 引数 | | | | | | | | | 戻り値 | | | 例外 | | | | | | | | --- | --- | --- | --- | --- | | 金融機関マスタ情報なしの場合: | | | | | | | | | | | | | ・ | 引数:指定時刻が 00:00 ~ 14:29 の場合 | | | | | | | ⇒ | 当日の営業時間に間に合うと判定。何もせず 4.の処理へ進む。 | | | | | | | | | ・ | 引数:指定時刻が 14:30 ~ 23:59 の場合 | | | | | | | ⇒ | 当日の営業時間に間に合わないと判定。引数:指定日付 を1日進めて4.の処理へ進む。 | | | | | | | | | | 例.対象の銀行の取扱時間は00:00~15:00(固定): | | | | | | | | | | | | | 指定時刻 14:29までは当日振込、 | | | | | | 指定時刻 14:30からは翌日以降の振込となる。 | | | | | | --- | --- | | : | jp.mcsystems.marui.credit.business.server.logic.publicbc.master | | : | MsFnclBC | | : | findByPKandAppointedDay | | : | 金融機関コード | | : | 金融機関支店コード | | : | 指定日付 | | : | 金融機関(支店)エンティティ | | : | EntityNotFoundException 該当レコードが存在しない場合 | | : | IllegalArgumentException 引数がnullまたは空文字の場合 | | : | MCSRuntimeException レコードが複数件存在した場合 | | | | | --- | --- | | << | 引数.金融機関コード | | << | 引数.金融機関支店コード | | << | 引数.指定日付 | | | | --- | | ※ EntityNotFoundExceptionが発生した場合は何もしないで次処理へ。 | | ※ IllegalArgumentException、MCSRuntimeExceptionが発生した場合はエラー。 | | | | | --- | --- | | ・ | 金融機関マスタ情報なし または、 | | | 金融機関マスタ情報ありかつ金融機関マスタ.休業日区分≠"1"(=年中無休でない)の場合: | | | | | --- | --- | | 6.戻り値 設定 | | | | 3.~ 5.の処理を行った結果の 引数:指定時刻 を戻り値に設定して処理終了。 | | | | --- | | (休業日区分=null,空文字の場合もカレンダーマスタを検索。) | | | | | --- | --- | | 4.ネットキャッシング銀行カレンダーマスタTBL 検索 | | | | 引数:指定日付 をキーとして、マスタTBLをPK検索する。 | | | (3.の処理で1日進めていた場合は、その日付を使用する。) | | | | --- | | ※ 検索ロジックは標準メソッドの find を使用。 | | ※ EntityNotFoundExceptionが発生した場合は MCSRuntimeException を発生させて処理終了。 | | | | | --- | --- | | 5.金融機関休業日フラグ判定 | | | | 4.で取得したマスタTBL Entityから金融機関休業日フラグを取得して判定する。 | | | | | | | --- | --- | --- | --- | | ・ | 金融機関休業日フラグ = true(休業日) の場合 | | | | | | ⇒ | 引数:指定日付 を1日進めて4.の処理へ戻る。(Loop処理) | | | | | | | --- | --- | --- | --- | | ・ | 金融機関休業日フラグ = false(休業日ではない) の場合 | | | | | | ⇒ | Loop処理を抜けて 6.の処理へ進む。 | | | | | --- | --- | | ※ | 金融機関マスタ.休業日区分="1"(年中無休)の場合は休業日なしのため休業日判定しない。 | | 機能詳細説明書 | | | | | | | | | | | | | | | | | プロジェクト | | | | | | | | | | | | | 処理名(機能名) | | | | | | | | | | | プログラム名(コマンド名) | | | | | | | 作成日 | | | | | | 担当者 | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | 次期顧客システム 債権受付 | | | | | | | | | | | | | ネットキャッシング 振込予定年月日算出I/F | | | | | | | | | | | NetCashingCalcPayIntoScdlDateBC#calcPayIntoScdlDateForNetCashing | | | | | | | 2011-11-02 | | | | | | DTS 岩崎 龍一 | | | | | | | | | --- | | 〔概要〕 | | | | | --- | --- | | 〔処理概要〕 | | | | 引数:指定日付、指定時刻 から、当日を含む未来で直近の振込予定年月日を返却します。 | | | | --- | | 〔機能概要〕 | | 《基本機能》 | | | | --- | | パッケージ | | | | | --- | --- | | : | jp.mcsystems.marui.credit.business.server.logic.publicbc.sales.cashing.net | | | | --- | | クラス | | | | | --- | --- | | : | NetCashingCalcPayIntoScdlDateBC | | | | --- | | 継承 | | | | | --- | --- | | : | なし | | | | --- | | メソッド | | | | | --- | --- | | : | calcPayIntoScdlDateForNetCashing | | | | --- | | 引数 | | | | | --- | --- | | : | (1)Date | | | (2)String | | | | --- | | 指定日付 | | 指定時刻 | | | | --- | | 戻り値 | | | | | --- | --- | | : | Date | | | | --- | | 振込予定年月日 | | | | --- | | 例外 | | | | | --- | --- | | : | なし | | | | --- | | ※引数(1)、(2)は必須項目です。 | | | | --- | | ※引数(2)の指定時刻は 時・分 を表す4桁の文字列(HHMM)で指定してください。 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | 〔使用ファイル〕 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ※エラーが発生した場合は RuntimeException を発生させます。 | | | | | | | | | No | | テーブル名 | | | | | | | | | | ID | | | | | | | I/O | | | 備考 | | | | | | | | | | | | | | | | | | 1 | | ネットキャッシング銀行カレンダーマスタ | | | | | | | | | | MS\_NETCASH\_FNCL\_CALENDAR | | | | | | | I | | | 債権受付サブ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 版 | | 日 付 | | | | | 変更担当者 | | | | | 変更内容 | | | | | | | | | | | | | | | | | | | | | | | | | | 備考 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 〔処理フロー〕 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ■ ネットキャッシング銀行カレンダーマスタ(MS\_NETCASH\_FNCL\_CALENDAR) レイアウト | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 項目名 | | | | | | | 物理名 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 当日日付 | | | | | | | TODAY\_YMD | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 金融機関休業日フラグ | | | | | | | FNCL\_CLOSED\_DAY\_FLAG | | | | --- | | 型 | | char(8) | | char(1) | | | | --- | | 備考 | | PK | | Not Null | | | | --- | | チェックNG | | | | --- | | チェックOK | | | | --- | | 00:00 ~ 14:29 | | | | --- | | 14:30 ~ 23:59 | | | | --- | | TDCKFキー:当日日付 | | | | --- | | TDCKFキー:当日日付+1日 | | | | --- | | 取得NG | | | | --- | | 取得OK | | | | --- | | フラグ=false(休業日ではない) | | | | --- | | フラグ=true(休業日) | | | | --- | | TDCKFキー+1日で再取得 | | | | --- | | 〔処理詳細〕 | | | | | --- | --- | | 1.引数チェック | | | | 引数:①.Date(指定日付)、②.String (指定時刻) のチェックを行う。 | | | エラーが発生した場合は IllegalArgumentException を発生させて処理終了。 | | | | | --- | --- | | 3.ネットキャッシング銀行カレンダーマスタTBL 検索 | | | | 引数:指定日付 をキーとして、マスタTBLをPK検索する。 | | | (2.の処理で1日進めていた場合は、その日付を使用する。) | | | | | --- | --- | | 1-1.引数Nullチェック | | | | 引数:①、② どちらかが Null だった場合はエラー。 | | | | --- | | ※ 検索ロジックは標準メソッドの find を使用。 | | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | | | | --- | --- | | 1-2.指定時刻 妥当性チェック | | | | 引数:② が4ケタ以外だった場合はエラー。 | | | また、下記クラスにて時刻の妥当性チェックを行い、チェックNGだった場合はエラー。 | | | | | --- | --- | | 4.金融機関休業日フラグ判定 | | | | 3.で取得したマスタTBL Entityから金融機関休業日フラグを取得して判定する。 | | | | | | --- | --- | --- | | ※ 時刻妥当性チェックを行うクラス | | | | | ・ | パッケージ:jp.mcsystems.marui.credit.share.util.function.date | | | ・ | クラス :Validation | | | ・ | メソッド :isValidTime | | | ・ | 引数 :①.String(時刻) | | | ・ | 戻り値 :boolean (true:チェックOK / false:チェックNG) | | | | | | | --- | --- | --- | --- | | ・ | 金融機関休業日フラグ = true(休業日) の場合 | | | | | | ⇒ | 引数:指定日付 を1日進めて3.の処理へ戻る。(Loop処理) | | | | | | | ・ | 金融機関休業日フラグ = false(休業日ではない) の場合 | | | | | | ⇒ | Loop処理を抜けて 5.の処理へ進む。 | | | | | --- | --- | | 5.戻り値 設定 | | | | 2.~ 4.の処理を行った結果の 引数:指定時刻 を戻り値に設定して処理終了。 | | | | | --- | --- | | 2.時刻判定 | | | | 引数:指定時刻 から、当日の銀行営業時間に間に合うか判定を行う。 | | | | | | | --- | --- | --- | --- | | ・ | 引数:指定時刻が 00:00 ~ 14:29 の場合 | | | | | | ⇒ | 当日の営業時間に間に合うと判定。何もせず 3.の処理へ進む。 | | | | | | | --- | --- | --- | --- | | ・ | 引数:指定時刻が 14:30 ~ 23:59 の場合 | | | | | | ⇒ | 当日の営業時間に間に合わないと判定。引数:指定日付 を1日進めて3.の処理へ進む。 |