## <変更履歴> |-----------------------------| | NO | 変更年月日 | 変更担当者 | 案件名 | 変更シート | 変更内容 | |------|---------------------|--------------|-----------------------------------------|---------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 1 | 2011-11-02 00:00:00 | DTS岩崎 | None | ネットキャッシング振込予定年月日算出(IF) | 新規作成 | | 2 | 2014-12-28 00:00:00 | DTS深田 | None | ネットキャッシング振込予定年月日算出(IF) | 現行の実装に合わせ、パッケージ、クラスを修正 | | 3 | 2018-10-25 00:00:00 | DTS青戸 | Netキャッシング即時振込サービス拡大対応 | ネットキャッシング振込予定年月日算出(IF) | 【振込キャッシング取扱時間拡張対応】 ・引数に金融機関コードを追加。 ・金融機関マスタの取得 ・時刻判定の修正 ・銀行休業日判定の修正 | | 4 | 2019-03-07 00:00:00 | DTS直木 | Netキャッシング即時振込サービス拡大対応 | ネットキャッシング振込予定年月日算出(IF) 電話キャッシング振込予定年月日算出(IF) | ・電話キャッシングの場合は現行どおり(取扱時間を拡大しない)とするため、 引数の金融機関コードと金融機関支店コードがないメソッドも復活する。 また、引数チェックも金融機関コードと金融機関支店コードはnullでもOKとする。 | | 5 | 2019-03-26 00:00:00 | DTS直木 | Netキャッシング即時振込サービス拡大対応 | ネットキャッシング振込予定年月日算出(IF) 電話キャッシング振込予定年月日算出(IF) | ・引数の金融機関支店コードをなくす。 ・金融機関マスタのカラム名決定(振込可能時間区分(PAYINTO_AVLBL_TIME_DIV) CHAR(1)) | | 6 | 2019-04-17 00:00:00 | DTS直木 | Netキャッシング即時振込サービス拡大対応 | ネットキャッシング振込予定年月日算出(IF) | ・金融機関年中無休判定の結果をCodeMasterConstantを使用するように修正。 (SalesCodeConstからCLOSED_DAY_DIV_CURRENT、CLOSED_DAY_DIV_YEAR_NONEを削除) ・戻り値をネットキャッシング振込予定ValueObjectに変更して、金融機関年中無休判定結果も返却。 | | 7 | 2019-04-17 00:00:00 | DTS直木 | Netキャッシング即時振込サービス拡大対応 | 電話キャッシング振込予定年月日算出(IF) | ・ネットキャッシング振込予定年月日算出(IF)の戻り値がVOに変更になったが、電話側に影響を出さないために、電話キャッシング振込予定年月日算出(IF)の戻り値は振込予定日を取り出し、返却する。 | | 8 | 2019-04-22 00:00:00 | DTS中野 | Netキャッシング即時振込サービス拡大対応 | ネットキャッシング振込予定年月日算出(IF) | 2.金融機関年中無休判定 金融機関マスタ.振込可能時間区分=nullのときは、『通常営業』と判断するように修正。 | | 9 | 2024-11-18 00:00:00 | DTS原川 | 振込予定日算出修正対応 | ネットキャッシング振込予定年月日算出(IF) | 0.呼び出し回数の定義 12.振込サービス停止日マスタ参照 ・振込サービス停止日マスタの検索を行い、マスタに日付が存在する場合は再帰処理で同じメソッドを呼出し、再度日付の検索を行うように修正(検索回数は最大100回) | | 10 | None | None | None | None | None | | 11 | None | None | None | None | None | | 12 | None | None | None | None | None | | 13 | None | None | None | None | None | | 14 | None | None | None | None | None | | 15 | None | None | None | None | None | | 16 | None | None | None | None | None | | 17 | None | None | None | None | None | | 18 | None | None | None | None | None | | 19 | None | None | None | None | None | | 20 | None | None | None | None | None | | 21 | None | None | None | None | None | | 22 | None | None | None | None | None | | 23 | None | None | None | None | None | | 24 | None | None | None | None | None | | 25 | None | None | None | None | None | | 26 | None | None | None | None | None | | 27 | None | None | None | None | None | | 28 | None | None | None | None | None | | 29 | None | None | None | None | None | | 30 | None | None | None | None | None | # ネットキャッシング振込予定年月日算出(IF) プロジェクト | |---------------------------------------------------------|---------------------------------------------------------|---------------------------------------------------------|---------------------------------------------------------|---------------------------------------------------------|---------------------------------------------------------|---------------------------------------------------------|---------------------------------------------------------|---------------------------------------------------------|---------------------------------------------------------|---------------------------------------------------------|---------------------------------------------------------|---------------------------------------------------------|---------------------------------------------------------|---------------------------------------------------------|---------------------------------------------------------|---------------------------------------------------------|---------------------------| 次期顧客システム 債権受付 | | 処理名(機能名) | |------------------------------------------| | ネットキャッシング 振込予定年月日算出I/F | | プログラム名(コマンド名) | |------------------------------------------------------------------| | NetCashingCalcPayIntoScdlDateBC#calcPayIntoScdlDateForNetCashing | | 作成日 | |---------------------| | 2011-11-02 00:00:00 | | 担当者 | |--------------------| | DTS 岩崎 龍一 | ## 〔概要〕 ## 〔処理概要〕 |-----------------------------| | 引数:指定日付、指定時刻 から、当日を含む未来で直近の振込予定年月日を返却します。 | |-------------------------------------------------------------------------------------| ```mermaid flowchart TD n0["ネットキャッシング振込予定年月日算出 I/F"] n19[("ネットキャッシング銀行カレンダーマスタ")] n24[("金融機関マスタ")] n27[("ネットキャッシング銀行取扱時刻マスタ")] n54[("振込サービス停止日マスタ")] n19 --> n0 n24 --> n0 n27 --> n0 n54 --> n0 classDef fillffffff fill:#ffffff,stroke:#333,stroke-width:1px class n0,n19,n24,n27,n54 fillffffff ``` ## 〔機能概要〕 |-----------------------------| | 《基本機能》 | | パッケージ | |--------------| | : | 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は発生する) | |------|-----------------------------------------| | 〔使用ファイル〕 | |-----------------------------| | No | | 1 | | 2 | | 3 | | 4 | | None | | None | | None | | None | | None | | None | | 版 | | 1.1 | | 1.2 | | 1.3 | ## 〔処理フロー〕 | ※引数(1)、(2)は必須項目です。 | |---------------------------------| | ※引数(3)、(4)は任意項目です。 | | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | ID | ID | ID | ID | ID | ID | ID | I/O | I/O | I/O | 備考 | 備考 | 備考 | 備考 | 備考 | 備考 | 備考 | 備考 | |----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------| | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | I | I | I | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | MS_FNCL | MS_FNCL | MS_FNCL | MS_FNCL | MS_FNCL | MS_FNCL | MS_FNCL | I | I | I | マスタ管理 | マスタ管理 | マスタ管理 | マスタ管理 | マスタ管理 | マスタ管理 | マスタ管理 | マスタ管理 | | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | MS_NETCASH_FNCL_HNDL_TIME | MS_NETCASH_FNCL_HNDL_TIME | MS_NETCASH_FNCL_HNDL_TIME | MS_NETCASH_FNCL_HNDL_TIME | MS_NETCASH_FNCL_HNDL_TIME | MS_NETCASH_FNCL_HNDL_TIME | MS_NETCASH_FNCL_HNDL_TIME | I | I | I | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | | 振込サービス停止日マスタ | 振込サービス停止日マスタ | 振込サービス停止日マスタ | 振込サービス停止日マスタ | 振込サービス停止日マスタ | 振込サービス停止日マスタ | 振込サービス停止日マスタ | 振込サービス停止日マスタ | 振込サービス停止日マスタ | 振込サービス停止日マスタ | MS_PAYINTO_SRVC_STP_DATE | MS_PAYINTO_SRVC_STP_DATE | MS_PAYINTO_SRVC_STP_DATE | MS_PAYINTO_SRVC_STP_DATE | MS_PAYINTO_SRVC_STP_DATE | MS_PAYINTO_SRVC_STP_DATE | MS_PAYINTO_SRVC_STP_DATE | I | I | I | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | 日 付 | 日 付 | 日 付 | 日 付 | 日 付 | 変更担当者 | 変更担当者 | 変更担当者 | 変更担当者 | 変更担当者 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | | 2018-10-25 00:00:00 | 2018-10-25 00:00:00 | 2018-10-25 00:00:00 | 2018-10-25 00:00:00 | 2018-10-25 00:00:00 | DTS青戸 | DTS青戸 | DTS青戸 | DTS青戸 | DTS青戸 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | | 2019-02-20 00:00:00 | 2019-02-20 00:00:00 | 2019-02-20 00:00:00 | 2019-02-20 00:00:00 | 2019-02-20 00:00:00 | DTS直木 | DTS直木 | DTS直木 | DTS直木 | DTS直木 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | | 2019-03-07 00:00:00 | 2019-03-07 00:00:00 | 2019-03-07 00:00:00 | 2019-03-07 00:00:00 | 2019-03-07 00:00:00 | DTS直木 | DTS直木 | DTS直木 | DTS直木 | DTS直木 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | | ※引数(2)の指定時刻は 時・分 を表す4桁の文字列(HHMM)で指定してください。 | |---------------------------------------------------------------------------| | ※エラーが発生した場合は RuntimeException を発生させます。 | |-------------------------------------------------------------| | ※このメソッドを呼ぶ際には、必ずnewでインスタンス再作成を行うこと。 | |----------------------------------------------------------------------| | (再帰処理の回数カウントをリセットするため) | | 備考 | |--------| | 備考 | | 備考 | | 備考 | ```mermaid flowchart TD n2(["START"]) n3["1.引数チェック"] n4["3.時刻判定"] n5["4.銀行カレンダーマスタ検索"] n6["5.金融機関休業日フラグ判定"] n9["11.戻り値設定"] n10(["END"]) n15["IllegalArgumentException MCSRuntimeException"] n21["2.金融機関年中無休判定"] n31["8.時刻判定"] n32["9.銀行カレンダーマスタ検索"] n33["10.金融機関休業日判定"] n41["6.銀行カレンダーマスタ検索"] n42["7.金融機関取扱時刻の取得(銀行取扱時刻マスタ検索)"] n45["MCSRuntimeException"] n51["12.振込サービス停止日マスタ参照"] n4 -->|"取扱時間外
TDCKFキー:当日日付+1日"| n5 n6 -->|"フラグ=true(休業日)
TDCKFキー+1日で再取得"| n5 n2 --> n3 n4 -->|"取扱時間内
TDCKFキー:当日日付"| n5 n6 -->|"フラグ=false
(休業日ではない)"| n9 n9 --> n51 n5 -->|"取得NG"| n15 n3 -->|"チェックNG"| n15 n15 -->|"該当なしの場合"| n10 n3 -->|"チェックOK"| n21 n21 -->|"通常営業"| n4 n5 -->|"取得OK"| n6 n31 -->|"取扱時間外
TDCKFキー:当日日付+1日"| n32 n33 -->|"金融機関取扱時刻特殊区分=#quot;0#quot;(休業日)
TDCKFキー+1日で再取得"| n32 n31 -->|"取扱時間内
TDCKFキー:当日日付"| n32 n33 -->|"フラグ=false
(休業日ではない)"| n9 n32 -->|"取得NG"| n45 n41 --> n42 n32 -->|"取得OK"| n33 n42 --> n31 n21 -->|"年中無休"| n41 n41 -->|"取得NG"| n45 n42 -->|"取得NG"| n45 n45 --> n10 n42 -->|"取得OK"| n31 n41 -->|"取得OK"| n42 n51 --> n10 n51 -->|"該当ありの場合、
再帰処理で自分自身呼び出し"| n2 classDef fillffffff fill:#ffffff,stroke:#333,stroke-width:1px class n2,n3,n4,n5,n6,n9,n10,n15,n21,n31,n32,n33,n41,n42,n45,n51 fillffffff ``` |----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 引数:指定日付(戻り値振込予定日)+1日、指定時刻:0:05で | ## 〔処理詳細〕 ### 0.呼び出し回数の定義 ### 2.金融機関年中無休判定 |-----------------------------------------| | 再起処理のカウントを行うため、メンバ変数として呼び出し回数=0を定義する。 | |----------------------------------------------------------------------------| | (メソッド内には定義せず、staticを使用しないこと) | | ・引数.金融機関コード=null または 空白 の場合: | |----------------------------------------------------| | → | 『通常営業』と判断する | |-----|--------------------------| | ・引数.金融機関支店コード=null または 空白 の場合: | |--------------------------------------------------------| | → | 『通常営業』と判断する | ### 1.引数チェック |---------------------------------| | 引数:①.Date(指定日付)、②.String (指定時刻)、③.String (金融機関コード)、 | |----------------------------------------------------------------------------| | ・上記以外の場合: | |----------------------| | ④.String(金融機関支店コード)のチェックを行う。 | |-----------------------------------------------------| | エラーが発生した場合は IllegalArgumentException を発生させて処理終了。 | |--------------------------------------------------------------------------| | 金融機関コード 、金融機関支店コード 、指定日付を条件として、金融機関マスタを検索する。 | |------------------------------------------------------------------------------------------| | パッケージ | | クラス | | メソッド | | 引数 | | : | jp.mcsystems.marui.credit.business.server.logic.publicbc.master | |------|-------------------------------------------------------------------| | : | MsFnclBC | | : | findByFnclCodeAndDate | | : | 金融機関コード | | 1-1.引数Nullチェック | |----------------------------| | 引数:①、②、③、④のどれかが Null または空白だった場合はエラー。 | |------------------------------------------------------------------| | << | 引数.金融機関コード | |------|-------------------------| | << | 引数.金融機関支店コード | | << | 引数.指定日付 | | 1-2.指定時刻 妥当性チェック | |-----------------------------------| | 金融機関支店コード | |------------------------------------------------------------------| | 指定日付 | | エンティティ配列[金融機関マスタEntity, 金融機関支店マスタEntity] | | EntityNotFoundException 該当レコードが存在しない場合 | | 引数:② が4ケタ以外だった場合はエラー。 | |--------------------------------------------------------------------------------| | また、下記クラスにて時刻の妥当性チェックを行い、チェックNGだった場合はエラー。 | | 戻り値 | |----------| | 例外 | | : | エンティティ配列[金融機関マスタEntity, 金融機関支店マスタEntity] | |------|--------------------------------------------------------------------| | : | EntityNotFoundException 該当レコードが存在しない場合 | | ※ 時刻妥当性チェックを行うクラス | |------------------------------------| | ・ | パッケージ:jp.mcsystems.marui.credit.share.util.function.date | |------|---------------------------------------------------------------| | ・ | クラス :Validation | | ・ | メソッド :isValidTime | | ・ | 引数 :①.String(時刻) | | ・ | 戻り値 :boolean (true:チェックOK / false:チェックNG) | | ・該当データなし(EntityNotFoundException発生)の場合: | |---------------------------------------------------------| | → | MCSRuntimeException を発生させて処理終了。 | |-----|----------------------------------------------| | ・金融機関マスタ.振込可能時間区分="1"(24時間可)の場合: | |------------------------------------------------------------| | → | 『年中無休』と判断する | |-----|--------------------------| | ・上記以外の場合: | |----------------------| | → | 『通常営業』と判断する | |-----|--------------------------| | ・金融機関マスタ.振込可能時間区分=nullの場合: | |--------------------------------------------------| | → | 『通常営業』と判断する | |-----|--------------------------| | (20190422修正) | |------------------| | ・上記以外の場合: | |----------------------| | (20190417修正) | |------------------| | → | 金融機関マスタ.振込可能時間区分をそのまま | ## 〔処理詳細〕つづき |-----------------------------------| | ・『通常営業』の場合: | |--------------------------| | (2019/02/20判断を追加) | |--------------------------| | ・『通常営業』以外の場合: | |------------------------------| | (2019/2/20追加) | ### 3.時刻判定 ### 6.ネットキャッシング銀行カレンダーマスタTBL 検索 |-------------------------------------------------------------------| | 引数:指定時刻 から、当日の銀行営業時間に間に合うか判定を行う。 | |-------------------------------------------------------------------| | 引数:指定日付 をキーとして、マスタTBLをPK検索する。 | |-----------------------------------------------------------------------------| | ※ 検索ロジックは標準メソッドの find を使用。 | | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | ・ | 引数:指定時刻が 00:00 ~ 14:29 の場合 | |------|--------------------------------------------| | ⇒ | 当日の営業時間に間に合うと判定。何もせず 4.の処理へ進む。 | |-----|---------------------------------------------------------------| | ・ | 引数:指定時刻が 14:30 ~ 23:59 の場合 | ### 7.金融機関取扱時刻の取得 |-------------------------------------------| | ⇒ | 当日の営業時間に間に合わないと判定。引数:指定日付 を1日進めて4.の処理へ進む。 | |-----|-------------------------------------------------------------------------------------| | 引数:指定日付 から、当日の銀行営業時間を取得する。 | |-------------------------------------------------------| | ・ | 項番6:ネットキャッシング銀行カレンダーマスタ.金融機関取扱時刻特殊区分="0"(休業日)の場合: | ### 4.ネットキャッシング銀行カレンダーマスタTBL 検索 |-------------------------------------------------------------------| | ⇒ | 当日は休業日と判定。引数:指定日付 を1日進めて9.の処理へ進む。 | |-----|---------------------------------------------------------------------| | 引数:指定日付 をキーとして、マスタTBLをPK検索する。 | |----------------------------------------------------------| | (3.の処理で1日進めていた場合は、その日付を使用する。) | | ・ | 項番6:ネットキャッシング銀行カレンダーマスタ.金融機関取扱時刻特殊区分=nullの場合: | |------|-------------------------------------------------------------------------| | ⇒ | 引数:指定日付から曜日区分を求め、ネットキャッシング銀行取扱時刻マスタを検索する。 | |-----|---------------------------------------------------------------------------| | ※ 検索ロジックは標準メソッドの find を使用。 | |-----------------------------------------------------------------------------| | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | TBL:ネットキャッシング銀行取扱時刻マスタ | |-----------------------------------------------------------------------------| | 条件:金融機関取扱時刻特殊区分 = TO_CHAR(引数:指定日付,'D') | | AND DELETE_TSTAMP IS NULL | | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | ### 5.金融機関休業日フラグ判定 |---------------------------------------------| | 4.で取得したマスタTBL Entityから金融機関休業日フラグを取得して判定する。 | |------------------------------------------------------------------------------| | ・ | 上記以外の場合: | |------|--------------------| | ⇒ | カレンダーマスタ.金融機関取扱時刻特殊区分を条件に、ネットキャッシング銀行取扱時刻マスタを検索する。 | |-----|-------------------------------------------------------------------------------------| | ・ | 金融機関休業日フラグ = true(休業日) の場合 | |------|-----------------------------------------------| | TBL:ネットキャッシング銀行取扱時刻マスタ | |-----------------------------------------------------------------------------| | 条件:金融機関取扱時刻特殊区分 = 項番6:カレンダーマスタ.金融機関取扱時刻特殊区分 | | AND DELETE_TSTAMP IS NULL | | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | ⇒ | 引数:指定日付 を1日進めて4.の処理へ戻る。(Loop処理) | |-----|-----------------------------------------------------------| | ・ | 金融機関休業日フラグ = false(休業日ではない) の場合 | |------|--------------------------------------------------------| | ⇒ | Loop処理を抜けて 11.の処理へ進む。 | ### 8.時刻判定 |-----------------------------| | 引数:指定時刻 から、当日の銀行営業時間に間に合うか判定を行う。 | |-------------------------------------------------------------------| | ・ | 引数:指定時刻が 00:00 ~ (項番7:ネットキャッシング銀行取扱時刻マスタ.取扱終了時間 - 31分) の場合 | |------|---------------------------------------------------------------------------------------------| | ⇒ | 当日の営業時間に間に合うと判定。何もせず 9.の処理へ進む。 | |-----|---------------------------------------------------------------| | ・ | 引数:指定時刻が (項番7:ネットキャッシング銀行取扱時刻マスタ.取扱終了時間 - 30分)~ 23:59 の場合 | |------|---------------------------------------------------------------------------------------------| | ⇒ | 当日の営業時間に間に合わないと判定。引数:指定日付 を1日進めて9.の処理へ進む。 | ## 〔処理詳細〕つづき ### 12.振込サービス停止日マスタ参照 ### 9.ネットキャッシング銀行カレンダーマスタTBL 検索 |-------------------------------------------------------------------| | 引数:指定日付 をキーとして、マスタTBLをPK検索する。 | |--------------------------------------------------------------| | (7~8.の処理で1日進めていた場合は、その日付を使用する。) | | (1).以下のメソッドを呼び出し、振込サービス停止日マスタを検索する。 | |----------------------------------------------------------------------| | パッケージ | | クラス | | メソッド | | 引数 | | 戻り値 | | 例外 | | : | jp.mcsystems.marui.credit.eis.dao | |------|-----------------------------------------------------------| | : | MsPayintoSrvcStpDateManager | | : | find | | : | 振込サービス停止日 | | : | MsPayintoSrvcStpDateEntity 振込サービス停止日マスタEntity | | : | EntityNotFoundException 該当レコードが存在しない場合 | | ※ 検索ロジックは標準メソッドの find を使用。 | |-----------------------------------------------------------------------------| | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | << | 11.ネットキャッシング振込予定VO.振込予定年月日 | |------|-----------------------------------------------------| | 9.で取得したマスタTBL Entityから金融機関取扱時刻特殊区分を取得して判定する。 | |----------------------------------------------------------------------------------| | ・該当レコードが存在しない(EntityNotFoundException発生)場合: | |-----------------------------------------------------------------| | →11.で設定したネットキャッシング振込予定VOを返却して処理を終了する。 | |---------------------------------------------------------------------------| | ・ | 金融機関取扱時刻特殊区分= "0"(休業日) の場合 | |------|-------------------------------------------------| | ⇒ | 引数:指定日付 を1日進めて9.の処理へ戻る。(Loop処理) | |-----|-----------------------------------------------------------| | ・0.呼び出し回数 = 100の場合: | |------------------------------------| | →MCSRuntimeException を発生させて処理を終了する。 | |-----------------------------------------------------| | ・ | 上記以外の場合 | |------|------------------| | ⇒ | Loop処理を抜けて 11.の処理へ進む。 | |-----|-----------------------------------------| | (2).振込予定年月日を+1日し、再度当メソッドを呼び出す。 | |--------------------------------------------------------------------| | 0.呼び出し回数を+1、振込予定年月日を+1日し、 | | 再度直近の振込予定年月日を算出して戻り値を返却して処理を終了する。 | | パッケージ | | クラス | | メソッド | | 引数 | | : | jp.mcsystems.marui.credit.business.server.logic.publicbc.sales.cashing.net | |------|------------------------------------------------------------------------------| | : | NetCashingCalcPayIntoScdlDateBC | | : | calcPayIntoScdlDateForNetCashing | | : | (1)指定日付 | ### 11.戻り値 設定 |----------------------------------| | 3.~ 10.の処理を行った結果の 引数:指定日付 をjava,sql.Dateに変換して返却。処理終了。 | |----------------------------------------------------------------------------------------------| | << | 11.ネットキャッシング振込予定VO.振込予定年月日 + 1日 | |------|-----------------------------------------------------------| | << | "0005"(00:05) | | << | 引数:金融機関コード | | (20190417修正) | |------------------| | (2)指定時刻 | |-------------------------------------------------------------| | (3)金融機関コード | | NetCashingCalcPayIntoScdlValue ネットキャッシング振込予定VO | | なし | | ネットキャッシング振込予定ValueObjectを生成して、下記項目を設定して返却。処理終了。 | |---------------------------------------------------------------------------------------| | ネットキャッシング振込予定ValueObjectを生成して、下記項目を設定する。 | | 項目名 | | 振込予定年月日 | | 戻り値 | |----------| | 例外 | | : | NetCashingCalcPayIntoScdlValue ネットキャッシング振込予定VO | |------|---------------------------------------------------------------| | : | なし | | セット内容 | |-----------------------------------------------| | 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 | # 電話キャッシング振込予定年月日算出(IF) プロジェクト | |-------------------------------------------------------|-------------------------------------------------------|-------------------------------------------------------|-------------------------------------------------------|-------------------------------------------------------|-------------------------------------------------------|-------------------------------------------------------|-------------------------------------------------------|-------------------------------------------------------|-------------------------------------------------------|-------------------------------------------------------|-------------------------------------------------------|-------------------------------------------------------|-------------------------------------------------------|-------------------------------------------------------|-------------------------------------------------------|-------------------------------------------------------|---------------------------| 次期顧客システム 債権受付 | | 処理名(機能名) | |----------------------------------------| | 電話キャッシング 振込予定年月日算出I/F | | プログラム名(コマンド名) | |------------------------------------------------------------------| | NetCashingCalcPayIntoScdlDateBC#calcPayIntoScdlDateForNetCashing | | 作成日 | |---------------------| | 2019-03-07 00:00:00 | | 担当者 | |--------------------| | DTS 直木 奈苗 | ## 〔概要〕 ## 〔処理概要〕 |-----------------------------| | 引数:指定日付、指定時刻 から、当日を含む未来で直近の振込予定年月日を返却します。 | |-------------------------------------------------------------------------------------| ```mermaid flowchart TD n56["電話キャッシング振込予定年月日算出 I/F"] n57["ネットキャッシング振込予定年月日算出 I/F"] n56 --> n57 classDef fillffffff fill:#ffffff,stroke:#333,stroke-width:1px class n56,n57 fillffffff ``` ## 〔機能概要〕 |-----------------------------| | 《基本機能》 | | パッケージ | |--------------| | : | jp.mcsystems.marui.credit.business.server.logic.publicbc.sales.cashing.net | |------|------------------------------------------------------------------------------| | クラス | |----------| | : | NetCashingCalcPayIntoScdlDateBC | |------|-----------------------------------| | 継承 | |--------| | : | なし | |------|--------| | メソッド | |------------| | : | calcPayIntoScdlDateForNetCashing | |------|------------------------------------| | 引数 | |--------| | : | (1)Date | |------|-----------| | 指定日付 | |------------| | 指定時刻 | | (2)String | |-------------| | 戻り値 | |----------| | : | Date | |------|--------| | 振込予定年月日 | |------------------| | 例外 | |--------| | : | なし(MCSRuntimeExceptionは発生する) | |------|-----------------------------------------| | ※引数(1)、(2)は必須項目です。 | |---------------------------------| | 〔使用ファイル〕 | |---------------------------| | No | | None | | None | | None | | None | | None | | None | | None | | None | | None | | None | | 版 | | 1.1 | | None | | None | ## 〔処理詳細〕 | ※引数(2)の指定時刻は 時・分 を表す4桁の文字列(HHMM)で指定してください。 | |---------------------------------------------------------------------------| | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | ID | ID | ID | ID | ID | ID | ID | I/O | I/O | I/O | 備考 | 備考 | 備考 | 備考 | 備考 | 備考 | 備考 | 備考 | |---------------------|---------------------|---------------------|---------------------|---------------------|--------------|--------------|--------------|--------------|--------------|---------------------------------------------------------------|---------------------------------------------------------------|---------------------------------------------------------------|---------------------------------------------------------------|---------------------------------------------------------------|---------------------------------------------------------------|---------------------------------------------------------------|---------------------------------------------------------------|---------------------------------------------------------------|---------------------------------------------------------------|---------------------------------------------------------------|---------------------------------------------------------------|---------------------------------------------------------------|---------------------------------------------------------------|---------------------------------------------------------------|---------------------------------------------------------------|---------------------------------------------------------------|---------------------------------------------------------------| | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | 日 付 | 日 付 | 日 付 | 日 付 | 日 付 | 変更担当者 | 変更担当者 | 変更担当者 | 変更担当者 | 変更担当者 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | | 2019-03-07 00:00:00 | 2019-03-07 00:00:00 | 2019-03-07 00:00:00 | 2019-03-07 00:00:00 | 2019-03-07 00:00:00 | DTS直木 | DTS直木 | DTS直木 | DTS直木 | DTS直木 | 【Netキャッシング即時振込サービス拡大対応】電話キャッシング用 | 【Netキャッシング即時振込サービス拡大対応】電話キャッシング用 | 【Netキャッシング即時振込サービス拡大対応】電話キャッシング用 | 【Netキャッシング即時振込サービス拡大対応】電話キャッシング用 | 【Netキャッシング即時振込サービス拡大対応】電話キャッシング用 | 【Netキャッシング即時振込サービス拡大対応】電話キャッシング用 | 【Netキャッシング即時振込サービス拡大対応】電話キャッシング用 | 【Netキャッシング即時振込サービス拡大対応】電話キャッシング用 | 【Netキャッシング即時振込サービス拡大対応】電話キャッシング用 | 【Netキャッシング即時振込サービス拡大対応】電話キャッシング用 | 【Netキャッシング即時振込サービス拡大対応】電話キャッシング用 | 【Netキャッシング即時振込サービス拡大対応】電話キャッシング用 | 【Netキャッシング即時振込サービス拡大対応】電話キャッシング用 | 【Netキャッシング即時振込サービス拡大対応】電話キャッシング用 | 【Netキャッシング即時振込サービス拡大対応】電話キャッシング用 | 【Netキャッシング即時振込サービス拡大対応】電話キャッシング用 | 【Netキャッシング即時振込サービス拡大対応】電話キャッシング用 | 【Netキャッシング即時振込サービス拡大対応】電話キャッシング用 | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | ※エラーが発生した場合は RuntimeException を発生させます。 | |-------------------------------------------------------------| | 備考 | |--------| | 備考 | | 備考 | | 備考 | ### 1.ネットキャッシング振込予定年月日算出(IF)の呼び出し |-----------------------------------------------------------------------| | ネットキャッシング振込予定年月日算出IFを呼び出す。 | |--------------------------------------------------------------------------------| | ただし、取扱時間サービス拡大はしないため、金融機関コードと金融機関支店コードは | | セットしないで、通常営業として振込予定年月日を算出する。 | | パッケージ | |-----------| | クラス | | メソッド | | 引数 | | : | jp.mcsystems.marui.credit.business.server.logic.publicbc.sales.cashing.net | |------|------------------------------------------------------------------------------| | : | NetCashingCalcPayIntoScdlDateBC | | : | calcPayIntoScdlDateForNetCashing | | : | (1)Date | | 指定日付 | |--------------------| | 指定時刻 | | 金融機関コード | | 金融機関支店コード | | << | 引数.指定日付 | |------|-----------------| | << | 引数.指定時刻 | | << | null | | << | null | | (2)String | |---------------------------------------------------------------------| | (3)String | | (4)String | | NetCashingCalcPayIntoScdlValue ネットキャシング振込予定ValueObject | | なし(MCSRuntimeExceptionは発生する) | | 戻り値 | |----------| | 例外 | | : | NetCashingCalcPayIntoScdlValue ネットキャシング振込予定ValueObject | |------|-----------------------------------------------------------------------| | : | なし(MCSRuntimeExceptionは発生する) | ### 2.振込予定年月日の返却 |-----------------------------------------| | 処理1の戻り値VO.振込予定年月日をそのまま返却する。 | # BK20190422 プロジェクト | |---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------| 次期顧客システム 債権受付 | | 処理名(機能名) | |------------------------------------------| | ネットキャッシング 振込予定年月日算出I/F | | プログラム名(コマンド名) | |------------------------------------------------------------------| | NetCashingCalcPayIntoScdlDateBC#calcPayIntoScdlDateForNetCashing | | 作成日 | |---------------------| | 2011-11-02 00:00:00 | | 担当者 | |--------------------| | DTS 岩崎 龍一 | ## 〔概要〕 ## 〔処理概要〕 |-----------------------------| | 引数:指定日付、指定時刻 から、当日を含む未来で直近の振込予定年月日を返却します。 | |-------------------------------------------------------------------------------------| ```mermaid flowchart TD n59["ネットキャッシング振込予定年月日算出 I/F"] n78[("ネットキャッシング銀行カレンダーマスタ")] n83[("金融機関マスタ")] n86[("ネットキャッシング銀行取扱時刻マスタ")] n78 --> n59 n83 --> n59 n86 --> n59 classDef fillffffff fill:#ffffff,stroke:#333,stroke-width:1px class n59,n78,n83,n86 fillffffff ``` ## 〔機能概要〕 |-----------------------------| | 《基本機能》 | | パッケージ | |--------------| | : | 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は発生する) | |------|-----------------------------------------| | 〔使用ファイル〕 | |-----------------------------| | No | | 1 | | 2 | | 3 | | None | | None | | None | | None | | None | | None | | None | | 版 | | 1.1 | | 1.2 | | 1.3 | ## 〔処理フロー〕 | ※引数(1)、(2)は必須項目です。 | |---------------------------------| | ※引数(3)、(4)は任意項目です。 | | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | ID | ID | ID | ID | ID | ID | ID | I/O | I/O | I/O | 備考 | 備考 | 備考 | 備考 | 備考 | 備考 | 備考 | 備考 | |----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------| | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | I | I | I | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | MS_FNCL | MS_FNCL | MS_FNCL | MS_FNCL | MS_FNCL | MS_FNCL | MS_FNCL | I | I | I | マスタ管理 | マスタ管理 | マスタ管理 | マスタ管理 | マスタ管理 | マスタ管理 | マスタ管理 | マスタ管理 | | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | MS_NETCASH_FNCL_HNDL_TIME | MS_NETCASH_FNCL_HNDL_TIME | MS_NETCASH_FNCL_HNDL_TIME | MS_NETCASH_FNCL_HNDL_TIME | MS_NETCASH_FNCL_HNDL_TIME | MS_NETCASH_FNCL_HNDL_TIME | MS_NETCASH_FNCL_HNDL_TIME | I | I | I | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | 日 付 | 日 付 | 日 付 | 日 付 | 日 付 | 変更担当者 | 変更担当者 | 変更担当者 | 変更担当者 | 変更担当者 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | | 2018-10-25 00:00:00 | 2018-10-25 00:00:00 | 2018-10-25 00:00:00 | 2018-10-25 00:00:00 | 2018-10-25 00:00:00 | DTS青戸 | DTS青戸 | DTS青戸 | DTS青戸 | DTS青戸 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | | 2019-02-20 00:00:00 | 2019-02-20 00:00:00 | 2019-02-20 00:00:00 | 2019-02-20 00:00:00 | 2019-02-20 00:00:00 | DTS直木 | DTS直木 | DTS直木 | DTS直木 | DTS直木 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | | 2019-03-07 00:00:00 | 2019-03-07 00:00:00 | 2019-03-07 00:00:00 | 2019-03-07 00:00:00 | 2019-03-07 00:00:00 | DTS直木 | DTS直木 | DTS直木 | DTS直木 | DTS直木 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | | ※引数(2)の指定時刻は 時・分 を表す4桁の文字列(HHMM)で指定してください。 | |---------------------------------------------------------------------------| | ※エラーが発生した場合は RuntimeException を発生させます。 | |-------------------------------------------------------------| | 備考 | |--------| | 備考 | | 備考 | | 備考 | ```mermaid flowchart TD n61(["START"]) n62["1.引数チェック"] n63["3.時刻判定"] n64["4.銀行カレンダーマスタ検索"] n65["5.金融機関休業日フラグ判定"] n68["11.戻り値設定"] n69(["END"]) n74["IllegalArgumentException MCSRuntimeException"] n80["2.金融機関年中無休判定"] n90["8.時刻判定"] n91["9.銀行カレンダーマスタ検索"] n92["10.金融機関休業日判定"] n100["6.銀行カレンダーマスタ検索"] n101["7.金融機関取扱時刻の取得(銀行取扱時刻マスタ検索)"] n104["MCSRuntimeException"] n63 -->|"取扱時間外
TDCKFキー:当日日付+1日"| n64 n65 -->|"フラグ=true(休業日)
TDCKFキー+1日で再取得"| n64 n61 --> n62 n63 -->|"取扱時間内
TDCKFキー:当日日付"| n64 n65 -->|"フラグ=false
(休業日ではない)"| n68 n68 --> n69 n64 -->|"取得NG"| n74 n62 -->|"チェックNG"| n74 n74 --> n69 n62 -->|"チェックOK"| n80 n80 -->|"通常営業"| n63 n64 -->|"取得OK"| n65 n90 -->|"取扱時間外
TDCKFキー:当日日付+1日"| n91 n92 -->|"金融機関取扱時刻特殊区分=#quot;0#quot;(休業日)
TDCKFキー+1日で再取得"| n91 n90 -->|"取扱時間内
TDCKFキー:当日日付"| n91 n92 -->|"フラグ=false
(休業日ではない)"| n68 n91 -->|"取得NG"| n104 n100 --> n101 n91 -->|"取得OK"| n92 n101 --> n90 n80 -->|"年中無休"| n100 n100 -->|"取得NG"| n104 n101 -->|"取得NG"| n104 n104 --> n69 n101 -->|"取得OK"| n90 n100 -->|"取得OK"| n101 classDef fillffffff fill:#ffffff,stroke:#333,stroke-width:1px class n61,n62,n63,n64,n65,n68,n69,n74,n80,n90,n91,n92,n100,n101,n104 fillffffff ``` ## 〔処理詳細〕 ### 1.引数チェック ### 2.金融機関年中無休判定 |-----------------------------------------| | 引数:①.Date(指定日付)、②.String (指定時刻)、③.String (金融機関コード)、 | |----------------------------------------------------------------------------| | ④.String(金融機関支店コード)のチェックを行う。 | |-----------------------------------------------------| | ・引数.金融機関コード=null または 空白 の場合: | |----------------------------------------------------| | エラーが発生した場合は IllegalArgumentException を発生させて処理終了。 | |--------------------------------------------------------------------------| | → | 『通常営業』と判断する | |-----|--------------------------| | ・引数.金融機関支店コード=null または 空白 の場合: | |--------------------------------------------------------| | 1-1.引数Nullチェック | |----------------------------| | → | 『通常営業』と判断する | |-----|--------------------------| | 引数:①、②、③、④のどれかが Null または空白だった場合はエラー。 | |------------------------------------------------------------------| | ・上記以外の場合: | |----------------------| | 1-2.指定時刻 妥当性チェック | |-----------------------------------| | 引数:② が4ケタ以外だった場合はエラー。 | |--------------------------------------------------------------------------------| | また、下記クラスにて時刻の妥当性チェックを行い、チェックNGだった場合はエラー。 | | 金融機関コード 、金融機関支店コード 、指定日付を条件として、金融機関マスタを検索する。 | |------------------------------------------------------------------------------------------| | パッケージ | | クラス | | メソッド | | 引数 | | : | jp.mcsystems.marui.credit.business.server.logic.publicbc.master | |------|-------------------------------------------------------------------| | : | MsFnclBC | | : | findByFnclCodeAndDate | | : | 金融機関コード | | ※ 時刻妥当性チェックを行うクラス | |------------------------------------| | ・ | パッケージ:jp.mcsystems.marui.credit.share.util.function.date | |------|---------------------------------------------------------------| | ・ | クラス :Validation | | ・ | メソッド :isValidTime | | ・ | 引数 :①.String(時刻) | | ・ | 戻り値 :boolean (true:チェックOK / false:チェックNG) | | << | 引数.金融機関コード | |------|-------------------------| | << | 引数.金融機関支店コード | | << | 引数.指定日付 | | 金融機関支店コード | |------------------------------------------------------------------| | 指定日付 | | エンティティ配列[金融機関マスタEntity, 金融機関支店マスタEntity] | | EntityNotFoundException 該当レコードが存在しない場合 | | 戻り値 | |----------| | 例外 | | : | エンティティ配列[金融機関マスタEntity, 金融機関支店マスタEntity] | |------|--------------------------------------------------------------------| | : | EntityNotFoundException 該当レコードが存在しない場合 | | ・該当データなし(EntityNotFoundException発生)の場合: | |---------------------------------------------------------| | → | MCSRuntimeException を発生させて処理終了。 | |-----|----------------------------------------------| | ・金融機関マスタ.振込可能時間区分="1"(24時間可)の場合: | |------------------------------------------------------------| | → | 『年中無休』と判断する | |-----|--------------------------| | ・上記以外の場合: | |----------------------| | → | 『通常営業』と判断する | |-----|--------------------------| | ・上記以外の場合: | |----------------------| | (20190417修正) | |------------------| | → | 金融機関マスタ.振込可能時間区分をそのまま | ## 〔処理詳細〕つづき |-----------------------------------| | ・『通常営業』の場合: | |--------------------------| | (2019/02/20判断を追加) | |--------------------------| | ・『通常営業』以外の場合: | |------------------------------| | (2019/2/20追加) | ### 3.時刻判定 ### 6.ネットキャッシング銀行カレンダーマスタTBL 検索 |-------------------------------------------------------------------| | 引数:指定時刻 から、当日の銀行営業時間に間に合うか判定を行う。 | |-------------------------------------------------------------------| | 引数:指定日付 をキーとして、マスタTBLをPK検索する。 | |-----------------------------------------------------------------------------| | ※ 検索ロジックは標準メソッドの find を使用。 | | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | ・ | 引数:指定時刻が 00:00 ~ 14:29 の場合 | |------|--------------------------------------------| | ⇒ | 当日の営業時間に間に合うと判定。何もせず 4.の処理へ進む。 | |-----|---------------------------------------------------------------| | ・ | 引数:指定時刻が 14:30 ~ 23:59 の場合 | ### 7.金融機関取扱時刻の取得 |-------------------------------------------| | ⇒ | 当日の営業時間に間に合わないと判定。引数:指定日付 を1日進めて4.の処理へ進む。 | |-----|-------------------------------------------------------------------------------------| | 引数:指定日付 から、当日の銀行営業時間を取得する。 | |-------------------------------------------------------| | ・ | 項番6:ネットキャッシング銀行カレンダーマスタ.金融機関取扱時刻特殊区分="0"(休業日)の場合: | ### 4.ネットキャッシング銀行カレンダーマスタTBL 検索 |-------------------------------------------------------------------| | ⇒ | 当日は休業日と判定。引数:指定日付 を1日進めて9.の処理へ進む。 | |-----|---------------------------------------------------------------------| | 引数:指定日付 をキーとして、マスタTBLをPK検索する。 | |----------------------------------------------------------| | (3.の処理で1日進めていた場合は、その日付を使用する。) | | ・ | 項番6:ネットキャッシング銀行カレンダーマスタ.金融機関取扱時刻特殊区分=nullの場合: | |------|-------------------------------------------------------------------------| | ⇒ | 引数:指定日付から曜日区分を求め、ネットキャッシング銀行取扱時刻マスタを検索する。 | |-----|---------------------------------------------------------------------------| | ※ 検索ロジックは標準メソッドの find を使用。 | |-----------------------------------------------------------------------------| | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | TBL:ネットキャッシング銀行取扱時刻マスタ | |-----------------------------------------------------------------------------| | 条件:金融機関取扱時刻特殊区分 = TO_CHAR(引数:指定日付,'D') | | AND DELETE_TSTAMP IS NULL | | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | ### 5.金融機関休業日フラグ判定 |---------------------------------------------| | 4.で取得したマスタTBL Entityから金融機関休業日フラグを取得して判定する。 | |------------------------------------------------------------------------------| | ・ | 上記以外の場合: | |------|--------------------| | ⇒ | カレンダーマスタ.金融機関取扱時刻特殊区分を条件に、ネットキャッシング銀行取扱時刻マスタを検索する。 | |-----|-------------------------------------------------------------------------------------| | ・ | 金融機関休業日フラグ = true(休業日) の場合 | |------|-----------------------------------------------| | TBL:ネットキャッシング銀行取扱時刻マスタ | |-----------------------------------------------------------------------------| | 条件:金融機関取扱時刻特殊区分 = 項番6:カレンダーマスタ.金融機関取扱時刻特殊区分 | | AND DELETE_TSTAMP IS NULL | | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | ⇒ | 引数:指定日付 を1日進めて4.の処理へ戻る。(Loop処理) | |-----|-----------------------------------------------------------| | ・ | 金融機関休業日フラグ = false(休業日ではない) の場合 | |------|--------------------------------------------------------| | ⇒ | Loop処理を抜けて 11.の処理へ進む。 | ### 8.時刻判定 |-----------------------------| | 引数:指定時刻 から、当日の銀行営業時間に間に合うか判定を行う。 | |-------------------------------------------------------------------| | ・ | 引数:指定時刻が 00:00 ~ (項番7:ネットキャッシング銀行取扱時刻マスタ.取扱終了時間 - 31分) の場合 | |------|---------------------------------------------------------------------------------------------| | ⇒ | 当日の営業時間に間に合うと判定。何もせず 9.の処理へ進む。 | |-----|---------------------------------------------------------------| | ・ | 引数:指定時刻が (項番7:ネットキャッシング銀行取扱時刻マスタ.取扱終了時間 - 30分)~ 23:59 の場合 | |------|---------------------------------------------------------------------------------------------| | ⇒ | 当日の営業時間に間に合わないと判定。引数:指定日付 を1日進めて9.の処理へ進む。 | ## 〔処理詳細〕つづき ### 11.戻り値 設定 ### 9.ネットキャッシング銀行カレンダーマスタTBL 検索 |-------------------------------------------------------------------| | 3.~ 10.の処理を行った結果の 引数:指定日付 をjava,sql.Dateに変換して返却。処理終了。 | |----------------------------------------------------------------------------------------------| | 引数:指定日付 をキーとして、マスタTBLをPK検索する。 | |--------------------------------------------------------------| | (7~8.の処理で1日進めていた場合は、その日付を使用する。) | | (20190417修正) | |------------------| | ネットキャッシング振込予定ValueObjectを生成して、下記項目を設定して返却。処理終了。 | |---------------------------------------------------------------------------------------| | 項目名 | | 振込予定年月日 | | セット内容 | |-----------------------------------------------| | 3.~ 10.の処理を行った結果の 引数:指定日付を | | java,sql.Dateに変換してセットする。 | | 2.金融機関年中無休判定の結果 | | ※ 検索ロジックは標準メソッドの find を使用。 | |-----------------------------------------------------------------------------| | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | 振込可能時間区分 | ### 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 | # BK20190307 プロジェクト | |---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------| 次期顧客システム 債権受付 | | 処理名(機能名) | |------------------------------------------| | ネットキャッシング 振込予定年月日算出I/F | | プログラム名(コマンド名) | |------------------------------------------------------------------| | NetCashingCalcPayIntoScdlDateBC#calcPayIntoScdlDateForNetCashing | | 作成日 | |---------------------| | 2011-11-02 00:00:00 | | 担当者 | |--------------------| | DTS 岩崎 龍一 | ## 〔概要〕 ## 〔処理概要〕 |-----------------------------| | 引数:指定日付、指定時刻 から、当日を含む未来で直近の振込予定年月日を返却します。 | |-------------------------------------------------------------------------------------| ```mermaid flowchart TD n110["ネットキャッシング振込予定年月日算出 I/F"] n129[("ネットキャッシング銀行カレンダーマスタ")] n134[("金融機関マスタ TBL")] n137[("金融機関支店マスタ TBL")] n140[("ネットキャッシング銀行取扱時刻マスタ")] n129 --> n110 n134 --> n110 n137 --> n110 n140 --> n110 classDef fillffffff fill:#ffffff,stroke:#333,stroke-width:1px class n110,n129,n134,n137,n140 fillffffff ``` ## 〔機能概要〕 |-----------------------------| | 《基本機能》 | | パッケージ | |--------------| | : | 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)は必須項目です。 | |-------------------------------------------| | 〔使用ファイル〕 | |-----------------------------| | No | | 1 | | 2 | | 3 | | 4 | | None | | None | | None | | None | | None | | None | | 版 | | 1.1 | | 1.2 | | None | ## 〔処理フロー〕 | ※引数(2)の指定時刻は 時・分 を表す4桁の文字列(HHMM)で指定してください。 | |---------------------------------------------------------------------------| | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | ID | ID | ID | ID | ID | ID | ID | I/O | I/O | I/O | 備考 | 備考 | 備考 | 備考 | 備考 | 備考 | 備考 | 備考 | |----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------| | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | I | I | I | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | MS_FNCL | MS_FNCL | MS_FNCL | MS_FNCL | MS_FNCL | MS_FNCL | MS_FNCL | I | I | I | マスタ管理 | マスタ管理 | マスタ管理 | マスタ管理 | マスタ管理 | マスタ管理 | マスタ管理 | マスタ管理 | | 金融機関支店マスタ | 金融機関支店マスタ | 金融機関支店マスタ | 金融機関支店マスタ | 金融機関支店マスタ | 金融機関支店マスタ | 金融機関支店マスタ | 金融機関支店マスタ | 金融機関支店マスタ | 金融機関支店マスタ | MS_FNCL_BRANCH | MS_FNCL_BRANCH | MS_FNCL_BRANCH | MS_FNCL_BRANCH | MS_FNCL_BRANCH | MS_FNCL_BRANCH | MS_FNCL_BRANCH | I | I | I | マスタ管理 | マスタ管理 | マスタ管理 | マスタ管理 | マスタ管理 | マスタ管理 | マスタ管理 | マスタ管理 | | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | ネットキャッシング銀行取扱時刻マスタ | MS_NETCASH_FNCL_HNDL_TIME | MS_NETCASH_FNCL_HNDL_TIME | MS_NETCASH_FNCL_HNDL_TIME | MS_NETCASH_FNCL_HNDL_TIME | MS_NETCASH_FNCL_HNDL_TIME | MS_NETCASH_FNCL_HNDL_TIME | MS_NETCASH_FNCL_HNDL_TIME | I | I | I | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | 日 付 | 日 付 | 日 付 | 日 付 | 日 付 | 変更担当者 | 変更担当者 | 変更担当者 | 変更担当者 | 変更担当者 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | | 2018-10-25 00:00:00 | 2018-10-25 00:00:00 | 2018-10-25 00:00:00 | 2018-10-25 00:00:00 | 2018-10-25 00:00:00 | DTS青戸 | DTS青戸 | DTS青戸 | DTS青戸 | DTS青戸 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | | 2019-02-20 00:00:00 | 2019-02-20 00:00:00 | 2019-02-20 00:00:00 | 2019-02-20 00:00:00 | 2019-02-20 00:00:00 | DTS直木 | DTS直木 | DTS直木 | DTS直木 | DTS直木 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | ※エラーが発生した場合は RuntimeException を発生させます。 | |-------------------------------------------------------------| | 備考 | |--------| | 備考 | | 備考 | | 備考 | ```mermaid flowchart TD n112(["START"]) n113["1.引数チェック"] n114["3.時刻判定"] n115["4.銀行カレンダーマスタ検索"] n116["5.金融機関休業日フラグ判定"] n119["11.戻り値設定"] n120(["END"]) n125["IllegalArgumentException MCSRuntimeException"] n131["2.金融機関年中無休判定"] n144["8.時刻判定"] n145["9.銀行カレンダーマスタ検索"] n146["10.金融機関休業日判定"] n154["6.銀行カレンダーマスタ検索"] n155["7.金融機関取扱時刻の取得(銀行取扱時刻マスタ検索)"] n158["MCSRuntimeException"] n114 -->|"取扱時間外
TDCKFキー:当日日付+1日"| n115 n116 -->|"フラグ=true(休業日)
TDCKFキー+1日で再取得"| n115 n112 --> n113 n114 -->|"取扱時間内
TDCKFキー:当日日付"| n115 n116 -->|"フラグ=false
(休業日ではない)"| n119 n119 --> n120 n115 -->|"取得NG"| n125 n113 -->|"チェックNG"| n125 n125 --> n120 n113 -->|"チェックOK"| n131 n131 -->|"通常営業"| n114 n115 -->|"取得OK"| n116 n144 -->|"取扱時間外
TDCKFキー:当日日付+1日"| n145 n146 -->|"金融機関取扱時刻特殊区分=#quot;0#quot;(休業日)
TDCKFキー+1日で再取得"| n145 n144 -->|"取扱時間内
TDCKFキー:当日日付"| n145 n146 -->|"フラグ=false
(休業日ではない)"| n119 n145 -->|"取得NG"| n158 n154 --> n155 n145 -->|"取得OK"| n146 n155 --> n144 n131 -->|"年中無休"| n154 n154 -->|"取得NG"| n158 n155 -->|"取得NG"| n158 n158 --> n120 n155 -->|"取得OK"| n144 n154 -->|"取得OK"| n155 classDef fillffffff fill:#ffffff,stroke:#333,stroke-width:1px class n112,n113,n114,n115,n116,n119,n120,n125,n131,n144,n145,n146,n154,n155,n158 fillffffff ``` ## 〔処理詳細〕 ### 1.引数チェック |---------------------------------| | ・『通常営業』の場合: | |--------------------------| | (2019/02/20判断を追加) | |--------------------------| | 引数:①.Date(指定日付)、②.String (指定時刻)、③.String (金融機関コード)、 | |----------------------------------------------------------------------------| | ④.String(金融機関支店コード)のチェックを行う。 | ### 3.時刻判定 |-----------------------------| | エラーが発生した場合は IllegalArgumentException を発生させて処理終了。 | |--------------------------------------------------------------------------| | 引数:指定時刻 から、当日の銀行営業時間に間に合うか判定を行う。 | |-------------------------------------------------------------------| | 1-1.引数Nullチェック | |----------------------------| | ・ | 引数:指定時刻が 00:00 ~ 14:29 の場合 | |------|--------------------------------------------| | 引数:①、②、③、④のどれかが Null または空白だった場合はエラー。 | |------------------------------------------------------------------| | ⇒ | 当日の営業時間に間に合うと判定。何もせず 4.の処理へ進む。 | |-----|---------------------------------------------------------------| | 1-2.指定時刻 妥当性チェック | |-----------------------------------| | ・ | 引数:指定時刻が 14:30 ~ 23:59 の場合 | |------|--------------------------------------------| | 引数:② が4ケタ以外だった場合はエラー。 | |--------------------------------------------------------------------------------| | また、下記クラスにて時刻の妥当性チェックを行い、チェックNGだった場合はエラー。 | | ⇒ | 当日の営業時間に間に合わないと判定。引数:指定日付 を1日進めて4.の処理へ進む。 | |-----|-------------------------------------------------------------------------------------| | ※ 時刻妥当性チェックを行うクラス | ### 4.ネットキャッシング銀行カレンダーマスタTBL 検索 |-------------------------------------------------------------------| | ・ | パッケージ:jp.mcsystems.marui.credit.share.util.function.date | |------|---------------------------------------------------------------| | ・ | クラス :Validation | | ・ | メソッド :isValidTime | | ・ | 引数 :①.String(時刻) | | ・ | 戻り値 :boolean (true:チェックOK / false:チェックNG) | | 引数:指定日付 をキーとして、マスタTBLをPK検索する。 | |----------------------------------------------------------| | (3.の処理で1日進めていた場合は、その日付を使用する。) | | ※ 検索ロジックは標準メソッドの find を使用。 | |-----------------------------------------------------------------------------| | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | ### 2.金融機関年中無休判定 ### 5.金融機関休業日フラグ判定 |---------------------------------------------| | 4.で取得したマスタTBL Entityから金融機関休業日フラグを取得して判定する。 | |------------------------------------------------------------------------------| | 金融機関コード 、金融機関支店コード 、指定日付を条件として、金融機関マスタを検索する。 | |------------------------------------------------------------------------------------------| | パッケージ | | クラス | | メソッド | | 引数 | | : | jp.mcsystems.marui.credit.business.server.logic.publicbc.master | |------|-------------------------------------------------------------------| | : | MsFnclBC | | : | findByPKandAppointedDay | | : | 金融機関コード | | : | 金融機関支店コード | | : | 指定日付 | | : | エンティティ配列[金融機関マスタEntity, 金融機関支店マスタEntity] | | : | EntityNotFoundException 該当レコードが存在しない場合 | | ・ | 金融機関休業日フラグ = true(休業日) の場合 | |------|-----------------------------------------------| | ⇒ | 引数:指定日付 を1日進めて4.の処理へ戻る。(Loop処理) | |-----|-----------------------------------------------------------| | << | 引数.金融機関コード | |------|-------------------------| | << | 引数.金融機関支店コード | | << | 引数.指定日付 | | ・ | 金融機関休業日フラグ = false(休業日ではない) の場合 | |------|--------------------------------------------------------| | ⇒ | Loop処理を抜けて 11.の処理へ進む。 | |-----|-----------------------------------------| | 戻り値 | |----------| | 例外 | | ・該当データなし(EntityNotFoundException発生)の場合: | |---------------------------------------------------------| | → | MCSRuntimeException を発生させて処理終了。 | |-----|----------------------------------------------| | ・金融機関マスタ.休業日区分="1"(年中無休)の場合: | |------------------------------------------------------| | → | 『年中無休』と判断する | |-----|--------------------------| | ・上記以外の場合: | |----------------------| | → | 『通常営業』と判断する | ## 〔処理詳細〕つづき |-----------------------------------| | ・『年中無休』の場合: | |--------------------------| | (2019/2/20追加) | ### 9.ネットキャッシング銀行カレンダーマスタTBL 検索 ### 6.ネットキャッシング銀行カレンダーマスタTBL 検索 |-------------------------------------------------------------------| | 引数:指定日付 をキーとして、マスタTBLをPK検索する。 | |--------------------------------------------------------------| | (7~8.の処理で1日進めていた場合は、その日付を使用する。) | | 引数:指定日付 をキーとして、マスタTBLをPK検索する。 | |-----------------------------------------------------------------------------| | ※ 検索ロジックは標準メソッドの find を使用。 | | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | ※ 検索ロジックは標準メソッドの find を使用。 | |-----------------------------------------------------------------------------| | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | ### 7.金融機関取扱時刻の取得 |-------------------------------------------| | 引数:指定日付 から、当日の銀行営業時間を取得する。 | ### 10.金融機関休業日判定 |-----------------------------------------| | 9.で取得したマスタTBL Entityから金融機関取扱時刻特殊区分を取得して判定する。 | |----------------------------------------------------------------------------------| | ・ | 項番6:ネットキャッシング銀行カレンダーマスタ.金融機関取扱時刻特殊区分="0"(休業日)の場合: | |------|--------------------------------------------------------------------------------| | ⇒ | 当日は休業日と判定。引数:指定日付 を1日進めて9.の処理へ進む。 | |-----|---------------------------------------------------------------------| | ・ | 金融機関取扱時刻特殊区分= "0"(休業日) の場合 | |------|-------------------------------------------------| | ⇒ | 引数:指定日付 を1日進めて9.の処理へ戻る。(Loop処理) | |-----|-----------------------------------------------------------| | ・ | 項番6:ネットキャッシング銀行カレンダーマスタ.金融機関取扱時刻特殊区分=nullの場合: | |------|-------------------------------------------------------------------------| | ⇒ | 引数:指定日付から曜日区分を求め、ネットキャッシング銀行取扱時刻マスタを検索する。 | |-----|---------------------------------------------------------------------------| | ・ | 上記以外の場合 | |------|------------------| | TBL:ネットキャッシング銀行取扱時刻マスタ | |-----------------------------------------------------------------------------| | 条件:金融機関取扱時刻特殊区分 = TO_CHAR(引数:指定日付,'D') | | AND DELETE_TSTAMP IS NULL | | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | ⇒ | Loop処理を抜けて 11.の処理へ進む。 | ### 11.戻り値 設定 |----------------------------------| | ・ | 上記以外の場合: | |------|--------------------| | 3.~ 10.の処理を行った結果の 引数:指定時刻 を戻り値に設定して処理終了。 | |---------------------------------------------------------------------------------| | ⇒ | カレンダーマスタ.金融機関取扱時刻特殊区分を条件に、ネットキャッシング銀行取扱時刻マスタを検索する。 | |-----|-------------------------------------------------------------------------------------| | TBL:ネットキャッシング銀行取扱時刻マスタ | |-----------------------------------------------------------------------------| | 条件:金融機関取扱時刻特殊区分 = 項番6:カレンダーマスタ.金融機関取扱時刻特殊区分 | | AND DELETE_TSTAMP IS NULL | | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | ■ ネットキャッシング銀行カレンダーマスタ(MS_NETCASH_FNCL_CALENDAR) レイアウト | |---------------------------------------------------------------------------------| | 項目名 | | 当日日付 | | 金融機関休業日フラグ | | 金融機関取扱時刻特殊区分 | | 物理名 | |-----------------------| | TODAY_YMD | | FNCL_CLOSED_DAY_FLAG | | FNCL_HNDL_TIME_SP_DIV | | 型 | |-------------| | char(8) | | char(1) | | varchar2(2) | | 備考 | |----------| | PK | | Not Null | ### 8.時刻判定 |-----------------------------| | 引数:指定時刻 から、当日の銀行営業時間に間に合うか判定を行う。 | |-------------------------------------------------------------------| | ・ | 引数:指定時刻が 00:00 ~ (項番7:ネットキャッシング銀行取扱時刻マスタ.取扱終了時間 - 31分) の場合 | |------|---------------------------------------------------------------------------------------------| | ⇒ | 当日の営業時間に間に合うと判定。何もせず 9.の処理へ進む。 | |-----|---------------------------------------------------------------| | ■ ネットキャッシング銀行取扱時刻マスタ(MS_NETCASH_FNCL_HNDL_TIME) レイアウト | |---------------------------------------------------------------------------------| | 項目名 | | 金融機関取扱時刻特殊区分 | | 取扱開始時間 | | 取扱終了時間 | | ・ | 引数:指定時刻が (項番7:ネットキャッシング銀行取扱時刻マスタ.取扱終了時間 - 30分)~ 23:59 の場合 | |------|---------------------------------------------------------------------------------------------| | 物理名 | |-----------------------| | FNCL_HNDL_TIME_SP_DIV | | HNDL_STRT_TIME | | HNDL_END_TIME | | 型 | |-------------| | varchar2(2) | | char(6) | | char(6) | | 備考 | |----------| | PK | | Not Null | | Not Null | | ⇒ | 当日の営業時間に間に合わないと判定。引数:指定日付 を1日進めて9.の処理へ進む。 | # BK20190220 プロジェクト | |---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------| 次期顧客システム 債権受付 | | 処理名(機能名) | |------------------------------------------| | ネットキャッシング 振込予定年月日算出I/F | | プログラム名(コマンド名) | |------------------------------------------------------------------| | NetCashingCalcPayIntoScdlDateBC#calcPayIntoScdlDateForNetCashing | | 作成日 | |---------------------| | 2011-11-02 00:00:00 | | 担当者 | |--------------------| | DTS 岩崎 龍一 | ## 〔概要〕 ## 〔処理概要〕 |-----------------------------| | 引数:指定日付、指定時刻 から、当日を含む未来で直近の振込予定年月日を返却します。 | |-------------------------------------------------------------------------------------| ```mermaid flowchart TD n164["ネットキャッシング振込予定年月日算出 I/F"] n183[("ネットキャッシング銀行カレンダーマスタ")] n192[("金融機関マスタ TBL")] n195[("金融機関支店マスタ TBL")] n183 --> n164 n192 --> n164 n195 --> n164 classDef fillffffff fill:#ffffff,stroke:#333,stroke-width:1px class n164,n183,n192,n195 fillffffff ``` ## 〔機能概要〕 |-----------------------------| | 《基本機能》 | | パッケージ | |--------------| | : | 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)は必須項目です。 | |-------------------------------------------| | 〔使用ファイル〕 | |-----------------------------| | No | | 1 | | 2 | | 3 | | None | | None | | None | | None | | None | | None | | None | | 版 | | None | | None | | None | ## 〔処理フロー〕 | ※引数(2)の指定時刻は 時・分 を表す4桁の文字列(HHMM)で指定してください。 | |---------------------------------------------------------------------------| | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | ID | ID | ID | ID | ID | ID | ID | I/O | I/O | I/O | 備考 | 備考 | 備考 | 備考 | 備考 | 備考 | 備考 | 備考 | |----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------|---------------------------------------------| | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | I | I | I | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | 金融機関マスタ | MS_FNCL | MS_FNCL | MS_FNCL | MS_FNCL | MS_FNCL | MS_FNCL | MS_FNCL | I | I | I | マスタ管理サブ | マスタ管理サブ | マスタ管理サブ | マスタ管理サブ | マスタ管理サブ | マスタ管理サブ | マスタ管理サブ | マスタ管理サブ | | 金融機関支店マスタ | 金融機関支店マスタ | 金融機関支店マスタ | 金融機関支店マスタ | 金融機関支店マスタ | 金融機関支店マスタ | 金融機関支店マスタ | 金融機関支店マスタ | 金融機関支店マスタ | 金融機関支店マスタ | MS_FNCL_BRANCH | MS_FNCL_BRANCH | MS_FNCL_BRANCH | MS_FNCL_BRANCH | MS_FNCL_BRANCH | MS_FNCL_BRANCH | MS_FNCL_BRANCH | I | I | I | マスタ管理サブ | マスタ管理サブ | マスタ管理サブ | マスタ管理サブ | マスタ管理サブ | マスタ管理サブ | マスタ管理サブ | マスタ管理サブ | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | 日 付 | 日 付 | 日 付 | 日 付 | 日 付 | 変更担当者 | 変更担当者 | 変更担当者 | 変更担当者 | 変更担当者 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | | 2018-10-25 00:00:00 | 2018-10-25 00:00:00 | 2018-10-25 00:00:00 | 2018-10-25 00:00:00 | 2018-10-25 00:00:00 | DTS青戸 | DTS青戸 | DTS青戸 | DTS青戸 | DTS青戸 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | 【Netキャッシング即時振込サービス拡大対応】 | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | ※エラーが発生した場合は RuntimeException を発生させます。 | |-------------------------------------------------------------| | 備考 | |--------| | 備考 | | 備考 | | 備考 | ```mermaid flowchart TD n166(["START"]) n167["1.引数チェック"] n168["3.時刻判定"] n169["4.銀行カレンダーマスタ検索"] n170["5.金融機関休業日フラグ判定"] n173["6.戻り値設定"] n174(["END"]) n179["IllegalArgumentException MCSRuntimeException"] n185["2.金融機関マスタ検索"] n186["年中無休営業"] n168 -->|"取扱時間外
TDCKFキー:当日日付+1日"| n186 n170 -->|"フラグ=true(休業日)
TDCKFキー+1日で再取得"| n169 n166 --> n167 n168 -->|"取扱時間内
TDCKFキー:当日日付"| n186 n170 -->|"フラグ=false
(休業日ではない)"| n173 n173 --> n174 n169 -->|"取得NG"| n179 n167 -->|"チェックNG"| n179 n179 --> n174 n186 -->|"年中無休"| n173 n167 -->|"チェックOK"| n185 n185 --> n168 n169 -->|"取得OK"| n170 n186 -->|"年中無休ではない
or 金融機関マスタ情報なし"| n169 classDef fillffffff fill:#ffffff,stroke:#333,stroke-width:1px class n166,n167,n168,n169,n170,n173,n174,n179,n185,n186 fillffffff ``` |------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | ■ ネットキャッシング銀行カレンダーマスタ(MS_NETCASH_FNCL_CALENDAR) レイアウト | |---------------------------------------------------------------------------------| | 項目名 | | 当日日付 | | 金融機関休業日フラグ | | 物理名 | |----------------------| | TODAY_YMD | | FNCL_CLOSED_DAY_FLAG | | 型 | |---------| | char(8) | | char(1) | | 備考 | |----------| | PK | | Not Null | ## 〔処理詳細〕 ### 1.引数チェック ### 3.時刻判定 |-----------------------------| | 引数:①.Date(指定日付)、②.String (指定時刻)、③.String (金融機関コード)、 | |----------------------------------------------------------------------------| | 引数:指定時刻 から、当日の銀行営業時間に間に合うか判定を行う。 | |-------------------------------------------------------------------| | ④.String(金融機関支店コード)のチェックを行う。 | |-----------------------------------------------------| | エラーが発生した場合は IllegalArgumentException を発生させて処理終了。 | |--------------------------------------------------------------------------| | 金融機関マスタ情報ありの場合: | |----------------------------------| | 1-1.引数Nullチェック | |----------------------------| | ・ | 引数:指定時刻が 00:00 ~ (金融機関マスタ.マスタ取扱可能時間TO-31分) の場合 | |------|-------------------------------------------------------------------------------------| | 引数:①、②、③、④のどれかが Null だった場合はエラー。 | |--------------------------------------------------------| | ⇒ | 当日の営業時間に間に合うと判定。何もせず 4.の処理へ進む。 | |-----|---------------------------------------------------------------| | 1-2.指定時刻 妥当性チェック | |-----------------------------------| | ・ | 引数:指定時刻が (金融機関マスタ.マスタ取扱可能時間TO-30分) ~ 23:59 の場合 | |------|-------------------------------------------------------------------------------------| | 引数:② が4ケタ以外だった場合はエラー。 | |--------------------------------------------------------------------------------| | また、下記クラスにて時刻の妥当性チェックを行い、チェックNGだった場合はエラー。 | | ⇒ | 当日の営業時間に間に合わないと判定。引数:指定日付 を1日進めて4.の処理へ進む。 | |-----|-------------------------------------------------------------------------------------| | ※ 時刻妥当性チェックを行うクラス | |------------------------------------| | 例.対象の銀行の取扱時間が10:00~18:00の場合: | |-------------------------------------------------| | ・ | パッケージ:jp.mcsystems.marui.credit.share.util.function.date | |------|---------------------------------------------------------------| | ・ | クラス :Validation | | ・ | メソッド :isValidTime | | ・ | 引数 :①.String(時刻) | | ・ | 戻り値 :boolean (true:チェックOK / false:チェックNG) | | 金融機関マスタ.マスタ取扱可能時間FROM | |-----------------------------------------| | 金融機関マスタ.マスタ取扱可能時間TO | | → | 1000 | |-----|--------| | → | 1800 | | 指定時刻 17:29(TO-31分)までは当日振込、 | |-----------------------------------------------------| | 指定時刻 17:30(TO-30分)からは翌日以降の振込となる。 | | ※マスタにはFROM<TOで時間が設定されている想定。 | ### 2.金融機関マスタTBL 検索 |-------------------------------------------| | 引数:金融機関コード 、引数:金融機関支店コード 、引数:指定日付をキーとして、 | |----------------------------------------------------------------------------------| | マスタTBLをPK検索する。 | | パッケージ | | クラス | | メソッド | | 引数 | | 金融機関マスタ情報なしの場合: | |----------------------------------| | : | jp.mcsystems.marui.credit.business.server.logic.publicbc.master | |------|-------------------------------------------------------------------| | : | MsFnclBC | | : | findByPKandAppointedDay | | : | 金融機関コード | | : | 金融機関支店コード | | : | 指定日付 | | : | 金融機関(支店)エンティティ | | : | EntityNotFoundException 該当レコードが存在しない場合 | | : | IllegalArgumentException 引数がnullまたは空文字の場合 | | : | MCSRuntimeException レコードが複数件存在した場合 | | ・ | 引数:指定時刻が 00:00 ~ 14:29 の場合 | |------|--------------------------------------------| | ⇒ | 当日の営業時間に間に合うと判定。何もせず 4.の処理へ進む。 | |-----|---------------------------------------------------------------| | << | 引数.金融機関コード | |------|-------------------------| | << | 引数.金融機関支店コード | | << | 引数.指定日付 | | ・ | 引数:指定時刻が 14:30 ~ 23:59 の場合 | |------|--------------------------------------------| | ⇒ | 当日の営業時間に間に合わないと判定。引数:指定日付 を1日進めて4.の処理へ進む。 | |-----|-------------------------------------------------------------------------------------| | 戻り値 | |----------| | 例外 | | 例.対象の銀行の取扱時間は00:00~15:00(固定): | |-------------------------------------------------| | 指定時刻 14:29までは当日振込、 | |--------------------------------------------| | 指定時刻 14:30からは翌日以降の振込となる。 | | ※ EntityNotFoundExceptionが発生した場合は何もしないで次処理へ。 | |--------------------------------------------------------------------------| | ※ IllegalArgumentException、MCSRuntimeExceptionが発生した場合はエラー。 | | ・ | 金融機関マスタ情報なし または、 | ### 6.戻り値 設定 |--------------------------------| | 金融機関マスタ情報ありかつ金融機関マスタ.休業日区分≠"1"(=年中無休でない)の場合: | |-------------------------------------------------------------------------------------| | 3.~ 5.の処理を行った結果の 引数:指定時刻 を戻り値に設定して処理終了。 | |-------------------------------------------------------------------------------| | (休業日区分=null,空文字の場合もカレンダーマスタを検索。) | ### 4.ネットキャッシング銀行カレンダーマスタTBL 検索 |-------------------------------------------------------------------| | 引数:指定日付 をキーとして、マスタTBLをPK検索する。 | |----------------------------------------------------------| | (3.の処理で1日進めていた場合は、その日付を使用する。) | | ※ 検索ロジックは標準メソッドの find を使用。 | |--------------------------------------------------------------------------------------| | ※ EntityNotFoundExceptionが発生した場合は MCSRuntimeException を発生させて処理終了。 | ### 5.金融機関休業日フラグ判定 |---------------------------------------------| | 4.で取得したマスタTBL Entityから金融機関休業日フラグを取得して判定する。 | |------------------------------------------------------------------------------| | ・ | 金融機関休業日フラグ = true(休業日) の場合 | |------|-----------------------------------------------| | ⇒ | 引数:指定日付 を1日進めて4.の処理へ戻る。(Loop処理) | |-----|-----------------------------------------------------------| | ・ | 金融機関休業日フラグ = false(休業日ではない) の場合 | |------|--------------------------------------------------------| | ⇒ | Loop処理を抜けて 6.の処理へ進む。 | |-----|---------------------------------------| | ※ | 金融機関マスタ.休業日区分="1"(年中無休)の場合は休業日なしのため休業日判定しない。 | # BK20181025 プロジェクト | |---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------|---------------------------| 次期顧客システム 債権受付 | | 処理名(機能名) | |------------------------------------------| | ネットキャッシング 振込予定年月日算出I/F | | プログラム名(コマンド名) | |------------------------------------------------------------------| | NetCashingCalcPayIntoScdlDateBC#calcPayIntoScdlDateForNetCashing | | 作成日 | |---------------------| | 2011-11-02 00:00:00 | | 担当者 | |--------------------| | DTS 岩崎 龍一 | ## 〔概要〕 ## 〔処理概要〕 |-----------------------------| | 引数:指定日付、指定時刻 から、当日を含む未来で直近の振込予定年月日を返却します。 | |-------------------------------------------------------------------------------------| ```mermaid flowchart TD n199["ネットキャッシング振込予定年月日算出 I/F"] n220[("口振未請求カード基本情報 TBL")] n220 --> n199 classDef fillffffff fill:#ffffff,stroke:#333,stroke-width:1px class n199,n220 fillffffff ``` ## 〔機能概要〕 |-----------------------------| | 《基本機能》 | | パッケージ | |--------------| | : | jp.mcsystems.marui.credit.business.server.logic.publicbc.sales.cashing.net | |------|------------------------------------------------------------------------------| | クラス | |----------| | : | NetCashingCalcPayIntoScdlDateBC | |------|-----------------------------------| | 継承 | |--------| | : | なし | |------|--------| | メソッド | |------------| | : | calcPayIntoScdlDateForNetCashing | |------|------------------------------------| | 引数 | |--------| | : | (1)Date | |------|-----------| | 指定日付 | |------------| | 指定時刻 | | (2)String | |-------------| | 戻り値 | |----------| | : | Date | |------|--------| | 振込予定年月日 | |------------------| | 例外 | |--------| | : | なし | |------|--------| | ※引数(1)、(2)は必須項目です。 | |---------------------------------| | ※引数(2)の指定時刻は 時・分 を表す4桁の文字列(HHMM)で指定してください。 | |---------------------------------------------------------------------------| | 〔使用ファイル〕 | |-----------------------------| | No | | 1 | | None | | None | | None | | None | | None | | None | | None | | None | | None | | 版 | | None | | None | | None | ## 〔処理フロー〕 | ※エラーが発生した場合は RuntimeException を発生させます。 | |-------------------------------------------------------------| | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | テーブル名 | ID | ID | ID | ID | ID | ID | ID | I/O | I/O | I/O | 備考 | 備考 | 備考 | 備考 | 備考 | 備考 | 備考 | 備考 | |----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|----------------------------------------|--------------------------|--------------------------|--------------------------|--------------------------|--------------------------|--------------------------|--------------------------|----------|----------|----------|--------------|--------------|--------------|--------------|--------------|--------------|--------------|--------------| | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | ネットキャッシング銀行カレンダーマスタ | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | MS_NETCASH_FNCL_CALENDAR | I | I | I | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | 債権受付サブ | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | 日 付 | 日 付 | 日 付 | 日 付 | 日 付 | 変更担当者 | 変更担当者 | 変更担当者 | 変更担当者 | 変更担当者 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | 変更内容 | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | None | | 備考 | |--------| | 備考 | | 備考 | | 備考 | ```mermaid flowchart TD n198["3.銀行カレンダーマスタ検索"] n201(["START"]) n202["1.引数チェック"] n203["2.時刻判定"] n205["4.金融機関休業日フラグ判定"] n209["5.戻り値設定"] n210(["END"]) n216["IllegalArgumentException MCSRuntimeException"] n198 -->|"取得OK"| n205 n203 -->|"14:30 ~ 23:59
TDCKFキー:当日日付+1日"| n198 n205 -->|"フラグ=true(休業日)"| n198 n201 --> n202 n202 -->|"チェックOK"| n203 n203 -->|"00:00 ~ 14:29
TDCKFキー:当日日付"| n198 n205 -->|"フラグ=false(休業日ではない)"| n209 n209 --> n210 n198 -->|"取得NG"| n216 n202 -->|"チェックNG"| n216 n216 --> n210 classDef fillffffff fill:#ffffff,stroke:#333,stroke-width:1px class n198,n201,n202,n203,n205,n209,n210,n216 fillffffff ``` |--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | ■ ネットキャッシング銀行カレンダーマスタ(MS_NETCASH_FNCL_CALENDAR) レイアウト | |---------------------------------------------------------------------------------| | 項目名 | | 当日日付 | | 金融機関休業日フラグ | | 物理名 | |----------------------| | TODAY_YMD | | FNCL_CLOSED_DAY_FLAG | | 型 | |---------| | char(8) | | char(1) | | 備考 | |----------| | PK | | Not Null | | TDCKFキー+1日で再取得 | ## 〔処理詳細〕 ### 1.引数チェック ### 3.ネットキャッシング銀行カレンダーマスタTBL 検索 |-------------------------------------------------------------------| | 引数:①.Date(指定日付)、②.String (指定時刻) のチェックを行う。 | |------------------------------------------------------------------------| | エラーが発生した場合は IllegalArgumentException を発生させて処理終了。 | | 引数:指定日付 をキーとして、マスタTBLをPK検索する。 | |----------------------------------------------------------| | (2.の処理で1日進めていた場合は、その日付を使用する。) | | 1-1.引数Nullチェック | |----------------------------| | ※ 検索ロジックは標準メソッドの find を使用。 | |-----------------------------------------------------------------------------| | ※ EntityNotFoundが発生した場合は MCSRuntimeException を発生させて処理終了。 | | 引数:①、② どちらかが Null だった場合はエラー。 | |---------------------------------------------------| | 1-2.指定時刻 妥当性チェック | |-----------------------------------| | 引数:② が4ケタ以外だった場合はエラー。 | |--------------------------------------------------------------------------------| | また、下記クラスにて時刻の妥当性チェックを行い、チェックNGだった場合はエラー。 | ### 4.金融機関休業日フラグ判定 |---------------------------------------------| | 3.で取得したマスタTBL Entityから金融機関休業日フラグを取得して判定する。 | |------------------------------------------------------------------------------| | ※ 時刻妥当性チェックを行うクラス | |------------------------------------| | ・ | 金融機関休業日フラグ = true(休業日) の場合 | |------|-----------------------------------------------| | ・ | パッケージ:jp.mcsystems.marui.credit.share.util.function.date | |------|---------------------------------------------------------------| | ・ | クラス :Validation | | ・ | メソッド :isValidTime | | ・ | 引数 :①.String(時刻) | | ・ | 戻り値 :boolean (true:チェックOK / false:チェックNG) | | ⇒ | 引数:指定日付 を1日進めて3.の処理へ戻る。(Loop処理) | |-----|-----------------------------------------------------------| | ・ | 金融機関休業日フラグ = false(休業日ではない) の場合 | |------|--------------------------------------------------------| | ⇒ | Loop処理を抜けて 5.の処理へ進む。 | ### 5.戻り値 設定 ### 2.時刻判定 |-----------------------------| | 2.~ 4.の処理を行った結果の 引数:指定時刻 を戻り値に設定して処理終了。 | |-------------------------------------------------------------------------------| | 引数:指定時刻 から、当日の銀行営業時間に間に合うか判定を行う。 | |-------------------------------------------------------------------| | ・ | 引数:指定時刻が 00:00 ~ 14:29 の場合 | |------|--------------------------------------------| | ⇒ | 当日の営業時間に間に合うと判定。何もせず 3.の処理へ進む。 | |-----|---------------------------------------------------------------| | ・ | 引数:指定時刻が 14:30 ~ 23:59 の場合 | |------|--------------------------------------------| | ⇒ | 当日の営業時間に間に合わないと判定。引数:指定日付 を1日進めて3.の処理へ進む。 | |-----|-------------------------------------------------------------------------------------|