use "xcontrol.vframe.vbusiness.vd"
|
use "xbase.vframe.vbusiness.vd"
|
|
unit trade
|
[
|
class AdministrativeDepartmentFolderView : public xframe
|
{
|
//xdwgrid dw_list;
|
xdwtable dw_base;//ÐÂÔöµ¯´°Ê±Ê¹ÓÃ
|
string adid;
|
string name;
|
string parentid;
|
string getsingle_url;
|
|
xnode m_agentNode; //Agent Condition
|
|
/*int SetAgent()
|
{
|
string xfNodeAgentArea = "agentarea";
|
xnode anode = GetAgentNode(xfNodeAgentArea);
|
if(m_agentNode)
|
{
|
SetAgentNodeContent (anode,m_agentNode);
|
}
|
else
|
{
|
msxml::IXMLDOMElement xframeElement = GetElement();
|
msxml::IXMLDOMElement agent = xframeElement.selectSingleNode("agent/"+xfNodeAgentArea+"[1]/*");
|
if(agent)
|
{
|
string s = agent.xml;
|
m_agentNode = SetAgentNodeContent (anode,s);
|
}
|
}
|
return 1;
|
}*/
|
|
//½¹µã¼¤»î´¦Àíº¯Êý
|
int OnSetFocus(ref TEvent evt, int param)
|
{
|
//ÖØÖù¤¾ßÌõ
|
//SetAgent();
|
return 1;
|
}
|
|
int OnSave()
|
{
|
xml x = new xml;
|
x.setNativePointer(xml::CreateInstance());
|
dw_base.AcceptText();
|
dw_base.DwUpdateAllTo(x.GetXmlDoc());
|
xaserverarg arg = new xaserverarg;
|
arg.setNativePointer(xaserverarg::CreateInstance());
|
arg.AddArg("content", x.GetXml());
|
//trace(x.GetXml());
|
if (getUrl("/sale/data/AdministrativeDepartment/ad_update", arg.GetString(), x) != 1)
|
{
|
string error = x.GetXmlDoc().text;
|
alert("err:" + error);
|
return 1;
|
}
|
//trace("·µ»ØÐÅÏ¢"+x.GetXml());
|
string str = x.GetXmlDoc().documentElement.getAttribute("text");
|
if (str == "true")
|
{
|
dw_base.ResetUpdateStatus();
|
CloseWindow();
|
alert("±£´æ³É¹¦!");
|
}
|
else
|
{
|
alert("±£´æÊ§°Ü!");
|
}
|
return 1;
|
}
|
|
//ÃüÁî·¢²¼º¯Êý
|
int OnCmdDispatch(string comdid)
|
{
|
if (comdid == "xmSave")
|
return OnSave();
|
else if (comdid == "xmClose")
|
CloseWindow();
|
return 0;
|
}
|
|
//ÃüÁî´¦Àíʼþ
|
int OnXCommand(ref TXCommandEvent evt, int param)
|
{
|
return OnCmdDispatch(evt.pStrID);
|
}
|
|
int OnAttachEvent()
|
{
|
//°ó¶¨¹¤¾ßÌõµã»÷ʼþ
|
AttachEvent("WM_XCOMMAND", OnXCommand);
|
//»ñÈ¡½¹µãʼþ£¬ÓÃÓÚÖØÖù¤¾ßÌõ
|
AttachEvent("WM_SETFOCUS", OnSetFocus);
|
}
|
|
int OnParentRetrieve()
|
{
|
xml x = new xml;
|
x.setNativePointer(xml::CreateInstance());
|
xaserverarg arg = new xaserverarg;
|
arg.setNativePointer(arg.CreateInstance());
|
arg.AddArg("adid", parentid);
|
if (getUrl(getsingle_url, arg.GetString(), x) != 1)
|
{
|
trace(x.GetXmlDoc().text);
|
return -1;
|
}
|
else
|
{
|
string parent_name = "";
|
string parent_adid = "";
|
string parent_level = "";
|
msxml::IXMLDOMNodeList nlist = x.GetXmlDoc().SelectNodes("data/Item");
|
int len = nlist.length;
|
for (int i = 0; i < len; i++)
|
{
|
msxml::IXMLDOMElement e = nlist.item(i);
|
parent_name = e.selectSingleNode("name").text;
|
parent_adid = e.getAttribute("guid");
|
parent_level = e.selectSingleNode("level").text;
|
}
|
xdwtable dw_obj = dw_base.FindDwTable("Item");
|
dw_obj.SetItemString(1, "parent_name", parent_name);
|
if (adid == "") {
|
dw_obj.SetItemString(1, "parentid", parent_adid);
|
dw_obj.SetItemString(1, "level", (parent_level.toInt() + 1).toString());
|
}
|
|
//dw_base.Retrieve(x);
|
//dw_base.Redraw();
|
}
|
return 1;
|
}
|
|
int OnRetrieve()
|
{
|
xml x = new xml;
|
x.setNativePointer(xml::CreateInstance());
|
xaserverarg arg = new xaserverarg;
|
arg.setNativePointer(arg.CreateInstance());
|
arg.AddArg("adid", adid);
|
if (getUrl(getsingle_url, arg.GetString(), x) != 1)
|
{
|
trace(x.GetXmlDoc().text);
|
return -1;
|
}
|
else
|
{
|
dw_base.Retrieve(x);
|
dw_base.Redraw();
|
}
|
return 1;
|
}
|
|
int onload()
|
{
|
|
dw_base = GetControl("dw_base");
|
dw_base.openUrl("/sale/view/AdministrativeDepartment/template/adwin");
|
getsingle_url = "/sale/data/AdministrativeDepartment/ad_getsingle";
|
xaserverarg arg = new xaserverarg;
|
arg.setNativePointer(arg.CreateInstance());
|
arg = GetParam();
|
adid = "";
|
parentid = "";
|
if (GetParam()) {
|
parentid = arg.GetArgString("parentid");
|
adid = arg.GetArgString("adid");
|
}
|
if (adid != "")
|
OnRetrieve();
|
if (parentid != "")
|
OnParentRetrieve();
|
OnAttachEvent();
|
dw_base.SetColHeaderHeight(0);
|
dw_base.SetRowSelectorWidth(0);
|
dw_base.SetHScrollState(false);
|
dw_base.SetVScrollState(false);
|
return 1;
|
}
|
|
int onloaded()
|
{
|
SetAgent();
|
|
return 1;
|
}
|
};
|
]
|