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/ProductSchema.cpp | 147 ++++++++++++++++++++++++++---------------------- 1 files changed, 80 insertions(+), 67 deletions(-) diff --git a/jrj/project/business/Enquiry/ProductSchema.cpp b/jrj/project/business/Enquiry/ProductSchema.cpp index 02bc853..0c1d4a8 100644 --- a/jrj/project/business/Enquiry/ProductSchema.cpp +++ b/jrj/project/business/Enquiry/ProductSchema.cpp @@ -1,38 +1,51 @@ -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 ProductSchemaWin : public xframe +#include "vbusiness/vframe/listwin.vframe.vbusiness.hpp" +#include "viewobject/view.base.hpp" + +using xml = KXMLDOMDocument; + class __declspec(dllexport) ProductSchemaWin : public xframe { + public: xdwtable dw_base; xdwgrid dw_list; xnode m_agentNode; //Agent Condition - + public: + ProductSchemaWin(void* implPtr, HWND hWnd) :xframe(implPtr, hWnd) {} + public: + static ProductSchemaWin* CreateInstance(void* implPtr, void* hWnd) + { + ProductSchemaWin* pWin = new ProductSchemaWin(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; } //焦点激活处理函数 - int OnSetFocus(ref TEvent evt, int param) + int OnSetFocus(TEvent* evt, LPARAM param) { //重置工具条 SetAgent(); @@ -40,48 +53,48 @@ } //命令发布函数 - int OnCmdDispatch(string comdid) + int OnCmdDispatch(xstring comdid) { - if (comdid == "xmAddRow") + if (comdid == L"xmAddRow") { int row = dw_list.InsertRow(0); - string sdate = publiccode::GetCurrentDate(); - dw_list.SetItemString(row, "SKUID", dw_base.GetItemString(1, "SKUID")); - dw_list.SetItemDisplayString(row, "SKUID", dw_base.GetItemString(1, "SKUNo")); - dw_list.SetItemString(row, "GoodsNo", dw_base.GetItemString(1, "GoodsNo")); - dw_list.SetItemString(row, "CName", dw_base.GetItemString(1, "CName")); - dw_list.SetItemString(row, "ProductQty", "1"); - dw_list.SetItemString(row, "PartQty", "1"); - dw_list.SetItemString(row, "CreateDate", sdate); + xstring sdate = publiccode::GetCurrentDate(); + dw_list.SetItemString(row, L"SKUID", dw_base.GetItemString(1, L"SKUID")); + dw_list.SetItemDisplayString(row, L"SKUID", dw_base.GetItemString(1, L"SKUNo")); + dw_list.SetItemString(row, L"GoodsNo", dw_base.GetItemString(1, L"GoodsNo")); + dw_list.SetItemString(row, L"CName", dw_base.GetItemString(1, L"CName")); + dw_list.SetItemString(row, L"ProductQty", L"1"); + dw_list.SetItemString(row, L"PartQty", L"1"); + dw_list.SetItemString(row, L"CreateDate", sdate); return 1; } - else if (comdid == "xmDeleteRow") + else if (comdid == L"xmDeleteRow") { dw_list.DeleteRow(0); return 1; } - else if (comdid == "xmClose") + else if (comdid == L"xmClose") { CloseWindow(); return 1; } - else if (comdid == "xmSave") + else if (comdid == L"xmSave") { return OnSave(); } return 0; } - int OnArgItemChanged(ref TNotifyEvent evt, int p) + int OnArgItemChanged(TEvent* evt, LPARAM p) { - ref DWNMHDR hdr = trust(evt.pnmh as ref DWNMHDR); - string colname = hdr.colname; - string value = hdr.data; + DWNMHDR& hdr = *(DWNMHDR*)evt->notify.pnmh; + xstring colname = hdr.colname; + xstring value = hdr.data; - string dwname = "dw_base"; - if (value != "") + xstring dwname = L"dw_base"; + if (value != L"") { - msxml::IXMLDOMNodeList nlist = GetElement().selectNodes("//*[@name='" + dwname + "']/trans[@for='" + colname + "']"); + KXMLDOMNodeList nlist = GetElement().selectNodes(L"//*[@name='" + dwname + L"']/trans[@for='" + colname + L"']"); ViewObject::TransData(nlist, dw_base, hdr.row, colname, value); } OnRetrieve(); @@ -92,46 +105,47 @@ int OnSave() { dw_list.AcceptText(); - xml x = xml::Make(); - xaserverarg arg = xaserverarg::Make(); - dw_list.DwUpdateAllToEx(x.GetXmlDoc()); + xml x ; + xaserverarg arg; + dw_list.DwUpdateAllToEx(x); - arg.AddArg("content", x.GetXml()); - if (url::get("/sale/data/ProductLibrary3/update/product/schema", arg.GetString(), x) != 1) + arg.AddArg(L"content", x.xml()); + if (xurl::get(L"/sale/data/ProductLibrary3/update/product/schema", arg.GetString(), x) != 1) { - string error = x.GetXmlDoc().text; - alert("err:" + error); - x.Free(); + xstring error = x.text(); + alert(L"err:" + error); + return -1; } - string str = x.GetXmlDoc().documentElement.getAttribute("text"); + xstring str = x.documentElement().getAttribute(L"text"); //alert(str); - x.Free(); - if (str == "false") + + if (str == L"false") { - alert("保存失败!"); + alert(L"保存失败!"); return -1; } dw_list.ResetUpdateStatus(); - alert("保存成功!"); + alert(L"保存成功!"); return 1; } //命令处理事件 - 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)&ProductSchemaWin::OnXCommand); //获取焦点事件,用于重置工具条 - AttachEvent("WM_SETFOCUS", OnSetFocus); - AttachEvent("dw_base", "DWV_ITEMCHANGED", OnArgItemChanged); + AttachEvent(L"WM_SETFOCUS", (FEvent)&ProductSchemaWin::OnSetFocus); + AttachEvent(L"dw_base", L"DWV_ITEMCHANGED", (FEvent)&ProductSchemaWin::OnArgItemChanged); + return 1; } int OnRetrieve() @@ -139,15 +153,15 @@ dw_list.Reset(); dw_list.Redraw(); - xml x = new xml; - x.setNativePointer(xml::CreateInstance()); - xaserverarg arg = new xaserverarg; - arg.setNativePointer(arg.CreateInstance()); - arg.AddArg("SKUID", dw_base.GetItemString(1, "SKUID")); - //alert(dw_base.GetItemString(1,"SKUID")); - if (getUrl("/sale/data/ProductLibrary3/ProductSchemaList", arg.GetString(), x) != 1) + xml x ; + + xaserverarg arg; + + arg.AddArg(L"SKUID", dw_base.GetItemString(1, L"SKUID")); + //alert(dw_base.GetItemString(1,L"SKUID")); + if (getUrl(L"/sale/data/ProductLibrary3/ProductSchemaList", arg.GetString(), x) != 1) { - trace(x.GetXmlDoc().text); + trace(x.text()); return -1; } else @@ -160,12 +174,12 @@ int onload() { - dw_list = GetControl("dw_list"); - dw_list.openUrl("/sale/view/ProductLibrary/template/ProductSchema"); - dw_list.SetColumnState("CreateDate", false); + dw_list = GetControl(L"dw_list"); + dw_list.openUrl(L"/sale/view/ProductLibrary/template/ProductSchema"); + dw_list.SetColumnState(L"CreateDate", false); - dw_base = GetControl("dw_base"); - dw_base.openUrl("/sale/view/ProductLibrary/template/ProductArg"); + dw_base = GetControl(L"dw_base"); + dw_base.openUrl(L"/sale/view/ProductLibrary/template/ProductArg"); dw_base.SetColHeaderHeight(0); dw_base.SetRowSelectorWidth(0); dw_base.SetHScrollState(false); @@ -183,5 +197,4 @@ return 1; } - }; -] \ No newline at end of file + }; \ No newline at end of file -- Gitblit v1.9.3