2018-06-03 22:26:41 +08:00

142 lines
5.1 KiB
JavaScript

// JavaScript Document
var WorkTip=function(curHeight){
this.workTipMenu=$("#work_tip_menu");//工作提示菜单
this.workTipBody=$("#work_tip_body");//工作提示内容
this.mainshowlength=0;//可显示的条数
this.mainshowlength=parseInt((curHeight-50)/35);
this.workTipMenuJson={};
this.workTipNumber=0;
this.curTipSelect=null;//当前选中;
this.workTipItems={};
this.loadWorkTipConfig();//加载配置信息
this.initWorkTipMenu();//加载工作提示的菜单
this.reloadTime=1000;
//this.loadAndInitWortTip();//
this.initWindowResize();
//this.timeOutReload();
}
/*加载工作提示的菜单
*/
WorkTip.prototype.loadWorkTipConfig=function(){
var strMenuJson =RunJavaMethodTrans("com.tenwa.comm.worktip.WorkTipInit","InitTip","");
strMenuJson=strMenuJson.replace(/\//g,"");
if(strMenuJson==""){
this.workTipNumber=0;
}else{
this.workTipMenuJson=eval("("+strMenuJson+")");
this.workTipNumber=this.workTipMenuJson.length;
}
}
//初始化工作提示的菜单
WorkTip.prototype.initWorkTipMenu=function(){
this.workTipMenu.empty();
if(this.workTipNumber>0){
for(var i=0;i<this.workTipNumber;i++){
var selectClass="no_work_tip_menu_selected";
var isShow=false;
if(i==0){selectClass="work_tip_menu_selected";isShow=true;}
var oneConfig=this.workTipMenuJson[i];
var oneTipMenu=$('<li id="work_tip_menu_'+i+'" tipId="'+i+'" param="'+oneConfig.runner+'" class="'+selectClass+'">'+oneConfig.text.substring(0,oneConfig.text.indexOf("<"))+'</li>');
if(i==0){this.curTipSelect=oneTipMenu}
this.workTipMenu.append(oneTipMenu);
this.loadAndInitWortTip(i,isShow);
}
}
var tempWorkTip=this;
$('#work_tip_menu li').click(function () {
tempWorkTip.removeTipSelected($(this));
});
}
//给工作提示菜单选中处理
WorkTip.prototype.removeTipSelected=function(selectedItem){
this.curTipSelect.removeClass("work_tip_menu_selected").addClass("no_work_tip_menu_selected");
$("#work_tip_menu_item_"+this.curTipSelect.attr("TipId")).hide();
this.curTipSelect.css("color","#999999");
this.curTipSelect=selectedItem;
selectedItem.addClass("work_tip_menu_selected");
selectedItem.css("color","#2390e8");
$("#work_tip_menu_item_"+this.curTipSelect.attr("TipId")).show();
}
WorkTip.prototype.loadAndInitWortTip=function(stipId,sisShow){
var param=$("#work_tip_menu_"+stipId).attr("param")+"~getJson=true~tipnumber="+this.mainshowlength;
var tipId=stipId;
var isShow=sisShow;
tempWorkTip=this
AsControl.RunJsp("/AppMain/Welcome/WorkTipAjax.jsp", "Runner="+param, function(sReturnText){
var tCureLoadTip=$("#work_tip_menu_"+tipId);
if(sReturnText=="[]"){
tCureLoadTip.text(tCureLoadTip.text()+"(0)");
}else{
var tipJson=eval("("+sReturnText+")");
var isShowStype="style='display:none'";
if(isShow==true){isShowStype="";}
var allNumber=0;
if(tipJson.length>0){
var clength=$("#work_tip_menu_item_"+tipId).length||0;
var parentDiv=clength>0?$("#work_tip_menu_item_"+tipId):$("<div id='work_tip_menu_item_"+tipId+"' "+isShowStype+"></div>");
var title=$("#work_tip_menu_"+tipId).text();
for(var i=0;i<tipJson.length;i++){
var action=tipJson[i].action;
var text=tipJson[i].text;
if(text=="更多"){
allNumber=allNumber+tipJson[i].num
var tipItem=$("<a onclick="+action+"><div class='work_tip_more'>More...</div></a>");
parentDiv.append(tipItem);
}else{
allNumber++;
var textJson=eval("("+text+")");
var temp=textJson.title.replace("("+textJson.begintime+")","");
if(title!="业务提醒"){
temp=temp.substring(temp.indexOf("]")+1);
}
var tipItem=$("<div class='work_tip_item' ><a onclick="+action+" ><span style=' display:block;float:left;'><img src='./Tenwa/HomePage/Skip/Default/image/Document@3x.png'/></span><span style=' display:block;float:left;'><div class='work_tip_time'>"+textJson.begintime+"</div><div class='work_tip_content'>"+temp+"</div></span></a></div>");
parentDiv.append(tipItem);
}
}
tempWorkTip.workTipBody.append(parentDiv);
var ctitle=tCureLoadTip.text();
if(ctitle.length>0){ctitle=ctitle.split("(")[0];}
tCureLoadTip.text(ctitle+"("+allNumber+")");
}else{
tCureLoadTip.text(tCureLoadTip.text()+"(0)");
}
}
});
}
WorkTip.prototype.initWindowResize=function(){
var tempWrokTipUtil=this;
$(window).resize(function() {
tempWrokTipUtil.resizeWorkTip($(window).height());
});
}
WorkTip.prototype.resizeWorkTip=function(curHeight){
this.mainshowlength=parseInt((curHeight-65)/50);
// $("#work_tip_body").html("");
// $("#work_tip_menu").html("");
// this.loadWorkTipConfig();//加载配置信息
// this.initWorkTipMenu();//加载工作提示的菜单
}
WorkTip.prototype.timeOutReload=function(){
setTimeout(this.reloadCallBack(this),this.reloadTime);
}
WorkTip.prototype.Reload=function(){
if(this.workTipNumber>0){
for(var i=0;i<this.workTipNumber;i++){
var isShow=false;
var selectItemp=$("work_tip_menu_"+i).attr('class');
if(selectItemp.indexOf("work_tip_menu_selected")>0){isShow=true;}
alert("重新加载"+i);
this.loadAndInitWortTip(i,isShow);
}
}
}
WorkTip.prototype.reloadFunctionCallBack=function(worktip){
return function()
{
worktip.Reload();
}
}