& http://www.sstd.com.cn PDM產品數據管理軟件、項目管理系統 Thu, 16 Jan 2025 07:05:26 +0000 zh-Hans hourly 1 https://wordpress.org/?v=6.9.1 http://www.sstd.com.cn/wp-content/uploads/2022/11/cropped-plmico512-32x32.png 低代碼 – 共好plm系統 http://www.sstd.com.cn 32 32 mobox3 格式化日期 http://www.sstd.com.cn/3144/ Thu, 16 Jan 2025 07:04:46 +0000 http://www.sstd.com.cn/?p=3144  

–[[ 格式日期 2024-03-25T16:00:00.000Z 格式化為 2024-03-25?]]

function DayFromat(dateTimeStr)

local formattedDateStr =""
if (dateTimeStr == "" or dateTimeStr==nil ) then
return formattedDateStr
end

dateTimeStr = string.gsub(dateTimeStr, "T", " ")
print(dateTimeStr)

-- 使用模式匹配提取日期和時間部分
local dateStr, timeStr = dateTimeStr:match("(%d+-%d+-%d+) (%d+:%d+:%d+)")

if (dateStr == nil) then
formattedDateStr ="Date Format Error"
return formattedDateStr
end

-- 提取日期部分的年、月、日
local year, month, day = dateStr:match("(%d+)-(%d+)-(%d+)")

-- 將提取的月、日格式化為兩位數的字符串
month = string.format("%02d", tonumber(month))
day = string.format("%02d", tonumber(day))

-- 組合格式化后的日期和原始時間部分
local formattedDateStr = string.format("%s-%s-%s", year, month, day)
local formattedDateTime = string.format("%s %s", formattedDateStr, timeStr)

return formattedDateStr
end

— 示例使用
local date = “2024-03-25T16:00:00.000Z”
local formattedDate = DayFromat(date)
print(formattedDate) — 輸出: 2024-03-25

]]>
lua for mobox3二次開發一些經驗 http://www.sstd.com.cn/3119/ Sun, 06 Oct 2024 04:40:45 +0000 http://www.sstd.com.cn/?p=3119 1、建議任何調用函數,都需要做執行保護

nRet, strOBJInfo = mobox.objAttrToObjJson (‘PMS001’, strRetInfo )

沒有對執行做保護(原先理解是 絕對不會出錯的,實際上是錯了),執行后報錯

這個錯誤爆出,我們根本無法判斷問題所在。所以在任何情況下調用函數都需要做 出錯保護,加入

?if (nRet ~= 0) then

mobox.error(strLuaDEID, “PMS001數據庫沒有對應字段 “)

return

end

2、在Debug 函數里面不能包含表類型的變量

Debug( strLuaDEID, debug.getinfo(1), ‘keynode創建’,tbNote[1])

里面的 tbNote[1]是一個表類型的變量,debug 不支持這個格式

nRet, strOBJInfo = mobox.objAttrToObjJson (‘JS003’, strRetInfo )

 

 

]]>
MBC客戶端擴展視圖功能配置過程 http://www.sstd.com.cn/3087/ Sat, 14 Sep 2024 06:56:25 +0000 http://www.sstd.com.cn/?p=3087 MBC是可以為企業即時通訊AM、企業文檔管理系統Mobox、項目管理系統Gungho多系統的前端表現端。在企業業務擴展的情況下甚至可以將mobox3定義的功能點擴展到 MBC客戶端

mobox3的功能點擴展的MBC客戶端的配置實現方式

1、人員管理里面需要定義 應用程序

需要定義 3個應用 (應用名稱 不能變)

MOBOX3

OIOrgSAPI

OIMoboxSAPI

OIDataSAPI

其它2個服務類似

 

pack)20241113
增加? OIDataSAPI 的配置, MBC客戶端也需要更換。 解決 MBC與Mobx3網頁集成的時候,獲取當前客戶端的 MAC地址

2、mobox3定義的功能領域可以發布到 MBC客戶端

3、MBC客戶端效果圖

]]>
mobox3自定義參數的定義及獲取 http://www.sstd.com.cn/3084/ Sun, 08 Sep 2024 06:42:31 +0000 http://www.sstd.com.cn/?p=3084 mobox3運行過程中系統可以定義很多運行參數。這種運行參數可以匹配企業個性化需求。在這個基礎上mobox3開放了一些非系統參數自定義配置方式。舉例

這個用戶部署了 Gungho系統 ,而這個系統需要使用微信小程序。所以系統就會用到 gunghoAPI服務。(這個服務不是系統默認安裝的服務,需要手工單獨部署過)

這個服務部署后,我們客戶端怎樣去調用這個服務,我們就可以通過定義一個自定義參數來描述 gunghoAPI的的 IP及端口,方便客戶端調用

配置過程如下

這樣,我們就定義了一個編號為 9001 的參數。 這個參數可以通過 lua腳本來獲取

lua 獲取自定義編號的參數定義

nRet, strCanSu= mobox.getParameter(strLuaDEID, ‘9001’)

 

]]>
mobox3對excel導入(表頭帶分組) http://www.sstd.com.cn/3079/ Thu, 05 Sep 2024 07:26:12 +0000 http://www.sstd.com.cn/?p=3079 mobox3對excel數據導入是一個非常重要的及常見的工作。但用戶為了excel更直觀,有可能會對excel表頭設置分組。參考下圖

我們可以看到,excel第一行是分組行(項目基礎信息,P1,P2)

在P1 下面有 計劃日期;在P2下面也有 計劃日期 ,2個字段名稱是一樣的。我們做讀取數據的時候必須要依賴分組 P1P2的定義才能區分

我們在做excel導入的時候,針對這類表格。我們需要如下處理

1、導入按鈕設置

 

2、在導入腳本的地方主要通過分組屬性來區分字段

?if (strAttr == ‘計劃日期’) then
?strValue = ProcessDayTimeStr(strValue) –日期格式轉換
?if (ext_col_info[1]==”P0″) then? ? ? ? ? — 判斷是哪個分組的
strP0 = strValue
strAddAttr = strAddAttr .. ‘{“attr”:”D_PX”,”value”:”‘ .. strP0 .. ‘”},’
elseif (ext_col_info[1] == ‘P1’) then
strP1 = strValue
strAddAttr = strAddAttr .. ‘{“attr”:”D_P1″,”value”:”‘ .. strP1 .. ‘”},’
end
end
]]>
mobox3 lua 開發過程中數據獲取及Json格式處理 http://www.sstd.com.cn/3069/ Tue, 03 Sep 2024 05:53:26 +0000 http://www.sstd.com.cn/?p=3069 lua 開發過程中,我們需要對當前窗體的數據進行獲取,之后進行二次開發演變為我們需要的數據,并重新給窗體的各字段賦值。

1、獲取當前窗體上所需字段的數值

nRet, strRetInfo = mobox.getCurEditDataObjAttr(strLuaDEID, “G_PRJ_ID”, “S_PRJ_CODE”, “S_PRJ_NAME”, “S_PM_NAME”, “S_PD_NAME”)

2、得到Json字符串(strRetInfo)內容描述(暫且我們稱之為 mobox3 格式)

[

{

“attr”: “G_PRJ_ID”,

“value”: “”

},

{

“attr”: “S_PRJ_CODE”,

“value”: “PM-0002”

},

{

“attr”: “S_PRJ_NAME”,

“value”: “pcy 0999 hard”

},

{

“attr”: “S_PM_NAME”,

“value”: “金振興”

},

{

“attr”: “S_PD_NAME”,

“value”: “”

}
]

3、將得到的Json字符串(strRetInfo)轉變為Json標準的表格式(strOBJInfo )

nRet, strOBJInfo = mobox.objAttrToObjJson (‘JS001’, strRetInfo )

注意:strOBJInfo 得到其實還是一個Json字符串,但其是一個標準的Json表格式表達

具體 objAttrToObjJson 函數怎么用查看手冊

4、得到Json表字符串(strOBJInfo )(是一種 json對表的標準格式)

{

“cls”: “JS001”,

“ver”: 1,

“G_PRJ_ID”: “”,

“S_PRJ_CODE”: “PM-0002”,

“S_PRJ_NAME”: “pcy 0999 hard”,

“S_PM_NAME”: “金振興”
}

注意:這個Json格式是標準表格式字符串表達。

5、我們需要將這個字符串轉為表(tbOBJ)

local tbOBJ = json.decode (strOBJInfo)

注,只有變成表后,我們可以這樣來理解這個表:

字段名 cls ver G_PRJ_ID S_PRJ_CODE S_PRJ_NAME S_PM_NAME
數值 JS001 1 PM-0002 pcy 0999 hard 金振興

6、數據取值與賦值

取值方法:

local strPMName

strPMName = tbOBJ.S_PRJ_NAME

賦值方法:

tbOBJ.S_PRJ_NAME = ‘潘元元’

 

完整代碼

local strRetInfo , strOBJInfo

local tbOBJ ={}

 

— 得到當前窗體上指定字段的json字符串
nRet, strRetInfo = mobox.getCurEditDataObjAttr(strLuaDEID, “G_PRJ_ID”, “S_PRJ_CODE”, “S_PRJ_NAME”, “S_PM_NAME”, “S_PD_NAME”)

— 將json字符串(mobox3)格式轉為 json標準表格式
nRet, strOBJInfo = mobox.objAttrToObjJson (‘JS001’, strRetInfo )

–將json字符串轉變為表
tbOBJ = json.decode (strOBJInfo)

 

— 獲取表字段內容及設置表字段值
local strPMName
strPMName = tbOBJ.S_PM_NAME
tbOBJ.S_PM_NAME = ‘潘元元’

 

若需要將數據轉會mobox3數據格式

–將表轉變為json字符串(標準格式)
strOBJInfo = json.encode (tbOBJ)

— 將json標準表格式格式轉為 json字符串(mobox3)
nRet, strRetInfo = mobox.objJsonToObjAttr (‘JS001’, strOBJInfo )

 

 

 

 

]]>
lua 對回車(%3Cbr%3E)處理方法 http://www.sstd.com.cn/2537/ Thu, 11 Apr 2024 05:02:28 +0000 http://www.sstd.com.cn/?p=2537 我們在Gird列出數據的時候,若數據內帶%3Cbr%3E,其實是回車的意思,若grid讀出數據不做任何處理,那么就會影響系統表達

為了解決這個問題,我們可以編輯一個lua腳本,將這個數據做處理后再顯示(在顯示前事件里面定義這個lua腳本)

腳本列子

–[[
? ? 功能說明:
? ? ? ? 1) 顯示前做一些字段的處理
? ? ? ? 2)前端導入,新增有換行符號 %%3Cbr%%3E  ,替換成 <br> 前端html支持的換行內容
? ? ? ? 3)內容中有&,替換成 & 前端解析 &不支持,最好在輸入時進行替換
–]]
json = require(“json”)
mobox = require(“OILua_JavelinExt”)
require(“oi_basestrfunc”)
function BeforeGridShow(strLuaDEID)
? ? local nRet, strRetInfo
? ? local arobjs, attrs, success
? ? — 獲取輸入的DataJson數據包
? ? nRet, strRetInfo = mobox.getCurEditDataPacket(strLuaDEID)
? ? if (nRet ~= 0) then
? ? ? ? mobox.error(strLuaDEID, “無法獲取數據包!”)
? ? ? ? return
? ? end
? ? if (strRetInfo == ” or strRetInfo == nil) then
? ? ? ? return
? ? end
? ? — 解析數據包,數據包格式
? ? — [{“id”:””,”attrs”:[{“attr”:””,”value”:””},..]},..]
? ? local n, nCount
? ? success, arobjs = pcall(json.decode, strRetInfo)
? ? if (success == false) then
? ? ? ? mobox.error(strLuaDEID, “非法的JSON格式!”)
? ? ? ? return
? ? end
? ? nCount = #arobjs
? ? if (nCount == 0) then
? ? ? ? return
? ? end
? ? local obj, attrs
? ? local nattr_count
? ? local strRow, strAttr, strItem
? ? local strDataJson
? ? local id, strValue
? ? local strAttrs
? ? strDataJson = ‘[‘
? ? local seg = {}
? ? local nSegCount = 0
? ? for n = 1, nCount do
? ? ? ? obj = arobjs[n]
? ? ? ? attrs = obj.attrs
? ? ? ? nattr_count = #attrs
? ? ? ? id = obj.id
? ? ? ? strAttrs=”
? ? ? ? — 開始過濾顯示數據對象屬性
? ? ? ? for nIndex = 1, nattr_count do
? ? ? ? ? ? strAttr = attrs[nIndex].attr
? ? ? ? ? ? strValue = attrs[nIndex].value
? ? ? ? ? ? strValue = strValue:gsub(“%%3Cbr%%3E”, “<br>”)
? ? ? ? ? ? strValue = strValue:gsub(“&”, “&”)
? ? ? ? ? ? strItem = ‘{“attr”:”‘ .. strAttr .. ‘”,”value”:”‘ .. strValue .. ‘”},’
? ? ? ? ? ? strAttrs = strAttrs .. strItem
? ? ? ? end
? ? ? ? — 取消最后一個,號
? ? ? ? strAttrs = trim_laster_char(strAttrs)
? ? ? ? strRow = ‘{“id”:”‘ .. id .. ‘”,”attrs”:[‘ .. strAttrs .. ‘]},’
? ? ? ? strDataJson = strDataJson .. strRow
? ? end
? ? — 取消最后一個,號
? ? strDataJson = trim_laster_char(strDataJson)
? ? strDataJson = strDataJson .. ‘]’
? ? local strAction = ‘[{“action_type”:”reset_data_attr”,”value”:’ .. strDataJson .. ‘}]’
? ? mobox.setAction(strLuaDEID, strAction)
end
這個列子也可以用于別的一些非法字符串的處理
]]>
Gungho項目擴展屬性二次開發的實現過程 http://www.sstd.com.cn/2224/ Thu, 29 Feb 2024 04:27:33 +0000 http://www.sstd.com.cn/?p=2224 Gungho個性項目屬性描述二次開發的實現過程

 

企業在實施項目管理系統的時候,不通類型的項目其屬性可能是不一樣的。而Gungho標準系統內對項目的屬性,主要包括(項目名稱、編號、開始結束日期等)。為了適應企業個性項目信息的輸入,我們需要通過Mobox平臺定義項目類型去適應這個需求

 

項目類型定義過程

Sa 登錄mobox低代碼開發平臺

進入數據模型(001功能點)創建數據對象

創建一個用于描述項目擴展屬性的數據對象

注意:業務類型必須是 項目

接下來需要做的內容,這里不具體展開

    • 設置數據對象的相關字段屬性
    • 設置數據對象的Gird(列表)
    • 設置數據對象的窗口(界面)
    • 及可能涉及的二次開發

進入項目類型定義(8012功能點)創建項目類型

  • 新建項目類型(基礎)

基礎:主要是綁定哪個數據對象及相關的界面

 

  • 新建項目類型(功能)

功能:主要是可以自定義該類型項目的自定義菜單 (參考下圖)

效果

我們在gungho登錄后,新建項目

]]>
基于Mobox對Gungho任務二次開發的實現 http://www.sstd.com.cn/2153/ Fri, 23 Feb 2024 03:40:01 +0000 http://www.sstd.com.cn/?p=2153 基于Mobox對Gungho任務二次開發的實現

 

Gungho項目管理軟件在企業部署的時候因其業務的個性,很有可能需要對任務做各種各樣的二次開發,從而適應企業需求

 

舉例:

某檢測檢驗中心,在做叉車整車檢測的時候會分解出100多個的檢測任務,每一個任務除了要求員工按時間要求完成以外,還需將每個檢測任務所獲取的數據等級下來。這個數據可能是一個表,而且每一個任務所對應的填寫數據也都是不一樣的。

這樣一個需求,我們就必須對任務做二次開發

 

實現過程如下

用sa 登錄Mobox平臺,進入系統管理模塊

  • 增加功能點 任務類型及二次開發 功能點編號(8203)

  • 字典里面增加:SysTaskType,里面定義任務類型的名稱

定義的任務類型名稱,在后面會用到

 

  • 進入二次開發 – gungho領域 – TASK任務 – 自定義事件

開發一個腳本:任務點擊后 腳本 (目的是 任務點擊后能將 prj_id,task_id 等設置到全局變量)

這個任務點擊后(lua腳本)是標準的

 

json?? = require(“json”)

mobox = require(“OILua_JavelinExt”)

require(“oi_basestrfunc”)

 

function AfterClickTask(strLuaDEID)

??? local nRet, strRetInfo, strTaskID,strClsID

 

???? –獲取當前點中的任務對象標識

???? nRet, strClsID, strTaskID = mobox.getCurEditDataObjID( strLuaDEID )

???? if ( nRet ~=0 ) then

???????? mobox.error( strLuaDEID, “獲取當前點中任務對象標識失敗!” )

???????? return

???? end

??? –獲取任務內容

??? nRet, strRetInfo = mobox.getTaskAttr(strLuaDEID,strTaskID, “CN_G_PRJ_ID”)

??? if (nRet ~= 0) then

??????? mobox.error(strLuaDEID, strRetInfo)

??????? return

??? end

??? local taskAttr = json.decode(strRetInfo)

??? local strPrjID = taskAttr[1].value

 

??? if (strPrjID == nil or strPrjID == nil) then

??????? mobox.error(strLuaDEID, “獲取項目信息失敗!”)

??????? return

??? end

??? –去掉空格

??? strPrjID = trim_guid_str(strPrjID)

??? — 把項目ID ,任務ID 加入全局變量

??? local strGlobalAttrs = ‘{“attr”:”prj_id”,”value”:”‘ .. strPrjID .. ‘”}’

??? strGlobalAttrs = strGlobalAttrs .. ‘,{“attr”:”task_id“,”value”:”‘ .. strTaskID .. ‘”}’

??? local strAction = ‘[{“action_type”:”set_global_attr”,”value”:[‘ .. strGlobalAttrs .. ‘]}]’

??? mobox.setAction(strLuaDEID, strAction)

end

 

這個腳本目的是生成 全局變量prj_id , task_id 。 這2個變量描述了當前任務所屬項目唯一標識任務唯一標識。是Gungho系統向Mobox平臺傳遞核心參數,Mobox后期二次開發的時候都需要用到。

注意,這里定義的全局變量 名稱在后期調用的是要完全一樣

這個腳本,會在后面文章的:任務分類定義 –? 事件點擊后事件用到) 參考

 

  • 數據模型定義 (用于任務擴展屬性的定義)

按需分別定義數據模型,及模型里面的字段。這里不詳細展開(需要有mobox二次開經驗)

 

定義小窗口的時候需要注意,有一個窗口初始化腳本要執行(目的是個小窗口內設置prj_id, task_id)

 

  • 按功能定義各種需要的腳本

因為是與Gungho集成,前面描述過gungho的全局變量,這里開發的時候已經可以使用這些變量(prj_id , task_id)

根據需求,圍繞數據模型做二次開發(可能有很多過個腳本,按需求開發)比如

1)查詢事件 (我們的擴展屬性,是與任務綁定的,所以需要查出與本任務有關的屬性 如 任務ID過濾 )

因為是與Gungho集成,前面描述過gungho的全局變量,這里開發的時候已經可以使用這些變量(prj_id , task_id

2)初始化腳本 (因為需要與Gungho的任務集成,定義界面(小窗口的時候需要定義初始化腳本 如 設置項目及任務ID

 

  • 功能點定義,一般用 3000 功能定義

任務擴展屬性信息的grid展示(查詢事件)、小窗口數據的輸入保存(需要綁定task_id等)

  • 進入 任務分類及二次開發 (功能點編號 8203) ,進行任務分類定義

任務分類定義,是gungho的任務與Mobox的功能點集合的一個過程

  • 任務分類(常規)配置

注意:數量限制 必須選擇 多數據, 顯示方式必須選擇 自定義頁面

  • 任務分類(事件)配置

注意:點擊任務后事件 是必須選擇( 來源: gungho領域 – TASK任務 – 某自定義事件)

  • 任務分類(自定義頁面)配置

自定義里面是將任務與Mobox的功能點集合在一起

按上圖,A2樣品技術參數,這類任務,綁定了2個功能點

  • Gungho上任務執行的效果

綁定了2個功能點

? 1 個用于技術參數輸入 (可能是一個表)

1 個用于檢測結果輸入

 

]]>
共好合同管理軟件(免費版、下載)-簡單、易用、可擴展 http://www.sstd.com.cn/1939/ Mon, 08 Jan 2024 03:24:14 +0000 http://www.sstd.com.cn/?p=1939 共好合同管理軟件(免費版)是一款B/S架構免費合同管理軟件。合同軟件功能:合同起草、(銷售與采購)合同簽訂、合同評審、合同收付款計劃、合同收付、發票開具、合同歸檔,到合同中臺數據統計分析功能于一體的管理軟件。軟件界面簡潔直觀簡單易用,幫助你對客戶和供貨商的合同進行管理,協助您完成應收應付款分析,自動統計所有客戶和供貨商的應收應付款額。

共好合同管理軟件是基于 Mobox工業低代碼開發平臺結合企業個性需求定制開發而發布的

合同管理軟件模塊

合同軟件包括:客戶維護、銷售跟蹤管理、客戶需求管理、(銷售與采購)合同管理、合同評審、合同檔案管理、企業即時通訊平臺等模塊組成

基礎服務:人員管理服務、消息服務、文件服務、數據服務、流程服務、腳本引擎

合同管理軟件工作流程

合同軟件涉及的企業員工角色:銷售、采購、管理員、主管、財務。以下是各個角色主要需要做的事情。

合同系統大體思路

一、合同系統基礎數據維護

管理員(admin),要維護(本公司的產品)信息

二、銷售合同完成過程

1、必須 先建立 客戶,及其 對應的 聯系人

2、有了客戶 (需要有稅號) ,才能新建銷售合同

3、合同 建立后 ,位這個 合同設置 銷售清單 (來源 本公司的產品)

4、合同完成后,需要找人審批 (審批人 xszg)

5、審批通過后 , 財務 (cw)可以輸入 財務信息比如 (匯款信息、開票信息等)

6、合同原件歸檔

1. 合同管理概覽

合同管理可以幫助組織或個人提高合同交付的效率和準確性。合同管理軟件和工具可以簡化合同創建、審批、跟蹤和管理的過程,減少人為錯誤和遺漏。這有助于提高合同流程的效率。

 

能對合同全局進行查看(如 采購清單、收款記錄、開票記錄、收款計劃等)

 

能查看合同附件

2、合同評審(合同流程評審功能)

合同草案擬定后,需要公司組織相關專業的人員及領導,對合同進行評審。共好合同管理系統,支持用戶自定義流程,可以根據不通的合同、不同的發起人啟動對應的流程來多合同進行評審,所有評審記錄都會記錄在系統中,便于以后追溯。

3. 合同歸檔管理(合同檔案歸檔及查詢功能)

合同是業務和管理的雙向訴求,在企業的經營過程中,合同的歸口部門在不同的業務部門(當然,紙質文檔一般會由財務或者行政或者其他部門進行統一存檔),沒有一個統一的入口提供所有合同管理的情況下,會給合同的查詢、閱覽等帶來不便,合同管理系統可以將不同業務部門的不同類型的合同集中管理起來,提供統一的查詢入口,為合同的查詢、閱覽帶來便利。

4. 合同臺賬(合同執行管理功能)

合同本身是一個文檔,要么是在線文檔、要么是附件文檔,這些文檔本身是沒辦法進行直接提供支撐數據支撐的,在合同管理系統中,我們先要把合同的關鍵數據提取出來,放到合同管理系統中。當合同數據全面錄入合同管理系統以后,合同的各種數據都可以被進行統計,如合同金額、合同的收款、付款情況,收付款計劃等等,這些數據按照業務需要進行加工以后,就可以為業務提供全面的數據、決策支撐。

5、合同提醒

我們可以為合同設置收款計劃,系統會根據設置 自動進行,到期收款提醒,及收到匯款后提醒、開票后提醒等

合同管理軟件下載

合同系統是B/S架構的系統,企業需要找一臺服務器來部署,服務的要求如下

硬件 :

8G 內存或更高 、8CPU或更高、500G硬盤(根據自己需求而定)

操作系統:

操作系統:Windows 2012 r2 或更高(支持 32及64)

數據庫:甲方自己準備或我方協助

數據庫:SQLServer 2008 R2或更高

軟件環境:

IIS + .NET4.0 +.NET4.5(或更高版本)

備注

1)若Windows 2012r2 ,那么SQL需要安裝 2008或更高版本 (否則 SQL管理器可能不能安裝)

2)若安裝 SQL 2008 or 2008R2 ,那么必須安裝過 .Net 3.5

3)Mobox網站必須有 .Net 4.5(或更高版本支持)

 

合同管理軟件下載

下載(企業文檔管理系統、企業即時通、低代碼平臺)

]]>
主站蜘蛛池模板: 人人干天天操| 一区二区三区va| 18岁成人在线观看| 欧美a在线| 婷婷精品| 久久久久久婷婷| 成人黄色小视频在线观看| 国产99久久久久久免费看| a级片毛片| 日本黄色片段| 91超碰在| 国产在线观看黄| 成人午夜国产| 久操视频在线| 国产午夜一区二区三区| av网站在线播放| 黑人性高潮| 欧美日韩精品一区二区三区四区| 少妇一xx88av| 欧美在线播放| 日韩性xx| 黄色网一级片| 9色在线| 亚洲男人网| 伊人网在线观看| 欧美视频在线播放| 欧美精品一线| 华人在线| 99精品网站| 黄色片视频免费| 精品一区二区三区四区在线| 天天干,夜夜操| 在线播放成人av| 亚洲人视频在线| 国产v自拍| 国产成人综合在线| 波多野结衣视频免费观看| av片网站| 成人午夜在线观看| 成人午夜在线观看视频| 校霸被c到爽夹震蛋上课高潮| 日韩欧美一区二区三区| 九七伦理电影| 按摩ⅹxxx性hd中国| 日韩在线看片| av免费观看国产| 乱淫一区二区三区| 亚洲性事| 偷拍第1页| 超碰在线人人爱| 国产精品视频一二区| 狠狠躁夜夜躁人人爽视频| aⅴ综合| 亚洲精品国产suv一区88| 精品xxxx| 欧洲中文字幕日韩精品成人| 国产精品jizz在线观看美国| 夫妻黄色片| 日本网站在线播放| 99精品区| 欧美视频在线观看一区| 日本韩国中文字幕| 精品国产AV色欲天媒传媒| avxx| xxxx日本com| 老司机精品视频在线| 亚洲免费专区| 欧美偷拍一区二区| www国产视频| www插插| 日韩av伦理| 免费视频www在线观看网站| 成人在线观看18| 欧美理论视频| 操人视频在线免费观看| 俺来也在线视频| av啊啊| 毛片3| 玩弄白嫩少妇xxxxx性| 欧妇女乱妇女乱视频| 午夜精华| 少妇一级淫片免费| 久久婷婷成人综合色综合| 自愉自愉亚洲| 国产精选一区二区| 精品一区二区三区婷婷| 日本少妇激情| 国精品人妻无码一区二区三区喝尿| 综合色影院| 91在线网| 深夜免费视频| 五月天丁香花婷婷| 日本久久网| 日韩加勒比| 日韩第四页| 在线免费日本| 欧美电影一区| 成年人在线视频免费观看| 果冻传媒av| 天天舔天天| 九九热精品视频| 国产福利91精品一区二区三区| 91老司机福利| 天天操 天天操| 色噜噜狠狠一区二区三区| 香蕉久久一区二区不卡无毒影院| 黄肉视频| 国产火热热av| 久久精品视频在线观看| 免费高清中文字幕| 99福利网| 一区二区三区激情| 99re在线精品| 亚洲高清毛片| 黄页在线观看| 在线观看国产亚洲| 国产爱搞| 久久精品视| 影音先锋在线看| 日韩精品啪啪| 欧美日韩精品国产| 日韩网站在线观看| 亚洲一级网| 久久狠| 91原创国产| 婷婷丁香亚洲| 日本h片在线| 国产美女一级片| 中国吞精videos露脸| 偷自拍亚洲| 男生草女生的视频| 91视频最新地址| 天堂久久久久久| 日本少妇喷水视频| 试看免费毛片120| 欧亚一区二区三区| 日本系列 1页 亚洲系列| 九九热视频免费观看| 亚欧洲精品在线视频| 丰满熟女一区二区三区| 日本无马| 日韩中文字幕网站| 我看午夜视频| 男人天堂色| 日韩在线免费看| 最好看的中文字幕| 午夜黄色录像| 国产精品毛片一区| 成人1啪啪| 婷婷中文网| 大陆av在线| 天天av天天翘| 亚洲国产成人在线| 欧美日韩在线免费看| 国产精品视频一区二区三区| 成人手机视频| 五月视频在线观看| 黄色工厂这里只有精品| 亚洲av电影一区二区| 麻豆av影视| 神宫寺奈绪一区二区三区| 国产精品久久久一区| 国产一区二区三区电影在线观看| 欧美三级视频在线播放| 国产精品久久无码一三区| 国内精品视频在线| 亚洲精品综合网| 黄色三级片毛片| 又黄又色又爽的视频| 97视频播放| 尤物网在线| 6080午夜伦理| 成人免费av在线| 国产免费一级电影| 久久羞羞| 日韩成人av毛片| 欧美国产三级| 亚洲天堂免费在线观看视频| 一级视频黄色| 国产偷在线| 国产黄a三级三级三级看三级男男| 疯狂揉花蒂控制高潮h| av毛片精品| 永久免费AV无码网站韩国毛片| 涩涩网址| 色久av| 免费观看全黄做爰视频| 在线看毛片网站| 在线a网| 久久九九免费| 澳门色网| 蜜桃精品成人影片| 成人性做爰片免费视频| 福利视频h| 欧美xxx性| 无码毛片aaa在线| 国产ts在线视频| 午夜一区二区三区| 国产精品一区无码| 亚洲 在线| av电影在线观看免费| 中国精品毛片| 午夜av大片| 五月天色网站| 久久久二| 青娱乐在线播放| 波多野结衣电车| jk美女又爽又黄视频| 熟女高潮一区二区三区视频| 狠狠搞狠狠干| 国内性爱视频| 日本久久久亚洲精品| av免费网| 欧美一区二区大片| 性色av免费观看| 德国老妇性猛交| 精品国产一区二区三区四区五区| 好色av| 精品动漫一区| 91福利视频免费观看| 在线日韩福利| 国产精品国产精品国产专区不卡| 国产精品高清在线观看| 香蕉视频色版| 日韩国产毛片| 日日夜夜人人| 奇米中文字幕| 色天天久久| 69视频污| 在线视频自拍| 91精品网站| 3571色影院| 91看片就是不一样| 青青视频在线播放| 好吊色视频在线观看| 国产高清aaa| 亚洲七区| 国产福利一区二区三区视频| 一起草视频在线播放| 久久久久亚洲AV成人| 毛片网站免费| 天天天操操操| www.在线观看麻豆| 综合天堂av久久久久久久| 午夜爱爱影院| 97精品在线| 亚洲AV无码乱码国产精品牛牛| 黄色av成人| 欧洲日韩av| 久久伊人免费| 国产日本欧美视频| 亚洲88av| 91大神久久| 在线观看一区| 日本h片在线观看| 日韩精品在线视频免费观看| 国产午夜影院| 日韩.www| 少妇被两个黑人3p喷水视频| 国产呦系列| 婷婷啪啪| 91麻豆精品| 91大神在线免费观看| 天堂资源在线播放| 精品在线免费观看| 青青爽在线视频| 久久久久久久久久久免费| 亚洲成av人片一区二区梦乃| 美脚の诱脚舐め脚视频播放| 成人黄网免费观看视频| 久久久久久久久黄色| 夜夜嗨一区二区| 亚洲自拍另类| 国产精品色婷婷| 精品日韩一区二区| 51av在线| 欧美在线一区二区视频| 日韩一级精品| 丁香激情小说| 最新成人av网站| 每日更新av| 久久最新视频| 国产三级精品三级| 美女av影院| 久激情内射婷内射蜜桃| 九九热精品国产| 久久久蜜桃一区二区| 视频在线| 欧美激情天堂| 免费黄网站在线观看| 国产伦精品一区二区三区妓女下载| v888av成人| 性色av蜜臀av浪潮av老女人| 蜜桃臀一区二区三区| 成 人色 网 站 欧美大片在线观看| 91视频二区| 熟女少妇内射日韩亚洲| 日干夜干天天干| 日本不卡视频| 李丽珍毛片| 国产传媒在线观看| 久久久久逼| 亚洲人精品| 国产精品国产三级欧美| av鲁丝一区二区鲁丝| 日韩欧美三级视频| 天堂网在线看| 久久影视中文字幕| 免费乱岳在线直播| 欧美色图一区| 91精品国产入口在线| 无法忍受在线观看| 啪啪自拍| 国产九九九九| 女女av在线| 国产一区二区免费看| 国产精品福利片| 岛国av一区二区| 91精品啪啪| 成人在线视屏| 一区二区视频免费在线观看| 在线国产日韩| 日本午夜激情| 青青网站| 蜜桃视频在线观看一区二区| 国产中文字幕久久| 久色伊人| 伊人网页| h视频在线免费观看| 少妇天堂网| 日韩天堂视频| 老司机精品导航| 91视频影院| 精品黄网| 黑人一级淫片40厘米| 天天操夜夜欢| 欧美姓爱综合网| 激情av网址| 亚洲一区色| 天天干天天操天天| 欧美日韩一区二区三区四区五区六区| 欧美精品免费播放| 久久9精品区-无套内射无码| 经典一区二区| 在线观看国产网站| 丁香婷婷综合激情| 中文天堂在线视频| 亚洲一二三四区| 国产丝袜一区二区| av成人在线看| 亚洲4438| 一二三区精品| 欧美 日韩 综合| 菠萝菠萝蜜网站| 污的网站| 都市激情亚洲综合| 苍井空张开腿实干12次 | 免费成人av电影| 本站只有精品| 91精品国产一二三| 91福利免费视频| 日本爱爱免费视频| 成人做爰69片免费看| 成年片黄色日本大片网站视频| 国产一区二区三区四区五区| 成人亚洲| 亚洲国产精品久久久久婷蜜芽| 亚洲1级片| 插我舔内射18免费视频| 狠狠搞狠狠操| 伊人蕉久中文字幕无码专区 | 国产美女极度色诱视频www| 亚洲视频在线观看一区二区三区| 亚洲一区二区视频| 女生被男生桶| 欧美在线一区二区| 激情五月色综合国产精品| 嫩草视频国产| 亚洲a∨无码无在线观看 | 男人爱看的网站| 成人xxx视频| 91www视频| 制服丝袜一区二区三区| 黄色av一区二区三区| 欧美三级视频在线播放| 7777偷窥盗摄视频| 日韩av片在线播放| 夜夜爽影院| 影音先锋天堂网| 伊人成人在线视频| 黄色无毒网站| 精品区在线观看| 光棍天堂av| 蜜桃视频污| 狠狠干综合| 亚洲一区在线视频| 综合一区二区三区| 真人毛片视频| 麻豆免费在线| 伊人蜜桃av| 中文字幕乱码人妻无码久久95| 黄色一级视频免费看| 乱色精品无码一区二区国产盗| 99精品在线免费视频| 精精国产xxxx视频在线观看| av无需播放器| 少妇精品久久久久久久久久| 日本少妇三级| 午夜电影天堂| 亚洲精品资源在线| 伊人伊人| 琪琪射| 18成人在线视频| 九色porn| 激情小说婷婷| 色婷婷导航| 人妻夜夜爽天天爽| 精品免费久久久| 国产精品无码毛片| 亚洲精品国品乱码久久久久| 欧美少妇影院| 日韩在线视频看看| 中文在线√天堂| 国产最新视频| 天堂精品| 中文字幕日韩精品在线| 国产黄色影视| 久久精品丝袜高跟鞋| 狠狠操很很干| 四虎久久久| 一区二区 中文字幕| 欧美日韩在线播放| 黄色片aaa| 国产极品网站| 四虎免费久久| 国产一区二区三区精彩视频| 伦理久久| 黄色小视频免费观看| 成人一区二区三区在线观看| 日韩成人一区二区三区| 玖玖爱这里只有精品| 亚洲综合精品一区二区| 亚洲成av人片一区二区| 日本少妇久久久| 国产成人一区在线| 成人做爰69片免费| 欧美丝袜视频| 网站一区二区| xxx在线视频| 日韩国产精品一区| 欧美一区二区三区视频在线观看| 成人午夜免费在线观看| youjizz国产精品| 911爱爱视频| 少妇人妻互换不带套| 高清av网址| 九色porny自拍| 亚洲操操| 久草国产在线观看| 国内成人av| 天天干天天爽天天操| 欧美成人综合在线| 亚洲欧美小视频| 亚洲国产精品久久久久久久 | 国产精品va在线| 日韩一区二区不卡| 99久久6| 丝袜制服中文字幕| 国产骚b| 色婷婷狠狠操| 美女激情久久| 天天综合久久| 午夜精品一区二区三区av| 成年人免费在线视频| 国产精品主播一区二区| 伊人资源| www.色播.com| 秋霞电影网一区二区三区| 久久人妖| 国产高清aaa| 亚洲女人被黑人巨大进入| 国产精品男女视频| 日本aaaa视频| 欧美视频偷拍| 久久国产这里只有精品| 国产精品高潮呻吟| 91久久精品无码一区二区| 精品伊人久久| 久久精品色妇熟妇丰满| 亚洲丁香网| 男男av网站| 日韩一卡二卡| 手机看片欧美| av无遮挡| 免费成人视屏| 在线观看黄色网页| 亚洲av永久无码精品一区二区国产 | 国产小视频一区二区| 啪啪免费| 成年人免费观看网站|