xj qian
2024-09-25 703d27d52ba0ac373b62aedb93f9cfe9f8857ed2
update
已添加1个文件
已修改2个文件
173 ■■■■■ 文件已修改
jrj/ext-jrj/ext-jrj.vcxproj 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jrj/project/business/Quote/QuoteFilePurch2Select.cpp 151 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jrj/project/business/QuoteFile.cpp 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jrj/ext-jrj/ext-jrj.vcxproj
@@ -882,6 +882,7 @@
    <ClCompile Include="..\project\business\Quote\QuoteFilePurch.cpp">
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="..\project\business\Quote\QuoteFilePurch2Select.cpp" />
    <ClCompile Include="..\project\business\Quote\QuoteFilePurched.cpp">
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
    </ClCompile>
jrj/project/business/Quote/QuoteFilePurch2Select.cpp
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,151 @@
#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 <xcontrol/xshtml.hpp>
#include "vbusiness/vframe/listwin.vframe.vbusiness.hpp"
#include "viewobject/view.base.hpp"
using xml = KXMLDOMDocument;
class __declspec(dllexport) QuoteFilePurch2Select :  public xframe
{
public:
    xdwgrid dw_process;
    xnode    m_agentNode;    //Agent Condition
    xstring EntityID;
public:
    QuoteFilePurch2Select(void* implPtr, HWND hWnd) :xframe(implPtr, hWnd) {}
public:
    static QuoteFilePurch2Select* CreateInstance(void* implPtr, void* hWnd)
    {
        return  new QuoteFilePurch2Select(implPtr, (HWND)hWnd);
    }
    int SetAgent()
    {
        return 1;
    }
    int OnRowChanged(TEvent* evt, LPARAM p)
    {
        //fixed one event only one process
        DWNMHDR&  hdr = *(DWNMHDR*)evt->notify.pnmh;
        int row = hdr.row;
        KXMLDOMElement ele = dw_process.GetRowElement(row);
        xaserverarg arg ;
        arg.AddArg(L"content", ele.xml());
        xml doc;
        if (getUrl(L"/sale/data/vpage/vstart/task", arg.GetString(), doc) != 1)
        {
            trace((xstring)L"error->:" + doc.xml());
            return 0;
        }
        if ((xstring)doc.xml() == L"")
            return -1;
        xshtml ht = GetControl(L"taskinfo");
        ht.SetContent(doc.xml());
        ht.Redraw();
        return 1;
    }
    int RetrieveData()
    {
        xml x = ViewObject::RetrieveData(L"/sale/data/business/list/task/quote/enquiry", L"Category", L"QuoteEnquiry",
            L"EntityID", EntityID);
        dw_process.Retrieve(x);
        dw_process.Redraw();
        dw_process.SetReadOnly(true);
        return 1;
    }
    //焦点激活处理函数
    int OnSetFocus(TEvent* evt, LPARAM param)
    {
        //重置工具条
        SetAgent();
        return 1;
    }
    //命令发布函数
    int OnCmdDispatch(xstring comdid)
    {
        if (comdid == L"xmOk")
        {
            int row = dw_process.GetRow();
            if (row > 0)
            {
                xstring TaskID = dw_process.GetItemString(row, L"taskid");
                if (GetWinParam())
                {
                    xaserverarg arg = GetArg();
                    arg.AddArg(L"TaskID", TaskID);
                    CloseWindow();
                    return 1;
                }
            }
            return 1;
        }
        if (comdid == L"xmCancel")
        {
            CloseWindow();
            return 1;
        }
        return 0;
    }
    //命令处理事件
    int OnXCommand(TEvent* evt, int param)
    {
        return OnCmdDispatch(evt->xcommand.pStrID);
    }
    int OnAttachEvent()
    {
        //绑定工具条点击事件
        AttachEvent(L"WM_XCOMMAND", (FEvent)&QuoteFilePurch2Select::OnXCommand);
        //获取焦点事件,用于重置工具条
        //AttachEvent("WM_SETFOCUS",OnSetFocus);
        AttachEvent(L"dw_process", L"DWV_ROWFOCUSCHANGED", (FEvent)&QuoteFilePurch2Select::OnRowChanged);
        //AttachEvent("dw_process","DWV_ASKSTYLE",OnItemAskStyle);
        //AttachEvent("dw_process","DWV_DOUBLECLICKED",OnDoubleClicked);
        return 1;
    }
    int onload()
    {
        SetArg();
        //dw_process = GetControl("xxx");
        //dw_process.openUrl("xxx");
        dw_process = GetControl(L"dw_process");
        dw_process.openUrl(L"/sale/view/Business3/template/QuoteFilePurchrList");
        dw_process.SetColumnState(L"taskid", false);
        dw_process.SetColumnState(L"EntityID", false);
        dw_process.SetColumnState(L"Category", false);
        dw_process.SetColumnState(L"content2", false);
        dw_process.SetAskStyle(true);
        EntityID = L"";
        if (GetWinParam())
        {
            xaserverarg arg = GetArg();
            EntityID = arg.GetArgString(L"EntityID");
            arg.AddArg(L"TaskID", L"");
        }
        OnAttachEvent();
        RetrieveData();
        return 1;
    }
};
jrj/project/business/QuoteFile.cpp
@@ -3445,6 +3445,10 @@
            //if(makeMessage(L"/task/quote/purchar/backtosaler")==-1) return 1;
            return OnSaleBack();
        }
        else if (comdid == L"xmPurch2")
        {
            return OnPurch2();
        }
        else if (comdid == L"xmPurch")
        {
            return OnPurch();
@@ -3554,10 +3558,10 @@
            if (action == L"purch")
            {
                int crow = dw_cell.GetRow();
                xstring cmd = comdid.mid(3, comdid.length());
                if (getRowID(dw_cell, crow) == L"") SendCtrlCmd(dw_cell, cmd);
                if (getRowID(dw_cell, crow) == L"") SendCtrlCmd(dw_cell, comdid);
                return 1;
            }
            return 1;
        }
        return 0;
    }
@@ -3592,6 +3596,19 @@
        return 1;
    }
    int OnPurch2()
    {
        xaserverarg arg;
        arg.AddArg(L"EntityID", entityID);
        OpenWindow(L"dev:xpage[QuoteFilePurch2Select.vx]", arg);
        xstring taskID = arg.GetArgString(L"TaskID");
        if (taskID != L"")
        {
            ProcessSendMessage(L"/task/quote/repurch", taskID, L"", L"", true);
        }
        return 1;
    }
    int OnSaveEx(bool balert = false)
    {
        //dw_cell.AcceptText();