From 0b8444d0eef50d1ee4e0d0b51e174fa5b447d802 Mon Sep 17 00:00:00 2001
From: xj qian <qianxj15@sina.com>
Date: 星期三, 17 七月 2024 17:50:35 +0800
Subject: [PATCH] base code

---
 jrj/project/business/Product.list.cpp |   60 +++++++++++++++++++++++++++++++++---------------------------
 1 files changed, 33 insertions(+), 27 deletions(-)

diff --git a/jrj/project/business/Product.list.cpp b/jrj/project/business/Product.list.cpp
index 6311956..ca9b3d6 100644
--- a/jrj/project/business/Product.list.cpp
+++ b/jrj/project/business/Product.list.cpp
@@ -731,7 +731,7 @@
 		//alert(id);
 
 		HTREEITEM hItem = tv_folder.GetSelectedItem();
-		KXMLDOMElement& e1 = *(KXMLDOMElement * )tv_folder.GetItemData(hItem);
+		KXMLDOMElement e1 = tv_folder.GetItemData(hItem);
 		xstring categoryid = e1.selectSingleNode(L"@guid").text();
 		//alert(categoryid);
 		xaserverarg* arg = new xaserverarg;
@@ -746,7 +746,7 @@
 	int ItemMaint()
 	{
 		HTREEITEM hItem = tv_folder.GetSelectedItem();
-		KXMLDOMElement& e = *(KXMLDOMElement * )tv_folder.GetItemData(hItem);
+		KXMLDOMElement e = tv_folder.GetItemData(hItem);
 		//xstring no = e.getAttribute(L"no");
 		//if(no==L"") return 1;
 		xstring guid = e.getAttribute(L"guid");
@@ -777,7 +777,7 @@
 		HTREEITEM hTopItem = LookupTopFolder(hItem);
 		xstring name = tv_folder.GetItemLabel(hTopItem);
 
-		KXMLDOMElement& e = *(KXMLDOMElement*)tv_folder.GetItemData(hItem);
+		KXMLDOMElement e = tv_folder.GetItemData(hItem);
 		//alert(e.xml);
 		/*xstring no = e.getAttribute(L"no");
 		if(no==L"") return 1;
@@ -821,7 +821,7 @@
 		xaserverarg arg;
 		if (hItem != hTopItem)
 		{
-			KXMLDOMElement& e = *(KXMLDOMElement*)tv_folder.GetItemData(hItem);
+			KXMLDOMElement e = tv_folder.GetItemData(hItem);
 			xstring folder = e.getAttribute(L"guid");
 			if (folder != L"")
 			{
@@ -858,7 +858,7 @@
 		if (name == L"个人库" && selectname == L"新产品" && tv_folder.GetParentItem(hItem) == hTopItem) return 1;
 		if (hItem != hTopItem)
 		{
-			KXMLDOMElement& e = *(KXMLDOMElement*)tv_folder.GetItemData(hItem);
+			KXMLDOMElement e = tv_folder.GetItemData(hItem);
 			xstring folder = e.getAttribute(L"guid");
 			if (folder != L"")
 			{
@@ -1112,12 +1112,12 @@
 		int len = nlist.length();
 		for (int i = 0; i < len; i++)
 		{
-			KXMLDOMElement& e = *new KXMLDOMElement(nlist.item(i));
+			KXMLDOMElement e = nlist.item(i);
 			xstring name = e.getAttribute(L"CName");
 			xstring no = e.getAttribute(L"CategoryNo");
 			xstring label = no.trim() + L" " + name;
 
-			HTREEITEM h = tv_folder.InsertChildItem(hItem, label, (LPARAM)& e, 15);
+			HTREEITEM h = tv_folder.InsertChildItem(hItem, label, e, 15);
 			xstring child = e.getAttribute(L"Childs");
 			if (child == L"")
 				tv_folder.SetItemChild(h, 1);
@@ -1137,12 +1137,12 @@
 		int len = nlist.length();
 		for (int i = 0; i < len; i++)
 		{
-			KXMLDOMElement& e = * new KXMLDOMElement(nlist.item(i));
+			KXMLDOMElement e = nlist.item(i);
 			xstring name = e.getAttribute(L"CName");
 			xstring no = e.getAttribute(L"CategoryNo");
 			xstring label = no.trim() + L" " + name;
 
-			HTREEITEM h = tv_folder.InsertChildItem(hItem, label, (LPARAM)&e, 15);
+			HTREEITEM h = tv_folder.InsertChildItem(hItem, label, e, 15);
 			xstring child = e.getAttribute(L"Childs");
 			if (child == L"")
 				tv_folder.SetItemChild(h, 1);
@@ -1160,9 +1160,9 @@
 		if (len > 0) tv_folder.SetItemChild(hItem, 1);
 		for (int i = 0; i < len; i++)
 		{
-			KXMLDOMElement& e = *new KXMLDOMElement(nlist.item(i));
+			KXMLDOMElement e = nlist.item(i);
 			xstring name = e.getAttribute(L"name");
-			HTREEITEM h = tv_folder.InsertChildItem(hItem, name, (LPARAM) & e, image);
+			HTREEITEM h = tv_folder.InsertChildItem(hItem, name, e, image);
 			ExpandCatChildFolder(h, e, 35);
 		}
 		return 1;
@@ -1175,9 +1175,9 @@
 		int len = nlist.length();
 		for (int i = 0; i < len; i++)
 		{
-			KXMLDOMElement& e = *new KXMLDOMElement(nlist.item(i));
+			KXMLDOMElement e = nlist.item(i);
 			xstring name = e.getAttribute(L"name");
-			HTREEITEM h = tv_folder.InsertChildItem(hItem, name, (LPARAM)&e, 35);
+			HTREEITEM h = tv_folder.InsertChildItem(hItem, name, e, 35);
 			ExpandCatChildFolder(h, e, 35);
 		}
 		return 1;
@@ -1189,19 +1189,19 @@
 		xstring name = tv_folder.GetItemLabel(hTopItem);
 		HTREEITEM child = tv_folder.GetChildItem(hItem);
 		xstring no = L"";
-		KXMLDOMElement* e=nullptr;
+		KXMLDOMElement e;
 		if (name == L"公司库" && !child)
 		{
 			no = L"";
 			if (hTopItem != hItem)
 			{
-				e = (KXMLDOMElement * )tv_folder.GetItemData(hItem);
-				no = e->getAttribute(L"categoryid");
+				e = tv_folder.GetItemData(hItem);
+				no = e.getAttribute(L"categoryid");
 			}
 			else
 			{
-				e = (KXMLDOMElement*)tv_folder.GetItemData(hItem);
-				no = e->getAttribute(L"categoryid");
+				e = tv_folder.GetItemData(hItem);
+				no = e.getAttribute(L"categoryid");
 			}
 			MakeGoodsFolderItem(hItem, no);
 		}
@@ -1210,8 +1210,8 @@
 			no = L"";
 			if (hTopItem != hItem)
 			{
-				e = (KXMLDOMElement*)tv_folder.GetItemData(hItem);
-				no = e->getAttribute(L"categoryid");
+				e = tv_folder.GetItemData(hItem);
+				no = e.getAttribute(L"categoryid");
 				MakeUserGoodsFolderItem(hItem, no);
 			}
 		}
@@ -1245,7 +1245,7 @@
 	{
 		while (true)
 		{
-			KXMLDOMElement& e1 = *(KXMLDOMElement*)tv_folder.GetItemData(hItem);
+			KXMLDOMElement e1 = tv_folder.GetItemData(hItem);
 			xstring str = e1.getAttribute(L"no");
 			if (str.find(L"Customer:") >= 0) return hItem;
 			hItem = tv_folder.GetParentItem(hItem);
@@ -1258,7 +1258,7 @@
 	{
 		hItem = LookupCustomerFolder(hItem);
 		if (hItem == 0) return L"";
-		KXMLDOMElement& e1 = *(KXMLDOMElement*)tv_folder.GetItemData(hItem);
+		KXMLDOMElement e1 = tv_folder.GetItemData(hItem);
 		xstring str = e1.getAttribute(L"no");
 		return str.mid(xstring(L"Customer:").length(), 9999);
 	}
@@ -1300,7 +1300,7 @@
 		{
 			if (selectname != name)
 			{
-				KXMLDOMElement& e1 = *(KXMLDOMElement*)tv_folder.GetItemData(hItem);
+				KXMLDOMElement e1 = tv_folder.GetItemData(hItem);
 				xstring str = e1.getAttribute(L"no");
 				alert(str);
 				if (str.find(L"Customer:") == 0 || str.find(L"SO:") == 0)
@@ -1366,9 +1366,11 @@
 
 				if (hItem != hTopItem)
 				{
-					KXMLDOMElement& e = *(KXMLDOMElement*)tv_folder.GetItemData(hItem);
+					KXMLDOMElement e = tv_folder.GetItemData(hItem);
 					no = e.getAttribute(L"guid");
 				}
+				else
+					return 1;
 
 				/*	dw_list.SetDataObject(ProductLibraryView::GetMaintListForm3(no).GetXmlDoc());
 					dw_list = GetControl(L"dw_list");
@@ -1389,7 +1391,10 @@
 							dw_list.Retrieve(ProductLibraryView::GetMaintList3(no, queryString, L""));
 					}
 					else
+					{
+						if (no == L"N000005") return 1;
 						dw_list.Retrieve(ProductLibraryView::GetMaintList3(no));
+					}
 				}
 				//dw_list.PostRetrieve();
 				dw_list.Redraw();
@@ -1456,7 +1461,7 @@
 			xstring sImage = e.getAttribute(L"image");
 			int image = 15;
 			//if(sImage) image = sImage.toInt();
-			HTREEITEM h = tv_folder.InsertChildItem(hItem, name, (LPARAM) & e, image);
+			HTREEITEM h = tv_folder.InsertChildItem(hItem, name, e, image);
 			tv_folder.SetItemChild(h, 1);
 			ExpandChildFolder(h, e);
 		}
@@ -1521,14 +1526,15 @@
 		dwc_list.openUrl(L"/sale/view/ProductLibrary/template/cart/goodslist");
 		dwc_list.SetReadOnly(true);
 
+		tv_folder.ExpandItem(tv_folder.GetRootItem());
+		tv_folder.ItemFocus(tv_folder.GetRootItem());
+
 		if (dw_list.GetRowCount())
 		{
 			xshtml xs = GetControl(L"html_detail");
 			xs.SetContent(makeHtml(1));
 		}
 
-		tv_folder.ExpandItem(tv_folder.GetRootItem());
-		tv_folder.ItemFocus(tv_folder.GetRootItem());
 		return 1;
 	}
 

--
Gitblit v1.9.3