From bbe8987042e7216227bc9fe87e0ac60abaebdbf3 Mon Sep 17 00:00:00 2001 From: xj qian <qianxj15@sina.com> Date: 星期四, 18 七月 2024 15:58:10 +0800 Subject: [PATCH] Merge branch 'master' of http://116.62.18.175:6699/r/mis-prj --- jrj/project/business/Quote/trade.document.selectdlg.cpp | 194 ++++++++++++++++++++++++++---------------------- 1 files changed, 105 insertions(+), 89 deletions(-) diff --git a/jrj/project/business/Quote/trade.document.selectdlg.cpp b/jrj/project/business/Quote/trade.document.selectdlg.cpp index 5118dd9..b259ebc 100644 --- a/jrj/project/business/Quote/trade.document.selectdlg.cpp +++ b/jrj/project/business/Quote/trade.document.selectdlg.cpp @@ -1,45 +1,60 @@ -use "xcontrol.vframe.vbusiness.vd" -use "xbase.vframe.vbusiness.vd" -use "base.view.vd" -unit trade -[ - class DocSelectDlg: public xframe +#include <wobject/xstring.hpp> +#include <xcontrol/xtreeview.hpp> +#include <xcontrol/xdwgrid.hpp> +#include <wobject/xdouble.hpp> +#include <xcontrol/xlayersheet.hpp> +#include <xcontrol/xdatetimepick.hpp> + + +#include "vbusiness/vframe/listwin.vframe.vbusiness.hpp" +#include "viewobject/view.base.hpp" + +using xml = KXMLDOMDocument; + class __declspec(dllexport) DocSelectDlg: public xframe { + public: //xdwgrid dw_list; xlistview lv_view; xnode m_agentNode; //Agent Condition int columnCount ; - + public: + DocSelectDlg(void* implPtr, HWND hWnd) :xframe(implPtr, hWnd) {} + public: + static DocSelectDlg* CreateInstance(void* implPtr, void* hWnd) + { + DocSelectDlg* pWin = new DocSelectDlg(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 OnListViewDoubleClicked(ref TEvent evt,int param) + int OnListViewDoubleClicked(TEvent* evt, LPARAM param) { //重置工具条 //SetAgent(); @@ -58,7 +73,7 @@ int LVNI_CUT = 0x0004; int LVNI_DROPHILITED = 0x0008; - int nItem =xlistview::GetNextItem(lv_view.GetId(), -1, LVNI_FOCUSED); + int nItem =lv_view.GetNextItem( -1, LVNI_FOCUSED); if(nItem < 0) return 1; int LVIF_PARAM = 0x0004; @@ -68,70 +83,70 @@ lvItem.iSubItem = 0; lvItem.mask = LVIF_PARAM ; - xlistview::GetItem(lv_view.GetId(), lvItem); - msxml::IXMLDOMElement ele = trust(lvItem.lParam as msxml::IXMLDOMElement); + lv_view.GetItem( lvItem); + KXMLDOMElement ele = trust(lvItem.lParam as KXMLDOMElement); - string src = ele.getAttribute("url"); - string name=ele.getAttribute("caption"); - string file =""; - if(src.find("/file/")>0) file = src.mid(src.find("/file/") + 6,9999); - if(file =="") return 1; - string str = file.left(2); - string ext = ""; - if(name.find(".")>=0) ext = name.mid(name.find("."),name.length()); - string sfile = file; + xstring src = ele.getAttribute(L"url"); + xstring name=ele.getAttribute(L"caption"); + xstring file =L""; + if(src.find(L"/file/")>0) file = src.mid(src.find(L"/file/") + 6,9999); + if(file ==L"") return 1; + xstring str = file.left(2); + xstring ext = L""; + if(name.find(L".")>=0) ext = name.mid(name.find(L"."),name.length()); + xstring sfile = file; - xaserverarg arg = GetParam(); + xaserverarg arg = GetArg(); if(arg) { - arg.AddArg("result","ok"); - if((arg.GetArgString("process")=="path" ||arg.GetArgString("process")=="data")) + arg.AddArg(L"result",L"ok"); + if((arg.GetArgString(L"process")==L"path" ||arg.GetArgString(L"process")==L"data")) { - string id = ele.getAttribute("ID"); - arg.AddArg("ID", id); - arg.AddArg("path", src); - arg.AddArg("filename", name); - arg.AddArg("src","/business/attachment/"+str+"/"+ file+".jpg"); - if(arg.GetArgString("process")=="path" ) return 1; + xstring id = ele.getAttribute(L"ID"); + arg.AddArg(L"ID", id); + arg.AddArg(L"path", src); + arg.AddArg(L"filename", name); + arg.AddArg(L"src",L"/business/attachment/"+str+L"/"+ file+L".jpg"); + if(arg.GetArgString(L"process")==L"path" ) return 1; } } /* - const string d = m_Html.GetData(p.object); - if(d == "") return -1; - string file = d.mid(0, d.find("|##@@|",0)); - string name = d.mid(d.find("|##@@|",0)+6, d.length()); + const xstring d = m_Html.GetData(p.object); + if(d == L"") return -1; + xstring file = d.mid(0, d.find(L"|##@@|",0)); + xstring name = d.mid(d.find(L"|##@@|",0)+6, d.length()); */ - xaserver::CreateDirectory("C:/Temp"); + xaserver::CreateDirectory(L"C:/Temp"); if(arg) { - if(arg.GetArgString("process")=="data") + if(arg.GetArgString(L"process")==L"data") { - xml x = new xml; - x.setNativePointer(xml ::CreateInstance()); - xaserver::LoadUrl(GetServerUrl(),"/business/attachment/"+str+"/"+ file+".jpg","",x); - arg.AddArg("data",x.GetXml()); + xml x ; + + xaserver::LoadUrl(GetServerUrl(),L"/business/attachment/"+str+L"/"+ file+L".jpg",L"",x); + arg.AddArg(L"data",x.xml()); return 1; } } - int openRet = xaserver::DownLoadFile(GetServerUrl(),"/business/attachment/"+str+"/"+ file+".jpg","","C:/Temp/"+sfile+ext); + int openRet = xaserver::DownLoadFile(GetServerUrl(),L"/business/attachment/"+str+L"/"+ file+L".jpg",L"",L"C:/Temp/"+sfile+ext); - //alert("/business/attachment/"+str+"/"+ file+".jpg"); + //alert(L"/business/attachment/"+str+L"/"+ file+L".jpg"); if(openRet < 0) { - alert("文件打开失败1!"); + alert(L"文件打开失败1!"); return -1; } - //openRet = win32::ShellExecute(0,"open","C:/Temp/"+name,"","",5); - openRet = win32::ShellExecute(0,"open","C:/Temp/"+sfile+ext,"","",5); + //openRet = ShellExecute(0,L"open",L"C:/Temp/"+name,L"",L"",5); + openRet = ShellExecute(0,L"open",L"C:/Temp/"+sfile+ext,L"",L"",5); if(openRet < 32) { - alert("文件打开失败2!"); + alert(L"文件打开失败2!"); return -1; } @@ -139,36 +154,37 @@ } //命令发布函数 - int OnCmdDispatch(string comdid) + int OnCmdDispatch(xstring comdid) { 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)&DocSelectDlg::OnXCommand); //获取焦点事件,用于重置工具条 - AttachEvent("WM_SETFOCUS",OnSetFocus); + AttachEvent(L"WM_SETFOCUS", (FEvent)&DocSelectDlg::OnSetFocus); + return 1; } /* int OnRetrieve() { - xml x = new xml; - x.setNativePointer(xml::CreateInstance()); - xaserverarg arg = new xaserverarg; - arg.setNativePointer(arg.CreateInstance()); - arg.AddArg("xxx","xxx"); - if (getUrl("",arg.GetString(),x)!=1) + xml x ; + + xaserverarg arg ; + + arg.AddArg(L"xxx",L"xxx"); + if (getUrl(L"",arg.GetString(),x)!=1) { - trace(x.GetXmlDoc().text); + trace(x.text()); return -1; }else { @@ -179,38 +195,38 @@ } */ - int SetListViewHeaderColumn(string Url) + int SetListViewHeaderColumn(xstring Url) { const int LVCFMT_LEFT = 0; - for(int i=0;i<3;i++) lv_view.DeleteColumn(lv_view.GetId(),1); - //if(Url=="") + for(int i=0;i<3;i++) lv_view.DeleteColumn(1); + //if(Url==L"") //{ - lv_view.InsertColumn(lv_view.GetId(),0,"创建人员",LVCFMT_LEFT,80,0); - lv_view.InsertColumn(lv_view.GetId(),0,"创建日期",LVCFMT_LEFT,80,0); - lv_view.InsertColumn(lv_view.GetId(),0,"名称",0,120,0); + lv_view.InsertColumn(0,L"创建人员",LVCFMT_LEFT,80,0); + lv_view.InsertColumn(0,L"创建日期",LVCFMT_LEFT,80,0); + lv_view.InsertColumn(0,L"名称",0,120,0); columnCount = 3; //} return 1; } - int Retrieve(string src) + int Retrieve(xstring src) { - xml x = ViewObject::RetrieveData("/sale/data/TDocument3/folder/list", "src",src); + xml x = ViewObject::RetrieveData(L"/sale/data/TDocument3/folder/list", L"src",src); if(x) { - msxml::IXMLDOMElement ele = x.GetXmlDoc().documentElement; - msxml::IXMLDOMNodeList nlist=ele.SelectNodes("*"); - int s=nlist.length; + KXMLDOMElement ele = x.documentElement(); + KXMLDOMNodeList nlist=ele.selectNodes(L"*"); + int s=nlist.length(); if (s>0) { for (int i=0; i<s; i++) { - msxml::IXMLDOMElement e=nlist.item(i); - string name=e.getAttribute("caption"); - int nItem = xlistview::InsertItemEx(lv_view.GetId(),0,name,23,cast(e as int)); + KXMLDOMElement e=nlist.item(i); + xstring name=e.getAttribute(L"caption"); + int nItem = lv_view.InsertItemEx(0,name,23,e); - xlistview::SetItemText(lv_view.GetId(),nItem,1,e.getAttribute("Creator")); - xlistview::SetItemText(lv_view.GetId(),nItem,2,e.getAttribute("CreateDate")); + lv_view.SetItemText(nItem,1,e.getAttribute(L"Creator")); + lv_view.SetItemText(nItem,2,e.getAttribute(L"CreateDate")); } } } @@ -219,17 +235,18 @@ int onload() { - lv_view = GetControl("lv_view"); - //xlistview::SetdwStyle(lv_view.GetId(),0); + SetArg(); + lv_view = GetControl(L"lv_view"); + //lv_view.SetdwStyle(0); columnCount = 0; - SetListViewHeaderColumn(""); - AttachEvent("lv_view", "NM_DBLCLK",OnListViewDoubleClicked); + SetListViewHeaderColumn(L""); + AttachEvent(L"lv_view", L"NM_DBLCLK", (FEvent)&DocSelectDlg::OnListViewDoubleClicked); - if(GetParam()) + if(GetWinParam()) { - xaserverarg arg = GetParam(); - string src = arg.GetArgString("src"); + xaserverarg arg = GetArg(); + xstring src = arg.GetArgString(L"src"); Retrieve(src); } @@ -242,5 +259,4 @@ return 1; } - }; -] \ No newline at end of file + }; \ No newline at end of file -- Gitblit v1.9.3