mirror of
https://gitee.com/ShopeX/OMS
synced 2026-03-23 19:05:34 +08:00
253 lines
9.5 KiB
HTML
253 lines
9.5 KiB
HTML
<!--
|
|
Copyright 2012-2026 ShopeX (https://www.shopex.cn)
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
you may not use this file except in compliance with the License.
|
|
You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
-->
|
|
|
|
<input type='hidden' id='sequence-<{$sid}>'/>
|
|
<div id='region-treelist-<{$sid}>-loading'></div>
|
|
<div id='region-treelist-<{$sid}>' class='x-tree-list' style="overflow-y:auto;height:85%"></div>
|
|
<div class="mainFoot" style="padding: 5px;">
|
|
<button id="dlg_ok-<{$sid}>" class="sysiconBtnNoIcon"><{t}>确定<{/t}></button>
|
|
<button isclosedialogbtn="true" id="dlg_cancel-<{$sid}>" class="sysiconBtnNoIcon"><{t}>取消<{/t}></button>
|
|
</div>
|
|
<script>
|
|
void function(){
|
|
|
|
var sequence=$('sequence-<{$sid}>');
|
|
var sequence_dialog=$('sequence-<{$sid}>').getParent('.dialog');
|
|
var _inputText=sequence_dialog.retrieve('iptText');
|
|
var _inputHidden=sequence_dialog.retrieve('iptHidden');
|
|
var _imputHiddenValue=_inputHidden.value.split(',');
|
|
var multi='<{$multi}>';
|
|
var RegionList=TreeList;
|
|
|
|
<{if $multi}>
|
|
$('dlg_ok-<{$sid}>').addEvent('click',function(){
|
|
var nodes=sequence_dialog.getElements('.node').filter(function(n){
|
|
return n.getElement('input[type=checkbox]').checked;
|
|
});
|
|
|
|
var IDdatas=[];
|
|
var Namedatas=[];
|
|
nodes.each(function(node){
|
|
|
|
IDdatas.push(node.getElement('input[type=checkbox]').getValue());
|
|
if(node.getParent().id=='region-treelist-<{$sid}>'){
|
|
Namedatas.push(node.getElement('.node-name').get('text'));
|
|
}
|
|
});
|
|
_inputText.set('value',Namedatas.join(','));
|
|
_inputHidden.set('value',IDdatas.join(','));
|
|
|
|
sequence_dialog.retrieve('instance').close();
|
|
|
|
});
|
|
RegionList=new Class({
|
|
Extends:TreeList,
|
|
createNode:function(data,ext){
|
|
var options=this.options;
|
|
var nc=options.nodeClass;
|
|
var node_handle=new Element('span',{'class':nc.handle})
|
|
.set({'pid':data['PID'],
|
|
'nid':data['NID'],
|
|
'hasc':data['HASC']
|
|
})
|
|
.setHTML(' ');
|
|
var node_line=new Element('span',{'class':nc.nl}).setHTML(' ');
|
|
|
|
var node_checkbox=new Element('input',{
|
|
type:'checkbox',
|
|
name:options.checkboxName,
|
|
value:data['NID'],
|
|
pid:data['PID']
|
|
|
|
});
|
|
|
|
if(_imputHiddenValue.indexOf(data['NID'])>-1){
|
|
node_checkbox.store('edit',true).addEvent('change',function(){
|
|
this.retrieve('edit')=false;
|
|
this.removeEvevt('change',arguments.callee);
|
|
});
|
|
node_checkbox.store('check',true);
|
|
|
|
}else if(_imputHiddenValue.indexOf(data['NID']+"|close")>-1){
|
|
node_checkbox.store('check',true);
|
|
}
|
|
var node_icon=new Element('span',{'class':nc.icon}).setHTML(' ');
|
|
var node_name= new Element('span',{'class':nc.name}).setText(data['CNAME']);
|
|
|
|
var node=new Element('span',{'class':nc.clazz})
|
|
.adopt([node_handle,node_line,node_checkbox,node_icon,node_name]);
|
|
if(!!data['HASC'].toInt()){
|
|
var _this=this;
|
|
node_handle.addClass(nc.close);
|
|
node_checkbox.set('value',node_checkbox.get('value')+'|close');
|
|
node_handle.addEvent('click',function(e){
|
|
var node=this.getParent('.'+nc.clazz);
|
|
if(this.hasClass(nc.close)){
|
|
if(!node.getNext()||node.getNext().getTag()!=='div'){
|
|
var ncontainer=new Element('div',{'class':nc.cbox}).injectAfter(node);
|
|
_this.loadNodes(this.get('nid'),ncontainer);
|
|
this.addClass(nc.loading);
|
|
node_checkbox.set('value',node_checkbox.get('value').toInt());
|
|
|
|
}else{
|
|
if(node.getNext()&&node.getNext().getTag()=='div'){
|
|
node.getNext().show();
|
|
}
|
|
}
|
|
this.removeClass(nc.close);
|
|
}else{
|
|
if(node.getNext()&&node.getNext().getTag()=='div'){
|
|
node.getNext().hide();
|
|
this.addClass(nc.close);
|
|
}
|
|
}
|
|
});
|
|
|
|
|
|
}
|
|
var checkPNode=function(cnode,checked){
|
|
var pnode=cnode.getParent().getPrevious();
|
|
while(pnode.hasClass(nc.hasc)){
|
|
pnode.getElement('input[type=checkbox]').set('checked',checked);
|
|
pnode=pnode.getParent().getPrevious();
|
|
}
|
|
};
|
|
node_checkbox.addEvent('click',function(rc){
|
|
|
|
var node=this.getParent('.'+nc.clazz);
|
|
var nodeNext=node.getNext();
|
|
if(nodeNext&&nodeNext.getTag()=='div'){
|
|
$ES('input[type=checkbox]',nodeNext).set('checked',this.checked==true?true:false);
|
|
}
|
|
var nodebox=node.getParent();
|
|
if(nodebox.hasClass(nc.cbox)&&nodebox.getFormElementsPlus().length>0){
|
|
checkPNode(node,true);
|
|
}else if(nodebox.hasClass(nc.cbox)){
|
|
checkPNode(node,false);
|
|
}
|
|
});
|
|
|
|
var pcheckbox=$E('input[value='+node_checkbox.get('pid')+']',this.container);
|
|
if(pcheckbox&&pcheckbox.checked){
|
|
if(!pcheckbox.retrieve('edit')){
|
|
node_checkbox.store('check',true);
|
|
}
|
|
}
|
|
|
|
return node;
|
|
}
|
|
});
|
|
<{else}>
|
|
$('dlg_ok-<{$sid}>').addEvent('click',function(){
|
|
var node=sequence_dialog.getElements('.node').filter(function(n){
|
|
return n.getElement('input[type=radio]').checked;
|
|
});
|
|
|
|
if(!node||!node.length>0){
|
|
|
|
_inputText.set('value','[无上级]');
|
|
_inputHidden.set('value',0);
|
|
}else{
|
|
_inputText.set('value',node.getElement('.node-name').get('text'));
|
|
_inputHidden.set('value',node.getElement('input[type=radio]').getValue());
|
|
}
|
|
$('dlg_cancel-<{$sid}>').fireEvent('click');
|
|
|
|
});
|
|
RegionList=new Class({
|
|
Extends:TreeList,
|
|
createNode:function(data){
|
|
var options=this.options;
|
|
var nc=options.nodeClass;
|
|
var node_handle=new Element('span',{'class':nc.handle})
|
|
.set({'pid':data['PID'],
|
|
'nid':data['NID'],
|
|
'hasc':data['HASC']
|
|
})
|
|
.setHTML(' ');
|
|
var node_line=new Element('span',{'class':nc.nl}).setHTML(' ');
|
|
var node_checkbox=new Element('input',{
|
|
type:'radio',
|
|
name:options.checkboxName,
|
|
value:data['NID'],pid:data['PID']}
|
|
);
|
|
var node_icon=new Element('span',{'class':nc.icon}).setHTML(' ');
|
|
var node_name= new Element('span',{'class':nc.name}).setText(data['CNAME']);
|
|
|
|
var node=new Element('span',{'class':nc.clazz})
|
|
.adopt([node_handle,node_line,node_checkbox,node_icon,node_name]);
|
|
|
|
|
|
|
|
|
|
|
|
if(!!data['HASC'].toInt()){
|
|
var _this=this;
|
|
node_handle.addClass(nc.close);
|
|
node_checkbox.set('value',node_checkbox.get('value'));
|
|
node_handle.addEvent('click',function(e){
|
|
var node=this.getParent('.'+nc.clazz);
|
|
if(this.hasClass(nc.close)){
|
|
if(!node.getNext()||node.getNext().getTag()!=='div'){
|
|
var ncontainer=new Element('div',{'class':nc.cbox}).injectAfter(node);
|
|
_this.loadNodes(this.get('nid'),ncontainer);
|
|
this.addClass(nc.loading);
|
|
node_checkbox.set('value',node_checkbox.get('value').toInt());
|
|
|
|
}else{
|
|
if(node.getNext()&&node.getNext().getTag()=='div'){
|
|
node.getNext().show();
|
|
}
|
|
}
|
|
this.removeClass(nc.close);
|
|
}else{
|
|
if(node.getNext()&&node.getNext().getTag()=='div'){
|
|
node.getNext().hide();
|
|
this.addClass(nc.close);
|
|
}
|
|
}
|
|
});
|
|
|
|
}
|
|
|
|
return node;
|
|
}
|
|
|
|
});
|
|
|
|
<{/if}>
|
|
|
|
|
|
new RegionList({
|
|
remoteURL:'index.php?app=ome&ctl=admin_dly_corp&act=getRegionById&{param}={value}',
|
|
remoteParamKey:'p[0]',
|
|
container:'region-treelist-<{$sid}>',
|
|
checkboxName:'region',
|
|
showStep:1,
|
|
dataMap:{
|
|
PID:'p_region_id',
|
|
NID:'region_id',
|
|
CNAME:'local_name',
|
|
HASC:'child_count'
|
|
}
|
|
});
|
|
|
|
}();
|
|
|
|
|
|
</script>
|
|
|