mpShortcutDefEdit.ss.jsp 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370
  1. <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
  2. <!DOCTYPE html>
  3. <html>
  4. <head>
  5. </head>
  6. <style>
  7. .list-body {
  8. border: 1px solid #dcdcdc;
  9. }
  10. </style>
  11. <body>
  12. <div class="search-div" style="padding: 15px 25px 12px 25px;">
  13. <div style="padding: 15px 25px 12px 25px;">
  14. <!--<input type='button' id="savemb" value="保存当前模板" class="content-button" />-->
  15. <input type='button' id="delmb" value="删除该模板" class="content-button" onclick="scmb()" />
  16. <input type='button' id="addmb" value="另存为新模板" class="content-button" />
  17. <input name="granmbid" id="granmbid" type="hidden" onchange="selectMB(this.value)" />
  18. <input name="granmbName" type="text" style="width: 140px;" /> <%-- name="granmbidName"。Lin --%>
  19. <objp.ss name="granmb" cb="mpGrjjmb" inp="true" /> <%-- 原 name="granmbid" codebook="granmb_all",去掉 根模板 了。Lin --%>
  20. </div>
  21. <div style="float: right;">
  22. <%-- 改。Lin
  23. <form id="cdOptionForm" name="cdOptionForm" action='@service{name:"getAddAndSearchFunction",dest:"kjan_option"}@'> --%>
  24. <form name="ddpOptionForm" action="<serv.ss name='rdShortcutFuncOpt' dest='shortcutDefOpt'/>">
  25. </form>
  26. <div id="oncontent-offButton" class="fl search-div-margin-bottom1">
  27. <input type="button" class="content-offButton" value="增加" id="ks" /> <%-- value="开始"。Lin --%>
  28. <input type="button" class="content-offButton" value="查询" id="cx" />
  29. <input type="button" class="content-offButton" value="个人" id="gr" /> <%-- value="个人空间" id="personal" --%>
  30. <input type="button" class="content-onButton" value="其他" id="qt" />
  31. </div>
  32. </div>
  33. </div>
  34. <div class="dragList-div" id="container">
  35. <div class="box">
  36. <p class="label">已选</p>
  37. <div class="list-body" style="position: relative;overflow-x: hidden;width: 100%;height: 380px;">
  38. <div id="ddpSelected" ssSelClazz="list-checkedIcon" class="scrollbar" style="height:100%"> <%-- ="cdSelected" wdSelectedClass=。Lin --%>
  39. <%-- 去掉,没用到。用 shortcutDefOpt.ss.jsp。Lin
  40. <wd:iterate name="yxList" id="item">
  41. <div wdObjectId="${item.id}" class="list-background" style="height: 41px;line-height: 41px;width: calc(100% - 4px);box-sizing: border-box;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;">
  42. <wd:equal leftValue="${fn:contains(item.id,'search')}" rightValue="true">
  43. <span class='unSpan'>查询${item.mc}</span>
  44. </wd:equal>
  45. <wd:equal leftValue="${fn:contains(item.id,'add')}" rightValue="true">
  46. <span class='unSpan'>录入${item.mc}</span>
  47. </wd:equal>
  48. <wd:equal leftValue="${fn:contains(item.id,'search')||fn:contains(item.id,'add')||fn:contains(item.id,'personal')}" rightValue="false">
  49. <span class='unSpan'>${item.mc}</span>
  50. </wd:equal>
  51. <wd:equal leftValue="${fn:contains(item.id,'personal')}" rightValue="true">
  52. <span class='unSpan'>${item.mc}</span>
  53. </wd:equal>
  54. <span style='display:none;' class='bjid'>${item.id}</span>
  55. </div>
  56. </wd:iterate>
  57. --%>
  58. </div>
  59. </div>
  60. </div>
  61. <div class="box">
  62. <p class="label">备选</p>
  63. <div class="list-body" style="position: relative;overflow-x: hidden;width: 100%;height: 380px;">
  64. <div id="ddpOption" ssSelClazz="list-checkedIcon" class="scrollbar" style="height:100%"> <%-- id="cdOption" wdSelectedClass=。Lin --%>
  65. </div>
  66. </div>
  67. </div>
  68. </div>
  69. <drag.ss name="ddp" grp="true" func="editOrder,editGroup" /> <%-- name="cd"。function="'editOrder','editGroup'"。Lin --%>
  70. <div style="clear: both;"></div>
  71. <div class='bottom-div'>
  72. <div class="bottom-down-div border-top">
  73. <input type="button" value="保存" class="bottom-button" onclick="save('bc');">
  74. </div>
  75. </div>
  76. </body>
  77. <script type="text/javascript">
  78. (function() {
  79. /* 改。Lin
  80. getQt();
  81. */ rdFuncOpt("qt");
  82. })();
  83. $(function() {
  84. $("#oncontent-offButton input[type='button']").click(function() {
  85. if ($(this).hasClass("content-offButton")) {
  86. $("#oncontent-offButton .content-onButton").removeClass("content-onButton").addClass("content-offButton");
  87. $(this).removeClass("content-offButton").addClass("content-onButton");
  88. $("#ddpOption").empty(); // ("#cdOption").。Lin
  89. console.log("11111111111");
  90. /* 改,增加入口参数 type 来区分 -- 不重复写多个方法
  91. if ($(this).is("#qt")) {
  92. getQt();
  93. } else if ($(this).is("#ks")) {
  94. getKsObjectKjan();
  95. } else {
  96. getCxObjectKjan();
  97. }
  98. */ rdFuncOpt($(this).attr('id'));
  99. }
  100. });
  101. });
  102. // 增加,重写下面的 getQt()、getKsObjectKjan()、getCxObjectKjan() -- 只在 ObjB.rootFuncList 找,不分 开始、查询、个人空间、其他。Lin
  103. // 再,还得分
  104. // 增加入口参数 type 来区分 -- 不重复写多个方法
  105. // 增加读取 个人功能 -- 增加入口参数 type 后,也增加了读取 个人功能
  106. function rdFuncOpt(type) {
  107. var form = document.querySelector('form[name="ddpOptionForm"]');
  108. var ids = getBjId("ddpSelected");
  109. ids="["+ids+"]";
  110. var url = "<serv.ss name='rdShortcutFuncOpt' dest='shortcutDefOpt' parm='{type:"ssVal{type}",ids:"ssVal{ids}"}'/>";
  111. url = wd.display.replaceDynamicParam(url, {
  112. "type": type, // 增加,增加入口参数 type 来区分 -- 不重复写多个方法。Lin
  113. "ids": encodeURIComponent(ids)
  114. });
  115. console.log(url);
  116. form.setAttribute("action", url);
  117. form.submit();
  118. }
  119. /* 重写为上面的 rdFuncOpt(,只有一个 -- 只在 ObjB.rootFuncList 找,不分 开始、查询、个人空间、其他。Lin
  120. * 再,还得分 -- 增加入口参数 type 来区分 -- 不重复写多个方法
  121. function getQt() {
  122. var form = document.querySelector('form[name="cdOptionForm"]');
  123. var ids = getBjId("cdSelected");
  124. ids="["+ids+"]";
  125. var url = '@service{name:"getAddAndSearchFunction",dest:"kjan_option",param:{type:"qt",ids:"wdVal{ids}"}}@';
  126. url = wd.display.replaceDynamicParam(url, {
  127. "ids": encodeURIComponent(ids)
  128. });
  129. console.log(url);
  130. form.setAttribute("action", url);
  131. form.submit();
  132. }
  133. function getKsObjectKjan() {
  134. var form = document.querySelector('form[name="cdOptionForm"]');
  135. var ids = getBjId("cdSelected");
  136. ids="["+ids+"]";
  137. var url = '@service{name:"getAddAndSearchFunction",dest:"kjan_option",param:{kjfwmb:"kjfwmb",type:"ks",ids:"wdVal{ids}"}}@';
  138. url = wd.display.replaceDynamicParam(url, {
  139. "ids": encodeURIComponent(ids)
  140. });
  141. console.log(url);
  142. form.setAttribute("action", url);
  143. form.submit();
  144. }
  145. function getCxObjectKjan() {
  146. var form = document.querySelector('form[name="cdOptionForm"]');
  147. var ids = getBjId("cdSelected");
  148. ids="["+ids+"]";
  149. var url = '@service{name:"getAddAndSearchFunction",dest:"kjan_option",param:{kjfwmb:"kjfwmb",type:"cx",ids:"wdVal{ids}"}}@';
  150. url = wd.display.replaceDynamicParam(url, {
  151. "ids": encodeURIComponent(ids)
  152. });
  153. console.log(url);
  154. form.setAttribute("action", url);
  155. form.submit();
  156. }
  157. */
  158. $('#addmb').click(function () {
  159. wd.display.confirm({ title: "另存为新模板",
  160. /* 改。Lin
  161. url: "@service{dest:'cdmb_add',param:{newMc:'未定义'}}@",
  162. */ url: "<serv.ss dest='menuDefAdd' parm='{newMc:"未定义"}'/>", // 共用 menuDefAdd.ss.jsp。Lin
  163. width: 450, height: 240, callback: addcallback });
  164. });
  165. /**
  166. * 新增菜单组模板
  167. * @param {[type]} ){ } [description]
  168. * @return {[type]} [description]
  169. */
  170. var addcallback = (function (t) {
  171. var THIS = t;
  172. return function (data) {
  173. if (data.newMc != null && data.newMc != "") {
  174. var _form = document.querySelector('form[name="ddpOptionForm"]'); // ="cdOptionForm"。Lin
  175. //添加newMc 表单元素
  176. generateHiddenForm(_form, "newMc", data.newMc);
  177. generateHiddenForm(_form, "ms", data.ms);
  178. generateHiddenForm(_form, "granmbh", data.grcdmbh);
  179. var granmbid = $('#granmbid').val();
  180. var ids = getBjIdNew("ddpSelected"); // ("cdSelected")。Lin
  181. /* 改,去掉 encodeURIComponent(。Lin
  182. * save( 里的 encodeURIComponent( 就没问题
  183. generateHiddenForm(_form, 'ids', encodeURIComponent(ids));
  184. */ generateHiddenForm(_form, 'ids', ids);
  185. generateHiddenForm(_form, 'granmbid', granmbid);
  186. generateHiddenForm(_form, 'fwsblbm', 51); // 增加 {fwsblbm:51}。Lin
  187. var kjbjid = "${bjid}";
  188. //保存后跳回当前页面
  189. /* 改。Lin
  190. $('form[name="cdOptionForm"]').attr('action', '@service{name:"saveKjfwmb",dest:"sys_info"}@');
  191. */ $('form[name="ddpOptionForm"]').attr('action', "<serv.ss name='saveShortcutDef' dest='info'/>");
  192. $('form[name="ddpOptionForm"]').submit(); // ="cdOptionForm"。Lin
  193. }
  194. }
  195. })(this);
  196. function generateHiddenForm(_form, name, value) {
  197. var hiddenInput = document.createElement('input');
  198. hiddenInput.type = 'hidden';
  199. hiddenInput.name = name;
  200. hiddenInput.value = value;
  201. _form.appendChild(hiddenInput);
  202. }
  203. function save(z) { //保存
  204. var name = ""
  205. if (z == "xz") {
  206. name = prompt("新菜单名称", "未定义");
  207. if (name == null && name == "") {
  208. return;
  209. }
  210. }
  211. var ids = getBjIdNew("ddpSelected"); // ("cdSelected")。Lin
  212. var kjbjid = "${bjid}";
  213. var granmbid = $('#granmbid').val();
  214. var form = document.querySelector('form[name="ddpOptionForm"]'); // ="cdOptionForm"。Lin
  215. var ids = getBjId("ddpSelected"); // ("cdSelected")。Lin
  216. /* 改。Lin
  217. var url = '@service{name:"saveKjfwmb",dest:"sys_info",param:{ids:"wdVal{ids}",granmbid:"wdVal{granmbid}",newMc:"wdVal{newMc}"}}@';
  218. */ var url = "<serv.ss name='saveShortcutDef' dest='info' parm='{fwsblbm:51,ids:"ssVal{ids}",granmbid:"ssVal{granmbid}",newMc:"ssVal{newMc}"}'/>";
  219. url = wd.display.replaceDynamicParam(url, {
  220. "ids": encodeURIComponent(ids),
  221. "granmbid": granmbid,
  222. "newMc": name
  223. });
  224. console.log(url);
  225. form.setAttribute("action", url);
  226. form.submit();
  227. /* $.ajax({
  228. type: "POST",
  229. url: url,
  230. data: {},
  231. dataType: "json",
  232. async: false,
  233. success: function(data) {
  234. console.log("data:" + data);
  235. if(data) {
  236. wd.display.alert(data)
  237. } else {
  238. wd.display.alert("保存失败")
  239. }
  240. $('#qt').click();
  241. getQt();
  242. }, error:function(e){
  243. console.log(e);
  244. }
  245. });
  246. */
  247. //wd.display.closeDialog();
  248. }
  249. function scmb() {
  250. var granmbid = $('#granmbid').val();
  251. if (granmbid) {
  252. $("#ddpSelected").empty(); // ("#cdSelected").。Lin
  253. var form = document.querySelector('form[name="ddpOptionForm"]'); // ="cdOptionForm"。Lin
  254. /* 改,sys_alert 暂时用 info -- 等新 UI。Lin
  255. * 去掉参数 type,没用到
  256. var url = '@service{name:"KjfwMb_sc",dest:"sys_alert",param:{type:"qt",granmbid:"wdVal{granmbid}"}}@';
  257. */ var url = "<serv.ss name='delShortcutDef' dest='info' parm='{fwsblbm:51,granmbid:"ssVal{granmbid}"}'/>";
  258. url = wd.display.replaceDynamicParam(url, {
  259. "granmbid": granmbid
  260. });
  261. // console.log(url);
  262. form.setAttribute("action", url);
  263. form.submit();
  264. location.reload();//刷新当前页面
  265. // $.ajax({
  266. // type: "POST",
  267. // url: url,
  268. // data: {},
  269. // dataType: "json",
  270. // async: false,
  271. // success: function(data) {
  272. // console.log("data:" + data);
  273. // if (data) {
  274. // alert(data);
  275. // location.reload();//刷新当前页面
  276. // } else {
  277. // alert("删除失败");
  278. // }
  279. // $('#qt').click();
  280. // getQt();
  281. // }
  282. // });
  283. } else {
  284. alert("请选择模版");
  285. }
  286. }
  287. function getBjId(id) { //获取cdSelected内元素的id
  288. var els = $("#" + id).find(".bjid");
  289. var json =[]
  290. els.each(function(i, val) {
  291. json.push(val.innerHTML);
  292. });
  293. json=json.join(",");
  294. return json;
  295. }
  296. function getBjIdNew(id) { //获取cdSelected内元素的id
  297. var els = $("#" + id).find(".bjid");
  298. var json =[]
  299. els.each(function(i, val) {
  300. //var str = '"' + val.innerHTML + '"';
  301. json.push(val.innerHTML);
  302. });
  303. json.join(",");
  304. return json;
  305. }
  306. function selectMB(granmbid) {
  307. //清空左边菜单组元素
  308. $("#ddpSelected").empty(); // ("#cdSelected").。Lin
  309. /* 改,去掉 request."mbcx",没用到。Lin
  310. var mbcx = 1;
  311. var url = '@service{name:"cxKjcdmb",param:{mbcx:"wdVal{mbcx}",granmbid:"wdVal{granmbid}"}}@';
  312. */ var url = "<serv.ss name='selSelGrjjById' parm='{fwsblbm:51,granmbid:"ssVal{granmbid}"}'/>";
  313. url = wd.display.replaceDynamicParam(url, {
  314. "granmbid": granmbid
  315. // "mbcx": mbcx // 去掉,去掉 request."mbcx",没用到。Lin
  316. });
  317. $.ajax({
  318. type: "POST",
  319. url: url,
  320. data: {},
  321. dataType: "json",
  322. async: false,
  323. success: function(data) {
  324. console.log("data:" + data);
  325. for (var i = 0; i < data.length; i++) {
  326. var id = data[i].id;
  327. var mc = data[i].mc;
  328. console.log(id);
  329. console.log(mc);
  330. if (id.indexOf("search") > 0) {
  331. mc = "查询" + mc;
  332. } else if (id.indexOf("add") > 0) {
  333. mc = "录入" + mc;
  334. }
  335. var ele = $('<div ssObjId="'+ id +'" class="list-background" style="height: 41px;line-height: 41px;width: calc(100% - 4px);box-sizing: border-box;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;"><span class="unSpan">' + mc + '</span><span style="display:none;" class="bjid">' + id + '</span></div>');
  336. // DM.getDrager().selectedList.append(ele);
  337. $('#ddpSelected').append(ele); // ('#cdSelected').。Lin
  338. }
  339. DM.getDrager().selectedList.reload();
  340. $('#qt').click();
  341. /* 改。Lin
  342. getQt();
  343. */ rdFuncOpt("qt");
  344. }
  345. });
  346. }
  347. </script>
  348. </html>