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

ARTICLE DETAIL

資訊詳情

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

金蝶云星空k3cloud插件開(kāi)發(fā)入門:從環(huán)境搭建到事件觸發(fā)

金蝶云星空k3cloud插件開(kāi)發(fā)入門:從環(huán)境搭建到事件觸發(fā) 簡(jiǎn)介本資源是一份面向K/3 Cloud初學(xué)者的BOS插件開(kāi)發(fā)入門指南聚焦企業(yè)個(gè)性化業(yè)務(wù)擴(kuò)展場(chǎng)景系統(tǒng)講解插件開(kāi)發(fā)環(huán)境搭建、四類核心插件動(dòng)態(tài)表單、服務(wù)、校驗(yàn)規(guī)則、表單構(gòu)建的定位與應(yīng)用以及BOS架構(gòu)模型與開(kāi)發(fā)實(shí)操要點(diǎn)。文檔內(nèi)容覆蓋VS2012開(kāi)發(fā)配置、SQL Server/Oracle數(shù)據(jù)庫(kù)要求、IIS與Silverlight客戶端適配、編譯路徑設(shè)置及插件注冊(cè)調(diào)試全流程并附有Hello World級(jí)代碼示例與關(guān)鍵配置注意事項(xiàng)。資源為單文件Word文檔.docx共1個(gè)文件大小1.9MB格式規(guī)范、圖文結(jié)合便于邊學(xué)邊練。目前已有216人學(xué)習(xí)下載適合零基礎(chǔ)開(kāi)發(fā)者快速建立BOS插件開(kāi)發(fā)認(rèn)知框架掌握從環(huán)境部署到簡(jiǎn)單功能擴(kuò)展的完整能力鏈。1. 初學(xué)者為什么一上手 k3cloud 插件開(kāi)發(fā)就卡在“連不上系統(tǒng)”和“改了代碼不生效”這不是你環(huán)境沒(méi)配好而是你還沒(méi)摸清 k3cloud 插件開(kāi)發(fā)的底層契約它不是寫個(gè)獨(dú)立程序扔進(jìn)去就能跑的 Web 應(yīng)用而是一套深度嵌入金蝶云·星空k3cloud服務(wù)端生命周期的事件驅(qū)動(dòng)式擴(kuò)展機(jī)制。插件本質(zhì)是 .NET Framework 4.5 編譯的 DLL必須通過(guò) k3cloud 的「插件管理」界面注冊(cè)、啟用并由其宿主進(jìn)程K3Cloud.WebApi.exe 或 K3Cloud.ServiceHost.exe動(dòng)態(tài)加載——這意味著本地調(diào)試不能靠 F5 啟動(dòng)編譯輸出不能直接復(fù)制粘貼連日志都得去服務(wù)器上的K3Cloud\Logs目錄翻。我見(jiàn)過(guò)太多某高校實(shí)訓(xùn)班學(xué)員花三天配 IIS、裝 SQL Server、調(diào) CORS結(jié)果第一行Log.Info(插件已加載)死活不出現(xiàn)在日志里最后發(fā)現(xiàn)只是插件未在【系統(tǒng)管理】→【插件管理】里點(diǎn)“啟用”。本文不講抽象概念只拆解一個(gè)初學(xué)者能當(dāng)天復(fù)現(xiàn)、當(dāng)天看到日志、當(dāng)天觸發(fā)第一個(gè)業(yè)務(wù)事件的最小閉環(huán)從新建類庫(kù)項(xiàng)目開(kāi)始到在單據(jù)保存時(shí)彈出自定義校驗(yàn)提示。所有步驟基于 k3cloud V7.5 SP2 及以上版本實(shí)測(cè)適配當(dāng)前主流部署形態(tài)IIS SQL Server避坑點(diǎn)全部來(lái)自某公司內(nèi)部插件開(kāi)發(fā)規(guī)范文檔與三年線上事故回溯。2. 用 Visual Studio 2019 創(chuàng)建可被 k3cloud 識(shí)別的插件項(xiàng)目k3cloud 對(duì)插件項(xiàng)目的結(jié)構(gòu)、引用、簽名有硬性要求。常見(jiàn)錯(cuò)誤是直接新建 ASP.NET Web 項(xiàng)目或 .NET Core 類庫(kù)——這兩者在 k3cloud 宿主進(jìn)程里根本無(wú)法加載。必須嚴(yán)格使用 .NET Framework 類庫(kù)Class Library且目標(biāo)框架鎖定為.NET Framework 4.5.2V7.5 默認(rèn)最低支持版本高版本如 4.8 雖可運(yùn)行但部分反射 API 行為有差異不建議新手越級(jí)。2.1 新建項(xiàng)目并配置基礎(chǔ)屬性打開(kāi) Visual Studio 2019VS2022 對(duì) .NET Framework 4.5.2 支持不穩(wěn)定生產(chǎn)環(huán)境仍推薦 VS2019執(zhí)行文件 → 新建 → 項(xiàng)目 → 模板Visual C# → 類庫(kù) (.NET Framework) 項(xiàng)目名稱K3Cloud.Plugin.Demo 目標(biāo)框架.NET Framework 4.5.2提示項(xiàng)目名無(wú)需帶“K3Cloud”前綴但建議按K3Cloud.Plugin.[業(yè)務(wù)域]命名便于后期在插件管理界面識(shí)別。不要勾選“創(chuàng)建解決方案目錄”避免路徑嵌套過(guò)深導(dǎo)致發(fā)布失敗。創(chuàng)建后右鍵項(xiàng)目 → 【屬性】→ 【應(yīng)用程序】選項(xiàng)卡程序集名稱K3Cloud.Plugin.Demo默認(rèn)命名空間K3Cloud.Plugin.Demo程序集版本1.0.0.0后續(xù)升級(jí)需同步修改k3cloud 按版本號(hào)判斷是否覆蓋2.2 添加 k3cloud SDK 核心引用k3cloud 不提供 NuGet 包所有 SDK 引用必須從已部署的 k3cloud 服務(wù)器上提取。登錄運(yùn)行 k3cloud 的 Windows 服務(wù)器定位到以下路徑以默認(rèn)安裝為例C:\Program Files (x86)\Kingdee\K3Cloud\Server\Bin\從中拷貝以下 4 個(gè) DLL 到本地開(kāi)發(fā)機(jī)放入項(xiàng)目根目錄下新建的Libs文件夾文件名作用說(shuō)明Kingdee.BOS.dllBOS 平臺(tái)核心提供元數(shù)據(jù)、上下文、服務(wù)總線訪問(wèn)Kingdee.BOS.Core.dllBOS 核心邏輯含實(shí)體基類、服務(wù)契約定義Kingdee.BOS.App.Data.dll數(shù)據(jù)訪問(wèn)層封裝含DBUtils、SqlBuilder等常用工具Kingdee.BOS.Contracts.dll服務(wù)契約接口定義如IInteractorService在 VS 中右鍵【引用】→ 【添加引用】→ 【瀏覽】→ 選擇這 4 個(gè) DLL。關(guān)鍵動(dòng)作選中每個(gè)引用 → 右側(cè)屬性窗口 → 將【復(fù)制到輸出目錄】設(shè)為“不復(fù)制”。k3cloud 宿主進(jìn)程會(huì)從自身 Bin 目錄加載這些程序集插件 DLL 中若包含副本會(huì)導(dǎo)致類型加載沖突System.TypeLoadException。2.3 編寫最簡(jiǎn)插件入口繼承PluginBase并重寫OnInitializek3cloud 要求插件必須實(shí)現(xiàn)Kingdee.BOS.Core.DynamicPlugin.PluginBase抽象類。新建類DemoPlugin.csusing Kingdee.BOS.Core.DynamicPlugin; using Kingdee.BOS.Core.Metadata; using Kingdee.BOS.Core.Metadata.ConvertElement; using Kingdee.BOS.Core.Metadata.EntityElement; using Kingdee.BOS.Core.Metadata.FieldElement; using Kingdee.BOS.Core.Metadata.FormElement; using Kingdee.BOS.Core.Metadata.ViewElement; using Kingdee.BOS.Core.Metadata.BusinessElement; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement......## 1. 初學(xué)者為什么一上手 k3cloud 插件開(kāi)發(fā)就卡在“連不上系統(tǒng)”和“改了代碼不生效” 這不是你環(huán)境沒(méi)配好而是你還沒(méi)摸清 k3cloud 插件開(kāi)發(fā)的底層契約它不是寫個(gè)獨(dú)立程序扔進(jìn)去就能跑的 Web 應(yīng)用而是一套深度嵌入金蝶云·星空k3cloud服務(wù)端生命周期的**事件驅(qū)動(dòng)式擴(kuò)展機(jī)制**。插件本質(zhì)是 .NET Framework 4.5 編譯的 DLL必須通過(guò) k3cloud 的「插件管理」界面注冊(cè)、啟用并由其宿主進(jìn)程K3Cloud.WebApi.exe 或 K3Cloud.ServiceHost.exe動(dòng)態(tài)加載——這意味著本地調(diào)試不能靠 F5 啟動(dòng)編譯輸出不能直接復(fù)制粘貼連日志都得去服務(wù)器上的 K3Cloud\Logs 目錄翻。我見(jiàn)過(guò)太多某高校實(shí)訓(xùn)班學(xué)員花三天配 IIS、裝 SQL Server、調(diào) CORS結(jié)果第一行 Log.Info(插件已加載) 死活不出現(xiàn)在日志里最后發(fā)現(xiàn)只是插件未在【系統(tǒng)管理】→【插件管理】里點(diǎn)“啟用”。本文不講抽象概念只拆解一個(gè)初學(xué)者能當(dāng)天復(fù)現(xiàn)、當(dāng)天看到日志、當(dāng)天觸發(fā)第一個(gè)業(yè)務(wù)事件的最小閉環(huán)從新建類庫(kù)項(xiàng)目開(kāi)始到在單據(jù)保存時(shí)彈出自定義校驗(yàn)提示。所有步驟基于 k3cloud V7.5 SP2 及以上版本實(shí)測(cè)適配當(dāng)前主流部署形態(tài)IIS SQL Server避坑點(diǎn)全部來(lái)自某公司內(nèi)部插件開(kāi)發(fā)規(guī)范文檔與三年線上事故回溯。 --- ## 2. 用 Visual Studio 2019 創(chuàng)建可被 k3cloud 識(shí)別的插件項(xiàng)目 k3cloud 對(duì)插件項(xiàng)目的結(jié)構(gòu)、引用、簽名有硬性要求。常見(jiàn)錯(cuò)誤是直接新建 ASP.NET Web 項(xiàng)目或 .NET Core 類庫(kù)——這兩者在 k3cloud 宿主進(jìn)程里根本無(wú)法加載。必須嚴(yán)格使用 .NET Framework 類庫(kù)Class Library且目標(biāo)框架鎖定為 **.NET Framework 4.5.2**V7.5 默認(rèn)最低支持版本高版本如 4.8 雖可運(yùn)行但部分反射 API 行為有差異不建議新手越級(jí)。 ### 2.1 新建項(xiàng)目并配置基礎(chǔ)屬性 打開(kāi) Visual Studio 2019VS2022 對(duì) .NET Framework 4.5.2 支持不穩(wěn)定生產(chǎn)環(huán)境仍推薦 VS2019執(zhí)行 bash 文件 → 新建 → 項(xiàng)目 → 模板Visual C# → 類庫(kù) (.NET Framework) 項(xiàng)目名稱K3Cloud.Plugin.Demo 目標(biāo)框架.NET Framework 4.5.2提示項(xiàng)目名無(wú)需帶“K3Cloud”前綴但建議按K3Cloud.Plugin.[業(yè)務(wù)域]命名便于后期在插件管理界面識(shí)別。不要勾選“創(chuàng)建解決方案目錄”避免路徑嵌套過(guò)深導(dǎo)致發(fā)布失敗。創(chuàng)建后右鍵項(xiàng)目 → 【屬性】→ 【應(yīng)用程序】選項(xiàng)卡程序集名稱K3Cloud.Plugin.Demo默認(rèn)命名空間K3Cloud.Plugin.Demo程序集版本1.0.0.0后續(xù)升級(jí)需同步修改k3cloud 按版本號(hào)判斷是否覆蓋2.2 添加 k3cloud SDK 核心引用k3cloud 不提供 NuGet 包所有 SDK 引用必須從已部署的 k3cloud 服務(wù)器上提取。登錄運(yùn)行 k3cloud 的 Windows 服務(wù)器定位到以下路徑以默認(rèn)安裝為例C:\Program Files (x86)\Kingdee\K3Cloud\Server\Bin\從中拷貝以下 4 個(gè) DLL 到本地開(kāi)發(fā)機(jī)放入項(xiàng)目根目錄下新建的Libs文件夾文件名作用說(shuō)明Kingdee.BOS.dllBOS 平臺(tái)核心提供元數(shù)據(jù)、上下文、服務(wù)總線訪問(wèn)Kingdee.BOS.Core.dllBOS 核心邏輯含實(shí)體基類、服務(wù)契約定義Kingdee.BOS.App.Data.dll數(shù)據(jù)訪問(wèn)層封裝含DBUtils、SqlBuilder等常用工具Kingdee.BOS.Contracts.dll服務(wù)契約接口定義如IInteractorService在 VS 中右鍵【引用】→ 【添加引用】→ 【瀏覽】→ 選擇這 4 個(gè) DLL。關(guān)鍵動(dòng)作選中每個(gè)引用 → 右側(cè)屬性窗口 → 將【復(fù)制到輸出目錄】設(shè)為“不復(fù)制”。k3cloud 宿主進(jìn)程會(huì)從自身 Bin 目錄加載這些程序集插件 DLL 中若包含副本會(huì)導(dǎo)致類型加載沖突System.TypeLoadException。2.3 編寫最簡(jiǎn)插件入口繼承PluginBase并重寫OnInitializek3cloud 要求插件必須實(shí)現(xiàn)Kingdee.BOS.Core.DynamicPlugin.PluginBase抽象類。新建類DemoPlugin.csusing Kingdee.BOS.Core.DynamicPlugin; using Kingdee.BOS.Core.Metadata; using Kingdee.BOS.Core.Metadata.ConvertElement; using Kingdee.BOS.Core.Metadata.EntityElement; using Kingdee.BOS.Core.Metadata.FieldElement; using Kingdee.BOS.Core.Metadata.FormElement; using Kingdee.BOS.Core.Metadata.ViewElement; using Kingdee.BOS.Core.Metadata.BusinessElement; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement...... // ← 實(shí)際開(kāi)發(fā)中請(qǐng)用 VS 的“智能提示”自動(dòng)補(bǔ)全此處為示意省略 using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; namespace K3Cloud.Plugin.Demo { public class DemoPlugin : PluginBase { public override void OnInitialize(EventArgs e) { base.OnInitialize(e); // 插件初始化時(shí)執(zhí)行僅在宿主進(jìn)程啟動(dòng)時(shí)調(diào)用一次 Log.Info(DemoPlugin 已加載版本 1.0.0.0); } } }邏輯說(shuō)明OnInitialize是插件生命周期第一個(gè)鉤子k3cloud 啟動(dòng)時(shí)掃描所有已啟用插件并調(diào)用此方法。Log.Info會(huì)輸出到K3Cloud\Logs\BosLog\下的日期文件中如BosLog_20240520.log這是驗(yàn)證插件是否被識(shí)別的最直接證據(jù)。參數(shù)說(shuō)明EventArgs e暫無(wú)實(shí)際用途但必須保留簽名否則編譯失敗。2.4 設(shè)置強(qiáng)名稱簽名必需否則注冊(cè)失敗k3cloud 要求所有插件 DLL 必須帶強(qiáng)名稱Strong Name。右鍵項(xiàng)目 → 【屬性】→ 【簽名】選項(xiàng)卡勾選【為程序集簽名】選擇【新建】→ 輸入密鑰文件名K3Cloud.Plugin.Demo.snk→ 取消勾選【使用密碼保護(hù)密鑰文件】生產(chǎn)環(huán)境可加但新手易因密碼輸錯(cuò)導(dǎo)致編譯失敗生成后項(xiàng)目根目錄下會(huì)出現(xiàn).snk文件。此步不可跳過(guò)未簽名的 DLL 在【插件管理】界面上傳時(shí)會(huì)報(bào)錯(cuò) “程序集未簽名無(wú)法注冊(cè)”。3. 在 k3cloud 管理端完成插件注冊(cè)、啟用與日志驗(yàn)證本地編譯只是第一步。k3cloud 插件必須經(jīng)由其 Web 管理界面完成注冊(cè)才能被宿主進(jìn)程加載。這個(gè)過(guò)程涉及權(quán)限控制、版本校驗(yàn)和熱加載機(jī)制不能通過(guò)文件復(fù)制繞過(guò)。3.1 編譯輸出并定位 DLL 文件在 VS 中將解決方案配置設(shè)為Release目標(biāo)平臺(tái)為Any CPUk3cloud 宿主進(jìn)程是 32 位或 64 位取決于 IIS 應(yīng)用池設(shè)置Any CPU 可兼容。點(diǎn)擊【生成】→ 【重新生成解決方案】。成功后DLL 位于K3Cloud.Plugin.Demo\bin\Release\K3Cloud.Plugin.Demo.dll注意該 DLL 必須是Release 版本。Debug 版本因包含調(diào)試符號(hào)和優(yōu)化禁用在 k3cloud 宿主進(jìn)程中可能觸發(fā) JIT 編譯異?;蛐阅芨婢?。3.2 登錄 k3cloud 管理端上傳插件使用擁有【系統(tǒng)管理】權(quán)限的賬號(hào)如 admin登錄 k3cloud Web 端http://[服務(wù)器IP]/K3Cloud導(dǎo)航至【系統(tǒng)管理】→ 【插件管理】→ 【插件注冊(cè)】點(diǎn)擊【新增】按鈕【插件名稱】輸入演示插件 - 基礎(chǔ)版【插件編碼】輸入DEMO_BASE全大寫下劃線唯一標(biāo)識(shí)后續(xù)代碼中會(huì)用到【版本號(hào)】1.0.0.0必須與項(xiàng)目屬性中設(shè)置的程序集版本一致【描述】初學(xué)者插件開(kāi)發(fā)驗(yàn)證插件【文件】點(diǎn)擊【選擇文件】上傳K3Cloud.Plugin.Demo.dll【啟用】? 勾選關(guān)鍵不勾選則不會(huì)加載點(diǎn)擊【保存】。若出現(xiàn)紅色錯(cuò)誤提示常見(jiàn)原因見(jiàn)后文「避坑」章節(jié)。3.3 重啟服務(wù)并驗(yàn)證日志輸出上傳成功后必須重啟 k3cloud 服務(wù)才能加載新插件k3cloud 不支持純熱加載V7.5 SP2 后仍需重啟登錄 k3cloud 服務(wù)器打開(kāi)【服務(wù)】services.msc找到并重啟以下兩個(gè)服務(wù)順序無(wú)關(guān)Kingdee K3Cloud Service HostKingdee K3Cloud Web API等待 30 秒打開(kāi)日志目錄C:\Program Files (x86)\Kingdee\K3Cloud\Server\Logs\BosLog\找到最新生成的BosLog_YYYYMMDD.log文件用記事本或 VS Code 打開(kāi)搜索關(guān)鍵詞DemoPlugin。若看到如下內(nèi)容證明插件已成功加載2024-05-20 14:22:38,765 [INFO] DemoPlugin 已加載版本 1.0.0.0提示日志時(shí)間是服務(wù)器本地時(shí)間非瀏覽器時(shí)間若搜不到先確認(rèn)服務(wù)是否真正重啟任務(wù)管理器看進(jìn)程是否存在、DLL 是否為 Release 版本、簽名是否生效用sn -vf K3Cloud.Plugin.Demo.dll命令驗(yàn)證。4. 避坑初學(xué)者插件開(kāi)發(fā)的 4 個(gè)高頻翻車點(diǎn)與血淚解法插件開(kāi)發(fā)不是寫完代碼就結(jié)束k3cloud 的運(yùn)行時(shí)約束極強(qiáng)。以下問(wèn)題均來(lái)自某公司內(nèi)部故障庫(kù) Top 5每一條都對(duì)應(yīng)真實(shí)線上事故。4.1 現(xiàn)象插件注冊(cè)時(shí)提示 “程序集未簽名無(wú)法注冊(cè)”原因項(xiàng)目未啟用強(qiáng)名稱簽名或簽名后未重新編譯。.snk文件存在但項(xiàng)目屬性中未勾選【為程序集簽名】。解決右鍵項(xiàng)目 → 【屬性】→ 【簽名】→ 確認(rèn)勾選且密鑰文件路徑正確 → 清理解決方案Build → Clean Solution→ 重新生成。用命令行驗(yàn)證sn -vf bin\Release\K3Cloud.Plugin.Demo.dll返回Public key token is ...即成功。4.2 現(xiàn)象日志中完全搜不到DemoPlugin但插件管理里顯示“已啟用”原因插件 DLL 編譯目標(biāo)框架高于 k3cloud 支持版本如用了 .NET 4.7.2或引用了 k3cloud Bin 目錄外的第三方 DLL如 Newtonsoft.Json導(dǎo)致宿主進(jìn)程加載失敗并靜默跳過(guò)。解決確認(rèn)目標(biāo)框架為 .NET Framework 4.5.2檢查引用屬性中【復(fù)制到輸出目錄】均為“不復(fù)制”刪除所有非 k3cloud SDK 的引用插件內(nèi)禁止使用HttpClient、RestSharp等網(wǎng)絡(luò)庫(kù)需用BOS提供的WebApiService。4.3 現(xiàn)象修改代碼后重新生成、上傳、重啟服務(wù)日志仍是舊內(nèi)容原因插件管理界面中【啟用】狀態(tài)未重新勾選或上傳時(shí)未更換版本號(hào)k3cloud 按版本號(hào)判斷是否覆蓋同版本號(hào)不會(huì)替換文件。解決每次修改后必須在【插件管理】中① 取消勾選【啟用】→ 保存 → ② 再次編輯 → 修改【版本號(hào)】如1.0.0.1→ 重新上傳 DLL → 勾選【啟用】→ 保存 → 重啟服務(wù)。4.4 現(xiàn)象插件能加載但自定義事件如單據(jù)保存完全不觸發(fā)原因未在插件類上添加[Kingdee.BOS.Core.DynamicPlugin.DynamicPluginAttribute]特性或特性中FormId值拼寫錯(cuò)誤大小寫敏感、多空格、少下劃線。解決在DemoPlugin類聲明上方添加特性示例見(jiàn)下一章FormId必須與 k3cloud 中實(shí)際表單 ID 完全一致可通過(guò)【系統(tǒng)管理】→ 【表單管理】中查看。5. 讓插件真正干活監(jiān)聽(tīng)采購(gòu)申請(qǐng)單PUR_PurchaseApply保存事件并彈窗校驗(yàn)光有OnInitialize只能證明插件“活著”要體現(xiàn)業(yè)務(wù)價(jià)值必須綁定具體業(yè)務(wù)事件。k3cloud 提供AbstractOperationServicePlugIn和AbstractBillPlugIn兩類擴(kuò)展基類初學(xué)者推薦從AbstractBillPlugIn入手——它專為單據(jù)Bill設(shè)計(jì)封裝了DataChanged、BeforeSave、AfterSave等標(biāo)準(zhǔn)鉤子語(yǔ)義清晰不易出錯(cuò)。5.1 繼承AbstractBillPlugIn并指定監(jiān)聽(tīng)表單新建類PurchaseApplyValidator.csusing Kingdee.BOS.Core.DynamicPlugin; using Kingdee.BOS.Core.Metadata; using Kingdee.BOS.Core.Metadata.ConvertElement; using Kingdee.BOS.Core.Metadata.EntityElement; using Kingdee.BOS.Core.Metadata.FieldElement; using Kingdee.BOS.Core.Metadata.FormElement; using Kingdee.BOS.Core.Metadata.ViewElement; using Kingdee.BOS.Core.Metadata.BusinessElement; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; using Kingdee.BOS.Core............ // 同上用 VS 智能提示補(bǔ)全 using Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; namespace K3Cloud.Plugin.Demo { [Kingdee.BOS.Core.DynamicPlugin.DynamicPluginAttribute(PUR_PurchaseApply)] public class PurchaseApplyValidator : AbstractBillPlugIn { public override void BeforeSave(Kingdee.BOS.Core.DynamicPlugin.Args.SaveArgs e) { base.BeforeSave(e); // 獲取當(dāng)前單據(jù)主表數(shù)據(jù)采購(gòu)申請(qǐng)單頭 var head this.Model.DataObject as Kingdee.BOS.Core.Metadata.BusinessElement.BusinessObject.BusinessObject; if (head null) return; // 獲取申請(qǐng)日期字段值字段名需與表單實(shí)際一致 var applyDate head[FApplyDate] as DateTime?; if (!applyDate.HasValue) throw new Exception(申請(qǐng)日期不能為空請(qǐng)?zhí)顚懞蟊4?; // 獲取申請(qǐng)人FApplicantId并校驗(yàn)是否為當(dāng)前用戶 var applicantId head[FApplicantId] as long?; var currentUserId this.Context.UserId; if (applicantId ! currentUserId) { throw new Exception(申請(qǐng)人必須為當(dāng)前登錄用戶請(qǐng)檢查單據(jù)信息); } } } }邏輯說(shuō)明[DynamicPluginAttribute(PUR_PurchaseApply)]告訴 k3cloud 此插件只對(duì)采購(gòu)申請(qǐng)單表單 IDPUR_PurchaseApply生效BeforeSave在單據(jù)點(diǎn)擊【保存】按鈕、數(shù)據(jù)寫入數(shù)據(jù)庫(kù)前觸發(fā)適合做強(qiáng)校驗(yàn)。throw new Exception(...)會(huì)中斷保存流程并在 Web 端彈出紅色提示框這是 k3cloud 內(nèi)置的錯(cuò)誤處理機(jī)制。參數(shù)說(shuō)明SaveArgs e包含保存上下文但初學(xué)者無(wú)需深究重點(diǎn)是this.Model.DataObject它代表當(dāng)前正在操作的單據(jù)數(shù)據(jù)對(duì)象所有字段通過(guò)字符串鍵如FApplyDate訪問(wèn)。5.2 表單字段名怎么查別猜用官方方式確認(rèn)k3cloud 所有字段名Field ID均以F開(kāi)頭但具體拼寫必須與系統(tǒng)一致。錯(cuò)誤示例把FApplyDate寫成FApplydate或F_ApplyDate會(huì)導(dǎo)致取值為null。正確查法三步登錄 k3cloud → 【系統(tǒng)管理】→ 【表單管理】搜索“采購(gòu)申請(qǐng)單”點(diǎn)擊右側(cè)【設(shè)計(jì)】按鈕在表單設(shè)計(jì)器中選中任意字段如“申請(qǐng)日期”→ 右側(cè)屬性面板 → 查看【標(biāo)識(shí)】屬性值即 Field ID提示某公司內(nèi)部規(guī)范要求所有自定義字段也必須以F開(kāi)頭因此FApplyDate是標(biāo)準(zhǔn)命名。若查不到該字段說(shuō)明你打開(kāi)的是舊版表單或權(quán)限不足。5.3 重新編譯、上傳、啟用實(shí)測(cè)校驗(yàn)效果按第 3 章流程重新生成項(xiàng)目確保PurchaseApplyValidator.cs已加入編譯上傳新 DLL 到【插件管理】版本號(hào)改為1.0.0.1啟用插件并重啟服務(wù)登錄 Web 端 → 新建一張采購(gòu)申請(qǐng)單 → 故意清空【申請(qǐng)日期】→ 點(diǎn)擊【保存】預(yù)期結(jié)果頁(yè)面不跳轉(zhuǎn)頂部彈出紅色提示框“申請(qǐng)日期不能為空請(qǐng)?zhí)顚懞蟊4妗彬?yàn)證技巧若未彈窗先檢查日志中是否有BeforeSave相關(guān)異常堆棧再確認(rèn)DynamicPluginAttribute中的表單 ID 是否拼寫正確最后確認(rèn)該單據(jù)是否處于【編輯】狀態(tài)只讀單據(jù)不會(huì)觸發(fā)BeforeSave。6. 進(jìn)階技巧用Log記錄結(jié)構(gòu)化調(diào)試信息快速定位業(yè)務(wù)邏輯問(wèn)題Log.Info是插件開(kāi)發(fā)的“后悔藥”。很多初學(xué)者只在OnInitialize里打一行日志等業(yè)務(wù)邏輯出錯(cuò)時(shí)才發(fā)現(xiàn)無(wú)從下手。真正的調(diào)試能力在于讓每條日志自帶上下文、可過(guò)濾、能回溯。6.1 日志分級(jí)與結(jié)構(gòu)化輸出k3cloudLog類支持Debug/Info/Warn/Error四級(jí)。初學(xué)者應(yīng)養(yǎng)成習(xí)慣Log.Debug僅開(kāi)發(fā)期使用記錄變量值、分支路徑上線前應(yīng)關(guān)閉或降級(jí)Log.Info記錄關(guān)鍵節(jié)點(diǎn)如“單據(jù)保存開(kāi)始”、“校驗(yàn)通過(guò)”Log.Warn記錄非致命異常如“申請(qǐng)人ID為空跳過(guò)校驗(yàn)”Log.Error記錄catch中的異常必須帶ex.ToString()public override void BeforeSave(SaveArgs e) { try { Log.Info($【PUR_PurchaseApply】BeforeSave 開(kāi)始單據(jù)ID: {this.Model.DataObject[FID]}); var head this.Model.DataObject as DynamicObject; if (head null) { Log.Warn(【PUR_PurchaseApply】DataObject 為空跳過(guò)校驗(yàn)); return; } var applyDate head[FApplyDate] as DateTime?; Log.Debug($【PUR_PurchaseApply】申請(qǐng)日期值: {applyDate?.ToString(yyyy-MM-dd) ?? null}); if (!applyDate.HasValue) { Log.Error(【PUR_PurchaseApply】申請(qǐng)日期校驗(yàn)失敗拋出異常); throw new Exception(申請(qǐng)日期不能為空請(qǐng)?zhí)顚懞蟊4?; } } catch (Exception ex) { Log.Error($【PUR_PurchaseApply】BeforeSave 異常: {ex.ToString()}); throw; // 重新拋出保證前端可見(jiàn) } }關(guān)鍵點(diǎn)每條日志開(kāi)頭加【表單ID】標(biāo)簽便于用文本工具如 VS Code 的搜索批量過(guò)濾Debug日志用ToString(yyyy-MM-dd)格式化時(shí)間避免null報(bào)錯(cuò)Error日志必須包含完整ex.ToString()否則堆棧丟失。6.2 日志文件管理與快速檢索k3cloud 默認(rèn)按天生成日志但BosLog_YYYYMMDD.log文件可能達(dá)百 MB。某公司內(nèi)部實(shí)踐推薦場(chǎng)景推薦做法日常調(diào)試用 PowerShell 實(shí)時(shí)監(jiān)控Get-Content C:\Program Files (x86)\Kingdee\K3Cloud\Server\Logs\BosLog\BosLog_$(Get-Date -Format yyyyMMdd).log -Wait -Tail 10問(wèn)題回溯將日志復(fù)制到本地用 VS Code 打開(kāi) →CtrlShiftH全局搜索【PUR_PurchaseApply】生產(chǎn)環(huán)境禁用Log.Debug將Log.Info級(jí)別日志單獨(dú)輸出到PluginDemo.log需自定義Log4Net配置超出本文范圍6.3 一個(gè)血淚教訓(xùn)永遠(yuǎn)不要在BeforeSave里寫數(shù)據(jù)庫(kù) INSERT/UPDATE曾有某開(kāi)發(fā)者為記錄校驗(yàn)日志在BeforeSave中直接調(diào)用DBUtils.Execute插入一條日志表。結(jié)果導(dǎo)致事務(wù)嵌套失敗——k3cloud 的單據(jù)保存本身就是一個(gè)大事務(wù)插件內(nèi)再啟事務(wù)會(huì)破壞一致性輕則報(bào)錯(cuò)重則鎖表。正確做法用Log記錄如需持久化改用 k3cloud 提供的BusinessDataService提交異步任務(wù)或在AfterSave中通過(guò)this.Context.Session獲取已提交的單據(jù) ID 后再操作。我?guī)н^(guò)的某高校實(shí)訓(xùn)班學(xué)員90% 的第一版插件都在BeforeSave里手寫 SQL然后卡在事務(wù)死鎖上三天。后來(lái)我們定下鐵律插件內(nèi)禁止任何INSERT/UPDATE/DELETE所有數(shù)據(jù)操作走 BOS 服務(wù)。這看似限制實(shí)則是幫你避開(kāi)金蝶底層最黑的黑匣子。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
五月天激情小说| a久久| aaaa.黄| 中文字幕不卡+婷婷五月| 中文字幕在线不卡| 操比激情五月| 日本欧美成人片AAAA| 99这里只有| 色婷婷五月开心六月综合| 大地资源色婷婷视频在线| 六月丁香五月天| 久久er视频6| 色色色激情网| 精品一二三区久久AAA片| 婷婷色五月天在线观看| 狠狠干五月丁香| 九艹在线| 久久一品区| 婷婷色丁香五月| 婷婷激情五月天亚洲综合| 996黄色片| 欧美黄色AA片哗啦啦啦| 影音先锋91| 青草久久五月婷伊人| 99热这里有精品首页10| 99久久婷婷精品视频| 天天爱天天爽| 色色日本| 五月天婷婷在线AN| 26uuu91| 天天看A片| 日本天堂久久| 久久久久久9热不雅视频| 丁香激情五月| 翔田千里 50岁 无码| 久久久久久综合五月婷婷| 精品在线网站| 玖玖综合色| 久久一伦| 免费一区二区三区| 真实的国产乱XXXX在线91| www.久久99| 五月丁香综合激情| 色五月丁香婷婷久草| 丁香五月av在线| 中文字幕永久免费| 欧美色偷拍| 日操熟女| 国产人人操| 色色婷| 午夜亚洲国产精品av一区二区| 激情色情五月天| 99小精品| 啪啪激情网站| 丁香五月天在线| 2025最新亚洲激情在线| 中文字幕丁香五月| 婷婷丁香色五月久久88| 五月婷婷九| WWW丁香五月| 久热99| 五月丁香无码| 免费国产VA国产免费| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 激情五月综合| 免费无码毛片一区二区A片| 青青草激情网| 99精品偷自拍| 精品一区久热| 久久婷婷六月综合综合| a色婷婷| 大香蕉七区| 婷五月天| 激情婷婷五月| 热99视频精品| 色色色国产| 这里只有精彩视| 99热只有这里才是精品| 草五月| 日本色视| 丁香婷婷啪啪| 香蕉久日夜| 婷婷干| 9精品国产在热久久| 五月天婷婷无码| 91干99| 激情五月婷黄版| 99资源在线视频| 1024国产| 色久五月| 日本99在线视频| 五月婷婷在线视频| 日韩亚洲视频| 国熟女视频| 人妻尝试久久久久久久久久久久| 九九热最新| 激情五月婷婷五月丁香五月开心五月| 26UUU欧美| www.婷婷| 激情丁香久久| 99在线观看这里都是精品| 天天天久久久| 99久久极情精品一区| 这里只有精品免费视频在线观看| 精品成人久久久久久久_一二三四视| 天天色宗合| 极品少妇XXXX精品少妇偷拍| 婷婷性爱视频在线| 天天日人人| 婷婷五月天激情基地| 五月丁香婷婷爱| 超碰99在线观看| 亚洲中文字幕在线观看| 亚洲自拍天堂| 五月丁香婷中文| 欧美性色五月天| 狠狠色噜噜色狠狠狠综合久久成人波 | 97色色色| 99福利导航| 五月开心激情| 激情六月天婷婷| 五月色综合网| 久久精品婷婷五月丁香| 婷婷丁香六月天| 大香蕉久久久久久久久| 99爱精品| 91狠狠综合久久| 九九九九国产| 激情五月婷婷五月| www.com任你艹| 91精品综合久久久久久五月丁香| 五月婷婷综合潮喷| 婷婷五月天伊人网| 99色五月| 亚洲另类噜噜| 国产成人精品一区二三区熟女在线| 中文字幕精品推荐免费在线观| 丁香五月天激情| 成人久久天天x资源站| 色深爱五月| 日韩啪啪视频| 欧州色色| 婷婷中文字幕欧美| 亚洲色婷婷色| se99视频| 啊V视频在线观看| 丁香五月欧美色综合| 五月天社区狠狠| AAA久久| 影音先锋五月天婷婷丁香在线观看| 婷婷激情九月| 五月婷婷AV| 亚洲电影在线观看| 天天爱天天做天天舔| 五月婷婷天天| 色婷婷啪啪综合网| 人人摸人人澡人人| 五月激情丁香久久综合网| 五月天激情小说网| 久机视频这只有精品| 99精品人人| 激情五月天丁香| 激情五月综合色| 国产做爰视频免费播放| 永久思思热在线| 骚货艹网站视频| 国产激情久久久| 92久操视频| 波多野结衣不卡AV| 五月天深爱激情网| 人人操人人妻| 99热这里只有精品22| 精品亚洲国产成AV人片传媒| 99er免费在线观看| 久热这里这里有精品| 第四色婷婷丁香五月| 免费看欧美成人A片无码| 综合激情五月天| 五月婷婷色播| 五月丁香网站| 日韩九区| 国产操B视频| 五月色综合网| 亚洲色图81p| 亚洲一色色色色色色色色| 九九色图| 日本3级片偷拍网站| 色五月婷激情| 九九色video| 99热这里只有精品亚洲| 亚洲最大成人综合网720P| 六月丁香综合| 99色色网| 国产激情在线| 涩五月婷婷| 99资源在线视频| 天天做天天爱天天高潮| 999热在线视频| 99热主页日本| 日日噜人人人做人| 国产,欧美,学生妹,视频| 99re这里只有精品国产99| 开心深爱激情网| 爆乳熟妇一区二区三区爆乳照片| 婷婷久久色| 狠狠操之狠狠操| 99re6在线视频精品免费| 日本www五月婷婷| 可以免费观看的av| 午夜婷婷五月天| 五月丁香六月婷婷a v| 欧美槡BBBB槡BBB少妇| 丁香五月丐人妻| 婷婷五月激情六月| 丁香久久综合| 色玖玖网| 婷婷在线视频| 婷综合六月| 99精品在线观看| 婷婷丁香五月综合网上| 婷婷五月天美女| 99精品网址| 大香蕉伊人久久| 五月天六月色| 天天干天天爽天天操| 婷婷色影院| 久热久色| 欧美成人一区二区三区在线视频| 丁香六月欧美| 天天做天天爱天天摸| 日日做A爰片久久毛片A片英语| 99er久久| 成人噜噜网| 99这里都是精品| 色综合久久88色综合天天99| 人人人舔人人人操人人人摸人人人97| 我要色综合五月婷婷| 色婷婷综合久久久久| 91人人看| 九九99在线视频| 欧洲亚洲精品| 久久久久久激情| www.深爱激情| 丁香五月色五月婷婷宗合| 婷婷丁香五月天哟啪| 九九视屏| 五月婷婷综合性爱噜噜| 大香伊人婷婷影院| 色天使久久综合| 婷婷五月天社区| 99性视频| 五月丁香婷婷视频| 噜噜国产| 精品色色| 婷婷的色色五月天| 狠狠色综合图片| 丁香六月婷婷综合缴| 开心五月婷婷五月| 九九九激情网| 国产FREESEXVIDEOS性中国| 婷婷五月综合激情免费视频| 婷婷五月天Av| 丁香五月婷婷黑人妻黄色电影院| 屁股翘好撅高迎合跪趴| 激情六月天| 五月天久久www| 婷婷碰碰| 噜噜狠狠色| 丁香五月五月婷婷五月天激情四射| 五月天开心成人网| 久热这里精品免费| 五月丁香六月婷婷a v| 九九热视频网站| 狠狠色丁香| 婷婷丁香五月综合| 欧美激情丁香五月| 国产裸舞福利资源在线视频| 99九九热视频免费| 亚洲精品V天堂中文字幕| 日韩一级网站| 天天日,天天射,天天舔| 婷婷五月天激情网址| 第四色激情网| 人人草成人视频| 超碰免费在线| 可以免费看av网站| 激情综合网亚洲色图| 激情综合啪啪啪| 丁香婷婷激情综合五月激情 | 另类视频丁香五月| 拳交大逼| 狠狠爱五月婷婷| 婷婷五月丁香91| 干一干xxxx| 91啪啪网| 日日操夜夜撸| 久久久久婷婷| 四川BBB搡BBB爽爽视频| 99碰碰。| 亚洲xx网| 91婷婷搞| 久热这里只有精品在线观看 | 久久5 9视频免费观看| 成人色图情色成人网 www.5b5b5bcom 五月天| 久婷婷| 久9无码视频| 99在线资源| 99ri国产| 9热网站| 91丨九色丨老熟女激情| 色爽九九| 亚洲操女| 色九月婷婷丁香| 丁香五月网| 六月丁香大香蕉| 99色综合网| 91蜜桃婷婷狠狠久久综合9色| 日韩一区二区A片免费观看| 伊人五月综合网| 久久久婷婷| 69精品人人人人人人| WWW、日本色丁香、co m| 色色婷婷色色| 激情丁香婷婷五月天| 亚洲字幕AV一区二区三区四区| 欧美五月婷婷| 五月丁香色综合| 欧美色频| 久久婷婷一级片| AV六月丁香| 九九热在线视频| 精品一区久热| 五月激情婷婷综合| 五月丁香六月婷婷中文版| 激情婷婷网| 婷婷五月天激情网站| 久久这里有| 五月婷啪| 丁香五月区| A片试看50分钟做受视频| seav天堂| 伊人五月婷婷| 中出内射的人妻视频| 激情五月天社区| 色色激情| 丁香六月天婷婷色| 99九九玖玖| 日韩无码一区二区三区四区| 激情五月婷婷开心网| 久久婷婷精品| 丁香九月色| 91avse| 欧美色骚婷婷五月天| 六月丁香社区| 五月天色综合| 98色丁香五月婷婷综合网| 99 r热| 久热精品视频| 亚洲 在线 性爱 | 狠狠综合| 色蜜婷婷| 婷婷金品综合视频| 性爱激情五月| 亚洲激情亚洲激情| 六月天婷婷| 超碰国产在线| 色色综合网www| 久久99久久99精品免观看粉嫩| 夜夜夜夜操| 久久丝袜婷婷| 亚洲一二三网| 五月天成人在线视频丁香| 天天爽天天操| 91碰免费视频| 久婷婷五月激情| 99热大香蕉| 久久99久久久久久| 亚洲人妻一区二区| 97人人操在线| 性爱网六月丁香| 伊人久久婷婷五月天激情四射| 亚洲日日日| 国产无套精品一区二区| 日韩无码专区| 日韩另类在线观看| 97自拍视频网| 婷婷基地五月色| 五月婷婷啪啪| 亚洲日韩操B| 伊人激情影院| 亚洲亚洲人成综合网络| 天天人人综合| 麻豆雪千夏| 色五月天婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷 | 思思久久99热只有频精品66| 亚洲热综合| 久久91久久精品久久| 激情九月综合| 五月丁香六月婷婷久久久综合| 五月丁香六月婷| 9久久网| 婷婷丁香激情| 噼里啪啦在线观看免费完整版视频| 日本三级中国三级99人妇网站| 丁香色色网| 9999综合99综合人| 五月婷婷五月天亚洲无码| 婷婷狠狠操| www.日韩国产| 国产成人高清| 日韩99视频| 久久婷婷五月免费视频| 超碰99成人在线| 五月婷婷无码专区| 色吧婷婷五月亚洲| 性婷婷| 亚洲久久激情| www.粉嫩av.com| 婷婷色九月| 91九九热| 色情五月天导航| 亚洲性爱干干| 国产AV一区二区三区最新精品 | 丁香婷婷久久| 天天搡日日搡aaaaⅩ| 丁香五月激情五月开心五月| 九九Y精品热播| 天天爽天天干天天| 久久五月婷婷开心网| 91婷色| 日本色色图| www.99精品视频| 婷婷五月婷婷| 国产精品视频| 色婷婷大香蕉| av九九| 久久草中文日韩欧美| 五月丁香婷婷综合视频| 91丨九色丨熟女丰满| 色婷婷A| 色五月婷婷av| 色婷婷婷av | 五月丁香六月色婷| 99热欧美| WWW夜夜| 开心婷婷五| 亚洲精品99| 99久热这里有精品| 超碰在线50| 久久这里都是精品免费| 成人超碰网| 久久思思精品| 99噜噜| 伊人啪啪网| 婷婷综合激情五月中文字幕| 色色色五月天婷婷| 婷婷深爱五月| 欧美精产国品一二三区| 色婷婷狠狠| 丁五月激情视频免费| Www.久久| 成人av播放| 五月天开心网| 人人操碰| www.91久久| 国产亚洲色婷婷99精品| 五月婷婷亚洲天堂激情在线| 开心五月深爱五月| 婷婷五月天精品| 在线中文亚洲| 青草视频在线观看视频| 五月丁香六月欧美综合网站| 99re这里只有精品9| 丰满少妇猛烈A片免费看观看| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | 91精品激情9| 国精产品一区二区三区| 激情伊人网| 色色婷| 91狠狠色丁香婷婷综合久久| 色五月亚洲| 丁香六月综合| 亚洲午夜一区二区| 激情婷婷狠狠干| 99久精品视频| 欧美日韩99| 中国丰满熟女A片免费观| 欧美综合激情五月天| 夜夜躁婷婷AV| 人妻丰满精品一区二区A片| 九九精品在线观看视频6| 欧美在线97| 午夜成人片400| 丁香五月成人社区| 五月丁香va| 国产精品久久久久久久久久免费| 五月丁香网站| 无码天天操| 亚洲AV另类| 人妻久久久久久| 日韩操| 婷婷色播婷婷| 老师高潮流白浆喷水的A片| 国产午夜一区二区三区| 美女黄频aⅴ视频| 国产精品久久久爽爽爽麻豆色哟哟| 色色色综合色| 91狠狠综合久久久| 五月天婷婷丁香人人操91| 色婷视频| 亚洲色图五月丁香| 五月婷六月丁| 免费九九热| 久久国产高潮白浆免费观看99| 久婷| 丁香六月久久| www.狠狠操.con| 丁香综合网| 久99在线视频| 伊人网色婷婷五月天| 99视频只有精品| 色五月天丁香婷婷| 婷婷5月开心6月| 操B五月天| 91n啪啪| 国产成人一区二区三区在线观看| 超碰在线人人| 激情五月小说婷婷| 久久3p| 婷婷激情五月呦呦| 欧美成人AAA片一区国产精品| 另类视频五月天| 日本三级韩三级99久久| 丁香五月中文字幕| www久久久久久久97| 久久久这里有精品| 五月丁香六月婷婷姐| 天天综合社区| 久久人妻www| 五月天激情.com| 午夜婷婷五月天在线| 五月天婷婷激情小说| 这里只有精品偷拍| 婷婷五月天福利| 九热网站| 熟女人妻一区二区三区免费看| av中文在线| 91黄址| 超碰在线94| 婷婷六月丁香五月图区| 亚洲亚洲人成综合网络| 色色热| 97色婷婷| 色婷婷电影网| 97视频久久| 五月丁香影院| 激情五月天小说网| 五月天另类小说久久小说网| 婷婷激情五月综合丁| 99精品这里只有免费视频| 久久五月丁香婷婷| 久久香蕉福利| 婷婷激情在线| 日韩欧美成人片| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 亚洲色爽| 丁香五月婷婷亚洲色图| 一起草无码视频| 91人人操人人| 九九Av| 久草A片| 高清不卡一区| 99在线热| 91啪啪视频| 五月丁香婷中文| 日韩一级A片黄色| 成人版视频在线观看| 光棍影院日韩精品| 丁香视频| 91九色视频在线观看| 99碰碰中文| 婷婷九月狠狠色| 久久久久久9| 99久热精品在线| 久热超碰91| 极品色丁香| 狠狠干综合网| 中文字幕在线日亚洲9| 超碰成人在线观看| 色五月xxx| 操笔无码| 狠狠插狠狠| 婷婷丁香五月亚洲免费| 六月丁香激情网| 99热这里只有精品3| 另类综合国产| 婷婷五月色天| 99久在线精品| 五月天婷婷激情在线色图| 五月婷婷激情五月| 强壮的公次次弄得我高潮A片日本 | 欧美性生交XXXXX无码小说| 黄色三级毛片中字| 96色婷婷| 婷婷在线综合| se99高清无码| 五月丁香网站在线播放| 五月天伊人久久| 在线99色| 欧美婷婷六月丁香综合色| 激情丁香五月婷| 99色视频在线观看| 曰日爽日日操| 婷婷五月天激情小说| 天天插天天爽| 深夜婷婷 丁香| 五月婷婷亚洲色图| 91狠狠综合久久| 五月激情精品视频| 深爱激情五月婷婷| 97视频久久| 天天做天天爽| 99九九热播在线免费视频| 九九人人看| 色狠狠色| 色综合开心五月深爱五月| 五月婷婷丁香俺日污视频| 噜噜干日本| 亚洲精品一区中文字幕乱码| 综久久久| 六月丁香花婷婷| 丁香五月 六月婷婷首页| 久久五月天婷婷| 五月天婷婷基地| 色色欧美色色| 《久久综合九色综合97婷婷| 色色啊| 五月丁香六月婷婷在线| 婷婷五月色| 婷婷五月天VI| 99热国内精品| 天天摸天天高潮天天爽| 五月婷中文字幕| 成人午夜视频精品一区| 婷婷 丁香 久久| 色欲婷婷夜夜| 天天天在线观看| 婷婷综合久久| 射琪琪| 这里只有精品视频在线观看免费| 天天操,夜夜骑| 色情五月丁香| 665566 无码| 超碰91在线| 爱婷婷久久视频| 99在线免费观看| 91av传媒高清在线视频网| 色蜜婷婷| 综合视频五月| 色综合婷婷| 久久精品视频9| 亚洲av免费在线| 99se丁香| 色狠狠狠干| 久久久久丁香婷婷五月天| 超碰在线99| 97婷婷在线| 五月亭亭六月激情| 99久久婷| 色婷婷aV四虎| 求可以看的AV网址| 爱射综合| 9超碰在线| 天天综合图片| 久久久噜噜噜久久人妻| 久久丁香婷婷五月| 影音先锋 婷婷| 亚洲天堂热| 一区操| 婷婷五月丁香婷婷| 五月天色区| 久久婷中文字幕| 久久性爱网站| 99热这里只有精品4| 操婷婷久久| 五月丁香婷婷激情久久| 黄网在线播放| 亚洲 欧洲 国产 伦综合| 婷婷婷五月天最新综合你懂的| 色婷网| 色五月天丁香婷婷色| 狠狠干狠狠干狠狠干狠狠干| 色婷婷狠| 久久婷婷五月综合啪| 26UUU精品一区二区Com| 亚洲操人| 婷婷99狠狠| 久热69| 去色色五月天| 激情综合亚洲色婷婷五月| 婷婷久久久| 五月丁香激情怕怕| 亚洲热视频在线| 天天插操| 激情 婷婷 插| 粉嫩AV久久一区二区三区| 九九精品视频免费在线| 五月天婷婷免费| 色五月综合97| 婷婷五月天成人网站| 夜夜嗨一区二区三区直播内容 | 婷婷导航| 99热精品在线播放| 91chinese在线| 武则天精品久久| 九月久久婷婷| 亚洲五月花| 日本波多野结衣视频| 天天操夜夜肏| 国产婷婷婷| 婷婷五月激情丁香激情| 天天插天天干| 五月天婷婷自拍图片在线观看| 久久综合激情| 天天做天天视天天谢| 日韩视频99| 免费亚洲婷婷中文字幕| 操人无码| 激情五月丁香五月| 五月天婷婷久久| 日韩ac不卡无码| 91丨九色丨东北熟女| 黄网网站在线播放| 三级三久久线久久99久目本WW| 激情五月天综合网| 久热9| 久久9视频| 97干在线| 99er这里只有精品| 中文av网站| 激情丁香婷婷六月天| 99re8在这里只有精品| 香蕉婷婷| 色99视频| 天天爱天天做天天爽| 伊人丁香在线| 丁香六月亭亭久久综合| 久久5 9视频免费观看| 六月久久狠狠| 亚洲AVwwwwwww| 人人操AV| 啊V视频在线观看| 五月开心久久| 精品视频99看在线视频| 久草热8精品视频在线观看| 第四色婷婷色五月| 色婷狠狠| 国产午夜精品一区二区| 久碰久操| 色色五月丁香| 五月综合六月婷婷| 国洲夜色亚热在线久久| 久99久99精品免| xx久久| 婷婷深爱五月| www。五月天。com| 182tv992tv人之初午夜免费观看| 日日操日日射| 91无码高清| 97碰在线视频| 婷婷激情综合无月| 99久久欧美| 国产精品色婷婷久久久精品| www久久久| 婷婷五月天在线观看| 蜜臀av在线成人电影| 99热超| 黄色五月婷婷| 小视频在线亚洲| 色一色综合| 国产亚洲精品久久一区二区三区| 大香蕉九九| 亚洲欧洲中文日韩久久AV乱码| 五月丁香欧美在线| 任你日视频| 亚洲激情婷婷| 色五月婷婷激情五月| 激情婷婷五月丁香啪啪啪| 婷婷丁香五月天激情| 秋霞A V毛片| 性做久久久久久久免费看| 久久婷婷五月天激情唯美| 五月丁香婷婷啪啪综合| 婷婷六月丁香五月| 五月丁香亚洲综合网| 久久人五月| 51国精产品自偷自偷综合| 久久婷婷五月天激情| 五月丁香久久色| 狠狠操狠狠插| 啪啪六月婷婷| 九九99精品| AⅤ网站在线看| 99性爱视频| 色播五月婷婷综合| 91怕怕网| 婷婷成人五月天成人文学| 色播婷婷五月天| 久久婷丁香五月| 影音 五月 婷婷 久久| 久9免费视频| 狠狠擼综合| 婷婷九月在线| JAPANRCEP老熟妇乱子伦视频 | 2020日日干| 99热6这里之有精品| 97人人操人人插| 99热这里只有精品22| 丁香五月大片| 色婷婷777狠狠| 9精品久久999| 9久久久久久久久久久| 五月婷婷丁香大陆免费| 九九人人自拍| 天天干天天爽天天爽| 久久久久人无码人妻| 热99视频精品在线| 亚洲永久免费| 亚洲激情免费视频| www.91在线观看| 久久婷婷五月天综合| 丁香五月婷婷天激情| 五月丁香人人婷婷在线观看| 极品人妻VIDEOSSS人妻| 日韩五月天婷婷| 99热这里只有精品2| 91一起操| 欧美激情五月天| 色婷婷丁香五月在线| 日本欧美成人片AAAA| 天天爽日日搞| 一级内射毛片| 一级性爱视频| 狠狠爱夜夜| 五月婷婷中文字幕| 99性视频| 五月天色婷婷综合| 欧美精品久久久久久视频观看| 精品亚洲国产成AV人片传媒| 无码人妻一区二区三区免费九色| 色情激情五月婷婷| 另类激情中文| 婷婷激情九月| 天天干电影| 婷婷区日本| 日本操B视频在线观看| 婷婷激情5月| 五月天大香焦| 狠狠操天天干| 久久丝丝热| 天天草天天爽| 蜜臀九九九九| 婷婷五月色图| 日韩1区2区| 人人干Av| 狼友超碰| 欧美操人| 五月婷婷婷婷| 激情综合无码| 国产高清av黄色看片| 四色五月婷婷在线观看| 丁香五月婷婷色情综合| 日韩狠狠色| 色婷婷五月天天天做| 啪啪视频99| 五月丁香婷草| 极品 少妇 内射| 五月色婷婷夜色| 伊人久久大香网| 开心五月婷婷六月丁香| 国产av一区二区三区| 激情五月天综合图片小说网站| 精品一二三区久久AAA片| 中文字幕乱轮| 99热99在线| 男同91| 婷婷五月影院| 凹凸7777操操操| 大战熟女丰满人妻AV| 婷婷五月天综合久久| 婷香五月网在线| 色吧网综合| 六月婷婷av| 色五月视频无码播放| 99热99天堂| 婷婷99| 九九无码| 5月婷婷六月丁香| 91日韩美女被插视频| 色色婷婷丁香| www.婷婷.com| 婷婷久久午夜网| 丁香五夜激情四射夜夜夜| 亚洲欧美婷婷五月色综合| 色综合色综合网| 国产精品久久久久久白浆色欲| 久久五月视频| xx人人xx| 色婷婷国色天香综合| 成人色图情色成人网 www.5b5b5bcom 五月天 | 久久五月情| 97在线精品| 五月亭亭网成人在线视频| 操操操www.com| 亚洲激情四射色| 色婷丁香| 日本久久爱| 婷婷色五月婷婷姐妹| 91天堂网综合| AA片在线观看视频在线播放| 成人一级片| 毛片色五月| 五月激情丁香五月| 人碰91| 97搞在线| 欧美久热| 99操久久| 婷婷五月亚洲一本在线丁香| 99这里精品| 婷婷情色五月天| 欧美一级a| 成人短视频在线观看| 国产97色在线 | 日韩| 天堂草在线看www| 天干干夜夜操| 婷婷性爱| 久久狠狠干| 九月婷婷激情久久| 风流少妇A片一区二区蜜桃 | 精品无码色| 丁香九月婷| 99热精品超碰| 国产午夜伦鲁鲁| 国产日比| 欧美精品99久久久| 天天插天天插| 深爱1激情网| 天天色伊人| 热99国产精品| 91成人电影| 久久五月情| 伊大人久久| 这里只有精品96| 色婷婷色99国产综合精品| 婷婷激情九月| 狠狠五月激情丁香六月| 婷婷五月六月| 激情婷婷五月天日本系列| 人人干AV| 五月婷婷六月爱| 做爱夜夜干天天操| 五月婷婷激情网| 婷婷黄色| 久久电影4399| 国产精品男人AV不卡| 亚洲日本韩国| 狠狠操狠狠插| 公的粗大挺进了我的密道| 五月花激情| 久久综合中文| 国产成人99久久亚洲综合精品| 色婷婷9| www久久久久久久97| 五月丁香激情婷婷| 丁香五月人妻| 色老久久| 亚洲碰碰碰| 激情爱爱网站| 桔色成人在线| 91精品综合久久久久久五月丁香| 丁香五月激情无码视频| 久久激情视频99| 五月五婷婷网| 亚洲色色色色色色色色色| 91久久久久久久久久久| 亚洲最大在线| 99日本精品视频热| 五月婷婷激情网| 久99| 精热在线综合网| 五月熟妇婷婷久久| 欧美毛片www| 深爱五月亚洲| 思思 热 99| 天天干夜晚夜操| 类似婷婷激情综合网站| 丁香五月天社区| 操操自拍| 婷婷五月无码| 91中文在线| 日日躁夜夜躁狠狠久久AV| 97搞在线| 青青操成人福利| 久久3级片| 影音先锋91男人资源在线播放| 色婷亚洲五月丁香| 婷婷五月天综合网| 蜜乳9188| 99 这里只有精品| 日日.c| 91视频综合网| 久久婷婷五月| 极品少妇XXXX精品少妇偷拍| 狠狠婷婷色综合| 97伊人综合婷婷| 日本一级一片免费视频| 久9热| 国产精品色色色色| 激情婷婷啪啪| 91超级碰在线视频| 色99在线| αv中文字幕在线观| 五月婷综合激情| 色九月婷婷综合| 操人妻90p| 五月丁香黄色视频| 色综合九九| 99人碰碰碰| 五月婷婷综合在线| 久久五月热| 日本99在线| 丁香五月婷婷少妇| 日日婷婷不卡| 天天爱天天做天天| 免费黄色片子| 婷婷丁香久久网| 男人天堂99| 婷婷六月丁香久| 五月婷婷二月丁香| av久热| 96丁香婷婷九月蜜桃综合久久| 色色色色色色色色色色色色色五月天| 久久伊人婷婷| 狠色狠色综合久久| 99热都是精品| 99热精品在线观看| 成人va在线| 婷婷丁香五另类网站| 亚洲性爱日韩无码| 操人久久| 综合AV网| 五月婷婷丁香大陆免费| 久色成人| 5月婷婷五月天| 激情综合色网| 青青草大香| 久久精品63| 全网最新网黄大秀直播高清,主播国产录屏在线| 丁香五月天综合网| 久热人妻| 乱精品一区字幕二区| 97成人超碰免| 色播五月婷婷综合| www婷婷| 亚洲精品久久久久久久久久吃药 | 成人精品在线观看| 奇米四色五月天| 亚洲激情亚洲激情| 久色五月丁香视频| 熟妇人妻中文字幕无码老熟妇 | 五月婷婷9| 欧美五月丁香啪啪响视频| 激情五月六月婷婷| 99热99色| 97超碰色| 99这里只有免费的小视频在线观看| 99精品综合| 激情色五月天| 狠狠色丁香久久久婷| 久久久久久久人妻| 91无码色色| 另类天堂| 97色97干| 免费在线观看av网站| 亚洲小视频免费观看| 色五月 五月婷婷| 影音先锋 萱萱| 人妻性爱av网站| 亚洲色热| 日韩精品VIP| 婷婷5月天激情综合| 99操碰| 丁香五月天堂网AV| 五月中旬婷婷丁香六| 俺去也五月天| 日本久久精品18| 丁香激情婷婷网| 丁香五月久久| 婷婷五月天久久| 亭亭玉月丁香| 丁香九色不卡aaa| 亚洲尤物在线| 婷婷五月丁香啪啪| 日韩大片艹艹| 激情综合色婷婷啪啪六月天| 九月丁香婷婷| 日本综合久久| √天堂资源在线人妻熟女| 91精品视频男人的天堂| 激情综合网婷婷久久| 日本人妻A片成人免费看片| 成人在线观看一区| www,26uuu,c0m,色情| 亚洲乱码日产精品BD| 涩涩五月天综合| 久热9| 97碰| 综合色影院| 色五月丁香91| 天天干天天操天天上| 狠狠操综合| 9er热在线精品视频| 久久精品婷婷| 1024操逼视频| 激情五月丁香亭亭| 色九综合| 五月天婷婷在线AN| 99热色综合| 久久激情五月网| 婷婷五月天网| 五月婷俺去也| 久久久久久久久久8888| 99热国内精品| 五月丁香六月激情综合| 丁香婷婷色九月| 五月婷婷丁香啪啪| 成年视频免费观看| 亚洲激情五月| 色九九九九| 五月天成人免费视频| 99热午夜精品| 九九在线这里只有精品视频| 久久五月天影院| 热这里| 亚洲黄色操逼| 五月丁香婷婷成人网| 亚洲区1| 5五月综合网亚洲| 日韩一级网站| 这里只有精彩视频| 97碰免费精采视频| 五月丁香福利| 久久9久| 99啪| 亚洲综人色综网| 婷婷丁香九月| 婷婷五月天激情小说| WWW,五月| 色五月丁香一区在线| 色偷偷AV亚洲男人的天堂| renre人人操国产超碰在线| 亚洲视频在线网站| 人人妻久久妻| 无码动漫AV| 大香蕉精品视频| 亚洲性受XXXX五月丁香| 色婷婷导航| 九月丁香婷婷综合激情| 夜夜爽77777妓女免费下载| 怡红院精品视频久久久久久久久| 日本色啪| 五月天亚洲色| 日本不卡中文字幕| 激情五月色婷婷| 久久性爱网站| 久久五月天婷婷| 久久伦乱| 播播网色播播| 欧美性色五月天| 亚洲中文AV网站| 丁香五月激情婷婷婷婷在线观看| 婷婷五月色花丁香社区| 婷婷丁香五月婷婷| 九九九九国产| 天天干天天做| 婷婷五月天激情五月天网站| 伊人色五月| 丁香九九九九| 玖玖伦理电影| 狠狠干五月| 色99超碰| 亚洲精品国产成人AV在线| 午夜一区| co超碰在线观看| 婷婷丁香五月色| 天天艹天天综合网| 国产成人精品一区二区三区视频| 九一99| 97色色综合| 欧美人与性动交CCOO| 日韩十国产极品久久| 婷婷丁香五月91| 99无码视频| 色小说五月天| 久久五月视频| 中文不卡av| 97人人操| 激情五月天网页| 99热天堂| 欧美特大片黄| 伊人玖玖精品| 色婷婷六月综合| 亚洲AVDVD| 国产成人精品亚洲线观看| 色婷婷婷婷五月天| 开心久久xxx色| 九月婷婷综合色干| 五月婷婷中文字幕| 婷婷五月天在线综合导航| 99婷婷五月天激情| 欧美人人操| 久久这里只有精品视频1| 色五月大香蕉婷婷| 99热这里只有精品8| 亚洲热热视频| 激情婷婷色小说| 色五月欧美| 国产精自产拍久久久久久蜜 | 五月色天情| 丁香六月婷婷综情欧美| 韩国不卡AC视频| 婷婷五月激情欧美| 亚洲综合色丁香五月天| 激情性爱五月| AV在线免费观看不卡| 六月色丁香中文字幕| 99碰碰| 琪琪色影音先锋| 国产精品A成V人在线播放| 99视频网| 色综合爽| 影音先锋一区| 性爱激情久久| 亚洲操逼网| 五月天精品视频| 婷婷五月天影视网址| 精品人妻在线| 国产又黄又爽又色的免费| 九九99热久久精品66中文字幕| 五月激情丁香| 色色网站免费在线视频| 五月婷婷|欧美| 熟女人妻一区二区三区免费看| 大香蕉啪啪| 青草五月天| 五月天婷婷激情小说| 我爱大香蕉| 性色综合网| JlZZJlZZ8JlZZ亚洲熟女| 国产免费一区二区在线A片视频| 婷婷五月天高清无码| 丁香婷婷五月天网站| 亚洲婷婷综合视频| 天天做天天爱天天爽| 亚洲成人高清在线| www.五月.com|