⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chrmerchsearch.cpp

📁 网络游戏龙族服务器端管理工具 rmtool 源代码
💻 CPP
📖 第 1 页 / 共 2 页
字号:
	CheckRadioButton(IDC_RADIO_SELLER, IDC_RADIO_BUYER, IDC_RADIO_SELLER);

	DisableDate();
}

void CChrMerchSearch::EnableDate()
{
	// Date 包访 牧飘费 劝己拳
	m_ctrlEditMonth1.EnableWindow(TRUE);
	m_ctrlEditMonth0.EnableWindow(TRUE);
	m_ctrlEditDay1.EnableWindow(TRUE);
	m_ctrlEditDay0.EnableWindow(TRUE);
	m_ctrlComboYear1.EnableWindow(TRUE);
	m_ctrlComboYear0.EnableWindow(TRUE);


}

void CChrMerchSearch::DisableDate()
{
	// Date 包访 牧飘费 厚劝己拳
	m_ctrlEditMonth1.EnableWindow(FALSE);
	m_ctrlEditMonth0.EnableWindow(FALSE);
	m_ctrlEditDay1.EnableWindow(FALSE);
	m_ctrlEditDay0.EnableWindow(FALSE);
	m_ctrlComboYear1.EnableWindow(FALSE);
	m_ctrlComboYear0.EnableWindow(FALSE);

}

void CChrMerchSearch::OnRadioUsedate1() 
{
	// TODO: Add your control notification handler code here
	// 殿废老 扁霖栏肺 八祸
	m_nUsedateState = 1;
	EnableDate();
	DisableRadioSellerNBuyer();		// 捞抚八祸阑 荤侩 臼窃
	DisableItemNo();				// 酒捞袍逞滚 八祸 荤侩 阂啊
	DisableLimitNo();				// 府固飘逞滚 八祸 荤侩 阂啊
	m_ctrlCheckItemNo.SetCheck(false);
	m_ctrlCheckLimitNo.SetCheck(false);
	m_bCheckItemNo = false;
	m_bCheckLimitNo = false;
}

void CChrMerchSearch::OnRadioUsedate2() 
{
	// TODO: Add your control notification handler code here
	// 辆丰老 扁霖栏肺 八祸
	m_nUsedateState = 2;
	EnableDate();
	DisableRadioSellerNBuyer();		// 捞抚八祸阑 荤侩 臼窃
	DisableItemNo();				// 酒捞袍逞滚 八祸 荤侩 阂啊
	DisableLimitNo();				// 府固飘逞滚 八祸 荤侩 阂啊
	m_ctrlCheckItemNo.SetCheck(false);
	m_ctrlCheckLimitNo.SetCheck(false);
	m_bCheckItemNo = false;
	m_bCheckLimitNo = false;
}

void CChrMerchSearch::OnRadioUsedate0() 
{
	// TODO: Add your control notification handler code here
	// 朝楼 八祸阑 荤侩窍瘤 臼澜
	m_nUsedateState = 0;
	DisableDate();
	EnableRadioSellerNBuyer();		// 捞抚八祸阑 荤侩
	EnableItemNo();					// 酒捞袍逞滚 八祸 荤侩 
	EnableLimitNo();				// 府固飘逞滚 八祸 荤侩 
}



void CChrMerchSearch::OnBtnPageup() 
{
	// TODO: Add your control notification handler code here
	m_bIsEndpage = false;
	if(!m_nCurPage)	return;
	m_nCurPage--;
	RunSQL();
}

void CChrMerchSearch::OnBtnPagedown() 
{
	// TODO: Add your control notification handler code here
	if(m_bIsEndpage)	return;

	m_nCurPage++;
	RunSQL();
}

void CChrMerchSearch::RunSQL()
{
	CCharacterView *pView = (CCharacterView*)GetParent();
	WCHAR query[ 0x1ff ];
	char str[ 0x1ff ];

	if(!MakeQuery(str))		return;

	g_pDb->KSCToUnicode(str, query);

	MERCHSELLINFO info[LIST_PAGE_SIZE];
	memset(info, 0L, sizeof(info));

	int ret = g_pDb->OpenRecord(query, &info, LIST_PAGE_SIZE, (BYTE)DRAGON_DB[ pView->m_nCurDbIndex ]);
	if(ret < 0)		return;

	// 凯绢柯 饭内靛甸阑 府胶飘俊 货肺 笼绢持磊
	m_ctrlResultList.DeleteAllItems();
	for(int i = 0; i < LIST_PAGE_SIZE; i++)
		InsertItem(info[i]);
}

void CChrMerchSearch::OnRadioSeller() 
{
	// TODO: Add your control notification handler code here
	m_bUseSeller = true;
	m_nCurPage = 0;

}

void CChrMerchSearch::OnRadioBuyer() 
{
	// TODO: Add your control notification handler code here
	m_bUseSeller = false;
	m_nCurPage = 0;
	
}

void CChrMerchSearch::InitDate()
{
	SYSTEMTIME st;
	GetLocalTime(&st);		// 肺拿 鸥烙 掘扁

	m_ctrlComboYear0.ResetContent();
	m_ctrlComboYear1.ResetContent();
	CString str;

	for(int i = 1999; i <= st.wYear; i++)
	{
		str.Format(_T("%d"), i);
		m_ctrlComboYear0.AddString(str);		//霓焊冠胶俊 斥档 眠啊
		m_ctrlComboYear1.AddString(str);
	}

	m_ctrlComboYear0.SetCurSel(0);
	m_ctrlComboYear1.SetCurSel(st.wYear - 1999);

	// 岿 老狼 悸泼
	SetDlgItemInt(IDC_EDIT_MONTH0, 1);
	SetDlgItemInt(IDC_EDIT_MONTH1, st.wMonth);
	SetDlgItemInt(IDC_EDIT_DAY0, 1);
	SetDlgItemInt(IDC_EDIT_DAY1, st.wDay);

}

bool CChrMerchSearch::MakeQuery(char *str)
{
	CCharacterView *pView = (CCharacterView*)GetParent();
/////////////////////////////////////////////////////////////////////////////////////////////////
//<-------------------- 酒捞袍 逞滚客 府固飘 逞滚甫 捞侩茄 八祸 ---------- 矫累 -------------->//
/////////////////////////////////////////////////////////////////////////////////////////////////

	// BBD 031117	酒捞袍逞滚客 府固飘 逞滚狼 & 八祸捞 啊瓷配废 荐沥
	if(m_bCheckItemNo && m_bCheckLimitNo)	// 酒捞袍逞滚客 府固飘 逞滚 & 八祸
	{
		int SearchNo = GetDlgItemInt(IDC_EDIT_ITEM_NO);
		int SearchNo2 = GetDlgItemInt(IDC_EDIT_LIMIT_NO);

		sprintf(str,
			"select * from MerchantSeller where not [No] in"
			"(select top %d [No]  from MerchantSeller where SellItemNo=%d and SellItemAttr2=%d)"
			"and SellItemNo=%d and SellItemAttr2=%d",
			LIST_PAGE_SIZE * m_nCurPage, SearchNo, SearchNo2, SearchNo, SearchNo2);

		return true;
	}
//	if(m_bCheckItemNo)	// 酒捞袍逞滚俊 狼茄 八祸
	else if(m_bCheckItemNo)	// 酒捞袍逞滚俊 狼茄 八祸		// BBD 031117 荐沥
	{
		int SearchNo = GetDlgItemInt(IDC_EDIT_ITEM_NO);

		sprintf(str,
			"select * from MerchantSeller where not [No] in"
			"(select top %d [No]  from MerchantSeller where SellItemNo=%d ) and SellItemNo=%d",
			LIST_PAGE_SIZE * m_nCurPage, SearchNo, SearchNo);

		return true;
	}
	else if(m_bCheckLimitNo)	// 府固飘逞滚俊 狼茄 八祸
	{
		int SearchNo = GetDlgItemInt(IDC_EDIT_LIMIT_NO);

		sprintf(str,
			"select * from MerchantSeller where not [No] in"
			"(select top %d [No]  from MerchantSeller where SellItemAttr2=%d ) and SellItemAttr2=%d",
			LIST_PAGE_SIZE * m_nCurPage, SearchNo, SearchNo);

		return true;
	}
/////////////////////////////////////////////////////////////////////////////////////////////////
//<-------------------- 酒捞袍 逞滚客 府固飘 逞滚甫 捞侩茄 八祸 ---------- 场 ---------------->//
/////////////////////////////////////////////////////////////////////////////////////////////////

	// 府畔炼扒
	if(!pView)	return	false;

	if(m_nUsedateState == 0)	// 捞抚俊 狼茄 八祸
	{
		if(pView->m_ComboCharName == CString(""))	return false;
		// 孽府 备己
		sprintf(str,
			"select * from MerchantSeller where not [No] in"
			"(select top %d [No]  from MerchantSeller where %s='%s' ) and %s='%s'",
			LIST_PAGE_SIZE * m_nCurPage, m_bUseSeller ?"SellerName":"BuyerName", pView->m_ComboCharName,
			m_bUseSeller ?"SellerName":"BuyerName",  pView->m_ComboCharName);
	}
	else if(m_nUsedateState == 1)	// RegDate 俊 狼茄 八祸
	{
		if(!CheckDate(GetDlgItemInt(IDC_COMBO_YEAR0),GetDlgItemInt(IDC_EDIT_MONTH0), GetDlgItemInt(IDC_EDIT_DAY0),
			GetDlgItemInt(IDC_COMBO_YEAR1),	GetDlgItemInt(IDC_EDIT_MONTH1),	GetDlgItemInt(IDC_EDIT_DAY1)))
		{
			MessageBox("Incorrect Date");		// 登瘤档 臼绰 朝楼捞促
			return false;
		}

		CString datetime0, datetime1;
		// 朝磊 器杆 备己
		datetime0.Format("%d-%02d-%02d 0:00:00", GetDlgItemInt(IDC_COMBO_YEAR0),
			GetDlgItemInt(IDC_EDIT_MONTH0), GetDlgItemInt(IDC_EDIT_DAY0));
		datetime1.Format("%d-%02d-%02d 23:59:59", GetDlgItemInt(IDC_COMBO_YEAR1),
			GetDlgItemInt(IDC_EDIT_MONTH1), GetDlgItemInt(IDC_EDIT_DAY1));

		// 孽府 备己
		sprintf(str,
			"select * from MerchantSeller where not [No] in"
			"(select top %d [No] from MerchantSeller"
			"where RegDate between cast ('%s' as datetime) and cast('%s' as datetime))"
			"and RegDate between cast('%s' as datetime) and cast('%s' as datetime)"
			,LIST_PAGE_SIZE * m_nCurPage, datetime0.GetBuffer(128), datetime1.GetBuffer(128),
			datetime0.GetBuffer(128), datetime1.GetBuffer(128));
	}
	else if(m_nUsedateState == 2)	// EndDate 俊 狼茄 八祸
	{
		if(!CheckDate(GetDlgItemInt(IDC_COMBO_YEAR0),GetDlgItemInt(IDC_EDIT_MONTH0), GetDlgItemInt(IDC_EDIT_DAY0),
			GetDlgItemInt(IDC_COMBO_YEAR1),	GetDlgItemInt(IDC_EDIT_MONTH1),	GetDlgItemInt(IDC_EDIT_DAY1)))
		{
			MessageBox("Incorrect Date");		// 登瘤档 臼绰 朝楼捞促
			return false;
		}

		CString datetime0, datetime1;
		// 朝磊 器杆 备己
		datetime0.Format("%d-%02d-%02d 0:00:00", GetDlgItemInt(IDC_COMBO_YEAR0),
			GetDlgItemInt(IDC_EDIT_MONTH0), GetDlgItemInt(IDC_EDIT_DAY0));
		datetime1.Format("%d-%02d-%02d 23:59:59", GetDlgItemInt(IDC_COMBO_YEAR1),
			GetDlgItemInt(IDC_EDIT_MONTH1), GetDlgItemInt(IDC_EDIT_DAY1));

		// 孽府 备己
		sprintf(str,
			"select * from MerchantSeller where not [No] in"
			"(select top %d [No] from MerchantSeller"
			"where EndDate between cast ('%s' as datetime) and cast('%s' as datetime))"
			"and EndDate between cast('%s' as datetime) and cast('%s' as datetime)"
			,LIST_PAGE_SIZE * m_nCurPage, datetime0.GetBuffer(128), datetime1.GetBuffer(128),
			datetime0.GetBuffer(128), datetime1.GetBuffer(128));
	}
	return true;
}

bool CChrMerchSearch::CheckDate(int year0, int month0, int day0, int year1, int month1, int day1)
{
	// 胶鸥飘朝楼啊 浚靛朝楼 捞饶 牢瘤 眉农
	if(year0 > year1)
	{
		return false;
	}
	if(month0 > month1 && year0 == year1)
	{
		return false;
	}
	if(day0 > day1 && month0 == month1 && year0 == year1)
	{
		return false;
	}

	// 八祸且 胶鸥飘 朝楼 眉农
	if(month0 <= 0 || month0 > 12)	// month啊 裹困 捞郴牢啊?
	{
		return	false;
	}
	if(day0 <= 0 || day0 > 31)		// day啊 裹困 捞郴牢啊?
	{
		return	false;
	}

	// 八祸且 浚靛 朝楼 眉农
	if(month1 <= 0 || month1 > 12)	// month啊 裹困 捞郴牢啊?
	{
		return	false;
	}
	if(day1 <= 0 || day1 > 31)		// day啊 裹困 捞郴牢啊?
	{
		return	false;
	}

	return true;
}

void CChrMerchSearch::EnableRadioSellerNBuyer()
{
	// Buyer & Seller 扼叼坷滚瓢阑 混府磊
	m_ctrlRadSeller.EnableWindow(TRUE);
	CWnd * ptr = GetDlgItem(IDC_RADIO_BUYER);
	ptr->EnableWindow(TRUE);

}

void CChrMerchSearch::DisableRadioSellerNBuyer()
{
	// Buyer & Seller 扼叼坷滚瓢阑 磷捞磊
	m_ctrlRadSeller.EnableWindow(FALSE);
	CWnd * ptr = GetDlgItem(IDC_RADIO_BUYER);
	ptr->EnableWindow(FALSE);


}

void CChrMerchSearch::EnableItemNo()
{
	m_ctrlCheckItemNo.EnableWindow(TRUE);
	// BBD 031117	俊叼飘 冠胶绰 劝己拳啊 鞘夸绝促
//	m_ctrlEditItemNo.EnableWindow(TRUE);
}

void CChrMerchSearch::DisableItemNo()
{
	m_ctrlCheckItemNo.EnableWindow(FALSE);
	m_ctrlEditItemNo.EnableWindow(FALSE);

}

void CChrMerchSearch::EnableLimitNo()
{
	m_ctrlCheckLimitNo.EnableWindow(TRUE);
	// BBD 031117	俊叼飘 冠胶绰 劝己拳啊 鞘夸绝促
//	m_ctrlEditLimitNo.EnableWindow(TRUE);

}

void CChrMerchSearch::DisableLimitNo()
{
	m_ctrlCheckLimitNo.EnableWindow(FALSE);
	m_ctrlEditLimitNo.EnableWindow(FALSE);

}

void CChrMerchSearch::OnCheckItemNo()		// BBD	031117	捞 窃荐狼 郴侩捞 荐沥凳
											// ( 酒捞袍 逞滚客 府固飘逞滚啊 悼矫俊 啊瓷配废)
{
	// TODO: Add your control notification handler code here
// BBD 031117 货肺眠啊----------------------------//
	if(m_bCheckItemNo)
	{
		m_ctrlEditItemNo.EnableWindow(FALSE);
		m_bCheckItemNo = false;
	}
	else
	{
		m_ctrlEditItemNo.EnableWindow(TRUE);
		m_bCheckItemNo = true;
	}
//------------------------------------------------//
	if(m_bCheckItemNo || m_bCheckLimitNo)
	{
		DisableRadioSellerNBuyer();		// 捞抚八祸阑 荤侩 臼窃
	}
	else
	{
		EnableRadioSellerNBuyer();		// 捞抚八祸阑 荤侩
	}

}

void CChrMerchSearch::OnCheckLimitNo() 		// BBD	031117	捞 窃荐狼 郴侩捞 荐沥凳
											// ( 酒捞袍 逞滚客 府固飘逞滚啊 悼矫俊 啊瓷配废) 
{
	// TODO: Add your control notification handler code here
// BBD 031117 货肺眠啊----------------------------//
	if(m_bCheckLimitNo)
	{
		m_bCheckLimitNo = false;
		m_ctrlEditLimitNo.EnableWindow(FALSE);
	}
	else
	{
		m_ctrlEditLimitNo.EnableWindow(TRUE);
		m_bCheckLimitNo = true;
	}
//------------------------------------------------//
	if(m_bCheckItemNo || m_bCheckLimitNo)
	{
		DisableRadioSellerNBuyer();		// 捞抚八祸阑 荤侩 臼窃
	}
	else
	{
		EnableRadioSellerNBuyer();		// 捞抚八祸阑 荤侩
	}
}

// 捞 窃荐绰 府胶飘俊 焊咯柳 郴侩阑 其捞瘤喊肺 历厘茄促	
void CChrMerchSearch::OnBtnSave() 
{
	// TODO: Add your control notification handler code here
	CFileDialog dlg(TRUE, "txt", "*.txt",OFN_HIDEREADONLY , 
		"TEXT File(*.txt)|*.txt|All File(*.*)|*.*||");
	if(dlg.DoModal() == IDOK)
	{
		CString str = dlg.GetFileName();

		if(!SaveResult((char*)(LPCTSTR)str))
		{
			MessageBox("Saving is Filed");
		}
	}	
}

// 林绢柳 颇老俊 搬苞甫 历厘窍磊
bool CChrMerchSearch::SaveResult(char *filename)
{
	FILE * fp = 0L;
	fp = fopen(filename, "wt");

	if(!fp)		// 颇老凯扁 角菩
	{
		return false;
	}
	
	char buffer[256];
	char temp[32];
	char temp2[32];

	unsigned short lineend = 0x0a0d;
	// 茄临肺 鞘靛狼 狼固甫 钎矫秦林绊
	char comment[] = "No.\tRegist Date\tEnd Date\tSeller Name\tBuyer Name\tExchange Money\t"
		"Rare Type\tItem Level\tTactic Type\tWear Kind\tIs End\tSeller Take\tBuyer Take\t"
		"Item No.\tLimit No.\tGrade\tsocksung1\tsocksung2(multi)\tsocksung3(time)\t"
		"High Level\tDynamicRare";
	fwrite(comment, sizeof(comment), 1, fp);
	fwrite(&lineend, sizeof(lineend), 1, fp);

	// 府胶飘甫 倒哥 历厘窍技~~
	for(int i = 0; i < LIST_PAGE_SIZE; i++)
	{
		memset(buffer, 0L, sizeof(buffer));
		for(int j = 0; j < LIST_FIELD_COUNT; j++)
		{
			memset(temp, 0L, sizeof(temp));
			memset(temp2, 0L, sizeof(temp2));
			m_ctrlResultList.GetItemText(i, j, temp, sizeof(temp));
			
			sprintf(temp2, "%s\t", temp);
			strcat(buffer, temp2);

			// 4锅俊 茄锅究 老窜 历厘窍技
			if( j%16 == 15)
			{
				fwrite(buffer, strlen(buffer), 1, fp);
				fwrite(&lineend, sizeof(lineend), 1, fp);
				memset(buffer, 0L, sizeof(buffer));
			}
		}
		fwrite(&lineend, 1, sizeof(lineend), fp);
	}

	fclose(fp);
	return true;
}

//<! BBD 040303	
void CChrMerchSearch::OnBtnMove2backuptbl() 
{
	// TODO: Add your control notification handler code here
	CMerchantDataMoveDlg dlg;
	
	dlg.DoModal();	
	
}
//<! BBD 040303	

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -