From 3680fd01aaa3238767302138fb85a97b228bb39d Mon Sep 17 00:00:00 2001 From: LiFan <2308045698@qq.com> Date: 星期三, 17 七月 2024 12:07:07 +0800 Subject: [PATCH] updae --- jrj/project/business/SystemSettings/FlowTermImport.cpp | 115 +- jrj/project/business/SystemSettings/LogList.cpp | 174 ++-- jrj/project/business/SystemSettings/TestRetrieveing.cpp | 45 jrj/project/business/SystemSettings/level.Customer.v3.cpp | 328 +++++---- jrj/project/business/SystemSettings/FlowTermSelect.cpp | 131 ++- jrj/project/business/SystemSettings/SysLoginRecord.cpp | 88 +- jrj/project/business/SystemSettings/view.assignadjust.cpp | 203 +++-- jrj/project/business/SystemSettings/Flow3.cpp | 428 ++++++------ jrj/project/business/SystemSettings/Developer.Synch.cpp | 301 ++++---- jrj/project/business/SystemSettings/maint.Level.Customer3.cpp | 62 + jrj/project/business/SystemSettings/UserPassDlg.cpp | 108 +- 11 files changed, 1,071 insertions(+), 912 deletions(-) diff --git a/jrj/project/business/SystemSettings/Developer.Synch.cpp b/jrj/project/business/SystemSettings/Developer.Synch.cpp index ba7e601..8789e6e 100644 --- a/jrj/project/business/SystemSettings/Developer.Synch.cpp +++ b/jrj/project/business/SystemSettings/Developer.Synch.cpp @@ -1,45 +1,60 @@ -use "xcontrol.vframe.vbusiness.vd" -use "xbase.vframe.vbusiness.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 DeveloperSynch : public xframe + +#include "vbusiness/vframe/listwin.vframe.vbusiness.hpp" +#include "viewobject/view.base.hpp" + +using xml = KXMLDOMDocument; + class __declspec(dllexport) DeveloperSynch : public xframe { + public: xtreeview tv_gs; xsedit dw_log; - int[100] nItems; + int nItems; int nCount; - string sContent; - - string ProcessDevCmd(string cmd,string ext, string aurl="", bool needlogin=false) + xstring sContent; + public: + DeveloperSynch(void* implPtr, HWND hWnd) :xframe(implPtr, hWnd) {} + public: + static DeveloperSynch* CreateInstance(void* implPtr, void* hWnd) { - if(aurl == "") aurl = GetServerUrl(); + DeveloperSynch* pWin = new DeveloperSynch(implPtr, (HWND)hWnd); + return pWin; + } + xstring ProcessDevCmd(xstring cmd,xstring ext, xstring aurl=L"", bool needlogin=false) + { + if(aurl == L"") aurl = GetServerUrl(); //alert(aurl); - string d = xaserver::ProcessCmd(aurl,"uri.hxsoft.com/xaserver/developer "+cmd,ext,needlogin); + xstring d = xaserver::ProcessCmd(aurl,L"uri.hxsoft.com/xaserver/developer "+cmd,ext,needlogin); return d; } - string ProcessDevCmd2(string cmd,string ext, string aurl="", bool needlogin=false) + xstring ProcessDevCmd2(xstring cmd,xstring ext, xstring aurl=L"", bool needlogin=false) { - if(aurl == "") aurl = GetServerUrl(); + if(aurl == L"") aurl = GetServerUrl(); //alert(aurl); - string d = xaserver::ProcessCmd(aurl,"uri.hxsoft.com/xaserver/dev:"+cmd,ext,needlogin); + xstring d = xaserver::ProcessCmd(aurl,L"uri.hxsoft.com/xaserver/dev:"+cmd,ext,needlogin); return d; } int GetProjectItem(int hItem) { int pitem = hItem; - string typ; + xstring typ; while(true) { - int h = xtreeview::GetItemData(tv_gs.GetId(), pitem); - msxml::IXMLDOMElement e = trust(h as msxml::IXMLDOMElement); - typ = GetEleString(e, "@tagname"); - if(typ=="project")break; - pitem = xtreeview::GetParentItem(tv_gs.GetId(), pitem); + int h =tv_gs.GetItemData(tv_gs.GetId(), pitem); + KXMLDOMElement e = trust(h as KXMLDOMElement); + typ = GetEleString(e, L"@tagname"); + if(typ==L"project")break; + pitem =tv_gs.GetParentItem(tv_gs.GetId(), pitem); if(pitem<=0)break; } return pitem; @@ -51,30 +66,30 @@ int hP2Item = hItem; while(true) { - hDomainItem = xtreeview::GetParentItem(tv_gs.GetId(), hP2Item); + hDomainItem =tv_gs.GetParentItem(tv_gs.GetId(), hP2Item); if(xtreeview::GetParentItem(tv_gs.GetId(), hDomainItem)<=0)break; hP2Item = hDomainItem; } return hP2Item; } - string GetItemGuid(int hItem) + xstring GetItemGuid(int hItem) { - int h = xtreeview::GetItemData(tv_gs.GetId(), hItem); - msxml::IXMLDOMElement e = trust(h as msxml::IXMLDOMElement); - string guid = e.GetAttribute("guid"); + int h =tv_gs.GetItemData(tv_gs.GetId(), hItem); + KXMLDOMElement e = trust(h as KXMLDOMElement); + xstring guid = e.GetAttribute(L"guid"); return guid; } xaserverarg GetDataArg(int hItem, xaserverarg arg) { - int h = xtreeview::GetItemData(tv_gs.GetId(), hItem); - msxml::IXMLDOMElement e = trust(h as msxml::IXMLDOMElement); - string node = GetEleString(e, "@tagname"); + int h =tv_gs.GetItemData(tv_gs.GetId(), hItem); + KXMLDOMElement e = trust(h as KXMLDOMElement); + xstring node = GetEleString(e, L"@tagname"); //WriteLog(e.xml); - if(node=="File" || node=="file") + if(node==L"File" || node==L"file") { - string caption = e.getAttribute("caption"); + xstring caption = e.getAttribute(L"caption"); int hP2Item = 0; int hDomainItem = 0; @@ -84,35 +99,35 @@ }else { hP2Item = GetP2Item(hItem); - hDomainItem = xtreeview::GetParentItem(tv_gs.GetId(), hP2Item); + hDomainItem =tv_gs.GetParentItem(tv_gs.GetId(), hP2Item); } //find project folder - string prjguid=""; - int pitem = this.GetProjectItem(hItem); + xstring prjguid=L""; + int pitem = GetProjectItem(hItem); if(pitem > 0) prjguid = GetItemGuid(pitem); - //xaserverarg arg = new xaserverarg; - //arg.setNativePointer(arg.CreateInstance()); - arg.AddArg("project.guid",prjguid); + //xaserverarg arg ; + //; + arg.AddArg(L"project.guid",prjguid); if(hP2Item) { if(hP2Item != hItem) { - string guid = e.getAttribute("guid"); - arg.AddArg("guid",guid); + xstring guid = e.getAttribute(L"guid"); + arg.AddArg(L"guid",guid); } - string guid2 = GetItemGuid(hP2Item); - arg.AddArg("root.guid",guid2); + xstring guid2 = GetItemGuid(hP2Item); + arg.AddArg(L"root.guid",guid2); }else if(hDomainItem > 0) { - string guid3 = GetItemGuid(hDomainItem); - arg.AddArg("domain.guid",guid3); + xstring guid3 = GetItemGuid(hDomainItem); + arg.AddArg(L"domain.guid",guid3); } return 1; } - else if(node=="folder" || node=="project") + else if(node==L"folder" || node==L"project") return 2; else return 0; @@ -120,103 +135,103 @@ int SaveData(int hItem) { - xcontrol xc = GetControl("surl"); - string surl = xc.GetText(); - if(surl == "") + xcontrol xc = GetControl(L"surl"); + xstring surl = xc.GetText(); + if(surl == L"") { - alert("请输入同步服务器地址"); + alert(L"请输入同步服务器地址"); return 1; } - string name = xtreeview::GetItemLabel(tv_gs.GetId(), hItem); - xaserverarg arg = new xaserverarg; - arg.setNativePointer(arg.CreateInstance()); + xstring name =tv_gs.GetItemLabel(hItem); + xaserverarg arg ; + ; int ret = GetDataArg(hItem, arg); //alert(arg.GetString()); if(ret == 0) { - WriteLog(name+" 失败, 原因:获取工程或文件夹失败!"); + WriteLog(name+L" 失败, 原因:获取工程或文件夹失败!"); return -1; } else if(ret == 2) { ret = SynchFolder(hItem); if(ret == -1) - WriteLog(name+" 失败, 原因:获取文件数据失败!"); + WriteLog(name+L" 失败, 原因:获取文件数据失败!"); else if(ret == 0) - WriteLog(name+" 失败, 原因:复制文件失败!"); + WriteLog(name+L" 失败, 原因:复制文件失败!"); else WriteLog(name); return -1; } SynchFolder(hItem); - arg.AddArg("__name",name); - arg.AddArg("__url",surl); + arg.AddArg(L"__name",name); + arg.AddArg(L"__url",surl); synchServer(arg); - if(name.right(3) == ".vx" || name.right(5) == ".xpage") + if(name.right(3) == L".vx" || name.right(5) == L".xpage") { - arg.AddArg("__name",name + "[Code]"); - arg.AddArg("iscode","yes"); + arg.AddArg(L"__name",name + L"[Code]"); + arg.AddArg(L"iscode",L"yes"); synchServer(arg); } return 1; } - string GetFolderPath(int hItem) + xstring GetFolderPath(int hItem) { int k = hItem; - if(k == 0) return ""; - string src = ""; - //string name = ""; + if(k == 0) return L""; + xstring src = L""; + //xstring name = L""; while(k > 0) { - int h = xtreeview::GetItemData(tv_gs.GetId(), k); - k = xtreeview::GetParentItem(tv_gs.GetId(), k); - msxml::IXMLDOMElement e = trust(h as msxml::IXMLDOMElement); - string node = GetEleString(e, "@tagname"); - if(node != "File" && node != "file") + int h =tv_gs.GetItemData(tv_gs.GetId(), k); + k =tv_gs.GetParentItem(tv_gs.GetId(), k); + KXMLDOMElement e = trust(h as KXMLDOMElement); + xstring node = GetEleString(e, L"@tagname"); + if(node != L"File" && node != L"file") { - string tmp = GetEleString(e, "@src"); - //if(name == "") name = GetEleString(e, "@caption"); - if(tmp != "") + xstring tmp = GetEleString(e, L"@src"); + //if(name == L"") name = GetEleString(e, L"@caption"); + if(tmp != L"") { SynchFolder(k); - if(src == "") src = tmp; + if(src == L"") src = tmp; else { int j = 1; - int s = tmp.length(); - string t = tmp.right(j).left(1); - while(t != "\\" && j < s) + int s = tmp.length()(); + xstring t = tmp.right(j).left(1); + while(t != L"\\" && j < s) { //WriteLog(t); j++; t = tmp.right(j).left(1); } if(j >= s) - src = tmp+ "\\" + src; + src = tmp+ L"\\" + src; else - src = tmp.left(s - j)+ "\\" + src; + src = tmp.left(s - j)+ L"\\" + src; } } } } - if(src == "") + if(src == L"") { - //WriteLog(name+" 同步失败, 原因:获取文件数据失败0!"); - return ""; + //WriteLog(name+L" 同步失败, 原因:获取文件数据失败0!"); + return L""; } - //if(src.left(9) =="Projects\\") src = src.mid(9, src.length()); - src = "\\" + src;//.replace("Projects\\",""); + //if(src.left(9) ==L"Projects\\") src = src.mid(9, src.length()()); + src = L"\\" + src;//.replace(L"Projects\\",L""); //WriteLog(src); return src; } int SynchFolder(int hItem) { - string src = GetFolderPath(hItem); - if(src== "") return -1; - if(xaserver::FileCopy("devfolder8001", src, "devfolder5001", src) != 1) + xstring src = GetFolderPath(hItem); + if(src== L"") return -1; + if(xaserver::FileCopy(L"devfolder8001", src, L"devfolder5001", src) != 1) return 0; //WriteLog(src); return 1; @@ -224,34 +239,34 @@ int synchServer(xaserverarg arg) { - string name = arg.GetArgString("__name"); - string surl = arg.GetArgString("__url"); - string d = ProcessDevCmd("getobject",arg.GetString()); - if(d == "") + xstring name = arg.GetArgString(L"__name"); + xstring surl = arg.GetArgString(L"__url"); + xstring d = ProcessDevCmd(L"getobject",arg.GetString()); + if(d == L"") { - WriteLog(name+" 失败, 原因:获取文件数据失败!"); + WriteLog(name+L" 失败, 原因:获取文件数据失败!"); return -1; } //WriteLog(d); - arg.AddArg("content",d); - ProcessDevCmd("saveobject",arg.GetString(), surl,true); + arg.AddArg(L"content",d); + ProcessDevCmd(L"saveobject",arg.GetString(), surl,true); WriteLog(name); return 1; } - int WriteLog(string str) + int WriteLog(xstring str) { - if(sContent == "") + if(sContent == L"") sContent = str; else - sContent += "\r\n" + str; + sContent += L"\r\n" + str; //alert(sContent); - dw_log.SetContent(sContent, ""); + dw_log.SetContent(sContent, L""); return 1; } //焦点激活处理函数 - int OnSetFocus(ref TEvent evt,int param) + int OnSetFocus(TEvent* evt, LPARAM param) { //重置工具条 SetAgent(); @@ -262,7 +277,7 @@ { if(nCount >99) { - alert("同时同步的数量不能大于100个!"); + alert(L"同时同步的数量不能大于100个!"); return 1; } nItems[nCount] = hItem; @@ -290,17 +305,17 @@ } //命令发布函数 - int OnCmdDispatch(string comdid) + int OnCmdDispatch(xstring comdid) { - if(comdid != "synch") return 1; + if(comdid != L"synch") return 1; - int hCursor = xutil::SetCursorWait(); - sContent = ""; + HCURSOR hCursor = xutil::SetCursorWait(); + sContent = L""; for(int i=0; i<nCount; i++) { int p = nItems[i]; - //int h = xtreeview::GetItemData(tv_gs.GetId(), p); - //msxml::IXMLDOMElement e = trust(h as msxml::IXMLDOMElement); + //int h =tv_gs.GetItemData(tv_gs.GetId(), p); + //KXMLDOMElement e = trust(h as KXMLDOMElement); //alert(e.xml); SaveData(p); xtreeview::SetChecked(tv_gs.GetId(), p,0); @@ -310,13 +325,16 @@ return 0; } - int OnTreeCheckBoxSel(ref TNotifyEvent evt,int p) + int OnTreeCheckBoxSel(TEvent* evt, LPARAM p) { - ref TVNNMHDR nmtv = trust(evt.pnmh as ref TVNNMHDR); + TVNNMHDR* nmtv = (TVNNMHDR*)evt->notify.pnmh; + int hItem = nmtv.FromItem; - int hCursor = xutil::SetCursorWait(); + + HCURSOR hCursor = xutil::SetCursorWait(); int hwnd = nmtv.hwndFrom; - int c = 1 - xtreeview::GetChecked(hwnd, hItem); + + int c = 1 -tv_gs.GetChecked(hwnd, hItem); if(c == 1) Add(hItem); else @@ -326,52 +344,52 @@ } //命令处理事件 - 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)&DeveloperSynch::OnXCommand); //获取焦点事件,用于重置工具条 - //AttachEvent("WM_SETFOCUS",OnSetFocus); - AttachEvent("DevExplorer","TVN_CHECKBOXSEL",OnTreeCheckBoxSel); - AttachEvent("DevExplorer", "TVN_ITEMEXPANDING",OnTreeExpanding); + //AttachEvent(L"WM_SETFOCUS",OnSetFocus); + AttachEvent(L"DevExplorer",L"TVN_CHECKBOXSEL", (FEvent)&DeveloperSynch::OnTreeCheckBoxSel); + AttachEvent(L"DevExplorer", L"TVN_ITEMEXPANDING", (FEvent)&DeveloperSynch::OnTreeExpanding); return 1; } - int OnTreeExpanding(ref TNotifyEvent evt,int lparam) + int OnTreeExpanding(TEvent* evt, LPARAM lparam) { - ref NMTREEVIEW nmtv = trust(evt.pnmh as ref NMTREEVIEW); + TVNNMHDR* nmtv = (TVNNMHDR*)evt->notify.pnmh; int hItem = nmtv.itemNew.hItem; int cItem=xtreeview::GetChildItem(tv_gs.GetId(), hItem); if(cItem > 0) return 1; - int p = xtreeview::GetItemData(tv_gs.GetId(), hItem); - msxml::IXMLDOMElement ele = trust(p as msxml::IXMLDOMElement); - string src =GetEleString(ele, "@src"); - string tagname =GetEleString(ele, "@tagname"); - if (src == "" || tagname == "file" || tagname == "File") return 1; + int p =tv_gs.GetItemData(tv_gs.GetId(), hItem); + KXMLDOMElement ele = trust(p as KXMLDOMElement); + xstring src =GetEleString(ele, L"@src"); + xstring tagname =GetEleString(ele, L"@tagname"); + if (src == L"" || tagname == L"file" || tagname == L"File") return 1; OnSetTree(hItem, GetFolderPath(hItem)); return 1; } - int OnSetTree(int pItem, msxml::IXMLDOMElement e) + int OnSetTree(int pItem, KXMLDOMElement e) { - msxml::IXMLDOMNodeList li=e.selectNodes("*"); + KXMLDOMNodeList li=e.selectNodes(L"*"); int i=0; - int s=li.length; + int s=li.length(); for (i=0;i<s;i++){ - msxml::IXMLDOMElement ele= li.item(s - i - 1); - string caption = GetEleString(ele, "@caption"); - string src =GetEleString(ele, "@src"); - string image =GetEleString(ele, "@image"); + KXMLDOMElement ele= li.item(s - i - 1); + xstring caption = GetEleString(ele, L"@caption"); + xstring src =GetEleString(ele, L"@src"); + xstring image =GetEleString(ele, L"@image"); int p = trust(ele as int); int hItem=xtreeview::InsertItem(tv_gs.GetId(), pItem,0,caption,p,image.toInt()); - string tagname =GetEleString(ele, "@tagname"); - if (src != "" && tagname != "file" && tagname != "File") + xstring tagname =GetEleString(ele, L"@tagname"); + if (src != L"" && tagname != L"file" && tagname != L"File") xtreeview::SetItemChild1(tv_gs.GetId(), hItem,1); OnSetTree(hItem, ele); } @@ -379,19 +397,19 @@ return 1; } - int OnSetTree(int hItem, string src) + int OnSetTree(int hItem, xstring src) { xml x=new xml; - x.setNativePointer(xml::CreateInstance()); - xaserverarg arg=new xaserverarg; - arg.setNativePointer(arg.CreateInstance()); - arg.AddArg("src",src); - if(xaserver::ExecXQuery(GetServerUrl(),"[Developer.Tree.xq]",arg.GetString(),x)!=1) + + xaserverarg arg; + ; + arg.AddArg(L"src",src); + if(xaserver::ExecXQuery(GetServerUrl(),L"[Developer.Tree.xq]",arg.GetString(),x)!=1) { - alert("读取节点失败!"); + alert(L"读取节点失败!"); return 1; } - msxml::IXMLDOMElement e = x.GetXmlDoc().documentElement; + KXMLDOMElement e = x.documentElement(); OnSetTree(hItem, e); return 1; } @@ -399,8 +417,8 @@ int onload() { nCount = 0; - tv_gs = GetControl("DevExplorer"); - dw_log = GetControl("xlog"); + tv_gs = GetControl(L"DevExplorer"); + dw_log = GetControl(L"xlog"); OnAttachEvent(); return 1; @@ -408,8 +426,7 @@ int onloaded() { - OnSetTree(0, "Projects/projects.xhw"); + OnSetTree(0, L"Projects/projects.xhw"); return 1; } - }; -] \ No newline at end of file + }; \ No newline at end of file diff --git a/jrj/project/business/SystemSettings/Flow3.cpp b/jrj/project/business/SystemSettings/Flow3.cpp index 53605d6..b12854a 100644 --- a/jrj/project/business/SystemSettings/Flow3.cpp +++ b/jrj/project/business/SystemSettings/Flow3.cpp @@ -1,12 +1,18 @@ -use "xcontrol.vframe.vbusiness.vd" -use "xbase.vframe.vbusiness.vd" -use "base.view.vd" -use "xflowchart.wobject.wface.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 flow : public xframe + +#include "vbusiness/vframe/listwin.vframe.vbusiness.hpp" +#include "viewobject/view.base.hpp" + +using xml = KXMLDOMDocument; + class __declspec(dllexport) flow : public xframe { + public: xtreeview tv_1; xlayersheet tab_1; xdwgrid dw_flow; @@ -17,133 +23,139 @@ xdwgrid dw_scene; xdwgrid dw_buttonright; xdwgrid dw_datafieldright; - string flowid; + xstring flowid; xtreeview tv_folder; xnode m_agentNode; //Agent Condition - - string GetSheetType(int index) + public: + flow(void* implPtr, HWND hWnd) :xframe(implPtr, hWnd) {} + public: + static flow* CreateInstance(void* implPtr, void* hWnd) { - if (index == 0) return "flowitem"; - else if (index == 1) return "state"; - else if (index == 2) return "actionrole"; - else if (index == 3) return "button"; - else if (index == 4) return "role"; - else if (index == 5) return "bill"; - else if (index == 6) return "scene"; - else if (index ==7) return "fieldrole"; - else return "unkown"; + flow* pWin = new flow(implPtr, (HWND)hWnd); + return pWin; + } + xstring GetSheetType(int index) + { + if (index == 0) return L"flowitem"; + else if (index == 1) return L"state"; + else if (index == 2) return L"actionrole"; + else if (index == 3) return L"button"; + else if (index == 4) return L"role"; + else if (index == 5) return L"bill"; + else if (index == 6) return L"scene"; + else if (index ==7) return L"fieldrole"; + else return L"unkown"; } xdwgrid GetSheetDwgrid(int index) { - string typ = GetSheetType(index); - if(typ=="flowitem") return dw_flow; - if(typ=="actionrole") return dw_buttonright; - if(typ=="state") return dw_state; - if(typ=="button") return dw_button; - if(typ=="role") return dw_role; - if(typ=="bill") return dw_bill; - if(typ=="scene") return dw_scene; - if(typ=="fieldrole") return dw_datafieldright; + xstring typ = GetSheetType(index); + if(typ==L"flowitem") return dw_flow; + if(typ==L"actionrole") return dw_buttonright; + if(typ==L"state") return dw_state; + if(typ==L"button") return dw_button; + if(typ==L"role") return dw_role; + if(typ==L"bill") return dw_bill; + if(typ==L"scene") return dw_scene; + if(typ==L"fieldrole") return dw_datafieldright; return 0; } xdwgrid GetSheetDbmap(int index) { - string typ = GetSheetType(index); - if(typ=="flowitem") return "flow.dbmap"; - if(typ=="actionrole") return "workflow.actionrole.dbmap"; - if(typ=="state") return "state.dbmap"; - if(typ=="button") return "button.dbmap"; - if(typ=="role") return "role.dbmap"; - if(typ=="bill") return "bill.dbmap"; - if(typ=="scene") return "scene.dbmap"; - if(typ=="fieldrole") return "workflow.datarole.dbmap"; + xstring typ = GetSheetType(index); + if(typ==L"flowitem") return "flow.dbmap"; + if(typ==L"actionrole") return "workflow.actionrole.dbmap"; + if(typ==L"state") return "state.dbmap"; + if(typ==L"button") return "button.dbmap"; + if(typ==L"role") return "role.dbmap"; + if(typ==L"bill") return "bill.dbmap"; + if(typ==L"scene") return "scene.dbmap"; + if(typ==L"fieldrole") return "workflow.datarole.dbmap"; return 0; } - string GetDwname(string typ) + xstring GetDwname(xstring typ) { - if(typ=="flowitem") return "/sale/view/Flow3/template/flow"; - if(typ=="actionrole") return "/sale/view/Flow3/template/buttonright"; - if(typ=="state") return "/sale/view/Flow3/template/state"; - if(typ=="button") return "/sale/view/Flow3/template/button"; - if(typ=="role") return "/sale/view/Flow3/template/role"; - if(typ=="bill") return "/sale/view/Flow3/template/bill"; - if(typ=="scene") return "/sale/view/Flow3/template/scene"; - if(typ=="fieldrole") return "/sale/view/Flow3/template/datafieldright"; - return ""; + if(typ==L"flowitem") return L"/sale/view/Flow3/template/flow"; + if(typ==L"actionrole") return L"/sale/view/Flow3/template/buttonright"; + if(typ==L"state") return L"/sale/view/Flow3/template/state"; + if(typ==L"button") return L"/sale/view/Flow3/template/button"; + if(typ==L"role") return L"/sale/view/Flow3/template/role"; + if(typ==L"bill") return L"/sale/view/Flow3/template/bill"; + if(typ==L"scene") return L"/sale/view/Flow3/template/scene"; + if(typ==L"fieldrole") return L"/sale/view/Flow3/template/datafieldright"; + return L""; } - 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 OnSave() { - if(flowid=="") return 1; + if(flowid==L"") return 1; - string sdbmap; - xml x = new xml; - x.setNativePointer(xml::CreateInstance()); + xstring sdbmap; + xml x ; + int index = tab_1.GetSheetIndex(); - sdbmap = GetSheetDbmap(index); + sdbmap = (xstring)GetSheetDbmap(index); xdwgrid dw_list = GetSheetDwgrid(index); - dw_list.DwUpdateAllToEx(x.GetXmlDoc()); - //trace(x.GetXml()); + dw_list.DwUpdateAllToEx(x); + //trace(x.xml()); - msxml::IXMLDOMNodeList ls = x.GetXmlDoc().documentElement.SelectNodes("*[@update.modify='1' and @update.new='1']"); - int len = ls.length; + KXMLDOMNodeList ls = x.documentElement().selectNodes(L"*[@update.modify='1' and @update.new='1']"); + int len = ls.length(); for(int k=0;k<len;k++) { - msxml::IXMLDOMElement e; - if(ls.item(k).selectSingleNode("flowID")) + KXMLDOMElement e; + if(ls.item(k).selectSingleNode(L"flowID")) { - e = ls.item(k).selectSingleNode("flowID"); - e.setAttribute("update.modify","1"); - e.text = flowid; + e = ls.item(k).selectSingleNode(L"flowID"); + e.setAttribute(L"update.modify",L"1"); + e.text() = flowid; }else { - e = x.GetXmlDoc().createElement("flowID"); - e.setAttribute("update.modify","1"); - e.text = flowid; + e = x.createElement(L"flowID"); + e.setAttribute(L"update.modify",L"1"); + e.text() = flowid; ls.item(k).appendChild(e); } } - xaserverarg arg = new xaserverarg; - arg.setNativePointer(arg.CreateInstance()); - arg.AddArg("content",x.GetXml()); - arg.AddArg("sdbmap",sdbmap); - trace(x.GetXml()); - if(url::get("/sale/data/Flow3/save/flow", arg.GetString(),x)!=1) + xaserverarg arg ; + ; + arg.AddArg(L"content",x.xml()); + arg.AddArg(L"sdbmap",sdbmap); + trace(x.xml()); + if(xurl::get(L"/sale/data/Flow3/save/flow", arg.GetString(),x)!=1) { - string error = x.GetXmlDoc().text; - alert("err:"+error); + xstring error = x.text(); + alert(L"err:"+error); return 1; } dw_list.ResetUpdateStatus(); - //alert(x.GetXml()); - alert("保存成功!"); + //alert(x.xml()); + alert(L"保存成功!"); return 1; } @@ -174,7 +186,7 @@ } //焦点激活处理函数 - int OnSetFocus(ref TEvent evt,int param) + int OnSetFocus(TEvent* evt, LPARAM param) { //重置工具条 SetAgent(); @@ -184,80 +196,80 @@ return 1; } - int OnClicked(ref TNotifyEvent evt,int p) - { - ref DWNMHDR hdr = evt.pnmh; + int OnClicked(TEvent* evt, int p) + { + DWNMHDR& hdr = *(DWNMHDR*)evt->notify.pnmh; int row = hdr.row; - string colname=hdr.colname; + xstring colname=hdr.colname; //trace(colname); - xaserverarg arg = new xaserverarg; - arg.setNativePointer(arg.CreateInstance()); + xaserverarg arg ; + ; - string comdid =""; - string data=""; - string display=""; + xstring comdid =L""; + xstring data=L""; + xstring display=L""; xdwgrid dw_list; int index = tab_1.GetSheetIndex(); dw_list = GetSheetDwgrid(index); - arg.AddArg("sdata",""); - arg.AddArg("flowid",flowid); + arg.AddArg(L"sdata",L""); + arg.AddArg(L"flowid",flowid); - if(colname=="billID") + if(colname==L"billID") { - arg.AddArg("stype","bill"); - arg.AddArg("datacolumn","billID"); - arg.AddArg("displaycolumn","billName"); - arg.AddArg("dwname","/sale/view/Flow3/template/bill"); + arg.AddArg(L"stype",L"bill"); + arg.AddArg(L"datacolumn",L"billID"); + arg.AddArg(L"displaycolumn",L"billName"); + arg.AddArg(L"dwname",L"/sale/view/Flow3/template/bill"); } - else if(colname=="stateSource") + else if(colname==L"stateSource") { - arg.AddArg("stype","state"); - arg.AddArg("datacolumn","stateID"); - arg.AddArg("displaycolumn","stateName"); - arg.AddArg("dwname","/sale/view/Flow3/template/state"); + arg.AddArg(L"stype",L"state"); + arg.AddArg(L"datacolumn",L"stateID"); + arg.AddArg(L"displaycolumn",L"stateName"); + arg.AddArg(L"dwname",L"/sale/view/Flow3/template/state"); } - else if(colname=="state") + else if(colname==L"state") { - arg.AddArg("stype","state"); - arg.AddArg("datacolumn","stateID"); - arg.AddArg("displaycolumn","stateName"); - arg.AddArg("dwname","/sale/view/Flow3/template/state"); + arg.AddArg(L"stype",L"state"); + arg.AddArg(L"datacolumn",L"stateID"); + arg.AddArg(L"displaycolumn",L"stateName"); + arg.AddArg(L"dwname",L"/sale/view/Flow3/template/state"); } - else if(colname=="stateTarget") + else if(colname==L"stateTarget") { - arg.AddArg("stype","state"); - arg.AddArg("datacolumn","stateID"); - arg.AddArg("displaycolumn","stateName"); - arg.AddArg("dwname","/sale/view/Flow3/template/state"); + arg.AddArg(L"stype",L"state"); + arg.AddArg(L"datacolumn",L"stateID"); + arg.AddArg(L"displaycolumn",L"stateName"); + arg.AddArg(L"dwname",L"/sale/view/Flow3/template/state"); } - else if(colname=="roles") + else if(colname==L"roles") { - arg.AddArg("stype","role"); - arg.AddArg("datacolumn","roleName"); - arg.AddArg("displaycolumn","roleName"); - arg.AddArg("dwname","/sale/view/Flow3/template/role"); + arg.AddArg(L"stype",L"role"); + arg.AddArg(L"datacolumn",L"roleName"); + arg.AddArg(L"displaycolumn",L"roleName"); + arg.AddArg(L"dwname",L"/sale/view/Flow3/template/role"); } - else if(colname=="flowAction") + else if(colname==L"flowAction") { - arg.AddArg("stype","button"); - arg.AddArg("datacolumn","buttonName"); - arg.AddArg("displaycolumn","buttonName"); - arg.AddArg("dwname","/sale/view/Flow3/template/button"); + arg.AddArg(L"stype",L"button"); + arg.AddArg(L"datacolumn",L"buttonName"); + arg.AddArg(L"displaycolumn",L"buttonName"); + arg.AddArg(L"dwname",L"/sale/view/Flow3/template/button"); } else return 1; - OpenWindow("dev:xpage[FlowTermSelect.vx]",cast(arg as int)); - comdid = arg.GetArgString("comdid"); + OpenWindow(L"dev:xpage[FlowTermSelect.vx]",arg); + comdid = arg.GetArgString(L"comdid"); - if(comdid=="xmOk") + if(comdid==L"xmOk") { - data = arg.GetArgString("data"); - display = arg.GetArgString("display"); + data = arg.GetArgString(L"data"); + display = arg.GetArgString(L"display"); dw_list.SetItemDisplayString(row,colname,display); dw_list.SetItemString(row,colname,data); dw_list.Redraw(); @@ -271,40 +283,40 @@ int i = tab_1.GetSheetIndex(); xdwgrid dw_list = GetSheetDwgrid(i); - xaserverarg arg = new xaserverarg; - arg.setNativePointer(arg.CreateInstance()); - arg.SetArg("stype",GetSheetType(i),"string"); - arg.SetArg("sdata","ddd","string"); - arg.SetArg("flowID",flowid,"string"); + xaserverarg arg ; + ; + arg.SetArg(L"stype",GetSheetType(i),L"xstring"); + arg.SetArg(L"sdata",L"ddd",L"xstring"); + arg.SetArg(L"flowID",flowid,L"xstring"); int obj = cast(dw_list as int); - arg.SetArg("dwobj",obj.toString(),"string"); - arg.SetArg("dwname",GetDwname(GetSheetType(i)),"string"); - OpenWindow("dev:xpage[FlowTermImport.vx]",cast(arg as int)); + arg.SetArg(L"dwobj",obj.toString(),L"xstring"); + arg.SetArg(L"dwname",GetDwname(GetSheetType(i)),L"xstring"); + OpenWindow(L"dev:xpage[FlowTermImport.vx]",arg); return 1; } int OnRetrieve() { - if(flowid=="") return 1; + if(flowid==L"") return 1; - xml x = new xml; - x.setNativePointer(xml::CreateInstance()); - xaserverarg arg = new xaserverarg; - arg.setNativePointer(arg.CreateInstance()); + xml x ; + + xaserverarg arg ; + ; //int i = tab_1.GetSheetIndex(); for(int i=0;i<7;i++) { //alert(i.toString()); - arg.SetArg("stype",GetSheetType(i),"string"); - arg.SetArg("sdata","ddd","string"); - arg.SetArg("flowID",flowid,"string"); + arg.SetArg(L"stype",GetSheetType(i),L"xstring"); + arg.SetArg(L"sdata",L"ddd",L"xstring"); + arg.SetArg(L"flowID",flowid,L"xstring"); //trace(arg.GetString()); - if (getUrl("/sale/data/Flow3/retrieve/flowex",arg.GetString(),x)!=1) + if (getUrl(L"/sale/data/Flow3/retrieve/flowex",arg.GetString(),x)!=1) { - //trace(x.GetXmlDoc().text); + //trace(x.text()); //return -1; continue; } @@ -316,14 +328,15 @@ return 1; } - int OnTreeSelChanged(ref TNotifyEvent evt,int p) + int OnTreeSelChanged(TEvent* evt, int p) { - ref NMTREEVIEW nmtv = cast(evt.pnmh as NMTREEVIEW); - int hItem = nmtv.itemNew.hItem; - msxml::IXMLDOMElement e = cast(tv_folder.GetItemData(hItem) as msxml::IXMLDOMElement); - flowid = e.getAttribute("flowID"); + NMTREEVIEW& nmtv = *(NMTREEVIEW*)evt->notify.pnmh; + + HTREEITEM hItem = nmtv.itemNew.hItem; + KXMLDOMElement& e = *(KXMLDOMElement*)tv_1.GetItemData(hItem); + flowid = e.getAttribute(L"flowID"); - int hCursor = xutil::SetCursorWait(); + HCURSOR hCursor = xutil::SetCursorWait(); SetFlowChart(e); OnRetrieve(); xutil::RestoreCursor(hCursor); @@ -331,70 +344,70 @@ return 1; } - int OnTabSelectSheet(ref TNotifyEvent evt,int p) + int OnTabSelectSheet(TEvent* evt, int p) { //OnRetrieve(); return 1; } - int SetFlowChart(msxml::IXMLDOMElement e) + int SetFlowChart(KXMLDOMElement e) { - string flowUrl = e.getAttribute("flowchart"); - xflowchart flowchart = GetControl("flowchart"); - xml f = new xml; - f.setNativePointer(xml::CreateInstance()); - if(flowUrl != "") + xstring flowUrl = e.getAttribute(L"flowchart"); + xflowchart flowchart = GetControl(L"flowchart"); + xml f ; + + if(flowUrl != L"") { - if(xaserver::FetchXml(flowUrl,"",f)==1) + if(xaserver::FetchXml(flowUrl,L"",f)==1) { - flowchart.LoadEx(f.GetXmlDoc().documentElement); + flowchart.LoadEx(f.documentElement()); } }else { - f.LoadXml("<sheet/>"); - flowchart.LoadEx(f.GetXmlDoc().documentElement); + f.loadXML(L"<sheet/>"); + flowchart.LoadEx(f.documentElement()); } return 1; } //命令发布函数 - int OnCmdDispatch(string comdid) + int OnCmdDispatch(xstring comdid) { - if (comdid == "xmSave") + if (comdid == L"xmSave") return OnSave(); - if (comdid == "xmAddrow") + if (comdid == L"xmAddrow") return OnAddrow(); - if (comdid == "xmInsertrow") + if (comdid == L"xmInsertrow") return OnInsertrow(); - if (comdid == "xmDeleterow") + if (comdid == L"xmDeleterow") return OnDeleterow(); - if (comdid == "xmImport") + if (comdid == L"xmImport") return OnImport(); return 0; } //命令处理事件 - 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)&flow::OnXCommand); //获取焦点事件,用于重置工具条 - AttachEvent("WM_SETFOCUS",OnSetFocus); + AttachEvent(L"WM_SETFOCUS", (FEvent)&flow::OnSetFocus); - AttachEvent("tv_folder", "TVN_SELCHANGED",OnTreeSelChanged); - AttachEvent("tab_1","LYSN_SELECTEDSHEET",OnTabSelectSheet); - AttachEvent("dw_flow","DWV_CLICKED",OnClicked); - AttachEvent("dw_buttonright","DWV_CLICKED",OnClicked); - AttachEvent("dw_button","DWV_CLICKED",OnClicked); - AttachEvent("dw_state","DWV_CLICKED",OnClicked); + AttachEvent(L"tv_folder", L"TVN_SELCHANGED", (FEvent)&flow::OnTreeSelChanged); + AttachEvent(L"tab_1",L"LYSN_SELECTEDSHEET", (FEvent)&flow::OnTabSelectSheet); + AttachEvent(L"dw_flow",L"DWV_CLICKED", (FEvent)&flow::OnClicked); + AttachEvent(L"dw_buttonright",L"DWV_CLICKED", (FEvent)&flow::OnClicked); + AttachEvent(L"dw_button",L"DWV_CLICKED", (FEvent)&flow::OnClicked); + AttachEvent(L"dw_state",L"DWV_CLICKED", (FEvent)&flow::OnClicked); return 1; } @@ -402,18 +415,18 @@ int CreateFlowFloder() { - xml x = ViewObject::RetrieveData("/sale/data/flow3/flowfolder"); + xml x = ViewObject::RetrieveData(L"/sale/data/flow3/flowfolder"); if(x) { - msxml::IXMLDOMNodeList nlist = x.GetXmlDoc().SelectNodes("//item"); - int len = nlist.length; + KXMLDOMNodeList nlist = x.selectNodes(L"//item"); + int len = nlist.length(); int hItem = 0; for (int i = 0; i < len; i++) { - msxml::IXMLDOMElement e = nlist.item(i); - string name = e.getAttribute("flowName"); - string no = e.getAttribute("flowNo"); - string label = name;//no.trim() + " " + name; + KXMLDOMElement e = nlist.item(i); + xstring name = e.getAttribute(L"flowName"); + xstring no = e.getAttribute(L"flowNo"); + xstring label = name;//no.trim() + L" " + name; int h= tv_folder.InsertChildItem(hItem,label, trust(e as int),22); //tv_folder.SetItemChild(h,1); } @@ -424,28 +437,28 @@ int onload() { - flowid = ""; - tv_folder = GetControl("tv_folder"); + flowid = L""; + tv_folder = GetControl(L"tv_folder"); CreateFlowFloder(); - tv_1 = GetControl("tv_1"); - tab_1 = GetControl("tab_1"); - dw_flow = GetControl("dw_flow"); - dw_flow.openUrl("/sale/view/Flow3/template/flow"); - dw_state = GetControl("dw_state"); - dw_state.openUrl("/sale/view/Flow3/template/state"); - dw_button = GetControl("dw_button"); - dw_button.openUrl("/sale/view/Flow3/template/button"); - dw_role = GetControl("dw_role"); - dw_role.openUrl("/sale/view/Flow3/template/role"); - dw_bill = GetControl("dw_bill"); - dw_bill.openUrl("/sale/view/Flow3/template/bill"); - dw_scene = GetControl("dw_scene"); - dw_scene.openUrl("/sale/view/Flow3/template/scene"); - dw_buttonright = GetControl("dw_buttonright"); - dw_buttonright.openUrl("/sale/view/Flow3/template/buttonright"); - dw_datafieldright = GetControl("dw_datafieldright"); - dw_datafieldright.openUrl("/sale/view/Flow3/template/datafieldright"); + tv_1 = GetControl(L"tv_1"); + tab_1 = GetControl(L"tab_1"); + dw_flow = GetControl(L"dw_flow"); + dw_flow.openUrl(L"/sale/view/Flow3/template/flow"); + dw_state = GetControl(L"dw_state"); + dw_state.openUrl(L"/sale/view/Flow3/template/state"); + dw_button = GetControl(L"dw_button"); + dw_button.openUrl(L"/sale/view/Flow3/template/button"); + dw_role = GetControl(L"dw_role"); + dw_role.openUrl(L"/sale/view/Flow3/template/role"); + dw_bill = GetControl(L"dw_bill"); + dw_bill.openUrl(L"/sale/view/Flow3/template/bill"); + dw_scene = GetControl(L"dw_scene"); + dw_scene.openUrl(L"/sale/view/Flow3/template/scene"); + dw_buttonright = GetControl(L"dw_buttonright"); + dw_buttonright.openUrl(L"/sale/view/Flow3/template/buttonright"); + dw_datafieldright = GetControl(L"dw_datafieldright"); + dw_datafieldright.openUrl(L"/sale/view/Flow3/template/datafieldright"); OnAttachEvent(); @@ -460,5 +473,4 @@ return 1; } - }; -] \ No newline at end of file + }; \ No newline at end of file diff --git a/jrj/project/business/SystemSettings/FlowTermImport.cpp b/jrj/project/business/SystemSettings/FlowTermImport.cpp index 4579e84..13cdf5c 100644 --- a/jrj/project/business/SystemSettings/FlowTermImport.cpp +++ b/jrj/project/business/SystemSettings/FlowTermImport.cpp @@ -1,56 +1,71 @@ -use "xcontrol.vframe.vbusiness.vd" -use "xbase.vframe.vbusiness.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 FlowTermImport : public xframe + +#include "vbusiness/vframe/listwin.vframe.vbusiness.hpp" +#include "viewobject/view.base.hpp" + +using xml = KXMLDOMDocument; + class __declspec(dllexport) FlowTermImport : public xframe { + public: xdwgrid dw_list; - string stype; - string sdata; - string flowid; - string datacolumn; - string displaycolumn; + xstring stype; + xstring sdata; + xstring flowid; + xstring datacolumn; + xstring displaycolumn; xdwgrid dw_obj; xnode m_agentNode; //Agent Condition - + public: + FlowTermImport(void* implPtr, HWND hWnd) :xframe(implPtr, hWnd) {} + public: + static FlowTermImport* CreateInstance(void* implPtr, void* hWnd) + { + FlowTermImport* pWin = new FlowTermImport(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(); return 1; } - int OnOK(string comdid) + int OnOK(xstring comdid) { int row = dw_list.GetNextSelectRow(1); if(row < 1 && dw_list.GetRowCount()==1) row = 1; if (row<1) { - alert("请选择项!"); + alert(L"请选择项!"); return 1; } @@ -60,9 +75,9 @@ int columnCount = dw_obj.GetColumnCount(); for(int i=1;i<=columnCount;i++) { - if(dw_list.GetColumnName(i)=="guid") continue; + if(dw_list.GetColumnName(i)==L"guid") continue; dw_obj.SetItemString(nrow,i,dw_list.GetItemString(row,i)); - if(dw_list.GetItemDisplayString(row,i)!="") + if(dw_list.GetItemDisplayString(row,i)!=L"") dw_obj.SetItemDisplayString(nrow,i,dw_list.GetItemDisplayString(row,i)); } row = dw_list.GetNextSelectRow(row + 1); @@ -73,14 +88,14 @@ } //命令发布函数 - int OnCmdDispatch(string comdid) + int OnCmdDispatch(xstring comdid) { - if (comdid=="xmOk") + if (comdid==L"xmOk") { OnOK(comdid); return 1; } - else if (comdid=="xmCancel") + else if (comdid==L"xmCancel") { CloseWindow(); return 1; @@ -89,33 +104,34 @@ } //命令处理事件 - 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)&FlowTermImport::OnXCommand); //获取焦点事件,用于重置工具条 - AttachEvent("WM_SETFOCUS",OnSetFocus); + AttachEvent(L"WM_SETFOCUS", (FEvent)&FlowTermImport::OnSetFocus); + return 1; } int OnRetrieve() { - xml x = new xml; - x.setNativePointer(xml::CreateInstance()); - xaserverarg arg = new xaserverarg; - arg.setNativePointer(arg.CreateInstance()); + xml x ; - arg.AddArg("stype",stype); - arg.AddArg("sdata",sdata); - arg.AddArg("flowID",flowid); + xaserverarg arg ; + ; + + arg.AddArg(L"stype",stype); + arg.AddArg(L"sdata",sdata); + arg.AddArg(L"flowID",flowid); - if (getUrl("/sale/data/Flow3/retrieve/flowimport",arg.GetString(),x)!=1) + if (getUrl(L"/sale/data/Flow3/retrieve/flowimport",arg.GetString(),x)!=1) { - trace(x.GetXmlDoc().text); + trace(x.text()); return -1; }else { @@ -128,18 +144,18 @@ int onload() { - - dw_list = GetControl("dw_list"); - //dw_list.openUrl("xxx"); - if(GetParam()) + SetArg(); + dw_list = GetControl(L"dw_list"); + //dw_list.openUrl(L"xxx"); + if(GetWinParam()) { - xaserverarg arg = GetParam(); - stype = arg.GetArgString("stype"); - sdata = arg.GetArgString("sdata"); - flowid = arg.GetArgString("flowid"); + xaserverarg arg = GetArg(); + stype = arg.GetArgString(L"stype"); + sdata = arg.GetArgString(L"sdata"); + flowid = arg.GetArgString(L"flowid"); - string dwname = arg.GetArgString("dwname"); - int dwobj = arg.GetArgString("dwobj").toInt(); + xstring dwname = arg.GetArgString(L"dwname"); + int dwobj = arg.GetArgString(L"dwobj").toInt(); dw_obj = cast(dwobj as xdwgrid); dw_list.openUrl(dwname); @@ -158,5 +174,4 @@ return 1; } - }; -] \ No newline at end of file + }; \ No newline at end of file diff --git a/jrj/project/business/SystemSettings/FlowTermSelect.cpp b/jrj/project/business/SystemSettings/FlowTermSelect.cpp index 29f7b09..ce9d2bb 100644 --- a/jrj/project/business/SystemSettings/FlowTermSelect.cpp +++ b/jrj/project/business/SystemSettings/FlowTermSelect.cpp @@ -1,70 +1,85 @@ -use "xcontrol.vframe.vbusiness.vd" -use "xbase.vframe.vbusiness.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 FlowTermSelect : public xframe + +#include "vbusiness/vframe/listwin.vframe.vbusiness.hpp" +#include "viewobject/view.base.hpp" + +using xml = KXMLDOMDocument; + class __declspec(dllexport) FlowTermSelect : public xframe { + public: xdwgrid dw_list; - string stype; - string sdata; - string flowid; - string datacolumn; - string displaycolumn; + xstring stype; + xstring sdata; + xstring flowid; + xstring datacolumn; + xstring displaycolumn; xnode m_agentNode; //Agent Condition - + public: + FlowTermSelect(void* implPtr, HWND hWnd) :xframe(implPtr, hWnd) {} + public: + static FlowTermSelect* CreateInstance(void* implPtr, void* hWnd) + { + FlowTermSelect* pWin = new FlowTermSelect(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(); return 1; } - int OnOK(string comdid) + int OnOK(xstring comdid) { - xaserverarg arg = new xaserverarg; - arg.setNativePointer(arg.CreateInstance()); - arg = GetParam(); - arg.AddArg("comdid",comdid); + xaserverarg arg ; + arg = GetArg(); + + arg.AddArg(L"comdid",comdid); int row = dw_list.GetNextSelectRow(1); if(row < 1 && dw_list.GetRowCount()==1) row = 1; if (row<1) { - alert("请选择项!"); + alert(L"请选择项!"); return 1; } while (row>0) { - msxml::IXMLDOMElement e = dw_list.GetRowElement(row); - string data = e.selectSingleNode(datacolumn).text+""; - string display = e.selectSingleNode(displaycolumn).text+""; - arg.AddArg("data",data); - arg.AddArg("display",display); + KXMLDOMElement e = dw_list.GetRowElement(row); + xstring data = e.selectSingleNode(datacolumn).text()+(xstring)L""; + xstring display = e.selectSingleNode(displaycolumn).text()+ (xstring)L""; + arg.AddArg(L"data",data); + arg.AddArg(L"display",display); row = dw_list.GetNextSelectRow(row + 1); } CloseWindow(); @@ -72,14 +87,14 @@ } //命令发布函数 - int OnCmdDispatch(string comdid) + int OnCmdDispatch(xstring comdid) { - if (comdid=="xmOk") + if (comdid==L"xmOk") { OnOK(comdid); return 1; } - else if (comdid=="xmCancel") + else if (comdid==L"xmCancel") { CloseWindow(); return 1; @@ -88,33 +103,34 @@ } //命令处理事件 - 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)&FlowTermSelect::OnXCommand); //获取焦点事件,用于重置工具条 - AttachEvent("WM_SETFOCUS",OnSetFocus); + AttachEvent(L"WM_SETFOCUS", (FEvent)&FlowTermSelect::OnSetFocus); + return 1; } int OnRetrieve() { - xml x = new xml; - x.setNativePointer(xml::CreateInstance()); - xaserverarg arg = new xaserverarg; - arg.setNativePointer(arg.CreateInstance()); + xml x ; - arg.AddArg("stype",stype); - arg.AddArg("sdata",sdata); - arg.AddArg("flowID",flowid); + xaserverarg arg ; + ; + + arg.AddArg(L"stype",stype); + arg.AddArg(L"sdata",sdata); + arg.AddArg(L"flowID",flowid); - if (getUrl("/sale/data/Flow3/retrieve/flowex",arg.GetString(),x)!=1) + if (getUrl(L"/sale/data/Flow3/retrieve/flowex",arg.GetString(),x)!=1) { - trace(x.GetXmlDoc().text); + trace(x.text()); return -1; }else { @@ -127,20 +143,20 @@ int onload() { - - dw_list = GetControl("dw_list"); - //dw_list.openUrl("xxx"); - if(GetParam()) + SetArg(); + dw_list = GetControl(L"dw_list"); + //dw_list.openUrl(L"xxx"); + if(GetWinParam()) { - xaserverarg arg = GetParam(); - stype = arg.GetArgString("stype"); - sdata = arg.GetArgString("sdata"); - flowid = arg.GetArgString("flowid"); + xaserverarg arg = GetArg(); + stype = arg.GetArgString(L"stype"); + sdata = arg.GetArgString(L"sdata"); + flowid = arg.GetArgString(L"flowid"); - datacolumn = arg.GetArgString("datacolumn"); - displaycolumn = arg.GetArgString("displaycolumn"); + datacolumn = arg.GetArgString(L"datacolumn"); + displaycolumn = arg.GetArgString(L"displaycolumn"); - string dwname = arg.GetArgString("dwname"); + xstring dwname = arg.GetArgString(L"dwname"); dw_list.openUrl(dwname); OnRetrieve(); dw_list.SetSelectionMode(1); @@ -157,5 +173,4 @@ return 1; } - }; -] \ No newline at end of file + }; \ No newline at end of file diff --git a/jrj/project/business/SystemSettings/LogList.cpp b/jrj/project/business/SystemSettings/LogList.cpp index f781cf6..07f77fb 100644 --- a/jrj/project/business/SystemSettings/LogList.cpp +++ b/jrj/project/business/SystemSettings/LogList.cpp @@ -1,41 +1,56 @@ -use "xcontrol.vframe.vbusiness.vd" -use "xbase.vframe.vbusiness.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 ViewLogList : public xwin + +#include "vbusiness/vframe/listwin.vframe.vbusiness.hpp" +#include "viewobject/view.base.hpp" + +using xml = KXMLDOMDocument; + class __declspec(dllexport) ViewLogList : public xwin { + public: xdwgrid dw_list; xoffice dw_office; xcell dw_cell; xnode m_agentNode; //Agent Condition - string m_category; - string argStr; - string searchStr; - + xstring m_category; + xstring argStr; + xstring searchStr; + public: + ViewLogList(void* implPtr, HWND hWnd) :xwin(implPtr, hWnd) {} + public: + static ViewLogList* CreateInstance(void* implPtr, void* hWnd) + { + ViewLogList* pWin = new ViewLogList(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(); @@ -43,63 +58,62 @@ } //命令发布函数 - int OnCmdDispatch(string comdid) + int OnCmdDispatch(xstring comdid) { - int hCursor = 0; - if(comdid=="xmQuery") + HCURSOR hCursor = 0; + if(comdid==L"xmQuery") { - xaserverarg ar = new xaserverarg; - ar.setNativePointer(ar.CreateInstance()); - ar.AddArg("argurl","/sale/view/Total3/arg/LogListItem"); - if(argStr !="") - ar.AddArg("arg",argStr); - OpenWindow("dev:xpage[view.total.arg.vx]",cast(ar as int)); - string arstr = ar.GetArgString("arg"); - if(arstr != "" && ar.GetArgString("action")=="ok") + xaserverarg ar ; + + ar.AddArg(L"argurl",L"/sale/view/Total3/arg/LogListItem"); + if(argStr !=L"") + ar.AddArg(L"arg",argStr); + OpenWindow(L"dev:xpage[view.total.arg.vx]",ar); + xstring arstr = ar.GetArgString(L"arg"); + if(arstr != L"" && ar.GetArgString(L"action")==L"ok") { argStr = arstr; hCursor = xutil::SetCursorWait(); - OnRetrieve("/sale/data/Total3/total/GDNTotal/Item/LogList",argStr); + OnRetrieve(L"/sale/data/Total3/total/GDNTotal/Item/LogList",argStr); xutil::RestoreCursor(hCursor); } else { - argStr=""; - OnRetrieve("/sale/data/Total3/total/GDNTotal/Item/LogList",argStr); + argStr=L""; + OnRetrieve(L"/sale/data/Total3/total/GDNTotal/Item/LogList",argStr); } return 1; } - if(comdid=="xmAnalysis") + if(comdid==L"xmAnalysis") { hCursor = xutil::SetCursorWait(); - string str = dw_list.DataAnalysis(""); - xaserverarg arg=new xaserverarg; - arg.setNativePointer(arg.CreateInstance()); - arg.AddArg("html", str); - int obj = cast(dw_list as int); - arg.AddArg("obj",obj.toString()); - OpenWindow("dev:xpage[data.vanalysis.vx]", cast(arg as int)); + xstring str = dw_list.DataAnalysis(L""); + xaserverarg arg; + ; + arg.AddArg(L"html", str); + + OpenWindow(L"dev:xpage[data.vanalysis.vx]", arg); xutil::RestoreCursor(hCursor); return 1; } - if(comdid=="xmSearch") return OnSearch(); + if(comdid==L"xmSearch") return OnSearch(); return 0; } int OnSearch() { - xaserverarg arg=new xaserverarg; - arg.setNativePointer(arg.CreateInstance()); - arg.AddArg("text", searchStr); - OpenWindow("dev:xpage[search.dialog.vx]", cast(arg as int)); - string str = arg.GetArgString("text"); + xaserverarg arg; + ; + arg.AddArg(L"text", searchStr); + OpenWindow(L"dev:xpage[search.dialog.vx]", arg); + xstring str = arg.GetArgString(L"text"); if(str != searchStr) { searchStr = str; - dw_list.Filter("*",searchStr); + dw_list.Filter(L"*",searchStr); return 1; } return 1; @@ -107,16 +121,16 @@ - int OnCombboChanged(ref TCommandEvent evt,int lParam) + int OnCombboChanged(TEvent* evt, LPARAM lParam) { - int h = xcombobox::GetCurSel(evt.hCtrl); + int h = xcombobox::GetCurSel(evt->command.hCtrl); if(h > -1) { - int hCursor = xutil::SetCursorWait(); - msxml::IXMLDOMElement e = xcombobox::GetItemData(evt.hCtrl, h); + HCURSOR hCursor = xutil::SetCursorWait(); + KXMLDOMElement e = xcombobox::GetItemData(evt->command.hCtrl, h); - win32::PostMessage(GetHWND(),0x401,"xmQuery",0); - //OnCmdDispatch("xmQuery"); + PostMessage(GetHWND(),0x401,(LPARAM)L"xmQuery",0); + //OnCmdDispatch(L"xmQuery"); xutil::RestoreCursor(hCursor); } return 1; @@ -125,16 +139,16 @@ //命令处理事件 - int OnXCommand(ref TXCommandEvent evt,int param) + int OnXCommand(TEvent* evt, LPARAM param) { - return OnCmdDispatch(evt.pStrID); + return OnCmdDispatch(evt->xcommand.pStrID); } - int OnDWClick(ref TNotifyEvent evt,int p) + int OnDWClick(TEvent* evt, int p) { - ref DWNMHDR hdr = trust(evt.pnmh as ref DWNMHDR); - string value = hdr.data; - string colname = hdr.colname; + DWNMHDR& hdr = *(DWNMHDR*)evt->notify.pnmh; + xstring value = hdr.data; + xstring colname = hdr.colname; int row = hdr.row; if(row < 1) return 1; @@ -145,32 +159,33 @@ int OnAttachEvent() { //绑定工具条点击事件 - AttachEvent("WM_XCOMMAND",OnXCommand); + AttachEvent(L"WM_XCOMMAND", (FEvent)&ViewLogList::OnXCommand); //获取焦点事件,用于重置工具条 - AttachEvent("WM_SETFOCUS",OnSetFocus); - AttachEvent("cb_report","CBN_SELCHANGE",OnCombboChanged); - AttachEvent("dw_report","DWV_CLICKED",OnDWClick); + AttachEvent(L"WM_SETFOCUS", (FEvent)&ViewLogList::OnSetFocus); + AttachEvent(L"cb_report",L"CBN_SELCHANGE", (FEvent)&ViewLogList::OnCombboChanged); + AttachEvent(L"dw_report",L"DWV_CLICKED", (FEvent)&ViewLogList::OnDWClick); + return 1; } - int OnRetrieve(string dataurl, string argstr) + int OnRetrieve(xstring dataurl, xstring argstr) { dw_list.Reset(); - xml x = new xml; - x.setNativePointer(xml::CreateInstance()); - xaserverarg arg = new xaserverarg; - arg.setNativePointer(arg.CreateInstance()); - arg.AddArg("arg",argstr); + xml x ; + + xaserverarg arg ; + ; + arg.AddArg(L"arg",argstr); //alert(argstr); - if (url::get(dataurl,arg.GetString(),x)!=1) + if (xurl::get(dataurl,arg.GetString(),x)!=1) { - //alert(x.GetXml()); - trace(x.GetXmlDoc().text); + //alert(x.xml()); + trace(x.text()); dw_list.Redraw(); return -1; } - //alert(x.GetXml()); + //alert(x.xml()); dw_list.Retrieve(x); dw_list.Redraw(); dw_list.SetReadOnly(true); @@ -180,13 +195,13 @@ int onload() { - dw_list = GetControl("dw_report"); - dw_office = GetControl("dw_office"); - dw_cell = GetControl("dw_cell"); - dw_list.openUrl("/sale/view/Total3/template/business/gdn/LogList/ship/full"); + dw_list = GetControl(L"dw_report"); + dw_office = GetControl(L"dw_office"); + dw_cell = GetControl(L"dw_cell"); + dw_list.openUrl(L"/sale/view/Total3/template/business/gdn/LogList/ship/full"); - argStr =""; - xcombobox xc = GetControl("cb_report"); + argStr =L""; + xcombobox xc = GetControl(L"cb_report"); OnAttachEvent(); @@ -196,8 +211,7 @@ int onloaded() { SetAgent(); - OnCmdDispatch("xmQuery"); + OnCmdDispatch(L"xmQuery"); return 1; } - }; -] \ No newline at end of file + }; \ No newline at end of file diff --git a/jrj/project/business/SystemSettings/SysLoginRecord.cpp b/jrj/project/business/SystemSettings/SysLoginRecord.cpp index 64f2570..72012a6 100644 --- a/jrj/project/business/SystemSettings/SysLoginRecord.cpp +++ b/jrj/project/business/SystemSettings/SysLoginRecord.cpp @@ -1,77 +1,90 @@ -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 vbusiness -[ - class SysLoginRecord : public frame + +#include "vbusiness/vframe/listwin.vframe.vbusiness.hpp" +#include "viewobject/view.base.hpp" + +using xml = KXMLDOMDocument; + class __declspec(dllexport) SysLoginRecord : public xframe { + public: xdwgrid dw_logrecord; xdwtable dw_arg; + public: + SysLoginRecord(void* implPtr, HWND hWnd) :xframe(implPtr, hWnd) {} + public: + static SysLoginRecord* CreateInstance(void* implPtr, void* hWnd) + { + SysLoginRecord* pWin = new SysLoginRecord(implPtr, (HWND)hWnd); + return pWin; + } int OnRetrieve() { - xcontrol xc_text =GetControl("QueryTxt"); - xcontrol xc_cbx = GetControl("cbx_type"); - string ls_querytxt; - string ls_querytype; + xcontrol xc_text =GetControl(L"QueryTxt"); + xcontrol xc_cbx = GetControl(L"cbx_type"); + xstring ls_querytxt; + xstring ls_querytype; ls_querytxt = xc_text.GetText(); ls_querytype = xc_cbx.GetText(); - xml x = new xml; - x.setNativePointer(x.CreateInstance()); - xaserverarg arg = new xaserverarg; - arg.setNativePointer(arg.CreateInstance()); - arg.AddArg("sType",ls_querytype); - arg.AddArg("QueryText",ls_querytxt); - arg.AddArg("QueryArg",GetQueryArg()); + xml x ; + xaserverarg arg ; + arg.AddArg(L"sType",ls_querytype); + arg.AddArg(L"QueryText",ls_querytxt); + arg.AddArg(L"QueryArg",GetQueryArg()); //alert(ls_querytxt); - if (url::get("/sale/data/Total3/total/GDNTotal/Item/GetSysLoginLog",arg.GetString(),x) == 1) + if (xurl::get(L"/sale/data/Total3/total/GDNTotal/Item/GetSysLoginLog",arg.GetString(),x) == 1) { - //trace(x.GetXml()); + //trace(x.xml()); dw_logrecord.Retrieve(x); dw_logrecord.Redraw(); dw_logrecord.SetSelectionMode(1); } else - alert("查不到"); + alert(L"查不到"); return 1; } //命令发布函数 - int OnCmdDispatch(string comdid) + int OnCmdDispatch(xstring comdid) { - int hCursor = xutil::SetCursorWait(); - if(comdid=="ContSearch") + HCURSOR hCursor = xutil::SetCursorWait(); + if(comdid==L"ContSearch") OnRetrieve(); return 0; } //命令处理事件 - int OnXCommand(ref TXCommandEvent evt,int p) + int OnXCommand(TEvent* evt, LPARAM param) { - return OnCmdDispatch(evt.pStrID); + return OnCmdDispatch(evt->xcommand.pStrID); } - string GetQueryArg() + xstring GetQueryArg() { dw_arg.AcceptText(); - xml x = new xml; - x.setNativePointer(xml::CreateInstance()); - dw_arg.DwUpdateAllTo(x.GetXmlDoc()); - return x.GetXml(); + xml x ; + + dw_arg.DwUpdateAllTo(x); + return x.xml(); } int OnAttachEvent() { - AttachEvent("WM_XCOMMAND",OnXCommand); + AttachEvent(L"WM_XCOMMAND", (FEvent)&SysLoginRecord::OnXCommand); return 1; } int onload() { - dw_logrecord = GetControl("dw_logrecord"); - dw_logrecord.openUrl("/sale/view/SysUser/template/SysLoginRecord"); - dw_arg = GetControl("dw_arg"); - dw_arg.openUrl("/sale/view/AR/template/queryarg"); + dw_logrecord = GetControl(L"dw_logrecord"); + dw_logrecord.openUrl(L"/sale/view/SysUser/template/SysLoginRecord"); + dw_arg = GetControl(L"dw_arg"); + dw_arg.openUrl(L"/sale/view/AR/template/queryarg"); dw_arg.SetColHeaderHeight(0); dw_arg.SetRowSelectorWidth(0); dw_arg.SetHScrollState(false); @@ -80,10 +93,9 @@ } int onloaded() { - //alert("xxx"); + //alert(L"xxx"); OnAttachEvent(); //OnRetrieve(); return 1; } - }; -] \ No newline at end of file + }; \ No newline at end of file diff --git a/jrj/project/business/SystemSettings/TestRetrieveing.cpp b/jrj/project/business/SystemSettings/TestRetrieveing.cpp index 65769bf..d61909f 100644 --- a/jrj/project/business/SystemSettings/TestRetrieveing.cpp +++ b/jrj/project/business/SystemSettings/TestRetrieveing.cpp @@ -1,25 +1,40 @@ -use "xcontrol.vframe.vbusiness.vd" -use "xbase.vframe.vbusiness.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 TestRetrieveingWin: public xframe + +#include "vbusiness/vframe/listwin.vframe.vbusiness.hpp" +#include "viewobject/view.base.hpp" + +using xml = KXMLDOMDocument; + class __declspec(dllexport) TestRetrieveingWin: public xframe { + public: //xdwgrid dw_list; xnode m_agentNode; //Agent Condition - + public: + TestRetrieveingWin(void* implPtr, HWND hWnd) :xframe(implPtr, hWnd) {} + public: + static TestRetrieveingWin* CreateInstance(void* implPtr, void* hWnd) + { + TestRetrieveingWin* pWin = new TestRetrieveingWin(implPtr, (HWND)hWnd); + return pWin; + } //焦点激活处理函数 - int OnSetFocus(ref TEvent evt,int param) + int OnSetFocus(TEvent* evt, LPARAM param) { //重置工具条 return 1; } //命令发布函数 - int OnCmdDispatch(string comdid) + int OnCmdDispatch(xstring comdid) { - if(comdid=="RetrieveFinished") + if(comdid==L"RetrieveFinished") { CloseWindow(); return 1; @@ -28,17 +43,18 @@ } //命令处理事件 - 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)&TestRetrieveingWin::OnXCommand); //获取焦点事件,用于重置工具条 - AttachEvent("WM_SETFOCUS",OnSetFocus); + AttachEvent(L"WM_SETFOCUS", (FEvent)&TestRetrieveingWin::OnSetFocus); + return 1; } int onload() @@ -48,5 +64,4 @@ return 1; } - }; -] \ No newline at end of file + }; \ No newline at end of file diff --git a/jrj/project/business/SystemSettings/UserPassDlg.cpp b/jrj/project/business/SystemSettings/UserPassDlg.cpp index 92aeffc..2dc14b5 100644 --- a/jrj/project/business/SystemSettings/UserPassDlg.cpp +++ b/jrj/project/business/SystemSettings/UserPassDlg.cpp @@ -1,38 +1,54 @@ -use "xcontrol.vframe.vbusiness.vd" -use "xbase.vframe.vbusiness.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 UserPassDlg : public xframe + +#include "vbusiness/vframe/listwin.vframe.vbusiness.hpp" +#include "viewobject/view.base.hpp" + +using xml = KXMLDOMDocument; + class __declspec(dllexport) UserPassDlg : public xframe { + public: //xdwgrid dw_list; xnode m_agentNode; //Agent Condition - static string MD5(string) native from "XUtil.dll" alias "?MD5@IXFUtil@XFrame@Hxsoft@@SAPA_WPA_W@Z"; + static xstring MD5(xstring) native from "XUtil.dll" alias "?MD5@IXFUtil@XFrame@Hxsoft@@SAPA_WPA_W@Z"; + public: + UserPassDlg(void* implPtr, HWND hWnd) :xframe(implPtr, hWnd) {} + public: + static UserPassDlg* CreateInstance(void* implPtr, void* hWnd) + { + UserPassDlg* pWin = new UserPassDlg(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,53 +56,53 @@ } //命令发布函数 - int OnCmdDispatch(string comdid) + int OnCmdDispatch(xstring comdid) { - if(comdid=="xmCancel") + if(comdid==L"xmCancel") { CloseWindow(); return 1; } - else if(comdid=="xmOk") + else if(comdid==L"xmOk") { - if(GetControl("old_pass").GetText()=="") + if(xcontrol(GetControl(L"old_pass")).GetText()==L"") { - alert("请输入旧口令!"); - win32::SetFocus(GetControl("old_pass").GetId()); + alert(L"请输入旧口令!"); + SetFocus(xcontrol(GetControl(L"old_pass")).GetId()); return 1; } - string ostr = GetControl("old_pass").GetText(); - string str1 = GetControl("new_pass").GetText(); - string str2 = GetControl("new_pass1").GetText(); + xstring ostr = xcontrol(GetControl(L"old_pass")).GetText(); + xstring str1 = xcontrol(GetControl(L"new_pass")).GetText(); + xstring str2 = xcontrol(GetControl(L"new_pass1")).GetText(); if(str1 != str2) { - alert("两遍新口令不一致!"); - win32::SetFocus(GetControl("new_pass1").GetId()); + alert(L"两遍新口令不一致!"); + SetFocus(xcontrol(GetControl(L"new_pass1")).GetId()); return 1; } - string oldpass = MD5(ostr); - string newpass = MD5(str1); + xstring oldpass = MD5(ostr); + xstring newpass = MD5(str1); - xml x=new xml; - x.setNativePointer(x.CreateInstance()); - xaserverarg arg = new xaserverarg; - arg.setNativePointer(arg.CreateInstance()); - arg.AddArg("old_password",oldpass); - arg.AddArg("new_password",newpass); + xml x; - if(getUrl("/sale/data/SysUser/update/password",arg.GetString(),x)!=1) + xaserverarg arg ; + ; + arg.AddArg(L"old_password",oldpass); + arg.AddArg(L"new_password",newpass); + + if(getUrl(L"/sale/data/SysUser/update/password",arg.GetString(),x)!=1) { - alert("修改失败"); + alert(L"修改失败"); } else{ - if(x.GetXmlDoc().selectSingleNode("error")) + if(x.selectSingleNode(L"error")) { - alert(x.GetXmlDoc().selectSingleNode("error").text); + alert(x.selectSingleNode(L"error").text()); return 1; } - win32::MessageBox(GetHWND(),"修改口令成功!","提示",0); + MessageBox(GetHWND(),L"修改口令成功!",L"提示",0); CloseWindow(); } return 1; @@ -95,26 +111,27 @@ } //命令处理事件 - 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)&UserPassDlg::OnXCommand); //获取焦点事件,用于重置工具条 - AttachEvent("WM_SETFOCUS",OnSetFocus); + AttachEvent(L"WM_SETFOCUS", (FEvent)&UserPassDlg::OnSetFocus); + return 1; } int onload() { //const int EM_SETPASSWORDCHAR =0x00CC; - //win32::SendMessage(GetControl("old_pass").GetId(),EM_SETPASSWORDCHAR,42,0); - //win32::SendMessage(GetControl("new_pass").GetId(),EM_SETPASSWORDCHAR,42,0); - //win32::SendMessage(GetControl("new_pass1").GetId(),EM_SETPASSWORDCHAR,42,0); + //win32::SendMessage(GetControl(L"old_pass").GetId(),EM_SETPASSWORDCHAR,42,0); + //win32::SendMessage(GetControl(L"new_pass").GetId(),EM_SETPASSWORDCHAR,42,0); + //win32::SendMessage(GetControl(L"new_pass1").GetId(),EM_SETPASSWORDCHAR,42,0); OnAttachEvent(); @@ -127,5 +144,4 @@ return 1; } - }; -] \ No newline at end of file + }; \ No newline at end of file diff --git a/jrj/project/business/SystemSettings/level.Customer.v3.cpp b/jrj/project/business/SystemSettings/level.Customer.v3.cpp index a3615e3..9326ae6 100644 --- a/jrj/project/business/SystemSettings/level.Customer.v3.cpp +++ b/jrj/project/business/SystemSettings/level.Customer.v3.cpp @@ -1,45 +1,60 @@ -use "xcontrol.vframe.vbusiness.vd" -use "xbase.vframe.vbusiness.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 levelCustomerv3 : public listwin + +#include "vbusiness/vframe/listwin.vframe.vbusiness.hpp" +#include "viewobject/view.base.hpp" + +using xml = KXMLDOMDocument; +class __declspec(dllexport) levelCustomerv3 : public listwin { +public: xdwgrid dw_goods; xtreeview tv_1; xcombobox ddlb_1; int changeddlb; - string m_sType; //type - string m_sTypeTxt; //选中树的data -// string m_searchtxt; + xstring m_sType; //type + xstring m_sTypeTxt; //选中树的data +// xstring m_searchtxt; int PIndex; xnode m_agentNode; //Agent Condition - string m_agentCond; //Agent Node + xstring m_agentCond; //Agent Node - +public: + levelCustomerv3(void* implPtr, HWND hWnd) :listwin(implPtr, hWnd) {} +public: + static levelCustomerv3* CreateInstance(void* implPtr, void* hWnd) + { + levelCustomerv3* pWin = new levelCustomerv3(implPtr, (HWND)hWnd); + return pWin; + } int OnPreRetrieve() { - xml x = new xml; - x.setNativePointer(xml ::CreateInstance()); - xaserverarg arg = new xaserverarg; - arg.setNativePointer(arg.CreateInstance()); - arg.AddArg("pageindex", PIndex.toString()); //第几页 - arg.AddArg("pagenumber", m_pageNumber.toString()); //每页数量 - arg.AddArg("QueryTxt",m_QueryTxt ); - arg.AddArg("sType", m_sType);//没有参数 - arg.AddArg("sTypeTxt", m_sTypeTxt);//没有参数 + xml x ; - if(getUrl("/sale/data/"+GetEntityName(1)+"/entity/list",arg.GetString(),x)!=1) + xaserverarg arg ; + ; + arg.AddArg(L"pageindex", xstring(PIndex)); //第几页 + arg.AddArg(L"pagenumber", xstring(m_pageNumber)); //每页数量 + arg.AddArg(L"QueryTxt",m_QueryTxt ); + arg.AddArg(L"sType", m_sType);//没有参数 + arg.AddArg(L"sTypeTxt", m_sTypeTxt);//没有参数 + + if(getUrl(L"/sale/data/"+GetEntityName(1)+L"/entity/list",arg.GetString(),x)!=1) { - alert("出现错误请联系管理员!"); + alert(L"出现错误请联系管理员!"); return 0; }else { - msxml::IXMLDOMElement e=x.GetXmlDoc().documentElement; - if(listwin::dw_pages.ptr_native_ && e.selectSingleNode("@TotalPage")) + KXMLDOMElement e=x.documentElement(); + if(listwin::dw_pages.ptr_native_ && e.selectSingleNode(L"@TotalPage")) { - string s=e.selectSingleNode("@TotalPage").text; //总数量 + xstring s=e.selectSingleNode(L"@TotalPage").text(); //总数量 listwin::dw_pages.SetMaxPage(s.toInt()); } listwin::dw_list.Retrieve(x); @@ -49,22 +64,23 @@ return 1; } - int OnChangePages(ref TNotifyEvent evt,int p) + int OnChangePages(TEvent* evt, int p) { - ref PAGENMHDR h = evt.pnmh; + PAGENMHDR& h = *(PAGENMHDR*)evt->notify.pnmh; + int c = h.cur; - int hCursor = xutil::SetCursorWait(); + HCURSOR hCursor = xutil::SetCursorWait(); OnRetrieve(); PIndex=c; xutil::RestoreCursor(hCursor); return 1; } - int ViewUpdate(int pr,string updateItem,xaserverarg arg) + int ViewUpdate(int pr,xstring updateItem,xaserverarg arg) { - if(updateItem == "refresh") + if(updateItem == L"refresh") { - xdwpages zz = this.GetControl("pages"); + xdwpages zz = GetControl(L"pages"); int h = zz.SetCurPage(1); OnRetrieve(); } @@ -72,20 +88,20 @@ } //树选择 - int OnTreeSelChanged(ref TNotifyEvent evt,int p) + int OnTreeSelChanged(TEvent* evt, int p) { if (changeddlb != 1) { - int wid = tv_1.GetId(); - int h=xtreeview::GetSelectedItem(wid); - msxml::IXMLDOMElement e = xtreeview::GetItemData(wid,h); - string t = e.SelectSingleNode("@type").text; - m_sType=t+""; - string txt = e.SelectSingleNode("@code").text; - if (txt == "") - txt = e.SelectSingleNode("@name").text; - m_sTypeTxt= txt+""; + HTREEITEM h=tv_1.GetSelectedItem(); + KXMLDOMElement e = tv_1.GetItemData(h); + + xstring t = e.selectSingleNode(L"@type").text(); + m_sType=t+L""; + xstring txt = e.selectSingleNode(L"@code").text(); + if (txt == L"") + txt = e.selectSingleNode(L"@name").text(); + m_sTypeTxt= txt+L""; PIndex= 1; OnRetrieve(); @@ -93,53 +109,55 @@ return 1; } - int createSubTree(int wid,int h, msxml::IXMLDOMElement ele) + int createSubTree(HTREEITEM h, KXMLDOMElement ele) { - msxml::IXMLDOMNodeList nlist=ele.SelectNodes("item"); + KXMLDOMNodeList nlist=ele.selectNodes(L"item"); int i; - int s=nlist.length; + int s=nlist.length(); if (s>0) for (i=0; i<s; i++) { - msxml::IXMLDOMElement e=nlist.item(i); - string name=e.SelectSingleNode("@name").text; - int hw=xtreeview::InsertChildItem(wid,h,name,trust(e as int),15); - createSubTree(wid,hw, e); + KXMLDOMElement* e = new KXMLDOMElement(nlist.item(i)); + xstring name = e->selectSingleNode(L"@name").text(); + HTREEITEM hw = tv_1.InsertChildItem(h, name, (LPARAM)e, 15); + createSubTree(hw, *e); } return 1; } - int OnCreateTree(string sType) + + int OnCreateTree(xstring sType) { - int wid = tv_1.GetId(); - while (xtreeview::GetRootItem(wid)>0) - xtreeview::DeleteItem(wid,xtreeview::GetRootItem(wid)); - xml x = new xml; - x.setNativePointer(x.CreateInstance()); - xaserverarg arg = new xaserverarg; - arg.setNativePointer(arg.CreateInstance()); - arg.AddArg("sType",sType); - if(getUrl("/sale/data/"+GetEntityName(1)+"/pref/list/tree",arg.GetString(),x)!=1) + while (tv_1.GetRootItem()>0) + tv_1.DeleteItem(tv_1.GetRootItem()); + + xml x ; + + xaserverarg arg ; + ; + arg.AddArg(L"sType",sType); + if(getUrl(L"/sale/data/"+GetEntityName(1)+L"/pref/list/tree",arg.GetString(),x)!=1) { - trace(x.GetXmlDoc().text); + trace(x.text()); return -1; }else { - msxml::IXMLDOMNodeList nlist=x.GetXmlDoc().SelectNodes("root/item"); - int len = nlist.length; + KXMLDOMNodeList nlist=x.selectNodes(L"root/item"); + int len = nlist.length(); if (len >0) { int i; for (i=0;i <len; i++) { - msxml::IXMLDOMElement e = nlist.item(i); - string name = e.SelectSingleNode("@name").text; - int h = xtreeview::InsertChildItem(wid,0,name,trust(e as int),15); - createSubTree(wid,h,e); - xtreeview::ExpandItem(wid,h); + KXMLDOMElement* e = new KXMLDOMElement(nlist.item(i)); + xstring name = e->selectSingleNode(L"@name").text(); + HTREEITEM hw = tv_1.InsertChildItem(0, name, (LPARAM)e, 15); + + createSubTree(hw, *e); + tv_1.ExpandItem(hw); } - xtreeview::ExpandItem(wid,0); + tv_1.ExpandItem(0); } } @@ -147,17 +165,17 @@ } //xcombobox下拉 - int OnSelectDdlb(ref TNotifyEvent evt,int p) + int OnSelectDdlb(TEvent* evt, int p) { - changeddlb=1; - int wid = ddlb_1.GetId(); - int CB_GETCURSEL = 0x0147; - int nIndex = win32::SendMessage(wid,CB_GETCURSEL,0,0); - msxml::IXMLDOMElement e = ddlb_1.GetElement(); - msxml::IXMLDOMElement e2 = e.selectSingleNode("item["+(nIndex+1).toString()+"]"); - string text=e2.selectSingleNode("@element").text; + changeddlb = 1; + + int CB_GETCURSEL = 0x0147; + int nIndex = SendMessageW(ddlb_1.GetHWND(), CB_GETCURSEL, 0, 0); + KXMLDOMElement e = ddlb_1.GetElement();//GetitemData(wid,nIndex);//ddlb_1.GetElement(); + KXMLDOMElement e2 = e.selectSingleNode(L"item[" + xstring((nIndex + 1)) + L"]"); + xstring text = e2.selectSingleNode(L"@element").text(); OnCreateTree(text); - changeddlb=0; + changeddlb = 0; return 1; } @@ -171,20 +189,20 @@ } } - msxml::IXMLDOMElement e = listwin::dw_list.GetRowElement(row); - string sguid = e.SelectSingleNode("@guid").text; - string sName = e.selectSingleNode("Name").text+""; + KXMLDOMElement e = listwin::dw_list.GetRowElement(row); + xstring sguid = e.selectSingleNode(L"@guid").text(); + xstring sName = e.selectSingleNode(L"Name").text()+(xstring)L""; int MB_YESNO = 0x00000004; int IDYES = 6; - if(win32::MessageBox(GetHWND(),"确认要删除客户 "+sName+" 的信息吗?","提示",MB_YESNO)!=IDYES) return 1; - xml x = new xml; - x.setNativePointer(x.CreateInstance()); - xaserverarg arg = new xaserverarg; - arg.setNativePointer(arg.CreateInstance()); - arg.AddArg("guid",sguid); - if (url::post("/sale/data/"+GetEntityName(1)+"/entity/delete",arg.GetString(),x) != 1) + if(MessageBox(GetHWND(),L"确认要删除客户 "+sName+L" 的信息吗?",L"提示",MB_YESNO)!=IDYES) return 1; + xml x ; + + xaserverarg arg ; + ; + arg.AddArg(L"guid",sguid); + if (xurl::post(L"/sale/data/"+GetEntityName(1)+L"/entity/delete",arg.GetString(),x) != 1) { - string error = x.GetXmlDoc().text; + xstring error = x.text(); trace(error); } else @@ -203,7 +221,7 @@ return 1; } - int OnRClick(ref TNotifyEvent evt,int p) + int OnRClick(TEvent* evt, int p) { return 1; } @@ -214,66 +232,66 @@ //设置层级弹出窗与保存 int OnLevelCustomer() { - xaserverarg arg = new xaserverarg; - arg.setNativePointer(arg.CreateInstance()); - OpenWindow("dev:xpage[maint.Level.Customer3.vx]", cast(arg as int)); + xaserverarg arg ; + ; + OpenWindow(L"dev:xpage[maint.Level.Customer3.vx]", arg); - xml ux = new xml; - ux.setNativePointer(ux.CreateInstance()); - ux.LoadXml("<Partys/>"); - msxml::IXMLDOMElement ele = ux.GetXmlDoc().documentElement; + xml ux ; + + ux.loadXML(L"<Partys/>"); + KXMLDOMElement ele = ux.documentElement(); - if(arg.GetArgString("ok")=="true") + if(arg.GetArgString(L"ok")==L"true") { - xml x = new xml; - x.setNativePointer(x.CreateInstance()); - x.LoadXml(arg.GetArgString("arg")); - msxml::IXMLDOMElement uele = x.GetXmlDoc().documentElement; - string ParentPartyID = uele.selectSingleNode("//ParentPartyID").text; - string ParentPartyName = ""; - string GroupPartyID = uele.selectSingleNode("//GroupPartyID").text; - string GroupPartyName = ""; + xml x ; - if( uele.selectSingleNode("//ParentPartyID/@_displaystring")) - ParentPartyName = uele.selectSingleNode("//ParentPartyID/@_displaystring").text; - if(uele.selectSingleNode("//GroupPartyID/@_displaystring")) - GroupPartyName = uele.selectSingleNode("//GroupPartyID/@_displaystring").text; + x.loadXML(arg.GetArgString(L"arg")); + KXMLDOMElement uele = x.documentElement(); + xstring ParentPartyID = uele.selectSingleNode(L"//ParentPartyID").text(); + xstring ParentPartyName = L""; + xstring GroupPartyID = uele.selectSingleNode(L"//GroupPartyID").text(); + xstring GroupPartyName = L""; + + if( uele.selectSingleNode(L"//ParentPartyID/@_displaystring")) + ParentPartyName = uele.selectSingleNode(L"//ParentPartyID/@_displaystring").text(); + if(uele.selectSingleNode(L"//GroupPartyID/@_displaystring")) + GroupPartyName = uele.selectSingleNode(L"//GroupPartyID/@_displaystring").text(); int row = dw_list.GetNextSelectRow(1); while(row > 0) { - dw_list.SetItemString(row,"ParentPartyID",ParentPartyID); - dw_list.SetItemDisplayString(row,"ParentPartyID",ParentPartyName); - dw_list.SetItemString(row,"GroupPartyID",GroupPartyID); - dw_list.SetItemDisplayString(row,"GroupPartyID",GroupPartyName); + dw_list.SetItemString(row,L"ParentPartyID",ParentPartyID); + dw_list.SetItemDisplayString(row,L"ParentPartyID",ParentPartyName); + dw_list.SetItemString(row,L"GroupPartyID",GroupPartyID); + dw_list.SetItemDisplayString(row,L"GroupPartyID",GroupPartyName); ele.appendChild(dw_list.GetRowElement(row).cloneNode(-1)); row = dw_list.GetNextSelectRow(row + 1); } - dw_list.RedrawEx(); - arg.AddArg("content",ele.xml); - if (getUrl("/sale/data/CustomerV3/level/update",arg.GetString(),x)!=1) + dw_list.Redraw(); + arg.AddArg(L"content",ele.xml()); + if (getUrl(L"/sale/data/CustomerV3/level/update",arg.GetString(),x)!=1) { - trace(x.GetXmlDoc().text); - alert("设置错误!"); + trace(x.text()); + alert(L"设置错误!"); return -1; }else { - alert("设置成功!"); + alert(L"设置成功!"); } } return 1; } - int PreOnCmdDispatch(string comdid) + int PreOnCmdDispatch(xstring comdid) { - if(comdid.find("action:LogOff",0)>=0) return OnLogOff(); - if(comdid.find("action:bill.delete",0)>=0) return OnDeleteRow(); - //if(comdid=="action:search1") return GridSearch(); - if(comdid=="action:bill.refresh") + if(comdid.find(L"action:LogOff",0)>=0) return OnLogOff(); + if(comdid.find(L"action:bill.delete",0)>=0) return OnDeleteRow(); + //if(comdid==L"action:search1") return GridSearch(); + if(comdid==L"action:bill.refresh") { return OnRetrieve(); } - if(comdid=="action:level.customer") + if(comdid==L"action:level.customer") { return OnLevelCustomer(); } @@ -281,21 +299,20 @@ return 1; } - int OnRowChangedEx(ref TNotifyEvent evt,int p) + int OnRowChangedEx(TEvent* evt, int p) { - alert("999"); - ref DWNMHDR hdr =cast(evt.pnmh as ref DWNMHDR); + DWNMHDR& hdr = *(DWNMHDR*)evt->notify.pnmh; int row = hdr.row; - msxml::IXMLDOMElement ele = listwin::dw_list.GetRowElement(row); - string entity = ele.selectSingleNode("CustomerID").text; - xml x = new xml; - x.setNativePointer(xml::CreateInstance()); - xaserverarg arg = new xaserverarg; - arg.setNativePointer(arg.CreateInstance()); - arg.AddArg("EntityID",entity); - if (getUrl("/sale/data/CustomerV3/entity/customeritem",arg.GetString(),x)!=1) + KXMLDOMElement ele = listwin::dw_list.GetRowElement(row); + xstring entity = ele.selectSingleNode(L"CustomerID").text(); + xml x ; + + xaserverarg arg ; + ; + arg.AddArg(L"EntityID",entity); + if (getUrl(L"/sale/data/CustomerV3/entity/customeritem",arg.GetString(),x)!=1) { - trace(x.GetXmlDoc().text); + trace(x.text()); return -1; }else { @@ -310,12 +327,12 @@ int PostOnAttachEvent() { //获得树的选择事件 - AttachEvent("tv_1", "TVN_SELCHANGED",OnTreeSelChanged); - AttachEvent("cbx_1","CBN_SELCHANGE",OnSelectDdlb); - AttachEvent("pages","PAGE_CLICK",OnChangePages); - AttachEvent("dw_list","DWV_RCLICKED",OnRClick);//鼠标右键 - //AttachEvent("dw_list","DWV_CLICKED",OnClick);//鼠标右键 - AttachEvent("dw_list","DWV_ROWFOCUSCHANGED",OnRowChangedEx); + AttachEvent(L"tv_1", L"TVN_SELCHANGED", (FEvent)&levelCustomerv3::OnTreeSelChanged); + AttachEvent(L"cbx_1",L"CBN_SELCHANGE", (FEvent)&levelCustomerv3::OnSelectDdlb); + AttachEvent(L"pages",L"PAGE_CLICK", (FEvent)&levelCustomerv3::OnChangePages); + AttachEvent(L"dw_list",L"DWV_RCLICKED", (FEvent)&levelCustomerv3::OnRClick);//鼠标右键 + //AttachEvent(L"dw_list",L"DWV_CLICKED",OnClick);//鼠标右键 + AttachEvent(L"dw_list",L"DWV_ROWFOCUSCHANGED", (FEvent)&levelCustomerv3::OnRowChangedEx); return 1; } @@ -323,19 +340,19 @@ int onload() { PIndex=1; - listwin::m_QueryTxt =""; //查询条件 - m_sType=""; //type - m_sTypeTxt=""; //选中树的data + listwin::m_QueryTxt =L""; //查询条件 + m_sType=L""; //type + m_sTypeTxt=L""; //选中树的data listwin::onload(); - tv_1 = this.GetControl("tv_1"); - ddlb_1 = this.GetControl("cbx_1"); + tv_1 = GetControl(L"tv_1"); + ddlb_1 = GetControl(L"cbx_1"); changeddlb = 0; - OnCreateTree("Source"); - dw_goods = GetControl("dw_goods"); - dw_goods.openUrl("/sale/view/CustomerV3/template/customer/customeritem"); + OnCreateTree(L"Source"); + dw_goods = GetControl(L"dw_goods"); + dw_goods.openUrl(L"/sale/view/CustomerV3/template/customer/customeritem"); return 1; } @@ -344,16 +361,15 @@ { listwin::onloaded(); - string EntityID; + xstring EntityID; int row = dw_list.GetRow(); - if(row<0 || row>dw_list.GetRowCount()) return ""; - msxml::IXMLDOMElement ele = dw_list.GetRowElement(row); - string id = listwin::m_configDoc.selectSingleNode("//entity/EntityID[1]").text; + if(row<0 || row>dw_list.GetRowCount()) return (xstring)L""; + KXMLDOMElement ele = dw_list.GetRowElement(row); + xstring id = listwin::m_configDoc.selectSingleNode(L"//entity/EntityID[1]").text(); if(ele.selectSingleNode(id)) - EntityID = ele.selectSingleNode(id).text; + EntityID = ele.selectSingleNode(id).text(); return 1; } -}; -] \ No newline at end of file +}; \ No newline at end of file diff --git a/jrj/project/business/SystemSettings/maint.Level.Customer3.cpp b/jrj/project/business/SystemSettings/maint.Level.Customer3.cpp index 3938f6f..4416535 100644 --- a/jrj/project/business/SystemSettings/maint.Level.Customer3.cpp +++ b/jrj/project/business/SystemSettings/maint.Level.Customer3.cpp @@ -1,35 +1,50 @@ -use "xcontrol.vframe.vbusiness.vd" -use "xbase.vframe.vbusiness.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 MaintLevelCustomerWin : public xframe + +#include "vbusiness/vframe/listwin.vframe.vbusiness.hpp" +#include "viewobject/view.base.hpp" + +using xml = KXMLDOMDocument; + class __declspec(dllexport) MaintLevelCustomerWin : public xframe { + public: xdwtable dw_arg; xaserverarg arg; - - //命令发布函数 - int OnCmdDispatch(string comdid) + public: + MaintLevelCustomerWin(void* implPtr, HWND hWnd) :xframe(implPtr, hWnd) {} + public: + static MaintLevelCustomerWin* CreateInstance(void* implPtr, void* hWnd) { - if(comdid=="xmOk") + MaintLevelCustomerWin* pWin = new MaintLevelCustomerWin(implPtr, (HWND)hWnd); + return pWin; + } + //命令发布函数 + int OnCmdDispatch(xstring comdid) + { + if(comdid==L"xmOk") { - xml x = new xml; - x.setNativePointer(x.CreateInstance()); + xml x ; + dw_arg.AcceptText(); - dw_arg.DwUpdateAllTo(x.GetXmlDoc()); + dw_arg.DwUpdateAllTo(x); if(arg) { - arg.AddArg("arg",x.GetXml()); - arg.AddArg("ok","true"); + arg.AddArg(L"arg",x.xml()); + arg.AddArg(L"ok",L"true"); } CloseWindow(); return 1; } - else if(comdid=="xmCancel") + else if(comdid==L"xmCancel") { - if(arg)arg.AddArg("ok","false"); + if(arg)arg.AddArg(L"ok",L"false"); CloseWindow(); return 1; } @@ -37,24 +52,26 @@ } //命令处理事件 - 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)&MaintLevelCustomerWin::OnXCommand); + return 1; } int onload() { - dw_arg = GetControl("dw_arg"); + SetArg(); + dw_arg = GetControl(L"dw_arg"); - if(GetParam())arg = GetParam(); + if(GetWinParam())arg = GetArg(); - string dw = "/sale/view/CustomerV3/template/customer/level.maint"; + xstring dw = L"/sale/view/CustomerV3/template/customer/level.maint"; dw_arg.openUrl(dw); dw_arg.SetColHeaderHeight(0); @@ -69,4 +86,3 @@ } }; -] \ No newline at end of file diff --git a/jrj/project/business/SystemSettings/view.assignadjust.cpp b/jrj/project/business/SystemSettings/view.assignadjust.cpp index f11d11a..326e9c8 100644 --- a/jrj/project/business/SystemSettings/view.assignadjust.cpp +++ b/jrj/project/business/SystemSettings/view.assignadjust.cpp @@ -1,37 +1,49 @@ -use "xcontrol.vframe.vbusiness.vd" -use "xbase.vframe.vbusiness.vd" -use "base.view.vd" -use "datastore_bind.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 AssignAdjustWin : public xframe +#include "vbusiness/vframe/listwin.vframe.vbusiness.hpp" +#include "viewobject/view.base.hpp" + +using xml = KXMLDOMDocument; + class __declspec(dllexport) AssignAdjustWin : public xframe { + public: xdwgrid dw_list; xnode m_agentNode; //Agent Condition - msxml::IXMLDOMElement rptEle; - string argStr; - string searchStr; + KXMLDOMElement rptEle; + xstring argStr; + xstring searchStr; int hWndRetrieveTip; bool dataretrieveing; - + public: + AssignAdjustWin(void* implPtr, HWND hWnd) :xframe(implPtr, hWnd) {} + public: + static AssignAdjustWin* CreateInstance(void* implPtr, void* hWnd) + { + AssignAdjustWin* pWin = new AssignAdjustWin(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; @@ -39,40 +51,40 @@ int OnSave() { - xml x = new xml; - x.setNativePointer(xml::CreateInstance()); + xml x ; + dw_list.AcceptText(); - dw_list.DwUpdateAllToEx(x.GetXmlDoc()); - xaserverarg arg = new xaserverarg; - arg.setNativePointer(xaserverarg::CreateInstance()); + dw_list.DwUpdateAllToEx(x); + xaserverarg arg ; + - xml x0 = ViewObject::MakeXml(); - x0.LoadXml("<data/>"); - msxml::IXMLDOMNodeList t = x.GetXmlDoc().selectNodes("data/node()[(@update.new='1') or (@update.modify='1') or (@update.delete='1') ]"); - msxml::IXMLDOMElement e1= x0.GetXmlDoc().documentElement; + xml x0; + x0.loadXML(L"<data/>"); + KXMLDOMNodeList t = x.selectNodes(L"data/node()[(@update.new='1') or (@update.modify='1') or (@update.delete='1') ]"); + KXMLDOMElement e1= x0.documentElement(); - string val0 = x.GetXml(); - for(int i=0; i < t.length; i++) + xstring val0 = x.xml(); + for(int i=0; i < t.length(); i++) { - msxml::IXMLDOMElement e= t.item(i); + KXMLDOMElement e= t.item(i); e1.appendChild(e); } - x = ViewObject::RetrieveData(rptEle.getAttribute("update"),"content",x0.GetXml()); - string str = x.GetXmlDoc().documentElement.getAttribute("text"); - if(str == "true") + x = ViewObject::RetrieveData(rptEle.getAttribute(L"update"),L"content",x0.xml()); + xstring str = x.documentElement().getAttribute(L"text"); + if(str == L"true") { dw_list.ResetUpdateStatus(); - alert("保存成功!"); + alert(L"保存成功!"); }else { - alert("保存失败!"); + alert(L"保存失败!"); } return 1; } //焦点激活处理函数 - int OnSetFocus(ref TEvent evt,int param) + int OnSetFocus(TEvent* evt, LPARAM param) { //重置工具条 SetAgent(); @@ -83,13 +95,13 @@ { dw_list.AcceptText(); int row = dw_list.GetNextSelectRow(1); - string SalespersonID = dw_list.GetItemString(row, "SalespersonID"); - string Sales = dw_list.GetItemDisplayString(row, "SalespersonID"); + xstring SalespersonID = dw_list.GetItemString(row, L"SalespersonID"); + xstring Sales = dw_list.GetItemDisplayString(row, L"SalespersonID"); while(row > 0 && row <= dw_list.GetRowCount()) { row = dw_list.GetNextSelectRow(row + 1); - dw_list.SetItemString(row, "SalespersonID", SalespersonID); - dw_list.SetItemDisplayString(row, "SalespersonID", Sales); + dw_list.SetItemString(row, L"SalespersonID", SalespersonID); + dw_list.SetItemDisplayString(row, L"SalespersonID", Sales); } dw_list.Redraw(); @@ -98,63 +110,62 @@ int OnSearch() { - xaserverarg arg=new xaserverarg; - arg.setNativePointer(arg.CreateInstance()); - arg.AddArg("text", searchStr); - OpenWindow("dev:xpage[search.dialog.vx]", cast(arg as int)); - string str = arg.GetArgString("text"); + xaserverarg arg; + ; + arg.AddArg(L"text", searchStr); + OpenWindow(L"dev:xpage[search.dialog.vx]", arg); + xstring str = arg.GetArgString(L"text"); if(str != searchStr) { searchStr = str; - dw_list.Filter("*",searchStr); + dw_list.Filter(L"*",searchStr); return 1; } return 1; } //命令发布函数 - int OnCmdDispatch(string comdid) + int OnCmdDispatch(xstring comdid) { - if(comdid=="xmSave")return OnSave(); - if(comdid=="xmMultiDeal")return OnMultiDeal(); - if(comdid=="xmSearch") return OnSearch(); - if(comdid=="xmAnalysis") + if(comdid==L"xmSave")return OnSave(); + if(comdid==L"xmMultiDeal")return OnMultiDeal(); + if(comdid==L"xmSearch") return OnSearch(); + if(comdid==L"xmAnalysis") { //hCursor = xutil::SetCursorWait(); - string str = dw_list.DataAnalysis(""); - xaserverarg arg=new xaserverarg; - arg.setNativePointer(arg.CreateInstance()); - arg.AddArg("html", str); - int obj = cast(dw_list as int); - arg.AddArg("obj",obj.toString()); - OpenWindow("dev:xpage[data.vanalysis.vx]", cast(arg as int)); + xstring str = dw_list.DataAnalysis(L""); + xaserverarg arg; + ; + arg.AddArg(L"html", str); + + OpenWindow(L"dev:xpage[data.vanalysis.vx]", arg); //xutil::RestoreCursor(hCursor); return 1; } - if(comdid=="xmQuery") + if(comdid==L"xmQuery") { if(rptEle) { - string argUrl = rptEle.getAttribute("arg"); - if(argUrl !="") + xstring argUrl = rptEle.getAttribute(L"arg"); + if(argUrl !=L"") { - xaserverarg ar = new xaserverarg; - ar.setNativePointer(ar.CreateInstance()); - ar.AddArg("argurl",argUrl); - if(argStr !="") - ar.AddArg("arg",argStr); - OpenWindow("dev:xpage[view.total.arg.vx]",cast(ar as int)); - string arstr = ar.GetArgString("arg"); - if(arstr != "" && ar.GetArgString("action")=="ok") + xaserverarg ar ; + + ar.AddArg(L"argurl",argUrl); + if(argStr !=L"") + ar.AddArg(L"arg",argStr); + OpenWindow(L"dev:xpage[view.total.arg.vx]",ar); + xstring arstr = ar.GetArgString(L"arg"); + if(arstr != L"" && ar.GetArgString(L"action")==L"ok") { argStr = arstr; - OnRetrieve(rptEle.getAttribute("data"),argStr); + OnRetrieve(rptEle.getAttribute(L"data"),argStr); } } else { - argStr=""; - OnRetrieve(rptEle.getAttribute("data"),argStr); + argStr=L""; + OnRetrieve(rptEle.getAttribute(L"data"),argStr); } } return 1; @@ -163,32 +174,33 @@ } //命令处理事件 - 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)&AssignAdjustWin::OnXCommand); //获取焦点事件,用于重置工具条 - AttachEvent("WM_SETFOCUS",OnSetFocus); + AttachEvent(L"WM_SETFOCUS", (FEvent)&AssignAdjustWin::OnSetFocus); - AttachEvent("cb_report","CBN_SELCHANGE",OnCombboChanged); + AttachEvent(L"cb_report",L"CBN_SELCHANGE", (FEvent)&AssignAdjustWin::OnCombboChanged); + return 1; } - int OnCombboChanged(ref TCommandEvent evt,int lParam) + int OnCombboChanged(TEvent* evt, LPARAM lParam) { - int h = xcombobox::GetCurSel(evt.hCtrl); + int h = xcombobox::GetCurSel(evt->command.hCtrl); if(h > -1) ShowList(h); return 1; } - int SwitchReport(msxml::IXMLDOMElement e) + int SwitchReport(KXMLDOMElement e) { rptEle = e; - string dwname = e.getAttribute("template"); + xstring dwname = e.getAttribute(L"template"); dw_list.openUrl(dwname); dw_list.Redraw(); return 1; @@ -196,43 +208,43 @@ int ShowList(int h) { - msxml::IXMLDOMElement xframeElement = GetElement(); - msxml::IXMLDOMElement e = xframeElement.selectSingleNode("//xcombobox[@name='cb_report']/item["+(h+1).toString()+"]"); + KXMLDOMElement xframeElement = GetElement(); + KXMLDOMElement e = xframeElement.selectSingleNode(L"//xcombobox[@name='cb_report']/item["+(h+1).toString()+L"]"); if(e) SwitchReport(e); - win32::PostMessage(GetHWND(),0x401,"xmQuery",0); + PostMessage(GetHWND(),0x401,(LPARAM)L"xmQuery",0); return 1; } int ShowRetrieveingTip() { dataretrieveing = true; - xwin pwin = OpenWindow("dev:xpage[TestRetrieveing.vx]",0); + xwin pwin = OpenWindow(L"dev:xpage[TestRetrieveing.vx]",0); hWndRetrieveTip =pwin.GetHWND(); return 1; } int CloseRetrieveTip() { dataretrieveing = false; - win32::SendMessage(hWndRetrieveTip,0x401,"RetrieveFinished",0); + SendMessage(hWndRetrieveTip,0x401, (LPARAM)L"RetrieveFinished",0); hWndRetrieveTip = 0; return 1; } - int OnRetrieve(string dataurl, string argstr) + int OnRetrieve(xstring dataurl, xstring argstr) { if(!rptEle) return 0; dw_list.Reset(); - xml x = new xml; - x.setNativePointer(xml::CreateInstance()); - xaserverarg arg = new xaserverarg; - arg.setNativePointer(arg.CreateInstance()); - arg.AddArg("arg",argstr); - if (url::get(dataurl,arg.GetString(),x)!=1) + xml x ; + + xaserverarg arg ; + ; + arg.AddArg(L"arg",argstr); + if (xurl::get(dataurl,arg.GetString(),x)!=1) { - trace("错误信息="+x.GetXmlDoc().text); + trace(L"错误信息=L"+(xstring)x.text()); dw_list.Redraw(); return -1; }else @@ -248,7 +260,7 @@ int onload() { rptEle = 0; - dw_list = GetControl("dw_list"); + dw_list = GetControl(L"dw_list"); OnAttachEvent(); hWndRetrieveTip = 0; @@ -263,5 +275,4 @@ return 1; } - }; -] \ No newline at end of file + }; \ No newline at end of file -- Gitblit v1.9.3