/// <summary> /// 7-11、全家、郵局、農金、亞太 /// 入帳日:入帳日為非營業日時,會與前一個傳輸日一同匯款 /// Ex:T+3為例 /// ------------------------- /// |資料傳輸日|入帳,撥款日| /// ------------------------- /// |星期一 |星期四 | /// ------------------------- /// |星期二 |(本週)星期五| /// ------------------------- /// |星期三 |(本週)星期五| /// ------------------------- /// |星期四 |(本週)星期五| /// ------------------------- /// |星期五 |星期一 | /// ------------------------- /// |星期六 |星期二 | /// ------------------------- /// |星期日 |星期三 | /// ------------------------- /// </summary> /// <returns></returns> private static DateTime GetNDay_A(Dictionary <DateTime, bool> workDic, DateTime transDate, int days = 3) { DateTime result = transDate.AddDays(days); if (!workDic[result]) { result = LibData.GetWorkDate(workDic, result, 0, false); } return(result); }
/// <summary> /// 獲取旬結的預計匯款日 /// </summary> /// <param name="i"></param> /// <returns></returns> private static DateTime GetTenDayTime(Dictionary <DateTime, bool> workDic, DateTime transDate) { if (transDate.Day < 11) { return(LibData.GetWorkDate(workDic, new DateTime(transDate.Year, transDate.Month, 15), 0)); } else if (transDate.Day < 21) { return(LibData.GetWorkDate(workDic, new DateTime(transDate.Year, transDate.Month, 25), 0)); } else { return(LibData.GetWorkDate(workDic, new DateTime(transDate.AddMonths(1).Year, transDate.AddMonths(1).Month, 5), 0)); } }
/// <summary> /// 獲取週結的預計匯款日 /// Ex:週三結帳 /// ------------------------------------------- /// | 2020/02 | /// ------------------------------------------- /// |日 |一 |二 |三 |四 |五 |六 | /// ------------------------------------------- /// | |17|18|19|20|21|22| /// ------------------------------------------- /// |23| | |匯款| | | | /// ------------------------------------------- /// </summary> /// <returns></returns> private static DateTime GetWeekTime(Dictionary <DateTime, bool> workDic, DateTime transDate, DayOfWeek dayOfWeek = DayOfWeek.Wednesday) { return(LibData.GetWorkDate(workDic, transDate.AddDays((transDate.DayOfWeek != DayOfWeek.Sunday ? 7 : 0) + dayOfWeek - transDate.DayOfWeek), 0));; }
/// <summary> /// 萊爾富 /// 入帳日: /// 1. 傳輸日為非營業日時,金流會併在後一個營業日的入帳日一起匯款 /// 2. 入帳日為非營業日時,往後遞延下一個營業日 /// Ex:T+3為例 /// ------------------------- /// |資料傳輸日|入帳,撥款日| /// ------------------------- /// |星期一 |星期四 | /// ------------------------- /// |星期二 |星期五 | /// ------------------------- /// |星期三 |星期一 | /// ------------------------- /// |星期四 |星期二 | /// ------------------------- /// |星期五 |星期三 | /// ------------------------- /// |星期六 |(下週)星期四| /// ------------------------- /// |星期日 |(下週)星期四| /// ------------------------- /// </summary> /// <returns></returns> private static DateTime GetNDay_C(Dictionary <DateTime, bool> workDic, DateTime transDate, int days = 3) { DateTime result = !workDic[transDate] ? LibData.GetWorkDate(workDic, transDate, 0) : transDate; return(LibData.GetWorkDate(workDic, result, days)); }
/// <summary> /// OK /// 入帳日:入帳日為非營業日時,往後遞延下一個營業日 /// Ex:T+3為例 /// ------------------------- /// |資料傳輸日|入帳,撥款日| /// ------------------------- /// |星期一 |星期四 | /// ------------------------- /// |星期二 |星期五 | /// ------------------------- /// |星期三 |(下週)星期一| /// ------------------------- /// |星期四 |(下週)星期一| /// ------------------------- /// |星期五 |(下週)星期一| /// ------------------------- /// |星期六 |星期二 | /// ------------------------- /// |星期日 |星期三 | /// ------------------------- /// </summary> /// <returns></returns> private static DateTime GetNDay_B(Dictionary <DateTime, bool> workDic, DateTime transDate, int days = 3) { return(LibData.GetWorkDate(workDic, transDate.AddDays(days), 0)); }