homep_info_set.jsp.save 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300
  1. <html>
  2. <head>
  3. </head>
  4. <body>
  5. <style>
  6. #tjzbOption .list input {
  7. display: none;
  8. }
  9. .objectPickerNameDiv-grtjmb {
  10. border: 1px solid #e1e3e6;
  11. }
  12. </style>
  13. <script>
  14. function sub() {
  15. var tjzbmMap = {};
  16. var allSelectTjzb = $("#tjzbSelected>div");
  17. for (var i = 0; i < allSelectTjzb.length; i++) {
  18. var item = allSelectTjzb[i];
  19. var tjzbm = $(item).attr("ssObjId"); // ("wdobjectid")。是 wdobjectid,不是 wdObjectId。Lin
  20. var grtjid = $(item).attr("grtjid");
  21. if (!grtjid) {
  22. grtjid = "0";
  23. }
  24. tjzbmMap[tjzbm] = grtjid + "|" + i;
  25. }
  26. $("#tjzbmMap").val(JSON.stringify(tjzbmMap));
  27. var deleteGrgjid = [];
  28. var allDeleteTjzb = $("#tjzbOption>div[grtjid]");
  29. for (var i = 0; i < allDeleteTjzb.length; i++) {
  30. var item = allDeleteTjzb[i];
  31. var grtjid = $(item).attr("grtjid");
  32. if(grtjid){
  33. deleteGrgjid.push(grtjid);
  34. }
  35. }
  36. deleteGrgjid = deleteGrgjid.join(",");
  37. $("#deleteGrgjid").val(deleteGrgjid);
  38. }
  39. </script>
  40. <div class='content-div' wdFitHeight="true">
  41. <form id="form_rklb" name="form_rklb" action='@service{name:"ryxxGrtjBc",dest:"sys_info"}@' method="post" onsubmit="sub()">
  42. <input name="tjzbmMap" id="tjzbmMap" type="hidden" />
  43. <input name="deleteGrgjid" id="deleteGrgjid" type="hidden" />
  44. <%-- 非空才加载,因为个人统计模板也用这个部件 --%>
  45. <wd:equal leftValue="${empty ry.ryid}" rightValue="false">
  46. <table class="form">
  47. <tr>
  48. <th rowspan="4" width="100px">相片</th>
  49. <td rowspan="4">
  50. <!--艺术照-->
  51. <a href="javascript:void(0)" target='_blank' id="yszEdit">
  52. <div class="personalPhoto" style="float: left;margin-top:18px;margin-left: 18px;margin-bottom: 18px;">
  53. <wd:equal leftValue="${empty ry.yszwj}" rightValue="false">
  54. <img src="@service{name:'getData',param:{path:'${ry.yszwj}'}}@" id="yszimg" onerror_="this.src='${sessionScope['ssUser'].pflj}image/default-personalPhoto.png'" />
  55. </wd:equal>
  56. <wd:equal leftValue="${empty ry.yszwj}" rightValue="true">
  57. <img src="${sessionScope['ssUser'].pflj}image/default-personalPhoto.png" id="yszimg" onerror_="this.src='${sessionScope['ssUser'].pflj}image/default-personalPhoto.png'" />
  58. </wd:equal>
  59. </div>
  60. </a>
  61. <input name="yszwj" type="hidden" value="${ry.yszwj}">
  62. <wd:write name="ysz" type="upload" value="" callback="updateyszimg"></wd:write>
  63. </td>
  64. </tr>
  65. </table>
  66. </wd:equal>
  67. <wd:equal leftValue="${empty ry.ryid}" rightValue="true">
  68. <input name="grtjmbid" id="grtjmbid" type="hidden" value="${grtjmbid}" />
  69. <input name="grtjmbName" type="text" style="width: 200px;" />
  70. <wd:write type="objectPicker" name="grtjmb" codebook="grtjmb_all" input="true" />
  71. <input type='button' id="addmb" onclick='@service{name:"getGrtjMb",dest:"tjmb",show:"wdDialog"}@' value="添加新模板" class="content-button" />
  72. <input type='button' id="delmb" value="删除该模板" class="content-button" style="display: none;" />
  73. <script type="text/javascript">
  74. window.onload = function() {
  75. var grtjmbid = $("[name=grtjmbid]").val();
  76. if (grtjmbid != "0" && grtjmbid != "") {
  77. $('#delmb').css('display', 'inline');
  78. } else {
  79. $('#delmb').css('display', 'none');
  80. }
  81. }
  82. wd.edit.objectPicker.getInstance("grtjmb").onchange = function() {
  83. var action = '@service{name:"grtjMb_cxzb",dest:"grtxsc"}@&grtjbmid=' + this.getValue();
  84. $("#form_rklb").attr("action", action);
  85. $("#form_rklb").submit();
  86. }
  87. $('#delmb').click(function() {
  88. var r = confirm("删除模板会将其他对象的该模板数据都清空,是否确认删除");
  89. if (r == true) {
  90. var grtjmbid = $("[name=grtjmbid]").val();
  91. if (grtjmbid != null && grtjmbid != "") {
  92. var _form = document.forms['form_rklb'];
  93. //添加newMc 表单元素
  94. generateHiddenForm(_form, "sc_grtjmbid", grtjmbid);
  95. $("[name=grtjmbid]").val("");
  96. $('form[id="form_rklb"]').attr('action', '@service{name:"grtjMb_sc",dest:"grtxsc"}@');
  97. $('form[id="form_rklb"]').submit();
  98. }
  99. }
  100. });
  101. function generateHiddenForm(_form, name, value) {
  102. var hiddenInput = document.createElement('input');
  103. hiddenInput.type = 'hidden';
  104. hiddenInput.name = name;
  105. hiddenInput.value = value;
  106. _form.appendChild(hiddenInput);
  107. }
  108. function submitForm() {
  109. var grtjmbid = $("[name=grtjmbid]").val();
  110. if (!grtjmbid) {
  111. alert("请先选择模板");
  112. return;
  113. }
  114. $('form[id="form_rklb"]').submit();
  115. }
  116. </script>
  117. </wd:equal>
  118. <p class="dialog-title" style="margin-top: 15px;margin-left: 13px;font-size: 15px;">个人统计</p>
  119. <div id="container" class="dragList-div" style="padding: 15px 0px 12px 0px;">
  120. <div class="box" style="margin-left:0px;">
  121. <p class="label">已选<span id="tjzbDropAll" class="icon-allRight"></span></p>
  122. <div class="list-body" style="position: relative;overflow-x: hidden;width: 100%;height: 380px;">
  123. <div id="tjzbSelected" wdSelectedClass="list-checkedIcon" class="scrollbar" style="height:100%">
  124. <wd:iterate name="yxList" id="item">
  125. <div ssObjId="${item.tjzbm}" grtjid="${item.grtjid}" class="list-background list" style="min-height: 41px;line-height: 41px;width: calc(100% - 4px);box-sizing: border-box;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;">
  126. <span>名称:<span editable="true">${item.mc}</span></span>
  127. <span>描述:${item.ms};</span>
  128. <input type="button" class="list-button sz" onclick='sz(this)' value="设置" />
  129. </div>
  130. </wd:iterate>
  131. </div>
  132. </div>
  133. </div>
  134. <div class="box" style="float:right;margin-right: 0px;">
  135. <p class="label">备选<span id="tjzbPickAll" class="icon-allLeft"></span></p>
  136. <div class="list-body" style="position: relative;overflow-x: hidden;width: 100%;height: 380px;">
  137. <div id="tjzbOption" wdSelectedClass="list-checkedIcon" class="scrollbar" style="height:100%">
  138. <wd:iterate name="wxList" id="item">
  139. <div ssObjId="${item.tjzbm}" class="list-background list" style="min-height: 41px;line-height: 41px;width: calc(100% - 4px);box-sizing: border-box;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;">
  140. <span>名称:${item.mc}</span>
  141. <span>描述:${item.ms};</span>
  142. <input type="button" class="list-button sz" onclick='sz(this)' value="设置" />
  143. </div>
  144. </wd:iterate>
  145. </div>
  146. </div>
  147. </div>
  148. <input type="hidden" value="" name="tjzbSelectedId" id="tjzbSelectedId" />
  149. </div>
  150. <div class='bottom-div'>
  151. <div class="bottom-down-div border-top">
  152. <wd:equal leftValue="${empty ry.ryid}" rightValue="false">
  153. <input type="submit" value="保存" class="bottom-button" />
  154. </wd:equal>
  155. <wd:equal leftValue="${empty ry.ryid}" rightValue="true">
  156. <input type="button" onclick="submitForm()" value="保存" class="bottom-button" />
  157. </wd:equal>
  158. <input type="button" name="button" onclick="wd.display.closeDialog();" value="关闭" class="bottom-button">
  159. </div>
  160. </div>
  161. </form>
  162. </div>
  163. <wd:write type="drag" name="tjzb" group="true" function="'editGroup','editOrder'" />
  164. <script type="text/javascript">
  165. function updatezjzimg() {
  166. $("#zjzimg").attr('src', "@service{name:'getData'}@&path=" + encodeURIComponent($("input[name='zjzwj']").val()));
  167. }
  168. function updateyszimg() {
  169. $("#yszimg").attr('src', "@service{name:'getData'}@&path=" + encodeURIComponent($("input[name='yszwj']").val()));
  170. }
  171. var $editable = $("#tjzbSelected").find("[editable]");
  172. $editable.off("blur");
  173. $editable.blur(function() {
  174. this.realContent = this.innerHTML;
  175. this.setAttribute("title", this.realContent);
  176. var content = wd.display.ellipsisContent(this, this.commonHeight);
  177. this.innerHTML = content;
  178. saveName(this);
  179. });
  180. function saveName(obj) {
  181. var name = obj.realContent;
  182. var grtjid = $(obj).parent().parent().parent().attr("grtjid");
  183. $.ajax({
  184. type: "post",
  185. url: '@service{name:"updateGrtjMc"}@',
  186. data: {
  187. mc: name,
  188. grtjid: grtjid
  189. },
  190. dataType: "json",
  191. success: function(res) {
  192. if (res.ok) {
  193. wd.display.alert("修改成功");
  194. }
  195. }
  196. });
  197. }
  198. var lastTjzbSelectedId = $("#tjzbSelectedId").val();
  199. var rewriteDragend = function() {
  200. var its = this.getItems();
  201. var l = 30; //个一组
  202. var ii = 0;
  203. while (ii < its.length) {
  204. (function(arr) {
  205. setTimeout(function() {
  206. for (var i = 0; i < arr.length; i++) {
  207. arr[i] && arr[i].trigger("dragend");
  208. }
  209. });
  210. })(its.slice(ii, ii += l));
  211. }
  212. if (this.result_input) {
  213. this.result_input.value = JSON.stringify(this.getResult());
  214. if (lastTjzbSelectedId != this.result_input.value) {
  215. sub();
  216. selectItem();
  217. }
  218. lastTjzbSelectedId = this.result_input.value;
  219. }
  220. this.updateInfo();
  221. }
  222. DM.getDrager().selectedList.off("dragend");
  223. DM.getDrager().selectedList.on("dragend", rewriteDragend);
  224. DM.getDrager().optionList.off("dragend");
  225. DM.getDrager().optionList.on("dragend", rewriteDragend);
  226. function selectItem() {
  227. var tjzbmMap = $("#tjzbmMap").val();
  228. var deleteGrgjid = $("#deleteGrgjid").val();
  229. var grtjmbid = $("#grtjmbid").val();
  230. $.ajax({
  231. type: "post",
  232. url: '@service{name:"ryxxGrtjBc"}@',
  233. dataType: "json",
  234. data: {
  235. tjzbmMap: tjzbmMap,
  236. deleteGrgjid: deleteGrgjid,
  237. grtjmbid: grtjmbid,
  238. targetDevice: "WdApp"
  239. },
  240. success: function(res) {
  241. if(res.status==200){
  242. setGrtjid(res.grtjIdMap);
  243. }
  244. }
  245. });
  246. }
  247. function setGrtjid(map) {
  248. for (var key in map) {
  249. $("div[ssObjId=" + key + "]").attr("grtjid", map[key]);
  250. }
  251. var deleteGrgjid = $("#deleteGrgjid").val();
  252. deleteGrgjid = deleteGrgjid.split(",");
  253. for (var i = 0; i < deleteGrgjid.length; i++) {
  254. var item=deleteGrgjid[i];
  255. if(!item){
  256. continue;
  257. }
  258. var itemDiv = $("div[grtjid=" + deleteGrgjid[i] + "]");
  259. itemDiv.attr("grtjid", "");
  260. }
  261. }
  262. function sz(obj) {
  263. var grtj = $(obj).parent().parent().attr("grtjid");
  264. var json = {};
  265. json["grtjid"] = grtj;
  266. var url = '@service{name:"getZbInfo",dest:"grtj_sz",show:"wdDialog",param:{grtjid:"wdVal{grtjid}"}}@';
  267. url = wd.display.replaceDynamicParam(url, json);
  268. eval(url);
  269. }
  270. </script>
  271. </body>
  272. </html>