From bbb854310857eb994c107fb0b42a44121d2d09cc Mon Sep 17 00:00:00 2001
From: xj qian <qianxj15@sina.com>
Date: 星期四, 25 七月 2024 11:27:11 +0800
Subject: [PATCH] Merge branch 'master' of http://116.62.18.175:6699/r/mis-prj

---
 jrj/project/business/Enquiry/Entity.Product.Select.cpp |  150 +++++++++++++++++++++++++------------------------
 1 files changed, 77 insertions(+), 73 deletions(-)

diff --git a/jrj/project/business/Enquiry/Entity.Product.Select.cpp b/jrj/project/business/Enquiry/Entity.Product.Select.cpp
index 499ca5b..99ce155 100644
--- a/jrj/project/business/Enquiry/Entity.Product.Select.cpp
+++ b/jrj/project/business/Enquiry/Entity.Product.Select.cpp
@@ -28,8 +28,8 @@
 		xdwgrid	dwc_list;
 
 		//产品缓存对象
-		xdataset g_xdoc_product;
-		xdataset g_xdoc_shoppingcart;
+		//xdataset dw_list;
+		//xdataset dwc_list;
 
 		xcombobox  cbx_goodscar;
 		//是否多选
@@ -101,7 +101,7 @@
 		{
 			if (row < 1) row = dwc_list.GetRow();
 			if (row < 1 || row > dwc_list.GetRowCount()) return KXMLDOMElement();
-			KXMLDOMElement e = g_xdoc_shoppingcart.getRowElement(L"data/Item", row);
+			KXMLDOMElement e = dwc_list.GetRowElement(row);
 			return e;
 		}
 
@@ -189,7 +189,7 @@
 			xs.SetContent(html);
 			xs.Redraw();
 
-			xstring id = g_xdoc_product.getData(0, L"data/Item", row, L"@guid");
+			xstring id = dw_list.GetItemString(row, L"@guid");
 			OnShowImage(id);
 
 			return 1;
@@ -204,10 +204,10 @@
 			xstring html = makeGoodscarHtml(row);
 			xs.SetContent(html);
 			xs.Redraw();
-			xstring id = g_xdoc_shoppingcart.getData(0, L"data/Item", row, L"SKUID");
+			xstring id = dwc_list.GetItemString(row, L"SKUID");
 			if (m_customer != L"")
 			{
-				xstring customerItemNo = g_xdoc_shoppingcart.getData(0, L"data/Item", row, L"CustomerItemNo");
+				xstring customerItemNo = dwc_list.GetItemString(row, L"CustomerItemNo");
 				OnShowImage(id, customerItemNo);
 			}
 			else
@@ -218,18 +218,22 @@
 			return 1;
 		}
 
+#if 0
+
+
+
 		int DeleteRow(int row)
 		{
 			int IDOK = 1;
 			int MB_OKCANCEL = 1;
 			int MB_ICONQUESTION = 32;
 			if (MessageBox(GetHWND(), L"确认删除指定的项,删除后将不能恢复?", L"提示", MB_OKCANCEL | MB_ICONQUESTION) != IDOK) return 1;
-			xstring id = g_xdoc_product.getData(0, L"data/Item", row, L"@guid");
+			xstring id = dw_list.GetItemString(row, L"@guid");
 
 			if (ProductLibraryView::DeleteItem(id) == 1)	dw_list.DeleteRow(0);
 			return 1;
 		}
-
+#endif // 0
 		int SetSelectState(xdwgrid dw_obj, int state)
 		{
 			dw_obj.SetSelectionMode(3);
@@ -279,9 +283,9 @@
 			if (row < 1) row = dw_list.GetRow();
 			if (row < 1 || row > dw_list.GetRowCount()) return 0;
 
-			KXMLDOMElement e = g_xdoc_product.getRowElement(L"data/Item", row);
-			xstring skuid = g_xdoc_product.getData(0, L"data/Item", row, L"@guid");
-			xstring SKUNo = g_xdoc_product.getData(0, L"data/Item", row, L"SKUNo");
+			KXMLDOMElement e = dw_list.GetRowElement(row);
+			xstring skuid = dw_list.GetItemString(row, L"@guid");
+			xstring SKUNo = dw_list.GetItemString(row, L"SKUNo");
 			xstring id = ViewObject::GetGuid();
 			xstring ret1 = Up(id);
 			if (ret1 == L"-1") return -1;
@@ -331,11 +335,11 @@
 			if (row < 1) row = dwc_list.GetRow();
 			if (row < 1 || row > dwc_list.GetRowCount()) return 0;
 
-			KXMLDOMElement e = g_xdoc_shoppingcart.getRowElement(L"data/Item", row);
-			xstring skuid = g_xdoc_shoppingcart.getData(0, L"data/Item", row, L"SKUID");
-			xstring SKUNo = g_xdoc_shoppingcart.getData(0, L"data/Item", row, L"SKUID/@__displaystring");
+			KXMLDOMElement e = dwc_list.GetRowElement(row);
+			xstring skuid = dwc_list.GetItemString(row, L"SKUID");
+			xstring SKUNo = dwc_list.GetItemString(row, L"SKUID/@__displaystring");
 			CustomerID = m_customer;
-			xstring CustomerItemNo = g_xdoc_shoppingcart.getData(0, L"data/Item", row, L"CustomerItemNo");
+			xstring CustomerItemNo = dwc_list.GetItemString(row, L"CustomerItemNo");
 			xstring id = ViewObject::GetGuid();
 			xstring ret1 = Up(id);
 			if (ret1 == L"-1") return -1;
@@ -420,10 +424,10 @@
 				dwc_list.Redraw();
 			}
 
-			xstring skuid = g_xdoc_shoppingcart.getData(0, L"data/Item", row, L"SKUID");
-			xstring SKUNo = g_xdoc_shoppingcart.getData(0, L"data/Item", row, L"SKUID/@__displaystring");
+			xstring skuid = dwc_list.GetItemString(row, L"SKUID");
+			xstring SKUNo = dwc_list.GetItemString(row, L"SKUID/@__displaystring");
 			CustomerID = m_customer;
-			xstring CustomerItemNo = g_xdoc_shoppingcart.getData(0, L"data/Item", row, L"CustomerItemNo");
+			xstring CustomerItemNo = dwc_list.GetItemString(row, L"CustomerItemNo");
 			OnShowImage(skuid, CustomerItemNo);
 
 			return 1;
@@ -469,7 +473,7 @@
 				dw_list.Redraw();
 			}
 
-			KXMLDOMElement e1 = g_xdoc_product.getRowElement(L"data/Item", row);
+			KXMLDOMElement e1 = dw_list.GetRowElement(row);
 			xstring skuid = e1.getAttribute(L"guid");
 			OnShowImage(skuid);
 
@@ -509,7 +513,7 @@
 
 		xstring makeHtml(int row)
 		{
-			xstring id = g_xdoc_product.getData(0, L"data/Item", row, L"@guid");
+			xstring id = dw_list.GetItemString(row, L"@guid");
 			xml x = GetGoodsPropList(id);
 			xml x1 = GetGoodsPropListEx(id);
 
@@ -541,7 +545,7 @@
 				{
 					name = fieldsEx.item(i).selectSingleNode(L"@name").text();
 					label = fieldsEx.item(i).selectSingleNode(L"@label").text();
-					ls_item += L"<td>" + label + L"</td>" + L"<td style='text-align:center'>" + g_xdoc_product.getData(0, L"data/Item", row, name) + L"</td>";
+					ls_item += L"<td>" + label + L"</td>" + L"<td style='text-align:center'>" + dw_list.GetItemString(row, name) + L"</td>";
 					cnt++;
 					i++;
 					if (i == len)break;
@@ -577,7 +581,7 @@
 						if (i >= len)count = 2;
 						continue;
 					}
-					else if (g_xdoc_product.getData(0, L"data/Item", row, name) == L"")
+					else if (dw_list.GetItemString(row, name) == L"")
 					{
 						KXMLDOMNodeList options = fields.item(i).selectNodes(L"item");
 						int tlen = options.length();
@@ -594,7 +598,7 @@
 					}
 					else
 					{
-						ls_item = L"<td>" + label + L"</td>" + L"<td>" + g_xdoc_product.getData(0, L"data/Item", row, name) + L"</td>";
+						ls_item = L"<td>" + label + L"</td>" + L"<td>" + dw_list.GetItemString(row, name) + L"</td>";
 						count++;
 					}
 					i++;
@@ -623,10 +627,10 @@
 				html += L"<div ><span style='margin-left:8px;margin-right:16px;font-weight:400;font-size:10pt' >" + dw_list.GetItemString(row, L"PackTerm") + L"</span></div>";
 			}
 
-			if (g_xdoc_product.getData(0, L"data/Item", row, L"Remark") != L"" && id == L"23A8BBA2-DEF1-4C00-978E-646151A6082E")
+			if (dw_list.GetItemString(row, L"Remark") != L"" && id == L"23A8BBA2-DEF1-4C00-978E-646151A6082E")
 			{
 				html += L"<div ><span style='font-weight:700;width:50;font-size:10pt'  >备注:</span></div>";
-				html += L"<div ><span style='margin-left:8px;margin-right:16px;font-weight:400;font-size:10pt' >" + g_xdoc_product.getData(0, L"data/Item", row, L"Remark") + L"</span></div>";
+				html += L"<div ><span style='margin-left:8px;margin-right:16px;font-weight:400;font-size:10pt' >" + dw_list.GetItemString(row, L"Remark") + L"</span></div>";
 			}
 
 			html += L"<div style='height:24px'/>";
@@ -676,24 +680,24 @@
 				if (i == 0)
 					html += L"<td rowspan='" + xstring(len) + L"'>" + No + L"</td><td >" + label + L"</td><td >" + L"</td>";
 				else
-					html += L"<td >" + label + L"</td><td >" + g_xdoc_shoppingcart.getData(0, L"data/Item", row, name) + L"</td>";
+					html += L"<td >" + label + L"</td><td >" + dwc_list.GetItemString(row, name) + L"</td>";
 				html += L"</tr>";
 			}
 
 			html += L"<tr>";
-			html += L"<td rowspan='3'>" + g_xdoc_shoppingcart.getData(0, L"data/Item", row, L"PackCode") + L"</td><td >包装方式</td><td >" +
-				g_xdoc_shoppingcart.getData(0, L"data/Item", row, L"CPack") + L"</td>";
+			html += L"<td rowspan='3'>" + dwc_list.GetItemString(row, L"PackCode") + L"</td><td >包装方式</td><td >" +
+				dwc_list.GetItemString(row, L"CPack") + L"</td>";
 			html += L"</tr>";
 			html += L"<tr height='48'>";
-			html += L"<td >包装要求</td><td >" + g_xdoc_shoppingcart.getData(0, L"data/Item", row, L"PackQualityTerm") + L"</td>";
+			html += L"<td >包装要求</td><td >" + dwc_list.GetItemString(row, L"PackQualityTerm") + L"</td>";
 			html += L"</tr>";
 			html += L"<tr>";
 			html += L"<td >侧唛</td><td ></td>";
 			html += L"</tr>";
 
 			html += L"<tr height='72'>";
-			html += L"<td>" + g_xdoc_shoppingcart.getData(0, L"data/Item", row, L"QualityCode") + L"</td><td >质量要求</td><td >" +
-				g_xdoc_shoppingcart.getData(0, L"data/Item", row, L"QualityTerm") + L"</td>";
+			html += L"<td>" + dwc_list.GetItemString(row, L"QualityCode") + L"</td><td >质量要求</td><td >" +
+				dwc_list.GetItemString(row, L"QualityTerm") + L"</td>";
 			html += L"</tr>";
 
 			html += L"</table>";
@@ -748,7 +752,7 @@
 			dw_list.Redraw();
 			impStr = L"";
 
-			SendMessage(hObject, 0x401, (LPARAM)ls_nos, 0);
+			SendMessage(hObject, 0x401, (LPARAM)ls_nos.c_str(), 0);
 			alert(L"转入完成!");
 
 			return 1;
@@ -766,7 +770,7 @@
 			int MB_OKCANCEL = 1;
 			int MB_ICONQUESTION = 32;
 			if (MessageBox(GetHWND(), L"确认删除指定的项,删除后将不能恢复?", L"提示", MB_OKCANCEL | MB_ICONQUESTION) != IDOK) return 1;
-			xstring id = g_xdoc_product.getData(0, L"data/Item", row, L"@guid");
+			xstring id = dw_list.GetItemString(row, L"@guid");
 
 			if (ProductLibraryView::DeleteItem(id) == 1) dw_list.DeleteRow(0);
 
@@ -865,14 +869,14 @@
 				OpenWindow(L"dev:xpage[PackSchemaMaint.goodslib.vx]");
 			}else
 			{
-				int pr = g_xdoc_product;
+				int pr = dw_list;
 				OpenWindow(L"dev:xpage[ProductLibraryItemMaint.vx]",pr);
 			}
 			*/
-			//KXMLDOMElement ele = g_xdoc_product.getRowElement(L"data/Item", 1);
+			//KXMLDOMElement ele = dw_list.getRowElement(L"data/Item", 1);
 			//alert(ele.xml);
 
-			int pr = g_xdoc_product;
+			int pr = dw_list;
 			OpenWindow(L"dev:xpage[ProductLibraryItemMaint3.vx]", pr);
 
 			return 1;
@@ -959,7 +963,7 @@
 		}
 		int MakeGoodCarFolderItem(HTREEITEM hItem)
 		{
-			xml x = ShoppingCartView::GetRoleList();
+			xml x = ShoppingCartView::GetSupplierRoleList(SupplierID);
 			if (!x) return 0;
 			KXMLDOMNodeList nlist = x.selectNodes(L"/data/item");
 			int len = nlist.length();
@@ -1031,7 +1035,7 @@
 		{
 			while (true)
 			{
-				KXMLDOMElement& e1 = 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);
@@ -1044,12 +1048,12 @@
 		{
 			hItem = LookupCustomerFolder(hItem);
 			if (hItem == 0) return L"";
-			KXMLDOMElement& e1 = tv_folder.GetItemData(hItem);
+			KXMLDOMElement e1 = tv_folder.GetItemData(hItem);
 			xstring str = e1.getAttribute(L"no");
 			return str.mid(xstring(L"Customer:").length(), 9999);
 		}
 
-		HTREEITEM RetrieveItem(HTREEITEM hItem)
+		int RetrieveItem(HTREEITEM hItem)
 		{
 			HTREEITEM hTopItem = LookupTopFolder(hItem);
 			tname = tv_folder.GetItemLabel(hTopItem);
@@ -1071,9 +1075,12 @@
 				ResetAgent(L"goodscar");
 				if (selectname != tname)
 				{
-					KXMLDOMElement e1 = cast(tv_folder.GetItemData(hItem) as KXMLDOMElement);
+					KXMLDOMElement e1 =tv_folder.GetItemData(hItem);
 					str = e1.getAttribute(L"no");
-					if (str == L"Supplier") return 1;
+					if (str == L"Supplier")
+					{
+						return 1;
+					}
 					if (str.find(L"Customer:") == 0 || str.find(L"SO:") == 0 || str.find(L"Supplier:") == 0 || str.find(L"Enquiry:") == 0)
 					{
 						m_customer = LookupCustomer(hItem);
@@ -1084,9 +1091,9 @@
 						dwc_list.Reset();
 						dwc_list.SetReadOnly(true);
 						if (queryString == L"")
-							g_xdoc_shoppingcart.Retrieve(ShoppingCartView::GetGoodsList(str));
+							dwc_list.Retrieve(ShoppingCartView::GetGoodsList(str));
 						else
-							g_xdoc_shoppingcart.Retrieve(ShoppingCartView::GetGoodsList(str, queryString));
+							dwc_list.Retrieve(ShoppingCartView::GetGoodsList(str, queryString));
 						if (str.find(L"Supplier:") == 0)
 						{
 							if (dwc_list.GetRowCount() > 0)
@@ -1103,9 +1110,9 @@
 						dwc_list.SetReadOnly(true);
 						dwc_list.Reset();
 						if (queryString == L"")
-							g_xdoc_shoppingcart.Retrieve(ProductLibraryView::GetMaintList3(categoryid));
+							dwc_list.Retrieve(ProductLibraryView::GetMaintList3(categoryid));
 						else
-							g_xdoc_shoppingcart.Retrieve(ProductLibraryView::GetMaintList3(categoryid, queryString, L""));
+							dwc_list.Retrieve(ProductLibraryView::GetMaintList3(categoryid, queryString, L""));
 					}
 					else
 					{
@@ -1113,9 +1120,9 @@
 						dwc_list.SetReadOnly(true);
 						dwc_list.Reset();
 						if (queryString == L"")
-							g_xdoc_shoppingcart.Retrieve(ShoppingCartView::GetGoodsList(selectname));
+							dwc_list.Retrieve(ShoppingCartView::GetGoodsList(selectname));
 						else
-							g_xdoc_shoppingcart.Retrieve(ShoppingCartView::GetGoodsList(selectname, queryString));
+							dwc_list.Retrieve(ShoppingCartView::GetGoodsList(selectname, queryString));
 					}
 					dwc_list.Redraw();
 
@@ -1126,8 +1133,8 @@
 
 						if (m_customer != L"")
 						{
-							xstring skuid = g_xdoc_shoppingcart.getData(0, L"data/Item", 1, L"SKUID");
-							xstring customerItemNo = g_xdoc_shoppingcart.getData(0, L"data/Item", 1, L"CustomerItemNo");
+							xstring skuid = dwc_list.GetItemString(1, L"SKUID");
+							xstring customerItemNo = dwc_list.GetItemString(1, L"CustomerItemNo");
 							OnShowImage(skuid, customerItemNo);
 						}
 					}
@@ -1149,8 +1156,8 @@
 					else
 					{
 						str = L"Supplier:All";
-						g_xdoc_shoppingcart.Retrieve(ShoppingCartView::GetGoodsList(str, queryString));
-						dwc_list.PostRetrieve();
+						dwc_list.Retrieve(ShoppingCartView::GetGoodsList(str, queryString));
+						//dwc_list.PostRetrieve();
 						dwc_list.Redraw();
 					}
 				}
@@ -1190,7 +1197,7 @@
 							x = ProductLibraryView::GetMaintList3(no);
 						if (x)
 						{
-							g_xdoc_product.Retrieve(x);
+							dw_list.Retrieve(x);
 							
 						}
 					}
@@ -1212,16 +1219,16 @@
 							else
 								x = ProductLibraryView::GetMaintList3(no);
 						}
-						if (x)g_xdoc_product.Retrieve(x);
+						if (x)dw_list.Retrieve(x);
 					}
-					dw_list.PostRetrieve();
+					//dw_list.PostRetrieve();
 					dw_list.Redraw();
 
 					if (dw_list.GetRowCount() > 0)
 					{
 						xs = GetControl(L"html_detail");
 						xs.SetContent(makeHtml(1));
-						xstring id = g_xdoc_product.getData(0, L"data/Item", 1, L"@guid");
+						xstring id = dw_list.GetItemString(1, L"@guid");
 						OnShowImage(id);
 					}
 					else
@@ -1237,6 +1244,7 @@
 				}
 			}
 			impStr = L"";
+			return 1;
 		}
 
 		int OnTreeSelChanged(TEvent* evt, int p)
@@ -1304,7 +1312,7 @@
 			char ch;
 			int row = hdr.row;
 			xstring col = hdr.colname;
-			xstring str = g_xdoc_shoppingcart.getData(0, L"data/Item", row, L"SOLineID");
+			xstring str = dwc_list.GetItemString(row, L"SOLineID");
 			if (str != L"")
 				str = L"sl:" + str;
 			else if (dwc_list.GetItemString(row, L"SKUNo") != L"")
@@ -1333,8 +1341,8 @@
 			DWNMHDR& hdr = *(DWNMHDR*)evt->notify.pnmh;
 			int row = hdr.row;
 			xstring ls_nos = L"ImportXml:";
-			xstring str = g_xdoc_shoppingcart.getData(0, L"data/Item", row, L"SOLineID");
-			xstring str1 = g_xdoc_shoppingcart.getData(0, L"data/Item", row, L"EnquiryPriceListID");
+			xstring str = dwc_list.GetItemString(row, L"SOLineID");
+			xstring str1 = dwc_list.GetItemString(row, L"EnquiryPriceListID");
 			if (str1 != L"")
 				str += L"el:" + str1;
 			else if (str != L"")
@@ -1350,7 +1358,7 @@
 			dw_list.Redraw();
 			dwc_list.Redraw();
 			impStr = L"";
-			SendMessage(hObject, 0x401, (LPARAM)ls_nos, 0);
+			SendMessage(hObject, 0x401, (LPARAM)ls_nos.c_str(), 0);
 			xutil::RestoreCursor(hCursor);
 			CloseWindow();
 			return 1;
@@ -1380,7 +1388,7 @@
 			dw_list.Redraw();
 			dwc_list.Redraw();
 			impStr = L"";
-			SendMessage(hObject, 0x401, (LPARAM)ls_nos, 0);
+			SendMessage(hObject, 0x401, (LPARAM)ls_nos.c_str(), 0);
 			xutil::RestoreCursor(hCursor);
 			CloseWindow();
 			return 1;
@@ -1414,7 +1422,7 @@
 			impStr = L"";
 
 			OnAttachEvent();
-			imageElement = 0;
+			//imageElement = 0;
 
 			tv_folder = GetControl(L"tv_folder");
 			dw_list = GetControl(L"dw_list");
@@ -1433,17 +1441,7 @@
 			}
 			InitialFolder();
 
-			g_xdoc_product = new xdataset;
-			g_xdoc_product.Init();
-			xbind bindproduct = new xbind;
-			bindproduct.bindEx(dw_list, g_xdoc_product, L"");
-
-			g_xdoc_shoppingcart = new xdataset;
-			g_xdoc_shoppingcart.Init();
-
-			xbind bindcart = new xbind;
-			bindcart.bindEx(dwc_list, g_xdoc_shoppingcart, L"");
-
+			
 			dw_list.SetDataObject(ProductLibraryView::GetMaintListForm3(L""));
 			dw_list = GetControl(L"dw_list");
 			dw_list.SetReadOnly(true);
@@ -1459,11 +1457,17 @@
 				xs.SetContent(makeHtml(1));
 			}
 
+			tv_folder.ExpandItem(tv_folder.GetNextItem(tv_folder.GetRootItem()));
+			tv_folder.ExpandItem(tv_folder.GetNextItem(tv_folder.GetNextItem(tv_folder.GetRootItem())));
+#if 0
 			xtreeview::ExpandItem(tv_folder.GetId(),
 				xtreeview::GetNextItem(tv_folder.GetId(), xtreeview::GetRootItem(tv_folder.GetId())));
 			xtreeview::ExpandItem(tv_folder.GetId(),
 				xtreeview::GetNextItem(tv_folder.GetId(), xtreeview::GetNextItem(tv_folder.GetId(), xtreeview::GetRootItem(tv_folder.GetId()))));
 
+#endif // 0
+
+			
 			dw_list.SetSelectionMode(3);
 			dwc_list.SetSelectionMode(3);
 

--
Gitblit v1.9.3