久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码av不卡一区二区|久久亚洲精品中文字

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實戰(zhàn)洞察。

三態(tài)日歷落庫:Java 批量生成工作日/周末/節(jié)假日與調(diào)休覆蓋的工程實踐

三態(tài)日歷落庫:Java 批量生成工作日/周末/節(jié)假日與調(diào)休覆蓋的工程實踐 簡介一份面向Java開發(fā)者的年度日期詳情入庫方案解決IT系統(tǒng)中維護(hù)每年工作日、周末與節(jié)假日數(shù)據(jù)的常見需求。資源將核心代碼封裝為單個Java文件經(jīng)7z壓縮后僅2KB便于快速查看與遷移。實現(xiàn)基于java.time的LocalDate遍歷全年日期借助DayOfWeek判斷周末并預(yù)留HolidayCalendar等節(jié)假日庫接口通過JDBC連接數(shù)據(jù)庫設(shè)計日期、工作日標(biāo)識、周末標(biāo)識、節(jié)假日標(biāo)識等字段表結(jié)構(gòu)同時考慮批量插入與事務(wù)回滾確保大數(shù)據(jù)量下的寫入效率和一致性。代碼層次清晰包含連接初始化、日期列表構(gòu)建、批量持久化及異常回滾等模塊并留有數(shù)據(jù)庫連接與自定義節(jié)假日規(guī)則的配置擴(kuò)展空間。適合需要構(gòu)建考勤、排班、運(yùn)營日歷等模塊的中級開發(fā)者可借鑒其表設(shè)計、批量提交和邊界測試如閏年、補(bǔ)班等思路。已有3738人學(xué)習(xí)下載可直接作為年度工作日歷數(shù)據(jù)初始化的參考腳本。1. 把節(jié)假日、周末、工作日三態(tài)日歷落庫這個需求解決的是“每天是不是工作日”做考勤、排班、租金屬性計費(fèi)或者任務(wù)調(diào)度的后臺系統(tǒng)時幾乎每個業(yè)務(wù)都要回答同一個問題某一天是不是工作日前幾年我維護(hù)過一個考勤統(tǒng)計模塊早期寫法是每次請求都現(xiàn)算——先判斷周幾再去查節(jié)假日表最后還要處理補(bǔ)班結(jié)果同一套規(guī)則散落在三個服務(wù)里每年年底節(jié)假日安排一公布就要熬夜改代碼。后來換成了標(biāo)題里這個思路用 Java 把每年的節(jié)假日、周末、工作日詳情按日期批量生成提前落進(jìn)一張數(shù)據(jù)庫表業(yè)務(wù)查詢只做一次主鍵點(diǎn)查。這篇筆記就把這套方案從表結(jié)構(gòu)、生成器、調(diào)休覆蓋到運(yùn)維習(xí)慣完整拆開講適合正在做日歷類基礎(chǔ)數(shù)據(jù)維護(hù)、或者想讓考勤邏輯從“算”變成“查”的開發(fā)者。2. 日歷表結(jié)構(gòu)設(shè)計字段明細(xì)、唯一主鍵、覆蓋規(guī)則表怎么搭配2.1 三態(tài)日歷事實表為什么主鍵用日期而不是自增ID先看結(jié)果表。這張表要回答的核心問題是“某天是三種狀態(tài)中的哪一種”所以它在建模上是一張事實表每一行代表一個日期只保留與該日期身份相關(guān)的屬性不摻業(yè)務(wù)狀態(tài)。我常用的建表語句如下CREATE TABLE t_calendar_detail ( calendar_date DATE NOT NULL COMMENT 日期主鍵, year SMALLINT NOT NULL COMMENT 年份, month TINYINT NOT NULL COMMENT 月份, day TINYINT NOT NULL COMMENT 日, weekday TINYINT NOT NULL COMMENT 星期幾1周一7周日, day_type TINYINT NOT NULL COMMENT 1工作日2周末3節(jié)假日, holiday_name VARCHAR(64) DEFAULT NULL COMMENT 節(jié)假日名稱工作日/周末為NULL, remark VARCHAR(128) DEFAULT NULL COMMENT 備注如“調(diào)休補(bǔ)班”, create_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, update_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (calendar_date), KEY idx_year_month (year, month) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COMMENT日歷三態(tài)事實表;主鍵我沒有用自增 ID直接拿calendar_date做主鍵。原因是這張表的查詢模式非常固定要么按某個日期精確查要么按年份/月份范圍掃。日期本身全局唯一用它做物理主鍵還能讓按時間范圍的掃描走聚簇索引順序讀比自增主鍵再回表快一個量級。year/month/day/weekday這些冗余字段看著多余但實際報表經(jīng)常按“某年某月的工作日數(shù)”分組統(tǒng)計直接從行里取比DATE_FORMAT包一層函數(shù)高效得多也避免函數(shù)導(dǎo)致索引失效。2.2 覆蓋規(guī)則表調(diào)休補(bǔ)班只改這張表事實表只負(fù)責(zé)“最終結(jié)果”它不應(yīng)該是人直接改的地方。真正需要人工維護(hù)的是規(guī)則表也就是每年年底公布的調(diào)休與法定節(jié)假日安排。我一般會再建一張覆蓋規(guī)則表CREATE TABLE t_rule_override ( target_date DATE NOT NULL COMMENT 被覆蓋的日期, override_type TINYINT NOT NULL COMMENT 1調(diào)休補(bǔ)班周末變工作日3法定節(jié)假日工作日變節(jié)假日, holiday_name VARCHAR(64) DEFAULT NULL COMMENT 節(jié)假日名稱, source_year SMALLINT NOT NULL COMMENT 規(guī)則歸屬年份, effective_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 同一天多條規(guī)則時取最新, create_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (target_date), KEY idx_source_year (source_year) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COMMENT節(jié)假日/調(diào)休覆蓋規(guī)則表;這張表只保存“與默認(rèn)規(guī)則不一致”的日子。默認(rèn)規(guī)則在代碼里寫死周一至周五是工作日周六周日是周末。與默認(rèn)規(guī)則一致的日期根本不需要進(jìn)規(guī)則表這樣每年要維護(hù)的記錄通常只有三四十條。target_date做主鍵很關(guān)鍵——同一天的最終狀態(tài)只能有一種這個約束從表結(jié)構(gòu)上就杜絕了“既放假又補(bǔ)班”的矛盾數(shù)據(jù)。2.3 索引取舍按日期范圍查詢?yōu)橹鱠ay_type 不要單獨(dú)建索引索引設(shè)計上主鍵索引已經(jīng)覆蓋了精確日期查詢。idx_year_month是為了“某年某月”的分組統(tǒng)計比如查 6 月的應(yīng)出勤天數(shù)。踩過的坑是最開始我給day_type單獨(dú)建了索引想著按狀態(tài)過濾會快實際完全沒用。day_type只有三四個取值區(qū)分度極低優(yōu)化器全表掃比走索引回表更快這個索引純屬浪費(fèi)寫放大。如果非要做“按工作日查”的統(tǒng)計正確做法是利用year month組合索引把日期范圍先縮小到一個月再過濾狀態(tài)。還有個細(xì)節(jié)日期務(wù)必用DATE類型不要圖導(dǎo)入方便用VARCHAR。用字符串存日期等值查詢還能靠主鍵索引碰巧命中一旦做BETWEEN或者DATE_SUB運(yùn)算排序規(guī)則和隱式轉(zhuǎn)換會讓索引徹底失效后面第 5 章會把這個坑單獨(dú)展開。3. 用 Java 批量生成全年日歷并寫庫生成器核心代碼與 JDBC 批量參數(shù)3.1 生成器核心流程LocalDate 遍歷 規(guī)則覆蓋生成全年的邏輯并不復(fù)雜第一步從t_rule_override讀出所有覆蓋規(guī)則第二步從 1 月 1 日遍歷到 12 月 31 日第三步對每個日期先按“工作日/周末”默認(rèn)規(guī)則打分再看有沒有覆蓋規(guī)則有就按覆蓋結(jié)果重寫。這里我直接用 JDBC 做示例換成MyBatis或Spring Data思路完全一致public void generateYear(Connection conn, int year) throws SQLException { MapLocalDate, Integer overrideMap loadOverrideMap(conn, year); LocalDate start LocalDate.of(year, 1, 1); LocalDate end LocalDate.of(year, 12, 31); ListCalendarDetail rows new ArrayList(); for (LocalDate date start; !date.isAfter(end); date date.plusDays(1)) { DayOfWeek dow date.getDayOfWeek(); // 1. 默認(rèn)規(guī)則周一至周五為工作日周六周日為周末 int dayType (dow DayOfWeek.SATURDAY || dow DayOfWeek.SUNDAY) ? 2 : 1; String holidayName null; String remark null; // 2. 覆蓋規(guī)則優(yōu)先調(diào)休補(bǔ)班或法定節(jié)假日以規(guī)則表為準(zhǔn) if (overrideMap.containsKey(date)) { Integer override overrideMap.get(date); dayType override; remark 規(guī)則覆蓋; } // 3. 拼裝實體year/month/day 直接從 LocalDate 取不用字符串格式化 CalendarDetail detail new CalendarDetail(); detail.setCalendarDate(date); detail.setYear(date.getYear()); detail.setMonth(date.getMonthValue()); detail.setDay(date.getDayOfMonth()); detail.setWeekday(dow.getValue()); detail.setDayType(dayType); detail.setHolidayName(holidayName); detail.setRemark(remark); rows.add(detail); } writeBatch(conn, year, rows); }這段代碼有幾個值得注意的參數(shù)與選型點(diǎn)。LocalDate遍歷完全沒有SimpleDateFormat的線程安全問題生成 365 個日期對象對 JVM 來說開銷可以忽略。getMonthValue()返回 1-12 的int與表結(jié)構(gòu)里TINYINT對應(yīng)不要用Month枚舉直接存否則下一步寫庫還要做一次轉(zhuǎn)換。overDayType存的是最終類型所以規(guī)則覆蓋時直接賦值即可。3.2 JDBC 批量寫入關(guān)閉自動提交與 rewriteBatchedStatementsgenerateYear里只組裝數(shù)據(jù)真正的性能差異在寫庫這一段。批量插入全年 365/366 條數(shù)據(jù)逐條INSERT和批量addBatch在數(shù)據(jù)量小時看不出差別但如果你要一次性生成未來五年甚至十年差距就是秒級和分鐘級的區(qū)別。我在接入層一般這樣寫private void writeBatch(Connection conn, int year, ListCalendarDetail rows) throws SQLException { // 先清理舊數(shù)據(jù)保證任務(wù)可重復(fù)執(zhí)行不會主鍵沖突 try (PreparedStatement ps conn.prepareStatement(DELETE FROM t_calendar_detail WHERE year ?)) { ps.setInt(1, year); ps.executeUpdate(); } String sql INSERT INTO t_calendar_detail (calendar_date, year, month, day, weekday, day_type, holiday_name, remark) VALUES (?, ?, ?, ?, ?, ?, ?, ?); conn.setAutoCommit(false); // 關(guān)閉自動提交攢一批再提交 try (PreparedStatement ps conn.prepareStatement(sql)) { int batchSize 2000; int count 0; for (CalendarDetail d : rows) { ps.setObject(1, d.getCalendarDate()); ps.setInt(2, d.getYear()); ps.setInt(3, d.getMonth()); ps.setInt(4, d.getDay()); ps.setInt(5, d.getWeekday()); ps.setInt(6, d.getDayType()); ps.setString(7, d.getHolidayName()); ps.setString(8, d.getRemark()); ps.addBatch(); count; // 每 2000 條執(zhí)行一次避免 single batch 過大 if (count % batchSize 0) { ps.executeBatch(); } } ps.executeBatch(); // 收尾再刷一次 conn.commit(); } catch (SQLException e) { conn.rollback(); throw e; } finally { conn.setAutoCommit(true); } }這里有一個隱藏很深的性能參數(shù)如果你連的是 MySQL 5.1 以上的版本JDBC 連接串一定要加上rewriteBatchedStatementstrue。不加這個參數(shù)驅(qū)動拿到addBatch后依然是一條一條發(fā)給服務(wù)端批處理名存實亡加上之后驅(qū)動才會把多條INSERT重寫為一條多值的INSERT語句。jdbc:mysql://127.0.0.1:3306/yourdb?useUnicodetruecharacterEncodingutf8rewriteBatchedStatementstruesetObject傳LocalDate給DATE列在 JDBC 4.2 之后有標(biāo)準(zhǔn)映射比java.sql.Date.valueOf(date)少一層轉(zhuǎn)換包裝代碼也更干凈。batchSize不建議一次頂滿全年數(shù)據(jù)MySQL 的max_allowed_packet會限制單次包大小2000 一批在絕大多數(shù)默認(rèn)配置下都能安全通過。3.3 全量重建與增量補(bǔ)刷兩種調(diào)用方式怎么選生成器寫好后調(diào)用策略有兩種常見方式。全量重建適合每年年初一次性執(zhí)行先刪掉整年數(shù)據(jù)再插入整年數(shù)據(jù)邏輯干凈表里永遠(yuǎn)只有一份完整結(jié)果。代價是執(zhí)行期間該年份數(shù)據(jù)不可用對排班系統(tǒng)來說凌晨執(zhí)行完全沒問題。增量補(bǔ)刷適合“節(jié)假日安排出了補(bǔ)充通知只改后面三個月”的場景。比如年中突然宣布某一天放假這時全量刪掉整年再重建明顯浪費(fèi)只刷受影響區(qū)間更合理。我的做法是給生成器加一個窗口參數(shù)public void rebuildWindow(Connection conn, LocalDate start, LocalDate end) throws SQLException { // 刪除窗口內(nèi)數(shù)據(jù)重新生成該區(qū)間規(guī)則表全量參與覆蓋判斷 generateRange(conn, start, end); }兩種方式的取舍用一個簡單標(biāo)準(zhǔn)判斷數(shù)據(jù)量不到 5 萬行無腦全量重建超過 5 萬行或業(yè)務(wù)要求“生成期間仍可讀”走增量窗口。實際項目里一般用不到這個閾值全量重建足夠。4. 調(diào)休與補(bǔ)班把節(jié)假日“覆蓋”邏輯做成可回滾的規(guī)則映射4.1 為什么單純“周末等于休息日”會翻車默認(rèn)規(guī)則“周六周日為周末休息”在絕大多數(shù)日子里是成立的但每年總有那么十幾天被官方公布的放假安排打破。最典型的例子五一、國慶前后往往會有“前一個周日補(bǔ)班”或“周六調(diào)休放假”就是說默認(rèn)規(guī)則里的周六周日可能被改成工作日默認(rèn)規(guī)則里周一到周五也可能被改成節(jié)假日。如果不做覆蓋機(jī)制只靠“周末自動休息”的代碼考勤系統(tǒng)在補(bǔ)班那天會漏判大量缺勤。所以生成環(huán)節(jié)里我把覆蓋邏輯設(shè)計成“先按默認(rèn)規(guī)則定基調(diào)再用規(guī)則表整體覆蓋”而不是寫一堆if (date.equals(某節(jié)日))。因為節(jié)日日期每年都變硬編碼經(jīng)不起時間推敲。4.2 規(guī)則合并與去重同一天多條規(guī)則取最新一條覆蓋規(guī)則表維護(hù)的人可能不止一個每年元旦前 A 同學(xué)錄入一批元旦后 B 同學(xué)又改了幾個日期。如果規(guī)則表出現(xiàn)target_date重復(fù)主鍵約束會直接阻止但歷史數(shù)據(jù)替換時可能出現(xiàn)“同一日期先被標(biāo)記調(diào)休補(bǔ)班又被標(biāo)記節(jié)假日”的修改。這種場景我用一句話處理target_date上的記錄永遠(yuǎn)只有最新一條INSERT ... ON DUPLICATE KEY UPDATE保證冪等。INSERT INTO t_rule_override (target_date, override_type, holiday_name, source_year, effective_time) VALUES (?, ?, ?, ?, CURRENT_TIMESTAMP) ON DUPLICATE KEY UPDATE override_type VALUES(override_type), holiday_name VALUES(holiday_name), source_year VALUES(source_year), effective_time CURRENT_TIMESTAMP;加載規(guī)則映射時也要注意邏輯方向默認(rèn)工作日被覆蓋成節(jié)假日默認(rèn)周末被覆蓋成補(bǔ)班工作日這兩類都從t_rule_override讀統(tǒng)一按target_date做MapLocalDate, Integer生成器只認(rèn)“日期最終的 day_type 值”不再關(guān)心中間發(fā)生了什么。這樣規(guī)則表與事實表徹底解耦將來想回滾某條規(guī)則直接刪規(guī)則表里的記錄再重新觸發(fā)重建即可。4.3 跨月邊界與節(jié)假日名稱歸檔前后 15 天一起解析每年公布的年放假安排會指定“春節(jié)前一周的周日補(bǔ)班”而這個補(bǔ)班日期很可能落在上一年的 12 月或者下一年的 1 月。所以加載規(guī)則時的查詢條件不能只鎖死當(dāng)前年份而要前后各留出緩沖我把這個窗口叫做“年邊界緩沖”。SELECT target_date, override_type, holiday_name FROM t_rule_override WHERE target_date BETWEEN ? AND ?這里的兩個問號分別是給定年份的1月1日減去15天和12月31日加上15天。生成時日期落入緩沖區(qū)內(nèi)但年份不是目標(biāo)年份的行會直接忽略只有落在目標(biāo)年份內(nèi)的日期才寫入事實表。這個設(shè)計解決了很多團(tuán)隊“春節(jié)補(bǔ)班總漏一天”的毛病。節(jié)假日名稱歸檔也有講究。規(guī)則表里的holiday_name要按真實節(jié)日寫全比如“國慶節(jié)”“中秋節(jié)”不要寫“10月1日放假”這種日期化命名。因為后續(xù)判斷“某節(jié)假日是否調(diào)休”“今年中秋國慶是否重疊”都要靠這個名稱做統(tǒng)計分析命名規(guī)范了報表層就不用再清洗。5. 日歷落庫避坑寫日期字段最容易翻車的 5 個問題5.1 YYYY 與 yyyy 混用年尾日期被排到錯誤年份現(xiàn)象生成 12 月 31 日的數(shù)據(jù)時控制臺打印出來的年份是下一年。查數(shù)據(jù)庫發(fā)現(xiàn)這一行的year字段被寫成了下一年的值。原因SimpleDateFormat或DateTimeFormatter里用了YYYY。這個模式代表“周周年份”不是日歷年。當(dāng)某年的 12 月 31 日恰好屬于下一周的 ISO 周期時YYYY會輸出下周所在的年份。解決生成器里完全不要依賴格式化字符串推導(dǎo)年份直接用LocalDate.getYear()。如果歷史代碼用了DateTimeFormatter.ofPattern(yyyy-MM-dd)一定要明確yyyy才是日歷年。這個坑在年初或者年末跑批時特別容易觸發(fā)因為周周年份與日歷年只在跨年那一兩天不同。5.2 主鍵沖突與重復(fù)生成任務(wù)重跑直接拋異?,F(xiàn)象同樣的生成任務(wù)跑第二遍插入第 366 行時報Duplicate entry 2025-12-31 for key PRIMARY。原因生成器第一次執(zhí)行成功后事實表已經(jīng)存在全年數(shù)據(jù)第二次執(zhí)行沒有做清理直接INSERT主鍵約束攔截。解決writeBatch開頭一定要按年份先DELETE再插入也就是前面代碼里的DELETE FROM t_calendar_detail WHERE year ?。這個操作把重跑任務(wù)從“不可重復(fù)執(zhí)行”變成“冪等”任何時間重放都不會產(chǎn)生臟數(shù)據(jù)。要注意如果刪除之后、插入之前有其他進(jìn)程在查詢這張表會短暫查不到數(shù)據(jù)。低峰期運(yùn)維或者用臨時表替換寫入二選一。5.3 時區(qū)問題日期整體偏移一天現(xiàn)象數(shù)據(jù)庫里存好的日期和本地代碼里L(fēng)ocalDate對象完全對不上總是差一天。比如代碼里是 2025-01-01庫里變成 2024-12-31。原因生成時用了LocalDateTime或者Date在寫入DATE列時經(jīng)過 JDBC 驅(qū)動做了時區(qū)換算。應(yīng)用服務(wù)器時區(qū)與數(shù)據(jù)庫會話時區(qū)不一致時邊界時間會漂移。解決全部改用LocalDate數(shù)據(jù)庫連接串顯式指定時區(qū)參數(shù)useJDBCCompliantTimezoneShifttrueserverTimezoneAsia/Shanghai代碼里ps.setObject(1, localDate)直接傳純?nèi)掌趯ο蟛灰狣ate.valueOf(localDate)之后再轉(zhuǎn)一次。時區(qū)問題屬于典型的“本地沒事、上線翻車”因為本地數(shù)據(jù)庫和線上數(shù)據(jù)庫時區(qū)配置往往不同。5.4 只維護(hù)放假沒維護(hù)補(bǔ)班考勤異常集中在節(jié)前現(xiàn)象某月底考勤報表突然冒出一批缺勤正好都是之前調(diào)休補(bǔ)班的那幾天。系統(tǒng)后臺查“節(jié)假日配置”明明有記錄。原因規(guī)則表只錄入了“法定節(jié)假日”這一類覆蓋也就是只把工作日改成了節(jié)假日卻漏掉了“周末補(bǔ)班”這類逆向覆蓋。默認(rèn)規(guī)則認(rèn)為那天是休息日事實表也就按休息日記錄導(dǎo)致應(yīng)出勤日被算成了休息。解決覆蓋規(guī)則的設(shè)計必須同時支持兩個方向override_type1表示周末改成工作日override_type3表示工作日改成節(jié)假日。生成邏輯不要只處理“放假”那一側(cè)。另外補(bǔ)班日期在規(guī)則表里也要保留holiday_name的原始信息比如備注“國慶前補(bǔ)班”方便報表側(cè)解釋異常出勤記錄。5.5 日期列隱式轉(zhuǎn)換VARCHAR 與 DATE 的混用導(dǎo)致索引失效現(xiàn)象表里calendar_date定義為VARCHAR查詢WHERE calendar_date BETWEEN 2025-01-01 AND 2025-01-31慢到全表掃。原因字符串比較按字典序2025-1-1和2025-01-01排序結(jié)果完全不同邏輯上像一個日期物理上排成兩條序列。一旦數(shù)據(jù)量上來所謂“日期范圍查詢”根本沒有范圍可言。解決表結(jié)構(gòu)里列類型必須是DATE參數(shù)傳LocalDate查詢條件不要用DATE_FORMAT(calendar_date) ...這種寫法因為對列做函數(shù)處理會讓索引失效。正確姿勢是calendar_date BETWEEN ? AND ?讓日期列裸著參與比較。6. 進(jìn)階增量窗口更新、結(jié)果校驗與“只改規(guī)則表”的運(yùn)維習(xí)慣6.1 按未來 90 天窗口增量重建全量重建適合年初但年中若突發(fā)“某天臨時放假”的通知重跑整年代價不大卻也容易把已有人工訂正的數(shù)據(jù)覆蓋掉。我的習(xí)慣是平時只維護(hù)規(guī)則表發(fā)布新規(guī)則后對受影響的未來 90 天窗口做增量重建。窗口選擇 90 天是因為絕大多數(shù)臨時通知都不會影響超過一個季度窗口太大沒必要太小又可能覆蓋不全連續(xù)調(diào)休。這種運(yùn)維方式要求生成器把“刪除與插入”限定在一個窗口內(nèi)public void rebuildWindow(Connection conn, LocalDate start, LocalDate end) { deleteRange(conn, start, end); generateRange(conn, start, end); }刪除和生成需要放在同一個事務(wù)里避免刪除成功、生成失敗造成窗口空窗。6.2 全年結(jié)果校驗對比 SQL 與總數(shù)范圍生成完數(shù)據(jù)別急著上線跑兩組校驗。第一組是總量校驗按day_type分組統(tǒng)計全年三種類型加起來必須等于 366閏年或 365SELECT day_type, COUNT(*) FROM t_calendar_detail WHERE year 2025 GROUP BY day_type;正常年份工作日數(shù)量通常在 240 到 260 之間周末在 100 到 120 之間節(jié)假日約 11 到 20 天。如果統(tǒng)計結(jié)果明顯越界說明規(guī)則覆蓋環(huán)節(jié)出了問題。第二組是規(guī)則匹配校驗把規(guī)則表里所有補(bǔ)班日期與事實表交叉比對SELECT r.target_date FROM t_rule_override r LEFT JOIN t_calendar_detail c ON c.calendar_date r.target_date WHERE r.override_type 1 AND c.day_type ! 1;查出來的每一行都是“規(guī)則表要求這天補(bǔ)班事實表卻沒生效”的漏網(wǎng)之魚。這兩組 SQL 丟進(jìn)定時任務(wù)里每天跑一次能兜住絕大多數(shù)人為配置錯誤。6.3 一個值得養(yǎng)成的習(xí)慣規(guī)則表永遠(yuǎn)比事實表“高級”我接手這個方案半年后最大的體會是事實表只允許被生成器寫入永遠(yuǎn)不要改單行數(shù)據(jù)。哪怕手工修一條“某天應(yīng)該是節(jié)假日”的錯誤也先去改規(guī)則表再觸發(fā)對應(yīng)年份/窗口重建。因為事實表是下游業(yè)務(wù)讀取的唯一來源手工改一條很可能覆蓋掉生成邏輯期望的最終狀態(tài)之后規(guī)則表再變動這一條手工數(shù)據(jù)就被靜默抹掉了。相反“規(guī)則表 → 生成器 → 事實表”的單向數(shù)據(jù)流任何時刻都可以從頭重算等于給日歷系統(tǒng)留了一顆后悔藥。后來遇到“某個日期狀態(tài)不對”的反饋我先查規(guī)則表而不是直接改結(jié)果表十次有九次都是規(guī)則漏配補(bǔ)班。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
国产精品乱人伊人网| 天堂8在线新版官网| 精品无吗久久| 国内91熟女人妻丝袜天天精品视频在线| 成人青青草原伊人| 亚洲精品国产拍免费91在线| 亚州欧美总和| 久久综合久久综合人久久夜精品| 日韩女模中文造逼| 成人av影院在线观看| 职场同事知名国产国产精品久久欧美日韩 | 人妻夜夜爽天天爽三区麻豆AV网站| 99蜜桃臀亚洲成人在线观看| 日本东京热大香蕉a片| 亚洲和欧美裸体美女双飞视频| 黑人黄片在线免费观看| 青青草天天亲夜夜操网| 国产女性无套 免费观看| 永久免费av无码网站国产app| 亚拍在线| 青青草影视蜜久久| 九九热精品视频六| 欧美色图91p| 九九毛片这里只有精品| www久久99| 激情综合网五月婷婷五月天| 国内精品伊人久久久久影院会| 男人的天堂 在线一区| 欧日韩一二三f区| 久久AV色| 午夜后入| 亚av顶级裸体一区二区三区四区五区 | 丰满高潮18xxxx| 偷拍精品一区二区三区| 激情综合网亚洲| 色欲av一区二区三区蜜芽| 小草av不卡亚洲二区| 9999久久久久| 操逼无码一区| 午夜亚洲WWW湿好大| 国产91美女高潮| 亚洲av淫乱| 91东京热男人的天堂| 大香蕉伊然在亚洲91| 嫩草影院在线观看精品| 中文字幕国产| 国产女人与拘做受视频免费| 国产精品嫩草影院免费| 欧美成人A天堂片在线观看| 国产狂喷潮在线精品| 中欧人妻丝袜中文字幕| 日韩在线国产字幕| 黄色大片免费在线| 国产欧美一级在线观看| 国内三级自拍小视频在线观看| 911粉嫩人妻| 伊人99热| 欧洲射精91| 麻豆久久久久久久久丝袜 | 亚洲 欧美 日本 国内 首页| 国产超碰欧美| 久久六六| 99热99在线播放激情| 在线可观看的黄色网址| 97精品久久久久中文字幕| 久久大线蕉一区| 又大又黄国产| 操淫穴亚洲五月丁香| 色综合99999| 内射卯月麻衣| 亚洲欧洲中文日韩女优乱码| 亚洲日韩美女中文字幕乱| 国产剧情AV不卡在线观看| 欧美日韩99| 欧美精品人妻视频| 青青欧美| 久久精品熟妇丰满人妻99| 肉动漫无遮挡h在线观看| A级毛片在线看免费| 国产一级不卡在线观看| 99色热| 麻豆精品一区二区三区四区免费观看| 日本一区二区中文字幕久久| 日韩免费看黄片| 精品视频久久久久九九九九9999| 性色中出| 亚洲九九视频| 精品国产一区二区三区四区在线看| 国产树林里野战在线看| 久久久久久久极品香蕉视频| 亚拍在线| 国内偷拍精品一区二区| 日本综合久久| 日韩操呦呦影院在线观看| 亚洲久久天堂| 午夜福利视频在线一区| 久久久久久性爱视频| 亚洲日韩欧美一区二区| 精品一级毛片在线观看| 涩五月婷婷| 青青草男人天堂| 日韩在线观看三级电影| 香蕉婷婷| 加勒比海人人操超碰在线| 日本成人A片网站| 欧美另类色图片| 国产自啪精品视频网站黑丝| 99国产在线 精品 视频| 一区二区三区男女操逼黄色小电影| 亚洲怡春院| 人妻熟女午夜精品在线| 中日韩久久久免费看| 无码区蜜乳| yazhousetuoumei| 国产精品日日摸天天碰| 色情五月丁香| 91痴汉| av午夜影院在线播放| 久久综合精品一区二区三区| 久久久久久性爱免费视频| 国产精品香蕉热久久新品| 日韩9999| 精品午夜福利国产一区二区在线观看| 青青草精品| ,成人免费啪啪视频| 人妻一区二区三区四区视频| 人妻久久一区二区三区| 91狠狠综合久久久久久| 国产精品黑人一区二区三区| 亚州操操穴网| av网站在线看| 亚州中文字幕超碰97| 丁香五六月啪啪| 天天做天天爱天天爽AV| 一区二区影院| 屁股久久久久久久久| 韩国午夜理伦三级好看| 97色欧洲| 奸色色 男人天堂 天天射| 精品视频一区二区| 久操网线| 中文字幕诱惑制服人妻丝袜美丝袜美| 2017人人操,人人摸| 97人人爱人人做人人乐| 自拍偷拍 日韩无码| 白丝在线一区| 久插综合| 黄色操人| 国产人妻精品一区二区三区秋霞| 日本女优在线视频福利| 亚洲性刺激| 国产亚州日韩欧美看片| 午夜国产综合视频在线观看 | 91操熟女| 日本熟妇熟色97一本在线观看| 极品色综合| 九色97| 99热| 欧美综合自拍亚洲综合图| 18禁免费视频| 97精品全部| 亚洲日产专区| 亚洲四虎熟女精品| 国产无码高清操逼视频| 91nbbbbbb| 日韩人妻一区二区| 精品人妻一区春色| 夜夜操91744565| 国产浮力影院第1页| 97久操| 中文字幕片| 日本熟女中文字幕一区| 精品78| 久久精品中文| 九热大香蕉| www.zbzhongsen.com| 亚洲国产成人精品久久久国产成人一区二区 | 久久性爱视频| 国产精品一区二区 尿失禁| 97欧美视频| 搡老熟女国产1000部| 水澄无码AV| 人人摸人人摸人人干| 亚洲国产综合图区中文字幕| 久久精品噜噜噜成人看免欧美大片| 青青国产精品在线| 五月丁香综合激情| 亚洲四虎熟女精品| 免费人成?大片在线播放| 天天射天天操天天干天天吃2018 | 99热| 日韩不卡毛片Av免费高清| 麻豆天美一区二区| 精人妻一区二区三区| 欧美成人综合| 日本高清熟女久久一区| 亚洲一区二区专区-国产丝袜精品丝袜-成人AV | 91动漫操逼视频| 奇米四色网| 蜜臀久久99精品久久久久久-DVD| 精品国产AV一区天美传媒| 91少妇通奸网站| 欧美久久婷婷| 一区,二区,三区视频| 1024亚洲中文字幕久在线看片你懂的| 骚逼高潮久久精品| 亚洲综合色男人网| 夜夜嗨AV蜜臀av| 激激五月| 亚洲情色在线| 60秒免费小视频| 九X超碰| 97看操| 欧美精品双插| 超碰这里只有精品| 色噜噜人妻av中文字幕| 啊啊啊啊啊啊啊啊在线观看| 久热最新在线杭州| 欧美不卡五十路| 97天天综合| 日本 免费 一区二区三区 久久香蕉| 免费的黄片wwwwww| 韩国黄色片精品久久久| 福利在线观看一区二区| 美国人人操人人操| 色官网在线| av片在线观看免费播放| 久久女婷| 躁躁日曰躁2020| 91影视亚洲| 五月天人妻综合| 色路综合| 日本操逼视频在线| 国产尤物AV尤物在线观看不卡| 国产亚洲日韩在线三区黑人| 91精品人妻电影| 精品人妻中文字幕4399| 强免费黄色网址| 韩日精品四区| 操人妻逼91| 超碰97在线色男人??| 久操电影网| 四虎午夜影院| 一二三区操逼国产91| 久久精品熟妇丰满人妻99| 五十路三区在线| 日语五十路和六十路亚洲国产精品 | 91九九九吃| 91成人精品| AVE乱伦| 国产剧情AV不卡在线观看| 丁香激情网| 成人在线永久| 九热中文字幕| 人人色人人操在线| 91少妇香蕉久久精品| 超碰导航97| 天堂v无码免费视频| 男人a天堂手机在线版| 男人的天堂亚洲| 99re69| 夜夜爽夜夜| 亚洲色图亚洲无码强奸乱伦| 嗯啊啊啊轻点视频| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 欧美碰碰综合色| 欧美偷拍区| 色色99| 精品二区三四区五电影 | 干B| 91香蕉国产尤物视频| 亚洲色图殴美色图激情乱伦| 东北女人被操| 欧美日韩插逼视频| 国产亚洲人妻综合日韩 久久| 大香蕉男人的天堂| 男人的天堂网免费| 91热色| 日本三级一区二区 在线| 91大胆欧美| 亚洲情色综合网| 黄色电影在线播放综合网站 | 中文字幕AV中出| 国产高清免费不卡av| 亚洲情色婷婷五月天| 999国产精品999久久久久久| 国产强上视频在线观看| 精品久久久不卡一区二区| 亚洲日韩电影| 99re6国产精品99re在线| 国产嫩草精品A88AV| 在线综合色| 老鸭窝黄色视频网站| 我要去看2个日本美女.com曹逼| 日韩女模中文造逼| 岛国精品视频在线观看| 日本操BAV| 好看的91视频| 中文字幕,人妻,日韩| 97九色人妻| 欧美资源| 亚洲精品一二三四区| 亚洲毛片基地专区| 啊啊啊好湿久久| 五月丁香黄色网| 自拍盗摄一区| 99re公开精品免费视频| 91青青在线视频| 成年女人18级毛片毛片免费观看| 亚洲97网站| 丁香色五月 97干| 91综合站| 欧美少妇性乱| 玖玖在线视频| 蜜臀无码视频在线观看| 97色欧州| 91成人久久 | www99热| 天天干人人乐| 欧洲射精91| 免费人成在线观看网站品爱网| 青青草成人视频在线观看二区 | 性性久久| 97在线精品| 国产三级片在线观看| 国产丝袜美女诱惑| 天天天天天天天天天天干美女| 久热99999| 久操精品网| 好属操| 国产精品久久久久久久久久久久久久久久久久 | 99日免费视频中文字幕| 五月丁香大香蕉| 亚洲欧美电影| 97久久精品不卡| 欧美1727免费观看视频| 成人日韩3| 亚洲欧美啪啪| 操人妻逼91| 亚洲最大无码中文字幕网站| 韩国免费播放一级毛片| 懂色av中文字幕| 嗯~啊~快点 死我视频| 中文字幕人成乱码熟女香港| 色原狠狠天天天| 歐美性天天| 亚洲一本色码中文字幕| 日韩三级一区| 妇女乱色二区| 亚洲日本男人天堂网| 国产高清无码一区三区二区| 啊啊啊水好多| 亚洲人人夜夜澡人人爽| 超碰人妻久久人妻中文97| 亚洲欧洲国产综合av| 亚洲影院成人| 欧美情色亚洲| 操淫穴亚洲五月丁香 | 高清无码 国产精品| 精品69网| 欧美成人贴图| 欧美色综合图片| 一区二区三区四区五区高清无码永久视频 | 日韩操啪| 中文字幕日韩专区精品系列| 高潮精品| 97 色综合| 超碰在线成人电影| 四虎在线观看网站| 精品一二三区女同| 亚洲污一污二| 亚洲自拍欧美国产首页网曝| 人妻激情另类| 干干干天天| 啊啊啊好爽快点啊啊啊嗯嗯| 我要去看2个日本美女.com曹逼| 嗯嗯啊啊的视频| 啊啊啊97视频| 东京热一区二区三区四区五区六区| 色色综合网站| 九九无码| 久久久草成人网站久久久草成人久久久草久久久| 91天堂色男人的天堂| 78超碰| 色天堂综合| 91最新综合| 精品人体无圣光凹凸| 91丝袜| 日韩精品啪啪啪| 亚洲色欧| 大香蕉中文网| 丝袜综合网| 久久一区二区蜜桃| 日韩欧美日韩| 国产一级舔足在线观看| 精品国产Av无码久久久亚洲| 国内偷拍精品一区二区| 99re热有精品视频国产| 日本国产高清色www视频在线| 思思热久久成人| 久草视频观看视频在线| av日韩在线观看电影| 5月婷婷6月六月丁香| 大香蕉综合网| 久草色悠悠在线视频| 青青草五月天| 欧美亚洲素人制服精品| 少妇高潮对白在线观看| 久久久久久久久成人av解说| 亚洲av无码成人精品国产| 女人爽到高潮潮喷18禁网站| 成人五月香网在线| 亚洲天堂自拍| 亚洲情色 无码专区| 91热| 18禁止看精品中文字幕| h无码动漫在线观看| 国产成人在线观看综合| 97中文天堂| 青青草日本中文字幕| 99热18这里只有精品| 91狠狠综合久久| 日本人妻伦在线中文字幕| 天天综合网日韩7799| 99超级碰免费视频| 日本999精品视频| 久久人妻一区二区三区高清| 亚洲情色综合| 日韩av影片在线观看| 99这里有精品视频| 成人十八禁日韩欧美一二三| 国产精品扒开腿做爽爽爽视频| 操操吧亚洲乱伦视频| 婷婷五月天av| 婷婷精品国产一区二区三区日韩| 国产91 丝袜在线播放 | 色欲天天综合久久久无码网中文| 日韩一区二区高清在线观看的| 99碰碰| 欧美中字二区| 人人性爱视频免费| 欧美日韩91| 秋霞一区二区三区四区五区六区七区| 久久岛国| 天堂8在线新版官网| 99啪啪视频| 福利视频网站| 蜜臀一区二区三区在线| 无码精品一区二区三区潘金莲| 精品 码产区一区二-1080P高清在线www-B029AV| 性欧美体内射精| www色色com| 日韩乱伦视频| 加勒比AV网| 中文字幕制服诱惑| 亚洲操逼网| 99在线啪| 死我十八禁| 成人AV素股で擦久久| 涩亚洲欧洲| 国产午夜在线观看视频| 天天淫人人妻日日色| 97超碰精品图片| 思思在线免费视频| 欧洲精品一二三在线| 蜜乳成人AV| 九九九九88| 神马久久久久久久| 亚洲国产一级中文综合久久天堂在线免费观看 | 性爱网站一区二区| 人妻久热在线| 人人操欧美风骚| 久久久蜜桃一区二区三区| 青草伊人网| 久9热| 97K超碰在线| 操91| 精品人妻一区二区三区日产| 亚洲男人天堂2019| 欧美日韩97| 1024亚洲中文字幕久在线看片你懂的 | 中文字幕在线免费观看2| 熟女性视频| 久久91| 国产超碰97| 中文字幕五月婷婷免费| 狼人综合婷婷激情四射| 97超碰色色| 99啪啪视频| 超碰9 7女人| 五月丁香社区婷婷日韩欧美精品影院| 98精品国产乱码久久久久久| 免费观看国产不卡av| 久久亚洲天堂| 日本在线一二 | 一级特黄aaa大片在线观看成人一级片在线观看 | 亚洲精品国语在线播放| 久久久久久久久久久999| 亚洲AV无码AV吞精久久久久| 天美传媒精品久久视频| 校园春色之综合网| 先锋激情∨在线视频播放| 97视频在线免费播放| 精品国产精品一区二区| 国产精品美女久久久久久网站| a人欧美综合天堂麻豆| 无码免费精品高清| 91精品人| 欧美在线|亚洲| 91oumei| 国产精品久久久久无码A√| 中文子幕一二三| 色色亚洲| 免费看黄视频亚洲网站| 自拍六区| 九9热伊人| AV色女综合| 男男H黄动漫啪啪无遮挡网站| 熟女久久| 超碰97资源大奶| 静品嫩模一区二区| 国产一区二区在线播放量| 67914在线兔费成人视频| 91美腿丝袜在线观看| 亚洲成人福利电影免费| 欧美一区二区三区不卡高清视频| 欧美成人精品一区二区男人蜜臀| 极品白嫩福利在线| AV大香蕉| 人人射人人操人人摸| 欧美不卡五十路| 骚货操死你| 日韩噜噜69| 99久久久无码| 婷婷在线视频| 久久6热视频免费观看| se吧提供国产乱老熟视频胖女人| 国产又粗又长视频| 97久久久久久久久久| 欧美亚州综合图片| 97精品久久久久久久| 亚码激情| 五月综合视频| 婷婷精品视频| 五月婷婷久久综合| 这里都是精品在线观看| 夜嗨影院| 欧美人妻久久精品二区三区| 老司机天天操| 超碰色男人操熟女| 男女激烈网站最新| 欧美一级在线观看成人| 色婷婷一区二区三区久久| 精品97久久| 91天美免费| 中文字幕午夜精品久久久| 60秒免费视频| 2020中文字幕在线| 老司机深夜18禁污污网站| 天天伊人| 91在线免费精品视频| 欧美中文字幕精品人妻| 亚洲综合第一页| 97视频免费播放| 亚洲高清色综合| 欧美双插| 囯产精品久久久久久久久久梁医生 | 东京热一区二区中文字幕| 99re视频这里只有精品| 97精品免费| 国产精品美女视频诱惑| 欧美Ⅴ性爱| 成人精品电影| 免费一级毛片在线视频观看| 家庭乱伦网站国产| 欧美三级中文字幕hd| 97亚洲中文| 91碰碰| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 久久性爱视频99| 大色网久久| 久久九九97| 青青在线视频日韩欧美| 99色天堂| 国产精品色色| 欧美丝袜激情| 欧美激情黑人| 天天操夜夜操| 国产女人和拘做爰视频| 国产农村一一级特黄毛片| 99精品无码| 嫩草伊人久久精品| 青青草原av| 操一操摸一摸| 乱伦日本色图AⅤ| 五月激情综合网| 操B久久| 少妇激情AV| 高清孕妇孕交| 人妻aa| 久操B网| 亚洲一区制服诱惑| 淫荡网址| 黄片无码在线制服| 99国产天美| 欧美综合亚洲| 国产日韩精品无码去免费专区国产| 日本高清_区二区三区| 欧美一区91大爱| 韩日巨乳美女免费视频在线观看| 91亚洲人| 怡红院一区二区熟女人妻| 国产丝袜美女诱惑| 青青操日韩| 夜夜操青青草| 热天堂一区二区| 欧美亚洲天天| 美女一区二区国产精品| 青青草精玖玖69精品| 亚洲天堂男| 亚洲操逼无码| 亚洲综合九| 黄片免费日韩| 极品色社| 日韩人妻无码不卡网站| 日韩字幕一区| 亚洲av强奸乱伦| 天天日天天射天天干| 人人妻人人爽一区二区三区| 精品亚洲国产成人av网站| 欧美综合97www| 99久在线精品99re8蜜桃| AV网站高清无码在线观看| 青青草视频爽一爽| 欧美天天射| 欧美婷婷| 超碰久超碰久| 人妻22p| 九九九九九九免费视频| 亚洲欧洲精品视频发布| 久久久久久久久久黄色网| 午夜性刺激视频免费观看| 六月激情婷婷| 视频在线97| 国产一区二区在线电影| 婷婷五月天小说| av片在线观看免费播放| 久久人妇| 欧美亚洲一级在线观看| 日日夜夜噜| 国产精品久久久久久久电影渣男| 久视频在线观看| 国产免费一区2区3区| 亚洲天堂东京热| 啊啊啊在线观看| 中文字幕一区二区三区蜜臀| aV中亚| 丝袜制服字幕在线| 69视频入口| 91撸色网 玖玖网 欧美| 国产亚洲精品久久久久小| 上床不卡网站| 国产精品视频一区二区三区八戒| 天美传媒av一区二区| 亚洲色图日韩精品| 日本久久久久久久久久| 99热成人| 很很操在线| 97色色,97综合| 嫩草影院在线观看精品| 欧美图片校园春色| 欧美久久九九| 日本十八禁免费看污网站| 亚洲的天堂网| 丁香六月啪| 欧美欧美啪啪视频| 精品久久九| 无码少妇精品一区二区60岁老人| 91情色在线| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 国产一区二区在线电影| 嗯嗯啊啊啊好爽| 中文字幕一区二区三区人妻少妇在线| 日韩极品无码B| 青青草日韩免费观看高清在线| 韩国一级婬片A片AAAAA| 蜜臀在线视频| 中文字幕在线2| 9 9精品一区二区三区| 被窝影院午夜看片无码| 欧美中字不卡| 东北夫妻性偷拍| 成人性爱视频在线看| 九九热精品| 日本999精品视频| 亚洲色欲天天人妻无码系列专区| 午夜小电影在线插入淫高潮| 操逼短片| 日本精品88888888| 国产AV久久久蜜爱影集| 人人干黄色| 清纯唯美综合| 亚洲熟久久| 天天欧美欧美亚洲网| 欧美久久人人网| 久久久无码视频| 综合一区二区影视| 日日干夜夜操视频h| 成人午夜无码视频| 可以在线观看AV的网站| 88xx成人精品视频| 鸥美中出| 久久国产精品视频| 成人片视频| 九九九九88| 色丁香五月婷婷| 中国东北熟女老太婆内谢| 欧美日韩国产成人高清| 春色综合网| 性欧美| 亚洲性猛| 大香网伊人久久综合网eew| 深夜操逼网| 337p大胆噜噜噜噜噜91Av| 97精品熟女少妇一区| 粉嫩av平台| 亚洲欧美第一页| 精品999一区二区| 就去色综合| 99热线麻豆 | 麻豆性爱视频在线播放| 久久熟女人| 日日夜夜狠狠| 9久精品| 成人国产精品三级A片| 激情综合网五月婷婷五月天| 精品中文字幕第一页| 亚洲啪啪视频免费| 亚洲伊人久久综合97| 白丝AV| 无码精品久久久久久亚洲| 啪啪啪亚欧美视频| 9久久久久| 久久精品店| 97久久网| 91一区二区三区蜜桃| 84YTCOM性无码| 91欧洲国产成人久久精品网站| 丝袜综合网| 欧美日韩97| 国产无码精品久久久久久| 久久久性| 亚洲色系另类精品国产| 蜜桃视频成a人v在线| 欧美人妻精品一区二区| 国产精品自产拍在线观看社区| 操逼逼无码| 日本一级一级一级一级| 日韩97超碰中文字幕| 日本天天人人狠狠在线日美女 | 丝袜性亚洲| 色九九九综合| 嗯~啊~轻一点 视频| 9Ⅰ超碰| 2024年最新色情网站在线观看| 国产精品国产亚洲区艳妇糸列| 色y情视频免费看| 久久精品中文字幕无码l| 探花精品视频| 色婷婷aV一区二区三区麻豆综合| 青青操少妇| 一本色道久久综合狠狠操| 青青青青青手机视频| 日本成a人v网站在线观看| 日韩在线一区高清在线| 亚洲欧美激情在线视频| 宅男91视频在线播放| 人妻黑丝袜电影| 久久线上视频免费看| 午夜性生活av免费在线看| 777AV电影| 亚洲婷婷五月天| 伊人久久大香蕉线AV五月天| 激情情色五月天| 精品九九九| 大香蕉免费乱伦视频| 久久婷婷一区二| 小草av不卡亚洲二区| 玖玖久久久| 91在线视频观看国产| 精品妇女一区二区三区| 日本中文字幕一区| 欧美天天综合网| 亚欧Av| 97干色天堂| 国产精品久久久无码AV网站| 一级黄色影片| 亚洲人久久久网| 中英熟女操女| 婷婷色色网| av久日| 99久久久久久亚洲精品不卡| 操99| 欧美在线中M| 乱伦熟女论坛| 99视频只有精品| 锕锕好爽 死我在线观看| 久久精品国产欧美日韩亚洲欧美日韩中文久久国产一区 | 国产自偷自拍一区| 97亚洲国产影视| 男人天堂最新手机版在线青青草| 久久精品福利影院| av天堂影视中文在字幕在线中文| 亚洲性图91| 2023天天操夜夜操| 夜夜爽77777| 夜夜精品视频一区二区| 中日亚韩免费视频| 不卡九肏| 91欧美大片| 99色在线| 超碰诱惑| 色色色综合网| 南澳成人一级片在线播放| 国产 无码 一区二区| 久久綜合很很很| 国产一区二区三区高清视频| 日本 欧美 亚中文字幕| 97色欧洲| www.超碰在线| 日韩青久久| 欧美日韩中文亚洲v在线综合| oumeizonghese,www| 成人自拍三级在线观看| 影音综合网| 亚洲无线观看久久| 久久久不能久久久久| 国产熟女精品一区二区| 色综合91| 天天干天天操天天操夜夜操天天操| 婷婷五月色| 九九热国产| 五月婷婷丁香| 91人妻在线视频| 国产欧美一区二区| 乱伦日本中文自拍| 操B久久| 中国一级操逼视频| 亚洲日韩久久精品一区| 日韩乱伦影音先锋| 久久国产精品视频| 人妻久久久| 亚洲性网| 黄资源| 国产粉嫩出水在线播放| 女同女同恋久久级三级| 精品国产一级久久| KK色在线影院| 大香蕉520| 超碰99re| 800zy一区二区| 又大又长又粗又爽又黄| 天天影视网色欲色香| 成人在线视频网| 97欧美日韩| 九九九九日本| 中文字幕成人理论在线| 精品夜夜澡人妻无码AV| 少妇无码太爽| 377p欧洲日本亚洲大胆| 91欧洲入口| 国产原创精品| 97人人操人人摸| AV色女综合| 日韩99神马视频播放| 91天堂色男人的天堂| 少妇精品久久| 国产久久日| 五月天激情综合网| 一个国产在线综合网站| 亚洲猛交| 色欲人妻一区二区在线| 国模精品娜娜一二三区| 婷婷久久五月综合激情| 中文字幕精品专区搜索结果91| 青青草日韩无码| 日韩中文字幕精品一区在线| 东北女人性交| 久久精品老司| 性吧在线视频| 精品亚洲国产成人av网站| 搡老女人老91二区| 九九人妻| 少妇人妻无码| 九九内射在线| 在线精品福利免费播放| 精品国产Av无码久久久亚洲| 欧美色图片欧美色图| 青青草精玖玖69精品| 色色五月婷婷| 日本三级网页| 国产无码三级视频在线观看| 欧美综色欧| 色香伊人| 99re9这里只有精品| 婷婷五月丁香五月| 国产美女高潮叫床视频| 手机看片日韩人妻| 国产成人久久精品蜜臀| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 美熟女逼导航AV操逼| 午夜天堂精品久久| 亚洲欲色9532548967一区| 日本在线播放不卡一区| 亚洲综合另类小说色区亚洲成av人片在www| 国产又粗又长又大的视频| 九9热伊人| 97 九色| 亚洲人在线| 最新加勒比丝袜在线| 五月丁香综合| 无码国产精品午夜不卡(| 国语国产操逼伊人AV网| 爽极品影院| 精品久久久久久中文字幕三区| 日本孕妇一区二区视频操逼免费看| 青青草这里只有精品| 夜夜黄| 欧美色吧综合| 日韩性爱1级片视频| 精品一级毛片在线观看| 欧美色欧美| 99人妻| 欧美在线91| 亚洲天天操| 欧美精品97| 欧成人精品H无码| 97免费在线观看| 男人的天堂va| 97爱| 伊人网青青| 国产美女销魂在线观看不卡| 亚洲性爱电影| 一区二区三区探花在线观看| yellow网站免费观看日韩高清无码| 成年人三级黄色片视频| 啪啪AV导航| 91成人精品在线播放| 久久人人爽人人爽人人片Ⅴ| 岛国成人av在线播放网址| 婷婷五月天色色| 久久女人一区二区三区| 亚洲精品久久久久久久久豆丁网| 天天色悠悠激情| 中文久久一区| 中文字幕超碰CAO| 人人妻天天做天天爽| 99热这里只有精品1| 人妻欧美| 国产JDAV无码视频在线观看| 一类无码操逼视频| 亚洲欧美精品福利在线| 五月丁香久久| 精品v1区| 国产免费一区| 97在线视频免费看| 午夜男女爽爽大片免费观看| 日韩精品国产一区二区| 精品性爱一区二区| 日本有码久久| 亚洲激情色片 | 国产一进一出视频网站| 粉嫩国产精品久久粉嫩| 四虎 精品 WWW| 青女在线| 久热这里| 欧美影院一区二区三区| 国产欧美精选自拍一区| 极品尤物在线观看| 伊人97色天使| 亚洲少妇激情一区二区三区| 日韩欧视频| 亚洲啪AⅤ永久无码| 最新国产亚洲精品精品国产亚洲综合| 日本三级大片| 色欲人妻一区二区在线| 国产深喉| 日本黄大片在线观看视频| 免费亚洲黄色视频在线观看 | 国产精品一区二区后入| 国际精品久久久| 九久久精品| 好湿好紧视频| 国产精品久久天天干| 国产一区二区三区精品观看啪| 青青草自拍视频在线播放| 97丝袜亚洲在线播放| 91殴美| 岛国在线一区二区三区| 国色天香av| 大干人妻| 日本操逼视频不卡直接放| 国产成人网站在线观看| 性老妇一区二区三区| 日韩少妇丰满亚洲| 中文字幕诱惑制服人妻丝袜美丝袜美| 天天干人人乐| a天堂视频| 91麻豆天美国产| 后入国产| 欧美特大黄一级片片免费| AV老汉| 中文字幕三四五区| 久久香蕉国产线看观看猫咪av| 久久国99999| 99热日| 欧差乱伦二三| 五月色丁香| 亚洲熟妇综合久久久久久| 亚洲性爱成人| 校园春色之综合网| 青青草依人大香蕉| 天天干夜夜操网| 综合色拍| 99久国产精品午夜性色福利| 亚洲 欧美 中文 日韩超碰| 9九九国产| 最新日产中文在线麻豆| 亚洲色资源| 国产家庭乱伦性爱视频| 亚洲不卡av在线| 在线视频97| 日韩黄片视频试看| 不卡av免费在线网址| 男人的天堂一区三区| 人妻激情在线视频| 天天操天天射天天日| 久久精品72| A级毛片在线看免费| 日本午夜福利视频| A片大香蕉在线| 久久亚州高清| Sekablack无码一区| 黄色小说亚洲| 丰满美女一级毛片在线播放| 国产美脚女优尤物在线观看| 国产呦精品系列在线观看| 伊人久久青青草| 日本成人在线不卡一区二区三区| 毛片中心9视频99| 日本欧美中文字幕| 99999精品成人| 人人操我人人干| 欧美性生活内射| 欧美,日韩综合久久| 熟女露脸激情自拍视频| 中文字幕在线高清男人的天堂| 欧美色图99| 人妻熟女字幕一区二区| 91狠狠综| 青春草A| 国产h片在线观看视频| 任你干在线视频| 久久国产视频性吧 | 亚洲情色在线| 91人妻做a观看视频| 精品一区99999| 开心五月天激情网| 日韩欧无码一区二区三区免费不卡| 国产探花精品在线| av情色影音| 免费观看国产不卡av| 人人爽夜夜玩视频| 狠狠综合| www.伪伪| 天天舔天天日天天射| 亚洲图片偷拍视频区| 亚欧美色| 欧美成人综合| 激情五月天色色| 亚洲 欧美 日韩 国产一区二区| 大香蕉欧美国产日韩高潮| 国模少妇一区二区三区| 久久久久久久久久9| 大香蕉在线视频重口味毛片在线| 日韩不卡毛片Av免费高清| 欧美色院| 国产第二页| 精品一区二区三区蜜桃臀赵总 | 亚洲中文电影| 国产97色在线| 国产精品无码成人精品| 97情超碰色| www老逼91| 天天操天天舔| 国语对白露脸XXXXXX| 一本一道久久综合久久| 青青草伊人久久| 色综合色色| av天堂精品久久| 99热在线播放| 国偷自 一区| 成人日韩中文字幕| 亚洲婷婷五月天| 韩国午夜理伦三级好看| 国产一级高清免费观看| 日本 情色 1区2区3区| 东北女人的毛片| 人妻少妇视频在线播放| 最新中文字幕在线亚洲| 成人精品久久久午夜福利| 操91| 国产一区二区啪啪视频| 视频国产成人精品日本亚洲18| 天天操女人| 色爱综合网| 无码操逼网| 台湾一区国产高清在线| 91丝袜人妻| 2019午夜福利视频| 欧美少妇第一页| 日韩乱码av| 九九色婷婷| 岛国黄色大片网站| 在线一道啪| 日本1区2区不卡视频| 亚洲国产丝袜熟女av | 亚洲无码com| 另类小说欧美激情校园春色| 果冻传媒A片一二三区| 午夜后入| 亚州综合色图| 欧美白嫩女HD| 操人妻逼91| 情色五月天久久久| 亚洲精品色| ,国产乱人伦精品一区二区三区| 亚洲男人bt天堂| www.婷婷| 国产伦精品一区二区三区视频女| 婷婷五月天久久久| 激情五月天色色网| 无码伊人久久大杳蕉中文无码| AV无码久久久精品| 91操人| 18禁超污无遮挡无码免费网| 日韩成人性爱AV| 操逼视频免费日韩无码| 成人福利视频网| 美女自卫慰黄网站免费| 99热99在线| 亚洲AV免费在线| 日韩人妻少妇 一区二区三区| 五月婷婷色| 精品夜夜澡人妻无码| 毛片17S| 国产精品网站www| 亚洲精品1区| 激情五月天校园春色网| asc国产精品|