From 0d0e72d8e08b176c4791b7c0b50f3fb28ffbcf5b Mon Sep 17 00:00:00 2001
From: LiFan <2308045698@qq.com>
Date: 星期二, 24 九月 2024 10:13:26 +0800
Subject: [PATCH] update

---
 jrj/project/business/QuoteFile.cpp |   64 ++++++++++++++++++++-----------
 1 files changed, 41 insertions(+), 23 deletions(-)

diff --git a/jrj/project/business/QuoteFile.cpp b/jrj/project/business/QuoteFile.cpp
index 56de5c5..8cc020a 100644
--- a/jrj/project/business/QuoteFile.cpp
+++ b/jrj/project/business/QuoteFile.cpp
@@ -507,10 +507,9 @@
 
 		xaserverarg argx;
 		argx.AddArg(L"QuoteNo", dw_base.GetItemString(1, L"QuoteNo"));
-		int p1 = argx;
 		if (dw_base.GetItemString(1, L"QuoteNo") != L"")
 		{
-			OpenWindow(L"dev:xpage[xmQuoteBillList.vx]", p1);
+			OpenWindow(L"dev:xpage[xmQuoteBillList.vx]", argx);
 		}
 		if (argx.GetArgString(L"action") != L"ok") return 1;
 
@@ -3015,14 +3014,14 @@
 						if (price.find(L"A") < 1 && price.find(L"B") < 1 && price.find(L"C") < 1 && price.find(L"a") < 1 && price.find(L"b") < 1 && price.find(L"b") < 1)
 						{
 							alert(L"价格中没指定ABC");
-							if (pricea == L"") pricea = price; else pricea += L"+L" + price;
+							if (pricea == L"") pricea = price; else pricea += L"+" + price;
 						}
 						else if (price.find(L"A") > 0 || price.find(L"a") > 0)
-							if (pricea == L"") pricea = price; else pricea += L"+L" + price;
+							if (pricea == L"") pricea = price; else pricea += L"+" + price;
 						else if (price.find(L"B") > 0 || price.find(L"b") > 0)
-							if (priceb == L"") priceb = price; else priceb += L"+L" + price;
+							if (priceb == L"") priceb = price; else priceb += L"+" + price;
 						else if (price.find(L"C") > 0 || price.find(L"c") > 0)
-							if (pricec == L"") pricec = price; else pricec += L"+L" + price;
+							if (pricec == L"") pricec = price; else pricec += L"+" + price;
 					}
 					if (price1 != L"")
 					{
@@ -3030,14 +3029,14 @@
 						if (price.find(L"A") < 1 && price.find(L"B") < 1 && price.find(L"C") < 1 && price.find(L"a") < 1 && price.find(L"b") < 1 && price.find(L"b") < 1)
 						{
 							alert(L"价格中没指定ABC");
-							if (pricea == L"") pricea = price; else pricea += L"+L" + price;
+							if (pricea == L"") pricea = price; else pricea += L"+" + price;
 						}
 						else if (price.find(L"A") > 0 || price.find(L"a") > 0)
-							if (pricea == L"") pricea = price; else pricea += L"+L" + price;
+							if (pricea == L"") pricea = price; else pricea += L"+" + price;
 						else if (price.find(L"B") > 0 || price.find(L"b") > 0)
-							if (priceb == L"") priceb = price; else priceb += L"+L" + price;
+							if (priceb == L"") priceb = price; else priceb += L"+" + price;
 						else if (price.find(L"C") > 0 || price.find(L"c") > 0)
-							if (pricec == L"") pricec = price; else pricec += L"+L" + price;
+							if (pricec == L"") pricec = price; else pricec += L"+" + price;
 					}
 					if (price2 != L"")
 					{
@@ -3045,14 +3044,14 @@
 						if (price.find(L"A") < 1 && price.find(L"B") < 1 && price.find(L"C") < 1 && price.find(L"a") < 1 && price.find(L"b") < 1 && price.find(L"b") < 1)
 						{
 							alert(L"价格中没指定ABC");
-							if (pricea == L"") pricea = price; else pricea += L"+L" + price;
+							if (pricea == L"") pricea = price; else pricea += L"+" + price;
 						}
 						else if (price.find(L"A") > 0 || price.find(L"a") > 0)
-							if (pricea == L"") pricea = price; else pricea += L"+L" + price;
+							if (pricea == L"") pricea = price; else pricea += L"+" + price;
 						else if (price.find(L"B") > 0 || price.find(L"b") > 0)
-							if (priceb == L"") priceb = price; else priceb += L"+L" + price;
+							if (priceb == L"") priceb = price; else priceb += L"+" + price;
 						else if (price.find(L"C") > 0 || price.find(L"c") > 0)
-							if (pricec == L"") pricec = price; else pricec += L"+L" + price;
+							if (pricec == L"") pricec = price; else pricec += L"+" + price;
 					}
 					if (price3 != L"")
 					{
@@ -3060,14 +3059,14 @@
 						if (price.find(L"A") < 1 && price.find(L"B") < 1 && price.find(L"C") < 1 && price.find(L"a") < 1 && price.find(L"b") < 1 && price.find(L"b") < 1)
 						{
 							alert(L"价格中没指定ABC");
-							if (pricea == L"") pricea = price; else pricea += L"+L" + price;
+							if (pricea == L"") pricea = price; else pricea += L"+" + price;
 						}
 						else if (price.find(L"A") > 0 || price.find(L"a") > 0)
-							if (pricea == L"") pricea = price; else pricea += L"+L" + price;
+							if (pricea == L"") pricea = price; else pricea += L"+" + price;
 						else if (price.find(L"B") > 0 || price.find(L"b") > 0)
-							if (priceb == L"") priceb = price; else priceb += L"+L" + price;
+							if (priceb == L"") priceb = price; else priceb += L"+" + price;
 						else if (price.find(L"C") > 0 || price.find(L"c") > 0)
-							if (pricec == L"") pricec = price; else pricec += L"+L" + price;
+							if (pricec == L"") pricec = price; else pricec += L"+" + price;
 					}
 					price = pricec;
 					if (priceb != L"")
@@ -3075,14 +3074,14 @@
 						if (price == L"")
 							price = priceb;
 						else
-							price += L"+L" + priceb;
+							price += L"+" + priceb;
 					}
 					if (pricea != L"")
 					{
 						if (price == L"")
 							price = pricea;
 						else
-							price += L"+L" + pricea;
+							price += L"+" + pricea;
 					}
 					dw_cell.SetItemString(row, colPrice, price);
 					dw_cell.Redraw();
@@ -4492,7 +4491,7 @@
 						{
 							alert(L"价格中没指定ABC");
 						}
-						price = price0 + L"+L" + price1;
+						price = price0 + L"+" + price1;
 					}
 					dw_cell.SetItemString(ARow, colPrice, price);
 				}
@@ -4724,6 +4723,21 @@
 		return 1;
 	}
 
+	xstring GetTryFirstAttr(xstring str, xstring term)
+	{
+		xstring foundStr = L" " + term + L"=";
+		wchar quote = L'"';
+		int pos = str.find(foundStr);
+		if (pos < 0) return L"";
+		pos += foundStr.length();
+		while (str.at(pos) == L' ')pos++;
+		if (str.at(pos) == L'\'')quote = L'\'';
+		int epos = ++pos;
+		while (str.at(epos) && str.at(epos) != quote)epos++;
+		if (!str.at(epos))return L"";
+		return str.mid(pos, epos - pos);
+	}
+
 	int onload()
 	{
 		SetArg();
@@ -4755,7 +4769,11 @@
 			x.loadXML(templ);
 			*/
 			action = L"purch";
-
+			action = GetTryFirstAttr(templ, L"action");
+			if (action == L"") action = L"purch";
+			entityItemID = GetTryFirstAttr(templ, L"TemplateItemID");
+			if (entityItemID == L"")entityItemID = GetTryFirstAttr(templ, L"ItemID");
+#if 0
 			if (templ.find(L"action=\"") >= 0)
 			{
 				action = templ.mid(templ.find(L"action=\"") + 8, templ.find(L"\"", templ.find(L"action=\"") + 8) - (templ.find(L"action=\"") + 8));
@@ -4772,7 +4790,7 @@
 					entityItemID = templ.mid(templ.find(L" ItemID=\"") + 9, templ.find(L"\"", templ.find(L" ItemID=\"") + 9) - (templ.find(L" ItemID=\"") + 9));
 				}
 			}
-
+#endif
 			/*action = x.documentElement.getAttribute(L"action");
 			if(action==L"") action=L"purch";
 			entityItemID = x.documentElement.getAttribute(L"TemplateItemID");

--
Gitblit v1.9.3