service.fnabrowser_wev8.js 6.3 KB
define("mService/fnabrowser_html",function(){return'<div class="page-content fna-browser-container">\t<div class="main-container">\t\t<div class="wev-search">\t\t\t<div class="wev-search-inner">\t\t\t\t<form disabledEnterSubmit action="">\t\t\t\t\t<input type="search" placeholder="$i18n{SEAECH}">\t\t\t\t</form>\t\t\t\t<div class="wev-clear-btn"></div>\t\t\t</div>\t\t</div>\t\t\t\t<div class="tabbar-wrap">\t\t\t<div class="list-tab tabbar active">$i18n{RECENTLY}</div>\t\t\t<div class="tree-tab tabbar">$i18n{SUBJECT_STRUCTURE}</div>\t\t</div>\t\t\t\t<div class="content-container">\t\t\t<div class="wev-loading wev-refresh-loading"><span>$i18n{LOADING_DATA}</span></div>\t\t\t<div class="list-wrap">\t\t\t\t<ul class="wev-table-view"></ul>\t\t\t\t<div class="wev-more-btn"><span>$i18n{LOAD_MORE}</span></div>\t\t\t\t<div class="wev-no-data"></div>\t\t\t\t<div class="wev-loading wev-more-loading"><span>$i18n{LOADING_DATA}</span></div>\t\t\t</div>\t\t</div>\t\t\t\t<div class="tree-container" style="display:none">\t\t\t<ul class="tree-page root-page">\t\t\t\t<li>\t\t\t\t</li>\t\t\t</ul>\t\t</div>\t</div></div>'}),define("mService/fnabrowser",["mUtil","i18n"],function(h,A){return{mounted:function(t,e){var u={browserId:"",selectedIds:"",closeCallback:function(){h.back()},success:function(){}};$.extend(u,e);$(".page-content",t).addClass("single");var a={init:function(){var i=this,s=$(".root-page",t).children("li"),n=$("<div class='wev-loading'><span>"+A.LOADING_DATA+"</span></div>");s.append(n);var e=h.jionActionUrl("com.api.mobilemode.web.mobile.browser.SystemBrowserAction","action=getData&browserId="+u.browserId);h.getJSON(e,function(e){if(n.remove(),"1"==e.status){var t=e.data.datas;i.fillTreeDatasToPage(t,s,!0)}else{var a=e.errMsg;h.getLabel(5359,"加载数据时出现错误:",function(e){alert(e+a)})}})},build:function(e){var r=this;$(".expend[data-haschild='1']",e).click(function(e){var i=$(this),s=$(this).parent();if("1"!=i.attr("expanding")){i.attr("expanding","1");var t=s.siblings(".tree-page");if(i.hasClass("closed"))if(i.removeClass("closed"),i.addClass("opened"),0<t.length)t.show(),i.removeAttr("expanding");else{var n=$("<div class='wev-loading'><span>"+A.LOADING_DATA+"</span></div>");n.insertAfter(s);var a=s.attr("data-id"),d=h.jionActionUrl("com.api.mobilemode.web.mobile.browser.SystemBrowserAction","action=getData&browserId="+u.browserId+"&id="+a);h.getJSON(d,function(e){if(n.remove(),"1"==e.status){var t=e.data.datas;r.fillTreeDatasToPage(t,s)}else{var a=e.errMsg;h.getLabel(5359,"加载数据时出现错误:",function(e){alert(e+a)}),i.removeClass("opened").addClass("closed")}i.removeAttr("expanding")})}else i.hasClass("opened")&&(t.hide(),i.removeClass("opened").addClass("closed").removeAttr("expanding"));e.stopPropagation()}})},fillTreeDatasToPage:function(e,t,a){var i=$('<ul class="tree-page"></ul>');a&&t.append(i)||i.insertAfter(t);for(var s=0;s<e.length;s++){var n=e[s],d=n.id,r=n.name,o=n.isParent,l=n.canClick,c="";l&&!o&&(c="data"),u.selectedIds&&(c+=u.selectedIds!=d?"":" selected");var v=$('<li class="'+c+'" data-id="'+d+'" data-name="'+r+'"></li>'),p='<div class="tree-data" data-id="'+d+'">';o&&(p+='<div class="expend closed" data-haschild="1"></div>'),p+=r,p+="</div>",v.append(p),i.append(v),l&&!o&&v.click(function(e){m.onOk($(this).data("id"),$(this).data("name")),e.stopPropagation()})}this.build(i)}},i=$(".wev-search",t),s=$("input[type='search']",t),n=$(".wev-clear-btn",t);$("form[disabledEnterSubmit]",t).keydown(function(e){if(13==e.keyCode)return!1}),s.on("input",function(){var e=this.value;i.toggleClass("wev-has-value",""!=e)}).keyup(function(e){13==e.keyCode&&(r=this.value,w.toggleTabAndLoad(),this.blur())}),n.click(function(){s.val("").focus().triggerHandler("input")});var d,o=0,r="",l=$(".content-container",t),c=$(".list-wrap .wev-table-view",l),v=$(".wev-refresh-loading",l),p=($(".wev-more-loading",l),$(".wev-no-data",l)),f=h.runtime.isWebkit()?"webkitAnimationEnd":"animationend";v[0].addEventListener(f,function(){$(this).hasClass("wev-hide")&&$(this).hide()});var w={refresh:function(e){o=0,l.addClass("wev-refreshing"),v.show().removeClass("wev-hide").addClass("wev-show");var t=(new Date).valueOf();function a(){300<=(new Date).valueOf()-t?(v.removeClass("wev-show").addClass("wev-hide"),l.removeClass("wev-refreshing")):setTimeout(a,100)}w.loadData(function(e){a()},e)},loadData:function(a,i){if(p.hide(),i||r||!d){var e=h.jionActionUrl("com.api.mobilemode.web.mobile.browser.SystemBrowserAction","action=getData&list=1&browserId="+u.browserId);h.getJSON(e,{name:r},function(e){var t=e.data.datas;i&&(d=t),w.loadDataByDataKey(t,a)})}else w.loadDataByDataKey(d,a)},loadDataByDataKey:function(e,d){var r=++o;url=h.jionActionUrl("com.api.mobilemode.web.mobile.browser.SystemBrowserAction","action=getListData"),h.getJSON(url,{current:r,pageSize:20,dataKey:e},function(e){var t,a=e.data,i=a.datas.length,s=["{@each datas as d}",'<li class="wev-table-view-cell wev-media {@if d.id == selectedId} selected{@/if}" data-id="${d.id}" data-title="${d.namespan}">','<a href="javascript:void(0);">','<div class="wev-media-body">',"$${d.namespan}",'<div class="wev-ellipsis">',"$${d.supNamespan}","</div>","</div>","</a>","</li>","{@/each}"].join("");u.selectedIds&&(a.selectedId=u.selectedIds),t=h.parseTemplate(s,a);var n=$(t);1==r&&c.find("*").remove(),c.append(n),n.click(function(){m.onOk($(this).data("id"),$(this).data("title"))}),i<=0&&p.show(),h.isFunction(d)&&d()},function(e){var t=$("<div class='wev-error'></div>");t.html(e),l.hide(),l.parent().append(t)})},toggleTabAndLoad:function(){b.addClass("active"),g.removeClass("active"),$(".tree-container",t).css("display","none"),l.css("display",""),$(".root-page",t).children("li").html(""),w.refresh()}},m={onOk:function(e,t){m.updateBudgetfeeTypeUsed(e);var a=u.success;a&&a(e,t);var i=u.closeCallback;i&&i()},updateBudgetfeeTypeUsed:function(e){var t=h.jionActionUrl("com.api.mobilemode.web.mobile.browser.SystemBrowserAction","action=updateBudgetfeeTypeUsed&subjectId="+e);h.getJSON(t,function(e){"1"!=e.status&&console.error("updateBudgetfeeTypeUsed error : "+e.errMsg||"")})}},b=$(".list-tab",t),g=$(".tree-tab",t);b.click(function(){var e=$(this);r="",e.hasClass("active")||w.toggleTabAndLoad()}),g.click(function(){var e=$(this);e.hasClass("active")||(e.addClass("active"),b.removeClass("active"),l.css("display","none"),$(".tree-container",t).css("display",""),a.init(!0))}),w.refresh(!0)}}});