mainpage.js 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343
  1. /**配置可选待办提醒功能请在cntMap中配置【mapper中的参数值在blank2.jsp中的js变量cntOptions进行设置】
  2. * 结构:KEY:对应mapper的id,请在APPCOMMON_Mapper.xml中配置对应的查询语句
  3. * SYSNAME:子系统名称
  4. * NAME:待办提醒功能在页面显示的名称
  5. * RIGHTID:对应fw_right表的RIGHTID,登录用户有该RIGHTID的菜单权限时,才会显示该待办提醒功能(如果为公共功能,即不跟菜单挂钩的,RIGHTID设置为-1)
  6. * URL:点击待办提醒功能跳转的页面地址(RIGHTID为-1,该参数无效)
  7. */
  8. var cntMap = [
  9. {"KEY":"MAINPAGE_CNT_ZX_ZJXQJHSP","SYSNAME":"就业专项资金管理","NAME":"资金需求计划审批","RIGHTID":"020101","URL":"/jyzxzjgl/web/zjxqjhsp/zjxqjhsp/zjxqjhsp.do"},
  10. {"KEY":"MAINPAGE_CNT_ZX_ZYJNPXCBJGSP","SYSNAME":"就业专项资金管理","NAME":"职业技能培训承办机构审批","RIGHTID":"020201","URL":"/jyzxzjgl/web/cbjgsp/cbjgsp/cbjgsp!to_zyjnpx.do"},
  11. {"KEY":"MAINPAGE_CNT_ZX_CYPXCBJGSP","SYSNAME":"就业专项资金管理","NAME":"创业培训承办机构审批","RIGHTID":"020203","URL":"/jyzxzjgl/web/cbjgsp/cbjgsp/cbjgsp!to_cypx.do"},
  12. {"KEY":"MAINPAGE_CNT_ZX_ZYJNPXJDBTSP","SYSNAME":"就业专项资金管理","NAME":"职业技能培训鉴定补贴审批","RIGHTID":"020301","URL":"/jyzxzjgl/web/btsp/jdbtsp/jdbtsp.do"},
  13. {"KEY":"MAINPAGE_CNT_ZX_CYPXKBSP","SYSNAME":"就业专项资金管理","NAME":"创业培训开班审批","RIGHTID":"020302","URL":"/jyzxzjgl/web/btsp/cypxkbsp/cypxkbsp.do"},
  14. {"KEY":"MAINPAGE_CNT_ZX_CYPXBTSP","SYSNAME":"就业专项资金管理","NAME":"创业培训补贴审批","RIGHTID":"020303","URL":"/jyzxzjgl/web/btsp/cypxbtsp/cypxbtsp.do"},
  15. {"KEY":"MAINPAGE_CNT_ZX_CYHXFWBTSP","SYSNAME":"就业专项资金管理","NAME":"创业后续服务补贴审批","RIGHTID":"020304","URL":"/jyzxzjgl/web/btsp/cypxhxfwbtsp/cypxhxfwbtsp.do"},
  16. {"KEY":"MAINPAGE_CNT_ZX_CYFHBTSP","SYSNAME":"就业专项资金管理","NAME":"创业孵化补贴审批","RIGHTID":"020305","URL":"/jyzxzjgl/web/btsp/cyfhbtsp/cyfhbtsp.do"},
  17. {"KEY":"MAINPAGE_CNT_ZX_QZBTSP","SYSNAME":"就业专项资金管理","NAME":"求职创业补贴审批","RIGHTID":"020306","URL":"/jyzxzjgl/web/btsp/qzbtsp/qzbtsp.do"},
  18. {"KEY":"MAINPAGE_CNT_LDL_GRBTSH","SYSNAME":"劳动力转移","NAME":"个人补贴审核","RIGHTID":"040101","URL":"/ldlzy/web/btgl/grbtsh/grbtsh.do"},
  19. {"KEY":"MAINPAGE_CNT_LDL_DWBTSH","SYSNAME":"劳动力转移","NAME":"单位补贴审核","RIGHTID":"040102","URL":"/ldlzy/web/btgl/dwbtsh/dwbtsh.do"},
  20. {"KEY":"MAINPAGE_CNT_LDL_GRBTFH","SYSNAME":"劳动力转移","NAME":"个人补贴复核","RIGHTID":"040103","URL":"/ldlzy/web/btgl/grbtfh/grbtfh.do"},
  21. {"KEY":"MAINPAGE_CNT_LDL_DWBTFH","SYSNAME":"劳动力转移","NAME":"单位补贴复核","RIGHTID":"040104","URL":"/ldlzy/web/btgl/dwbtfh/dwbtfh.do"}
  22. ];
  23. var _textLenght = 16;
  24. //对超长文字进行截取
  25. function textEllipsis(text){
  26. return text.length>_textLenght?(text.substring(0,_textLenght/2)+"..."+text.substring(text.length-_textLenght/2)):text;
  27. }
  28. var showids = [];//拥有的待办提醒菜单
  29. //生成“待办提醒”区域
  30. function getShowCntInfo(){
  31. var hasSelected = false;
  32. //alert(cntData[0].SHOWID);
  33. showids = cntData[0].SHOWID.split(":");
  34. var code = '<div class=cnt-panel>';
  35. var cntMapLen = cntMap.length;
  36. for (var i=0; i<cntMapLen; ++i){
  37. if ($.inArray(cntMap[i].KEY, showids) >= 0){
  38. code += "<div class='showcnt-container' "+(cntMap[i].RIGHTID == '-1'?"style='cursor:default'":("onclick=\"toHref('"
  39. +rootDir+cntMap[i].URL+(cntMap[i].URL.indexOf("?")>=0?"&":"?")+"RightID="+cntMap[i].RIGHTID+"&from=mainpage')\""))
  40. +"><div class='showcnt-panel' title='"+cntMap[i].SYSNAME+">>"+cntMap[i].NAME+"'>"
  41. +textEllipsis(cntMap[i].NAME)
  42. +"<div id='"+cntMap[i].KEY+"' class='showcntnumloading'>"
  43. +"</div>"
  44. +"</div></div>";
  45. hasSelected = true;
  46. }
  47. }
  48. if (!hasSelected){
  49. code += "<div id='null-tips2' class='null-tips'><div class='iknow' onclick='$(this).parent().hide()'></div></div>"
  50. }
  51. code += "</div>";
  52. //alert(code);
  53. $('#showCnt').html(code);
  54. $('.showcnt-panel').each(function(){
  55. $(this).mouseover(function(){
  56. $(this).css("backgroundColor", "#B4E0FF");
  57. });
  58. $(this).mouseout(function(){
  59. $(this).css("backgroundColor", "");
  60. });
  61. });
  62. if (cntData.length != 0 && cntData[0].SHOWID.length != 0){
  63. getShowCntAjaxData();
  64. }
  65. }
  66. var curIndex = 0;
  67. var progressTimeoutID;
  68. //ajax获取待办提醒统计数据
  69. function getShowCntAjaxData(){
  70. if (curIndex >= showids.length){
  71. return;
  72. }
  73. var mapperid = showids[curIndex];
  74. CFW.oAJax.doQuery(mapperid, cntOptions, "正在统计数据...",
  75. function(mData) {
  76. //调用成功后返回数据
  77. //alert(mData);
  78. $('#'+showids[curIndex]).removeClass("showcntnumloading");
  79. if (mData != 0){
  80. $('#'+showids[curIndex]).html(""+mData);
  81. $('#'+showids[curIndex]).addClass("showcntnum");
  82. }
  83. ++curIndex;
  84. progressTimeoutID = setTimeout("getShowCntAjaxData()", 10);
  85. },
  86. function(mData) {
  87. //调用失败后返回数据
  88. //alert(mData);
  89. $('#'+showids[curIndex]).html(" ");
  90. $('#'+showids[curIndex]).removeClass("showcntnumloading").addClass("showcnterror");
  91. ++curIndex;
  92. progressTimeoutID = setTimeout("getShowCntAjaxData()", 10);
  93. },"firstRow"
  94. );
  95. }
  96. //显示覆盖层【已整理成组件,详见2Team.js的MyModal】
  97. function showOverlay(){
  98. $(document.body).scrollTop(0);
  99. $("#mymodal-overlay").show();
  100. $("#mymodal-overlay").css("zIndex", 998);
  101. $(document.body).css("overflow", "hidden");
  102. }
  103. //隐藏覆盖层
  104. function hideOverlay(){
  105. $("#mymodal-overlay").hide();
  106. $(document.body).css("overflow", "auto");
  107. }
  108. //显示高亮层
  109. function showNoticeDiv(){
  110. $("#noticeShow").css("left", ($(document.body).width()-$("#noticeShow").outerWidth())/2);
  111. $("#noticeShow").css("top", ($(document.body).height()-$("#noticeShow").outerHeight())/2);
  112. showOverlay();
  113. //$("#noticeShow").show();
  114. $("#noticeShow").animate({opacity:"show"}, "slow");
  115. }
  116. function setNoticeClick(){
  117. $('.notice-title').click(function(){
  118. var obj = $(this).parent().find(".notice-text");
  119. var flag = obj.css("display");
  120. $(".notice-text").hide();//隐藏所有摘要div
  121. if (flag == "none"){
  122. obj.show();
  123. //obj.slideDown();
  124. }
  125. });
  126. }
  127. function setColor(obj, color, flag){
  128. obj.style.backgroundColor = color;
  129. //obj.style.backgroundImage = flag==1?'url(circle12.png) no-repeat':'url(circle18.png) no-repeat';
  130. obj.style.color = flag==1?color:"white";
  131. if (flag==1){
  132. $("#"+obj.id).addClass("pagenum-hide").removeClass("pagenum");
  133. }else{
  134. $("#"+obj.id).removeClass("pagenum-hide").addClass("pagenum");
  135. }
  136. }
  137. //生成公告列表
  138. function setNoticeData() {
  139. var len = noticeData.length;
  140. var row;
  141. var code = '<div class=notice-panel>';
  142. for ( var i = 0; i < len; i++) {
  143. row = noticeData[i];
  144. code += "<div><div class=notice-title><table width='98%'><tr><td><span class=notice-titletext>";
  145. code += row.TITLE2;
  146. code += "</span></td><td align=right><span class=notice-titletime>";
  147. code += ""+row.AUTHOR+" "+row.DUETIME;
  148. code += "</span></td></tr></table></div><div class=notice-text><p><strong>摘要:</strong>";
  149. code += row.DIGEST;
  150. code += "<span class='notice-contentflag' onclick=showNoticeInfo('";
  151. code += row.COLID;
  152. code += "')>【正文】</span>";
  153. code += "</p></div></div>";
  154. }
  155. code += "</div>";
  156. //alert(code);
  157. $('#noticeList').html(code);
  158. setNoticeClick();
  159. //showNoticeInfo('');
  160. }
  161. //点击“正文”操作
  162. function showNoticeInfo(COLID) {
  163. var len = noticeData.length;
  164. var row;
  165. var content = "";
  166. if (len == 0) {
  167. return;
  168. }
  169. if (COLID == '') {
  170. row = noticeData[0];
  171. content += "<div class=notice-content-panel-title>";
  172. content += "<h4>" + row.TITLE + "</h4>"
  173. content += "</div>";
  174. content += "<div class=notice-content-panel-text>";
  175. content += row.CONTENT == null ? "无内容" : row.CONTENT;
  176. content += "</div>";
  177. //$('#bulletinWindowMsgs').html(content);
  178. $('#div_bulletin_show').html(content);
  179. } else {
  180. for ( var i = 0; i < len; i++) {
  181. row = noticeData[i];
  182. if (row.COLID == COLID) {
  183. content += "<div class=notice-content-panel-title>";
  184. content += "<h4>" + row.TITLE + "</h4>";
  185. content += "<p style='color:#444;margin:8px 0px 8px 0px;padding:4px;border-bottom:1px solid #e8e8e8;'>发布人:" + row.AUTHOR + "&nbsp;&nbsp;&nbsp;发布时间:"+ row.DUETIME +"</p>";
  186. content += "</div>";
  187. content += "<div class=notice-content-panel-text>";
  188. content += row.CONTENT == null ? "无内容" : row.CONTENT;
  189. content += "</div>";
  190. //$('#bulletinWindowMsgs').html(content);
  191. $('#div_bulletin_show').html(content);
  192. break;
  193. }
  194. }
  195. }
  196. showNoticeDiv();
  197. }
  198. //点击待办提醒“设置”操作
  199. function setShowCnt() {
  200. var content = "";
  201. content += "<div style='height:280px;'><div style='position:absolute;height:100%;width:100%;overflow:auto;'>";
  202. var row;
  203. var flag = true;
  204. var checkflag = "";
  205. var len = cntMap.length;
  206. if (len == 0){
  207. alert("暂无可设置的待办提醒功能");
  208. return;
  209. }
  210. showCntSel = ":";
  211. var sysname = "";
  212. for (var i=0; i<len; ++i){
  213. row = cntMap[i];
  214. if ($.inArray(row.RIGHTID, rights) >= 0 || cntMap[i].RIGHTID == '-1'){
  215. flag = false;
  216. //显示子系统名
  217. if (sysname != row.SYSNAME){
  218. sysname = row.SYSNAME;
  219. content += "<div style='float:left;width:100%;margin:10px 0px 0px 0px;'>"+sysname+"</div>"
  220. }
  221. if ($.inArray(row.KEY, showids) >= 0){
  222. checkflag = "checked";
  223. showCntSel += row.KEY+":";
  224. }else{
  225. checkflag = "";
  226. }
  227. //content += "<input type=checkbox id=chk_"+row.KEY+" value='"+row.KEY+"' onclick=setShowCntSel('chk_"+row.KEY+"') "+checkflag+">"
  228. // + row.NAME
  229. // + "&nbsp;&nbsp;<br>";
  230. content += "<div class='showcnt-sel-container'><div class='"+(checkflag=="checked"?"showcnt-selected' checked=true":"showcnt-select' checked=false")+" id=chk_"+row.KEY+" value='"+row.KEY+"' onclick=setShowCntSel('chk_"+row.KEY+"') title='"+cntMap[i].SYSNAME+">>"+cntMap[i].NAME+"'>"
  231. + "<div id=sel_'"+row.KEY+"' class='showcnt-sel-img'></div>"
  232. + textEllipsis(row.NAME)
  233. + "</div></div>";
  234. }
  235. }
  236. if (flag){
  237. alert("暂无您可设置的待办提醒功能【没有相关菜单权限】");
  238. return;
  239. }
  240. content += "</div></div>";
  241. content += "<div class='showcnt-tips'></div>";
  242. content += "<center><div class='showcnt-button' onclick='saveShowCnt()' onmouseover=\"this.style.background='#3498DB'\" onmouseout=\"this.style.background='#2980B9'\"><span>保存</span></div></center>";
  243. //alert(content);
  244. $('#div_bulletin_show').html(content);
  245. $(".showcnt-sel-container").mouseup(function(){
  246. $(this).find(".showcnt-sel-img")
  247. .animate({ left: 5, top: -17 }, "fast")
  248. .animate({ left: 2, top: -14 }, "fast")
  249. .animate({ left: 5, top: -17 }, "fast")
  250. .animate({ left: 2, top: -14 }, "fast")
  251. .animate({ left: 5, top: -17 }, "fast")
  252. .animate({ left: 2, top: -14 }, "fast");
  253. });
  254. showNoticeDiv();
  255. }
  256. var showCntSel = ":";
  257. function setShowCntSel(objStr){
  258. var obj = $("#"+objStr);
  259. if (obj.attr("checked") == 'true'){
  260. //alert(objStr+"!"+obj.attr("checked"));
  261. showCntSel = showCntSel.replace(":"+obj.attr("value")+":", ":");
  262. obj.addClass("showcnt-select").removeClass("showcnt-selected");
  263. obj.attr("checked", 'false');
  264. }else{
  265. //alert(objStr+"@"+obj.attr("checked"));
  266. showCntSel += obj.attr("value")+":";
  267. obj.addClass("showcnt-selected").removeClass("showcnt-select");
  268. obj.attr("checked", 'true');
  269. }
  270. //alert(showCntSel);
  271. try{
  272. var len = showCntSel.substring(1, showCntSel.length-1).split(":").length;
  273. if (len > 5){
  274. $('.showcnt-tips').html("<font color=red>最多只能选择5个待办提醒功能,已选"+len+"个</font>");
  275. }else{
  276. $('.showcnt-tips').html("");
  277. }
  278. }catch(e){
  279. }
  280. }
  281. function saveShowCnt(){
  282. var option = showCntSel.substring(1, showCntSel.length-1);
  283. //alert(option);
  284. if (option == ":"){
  285. option = "";
  286. }
  287. if (option.split(":").length > 5){
  288. CFW.oTip.fnAlert("最多只能选择5个待办提醒功能");
  289. return;
  290. }
  291. //alert(option);
  292. clearTimeout(progressTimeoutID);
  293. //alert("operid:"+operid+"|showid:"+option);
  294. CFW.oAJax.doProc('p_fw_ld_saveshowcnt',{"oper_id":operid, "show_id":option},'处理中...',
  295. function(mData) {
  296. //调用成功后返回数据
  297. //alert(option);
  298. CFW.oTip.fnAlert("操作成功");
  299. cntData[0].SHOWID = option;
  300. curIndex = 0;
  301. progressTimeoutID = setTimeout("getShowCntInfo()", 5000);//延迟5秒,避免反复保存反复刷新
  302. });
  303. }
  304. function main_showsystem(flag){
  305. if (flag == "next" && cur_page>=all_pages-1) return;
  306. if (flag == "prior" && cur_page<=0) return;
  307. if (flag == "next") ++cur_page;
  308. if (flag == "prior") --cur_page;
  309. var obj;
  310. for (var i=0; i<all_pages; ++i){
  311. if (i == cur_page){
  312. //$('#page'+i).show();
  313. if ($('#page'+i).css("display") == "block"){//已经显示的页面直接返回,不用做操作
  314. return;
  315. }
  316. //$('#page'+i).animate({opacity: 'show'}, "slow");
  317. $('#page'+i).slideDown('slow');
  318. $('#pagenum'+i).css('background-color', '#FF8C00');
  319. $('#pagenum'+i).css('color', '#fff');
  320. $('#pagenum'+i).addClass("pagenum").removeClass("pagenum-hide");
  321. }
  322. if (i != cur_page){
  323. $('#page'+i).hide();
  324. //$('#page'+i).slideUp('slow');
  325. $('#pagenum'+i).css('background-color', '#3AA4C4');
  326. $('#pagenum'+i).css('color', '#3AA4C4');
  327. $('#pagenum'+i).removeClass("pagenum").addClass("pagenum-hide");
  328. }
  329. }
  330. }