Browse Source

很多的优化

zhangyang 6 years ago
parent
commit
ebd859dcd2

+ 20 - 13
bin/Win32/Debug/zhipuzi_pos_windows/skin/GameRes/desk.xml

@@ -1,17 +1,24 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <Window>
-	<WaimaiOrderItem width="1000" height="200" padding="10,10,10,10" bkcolor="#FFFFFFFF" childpadding="20" mouse="false">
-		<Label float="true" name="waimai_order_list_name" text="姓名:" textcolor="#FF558CC4" pos="0,6,182,36" mouse="false" />
-		<Label float="true" name="waimai_order_list_phone" text="电话:" textcolor="#FF558CC4" pos="0,36,182,66" mouse="false" />
-		<Label float="true" name="waimai_order_list_address" text="地址:" textcolor="#FF558CC4" pos="0,66,182,96" mouse="false" />
-		<Label float="true" name="waimai_order_list_init_date" text="下单时间:" textcolor="#FF558CC4" pos="0,96,182,126" mouse="false" />
-		
-		<Label float="true" name="waimai_order_list_price" text="价格:" textcolor="#FF558CC4" pos="300,6,482,36" mouse="false" />
-		<Label float="true" name="waimai_order_list_order_no" text="订单编号:" textcolor="#FF558CC4" pos="300,36,600,66" mouse="false" />
-		
-		<Button name="waimai_order_list_info" float="true" pos="600,6,660,36" text="详情" textcolor="#FFFF0000" bkcolor="#FFFFFF00"/>
-		<Button name="waimai_order_list_print" float="true" pos="600,46,660,76" text="打印" textcolor="#FFFF0000" bkcolor="#FFFFFF00"/>
-		<Button name="waimai_order_list_confirme" float="true" pos="600,86,660,116" text="确认" textcolor="#FFFF0000" bkcolor="#FFFFFF00"/>
-		<Button name="waimai_order_list_fail" float="true" pos="600,126,660,156" text="设为失败" textcolor="#FFFF0000" bkcolor="#FFFFFF00"/>
+	<WaimaiOrderItem height="200" padding="0,0,0,0" bkcolor="#FFFFFFFF">
+		<HorizontalLayout>
+			<Label float="true" name="waimai_order_list_order_no" text="订单号:" pos="10,6,300,36" />
+			<Label float="true" name="waimai_order_list_name" text="姓名:" pos="10,36,182,66" />
+			<Label float="true" name="waimai_order_list_phone" text="电话:" pos="320,36,600,66" />
+			<Label float="true" name="waimai_order_list_address" text="地址:" pos="10,66,182,96" />
+			<Label float="true" name="waimai_order_list_init_date" text="下单时间:" pos="10,96,182,126" />
+			<Label float="true" name="waimai_order_list_type" text="订单类型:" pos="10,126,182,156" />
+			<Label float="true" name="waimai_order_list_delivery_date" text="配送时间:" pos="10,156,182,186" />
+			
+			<Label float="true" name="waimai_order_list_price" text="价格:" pos="320,6,482,36" />
+		</HorizontalLayout>
+		<HorizontalLayout width="200">
+			<Button name="waimai_order_list_info" float="true" pos="100,6,180,44" text="详情" normalimage="file='Btn_White.png' corner='5,5,5,5'" hotimage="file='Btn_White_Hover.png' corner='5,5,5,5'" pushedimage="file='Btn_White_Click.png' corner='5,5,5,5'"/>
+			<Button name="waimai_order_list_print" float="true" pos="100,54,180,92" text="打印" normalimage="file='Btn_White.png' corner='5,5,5,5'" hotimage="file='Btn_White_Hover.png' corner='5,5,5,5'" pushedimage="file='Btn_White_Click.png' corner='5,5,5,5'"/>
+			
+			<Button name="waimai_order_list_confirme" float="true" pos="100,112,180,150" text="确认" textcolor="#FFFFFFFF"/>
+			<Button name="waimai_order_list_success" float="true" pos="100,112,180,150" text="设为成功" textcolor="#FFFFFFFF"/>
+			<Button name="waimai_order_list_fail" float="true" pos="100,160,180,198" text="设为失败" textcolor="#FFFFFFFF" normalimage="file='Btn_Red.png' corner='5,5,5,5'" hotimage="file='Btn_Red_Hover.png' corner='5,5,5,5'" pushedimage="file='Btn_Red_Click.png' corner='5,5,5,5'"/>
+		</HorizontalLayout>
 	</WaimaiOrderItem>
 </Window>

File diff suppressed because it is too large
+ 27 - 27
bin/Win32/Debug/zhipuzi_pos_windows/skin/GameRes/main.xml


+ 11 - 10
bin/Win32/Debug/zhipuzi_pos_windows/skin/GameRes/waimaiorder_info.xml

@@ -1,12 +1,12 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <Window>
-	<WaimaiOrderInfo name="waimaiorder_info_page" bkcolor="#FFD3D3D3">
-		<HorizontalLayout height="50" bkcolor="#FFFFFFFF" padding="0,0,0,0">
-			<Button name="waimai_order_info_page_return" float="true" pos="20,10,120,40" text="返回" textcolor="#FFFF0000" bkcolor="#FFFFFF00"/>
+	<WaimaiOrderInfo name="waimaiorder_info_page" bkcolor="#FFEFF6EE">
+		<HorizontalLayout height="44" bkcolor="#FFFFFFFF" padding="0,0,0,0">
+			<Button name="waimai_order_info_page_return" float="true" pos="20,3,120,41" text="返回" textcolor="#FFFFFFFF"/>
 		</HorizontalLayout>
 
 		<HorizontalLayout>
-			<VerticalLayout name="waimai_order_info_page_orderlayout" padding="20,20,20,20" bkcolor="#FFFFFFFF" vscrollbar="true" inset="0,2,0,2">	
+			<VerticalLayout name="waimai_order_info_page_orderlayout" padding="20,20,20,20" bkcolor="#FFFFFFFF" vscrollbar="true">	
 				<HorizontalLayout height="50">
 					<Label float="true" name="waimai_order_info_page_liushuihao" text="#1" pos="10, 10, 30, 40" />
 					<Label float="true" name="waimai_order_info_page_order_no" text="订单号:" pos="50, 10, 500, 40" />
@@ -35,7 +35,7 @@
 				
 				<Label name="waimai_order_info_page_totalprice" height="40" padding="0,0,30,0" align="right" text="总计:" />
 				
-				<Control height="15" bkcolor="#FFD3D3D3" />
+				<Control height="15" bkcolor="#FFEFF6EE" />
 
 				<Label text="顾客信息" height="30" />
 				<Control height="1" bkcolor="#FF708090" />
@@ -44,7 +44,7 @@
 				<Label name="waimai_order_info_page_address" text="地址:" height="30" textcolor="#FF558CC4" mouse="false" />
 				<Label name="waimai_order_info_page_init_date" text="下单时间:" height="30" textcolor="#FF558CC4" mouse="false" />
 
-				<Control height="15" bkcolor="#FFD3D3D3" />
+				<Control height="15" bkcolor="#FFEFF6EE" />
 
 				<Label text="订单信息" height="30" />
 				<Control height="1" bkcolor="#FF708090" />
@@ -58,10 +58,11 @@
 				</VerticalLayout>
 			</VerticalLayout>
 
-			<HorizontalLayout width="300" height="500" bkcolor="#FFFFFFFF" padding="0,20,0,0">
-				<Button name="waimai_order_info_page_print" float="true" pos="20,60,120,90" text="打印" textcolor="#FFFF0000" bkcolor="#FFFFFF00"/>
-				<Button name="waimai_order_info_page_confirme" float="true" pos="20,100,120,130" text="确认" textcolor="#FFFF0000" bkcolor="#FFFFFF00"/>
-				<Button name="waimai_order_info_page_fail" float="true" pos="20,140,120,170" text="设为失败" textcolor="#FFFF0000" bkcolor="#FFFFFF00"/>
+			<HorizontalLayout width="250" height="400" bkcolor="#FFFFFFFF" padding="0,20,0,0">
+				<Button name="waimai_order_info_page_print" float="true" pos="60,60,190,98" text="打印" normalimage="file='Btn_White.png' corner='5,5,5,5'" hotimage="file='Btn_White_Hover.png' corner='5,5,5,5'" pushedimage="file='Btn_White_Click.png' corner='5,5,5,5'" />
+				<Button name="waimai_order_info_page_confirme" float="true" pos="60,108,190,146" text="确认" textcolor="#FFFF0FFFF" />
+				<Button name="waimai_order_info_page_success" float="true" pos="60,108,190,146" text="设为成功" textcolor="#FFFF0FFFF" />
+				<Button name="waimai_order_info_page_fail" float="true" pos="60,156,190,192" text="设为失败" textcolor="#FFFFFFFF" normalimage="file='Btn_Red.png' corner='5,5,5,5'" hotimage="file='Btn_Red_Hover.png' corner='5,5,5,5'" pushedimage="file='Btn_Red_Click.png' corner='5,5,5,5'" />
 			</HorizontalLayout>
 		</HorizontalLayout>
 	</WaimaiOrderInfo>

BIN
bin/Win32/Debug/zhipuzi_pos_windows/zhipuzi_pos_windows.exe


lewaimai_dispatch/conf/dispatch.conf → lewaimai_dispatch/conf/config.ini


+ 1 - 1
lewaimai_dispatch/helper/CConfigReader.cpp

@@ -19,7 +19,7 @@ void CConfigReader::ReadConfigFile()
 {
 	ifstream configFile;
 
-	string path = "../conf/dispatch.conf";
+	string path = "config.ini";
 
 	configFile.open(path.c_str());
 	string str_line;

+ 6 - 6
lewaimai_dispatch/lewaimai_dispatch_windows.vcxproj

@@ -134,14 +134,14 @@ copy $(ProjectDir)conf\ $(SolutionDir)bin\$(Platform)\$(Configuration)\conf\</Co
       <AdditionalLibraryDirectories>$(SolutionDir)lib\debug</AdditionalLibraryDirectories>
       <AdditionalDependencies>DuiLib_ud.lib;log4cplusUD.lib;dbghelp.lib;libcurl.dll.a;setupapi.lib;libboost_date_time-vc141-mt-gd-x32-1_70.lib;libboost_regex-vc141-mt-gd-x32-1_70.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <AdditionalOptions>/ignore:4099 %(AdditionalOptions)</AdditionalOptions>
-      <IgnoreSpecificDefaultLibraries>/NODEFAULTLIB:LIBCMTD</IgnoreSpecificDefaultLibraries>
+      <IgnoreSpecificDefaultLibraries>
+      </IgnoreSpecificDefaultLibraries>
     </Link>
     <PostBuildEvent>
       <Command>mkdir $(SolutionDir)bin\$(Platform)\$(Configuration)\$(ProjectName)\
 copy $(TargetPath) $(SolutionDir)bin\$(Platform)\$(Configuration)\$(ProjectName)\
 copy $(SolutionDir)dll\debug\ $(SolutionDir)bin\$(Platform)\$(Configuration)\$(ProjectName)\
-mkdir $(SolutionDir)bin\$(Platform)\$(Configuration)\conf\
-copy $(ProjectDir)conf\ $(SolutionDir)bin\$(Platform)\$(Configuration)\conf\</Command>
+copy $(ProjectDir)conf\ $(SolutionDir)bin\$(Platform)\$(Configuration)\$(ProjectName)\</Command>
     </PostBuildEvent>
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
@@ -240,14 +240,14 @@ copy $(ProjectDir)conf\ $(SolutionDir)bin\$(Platform)\$(Configuration)\conf\</Co
     <ClCompile Include="wnd\OrderListUI.cpp" />
   </ItemGroup>
   <ItemGroup>
-    <None Include="conf\dispatch.conf" />
-  </ItemGroup>
-  <ItemGroup>
     <ResourceCompile Include="resource\zhipuzi_pos_windows.rc" />
   </ItemGroup>
   <ItemGroup>
     <Image Include="resource\duilib.ico" />
   </ItemGroup>
+  <ItemGroup>
+    <None Include="conf\config.ini" />
+  </ItemGroup>
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
   <ImportGroup Label="ExtensionTargets">
   </ImportGroup>

+ 3 - 3
lewaimai_dispatch/lewaimai_dispatch_windows.vcxproj.filters

@@ -145,9 +145,6 @@
     </ClCompile>
   </ItemGroup>
   <ItemGroup>
-    <None Include="conf\dispatch.conf" />
-  </ItemGroup>
-  <ItemGroup>
     <Image Include="resource\duilib.ico">
       <Filter>资源文件</Filter>
     </Image>
@@ -157,4 +154,7 @@
       <Filter>资源文件</Filter>
     </ResourceCompile>
   </ItemGroup>
+  <ItemGroup>
+    <None Include="conf\config.ini" />
+  </ItemGroup>
 </Project>

+ 42 - 0
lewaimai_dispatch/order/CWaimaiOrder.cpp

@@ -218,6 +218,48 @@ bool CWaimaiOrder::ConfirmeOrder(std::string order_id)
 	return true;
 }
 
+bool CWaimaiOrder::SuccessOrder(std::string order_id)
+{
+	std::string url = "/waimaiorder/ordersucceeded";
+
+	//请求外卖的未处理订单
+	std::map<string, string> params;
+	params["id"] = order_id;
+	std::string response;
+
+	CZhipuziHttpClient::RequestOld(url.c_str(), params, response);
+
+	rapidjson::Document document;
+	document.Parse(response.c_str());
+
+	if (document.HasParseError())
+	{
+		LOG_INFO("parse response error!");
+		return false;
+	}
+
+	if (!document.HasMember("errcode") || !document.HasMember("errmsg") || !document.HasMember("data"))
+	{
+		LOG_INFO("json error!");
+		return false;
+	}
+
+	rapidjson::Value& v_errcode = document["errcode"];
+	int errcode = v_errcode.GetInt();
+	if (errcode != 0)
+	{
+		LOG_INFO("response failed! message:" << document["errmsg"].GetString());
+		return false;
+	}
+
+	//获得数据成功
+	rapidjson::Value& data = document["data"];
+	rapidjson::Value& v_count = data["count"];
+	string count = v_count.GetString();
+
+	return true;
+}
+
 bool CWaimaiOrder::FailOrder(std::string order_id, std::string reason)
 {
 	std::string url = "/waimaiorder/orderfail";

+ 1 - 0
lewaimai_dispatch/order/CWaimaiOrder.h

@@ -35,6 +35,7 @@ public:
 	void InitData(std::string order_id, std::string order_no);
 
 	bool ConfirmeOrder(std::string order_id);
+	bool SuccessOrder(std::string order_id);
 	bool FailOrder(std::string order_id, std::string reason);
 
 public:

+ 2 - 12
lewaimai_dispatch/tool/CLewaimaiLog.cpp

@@ -18,23 +18,13 @@ void CLewaimaiLog::Init()
 	//调试模式
 	helpers::LogLog::getLogLog()->setInternalDebugging(false);
 
-#ifdef _WIN32
 	SharedFileAppenderPtr append_1(
-		new RollingFileAppender(LOG4CPLUS_TEXT("../logs/lewaimai_dispatch.log"), 200 * 1024 * 1024, 100,
+		new RollingFileAppender(LOG4CPLUS_TEXT("log/pos.log"), 200 * 1024 * 1024, 100,
 			true, true));
 
 	SharedFileAppenderPtr append_2(
-		new RollingFileAppender(LOG4CPLUS_TEXT("../logs/lewaimai_dispatch_error.log"), 200 * 1024 * 1024, 100,
+		new RollingFileAppender(LOG4CPLUS_TEXT("log/pos_error.log"), 200 * 1024 * 1024, 100,
 			true, true));
-#else
-	SharedFileAppenderPtr append_1(
-		new RollingFileAppender(LOG4CPLUS_TEXT("/usr/local/lewaimai_dispatch/logs/lewaimai_dispatch.log"), 200 * 1024 * 1024, 100,
-			true, true));
-
-	SharedFileAppenderPtr append_2(
-		new RollingFileAppender(LOG4CPLUS_TEXT("/usr/local/lewaimai_dispatch/logs/lewaimai_dispatch_error.log"), 200 * 1024 * 1024, 100,
-			true, true));
-#endif
 
 	append_1->setName(LOG4CPLUS_TEXT("lewaimai_dispatch"));
 	append_1->setLayout(std::auto_ptr<Layout>(new PatternLayout(LOG4CPLUS_TEXT("%D{%Y-%m-%d %H:%M:%S}[%p] - %m [%l]%n"))));

+ 20 - 6
lewaimai_dispatch/wnd/CGameFrameWnd.cpp

@@ -183,8 +183,7 @@ void CGameFrameWnd::HandleClickMsg(TNotifyUI& msg)
 	}
 	else if (name == _T("waimai_order_list_print"))
 	{
-		//外卖订单的打印
-		CWaimaiOrderItemUI* item = static_cast<CWaimaiOrderItemUI*>(msg.pSender->GetParent());
+		CWaimaiOrderItemUI* item = static_cast<CWaimaiOrderItemUI*>(msg.pSender->GetParent()->GetParent());
 		std::string waimai_order_id = item->getOrderID();
 		std::string waimai_order_no = item->getOrderNo();
 
@@ -196,8 +195,7 @@ void CGameFrameWnd::HandleClickMsg(TNotifyUI& msg)
 	}
 	else if (name == _T("waimai_order_list_confirme"))
 	{
-		//外卖订单的打印
-		CWaimaiOrderItemUI* item = static_cast<CWaimaiOrderItemUI*>(msg.pSender->GetParent());
+		CWaimaiOrderItemUI* item = static_cast<CWaimaiOrderItemUI*>(msg.pSender->GetParent()->GetParent());
 		std::string waimai_order_id = item->getOrderID();
 
 		CWaimaiOrder order;
@@ -211,10 +209,26 @@ void CGameFrameWnd::HandleClickMsg(TNotifyUI& msg)
 			orderlist->RemoveAt(index);
 		}
 	}
+	else if (name == _T("waimai_order_list_success"))
+	{
+		CWaimaiOrderItemUI* item = static_cast<CWaimaiOrderItemUI*>(msg.pSender->GetParent()->GetParent());
+		std::string waimai_order_id = item->getOrderID();
+
+		CWaimaiOrder order;
+		bool ret = order.SuccessOrder(waimai_order_id);
+
+		if (ret)
+		{
+			//如果确认成功,将被确认的订单删除掉
+			OrderListUI* orderlist = static_cast<OrderListUI*>(m_pm.FindControl(_T("orderlist")));
+			int index = orderlist->GetItemIndex(item);
+			orderlist->RemoveAt(index);
+		}
+	}
 	else if (name == _T("waimai_order_list_fail"))
 	{
 		//外卖订单的打印
-		CWaimaiOrderItemUI* item = static_cast<CWaimaiOrderItemUI*>(msg.pSender->GetParent());
+		CWaimaiOrderItemUI* item = static_cast<CWaimaiOrderItemUI*>(msg.pSender->GetParent()->GetParent());
 		std::string waimai_order_id = item->getOrderID();
 
 		CWaimaiOrder order;
@@ -230,7 +244,7 @@ void CGameFrameWnd::HandleClickMsg(TNotifyUI& msg)
 	}
 	else if (name == _T("waimai_order_list_info"))
 	{
-		CWaimaiOrderItemUI* item = static_cast<CWaimaiOrderItemUI*>(msg.pSender->GetParent());
+		CWaimaiOrderItemUI* item = static_cast<CWaimaiOrderItemUI*>(msg.pSender->GetParent()->GetParent());
 		std::string waimai_order_id = item->getOrderID();
 		std::string waimai_order_no = item->getOrderNo();
 

+ 39 - 5
lewaimai_dispatch/wnd/CWaimaiOrderInfoUI.cpp

@@ -270,9 +270,43 @@ void CWaimaiOrderInfoUI::Refresh(CWaimaiOrder& order)
 	wstring wsPayType = _T("付款方式:") + CLewaimaiString::UTF8ToUnicode(order.m_pay_type);
 	pPayType->SetText(wsPayType.c_str());
 
-	CVerticalLayoutUI* pOrderinfoLayout = static_cast<CVerticalLayoutUI *>(this->FindSubControl(_T("waimai_order_info_page_orderlayout")));
-	int a = pOrderinfoLayout->GetSepHeight();
-	int b = pOrderinfoLayout->GetFixedHeight();
-	int c = pOrderinfoLayout->GetHeight();
-	int d = 1;
+	//右侧按钮的控制
+	CButtonUI* confirm_button = static_cast<CButtonUI *>(m_pManager->FindControl(_T("waimai_order_info_page_confirme")));
+	CButtonUI* success_button = static_cast<CButtonUI *>(m_pManager->FindControl(_T("waimai_order_info_page_success")));
+	CButtonUI* fail_button = static_cast<CButtonUI *>(m_pManager->FindControl(_T("waimai_order_info_page_fail")));
+
+	if (_tcscmp(CLewaimaiString::UTF8ToUnicode(order.m_order_status).c_str(), _T("未处理")) == 0)
+	{
+		confirm_button->SetVisible(true);
+		success_button->SetVisible(false);
+		fail_button->SetVisible(true);
+	}
+	else if (_tcscmp(CLewaimaiString::UTF8ToUnicode(order.m_order_status).c_str(), _T("已确认")) == 0)
+	{
+		confirm_button->SetVisible(false);
+		success_button->SetVisible(true);
+		fail_button->SetVisible(true);
+	}
+	else if (_tcscmp(CLewaimaiString::UTF8ToUnicode(order.m_order_status).c_str(), _T("交易成功")) == 0)
+	{
+		confirm_button->SetVisible(false);
+		success_button->SetVisible(false);
+		fail_button->SetVisible(false);
+	}
+	else if (_tcscmp(CLewaimaiString::UTF8ToUnicode(order.m_order_status).c_str(), _T("交易失败")) == 0)
+	{
+		confirm_button->SetVisible(false);
+		success_button->SetVisible(false);
+		fail_button->SetVisible(false);
+	}
+	else if (_tcscmp(CLewaimaiString::UTF8ToUnicode(order.m_order_status).c_str(), _T("已取消")) == 0)
+	{
+		confirm_button->SetVisible(false);
+		success_button->SetVisible(false);
+		fail_button->SetVisible(false);
+	}
+	else if (_tcscmp(CLewaimaiString::UTF8ToUnicode(order.m_order_status).c_str(), _T("退款中")) == 0)
+	{
+
+	}
 }

+ 0 - 15
lewaimai_dispatch/wnd/CWaimaiOrderInfoUI.h

@@ -13,21 +13,6 @@ public:
 	//刷新当前页面的内容,注意这个函数不会改变当前的订单状态以及“页数”
 	void DoEvent(TEventUI& event);
 
-	void SetStatus(int status)
-	{
-		m_status = status;
-	}
-
-	void SetPage(int n)
-	{
-		m_page = n;
-	}
-
 	//根据外卖订单数据,刷新订单详情页的显示
 	void Refresh(CWaimaiOrder& order);
-private:
-	int m_status = 1; //1:未处理 2:已确认 3:配送中 4:成功 5:失败 6:退款中
-	int m_page = 1;
-
-	int m_total_page; //总页数
 };

+ 76 - 0
lewaimai_dispatch/wnd/CWaimaiOrderItemUI.cpp

@@ -10,3 +10,79 @@ CWaimaiOrderItemUI::CWaimaiOrderItemUI()
 CWaimaiOrderItemUI::~CWaimaiOrderItemUI()
 {
 }
+
+void CWaimaiOrderItemUI::SetData(rapidjson::Value& orderinfo)
+{
+	m_name = orderinfo["customer_name"].GetString();
+	m_address = orderinfo["address"].GetString();
+	m_phone = orderinfo["customer_phone"].GetString();
+	m_price = orderinfo["price"].GetString();
+	m_order_no = orderinfo["order_no"].GetString();
+	m_init_date = orderinfo["init_date"].GetString();
+
+	m_is_selftake = orderinfo["is_selftake"].GetString();
+	m_delivery_date = orderinfo["delivery_date"].GetString();
+
+	m_restaurant_number = orderinfo["restaurant_number"].GetString();
+
+	m_orderid = orderinfo["id"].GetString();
+
+	std::wstring name_show = L"姓名:" + CLewaimaiString::UTF8ToUnicode(m_name);
+	this->FindSubControl(L"waimai_order_list_name")->SetText(name_show.c_str());
+
+	std::wstring address_show = L"地址:" + CLewaimaiString::UTF8ToUnicode(m_address);
+	this->FindSubControl(L"waimai_order_list_address")->SetText(address_show.c_str());
+
+	std::wstring phone_show = L"电话:" + CLewaimaiString::UTF8ToUnicode(m_phone);
+	this->FindSubControl(L"waimai_order_list_phone")->SetText(phone_show.c_str());
+
+	std::wstring price_show = L"价格:" + CLewaimaiString::UTF8ToUnicode(m_price);
+	this->FindSubControl(L"waimai_order_list_price")->SetText(price_show.c_str());
+
+	std::wstring order_no_show = L"#" + CLewaimaiString::UTF8ToUnicode(m_restaurant_number) + L"  订单号:" + CLewaimaiString::UTF8ToUnicode(m_order_no);
+	this->FindSubControl(L"waimai_order_list_order_no")->SetText(order_no_show.c_str());
+
+	std::wstring init_date_show = L"下单时间:" + CLewaimaiString::UTF8ToUnicode(m_init_date);
+	this->FindSubControl(L"waimai_order_list_init_date")->SetText(init_date_show.c_str());
+
+	std::wstring order_type;
+	std::wstring delivery_date;
+	if (m_is_selftake == "1")
+	{
+		order_type = L"订单类型:到店自取";
+		delivery_date = L"自取时间:" + CLewaimaiString::UTF8ToUnicode(m_delivery_date);
+	}
+	else
+	{
+		order_type = L"订单类型:外卖配送";
+		delivery_date = L"配送时间:" + CLewaimaiString::UTF8ToUnicode(m_delivery_date);
+	}
+
+	this->FindSubControl(L"waimai_order_list_type")->SetText(order_type.c_str());
+	this->FindSubControl(L"waimai_order_list_delivery_date")->SetText(delivery_date.c_str());
+
+	if (m_status == 1)
+	{
+		this->FindSubControl(L"waimai_order_list_confirme")->SetVisible(true);
+		this->FindSubControl(L"waimai_order_list_success")->SetVisible(false);
+		this->FindSubControl(L"waimai_order_list_fail")->SetVisible(true);
+	}
+	else if (m_status == 2 || m_status == 3)
+	{
+		this->FindSubControl(L"waimai_order_list_confirme")->SetVisible(false);
+		this->FindSubControl(L"waimai_order_list_success")->SetVisible(true);
+		this->FindSubControl(L"waimai_order_list_fail")->SetVisible(true);
+	}
+	else if (m_status == 4 || m_status == 5)
+	{
+		this->FindSubControl(L"waimai_order_list_confirme")->SetVisible(false);
+		this->FindSubControl(L"waimai_order_list_success")->SetVisible(false);
+		this->FindSubControl(L"waimai_order_list_fail")->SetVisible(false);
+	}
+	else if (m_status == 6)
+	{
+		this->FindSubControl(L"waimai_order_list_confirme")->SetVisible(false);
+		this->FindSubControl(L"waimai_order_list_success")->SetVisible(false);
+		this->FindSubControl(L"waimai_order_list_fail")->SetVisible(false);
+	}
+}

+ 15 - 31
lewaimai_dispatch/wnd/CWaimaiOrderItemUI.h

@@ -2,41 +2,13 @@
 
 #include "../pch/pch.h"
 
-class CWaimaiOrderItemUI : public CContainerUI
+class CWaimaiOrderItemUI : public CHorizontalLayoutUI
 {
 public:
 	CWaimaiOrderItemUI();
 	~CWaimaiOrderItemUI();
 
-	void SetData(rapidjson::Value& orderinfo)
-	{
-		m_name = orderinfo["customer_name"].GetString();
-		m_address = orderinfo["address"].GetString();
-		m_phone = orderinfo["customer_phone"].GetString();
-		m_price = orderinfo["price"].GetString();
-		m_order_no = orderinfo["order_no"].GetString();
-		m_init_date = orderinfo["init_date"].GetString();
-
-		m_orderid = orderinfo["id"].GetString();
-
-		std::wstring name_show = L"姓名:" + CLewaimaiString::UTF8ToUnicode(m_name);
-		this->FindSubControl(L"waimai_order_list_name")->SetText(name_show.c_str());
-
-		std::wstring address_show = L"地址:" + CLewaimaiString::UTF8ToUnicode(m_address);
-		this->FindSubControl(L"waimai_order_list_address")->SetText(address_show.c_str());
-
-		std::wstring phone_show = L"电话:" + CLewaimaiString::UTF8ToUnicode(m_phone);
-		this->FindSubControl(L"waimai_order_list_phone")->SetText(phone_show.c_str());
-
-		std::wstring price_show = L"价格:" + CLewaimaiString::UTF8ToUnicode(m_price);
-		this->FindSubControl(L"waimai_order_list_price")->SetText(price_show.c_str());
-
-		std::wstring order_no_show = L"订单号:" + CLewaimaiString::UTF8ToUnicode(m_order_no);
-		this->FindSubControl(L"waimai_order_list_order_no")->SetText(order_no_show.c_str());
-
-		std::wstring init_date_show = L"下单时间:" + CLewaimaiString::UTF8ToUnicode(m_init_date);
-		this->FindSubControl(L"waimai_order_list_init_date")->SetText(init_date_show.c_str());
-	}
+	void SetData(rapidjson::Value& orderinfo);
 
 	std::string getOrderID()
 	{
@@ -48,13 +20,18 @@ public:
 		return m_order_no;
 	}
 
+	void SetStatus(int status)
+	{
+		m_status = status;
+	}
+
 	void DoEvent(TEventUI& event)
 	{
 		if (event.Type == UIEVENT_BUTTONDOWN)
 		{
 			int a = 1;
 		}
-		CContainerUI::DoEvent(event);
+		CHorizontalLayoutUI::DoEvent(event);
 	}
 
 private:
@@ -65,6 +42,13 @@ private:
 	std::string m_order_no;
 	std::string m_init_date;
 
+	std::string m_is_selftake;
+	std::string m_delivery_date;
+
+	std::string m_restaurant_number;
+
 	std::string m_orderid;
+
+	int m_status = 1; //1:未处理 2:已确认 3:配送中 4:成功 5:失败 6:退款中
 };
 

+ 5 - 2
lewaimai_dispatch/wnd/OrderListUI.cpp

@@ -111,6 +111,8 @@ void OrderListUI::Refresh()
 		if (pDesk != NULL)
 		{
 			//初始化该对应的数据
+			pDesk->SetStatus(m_status);
+
 			pDesk->SetData(v_row_i);
 
 			this->Add(pDesk);
@@ -170,7 +172,7 @@ void OrderListUI::DoEvent(TEventUI& event)
 		}
 		else
 		{
-			CTileLayoutUI::DoEvent(event);
+			CListUI::DoEvent(event);
 		}
 		return;
 	}
@@ -286,5 +288,6 @@ void OrderListUI::DoEvent(TEventUI& event)
 		m_pManager->SetTimer(this, SCROLL_TIMERID, 50U);
 		return;
 	}
-	CTileLayoutUI::DoEvent(event);
+
+	CListUI::DoEvent(event);
 }

+ 2 - 2
lewaimai_dispatch/wnd/OrderListUI.h

@@ -5,14 +5,14 @@ inline double CalculateDelay(double state)
     return pow(state, 2);
 }
 
-class OrderListUI : public CTileLayoutUI
+class OrderListUI : public CListUI
 {
 public:
     enum { SCROLL_TIMERID = 10 };
 
     OrderListUI() : m_uButtonState(0), m_dwDelayDeltaY(0), m_dwDelayNum(0), m_dwDelayLeft(0)
     {
-        SetItemSize(CSize(1000, 200));
+        //SetItemSize(CSize(1000, 200));
     }
 
     //刷新当前页面的内容,注意这个函数不会改变当前的订单状态以及“页数”

+ 2 - 1
lewaimai_pathplanning/lewaimai_pathplanning_windows.vcxproj

@@ -136,7 +136,8 @@ copy $(ProjectDir)conf\ $(SolutionDir)bin\$(Platform)\$(Configuration)\conf\</Co
       <AdditionalOptions>/ignore:4099 %(AdditionalOptions)</AdditionalOptions>
       <IgnoreAllDefaultLibraries>
       </IgnoreAllDefaultLibraries>
-      <IgnoreSpecificDefaultLibraries>/NODEFAULTLIB:LIBCMTD</IgnoreSpecificDefaultLibraries>
+      <IgnoreSpecificDefaultLibraries>
+      </IgnoreSpecificDefaultLibraries>
     </Link>
     <PostBuildEvent>
       <Command>mkdir $(SolutionDir)bin\$(Platform)\$(Configuration)\$(ProjectName)\