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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? datacore.cpp

?? an Atl_com use to read or write an mdb file which use ado.Japanese software develop
?? CPP
?? 第 1 頁 / 共 5 頁
字號:
// DataCore.cpp : Implementation of CDataCore
//This Module Include the function to process the data of MMC
#include "stdafx.h"
#include "MMCore.h"
#include "DataCore.h"

/////////////////////////////////////////////////////////////////////////////
// CDataCore

///////////////////////////////////////////////////////////////////////////////
////Inition DataBase Connection Input a MDB file path by Parm ConnectionStr////
///////////////////////////////////////////////////////////////////////////////
STDMETHODIMP CDataCore::InitionConnection(BSTR ConnectionStr, VARIANT_BOOL *Succeed)
{
	AFX_MANAGE_STATE(AfxGetStaticModuleState())
	CoInitialize(NULL);
	ConPtr.CreateInstance(__uuidof(Connection));
	*Succeed=VARIANT_FALSE;
	_bstr_t Constr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+(_bstr_t)ConnectionStr;
	try
	{
		if(ConPtr->State)
		{
			ConPtr->Close();
		}
		ConPtr->Open(Constr,"","",adModeUnknown);
		*Succeed=VARIANT_TRUE;
	}
	catch(_com_error e)
	{
		*Succeed=VARIANT_FALSE;
	}
	CoUninitialize();
	return S_OK;
}

////////////////////////////////////////////////////////////////////
///Excute Sqlstr Not Include select/////////////////////////////////
////////////////////////////////////////////////////////////////////
STDMETHODIMP CDataCore::ExcuteSql(BSTR Sqlstr, VARIANT_BOOL *Succeed)
{
	AFX_MANAGE_STATE(AfxGetStaticModuleState())
	CoInitialize(NULL);
	_variant_t vNull(DISP_E_PARAMNOTFOUND,VT_ERROR);
	_CommandPtr cmd(__uuidof(Command));
	*Succeed=VARIANT_FALSE;
	//AfxMessageBox((_bstr_t)"succeed");
	try
	{
		cmd->ActiveConnection=ConPtr;
		cmd->CommandText=Sqlstr;
		cmd->Execute(&vNull,&vNull,adCmdText);
		*Succeed=VARIANT_TRUE;
		//AfxMessageBox((_bstr_t)"succeed");
	}
	catch(_com_error e)
	{
		*Succeed=VARIANT_FALSE;
		//CString errormessage;
		//errormessage.Format("!\r\n error message:%s",e.ErrorMessage());
		//AfxMessageBox(errormessage);///show error message
		//AfxMessageBox(e.ErrorMessage);
	}
	CoUninitialize();
	return S_OK;
}

/////////////////////////////////////////////////////////////////
/////////Excute Select Command Return Recordset//////////////////
/////////////////////////////////////////////////////////////////
STDMETHODIMP CDataCore::SearchRtnRs(BSTR sqlstr, _Recordset **ptr)
{
	AFX_MANAGE_STATE(AfxGetStaticModuleState())
	CoInitialize(NULL);
	_CommandPtr cmd(__uuidof(Command));
	try
	{
		cmd->ActiveConnection=ConPtr;
		cmd->CommandText=sqlstr;
		_RecordsetPtr rs(__uuidof(Recordset));
		rs->PutRefSource(cmd);
		_variant_t vNull(DISP_E_PARAMNOTFOUND,VT_ERROR);
		rs->Open(vNull,vNull,adOpenStatic,adLockOptimistic,adCmdText);
		rs->QueryInterface(__uuidof(_Recordset),(void **)ptr);
	}
	catch(_com_error e)
	{
			
	}
	CoUninitialize();
	return S_OK;
}

/////////////Under this is the detail Code for Process Data


/////////////////////////////////////////
///Insert Data into table 判定Code///////
/////////////////////////////////////////
STDMETHODIMP CDataCore::Insert_JudgeMentCode(BSTR judgeCode, BSTR JudgeMentStatus, VARIANT_BOOL *succeed)
{
	AFX_MANAGE_STATE(AfxGetStaticModuleState())
	CoInitialize(NULL);
	_CommandPtr cmd(__uuidof(Command));
	_variant_t vNull(DISP_E_PARAMNOTFOUND,VT_ERROR);
	_bstr_t sqlstr;
	sqlstr="insert into 敾掕Code(敾掕Code,敾掕忬嫷) values("+(_bstr_t)judgeCode+",'"+(_bstr_t)JudgeMentStatus+"')";
	*succeed=VARIANT_FALSE;
	try
	{
		cmd->ActiveConnection=ConPtr;
		cmd->CommandText=sqlstr;
		cmd->Execute(&vNull,&vNull,adCmdText);
		*succeed=VARIANT_TRUE;
	}
	catch(_com_error e)
	{
		*succeed=VARIANT_FALSE;
	}
	return S_OK;
}

/////////////////////////////////////////
///Update Data into table 判定Code///////
/////////////////////////////////////////
STDMETHODIMP CDataCore::Update_JudgeMentCode(BSTR judgeCode, BSTR judegStatus, VARIANT_BOOL *succeed)
{
	AFX_MANAGE_STATE(AfxGetStaticModuleState())
	CoInitialize(NULL);
	_CommandPtr cmd(__uuidof(Command));
	_variant_t vNull(DISP_E_PARAMNOTFOUND,VT_ERROR);
	_bstr_t sqlstr;
	sqlstr="update 敾掕Code set 敾掕忬嫷='"+(_bstr_t)judegStatus+"' where 敾掕Code="+(_bstr_t)judgeCode;
	*succeed=VARIANT_FALSE;
	//AfxMessageBox(sqlstr);
	try
	{
		cmd->ActiveConnection=ConPtr;
		cmd->CommandText=sqlstr;
		cmd->Execute(&vNull,&vNull,adCmdText);
		*succeed=VARIANT_TRUE;
	}
	catch(_com_error e)
	{
		*succeed=VARIANT_FALSE;
	}
	return S_OK;
}

/////////////////////////////////////////
///Delete Data into table 判定Code///////
/////////////////////////////////////////
STDMETHODIMP CDataCore::Delete_JudgeMentCode(BSTR judgeCode, VARIANT_BOOL *succeed)
{
	AFX_MANAGE_STATE(AfxGetStaticModuleState())
	CoInitialize(NULL);
	_CommandPtr cmd(__uuidof(Command));
	_variant_t vNull(DISP_E_PARAMNOTFOUND,VT_ERROR);
	_bstr_t sqlstr;
	sqlstr="delete from 敾掕Code "+(_bstr_t)" where 敾掕Code="+(_bstr_t)judgeCode;
	*succeed=VARIANT_FALSE;
	//AfxMessageBox(sqlstr);
	try
	{
		cmd->ActiveConnection=ConPtr;
		cmd->CommandText=sqlstr;
		cmd->Execute(&vNull,&vNull,adCmdText);
		*succeed=VARIANT_TRUE;
	}
	catch(_com_error e)
	{
		*succeed=VARIANT_FALSE;
	}
	return S_OK;
}

/////////////////////////////////////////
///insert Data into table 輸出///////////
/////////////////////////////////////////
STDMETHODIMP CDataCore::Insert_Output(BSTR InvoiceID, BSTR InvoiceName, BSTR Count, BSTR unit, BSTR Unitprice, BSTR TotalPrice, BSTR APS, BSTR AllowCode, BSTR AllowDate, BSTR GoodsID, int *succeed)
{
	AFX_MANAGE_STATE(AfxGetStaticModuleState())
	CoInitialize(NULL);
	_CommandPtr cmd(__uuidof(Command));
	_variant_t vNull(DISP_E_PARAMNOTFOUND,VT_ERROR);
	_bstr_t sqlstr;
	//sqlstr="insert into 輸出(インボイスID,インボイス表記名,數量,単位,単価,価格,APS,許可Code) values(";
	sqlstr="insert into 桝弌(僀儞儃僀僗ID,僀儞儃僀僗昞婰柤,悢検,扨埵,扨壙,壙奿,APS,嫋壜Code) values(";
	sqlstr=sqlstr+(_bstr_t)InvoiceID+(_bstr_t)",'"+(_bstr_t)InvoiceName+(_bstr_t)"',";
	sqlstr=sqlstr+(_bstr_t)Count+(_bstr_t)",'"+(_bstr_t)unit+(_bstr_t)"',";
	sqlstr=sqlstr+(_bstr_t)Unitprice+(_bstr_t)","+(_bstr_t)TotalPrice+(_bstr_t)","+(_bstr_t)APS+(_bstr_t)",";
	sqlstr=sqlstr+(_bstr_t)AllowCode+(_bstr_t)")";
	*succeed=0;
	//AfxMessageBox(sqlstr);
	try
	{
		ConPtr->BeginTrans();
		cmd->ActiveConnection=ConPtr;
		cmd->CommandText=sqlstr;
		cmd->Execute(&vNull,&vNull,adCmdText);
		_bstr_t sqltxt;
		sqltxt="select @@identity  as ID from  桝弌";
		_CommandPtr command(__uuidof(Command));
		command->ActiveConnection=ConPtr;
		command->CommandText=sqltxt;
		_RecordsetPtr rs(__uuidof(Recordset));
		rs->PutRefSource(command);
		_variant_t vNull(DISP_E_PARAMNOTFOUND,VT_ERROR);
		rs->Open(vNull,vNull,adOpenDynamic,adLockOptimistic,adCmdText);
		//AfxMessageBox("ss");
		rs->MoveFirst();
		_variant_t MaxId;
		MaxId=rs->GetCollect("ID");
		ConPtr->CommitTrans();
	//	ConPtr->CommitTrans();
		*succeed=MaxId.intVal;
	}
	catch(_com_error e)
	{
		ConPtr->RollbackTrans();
		*succeed=0;
	}
	return S_OK;
}

/////////////////////////////////////////
///////////Update Data table 輸出/////////
/////////////////////////////////////////
STDMETHODIMP CDataCore::Update_Output(BSTR InvoiceName, BSTR Count, BSTR unit, BSTR Unitprice, BSTR TotalPrice, BSTR APS, BSTR AllowCode, BSTR AllowDate,BSTR ID, VARIANT_BOOL *succeed)
{
	AFX_MANAGE_STATE(AfxGetStaticModuleState())
	CoInitialize(NULL);
	_CommandPtr cmd(__uuidof(Command));
	_variant_t vNull(DISP_E_PARAMNOTFOUND,VT_ERROR);
	_bstr_t sqlstr;
	//sqlstr="update 輸出 set インボイス表記名='"+(_bstr_t)InvoiceName;
	if((_bstr_t)AllowDate!=(_bstr_t)"null")
	{
		sqlstr="update 桝弌 set 僀儞儃僀僗昞婰柤='"+(_bstr_t)InvoiceName;
		sqlstr=sqlstr+(_bstr_t)"',悢検="+(_bstr_t)Count+(_bstr_t)",扨埵='"+(_bstr_t)unit+(_bstr_t)"',扨壙=";
		sqlstr=sqlstr+(_bstr_t)Unitprice+(_bstr_t)",壙奿="+(_bstr_t)TotalPrice+(_bstr_t)",APS="+(_bstr_t)APS;
		sqlstr=sqlstr+(_bstr_t)",嫋壜Code="+(_bstr_t)AllowCode+(_bstr_t)",嫋壜擔=#"+(_bstr_t)AllowDate+(_bstr_t)"#"+(_bstr_t)" where 桝弌ID="+(_bstr_t)ID;
    //sqlstr=sqlstr+(_bstr_t)",嫋壜Code="+(_bstr_t)AllowCode+(_bstr_t)" where 桝弌ID="+(_bstr_t)ID;
	}
	else
	{
		sqlstr="update 桝弌 set 僀儞儃僀僗昞婰柤='"+(_bstr_t)InvoiceName;
		sqlstr=sqlstr+(_bstr_t)"',悢検="+(_bstr_t)Count+(_bstr_t)",扨埵='"+(_bstr_t)unit+(_bstr_t)"',扨壙=";
		sqlstr=sqlstr+(_bstr_t)Unitprice+(_bstr_t)",壙奿="+(_bstr_t)TotalPrice+(_bstr_t)",APS="+(_bstr_t)APS;
		sqlstr=sqlstr+(_bstr_t)",嫋壜Code="+(_bstr_t)AllowCode+(_bstr_t)",嫋壜擔="+(_bstr_t)"null"+(_bstr_t)" where 桝弌ID="+(_bstr_t)ID;
	}
	*succeed=VARIANT_FALSE;
	//AfxMessageBox(sqlstr);
	try
	{
		cmd->ActiveConnection=ConPtr;
		cmd->CommandText=sqlstr;
		cmd->Execute(&vNull,&vNull,adCmdText);
		*succeed=VARIANT_TRUE;
	}
	catch(_com_error e)
	{
		*succeed=VARIANT_FALSE;
	}
	return S_OK;
}

/////////////////////////////////////////
///////////Delete Datatable 輸出/////////
/////////////////////////////////////////
STDMETHODIMP CDataCore::Delete_Output(BSTR ID, VARIANT_BOOL *succeed)
{
	AFX_MANAGE_STATE(AfxGetStaticModuleState())
	CoInitialize(NULL);
	_CommandPtr cmd(__uuidof(Command));
	_variant_t vNull(DISP_E_PARAMNOTFOUND,VT_ERROR);
	_bstr_t sqlstr;
	sqlstr="delete from 桝弌 where 桝弌ID="+(_bstr_t)ID;
	*succeed=VARIANT_FALSE;
	try
	{
		cmd->ActiveConnection=ConPtr;
		cmd->CommandText=sqlstr;
		cmd->Execute(&vNull,&vNull,adCmdText);
		*succeed=VARIANT_TRUE;
	}
	catch(_com_error e)
	{
		*succeed=VARIANT_FALSE;
	}
	return S_OK;
}

/////////////////////////////////////////
////Insert Data Into 輸出擔當者//////////
/////////////////////////////////////////
STDMETHODIMP CDataCore::Insert_OutputChargeMan(BSTR Dept, BSTR name, int *succeed)
{
	AFX_MANAGE_STATE(AfxGetStaticModuleState())
	CoInitialize(NULL);
	_CommandPtr cmd(__uuidof(Command));
	_variant_t vNull(DISP_E_PARAMNOTFOUND,VT_ERROR);
	_bstr_t sqlstr;
	sqlstr="insert into 桝弌扴摉幰(強懏,扴摉幰柤) values('"+(_bstr_t)Dept+(_bstr_t)"','"+(_bstr_t)name+(_bstr_t)"')";
	*succeed=0;
	try
	{
		ConPtr->BeginTrans();
		cmd->ActiveConnection=ConPtr;
		cmd->CommandText=sqlstr;
		cmd->Execute(&vNull,&vNull,adCmdText);
		_bstr_t sqltxt;
		sqltxt="select @@identity  as ID from  桝弌扴摉幰";
		_CommandPtr command(__uuidof(Command));
		command->ActiveConnection=ConPtr;
		command->CommandText=sqltxt;
		_RecordsetPtr rs(__uuidof(Recordset));
		rs->PutRefSource(command);
		_variant_t vNull(DISP_E_PARAMNOTFOUND,VT_ERROR);
		rs->Open(vNull,vNull,adOpenDynamic,adLockOptimistic,adCmdText);
		//AfxMessageBox("ss");
		rs->MoveFirst();
		_variant_t MaxId;
		MaxId=rs->GetCollect("ID");
		ConPtr->CommitTrans();
		*succeed=MaxId.intVal;
	}
	catch(_com_error e)
	{
		ConPtr->RollbackTrans();
		*succeed=0;
	}
	return S_OK;

}

/////////////////////////////
///////update 輸出擔當者/////
/////////////////////////////
STDMETHODIMP CDataCore::Update_OutputChargeMan(BSTR Dept, BSTR name, BSTR ID, VARIANT_BOOL *succeed)
{
	AFX_MANAGE_STATE(AfxGetStaticModuleState())
	CoInitialize(NULL);
	_CommandPtr cmd(__uuidof(Command));
	_variant_t vNull(DISP_E_PARAMNOTFOUND,VT_ERROR);
	_bstr_t sqlstr;
	sqlstr="update 桝弌扴摉幰 set 強懏='"+(_bstr_t)Dept+(_bstr_t)"',扴摉幰柤='"+(_bstr_t)name+(_bstr_t)"' where 桝弌扴摉幰ID="+(_bstr_t)ID;
	*succeed=VARIANT_FALSE;
	try
	{
		cmd->ActiveConnection=ConPtr;
		cmd->CommandText=sqlstr;
		cmd->Execute(&vNull,&vNull,adCmdText);
		*succeed=VARIANT_TRUE;
	}
	catch(_com_error e)
	{
		*succeed=VARIANT_FALSE;
	}
	return S_OK;
}

/////////////////////////////////////
/////////////delete 輸出擔當者///////
/////////////////////////////////////
STDMETHODIMP CDataCore::Delete_OutPutChargeMan(BSTR ID, VARIANT_BOOL *succeed)
{
	AFX_MANAGE_STATE(AfxGetStaticModuleState())
	CoInitialize(NULL);
	_CommandPtr cmd(__uuidof(Command));
	_variant_t vNull(DISP_E_PARAMNOTFOUND,VT_ERROR);
	_bstr_t sqlstr;
	sqlstr="delete from 桝弌扴摉幰 where 桝弌扴摉幰ID="+(_bstr_t)ID;
	*succeed=VARIANT_FALSE;
	try
	{
		cmd->ActiveConnection=ConPtr;
		cmd->CommandText=sqlstr;
		cmd->Execute(&vNull,&vNull,adCmdText);
		*succeed=VARIANT_TRUE;
	}
	catch(_com_error e)
	{
		*succeed=VARIANT_FALSE;
	}
	return S_OK;
}

///////////////////////////////////////////
/////////Insert data into data table 文書//
///////////////////////////////////////////
STDMETHODIMP CDataCore::inset_Document(VARIANT_BOOL vaild, BSTR information, BSTR author, BSTR date, BSTR RelationShip, int *succeed)
{
	AFX_MANAGE_STATE(AfxGetStaticModuleState())
	CoInitialize(NULL);
	_CommandPtr cmd(__uuidof(Command));
	_variant_t vNull(DISP_E_PARAMNOTFOUND,VT_ERROR);
	_bstr_t Vaild;
	if(vaild==VARIANT_TRUE)
	{
		Vaild=(_bstr_t)"1";
	}
	else
	{
		Vaild=(_bstr_t)"0";
	}
	_bstr_t sqlstr;
	if((_bstr_t)date!=(_bstr_t)"null")
	{
		sqlstr="insert into 暥彂(暥彂桳岠,暥彂忣曬,敪峴幰,敪峴擔,娭學崁斣) values(";
		sqlstr=sqlstr+(_bstr_t)Vaild+(_bstr_t)",'"+(_bstr_t)information+(_bstr_t)"','"+(_bstr_t)author;
		sqlstr=sqlstr+(_bstr_t)"',#"+(_bstr_t)date+(_bstr_t)"#,'"+(_bstr_t)RelationShip+(_bstr_t)"')";
	}
	else
	{
		sqlstr="insert into 暥彂(暥彂桳岠,暥彂忣曬,敪峴幰,娭學崁斣) values(";
		sqlstr=sqlstr+(_bstr_t)Vaild+(_bstr_t)",'"+(_bstr_t)information+(_bstr_t)"','"+(_bstr_t)author;
		sqlstr=sqlstr+"','"+(_bstr_t)RelationShip+(_bstr_t)"')";

	}
	//*succeed=VARIANT_FALSE;
	//AfxMessageBox(sqlstr);
	try
	{
		ConPtr->BeginTrans();

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
丝袜美腿亚洲综合| av激情成人网| 91原创在线视频| 日韩视频在线观看一区二区| 成人欧美一区二区三区视频网页| 7777精品伊人久久久大香线蕉经典版下载 | 国产成人精品在线看| 欧美这里有精品| 国产精品女主播在线观看| 美女精品自拍一二三四| 91精品1区2区| 欧美区一区二区三区| 国产精品久久久久久久久免费樱桃| 久久久高清一区二区三区| 久久精品人人做人人综合 | 午夜久久久影院| 色婷婷久久久久swag精品| 国产精品网站导航| 国产真实精品久久二三区| 日韩欧美国产一二三区| 日韩在线观看一区二区| 精品无人区卡一卡二卡三乱码免费卡| 色综合天天综合网国产成人综合天| 欧美亚一区二区| 亚洲黄色免费网站| 91久久香蕉国产日韩欧美9色| 欧美色精品在线视频| 一区二区三区四区在线| 一本色道久久综合亚洲91| 中文字幕一区免费在线观看| 成人激情视频网站| 国产精品久久久久婷婷二区次| 亚洲精品欧美专区| 91麻豆免费视频| 中文字幕一区二区在线播放| 成人av电影在线观看| 国产精品久久久久久久浪潮网站 | 男女男精品视频| 欧美高清激情brazzers| 亚洲国产成人高清精品| 欧美日韩国产123区| 欧美精品一区二区三区在线| 日韩精品一区第一页| 欧美一个色资源| 激情五月播播久久久精品| 欧美国产禁国产网站cc| 日本一道高清亚洲日美韩| 7777精品伊人久久久大香线蕉| 国产精品久久久久久户外露出| 亚洲成年人影院| 日韩久久免费av| 国产福利91精品一区| 亚洲欧美日韩小说| 欧美电影一区二区| 国产精品一区二区无线| 日韩一区欧美小说| 欧美日韩国产一级片| 美女视频一区二区| 国产精品第一页第二页第三页| 极品瑜伽女神91| 在线成人小视频| 国产精品一区二区三区99| 亚洲人一二三区| 在线不卡一区二区| 成人午夜激情片| 婷婷开心久久网| 久久免费精品国产久精品久久久久| 亚洲国产日韩一区二区| 精品少妇一区二区三区日产乱码| 日本成人在线不卡视频| 中文一区二区完整视频在线观看| 国产精品69毛片高清亚洲| 精品国一区二区三区| 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 亚洲精品中文字幕乱码三区| 国产 欧美在线| 午夜国产精品影院在线观看| 色婷婷久久99综合精品jk白丝| 亚洲婷婷在线视频| 一本大道av伊人久久综合| 蜜臀av性久久久久蜜臀aⅴ四虎 | 在线观看亚洲精品视频| 亚洲欧美综合在线精品| 日韩美女天天操| 欧美在线短视频| 成人国产精品免费观看动漫| 国产精品三级视频| 99re成人精品视频| 亚洲欧美色一区| 国产日韩欧美高清| 日韩欧美区一区二| 欧美日韩国产精选| 欧美在线观看一二区| 成人精品小蝌蚪| 一区二区三区在线免费视频| 欧美在线三级电影| 99re这里都是精品| 香蕉久久一区二区不卡无毒影院 | 久久久久97国产精华液好用吗| 国产尤物一区二区| 老鸭窝一区二区久久精品| 亚洲一二三区视频在线观看| 最新热久久免费视频| 欧美中文字幕亚洲一区二区va在线 | 图片区小说区国产精品视频| 欧美一区二区三区免费大片| 欧洲色大大久久| 91福利精品视频| 在线精品视频小说1| 91首页免费视频| 不卡的av中国片| 99国产精品久久久| 91成人免费电影| 在线亚洲人成电影网站色www| 青青国产91久久久久久| 亚洲va欧美va人人爽| 亚洲成av人在线观看| 五月天欧美精品| 午夜精品在线视频一区| 日韩精品一级二级| 美女一区二区三区| 国产一区二区三区观看| 国产精品一区二区男女羞羞无遮挡| 亚洲国产人成综合网站| 婷婷久久综合九色综合伊人色| 国产免费成人在线视频| 中文字幕欧美一区| 亚洲另类一区二区| 丝袜美腿亚洲色图| 亚洲欧美一区二区在线观看| 日韩欧美国产一二三区| 久久久精品天堂| 中文字幕一区二区三区av| 一区二区免费在线| 日韩av网站免费在线| 亚洲免费观看高清完整版在线观看熊 | 99精品在线观看视频| 韩国精品一区二区| 成人av网址在线| 在线观看视频91| 成人免费视频一区| 蜜臀久久99精品久久久久久9| 国产精品国产三级国产aⅴ原创| 欧美一激情一区二区三区| 国产午夜亚洲精品午夜鲁丝片| 在线成人av影院| 欧美激情一二三区| 欧美精品一区二区三区很污很色的 | 99在线精品免费| 欧美精品一二三| 国产性天天综合网| 亚洲va欧美va天堂v国产综合| 一区二区三区高清不卡| 久久国产成人午夜av影院| 成人免费毛片片v| 国产一区二区三区在线观看精品| 麻豆久久久久久| 91玉足脚交白嫩脚丫在线播放| www.欧美精品一二区| 欧美精品vⅰdeose4hd| 国产精品久久久久影视| 国产午夜亚洲精品不卡| 午夜精品久久一牛影视| 国产宾馆实践打屁股91| 国产麻豆精品视频| 777xxx欧美| 亚洲一线二线三线久久久| 国产一区亚洲一区| 高清在线不卡av| 日韩欧美中文字幕制服| 亚洲一区视频在线观看视频| 成人av高清在线| 久久亚洲综合色| 免费看日韩a级影片| 色吊一区二区三区| 亚洲同性同志一二三专区| 国模套图日韩精品一区二区| 欧美美女视频在线观看| 亚洲欧美激情一区二区| 亚洲午夜视频在线| 99久久精品国产毛片| 欧美在线观看禁18| 一区二区三区四区乱视频| 国产不卡在线一区| 国产欧美日韩麻豆91| 亚洲精品乱码久久久久久日本蜜臀| 亚洲一区在线电影| 91福利精品视频| 一区二区三区资源| 色欧美片视频在线观看在线视频| 欧美精品v国产精品v日韩精品| 日韩三级av在线播放| 免费成人av在线播放| 8x8x8国产精品| 日韩精品电影一区亚洲| 777午夜精品免费视频| 中文字幕欧美三区| 五月婷婷激情综合| 成人毛片在线观看| 91麻豆精品国产91久久久久|