From cf8dba7748cc9826d744069b5063a14e3fcd2fa8 Mon Sep 17 00:00:00 2001 From: xj qian <qianxj15@sina.com> Date: 星期四, 13 三月 2025 10:48:17 +0800 Subject: [PATCH] Merge branch 'master' of http://116.62.18.175:6699/r/mis-prj --- jrj/project/business/GDN3.list.cpp | 88 +++++++++++++++++++++++--------------------- 1 files changed, 46 insertions(+), 42 deletions(-) diff --git a/jrj/project/business/GDN3.list.cpp b/jrj/project/business/GDN3.list.cpp index 0ae84fd..deff810 100644 --- a/jrj/project/business/GDN3.list.cpp +++ b/jrj/project/business/GDN3.list.cpp @@ -5,14 +5,15 @@ #include "vbusiness/vframe/listwin.vframe.vbusiness.hpp" #include "viewobject/view.base.hpp" -class __declspec(dllexport) GDN3list : public listwin +using xml = KXMLDOMDocument; +class __declspec(dllexport) ListGDN3Win : public listwin { public: - GDN3list(void* implPtr, HWND hWnd) :listwin(implPtr, hWnd) {} + ListGDN3Win(void* implPtr, HWND hWnd) :listwin(implPtr, hWnd) {} public: - static GDN3list* CreateInstance(void* implPtr, void* hWnd) + static ListGDN3Win* CreateInstance(void* implPtr, void* hWnd) { - GDN3list* pWin = new GDN3list(implPtr, (HWND)hWnd); + ListGDN3Win* pWin = new ListGDN3Win(implPtr, (HWND)hWnd); return pWin; } @@ -69,9 +70,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); string 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; @@ -86,8 +87,11 @@ xaserver::ExecXQuery(GetServerUrl(), L"[customerfolder.gdn.sql.xq]", arg.GetString(), x); */ - - KXMLDOMDocument x = ViewObject::RetrieveData(GetServerUrl(), L"[customerfolder.gdn.sql.xq]", L"id", no); + KXMLDOMDocument x; + xaserverarg arg; + arg.AddArg(L"no", no); + xaserver::ExecXQuery(GetServerUrl(), L"[customerfolder.gdn.sql.xq]", arg.GetString(), x); + //KXMLDOMDocument x = ViewObject::RetrieveData(GetServerUrl(), L"[customerfolder.gdn.sql.xq]", L"id", no); if (!x) return 0; @@ -95,12 +99,11 @@ int len = nlist.length(); for (int i = 0; i < len; i++) { - KXMLDOMElement& e = *new KXMLDOMElement(nlist.item(i)); + KXMLDOMElement e = nlist.item(i); string 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); } - x.Free(); return 1; } @@ -113,7 +116,7 @@ xstring name = tv_folder.GetItemLabel(hTopItem); HTREEITEM child = tv_folder.GetChildItem(hItem); - KXMLDOMElement& e = *(KXMLDOMElement*)tv_folder.GetItemData(hItem); + KXMLDOMElement e = tv_folder.GetItemData(hItem); if (!child)ExpandFolderItem(hItem, e.getAttribute(L"no")); return 1; @@ -125,13 +128,13 @@ int len = nlist.length(); for (int i = 0; i < len; i++) { - KXMLDOMElement& e = *new KXMLDOMElement(nlist.item(i)); + KXMLDOMElement e = nlist.item(i); string name = e.getAttribute(L"name"); xstring sImage = e.getAttribute(L"image"); xstring child = e.getAttribute(L"child"); 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); if (child != L"no") tv_folder.SetItemChild(h, 1); ExpandChildFolder(h, e); } @@ -154,7 +157,7 @@ return 1; } - int ViewUpdate(int pr, xstring updateItem, xaserverarg arg) + int ViewUpdate(LPARAM pr, xstring updateItem, xaserverarg arg) { if (updateItem == L"del") { @@ -201,18 +204,18 @@ if (readed) return 1; HTREEITEM hItem = tv_folder.GetSelectedItem(); - if (hItem <= 0) + if (!hItem) { hItem = tv_folder.GetRootItem(); - if (hItem <= 0) return 1; + if (!hItem) return 1; } HCURSOR hCursor = xutil::SetCursorWait(); - KXMLDOMElement& e1 = *(KXMLDOMElement*)tv_folder.GetItemData(hItem); + KXMLDOMElement e1 = tv_folder.GetItemData(hItem); xstring no = e1.getAttribute(L"no"); //xml x = 0; //x = ViewObject::RetrieveData(myDataUrl,L"no",no,L"QueryTxt", m_QueryTxt,L"rows",rows); xstring DeptName = publiccode::GetUser().deptname; - xaserverarg arg = xaserverarg::Make(); + xaserverarg arg ; arg.AddArg(L"no", no); arg.AddArg(L"QueryTxt", m_QueryTxt); arg.AddArg(L"rows", rows); @@ -224,7 +227,6 @@ dw_list.DwRetrieve(GetServerUrl(),L"[list.folder.gdn.sql.xq]",arg.GetString()); }*/ dw_list.DwRetrieve(GetServerUrl(), L"[list.folder.gdn.sql.xq]", arg.GetString()); - arg.Free(); dw_list.SetReadOnly(true); dw_list.SetRowSort(L"ETD", false); @@ -238,11 +240,11 @@ int OnPreRetrieve() { HTREEITEM hItem = tv_folder.GetSelectedItem(); - if (hItem <= 0) return 1; + if (!hItem) return 1; HCURSOR hCursor = xutil::SetCursorWait(); - KXMLDOMElement& e1 = *(KXMLDOMElement*)tv_folder.GetItemData(hItem); + KXMLDOMElement e1 = tv_folder.GetItemData(hItem); xstring no = e1.getAttribute(L"no"); trace(L"\r\n" + no + L"\r\n" + m_QueryTxt); @@ -254,7 +256,7 @@ } else { - dw_list.ResetEx(); + dw_list.Reset(); dw_list.Redraw(); } dw_list.SetReadOnly(true); @@ -421,7 +423,7 @@ KXMLDOMDocument supplier_x = ViewObject::RetrieveData(L"/sale/data/SupplierV3/entity/FindBySaleType", L"id", s); if (supplier_x) { - if (supplier_x.text() != L"跟单") + if ((xstring)supplier_x.text() != L"跟单") { alert(L"当前角色不是跟单员不能新增单子,请重新选择角色"); return 0; @@ -432,11 +434,11 @@ else if (comdid == L"action:bill.GDNDelay") { xstring EntityIDEx = dw_list.GetGuid(dw_list.GetRow()); - xaserverarg& argEx = *new xaserverarg; - argEx.setNativePointer(argEx.CreateInstance()); - trace(EntityIDEx); + xaserverarg argEx; + + //alert(EntityIDEx); argEx.AddArg(L"GDNID", EntityIDEx); - OpenWindow(L"dev:xpage[GDNDelay.vx]", (LPARAM)&argEx); + OpenWindow(L"dev:xpage[GDNDelay.vx]", argEx); return 1; } else if (comdid == L"action:bill.check.ask") @@ -489,11 +491,11 @@ return 0; }*/ - xaserverarg& arg = *new xaserverarg; - arg.setNativePointer(arg.CreateInstance()); + xaserverarg arg ; + trace(EntityID); arg.AddArg(L"GDNID", EntityID); - OpenWindow(L"dev:xpage[GDNDelay.vx]", (LPARAM)&arg); + OpenWindow(L"dev:xpage[GDNDelay.vx]", arg); } else if (comdid == L"action:bill.SourceRemark") return OnSourceRemark(); @@ -512,10 +514,10 @@ { Content = t.selectSingleNode(L"Content").text(); } - xaserverarg& arg1 = *new xaserverarg; - arg1.setNativePointer(arg1.CreateInstance()); + xaserverarg arg1 ; + arg1.AddArg(L"value", Content); - OpenWindow(L"dev:xpage[memo.edit.new.vx]", (LPARAM)&arg1); + OpenWindow(L"dev:xpage[memo.edit.new.vx]",arg1); return 1; } @@ -579,8 +581,9 @@ int OnSelectDataShowDdlb(TEvent* evt, LPARAM p) { + HWND wid = cbx_datashow.GetHWND(); int CB_GETCURSEL = 0x0147; - int nIndex = SendMessageW(HWND(), CB_GETCURSEL, 0, 0); + int nIndex = SendMessageW(wid, CB_GETCURSEL, 0, 0); KXMLDOMElement e = cbx_datashow.GetElement(); KXMLDOMElement e2 = e.selectSingleNode(L"item[" + xstring(nIndex + 1) + L"]"); rows = e2.selectSingleNode(L"@rows").text(); @@ -590,13 +593,14 @@ } + int PostOnAttachEvent() { - AttachEvent(L"tv_folder", L"TVN_SELCHANGED", (FEvent)&GDN3list::OnTreeSelChanged); //树选择 - //AttachEvent(L"tv_folder", L"TVN_ITEMEXPANDING",(FEvent)&GDN3list::OnTreeExpanding); //树展开 - AttachEvent(L"dw_list", L"DWV_ROWFOCUSCHANGED", (FEvent)&GDN3list::OnRowChanged); - AttachEvent(L"cbx_1", L"CBN_SELCHANGE", (FEvent)&GDN3list::OnSelectDdlb); - AttachEvent(L"cbx_datashow", L"CBN_SELCHANGE", (FEvent)&GDN3list::OnSelectDataShowDdlb); + AttachEvent(L"tv_folder", L"TVN_SELCHANGED", (FEvent)&ListGDN3Win::OnTreeSelChanged); //树选择 + //AttachEvent(L"tv_folder", L"TVN_ITEMEXPANDING",(FEvent)&ListGDN3Win::OnTreeExpanding); //树展开 + AttachEvent(L"dw_list", L"DWV_ROWFOCUSCHANGED", (FEvent)&ListGDN3Win::OnRowChanged); + AttachEvent(L"cbx_1", L"CBN_SELCHANGE", (FEvent)&ListGDN3Win::OnSelectDdlb); + AttachEvent(L"cbx_datashow", L"CBN_SELCHANGE", (FEvent)&ListGDN3Win::OnSelectDataShowDdlb); return 1; } @@ -707,14 +711,14 @@ } HTREEITEM hItem = tv_folder.GetCaretItem(); - if (hItem <= 0) return 1; + if (!hItem) return 1; KXMLDOMElement e = tv_folder.GetItemData(hItem); xstring no = e.getAttribute(L"no"); if (no.find(L"Customer:") >= 0) { arg.AddArg(L"CustomerID", e.getAttribute(L"id")); xstring name = e.getAttribute(L"name"); - if (name.find(L"(L") >= 0) name = name.left(name.find(L"(L")); + if (name.find(L"(") >= 0) name = name.left(name.find(L"(")); arg.AddArg(L"CustomerName", name); } return 1; -- Gitblit v1.9.3