亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        工作流技術(shù)在技術(shù)服務(wù)平臺(tái)中的設(shè)計(jì)與實(shí)現(xiàn)

        2019-04-19 05:18:38悅,武
        關(guān)鍵詞:引擎實(shí)例流程

        石 悅,武 彤

        (貴州大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,貴州 貴陽(yáng) 550025)

        0 引 言

        在信息技術(shù)發(fā)展不斷完善和知識(shí)經(jīng)濟(jì)不斷創(chuàng)新的時(shí)代下,不管是大型還是中小型企業(yè)都需要一個(gè)可以實(shí)現(xiàn)內(nèi)外資源整合的基于流程化管理的系統(tǒng)。其中,以工作流引擎為核心的系統(tǒng)可以實(shí)現(xiàn)業(yè)務(wù)流程的自動(dòng)流動(dòng)和控制,增強(qiáng)業(yè)務(wù)流程的靈活性,在電信、金融、電力和物流等機(jī)構(gòu)都得以運(yùn)用[1]。

        在國(guó)外,工作流技術(shù)在很多機(jī)構(gòu)和學(xué)校進(jìn)行了一系列的研究,并且獲得了不少成果,如基于持久消息隊(duì)列的FMQM、自適應(yīng)能力的工作流管理系統(tǒng)Meteor、基于主動(dòng)數(shù)據(jù)庫(kù)技術(shù)的WIDE,以及基于狀態(tài)和活動(dòng)圖的Mentor等[2]。從國(guó)外的這些工作流可以看出,它們都有其各自的特點(diǎn),能夠很方便、迅速地解決問(wèn)題,但是,國(guó)外的工作流始終是在其他國(guó)家運(yùn)行工作的,并不適用于中國(guó)新時(shí)代特色社會(huì)主義社會(huì)的國(guó)情,畢竟中國(guó)工作流的運(yùn)作方式跟國(guó)外的并不一樣,處理問(wèn)題也不太一樣。中國(guó)的工作流有順序、回歸、分支、返回、并發(fā)等具體流程,還有實(shí)現(xiàn)了動(dòng)態(tài)的并發(fā)、循環(huán)[3]。中國(guó)的工作流不僅支持嵌套進(jìn)程,而且還提供超時(shí)處理和設(shè)置的功能。

        在國(guó)內(nèi),研究工作流技術(shù)并且應(yīng)用工作流技術(shù)的時(shí)間相對(duì)較晚,中國(guó)現(xiàn)階段的研發(fā)能力與國(guó)外相比還是有一定差距的,而且國(guó)內(nèi)對(duì)工作流的研究主要放在如何使用工作流技術(shù)以及如何實(shí)現(xiàn)工作流這些方面,并且國(guó)內(nèi)很多著名的廠商(如東方易維、西安協(xié)同、普元、炎黃動(dòng)力、有生博大、華創(chuàng)動(dòng)力等)主要還是針對(duì)工作流本身產(chǎn)品的價(jià)值或者開(kāi)發(fā)平臺(tái),工作流管理只是其中的一小部分,得不到重視[4]。此外,工作流還存在以下問(wèn)題:現(xiàn)階段對(duì)工作流技術(shù)的研究還是比較缺乏,并且工作流模型缺乏一個(gè)嚴(yán)格的標(biāo)準(zhǔn);每個(gè)工作流模型的差異性較大,沒(méi)有統(tǒng)一的標(biāo)準(zhǔn),這讓各個(gè)廠商采用的工作流不一致,最后在使用過(guò)程中和維護(hù)中就會(huì)導(dǎo)致資源浪費(fèi);工作流模型缺乏一種能夠共同支持工作流模型定義的理念,缺乏能夠充分分析的形式化的數(shù)學(xué)模型和統(tǒng)一便于管理的開(kāi)發(fā)平臺(tái)[5]。

        通過(guò)對(duì)國(guó)內(nèi)外工作流研究現(xiàn)狀的比較可知,國(guó)內(nèi)的工作流技術(shù)有很大的提升空間。文中將工作流技術(shù)引入某技術(shù)服務(wù)平臺(tái),對(duì)工作流模塊進(jìn)行二次開(kāi)發(fā),采用工作流引擎過(guò)程建模,節(jié)點(diǎn)建模,工作項(xiàng)與活動(dòng)節(jié)點(diǎn)的有關(guān)操作以及節(jié)點(diǎn)推進(jìn),執(zhí)行節(jié)點(diǎn)等功能,并且在流程中加入柔性節(jié)點(diǎn)的方式,快速響應(yīng)外部環(huán)境的變化,以提高技術(shù)服務(wù)平臺(tái)在處理業(yè)務(wù)上的效率。

        1 工作流

        1.1 工作流參考模型

        工作流管理聯(lián)盟簡(jiǎn)稱WFMC,在工作流的標(biāo)準(zhǔn)和規(guī)范中主要提出了工作流參考模型。通過(guò)對(duì)工作流程序結(jié)構(gòu)的分析得出了工作流參考模型,而且還對(duì)結(jié)構(gòu)中的接口進(jìn)行確認(rèn),讓不同的產(chǎn)品在不同的層次結(jié)構(gòu)上協(xié)同工作。工作流系統(tǒng)中包括許多組件,而這些組件和其他定義的方法一起協(xié)同工作;不同的產(chǎn)品在這些組件中展示了不同的功能。但是為了讓這些不同工作流產(chǎn)品有一起工作的能力,需要在各個(gè)組件之間建立接口和數(shù)據(jù)交換的標(biāo)準(zhǔn),通過(guò)這些標(biāo)準(zhǔn),才能建立各個(gè)產(chǎn)品之間一起協(xié)調(diào)工作的能力[6]。

        如圖1所示,接口一是建模與流程定義工具運(yùn)行時(shí)管理各個(gè)軟件之間的接口;接口二是提供工作流引擎與客戶端應(yīng)用之間的API通信接口;接口三是其他應(yīng)用程序與工作流引擎之間的API接口;接口四是工作流與其他API通信以及與工作流之間實(shí)現(xiàn)分布式管理的核心API接口;接口五是工作流在運(yùn)行時(shí)的狀態(tài)和在運(yùn)行實(shí)例情況下的監(jiān)視管理API接口[7]。

        圖1 工作流參考模型

        圖1中每個(gè)相關(guān)工具的作用是:流程定義工具讓使用變得方便,還能夠識(shí)別計(jì)算機(jī)系統(tǒng)里的過(guò)程,自行進(jìn)行定義。目前,有很多多功能的圖形工具對(duì)工作流的過(guò)程進(jìn)行定義。XPDL(XML過(guò)程定義語(yǔ)言)是工作流管理聯(lián)盟提出的一種標(biāo)準(zhǔn)化規(guī)范,采用XML文件來(lái)讓不同的工作流軟件進(jìn)行業(yè)務(wù)交換,并且對(duì)各流程進(jìn)行定義。管理監(jiān)控工具是讓工作流在運(yùn)行過(guò)程中對(duì)各個(gè)流程進(jìn)行監(jiān)控和管理的工具,提供了一些功能來(lái)對(duì)安全、授權(quán)、控制等過(guò)程進(jìn)行管理。這些功能包含用戶、角色、資源、監(jiān)控和過(guò)程監(jiān)控的管理功能,如過(guò)程模型的啟動(dòng)、實(shí)例化、恢復(fù)、暫停、進(jìn)程實(shí)例的執(zhí)行、終止過(guò)程實(shí)例等。工作流引擎由許多個(gè)工作流執(zhí)行服務(wù)組成,并且提供了實(shí)例過(guò)程的執(zhí)行活動(dòng)、導(dǎo)航活動(dòng)以及與外部資源的活動(dòng),除此之外還包括控制數(shù)據(jù)的功能。工作流服務(wù)流程如圖2所示[8-10]。

        1.2 工作流引擎的特性及作用

        工作流有4個(gè)主要特征:擁有先進(jìn)的SOA技術(shù)構(gòu)架、支持集群、可擴(kuò)展能力以及開(kāi)放性和嵌入能力。這些特征都是為了提高流程效率和效益,縮短生產(chǎn)周期,加強(qiáng)協(xié)作,優(yōu)化流程。具體作用如下[11]:

        (1)提高效率,減少等待。

        工作流流程的自動(dòng)化降低了時(shí)間成本,讓等待變得有價(jià)值。自動(dòng)化循環(huán)設(shè)置還可以對(duì)企業(yè)的內(nèi)部結(jié)構(gòu)進(jìn)行系統(tǒng)設(shè)置,減少時(shí)間的等待,提高了決策的速度。

        圖2 工作流服務(wù)的整個(gè)流程

        (2)規(guī)范行為,落實(shí)制度。

        采用正規(guī)的工作流業(yè)務(wù)流程來(lái)規(guī)范企業(yè)之間的流程與行為,有效解決了企業(yè)之間的業(yè)務(wù)不和諧問(wèn)題。除此之外,還能把業(yè)務(wù)流程與企業(yè)內(nèi)部的規(guī)章制度結(jié)合起來(lái),讓各個(gè)系統(tǒng)的運(yùn)行機(jī)制保持一致,有效解決了業(yè)務(wù)流程不一致問(wèn)題。

        (3)協(xié)同內(nèi)外,快速響應(yīng)。

        使得任務(wù)、財(cái)務(wù)狀況、材料清單、客戶資料、員工計(jì)劃、知識(shí)管理等各個(gè)方面的工作流任務(wù)跨越時(shí)間與空間的限制,有機(jī)整合到一起,協(xié)同工作。

        (4)監(jiān)控全面,提升執(zhí)行。

        能夠全面地對(duì)各項(xiàng)任務(wù)進(jìn)行管理并且及時(shí)了解任務(wù)的執(zhí)行狀態(tài)情況,對(duì)任務(wù)的情況進(jìn)行分析,從而提高企業(yè)執(zhí)行的效率。

        2 工作流在系統(tǒng)中的設(shè)計(jì)

        2.1 整體設(shè)計(jì)

        該系統(tǒng)采用MVC(model-view-control)模式開(kāi)發(fā),采用MVC模式能讓各個(gè)功能模塊與顯示模塊進(jìn)行分離,降低各個(gè)模塊之間的耦合性,讓系統(tǒng)開(kāi)發(fā)變得有效率,具有可維護(hù)以及擴(kuò)展性強(qiáng)等特點(diǎn)。采用Myeclipse2014為編程開(kāi)發(fā)工具,以oracle 11g為數(shù)據(jù)庫(kù)開(kāi)發(fā)軟件。前端部分?jǐn)M采用HTML,CSS和JavaScript創(chuàng)建前端用戶界面,實(shí)現(xiàn)與后臺(tái)技術(shù)的分離,后臺(tái)采用SpringMVC結(jié)合Hibernate開(kāi)發(fā)[12-13]。此外,工作流的客戶端應(yīng)用其實(shí)就是工作流引擎暴露給外部的客戶端API,這樣,外部操作工作流就可以通過(guò)客戶端API進(jìn)行操作,客戶端API調(diào)用工作流引擎的核心API對(duì)流程進(jìn)行相關(guān)處理。所以采用工作流引擎技術(shù)對(duì)技術(shù)服務(wù)平臺(tái)中的鑒定檢測(cè)管理系統(tǒng)進(jìn)行二次開(kāi)發(fā)。系統(tǒng)總共分為“收費(fèi)單價(jià)維護(hù)”、“樣品發(fā)放”、“發(fā)放管理”等16個(gè)功能模塊,在二次開(kāi)發(fā)中將對(duì)其相應(yīng)的模塊采用工作流技術(shù),具體結(jié)構(gòu)見(jiàn)圖3[14]。

        圖3 “檢定檢測(cè)管理”的功能結(jié)構(gòu)

        2.2 工作流在系統(tǒng)中的詳細(xì)設(shè)計(jì)

        系統(tǒng)的每個(gè)模塊都是嚴(yán)格按照工作流程設(shè)計(jì)的標(biāo)準(zhǔn)完成每一步的審核與驗(yàn)收。具體以檢定檢測(cè)管理流程為例進(jìn)行詳細(xì)闡述。

        首先對(duì)接收到的設(shè)備進(jìn)行立項(xiàng),然后移交到專業(yè)室,專業(yè)室再讓市場(chǎng)營(yíng)銷部評(píng)估檢驗(yàn)設(shè)備所需要的費(fèi)用,確認(rèn)收費(fèi)完畢后把設(shè)備移交給檢定部門進(jìn)行檢定,檢定完成后發(fā)放設(shè)備和檢定的證書(shū),然后把批準(zhǔn)完的證書(shū)給簽發(fā)部門蓋章生效,最后收發(fā)部把設(shè)備和證書(shū)進(jìn)行發(fā)放。每個(gè)項(xiàng)目按照設(shè)備任務(wù)書(shū)、設(shè)備檢定設(shè)計(jì)、設(shè)備精確度檢驗(yàn)、設(shè)備驗(yàn)收、設(shè)備歸檔、設(shè)備發(fā)放等流程進(jìn)行。在工作項(xiàng)目每個(gè)環(huán)節(jié)中,都需要使用工作流進(jìn)行諸如設(shè)備檢定、證書(shū)審批的管理工作。設(shè)備在每個(gè)環(huán)節(jié)執(zhí)行完畢后,會(huì)發(fā)放設(shè)備的證書(shū),證書(shū)也按照上述順序進(jìn)行。在證書(shū)審批的每個(gè)環(huán)節(jié),也需要使用工作流進(jìn)行諸如項(xiàng)目審批的管理工作?;诠ぷ髁鞯臋z定檢測(cè)管理系統(tǒng)的流程如圖4所示。

        3 工作流在系統(tǒng)中的部署與實(shí)現(xiàn)

        3.1 流程定義

        過(guò)程實(shí)例以開(kāi)始節(jié)點(diǎn)、中間節(jié)點(diǎn)和結(jié)束節(jié)點(diǎn)的進(jìn)程結(jié)束開(kāi)始,并且節(jié)點(diǎn)主要是通過(guò)轉(zhuǎn)換來(lái)鏈接的。系統(tǒng)中主要使用五種節(jié)點(diǎn)進(jìn)行響應(yīng),包括start、decision、task、custom和end。除此之外,JBPM還提供了十多種以外的節(jié)點(diǎn)對(duì)start、end和task以及自定義事件進(jìn)行響應(yīng),自己可以對(duì)響應(yīng)的方式進(jìn)行定義。該系統(tǒng)流程以鍋爐所審批作為實(shí)例[15-16]。

        圖4 “檢定檢測(cè)管理”流程

        3.2 主要功能實(shí)現(xiàn)

        下面截取部署過(guò)程中的幾段代碼來(lái)解釋xml文件表示流程相關(guān)信息的基礎(chǔ)上如何讓程序正確地獲取它所傳遞的信息,以及員工提交任務(wù)和各個(gè)部門審批任務(wù)環(huán)節(jié)的主要功能。

        (1)通過(guò)表查詢到各部門員工信息,并在表中進(jìn)行相應(yīng)操作,部分代碼如下:

        static Map userMailMap=new HashMap();

        public static voidinit(){

        Map postName=getPostName(" ");

        Map employeeName=getEmployeeName(" ");

        Map userIdMap=getUserId();

        System.out.println("系統(tǒng)用戶編號(hào),員工編號(hào),員工姓名,郵箱,部門編號(hào),部門名稱");

        for (String s:employeeName.keySet()) {

        Employee e=employeeName.get(s);

        System.out.println(userIdMap.get (e.getEmployeeId())+","+e.getEmployeeId()+","+e.getEmployeeName()+","+e.getEmail()+","+postNameMap.get(postName.get(s))+","+postName.get(s));userMap.put(userIdMap.get(e.getEmployeeId()), e.getEmployeeName());}

        getsysRole();

        啟動(dòng)進(jìn)程實(shí)例后,在JBPM_Excel表中有一個(gè)雇員提交的應(yīng)用程序的活動(dòng)記錄,然后將其應(yīng)用到員工提交過(guò)程中,分別是task.jbpm.xml和task.png。

        (2)啟動(dòng)流程實(shí)例。

        通過(guò)啟動(dòng)流程實(shí)例,jbpm.xml中name屬性的值為task,具體代碼如下:

        public static void main(String[]args) {

        WorkEntrustTicket w=new WorkEntrustTicket();

        w.readerDSN(task);}

        流程啟動(dòng)后:Employee_task表中有一條員工待申請(qǐng)的任務(wù),員工登錄賬戶對(duì)未處理的文件進(jìn)行處理。

        (3)員工操作。

        員工登錄系統(tǒng)查詢具體任務(wù),具體代碼如下:

        private static Logger logger=Logger.getLogger(ExcelUtil.class);

        static String path=DyEnPageBak.class.getResource("/").getPath();

        static String websiteUrl=path.replace("classes/","")+"qcenter/qcenter_hibernate.cfg.xml";

        static File file=new File(websiteUrl);

        private static Configuration cfg=new Configuration().configure(file);

        private static SessionFactory fac=cfg.buildSessionFactory();

        private static Session session=fac.openSession();

        publicint redeExcel(String path) {

        Sheetsheet;

        Workbook book;

        Cell cell1;

        try {

        // t.xls為要讀取的excel文件名

        book=Workbook.getWorkbook(new File(path));

        sheet=book.getSheet(0);

        int rsColumns=sheet.getColumns();

        int rsRows=sheet.getRows();

        List testInstrumentsList=new ArrayList();

        int count=0;

        for (int k=1;k

        StringeftutbtName=sheet.getCell(0,k).getContents();

        String CERTIFICATE_NO=sheet.getCell(1, k).getContents();

        //裝置證書(shū)號(hào)

        String STANDARD_NAME=sheet.getCell(2, k).getContents();//裝置名稱

        String EQUIPMENT_NAME=sheet.getCell(3, k).getContents();//主標(biāo)準(zhǔn)信息

        String MAJOR=sheet.getCell(5,k).getContents();//所屬專業(yè)

        }}

        員工處理完文件提交給鍋爐所主任審核,該員工再查詢列表時(shí),顯示沒(méi)有任務(wù)。

        (4)鍋爐所主任審核操作。

        主任登錄賬號(hào),查詢到有一條未處理的任務(wù),主任對(duì)未審核的任務(wù)進(jìn)行處理,具體代碼如下:

        public void read(StringbrFile,String pwFile){

        try {

        BufferedReader br=new BufferedReader(new InputStreamReader(new FileInputStream(brFile), "GBK"));

        PrintWriter pw=new PrintWriter(new OutputStreamWriter(new FileOutputStream(pwFile), "GBK"));

        String play;

        br.readLine();

        while ((play=br.readLine())!=null) {

        StringBuffer sb=new StringBuffer();

        String []ss=play.replace(""", "").split(",");

        sb.append("(");

        for(int i=0;i

        sb.append("'").append(ss[i]).append("',");

        if(ss.length==13&&i==12){

        sb.append("null,");}

        if(i==ss.length-1){

        sb.delete( sb.length()-1, sb.length()); }}

        sb.append(");");

        pw.println(sb.toString());

        System.out.println(sb.toString()); }

        pw.close();

        br.close();

        }catch (Exception e) {

        e.printStackTrace(); } }

        鍋爐所主任審核完文件后,提交批準(zhǔn)環(huán)節(jié),具體代碼如下:

        public voidCheck_task() {

        Stringtask_Id=" ";

        procedure.getTaskService(). Check_task(task_Id); }

        (5)鍋爐所批準(zhǔn)操作。

        主任再次登入任務(wù)批準(zhǔn)系統(tǒng),查詢到未批準(zhǔn)的任務(wù),具體代碼如下:

        public static ListredeExcel(String path) {

        List list=new ArrayList();

        Sheetsheet;

        Workbook book;

        try {

        // t.xls為要讀取的excel文件名

        book=Workbook.getWorkbook(new File(path));

        sheet=book.getSheet(0);

        int rsRows=sheet.getRows();

        for(int k=2;k

        StringeftutbtName=sheet.getCell(2,k).getContents();//所屬單位

        list.add(eftutbtName);}

        }catch (Exception e) {

        e.printStackTrace();}

        return list;}

        主任對(duì)查詢到的未批準(zhǔn)的任務(wù)進(jìn)行批準(zhǔn),具體代碼如下:

        public void finish_Task() {

        Stringtask_Id=" ";

        procedure.getTaskService(). Check_task(task_Id); }

        主任最后審批完任務(wù),即環(huán)節(jié)最終到達(dá)to end1,主任查詢個(gè)人列表時(shí),查詢結(jié)果為空。

        這樣整個(gè)任務(wù)就經(jīng)員工辦理然后傳遞到主任審閱及審批,最后到主任終結(jié)該任務(wù)。采用工作流技術(shù)后,系統(tǒng)實(shí)現(xiàn)了對(duì)組織的分層化管理以及對(duì)工作流管理的專業(yè)化,讓專業(yè)的人員處理專門的任務(wù),讓每個(gè)人都有相應(yīng)的權(quán)利和任務(wù),各司其職。此外,采用工作流技術(shù)后,系統(tǒng)能對(duì)整體業(yè)務(wù)流程進(jìn)行實(shí)時(shí)的監(jiān)控與管理,起到了事半功倍的效果。

        4 應(yīng)用實(shí)效

        經(jīng)過(guò)系統(tǒng)的設(shè)計(jì)和代碼的編寫(xiě),對(duì)系統(tǒng)進(jìn)行第二次開(kāi)發(fā),使其相較于之前有了質(zhì)的飛躍。下面說(shuō)明一下系統(tǒng)的項(xiàng)目管理模塊在運(yùn)行中的主要功能任務(wù),主要由員工辦理任務(wù)到主任審核并終結(jié)任務(wù)之間的流程實(shí)例。

        在瀏覽器中輸入http://127.0.0.1:555/SSOServer進(jìn)入登錄界面。

        任務(wù)由主任發(fā)起,此時(shí)項(xiàng)目中的任務(wù)開(kāi)始走工作流流程,以員工的角色進(jìn)入項(xiàng)目管理系統(tǒng),員工查詢自己未完成的任務(wù),并對(duì)此任務(wù)進(jìn)行辦理。員工完成此工作后,到下一個(gè)流程,提交到主任審核階段,主任對(duì)任務(wù)進(jìn)行審核,主任審核完任務(wù)后,流程進(jìn)入最后一個(gè)階段,即主任終結(jié)該任務(wù)。

        通過(guò)工作流技術(shù)對(duì)整個(gè)流程進(jìn)行升級(jí)后,讓業(yè)務(wù)流程變得簡(jiǎn)便及快速,使系統(tǒng)在處理業(yè)務(wù)上變得高效。

        5 結(jié)束語(yǔ)

        將工作流技術(shù)引入技術(shù)服務(wù)平臺(tái)進(jìn)行二次開(kāi)發(fā),使用工作流技術(shù)后,部門之間需要傳送審核的任務(wù)從以前的5天以上縮短到了僅要2天就完成出單,有效縮減了文件處理時(shí)間,減少了時(shí)間的等待。除此之外,企業(yè)里各大任務(wù)、計(jì)劃都能采用工作流的協(xié)同技術(shù)來(lái)共同完成協(xié)同業(yè)務(wù),提高了辦事效率。

        綜上,工作流引擎內(nèi)核的實(shí)現(xiàn),使原本許多繁瑣的任務(wù)處理起來(lái)變得簡(jiǎn)單、高效。目前有許多的工作流引擎,而且工作流技術(shù)也在不斷更新、發(fā)展,針對(duì)特定的系統(tǒng)需求如何選擇和使用工作流進(jìn)行系統(tǒng)的二次開(kāi)發(fā)是進(jìn)一步研究的目標(biāo)。

        猜你喜歡
        引擎實(shí)例流程
        吃水果有套“清洗流程”
        違反流程 致命誤判
        藍(lán)谷: “涉藍(lán)”新引擎
        商周刊(2017年22期)2017-11-09 05:08:31
        本刊審稿流程
        析OGSA-DAI工作流程
        無(wú)形的引擎
        河南電力(2015年5期)2015-06-08 06:01:46
        基于Cocos2d引擎的PuzzleGame開(kāi)發(fā)
        完形填空Ⅱ
        完形填空Ⅰ
        One?。牛睿纾椋睿濉。蹋澹妫糁皇O乱粋€(gè)引擎
        亚洲成a∨人片在无码2023| 内射爆草少妇精品视频| 亚洲av无码国产精品色| 国产精品福利自产拍在线观看| 国产又色又爽又黄刺激在线视频| 好看的欧美熟妇www在线| 中文无码制服丝袜人妻av| 亚洲高清有码在线观看| 日韩精品人妻中文字幕有码| 国产三级精品三级在线专区| 日本19禁啪啪吃奶大尺度| 伊伊人成亚洲综合人网7777| 久久国产亚洲AV无码麻豆| 精品国产日韩无 影视| 国产色婷亚洲99精品av网站| 91九色熟女潮喷露脸合集| 国产特黄级aaaaa片免| 久久久久久久岛国免费观看| 日产精品久久久久久久| 亚洲红杏AV无码专区首页| 日本午夜剧场日本东京热| 国产69精品久久久久9999apgf| 日韩毛片无码永久免费看| 一个人在线观看免费视频www| 欧美一级视频在线| 国产女优一区在线观看| 色播亚洲视频在线观看| 高清在线亚洲中文精品视频| 亚洲国产日韩在线精品频道| 国产激情一区二区三区不卡av | 久热爱精品视频在线观看久爱| 亚洲一区二区三区成人在线| 亚洲韩日av中文字幕| 男女无遮挡高清性视频| 亚洲乱码日产精品一二三| 久久久久亚洲av无码专区导航| 欧美韩日亚洲影视在线视频| 日韩女优一区二区视频| 日韩一本之道一区中文字幕| 亚洲精品国产精品乱码视色| 国产精品美女久久久久久 |