亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? unitqcgisproject.pas

?? 此代碼是關(guān)于mapgis的在
?? PAS
?? 第 1 頁(yè) / 共 5 頁(yè)
字號(hào):
unit UnitQCGISProject;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Forms, Graphics,
  Dialogs, MapXLib_TLB, Grids, yhbGrid, Buttons, DB, MapXTools, Controls, 
  ADODB, TFlatEditUnit, ComCtrls, Menus, ExtCtrls, ToolWin, MapXContainer,
  AppCmdCtrl, jpeg, DBTrees, VirtualDBEngine, WinControl, MapXDrv, MapXBase,
  DLControl, DBTools, UnitProject, UnitSubStationData, mis_RightDBStore,
  AnyPoster, DBM_MSSQL, DLRight, ActiveX, UnitAppTypes, AnyDBFactory,
  UnitQCConsts, IniFiles, UnitRecords;
  
type
  TDirectState=(dsKeepState, dsDisConnected, dsConnected);
  {七廠GIS工程類}
  TqcGISProject=class(TGISProject)
  private
    //---------------------------------------------------------------------//
    FDLCtrl:TDLControl;
    FRootMenuItem:TMenuItem;
    NAddStation:TMenuItem;
    NAddLine:TMenuItem;
    NAddKG:TMenuItem;
    NAddBT:TMenuItem;
    NLinkToPower:TMenuItem;
    NUserRight:TMenuItem;
    NReDirectServer:TMenuItem;
    NUpLoad:TMenuItem;
    NDownLoad:TMenuItem;
    NConfigPopedom:TMenuItem;
    NShapeProperties:TMenuItem;
    NConfigBDS:TMenuItem;
    PIMLoaded: Boolean;
    FDataFrom: Integer;
    {子站當(dāng)前狀態(tài)Frame}
    FSubStationFrame:TFrame_SubStationData;
    {SQLServer數(shù)據(jù)庫(kù)管理者,因?yàn)槲锢頂?shù)據(jù)庫(kù)的不同導(dǎo)致了SQL語(yǔ)句的細(xì)微差別,
    數(shù)據(jù)庫(kù)管理者就是為外界提供所需的SQL語(yǔ)句或子句}
    FDBManager:TSQLServerDBManager;
    {數(shù)據(jù)工廠對(duì)象}
    FDBFactory:TAnyDBFactory;
    {用戶層}
    FUserLayer:CMapXLayer;
    {線路層}
    FLineLayer:CMapXLayer;
    {變壓器層}
    FBTLayer:CMapXLayer;
    {開關(guān)層}
    FDotLayer:CMapXLayer;
    {子站層}
    FSubStationLayer:CMapXLayer;
    {水系層}
    FWaterSystemLayer:CMapXLayer;
    {道路層}
    FRoadLayer:CMapXLayer;
    {建筑物層}
    FBuildingLayer:CMapXLayer;
    {底圖層}
    FBottomLayer:CMapXLayer;
    {當(dāng)前變電所編號(hào)}
    FCurUnitID:Integer;
    {隨機(jī)模擬開關(guān)狀態(tài)的Timer}
    FPowerTimer:TTimer;
    //---------------------------------------------------------------------//
    {設(shè)置某個(gè)系統(tǒng)圖層為編輯狀態(tài)}
    procedure EditSystemLayer(LayerId:Integer);
    procedure DefConnectToServer;
    procedure ReInitServerPart;
    {加載圖層樹
        如果為系統(tǒng)管理員,可以維護(hù)圖層樹。維護(hù)內(nèi)容包括:增加圖層,圖層屬性,刪除圖
    層,拖動(dòng)圖層。拖動(dòng)圖層時(shí):當(dāng)FeatureClass中只有一個(gè)圖層時(shí),F(xiàn)eatureClass的編號(hào)變
    化。
        如果為一般用戶,則可以查看圖層屬性,但不能修改。}
    procedure CreateFeatureClassNode(const FCId:Integer;
      ATreeView:TTreeView; ATreeNode:TTreeNode);
    procedure LoadLayerTreeInfo;
    procedure LoadAndInitMap;
    function IsOldLayer(aUnitID:Integer; aTableName:string):Boolean;
    procedure SetDownloadDate(aUnitID:Integer; aTableName:string;
      aDownDate:TDateTime);
    {加載地圖內(nèi)容}
    function CheckLocalMap:Boolean;
    procedure DownloadSymbolBitmaps(Section:Integer; LocalPath:string);
    procedure DownloadBinaryLayer(const UnitID:Integer;
      const LayerName, LocalPath, LocalLayerName:string);
    procedure DownLoadSystemLayers;
    {從系統(tǒng)表創(chuàng)建圖層}
    procedure CreateLayerFromTable(aLayerInfo:TLayerTreeNodeRecord;
      const Index:Integer);
    {上載地圖}
    procedure UpLoadResources(Section:Integer; ResType, ResPath:string);
    procedure UpLoadLayerFile(const UnitID:Integer; const FileName:string);
    procedure UpLoadSystemLayers;
    {加載一個(gè)菜單項(xiàng)}
    function LoadMenuItem(aPItem:TMenuItem; const Caption:string;
      const Tag:Integer; ClickProc:TNotifyEvent):TMenuItem;
    //---------------------------------------------------------------------//
    function ReDirectSQLServer(INIF:TIniFile; PState:TDirectState):TDirectState;
    //---------------------------------------------------------------------//
    {連接服務(wù)器菜單事件處理過程}
    procedure ConnectClick(Sender: TObject);
    {上載圖層菜單事件處理過程}
    procedure UpLoadClick(Sender: TObject);
    {下載圖層菜單事件處理過程}
    procedure DownLoadClick(Sender: TObject);
    {增加子站菜單事件處理過程}
    procedure AddStationClick(Sender: TObject);
    {增加線路菜單事件處理過程}
    procedure AddLineClick(Sender: TObject);
    {增加開關(guān)菜單事件處理過程}
    procedure AddKGClick(Sender: TObject);
    {增加變臺(tái)菜單事件處理過程}
    procedure AddBTClick(Sender: TObject);
    {分析子站是否關(guān)聯(lián)記錄}
    procedure AnalyzeSubStationClick(Sender: TObject);
    {分析開關(guān)是否關(guān)聯(lián)記錄}
    procedure AnalyzePowerClick(Sender: TObject);
    {分析線路是否關(guān)聯(lián)記錄}
    procedure AnalyzeSDLineClick(Sender: TObject);
    {分析線路是否關(guān)聯(lián)開關(guān)}
    procedure AnalyzeLinkPowerClick(Sender: TObject);
    {輸電線路關(guān)聯(lián)到開關(guān)}
    procedure LinkToPowerClick(Sender: TObject);
    {裝載電力模擬數(shù)據(jù)}
    procedure LoadDLControlDataClick(Sender: TObject);
    {隨機(jī)演示開關(guān)狀態(tài)}
    procedure RandomPowerStateClick(Sender: TObject);
    {圖形屬性信息菜單事件處理過程}
    procedure ShapePropertiesClick(Sender: TObject);
    {窗口切換菜單事件處理過程}
    procedure ChangeWindowClick(Sender: TObject);
    {權(quán)限分配}
    procedure ConfigPopedomClick(Sender: TObject);
    {重新連接}
    procedure ReConnectClick(Sender: TObject);
    {重新登陸}
    procedure CheckPasswordClick(Sender: TObject);
    {圖形類是否存在}
    function FeatueClassExists(const FCId:Integer):Boolean;
    {如果連接到數(shù)據(jù)庫(kù),則進(jìn)一步設(shè)置}
    procedure DoAfterUserConnect;
    {圖層是否存在}
    function LayerExists(const LayerName:string):Boolean;
    {取得單位名稱}
    function GetCurUnitName: string;
    {取得系統(tǒng)圖層路徑,注意:和具體單位有關(guān)}
    function GetLocalMapPath: string;
    function GetConnected: Boolean;
    procedure GetUnits(List:TStrings);
    function GetUserUnitType: Integer;
    procedure AnalyzeFeatures(ALyr:Layer; Fts:Features; FtType:TOLEEnum;
      WarningColor:TColor);
    procedure PowerTimerOnTimer(Sender:TObject);
    //---------------------------------------------------------------------//
  protected
    FirstFeature:Boolean;
    FirstFeatureKeyValue:string;
    {數(shù)據(jù)提交者,對(duì)有必要隱藏的SQL語(yǔ)句進(jìn)行了隔離處理,對(duì)于變成者來說,
    編寫提交數(shù)據(jù)的代碼將更加簡(jiǎn)潔}
    GDBPoster:TDBPosterWithSQL;
    {取得圖層的圖形類編號(hào)}
    function GetLayerFeatureId(ALyr:Layer):Integer;
    {注冊(cè)本GIS實(shí)例所需的風(fēng)格}
    procedure RegisterProjectStyles; override;
    {注冊(cè)本GIS實(shí)例所需的工具}
    procedure RegisterProjectTools; override;
  public
    //---------------------------------------------------------------------//
    constructor Create(AOwner:TComponent; MapX:TMapXObject); override;
    destructor Destroy; override;
    //---------------------------------------------------------------------//
    {應(yīng)用權(quán)限}
    procedure DoApplayFunctions; override;
    {檢查是否有權(quán)操作}
    function CheckFunction(ActionId:Integer):Boolean; override;
    {顯示屬性對(duì)話框}
    procedure DoOnCtrlPropDialog(Sender:TObject; ActionId:Integer; Ft:Feature); override;
    {開始動(dòng)作}
    procedure DoBeginAction(ActionId:Integer; var Cancel:Boolean); override;
    {結(jié)束動(dòng)作}
    procedure DoEndAction(ActionId:Integer); override;
    {圖形刪除前}
    procedure DoBeforeDelete(Ft:Feature; ActionId:Integer); override;
    {圖形創(chuàng)建后}
    procedure DoFeatureCreate(Ft:Feature; ActionId:Integer); override;
    {填寫網(wǎng)格數(shù)據(jù)}
    function DoWriteDataGridData(AGridFrame:TFrame_Records):Boolean; override;
    //---------------------------------------------------------------------//
    {增加本地圖層到工程}
    procedure AddLayerToProject(ALyr:CMapXLayer; aLayerInfo:TLayerTreeNodeRecord;
      const FCId:Integer); override;
    {從工程下載圖層}
    procedure DownloadProjectLayer(ALyr:CMapXLayer; aLayerInfo:TLayerTreeNodeRecord;
      const LayerName, Path:string); override;
    {創(chuàng)建業(yè)務(wù)菜單項(xiàng)}
    procedure LoadBusinessMenuItems(AMenuItem:TMenuItem); override;
    {工程實(shí)例加載,包括連接數(shù)據(jù)庫(kù)、加載所有系統(tǒng)圖層等操作}
    procedure LoadProject; override;
    {連接數(shù)據(jù)庫(kù)}
    function ConnectToDataBase(const Server, UserName, Password:string):Boolean;
    {登陸到服務(wù)器}
    function Connect(const UserName, Password:string):Boolean;
    {用對(duì)話框登陸}
    function ConnectUseDialog:Boolean;
    {加載地圖}
    procedure LoadMaps(const ItemIndex:Integer); override;
    procedure SetCurrentUnit(const UnitID:Integer);
    {注冊(cè)命令}
    procedure RegisterCmdCtrlGroups; override;
    {刷新開關(guān)顯示}
    procedure RefreshDotState(aDot:TDot);
    {刷新所有開關(guān)顯示}
    procedure RefreshAllDotState;
    {刷新電路狀態(tài)顯示}
    procedure RefreshLineLayerState(const bChanged:Boolean);
    {監(jiān)控?cái)U(kuò)展菜單}
    procedure LoadParentInstanceModules; override;
    {刷新模擬圖}
    procedure RefreshSimulantMap; 
    {選擇子站當(dāng)前狀態(tài)刷新}
    procedure RefreshSelectedSubStationsState;
    {取得子站關(guān)聯(lián)的開關(guān)及其當(dāng)前狀態(tài)}
    function GetSubStationLinkPowerInfo(const SubStationId:Integer;
      var ZKPowerId, GLPower1Id, GLPower2Id:Integer;
      var ZKPowerState, GLPower1State, GLPower2State:Smallint):Boolean;
    {子站報(bào)警}
    procedure SubStationWarning(const SubStationId:Integer;
      const WarningString:string; BoundSeed:Double);
    {定位子站}
    procedure GoToSubStation(const SubStationId:Integer; BoundSeed:Double);
    {設(shè)置開關(guān)狀態(tài)}
    procedure SetPowerState(aDot:TDot; aState:TDotState; bAnalyze,
      bSaveState:Boolean); overload;
    {設(shè)置開關(guān)狀態(tài)}
    procedure SetPowerState(const PowerId:Integer; aState:Smallint; bAnalyze,
      bSaveState:Boolean); overload;
    {雙擊}
    procedure DoFeatureDblClick(Sender:TObject; Ft:Feature); override;
    procedure InitLineLayerRecords;
    procedure InitDotLayerRecords;
    //---------------------------------------------------------------------//
    property DLCtrl:TDLControl read FDLCtrl;
    property SubStationLayer:CMapXLayer read FSubStationLayer;
    property DotLayer:CMapXLayer read FDotLayer;
    property LineLayer:CMapXLayer read FLineLayer;
    property DataFrom:Integer read FDataFrom write FDataFrom;
    property UserUnitType:Integer read GetUserUnitType;
    property CurUnitID:Integer read FCurUnitID;
    property CurUnitName:string read GetCurUnitName;
    property LocalMapPath:string read GetLocalMapPath;
    property Connected:Boolean read GetConnected;
    property DefDBPoster:TDBPosterWithSQL read GDBPoster;
    //---------------------------------------------------------------------//
  end;

implementation

uses
  UnitDMLinks, UnitMainLinkObjects, BusinessDialogs, MapXStyles, MapXAPIs,
  MapXAdvance, MapXConsts, MapXMessages, UnitLineInfo, UnitPowerInfo, IntList,
  ADODBTools, StringOperations, WinFileSystem, MainFormInstance, DBBase,
  UnitGetUserInfo, mis_Instance, UnitQCProjectTools, UnitConnectToSQLServerDB,
  ADOConnection, UnitGISShell, UnitShellAPIs, UnitAppConsts, UnitQCAPIs,
  UnitEagleEye, UnitPopedomInfo, mis_Right, UnitChangePassword,
  UnitQCProjectOptions, AppDebug, TypInfo, UnitSubStationInfo, DBS_MSSQL;
  
{ TqcGISProject }

function GetPowerLocalState(strState:string):SmallInt;
begin
  strState:=Trim(strState);
  if strState='開' then
    Result:=1
  else if strState='關(guān)' then
    Result:=0
  else
    Result:=-1;
end;

procedure TqcGISProject.AddBTClick(Sender: TObject);
begin
  EditSystemLayer(LAYER_SYS_BT);
end;

procedure TqcGISProject.AddKGClick(Sender: TObject);
begin
  EditSystemLayer(LAYER_SYS_POWER);
  SetCurrentMapTool('TAddKGLineMapTool', OnTurnTool);
end;

procedure TqcGISProject.AddLayerToProject(ALyr: CMapXLayer;
  aLayerInfo:TLayerTreeNodeRecord; const FCId:Integer);
var
  LayerId:Integer;
  Path:string;
  TableName:string;
  ANode:TTreeNode;
begin
  if not dm_Links.DBMachine1.Connected then Exit;
  Path:=CheckPath(ExtractFilePath(aLayerInfo.FileName));
  TableName:=ExtractFileNameNoExt(aLayerInfo.FileName);
  {圖形類是否存在}
  if not FeatueClassExists(FCId) then
    raise Exception.Create('圖形類不存在!');
  {圖層是否存在}
  if LayerExists(ALyr.Name) then
    raise Exception.Create('工程中存在同名圖層,請(qǐng)重新命名后加入!');
  case DataFrom of
    1:begin
      {將數(shù)據(jù)導(dǎo)入到表中}
      with GMapTools.m_Layer do
      begin
        Layer:=aLyr;
        SaveFeaturesToTable(dm_MainLinkObjects.PublicQuery,
                         aLyr.DataSets.Item[1],
                         dbtSQLServer,
                         TableName);
      end;
    end;
    2:begin
      UpLoadLayerFile(CurUnitID, Path+TableName+'.DAT');
      UpLoadLayerFile(CurUnitID, Path+TableName+'.ID');
      UpLoadLayerFile(CurUnitID, Path+TableName+'.MAP');
      UpLoadLayerFile(CurUnitID, Path+TableName+'.TAB');
    end;
    else begin
      WarningAbort('錯(cuò)誤', '無(wú)法識(shí)別圖層存儲(chǔ)標(biāo)志!');
    end;
  end;
  {記錄圖層信息}
  LayerId:=GetNewIntID(dm_MainLinkObjects.PublicQuery, 't_Layers', 'LayerId', '', 1);
  with dm_MainLinkObjects.PublicQuery do
  begin
    Close;
    SQL.Clear;
    SQL.Add('select * from t_Layers where LayerId=:LayerId');
    SetParamValue(dm_MainLinkObjects.PublicQuery, 'LayerId', -1);
    Open;
    Append;
    FieldByName('LayerId').Value:=LayerId;
    FieldByName('LayerName').Value:=ALyr.Name;
    FieldByName('LayerIndex').Value:=1;
    FieldByName('FCId').Value:=FCId;
    FieldByName('LayerType').Value:=1;
    FieldByName('Visible').Value:=aLyr.Visible;
    FieldByName('DataFrom').Value:=DataFrom;
    FieldByName('TableName').Value:=TableName;
    FieldByName('SysCfg').Value:='InitBounds='+GetBoundsString(GMapTools.MapX.Bounds)+';KeyField=;Caption=;ShowCaption=False';
    FieldByName('UserCfg').Value:='';
    FieldByName('CDataTime').Value:=Now;
    FieldByName('CUser').Value:='';
    FieldByName('LMDateTime').Value:=Now;
    FieldByName('LMUser').Value:='';
    Post;
  end;  
  {增加圖層類的LayerCount}
  with dm_MainLinkObjects.PublicQuery do
  begin
    Close;
    SQL.Clear;
    SQL.Add('update t_FeatureClasses set LayerCount=LayerCount+1');
    SQL.Add('where FCId=:FCId');
    SetParamValue(dm_MainLinkObjects.PublicQuery, 'FCId', FCId);
    ExecSQL;
  end;
  {刪除原有節(jié)點(diǎn),增加新節(jié)點(diǎn)}
  ANode:=FindFeatureClassNode(FCId);
  AddLayerNode(SysTree, ANode, naAddChildFirst,
               -1, aLyr.Name, aLayerInfo.FileName, False, 2, -1, 3);
  ANode:=FindLayerNode(ALyr);
  DeleteNode(ANode);
end;

procedure TqcGISProject.AddLineClick(Sender: TObject);
begin
  EditSystemLayer(LAYER_SYS_LINE);
  SetCurrentMapTool('TAddSDLineMapTool', OnTurnTool);
end;

procedure TqcGISProject.AddStationClick(Sender: TObject);
begin
  EditSystemLayer(LAYER_SYS_SUBSTATION);
  SetCurrentMapTool('TAddSubStationMapTool', OnTurnTool);
end;

constructor TqcGISProject.Create(AOwner:TComponent; MapX:TMapXObject);
begin
  inherited Create(AOwner, MapX);

  RegOwnerName:='大慶采油七廠';
  ProjectName:=RegOwnerName+'電力監(jiān)控系統(tǒng) -- 地理信息子系統(tǒng)';

  FDBManager:=TSQLServerDBManager.Create;
  GDBPoster:=TDBPosterWithSQL.Create;
  GDBPoster.DBManager:=FDBManager;
  FDBFactory:=TAnyDBFactory.Create;
  FDBFactory.DBManager:=FDBManager;

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一本大道久久精品懂色aⅴ| 亚洲第一av色| 激情综合网最新| 欧美精品久久一区二区三区| 天天综合网 天天综合色| 91免费观看在线| 久久婷婷综合激情| 国产精品一线二线三线| 久久亚洲影视婷婷| 国产**成人网毛片九色| 国产欧美日韩卡一| 国产福利91精品一区| 中文字幕一区在线| 不卡电影一区二区三区| 久久综合久久99| www.日韩av| 亚洲蜜桃精久久久久久久| 欧美精品国产精品| 美女视频一区在线观看| 成人免费视频国产在线观看| 处破女av一区二区| 成人的网站免费观看| 国产·精品毛片| 成人av免费在线观看| 97se亚洲国产综合自在线观| 色成人在线视频| 久久你懂得1024| 欧美一区二区三区四区高清| 中文成人综合网| 免费观看日韩电影| 久久精品亚洲国产奇米99| 国产精品综合二区| 久久久99精品免费观看| 色域天天综合网| 亚洲伊人色欲综合网| 久久综合九色综合97_久久久| 国产黄人亚洲片| 亚洲乱码国产乱码精品精可以看 | 精品视频在线视频| **性色生活片久久毛片| 日韩一本二本av| 国产成人av福利| 午夜精品成人在线| 精品福利视频一区二区三区| 国产在线精品一区二区夜色| 国产精品灌醉下药二区| 欧美无乱码久久久免费午夜一区| 青青草伊人久久| 国产精品国产自产拍在线| 欧美亚洲国产bt| 国产一区二区久久| 一区二区三区日韩欧美| 国产精品毛片大码女人| 欧美二区在线观看| 精品影视av免费| 五月激情丁香一区二区三区| 亚洲国产成人午夜在线一区| 欧美成人性战久久| 色系网站成人免费| 国产精品一区免费在线观看| 日本美女视频一区二区| 亚洲男人天堂av| 国产精品高清亚洲| 久久婷婷一区二区三区| 欧美视频中文字幕| 在线观看一区二区视频| 国产盗摄女厕一区二区三区 | 欧美人动与zoxxxx乱| 日韩一级完整毛片| 国产99久久久久久免费看农村| 日韩av在线免费观看不卡| 国产精品传媒入口麻豆| 久久日韩粉嫩一区二区三区| 69堂成人精品免费视频| 99精品久久久久久| 91毛片在线观看| 国产成人亚洲综合色影视| 国产精品不卡一区二区三区| 国产精品成人一区二区三区夜夜夜| 欧美大片一区二区| 精品久久一区二区| 这里只有精品电影| 不卡av电影在线播放| 成人av午夜影院| 国产98色在线|日韩| 99久久精品99国产精品| 国产成人一区在线| 爽好久久久欧美精品| 全国精品久久少妇| 日韩影院精彩在线| 久草精品在线观看| 乱中年女人伦av一区二区| 亚洲综合色视频| 日本中文在线一区| 日韩一区精品视频| 九九视频精品免费| 免费在线观看一区| 国产在线精品一区二区不卡了| 日韩制服丝袜av| 日本va欧美va瓶| 国产精品一区二区在线观看不卡| 久久成人羞羞网站| 成人国产一区二区三区精品| 国产91高潮流白浆在线麻豆| 国产激情一区二区三区| 91福利视频在线| 欧美日韩国产高清一区二区三区 | 69久久99精品久久久久婷婷| 欧美日韩中文字幕一区| 欧美高清激情brazzers| 欧美变态tickle挠乳网站| 国产欧美一区二区精品秋霞影院 | 日韩欧美在线影院| 久久久亚洲精品一区二区三区| 精品1区2区在线观看| 亚洲精品国产a久久久久久 | 久久久久久99久久久精品网站| 国产精品人成在线观看免费 | 99久久伊人久久99| 国产欧美日韩三级| 亚洲一区二区视频在线观看| 婷婷成人综合网| 成人国产免费视频| 一本一道波多野结衣一区二区| 91精品在线一区二区| www国产精品av| 18欧美乱大交hd1984| 蜜桃精品视频在线| 高清国产一区二区| 欧美少妇xxx| 久久久国产精品午夜一区ai换脸| 国产精品护士白丝一区av| 蜜臀av亚洲一区中文字幕| 国产69精品久久777的优势| 欧美日韩一级黄| 日韩欧美第一区| 亚洲人成在线播放网站岛国| 日产国产高清一区二区三区| 亚洲国产精品视频| 国产一区欧美一区| 欧美天堂亚洲电影院在线播放| 中文字幕乱码日本亚洲一区二区 | 精品欧美乱码久久久久久 | 91亚洲永久精品| 日韩一区二区三区四区五区六区 | 久久欧美一区二区| 一区二区三区国产精品| 国产麻豆精品在线| 欧美放荡的少妇| 国产精品国产三级国产三级人妇| 韩国欧美国产一区| 欧美日韩高清一区二区| 亚洲影院在线观看| 成人性生交大片| 日本福利一区二区| 国产精品国模大尺度视频| 蜜臀av性久久久久av蜜臀妖精 | 国产伦理精品不卡| 欧美日韩免费不卡视频一区二区三区| 国产精品久线观看视频| 久久er99精品| 欧美色区777第一页| 亚洲一区二三区| 99久久免费国产| 亚洲品质自拍视频| 国产91精品久久久久久久网曝门| 在线亚洲免费视频| 一区二区三区成人| 99视频精品全部免费在线| 亚洲私人影院在线观看| 国产毛片精品国产一区二区三区| 精品国产区一区| 精品无人区卡一卡二卡三乱码免费卡| 国产精品成人免费在线| 成人综合婷婷国产精品久久蜜臀| 日韩欧美视频一区| 久久精品国产精品亚洲精品| 欧美日韩精品一区二区在线播放| 久久精品一区二区三区四区| 国产成人精品三级| 亚洲精品一区二区在线观看| 国产精品一区二区91| 久久综合久久综合九色| 丁香激情综合国产| 欧美精彩视频一区二区三区| 无码av中文一区二区三区桃花岛| 欧美绝品在线观看成人午夜影视| 一区二区三区欧美| 日韩一级片网站| 美女精品自拍一二三四| 91麻豆国产福利精品| 亚洲一区二区三区小说| 在线欧美一区二区| 美女一区二区三区| 日韩精品专区在线影院重磅| 成人综合婷婷国产精品久久免费| 国产精品夫妻自拍| 91农村精品一区二区在线| 亚洲网友自拍偷拍| 欧美在线你懂的|