xj qian
2024-06-27 8d499b100176567d121f6039b7352f9ff09862a6
Merge branch 'master' of http://116.62.18.175:6699/r/mis-prj
已删除2个文件
已添加2个文件
已修改4个文件
645 ■■■■ 文件已修改
jrj/ext-jrj/GraduationSchool.cpp 150 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jrj/ext-jrj/GraduationSchoolWin.vx.cpp 150 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jrj/ext-jrj/ext-jrj.vcxproj 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jrj/ext-jrj/ext-jrj.vcxproj.filters 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jrj/project/business/Customer3.list.cpp 补丁 | 查看 | 原始文档 | blame | 历史
jrj/project/business/HR/GraduationSchool.cpp 168 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jrj/project/business/HR/GraduationSchoolWin.vx.cpp 164 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jrj/xframe/xcontrol/xcell.hpp 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jrj/ext-jrj/GraduationSchool.cpp
ÎļþÒÑɾ³ý
jrj/ext-jrj/GraduationSchoolWin.vx.cpp
ÎļþÒÑɾ³ý
jrj/ext-jrj/ext-jrj.vcxproj
@@ -248,6 +248,8 @@
    <ClCompile Include="..\project\business\GDN3.maint.cpp">
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="..\project\business\HR\GraduationSchool.cpp" />
    <ClCompile Include="..\project\business\HR\GraduationSchoolWin.vx.cpp" />
    <ClCompile Include="..\project\business\Product.list.cpp">
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
    </ClCompile>
@@ -298,7 +300,6 @@
    <ClCompile Include="..\xframe\src\xstring.cpp" />
    <ClCompile Include="dllmain.cpp" />
    <ClCompile Include="GraduationSchool.cpp" />
    <ClCompile Include="GraduationSchoolWin.vx.cpp" />
    <ClCompile Include="pch.cpp">
      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Create</PrecompiledHeader>
      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
jrj/ext-jrj/ext-jrj.vcxproj.filters
@@ -365,7 +365,10 @@
    <ClCompile Include="..\project\business\SO\select.item.so.cpp">
      <Filter>project\business\SO</Filter>
    </ClCompile>
    <ClCompile Include="GraduationSchool.cpp">
    <ClCompile Include="..\project\business\HR\GraduationSchool.cpp">
      <Filter>project\business\HR</Filter>
    </ClCompile>
    <ClCompile Include="..\project\business\HR\GraduationSchoolWin.vx.cpp">
      <Filter>project\business\HR</Filter>
    </ClCompile>
    <ClCompile Include="GraduationSchoolWin.vx.cpp">
jrj/project/business/Customer3.list.cpp
Binary files differ
jrj/project/business/HR/GraduationSchool.cpp
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,168 @@
#include <wobject/xstring.hpp>
#include <xcontrol/xtreeview.hpp>
#include <xcontrol/xdwgrid.hpp>
#include <xcontrol/xcell.hpp>
#include "vbusiness/vframe/listwin.vframe.vbusiness.hpp"
#include "viewobject/view.base.hpp"
using xml = KXMLDOMDocument;
    class __declspec(dllexport) ViewGraduationSchoolList : public xframe
    {
    public:
        xdwgrid    dw_list;
        xnode    m_agentNode;    //Agent Condition
    public:
        ViewGraduationSchoolList(void* implPtr, HWND hWnd) :xframe(implPtr, hWnd) {}
    public:
        static ViewGraduationSchoolList* CreateInstance(void* implPtr, void* hWnd)
        {
            ViewGraduationSchoolList* pWin = new ViewGraduationSchoolList(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(TEvent* evt, LPARAM p)
        {
            //重置工具条
            SetAgent();
            return 1;
        }
        int OnAdd()
        {
            OpenWindow(L"dev:xpage[GraduationSchoolWin.vx]");
            return 1;
        }
        int OnUpdate()
        {
            int row = dw_list.GetRow();
            if (row < 1)
                return 1;
            KXMLDOMElement ele = dw_list.GetRowElement(row);
            xstring gsid = ele.selectSingleNode(L"gsid").text();//获取节点的值
            OpenWindow(L"dev:xpage[GraduationSchoolWin.vx]", gsid);
            return 1;
        }
        int OnDelete()
        {
            int row = dw_list.GetRow();
            if (row < 1)
                return 1;
            KXMLDOMElement ele = dw_list.GetRowElement(row);
            xstring gsid = ele.selectSingleNode(L"gsid").text();//获取节点的值
            xml x ;
            xaserverarg arg;//放置参数
            arg.setNativePointer(arg.CreateInstance());
            arg.AddArg(L"gsid", gsid);
            if (getUrl(L"/sale/data/GraduationSchool/data/delete", arg.GetString(), x) != 1)
            {
                xstring error = x.text();
                alert(L"err:" + error);
                return 1;
            }
            alert(x.text());
            OnRefresh();
            return 1;
        }
        int OnRefresh()
        {
            OnRetrieve();
            return 1;
        }
        //命令发布函数
        int OnCmdDispatch(xstring comdid)
        {
            if (comdid == L"xmAdd")
                return OnAdd();
            else if (comdid == L"xmUpdate")
                return OnUpdate();
            else if (comdid == L"xmDelete")
                return OnDelete();
            else if (comdid == L"xmRefresh")
                return OnRefresh();
            return 0;
        }
        //命令处理事件
        int OnXCommand(TEvent* evt, LPARAM p)
        {
            return OnCmdDispatch(evt->xcommand.pStrID);
        }
        int OnAttachEvent()
        {
            //绑定工具条点击事件
            AttachEvent(L"WM_XCOMMAND", (FEvent)&ViewGraduationSchoolList::OnXCommand);
            //获取焦点事件,用于重置工具条
            AttachEvent(L"WM_SETFOCUS", (FEvent)&ViewGraduationSchoolList::OnSetFocus);
            return 1;
        }
        int  OnRetrieve()
        {
            xml x ;
            xaserverarg arg;
            arg.setNativePointer(arg.CreateInstance());
            //arg.AddArg(L"xxx",L"xxx");
            if (getUrl(L"/sale/data/GraduationSchool/data/list", arg.GetString(), x) != 1)
            {
                trace(x.text());
                return -1;
            }
            else
            {
                //trace(L"返回信息=L"+x.GetXml());
                dw_list.Retrieve(x);
                dw_list.Redraw();
            }
            return 1;
        }
        int onload()
        {
            dw_list = GetControl(L"dw_list");
            dw_list.openUrl(L"/sale/view/GraduationSchool/template/list");
            OnRetrieve();
            OnAttachEvent();
            return 1;
        }
        int onloaded()
        {
            SetAgent();
            return 1;
        }
    };
jrj/project/business/HR/GraduationSchoolWin.vx.cpp
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,164 @@
#include <wobject/xstring.hpp>
#include <xcontrol/xtreeview.hpp>
#include <xcontrol/xdwgrid.hpp>
#include <xcontrol/xcell.hpp>
#include "vbusiness/vframe/listwin.vframe.vbusiness.hpp"
#include "viewobject/view.base.hpp"
using xml = KXMLDOMDocument;
    class  __declspec(dllexport) ViewGraduationSchoolWin : public xframe
    {
    public:
        //xdwgrid    dw_list;
        xdwtable dw_base;//新增弹窗时使用
        xstring gsid;
        xnode    m_agentNode;    //Agent Condition
    public:
        ViewGraduationSchoolWin(void* implPtr, HWND hWnd) :xframe(implPtr, hWnd) {}
    public:
        static ViewGraduationSchoolWin* CreateInstance(void* implPtr, void* hWnd)
        {
            ViewGraduationSchoolWin* pWin = new ViewGraduationSchoolWin(implPtr, (HWND)hWnd);
            return pWin;
        }
        /*int SetAgent()
        {
            xstring xfNodeAgentArea  = L"agentarea";
            xnode anode = GetAgentNode(xfNodeAgentArea);
            if(m_agentNode)
            {
                SetAgentNodeContent (anode,m_agentNode);
            }
            else
            {
                msxml::IXMLDOMElement xframeElement =  GetElement();
                msxml::IXMLDOMElement agent = xframeElement.selectSingleNode(L"agent/"+xfNodeAgentArea+L"[1]/*");
                if(agent)
                {
                    xstring s = agent.xml;
                    m_agentNode =  SetAgentNodeContent (anode,s);
                }
            }
            return 1;
        }*/
        //焦点激活处理函数
        int OnSetFocus(TEvent* evt, LPARAM p)
        {
            //重置工具条
            SetAgent();
            return 1;
        }
        int OnSave()
        {
            xml x;
            dw_base.AcceptText();
            dw_base.DwUpdateAllTo(x);
            xaserverarg arg ;
            arg.AddArg(L"content", x.xml());
            //trace(x.GetXml());
            if (xurl::get(L"/sale/data/GraduationSchool/data/update", arg.GetString(), x) != 1)
            {
                xstring error = x.text();
                alert(L"err:" + error);
                return 1;
            }
            //trace(L"返回值=L"+x.GetXml());
            xstring str = x.documentElement().getAttribute(L"text");
            if (str == L"true")
            {
                dw_base.ResetUpdateStatus();
                CloseWindow();
                alert(L"保存成功!");
            }
            else
            {
                alert(L"保存失败!");
            }
            return 1;
        }
        int OnClose()
        {
            CloseWindow();
            return 1;
        }
        //命令发布函数
        int OnCmdDispatch(xstring comdid)
        {
            if (comdid == L"xmSave")
                return OnSave();
            else if (comdid == L"xmClose")
                return OnClose();
            return 0;
        }
        //命令处理事件
        int OnXCommand(TEvent* evt, LPARAM p)
        {
            return OnCmdDispatch(evt->xcommand.pStrID);
        }
        int OnAttachEvent()
        {
            //绑定工具条点击事件
            AttachEvent(L"WM_XCOMMAND", (FEvent)&ViewGraduationSchoolWin::OnXCommand);
            //获取焦点事件,用于重置工具条
            AttachEvent(L"WM_SETFOCUS", (FEvent)&ViewGraduationSchoolWin::OnSetFocus);
            return 1;
        }
        int  OnRetrieve()
        {
            xml x;
            xaserverarg arg;
            arg.AddArg(L"gsid", gsid);
            if (getUrl(L"/sale/data/GraduationSchool/data/getsingle", arg.GetString(), x) != 1)
            {
                trace(x.text());
                return -1;
            }
            else
            {
                dw_base.Retrieve(x);
                dw_base.Redraw();
            }
            return 1;
        }
        int onload()
        {
            dw_base = GetControl(L"dw_base");
            dw_base.openUrl(L"/sale/view/GraduationSchool/template/win");
            gsid = L"";
            if (GetWinParam())
                gsid = GetWinParam();
            if (gsid != L"")
                OnRetrieve();
            dw_base.SetColHeaderHeight(0);
            dw_base.SetRowSelectorWidth(0);
            dw_base.SetHScrollState(false);
            dw_base.SetVScrollState(false);
            OnAttachEvent();
            return 1;
        }
        int onloaded()
        {
            SetAgent();
            return 1;
        }
    };
jrj/xframe/xcontrol/xcell.hpp
@@ -81,10 +81,7 @@
    {
        return GetKCell()->SetItemString(ARow,ACol,(LPTSTR)value.c_str());
    }
    int SetRowColumn(int ARow, int ACol) //alias "?SetRowColumn@IXCell@XCell@XOffice@XFrame@Hxsoft@@QAEHHH@Z";
    {
        return GetKCell()->SetRowColumn(ARow,ACol);
    }
    int Copy() //alias "?Copy@IXCell@XCell@XOffice@XFrame@Hxsoft@@QAEHXZ";
    {
        return GetKCell()->Copy() ;