ZhiYeJianKang_PeiXun/Song.Site/Manage/Sys/Scripts/Depart.js
2025-02-20 15:41:53 +08:00

248 lines
8.1 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

var sysrootid=103;
//
$(function(){
initloyout();
//控制编辑面板,默认为编辑根节点
setEditPanel("root");
//载入树形菜单的数据
$().SoapAjax("Depart","DepartOrder",{result:""},funcc,loading,unloading);
});
//页面初始化布局
function initloyout(){
$("input[type='text']").addClass("TextBox");
//$("textarea").addClass("TextBox");
//页面可控布局
var cont=$(".pageWinContext");
//左侧菜单树区域
var left=$("#MenuTreePanel");
var h=document.documentElement.clientHeight;
left.height(h-120);
//右侧编辑区域
var right=$("#Panel");
var h=document.documentElement.clientHeight;
right.height(h-153);
//右侧编辑区事件
$("#EditPanelTitle div").click(function(){
var type=$(this).attr("type");
//设置权限
if(type=="purview"){
var target=$(this).attr("target");
var id=$(this).attr("id");
if(id=="purviewTitle"){
OpenWin(target+"?id="+$(this).attr("nodeId")+"&type=depart","设置院系管理权限",1024,600);
return;
}
if(id=="artPurTitle"){
OpenWin(target+"?id="+$(this).attr("nodeId")+"&type=depart","设置院系文章编辑权限",90,90);
return;
}
}
setEditPanel(type);
});
//保存按钮
$("input[name$='btnEnter']").click(function(){
//提交编辑数据
UpdateNodeEvent();
return false;
});
}
//数据载入完成后的事件
//data:完整数据源webservice输出
function funcc(data){
window.treeDataSource=data;
var tree=new Tree("#MenuTreePanel");
Tree.RootClick=editroot;
Tree.NodeClick=editNode;
//
Tree.RootId=sysrootid;
Tree.onChangeOrder=changeOrder;
Tree.onDelNode=delNode;
//生成菜单
tree.BuildMenu(data);
//$("#MenuTreePanel").html(rootHtml);
editroot();
}
//点击根节点
function editroot(){
$("#MenuEditPanel").find("#addNodeParent").text("无(顶级)");
var tit=$("#editTitle");
tit.hide();
var tit=$("#purviewTitle");
tit.hide();
$("#artPurTitle").hide();
setEditPanel("add");
}
//点击子节点时
function editNode(node){
var data=window.treeDataSource;
var panel=$("#MenuEditPanel");
var id=node.attr("nodeId");
//“编辑”选项卡显示
$("#editTitle").show();
$("#purviewTitle").show();
$("#artPurTitle").show();
$("#purviewTitle").attr("nodeId",id);
$("#artPurTitle").attr("nodeId",id);
var edit=$("#EditPanel");
setEditPanel("edit");
var nodes=data.find("Depart");
nodes.each(function(){
var n=Number($(this).find("Dep_Id").text().toLowerCase());
//生成当前菜单节点的节点对象
if(n==id)node=new Node($(this),data);
});
//当前节点信息
panel.find("span[edit='id']").text(node.Id);
panel.find("span[edit='pid']").text(node.PatId);
panel.find("span[edit='tax']").text(node.Tax);
panel.find("span[edit='addpid']").text(node.Id);
panel.find("input[name='name']").val(node.Name);
panel.find("#addNodeParent").text(node.Name);
panel.find("input[name='CnAbbr']").val(node.CnAbbr);
panel.find("input[name='enname']").val(node.EnName);
panel.find("input[name='EnAbbr']").val(node.EnAbbr);
panel.find("input[name='code']").val(node.Code);
panel.find("textarea[name='func']").text(node.Intro);
var cbshow=panel.find("input[type='checkbox'][name='cbIsShow']");
node.IsShow ? cbshow.prop("checked","checked") : cbshow.removeAttr("checked");
var cbuse=panel.find("input[type='checkbox'][name='cbIsUse']");
node.IsUse ? cbuse.prop("checked","checked") : cbuse.removeAttr("checked");
panel.find("input[name='phone']").val(node.Phone);
panel.find("input[name='fax']").val(node.Fax);
panel.find("input[name='email']").val(node.Email);
panel.find("input[name='msn']").val(node.Msn);
panel.find("input[name='WorkAddr']").val(node.WorkAddr);
//当前节点父节点信息
var p=new Node(node.Parent,data);
panel.find("#editNodeParent").text(p.Id==0 ? "无(顶级)" : p.Name);
}
//开始载入时的预载
function loading(){
$("#loadingBar").show();
var mask=$("#screenMask");
mask.remove();
mask=null
delete mask;
var html="<div id=\"screenMask\"/>";
$("body").append(html);
mask=$("#screenMask");
mask.css("position","absolute").css("z-index","100");
var h=document.documentElement.clientHeight;
mask.css("width","100%").css("height",h-0);
mask.css("top",0).css("left",5);
mask.css("background-color","#ffffff");
mask.css("filter","Alpha(Opacity=60)");
mask.css("display","block");
mask.css("-moz-opacity",0.6);
mask.css("opacity",0.6);
mask.fadeIn("slow");
}
//载入完成后,清除预载效果
function unloading(){
$("#screenMask").remove();
$("#loadingBar").hide();
}
//控制编辑面板的事件
//pevent:"edit"为编辑节点,"add"为新增
function setEditPanel(pevent){
//编辑区面板
var panel=$("#MenuEditPanel #Panel");
panel.children().hide();
var edit=$("#EditPanel");
var add=$("#AddPanel");
$("#EditPanelTitle").children().removeClass("click");
switch(pevent){
case "edit":
add.hide();
edit.show();
$("#EditPanelTitle div[type='edit']").addClass("click");
break;
case "add":
edit.hide();
add.show();
$("#EditPanelTitle div[type='add']").addClass("click");
break;
}
}
//修改节点信息的事件方法
function UpdateNodeEvent(){
var xml="";
//如果是编辑状态
if($("#EditPanel").is(":visible")!=false){
//修改子节点信息
if($("#name").val()==""){
alert("名称不得为空!");
$("#name").focus();
return;
}
xml = encodeURIComponent(updateNode());
$().SoapAjax("Depart","DepartUpdate ",{result:xml},funcc,loading,unloading);
}
//增加节点信息
if($("#AddPanel").is(":visible")!=false){
if($("#addname").val()==""){
alert("名称不得为空!");
$("#name").focus();
return;
}
xml = encodeURIComponent(addNode());
$().SoapAjax("Depart","DepartAdd",{result:xml},funcc,loading,unloading);
}
return false;
}
//递交子节点信息
function updateNode(){
var panel=$("#MenuEditPanel");
//结果
var tmp = "<?xml version=\"1.0\" encoding=\"utf-8\" ?>";
tmp+="<node type=\"edit\" id=\""+$("span[edit='id']").text()+"\" >";
tmp+="<name>"+$("#name").val()+"</name>";
tmp+="<CnAbbr>"+$("#CnAbbr").val()+"</CnAbbr>";
tmp+="<enname>"+$("#enname").val()+"</enname>";
tmp+="<EnAbbr>"+$("#EnAbbr").val()+"</EnAbbr>";
tmp+="<code>"+$("#code").val()+"</code>";
tmp+="<IsShow>"+panel.find("input[type='checkbox'][name='cbIsShow']").prop("checked")+"</IsShow>";
tmp+="<IsUse>"+panel.find("input[type='checkbox'][name='cbIsUse']").prop("checked")+"</IsUse>";
tmp+="<func><![CDATA["+panel.find("textarea[name='func']").text()+"]]></func>";
tmp+="<phone>"+$("#phone").val()+"</phone>";
tmp+="<fax>"+$("#fax").val()+"</fax>";
tmp+="<email>"+$("#email").val()+"</email>";
tmp+="<msn>"+$("#msn").val()+"</msn>";
tmp+="<WorkAddr>"+$("#WorkAddr").val()+"</WorkAddr>";
tmp+="</node>";
return tmp;
}
//递交新增子节点信息
function addNode(){
var panel=$("#MenuEditPanel");
//结果
var tmp = "<?xml version=\"1.0\" encoding=\"utf-8\" ?>";
tmp+="<node type=\"add\" id=\"-1\" >";
tmp+="<name>"+$("#addname").val()+"</name>";
tmp+="<pid>"+panel.find("span[edit='addpid']").text()+"</pid>";
tmp+="<CnAbbr>"+$("#addCnAbbr").val()+"</CnAbbr>";
tmp+="<enname>"+$("#addenname").val()+"</enname>";
tmp+="<EnAbbr>"+$("#addEnAbbr").val()+"</EnAbbr>";
tmp+="<code>"+$("#addcode").val()+"</code>";
tmp+="<IsShow>"+panel.find("input[type='checkbox'][name='addcbIsShow']").prop("checked")+"</IsShow>";
tmp+="<IsUse>"+panel.find("input[type='checkbox'][name='addcbIsUse']").prop("checked")+"</IsUse>";
tmp+="<func><![CDATA["+panel.find("textarea[name='addfunc']").text()+"]]></func>";
tmp+="<phone>"+$("#addphone").val()+"</phone>";
tmp+="<fax>"+$("#addfax").val()+"</fax>";
tmp+="<email>"+$("#addemail").val()+"</email>";
tmp+="<msn>"+$("#addmsn").val()+"</msn>";
tmp+="<WorkAddr>"+$("#addWorkAddr").val()+"</WorkAddr>";
tmp+="</node>";
return tmp;
}
//更改顺序
function changeOrder(res){
$().SoapAjax("Depart","DepartOrder",{result:res},funcc,loading,unloading);
}
//删除节点
function delNode(res)
{
$().SoapAjax("Depart","DepartDel",{result:res},funcc,loading,unloading);
}