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

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

?? salarydlg.cpp

?? 將代碼拷貝到本地硬盤
?? CPP
?? 第 1 頁 / 共 2 頁
字號(hào):
// SalaryDlg.cpp : implementation file
//

#include "stdafx.h"
#include "Salary.h"
#include "SalaryDlg.h"
#include "LoginDlg.h"
#include "FormulaDlg.h"
#include "PreviewDlg.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

extern _ConnectionPtr pTheConn;
/////////////////////////////////////////////////////////////////////////////
// CAboutDlg dialog used for App About

class CAboutDlg : public CDialog
{
public:
	CAboutDlg();

// Dialog Data
	//{{AFX_DATA(CAboutDlg)
	enum { IDD = IDD_ABOUTBOX };
	//}}AFX_DATA

	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CAboutDlg)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
protected:
	//{{AFX_MSG(CAboutDlg)
	afx_msg void OnAboutbox();
	virtual BOOL OnInitDialog();
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
{
	//{{AFX_DATA_INIT(CAboutDlg)
	//}}AFX_DATA_INIT
}
BOOL CAboutDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	return TRUE;
}
void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CAboutDlg)
	//}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
	//{{AFX_MSG_MAP(CAboutDlg)
	ON_COMMAND(IDS_ABOUTBOX, OnAboutbox)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CSalaryDlg dialog

CSalaryDlg::CSalaryDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CSalaryDlg::IDD, pParent)
{
	CTime t=CTime::GetCurrentTime();
	//{{AFX_DATA_INIT(CSalaryDlg)
	m_strDepartID = _T("");
	m_strDepartName = _T("");
	m_strPersonID = _T("");
	m_strPersonName = _T("");
	m_fBasicSalary = 0.0f;
	m_strYearMonth = t.Format("%Y-%m");
	m_bFixed = FALSE;
	m_strItemName = _T("");
	m_fMoney = 0.0f;
	m_strDesription = _T("");
	//}}AFX_DATA_INIT
	// Note that LoadIcon does not require a subsequent DestroyIcon in Win32
	m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}

void CSalaryDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CSalaryDlg)
	DDX_Text(pDX, IDC_EDT_DEPARTID, m_strDepartID);
	DDV_MaxChars(pDX, m_strDepartID, 3);
	DDX_Control(pDX, IDC_DATAGRID1, m_cDG1);
	DDX_Text(pDX, IDC_EDT_DEPARTNAME, m_strDepartName);
	DDX_Text(pDX, IDC_EDT_PERSONID, m_strPersonID);
	DDX_Text(pDX, IDC_EDT_PERSONNAME, m_strPersonName);
	DDX_Text(pDX, IDC_EDT_BASICSALARY, m_fBasicSalary);
	DDX_Text(pDX, IDC_EDT_YEARMONTH, m_strYearMonth);
	DDX_Control(pDX, IDC_DATAGRID2, m_cDG2);
	DDX_Control(pDX, IDC_DATAGRID3, m_cDG3);
	DDX_Control(pDX, IDC_DATAGRID4, m_cDG4);
	DDX_Control(pDX, IDC_DATAGRID5, m_cDG5);
	DDX_Check(pDX, IDC_CHK_FIXED, m_bFixed);
	DDX_CBString(pDX, IDC_CMB_ITEMNAME, m_strItemName);
	DDX_Text(pDX, IDC_EDT_MONEY, m_fMoney);
	DDX_Text(pDX, IDC_EDT_DESCRIPTION, m_strDesription);
	//}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CSalaryDlg, CDialog)
	//{{AFX_MSG_MAP(CSalaryDlg)
	ON_WM_SYSCOMMAND()
	ON_WM_PAINT()
	ON_WM_QUERYDRAGICON()
	ON_COMMAND(IDM_SYSTEM_CONNECT, OnSystemConnect)
	ON_COMMAND(IDM_SYSTEM_DISCONNECT, OnSystemDisconnect)
	ON_EN_CHANGE(IDC_EDT_DEPARTID, OnChangeEdtDepartid)
	ON_WM_DESTROY()
	ON_EN_CHANGE(IDC_EDT_PERSONID, OnChangeEdtPersonid)
	ON_BN_CLICKED(IDC_BTN_CHANGESALARY, OnBtnChangesalary)
	ON_BN_CLICKED(IDC_BTN_ADD_PERSON, OnBtnAddPerson)
	ON_BN_CLICKED(IDC_BTN_ADD_LIST, OnBtnAddList)
	ON_COMMAND(IDM_CONFIG_FORMULA, OnConfigFormula)
	ON_COMMAND(IDM_SYSTEM_EXIT, OnSystemExit)
	ON_COMMAND(IDM_CALCULATE_STAT, OnCalculateStat)
    ON_COMMAND(IDM_ABOUTBOX, OnAboutDlg)

	ON_WM_MENUSELECT()
	ON_COMMAND(IDM_MENU_DELETERECORD, OnDeleteRecord)
	ON_COMMAND(IDM_PREVIEW_VIEW, OnPreviewView)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

static UINT indicators[] =
{
	ID_INDICATOR_MESSAGE,        // status line indicator
	ID_INDICATOR_LOGIN
};

/////////////////////////////////////////////////////////////////////////////
// CSalaryDlg message handlers

BOOL CSalaryDlg::OnInitDialog()
{
	CDialog::OnInitDialog();

	// Add "About..." menu item to system menu.

	// IDM_ABOUTBOX must be in the system command range.
	ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
	ASSERT(IDM_ABOUTBOX < 0xF000);

	CMenu* pSysMenu = GetSystemMenu(FALSE);
	if (pSysMenu != NULL)
	{
		CString strAboutMenu;
		strAboutMenu.LoadString(IDS_ABOUTBOX);
		if (!strAboutMenu.IsEmpty())
		{
			pSysMenu->AppendMenu(MF_SEPARATOR);
			pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
		}
	}

	// Set the icon for this dialog.  The framework does this automatically
	//  when the application's main window is not a dialog
	SetIcon(m_hIcon, TRUE);			// Set big icon
	SetIcon(m_hIcon, FALSE);		// Set small icon
	
	// TODO: Add extra initialization here
	// 設(shè)置項(xiàng)目缺省選擇為獎(jiǎng)金
	((CButton*)GetDlgItem(IDC_RADIO_BONUS))->SetCheck(TRUE);
	// 創(chuàng)建狀態(tài)條
	if (!m_wndStatusBar.Create(this) ||
		!m_wndStatusBar.SetIndicators(indicators,
		  sizeof(indicators)/sizeof(UINT)))
	{
		TRACE0("Failed to create status bar\n");
		return -1;      // fail to create
	}
	CRect rect;
	GetClientRect(&rect);
	// 設(shè)定狀態(tài)條
	m_wndStatusBar.SetPaneInfo(0,ID_INDICATOR_MESSAGE, 
							   SBPS_NORMAL,rect.Width()/2);
	m_wndStatusBar.SetPaneInfo(1,ID_INDICATOR_LOGIN,SBPS_STRETCH,0);
	RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST,
    ID_INDICATOR_LOGIN);
	// 加載加速鍵
	m_hAccTable=::LoadAccelerators(AfxGetApp()->m_hInstance, MAKEINTRESOURCE(IDR_ACCELERATOR));
	// 創(chuàng)建DataGrid需要用的Recordset對(duì)象
	m_pDG1rs.CreateInstance(__uuidof(Recordset)); // DataGrid1相關(guān)
	m_pDG2rs.CreateInstance(__uuidof(Recordset)); // DataGrid2相關(guān)
	m_pDG3rs.CreateInstance(__uuidof(Recordset)); // DataGrid3相關(guān)
	m_pDG4rs.CreateInstance(__uuidof(Recordset)); // DataGrid4相關(guān)
	m_pDG5rs.CreateInstance(__uuidof(Recordset)); // DataGrid5相關(guān)
	
	return TRUE;  // return TRUE  unless you set the focus to a control
}

void CSalaryDlg::OnSysCommand(UINT nID, LPARAM lParam)
{
	if ((nID & 0xFFF0) == IDM_ABOUTBOX)
	{
		CAboutDlg dlgAbout;
		dlgAbout.DoModal();
	}
	else
	{
		CDialog::OnSysCommand(nID, lParam);
	}
}

// If you add a minimize button to your dialog, you will need the code below
//  to draw the icon.  For MFC applications using the document/view model,
//  this is automatically done for you by the framework.

void CSalaryDlg::OnPaint() 
{
	if (IsIconic())
	{
		CPaintDC dc(this); // device context for painting

		SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);

		// Center icon in client rectangle
		int cxIcon = GetSystemMetrics(SM_CXICON);
		int cyIcon = GetSystemMetrics(SM_CYICON);
		CRect rect;
		GetClientRect(&rect);
		int x = (rect.Width() - cxIcon + 1) / 2;
		int y = (rect.Height() - cyIcon + 1) / 2;

		// Draw the icon
		dc.DrawIcon(x, y, m_hIcon);
	}
	else
	{
		CDialog::OnPaint();
	}
}

// The system calls this to obtain the cursor to display while the user drags
//  the minimized window.
HCURSOR CSalaryDlg::OnQueryDragIcon()
{
	return (HCURSOR) m_hIcon;
}

void CSalaryDlg::OnDestroy() 
{
	CDialog::OnDestroy();
	
	// 釋放DataGrid需要用的Recordset對(duì)象
	m_pDG1rs.Release(); // DataGrid1相關(guān)
	m_pDG2rs.Release(); // DataGrid2相關(guān)
	m_pDG3rs.Release(); // DataGrid3相關(guān)
	m_pDG4rs.Release(); // DataGrid4相關(guān)
	m_pDG5rs.Release(); // DataGrid5相關(guān)
}

void CSalaryDlg::OnSystemConnect() // 顯示用戶登錄窗口
{
	CLoginDlg LoginDlg;
	if(LoginDlg.DoModal()==IDOK) // 認(rèn)證通過
		m_wndStatusBar.SetPaneText(1, "已連接到數(shù)據(jù)庫: " + LoginDlg.m_sDSN);
}

void CSalaryDlg::OnSystemDisconnect() // 斷開連接
{
	// 關(guān)閉Connetion對(duì)象
	if(pTheConn->GetState()==adStateOpen)
		pTheConn->Close();
	m_wndStatusBar.SetPaneText(1, "尚未登錄數(shù)據(jù)庫,請(qǐng)按F2登錄");
}

void CSalaryDlg::OnChangeEdtDepartid() 
{
	if(pTheConn->GetState()==adStateClosed) return; // 數(shù)據(jù)庫未打開則返回
	UpdateData(); // 更新數(shù)據(jù)

	CString str;
	_variant_t Value;
	
	_RecordsetPtr pRS; // Recordset對(duì)象
	pRS.CreateInstance(__uuidof(Recordset)); // 創(chuàng)建
	// 更新DataGrid1數(shù)據(jù)
	str="select ID,NAME from PERSONINFO where departmentID like '"
		+ m_strDepartID + "' and STATE='T'";
	
	if(m_pDG1rs->GetState()==adStateOpen) m_pDG1rs->Close(); // 關(guān)閉Recordset
	
	// 打開Recordset
	m_pDG1rs->Open(str.AllocSysString(),
		pTheConn.GetInterfacePtr(),
		adOpenStatic,adLockReadOnly,adCmdText);
	
	// 設(shè)置DataGrid1
	m_cDG1.SetRefDataSource((LPUNKNOWN)m_pDG1rs);
	// 更新部門名稱
	str="select NAME from DEPARTMENT where ID='" + m_strDepartID + "'";
	pRS->Open(str.AllocSysString(),
			pTheConn.GetInterfacePtr(),
			adOpenStatic,adLockReadOnly,adCmdText);
	if(pRS->RecordCount==1) // 判斷記錄是否存在
	{
		Value=pRS->GetCollect("NAME"); // 得到部門名稱
		
		if(Value.vt!=VT_NULL) m_strDepartName=(char*)_bstr_t(Value);
		
	}
	else
		m_strDepartName.Empty(); // 清除部門名稱

	UpdateData(FALSE); // 更新界面數(shù)據(jù)
	pRS.Release(); // 釋放
}

BEGIN_EVENTSINK_MAP(CSalaryDlg, CDialog)
    //{{AFX_EVENTSINK_MAP(CSalaryDlg)
	ON_EVENT(CSalaryDlg, IDC_DATAGRID1, -601 /* DblClick */, OnDblClickDatagrid1, VTS_NONE)
	ON_EVENT(CSalaryDlg, IDC_DATAGRID2, -605 /* MouseDown */, OnMouseDownDatagrid2, VTS_I2 VTS_I2 VTS_I4 VTS_I4)
	ON_EVENT(CSalaryDlg, IDC_DATAGRID3, -605 /* MouseDown */, OnMouseDownDatagrid3, VTS_I2 VTS_I2 VTS_I4 VTS_I4)
	ON_EVENT(CSalaryDlg, IDC_DATAGRID4, -605 /* MouseDown */, OnMouseDownDatagrid4, VTS_I2 VTS_I2 VTS_I4 VTS_I4)
	ON_EVENT(CSalaryDlg, IDC_DATAGRID5, -605 /* MouseDown */, OnMouseDownDatagrid5, VTS_I2 VTS_I2 VTS_I4 VTS_I4)
	//}}AFX_EVENTSINK_MAP
END_EVENTSINK_MAP()

void CSalaryDlg::OnDblClickDatagrid1() 
{
	UpdateData(); // 更新數(shù)據(jù)
	_variant_t Value;
	if(m_pDG1rs->GetState()==adStateOpen) // 判斷列表是否打開
	{
		Value=m_pDG1rs->GetCollect("ID"); // 得到員工號(hào)
		m_strPersonID=(char*)_bstr_t(Value);
	}
	UpdateData(FALSE); // 更新界面數(shù)據(jù)
	OnChangeEdtPersonid(); // 改變員工信息
}

void CSalaryDlg::OnChangeEdtPersonid() 
{
	// 數(shù)據(jù)庫未連接則返回
	if(pTheConn->GetState()==adStateClosed) return;

	UpdateData(); // 更新數(shù)據(jù)
	CString str;
	_variant_t Value;
	_RecordsetPtr pRS; // Recordset對(duì)象
	str="select NAME from personInfo where ID='"
		+ m_strPersonID + "' and STATE='T'";
	pRS.CreateInstance(__uuidof(Recordset)); // 創(chuàng)建
	// 打開Recordset
	pRS->Open(str.AllocSysString(),
		pTheConn.GetInterfacePtr(),
		adOpenStatic,adLockReadOnly,adCmdText);
	if(pRS->RecordCount==1) // 判斷記錄是否存在
	{
	// 更新員工姓名
		Value=pRS->GetCollect("NAME"); // 得到員工姓名
		if(Value.vt!=VT_NULL) m_strPersonName=(char*)_bstr_t(Value);
	// 更新基本工資
		pRS->Close(); // 關(guān)閉
		str="PersonID='" + m_strPersonID + "'";
		pRS->Filter=str.AllocSysString();
		// 打開Recordset
		pRS->Open("SALARY",
			pTheConn.GetInterfacePtr(),
			adOpenKeyset,adLockOptimistic,adCmdTable);
		if(pRS->RecordCount==1) // 判斷記錄是否存在
		{
			Value=pRS->GetCollect("SalaryValue"); // 得到工資
			if(Value.vt!=VT_NULL) m_fBasicSalary=Value.fltVal;
			
		}
		else // 添加記錄
		{
			m_fBasicSalary=0; // 缺省工資
			pRS->AddNew();
			pRS->Fields->GetItem("PersonID")->PutValue(m_strPersonID.AllocSysString());
			pRS->Fields->GetItem("SalaryValue")->PutValue(_variant_t(m_fBasicSalary));
			pRS->Update();
		}
	// 開放“更改基本工資”按鈕
		GetDlgItem(IDC_BTN_CHANGESALARY)->EnableWindow(TRUE);
	// 更新“固定福利津貼”列表
		UpdateDG(m_pDG2rs, m_cDG2, 2);
	// 更新“月度獎(jiǎng)金”列表
		UpdateDG(m_pDG3rs, m_cDG3, 3);
	// 更新“月度福利津貼”列表
		UpdateDG(m_pDG4rs, m_cDG4, 4);
	// 更新“月度扣發(fā)”列表
		UpdateDG(m_pDG5rs, m_cDG5, 5);
	}
	else
	{
		m_strPersonName.Empty(); // 清除員工姓名
		m_fBasicSalary=0; // 清除工資
		// 禁止“更改基本工資”按鈕
		GetDlgItem(IDC_BTN_CHANGESALARY)->EnableWindow(FALSE);
		// 清除各DataGrid
		if(m_pDG2rs->GetState()==adStateOpen) m_pDG2rs->Close();
		if(m_pDG3rs->GetState()==adStateOpen) m_pDG3rs->Close();
		if(m_pDG4rs->GetState()==adStateOpen) m_pDG4rs->Close();
		if(m_pDG5rs->GetState()==adStateOpen) m_pDG5rs->Close();
		m_cDG2.Refresh();
		m_cDG3.Refresh();
		m_cDG4.Refresh();
		m_cDG5.Refresh();
	}

	UpdateData(FALSE); // 更新界面數(shù)據(jù)
	pRS.Release(); // 釋放
}

void CSalaryDlg::OnBtnChangesalary() 
{
	// 數(shù)據(jù)庫未連接則返回
	if(pTheConn->GetState()==adStateClosed) return;

	CString str;
	_variant_t Value;
	_RecordsetPtr pRS; // Recordset對(duì)象
	pRS.CreateInstance(__uuidof(Recordset)); // 創(chuàng)建
	UpdateData(); // 更新數(shù)據(jù)
	// 打開Recordset
	str="PersonID='" + m_strPersonID + "'";
	pRS->Filter=str.AllocSysString(); // 設(shè)置過濾條件
	pRS->Open("SALARY",
		pTheConn.GetInterfacePtr(),
		adOpenKeyset,adLockOptimistic,adCmdTable);
	if(pRS->RecordCount==1) // 判斷記錄是否存在
	{
		// 更新工資

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美刺激脚交jootjob| 欧美在线一区二区三区| 精品一区二区三区在线播放视频| 一区二区三区在线观看欧美| 亚洲欧美国产77777| 亚洲午夜精品久久久久久久久| 亚洲一区二区三区三| 亚洲一区精品在线| 免费看黄色91| 不卡区在线中文字幕| 一本久久精品一区二区| 亚洲综合自拍偷拍| 久久精品亚洲麻豆av一区二区| 久久色.com| 亚洲欧美色综合| 日韩电影在线观看一区| 国产一区二三区| 色成人在线视频| 日韩午夜电影在线观看| 中文字幕av一区 二区| 亚洲黄色小视频| 国产精品影视天天线| 99久久精品国产麻豆演员表| 91精品国产欧美一区二区成人 | 91久久久免费一区二区| 日韩亚洲欧美成人一区| 亚洲欧洲日本在线| 精品亚洲成a人在线观看| 91麻豆国产福利在线观看| 欧美高清www午色夜在线视频| 久久久精品日韩欧美| 亚洲bt欧美bt精品777| 色猫猫国产区一区二在线视频| 欧美精品一区二区三区很污很色的| 亚洲男同1069视频| 91一区在线观看| 国产精品高清亚洲| 日本sm残虐另类| 717成人午夜免费福利电影| 日本v片在线高清不卡在线观看| 国产成a人无v码亚洲福利| 精品国产sm最大网站| 国产真实精品久久二三区| 欧美电影影音先锋| 视频一区在线播放| 日韩午夜精品视频| 国产一区二区三区最好精华液| 欧美大片一区二区| 国产一区二区三区观看| 中文在线一区二区 | 6080日韩午夜伦伦午夜伦| 亚洲大片在线观看| 欧美一级淫片007| 麻豆国产精品官网| 国产亚洲精品久| 99re热这里只有精品视频| 亚洲一二三四区不卡| 欧美一区在线视频| 国产黄色成人av| 亚洲精品国久久99热| 欧美另类高清zo欧美| 国产成人亚洲精品青草天美| 亚洲视频在线一区二区| 日韩一级大片在线观看| 成人国产电影网| 国产在线精品一区在线观看麻豆| 国产精品免费人成网站| 日韩欧美国产成人一区二区| 91丨porny丨在线| 狠狠色综合日日| 国产精一区二区三区| 亚洲精品免费视频| 久久精品一区蜜桃臀影院| 制服丝袜激情欧洲亚洲| 91啪在线观看| bt7086福利一区国产| 国产一区二区三区| 韩国av一区二区| 久久国产精品无码网站| 日韩高清在线一区| 亚洲成av人在线观看| 午夜精品视频在线观看| 亚洲五码中文字幕| 亚洲日本韩国一区| 专区另类欧美日韩| 亚洲欧美成人一区二区三区| 亚洲精品水蜜桃| 一区二区三区精密机械公司| 日韩一区日韩二区| 日韩制服丝袜先锋影音| 国产一区在线观看视频| 成人欧美一区二区三区视频网页| 日韩精品在线网站| 精品国产第一区二区三区观看体验 | 亚洲欧洲精品成人久久奇米网| 日本一区二区三区免费乱视频| 久久久久综合网| 国产精品福利在线播放| 国产精品的网站| 亚洲国产日韩精品| 美女脱光内衣内裤视频久久网站 | 欧美裸体一区二区三区| 日韩午夜在线观看| 国产精品午夜在线观看| 亚洲精品一二三区| 免费日本视频一区| 风间由美一区二区三区在线观看| 99视频国产精品| 久久午夜羞羞影院免费观看| 精品久久久久av影院| 国产精品初高中害羞小美女文| 亚洲第一成人在线| 国产.欧美.日韩| 欧美精品 日韩| 亚洲欧美日韩人成在线播放| 久久99热这里只有精品| 色一情一伦一子一伦一区| 日韩欧美一级二级三级久久久| 亚洲综合在线视频| www.亚洲在线| 欧美国产成人在线| 国产精品一卡二卡在线观看| 欧美日韩国产一级| 亚洲国产你懂的| 色综合久久综合| 亚洲免费伊人电影| 成人精品鲁一区一区二区| 国产午夜亚洲精品午夜鲁丝片| 免费一区二区视频| 欧美成人精品3d动漫h| 亚洲成人黄色小说| 欧美精品99久久久**| 日韩电影一区二区三区| 91精品国产色综合久久| 日韩**一区毛片| 精品蜜桃在线看| 国产一区二区三区香蕉 | 夜夜操天天操亚洲| 欧美体内she精高潮| 免费看日韩精品| 久久影院午夜论| 99精品一区二区三区| 亚洲一区二区美女| 欧美一区二区三区视频在线| 久久丁香综合五月国产三级网站| 欧美大片国产精品| 国产宾馆实践打屁股91| 中文字幕在线不卡一区二区三区| 在线观看日韩一区| 久热成人在线视频| 亚洲同性同志一二三专区| 欧美无砖砖区免费| 国产精品影视在线观看| 一区二区成人在线| 国产免费观看久久| 91精品国产综合久久久久久漫画 | 久久久久亚洲综合| 91一区二区三区在线观看| 亚洲成人av一区二区三区| 欧美激情在线看| 9191久久久久久久久久久| 成av人片一区二区| 日本韩国一区二区三区| 国产美女一区二区三区| 日本午夜精品视频在线观看| 中文字幕一区二区三区色视频| 91.com在线观看| 欧美日韩国产在线观看| 色综合久久天天| www.综合网.com| 国产成人精品免费在线| 美女mm1313爽爽久久久蜜臀| 亚洲mv在线观看| 亚洲 欧美综合在线网络| 亚洲天堂精品在线观看| 国产精品色眯眯| 国产精品三级久久久久三级| 久久精品视频网| 精品999在线播放| 日韩精品一区二区三区在线| 亚洲一区二区三区爽爽爽爽爽| 欧美精品亚洲一区二区在线播放| av网站一区二区三区| av午夜精品一区二区三区| 成人动漫av在线| 在线视频综合导航| 欧美系列在线观看| 欧美精品 国产精品| xf在线a精品一区二区视频网站| 91麻豆精品国产91久久久使用方法 | 日本道精品一区二区三区| 色爱区综合激月婷婷| 在线视频国内一区二区| 欧美一区二区三区四区五区 | 亚洲国产aⅴ天堂久久| 亚洲欧美日韩一区二区三区在线观看| 亚洲欧洲日韩av| 九九九精品视频| 99r国产精品| 日韩午夜激情视频|