From 03ef0b51103c735077c784c7df81ae2bcc1599ab Mon Sep 17 00:00:00 2001 From: LiFan <2308045698@qq.com> Date: 星期四, 13 二月 2025 18:33:56 +0800 Subject: [PATCH] update --- jrj/project/business/Company/HrPersonSel.cpp | 163 +++++++++++++++++++++++++++--------------------------- 1 files changed, 82 insertions(+), 81 deletions(-) diff --git a/jrj/project/business/Company/HrPersonSel.cpp b/jrj/project/business/Company/HrPersonSel.cpp index ce87a12..f1c0a4b 100644 --- a/jrj/project/business/Company/HrPersonSel.cpp +++ b/jrj/project/business/Company/HrPersonSel.cpp @@ -1,51 +1,54 @@ -use "win.vl" -use "dev:vm[xdwgrid.vm]" -use "dev:vm[xdwtable.vm]" -use "pref.vl" -use "dev:vm[xml.vm]" -use "dev:vm[xaserverarg.vm]" -use "dev:vm[xaserver.vm]" -use "dev:vm[xutil.vm]" -use "frame.vl" -use "treeview.vm" -use "dev:code[HrEmployeex.vx]" -use "publiccode.vl" +#include <wobject/xstring.hpp> +#include <xcontrol/xtreeview.hpp> +#include <xcontrol/xdwgrid.hpp> +#include <wobject/xdouble.hpp> +#include <xcontrol/xlayersheet.hpp> -//unit vclient.vobject tpp -unit vbusiness.xpage -[ - HrPersonSel is extend frame; - about HrPersonSel - [ - field: - [ - HrEmployeex lw_obj; - xdwgrid__ dw_list; +#include "vbusiness/vframe/listwin.vframe.vbusiness.hpp" +#include "viewobject/view.base.hpp" +#include "HrEmployeex.hpp" - xnode__ m_agentNode; //Agent Condition - string m_agentCond; //Agent Node - string m_sTxt; - ] +using xml = KXMLDOMDocument; +class __declspec(dllexport) HrPersonSel : public xframe +{ +public: + HrEmployeex* lw_obj; + xdwgrid dw_list; - method: - [ - int SetAgent() - { - string xfNodeAgentArea = "agentarea"; - xnode__ anode = new xnode__; - anode.setNativePointer(GetAgentNode(xfNodeAgentArea)); - var xframeElement = GetElement(); - var agent = xframeElement.selectSingleNode("agent/" + xfNodeAgentArea + "[1]/*"); - if (agent) - { - string s = agent.xml; - SetAgentNodeContent(anode, s); - } - return 1; - } + xnode m_agentNode; //Agent Condition + xstring m_agentCond; //Agent Node + xstring m_sTxt; +public: + HrPersonSel(void* implPtr, HWND hWnd) :xframe(implPtr, hWnd) {} +public: + static HrPersonSel* CreateInstance(void* implPtr, void* hWnd) + { + HrPersonSel* pWin = new HrPersonSel(implPtr, (HWND)hWnd); + return pWin; + } + int SetAgent() + { + xstring xfNodeAgentArea = L"agentarea"; + xnode anode = GetAgentNode(xfNodeAgentArea); + if (m_agentNode) + { + SetAgentNode(anode, m_agentNode); + } + else + { + KXMLDOMElement xframeElement = GetElement(); + KXMLDOMElement agent = xframeElement.selectSingleNode(L"agent/" + xfNodeAgentArea + L"[1]/*"); + if (agent) + { + 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(); //重置工具条 @@ -54,19 +57,18 @@ int OnRetrieve() { - control__ xc = new control__; - xc.setNativePointer(this.GetControl("QueryTxt")); - m_sTxt = xc.GetText() + ""; - string query = "[MSSqlHrJob.xq]"; - xml__ x = new xml__; - x.setNativePointer(x.CreateInstance()); - xaserverarg__ arg = new xaserverarg__; - arg.setNativePointer(arg.CreateInstance()); - arg.AddArg("sTxt", m_sTxt); - //if (xaserver__::ExecXQuery(GetServerUrl(),query,arg.GetString(),x)!=1 - if (url::post("OrganizationStruct/select.Employee", arg.GetString(), x) != 1) + xcontrol xc = GetControl(L"QueryTxt"); + m_sTxt = xc.GetText() + L""; + xstring query = L"[MSSqlHrJob.xq]"; + xml x; + + xaserverarg arg; + + arg.AddArg(L"sTxt", m_sTxt); + //if (xaserver::ExecXQuery(GetServerUrl(),query,arg.GetString(),x)!=1 + if (xurl::post(L"OrganizationStruct/select.Employee", arg.GetString(), x) != 1) { - trace(x.GetXmlDoc().text); + trace(x.text()); return -1; } else @@ -80,52 +82,53 @@ int OnOK() { - xaserverarg__ arg = new xaserverarg__; - arg.setNativePointer(arg.CreateInstance()); - arg = win__::GetParam(); - arg.AddArg("comdid", "xmOk"); + xaserverarg arg; + + arg =GetArg(); + arg.AddArg(L"comdid", L"xmOk"); int row = dw_list.GetNextSelectRow(1); if (row < 1) { - alert("请选择人员!"); + alert(L"请选择人员!"); return 1; } - msxml::IXMLDOMElement e = dw_list.GetRowElement(row); - trace(e.xml); - string EmployeeID = e.selectSingleNode("EmployeeID").text + ""; - string Name = e.selectSingleNode("Name").text + ""; - arg.AddArg("EmployeeID", EmployeeID); - arg.AddArg("Name", Name); + KXMLDOMElement e = dw_list.GetRowElement(row); + trace(e.xml()); + xstring EmployeeID = e.selectSingleNode(L"EmployeeID").text() + (xstring)L""; + xstring Name = e.selectSingleNode(L"Name").text() + (xstring)L""; + arg.AddArg(L"EmployeeID", EmployeeID); + arg.AddArg(L"Name", Name); CloseWindow(); return 1; } //命令发布函数 - int OnCmdDispatch(string comdid) + int OnCmdDispatch(xstring comdid) { - if (comdid == "xmOk") + if (comdid == L"xmOk") OnOK(); - else if (comdid == "query") + else if (comdid == L"query") { OnRetrieve(); } - else if (comdid == "xmCancel") + else if (comdid == L"xmCancel") CloseWindow(); 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)&HrPersonSel::OnXCommand); //获取焦点事件,用于重置工具条 - AttachEvent("WM_SETFOCUS", OnSetFocus); + AttachEvent(L"WM_SETFOCUS", (FEvent)&HrPersonSel::OnSetFocus); + return 1; } int OnInitial() @@ -137,9 +140,10 @@ int onload() { - dw_list = new xdwgrid__; - dw_list.setNativePointer(this.GetControl("dw_list")); - dw_list.openUrl("组织架构.vface/template/HrEmployee/PersonSel"); + SetArg(); + dw_list = new xdwgrid; + dw_list.setNativePointer(GetControl(L"dw_list")); + dw_list.openUrl(L"组织架构.vface/template/HrEmployee/PersonSel"); dw_list.SetSelectionMode(3); //3 dw_list.SetReadOnly(true); @@ -148,7 +152,4 @@ return 1; } - ] - - ] -] \ No newline at end of file +}; \ No newline at end of file -- Gitblit v1.9.3