From b520858b7365095ec5926b7c1a16e4396d507747 Mon Sep 17 00:00:00 2001
From: LiFan <2308045698@qq.com>
Date: 星期三, 10 七月 2024 11:25:36 +0800
Subject: [PATCH] update

---
 jrj/project/business/Enquiry/EnquiryEx.quote.vx.cpp |  168 ++++++++++++++++++++++++++++++-------------------------
 1 files changed, 91 insertions(+), 77 deletions(-)

diff --git a/jrj/project/business/Enquiry/EnquiryEx.quote.vx.cpp b/jrj/project/business/Enquiry/EnquiryEx.quote.vx.cpp
index 0885ef1..69cb74c 100644
--- a/jrj/project/business/Enquiry/EnquiryEx.quote.vx.cpp
+++ b/jrj/project/business/Enquiry/EnquiryEx.quote.vx.cpp
@@ -1,31 +1,44 @@
-use "xcontrol.vframe.vbusiness.vd"
-use "xbase.vframe.vbusiness.vd"
-use "base.view.vd"
+#include <wobject/xstring.hpp>
+#include <xcontrol/xtreeview.hpp>
+#include <xcontrol/xdwgrid.hpp>
+#include <wobject/xdouble.hpp>
+#include <xcontrol/xlayersheet.hpp>
+#include <xcontrol/xdatetimepick.hpp>
 
-unit trade
-[
-	class EnquiryExQuoteWin : public frame
+#include "vbusiness/vframe/listwin.vframe.vbusiness.hpp"
+#include "viewobject/view.base.hpp"
+
+using xml = KXMLDOMDocument;
+	class __declspec(dllexport) EnquiryExQuoteWin : public xframe
 	{
+	public:
 		xdwgrid	dw_list;
 		xnode	m_agentNode;	//Agent Condition
 
-
+	public:
+		EnquiryExQuoteWin(void* implPtr, HWND hWnd) :xframe(implPtr, hWnd) {}
+	public:
+		static EnquiryExQuoteWin* CreateInstance(void* implPtr, void* hWnd)
+		{
+			EnquiryExQuoteWin* pWin = new EnquiryExQuoteWin(implPtr, (HWND)hWnd);
+			return pWin;
+		}
 		int SetAgent()
 		{
-			string xfNodeAgentArea = "agentarea";
+			xstring xfNodeAgentArea = L"agentarea";
 			xnode anode = GetAgentNode(xfNodeAgentArea);
 			if (m_agentNode)
 			{
-				SetAgentNodeContent(anode, m_agentNode);
+				SetAgentNode(anode, m_agentNode);
 			}
 			else
 			{
-				msxml::IXMLDOMElement xframeElement = GetElement();
-				msxml::IXMLDOMElement agent = xframeElement.selectSingleNode("agent/" + xfNodeAgentArea + "[1]/*");
+				KXMLDOMElement xframeElement = GetElement();
+				KXMLDOMElement agent = xframeElement.selectSingleNode(L"agent/" + xfNodeAgentArea + L"[1]/*");
 				if (agent)
 				{
-					string s = agent.xml;
-					m_agentNode = SetAgentNodeContent(anode, s);
+					xstring s = agent.xml();
+					m_agentNode = SetAgentNode(anode, s);
 				}
 			}
 			return 1;
@@ -34,19 +47,19 @@
 		int  OnSearch()
 		{
 
-			xml x = new xml;
-			string EnquiryNo;
-			x.setNativePointer(xml::CreateInstance());
-			xaserverarg arg = GetParam();
-			xcontrol QuoteNo = GetControl("QuoteNo");
+			xml x ;
+			xstring EnquiryNo;
+			
+			xaserverarg arg;
+			xcontrol QuoteNo = GetControl(L"QuoteNo");
 			EnquiryNo = QuoteNo.GetText();
 
 			//alert(EnquiryNo);
 
-			//string PartyID = arg.GetArgString("PartyID");
-			//x = ViewObject::RetrieveData("/sale/data/Customerv3/entity/XmShare");
+			//xstring PartyID = arg.GetArgString(L"PartyID");
+			//x = ViewObject::RetrieveData(L"/sale/data/Customerv3/entity/XmShare");
 
-			x = ViewObject::RetrieveData("/sale/data/Quote3/maint", "id", EnquiryNo);
+			x = ViewObject::RetrieveData(L"/sale/data/Quote3/maint", L"id", EnquiryNo);
 			if (x)dw_list.Retrieve(x);
 			dw_list.SetReadOnly(true);
 			dw_list.Redraw();
@@ -55,7 +68,7 @@
 		}
 
 		//焦点激活处理函数
-		int OnSetFocus(ref TEvent evt, int param)
+		int OnSetFocus(TEvent* evt, LPARAM param)
 		{
 			//重置工具条
 			SetAgent();
@@ -64,95 +77,95 @@
 
 		int OnSaveAs()
 		{
-			int i = dw_list.SaveAs("");
+			int i = dw_list.SaveAs(L"");
 			if (i == 1)
-				alert("导出成功");
+				alert(L"导出成功");
 			return 1;
 		}
 
 		int OnMatch()
 		{
-			xaserverarg arg = new xaserverarg;
-			arg.setNativePointer(arg.CreateInstance());
+			xaserverarg arg;
+			
 			int row = dw_list.GetNextSelectRow(1);
-			string items = "";
+			xstring items = L"";
 			while (row > 0 && row <= dw_list.GetRowCount())
 			{
-				msxml::IXMLDOMElement e = dw_list.GetRowElement(row);
-				string id = e.selectSingleNode("@guid").text;
+				KXMLDOMElement e = dw_list.GetRowElement(row);
+				xstring id = e.selectSingleNode(L"@guid").text();
 
-				if (items == "")
+				if (items == L"")
 					items = id;
 				else
-					items += "," + id;
+					items += L",L" + id;
 				row = dw_list.GetNextSelectRow(row + 1);
 			}
-			xml x = ViewObject::RetrieveData("/sale/data/Enquiry/Update/UpdateQuoteLine", "ItemList", items);
+			xml x = ViewObject::RetrieveData(L"/sale/data/Enquiry/Update/UpdateQuoteLine", L"ItemList", items);
 			OnSearch();
 			return 1;
 		}
 
 		int OnPriceListSupplierEx()
 		{
-			xaserverarg arg = new xaserverarg;
-			arg.setNativePointer(arg.CreateInstance());
-			arg.AddArg("sheetname", "tab_list2");
-			arg.AddArg("EntityName", "Enquiry3");
-			arg.AddArg("EntityID", "");
-			arg.AddArg("EntityNo", "");
-			arg.AddArg("Source", "quote");
-			arg.AddArg("QuoteNo", GetControl("QuoteNo").GetText());
+			xaserverarg arg;
+			
+			arg.AddArg(L"sheetname", L"tab_list2");
+			arg.AddArg(L"EntityName", L"Enquiry3");
+			arg.AddArg(L"EntityID", L"");
+			arg.AddArg(L"EntityNo", L"");
+			arg.AddArg(L"Source", L"quote");
+			arg.AddArg(L"QuoteNo", xcontrol(GetControl(L"QuoteNo")).GetText());
 
 			int row = dw_list.GetNextSelectRow(1);
-			string items = "";
+			xstring items = L"";
 			//while(row > 0 && row <= dw_list.GetRowCount())
 			for (row = 1; row <= dw_list.GetRowCount(); row++)
 			{
-				msxml::IXMLDOMElement e = dw_list.GetRowElement(row);
-				string id = e.selectSingleNode("@guid").text;
+				KXMLDOMElement e = dw_list.GetRowElement(row);
+				xstring id = e.selectSingleNode(L"@guid").text();
 
-				if (items == "")
+				if (items == L"")
 					items = id;
 				else
-					items += "," + id;
+					items += L",L" + id;
 				//row =  dw_list.GetNextSelectRow(row + 1);
 			}
-			arg.AddArg("EntityIDList", items);
-			int p = arg.ptr_native_;
-			OpenWindow("dev:xpage[Enquiry.maint.vx]", p);
+			arg.AddArg(L"EntityIDList", items);
+		
+			OpenWindow(L"dev:xpage[Enquiry.maint.vx]", arg);
 			return 1;
 		}
 
 		//命令发布函数
-		int OnCmdDispatch(string comdid)
+		int OnCmdDispatch(xstring comdid)
 		{
-			if (comdid == "xmClose")
+			if (comdid == L"xmClose")
 			{
 				CloseWindow();
 				return 1;
 			}
-			if (comdid == "xmSearch")
+			if (comdid == L"xmSearch")
 			{
 				OnSearch();
 				return 1;
 			}
-			if (comdid == "xmMatch")
+			if (comdid == L"xmMatch")
 			{
 				OnMatch();
 				return 1;
 			}
-			if (comdid == "xmMaint")
+			if (comdid == L"xmMaint")
 			{
 				//win32::HideWindow(1);
 				OnPriceListSupplierEx();
 				CloseWindow();
 				return 1;
 			}
-			if (comdid == "xmSave")
+			if (comdid == L"xmSave")
 			{
 				return 1;
 			}
-			if (comdid == "xmSaveAs")
+			if (comdid == L"xmSaveAs")
 			{
 				return OnSaveAs();
 			}
@@ -160,29 +173,30 @@
 		}
 
 		//命令处理事件
-		int OnXCommand(ref TXCommandEvent evt, int param)
+		int OnXCommand(TEvent* evt, LPARAM param)
 		{
-			return OnCmdDispatch(evt.pStrID);
+			return OnCmdDispatch(evt->xcommand.pStrID);
 		}
 
 		int OnAttachEvent()
 		{
 			//绑定工具条点击事件
-			AttachEvent("WM_XCOMMAND", OnXCommand);
+			AttachEvent(L"WM_XCOMMAND", (FEvent)&EnquiryExQuoteWin::OnXCommand);
 			//获取焦点事件,用于重置工具条
-			AttachEvent("WM_SETFOCUS", OnSetFocus);
+			AttachEvent(L"WM_SETFOCUS", (FEvent)&EnquiryExQuoteWin::OnSetFocus);
+			return 1;
 		}
 
 		/*int  OnRetrieve()
 		{
-			xml x = new xml;
-			x.setNativePointer(xml::CreateInstance());
-			xaserverarg arg = new xaserverarg;
-			arg.setNativePointer(arg.CreateInstance());
-			arg.AddArg("xxx","xxx");
-			if (getUrl("",arg.GetString(),x)!=1)
+			xml x ;
+			
+			xaserverarg arg;
+			
+			arg.AddArg(L"xxx",L"xxx");
+			if (getUrl(L"",arg.GetString(),x)!=1)
 			{
-				trace(x.GetXmlDoc().text);
+				trace(x.text());
 				return -1;
 			}else
 			{
@@ -196,21 +210,22 @@
 
 		int onload()
 		{
-			dw_list = GetControl("dw_list");
-			dw_list.openUrl("/sale/view/Quote3/template/item/pricelist");
-			dw_list.SetColumnState("ItemID", false);
-			dw_list.SetColumnState("Picture", false);
-			dw_list.SetColumnState("category", false);
-			dw_list.SetColumnState("RealEnquiryLineID", false);
-			dw_list.SetColumnState("RelEnquiryLineID", false);
+			SetArg();
+			dw_list = GetControl(L"dw_list");
+			dw_list.openUrl(L"/sale/view/Quote3/template/item/pricelist");
+			dw_list.SetColumnState(L"ItemID", false);
+			dw_list.SetColumnState(L"Picture", false);
+			dw_list.SetColumnState(L"category", false);
+			dw_list.SetColumnState(L"RealEnquiryLineID", false);
+			dw_list.SetColumnState(L"RelEnquiryLineID", false);
 
 			dw_list.SetSelectionMode(3);
 
-			if (GetParam())
+			if (GetWinParam())
 			{
-				string no = GetParam();
+				xstring no = GetWinParam();
 
-				GetControl("QuoteNo").SetText(no);
+				xcontrol(GetControl(L"QuoteNo")).SetText(no);
 				OnSearch();
 			}
 
@@ -226,4 +241,3 @@
 			return 1;
 		}
 	};
-]
\ No newline at end of file

--
Gitblit v1.9.3