日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

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

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

Vue租號系統(tǒng)源碼深度解析:訂單生命周期與支付交付核心設(shè)計 簡介這是一套基于Vue技術(shù)棧構(gòu)建的完整游戲賬號出租平臺源碼面向前端開發(fā)者、中小型游戲服務(wù)創(chuàng)業(yè)團(tuán)隊及虛擬資產(chǎn)交易平臺建設(shè)者用于快速搭建租號玩類B2C平臺解決賬號上架、租賃周期管理、訂單支付、用戶信用體系等核心業(yè)務(wù)問題。資源包共2000個文件含1039個JavaScript邏輯文件、418個HTML頁面模板、197個CSS樣式文件含bootstrap、vendors、app_explorer等多套主題樣式、70個Vue單文件組件及5個SQL數(shù)據(jù)庫腳本整體體積達(dá)144.17MB結(jié)構(gòu)覆蓋PC端與WAP端雙適配體系。已有64人學(xué)習(xí)下載源碼具備完整前后端交互能力提供可運行的賬號發(fā)布-搜索-下單-履約全流程包含權(quán)限控制模塊、訂單狀態(tài)機(jī)、租期倒計時組件及安全登錄鑒權(quán)邏輯目錄層級清晰適合二次開發(fā)與業(yè)務(wù)定制。 先繞開一個常見誤區(qū)很多人看到vue租號系統(tǒng)源碼這串名字第一反應(yīng)是找一份能直接跑起來、上線就能賺錢的完整項目。但真正拿到手之后才發(fā)現(xiàn)源碼只是起點租號平臺的核心不是那一堆頁面和接口而是訂單生命周期、庫存鎖、支付回調(diào)冪等、賬號自動交付這一整套業(yè)務(wù)閉環(huán)。這篇東西不打算逐行貼代碼而是把我做過、改過、也幫別人復(fù)盤過的租號系統(tǒng)從架構(gòu)設(shè)計到核心實現(xiàn)再到上線之后才暴露的坑完整過一遍。適合誰看準(zhǔn)備在現(xiàn)有電商或虛擬商品項目里增加賬號出租能力的技術(shù)同學(xué)想基于開源Vue全家桶項目做二次開發(fā)的獨立開發(fā)者以及準(zhǔn)備接外包、評估這類系統(tǒng)工作量的開發(fā)。如果你是純粹想找一份源碼直接跑demo玩前面幾章也能幫你少走很多彎路。1. 租號系統(tǒng)源碼到底在解決什么問題一個訂單的完整生命周期1.1 租號業(yè)務(wù)的本質(zhì)是虛擬商品租賃平臺游戲賬號出租、視頻會員共享、各種軟件試用賬號表面上五花八門底層模型完全一樣。它和傳統(tǒng)電商最大的區(qū)別在于賣出去的商品不需要回收而租出去的賬號必須按時歸還還要保證同一時間只有一個用戶在用。這就是庫存模型的核心差別。傳統(tǒng)電商盯的是SKU庫存賣一個減一個補(bǔ)貨靠采購。租號系統(tǒng)盯的是時間片同一個賬號可以連續(xù)租給不同的人只要時間不重疊。比如一個賬號有3個游戲區(qū)服每個區(qū)服同一時間只能租給一個人那這個賬號的可用庫存就不是1而是3個區(qū)服各自獨立的時間片。很多剛做租號系統(tǒng)的人在這里就理解偏了導(dǎo)致訂單并發(fā)校驗做了跟沒做一樣。從實際項目看租號系統(tǒng)至少包含這幾個實體用戶端租客、商家端號主、運營端平臺管理員。用戶端要做的有注冊登錄、瀏覽商品、搜索篩選、下單支付、查看訂單、續(xù)租退租。商家端要做的有賬號錄入、庫存設(shè)置、排期管理、收益結(jié)算。運營端更多是審核、類目管理、風(fēng)控、訂單介入處理。這些需求堆在一起源碼的體量不會小。市面上流通的vue租號系統(tǒng)源碼前端基本是Vue 2或Vue 3 Element UI Axios Vue Router Vuex/Pinia這套組合后端多是Spring Boot MyBatis-Plus MySQL Redis部分帶定時任務(wù)和支付模塊。這個組合本身不是最潮的但勝在生態(tài)成熟、招人容易、踩坑資料多。我后面所有討論都基于這套主流架構(gòu)如果你拿到的是PHP或Node后端版本核心業(yè)務(wù)邏輯看完也能平移過去。1.2 一個訂單從下單到歸還系統(tǒng)要做哪些事我把租號訂單的生命周期拆成下面七步后面所有設(shè)計都圍繞這七步展開用戶瀏覽商品選區(qū)服、選租期看到實時價格。用戶下單系統(tǒng)立即鎖定對應(yīng)時間片的庫存。用戶支付支付平臺回調(diào)通知后端。后端驗簽、處理回調(diào)更新訂單為已支付觸發(fā)賬號自動交付。用戶拿到賬號密碼開始使用計時開始。租期結(jié)束系統(tǒng)自動回收賬號或觸發(fā)續(xù)租提醒。用戶確認(rèn)歸還訂單完結(jié)商家結(jié)算。這七步每一步都能出事故。第2步最容易出現(xiàn)超賣第4步最容易出現(xiàn)重復(fù)發(fā)貨第6步最容易出現(xiàn)賬號未回收導(dǎo)致下一單用戶無法登錄。所以判斷一份租號系統(tǒng)源碼值不值得用別先看界面好不好看直接翻這七個環(huán)節(jié)的代碼看它有沒有兜底。下單鎖庫存這塊我在項目里用的方案是下單預(yù)占 支付確認(rèn) 超時釋放。用戶點下單后端在Redis里對商品SKU加一個分布式鎖鎖住了就創(chuàng)建訂單并占用對應(yīng)時間片然后在訂單表寫一個過期時間比如15分鐘。如果用戶一直不支付定時任務(wù)掃描超時訂單自動改狀態(tài)并釋放庫存。這樣能最大限度避免用戶下單但沒付錢把庫存占死的問題。自動交付是租號系統(tǒng)和普通電商最大的差異點。普通電商發(fā)貨是下載一個虛擬商品鏈接或者快遞單號租號系統(tǒng)需要在支付成功之后把賬號、密碼甚至登錄用的驗證信息安全地發(fā)給買家同時不能讓買家在賣家沒收到錢之前看到這些信息。我見過有些簡化版源碼是支付成功后直接把賬號明文下發(fā)這要是訂單金額大一點糾紛會非常難看。更穩(wěn)的做法是支付回調(diào)處理完、訂單真正進(jìn)入已支付狀態(tài)之后再走一條獨立的交付服務(wù)去發(fā)放賬號信息而且發(fā)放記錄要留痕。2. 技術(shù)選型與項目架構(gòu)為什么這套組合跑得穩(wěn)2.1 前端用Vue全家桶后端用Spring Boot前后端分離的原因租號系統(tǒng)不是內(nèi)容站它是重交互、重狀態(tài)流轉(zhuǎn)的平臺型應(yīng)用。用戶在一個頁面上可能要連續(xù)完成搜索、篩選、選規(guī)格、看價格、下單、支付好幾個動作每個動作都要與后端交互。Vue這類前端框架的價值在于把界面狀態(tài)管理和接口數(shù)據(jù)綁定做得足夠順手Vuex/Pinia存用戶登錄態(tài)和購物車、路由守衛(wèi)控制頁面權(quán)限Element UI快速壘出后臺管理界面。前后端分離之后前端可以獨立部署在CDN或Nginx上后端只暴露JSON接口天然適應(yīng)小程序、H5、APP多端復(fù)用同一套后端邏輯。這個收益在租號系統(tǒng)上尤其明顯——移動端流量通常占大頭但開發(fā)人力大概率只夠維護(hù)一套H5。選Vue 2還是Vue 3我的建議是看源碼底子。如果你拿到的是Vue 2的老項目別盲目升級Vue 3Element UI到Element Plus的遷移成本遠(yuǎn)比你想象的高。如果是從零開始那就直接Vue 3 Vite Pinia Element Plus沒必要在Vue 2上給自己挖舊坑。后端用Spring Boot看中的是整合能力。租號系統(tǒng)涉及的模塊多用戶體系JWT認(rèn)證、商品模塊、訂單模塊、支付模塊、定時任務(wù)、消息通知。Spring Boot的starter機(jī)制能把這一堆東西組織得比較干凈。MyBatis-Plus解放了大部分單表CRUD復(fù)雜查詢用XML手寫SQL也不心疼。我自己的習(xí)慣是普通列表和詳情直接用MyBatis-Plus的條件構(gòu)造器涉及訂單維度、多表統(tǒng)計再手寫SQL不然性能會掉得很快。2.2 數(shù)據(jù)庫核心表設(shè)計與關(guān)鍵字段數(shù)據(jù)庫表設(shè)計直接決定后續(xù)能不能高效改版。這里列一張我常用的核心表清單拿到的源碼里即使表名不一樣對照著關(guān)系看也能快速定位表名核心字段作用userid, phone, password, nickname, status用戶與商家統(tǒng)一賬號通過role區(qū)分goodsid, title, category_id, cover, status, merchant_id商品主表一個商品下面掛多個SKUgoods_skuid, goods_id, sku_name, stock_mode, price_rule, game_region商品規(guī)格比如區(qū)服、版本、段位account_poolid, sku_id, account, password, status, lock_order_id實際要租出去的賬號池一個SKU對應(yīng)多個賬號time_slotid, account_id, start_time, end_time, status賬號的時間片用來做并發(fā)排期ordersid, order_no, user_id, sku_id, account_id, amount, status, expire_time訂單主表status是整個系統(tǒng)的核心order_deliveryid, order_id, content, deliver_time交付記錄發(fā)放賬號密碼的留痕settlementid, merchant_id, period, amount, status商家結(jié)算記錄重點說兩個容易搞錯的字段。第一個是goods_sku的stock_mode它決定這個SKU是份數(shù)庫存還是時間片庫存。視頻會員賬號一般一份只能同時租給一個人游戲區(qū)服賬號可能同一賬號不同區(qū)服可以并發(fā)。如果你不區(qū)分這兩種模式并發(fā)控制就會亂。第二個是orders表里的status我習(xí)慣把它做成tinyint枚舉0待支付、1已支付待交付、2交付中、3租賃中、4已歸還、5已取消、6退款中、7已退款。很多人喜歡用字符串狀態(tài)后期統(tǒng)計和索引都不好用。賬號池和訂單關(guān)聯(lián)也要想清楚。一個訂單支付成功之后系統(tǒng)從account_pool里分配一個具體賬號寫入orders.account_id。這個分配動作要加鎖防止同一個賬號同一時間被分配給兩個訂單。我做的方案是account_pool表加一個lock_order_id字段分配時用UPDATE account_pool SET lock_order_id ? WHERE id ? AND lock_order_id IS NULL這種方式做原子占位比先查后改安全得多。2.3 Redis在庫存、分布式鎖、訂單防重里的位置租號系統(tǒng)里Redis不是可選項是必選項。我用它主要干四件事。第一商品詳情的緩存。游戲賬號的商品詳情頁訪問量遠(yuǎn)大于下單量直接把詳情頁的數(shù)據(jù)商品信息、SKU列表、價格、庫存狀態(tài)緩存到Redis接口響應(yīng)能壓到幾十毫秒。緩存失效策略我選的是更新后刪除而不是定時過期因為商品價格和庫存是實時變化的定時過期會吐臟數(shù)據(jù)。第二分布式鎖。前面說的賬號分配、庫存扣減都需要鎖。單機(jī)環(huán)境synchronized夠用一旦上多實例部署就必須用Redis的SETNX或Redisson的ReentrantLock。我實際項目中用的是Redisson因為它自帶看門狗機(jī)制不需要自己處理鎖超時續(xù)期少很多焦慮。第三訂單支付回調(diào)的冪等判斷。支付平臺回調(diào)可能同一筆訂單回調(diào)好幾次網(wǎng)絡(luò)抖動還會延遲重復(fù)投遞。我在回調(diào)里先查一遍訂單狀態(tài)如果已經(jīng)是已支付就直接返回成功同時用Redis的SETNX加一個短期的回調(diào)處理中鎖防止兩個線程同時處理同一筆訂單。第四熱點數(shù)據(jù)計數(shù)。比如商品瀏覽量、今日出租次數(shù)這種統(tǒng)計字段直接寫MySQL會拖慢主庫先放Redis做累加定時批量刷到MySQL。這個在租號平臺流量起來之后特別有用。3. 前端頁面與交互的核心實現(xiàn)從首頁到支付成功要寫哪些東西3.1 路由守衛(wèi)、登錄態(tài)與權(quán)限控制租號系統(tǒng)前端第一個要處理的不是頁面好看而是哪些頁面必須登錄才能看。我的經(jīng)驗是首頁、商品列表、商品詳情可以匿名訪問下單、結(jié)算、個人中心、訂單列表必須登錄商家后臺和平臺管理后臺需要額外角色校驗。Vue Router的全局前置守衛(wèi)是處理這個的統(tǒng)一入口。核心邏輯可以簡化為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() })這里有一個在實戰(zhàn)中很容易踩的坑登錄態(tài)信息放在Vuex里一刷新頁面Vuex就清空了路由守衛(wèi)判斷用戶信息時發(fā)現(xiàn)不存在直接把它踢回登錄頁。解決辦法是刷新后從本地存儲恢復(fù)token再調(diào)一個獲取用戶信息的接口把用戶狀態(tài)拉回來或者把用戶基礎(chǔ)信息加密存到localStorage里刷新時直接回填。我推薦前者因為localStorage里的用戶信息可能過期后端接口拉取的主數(shù)據(jù)永遠(yuǎn)是最新的。在前端框架的選擇上如果你拿到的租號系統(tǒng)源碼是Vue 2的老項目并且已經(jīng)有Element UI的成套頁面我建議不要急著遷移到Vue 3。Vue 2的生態(tài)足夠穩(wěn)在租號系統(tǒng)這種業(yè)務(wù)場景里Vue 3帶來的性能提升并不是決定因素遷移成本卻是實打?qū)嵉?。真正決定系統(tǒng)能不能用的是下單流程有沒有bug、支付回調(diào)有沒有漏單而不是Vue版本。3.2 商品詳情頁的SKU聯(lián)動、租期計價與下單流程商品詳情頁是租號系統(tǒng)前端交互最復(fù)雜的頁面沒有之一。它至少要承載這幾個功能SKU切換區(qū)服、版本、段位、租期選擇按小時/按天、自定義時長、價格實時計算、庫存狀態(tài)展示。SKU聯(lián)動和計價可以直接用一個響應(yīng)式對象管理const skuState reactive({ region: null, // 區(qū)服 version: null, // 版本 hours: 1, // 租期 price: 0 // 計算后的價格 }) 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)價格規(guī)則這里一定要在后端也計算一遍前端價格只能作為展示。原因很簡單前端都是可以被改的如果用戶用抓包工具改了價格參數(shù)后端不校驗就要虧錢。我經(jīng)歷過一次事故用戶把租期參數(shù)改了價格沒改后臺還按原價格校驗結(jié)果一筆大額訂單只付了零頭從那之后前端價格一律僅供參考后端訂單模塊用價格規(guī)則另行計算。下單流程的交互細(xì)節(jié)也很重要。用戶點擊下單后前端應(yīng)該立即調(diào)創(chuàng)建訂單接口同時進(jìn)入15分鐘支付倒計時。倒計時結(jié)束訂單自動取消前端要監(jiān)聽這個狀態(tài)變化不能等癥狀了才知道。支付方式一般就兩種平臺支付微信/支付寶和余額支付。余額支付在租號平臺很常見用戶先充值再消費。這個邏輯要特別注意并發(fā)用戶在多個設(shè)備上同時消費后端要加余額扣減的樂觀鎖UPDATE user SET balance balance - ? WHERE id ? AND balance ?影響行數(shù)為0就是余額不夠或并發(fā)沖突。3.3 訂單狀態(tài)在用戶端的展示邏輯訂單列表和詳情頁的狀態(tài)展示前端看起來只是幾個標(biāo)簽后端要配合返回很多信息。比如租賃中的訂單要顯示剩余時長已取消的訂單要顯示取消原因退款中的訂單要顯示退款進(jìn)度。我建議后端在訂單列表接口里直接返回一個status_text和status_action字段把當(dāng)前狀態(tài)對應(yīng)的文字和可操作按鈕去支付、申請退款、確認(rèn)歸還一起算好返回前端只負(fù)責(zé)渲染。這樣后端改狀態(tài)規(guī)則時不需要前端聯(lián)動發(fā)版。租期剩余時間的展示如果全靠前端倒計時用戶一刷新就亂了。更穩(wěn)的做法是后端在訂單詳情里返回一個end_time時間戳前端用當(dāng)前時間戳算剩余毫秒本地做每秒遞減刷新之后重新用接口時間校準(zhǔn)。租賃中的訂單在剩余時間小于一定閾值時前端要彈續(xù)租提示這個入口也很關(guān)鍵因為它能顯著提升客單價。4. 后端關(guān)鍵接口與狀態(tài)機(jī)設(shè)計支付、發(fā)貨、租期到期不能出錯4.1 支付回調(diào)的驗簽與冪等處理支付回調(diào)是整個租號系統(tǒng)里最不能出錯的環(huán)節(jié)。支付平臺的通知可能會重復(fù)發(fā)送回調(diào)數(shù)據(jù)也可能是偽造的不驗證簽名就處理等于把自己的錢包敞開讓別人畫。我在Spring Boot里的處理順序是先驗簽再查訂單再冪等判斷最后落庫。PostMapping(/pay/callback) public String payCallback(RequestBody String payload, RequestHeader(sign) String sign) { // 第一步驗簽失敗直接返回失敗 if (!payService.verifySign(payload, sign)) { return sign error; } // 第二步解析出訂單號 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; } // 第五步更新訂單、扣減余額/庫存、觸發(fā)交付 orderService.paySuccess(order); return success; } finally { redisTemplate.delete(lockKey); } }這里有幾個細(xì)節(jié)容易漏漏了就要出事故。第一支付回調(diào)處理完之后一定要返回支付平臺能識別的成功字符串比如微信/支付寶要求的success否則它會一直回調(diào)把日志刷爆。第二訂單更新用樂觀鎖UPDATE orders SET status ? WHERE id ? AND status 0如果影響行數(shù)為0說明狀態(tài)已經(jīng)被別人改過直接返回成功。第三回調(diào)處理不只要更新訂單狀態(tài)還要把訂單關(guān)聯(lián)的賬號從待交付改為已交付同時給用戶寫入交付記錄。這三個操作必須在一個事務(wù)里任何一個失敗都要回滾不然會出現(xiàn)用戶付了錢但沒拿到賬號。4.2 自動交付賬號的庫存鎖定與釋放自動交付的核心是什么時候把賬號信息發(fā)給用戶和怎么保證不被超發(fā)。答案很簡單也很難支付成功后、事務(wù)提交前執(zhí)行賬號分配。我用代碼來說明賬號分配的原子操作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. 從賬號池分配一個可用賬號 AccountPool account accountPoolMapper.selectAvailableBySkuId(order.getSkuId()); if (account null) { // 沒有可分配賬號要觸發(fā)退款流程不能卡在這 orderMapper.updateStatus(order.getId(), OrderStatus.PAID, OrderStatus.REFUNDING); return; } int lock accountPoolMapper.lockAccount(account.getId(), order.getId()); if (lock 0) { throw new BizException(賬號已被鎖定); } // 3. 寫入交付記錄 orderDeliveryMapper.insert(new OrderDelivery(order.getId(), account.getAccount(), account.getPassword())); // 4. 更新訂單為租賃中 orderMapper.updateStatus(order.getId(), OrderStatus.PAID, OrderStatus.RENTING); }lockAccount對應(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這個LIMIT 1很關(guān)鍵它保證同一時間只有一個訂單能占到同一個賬號。占用之后再把賬號信息寫進(jìn)交付記錄交付記錄表的內(nèi)容前端只有在下單成功后有權(quán)限查看而且要用加密傳輸。賬號池沒有可用賬號時不能默默失敗我的做法是觸發(fā)自動退款并通知運營人工介入。一個訂單已經(jīng)支付了卻因為系統(tǒng)沒賬號可發(fā)導(dǎo)致一直掛起那是最傷用戶體驗的。4.3 租期到期回收與異常訂單處理租期到期自動回收最簡單的方案是定時任務(wù)掃表。每五分鐘掃一次租賃中的訂單如果end_time now就把訂單置為已歸還同時把賬號池里對應(yīng)賬號清掉lock_order_id。這種方案在小規(guī)模下夠用但要注意掃描SQL的寫法必須建索引不然訂單量一大這個定時任務(wù)會拖垮數(shù)據(jù)庫。更優(yōu)雅的方案是用延遲隊列比如RabbitMQ的延遲插件或者直接用Redis的ZSet實現(xiàn)。訂單支付成功后就往ZSet里塞一條{orderId: end_time}后臺起個消費者每秒查一次ZRANGEBYSCORE now到期的訂單批量處理。這個方案的好處是準(zhǔn)實時用戶體驗好很多缺點是要多維護(hù)一套消息中間件。如果你的系統(tǒng)日訂單量在幾百單量級就用定時任務(wù)簡單可靠如果日均幾千單甚至更高再考慮延遲隊列。異常訂單主要分三種。第一種是已支付但沒分配到賬號前面已經(jīng)說了要自動退款。第二種是租賃中賬號被用戶改密碼這種大概率是惡意操作需要用戶發(fā)賬號狀態(tài)截圖證明運營后臺介入。第三種是到期之后用戶沒歸還但賬號已經(jīng)被別人搶租了這種要在并發(fā)層面堵住就是前面說的賬號分配原子鎖保證一個賬號同一時間只有一個有效訂單。至于到期續(xù)租比較簡單的做法是允許用戶在到期前續(xù)訂同一時間段續(xù)訂成功則把賬號的lock_order_id平移到新訂單上賬號不用重新回收。5. 二次開發(fā)必看常見改版需求和對應(yīng)改動點5.1 界面風(fēng)格與移動端適配拿到源碼第一步想改的通常是界面。租號系統(tǒng)這種源碼默認(rèn)后臺管理系統(tǒng)是Element UI風(fēng)格用戶端H5也會帶一點后臺的影子整體偏展示型。如果你想改成更偏C端的產(chǎn)品要做的事不是改顏色變量那么簡單。首先是移動端適配。老源碼很多還是固定寬度布局在手機(jī)上放大了看很別扭。這里我建議直接用rem或vw方案把設(shè)計稿寬度設(shè)為750用postcss-px-to-viewport這類插件做自動轉(zhuǎn)換比手動寫媒體查詢省事得多。其次是首頁和商品詳情頁的改版優(yōu)先級。用戶進(jìn)來第一眼看的是首頁商品展示的封面圖、價格標(biāo)簽、銷量數(shù)據(jù)要比什么營銷彈窗都重要。詳情頁的重點則是讓用戶快速找到能租的時間和價格降低決策成本。改版時一定不要動底層接口結(jié)構(gòu)只改前端展示層等業(yè)務(wù)跑順了再談重構(gòu)。5.2 增加分銷、優(yōu)惠券、會員等營銷能力租號系統(tǒng)的獲客成本不低很多源碼做出來之后第一件事就是加分銷功能。分銷的核心是推廣關(guān)系鏈用戶A通過邀請鏈接注冊那A就算B的下線B下單之后給A傭金。實現(xiàn)上需要加一張distribution_relation表記錄上下級關(guān)系加一張commission_record表記錄傭金流水。邀請鏈接生成可以用用戶ID加密之后拼到URL上用戶打開鏈接先存cookie注冊成功再把cookie里的邀請人ID寫入用戶表。傭金結(jié)算在訂單支付成功后觸發(fā)金額一般是實付金額的百分比但要注意退款時傭金也要同步回滾。優(yōu)惠券相對簡單建立券模板和用戶領(lǐng)券兩張表下單時校驗券的適用范圍、有效期、最低門檻。這里要注意一個租號場景特有的問題租期是動態(tài)的訂單金額也是動態(tài)的優(yōu)惠券的抵扣要放在訂單金額計算出來之后避免出現(xiàn)用了券反而用戶要多付錢的尷尬。會員體系可以做充值贈送、月卡折扣、免押金權(quán)益最核心的是會員等級對應(yīng)的租金折扣這個建議在后端算價時直接按等級打折前端只展示折扣后的價格避免前后端算不一致。5.3 多商戶/商家入駐的實現(xiàn)思路如果你想做的是平臺型租號系統(tǒng)而不是自營型那就必須支持多商戶。源碼里一般只有一個merchant_id字段要把整個商家后臺的隔離做好。數(shù)據(jù)隔離所有g(shù)oods、account_pool、order都帶merchant_id查詢時強(qiáng)制拼入該字段防止商家之間越權(quán)看訂單。庫存隔離賬號池按商家隔離不同商家之間的賬號絕不能混用。結(jié)算隔離每個商家獨立結(jié)算周期和提現(xiàn)賬戶平臺只做抽傭。抽傭規(guī)則建議單獨建表支持按商品類目設(shè)置不同傭金比例。審核流程商家上架的商品要經(jīng)過平臺審核才能展示審核在運營后臺操作商品表里加一個audit_status字段就夠。多商戶改造最坑的是權(quán)限控制。平臺管理員和商家員工都登錄同一個后臺但看到的數(shù)據(jù)范圍完全不同。后端接口除了鑒權(quán)還要做數(shù)據(jù)權(quán)限校驗我習(xí)慣用AOP的方式在Service層做統(tǒng)一攔截根據(jù)當(dāng)前登錄用戶角色判斷數(shù)據(jù)范圍而不是在每個Controller里手寫校驗否則很容易漏。6. 部署上線與合規(guī)風(fēng)控提醒代碼跑通之后還差什么6.1 環(huán)境準(zhǔn)備與部署命令參考代碼拿到手先別急著改按下面的順序把環(huán)境跑起來確認(rèn)基礎(chǔ)流程通不通準(zhǔn)備一臺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。建庫建用戶導(dǎo)入源碼里的SQL初始化腳本。修改后端application.yml里的數(shù)據(jù)庫連接、Redis連接、支付配置。后端打包啟動mvn clean package -DskipTests然后java -jar xxx.jar跑起來。前端安裝依賴并構(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)在瀏覽器對HTTP的限制越來越多不上HTTPS很多功能會受限二是改掉所有默認(rèn)密碼和調(diào)試接口三是把支付回調(diào)地址改成線上HTTPS地址不然支付平臺回調(diào)不進(jìn)來。6.2 實名認(rèn)證、未成年人保護(hù)與安全風(fēng)控租號業(yè)務(wù)涉及賬號使用天然和實名制、防沉迷、未成年人保護(hù)掛鉤。這部分不是可有可無的加分項而是決定能不能長期運營的合規(guī)底線。如果你準(zhǔn)備把系統(tǒng)真正跑起來實名認(rèn)證必須接入。最簡單的方式是接入第三方實名認(rèn)證接口前端收集姓名身份證號后端調(diào)接口校驗校驗通過之后在user表里落一個實名狀態(tài)字段。有條件的平臺可以再加人臉識別成本高一些但風(fēng)控效果好很多。未成年人保護(hù)方面要對未實名用戶限制下單對已實名但年齡未滿18歲的用戶限制在22點到次日8點之間下單使用賬號或者干脆不允許未成年用戶下單。具體規(guī)則要以當(dāng)時當(dāng)?shù)氐恼邽闇?zhǔn)但代碼層面至少要預(yù)留年齡校驗和時段控制的開關(guān)別等到合規(guī)審查來了再改架構(gòu)。賬號安全也是租號平臺隱藏的雷。用戶租到的賬號密碼如果明文存數(shù)據(jù)庫數(shù)據(jù)庫一泄露就是批量被盜。至少要做到賬號密碼在交付接口傳輸時加密數(shù)據(jù)庫存儲時對密碼做加密處理后臺日志里禁止打印賬號密碼原文。交付信息在用戶端展示時可以加一個查看密碼的二次驗證降低被盜用的風(fēng)險。6.3 日志、監(jiān)控與數(shù)據(jù)備份代碼跑通只是第一步線上一天不崩才是真本事。日志至少要把關(guān)鍵鏈路打全下單、支付回調(diào)、賬號分配、自動交付、定時任務(wù)掃描每個環(huán)節(jié)都要有日志并且打上orderId方便排查一個訂單從頭到尾經(jīng)歷了什么。排查問題最痛苦的不是代碼寫錯而是日志里只有三行記錄根本還原不了當(dāng)時的請求上下文。監(jiān)控方面建議用Spring Boot Actuator暴露健康檢查接口再加上一個簡單的定時探活腳本發(fā)現(xiàn)服務(wù)掛了自動重啟或告警。數(shù)據(jù)庫和Redis的慢查詢?nèi)罩颈仨毚蜷_租號系統(tǒng)后期很多性能問題都是從慢SQL開始的。數(shù)據(jù)備份沒有捷徑MySQL設(shè)置每天凌晨全量備份重要時段加binlog增量備份備份文件定期做恢復(fù)演練別等到數(shù)據(jù)沒了才發(fā)現(xiàn)備份是壞的。支付相關(guān)的對賬也要做。每天凌晨拉一份支付平臺的對賬單和本地已支付訂單做一次比對發(fā)現(xiàn)本地沒有但支付平臺有的單子要自動查漏補(bǔ)缺。這個對賬機(jī)制在開發(fā)時不緊急但上線一周內(nèi)不補(bǔ)上財務(wù)那里遲早出問題。最后說兩句實際上做了幾個租號項目之后我有一個很深的體會租號系統(tǒng)源碼的難點從來不在能不能跑通而在跑通之后能不能扛住真實業(yè)務(wù)。支付回調(diào)冪等、賬號分配原子化、訂單狀態(tài)機(jī)完善度、到期回收的準(zhǔn)確性這些才是決定系統(tǒng)能不能商用的關(guān)鍵。如果你拿到的源碼在這幾個環(huán)節(jié)偷工減料千萬別覺得后面可以慢慢補(bǔ)——它們是系統(tǒng)的地基地基松了上面蓋多少功能都會塌。拿到源碼之后我建議先做一件事把訂單生命周期從頭到尾手動走一遍用兩個測試賬號下單、支付、交付、歸還全流程測完就知道這份源碼的成色了。測完流程再改界面、加營銷功能順序反了后面有的是苦頭吃。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
91呆哥人妻| 午夜后入| 国产精品九九九| 精品毛片久久久精品毛片| 久久久久久午夜男人的天堂| 久久久久久十| 亚洲av综合伊人久久| 91亚洲精品青草| 精品美女少妇一区二区| 涩涩五月天| 精品一区二区三区蜜桃| 久久久久久久久久久六六| 亚洲丰满很很操| 六月丁香网| 天天综合网国产| 成人资源中文字幕在线观看| 五月丁香六月激情综合| 熟妇人妻精品一区二区| 亚洲情色婷婷五月天| 欧美一级A片在线看视频性色| 亚洲另类色综合网站| 荡小穴在线观看| 蜜臀久久99精品久久久| 91精品婷婷国产综合久久竹菊| 天天草天天日| 亚洲 另类 丝袜 自拍 动漫| 亚洲国产午夜真人一级片中文字幕精品黄网站 | 久久在肏| 青青青操| 性爱综合网| 激情视频图片| 又黄又爽在线观看视频| 日本性交操一区二区不卡系列| 欧美激情色婷婷花野真衣一区二区| 人人透人人操| 99无码狠狠久久| 中文字幕一区 二 区 三 四 五 区日 日 骚 | 日韩乱伦影音先锋| 一个色导综合| 精品人妻少妇| 九七毛片九九毛片| 国产白嫩精品久久| 久久久精品无码亚免费| 人爽不卡视频| 亚洲天天天| 91n美女视频| 91精品国产高清久久久久久,亚洲成人| 密臀在线一区尤物| 97伦综合| 日韩欧视频| 四虎av在线| 天天内射| 97精品久久久久中文字幕| 国模少妇一区二区三区| 午夜欧美女人操逼| 性爱Av免费| 人妻少妇久久中文字幕一区二区 麻豆 | 麻豆色约约| 欧美久久婷婷| 密臀国产在线| 青青草这里只有精品| 97亚洲综合在线| 67914在线兔费成人视频| 日韩不卡一二三四| 91老司机精品| 免费a v| av网站免费看| 丝袜剧情| 亚洲美女30b| 精品少妇一区二区三区免费观看| 色婷婷视频| 国产美女高潮叫床视频| 久久香蕉影院| 国产男女无套97| 一区麻豆 高清中文字幕| 日夜伊人网| 国模不卡| 柠檬AV导航| 色五月网址| 怡红院怡春院| 4tube欧美女厕所| 欧美乱欲| 中文字幕日韩情色| 99精品热| 91成人18| 久久精品国产72国产精品福利 | 超碰九7| 五月丁香激情四射| 最近2019中文字幕国语免费版 | 最新国产亚洲精品精品国产亚洲综合| 激情综合婷婷| 亚洲天堂另类美腿| 高颜值美女口爆高潮浪叫| 26uuu最新| 老司机深夜影院18未满| 超碰97 线线 在现| 3PAV乱伦视频| 在线岛| 大香蕉99999| 国产精品人妻无码久久久互動交流| 日本影视久久免费| 97九色人妻| 神马久久免费电影观看| 色呦呦呦在线观看视频| 五月天亚洲色图| 蜜桃精品一区二区三区久在线| 飘花国产午夜精品不卡| 97天天插| 亚洲人妖网| 女人爽到高潮潮喷18禁网站| 亚洲成人ab| 久久久久网站-538在线视频-欧美永久乱码| 国产在线视频二区| 国产精品美女久久久久久网站| 色婷婷综合久久中文字幕雪峰| 国产av又色又爽又黄| 天躁夜夜躁2021| 久久久久亚洲精品| 中文字幕在线观看AV| 久久国内| 93人人操人人| 国产精品人妻熟女aⅴ| 国产精品久久久久久久久久久久久久| 91国产在线精品| 97人亚洲综合字幕| 日本黄 R色 成 人网站| 强被迫伦姧在线观看无码网站| 呦女网站| 伊人991| 日韩性色b| 国产精品麻豆成人av| 蜜区区视频79 | 狠狠色五月亚洲91| 欧美性五月| 亚洲永久永久永久永久一级一级一级精品 | 久久受www免费人成| 五月天久久人妻| 97露脸精品丝袜| 无码一区二区三区四区五区六区七区八区九区十区视频 | 九九热AV| 精品性爱无码在线播放| 国产熟女完整版中字| 男女做爰猛烈动高潮A片免费应用 少妇厨房愉情理伦片bd在线观看 不卡中文字幕aⅴ在线 | 伦激情人妻另类人妻| 亚洲乱熟女一区二区| 中文字幕-区二区三区四区视频中国| 91丨九色丨东北熟女| 高清无码 国产精品| 久久中文字幕一区不卡| 欧美一二三| 91视频在线观看18| 欧美人与动性人交a| 小说区 图片区色 综合区| 五月天亚洲色图| 超碰2017| 91艹B视频| 日本色色色色色视频| 亚洲国产精品有声| 欧美日韩99| 99热综合| 在线黄页看毛片| 清清一区二区三区四区不卡视频| 日日骚 av| 天天日美女的B| 欧美久久人体| 一级日本牲交大片好爽在线看| 色狠狠 - 百度| 国产成人www免费人成看片| 婷婷99狠狠| 97久久久久久久精| 欧美日韩妖精91com| 美女诱惑一区| 美女91在线观看| 噜噜噜噜久久久精品免费| 五月天丁香欧洲日韩| 操逼视频亚洲| 97欧美综合| 超碰97 线线 在现| 2019精品国产无码成人| 人妻熟女一区二区| 久久熟女人| 日韩亚洲中文字幕在线| 久久大黄片| 日日爽熟女| 品亲网欧美品亲网| 91jk色拍| 精品一区二区麻豆| 99热这里只有精品地址| 中国国国产一级特黄毛片| 国产欧美美女免费观看视频| 久久99草| 天天操狠狠日夜夜干超碰撸com视频在线观看 | 日本裸体久久色噜噜| 玖玖爱在线视频免费观看| 久久亚洲影院一区二区| 内射老妇BBWX0C0CK| 亚洲人在线| 国产AV激情无码久久无码 | 国产一区二区三区免费视频在性观看 | 久久久新亚洲AV| 91影库| 亚洲第2页| 精品国产乱码久久久久久口爆网站| 亚州欧美在线| 成年女人18级毛片毛片免费观看| 香蕉免费一区二区三区不读 | 人人操人人色网| 骚逼高潮久久精品| 啊啊啊在线观看| 婷婷爱五月| 丰满人妻一区二区三区| 九九久久99| 国产成年精品高清在线观看91| 人妻熟女一区二区三区在线| 日韩人妻免费精品| 亚洲天堂欧美| 91无摭挡| 少妇六月天| 久操91视频| 日夜干射色啊| 综合网欧美在线| 中文字幕一区二区在线日韩精品| 99最新日韩偷拍视频| 麻豆国产尤物AV| 亚洲 欧美 第一页 | 国产小u女在线观看| 97国产超碰| 青青伊人久久| 中文97国产| 国产高潮AA片免费看| 乱欲视频| 国产精品久久久午夜夜伦鲁鲁| 九色PORNY9l原创自拍| 亚洲天天操| 欧美亚洲涩涩| 欧美图片色综合| 岛国艾薇凹凸视频天堂| 激情 欧美 亚洲 小说| 亚洲一二三四区在线免费看视频| 肥臀熟女福利视频一区二区| 国产免费一区在线观看| 中文字幕123| 摸奶性爱视频网站在线免费播放| 国产在线激情| 亚洲丝袜诱惑| 另类欧美| 91操熟女视频| 国产精品一区二区密臀| 中文字幕激情小说| 久久人妻熟女一区二区| www欧美91| 久久久久久久| 日本孕妇一区二区视频操逼免费看 | 亚洲图片 欧美电影| 天天天天天天天天综合| 色欲无码人妻日韩欧美精品| 欧美日韩在线国产在线| 91人妻素女| 黑丝91视频| 九九九一二三| 国产熟女少妇一区| 一本一道久久综合久久| 国产粉嫩出水在线播放| 人妻丰满熟妇av无码区蜜桃| 欧美黄色片AAAAA| 精品人妻一区二区免费看| 最新国产精品久久精品| 亚洲丝袜少妇在线| 麻豆久久久久久久久丝袜 | 人人妻人人玩人人澡人人爽| 久精品无码av一区二免费国产在线观看| 久久久久久久一级黄色打同平台| 乱欲视频| 久久这里精品国产99丫e6| 性色AV网站| 牛牛久久国产精品视频一二三| 成人免费看吃奶视频网站| 精久久久| 97超碰无码网| 破苞ⅩXXX性无码动漫无码| 东京热,男人的天堂| 97玖玖人妻| 337p大胆噜噜噜噜噜91Av| 啪啪性爱免费视频| 色就色综合| 欧美在线官网| 日日日啊啊啊| 天天看片麻豆| 亚春色色| 超碰97亚洲| 亚洲无无码αⅴ每日更新| 免费少妇一区二区| 97欧美综合| 精品无码一区二区三区| 秋霞蝌科网日本一区| 色吧5亚洲| 国产一区二区a毛片| 激激五月| 人人干人人操人人..com| 欧美se综合| 九九色综合| 国产一区二区三区久久久精品| 神马影院午夜福利久久久| 中国操逼无码| 九九九成人| 国产精品动态一区二区三区四四| 中文字幕二区日韩天堂| 久久久久国产精品喷潮免费观看臀| 大茄子熟女AV导航| 国产噜噜噜噜噜久久久久久久久| 操操AV电影| 乱论91| 亚洲自拍偷拍视频在线| 亚洲欧美综合网 | 人人操人人大香蕉| 人人摸.人人色| 国产综合网站在线播放| 日韩不卡毛片Av免费高清| 亚洲精品三| 精品日韩人妻视频| 91在线欧美| 老熟女91视频| 天堂男人网| 亚洲成人av电影在线| 欧美性生活免费网| 极品色综合| 中文字幕人妻色偷偷久久皮| 欧美男人一区| 农村女一级毛卡片| 青青草女人天天干| 欧美大干日韩| 亚洲精品三区在线观看| 极品色社| 久99| 日本1区2区不卡视频| 91免费看一区二区三区| 啊啊啊 在线| 曰韩精品九九无码| 婷婷亚洲综合| 91丨国产丨白浆| 91欧美偷拍| 91亚洲丝袜熟女| 美女熟妇色| 日本精品一区二区中文字幕| 女同在线视频一区| 999热这里只有精品| 色逼综合| 久久久久久久久久黄色网 | 人人看人人摸人人色| 日韩青久久| 精品中文一区二区| 婷婷丁香五月综合| 乱伦一区二区三区‘| 久久亚洲天堂| 中文字幕视频一区视频二区| 超碰在线成人| 99久久久er直播网址| 欧美天天综合| 欧美综色欧| 日本新免费二区三区| 蜜乳AV色欲AVAV无码| 亚洲图片第一页| 97超碰超欧美。| 中文字幕在线观看AV| 91精品伊人久久久大香线蕉91| 美女诱惑一区| 天堂av最新电影网| 国产青视频| 国产 码在线成人网站| 国产精品亚洲天堂网址| 黄色无码高清黄色无码网站| 国产超碰欧美| 九九九热精品| 欧美|91色综合| 国产精品网址| 色欲久久久久综合网| 久久精品人妻一区二区| 久久不卡一区二区 | 91精品无码人妻系列| 老熟女乱伦一区| 男人的午夜天堂| 四虎精品永久在线观看| 欧洲亚洲综合| 99re这里| 成人欧美日超碰| 中文字幕55555| 亚洲美乱| 无码99| 天天躁日日躁AAAXX| 91动漫操逼视频| 波多野结衣一级视频| 人人操人人摸人人骑| 欧美特黄视频网站| 蜜臀av网址| 日韩熟女精品无码专区一区二区| 大香蕉伊利av| 色av中文字| AV中文在线可看| 99热在线播放| 中文字幕在线播放2中文字幕在线观看2 | 大色综合网| 国产曰批免费观看久久久| 精品视频一区二区| 精品视频一区二区| 免费男人的天堂| 亚洲男人的天堂在线看| 日韩丝袜高跟制服在线观看| 亚洲日韩久久精品一区| 91丝袜熟女| 99热这里只有是精品10| 日本精品九九九| 97视频在线观看高清资源| 国产超碰国产97| 天天操天天舔| 亚洲色图91欧美日韩| 操人妻少妇中文| 97视频网站在线观看| 18一区二区三区| 亚洲男人天堂网久久| 色五月69夫妻| 精品人妻视频一区二区三区蜜桃视频| 啊啊啊好湿国产一二| 99999精品成人| 啊啊啊快操我视频| 精品国产乱码久久久久久免费| 婷婷8月天青娱乐| 久久免费少妇| 操婷婷逼| 亚洲综合码| 亚洲综合九| 农村少妇久久久久久久| 欧美后入| 久久久久久AV无码免费网站| 亚洲国产欧美日韩人妻日中文| 成人女人国产| 人人操超碰在线| 综合网 欧美| 国产精品永久免费10000| 国产精品999zyz| 99无码视频| 乱理日韩中文| 人人妻人人爽人人精品| 亚洲无码成人精品| 人妻激情偷乱视频一区二区三区 | 精品一区96| 90后后入| 思思热久久成人| 人妻激情偷乱视频一区二区三区 | 97WW精品| 国产中文字幕在线| 亚洲av无码成电影在线播放| 五月天激情婷婷| 在线黄色污污网站| 色在线视频导航| 亚洲综合成人网| 亚洲欧洲无码97久久精品| 精品丰满熟妇人妻一区| 欧美亚洲第一页| 999狠狠综合| 青青操日韩| 狠狠操,使劲操| 亚洲各类熟们中文字幕| 91天美传媒精品| 亚洲猛交| 日本肉体xxxx裸交| 超碰 国产熟女精品一区| 午夜福利一区二区影院| 插入综合网| 亚洲精品电影| 日韩免费性爱视频在线观看| 国产视频第2页| 日韩一区二区精彩视频| 性色avv| 日韩有码专区| 1024日韩| 久草看看看| 亚洲天堂 视频你懂的| 日本中文字幕熟妇| 日韩精品中文字幕一| baiduhicn.com。| 成全动漫视频观看免费下载| 伊人国产av| 在线免费观看高清无码视频| ′ !γ}丶。。久久精品欧美一区二区三区| 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 黄色小视频日本txt| 美女AV一区二区| 久草精品国产99| 色婷婷丁香五月天| 国产精品成人午夜福利| 免费观看的av| 2024黄色视频| 九九久久国产精品| 九九热久久99精品re| 色诱avtt| 欧美大香蕉专区网| 97亚洲自在精品在线观看| 日本三级日本三级99| 亚洲熟妇白浆无码AV| 色婷婷丁香五月| 火箭成精品视频884必出精品| www.狠狠| 国产二区三区免费视频| 激情丁香五月婷婷| 农村女一级毛卡片| 97在线观看免费视频l| 韩国一级AAA| 人妻色情天天操| 丁香六月婷婷久久综合| 欧美激情激情xxxx欧美专区| 美国久久一二三四| 乱伦熟女区| 97久久国产| 久久久久久性爱视频| 性爱视频无打码在线观看| 日韩综合97P| 五月婷婷色| 日韩av电影成人在线| 九九热在线精品视频| www.国产高潮精品| 91综合熟女| 久久99精品国产| 婷婷丁香成人| 成人五月天丁香激情综合| 91五月天| 麻豆黄色五月天| 色官网色综合| 天天色欧美| 天堂亚洲精品久久老牛| 欧美性天天影视| 精品国产91av一区二区三区| 日韩大香蕉AV影片| 国产精品视频播放| 欧美综合自拍成人自拍第二十页| 影音先锋日本一区二区| 熟女熟妇一区二区三四区| 97干天天| 亚洲综合97中文网| 天天日B夜夜干B时时操B| 国产在线播放成人免费| 色哟哟AV| 熟妇高潮精品一区二区三区下载| 综合色图亚洲欧美| 黄片直播三级黄片两女一男| 粉嫩av平台| 亚洲猛交| 亚洲欧美91√| 亚洲色图欧美另类在线| 台湾佬激情综合| 亚欧性爱在线无码| 99久久e免费热视| 老熟妇乱轮| 欧美亚洲今日在线| 91少妇高潮| 淫纸中9区| 婷婷10月天青娱乐| 传媒在线观看一区二区三区| 欧美性第1页| 久久久精品,3| 日本黄色精品| 俺也射| 在线中文AV| 性爱欧美五月| www.高清无码诱惑一区.com| 禁止观看美女黄| 丝袜AV一二三区| 丁香六月婷婷| 五月激情啪啪| 激情婷婷| 免费观看有码高清视频| 91久精品| 伦理弟一页| 亚洲影视第一页| 日韩99999| 国产精品96久久久久久| 日本色色色网站免费看不卡| 亚洲天天综合| 中文字幕精品探花视频| 丁香色狠狠色综合久久小说| 精品视频一区二区| 久9re热视频这里只有精品| 亚洲97| 性久久久| 国产曰批免费观看久久久| 岛国毛片在线观看免费| 操逼1区| 亚洲第一成人影院色播| 日韩精品中文字幕二区| 亚洲宅男天堂| 男人久久精品| 日韩三级av片| 亚洲精品乱码线路中文字幕| 精品少妇一区二区三区在线视频| 精品一区二区三区蜜桃臀赵总| 国产超碰国产97| 久热精品色情| 99国内熟女露脸视频| 日韩欧美久久婷婷网站| 色约约一区=区三区| 97超碰9| 色婷婷六月丁香七月婷婷| 国产女人高潮嗷嗷嗷叫小说 | 日韩不卡码| 久久中文字幕女同性恋一区| 精品少妇一区二区| 国产午夜精品理论片a大结局| 欧美偷拍区| 在线观看综合精品亚洲| 加勒比在线视频| 美女干逼2| 今日头条成人一区二区三区四虎精品| 欧美熟女逼久久久久久| 男人的天堂久久久| 日韩激情毛片一级久久久| 欧美专区日本专区| 丝袜美腿欧美| 97亚洲国产| 91综合网| 亚洲福利中文字幕在线| 四虎免费看黄| 97超碰欧美精品| 天天操夜夜操狠很操| 欧美日本一区二区a人| 欧插网站| 国产精品69久久久久久久| 久久久91| 国产不卡免费在线视频| 国产天美欧美| 欧美小说区视频区| 福利社区午夜一区二区| 人妻激情偷乱视频一区二区三区| 91nbbbbbb| 国产一区在线播放| 国产无码一二三区| 91性感网站| 国内伊人久久久久久网站视频| 欧美日韩性爱无码| 日日骚 av| 97久久精品不卡| av在线播放国产一区| 精品视频日日夜夜| rion磁力链接| 久久丁香五月婷婷| 一区二区播放| 亚洲五码一区二区三区| 国产熟女| 国产91美女视频| 亚洲 一区二区 自拍| 欧美性暴力猛交XXXX | 国产精选三级在线观看| 东京热不卡视频| 欧美精品成人一区二区在线观看| 久久一二三四五六七八九区区区| 另类老少妇| 黄色一级视| 日本精品性生活久久久| 久久受www免费人成| 好淫网一二三视区| 人妻人人澡人人爽人人| 人干人人人操人人摸| 免费A片三p视频| 麻豆天美91| 99天堂网| 欧美色97| 色婷婷99| 中文字幕人妻丝袜乱一区三区| av绯色| 青娱乐蜜桃臀AV色婷| 久久综合九色综合欧洲98| 99精品在线观看| 夜夜春夜夜操| 天天日B夜夜干B时时操B| 嗯嗯啊啊的视频| 男人高清无码一区二区| 久久爱超碰网| 国产家庭乱伦性爱视频| 97久久久精品| 国产无码精品高清| AV99热18这里只有精品| 午夜福利无毒不卡| 国产成人主播| 欧美黄片免费在线观看视频| 久久女人视频| 日韩免费福利在线观看| 亚洲美女30b| 午夜视频好爽啊| 久草精品一区| av婷婷色婷婷色六月| 男人的天堂VA| 青娱乐av在线| 国产野战露脸在线播放| 啊啊啊啊啊好舒服视频| 熟女乱伦二区| 少妇一区二区三区| 99.色网| 国产精品麻豆视频网站| 亚洲有薄码区久久在线一区| 大香交伊人网| 人妻偷拍一区二区三区| 啊啊啊好疼| 五月丁香| 五月丁香六月综合缴清无码| 国产女人9999| 色色无码| 日本性爱欧美性爱| 欧美综合中文| 超碰97网址| 午夜精品探花| 欧美一级A一级a爱片久久| 青草香蕉网| 国产在线精品偷| 亚洲中文字幕熟女| 麻豆九九九| 久久男人精品| 91视频综合在线| 婷婷综合五月| 欧美激情久操网| 少妇诱惑视频| 顶级丝袜熟女一区二区三区 | 亚洲精品人体| 国产丰满熟夫69mpp| 九九99久久| 免费人成在线观看网站品爱网| 视频二区美腿制服人妻欧美| 国产91精品久久久久久久网曝门| 国产 三级自拍| AV麻豆免费一区| 91高清欧美| 超碰午夜| 有码人妻系列| 精品一区二区三区蜜桃臀赵总 | 日韩欧美经典在线观看| 久久草草亚洲蜜桃臀| 亚洲美腿丝袜香蕉影视欧美成人| 18岁禁 茉莉成人久久| 五月丁香综合| 久久香蕉综合一本到3atv| 思思热在线视频免费| 日韩欧美~中文字| 综合97亚洲| 国产伦精品一区二区三区在线观| 精品久久久久久中文字幕三区 | 国产伦乱91| 最新岛国大片| 亚洲乱码精品一区二区| 在线视频资源| 精品成人久久久人人亚洲| 清清草影| 精品无码一二三四区| 中文字幕大片三级狠狠干| 人妻中文在线| 日本岛国黄色网址| 中文字幕成人理论在线| 欧美黄色大片在线观看 | 亚洲九九爱| 本道在线| 天天天肏屄肏屄肏屄欧美欧美| 精品一区99999| 亚洲色91C| 国产成人主播| 欧美亚洲宗合色性图| 二级久久网| 熟女AV一区| 91 综合 色| 国产亚洲日本| 麻豆天美AV传媒第一页| 丝袜色综合| 久艹99| 少妇色欲综合网2| 夜夜夜爽www精品视频| 国产91美女视频| 大香蕉草草| 99热在线播放| 国内外内射高清视频| www国产无码| 自拍偷拍草一草| 男人的天堂午夜av| 中文字幕一区二区韩| 在线无码操| 亚洲色色色| 美女露胸露屁股| 精品美女在线视频| 久久草视频污视频| 96一区二区三区| 东京热双插| 色五月av| 老熟女网站| 久久九色| 97操| 手机午夜电影神马久久| 青娱乐亚洲自拍| 色墦五月丁香| 丝袜内射| 玖色av| 国产无码成人无码| 欧美日产国产在线成人第一区| h无码动漫在线观看| 99re在线观看| 抽查国产福利主播| 啊啊啊啊,啊啊好多水| 91精品91久久久中77777| 看免费的黄片| 日本女人操逼| 男人下部插入女人下部| 欧美色图在线视频少妇| 超碰97 线线 在现| 免费看黄视频亚洲网站| 爱射综合| 免费超碰97久久| 丁香九月婷婷| 久久精品国产亚洲AV高级北京| 亚洲综合激情五月久久| 亚洲熟女乱综合一区二区三区| 欧美精品亚洲精品日韩传电影| 国产精品久久久| 亚洲精品啪视频| 日本天堂网| 这里只有97精品| 精品高清一区二区三区三州| 九九伊人网| 福利大香蕉| 看免费一级在线播放毛片| 三级三久久线久久99久目本WW| 中文97国产| 91啪啪| 久热九九| 久湿久久| 高清国产性猛交xxxx乱大交| 超碰97欧美在线| 97精品人妻一二三四| 啪啪AV导航| 精品人妻夜夜草| 先锋女优在线观看视频| 日本性爱不卡视频| 99热导航| 青青操网| 亚洲国产综合久久天堂| 欧美激情 亚洲色图| 亚洲成a人片在线观看中文!!!| 色 婷97| 一区二区中文| 欧美亚洲丝袜人妻制服99| 自拍啪啪视频| 小情侣高清国产在线视频| 蘋果手機免費看成人Av| 99re热有精品视频国产| 国产精品对白内射| 色老大| 亚洲AV操| 91路www| 萌白酱自拍视频| 97精品久久久久中文字幕| 五月丁香六月综合缴清无码| 人人色人人射人人妻| 久久久久国产精品久久久| 欧洲色色| 麻豆成人影音在线| 午夜免费视频1000| 久久岛国| 97青青操视频| 精品国产Av无码久久久亚洲| 东北黄色电影| 91精品无码久久久久久久| 日韩影片中文字幕一区二区三区| 国产精品福利视频| 亚洲情色婷婷五月天| 精品久久久久久久| av操操不卡| 波多野结衣一级视频| 二三四区精品| 日本一区二区成人在线| 白嫩妹子国产骚| 国产欧美一区激情交| 午夜啊啊| 久久9精品视频| 欧美aa一级片| 后入式999| 色婷婷丁香| 91精品老女人| 东北老女人的激情视频| 操一操摸一摸| 欧美亚洲激情小说| 国产成人精品必看 | 国内精品a| 久久骚| 五月婷婷六月色| 20cm女自慰在线日韩欧美| 啊啊啊97视频| 思思性爱| 国产乱子伦一区二区三区在线观看| 北条麻妃99精品青青久久| 午夜人人操| 俺去啦自拍| 后入 亚洲 美女 射| 手机看片日韩人妻| 加勒比色99999| 美女露胸露奶头| 日本三级一区二区 在线| 超碰色大香蕉| 亚州色站 日韩电影| 无码精品蜜桃一区二区三区ww| 伊人九九九| 北京美女一区二区| 高凊专区人人操| 又粗又长又爽在线观看| 久久久久久加勒比| 丝袜综合| 91九色精品熟女内射| 一个国产在线综合网站| 97在线/亚洲| 日本精品免费一区二区三区四区| 久久艹逼视频| ji熟女.com| 啪啪啪亚欧美视频| 加勒比伊人影院| 啪啪视频mP4| 99日韩| 国产精品无码av嫩草| 日韩有码中文字幕女同性恋 | 麻豆黄站| 大香蕉综合| 色五月亚洲| A 天堂在线观看视频| yiqicaoav| 亚洲色婷婷综合久久久久中文| 久久久久久久久久久999| 色色无码| 日韩精品一区二区三区色欲| 欧美人人曰人人操人人射射| 日韩97P| 亚洲欧美国产精品久久久久久久| 精品一区二区三区四区外站| 欧洲无码一区二区| 996热| 久久肏大逼| 岛国视频免费在线观看| 亚洲精品白浆高清久久久久久| 久久超碰97| 在线天堂资源亚洲| 麻豆区久久久久亚| 欧美日韩国产中文精品字幕自在自线, | 用力操死我| 国产精品熟女乱伦| 国产肏逼网站| 亚洲激情视频| 欧美色九九| 久区视频| 精品一区二区三区蜜桃| 久久久久久无码人妻中文字幕| 少妇色综合| 国产青青美女玩逼视频| 综合天天网| 日韩电影天堂视频二区三区| 极品内射| 色网在线| 美女91在线观看| 97久久免费| 日韩精品人妻中文字有码在线| 自拍欧美| 天美传媒av在线| 台湾肥佬网一区二区三区| 99自拍B亚洲 | 日本女人操逼| 色婷婷狠狠18禁| 防屏蔽在线视频| 香一区二区三区| 日韩专区数据列表-第3230页-精品国产一区二区三区香蕉 久久99熟女人妻中文字 | 最新制服中文第一页| 久操视频这里只有精品| 91在线观看,天天综合| 亚洲成成熟女人综合一区二区| 欧美手机在线综合| 中文子幕一二三| 天天日天天干天天摸天天操| 色臀AV| 91n欧美| 18禁看网站一区| 日韩欧洲操屄视频| 超碰人妻天天干| 午夜福利免费精品视频| 色啪网| 天天透伊人| 午夜精品久久久久| 久久九九精品一区二区| 亚91网| 日韩综合无码一区久久92| 国产特级毛片AAAAAA高潮流水 | 亚洲天堂男人在线| 97激情97激情| 国产丸一视频| 97在线视频网站| 久久久久久久久久久免费精品| 久久精品店| 92人人操人人| 花野真衣| 狠操91,com| 青草精品视频-日本久久久久网站| 亚洲精品久久久久毛片A片拉屎| 久久久久久电影| 久操婷婷| 2017天天透天天通天天擦| 91久久久亚洲| 九九碰九九爱97| 亚洲天天影视色综合| 国产精品女aA片爽爽视频| 国产在线精品偷| 国产精品久久久久久久久久久久久久久久| 91天堂| 桃花色涩综合影院| 亚洲综合图片在线| 天天日天天干天天色| 久久性爱视频| 精品人妻一区二区蜜桃视频| 日韩性爱视频在线免费观看| 欧美色三级片91| 九九九999久久久网站| 日本人人操人人操| www.91欧美| 影音先锋日本乱伦| 久久人妻97久久久久久久| 99国产女人| 18禁超污无遮挡无码免费网| 伊人国产av| 青草伊人网| 亚洲精品尤物yw在线影院| 欧美久久九九| 国产免费小视频| 5278欧美一区二区三区| 日han少妇无码| 国产极品馒头逼| 强奸xx国产| 97久久国产亚洲精品超碰热| 澳门黄片一香蕉视频| 97色伦欧美| 麻豆天天躁天天揉揉AV| 99热99在线播放激情| 欧色综合| 免费精品无码一级毛片牛牛影视 | www欧美性爱| 330dv亚洲成年视频网| 大奶的诱惑| 999岛国大片| 怡红院亚洲怡春院av| 日韩亚洲中文有码视频| 欧美亚洲玖玖玖| 中文字幕99999| 色婷婷丁香五月| 97久操| 久热91| 四虎影视国产精品| 免费毛片在线播放| 天天综合站| 被体育老师抱着c到高潮| 97超碰色屌| 久久久亚洲高清不打码| 久草在| 在线观看岛国有码| 天天日美女的B| 2021久久国产综合精品青草| 欧美激情色婷婷花野真衣一区二区| 亚洲欧美高清无码| 污啪啪啪视频| 久久久久久99999国产精品| 成人日本视频人妻在线| 欧美成人精品一区二区男人蜜臀| 一级二级三级黑人无码| 亚洲淫乱骚妇AV| 伊人九九九| 亚洲中文字幕妇伦久久| 欧美夜夜草视频| 欧洲精品在线播放| 国产专区第一页| 中文字幕欧美日本乱码一线二线| 亚洲强奸乱伦影视网| 精品二区久久| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 97国产|免费| 一本一道人妻久久一区二区三区 | 青娱乐导航AV| 26uuu偷拍亚洲欧洲综合| 超碰97久久观看| 亚洲一区二区精品福利| 欧美色九九| 亚洲AV免费在线观看| www.91人妻.com| 欧美在线|亚洲| 五月激情综合网| 亚洲欧美97| 性色一线| 第四色奇米影视777| 骚逼自拍99| 五月丁香| 综合伊人激情| 91亚洲丝袜| 啊啊啊啊嗯嗯嗯用力好爽| 亚洲欧美国产中文视频| 夜夜操夜夜爽夜夜高潮| 天天色天天干天天爱| 偷拍亚洲情色| 91肏屄网| 亚洲成a人在线观看久| 少妇淫妇久久久久久久| 久久亚洲天天做| 午夜黄色免费在线观看| 欧美少妇色图| 国产久久日韩网站导航| 亚洲高清在线| 精品国产91av一区二区三区 | 久久夜精品一区二区三区| 色嘟嘟人妻天堂网| 色黄色美女大长腿午夜视频| 精品国产乱码久久久| 东北黄色电影| 日本视频在线观看污污污| 97视频在线播放| 国产亚热在线久久| 伊人成人中文字幕久久网| www.亚洲成人一区| 日比av无码| 久久动漫精品视频这里只有精品| 99热18| 一级aaaaa欧美中文字幕录像片| 插入逼91| 一区二区高清视频| 亚州欧美在线| 中文字幕免费在线观看| 秋霞福利网| 久久爽爽精品| 精品然女一区二区| 91麻豆天美国产| 美腿色图| 这里是精品| 亚洲AV免费在线观看| 67914亚洲精品| 婷婷五月天福利| 天天色综亚洲91污| 91三级理论片播放器| 国产强奸乱伦xd| 97爱爱| 精…码一二三区| 日本二区不卡| AV天堂男人的天堂| 伊人久久国产免费观看视频| 日日夜夜天天| 日本九九九九| 婷婷中文网| 久热香蕉精品在线视频| 国产福利视频精品视频| 久久riav中文精品| 亚洲一区日韩精品中文字幕| 欧美性色欧美| 久久精品男人的天堂| 60秒免费视频| 夜夜高潮夜夜爽高清视频一| 殴美日韩m| 操我啊啊啊啊啊| 人妻精品综合中文字幕在线| 蜜桃久久综合视频| 五月天婷婷色| 99热精品在线观看|