From 7e70f74c002a311f27e81712e738fec07fb2cdff Mon Sep 17 00:00:00 2001
From: xj qian <qianxj15@sina.com>
Date: 星期五, 19 七月 2024 17:19:13 +0800
Subject: [PATCH] update
---
jrj/project/business/AP/list.RefundGDNLine.Entity.xarch.cpp | 302 +++++++++++++++++++++++++++
jrj/project/business/AP/list.RefundSourcingLine.Entity.xarch.cpp | 298 +++++++++++++++++++++++++++
jrj/ext-jrj/ext-jrj.vcxproj | 2
3 files changed, 602 insertions(+), 0 deletions(-)
diff --git a/jrj/ext-jrj/ext-jrj.vcxproj b/jrj/ext-jrj/ext-jrj.vcxproj
index d9113b3..6827c10 100644
--- a/jrj/ext-jrj/ext-jrj.vcxproj
+++ b/jrj/ext-jrj/ext-jrj.vcxproj
@@ -258,6 +258,8 @@
<ClCompile Include="..\project\business\AP\list.ap.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
</ClCompile>
+ <ClCompile Include="..\project\business\AP\list.RefundGDNLine.Entity.xarch.cpp" />
+ <ClCompile Include="..\project\business\AP\list.RefundSourcingLine.Entity.xarch.cpp" />
<ClCompile Include="..\project\business\AP\maint.ap.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
</ClCompile>
diff --git a/jrj/project/business/AP/list.RefundGDNLine.Entity.xarch.cpp b/jrj/project/business/AP/list.RefundGDNLine.Entity.xarch.cpp
new file mode 100644
index 0000000..666c2a6
--- /dev/null
+++ b/jrj/project/business/AP/list.RefundGDNLine.Entity.xarch.cpp
@@ -0,0 +1,302 @@
+#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) RefundGDNLineMaintListView : public xframe
+ {
+ public:
+ xdwgrid dw_list;
+ xdwtable dw_arg;
+ xnode m_agentNode; //Agent Condition
+ xstring str_url ;
+ xstring m_entityid;
+ public:
+ RefundGDNLineMaintListView(void* implPtr, HWND hWnd) :xframe(implPtr, hWnd) {}
+ public:
+ static RefundGDNLineMaintListView* CreateInstance(void* implPtr, void* hWnd)
+ {
+ RefundGDNLineMaintListView* pWin = new RefundGDNLineMaintListView(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;
+ }
+
+ xstring GetEntityName(int pr)
+ {
+ return L"RefundGDNLine";
+ }
+
+ xstring GetEntityID(int pr)
+ {
+ int row = dw_list.GetRow();
+ xstring id = dw_list.GetItemString(row,m_entityid);
+ return id;
+ }
+
+ int ProcessUsedArg(xaserverarg arg)
+ {
+ xstring EntityIDList = L"";
+ int ll_row = dw_list.GetNextSelectRow(1);
+ while(ll_row > 0 && ll_row <= dw_list.GetRowCount())
+ {
+ xstring id=dw_list.GetItemString(ll_row,m_entityid);
+ if(EntityIDList == L"") EntityIDList = id; else EntityIDList += L",L" + id;
+ ll_row = dw_list.GetNextSelectRow(ll_row + 1);
+ }
+ if(EntityIDList != L"") arg.AddArg(L"EntityID",EntityIDList);
+
+ return 1;
+ }
+
+ //焦点激活处理函数
+ int OnSetFocus(TEvent* evt, LPARAM param)
+ {
+ //重置工具条
+ //SetAgent(L"list",GetEntityID(1));
+ SetAgent();
+ return 1;
+ }
+
+ int OnItemChanged(TEvent* evt, LPARAM p)
+ {
+ DWNMHDR& hdr = *(DWNMHDR*)evt->notify.pnmh;
+ xstring colname=hdr.colname;
+ xstring value = hdr.data;
+ xstring dwname = L"dw_list";
+ if(value != L"")
+ {
+ KXMLDOMNodeList nlist = GetElement().selectNodes(L"//*[@name='"+dwname+L"']/trans[@for='"+colname+L"']");
+ ViewObject::TransData(nlist, dw_list, hdr.row, colname, value);
+ }
+
+ return 1;
+ }
+
+ int OnAdd()
+ {
+ dw_list.InsertRow(0);
+ return 1;
+ }
+
+ int OnDelete()
+ {
+ int row = dw_list.GetRow();
+ if(row < 1) return 1;
+ if (MessageBox(GetHWND(),L"是否删除此数据!",L"提示",1) == 2)
+ return 1;
+ dw_list.DeleteRow(0);
+ return 1;
+ }
+
+ int OnSave()
+ {
+ dw_list.AcceptText();
+
+ if(dw_list.GetRowCount()>0)
+ {
+ if(dw_list.GetItemString(dw_list.GetRowCount(),L"序号")==L"") dw_list.DeleteRow(dw_list.GetRowCount());
+
+ }
+ xml x ;
+
+ KXMLDOMDocument xdoc = x;
+ dw_list.DwUpdateAllToEx(xdoc);
+
+ xaserverarg arg ;
+
+ arg.AddArg(L"content",x.xml());
+
+ //trace(x.xml());
+ if(xurl::get(L"/sale/data/Gdn/update/RefundGDNLine", arg.GetString(),x)!=1)
+ {
+ xstring error = x.text();
+ alert(L"err:"+error);
+ alert(L"保存失败!");
+ return -1;
+ }
+ xstring str = x.documentElement().getAttribute(L"text");
+ if(str == L"false")
+ {
+ alert(L"数据保存失败!");
+ return -1;
+ }
+ dw_list.ResetUpdateStatus();
+ alert(L"数据保存完成!");
+
+ return 1;
+ }
+
+ int OnSearch()
+ {
+ xml x ;
+
+ xaserverarg arg ;
+
+ arg.AddArg(L"query",GetQueryArg());
+ if (getUrl(str_url,arg.GetString(),x)!=1)
+ {
+ trace(x.text());
+ return -1;
+ }else
+ {
+ dw_list.Retrieve(x);
+ dw_list.Redraw();
+ }
+ return 1;
+ }
+
+ int OnRowChanged(TEvent* evt, LPARAM p)
+ {
+ DWNMHDR& hdr = *(DWNMHDR*)evt->notify.pnmh;
+ int row = hdr.row;
+ //SetAgent(L"list",dw_list.GetItemString(row,m_entityid));
+ return 1;
+ }
+
+ //命令发布函数
+ int OnCmdDispatch(xstring comdid)
+ {
+ if(comdid == L"action:bill.new")
+ return OnAdd();
+ else if(comdid == L"action:bill.delete")
+ return OnDelete();
+ else if(comdid == L"action:bill.update")
+ return OnSave();
+ else if(comdid == L"xmSearch")
+ return OnSearch();
+ else if(comdid.find(L"action:",0)>=0)
+ {
+ int ret = ProcessFlowAction(comdid, 1);
+ }
+ return 0;
+ }
+
+ int ViewUpdate(int pr,xstring updateItem,xaserverarg arg)
+ {
+ if( updateItem==L"setstate")
+ {
+
+ //OnRetrieve(query);
+ }
+ return 1;
+ }
+
+ //命令处理事件
+ int OnXCommand(TEvent* evt, LPARAM param)
+ {
+ return OnCmdDispatch(evt->xcommand.pStrID);
+ }
+
+ int OnRowChanged(TEvent* evt, LPARAM p)
+ {
+ DWNMHDR& hdr = *(DWNMHDR*)evt->notify.pnmh;
+ int row = hdr.row;
+ //SetAgent(L"list",dw_list.GetItemString(row,GetEntityID(1)));
+ return 1;
+ }
+
+ int OnAttachEvent()
+ {
+ //绑定工具条点击事件
+ AttachEvent(L"WM_XCOMMAND", (FEvent)&RefundGDNLineMaintListView::OnXCommand);
+ //获取焦点事件,用于重置工具条
+ AttachEvent(L"WM_SETFOCUS", (FEvent)&RefundGDNLineMaintListView::OnSetFocus);
+ AttachEvent(L"dw_list",L"DWV_ITEMCHANGED", (FEvent)&RefundGDNLineMaintListView::OnItemChanged);
+ //AttachEvent(L"dw_list",L"DWV_DOUBLECLICKED",OnUpdate);//行双击
+ AttachEvent(L"dw_list",L"DWV_ROWFOCUSCHANGED", (FEvent)&RefundGDNLineMaintListView::OnRowChanged);//绑定行更改触发事件OnRowChanged
+ return 1;
+ }
+
+ xstring GetQueryArg()
+ {
+ dw_arg.AcceptText();
+ xml x ;
+
+ dw_arg.DwUpdateAllTo(x);
+ return x.xml();
+ }
+
+ int OnRetrieve(xstring query)
+ {
+ xml x ;
+
+ xaserverarg arg ;
+
+ arg.AddArg(L"query",query);
+ arg.AddArg(L"QueryArg",L"");
+ if (getUrl(str_url,arg.GetString(),x)!=1)
+ {
+ trace(L"错误信息=L"+(xstring)x.text());
+ return -1;
+ }else
+ {
+ dw_list.Retrieve(x);
+ dw_list.Redraw();
+ }
+ //dw_list.SetSelectionMode(3);
+ return 1;
+ }
+
+ int onload()
+ {
+ str_url = L"/sale/data/GDN/fetch/RefundGDNLine";
+
+ dw_list = GetControl(L"dw_list");
+ //dw_list.openUrl(L"/sale/view/Expense3/commodity/list");
+ dw_list.SetDataObject(GetServerUrl(),L"dev:sheet[list.RefundGDNLine.Entity.xarch.tpl/退税出口明细]");
+
+ //dw_list.SetSelectionMode(1);
+
+ dw_arg = GetControl(L"dw_arg");
+ dw_arg.SetDataObject(GetServerUrl(),L"dev:sheet[list.RefundGDNLine.Entity.xarch.tpl/退税出口明细参数]");
+
+ dw_arg.SetColHeaderHeight(0);
+ dw_arg.SetRowSelectorWidth(0);
+ dw_arg.SetHScrollState(false);
+ dw_arg.SetVScrollState(false);
+
+ dw_list.SetColumnState(L"CIEID", false);
+ dw_list.SetColumnState(L"CommDate", false);
+ //dw_list.SetReadOnly(true);
+
+ OnAttachEvent();
+
+ return 1;
+ }
+
+
+
+ int onloaded()
+ {
+ SetAgent();
+ //SetAgent(L"list",GetEntityID(1));
+ OnRetrieve(L"");
+
+ return 1;
+ }
+ };
\ No newline at end of file
diff --git a/jrj/project/business/AP/list.RefundSourcingLine.Entity.xarch.cpp b/jrj/project/business/AP/list.RefundSourcingLine.Entity.xarch.cpp
new file mode 100644
index 0000000..8df82ff
--- /dev/null
+++ b/jrj/project/business/AP/list.RefundSourcingLine.Entity.xarch.cpp
@@ -0,0 +1,298 @@
+#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) RefundSourcingLineMaintListView : public xframe
+ {
+ public:
+ xdwgrid dw_list;
+ xdwtable dw_arg;
+ xnode m_agentNode; //Agent Condition
+ xstring str_url ;
+ xstring m_entityid;
+ public:
+ RefundSourcingLineMaintListView(void* implPtr, HWND hWnd) :xframe(implPtr, hWnd) {}
+ public:
+ static RefundSourcingLineMaintListView* CreateInstance(void* implPtr, void* hWnd)
+ {
+ RefundSourcingLineMaintListView* pWin = new RefundSourcingLineMaintListView(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 OnSave()
+ {
+ dw_list.AcceptText();
+
+ if(dw_list.GetRowCount()>0)
+ {
+ if(dw_list.GetItemString(dw_list.GetRowCount(),L"序号")==L"") dw_list.DeleteRow(dw_list.GetRowCount());
+
+ }
+ xml x ;
+
+ KXMLDOMDocument xdoc = x;
+ dw_list.DwUpdateAllToEx(xdoc);
+
+ xaserverarg arg ;
+
+ arg.AddArg(L"content",x.xml());
+
+ if(xurl::get(L"/sale/data/Gdn/update/RefundSourcingLine", arg.GetString(),x)!=1)
+ {
+ xstring error = x.text();
+ alert(L"err:"+error);
+ alert(L"保存失败!");
+ return -1;
+ }
+ xstring str = x.documentElement().getAttribute(L"text");
+ if(str == L"false")
+ {
+ alert(L"数据保存失败!");
+ return -1;
+ }
+ dw_list.ResetUpdateStatus();
+ alert(L"数据保存完成!");
+
+ return 1;
+ }
+
+ xstring GetEntityName(int pr)
+ {
+ return L"RefundSourcingLine";
+ }
+
+ xstring GetEntityID(int pr)
+ {
+ int row = dw_list.GetRow();
+ xstring id = dw_list.GetItemString(row,m_entityid);
+ return id;
+ }
+
+ int ProcessUsedArg(xaserverarg arg)
+ {
+ xstring EntityIDList = L"";
+ int ll_row = dw_list.GetNextSelectRow(1);
+ while(ll_row > 0 && ll_row <= dw_list.GetRowCount())
+ {
+ xstring id=dw_list.GetItemString(ll_row,m_entityid);
+ if(EntityIDList == L"") EntityIDList = id; else EntityIDList += L",L" + id;
+ ll_row = dw_list.GetNextSelectRow(ll_row + 1);
+ }
+ if(EntityIDList != L"") arg.AddArg(L"EntityID",EntityIDList);
+
+ return 1;
+ }
+
+ //焦点激活处理函数
+ int OnSetFocus(TEvent* evt, LPARAM param)
+ {
+ //重置工具条
+ //SetAgent(L"list",GetEntityID(1));
+ SetAgent();
+ return 1;
+ }
+
+ int OnItemChanged(TEvent* evt, LPARAM p)
+ {
+ DWNMHDR& hdr = *(DWNMHDR*)evt->notify.pnmh;
+ xstring colname=hdr.colname;
+ xstring value = hdr.data;
+ xstring dwname = L"dw_list";
+ if(value != L"")
+ {
+ KXMLDOMNodeList nlist = GetElement().selectNodes(L"//*[@name='"+dwname+L"']/trans[@for='"+colname+L"']");
+ ViewObject::TransData(nlist, dw_list, hdr.row, colname, value);
+ }
+
+ return 1;
+ }
+
+ int OnAdd()
+ {
+ dw_list.InsertRow(0);
+ return 1;
+ }
+
+ int OnDelete()
+ {
+ int row = dw_list.GetRow();
+ if(row < 1) return 1;
+ if (MessageBox(GetHWND(),L"是否删除此数据!",L"提示",1) == 2)
+ return 1;
+ dw_list.DeleteRow(0);
+ return 1;
+ }
+
+ int OnSearch()
+ {
+ xml x ;
+
+ xaserverarg arg ;
+
+ arg.AddArg(L"query",GetQueryArg());
+ if (getUrl(str_url,arg.GetString(),x)!=1)
+ {
+ trace(x.text());
+ return -1;
+ }else
+ {
+ dw_list.Retrieve(x);
+ dw_list.Redraw();
+ }
+ return 1;
+ }
+
+ int OnRowChanged(TEvent* evt, LPARAM p)
+ {
+ DWNMHDR& hdr = *(DWNMHDR*)evt->notify.pnmh;
+ int row = hdr.row;
+ //SetAgent(L"list",dw_list.GetItemString(row,m_entityid));
+ return 1;
+ }
+
+ //命令发布函数
+ int OnCmdDispatch(xstring comdid)
+ {
+ if(comdid == L"action:bill.new")
+ return OnAdd();
+ else if(comdid == L"action:bill.delete")
+ return OnDelete();
+ else if(comdid == L"action:bill.update")
+ return OnSave();
+ else if(comdid == L"xmSearch")
+ return OnSearch();
+ else if(comdid.find(L"action:",0)>=0)
+ {
+ int ret = ProcessFlowAction(comdid, 1);
+ }
+ return 0;
+ }
+
+ int ViewUpdate(int pr,xstring updateItem,xaserverarg arg)
+ {
+ if( updateItem==L"setstate")
+ {
+
+ //OnRetrieve(query);
+ }
+ return 1;
+ }
+
+ //命令处理事件
+ int OnXCommand(TEvent* evt, LPARAM param)
+ {
+ return OnCmdDispatch(evt->xcommand.pStrID);
+ }
+
+ int OnRowChanged(TEvent* evt, LPARAM p)
+ {
+ DWNMHDR& hdr = *(DWNMHDR*)evt->notify.pnmh;
+ int row = hdr.row;
+ //SetAgent(L"list",dw_list.GetItemString(row,GetEntityID(1)));
+ return 1;
+ }
+
+ int OnAttachEvent()
+ {
+ //绑定工具条点击事件
+ AttachEvent(L"WM_XCOMMAND", (FEvent)&RefundSourcingLineMaintListView::OnXCommand);
+ //获取焦点事件,用于重置工具条
+ AttachEvent(L"WM_SETFOCUS", (FEvent)&RefundSourcingLineMaintListView::OnSetFocus);
+ AttachEvent(L"dw_list",L"DWV_ITEMCHANGED", (FEvent)&RefundSourcingLineMaintListView::OnItemChanged);
+ //AttachEvent(L"dw_list",L"DWV_DOUBLECLICKED",OnUpdate);//行双击
+ AttachEvent(L"dw_list",L"DWV_ROWFOCUSCHANGED", (FEvent)&RefundSourcingLineMaintListView::OnRowChanged);//绑定行更改触发事件OnRowChanged
+ return 1;
+ }
+
+ xstring GetQueryArg()
+ {
+ dw_arg.AcceptText();
+ xml x ;
+
+ dw_arg.DwUpdateAllTo(x);
+ return x.xml();
+ }
+
+ int OnRetrieve(xstring query)
+ {
+ xml x ;
+
+ xaserverarg arg ;
+
+ arg.AddArg(L"query",query);
+ arg.AddArg(L"QueryArg",L"");
+ if (getUrl(str_url,arg.GetString(),x)!=1)
+ {
+ trace(L"错误信息=L"+(xstring)x.text());
+ return -1;
+ }else
+ {
+ dw_list.Retrieve(x);
+ dw_list.Redraw();
+ }
+ //dw_list.SetSelectionMode(3);
+ return 1;
+ }
+
+ int onload()
+ {
+ str_url = L"/sale/data/GDN/fetch/RefundSourcingLine";
+
+ dw_list = GetControl(L"dw_list");
+ dw_list.SetDataObject(GetServerUrl(),L"dev:sheet[list.RefundSourcingLine.Entity.xarch.tpl/退税进货明细]");
+ //dw_list.SetSelectionMode(1);
+
+ dw_arg = GetControl(L"dw_arg");
+ dw_arg.SetDataObject(GetServerUrl(),L"dev:sheet[list.RefundSourcingLine.Entity.xarch.tpl/退税进货明细参数]");
+
+ dw_arg.SetColHeaderHeight(0);
+ dw_arg.SetRowSelectorWidth(0);
+ dw_arg.SetHScrollState(false);
+ dw_arg.SetVScrollState(false);
+
+
+ dw_list.SetColumnState(L"CIEID", false);
+ dw_list.SetColumnState(L"CommDate", false);
+ //dw_list.SetReadOnly(true);
+
+ OnAttachEvent();
+
+ return 1;
+ }
+
+
+
+ int onloaded()
+ {
+ SetAgent();
+ OnRetrieve(L"");
+ return 1;
+ }
+ };
\ No newline at end of file
--
Gitblit v1.9.3