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

📄 ordermanager.cpp

📁 短信群发系统
💻 CPP
字号:
// OrderManager.cpp : implementation file
//

#include "stdafx.h"
#include "notesendsystem.h"
#include "OrderManager.h"
#include "AdoRecordSet.h"

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

/////////////////////////////////////////////////////////////////////////////
// COrderManager dialog


COrderManager::COrderManager(CWnd* pParent /*=NULL*/)
	: CDialog(COrderManager::IDD, pParent)
{
	//{{AFX_DATA_INIT(COrderManager)
		// NOTE: the ClassWizard will add member initialization here
	//}}AFX_DATA_INIT
}


void COrderManager::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(COrderManager)
	DDX_Control(pDX, IDC_ORDER_LIST, m_list);
	DDX_Control(pDX, IDC_TAB, m_tab);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(COrderManager, CDialog)
	//{{AFX_MSG_MAP(COrderManager)
	ON_WM_CLOSE()
	ON_NOTIFY(TCN_SELCHANGE, IDC_TAB, OnSelchangeTab)
	ON_NOTIFY(NM_CLICK, IDC_ORDER_LIST, OnClickOrderList)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// COrderManager message handlers

void COrderManager::OnOK() 
{
	// TODO: Add extra validation here
	
//	CDialog::OnOK();
}

void COrderManager::OnCancel() 
{
	// TODO: Add extra cleanup here
	
	
}

void COrderManager::OnClose() 
{
	// TODO: Add your message handler code here and/or call default
	delete addorder;
	delete ordersearch;
	delete amendorder;
	CDialog::OnCancel();
	CDialog::OnClose();
}

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

	addorder		= new CPageAddOrder;
	ordersearch		= new CPageOrderSearch;
	amendorder		= new CPageAmendOrder;

	if (!amendorder->m_hWnd || !ordersearch->m_hWnd || !addorder->m_hWnd)
	{
		m_tab.InsertItem(0, "添加订单");				
		m_tab.InsertItem(1, "修改/删除订单");
		m_tab.InsertItem(2, "订单查询");			//只有管理员可以修改删除帐户
		addorder->Create(IDP_ADD_ORDER, &m_tab);
		amendorder->Create(IDP_AMEND_ORDER, &m_tab);
		ordersearch->Create(IDP_ORDER_SEARCH,&m_tab);		
		
		//设置页面的位置在m_tab控件范围内 
		
		CRect rs; 		
		m_tab.GetClientRect(rs); 	
		rs.top+=20; 	
		rs.bottom-=4; 	
		rs.left+=4; 	
		rs.right-=4; 
		
		addorder->MoveWindow(rs); 	
		amendorder->MoveWindow(rs); 
		ordersearch->MoveWindow(rs); 
		
		addorder->ShowWindow(TRUE);
		
		m_tab.SetCurSel(0); 
	}	
	
	//初始化列表控件
	m_list.ModifyStyle(0, LVS_REPORT);	
	CString		str[6] = {"订单ID", "开始日期", "发送日期", "开始时间", "发送时间", "订单内容"};
	int i;
	for (i = 0; i < 6; i++)
	{
		m_list.InsertColumn(i, str[i], LVCFMT_LEFT, 85);
	}
	m_list.SetExtendedStyle(m_list.GetExtendedStyle() | LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT);	
	
	UpdateOrderList();
	//updateOrderList(0  , 0);
	return TRUE; 
}

void COrderManager::OnSelchangeTab(NMHDR* pNMHDR, LRESULT* pResult) 
{
	int CulSel = m_tab.GetCurSel();

	switch(CulSel)
	{
	case 0:
		addorder->ShowWindow(TRUE);
		amendorder->ShowWindow(FALSE);
		ordersearch->ShowWindow(FALSE);
		break;
	case 1:
		addorder->ShowWindow(FALSE);
		amendorder->ShowWindow(TRUE);
		ordersearch->ShowWindow(FALSE);
		break;
	case 2:
		addorder->ShowWindow(FALSE);
		amendorder->ShowWindow(FALSE);
		ordersearch->ShowWindow(TRUE);
	    break;
	default:
	    break;
	}
	*pResult = 0;
}
//DEL UINT COrderManager::updateOrderList(WPARAM w, LPARAM l)
//DEL {
//DEL 	m_list.DeleteAllItems();
//DEL 
//DEL 	CString					str;
//DEL 	CNoteSendSystemApp *pApp = (CNoteSendSystemApp *)AfxGetApp();
//DEL 	int len = pApp->OrderListVect.size();
//DEL 	for (int i=0; i<len; i++)
//DEL 	{
//DEL 		str.Format("%d", pApp->OrderListVect[i].order_id);
//DEL 		m_list.InsertItem(i, str);
//DEL 		str.Empty();
//DEL 
//DEL 		str.Format("%s", pApp->OrderListVect[i].start_date);
//DEL 		m_list.SetItemText(i, 1, str);
//DEL 		str.Empty();
//DEL 		
//DEL 		str.Format("%s", pApp->OrderListVect[i].end_date);
//DEL 		m_list.SetItemText(i, 2, str);
//DEL 		str.Empty();
//DEL 		
//DEL //		str.Format("%s", pApp->OrderListVect[i].start_time);
//DEL 		m_list.SetItemText(i, 3, str);
//DEL 		str.Empty();
//DEL 		
//DEL //		str.Format("%s", pApp->OrderListVect[i].end_time);
//DEL 		m_list.SetItemText(i, 4, str);
//DEL 		str.Empty();
//DEL 		
//DEL 	str.Format("%s", pApp->OrderListVect[i].content);
//DEL 		m_list.SetItemText(i, 5, str);
//DEL 		str.Empty();
//DEL 	}
//DEL 	return 1;
//DEL }

void COrderManager::OnClickOrderList(NMHDR* pNMHDR, LRESULT* pResult) 
{
	CString			temp;
	CString			start_date;
	CString			start_time;
	CString			end_date;
	CString			end_time;
	CString			content;
	int				nItem;
	int		        id;
 	POSITION pos = m_list.GetFirstSelectedItemPosition();
 	nItem		 = m_list.GetNextSelectedItem(pos);	
	if (nItem == -1)
	{
		return;
	}
	// 获取当前点击的信息
	//ID
	temp			 = m_list.GetItemText(nItem, 0);
 	//开始日期
 	start_date	 = m_list.GetItemText(nItem, 1);
	//结束日期
 	end_date	 = m_list.GetItemText(nItem, 2);
	//开始时间
 	start_time	 = m_list.GetItemText(nItem, 3);
	//结束时间
 	end_time	 = m_list.GetItemText(nItem, 4);
	//内容
 	content		 = m_list.GetItemText(nItem, 5);	

 	amendorder->m_start_date_v = CStringToCOleDateTime(start_date);
	amendorder->m_start_time_v = CStringToCOleDateTime(start_time);
	amendorder->m_end_date_v = CStringToCOleDateTime(end_date);
	amendorder->m_end_time_v = CStringToCOleDateTime(end_time);

	amendorder->m_content = content;
	amendorder->UpdateData(FALSE);

	id = atoi(temp);
 	amendorder->SendMessage(WM_UPDATDATE, id, 1);
 	addorder->SendMessage(WM_CULORDERID, id, 0);
	*pResult = 0;
}

void COrderManager::UpdateOrderList()
{
	m_list.DeleteAllItems();

	CString					str;
	CString					command;
	CAdoRecordSet			record;
	OrderList				list;

	command.Format("select * from Orders");
	//
	CNoteSendSystemApp *pApp = (CNoteSendSystemApp *)AfxGetApp();
	//读取订单表
	pApp->m_pConnection.GetRecordSet(command, record);
	while (!record.IsEof())
	{
		record.GetValue("ID", list.order_id);
		record.GetValue("OrderStart", list.start_date);
		record.GetValue("OrderEnd", list.end_date);
		record.GetValue("Content", list.content);
		pApp->OrderListVect.push_back(list);
		record.MoveNext();
	}
	//显示订单表
	int len = pApp->OrderListVect.size();
	for (int i=0; i<len; i++)
	{
		str.Format("%d", pApp->OrderListVect[i].order_id);
		m_list.InsertItem(i, str);
		str.Empty();
		
		//开始日期
		str = pApp->OrderListVect[i].start_date.Format("%Y-%m-%d");
		m_list.SetItemText(i, 1, str);
		str.Empty();
		//结束日期
		str = pApp->OrderListVect[i].end_date.Format("%Y-%m-%d");
		m_list.SetItemText(i, 2, str);
		str.Empty();
		//开始时间
		str = pApp->OrderListVect[i].start_date.Format("%H:%M:%S");
		m_list.SetItemText(i, 3, str);
		str.Empty();
		//结束时间
		str = pApp->OrderListVect[i].end_date.Format("%H:%M:%S");
		m_list.SetItemText(i, 4, str);
		str.Empty();
		//内容
		str.Format("%s", pApp->OrderListVect[i].content);
		m_list.SetItemText(i, 5, str);
		str.Empty();
	}
	pApp->OrderListVect.clear();
}

COleDateTime COrderManager::CStringToCOleDateTime(CString &str)
{
	COleVariant		vtime(str); 			
	vtime.ChangeType(VT_DATE);
	COleDateTime	times=vtime;	
	return times;
}

⌨️ 快捷键说明

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