objList.jsp 43 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070
  1. <%@ taglib prefix="ss" uri="/ssTag" %>
  2. <%@ page language="java" pageEncoding="UTF-8" isELIgnored="false" %>
  3. <%@ taglib uri="/ssTag" prefix="ss"%>
  4. <%pageContext.setAttribute("wdpageinformation","{'hastab':'0'}");%>
  5. <!DOCTYPE html>
  6. <html>
  7. <head>
  8. <meta http-equiv="pragma" content="no-cache">
  9. <meta http-equiv="cache-control" content="no-cache">
  10. <meta http-equiv="expires" content="0">
  11. <script>window.loginStatus="${empty sessionScope['ssUser']?'0':'1'}"</script>
  12. <ss:skin file='main.css'/>
  13. <script type="text/javascript" src="/ss/jquery/jquery.js"></script>
  14. <script type="text/javascript" src="/ss/artdialog/artDialogUtil.js"></script>
  15. <script type="text/javascript" src="/ss/js/base.js"></script>
  16. <script> if(!window.wd) var wd={}; if(!wd.display) wd.display={}; wd.display.wdDialogId="objList"; if(!wd.app) wd.app={}; wd.app.name='pms';</script>
  17. <script type="text/javascript" src="/ss/js/masklayer.js"></script>
  18. <script type="text/javascript" src="/ss/js/wdDialogInit.js"></script>
  19. <script type="text/javascript" src="/ss/js/common.js"></script>
  20. <script type="text/javascript" src="/ss/js/display.js"></script>
  21. <script type="text/javascript" src="/ss/js/edit.js"></script>
  22. <script type="text/javascript" src="/ss/nicescroll/jquery.nicescroll.js"></script>
  23. <script type="text/javascript" src="/ss/nicescroll/jquery.nicescroll.iframehelper.min.js"></script>
  24. <link rel="stylesheet" type="text/css" href="/ss/window/theme/dhtmlxwindows.css">
  25. <link rel="stylesheet" type="text/css" href="/ss/window/theme/dhx_blue/dhtmlxwindows_dhx_blue.css">
  26. <script type="text/javascript" src="/ss/window/dhtmlxcommon.js"></script>
  27. <script type="text/javascript" src="/ss/window/dhtmlxwindows.js"></script>
  28. <script type="text/javascript" src="/ss/window/dhtmlxcontainer.js"></script>
  29. <script type="text/javascript" src="/ss/js/common.js"></script>
  30. <script type="text/javascript" src="/ss/js/display.js"></script>
  31. <script type="text/javascript" src="/ss/js/edit.js"></script>
  32. <ssDlg setPval="true"/> <%-- setValue="true" close="true"。Lin --%>
  33. <script type="text/javascript" src="/ss/jquery/jquery.ellipsis.js"></script>
  34. <%-- 新UI引入的JS --%>
  35. <script src="/js/load.js"></script> <%-- ="/newUI/ss/js/base.js"。Lin(新UI) --%>
  36. <%-- 改为 <data@ss name="prt"/>。Lin
  37. <tab@ss name="print" enable="viewobject.funcMap.play.print"/> --%>
  38. <ss:data name='prt'/><%-- 初始化弹出窗口的打印按钮的后台数据 Ben--%>
  39. <%--批量打印--%>
  40. <%-- 去掉,改为 <jsp@ss file="/ss/prtIcon.jsp"/>。Lin
  41. 不用 "wdBatchPrint",统一用 "wdPrint" -- 写在 prtIcon.jsp 里
  42. <equal@ss val="${empty prt}" val2="false">
  43. <script>
  44. $(function(){
  45. try{
  46. var wdDialogId=wd.display.getwdDialogId();
  47. var win=wd.topWindow.dhxWins.window(wdDialogId);
  48. win.button("wdBatchPrint").show();
  49. win.button("wdBatchPrint").onclick=function(){
  50. <varServ@ss dlg="true" name="${prt.service}" dest="${prt.dest}" parm="${prt.param}" title="${prt.title}" width="${prt.width}" height="${prt.height}" minHeight="${prt.minHeight}" maxHeight="${prt.maxHeight}"/>
  51. }
  52. }catch(e){
  53. console.log(e);
  54. }
  55. })
  56. </script>
  57. </equal@ss>
  58. --%>
  59. <%@include file="/ss/clip/prtIcon.jsp"%><%-- 引入初始化弹出窗口的打印按钮的JS Ben--%>
  60. <script>
  61. window.ss.dom.formElemConfig = window.ss.dom.formElemConfig || {};
  62. </script>
  63. </head>
  64. <body>
  65. <div id="app">
  66. <form class="page-container" id="myForm" action="<ss:serv name='${currentService.service}' dest='${currentService.dest}' parm='${currentService.param}'/>" method="post">
  67. <input type="hidden" name="isAnd" value='${isAnd}'/>
  68. <input name="management" type="hidden" value="${management}"/>
  69. <input name="isFulltext" type="hidden" value="${isFulltext}"/>
  70. <%--搜索条件start--%>
  71. <div class="search-bar">
  72. <ss-breadcrumb></ss-breadcrumb>
  73. <div class="search-bar-contaienr">
  74. <%--新UI 单对象查询翻页end Ben --%>
  75. <%--关键词--%>
  76. <%-- 再去掉 -- 只支持一行。Lin
  77. <ss:rpt name='searchableFields' id='fieldsList'>
  78. --%>
  79. <ss:rpt name='fieldsList' id='searchItem'>
  80. <%
  81. ss.obj.ObjFieldB f= (ss.obj.ObjFieldB)pageContext.getAttribute("searchItem");
  82. pageContext.setAttribute("searchItemValue",request.getParameter(f.name));
  83. %>
  84. <%--codebook 使用select下拉--%>
  85. <ss:equal val='${empty searchItem.cbName}' val2='false'>
  86. <%-- 旧的objecPicker
  87. <input type="text" name="${searchItem.name}" value="${searchItemValue}"/>
  88. <input type="text" name="${searchItem.name}Name" placeholder="${searchItem.desc}" style="width:${searchItem.width};min-width: 108px;"/>
  89. <ss:equal val='${empty cadcadingInputs[searchItem.name]}' val2='true'>
  90. <ss:objp name='${searchItem.name}' cb='${searchItem.cbName}' inp='true' filterField='${searchItem.filterFieldStr}'/>
  91. </ss:equal> --%>
  92. <%-- 新UI --%>
  93. <!-- <ss-objp
  94. v-model="${searchItem.name}"
  95. name="${searchItem.name}"
  96. :options="${searchItem.name}Option"
  97. placeholder="${searchItem.desc}"
  98. width="120"
  99. input="true"
  100. ></ss-objp> -->
  101. <ss-objp
  102. v-model="${searchItem.name}"
  103. name="${searchItem.name}"
  104. :opt="${searchItem.name}Option"
  105. placeholder="${searchItem.desc}"
  106. width="150px"
  107. inp="true"
  108. url="/service?ssServ=loadObjpOpt&objectpickerdropdown1=1"
  109. cb="${searchItem.cbName}"
  110. ></ss-objp>
  111. <script>
  112. /**
  113. * objectPicker(如:性别码)
  114. * optUrl:加载下拉菜单option选项的url
  115. */
  116. window.ss.dom.formElemConfig.${searchItem.name}={desc:'${searchItem.desc}',value:'${searchItemValue}',optUrl:'123456',type: 2};//放当前页面表单元素配置的变量
  117. </script>
  118. </ss:equal>
  119. <%--codebook 使用input输入框--%>
  120. <ss:equal val='${empty searchItem.cbName}' val2='true'>
  121. <%--日期--%>
  122. <ss:equal val='${searchItem.type}' valList='3,11'> <%-- 改 equal:val1='true' val2='${searchItem.type == "time"}'。Lin --%>
  123. <!-- <div class="input-inside"> -->
  124. <%--年度--%>
  125. <%--
  126. <ss:equal val='${searchItem.enrolDate}' val2='true'>
  127. <input type='hidden' placeholder="${searchItem.desc}" name='${searchItem.name}'
  128. value="<ss:txt val='${searchItemValue}'/>"/>
  129. <div><input type="text" name="${searchItem.name}_year" autocomplete="off" />
  130. <input name="${searchItem.name}_month" type="button" value="春季" ssVal="3"/>
  131. <input name="${searchItem.name}_month" type="button" value="秋季" ssVal="9"/>
  132. </div><script>(function(){wd.edit.onoffInit('radio','${searchItem.name}_month','',false,null,null,null,'edit');})();</script>
  133. <script>(function(){
  134. wd.display.initEnrolDate('${searchItem.name}','edit');
  135. })()
  136. </script>
  137. </ss:equal>
  138. --%>
  139. <%--日期--%>
  140. <ss:equal val='${searchItem.type==11}' val2='true'>
  141. <%--<input type='text' autocomplete="off" placeholder="${searchItem.desc}" name='${searchItem.name}'
  142. value='<ss:txt val='${searchItemValue}'/>' format="${searchItem.fmt}"/>
  143. <input type="button" ssType="date" ssName="${searchItem.name}"/>--%>
  144. <!-- <ss-date-picker
  145. v-model="${searchItem.name}"
  146. name="${searchItem.name}"
  147. type="date"
  148. placeholder="${searchItem.desc}"
  149. width="120px"
  150. ></ss-date-picker> -->
  151. <ss-search-date-picker
  152. v-model="${searchItem.name}"
  153. name="${searchItem.name}"
  154. type="date"
  155. placeholder="${searchItem.desc}"
  156. width="100px"
  157. fmt="${searchItem.fmt}"
  158. ></ss-search-date-picker>
  159. <script>
  160. //日期类型(出生日期)
  161. window.ss.dom.formElemConfig.${searchItem.name}={desc:'${searchItem.desc}',value:'${searchItemValue}',type:3, name:'${searchItem.name}'};//放当前页面表单元素配置的变量
  162. </script>
  163. </ss:equal>
  164. <!-- </div> -->
  165. </ss:equal>
  166. <%--文本--%>
  167. <%-- 改 equal:val1='false' val2='${searchItem.type == "time"}'。Lin --%>
  168. <ss:notEqual val='${searchItem.type}' valList='3,11'>
  169. <%--<input name='${searchItem.name}' placeholder="${searchItem.desc}" type='text'
  170. value='<ss:txt val='${searchItemValue}'/>'/>
  171. <input type="hidden" ssType="and" ssName="${searchItem.name}"/>--%>
  172. <%--<script>wd.edit.addClearTextButton("${searchItem.name}");</script>--%>
  173. <ss-search-input
  174. name="${searchItem.name}"
  175. placeholder="${searchItem.desc}"
  176. v-model="${searchItem.name}"
  177. width="100px"
  178. >
  179. </ss-search-input>
  180. </ss:notEqual>
  181. </ss:equal>
  182. </ss:rpt>
  183. <%-- 再去掉 -- 只支持一行。Lin
  184. </ss:rpt>
  185. --%>
  186. <%--
  187. <ss:rpt name='cadcadingName' id='item'>
  188. <ss:ccp name='${item}'/>
  189. </ss:rpt>
  190. --%>
  191. <ss:equal val='${hasKeyWord}' val2='true'>
  192. <%--
  193. <input name="ssKeyword" value="${ssKeyword}" type="text" placeholder="关键词"/>
  194. <script>wd.edit.addClearTextButton("ssKeyword");</script>
  195. --%>
  196. <!-- <ss-search-input
  197. name="ssKeyword"
  198. placeholder="关键词"
  199. v-model="form.keyword"
  200. width="120"
  201. >
  202. </ss-search-input> -->
  203. <ss-search-input
  204. name="ssKeyword"
  205. placeholder="关键词"
  206. v-model="ssKeyword"
  207. width="100px"
  208. @search="search"
  209. >
  210. </ss-search-input>
  211. <script>
  212. //关键词
  213. window.ss.dom.formElemConfig.ssKeyword={value:'${ssKeyword}',name:"ssKeyword",desc:"关键词",type:31};//放当前页面表单元素配置的变量
  214. </script>
  215. </ss:equal>
  216. <ss-search-button
  217. text="所有"
  218. icon-class="nav-icon-search"
  219. :opt="searchButtonConfig"
  220. :check-id="searchButtonConfigCheckId"
  221. ></ss-search-button>
  222. <%-- 新UI 单对象查询 选项卡、翻页start Ben --%>
  223. <ss:equal val='${"1"==isReady && !isMultipleObject}' val2='true'>
  224. <%--
  225. <ss:equal val='${hasScope}' val2='true'>
  226. <ul style="list-style: none;display: inline-block;">
  227. <li ssType="searchScope" ssVal=99>所有</li>
  228. <li ssType="searchScope" ssVal=2>管理</li>
  229. <li ssType="searchScope" ssVal=1>创建</li>
  230. <li ssType="searchScope" ssVal=3>已办</li>
  231. <li ssType="searchScope" ssVal=55>停用</li>
  232. </ul>
  233. </ss:equal>
  234. --%>
  235. </ss:equal>
  236. <%--
  237. <input type="submit" name="ssSearch" value="搜索" class="content-invertButton"/>
  238. --%>
  239. <!-- <ss-search-button text="搜索" @click="console.log('这里改成提交表单')">
  240. </ss-search-button> -->
  241. <script>
  242. <%-- 根按钮(管理按钮) --%>
  243. window.ss.dom.btnElemConfig = window.ss.dom.btnElemConfig || {};
  244. </script>
  245. <%--多对像搜索隐藏全文按钮--%>
  246. <%--
  247. <ss:equal val='${isMultipleObject}' val2='false'>
  248. --%><%--
  249. <input type="hidden" ssType="fts" ssName="fts" value="全文"/>--%> <%-- wdType="isFulltext" wdName="isFulltext"。Lin --%>
  250. <%--</ss:equal>--%>
  251. <%--根按钮(管理按钮)start--%>
  252. <ss:rpt name='buttonList' id='button'>
  253. <ss:auth serv='${button.service}'>
  254. <ss:equal val='${empty button.pluginList}' val2='true'>
  255. <%--
  256. <input type="button" name="${button.name}" value="${button.buttonName}" class="content-button"
  257. onclick='wd.display.showComponent({show:["wdDialog"],url:"<ss:serv name='${button.service}' dest='${button.dest}' parm='${button.param}'/>",title:"${button.title}",width:"${button.width}",height:"${button.height}",minHeight:"${button.minHeight}",maxHeight:"${button.maxHeight+100}",showTitle:"${button.showTitle}"});'/>
  258. --%>
  259. <!-- <ss-search-button
  260. text="${button.name}"
  261. icon-class="nav-icon-add"
  262. ></ss-search-button> -->
  263. <script>
  264. function ${button.id}handleClick() {
  265. wd.display.showComponent({
  266. show:["wdDialog"],
  267. url:"<ss:serv name='${button.service}' dest='${button.dest}' parm='${button.param}'/>",
  268. title:"${button.title}",
  269. width:"${button.width}",
  270. height:"${button.height}",
  271. minHeight:"${button.minHeight}",
  272. maxHeight:"${button.maxHeight+100}",
  273. showTitle:"${button.showTitle}"
  274. });
  275. }
  276. window.ss.dom.btnElemConfig.${button.id}={
  277. desc:"${button.buttonName}",
  278. id:"${button.id}",
  279. dropOptions:[],
  280. onclick: () => {
  281. wd.display.showComponent({show:["wdDialog"],url:"<ss:serv name='${button.service}' dest='${button.dest}' parm='${button.param}'/>",title:"${button.title}",width:"${button.width}",height:"${button.height}",minHeight:"${button.minHeight}",maxHeight:"${button.maxHeight+100}",showTitle:"${button.showTitle}"});
  282. }
  283. };
  284. </script>
  285. <ss-search-button
  286. text="${button.buttonName}"
  287. icon-class="nav-icon-add"
  288. :opt="[]"
  289. :check-id="0"
  290. onclick="${button.id}handleClick()"
  291. ></ss-search-button>
  292. </ss:equal>
  293. <ss:equal val='${empty button.pluginList}' val2='false'>
  294. <ss:rpt name='${button.pluginList}' id='plugin'>
  295. <span style="display:none;" class="${button.id}children" value="${plugin.plugin.desc}"
  296. onclick='wd.display.showComponent({show:["wdDialog"],url:"<ss:serv name='${plugin.service}' dest='${plugin.dest}' parm='${plugin.param}'/>",title:"${plugin.title}",width:"${plugin.width}",height:"${plugin.height}",minHeight:"${plugin.minHeight}",maxHeight:"${plugin.maxHeight}",showTitle:"${plugin.showTitle}"});'>
  297. </span>
  298. </ss:rpt>
  299. <%-- <input type="button" id="${button.id}" name="${button.name}" value="${button.buttonName}" class="content-button" onclick='void(0)'/>
  300. <span style=" display:inline-table; width: 60px; ">
  301. <input type="button" id="${button.id}" name="${button.name}" value="${button.buttonName}" class="content-button" onclick='void(0)'/>
  302. <span class="icon-dimPoint" style="margin-right: 7px;margin-top: -25px;position: relative;">
  303. </span>
  304. </span>
  305. <script>wd.display.attachButton("${button.id}","${button.id}children",null,false,true)</script>--%>
  306. <%-- 新UI start Ben --%>
  307. <!-- <ss-search-button
  308. text="${plugin.plugin.desc}"
  309. icon-class="nav-icon-add"
  310. :options="${button.id}DropOptions"
  311. ></ss-search-button> -->
  312. <%-- :opt改为取vue.data中的变量,而不取window.ss.dom.btnElemConfig(因为取不到),onclick改为:onclick xu(20251209) --%>
  313. <ss-search-button
  314. text="${button.buttonName}"
  315. icon-class="nav-icon-add"
  316. :opt="btnElemConfig.${button.id}.dropOptions"
  317. check-id="${management}"
  318. onclick="${button.id}handleClick()"
  319. ></ss-search-button>
  320. <script>
  321. function ${button.id}handleClick() {
  322. wd.display.showComponent({show:["wdDialog"],url:"<ss:serv name='${plugin.service}' dest='${plugin.dest}' parm='${plugin.param}'/>",title:"${plugin.title}",width:"${plugin.width}",height:"${plugin.height}",minHeight:"${plugin.minHeight}",maxHeight:"${plugin.maxHeight}",showTitle:"${plugin.showTitle}"});
  323. }
  324. window.ss.dom.btnElemConfig.${button.id}={id:"${button.id}",dropOptions:[],
  325. onclick: () => {
  326. wd.display.showComponent({show:["wdDialog"],url:"<ss:serv name='${plugin.service}' dest='${plugin.dest}' parm='${plugin.param}'/>",title:"${plugin.title}",width:"${plugin.width}",height:"${plugin.height}",minHeight:"${plugin.minHeight}",maxHeight:"${plugin.maxHeight}",showTitle:"${plugin.showTitle}"});
  327. }
  328. };
  329. <%-- 循环生成按钮数组 --%>
  330. <ss:rpt name='${button.pluginList}' id='plugin'>
  331. window.ss.dom.btnElemConfig.${button.id}.dropOptions.push(
  332. {
  333. desc:'${plugin.plugin.desc}',<%-- 按钮名 --%>
  334. callback: function(){
  335. wd.display.showComponent({show:["wdDialog"],url:"<ss:serv name='${plugin.service}' dest='${plugin.dest}' parm='${plugin.param}'/>",title:"${plugin.title}",width:"${plugin.width}",height:"${plugin.height}",minHeight:"${plugin.minHeight}",maxHeight:"${plugin.maxHeight}",showTitle:"${plugin.showTitle}"});
  336. }
  337. }
  338. );
  339. </ss:rpt>
  340. </script>
  341. <%-- 新UI end Ben --%>
  342. </ss:equal>
  343. </ss:auth>
  344. </ss:rpt>
  345. <%--管理按钮end--%>
  346. </div>
  347. </div>
  348. <%-- <div class="search-bar">
  349. <ss-breadcrumb></ss-breadcrumb>
  350. <div class="search-bar-contaienr">
  351. <!-- <ss-objp
  352. v-model="csd"
  353. name="csd"
  354. :options="[{ label: '广东', value: '1' },{ label: '广西', value: '2' }]"
  355. placeholder="省份"
  356. width="150"
  357. input="true"
  358. ></ss-objp> -->
  359. <!-- <ss-search-input
  360. name="keyword"
  361. placeholder="关键词"
  362. v-model="form.keyword"
  363. width="200px"
  364. >
  365. </ss-search-input> -->
  366. <template v-for="item in formElemConfig">
  367. <template v-if="item.type == systemType.SEARCHDATE">
  368. <ss-search-date-picker
  369. v-model="item.value"
  370. :name="item.name"
  371. type="date"
  372. :placeholder="item.desc"
  373. width="100px"
  374. ></ss-search-date-picker>
  375. </template>
  376. <template v-if="item.type == systemType.SEARCHTIME">
  377. <ss-search-date-picker
  378. v-model="item.value"
  379. :name="item.name"
  380. type="time"
  381. :placeholder="item.desc"
  382. width="100px"
  383. ></ss-search-date-picker>
  384. </template>
  385. <template v-if="item.type == systemType.SEARCHDATETIME">
  386. <ss-search-date-picker
  387. v-model="item.value"
  388. :name="item.name"
  389. type="datetime"
  390. :placeholder="item.desc"
  391. width="200px"
  392. ></ss-search-date-picker>
  393. </template>
  394. <template v-if="item.type == systemType.OBJPICKER">
  395. <ss-objp
  396. v-model="item.value"
  397. :name="item.name"
  398. :options="item.options"
  399. :placeholder="item.desc"
  400. width="150"
  401. input="true"
  402. ></ss-objp>
  403. </template>
  404. <template v-if="item.type == systemType.SEARCHINPUT">
  405. <ss-search-input
  406. :name="item.name"
  407. :placeholder="item.desc"
  408. v-model="item.value"
  409. width="100px"
  410. >
  411. </ss-search-input>
  412. </template>
  413. </template>
  414. <ss-search-button
  415. text="所有"
  416. icon-class="nav-icon-search"
  417. :options="searchButtonConfig"
  418. :check-id="searchButtonConfigCheckId"
  419. ></ss-search-button>
  420. <template v-for="item in btnElemConfig">
  421. <ss-search-button
  422. :text="item.desc"
  423. icon-class="nav-icon-add"
  424. :options="item.dropOptions"
  425. :check-id="item.dropOptionsCheckId"
  426. onclick="item.onclick"
  427. ></ss-search-button>
  428. </template>
  429. <!-- <ss-search-button
  430. text="新增(无下拉)"
  431. icon-class="nav-icon-add"
  432. onclick="console.log('点击了')"
  433. ></ss-search-button> -->
  434. </div>
  435. </div> --%>
  436. <%--搜索条件end--%>
  437. <%--个人统计表start${!isMultipleObject}--%>
  438. <ss:equal val='${"1"!=isReady && !isMultipleObject}' val2='true'>
  439. <input name="addgrtjUrl" type="hidden" value='wd.display.showComponent({show:["wdDialog"],url:"<ss:serv name='addPcht' parm='{"wdConfirmationCaptchaService":"0","dxm":"${ssObjName}","use_grtjmbid":"${use_grtjmbid}"}' dest='pchtSet'/>",title:"挑选统计图指标",width:800,height:580});'/>
  440. <input name="grtjSizeUrl" type="hidden" value="<ss:serv name='savePstatSize' parm='{"wdConfirmationCaptchaService":"0","dxm":"${ssObjName}","grtjSize":"ssVal{grtjSize}","use_grtjmbid":"${use_grtjmbid}"}'/>"/>
  441. <input name="getgrtjJsonUrl" type="hidden" value="<ss:serv name='getgrtjJson' parm='{"wdConfirmationCaptchaService":"0"}'/>"/>
  442. <input name="getEChartData" type="hidden" value="<ss:serv name='wrPchtPlay' parm='{"wdConfirmationCaptchaService":"0"}'/>"/> <%-- name='getEChartData' --%>
  443. <div class="graph scrollbar" style="padding-right: 16px;display: block;width: 100%;height: 100%;overflow: auto;text-align: left;-moz-user-select: none;-webkit-user-select: none;-ms-user-select: none;-khtml-user-select: none;user-select: none;font-size: 0px;box-sizing: border-box;padding:15px 20px">
  444. <ss:rpt name='${grtjList}' id='item'>
  445. <div class="graph-list plugin-invertDiv" grtjid="${item.grtjid}" grtjlbm="${item.grtjlbm}" style="min-width:120px;min-height:65px;width:${item.kd}px;height:${item.gd}px;overflow: auto;position: relative;margin: 2px;" onclick="checkChart(this)">
  446. <ss:equal val='${item.grtjlbm}' val2='1'>
  447. <div class="graph-list-body" id="tjt-${item.grtjid}" style="height:48px;width: 100%;">${item.mc} </div>
  448. <span class="graph-list-mask" style="position: absolute;display: flex;width: 100%;height: 48px;top: 0px;left: 0px;">
  449. <span class="shortcutPlugin-icon plugin-icon" style="margin-left:5px;position: relative;left: 0;top: 0px;width: 48px;height: 48px;" onclick='refreshTjt("${item.grtjid}")'>
  450. </span>
  451. <div style="display:inline-block;position: relative;left: 0;top: 0px;width: 200px;height: 48px;background-color: white;font-size: 16px;font-weight: bold;display: flex;align-items: center;">${item.mc} </div>
  452. <span class="icon-set-statistics" style="position: absolute;right: 0px;top: 0px;width: 48px;height: 48px;"
  453. onclick='wd.display.showComponent({show:["wdDialog"],url:"<ss:serv name='initPchtSet' parm='{"wdConfirmationCaptchaService":"0","grtjid":"${item.grtjid}","dxm":"${ssObjName}"}' dest='pchtSet'/>",title:"挑选统计图指标",width:800,height:580});'>
  454. </span>
  455. </span>
  456. </ss:equal>
  457. <ss:equal val='${item.grtjlbm}' val2='51'> <%-- 为什么会写成 <ss:equal???Lin --%>
  458. <span class="graph-list-body" style="height:40px;width: 100%;">${item.mc}</span>
  459. <span class="icon-set" style="position: absolute;right: 0px;top: 0px;width: 70px;height: 40px;"
  460. onclick='wd.display.showComponent({show:["wdDialog"],url:"<ss:serv name='initPformSet' parm='{"wdConfirmationCaptchaService":"0","grtjid":"${item.grtjid}","dxm":"${ssObjName}"}' dest='pformSet'/>",title:"挑选统计表",width:800,height:580});'>
  461. </span>
  462. <%-- Start 抄自下方的的原统计表列表。原对象首页的下半部分,已被去掉。Lin --%>
  463. <table class="scrollbar" style="max-height: 100%;width: 100%;">
  464. <tbody style="width: 100%;padding: 0px 16px 0px 11px;box-sizing: border-box;" ssFith='{list:true,rowHeight:35}'>
  465. <ss:rpt name='${item.grtjmxList}' id='item2'>
  466. <tr>
  467. <ss:equal val='${empty item2.page}' val2='true'> <%-- 使用表格模板工具。Lin --%>
  468. <td class="hLine"
  469. onClick='wd.display.showComponent({show:["wdDialog"],url:"<ss:serv name='stat_tableDesign_bb' parm='{"wdConfirmationCaptchaService":"0","bgmbid":"${item2.bgmbid}"}' dest='bgmb_xsmb'/>",title:"显示模板",width:1010,height:750});'>
  470. </ss:equal>
  471. <ss:equal val='${empty item2.page}' val2='false'> <%-- 高级表格。Lin --%>
  472. <td class="hLine"
  473. onClick='wd.display.showComponent({show:["wdDialog"],url:"<ss:serv name='${item2.serv}' dest='${item2.page}'/>",title:"${item2.mc}",width:"${item2.width}",height:"${item2.height}",minHeight:"${item2.height}",maxHeight:"${item2.height}",showTitle:"${item2.mc}"});'>
  474. </ss:equal>
  475. <div class="longCardList-info" style="font-size: 0px;display: inline-block;float: left;">
  476. <span class="longCardList-highlight" style="margin-bottom: 3px;">
  477. <a>${item2.mc}</a>
  478. </span>
  479. <div id="${item2.bgmbid}" class="longCardList-dim growHeightDiv" width='750'>
  480. <ss:txt val='${item2.ms}'/>
  481. </div>
  482. <script type="text/javascript" charset="utf-8" src="/ss/js/growHeight.js"></script>
  483. <script type="text/javascript" charset="utf-8" src="/ss/js/display.js"></script>
  484. <script type="text/javascript" charset="utf-8" >
  485. wd.display.initGrowHigh('${item2.bgmbid}','80px',{},null,false);
  486. </script>
  487. <div id="lmms${item2.bgmbid}$" class="longCardList" width='750' height='18px'>
  488. <ss:txt val='${item2.lmms}'/>
  489. </div>
  490. <script type="text/javascript" charset="utf-8" src="/ss/js/growHeight.js"></script>
  491. <script type="text/javascript" charset="utf-8" src="/ss/js/display.js"></script>
  492. <script type="text/javascript" charset="utf-8" >
  493. wd.display.initGrowHigh('lmms${item2.bgmbid}','80px',{},null,false);
  494. </script>
  495. </div>
  496. </td>
  497. </tr>
  498. </ss:rpt>
  499. </tbody>
  500. </table>
  501. </ss:equal>
  502. <%-- <span class="graph-list-resize plugin-drag" style="position: absolute;right: 0px;bottom: 0px;"></span> --%>
  503. <%-- <span class="vLine" style="height: 40px;width: 1px;position: absolute;right: 70px;top: 0px"></span> --%>
  504. <%-- <span class="hLine-highlight" style="width: 100%;height: 0px;position: absolute;top: 40px;left: 0px;"></span> --%>
  505. </div>
  506. </ss:rpt>
  507. <div>
  508. <div class="button icon-add graphButton" style="height: 60px;line-height: 82px;float: right;margin-top: 0px;margin-right: 0px;"
  509. <%-- 再改为 WebC.REQ_objName,避免与数据表里的 对象名 字段重名。用到再确认。Lin
  510. 传到 objList.ss.jsp 的是 ${ssObjName},传给 pformSet 的是 dxm(统计指标.对象名、个人统计.对象名)
  511. onClick='<serv@ss dlg="true" dest="env_search_bgmb_zj" parm="{dxm:&quot;${dxm}&quot;}" title="添加表格模板"/>'> --%>
  512. onClick='wd.display.showComponent({show:["wdDialog"],url:"<ss:serv name='addPform' parm='{"wdConfirmationCaptchaService":"0","dxm":"${ssObjName}"}' dest='pformSet'/>",title:"设置统计表",width:800,height:580});'>
  513. 增加表
  514. </div>
  515. <div class="button icon-add graphButton" style="height: 60px;float: right;margin-top: 0px;margin-right: 0px;line-height: 82px;"
  516. onClick='wd.display.showComponent({show:["wdDialog"],url:"<ss:serv name='addPcht' parm='{"wdConfirmationCaptchaService":"0","dxm":"${ssObjName}","use_grtjmbid":"${use_grtjmbid}"}' dest='pchtSet'/>",title:"设置统计图",width:800,height:580});'>
  517. 增加图</div>
  518. </div>
  519. </div>
  520. </ss:equal>
  521. <%--个人统计表end--%>
  522. <div style="clear: both;"></div>
  523. <script type="text/javascript" src="/ss/js/myEcharts.js"></script>
  524. <script type="text/javascript" src="/ss/env/env_search.js"></script><%-- 旧UI初始化查询列表的js,新UI做好后,要被删掉的 --%>
  525. <%-- 新UI初始化查询列表数据的JS --%>
  526. <script>
  527. leftBarWidth = 400;//弹窗录入、查看页左侧栏宽度
  528. window.ss.dom.listConfig = window.ss.dom.listConfig || {};
  529. //二级对象 草稿箱
  530. window.ss.dom.listConfig.draftbox = [];
  531. <%-- 草稿箱start --%>
  532. <ss:rpt name='cgxList' id='item'>
  533. {
  534. let item = {};
  535. window.ss.dom.listConfig.draftbox.push(item);
  536. <%-- 下面的titlexxx是原来td的一个属性,不知道有啥用 --%>
  537. <ss:equal val='${not empty item.service.play && empty item.service.update && empty item.service.change}' val2='true'>
  538. item.titlexxx="${item.service.play.title}";
  539. item.onclick=function (){
  540. wd.display.showComponent({show:["wdDialog"],url:"<ss:serv name='${item.service.play.service}' dest='${item.service.play.dest}' parm='${item.service.play.param}'/>",title:"${item.service.play.title}",width:"${item.service.play.width}",height:"${item.service.play.height}",minHeight:"${item.service.play.minHeight}",maxHeight:"${item.service.play.maxHeight}"});
  541. };
  542. </ss:equal>
  543. <ss:equal val='${item.service.lbm}' val2='1'>
  544. <ss:equal val='${empty item.service.update}' val2='false'>
  545. item.titlexxx="${item.service.update.title}";
  546. item.onclick=function (){
  547. wd.display.showComponent({show:["wdDialog"],url:"<ss:serv name='${item.service.update.service}' dest='${item.service.update.dest}' parm='${item.service.update.param}'/>",title:"${item.service.update.title}",width:"${item.service.update.width}",height:"${item.service.update.height}",minHeight:"${item.service.update.minHeight}",maxHeight:"${item.service.update.maxHeight}"});
  548. };
  549. </ss:equal>
  550. </ss:equal>
  551. <ss:equal val='${item.service.lbm}' val2='11'>
  552. <ss:equal val='${empty item.service.change}' val2='false'>
  553. item.titlexxx="${item.service.change.title}";
  554. item.onclick=function (){
  555. wd.display.showComponent({show:["wdDialog"],url:"<ss:serv name='${item.service.change.service}' dest='${item.service.change.dest}' parm='${item.service.change.param}'/>",title:"${item.service.change.title}",width:"${item.service.change.width}",height:"${item.service.change.height}",minHeight:"${item.service.change.minHeight}",maxHeight:"${item.service.change.maxHeight}"});
  556. };
  557. </ss:equal>
  558. </ss:equal>
  559. item.buttons=[];
  560. <ss:equal val='${item.service.lbm}' val2='1'>
  561. item.buttons.push(
  562. {
  563. class: "cart-list-setting",
  564. title: "增加",
  565. onclick: () => {
  566. console.log("点击了增加");
  567. }
  568. }
  569. );
  570. </ss:equal>
  571. <ss:equal val='${item.service.lbm}' val2='11'>
  572. item.buttons.push(
  573. {
  574. class: "cart-list-setting",
  575. title: "变动",
  576. onclick: () => {
  577. console.log("点击了变动");
  578. }
  579. }
  580. );
  581. </ss:equal>
  582. <ss:equal val='${item.service.lbm}' val2='51'>
  583. item.buttons.push(
  584. {
  585. class: "cart-list-setting",
  586. title: "停用",
  587. onclick: () => {
  588. console.log("点击了停用");
  589. }
  590. }
  591. );
  592. </ss:equal>
  593. <ss:equal val='${item.service.lbm}' val2='55'>
  594. item.buttons.push(
  595. {
  596. class: "cart-list-setting",
  597. title: "启用",
  598. onclick: () => {
  599. console.log("点击了启用");
  600. }
  601. }
  602. </ss:equal>
  603. <ss:equal val='${item.service.lbm}' valList='51,55'>
  604. item.buttons.push(
  605. {
  606. class: "cart-list-setting",
  607. title: "还原",
  608. onclick: () => {
  609. wd.display.showComponent({show:["wdDialog"],url:"<ss:serv name='deleteSq' parm='{"wdConfirmationCaptchaService":"0","sqid":"${item.sqid}"}' dest='info'/>",title:"提示信息",width:715,height:483});
  610. }
  611. }
  612. </ss:equal>
  613. console.log('###item.thumbnail:${item.thumbnail}');
  614. <%--缩略图--%>
  615. <ss:equal val='${empty item.thumbnail}' val2='false'>
  616. <ss:equal val='${item.service.state}' val2='0'>
  617. item.thumb="${sessionScope['ssUser'].skinDir}image/object/default-${item.ssObjName}.png" onerror="javascript:this.src='${sessionScope['ssUser'].skinDir}image/default-photo.png';this.onerror=null;";
  618. </ss:equal>
  619. <ss:notEqual val='${item.service.state}' val2='0'>
  620. item.thumb="<ss:serv name='dlByHttp' parm='{"wdConfirmationCaptchaService":"0","path":"${item.thumbnail.value}","type":"img"}'/>";
  621. </ss:notEqual>
  622. </ss:equal>
  623. <%-- 列标题 --%>
  624. <ss:equal val='${empty item.first}' val2='false'> <%-- 改 equal:val1="true" val2="${not empty item.first}"。Lin --%>
  625. <%--不带codebook--%>
  626. <ss:equal val='${empty item.first.field.cbName}' val2='true'>
  627. item.title="<ss:txt val='${item.first.value}' miniDate='false' fmt='${item.first.field.fmt}'/>";
  628. </ss:equal>
  629. <%--带codebook--%>
  630. <ss:equal val='${empty item.first.field.cbName}' val2='false'>
  631. item.title="<ss:cbTrans cb='${item.first.field.cbName}' val='${item.first.value}'/>";
  632. </ss:equal>
  633. </ss:equal>
  634. <%--列标题:缺标题显示属性start--%>
  635. <ss:equal val='${empty item.first && not empty item.third}' val2='true'>
  636. item.title='';
  637. <ss:rpt name='${item.third}' id='itemList'>
  638. <ss:rpt name='${itemList}' id='item2'>
  639. item.title+='${item2.field.desc}:';
  640. <%--不带codebook--%>
  641. <ss:equal val='${empty item2.field.cbName}' val2='true'>
  642. item.title+='<ss:txt val='${item2.value}' fmt='${item2.field.fmt}' miniDate='false'/>&nbsp;';
  643. </ss:equal>
  644. <%--带codebook--%>
  645. <ss:equal val='${empty item2.field.cbName}' val2='false'>
  646. item.title+='<ss:cbTrans cb='${item2.field.cbName}' val='${item2.value}'/>&nbsp;';
  647. </ss:equal>
  648. </ss:rpt>
  649. </ss:rpt>
  650. </ss:equal>
  651. <%--缺标题显示属性end--%>
  652. <%--正文或摘要--%>
  653. <ss:equal val='${empty item.second}' val2='false'>
  654. item.summary='${item.second.value}';
  655. </ss:equal>
  656. <%-- 列表底部的对象属性(tags) --%>
  657. <ss:equal val='${empty item.first || empty item.third}' val2='false'>
  658. item.tags=[];
  659. <ss:rpt name='${item.third}' id='itemList'>
  660. <ss:rpt name='${itemList}' id='item2'>
  661. {
  662. let v;
  663. <%--不带codebook--%>
  664. <ss:equal val='${empty item2.field.cbName}' val2='true'>
  665. v='<ss:txt val='${item2.value}' fmt='${item2.field.fmt}' miniDate='false'/>';
  666. </ss:equal>
  667. <%--带codebook--%>
  668. <ss:equal val='${empty item2.field.cbName}' val2='false'>
  669. v='<ss:cbTrans cb='${item2.field.cbName}' val='${item2.value}'/>';
  670. </ss:equal>
  671. item.tags.push({'${item2.field.desc}':v});
  672. }
  673. </ss:rpt>
  674. </ss:rpt>
  675. </ss:equal>
  676. <%-- 对象变动前后属性列表 --%>
  677. item.changeItems=[];
  678. <ss:rpt name='${item.forth}' id='item3'>
  679. item.changeItems.push({name:'${item3.name}',oldValue:'${item3.oldValue}',newValue:'${item3.newValue}'});
  680. </ss:rpt>
  681. }
  682. </ss:rpt>
  683. <%-- 草稿箱end --%>
  684. //在用或停用的对象列表
  685. window.ss.dom.listConfig.list = [];
  686. <ss:rpt name='objectList' id='item'><%-- 循环一次生成一行列表 start --%>
  687. {
  688. let item = {};//列表的其中一行的属性
  689. window.ss.dom.listConfig.list.push(item);
  690. <ss:equal val='${item.service.state}' val2='0'><%-- 借阅 --%>
  691. item.onclick=function(){
  692. wd.display.showComponent({show:["wdDialog"],url:"<ss:serv name='ydsq_tj' parm='{"wdConfirmationCaptchaService":"0","ssObjId":"${item.ssObjId}","ssObjName":"${item.ssObjName}"}' dest='ydsq_tj'/>",title:"借阅",width:613,height:387});
  693. }
  694. </ss:equal>
  695. <ss:equal val='${empty item.service.play}' val2='false'><%-- 有权查看,不需要借阅的情况 --%>
  696. item.titlexxx="${item.service.play.title}";
  697. item.onclick=function(){
  698. wd.display.showComponent({getSize:1,width:((${item.service.play.width}+leftBarWidth)+""),show:["wdDialog"],url:"<ss:serv name='${item.service.play.service}' dest='${item.service.play.dest}' parm='${item.service.play.param}'/>",title:"${item.service.play.title}",height:"${item.service.play.height}",minHeight:"${item.service.play.minHeight}",maxHeight:"${item.service.play.maxHeight}"});
  699. }
  700. </ss:equal>
  701. <ss:equal val='${empty item.thumbnail}' val2='false'><%-- 缩略图 --%>
  702. <ss:equal val='${item.service.state}' val2='0'><%-- 借阅 --%>
  703. item.thumb="${sessionScope['ssUser'].skinDir}image/object/default-${item.ssObjName}.png";
  704. </ss:equal>
  705. <ss:notEqual val='${item.service.state}' val2='0'>
  706. console.log('@@@图片:${item.thumbnail.value}');
  707. item.thumb="<ss:serv name='dlByHttp' parm='{"wdConfirmationCaptchaService":"0","path":"${item.thumbnail.value}","type":"img"}'/>";
  708. </ss:notEqual>
  709. </ss:equal>
  710. <%-- 标题 --%>
  711. <ss:equal val='${empty item.first}' val2='false'> <%-- 改 equal:val1="true" val2="${not empty item.first}"。Lin --%>
  712. <%--不带codebook--%>
  713. <ss:equal val='${empty item.first.field.cbName}' val2='true'>
  714. item.title="<ss:txt val='${item.first.value}' miniDate='false' fmt='${item.first.field.fmt}'/>";
  715. </ss:equal>
  716. <%--带codebook--%>
  717. <ss:equal val='${empty item.first.field.cbName}' val2='false'>
  718. item.title="<ss:cbTrans cb='${item.first.field.cbName}' val='${item.first.value}'/>";
  719. </ss:equal>
  720. </ss:equal>
  721. <%--缺标题显示属性当标题start--%>
  722. <ss:equal val='${empty item.first && not empty item.third}' val2='true'>
  723. item.title='';
  724. <ss:rpt name='${item.third}' id='itemList'>
  725. <ss:rpt name='${itemList}' id='item2'>
  726. item.title+='${item2.field.desc}:';<%--属性名--%>
  727. <%--不带codebook--%><%--属性值--%>
  728. <ss:equal val='${empty item2.field.cbName}' val2='true'>
  729. item.title+="<ss:txt val='${item2.value}' fmt='${item2.field.fmt}' miniDate='false'/>&nbsp;";
  730. </ss:equal>
  731. <%--带codebook--%><%--属性值--%>
  732. <ss:equal val='${empty item2.field.cbName}' val2='false'>
  733. item.title+="<ss:cbTrans cb='${item2.field.cbName}' val='${item2.value}'/>&nbsp;";
  734. </ss:equal>
  735. </ss:rpt>
  736. </ss:rpt>
  737. </ss:equal>
  738. <%--缺标题显示属性当标题end--%>
  739. <%-- 摘要 --%>
  740. <ss:equal val='${empty item.second}' val2='false'>
  741. item.summary = '${item.second.value}';
  742. </ss:equal>
  743. <%-- 列表底部的对象标签组 --%>
  744. <ss:equal val='${empty item.first || empty item.third}' val2='false'>
  745. item.tags=[];
  746. <ss:rpt name='${item.third}' id='itemList'>
  747. <ss:rpt name='${itemList}' id='item2'>
  748. {
  749. let v;
  750. <%--不带codebook--%>
  751. <ss:equal val='${empty item2.field.cbName}' val2='true'>
  752. v='<ss:txt val='${item2.value}' miniDate='false' fmt='${item2.field.fmt}'/>';
  753. </ss:equal>
  754. <%--带codebook--%>
  755. <ss:equal val='${empty item2.field.cbName}' val2='false'>
  756. v='<ss:cbTrans cb='${item2.field.cbName}' val='${item2.value}'/>';
  757. </ss:equal>
  758. item.tags.push({${item2.field.desc}:v});
  759. }
  760. </ss:rpt>
  761. </ss:rpt>
  762. </ss:equal>
  763. <%--按钮--%>
  764. <ss:equal val='${empty item.service.btnList}' val2='false'>
  765. item.buttons=[];
  766. <ss:rpt name='${item.service.btnList}' id='btn'>
  767. item.buttons.push(
  768. {
  769. id:"${btn.btnID}",
  770. titlexxx:"${btn.title}",
  771. class: "cart-list-setting",
  772. title: "${btn.name}",
  773. onclick: () => {
  774. <%--列表的变动按钮就在这里,下面的width会根据不同业务对象而不同
  775. 弹窗参数加上getSize=1,使showComponent弹窗方法不再通过ajax从后台取宽高 --%>
  776. wd.display.showComponent({getSize:1,width:((${btn.width}+leftBarWidth)+""),show:["wdDialog"],url:"<ss:serv name='${btn.service}' dest='${btn.dest}' parm='${btn.param}'/>",title:"${btn.title}",height:"${btn.height}",minHeight:"${btn.minHeight}",maxHeight:"${btn.maxHeight}"});
  777. }
  778. }
  779. );
  780. <%--
  781. <ss:equal val='${index}' val2='0'>
  782. </ss:equal>
  783. <ss:notEqual val='${index}' val2='0'>
  784. </ss:notEqual>
  785. 改为不区分是否第1个变动按钮,都输出相同json数据 --%>
  786. </ss:rpt>
  787. </ss:equal>
  788. }
  789. </ss:rpt><%-- 循环一次生成一行列表 end --%>
  790. </script>
  791. <%--搜索结果start--%>
  792. <div class="content-area item-content-area" style="gap: 20px">
  793. <template v-for="(item, i) in listConfig.draftbox" :key="i">
  794. <ss-folder-card v-if="item.children" :item="item"></ss-folder-card>
  795. <ss-list-card v-else :item="item"></ss-list-card>
  796. </template>
  797. <template v-for="(item, i) in listConfig.list" :key="i">
  798. <ss-folder-card v-if="item.children" :item="item"></ss-folder-card>
  799. <ss-list-card v-else :item="item"></ss-list-card>
  800. </template>
  801. <ss-page
  802. v-show="${ssPaging.rowNum}"
  803. :total="${ssPaging.rowNum==null?0:ssPaging.rowNum}"
  804. :size="${ssPaging.rowNumPer==null?wdRowCountPerPage:ssPaging.rowNumPer}"
  805. :page="${ssPaging.pageNo==null?1:ssPaging.pageNo}"
  806. @change="handlePageChange" >
  807. </ss-page>
  808. </div>
  809. </form>
  810. </div>
  811. </body>
  812. </html>
  813. <script type="module">
  814. <%-- 打印新UI相关json对象 --%>
  815. function objectPickMockAjax(url) {
  816. return new Promise((resolve) => {
  817. setTimeout(() => {
  818. resolve([
  819. { label: '学校领导', value: '190'},
  820. { label: '业务部', value: '101241' },
  821. { label: '男', value: '1' },
  822. { label: '女', value: '2' }
  823. ]);
  824. }, 1000);
  825. });
  826. }
  827. // 定义 objPickerLoad 函数
  828. async function objPickerLoad(url, optionsName) {
  829. const result = await objectPickMockAjax(url);
  830. return result;
  831. }
  832. window.ss.dom.formElemConfig.testtime = {
  833. type: '34',
  834. desc: '时间',
  835. name: 'testtime',
  836. value: '',
  837. };
  838. window.ss.dom.formElemConfig.testdatetime = {
  839. type: '35',
  840. desc: '日期时间',
  841. name: 'testdatetime',
  842. value: '',
  843. };
  844. console.log(window.ss.dom.formElemConfig);
  845. const data = {
  846. systemType: window.ss.dom.TYPE,
  847. listConfig:window.ss.dom.listConfig,
  848. formElemConfig:window.ss.dom.formElemConfig,
  849. btnElemConfig:window.ss.dom.btnElemConfig,
  850. searchButtonConfigCheckId:'${management}',
  851. searchButtonConfig:[
  852. {
  853. id:"99",
  854. desc: "所有",
  855. callback: () => {
  856. $("[name=pageNo]").val('1');
  857. $("[name=management]").val('99');
  858. $("#myForm").submit();
  859. },
  860. },
  861. {
  862. id:"2",
  863. desc: "管理",
  864. callback: () => {
  865. $("[name=pageNo]").val('1');
  866. $("[name=management]").val('2');
  867. $("#myForm").submit();
  868. },
  869. },
  870. {
  871. id:"1",
  872. desc: "创建",
  873. callback: () => {
  874. $("[name=pageNo]").val('1');
  875. $("[name=management]").val('1');
  876. $("#myForm").submit();
  877. },
  878. },
  879. {
  880. id:"3",
  881. desc: "已办",
  882. callback: () => {
  883. $("[name=pageNo]").val('1');
  884. $("[name=management]").val('3');
  885. $("#myForm").submit();
  886. },
  887. },
  888. {
  889. id:"55",
  890. desc: "停用",
  891. callback: () => {
  892. $("[name=pageNo]").val('1');
  893. $("[name=management]").val('55');
  894. $("#myForm").submit();
  895. },
  896. },
  897. ],
  898. }
  899. if (window.ss.dom.formElemConfig) {
  900. Object.entries(window.ss.dom.formElemConfig).forEach(([key, config]) => {
  901. data[key] = config.value;
  902. // 处理 objPicker
  903. if (config.type === window.ss.dom.TYPE.OBJPICKER) {
  904. data[key + "ObjPicker"] = true;
  905. data[key + "Option"] = [];
  906. data[key + "Url"] = config.optUrl;
  907. }
  908. })
  909. }
  910. console.log('data:'+JSON.stringify(data));
  911. SS.ready(function () {
  912. window.ss.dom.initializeFormApp({
  913. el: "#app",
  914. data(){
  915. return data;
  916. },
  917. methods: {
  918. handlePageChange({pageNo, rowNumPer, rowNum}) {
  919. // 更新隐藏表单值
  920. document.getElementsByName('pageNo')[0].value = pageNo;
  921. document.getElementsByName('rowNumPer')[0].value = rowNumPer;
  922. document.getElementsByName('rowNum')[0].value = rowNum;
  923. // 提交表单
  924. document.getElementById('myForm').submit();
  925. },
  926. search(){
  927. document.getElementById('myForm').submit();
  928. }
  929. },
  930. mounted(){
  931. const self = this;
  932. // 在这里可以使用 Vue 实例
  933. Object.entries(this.$data).forEach(([key, value]) => {
  934. // 处理 objPicker
  935. if (key.includes('ObjPicker')) {
  936. const originalKey = key.replace('ObjPicker', '');
  937. if (value) {
  938. objPickerLoad(value, key).then(result => {
  939. if(self.formElemConfig[originalKey]) {
  940. self.formElemConfig[originalKey].name = originalKey;
  941. self.formElemConfig[originalKey].options = result;
  942. }
  943. });
  944. }
  945. }
  946. });
  947. }
  948. });
  949. });
  950. <%-- 原有的清令牌 --%>
  951. tokenCleanser("<ss:serv name='ss.clearPageToken'/>", {tokenList:"<%= pageContext.getAttribute(ss.page.PageC.PAGE_tokenList)%>"});
  952. </script>