desktop.home.jsp 9.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356
  1. <html>
  2. <head>
  3. <title>首页模板个人</title>
  4. <!-- 调用jquery,注意你放置的目录不要搞错了哦! -->
  5. <js.ss file="/ss/jquery/jquery-1.7.2.min.js"/>
  6. <!-- 调用gridster.js和css,注意你放置的目录不要搞错了哦! -->
  7. <js.ss file="/ss/gridster/jquery.gridster.min.js"/>
  8. <js.ss file="/ss/gridster/Gridster-Wd.js"/>
  9. <css.ss file="/ss/gridster/jquery.gridster.min.css"/>
  10. <js.ss file="/ss/menu/dhtmlxmenu_ext.js"/>
  11. <js.ss file="/ss/base.js"/>
  12. <js.ss file="/ss/artdialog/artDialogUtil.js"/>
  13. <js.ss file="/ss/masklayer.js"/>
  14. <js.ss file="/ss/wdDialogInit.js"/>
  15. <js.ss file="/ss/display.js"/>
  16. <js.ss file="/ss/nicescroll/jquery.nicescroll.js"/>
  17. <js.ss file="/ss/nicescroll/jquery.nicescroll.iframehelper.min.js"/>
  18. <css.ss file="/ss/window/dhtmlxwindows.css"/>
  19. <css.ss file="/ss/window/dhtmlxwindows_dhx_blue.css"/>
  20. <js.ss file="/ss/window/dhtmlxcommon.js"/>
  21. <js.ss file="/ss/window/dhtmlxwindows.js"/>
  22. <js.ss file="/ss/window/dhtmlxcontainer.js"/>
  23. <js.ss file="/ss/common.js"/>
  24. <js.ss file="/ss/growHeight.js"/>
  25. <style>
  26. <%--首页部件居中--%>
  27. .gridster>ul {
  28. margin-top: 5px;
  29. margin-bottom: 30px;
  30. margin-left: 0px;
  31. width:100%;
  32. height:100%;
  33. background-color: rgba(255, 255, 255, 0);
  34. margin: 0 auto;
  35. }
  36. <%--首页部件关闭按钮--%>
  37. .gridster .close {
  38. background-image: url("/ss/gridster/img/close-1.png");
  39. cursor: pointer;
  40. right: 1px;
  41. top: 1px;
  42. position: absolute;
  43. width: 15px;
  44. height: 15px;
  45. font-size: 0;
  46. z-index: 2;
  47. }
  48. <%--工具条--%>
  49. .pg_cj {
  50. position: relative;
  51. top: 0px;
  52. left: 0px;
  53. width: 100%;
  54. height: 100%;
  55. overflow: auto;
  56. }
  57. .nav_btn {
  58. position: fixed;
  59. top: 12;
  60. z-index: 1111;
  61. width: 100%;
  62. margin-left:5px;
  63. }
  64. </style>
  65. </head>
  66. <body>
  67. <div id="slder"
  68. style="display:none; width:987px; height:35px;">
  69. <div class="nav_btn">
  70. <%-- <button class="content-button" onclick="saveedit()">
  71. 保存
  72. </button>
  73. <button class="content-button" onclick="exitEdit()">
  74. 取消
  75. </button> --%>
  76. <%-- &nbsp;&nbsp; &nbsp;&nbsp;拿到用户Id:$@{sessionScope['wd.yh'].yhId} --%>
  77. <input type="hidden" value="${sessionScope.ssUser.ryid}" id="yhid" />
  78. <input type="hidden" value="${sessionScope.ssUser.xm}" id="xm" />
  79. <%-- <select name="sdf" id="addslt" class="sel">
  80. <option value="0">请选择</option>
  81. <logic:iterate id="bjlb" name="bjlblist">
  82. <option value='<bean:write name="bjlb" property="bjlbm"/>' >
  83. <bean:write name="bjlb" property="mc"/>
  84. </option>
  85. </logic:iterate>
  86. </select> --%>
  87. <%--
  88. 类别:
  89. <select id="bjlbSelect">
  90. <option>
  91. --请选择--
  92. </option>
  93. <logic:iterate id="bjlb" name="bjlblist">
  94. <option value='<bean:write name="bjlb" property="bjlbm"/>'>
  95. <bean:write name="bjlb" property="mc" />
  96. [
  97. <bean:write name="bjlb" property="bjlistsize" />
  98. ]
  99. </option>
  100. </logic:iterate>
  101. </select>
  102. 部件:
  103. <select class="sybj">
  104. <option>
  105. --请选择--
  106. </option>
  107. </select>
  108. <logic:iterate id="bjlb" name="bjlblist">
  109. <select id="addslt" class="sybj">
  110. <option>
  111. ----请选择部件----
  112. </option>
  113. <logic:iterate id="bj" name="bjlb" property="bjlist">
  114. <option value='<bean:write name="bj" property="bjid"/>'>
  115. <bean:write name="bj" property="mc" />
  116. </option>
  117. </logic:iterate>
  118. </select>
  119. </logic:iterate>
  120. <script>
  121. var selectSybj=0;
  122. //级联菜单绑定事件
  123. (function initCascadeForSybj(){
  124. $("#bjlbSelect").change(function(){
  125. //console.info("onchange方法");
  126. $("#bjlbSelect option").each(function(i,o){
  127. //console.info("打印select: "+$(this).prop("selected"));
  128. if($(this).attr("selected"))
  129. {
  130. $(".sybj").hide();
  131. $(".sybj").eq(i).show();
  132. //console.info("选中第"+i+"个");
  133. selectSybj=i;
  134. }
  135. });
  136. });
  137. $("#bjlbSelect").change();
  138. })();
  139. </script>
  140. --%>
  141. <input name="symbbjlb" placeholder="类别" width="120px" />
  142. <input name="symbbjid" placeholder="部件" width="100px"/>
  143. <ccp.ss name="bjlb_bj@symb"/>
  144. <button class="content-button" onclick="add()">
  145. 增加
  146. </button>
  147. <button class="content-button" onclick="saveedit()">
  148. 保存
  149. </button>
  150. <button class="content-button" onclick="exitEdit()">
  151. 取消
  152. </button>
  153. <%--
  154. <button class="content-button" onclick="reset();">
  155. 重置
  156. </button>
  157. --%>
  158. </div>
  159. </div>
  160. <div id="pg_cj" class="pg_cj scrollbar" style="position:relative;top:0px;left:0px;width:100%;height:100%;overflow:auto;padding-top:25px;">
  161. <div class="gridster ready" style="width:100%;margin: auto;">
  162. <ul style="position: relative;padding-bottom: 25px;">
  163. </ul>
  164. </div>
  165. </div>
  166. </body>
  167. <script>
  168. //测试 准备读取的数据
  169. var json='${json}';
  170. var SESSION_STATE="${sessionScope.SESSION_STATE}";
  171. var EditType="${sessionScope.Edit-Type}"; // "$@{sessionScope['Edit-Type']}"。Lin
  172. if(SESSION_STATE==''){
  173. alert("登录超时");
  174. wd.topWindow.location.href = "/";
  175. }
  176. //Gridster参数
  177. var widget_base_dimensions=[dimensions,dimensions]; //宽高的单位像素
  178. var widget_margins=[margins,margins]; //模块的间距像素 [上下,左右]
  179. //通过javascript脚本来配置拖动实例,随后我们会讲每个配置参数的意义
  180. //首先定义一个变量gridster,为了以后调用gridster的方法
  181. var gridster;
  182. var SYBJCTRL;
  183. $(function() {
  184. gridster = $(".gridster ul").gridster({ //通过jquery选择DOM实现gridster
  185. widget_base_dimensions:widget_base_dimensions, //模块的宽高 [宽,高]
  186. widget_margins: widget_margins, //模块的间距 [上下,左右] //5.1?? 避免gridster Bug,新增时总存在缝隙会导致生成位置有错 by Rd 2016-01-07
  187. autogrow_rows: true,
  188. autogrow_cols:true,
  189. max_cols: Math.max($(wd.topWindow).outerWidth(true),calWidthAndHeight(1025)),//最大1024宽度
  190. draggable: {
  191. handle: null //'header' //模块内定义拖动的元素<header>,这里也支持jquery选择器,如"span.drag_handle"
  192. },
  193. helper: 'clone',
  194. resize: {
  195. enabled: true,
  196. resize:function(e, ui, $widget){
  197. $widget.find("[onload]").trigger("onload");
  198. }
  199. }
  200. }).data('gridster');
  201. SYBJCTRL=new GridsterWd(gridster,json);//初始化首页部件控制器 by Rd 2015-12-24
  202. });
  203. function saveedit() {
  204. SYBJCTRL.saveedit(SESSION_STATE);
  205. };
  206. function reset(){
  207. SYBJCTRL.reset();
  208. }
  209. // 初始化编辑
  210. function userEdit(gfOrgr) {
  211. SYBJCTRL.userEdit(gfOrgr);
  212. };
  213. function yesedit() { //开启编辑模式
  214. SYBJCTRL.yesedit();
  215. edit_en=true;
  216. };
  217. function closediv(obj) {
  218. SYBJCTRL.closediv(obj);
  219. };
  220. //新增方法
  221. function add() {
  222. // var sybjsjLb = $('#bjlbSelect')[0].value;
  223. // var sybjsjId = $(".sybj").eq(selectSybj).val();
  224. var sybjsjLb = $('[name=symbbjlb]')[0].value;
  225. var sybjsjId =$('[name=symbbjid]')[0].value;
  226. var data=SYBJCTRL.getParams("serviceType=2&sybjsjLb="+sybjsjLb+"&sybjsyId="+sybjsjId);
  227. //请求服务获得数据信息
  228. if(data["bjId"]){
  229. //新部件改为放在最后
  230. var new_col=1;
  231. var new_row=1;
  232. $("li.gs-w").each(function(){
  233. new_row=Math.max($(this).data("row")+$(this).data("sizey"),new_row);
  234. });
  235. gridster.add_widget2(data["bjId"],data["bjLb"],data["serviceUrl"],calWidthAndHeight(data["size_x"]),calWidthAndHeight(data["size_y"]),new_col,new_row);
  236. var liId="#"+data['bjId'];
  237. //返回部件代码
  238. $(liId+" ."+SYBJCTRL.containerForLoad).load(data["serviceUrl"],{"sybjId":data["bjId"],"sybjLb":data["bjLb"],"serviceUrl":data["serviceUrl"]},function(){
  239. $(liId+" ."+SYBJCTRL.imgheader).attr({style:SYBJCTRL.flushIconStyle});
  240. SYBJCTRL.scrollEvent(liId);
  241. });
  242. $(this).on('click','.'+SYBJCTRL.imgheader,function(){//绑定刷新事件
  243. SYBJCTRL.flushBj(liId);
  244. });
  245. }
  246. }
  247. //加载部件(初始化数据并绑定刷新事件)
  248. function loadHtmlAndBindFlushEvent() {
  249. $("li.gs-w").on("click",'.'+SYBJCTRL.imgheader,function(){
  250. var id=$(this).parents("[initurl]").attr("id");
  251. if(id)
  252. SYBJCTRL.flushBj("#"+id, this);
  253. }).on('mousedown',function(){
  254. var id=$(this).attr("id");
  255. if(id)
  256. SYBJCTRL.EventCtrl.setBjId("#"+id);
  257. });
  258. //遍历类名为gs-w的元素
  259. $("li.gs-w").each(function(){
  260. try{
  261. //有li标签拿到bjId,bjLb,initUrl
  262. var id=$(this).attr("id");
  263. var bjLb=$(this).attr("bjlb");
  264. var initUrl=$(this).attr("initurl");
  265. //返回部件代码,并绑定刷新事件
  266. $(this).find("."+SYBJCTRL.containerForLoad).load(initUrl,{"sybjId":id,"sybjLb":bjLb});
  267. }catch(e){
  268. console.log(e)
  269. }
  270. });
  271. }
  272. function flushBj(liId){
  273. SYBJCTRL.flushBj(liId);
  274. }
  275. //页面加载完自动调用初始化方法
  276. window.onload = function() {
  277. SYBJCTRL.initGridster();
  278. SYBJCTRL.noedit();
  279. //console.info("菜单显示状态:" + "$@{sessionScope['Edit-Open']}");
  280. if ('0' != EditType) { //不为0开启编辑菜单
  281. //console.info("开启编辑菜单");
  282. SYBJCTRL.yesedit();
  283. }
  284. if(SESSION_STATE== "SESSION_STATE_MAIN_BG") { //不为0开启编辑菜单
  285. SYBJCTRL.yesedit();
  286. }
  287. wd.topWindow.gxhymWindow = window;
  288. loadHtmlAndBindFlushEvent();
  289. }
  290. // window.onbeforeunload=function(){
  291. // SYBJCTRL.rollBackChangeAndExit();
  292. // }
  293. function exitEdit(){
  294. SYBJCTRL.rollBackChangeAndExit();
  295. wd.topWindow.wd.display.home();
  296. }
  297. </script>
  298. </html>