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

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

?? salarydlg.cpp

?? 工資管理系統(tǒng)
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
// 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
	DECLARE_MESSAGE_MAP()
};

CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
{
	//{{AFX_DATA_INIT(CAboutDlg)
	//}}AFX_DATA_INIT
}

void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CAboutDlg)
	//}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
	//{{AFX_MSG_MAP(CAboutDlg)
		// No message handlers
	//}}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_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對象
	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對象
	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_strDSN);
}

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

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

	CString str;
	_variant_t Value;
	_RecordsetPtr pRS; // Recordset對象
	pRS.CreateInstance(__uuidof(Recordset)); // 創(chuàng)建
	// 更新DataGrid1數(shù)據(jù)
	str="select ID,NAME from PERSON where DEPARTMENT 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)
	ON_EVENT(CSalaryDlg, IDC_DATAGRID2, -600 /* Click */, OnClickDatagrid2, VTS_NONE)
	ON_EVENT(CSalaryDlg, IDC_DATAGRID3, -600 /* Click */, OnClickDatagrid3, VTS_NONE)
	//}}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"); // 得到員工號
		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對象
	str="select NAME from PERSON 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="PERSON='" + m_strPersonID + "'";
		pRS->Filter=str.AllocSysString();
		// 打開Recordset
		pRS->Open("SALARY_SET",
			pTheConn.GetInterfacePtr(),
			adOpenKeyset,adLockOptimistic,adCmdTable);
		if(pRS->RecordCount==1) // 判斷記錄是否存在
		{
			Value=pRS->GetCollect("SALARY"); // 得到工資
			if(Value.vt!=VT_NULL) m_fBasicSalary=Value.fltVal;
		}
		else // 添加記錄
		{
			m_fBasicSalary=0; // 缺省工資
			pRS->AddNew();
			pRS->Fields->GetItem("PERSON")->PutValue(m_strPersonID.AllocSysString());
			pRS->Fields->GetItem("SALARY")->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對象
	pRS.CreateInstance(__uuidof(Recordset)); // 創(chuàng)建
	UpdateData(); // 更新數(shù)據(jù)
	// 打開Recordset
	str="PERSON='" + m_strPersonID + "'";
	pRS->Filter=str.AllocSysString(); // 設(shè)置過濾條件
	pRS->Open("SALARY_SET",
		pTheConn.GetInterfacePtr(),
		adOpenKeyset,adLockOptimistic,adCmdTable);
	if(pRS->RecordCount==1) // 判斷記錄是否存在
	{
		// 更新工資
		pRS->Fields->GetItem("SALARY")->PutValue(_variant_t(m_fBasicSalary));
		pRS->Update();
	}
	pRS.Release(); // 釋放
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
五月婷婷色综合| 同产精品九九九| 制服丝袜亚洲色图| www.成人网.com| 蜜臀av一区二区在线免费观看 | 国产福利一区二区三区视频在线| 亚洲另类春色国产| 久久精品一区八戒影视| 欧美日韩国产在线播放网站| 97久久超碰精品国产| 狠狠网亚洲精品| 日韩av电影免费观看高清完整版| 亚洲精品乱码久久久久久日本蜜臀| 久久综合丝袜日本网| 欧美一级一区二区| 欧美日韩高清一区二区| 一本大道av伊人久久综合| 国产成人av电影在线观看| 美女在线观看视频一区二区| 亚洲一区二区四区蜜桃| 日韩理论片网站| 国产精品二三区| 欧美激情资源网| 久久精子c满五个校花| 欧美电影免费观看完整版| 51久久夜色精品国产麻豆| 91官网在线观看| 日本道精品一区二区三区| av不卡在线播放| 成人午夜精品一区二区三区| 国产精品亚洲第一| 国产一区二区三区av电影| 久久99国产精品成人| 蜜桃久久精品一区二区| 麻豆中文一区二区| 日韩avvvv在线播放| 日本不卡视频在线观看| 日韩黄色在线观看| 美腿丝袜亚洲一区| 久久精品99国产精品日本| 激情亚洲综合在线| 国内不卡的二区三区中文字幕 | 精品国产一区二区三区四区四| 91精品国产综合久久国产大片| 欧美精品在线一区二区三区| 欧美日韩精品一区二区天天拍小说| 欧美日韩一区视频| 日韩欧美色综合| 国产欧美一区二区三区鸳鸯浴| 国产精品污www在线观看| 国产精品网站在线观看| 亚洲蜜桃精久久久久久久| 亚洲综合一二三区| 天天综合天天综合色| 美女视频网站久久| 国产成人午夜精品影院观看视频| 成人午夜视频网站| 在线精品亚洲一区二区不卡| 在线电影院国产精品| 精品欧美一区二区在线观看| 国产精品污网站| 亚洲图片欧美色图| 久久66热偷产精品| 丁香天五香天堂综合| 在线视频你懂得一区二区三区| 欧美日韩aaaaaa| 久久这里只有精品首页| 亚洲日本青草视频在线怡红院| 偷拍日韩校园综合在线| 国产福利一区在线观看| 日本精品一区二区三区高清| 欧美一区二区三区人| 亚洲国产精品黑人久久久| 亚洲卡通动漫在线| 久久精品999| 91视视频在线观看入口直接观看www | www.欧美.com| 5858s免费视频成人| 日本一区二区三区视频视频| 亚洲成人动漫一区| 国产成人免费视频| 欧美性极品少妇| 久久精品一区二区三区不卡牛牛| 亚洲精品欧美综合四区| 久久激五月天综合精品| 91久久精品网| 久久精品水蜜桃av综合天堂| 亚洲美女免费在线| 韩国毛片一区二区三区| 精品视频在线免费看| 亚洲国产精品精华液ab| 日本色综合中文字幕| 色域天天综合网| 久久精品一区二区三区av| 丝袜亚洲另类欧美| 91影院在线观看| 久久蜜桃香蕉精品一区二区三区| 亚洲最大色网站| 成人高清视频免费观看| 精品成人免费观看| 亚洲bt欧美bt精品| 色婷婷狠狠综合| 亚洲国产精品国自产拍av| 蜜桃视频免费观看一区| 欧美日韩国产综合久久 | 亚洲欧美区自拍先锋| 国产美女娇喘av呻吟久久| 7799精品视频| 亚洲自拍偷拍麻豆| 色悠悠亚洲一区二区| 中文幕一区二区三区久久蜜桃| 麻豆精品国产91久久久久久| 欧美日韩中字一区| 亚洲一区二区三区在线| 97精品国产露脸对白| 国产清纯美女被跳蛋高潮一区二区久久w | 中文字幕免费一区| 国产乱妇无码大片在线观看| 日韩欧美在线123| 日本亚洲三级在线| 欧美精三区欧美精三区| 五月开心婷婷久久| 精品视频在线免费观看| 亚洲午夜免费电影| 欧美性一二三区| 亚洲一区二区视频| 欧美日韩国产区一| 亚洲电影激情视频网站| 欧美色综合网站| 亚洲成a人片在线观看中文| 91精品福利视频| 亚洲综合成人在线视频| 欧美熟乱第一页| 五月综合激情网| 欧美一区二区私人影院日本| 奇米色777欧美一区二区| 91精品国产综合久久香蕉麻豆 | 国产成人在线免费| 久久精品视频在线免费观看| 国产自产2019最新不卡| 国产亚洲欧美日韩俺去了| 国产福利91精品| 中文在线免费一区三区高中清不卡| 国产91精品一区二区麻豆网站| 久久精品男人天堂av| 不卡视频在线看| 亚洲免费在线观看视频| 日本高清不卡一区| 婷婷亚洲久悠悠色悠在线播放| 日韩一区二区在线观看| 激情偷乱视频一区二区三区| 日本一区二区视频在线| 色94色欧美sute亚洲线路二| 午夜久久电影网| 欧美成人bangbros| 成人理论电影网| 亚洲亚洲人成综合网络| 欧美一区二区三区免费大片 | 天天免费综合色| 26uuu亚洲| 99这里都是精品| 亚洲大片精品永久免费| 精品少妇一区二区| 成人在线视频一区二区| 亚洲一区二区三区影院| 精品久久久久久综合日本欧美| 国产不卡视频一区| 亚洲综合精品自拍| 欧美成人精品福利| av在线一区二区三区| 午夜精品久久久久久久久久| 久久久久久久久久电影| 91国偷自产一区二区开放时间 | 在线亚洲免费视频| 蜜臀av一区二区| 综合久久国产九一剧情麻豆| 91精品国产综合久久香蕉麻豆| 国产99久久精品| 日日摸夜夜添夜夜添精品视频| 久久久久久毛片| 欧美日韩高清一区二区三区| 国产成人aaa| 天天综合天天做天天综合| 中文av一区二区| 91精品久久久久久久99蜜桃| 国产黄色成人av| 丝袜美腿亚洲综合| 中文字幕欧美一| 亚洲精品一区二区三区四区高清| 日本精品一级二级| 国产成人av自拍| 日av在线不卡| 一区二区三区不卡在线观看| 久久伊人蜜桃av一区二区| 色欧美88888久久久久久影院| 国产麻豆精品在线| 日本午夜精品一区二区三区电影| 亚洲色图欧美激情| 久久久国产午夜精品| 日韩一区二区免费电影|