欧美成人午夜精品久久久,国产?V天堂一区二区三区,欧美精品va在线观看,亚洲一区二区三区免费在线观看,av无码精品一区二区久久,欧美性爱视频不卡一区三区,欧美乱人伦视频在线观看,国产一级牲交高潮

ARTICLE DETAIL

資訊詳情

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

Vue租號(hào)系統(tǒng)源碼深度解析:訂單生命周期與支付交付核心設(shè)計(jì)

Vue租號(hào)系統(tǒng)源碼深度解析:訂單生命周期與支付交付核心設(shè)計(jì) 簡(jiǎn)介這是一套基于Vue技術(shù)棧構(gòu)建的完整游戲賬號(hào)出租平臺(tái)源碼面向前端開發(fā)者、中小型游戲服務(wù)創(chuàng)業(yè)團(tuán)隊(duì)及虛擬資產(chǎn)交易平臺(tái)建設(shè)者用于快速搭建租號(hào)玩類B2C平臺(tái)解決賬號(hào)上架、租賃周期管理、訂單支付、用戶信用體系等核心業(yè)務(wù)問(wèn)題。資源包共2000個(gè)文件含1039個(gè)JavaScript邏輯文件、418個(gè)HTML頁(yè)面模板、197個(gè)CSS樣式文件含bootstrap、vendors、app_explorer等多套主題樣式、70個(gè)Vue單文件組件及5個(gè)SQL數(shù)據(jù)庫(kù)腳本整體體積達(dá)144.17MB結(jié)構(gòu)覆蓋PC端與WAP端雙適配體系。已有64人學(xué)習(xí)下載源碼具備完整前后端交互能力提供可運(yùn)行的賬號(hào)發(fā)布-搜索-下單-履約全流程包含權(quán)限控制模塊、訂單狀態(tài)機(jī)、租期倒計(jì)時(shí)組件及安全登錄鑒權(quán)邏輯目錄層級(jí)清晰適合二次開發(fā)與業(yè)務(wù)定制。 先繞開一個(gè)常見誤區(qū)很多人看到vue租號(hào)系統(tǒng)源碼這串名字第一反應(yīng)是找一份能直接跑起來(lái)、上線就能賺錢的完整項(xiàng)目。但真正拿到手之后才發(fā)現(xiàn)源碼只是起點(diǎn)租號(hào)平臺(tái)的核心不是那一堆頁(yè)面和接口而是訂單生命周期、庫(kù)存鎖、支付回調(diào)冪等、賬號(hào)自動(dòng)交付這一整套業(yè)務(wù)閉環(huán)。這篇東西不打算逐行貼代碼而是把我做過(guò)、改過(guò)、也幫別人復(fù)盤過(guò)的租號(hào)系統(tǒng)從架構(gòu)設(shè)計(jì)到核心實(shí)現(xiàn)再到上線之后才暴露的坑完整過(guò)一遍。適合誰(shuí)看準(zhǔn)備在現(xiàn)有電商或虛擬商品項(xiàng)目里增加賬號(hào)出租能力的技術(shù)同學(xué)想基于開源Vue全家桶項(xiàng)目做二次開發(fā)的獨(dú)立開發(fā)者以及準(zhǔn)備接外包、評(píng)估這類系統(tǒng)工作量的開發(fā)。如果你是純粹想找一份源碼直接跑demo玩前面幾章也能幫你少走很多彎路。1. 租號(hào)系統(tǒng)源碼到底在解決什么問(wèn)題一個(gè)訂單的完整生命周期1.1 租號(hào)業(yè)務(wù)的本質(zhì)是虛擬商品租賃平臺(tái)游戲賬號(hào)出租、視頻會(huì)員共享、各種軟件試用賬號(hào)表面上五花八門底層模型完全一樣。它和傳統(tǒng)電商最大的區(qū)別在于賣出去的商品不需要回收而租出去的賬號(hào)必須按時(shí)歸還還要保證同一時(shí)間只有一個(gè)用戶在用。這就是庫(kù)存模型的核心差別。傳統(tǒng)電商盯的是SKU庫(kù)存賣一個(gè)減一個(gè)補(bǔ)貨靠采購(gòu)。租號(hào)系統(tǒng)盯的是時(shí)間片同一個(gè)賬號(hào)可以連續(xù)租給不同的人只要時(shí)間不重疊。比如一個(gè)賬號(hào)有3個(gè)游戲區(qū)服每個(gè)區(qū)服同一時(shí)間只能租給一個(gè)人那這個(gè)賬號(hào)的可用庫(kù)存就不是1而是3個(gè)區(qū)服各自獨(dú)立的時(shí)間片。很多剛做租號(hào)系統(tǒng)的人在這里就理解偏了導(dǎo)致訂單并發(fā)校驗(yàn)做了跟沒(méi)做一樣。從實(shí)際項(xiàng)目看租號(hào)系統(tǒng)至少包含這幾個(gè)實(shí)體用戶端租客、商家端號(hào)主、運(yùn)營(yíng)端平臺(tái)管理員。用戶端要做的有注冊(cè)登錄、瀏覽商品、搜索篩選、下單支付、查看訂單、續(xù)租退租。商家端要做的有賬號(hào)錄入、庫(kù)存設(shè)置、排期管理、收益結(jié)算。運(yùn)營(yíng)端更多是審核、類目管理、風(fēng)控、訂單介入處理。這些需求堆在一起源碼的體量不會(huì)小。市面上流通的vue租號(hào)系統(tǒng)源碼前端基本是Vue 2或Vue 3 Element UI Axios Vue Router Vuex/Pinia這套組合后端多是Spring Boot MyBatis-Plus MySQL Redis部分帶定時(shí)任務(wù)和支付模塊。這個(gè)組合本身不是最潮的但勝在生態(tài)成熟、招人容易、踩坑資料多。我后面所有討論都基于這套主流架構(gòu)如果你拿到的是PHP或Node后端版本核心業(yè)務(wù)邏輯看完也能平移過(guò)去。1.2 一個(gè)訂單從下單到歸還系統(tǒng)要做哪些事我把租號(hào)訂單的生命周期拆成下面七步后面所有設(shè)計(jì)都圍繞這七步展開用戶瀏覽商品選區(qū)服、選租期看到實(shí)時(shí)價(jià)格。用戶下單系統(tǒng)立即鎖定對(duì)應(yīng)時(shí)間片的庫(kù)存。用戶支付支付平臺(tái)回調(diào)通知后端。后端驗(yàn)簽、處理回調(diào)更新訂單為已支付觸發(fā)賬號(hào)自動(dòng)交付。用戶拿到賬號(hào)密碼開始使用計(jì)時(shí)開始。租期結(jié)束系統(tǒng)自動(dòng)回收賬號(hào)或觸發(fā)續(xù)租提醒。用戶確認(rèn)歸還訂單完結(jié)商家結(jié)算。這七步每一步都能出事故。第2步最容易出現(xiàn)超賣第4步最容易出現(xiàn)重復(fù)發(fā)貨第6步最容易出現(xiàn)賬號(hào)未回收導(dǎo)致下一單用戶無(wú)法登錄。所以判斷一份租號(hào)系統(tǒng)源碼值不值得用別先看界面好不好看直接翻這七個(gè)環(huán)節(jié)的代碼看它有沒(méi)有兜底。下單鎖庫(kù)存這塊我在項(xiàng)目里用的方案是下單預(yù)占 支付確認(rèn) 超時(shí)釋放。用戶點(diǎn)下單后端在Redis里對(duì)商品SKU加一個(gè)分布式鎖鎖住了就創(chuàng)建訂單并占用對(duì)應(yīng)時(shí)間片然后在訂單表寫一個(gè)過(guò)期時(shí)間比如15分鐘。如果用戶一直不支付定時(shí)任務(wù)掃描超時(shí)訂單自動(dòng)改狀態(tài)并釋放庫(kù)存。這樣能最大限度避免用戶下單但沒(méi)付錢把庫(kù)存占死的問(wèn)題。自動(dòng)交付是租號(hào)系統(tǒng)和普通電商最大的差異點(diǎn)。普通電商發(fā)貨是下載一個(gè)虛擬商品鏈接或者快遞單號(hào)租號(hào)系統(tǒng)需要在支付成功之后把賬號(hào)、密碼甚至登錄用的驗(yàn)證信息安全地發(fā)給買家同時(shí)不能讓買家在賣家沒(méi)收到錢之前看到這些信息。我見過(guò)有些簡(jiǎn)化版源碼是支付成功后直接把賬號(hào)明文下發(fā)這要是訂單金額大一點(diǎn)糾紛會(huì)非常難看。更穩(wěn)的做法是支付回調(diào)處理完、訂單真正進(jìn)入已支付狀態(tài)之后再走一條獨(dú)立的交付服務(wù)去發(fā)放賬號(hào)信息而且發(fā)放記錄要留痕。2. 技術(shù)選型與項(xiàng)目架構(gòu)為什么這套組合跑得穩(wěn)2.1 前端用Vue全家桶后端用Spring Boot前后端分離的原因租號(hào)系統(tǒng)不是內(nèi)容站它是重交互、重狀態(tài)流轉(zhuǎn)的平臺(tái)型應(yīng)用。用戶在一個(gè)頁(yè)面上可能要連續(xù)完成搜索、篩選、選規(guī)格、看價(jià)格、下單、支付好幾個(gè)動(dòng)作每個(gè)動(dòng)作都要與后端交互。Vue這類前端框架的價(jià)值在于把界面狀態(tài)管理和接口數(shù)據(jù)綁定做得足夠順手Vuex/Pinia存用戶登錄態(tài)和購(gòu)物車、路由守衛(wèi)控制頁(yè)面權(quán)限Element UI快速壘出后臺(tái)管理界面。前后端分離之后前端可以獨(dú)立部署在CDN或Nginx上后端只暴露JSON接口天然適應(yīng)小程序、H5、APP多端復(fù)用同一套后端邏輯。這個(gè)收益在租號(hào)系統(tǒng)上尤其明顯——移動(dòng)端流量通常占大頭但開發(fā)人力大概率只夠維護(hù)一套H5。選Vue 2還是Vue 3我的建議是看源碼底子。如果你拿到的是Vue 2的老項(xiàng)目別盲目升級(jí)Vue 3Element UI到Element Plus的遷移成本遠(yuǎn)比你想象的高。如果是從零開始那就直接Vue 3 Vite Pinia Element Plus沒(méi)必要在Vue 2上給自己挖舊坑。后端用Spring Boot看中的是整合能力。租號(hào)系統(tǒng)涉及的模塊多用戶體系JWT認(rèn)證、商品模塊、訂單模塊、支付模塊、定時(shí)任務(wù)、消息通知。Spring Boot的starter機(jī)制能把這一堆東西組織得比較干凈。MyBatis-Plus解放了大部分單表CRUD復(fù)雜查詢用XML手寫SQL也不心疼。我自己的習(xí)慣是普通列表和詳情直接用MyBatis-Plus的條件構(gòu)造器涉及訂單維度、多表統(tǒng)計(jì)再手寫SQL不然性能會(huì)掉得很快。2.2 數(shù)據(jù)庫(kù)核心表設(shè)計(jì)與關(guān)鍵字段數(shù)據(jù)庫(kù)表設(shè)計(jì)直接決定后續(xù)能不能高效改版。這里列一張我常用的核心表清單拿到的源碼里即使表名不一樣對(duì)照著關(guān)系看也能快速定位表名核心字段作用userid, phone, password, nickname, status用戶與商家統(tǒng)一賬號(hào)通過(guò)role區(qū)分goodsid, title, category_id, cover, status, merchant_id商品主表一個(gè)商品下面掛多個(gè)SKUgoods_skuid, goods_id, sku_name, stock_mode, price_rule, game_region商品規(guī)格比如區(qū)服、版本、段位account_poolid, sku_id, account, password, status, lock_order_id實(shí)際要租出去的賬號(hào)池一個(gè)SKU對(duì)應(yīng)多個(gè)賬號(hào)time_slotid, account_id, start_time, end_time, status賬號(hào)的時(shí)間片用來(lái)做并發(fā)排期ordersid, order_no, user_id, sku_id, account_id, amount, status, expire_time訂單主表status是整個(gè)系統(tǒng)的核心order_deliveryid, order_id, content, deliver_time交付記錄發(fā)放賬號(hào)密碼的留痕settlementid, merchant_id, period, amount, status商家結(jié)算記錄重點(diǎn)說(shuō)兩個(gè)容易搞錯(cuò)的字段。第一個(gè)是goods_sku的stock_mode它決定這個(gè)SKU是份數(shù)庫(kù)存還是時(shí)間片庫(kù)存。視頻會(huì)員賬號(hào)一般一份只能同時(shí)租給一個(gè)人游戲區(qū)服賬號(hào)可能同一賬號(hào)不同區(qū)服可以并發(fā)。如果你不區(qū)分這兩種模式并發(fā)控制就會(huì)亂。第二個(gè)是orders表里的status我習(xí)慣把它做成tinyint枚舉0待支付、1已支付待交付、2交付中、3租賃中、4已歸還、5已取消、6退款中、7已退款。很多人喜歡用字符串狀態(tài)后期統(tǒng)計(jì)和索引都不好用。賬號(hào)池和訂單關(guān)聯(lián)也要想清楚。一個(gè)訂單支付成功之后系統(tǒng)從account_pool里分配一個(gè)具體賬號(hào)寫入orders.account_id。這個(gè)分配動(dòng)作要加鎖防止同一個(gè)賬號(hào)同一時(shí)間被分配給兩個(gè)訂單。我做的方案是account_pool表加一個(gè)lock_order_id字段分配時(shí)用UPDATE account_pool SET lock_order_id ? WHERE id ? AND lock_order_id IS NULL這種方式做原子占位比先查后改安全得多。2.3 Redis在庫(kù)存、分布式鎖、訂單防重里的位置租號(hào)系統(tǒng)里Redis不是可選項(xiàng)是必選項(xiàng)。我用它主要干四件事。第一商品詳情的緩存。游戲賬號(hào)的商品詳情頁(yè)訪問(wèn)量遠(yuǎn)大于下單量直接把詳情頁(yè)的數(shù)據(jù)商品信息、SKU列表、價(jià)格、庫(kù)存狀態(tài)緩存到Redis接口響應(yīng)能壓到幾十毫秒。緩存失效策略我選的是更新后刪除而不是定時(shí)過(guò)期因?yàn)樯唐穬r(jià)格和庫(kù)存是實(shí)時(shí)變化的定時(shí)過(guò)期會(huì)吐臟數(shù)據(jù)。第二分布式鎖。前面說(shuō)的賬號(hào)分配、庫(kù)存扣減都需要鎖。單機(jī)環(huán)境synchronized夠用一旦上多實(shí)例部署就必須用Redis的SETNX或Redisson的ReentrantLock。我實(shí)際項(xiàng)目中用的是Redisson因?yàn)樗詭Э撮T狗機(jī)制不需要自己處理鎖超時(shí)續(xù)期少很多焦慮。第三訂單支付回調(diào)的冪等判斷。支付平臺(tái)回調(diào)可能同一筆訂單回調(diào)好幾次網(wǎng)絡(luò)抖動(dòng)還會(huì)延遲重復(fù)投遞。我在回調(diào)里先查一遍訂單狀態(tài)如果已經(jīng)是已支付就直接返回成功同時(shí)用Redis的SETNX加一個(gè)短期的回調(diào)處理中鎖防止兩個(gè)線程同時(shí)處理同一筆訂單。第四熱點(diǎn)數(shù)據(jù)計(jì)數(shù)。比如商品瀏覽量、今日出租次數(shù)這種統(tǒng)計(jì)字段直接寫MySQL會(huì)拖慢主庫(kù)先放Redis做累加定時(shí)批量刷到MySQL。這個(gè)在租號(hào)平臺(tái)流量起來(lái)之后特別有用。3. 前端頁(yè)面與交互的核心實(shí)現(xiàn)從首頁(yè)到支付成功要寫哪些東西3.1 路由守衛(wèi)、登錄態(tài)與權(quán)限控制租號(hào)系統(tǒng)前端第一個(gè)要處理的不是頁(yè)面好看而是哪些頁(yè)面必須登錄才能看。我的經(jīng)驗(yàn)是首頁(yè)、商品列表、商品詳情可以匿名訪問(wèn)下單、結(jié)算、個(gè)人中心、訂單列表必須登錄商家后臺(tái)和平臺(tái)管理后臺(tái)需要額外角色校驗(yàn)。Vue Router的全局前置守衛(wèi)是處理這個(gè)的統(tǒng)一入口。核心邏輯可以簡(jiǎn)化為router.beforeEach((to, from, next) { const token localStorage.getItem(token) if (to.meta.requiresAuth !token) { next({ path: /login, query: { redirect: to.fullPath } }) return } if (to.meta.requiresRole) { const userInfo store.getters.userInfo if (!userInfo) { store.dispatch(fetchUserInfo).then(() { if (store.getters.userInfo.role ! to.meta.requiresRole) { next({ path: /403 }) } else { next() } }).catch(() { next({ path: /login }) }) return } if (store.getters.userInfo.role ! to.meta.requiresRole) { next({ path: /403 }) return } } next() })這里有一個(gè)在實(shí)戰(zhàn)中很容易踩的坑登錄態(tài)信息放在Vuex里一刷新頁(yè)面Vuex就清空了路由守衛(wèi)判斷用戶信息時(shí)發(fā)現(xiàn)不存在直接把它踢回登錄頁(yè)。解決辦法是刷新后從本地存儲(chǔ)恢復(fù)token再調(diào)一個(gè)獲取用戶信息的接口把用戶狀態(tài)拉回來(lái)或者把用戶基礎(chǔ)信息加密存到localStorage里刷新時(shí)直接回填。我推薦前者因?yàn)閘ocalStorage里的用戶信息可能過(guò)期后端接口拉取的主數(shù)據(jù)永遠(yuǎn)是最新的。在前端框架的選擇上如果你拿到的租號(hào)系統(tǒng)源碼是Vue 2的老項(xiàng)目并且已經(jīng)有Element UI的成套頁(yè)面我建議不要急著遷移到Vue 3。Vue 2的生態(tài)足夠穩(wěn)在租號(hào)系統(tǒng)這種業(yè)務(wù)場(chǎng)景里Vue 3帶來(lái)的性能提升并不是決定因素遷移成本卻是實(shí)打?qū)嵉?。真正決定系統(tǒng)能不能用的是下單流程有沒(méi)有bug、支付回調(diào)有沒(méi)有漏單而不是Vue版本。3.2 商品詳情頁(yè)的SKU聯(lián)動(dòng)、租期計(jì)價(jià)與下單流程商品詳情頁(yè)是租號(hào)系統(tǒng)前端交互最復(fù)雜的頁(yè)面沒(méi)有之一。它至少要承載這幾個(gè)功能SKU切換區(qū)服、版本、段位、租期選擇按小時(shí)/按天、自定義時(shí)長(zhǎng)、價(jià)格實(shí)時(shí)計(jì)算、庫(kù)存狀態(tài)展示。SKU聯(lián)動(dòng)和計(jì)價(jià)可以直接用一個(gè)響應(yīng)式對(duì)象管理const skuState reactive({ region: null, // 區(qū)服 version: null, // 版本 hours: 1, // 租期 price: 0 // 計(jì)算后的價(jià)格 }) function calcPrice() { const sku goods.skuList.find(item item.region skuState.region item.version skuState.version) if (!sku) return const priceRule JSON.parse(sku.price_rule) // {base_price: 10, hour_price: 2, max_hours: 24} skuState.price priceRule.base_price (skuState.hours - 1) * priceRule.hour_price } watch(() [skuState.region, skuState.version, skuState.hours], calcPrice)價(jià)格規(guī)則這里一定要在后端也計(jì)算一遍前端價(jià)格只能作為展示。原因很簡(jiǎn)單前端都是可以被改的如果用戶用抓包工具改了價(jià)格參數(shù)后端不校驗(yàn)就要虧錢。我經(jīng)歷過(guò)一次事故用戶把租期參數(shù)改了價(jià)格沒(méi)改后臺(tái)還按原價(jià)格校驗(yàn)結(jié)果一筆大額訂單只付了零頭從那之后前端價(jià)格一律僅供參考后端訂單模塊用價(jià)格規(guī)則另行計(jì)算。下單流程的交互細(xì)節(jié)也很重要。用戶點(diǎn)擊下單后前端應(yīng)該立即調(diào)創(chuàng)建訂單接口同時(shí)進(jìn)入15分鐘支付倒計(jì)時(shí)。倒計(jì)時(shí)結(jié)束訂單自動(dòng)取消前端要監(jiān)聽這個(gè)狀態(tài)變化不能等癥狀了才知道。支付方式一般就兩種平臺(tái)支付微信/支付寶和余額支付。余額支付在租號(hào)平臺(tái)很常見用戶先充值再消費(fèi)。這個(gè)邏輯要特別注意并發(fā)用戶在多個(gè)設(shè)備上同時(shí)消費(fèi)后端要加余額扣減的樂(lè)觀鎖UPDATE user SET balance balance - ? WHERE id ? AND balance ?影響行數(shù)為0就是余額不夠或并發(fā)沖突。3.3 訂單狀態(tài)在用戶端的展示邏輯訂單列表和詳情頁(yè)的狀態(tài)展示前端看起來(lái)只是幾個(gè)標(biāo)簽后端要配合返回很多信息。比如租賃中的訂單要顯示剩余時(shí)長(zhǎng)已取消的訂單要顯示取消原因退款中的訂單要顯示退款進(jìn)度。我建議后端在訂單列表接口里直接返回一個(gè)status_text和status_action字段把當(dāng)前狀態(tài)對(duì)應(yīng)的文字和可操作按鈕去支付、申請(qǐng)退款、確認(rèn)歸還一起算好返回前端只負(fù)責(zé)渲染。這樣后端改狀態(tài)規(guī)則時(shí)不需要前端聯(lián)動(dòng)發(fā)版。租期剩余時(shí)間的展示如果全靠前端倒計(jì)時(shí)用戶一刷新就亂了。更穩(wěn)的做法是后端在訂單詳情里返回一個(gè)end_time時(shí)間戳前端用當(dāng)前時(shí)間戳算剩余毫秒本地做每秒遞減刷新之后重新用接口時(shí)間校準(zhǔn)。租賃中的訂單在剩余時(shí)間小于一定閾值時(shí)前端要彈續(xù)租提示這個(gè)入口也很關(guān)鍵因?yàn)樗茱@著提升客單價(jià)。4. 后端關(guān)鍵接口與狀態(tài)機(jī)設(shè)計(jì)支付、發(fā)貨、租期到期不能出錯(cuò)4.1 支付回調(diào)的驗(yàn)簽與冪等處理支付回調(diào)是整個(gè)租號(hào)系統(tǒng)里最不能出錯(cuò)的環(huán)節(jié)。支付平臺(tái)的通知可能會(huì)重復(fù)發(fā)送回調(diào)數(shù)據(jù)也可能是偽造的不驗(yàn)證簽名就處理等于把自己的錢包敞開讓別人畫。我在Spring Boot里的處理順序是先驗(yàn)簽再查訂單再冪等判斷最后落庫(kù)。PostMapping(/pay/callback) public String payCallback(RequestBody String payload, RequestHeader(sign) String sign) { // 第一步驗(yàn)簽失敗直接返回失敗 if (!payService.verifySign(payload, sign)) { return sign error; } // 第二步解析出訂單號(hào) PayNotifyDTO notify JSON.parseObject(payload, PayNotifyDTO.class); // 第三步Redis防重鎖 String lockKey pay:callback: notify.getOrderNo(); Boolean locked redisTemplate.opsForValue().setIfAbsent(lockKey, 1, Duration.ofSeconds(30)); if (!locked) { return processing; } try { // 第四步冪等判斷訂單如果不是待支付狀態(tài)直接返回成功 Order order orderMapper.selectByOrderNo(notify.getOrderNo()); if (order.getStatus() ! OrderStatus.WAIT_PAY) { return success; } // 第五步更新訂單、扣減余額/庫(kù)存、觸發(fā)交付 orderService.paySuccess(order); return success; } finally { redisTemplate.delete(lockKey); } }這里有幾個(gè)細(xì)節(jié)容易漏漏了就要出事故。第一支付回調(diào)處理完之后一定要返回支付平臺(tái)能識(shí)別的成功字符串比如微信/支付寶要求的success否則它會(huì)一直回調(diào)把日志刷爆。第二訂單更新用樂(lè)觀鎖UPDATE orders SET status ? WHERE id ? AND status 0如果影響行數(shù)為0說(shuō)明狀態(tài)已經(jīng)被別人改過(guò)直接返回成功。第三回調(diào)處理不只要更新訂單狀態(tài)還要把訂單關(guān)聯(lián)的賬號(hào)從待交付改為已交付同時(shí)給用戶寫入交付記錄。這三個(gè)操作必須在一個(gè)事務(wù)里任何一個(gè)失敗都要回滾不然會(huì)出現(xiàn)用戶付了錢但沒(méi)拿到賬號(hào)。4.2 自動(dòng)交付賬號(hào)的庫(kù)存鎖定與釋放自動(dòng)交付的核心是什么時(shí)候把賬號(hào)信息發(fā)給用戶和怎么保證不被超發(fā)。答案很簡(jiǎn)單也很難支付成功后、事務(wù)提交前執(zhí)行賬號(hào)分配。我用代碼來(lái)說(shuō)明賬號(hào)分配的原子操作Transactional(rollbackFor Exception.class) public void paySuccess(Order order) { // 1. 更新訂單狀態(tài) int updated orderMapper.updateStatus(order.getId(), OrderStatus.WAIT_DELIVER, OrderStatus.PAID); if (updated 0) { throw new BizException(訂單狀態(tài)已被更新); } // 2. 從賬號(hào)池分配一個(gè)可用賬號(hào) AccountPool account accountPoolMapper.selectAvailableBySkuId(order.getSkuId()); if (account null) { // 沒(méi)有可分配賬號(hào)要觸發(fā)退款流程不能卡在這 orderMapper.updateStatus(order.getId(), OrderStatus.PAID, OrderStatus.REFUNDING); return; } int lock accountPoolMapper.lockAccount(account.getId(), order.getId()); if (lock 0) { throw new BizException(賬號(hào)已被鎖定); } // 3. 寫入交付記錄 orderDeliveryMapper.insert(new OrderDelivery(order.getId(), account.getAccount(), account.getPassword())); // 4. 更新訂單為租賃中 orderMapper.updateStatus(order.getId(), OrderStatus.PAID, OrderStatus.RENTING); }lockAccount對(duì)應(yīng)的SQL是前面提到的原子占位UPDATE account_pool SET lock_order_id #{orderId} WHERE sku_id #{skuId} AND lock_order_id IS NULL AND status 1 LIMIT 1這個(gè)LIMIT 1很關(guān)鍵它保證同一時(shí)間只有一個(gè)訂單能占到同一個(gè)賬號(hào)。占用之后再把賬號(hào)信息寫進(jìn)交付記錄交付記錄表的內(nèi)容前端只有在下單成功后有權(quán)限查看而且要用加密傳輸。賬號(hào)池沒(méi)有可用賬號(hào)時(shí)不能默默失敗我的做法是觸發(fā)自動(dòng)退款并通知運(yùn)營(yíng)人工介入。一個(gè)訂單已經(jīng)支付了卻因?yàn)橄到y(tǒng)沒(méi)賬號(hào)可發(fā)導(dǎo)致一直掛起那是最傷用戶體驗(yàn)的。4.3 租期到期回收與異常訂單處理租期到期自動(dòng)回收最簡(jiǎn)單的方案是定時(shí)任務(wù)掃表。每五分鐘掃一次租賃中的訂單如果end_time now就把訂單置為已歸還同時(shí)把賬號(hào)池里對(duì)應(yīng)賬號(hào)清掉lock_order_id。這種方案在小規(guī)模下夠用但要注意掃描SQL的寫法必須建索引不然訂單量一大這個(gè)定時(shí)任務(wù)會(huì)拖垮數(shù)據(jù)庫(kù)。更優(yōu)雅的方案是用延遲隊(duì)列比如RabbitMQ的延遲插件或者直接用Redis的ZSet實(shí)現(xiàn)。訂單支付成功后就往ZSet里塞一條{orderId: end_time}后臺(tái)起個(gè)消費(fèi)者每秒查一次ZRANGEBYSCORE now到期的訂單批量處理。這個(gè)方案的好處是準(zhǔn)實(shí)時(shí)用戶體驗(yàn)好很多缺點(diǎn)是要多維護(hù)一套消息中間件。如果你的系統(tǒng)日訂單量在幾百單量級(jí)就用定時(shí)任務(wù)簡(jiǎn)單可靠如果日均幾千單甚至更高再考慮延遲隊(duì)列。異常訂單主要分三種。第一種是已支付但沒(méi)分配到賬號(hào)前面已經(jīng)說(shuō)了要自動(dòng)退款。第二種是租賃中賬號(hào)被用戶改密碼這種大概率是惡意操作需要用戶發(fā)賬號(hào)狀態(tài)截圖證明運(yùn)營(yíng)后臺(tái)介入。第三種是到期之后用戶沒(méi)歸還但賬號(hào)已經(jīng)被別人搶租了這種要在并發(fā)層面堵住就是前面說(shuō)的賬號(hào)分配原子鎖保證一個(gè)賬號(hào)同一時(shí)間只有一個(gè)有效訂單。至于到期續(xù)租比較簡(jiǎn)單的做法是允許用戶在到期前續(xù)訂同一時(shí)間段續(xù)訂成功則把賬號(hào)的lock_order_id平移到新訂單上賬號(hào)不用重新回收。5. 二次開發(fā)必看常見改版需求和對(duì)應(yīng)改動(dòng)點(diǎn)5.1 界面風(fēng)格與移動(dòng)端適配拿到源碼第一步想改的通常是界面。租號(hào)系統(tǒng)這種源碼默認(rèn)后臺(tái)管理系統(tǒng)是Element UI風(fēng)格用戶端H5也會(huì)帶一點(diǎn)后臺(tái)的影子整體偏展示型。如果你想改成更偏C端的產(chǎn)品要做的事不是改顏色變量那么簡(jiǎn)單。首先是移動(dòng)端適配。老源碼很多還是固定寬度布局在手機(jī)上放大了看很別扭。這里我建議直接用rem或vw方案把設(shè)計(jì)稿寬度設(shè)為750用postcss-px-to-viewport這類插件做自動(dòng)轉(zhuǎn)換比手動(dòng)寫媒體查詢省事得多。其次是首頁(yè)和商品詳情頁(yè)的改版優(yōu)先級(jí)。用戶進(jìn)來(lái)第一眼看的是首頁(yè)商品展示的封面圖、價(jià)格標(biāo)簽、銷量數(shù)據(jù)要比什么營(yíng)銷彈窗都重要。詳情頁(yè)的重點(diǎn)則是讓用戶快速找到能租的時(shí)間和價(jià)格降低決策成本。改版時(shí)一定不要?jiǎng)拥讓咏涌诮Y(jié)構(gòu)只改前端展示層等業(yè)務(wù)跑順了再談重構(gòu)。5.2 增加分銷、優(yōu)惠券、會(huì)員等營(yíng)銷能力租號(hào)系統(tǒng)的獲客成本不低很多源碼做出來(lái)之后第一件事就是加分銷功能。分銷的核心是推廣關(guān)系鏈用戶A通過(guò)邀請(qǐng)鏈接注冊(cè)那A就算B的下線B下單之后給A傭金。實(shí)現(xiàn)上需要加一張distribution_relation表記錄上下級(jí)關(guān)系加一張commission_record表記錄傭金流水。邀請(qǐng)鏈接生成可以用用戶ID加密之后拼到URL上用戶打開鏈接先存cookie注冊(cè)成功再把cookie里的邀請(qǐng)人ID寫入用戶表。傭金結(jié)算在訂單支付成功后觸發(fā)金額一般是實(shí)付金額的百分比但要注意退款時(shí)傭金也要同步回滾。優(yōu)惠券相對(duì)簡(jiǎn)單建立券模板和用戶領(lǐng)券兩張表下單時(shí)校驗(yàn)券的適用范圍、有效期、最低門檻。這里要注意一個(gè)租號(hào)場(chǎng)景特有的問(wèn)題租期是動(dòng)態(tài)的訂單金額也是動(dòng)態(tài)的優(yōu)惠券的抵扣要放在訂單金額計(jì)算出來(lái)之后避免出現(xiàn)用了券反而用戶要多付錢的尷尬。會(huì)員體系可以做充值贈(zèng)送、月卡折扣、免押金權(quán)益最核心的是會(huì)員等級(jí)對(duì)應(yīng)的租金折扣這個(gè)建議在后端算價(jià)時(shí)直接按等級(jí)打折前端只展示折扣后的價(jià)格避免前后端算不一致。5.3 多商戶/商家入駐的實(shí)現(xiàn)思路如果你想做的是平臺(tái)型租號(hào)系統(tǒng)而不是自營(yíng)型那就必須支持多商戶。源碼里一般只有一個(gè)merchant_id字段要把整個(gè)商家后臺(tái)的隔離做好。數(shù)據(jù)隔離所有g(shù)oods、account_pool、order都帶merchant_id查詢時(shí)強(qiáng)制拼入該字段防止商家之間越權(quán)看訂單。庫(kù)存隔離賬號(hào)池按商家隔離不同商家之間的賬號(hào)絕不能混用。結(jié)算隔離每個(gè)商家獨(dú)立結(jié)算周期和提現(xiàn)賬戶平臺(tái)只做抽傭。抽傭規(guī)則建議單獨(dú)建表支持按商品類目設(shè)置不同傭金比例。審核流程商家上架的商品要經(jīng)過(guò)平臺(tái)審核才能展示審核在運(yùn)營(yíng)后臺(tái)操作商品表里加一個(gè)audit_status字段就夠。多商戶改造最坑的是權(quán)限控制。平臺(tái)管理員和商家員工都登錄同一個(gè)后臺(tái)但看到的數(shù)據(jù)范圍完全不同。后端接口除了鑒權(quán)還要做數(shù)據(jù)權(quán)限校驗(yàn)我習(xí)慣用AOP的方式在Service層做統(tǒng)一攔截根據(jù)當(dāng)前登錄用戶角色判斷數(shù)據(jù)范圍而不是在每個(gè)Controller里手寫校驗(yàn)否則很容易漏。6. 部署上線與合規(guī)風(fēng)控提醒代碼跑通之后還差什么6.1 環(huán)境準(zhǔn)備與部署命令參考代碼拿到手先別急著改按下面的順序把環(huán)境跑起來(lái)確認(rèn)基礎(chǔ)流程通不通準(zhǔn)備一臺(tái)Linux服務(wù)器2核4G起步加Redis和MySQL4G內(nèi)存勉強(qiáng)夠8G不嫌多。安裝JDK 8/11、Maven、Node.js 16、Nginx、MySQL 5.7/8.0、Redis 6。建庫(kù)建用戶導(dǎo)入源碼里的SQL初始化腳本。修改后端application.yml里的數(shù)據(jù)庫(kù)連接、Redis連接、支付配置。后端打包啟動(dòng)mvn clean package -DskipTests然后java -jar xxx.jar跑起來(lái)。前端安裝依賴并構(gòu)建npm installnpm run build把dist目錄扔到Nginx的web根目錄。一套典型的Nginx配置可以參考server { listen 80; server_name your-domain.com; root /var/www/dist; index index.html; location / { try_files $uri $uri/ /index.html; } location /api/ { proxy_pass http://127.0.0.1:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }前端用的是history模式路由所以才有try_files那一段如果你用的是hash模式這行可以不要。上線之前還有三件事必須做一是全站上HTTPS現(xiàn)在瀏覽器對(duì)HTTP的限制越來(lái)越多不上HTTPS很多功能會(huì)受限二是改掉所有默認(rèn)密碼和調(diào)試接口三是把支付回調(diào)地址改成線上HTTPS地址不然支付平臺(tái)回調(diào)不進(jìn)來(lái)。6.2 實(shí)名認(rèn)證、未成年人保護(hù)與安全風(fēng)控租號(hào)業(yè)務(wù)涉及賬號(hào)使用天然和實(shí)名制、防沉迷、未成年人保護(hù)掛鉤。這部分不是可有可無(wú)的加分項(xiàng)而是決定能不能長(zhǎng)期運(yùn)營(yíng)的合規(guī)底線。如果你準(zhǔn)備把系統(tǒng)真正跑起來(lái)實(shí)名認(rèn)證必須接入。最簡(jiǎn)單的方式是接入第三方實(shí)名認(rèn)證接口前端收集姓名身份證號(hào)后端調(diào)接口校驗(yàn)校驗(yàn)通過(guò)之后在user表里落一個(gè)實(shí)名狀態(tài)字段。有條件的平臺(tái)可以再加人臉識(shí)別成本高一些但風(fēng)控效果好很多。未成年人保護(hù)方面要對(duì)未實(shí)名用戶限制下單對(duì)已實(shí)名但年齡未滿18歲的用戶限制在22點(diǎn)到次日8點(diǎn)之間下單使用賬號(hào)或者干脆不允許未成年用戶下單。具體規(guī)則要以當(dāng)時(shí)當(dāng)?shù)氐恼邽闇?zhǔn)但代碼層面至少要預(yù)留年齡校驗(yàn)和時(shí)段控制的開關(guān)別等到合規(guī)審查來(lái)了再改架構(gòu)。賬號(hào)安全也是租號(hào)平臺(tái)隱藏的雷。用戶租到的賬號(hào)密碼如果明文存數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)一泄露就是批量被盜。至少要做到賬號(hào)密碼在交付接口傳輸時(shí)加密數(shù)據(jù)庫(kù)存儲(chǔ)時(shí)對(duì)密碼做加密處理后臺(tái)日志里禁止打印賬號(hào)密碼原文。交付信息在用戶端展示時(shí)可以加一個(gè)查看密碼的二次驗(yàn)證降低被盜用的風(fēng)險(xiǎn)。6.3 日志、監(jiān)控與數(shù)據(jù)備份代碼跑通只是第一步線上一天不崩才是真本事。日志至少要把關(guān)鍵鏈路打全下單、支付回調(diào)、賬號(hào)分配、自動(dòng)交付、定時(shí)任務(wù)掃描每個(gè)環(huán)節(jié)都要有日志并且打上orderId方便排查一個(gè)訂單從頭到尾經(jīng)歷了什么。排查問(wèn)題最痛苦的不是代碼寫錯(cuò)而是日志里只有三行記錄根本還原不了當(dāng)時(shí)的請(qǐng)求上下文。監(jiān)控方面建議用Spring Boot Actuator暴露健康檢查接口再加上一個(gè)簡(jiǎn)單的定時(shí)探活腳本發(fā)現(xiàn)服務(wù)掛了自動(dòng)重啟或告警。數(shù)據(jù)庫(kù)和Redis的慢查詢?nèi)罩颈仨毚蜷_租號(hào)系統(tǒng)后期很多性能問(wèn)題都是從慢SQL開始的。數(shù)據(jù)備份沒(méi)有捷徑MySQL設(shè)置每天凌晨全量備份重要時(shí)段加binlog增量備份備份文件定期做恢復(fù)演練別等到數(shù)據(jù)沒(méi)了才發(fā)現(xiàn)備份是壞的。支付相關(guān)的對(duì)賬也要做。每天凌晨拉一份支付平臺(tái)的對(duì)賬單和本地已支付訂單做一次比對(duì)發(fā)現(xiàn)本地沒(méi)有但支付平臺(tái)有的單子要自動(dòng)查漏補(bǔ)缺。這個(gè)對(duì)賬機(jī)制在開發(fā)時(shí)不緊急但上線一周內(nèi)不補(bǔ)上財(cái)務(wù)那里遲早出問(wèn)題。最后說(shuō)兩句實(shí)際上做了幾個(gè)租號(hào)項(xiàng)目之后我有一個(gè)很深的體會(huì)租號(hào)系統(tǒng)源碼的難點(diǎn)從來(lái)不在能不能跑通而在跑通之后能不能扛住真實(shí)業(yè)務(wù)。支付回調(diào)冪等、賬號(hào)分配原子化、訂單狀態(tài)機(jī)完善度、到期回收的準(zhǔn)確性這些才是決定系統(tǒng)能不能商用的關(guān)鍵。如果你拿到的源碼在這幾個(gè)環(huán)節(jié)偷工減料千萬(wàn)別覺得后面可以慢慢補(bǔ)——它們是系統(tǒng)的地基地基松了上面蓋多少功能都會(huì)塌。拿到源碼之后我建議先做一件事把訂單生命周期從頭到尾手動(dòng)走一遍用兩個(gè)測(cè)試賬號(hào)下單、支付、交付、歸還全流程測(cè)完就知道這份源碼的成色了。測(cè)完流程再改界面、加營(yíng)銷功能順序反了后面有的是苦頭吃。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
五月丁香综合中文| www.五月天色色.com| 婷婷WWW久久| 丁香五月天亚洲综合| 六月丁香开心婷婷欧美| 婷婷五月成人| 丁香五月天网友自拍啪啪啪视频| 五月丁香999| 欧美搡BBBBB摔BBBBB| 亚洲丁香花五月丁香花| 色婷婷久久综合| 色噜噜伊人| 在线A色| 婷婷色爱| 很很干天天干| AV网在线观看| 操操操www.com| 中文字幕 久久9999| 色婷婷五月天激情久久| 色五月丁香婷婷久草| 玖玖色综合网| 丰滿爆乳一区二区三区| 亚洲精久久| www好屌操| 婷婷五月天免费视频| 天天噜日日噜综合无码| 天天干天天插| 三男玩一女三A片| 亚洲韩国日产综合AV| 五月天丁香婷| 天天日夜夜夜操操操操| 丁香五月另类色婷婷麻豆| 亚洲乱码日产精品BD| 六月婷在线| 玖玖国产视频一区| 九九热视频思思| 久热一本| 色97啪啪| 丁香五月狠狠综合欧美| 爆乳熟妇一区二区三区爆乳照片| 精品热青草| 国产乱子轮XXX农村| 亚洲激情五月| 丁香激激情网| 成片免费观看视频大全| 亚洲综合在线播放| 99精色| 丁香婷婷影院| 婷婷激情四射网| 26uuu国产精品| 激情丁香五月| 亚洲综合碰| 激情婷婷久久| 色色日本| 教师性爱毛片| 五月丁香六月日逼| 婷婷色五月激情| 91丁香色五月| 婷婷婷五月天最新综合你懂的| 999热在线视频| 噢美99| 思思久久99热| 久久99这里| 久色资源| 久婷婷久草| 婷婷欧美激情综合| 久久综合中文| 亚洲情色一区| 激情五月婷婷综合| 日本人妻久久| 手机免费福利视频| 性爱网五月婷婷| 久热只有这里有精品| 久久婷婷人人| 九九色播五月丁香| 99视频| 色五月天婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷 | 亚洲V国产V欧美V久久久久久| 色碰碰| 综合五月天完整| www.久久| 一根材五月婷成人| 五月丁香色色网| PORNY九色9l自拍视频成人| 999热在线视频| 风流少妇A片一区二区蜜桃 | 五月婷天天搞视频| 丁香婷婷五月综合欧美另类| 婷婷香五月综合激情| 五月色综合| 97人妻碰碰碰久| 色九亚洲| 伊人色综合影院视频| 五月天色区| 99精品偷自拍| 婷婷五月天成人视频| 国产裸舞福利资源在线视频| 国产超碰在线| 2050人人操免费工开爱| 丁香五月婷婷基地| 先锋男人99资源| 大香蕉AV在线| 婷婷丁香五月六月激情| 丁香五月婷婷图片综合| 五月天社区狠狠| 激情五月天婷婷播播久久综合91| 色婷亚洲| 国产色99| 丁香六月亚洲| 婷婷色亚洲| 99热综合色图| 国产精品美女| 丁香五月综合激情啪啪| 生活片五区| 99亚洲精美视频在线观看| 黄色av高清| 亚洲亚洲人成综合网络| 亚洲愉拍99热成人精品| 99精品偷自拍| 五月天激情国产综合婷婷婷| 色婷婷成人做爰A片免费看网站| 日韩AV大全| 五月色婷婷影院| 久久金品黃色| 97在线刺激| 亚洲欧洲午夜成人精品av| 深爱激清网| 99热99re6国产在线播放| 怡红院精品视频久久久久久久久| 天天插天天| hd五月婷婷在线| 精品无码色| 国产99美少妇| 婷婷久久六月天| 视频综合网| 青草青草久热这里只有精品| 九九热只有精品6| 五月婷六月综合在线观看| 人妻22p| 99狠狠操一| 欧美日韩成人在线网| 国产色99| 丁香 婷婷 激情 综合 五月| 狠狠人妻久久久久久综合丁香| 天天日夜夜草进麻麻的子宫| 五月婷婷插一插| 九九久久综合网站| 这里只有精彩视频| 色播五月婷婷| 国产乱子轮XXX农村| 99免费超碰在线| 久久er99热精品一区二区| 国产亚洲精品AAAAAAA片| 国产SUV精品一区二区883| 亚洲视频在线网站| 久久加勒比| 中文精品在| 热99国产精品| 噜噜噜精品欧美成人在线观看| 亚洲激情97五月天| 久久久久er热| 天天日中文| 99视频啪啪| 色色色婷婷| 婷婷精品免费久久| 七七九九色色| 夜夜骑夜夜撸| www.色综合| 国产乱人偷精品人妻A片| 操操综合网婷婷| 婷婷色六月| 天天搞天天色综合| 久久狠狠色| 五月婷婷无码| 亚洲天堂爱爱| 久久婷婷五月天丁香| 伊人成综合五月婷婷| 密乳Va| 永久的网站AAAA| 婷婷六月天精品| 色色五月婷婷丁香| 婷婷五月天电影网| 婷婷六月久久| 热这里只有精| 欧美色色色色色色| 日本欧美成人片AAAA| 操91综合网| 91avse| WwW天天干| 五月天网站亭亭| 日韩黄黄| 丁香六月婷婷久久亚洲天堂| 77799热| www.色五月.com| 激情久久综合| 亚洲无码免费看| 亚洲视频二区| 日本色色视频| 双性美人被调教到喷水A片| 综合久久综合五月天婷婷| 五月婷婷久久综合| 很很干天天干| 欧美性生交xXxX久久久| 色5月婷婷| 久久色五月天综合网| 香蕉综合网| 久久大大香| 97碰超级人人看| 久久五月丁香伊人青草| 综合激情在线| 丁香五月成人自拍| 好好干av| 99热精品在线| 99 热国产在| 99er久久| 99色爱| AAA久久| 天天爱夜夜爽| 激情人妻蜜夜系列区| 六月99天天婷婷激情综合| 欧美综合激情五月天| 婷婷五月激情丁香| 五月丁香六月激情综合| 六月丁香激情网| 99国产精品久久久久久久久久久| 97操操操| 在线观看欧美| 五月婷免费视频| 日本在线免费中文com.| 婷婷丁香97| 婷婷激情六月中文| 丁香婷婷六月激情综合| 99热这里有精品| 五月天堂色| 99热这里只有精品4| 91av传媒高清在线视频网| 亚洲av成人在线| 99热这里只| 久久精品凹凸分类| 五月激情偷拍婷婷| 玖玖在线视频| 大香蕉久久草| 五月天堂婷婷| 亚洲国产网址| 五月天五月天激情网| 亚洲精品又粗又大又爽A片| 国产ava| 婷婷五月情| 97成人丁香| 伊人成人宗合网| 丁香激情五月天| 亚洲综合五月天婷婷丁香| 月婷婷婷婷五月| 久久五月天精品视频| 思思久久思思| 激情五月婷婷视频| 色情五月天A片| 婷婷五月花| 五月天激日本色情在线| 99这里有精品| 日批在线看| 人妻久久久| 激情五月丁香五月| 婷婷丁香五月综合| 另类图片激情五月天| 五月天堂色| 婷婷五月天综合久久| 综合XX网| 97操操操| 东京热免费视频| 六月色婷婷色| 97精品人人A片免费看| 五月情丁香色| 91|疯狂丨高潮丨对白| 四色 爱 婷婷 精品 亚洲 五月天| www.婷婷.com| 婷婷久久图片| 999婷婷综合| 婷婷人人操| 婷婷丁香成人| 五月婷婷六月丁香综合视频在线| 91 影音先锋| 色色色视频| 日日影院 | 色欲香综合网| 92久操视频| 五月天啪啪啪| 亚洲成人免费在线| 狠狠操狠狠| 丁香五月激情站| 婷婷色影音天| 五月综合视频| 久久这里只有国产| 五月天综合在线| 日日色五月天| 久久九九经典| 丝袜大香蕉| 六月亚洲婷婷6月中文字幕| 大香蕉啪啪网| 五月色 亚洲| 婷婷五月天综合亚洲| 五月亭亭综合五码| aaaa久久| 99色干| 色播五月婷婷综合| 精品九九婷婷| 日日干天天| 丁香六月婷婷综合网| 日本在线播放97| 五月天网站免费欧美| 男人天堂99| 99自拍视频| 色婷婷丁香五月高清在线| 天天爱天天天射AV| 久久天堂| 五月噜噜| 久久婷婷激情四射五月天| AA久久| 操操操av| 色婷婷小视频| 丁香五月婷婷激情尤物| 天天日,夜夜爽| 99热精品10| 九九这里有精品| 亚洲VA在线| 色婷婷五月综合在线| www.激情| 伊人婷婷五月天| 丁香五月天激情网址| 伊人久久丁香狠狠婷婷综合香蕉| 久草五月婷婷| 九玖欧洲亚洲| 五月开心婷婷极品激情| 日本nghangse中文字幕| 99视频只有精品| 五月丁香激情综合欧美| 丁香六月婷婷久久高清| 激情五月天天| 操一操干一干| 五月天开心网| 久久综合网免费视频| 午夜丁香六月婷| 国产亚洲精品AAAAAAA片| 囯产精品久久欠久久久久久九大| 人妻videos人妻高清| 色婷婷情片| 伊人激情AV一区二区三区| 天天影视天天爽天天草| 五月亭亭六月色| 国产一级黄色影片,| 99热免费精品| 婷婷五月六月激情| 精品一区二区三区四区五区六区介绍| 六月丁香六月婷婷欧美| 精品热青草| 激情床戏| 深爱五月激情| 五月丁香欧美综合免费视频| 日本精品在线噜噜噜| 96精品国产综合久久久久久| 99国产在线精品视频| 婷婷五月大香蕉| 色五月亚洲开心网| 熟女五月天久久综合| 久久色五月| 婷婷丁香五月综合久久| 粉嫩AV久久一区二区三区| 狠色狠色综合久久| 激情五月天啪啪| 国产在线中文字幕| 在线网黄| 99狠狠操一| av国产精品| 亚洲操b| 99性爱视频| 欧美天天干天天草| xxxx五月激情| 丁香蜜臀黄色婷婷五月天| 婷婷娌伦网| ai97re99一本| 68热超碰在线| 丁香五月激情图片婷婷| 少妇水多A片太爽了| 无码色| 天天色播| 久热这里只有精品99re| 丁香五月欧美激情| 丁香五月情| 色欲午夜无码久久久久久张津瑜| 几激情五月婷婷色五月色天堂| 99色看| 综合久色五月| 婷婷丁香久久五月综合| 五月丁香啪啪啪啪| 色青五月天| 五月激情综合婷婷| 五月丁香综合伦理片| 丁香五月天激情婷婷丁香六月| 99久久丝| 青青操avbb| 色婷婷五月天激情| 天天看片日日夜夜| 天天艹夜夜爽| 丁香色综合| 五月婷婷丁香狠狠撸久久| 色六月天| 男人的天堂五月丁香| 性生活久久人妻| 99热这里只有精品在线播放 | 99ri精品在线| 91久久久久久久| 久草A片| 97干在线视频| 激情第四色| 91色色色| 日本在线观看99| 97碰碰九九视频| 日韩三级高清无码| 99精品视频推荐| 成人免费高清在线播放| 综合色播| 婷婷伊人綜合中文字幕| 91超级碰碰| 极品色丁香| 久久99激情| 全国最新疫情| 天天狠狠六月婷丁香影院| 五月综合激情视频在线| 人妻九九九九| 婷婷亚洲综合| 天天视频精品9| 婷婷五月激情综合啪啪| 97干免费视频| 五月丁香婷婷AV天堂| 五月丁香色| 久久色五月天| 天天舔日日肏夜夜爽| 开心激情网在线| 久热黄色| 精品一二三区久久AAA片| 伊人高清无码| 久久综合影院| AV天堂淫乩| 五月天色婷婷视频| 五月丁香六月婷婷激情视频在线观看免费 | 亚洲操B| 免费看欧美成人A片无码| 综合六月久久| 婷婷五月天毛片| 99热99干| 天天日天天干天天插天天射| 久久伊人婷婷| 超碰成人黄色网| 99视频在线观看网址| 97操在线视频| 婷婷五月天亚洲图片| 五月婷婷六月丁香在线视频免费在线观看| 久久97| 久久久av久av久片一区二区| 一级无码作爱片| 六月丁香久久| 深爱激情网综合| 九九在线精点品| 99操碰| 中文字幕综合色| 婷婷伊人网| 色婷婷五月婷婷五月婷婷五月| 婷婷五月天激情影片| 天天做天天爱天天高潮| 九九视频在线观看视频6 | 日韩AV免费| 九月激情网| wwwC0maV五月花| 五月天伊人综合| 最近中文字幕2019视频1| 久久婷婷东京热大香樵| 成人久久天天x资源站| 丁香婷婷激情五月天无毒不卡蜜桃| 国产在这里只有精品| 超碰人人摸AV| 五月丁色AV| 99热这里只有精品在线| 国产成人精品一区二区三区视频| 五月天婷婷操逼视频| 99色视频在线观看| 97人人草| 超碰成人AV| 天天在线久久综合| 丁香六月婷婷综合| 色射7856五月天激情四射| 人人色性网| 婷婷涩涩五月天| 五月丁香亭亭电影久久| 婷婷五月激情网站| www.五月丁香| 婷婷天天五月天| 综合激情啪啪| 亚洲精品视频在线播放| 天天射色五月天| 色情一区二区播放| 国内外色色色色色成人视频| 激情99热| 亚洲第一精品成人999久久精品| 久久99综合| 五月丁香六月婷婷成人| 五月丁香六月欧美| 夜精品无码A片一区二区蜜桃 | 日日撸夜夜操| 丁香五月91| 天天干天天射色综合| 9+1视频网址| 91se在线视频| 天堂久久性| 月丁香久久久| 久久这里有精品视频在线免费观看| 婷婷成人五月天成人文学| 丁香婷婷色情| 色噜噜狠狠插综合| 99在线视频观看| 五月天开心成人网| 欧美色婷婷| 伦乱天堂| 99久久6| 伊人www22综合色| 99国产在线| 日本欧美成人片AAAA| 天天肏屄夜夜爽| 操操碰| 丁香五月最新地址| 色色日本欧美| 大香蕉婷婷丁香| 婷婷六月综合激情| 97人妻碰碰碰碰碰久久久久久| 丁香五月网在线观看| 一点色成人网| 色综合久久伊伊婷婷五月| 色婷婷香蕉| 日日爱678| 99九色视频在线观看| 99久久99视频| 爆乳熟妇一区二区三区爆乳照片| 六月丁香六月婷婷欧美| 色色婷婷丁香五月天| 九九偷拍网| 99在线观看精品视频| 丁香五月天社区婷婷| 天天干com| 超碰cap| 五月婷婷综合潮喷| 人操91在线| 色天天综合成人网| 91丨九色丨老熟女激情| 可以看的AV| 另类国产区| 可以看的av网站| 日本精品99网站| 91N 一起草| 狠狠色噜噜色狠狠狠综合久久成人波 | 婷婷六月综合激情| 影音先锋91在线资源站| 天天免费日日夜夜夜夜| 婷婷五月综合社区在线| 色五月播五月| 日本三级日本三级三级人妇四虎| av狠狠操| 丁香五月激情综合在线观看| 久久91久久精品久久| 久 久9 9 热 视 频| 9 9热这里有精品| 婷婷五月天网| 欧美性二区| 成人视频网| 色五月婷婷啪啪五月| 久久婷鲁| 91人人操人人爱| www激情| 能看的av| 天天色,天天日,天天做| 色色色婷| 少妇高潮呻吟A片免费看软件| 婷婷五月激情片| 久久月天堂| 91九色中文| 激情小说五月丁香在线视频观看视频| 久久综合婷婷激情| 天天日日夜夜| 啪啪激情综合| 婷婷五月花| 久久婷婷成人综合色怡春院| 色停停香蕉视频| 国产精品第一国产精品| 五月天色婷婷激情| 久久婷婷六月综合| 成人久碰| 无码激情| 99思思热只有在这里看| 国产av影片| 亚洲爆乳无码精品AAA片蜜桃| 丁香5月婷婷| 91精品国产99久久久久久天美| 亚洲精品V天堂中文字幕| 激情五月视频在线婷婷| 婷婷五月丁香av网站| 99cao婷婷| AV在线免费网站| 婷婷久久夜| 久久五月婷婷视频| 天天爱天天操| 色色COm| 五月天激情小说| 波多野结衣不卡AV| 五月丁香激情啪啪| 色婷婷狠狠干芒果TV| www.99婷婷| 天天操天天干天天射| 亚洲AV日韩无码| 婷婷激情五月天亚洲综合| 色色五月天婷婷丁香| 日产精品一线二线三线芒果| 99热中国| 婷婷色无码| 久久人人九| 色噜噜狠狠色综合日日| 色呦呦美女| 第一区久久网站| 久久99精品九九久久久婷婷| 丁香五月天日韩无码| 久久激情五月婷婷| 综合图片色色| 激情五月com| 99久热精品在线| 丁香六月在线综合| 99热这里是精品| 丁香婷婷情色五月天| 丁香五月婷婷精品视频| 丁香婷婷大香蕉| 3p九色在线| 99色色| 九九99热久久精品66中文字幕| 99re思思热这里| 六月婷婷激情| 97干资源在线观看| 国产成人精品一区二三区熟女在线| 婷婷五月色综合| 丁香 婷婷 亚洲 熟女| 99视频精品视频| 九洲一级A片| 婷婷五月天渟渟| 丁香六月在线综合| 免费看欧美成人A片无码| 91人妻人人做人碰人人爽九色| 综合久久人妻| 日日懆天天懆| 五月丁香六月激情狠狠| 久久久久久久丁香五月天婷婷| 亚洲欧美成人在线观看| 91精品久久久久久久久久| 日日杆天天| 91碰| 26UUU欧美激情一区二区| 丁香涩涩爱| 五月婷婷婷婷婷婷艺术| 99热这只有| 婷五月天天| www.婷婷五月天.com| 六月婷婷香蕉| 天天操五月天| 99热久97| 天天色综| 99在线看视频| 丝袜熟女一区二区三区| 97碰碰九九视频| 亚洲天堂婷婷丁香| 在线观看免费观看在线9久| 五月丁香六月| 猫咪伊人久久| 色色色com| 色婷婷狠狠| 婷婷基地爱| 国产午夜精品久久久观看| 久久99热久久99精品| 99免费视频在线观看爱| 新伍月婷婷| 激情婷婷人妻| 凹凸7777操操操| 丁香五月,开心五月,成人婷婷| 亚洲综合色婷婷| 久操大香蕉| 啊V视频在线观看| 五月丁香婷婷中文| 婷婷色亚洲| 天天做天天爱天天爽在| 五月天色婷婷图片| 99热99热| 日本色视| 超碰色色综合| 五月天成人小说| 99免费在线视频| 午夜性做爰电影| 欧美A级成人婬片免费看理论| av操逼网| 五月丁香婷婷老司机| 在线综合91| 中文字幕日韩成人| 日本综合色图| 婷婷五月天无码熟女| 七七九九色色| 激情婷婷五月天在线观看| 色了色综合| 六月丁香六月婷婷欧美| 色婷婷激情| 午夜丁香婷婷| 8090在线影视少妇| 九九99九九精品免费| www91色网站| 奇米四色五月天| 久久久久久久久99精品| 色999五月色| 天堂爱爱| 激情小说五月欧美亚洲丁香| 天天插天天插| 五月婷婷六月激情| 玖玖婷婷色欲| 在线观看欧美| 五月六月丁香婷婷在线观看| 性日本精品| 操操自拍| 久久九九99| 激情六月婷婷啪啪| xxxx久| 综合激情五月丁香9999久久精| 99精品这里只有免费视频| 色五月婷婷啪啪五月| 五月天影院| 五月婷婷激情| 国外亚洲成AV人片在线观看| 五月丁香六月婷婷激情四射| 五月天亚洲图片婷婷| 五月丁香婷中文| 96丁香六月婷婷蜜桃综合久久| 天天插天天插天天插天天插| 丁香亚洲色综合| 玖玖综合网| 26uuu欧美亚洲日韩| 婷婷五月在线视频| 色婷婷五月综合| 五月婷婷婷色| 亚洲色综合色网| 亚洲人成网亚洲欧洲无码久久| 婷婷五月丁香六月天亚洲综合| dingxiangtingtingliuyue| 亚洲在线操| 成人av在线网| 婷婷六月啪啪| 成人电影丁香六月天| 成人午夜无码视频| 激情五月婷婷色综合| 超碰激情网| 久色五月| 五月天成人免费视频| 超碰97色| 狠狠va| 大香蕉天堂| 久久视9精| 99re99在线看| 五月婷婷色五月| 内射爽无广熟女亚洲| 日韩精品成人在线| 亚洲VA在线| 色五月激情五月天| www,色综合| 亚洲综合视频一下| 91久久久久久久久18| 欧美 日韩 成人| 日日天天天| 天天综合色丁香| 国产亚洲精品AAAAAAA片| 一本久道综合99| 色狠狠色噜噜噜a天堂一区| 色五月六月| 亚洲黄3级片网站欧美| 婷激情五月| 九九热这里只有精品6| 懂色av蜜臀av粉嫩av永陈冠希| 能看的av片| 思思久久精品| 久久五月天视频| 噜噜久| 在线18av | 色欲人妻综合aaaaaaaa网| 丰满人妻一区二区三区| 久久久久久久91| 色综合xx| 久久伊人五月天| 99ri国产在线| 色色国产| 99资源人人| 日日夜夜小色哥| 超碰精品在线| 久久久18| 日本熟妇精品99| 婷婷丁香精品视频在线观看| 丁香五月98| 伊人久久婷婷| 激情四射五月天| 亚洲性爱AV| 国产日批视频免费播放| 五月婷婷av| 激情久久久久久久久久| www.9797国产| www.久久久久久久久久久| www.色擼擼.com| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 亚洲 小说 欧美 激情 另类| www.夜夜操| 激情五月天久久丁香| 99久在线视频| 婷婷色基地在线看| 久青草影院| 51XX嘿嘿午夜无码| AV性爱网| 婷婷丁香91综合| www,婷婷五月天777me,com| 婷婷精品免费久久| 91操操| 人人妻人人澡| 99在线精品视频| 免费黄色视频网址| 五月天大香蕉| 九九视频在线观看| 7月婷婷六月丁香| 丁香桃色网| 五月天丁香六月综合| 四色99久久| 国产日产成人亚洲欧美国产VA| 99爱在线免费视频| 视频综合网| 婷婷在线视频| 五月天婷婷六月| 丰满人妻妇伦又伦精品国产| 九九热在线视频,| 五月天婷婷青青草| 婷婷五月天小说网| 午夜婷婷久久| 美女激情综合| 亚洲五月天,激情视频| 99∨VTV| 五月丁香激情婷婷综合字幕| 国产无遮挡又黄又爽免费网站| 色婷婷五月综合在线| 成人AV在线电影| 色五月色综合| 9999综合99综合人| 五月停停999| 五月激情啪啪| 久久综合九九| 小视频aaa久久久| 日本色99网站| 九九在线精点品| 婷婷五月天AV| 成人国产欧美大片一区| 99热视精品| 教师性爱毛片| 99热| 婷婷成人综合| 成人国产欧美大片一区| 婷婷五月丁香网| 五月激情射| www.夜夜夜| 精品热九九| 丁香五月天激情视频| 欧美久久婷婷| 热99在线| 久久亚洲色导航| 丁香五月激情综合久久| 色偷偷色婷婷| 天天色天天色天天色天天色天天色天天色| 香蕉久久av一区二区三区| 丁香六月欧美| 色五月婷婷91| 久久九九99| 国产精品五月天婷婷| 国内一级精品| 欧美色五月| 黄色笑话深爱激情网丁香五月婷婷啪啪啪啪啪 | 五月婷婷丁香狠狠撸久久| 婷婷五月天亚洲综合| 丁香婷婷色五月激情综合| 99福利视频| 久9热视频| 双性美人被调教到喷水A片| 五月婷婷六月基地| 五月天婷婷久草丁香| 久久激情五月婷婷| 色五月激情五月丁香五月婷婷啪啪综合| 玖玖@三月天天丁香婷婷| AV在线观看网站| 伊人日日干| 丁香婷婷九月| 精品99爱免费视频在线观看| 天堂爱啪啪| 嫩BBB搡BBBB榛BBBB| 天天操天天操天天操天天操天天操 | 99人妻碰碰碰久久久久| 狠狠干婷婷| 婷香五月激情视频| 大香蕉娱乐| www.yw尤物| 色插综合网| 综合性爱网| 99ER热精品视频| 99福利导航| A A色色| 丁香六月综合激情| 91高潮喷水久久久久久久久 | 97视频.干com| 思思久久99热只有频精品66| 五月丁香啪啪啪| 丁香色五月AV在线| 日本熟妇乱妇熟色A片蜜桃| 97色操| 亚洲综合狠狠艹| 久久精彩综合视频| 亚洲色婷婷久久99精品91| 国产精品99久久久久久久女警| 看全色黄大色大片| 区区欧美你爱| 久热这里这里有精品| 九九干视频| 五月四色激情| AV电影在线播放| 色色色在线观看| 激情婷婷丁香色五月| 天天爱天天做天天日| 成人啪啪色婷婷久| 影音先锋 萱萱| 性无码专区无码| 99热最新网址| 五月婷婷啪啪啪| 九九爱看亚洲| 香蕉AV福利精品导航| 天天久久狠狠色综合| 人人爱国产| 六月婷婷色宗合| 天天综合激情| 亲子乱AV一区二区三区下载| 亚洲午夜国产成人电影VA国产欧…| 五月天色色网站| 国产成人99久久亚洲综合精品| www五月| 天天碰夜夜爽| 九六五月天婷婷| 99久热| 人妻操日日| 免费视频1区| 婷婷综合五月| 婷婷亚洲天堂| 色婷婷中文在线| 五月丁香六月激情在线| 。久久久久久久久久久久久久人妻| 婷婷五月丁香五月天| 99色色| 91九色在线视频| 玖玖婷婷免费| av大片在线| 中文字幕丰满孑伦无码专区| 狠狠狠狠狠| 久热无码| 久9热| 99热亚洲| 精品99在线| 91大神操美女| 日韩在线视频网站| 五月天婷婷AV| 色欲婷婷五月天丁香| 婷婷五月天在婷| 成年人99热| 五月婷婷精品视频| 五月天伊人日日噜影片AV| 色狠狠伊人久久五月丁香| 久久99最新| 亚洲激情无码久久| 五月婷婷色色网址| 99热精品10| 丁香婷婷综合激情五月色| 五月狠狠| 久久婷婷五月天激情四射| 丁香 久久| 99色热视频| 久操热线| 九九热亚洲中文在线观看免费| 亚洲综合激情五月久久| 欧美在线视频99| WWW,激情五月天,COM| 天天色伊人| 五月丁香六月婷婷综合伊人| 天天干com| 色婷婷丁香五月在线观看| www一区二区三区| 婷婷激情社区| 激情五月天偷拍综合网| 六月婷婷激情图片| 99欧美| 亚洲精品久久久无码| 最近中文字幕2019视频1| 九九丁香社区欧美激情| 99视频综合网| av第一二区| 日韩无码乱轮| 碰碰女| 婷婷丁香射射| 亚洲狠狠狠色婷婷综合激情久久久| 亚洲十月婷婷综合| 99热在线观看精品免费| 婷婷丁香九月| 久久这里只有精品热在99| 99精品国产乱码久久久人妻| 九色亚洲| 热99精品视频五月| 91狠狠色| 这里只有精品亚洲| 五月丁香六月情婷婷久久| 五月婷婷开心综合| 无码人妻电影| www.丁香五月| 色啦啦视频| 九九99精品视频| www.精品99| 色情五月婷婷| 毛片九九九九九九| 五月色婷| 99er在线观看| 综合网五月| 色色色色色色色色综合网| 婷婷97狠狠成人网站| 久久婷婷五月天激情新地址| 婷五月天丁香婷五月| 无码橾| 激情五月黄色小说| 九九热视频思思| 色五月播五月| 久久久久人妻| 五月婷av| 永久无码色| 九九热精品6| 99re免费精品视频| 久久小说网| 九九偷拍网| 九九视频这里只有精品在线播放| 六月久久狠狠| 91精品久久久久| 色网五月婷婷| 色99热| 操逼123网| 99狠狠| 欧美成人精品A片免费一区99| 在线观看亚洲AV| 五月人人丁香婷婷五月人人丁香| 丁XX 成人| 久久er99热精品一区二区| 久久玖玖综合| 夜夜夜夜做天天天做无码视频| 狠狠激情五月天| 婷婷综合网| 逼特逼在线免费播放| 非洲一级AV| 五月天婷婷开心| 天天操加勒比| 激情五月婷婷综合网| 91久久| 激情性五月天免费小说视频| www久久久| 91九九九九九九| 热五月婷婷| 99er视频在线| 色色五月天丁香| 欧美97超碰| 玖玖在线资源视频| 超级碰碰碰97免费| 大香蕉婷婷婷| 日本色噜| 操日视频| 香蕉视频性爱BB做爱| 五月激情丁香五月| 激情色情五月天| 色欲一区二区三区精品A片| 亚洲综合无码| 玖玖婷婷免费| 激情综合五月激情| 无码色| 成人精品视频99在线观看免费 | 婷婷亚洲天堂| 欧美色小说婷婷| 婷婷五月综合网| 99啪啪网| 天天摸天天高潮天天爽| 久草五月婷婷| 丁香五月综合狠狠| www.lingjunshare.com| 99国产小视频免费观看| 婷婷五月天亚洲丁香| 天天爽夜夜操| 九九热99熟女| 人人草人人视| 亚洲亚洲人成综合网络| 精品久色| 九九亚洲综合| 五月激情六月丁香| 亚洲精品国产熟女久久久| 大香蕉九九| 性生活视频98791| 丁香五月成人自拍| 9999色色色色| 国产人妻777人伦精品HD| 337p大胆噜噜噜噜噜91Av| 九九色色| 婷婷色五月天色色| 99九九精品| 五月天综合在线网| 丁香五月AV综合激情| 久色| 久久9视频| 久99视频在线观看| 久久天堂女人| 丁香色情五月综合网站| 777精品久无码人妻蜜桃| 婷婷激情性爱| 丁香 久久| 日韩无码91| 99热免费看| 区啪精品| 婷婷六月久久综合导航| 亚洲AV成人一区二区在线观看| 99 热| 六月色色| 婷婷五月综合婷婷| 九月婷婷| 玖玖婷婷五月天| 丁香色五月 97干| 9久国产精品| www.99在线| 亚州婷婷五月激情综合| 五月丁香六月玩女人| 玖玖婷婷色五月| 色欲色香综合网| 色九综合| 99热这里只有精品22| 中文不卡av| 免费视频这里只有精品| 99爱在线| 99热这里只有精品最新网址| 午夜在线成人网站免费观看| 成人九九视频| 99丝袜精品视频网站| www.sezonghe| 人操人| 思思热在线免费视频| 97涩婷婷| 丰满人妻一区二区三区| 操97免费超级视频| 亚洲AV人人操| 日本一级一级一级一级| 五月婷精品| 久久99免费视屏| 精国产品一区二区三区A片| 五月激情久久综合| 色99色| 婷婷亚洲在线| 九色视频入口91| 五月天丁香| 丁香激情久久| 色播婷婷大香蕉| 成人视频一区| 丁香五月电影| 国产99视频永久免费| 99久久久精品| 五月丁香婷婷六月| 98色花堂98t.R| 色婷久久| sewuyuejiqingwang| 影音先锋男人AV资源站| 五月涩涩网| 丁香色影院| 久九色| 久久成人性爱| 97色射| 色爱综合网| 色一区高清| 在线只有精品| 夜夜撸天天操| 99热插| 99热这里有精品| 丁香五月婷婷欧美成人色图| 色五月婷婷伊人| 九九在线精点品| 五月丁香六月欧美综合| 99视频啪啪| 九九99在线免费在线观看视频| 99re久热只有精品6在线直播| 91午夜婷婷狠狠久久综合9色| 色色射| 激情五月天久久丁香| 亚洲日韩操B| 99热在线看片| 丁香久久AV| 色站9/| 久9久9久9久9久9久9| 色婷婷丁香五月天在线视频| www.99操| 色婷婷精品视频| 夜夜躁狠狠| 激情婷婷99| 综合久久婷婷| 26UUU精品一区二区c〇m| 玖玖色资源| 香蕉AV777XXX色综合一区| 综合一区二区三区| 综合xx网| 99九九玖玖| 嫩草极品| 久碰婷婷视频| 六月丁香深深爱| 婷婷的色色五月天| 五月婷婷综合激情| 丁香六月婷婷色XXXXX| 人妻乱码久久久| 丁香五月婷婷总啪啪| www,8050,午夜三级| 超级碰 久久9| 国产9色在线/日韩| 五月丁香狠狠| 丁香五月色| 久久黄色片| 激情另类综合| 99爱无码| 99综合色色色| 色婷婷在线影院| 国产美女无遮挡裸体毛片A片| www.99热视频| 思思久久99热只有频精品66| 婷激情五月天视频导航| 另类视在线| 大香蕉520| 激情99| 丁香五月骚喷水视频| 涩综合网| 精品自拍97| 99日韩| 九月综合| 五月丁香999| 97在线碰| 婷婷趴趴| 无码碰碰| 国产精品久久久久久亚洲毛片| 激情婷婷久久| 激情五月狠狠| 亚洲无码成人性爰网| 亚洲综合视频在线| 天天干天天日蜜臀av| 日本狠狠干| 久久99性爱| 超热久碰.com| 成人丁香婷婷| 久久丁香五月天| 丁香六月婷婷一区二区三区| 另类专区在线观看|