#include <wobject/xstring.hpp>
|
#include <xcontrol/xtreeview.hpp>
|
#include <xcontrol/xdwgrid.hpp>
|
#include <xcontrol/xlayersheet.hpp>
|
|
|
|
#include "vbusiness/vframe/maint.vframe.vbusiness.hpp"
|
#include "viewobject/view.base.hpp"
|
|
using xml = KXMLDOMDocument;
|
class __declspec(dllexport) maintSupplierv3 : public maint
|
{
|
public:
|
xdwtable dw_base;
|
xdwtable dw_kpinfo;
|
xdwtable dw_visitp;
|
xdwtable dw_basegy;
|
xdwgrid dw_supgoods;
|
xlayersheet m_layer;
|
xlayersheet xsheet;
|
//xstring xpage;
|
xstring m_diffstr;
|
|
public:
|
maintSupplierv3(void* implPtr, HWND hWnd) :maint(implPtr, hWnd) {}
|
public:
|
static maintSupplierv3* CreateInstance(void* implPtr, void* hWnd)
|
{
|
maintSupplierv3* pWin = new maintSupplierv3(implPtr, (HWND)hWnd);
|
return pWin;
|
}
|
|
xstring str_replace(xstring s, xstring a, xstring b, int k)
|
{
|
int i = s.find(a,k);
|
if (i > -1)
|
{
|
xstring tmp;
|
if(i==0)
|
tmp = b + s.mid(i + a.length(), s.length());
|
else if (i + a.length() == s.length())
|
tmp = s.mid(0, i) + b;
|
else
|
tmp = s.mid(0, i) + b + s.mid(i + a.length(), s.length());
|
str_replace(tmp, a, b, i + b.length() + 1);
|
}
|
else
|
return L""+s;
|
}
|
xstring str_replace(xstring s, xstring a, xstring b)
|
{
|
return str_replace( s, a, b, 0);
|
}
|
|
int SetAttributeByxml(xml x,xstring nodename,xstring action,xstring status)
|
{
|
KXMLDOMElement e;
|
KXMLDOMNodeList nlist = x.selectNodes(L"//"+nodename+L"");
|
if(nlist)
|
{
|
|
int nlen = nlist.length();
|
int i;
|
for(i=0; i<nlen; i++)
|
{
|
e = nlist.item(i);
|
//alert(e.xml);
|
e.setAttribute(action,status);
|
//alert(e.xml);
|
}
|
}
|
}
|
|
int SetAttributeByaddress(xml x,xstring nodename,xstring action,xstring status)
|
{
|
KXMLDOMElement e;
|
KXMLDOMNodeList nlist = x.selectNodes(L"//"+nodename+L"");
|
if(nlist)
|
{
|
|
int nlen = nlist.length();
|
int i;
|
for(i=0; i<nlen; i++)
|
{
|
e = nlist.item(i);
|
//alert(e.xml);
|
e.setAttribute(action,status);
|
//alert(e.xml);
|
}
|
}
|
}
|
|
int OnPreSave()
|
{
|
dw_base.AcceptText();
|
dw_kpinfo.AcceptText();
|
dw_visitp.AcceptText();
|
//xdwtable__ dw_base = new xdwtable__;
|
//dw_base.setNativePointer(this.GetControl(L"dw_base"));
|
xdwtable dw = dw_base.FindDwTable(L"Supplier",0);
|
xstring sStatus = dw.GetItemString(1,L"Status");
|
int slen = sStatus.length();
|
|
//if (slen >1)
|
|
xstring AdvantageProduct = dw_base.GetItemString(1,L"AdvantageProduct");
|
if(AdvantageProduct.rtrim()==L"" )
|
{
|
alert(L"优势产品为空!");
|
return -1;
|
}
|
xstring FactoryForPaperCard = dw_base.GetItemString(1,L"FactoryForPaperCard");
|
xstring FactoryForPart = dw_base.GetItemString(1,L"FactoryForPart");
|
xstring FactoryForPacking = dw_base.GetItemString(1,L"FactoryForPacking");
|
xstring FactoryForItem = dw_base.GetItemString(1,L"FactoryForItem");
|
xstring FactoryForMake = dw_base.GetItemString(1,L"FactoryForMake");
|
|
if(FactoryForPaperCard !=L"Y" && FactoryForPart !=L"Y" && FactoryForPacking !=L"Y" && FactoryForItem !=L"Y" && FactoryForMake !=L"Y")
|
{
|
alert(L"供应商分组为空!");
|
return -1;
|
}
|
|
if(sStatus==L"")
|
{
|
alert(L"供应商状态输入有误!");
|
return -1;
|
}
|
xstring sPartyNo = dw.GetItemString(1,L"PartyNo");
|
if (sPartyNo==L"" )
|
{
|
//sPartyNo = publiccode::GetIdentityNo(L"Party2");
|
sPartyNo = publiccode::GetIdentityNo(L"Party2");
|
dw.SetItemString(1,L"PartyNo",sPartyNo);
|
//alert(L"供应商编号为空!");
|
//return -1;
|
}
|
|
xstring ShortName = dw.GetItemString(1,L"ShortName");
|
if(ShortName.rtrim()==L"" )
|
{
|
alert(L"供应商简称为空!");
|
return -1;
|
}
|
xstring YearEstablished = dw_base.GetItemString(1,L"YearEstablished");
|
if(YearEstablished.rtrim()==L"" )
|
{
|
alert(L"成立时间为空!");
|
return -1;
|
}
|
xstring LegalPerson = dw_base.GetItemString(1,L"LegalPerson");
|
if(LegalPerson.rtrim()==L"" )
|
{
|
alert(L"法人代表为空!");
|
return -1;
|
}
|
|
xstring ThirdPartyReport = dw_base.GetItemString(1,L"ThirdPartyReport");
|
if(ThirdPartyReport.rtrim()==L"" )
|
{
|
alert(L"验厂报告为空!");
|
return -1;
|
}
|
xstring SupplierSource = dw_base.GetItemString(1,L"SupplierSource");
|
if(SupplierSource.rtrim()==L"" )
|
{
|
alert(L"供应商来源为空!");
|
return -1;
|
}
|
xstring Address = dw_base.GetItemString(1,L"Address");
|
if(Address.rtrim()==L"" )
|
{
|
alert(L"供应商地址为空!");
|
return -1;
|
}
|
xstring bAddress = dw_base.GetItemString(1,L"bAddress");
|
if(bAddress.rtrim()==L"" )
|
{
|
alert(L"寄件地址为空!");
|
return -1;
|
}
|
|
|
xstring sName = dw.GetItemString(1,L"Name")+L"";
|
sName.rtrim();
|
|
//sName = str_replace(sName,L" ",L"");
|
if (sName==L"")
|
{
|
alert(L"供应商名称为空!");
|
return -1;
|
}
|
else
|
{
|
xaserverarg arg;
|
arg.setNativePointer(arg.CreateInstance());
|
arg.AddArg(L"stype", L"Party2");
|
arg.AddArg(L"svalue", sName);
|
|
xml x ;
|
|
KXMLDOMDocument xdoc = x;
|
dw_base.DwUpdateAllTo(xdoc);
|
//KXMLDOMElement e= x.GetXmlDoc().documentElement;
|
//var n = x.GetXmlDoc().selectSingleNode(L"Supplier[@update.new='1']");
|
//if (n)
|
if (!maint::m_EntityID)
|
{
|
arg.AddArg(L"operate", L"update.new");
|
}
|
else
|
{
|
arg.AddArg(L"operate", L"update.modify");
|
}
|
xstring sguid=x.selectSingleNode(L"Supplier/@guid").text();
|
arg.AddArg(L"sguid", sguid);
|
//alert(sguid,L"->",maint::m_EntityID);
|
bool lbRepeated = publiccode::IsRepeated(arg);
|
if (lbRepeated)
|
{
|
alert(L"供应商名称有重复!");
|
return -1;
|
}
|
}
|
|
/*dw = dw_basegy.FindDwTable(L"Supplier",0);
|
xstring suserid = xaserver::GetUserId();//publiccode::GetUserInfo().id;
|
xstring susername = publiccode::GetUser(suserid).name;
|
xstring sdate = publiccode::GetCurrentDate();
|
dw.SetItemString(1,L"ModifierID",suserid);//Party
|
dw.SetItemDisplayString(1,L"ModifierID",susername);//Party
|
dw.SetItemString(1,L"ModifyDate",sdate);*/
|
|
int i;
|
dw = dw_base.FindDwTable(L"item",0);
|
for(i=1;i<=dw.GetRowCount();i++)
|
{
|
xstring aTemp;
|
xstring aName = dw.GetItemString(i,L"Name");
|
if (aName==L"" )
|
{
|
aTemp=dw.GetItemString(i,L"JobTitle")+dw.GetItemString(i,L"Gender")+dw.GetItemString(i,L"Mobile")+dw.GetItemString(i,L"TEL")+dw.GetItemString(i,L"Email")+dw.GetItemString(i,L"IM")+dw.GetItemString(i,L"Remark");
|
if(aTemp !=L"")
|
{
|
alert(L"联系人名称必填!");
|
return -1;
|
}
|
}
|
else
|
{
|
xstring aStatus;
|
aStatus = dw.GetItemString(i,L"Status");
|
if (aStatus==L"")
|
{
|
dw.SetItemString(i,L"Status",L"1");
|
}
|
}
|
}
|
|
/*dw.setNativePointer(dw_base.FindDwTable(L"item2",0));
|
for(i=1;i<=dw.GetRowCount();i++)
|
{
|
xstring bTemp;
|
bTemp=dw.GetItemString(i,L"AddressName",0)+dw.GetItemString(i,L"Address",0);
|
if(bTemp !=L"" && bTemp != nil)
|
{
|
if (dw.GetItemString(i,L"Status",0)==L"" || dw.GetItemString(i,L"Status",0)==nil)
|
dw.SetItemString(i,L"Status",L"1");
|
if (dw.GetItemString(i,L"IdentifyAddressFlag",0)==L"" || dw.GetItemString(i,L"IdentifyAddressFlag",0)==nil)
|
dw.SetItemString(i,L"IdentifyAddressFlag",L"N");
|
if (dw.GetItemString(i,L"PrimaryFlag",0)==L"" || dw.GetItemString(i,L"PrimaryFlag",0)==nil)
|
dw.SetItemString(i,L"PrimaryFlag",L"N");
|
}
|
}*/
|
|
dw = dw_kpinfo.FindDwTable(L"item3",0);
|
for(i=1;i<=dw.GetRowCount();i++)
|
{
|
xstring cTemp;
|
xstring cName = dw.GetItemString(i,L"BankName");
|
if (cName==L"" )
|
{
|
cTemp=dw.GetItemString(i,L"BankAccountNo")+dw.GetItemString(i,L"City");
|
if(cTemp !=L"")
|
{
|
alert(L"银行名称必填!");
|
return -1;
|
}
|
}
|
cName = dw.GetItemString(i,L"BankAccountNo");
|
if (cName==L"" )
|
{
|
cTemp=dw.GetItemString(i,L"BankName")+dw.GetItemString(i,L"City");
|
if(cTemp !=L"" )
|
{
|
alert(L"银行账号必填!");
|
return -1;
|
}
|
}
|
else {
|
if (dw.GetItemString(i,L"Status")==L"" )
|
dw.SetItemString(i,L"Status",L"1");
|
}
|
}
|
|
dw = dw_kpinfo.FindDwTable(L"Party",0);
|
if (dw)
|
{
|
xdwtable dw_b = dw_kpinfo.FindDwTable(L"item3",0);
|
for(i=1;i<=dw.GetRowCount();i++)
|
{
|
xstring skName = dw.GetItemString(i,L"Name");
|
if (skName==L"" )
|
{
|
int j;
|
for(j=1;j<=dw_b.GetRowCount();j++)
|
{
|
xstring kTemp = dw_b.GetItemString(j,L"BankName")+dw_b.GetItemString(j,L"BankAccountNo")+L"";
|
if(kTemp !=L"" )
|
{
|
alert(L"开票单位名称为空!");
|
return -1;
|
}
|
}
|
}
|
}
|
}
|
|
xdwtable dw_pc = dw_base.FindDwTable(L"item");
|
for(int h =1; h <= dw_pc.GetRowCount();h++)
|
{
|
if(dw_pc.GetItemString(h,L"Name")==L"")
|
{
|
alert(L"请输入联系人姓名!");
|
return -1;
|
}
|
if(dw_pc.GetItemString(h,L"Mobile")==L"")
|
{
|
alert(L"请输入联系人手机号!");
|
return -1;
|
}
|
if(dw_pc.GetItemString(h,L"IM")==L"")
|
{
|
alert(L"请输入联系人QQ号!");
|
return -1;
|
}
|
}
|
return 1;
|
}
|
|
int OnChangeRowNo(xdwtable dw,int row)
|
{
|
dw.SetItemString(1, L"SeqNo", L"1");
|
int i;
|
for (i=row; i<=dw.GetRowCount(); i++)
|
dw.SetItemString(i, L"SeqNo", xstring(i));
|
return 1;
|
}
|
|
int OnAddRow()
|
{
|
if (!m_layer) return 0;
|
int h=m_layer.GetSheetIndex();
|
int nindex = h+1;
|
KXMLDOMElement n = maint::m_configDoc.selectSingleNode(L"//maint/group[@for='dwviev']/dwview["+xstring(nindex)+L"]");
|
xstring sname= n.selectSingleNode(L"@name").text();
|
xstring stype=n.selectSingleNode(L"@type").text();
|
if (stype == L"dwtable")
|
{
|
int row;
|
int crow;
|
xdwtable dw_obj = GetControl(sname);
|
xdwtable dw = dw_obj.GetCurTable();
|
xstring dw_n=dw.GetDwName();
|
if(dw_n==L"item" || dw_n==L"item2" || dw_n==L"item3" || dw_n==L"item4")
|
{
|
row = dw.InsertRow(-1);
|
if(dw_n==L"item2" || dw_n==L"item3" || dw_n==L"item4")
|
{
|
OnChangeRowNo(dw,dw.GetRowCount());
|
}
|
|
//alert(row.toString());
|
//dw.SetItemString(row,L"Status",L"Y");
|
}
|
if (dw_n==L"item3ooo")
|
{
|
dw = dw_obj.FindDwTable(L"Party",0);
|
crow = dw.GetRow();
|
xstring scName;
|
if (crow >0)
|
scName = dw.GetItemString(crow,L"Name");
|
row = dw.InsertRow(-1);
|
if (scName !=L"" )
|
dw.SetItemString(dw.GetRowCount(),L"Name",scName);
|
}
|
if (dw_n==L"Party")
|
{
|
row = dw.InsertRow(-1);
|
crow = dw.GetRow();
|
//alert(crow.toString());
|
dw.SetItemString(crow,L"loadpic",L"上传图片");
|
dw.SetItemString(crow,L"dispic",L"查看");
|
}
|
}
|
else if (stype==L"dwgrid")
|
{
|
xdwgrid dw_objx = new xdwgrid;
|
dw_objx = GetControl(sname);
|
int xrow = dw_objx.InsertRow(-1);
|
//dw_objx.SetItemString(xrow,L"Status",L"Y");
|
}
|
|
return 1;
|
}
|
|
int OnInsertRow()
|
{
|
if (!m_layer) return 0;
|
int h=m_layer.GetSheetIndex();
|
int nindex = h+1;
|
KXMLDOMElement n = maint::m_configDoc.selectSingleNode(L"//maint/group[@for='dwviev']/dwview["+ xstring(nindex) +L"]");
|
xstring sname= n.selectSingleNode(L"@name").text();
|
xstring stype=n.selectSingleNode(L"@type").text();
|
if (stype==L"dwtable")
|
{
|
int row;
|
int crow;
|
xdwtable dw_obj = GetControl(sname);
|
xdwtable dw = dw_obj.GetCurTable();
|
xstring dw_n=dw.GetDwName();
|
if(dw_n==L"item" || dw_n==L"item2" || dw_n==L"item3" || dw_n==L"item4")
|
{
|
row=dw.GetRow();
|
if (row == 1) row = 0;
|
crow = dw.InsertRow(row);
|
//dw.SetItemString(crow,L"Status",L"Y");
|
}
|
if (dw_n==L"Party")
|
{
|
row=dw.GetRow();
|
if (row == 1) row = 0;
|
crow = dw.InsertRow(row);
|
crow = dw.GetRow();
|
dw.SetItemString(crow,L"loadpic",L"上传图片");
|
dw.SetItemString(crow,L"dispic",L"查看");
|
}
|
}
|
return 1;
|
}
|
|
int OnDeleteRow()
|
{
|
if (!m_layer) return 0;
|
int h=m_layer.GetSheetIndex();
|
int nindex = h+1;
|
KXMLDOMElement n = maint::m_configDoc.selectSingleNode(L"//maint/group[@for='dwviev']/dwview["+ xstring(nindex) +L"]");
|
xstring sname= n.selectSingleNode(L"@name").text();
|
xstring stype=n.selectSingleNode(L"@type").text();
|
if (stype==L"dwtable")
|
{
|
int row;
|
|
xdwtable dw_obj = GetControl(sname);
|
xdwtable dw = dw_obj.GetCurTable();
|
xstring dw_n=dw.GetDwName();
|
if(dw_n==L"item" || dw_n==L"item2" || dw_n==L"item3" || dw_n==L"item4"|| dw_n==L"Party")
|
{
|
row=dw.GetRow();
|
//if(row != 1)
|
//{
|
dw.DeleteRow(row);
|
//}
|
}
|
if (dw_n==L"Party0")
|
{
|
row=dw.GetRow();
|
//if(row != 1)
|
//{
|
dw.DeleteRow(row);
|
//}
|
}
|
}
|
return 1;
|
}
|
|
xstring onpartyadjust(xstring val)
|
{
|
xml x;
|
|
xaserverarg arg;
|
arg.setNativePointer(arg.CreateInstance());
|
arg.AddArg(L"content",val);
|
//alert(val);
|
//xstring sguid = xdoc.selectSingleNode(L"@guid").text();
|
xstring suserid = xaserver::GetUserId();
|
xstring sdate = publiccode::GetCurrentDate();
|
//arg.AddArg(L"sguid",sguid);
|
arg.AddArg(L"suserid",suserid);
|
arg.AddArg(L"sdate",sdate);
|
if (xurl::post(L"/sale/data/"+GetEntityName(1)+L"/pref/partyadjust",arg.GetString(),x) != 1)
|
{
|
alert(x.text());
|
return val;
|
}else
|
{
|
xstring s = x.xml();
|
//alert(s);
|
return s;
|
}
|
}
|
|
xstring GetEntityData(LPARAM pr)
|
{
|
xstring val;
|
xml x ;
|
|
KXMLDOMDocument xdoc = x;
|
KXMLDOMNodeList nlist = maint::m_configDoc.selectNodes(L"//maint/group[@for='dwviev']/dwview[@name !='dw_check' and @name !='dw_supgoods']");
|
int index;
|
int nlen = nlist.length();
|
if(nlen>0)
|
{
|
for(index=0;index<nlen;index++)
|
{
|
KXMLDOMElement e = nlist.item(index);
|
xstring sname= e.selectSingleNode(L"@name").text();
|
xstring stype=e.selectSingleNode(L"@type").text();
|
if (stype==L"dwtable")
|
{
|
xdwtable dw_obj = GetControl(sname);
|
dw_obj.AcceptText();
|
if (index==0)
|
{
|
//Address
|
xml xdd ;
|
|
xstring bAddressID = L""+dw_base.GetItemString(1,L"bAddressID");
|
if (bAddressID==L" ")
|
{
|
dw_base.SetItemString(1,L"bAddressID",publiccode::GetGuid());
|
dw_base.SetItemString(1,L"bAddressName",L"邮寄地址");
|
dw_base.SetItemString(1,L"bStatus",L"1");
|
dw_base.SetItemString(1,L"bPrimaryFlag",L"N");
|
dw_base.SetItemString(1,L"bIdentifyAddressFlag",L"N");
|
dw_base.DwUpdateAllTo(xdd);
|
xstring bAddress = L""+dw_base.GetItemString(1,L"bAddress");
|
if ( bAddress !=L"")
|
SetAttributeByaddress(xdd,L"bAddress",L"update.new",L"1");
|
KXMLDOMDocument xdoc = xdd;
|
}
|
else
|
{dw_obj.DwUpdateAllTo(xdoc);
|
}
|
}
|
/*else if (index==1)
|
{
|
xml__ xchk = new xml__;
|
xchk.setNativePointer(xchk.CreateInstance());
|
dw_obj.DwUpdateAllTo(xchk.GetXmlDoc());
|
SetAttributeByaddress(xchk,L"item3",L"update.modify",L"1");
|
SetAttributeByaddress(xchk,L"isdeleted",L"update.modify",L"1");
|
xdoc = xchk.GetXmlDoc();
|
}*/
|
else
|
dw_obj.DwUpdateAllTo(xdoc);
|
}
|
else
|
{
|
xdwgrid dw_objx = GetControl(sname);
|
dw_objx.AcceptText();
|
dw_objx.DwUpdateAllTo(xdoc);
|
}
|
}
|
}
|
|
/*var root = xdoc.documentElement;
|
var currNode = root.childNodes.item(1);
|
var MyNewNode = currNode.cloneNode(true);
|
root.appendChild(MyNewNode);
|
alert(xdoc.xml);
|
return "";
|
/*xml__ x1 = new xml__;
|
x1.setNativePointer(x1.CreateInstance());
|
x1.LoadXml(L"<a/>");
|
KXMLDOMElement ele = x1.GetXmlDoc();
|
var root = xdoc.getElementsByTagName(L"Name").item(0);
|
root.appendChild(ele);*/
|
val = xdoc.xml() ;
|
//alert(val);
|
val = onpartyadjust(xdoc.xml());
|
//alert(val);
|
return val;
|
}
|
|
int SetEntityData(xaserverarg arg)
|
{
|
return 0;
|
}
|
|
int ProcessFlowAction0(xstring comdid, int pr)
|
{
|
xstring action = comdid.mid(comdid.find(L"action:",0)+7,9999);
|
xaserverarg& arg = *new xaserverarg;
|
|
xml x ;
|
|
|
xstring aurl = L"/workflow/query/actioninfo/"+action;
|
|
if(xurl::get(aurl, L"", x) != 1)
|
return -1;
|
int nlen ;
|
int i = 0;
|
xstring name;
|
xstring worknode;
|
xstring how;
|
xstring state;
|
KXMLDOMElement e;
|
//参数要求
|
KXMLDOMNodeList nlist = x.selectNodes(L"//params/param");
|
nlen = nlist.length();
|
for(i=0; i<nlen; i++)
|
{
|
e = nlist.item(i);
|
name = e.selectSingleNode(L"@name").text();
|
how = e.selectSingleNode(L"@how").text();
|
if(how==L"EntityID")
|
arg.AddArg(name, GetEntityID(pr));
|
else if(how==L"Entity" || how == L"EntityData")
|
arg.AddArg(name, GetEntityData(pr));
|
//"CHeckAskMsg"
|
//"CHeckMsg"
|
}
|
arg.AddArg(L"action.entity",GetEntityName(pr));
|
//动作
|
if (x.selectSingleNode(L"//view.action[1]"))
|
{
|
KXMLDOMElement n = x.selectSingleNode(L"//view.action[1]");
|
if(n)
|
{
|
|
name = n.selectSingleNode(L"@name").text();
|
//worknode = n.selectSingleNode(L"@worknode").text();
|
worknode = GetEntityWorkNode(pr,name);
|
arg.AddArg(L"do",name);
|
|
if(worknode !=L"")
|
{
|
openUrl(worknode,&arg);
|
}
|
else
|
{
|
alert(L"Warn: Please configure worknode for action "+ name +L".");
|
return 1;
|
}
|
}
|
}
|
else
|
{
|
//url::post(L"/workflow/action/Supplier/bill.update",arg.GetString(),x);
|
xml x1 ;
|
|
//if (url::post(L"/workflow/action/"+GetEntityName(pr)+L"/"+action,arg.GetString(),x1) != 1)
|
if(xurl::post(L"/sale/data/SupplierV3/entity/owner/save", arg.GetString(),x)!=1)
|
{
|
if (x1.xml())
|
{
|
xstring error = x1.text();
|
//alert(error);
|
}
|
}
|
else
|
{
|
//alert(x1.GetXml());
|
if(x1.selectSingleNode(L"error"))
|
{
|
alert(L"保存出错2!");
|
return 0;
|
}
|
}
|
MessageBoxW(GetHWND(),L"保存成功!",L"提示",0);
|
dw_base.ResetUpdateStatus();
|
dw_kpinfo.ResetUpdateStatus();
|
dw_visitp.ResetUpdateStatus();
|
OnRetrieve();
|
}
|
return 1;
|
}
|
|
int r1()
|
{
|
KXMLDOMNodeList nlist = maint::m_configDoc.selectNodes(L"//maint/group[@for='dwviev']/dwview");
|
int index;
|
int nlen = nlist.length();
|
if(nlen>0)
|
{
|
for(index=0;index<nlen;index++)
|
{
|
KXMLDOMElement e = nlist.item(index);
|
xstring sname= e.selectSingleNode(L"@name").text();
|
xstring stype=e.selectSingleNode(L"@type").text();
|
if (stype==L"dwtable")
|
{
|
xdwtable dw_obj = GetControl(sname);
|
|
xaserverarg& arg = *new xaserverarg;
|
|
arg.AddArg(L"EntityID", GetEntityID(1));
|
|
xml x1 ;
|
|
xstring dataUrl = L"/sale/data/"+GetEntityName(1)+L"/entity/maint" ;
|
getUrl(dataUrl,arg.GetString(),x1);
|
dw_obj.Retrieve(x1);
|
|
break;
|
}
|
}
|
return 1;
|
}
|
return 1;
|
}
|
|
int r2()
|
{
|
xml x;
|
|
KXMLDOMDocument xdoc = x;
|
|
//dw_base.DwUpdateAllTo(xdoc);
|
KXMLDOMNodeList nlist = maint::m_configDoc.selectNodes(L"//maint/group[@for='dwviev']/dwview");
|
int index;
|
int nlen = nlist.length();
|
if(nlen>0)
|
{
|
for(index=0;index<nlen;index++)
|
{
|
KXMLDOMElement e = nlist.item(index);
|
xstring sname= e.selectSingleNode(L"@name").text();
|
xstring stype=e.selectSingleNode(L"@type").text();
|
if (stype==L"dwtable")
|
{
|
xdwtable dw_obj = GetControl(sname);
|
dw_obj.DwUpdateAllToDiff(xdoc);
|
m_diffstr = xdoc.xml();
|
//alert(m_diffstr);
|
break;
|
}
|
}
|
return 1;
|
}
|
return 1;
|
}
|
|
int r3()
|
{
|
if(m_diffstr==L"") return 1;
|
xml x ;
|
|
x.loadXML(m_diffstr);
|
KXMLDOMDocument xdoc = x;
|
|
//dw_base.DwUpdateAllTo(xdoc);
|
KXMLDOMNodeList nlist = maint::m_configDoc.selectNodes(L"//maint/group[@for='dwviev']/dwview");
|
int index;
|
int nlen = nlist.length();
|
if(nlen>0)
|
{
|
for(index=0;index<nlen;index++)
|
{
|
KXMLDOMElement e = nlist.item(index);
|
xstring sname= e.selectSingleNode(L"@name").text();
|
xstring stype=e.selectSingleNode(L"@type").text();
|
if (stype==L"dwtable")
|
{
|
xdwtable dw_obj = GetControl(sname);
|
dw_obj.RetrieveDiff(xdoc);
|
dw_obj.Redraw();
|
break;
|
}
|
}
|
return 1;
|
}
|
return 1;
|
}
|
|
int test()
|
{
|
xml x ;
|
|
dw_kpinfo.DwUpdateAllTo(x);
|
//dw_visitp.dwUpdateAllTo(x.GetXmlDoc());
|
//dw_kpinfo.ClearAdvanceString(1,1);
|
//dw_kpinfo.ClearNoteString(1,1);
|
//dw_kpinfo.ClearOriginString(1,1);
|
//dw_kpinfo.DeleteRows(1,1,1);
|
//dw_kpinfo.ExpandCellRow(1,2);
|
//dw_kpinfo.ExpandMarginRow(2,1);
|
//dw_kpinfo.ExpandRow(2,3);
|
//dw_kpinfo.GetDwType(); ???
|
//xstring s = dw_kpinfo.GetDwXPath(); //Supplier
|
//KXMLDOMElement e = dw_kpinfo.GetElement(); //alert(e.xml); <xcell state=L"run" name=L"dw_kpinfo"/>
|
//xstring s = dw_kpinfo.GetGuid(1);
|
//xstring s = dw_kpinfo.GetHtml(); ???
|
//int i = dw_kpinfo.GetId();
|
//int i = dw_kpinfo.GetXNode();
|
//dw_kpinfo.SetGuid(1,L"5CF56D30-C02C-4CC0-971B-57894236816A");
|
}
|
|
int OnMoveup()
|
{
|
test();
|
return 1;
|
if (!m_layer) return 0;
|
int h=m_layer.GetSheetIndex();
|
int nindex = h+1;
|
KXMLDOMElement n = maint::m_configDoc.selectSingleNode(L"//maint/group[@for='dwviev']/dwview["+xstring(nindex)+L"]");
|
xstring sname= n.selectSingleNode(L"@name").text();
|
xstring stype=n.selectSingleNode(L"@type").text();
|
if (stype==L"dwtable")
|
{
|
xdwtable dw_obj = GetControl(sname);
|
xdwtable dw = dw_obj.GetCurTable();
|
xstring dw_n=dw.GetDwName();
|
if(dw_n==L"item3")
|
{
|
int row=dw.GetRow();
|
if (row == 1) row = 0;
|
int crow = dw.InsertRow(row);
|
//dw.
|
//dw.SetItemString(crow,L"Status",L"Y");
|
}
|
}
|
return 1;
|
}
|
int OnMovedown()
|
{
|
return 1;
|
}
|
|
int xxx()
|
{
|
//KXMLDOMElement xframeElement = GetElement();
|
//KXMLDOMNode xpage = xframeElement.selectSingleNode(L"//xpage");
|
//alert(xframeElement.xml);
|
/*xstring xfNodeAgentArea = L"layers";
|
xnode__ anode = GetAgentNode(xfNodeAgentArea);
|
KXMLDOMElement xframeElement = GetElement();
|
alert(anode.GetXml());
|
KXMLDOMNode layers = xframeElement.selectSingleNode(L"//layers");
|
KXMLDOMNodeList nlist;
|
int index;
|
int nlen;
|
KXMLDOMElement ele;
|
if(layers)
|
{
|
nlist = layers.SelectNodes(L".//layer");
|
nlen = nlist.length();
|
alert(L"nlen=L",nlen.toString());
|
}
|
|
//xstring tools;
|
//SetAgentNodeContent(anode, tools);*/
|
return 1;
|
}
|
|
int DoUpdate(bool showSuccess = true)
|
{
|
int rec =OnPreSave();
|
if (rec== -1) return 0;
|
ProcessFlowAction0(L"action:bill.update",1);
|
return 1;
|
}
|
int PreOnCmdDispatch(xstring comdid)
|
{
|
if(comdid==L"action:xxx") return xxx();
|
if(comdid==L"retrieve") return r1();
|
if(comdid==L"retrievediff") return r3();
|
if(comdid==L"updatediff") return r2();
|
if(comdid==L"test") return test();
|
|
//<action id=L"bill.update" caption=L"保存" scene=L"maint"/>
|
if(comdid.find(L"action:bill.update",0)>=0)
|
{
|
xstring suserid = xaserver::GetUserId();
|
PUser pp = publiccode::GetUser(suserid);
|
xstring userno = pp.no;
|
if(userno !=L"admin")
|
{
|
int rec =OnPreSave();
|
if (rec== -1) return 0;//返回0——不在执行以下代码;返回其他——执行以下代码。
|
}
|
ProcessFlowAction0(comdid,1);
|
return 1;
|
}
|
if(comdid.find(L"action:bill.addrow",0)>=0) OnAddRow();
|
if(comdid.find(L"action:bill.insertrow",0)>=0) OnInsertRow();
|
if(comdid.find(L"action:bill.deleterow",0)>=0) OnDeleteRow();
|
if(comdid.find(L"action:bill.moveup",0)>=0) OnMoveup();
|
if(comdid.find(L"action:bill.movedown",0)>=0) OnMovedown();
|
|
return 1;
|
}
|
|
int OnDoubleClicked(TEvent* evt,int p)
|
{
|
DWNMHDR* hdr = (DWNMHDR*)evt->notify.pnmh;
|
int row = hdr->row;
|
|
|
/*if(row < 1 || row > list::dw_list.GetRowCount())
|
return 1;
|
|
int hwnd = evt.lParam;
|
int s = combobox::GetCount(cb_config.GetId());
|
int i;
|
for (i=0; i < s; i++){
|
combobox cb = new combobox;
|
cb.setNativePointer(this.GetControl(L"value"+i.ToString()));
|
if(hwnd == cb.GetId())
|
break;
|
}*/
|
return 1;
|
}
|
|
int OnItemChangedkp(TEvent* evt,int p)
|
{
|
DWNMHDR* hdr = (DWNMHDR*)evt->notify.pnmh;
|
xstring colname = hdr->colname;
|
xstring value = hdr->data;
|
int row = hdr->row;
|
|
|
xdwtable dw = dw_kpinfo.FindDwTable(L"item3",0);
|
if (dw)
|
{
|
row=dw.GetRow();
|
xstring sdate = publiccode::GetCurrentDate();
|
dw.SetItemString(row,L"ModifyDate",sdate);
|
}
|
|
}
|
|
int OnItemChanged3(TEvent* evt,int p)
|
{
|
|
DWNMHDR* hdr = (DWNMHDR*)evt->notify.pnmh;
|
xstring colname = hdr->colname;
|
xstring coldata = hdr->data;
|
xstring value = hdr->data;
|
int row = hdr->row;
|
|
if(colname==L"DeveloperID")
|
{
|
xml x = new xml;
|
|
xaserverarg arg ;
|
arg.setNativePointer(arg.CreateInstance());
|
arg.AddArg(L"guid",coldata);
|
if (xurl::get(L"/sale/data/"+GetEntityName(1)+L"/pref/getAssignment",arg.GetString(),x) == 1)
|
{
|
KXMLDOMElement e=x.documentElement();
|
xstring sOrgID = e.selectSingleNode(L"OrgID").text();
|
xstring sOrgName = e.selectSingleNode(L"OrgName").text();
|
dw_basegy.SetItemString(1,L"devOrgID",sOrgID);
|
dw_basegy.SetItemDisplayString(1,L"devOrgID",sOrgName);
|
}
|
}
|
if(colname==L"CreatorID")
|
{
|
xml x2 ;
|
|
xaserverarg arg2 ;
|
arg2.setNativePointer(arg2.CreateInstance());
|
arg2.AddArg(L"guid",coldata);
|
if (xurl::get(L"/sale/data/"+GetEntityName(1)+L"/pref/getAssignment",arg2.GetString(),x2) == 1)
|
{
|
KXMLDOMElement e2=x2.documentElement();
|
xstring sOrgID2 = e2.selectSingleNode(L"OrgID").text();
|
xstring sOrgName2 = e2.selectSingleNode(L"OrgName").text();
|
dw_basegy.SetItemString(1,L"OrgID",sOrgID2);
|
dw_basegy.SetItemDisplayString(1,L"OrgID",sOrgName2);
|
}
|
}
|
return 1;
|
}
|
|
int OnItemChanged(TEvent* evt, int p)
|
{
|
|
DWNMHDR* hdr = (DWNMHDR*)evt->notify.pnmh;
|
xstring colname = hdr->colname;
|
xstring coldata = hdr->data;
|
xstring value = hdr->data;
|
int row = hdr->row;
|
|
if(colname==L"DeveloperID")
|
{
|
xml x ;
|
|
xaserverarg arg;
|
arg.setNativePointer(arg.CreateInstance());
|
arg.AddArg(L"guid",coldata);
|
if (xurl::get(L"/sale/data/"+GetEntityName(1)+L"/pref/getAssignment",arg.GetString(),x) == 1)
|
{
|
KXMLDOMElement e=x.documentElement();
|
xstring sOrgID = e.selectSingleNode(L"OrgID").text();
|
xstring sOrgName = e.selectSingleNode(L"OrgName").text();
|
dw_base.SetItemString(1,L"devOrgID",sOrgID);
|
dw_base.SetItemDisplayString(1,L"devOrgID",sOrgName);
|
}
|
}
|
if(colname==L"CreatorID")
|
{
|
xml x2;
|
|
xaserverarg arg2 ;
|
arg2.setNativePointer(arg2.CreateInstance());
|
arg2.AddArg(L"guid",coldata);
|
if (xurl::get(L"/sale/data/"+GetEntityName(1)+L"/pref/getAssignment",arg2.GetString(),x2) == 1)
|
{
|
KXMLDOMElement e2=x2.documentElement();
|
xstring sOrgID2 = e2.selectSingleNode(L"OrgID").text();
|
xstring sOrgName2 = e2.selectSingleNode(L"OrgName").text();
|
dw_base.SetItemString(1,L"OrgID",sOrgID2);
|
dw_base.SetItemDisplayString(1,L"OrgID",sOrgName2);
|
}
|
}
|
if(colname==L"isdeleted")
|
{
|
//xml xchk = new xml;
|
//xchk.setNativePointer(xchk.CreateInstance());
|
//var xdoc = xchk.GetXmlDoc();
|
// dw_kpinfo.DwUpdateAllTo(xdoc);
|
//SetAttributeByxml(xchk,L"isdeleted",L"update.modify",L"1");
|
//dw_kpinfo.SetColumnProp(L"isdeleted",L"update.modify",L"1");
|
//xdwtable dw = new xdwtable;
|
//dw.setNativePointer(dw_kpinfo.FindDwTable(L"item3",0));
|
//dw.SetItemString(row,L"isdeleted",coldata);
|
}
|
if(colname == L"ProvinceCode" || colname == L"City" || colname == L"District")
|
{
|
if(colname == L"ProvinceCode")
|
{
|
dw_base.SetItemString(row,L"City",L"");
|
dw_base.SetItemString(row,L"District",L"");
|
dw_base.SetItemDisplayString(row,L"City",L"");
|
dw_base.SetItemDisplayString(row,L"District",L"");
|
}
|
if(colname == L"City")
|
{
|
dw_base.SetItemString(row,L"District",L"");
|
dw_base.SetItemDisplayString(row,L"District",L"");
|
}
|
xstring provinceCode = dw_base.GetItemDisplayString(row,L"ProvinceCode");
|
xstring city = dw_base.GetItemDisplayString(row,L"City");
|
xstring district = dw_base.GetItemDisplayString(row,L"District");
|
dw_base.SetItemString(row,L"Address",provinceCode+city+district);
|
dw_base.SetItemString(row,L"bAddress",provinceCode+city+district);
|
}
|
if(colname == L"Address")
|
{
|
dw_base.SetItemString(row,L"bAddress",dw_base.GetItemString(1,L"Address"));
|
}
|
|
xdwtable dw = dw_base.FindDwTable(L"Supplier",0);
|
if (dw)
|
{
|
xstring suserid = xaserver::GetUserId();//publiccode::GetUserInfo().id;
|
xstring susername = publiccode::GetUser(suserid).name;
|
xstring sdate = publiccode::GetCurrentDate();
|
dw.SetItemString(1,L"ModifierID",suserid);//Party
|
dw.SetItemDisplayString(1,L"ModifierID",susername);//Party
|
dw.SetItemString(1,L"ModifyDate",sdate);
|
}
|
|
return 1;
|
}
|
|
//---------
|
int UpLoad(xstring name)
|
{
|
xstring str = name.mid(0,2);
|
str = str.upper();
|
//alert(str);
|
int ret1 = xaserver::Upload(L"supplier"+str, name+L".jpg", GetHWND(),L"",false);
|
//alert(ret1);
|
return ret1;
|
}
|
|
int OnkpItemClick(TEvent* evt, int p)
|
{
|
xdwtable dw = dw_kpinfo.FindDwTable(L"Party",0);
|
/*xdwtable__ dw1 = new xdwtable__;
|
dw1.setNativePointer(dw_base.FindDwTable(L"item3",0)); */
|
DWNMHDR* hdr = (DWNMHDR*)evt->notify.pnmh;
|
xstring value = hdr->data;
|
int row = dw.GetRow();// hdr.row;
|
xstring xrow = xstring(row);
|
xaserverarg& arg=*new xaserverarg;
|
|
|
if(value == L"上传图片")
|
{
|
xstring strguid = publiccode::GetGuid();
|
//alert(strguid);
|
int ret1 =UpLoad(strguid);
|
if(ret1 == -1)
|
return -1;
|
|
if(ret1 == 0)
|
{
|
alert(L"上传图片失败");
|
return -1;
|
}
|
else
|
{
|
alert(L"上传图片成功");
|
xstring strimage=dw.GetItemString(row,L"ImageList1");
|
//alert(strimage);
|
if(strimage==L"")
|
strimage=L"<ImageList></ImageList>";
|
xml y;
|
|
y.loadXML(strimage);
|
|
KXMLDOMElement ele= y.documentElement();
|
|
xml x;
|
|
xstring xx = L"<ImageList><image>"+strguid+L".jpg</image></ImageList>";
|
x.loadXML(xx);
|
KXMLDOMElement e= x.selectSingleNode(L"//image");
|
ele.appendChild(e);
|
dw.SetItemString(row,L"ImageList1",ele.xml());
|
//dw.Redraw();
|
}
|
}
|
if(value == L"查看")
|
{
|
arg.AddArg(L"src",dw.GetItemString(row,L"ImageList1"));
|
|
openUrl(L"/sale/view/" + GetEntityName(1) + L"/xpage/supplierattachment/picture", &arg);
|
//alert(arg.GetArgString(L"src"));
|
dw.SetItemString(row,L"ImageList1",arg.GetArgString(L"src"));
|
}
|
return 1;
|
}
|
|
int OnItemClick(TEvent* evt, int p)
|
{
|
ref DWNMHDR hdr1 = trust(evt.pnmh as ref DWNMHDR);
|
xstring colname1= hdr1.colname;
|
|
DWNMHDR* hdr = (DWNMHDR*)evt->notify.pnmh;
|
xstring value = hdr->data;
|
//alert(value);
|
//xdwtable dw = dw_base.FindDwTable(L"item2",0);
|
//xdwtable dw1 = dw_base.FindDwTable(L"item3",0);
|
xaserverarg& arg=*new xaserverarg;
|
|
|
/*if(value == L"上传附件")
|
{
|
xstring strguid = publiccode::GetGuid();
|
//alert(strguid);
|
int ret1 = UpLoad(strguid);
|
if(ret1 == -1)
|
return -1;
|
|
if(ret1 == 0)
|
{
|
alert(L"上传附件失败");
|
return -1;
|
}
|
else
|
{
|
alert(L"上传附件成功");
|
xstring strimage=dw_base.GetItemString(1,L"ImageList1");
|
//alert(strimage);
|
if(strimage==L"")
|
strimage=L"<ImageList></ImageList>";
|
xml y=new xml;
|
y.setNativePointer(xml::CreateInstance());
|
y.LoadXml(strimage);
|
|
KXMLDOMElement ele= y.GetXmlDoc().documentElement;
|
|
xml x=new xml;
|
x.setNativePointer(xml::CreateInstance());
|
xstring xx = L"<ImageList><image>"+strguid+L".jpg</image></ImageList>";
|
x.LoadXml(xx);
|
KXMLDOMElement e= x.GetXmlDoc().selectSingleNode(L"//image");
|
ele.appendChild(e);
|
dw_base.SetItemString(1,L"ImageList1",ele.xml);
|
dw_base.Redraw();
|
//alert(ele.xml);
|
}
|
}
|
if(value == L"查看")
|
{
|
arg.AddArg(L"src",dw_base.GetItemString(1,L"ImageList1"));
|
//alert(dw_base.GetItemString(1,L"ImageList1"));
|
int pa = arg.getNativePointer();
|
//alert(GetEntityName(1));
|
openUrl(L"/sale/view/"+GetEntityName(1)+L"/xpage/supplierattachment/picture", pa);
|
//alert(arg.GetArgString(L"src"));
|
arg.setNativePointer(pa);
|
dw_base.SetItemString(1,L"ImageList1",arg.GetArgString(L"src"));
|
}*/
|
/*else if(value == L"产品信息")
|
{
|
int start=dw_base.GetCellRowFromRowColumn(1,dw_base.GetColumnIndex(L"MainProducts"));
|
dw_base.ExpandCellRow(start,start + dw.GetRowCount() +1);
|
}
|
else if(value == L"设备产能")
|
{
|
int start1=dw_base.GetCellRowFromRowColumn(1,dw_base.GetColumnIndex(L"MainProducts"));
|
int begin=dw_base.GetCellRowFromRowColumn(1,dw_base.GetColumnIndex(L"DeveloperID"));
|
dw_base.ExpandCellRow(start1 + dw.GetRowCount() +3,begin -2);
|
//dw_base.ExpandMarginRow(-22,-20);
|
}*/
|
if(value == L"供应商资料附件")
|
{
|
arg.AddArg(L"entityid",dw_base.GetGuid(1));
|
arg.AddArg(L"ApplyStatus",dw_base.GetItemString(1,L"ApplyStatus"));
|
|
OpenWindow(L"dev:xpage[maint.Document.Supplier.v3.vx]", (LPARAM)&arg);
|
}
|
if(value == L"验厂报告附件")
|
{
|
arg.AddArg(L"entityid",dw_base.GetGuid(1));
|
arg.AddArg(L"ApplyStatus",dw_base.GetItemString(1,L"ApplyStatus"));
|
|
OpenWindow(L"dev:xpage[maint.Document.SupplierEx.v3.vx]", (LPARAM)&arg);
|
}
|
else if(value == L"合作信息")
|
{
|
int start2=dw_base.GetCellRowFromRowColumn(1,dw_base.GetColumnIndex(L"Status"));
|
dw_base.ExpandCellRow(start2,start2 +1);
|
//dw_base.ExpandMarginRow(-22,-20);
|
}
|
if (colname1 == L"ThirdPartyReport")
|
{
|
xaserverarg& arg1 = *new xaserverarg;
|
arg1.setNativePointer(arg.CreateInstance());
|
|
dw_base.SetItemString(1,L"ThirdPartyReport",L"");
|
OpenWindow(L"dev:xpage[Inspection.Supplie.vx]", (LPARAM)&arg1);
|
xstring str1 = arg1.GetArgString(L"ThirdPartyReport");
|
if(str1 != L""){
|
dw_base.SetItemString(1,L"ThirdPartyReport",str1);
|
dw_base.Redraw();
|
}
|
}
|
if (colname1 == L"PayType")
|
{
|
xaserverarg& arg2 =* new xaserverarg;
|
arg2.setNativePointer(arg.CreateInstance());
|
|
OpenWindow(L"dev:xpage[paymen.Supplier.vx]", (LPARAM)&arg2);
|
xstring str = arg2.GetArgString(L"PayType");
|
if(str != L""){
|
dw_base.SetItemString(1,L"PayType",str);
|
dw_base.Redraw();
|
}
|
}
|
return 1;
|
}
|
|
int OnSheetChanged(TEvent* evt, int p)
|
{
|
xstring suserid = xaserver::GetUserId();
|
PUser pp = publiccode::GetUser(suserid);
|
xstring userno = pp.no;
|
if (userno == L"admin" )
|
{
|
dw_base.SetReadOnly(false);
|
dw_kpinfo.SetReadOnly(false);
|
dw_visitp.SetReadOnly(false);
|
}else
|
{
|
dw_base.SetReadOnly(true);
|
dw_kpinfo.SetReadOnly(true);
|
//dw_visitp.SetReadOnly(true);
|
}
|
}
|
|
int OnItemClickExS(TEvent* evt, int p)
|
{
|
xdwtable dw = dw_visitp.FindDwTable(L"item4",0);
|
|
|
ref DWNMHDR hdr = cast(evt.pnmh as ref DWNMHDR);
|
xstring value = hdr.data;
|
int row = hdr.row;
|
//alert(value);
|
xaserverarg& arg=*new xaserverarg;
|
arg.setNativePointer(arg.CreateInstance());
|
|
if(value == L"附件上传")
|
{
|
if(dw.GetGuid(dw.GetRow())==L"")
|
{
|
alert(L"保存后在上传!");
|
return 1;
|
}
|
|
arg.AddArg(L"entityid",dw.GetGuid(dw.GetRow()));
|
//arg.AddArg(L"ApplyStatus",dw_base.GetItemString(1,L"ApplyStatus"));
|
|
OpenWindow(L"dev:xpage[maint.Document.Customer.v3.vx]", (LPARAM)&arg);
|
return 1;
|
}
|
|
if(value == L"人员")
|
{
|
xaserverarg& arg2 = *new xaserverarg;
|
arg2.setNativePointer(arg2.CreateInstance());
|
|
OpenWindow(L"dev:xpage[SupplierUserGroupPersonSelect.vx]", (LPARAM)&arg2);
|
|
if(arg2.GetArgString(L"comdid")==L"xmOk")
|
{
|
xstring data = arg2.GetArgString(L"data");
|
xml x2;
|
|
x2.loadXML(data);
|
KXMLDOMNodeList nodes = x2.selectNodes(L"/root/item");
|
trace(x2.xml());
|
|
int len = nodes.length();
|
|
xstring Names = L"";
|
for(int i=0;i<len; i++)
|
{
|
KXMLDOMElement t= nodes.item(i);
|
|
if(t.getAttribute(L"Name"))
|
{
|
xstring Name = t.getAttribute(L"Name");
|
if(Names==L"")
|
Names = Name;
|
else if(Names.find(Name) < 0) Names+=L",L"+Name;
|
}
|
}
|
dw.SetItemString(dw.GetRow(),L"ItemType",Names);
|
|
}
|
return 1;
|
}
|
|
return 1;
|
}
|
|
int PostOnAttachEvent()
|
{
|
AttachEvent(L"dw_base",L"DWV_CLICKED", (FEvent)&maintSupplierv3::OnItemClick);
|
//AttachEvent(L"tab_1", L"LYSN_SELECTEDSHEET",(FEvent)&maintSupplierv3::OnSheetChanged);
|
AttachEvent(L"dw_kpinfo",L"DWV_CLICKED", (FEvent)&maintSupplierv3::OnkpItemClick);
|
AttachEvent(L"dw_kpinfo",L"DWV_ITEMCHANGED", (FEvent)&maintSupplierv3::OnItemChangedkp);
|
AttachEvent(L"dw_base",L"DWV_ITEMCHANGED", (FEvent)&maintSupplierv3::OnItemChanged);
|
AttachEvent(L"dw_basegy",L"DWV_ITEMCHANGED", (FEvent)&maintSupplierv3::OnItemChanged3);
|
AttachEvent(L"dw_visitp",L"DWV_CLICKED", (FEvent)&maintSupplierv3::OnItemClickExS);
|
return 1;
|
}
|
|
|
int OnInit()
|
{
|
dw_base = GetControl(L"dw_base");
|
dw_base.SetColHeaderHeight(16);
|
dw_kpinfo = GetControl(L"dw_kpinfo");
|
dw_kpinfo.SetColHeaderHeight(16);
|
dw_visitp = GetControl(L"dw_visitp");
|
dw_visitp.SetColHeaderHeight(16);
|
|
//xdwtable dw_check = this.GetControl(L"dw_check");
|
//dw_check.SetColHeaderHeight(16);
|
//dw_check.SetReadOnly(true);
|
dw_basegy = GetControl(L"dw_basegy");
|
dw_supgoods = GetControl(L"dw_supgoods");
|
m_layer = GetControl(L"tab_1");
|
xsheet = GetControl(L"tab_1");
|
|
//xstring userno = xaserver::GetUserNo();
|
xstring ApplyStatus=dw_base.GetItemString(1,L"ApplyStatus");
|
|
//if(userno !=L"00601" && userno !=L"admin" && userno !=L"00701")
|
//{
|
//alert(ApplyStatus);
|
if(ApplyStatus ==L"已批准")
|
{
|
dw_visitp.SetReadOnly(false);
|
}
|
//}
|
|
if (!maint::m_EntityID)
|
{
|
xstring suserid = xaserver::GetUserId();
|
xstring susername = publiccode::GetUser(suserid).name;
|
xstring sdate = publiccode::GetCurrentDate();
|
xstring sAddressID = publiccode::GetGuid();
|
dw_base.SetItemString(1,L"CreatorID",suserid);//Party
|
dw_base.SetItemDisplayString(1,L"CreatorID",susername);
|
dw_base.SetItemString(1,L"CreateDate",sdate);
|
//xstring sCountryCode = dw.GetItemString(1,L"CountryCode",0);
|
//if (sCountryCode==L"" || sCountryCode== nil)
|
dw_base.SetItemString(1,L"CountryCode",L"142");
|
dw_base.SetItemDisplayString(1,L"CountryCode",L"中国");
|
dw_base.SetItemString(1,L"Status",L"1");
|
dw_base.SetItemString(1,L"Type",L"2");//PartyAccount 供应商
|
dw_base.SetItemString(1,L"aIdentifyAddressFlag",L"Y");//PartyAddress 主地址
|
dw_base.SetItemString(1,L"aPrimaryFlag",L"Y");
|
dw_base.SetItemString(1,L"aStatus",L"1");
|
dw_base.SetItemString(1,L"bAddressID",sAddressID);//PartyAddress 寄件地址
|
dw_base.SetItemString(1,L"bAddressName",L"寄件地址");
|
dw_base.SetItemString(1,L"bIdentifyAddressFlag",L"N");
|
dw_base.SetItemString(1,L"bPrimaryFlag",L"N");
|
dw_base.SetItemString(1,L"bStatus",L"1");
|
//dw_base.ResetUpdateStatus();
|
//dw_check.SetItemDisplayString(1,L"BusinessLicenceFlag",L"营业执照");
|
//dw_check.SetItemDisplayString(1,L"TaxRegistrationFlag",L"税务登记证复印件");
|
//dw_check.SetItemDisplayString(1,L"OrganizationCodeFlag",L"组织机构代码");
|
}
|
//dw_base.SetColHeaderHeight(0);
|
//dw_base.SetRowSelectorWidth(0);
|
//dw_base.SetScrollState(false);
|
return 1;
|
}
|
|
int onload()
|
{
|
maint::onload();
|
return 1;
|
}
|
int onloaded()
|
{
|
//PostOnAttachEvent();
|
maint::onloaded();
|
OnInit();
|
xstring suserid = xaserver::GetUserId();
|
PUser p = publiccode::GetUser(suserid);
|
xstring deptname = p.deptname;
|
xstring userno = p.no;
|
xstring jobname=p.jobname;
|
xstring ApplyStatusEx=dw_base.GetItemString(1,L"ApplyStatus");
|
//alert(ApplyStatusEx);
|
if (userno == L"admin" ||userno == L"00601" || userno == L"00701" || ApplyStatusEx==L"修改")
|
{
|
dw_base.SetReadOnly(false);
|
dw_kpinfo.SetReadOnly(false);
|
dw_visitp.SetReadOnly(false);
|
}else
|
{
|
dw_base.SetReadOnly(true);
|
dw_kpinfo.SetReadOnly(true);
|
//dw_visitp.SetReadOnly(true);
|
}
|
/*if(deptname != L"产品供应部" && userno != L"admin")
|
{
|
xdwtable dw = dw_base.FindDwTable(L"item2",0);
|
int start=dw_base.GetCellRowFromRowColumn(1,dw_base.GetColumnIndex(L"MainProducts"));
|
alert(start.toString());
|
//dw_base.ExpandCellRow(start,dw.GetRowCount());
|
alert(L"2");
|
int start1=dw_base.GetCellRowFromRowColumn(1,dw_base.GetColumnIndex(L"MainProducts"));
|
int begin=dw_base.GetCellRowFromRowColumn(1,dw_base.GetColumnIndex(L"DeveloperID"));
|
alert(L"2");
|
//dw_base.ExpandCellRow(start1 + dw.GetRowCount() +3,begin -2);
|
int start2=dw_base.GetCellRowFromRowColumn(1,dw_base.GetColumnIndex(L"Status"));
|
alert(L"2");
|
//dw_base.ExpandCellRow(start2,start2 +1);
|
|
//dw_kpinfo.openUrl(L"/sale/view/Supplier/template/supplier/kpinfo2");
|
//maint::OnRetrieve();
|
}*/
|
|
/*if (userno == L"admin" )
|
{
|
dw_base.SetReadOnly(false);
|
dw_kpinfo.SetReadOnly(false);
|
}else
|
{
|
dw_base.SetReadOnly(true);
|
dw_kpinfo.SetReadOnly(true);
|
}
|
dw_supgoods.SetReadOnly(true);
|
if(jobname==L"业务部经理" || jobname == L"业务经理" || jobname == L"业务主管" || jobname == L"业务组长" || userno == L"admin")
|
{
|
xsheet.SetSheetState(4,1);//显示产品库
|
}
|
else
|
{
|
xsheet.SetSheetState(4,0); //隐藏产品库
|
}*/
|
return 1;
|
}
|
|
};
|