SMZSA21000_메뉴권한일괄조회.xrw 35 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.css" ?>
  3. <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
  4. <xhtml:head>
  5. <xhtml:title>사용자 권한 조회</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <list_user>
  11. <userlist/>
  12. </list_user>
  13. <list_menuinfo>
  14. <userlist/>
  15. </list_menuinfo>
  16. <list_authuser>
  17. <menuauthuserlist/>
  18. <menudenyuserlist/>
  19. <menugrupauthlist>
  20. <menugrupnm/>
  21. <menugrupcd/>
  22. </menugrupauthlist>
  23. </list_authuser>
  24. <list_menu>
  25. <menurightlist/>
  26. <menugrupauthlist/>
  27. </list_menu>
  28. <list_temp>
  29. <menuuserlist>
  30. <rgstnm/>
  31. <rgstcd/>
  32. <deptcd/>
  33. <deptnm/>
  34. </menuuserlist>
  35. </list_temp>
  36. <list_authmenu>
  37. <menugrupauthlist/>
  38. <menuauthlist/>
  39. </list_authmenu>
  40. <menugrupauthcd/>
  41. <optmenuauthcd/>
  42. <usercnt/>
  43. <currentcnt/>
  44. <msg/>
  45. </main>
  46. <send>
  47. <menuauthgruplist/>
  48. <username/>
  49. <instcd/>
  50. <optmenuauthcd/>
  51. <menuauthuserlist/>
  52. <menudenyuserlist/>
  53. <menulist/>
  54. <menuauthlist/>
  55. <menugrupcd/>
  56. <useyn/>
  57. <scrnauth/>
  58. <menugrupauthcd/>
  59. <userid/>
  60. <dutplceinstcd/>
  61. <dutplcecd/>
  62. <dutplce/>
  63. <jobkindcd/>
  64. <jobrespcd/>
  65. <dutinstcd/>
  66. <orginstcd/>
  67. <userkindcd/>
  68. <grupjoblncd/>
  69. <prfshipflagcd/>
  70. <jobposcd/>
  71. <start_num/>
  72. <end_num/>
  73. <userlist/>
  74. <pagesize>100</pagesize>
  75. <dutunitcd/>
  76. <dutunitnm/>
  77. </send>
  78. <init>
  79. <username/>
  80. <menulist>
  81. <menugruplist>
  82. <menugrupnm/>
  83. <menugrupcd/>
  84. </menugruplist>
  85. </menulist>
  86. <menugrupcd/>
  87. <menugrupauthcd/>
  88. <instcd/>
  89. <flag>
  90. <lable>강남성모병원</lable>
  91. <value>012</value>
  92. </flag>
  93. <flag>
  94. <lable>의정부성모병원</lable>
  95. <value>013</value>
  96. </flag>
  97. <flag>
  98. <lable>부천성가병원</lable>
  99. <value>014</value>
  100. </flag>
  101. <flag>
  102. <lable>여의도성모병원</lable>
  103. <value>011</value>
  104. </flag>
  105. <comcd/>
  106. </init>
  107. <mamenu>
  108. <label>메뉴권한그룹삭제</label>
  109. <func>delmagrup</func>
  110. </mamenu>
  111. <mamenu>
  112. <label>메뉴권한그룹수정</label>
  113. <func>setmagrup</func>
  114. </mamenu>
  115. </root>
  116. </instance>
  117. <script type="javascript" ev:event="xforms-ready">
  118. <![CDATA[
  119. zbcfGetCodeList( new Array("Z0007"), new Array("/root/init/comcd"));
  120. zbcfGetCodeList( new Array("R0061", "R0063", "Z0007", "Z0016", "R0058", "R0059", "R0062"),
  121. new Array("/root/init/comcd", "/root/init/cfInitializeomcd", "/root/init/comcd", "/root/init/comcd", "/root/init/comcd", "/root/init/comcd", "/root/init/comcd"));
  122. fInitialize();
  123. ]]>
  124. </script>
  125. <submission id="TRZBC00101" method="post" replace="instance"/>
  126. <submission id="TRZSA20400" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/list_authgrup"/>
  127. <submission id="TRZSA20401" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/list_authuser"/>
  128. <submission id="TRZSA20402" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/init/menulist"/>
  129. <submission id="TRZSA20403" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/list_menu"/>
  130. <submission id="TRZSA20406" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/list_authmenu"/>
  131. <submission id="TRZSA20410" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/list_userlist"/>
  132. <submission id="TRZSA20408" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/list_menu"/>
  133. <submission id="TRZSA20409" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/list_authuser"/>
  134. <submission id="TRZSA20499" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" add="bottom" resultref="/root/main/list_menuinfo"/>
  135. </model>
  136. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  137. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  138. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  139. <script type="javascript">
  140. <![CDATA[
  141. var current_offset = 0; // 현재 마지막으로 조회된 옵셋
  142. /*
  143. 초기화 작업을 합니다.
  144. */
  145. function fInitialize(){
  146. model.removeNodeset("/root/main/list_user/userlist");
  147. model.removeNodeset("/root/main/list_menuinfo/userlist");
  148. model.removeNodeset("/root/main/list_authuser/menuauthuserlist");
  149. model.removeNodeset("/root/main/list_menu/menurightlist");
  150. model.removeNodeset("/root/main/list_menu/menugrupauthlist");
  151. model.removeNodeset("/root/main/list_authmenu/menuauthlist");
  152. model.removeNodeset("/root/main/list_authmenu/menugrupauthlist");
  153. model.removeNodeset("/root/main/list_menu/menulist");
  154. model.removeNodeset("/root/main/list_temp/menuuserlist");
  155. cmb.select(0);
  156. model.refresh();
  157. }
  158. /*
  159. model.getValue(); 를 함수로 만들었습니다.
  160. param1 : node는 grid의 xPath입니다.
  161. param2 : row는 grid에서 선택한 row값입니다.
  162. param3 : element는 getvalue할 해당 element 명입니다.
  163. 해당 getvalue값을 return 해줍니다.
  164. return 하지 않으면 해당값을 가져올 수 없습니다.
  165. */
  166. function fGetValue(node, row, element) {
  167. var rtnValue = model.getValue(node + "[" + row + "]/" + element);
  168. return rtnValue;
  169. }
  170. ]]>
  171. </script>
  172. </xhtml:head>
  173. <xhtml:body guideline="1,1194;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  174. <group id="group1" style="left:0px; top:0px; width:1194px; height:13px; ">
  175. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:142px; height:14px; ">메뉴권한일괄조회</caption>
  176. </group>
  177. <group id="grp_biz" scroll="auto" style="left:0px; top:16px; width:1195px; height:744px; ">
  178. <group id="group2" style="left:5px; top:10px; width:343px; height:60px; vertical-align:top; ">
  179. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:343px; height:60px; background-color:#fffbf2; border-color:#ffd799; "/>
  180. <caption id="caption1" class="search_name" style="left:15px; top:9px; width:117px; height:17px; ">근무지기관</caption>
  181. <button id="btn_search_menuauth" class="btn1_letter2" style="left:277px; top:19px; width:56px; height:22px; ">
  182. <caption>조회</caption>
  183. <script type="javascript" ev:event="DOMActivate">
  184. <![CDATA[
  185. //if(isRequiredControls("ipt_search_item")) {
  186. model.removeNodeset("/root/main/list_user/userlist");
  187. model.removeNodeset("/root/main/list_menu/menurightlist");
  188. model.removeNodeset("/root/main/list_authmenu/menuauthlist");
  189. model.removeNodeset("/root/main/list_authuser/menuauthuserlist");
  190. model.setValue("/root/send/instcd", model.getValue("/root/init/instcd"));
  191. model.setValue("/root/send/username", model.getValue("/root/init/username"));
  192. submit("TRZSA20410");
  193. //}
  194. ]]>
  195. </script>
  196. </button>
  197. <line id="line1" style="x1:266px; y1:8px; x2:266px; y2:51px; border-color:#ffe4bb; border-left-style:solid; "/>
  198. <input id="ipt_search_item" ref="/root/init/username" class="input_s_essential" imemode="hangul" style="left:136px; top:34px; width:114px; height:19px; ">
  199. <script type="javascript" ev:event="onkeypress">
  200. <![CDATA[
  201. inputEnterKey("btn_search_menuauth", "DOMActivate");
  202. ]]>
  203. </script>
  204. </input>
  205. <select1 id="cmb" ref="/root/init/instcd" class="combo_search" appearance="minimal" style="left:136px; top:8px; width:114px; height:19px; ">
  206. <choices>
  207. <itemset nodeset="/root/init/flag">
  208. <label ref="lable"/>
  209. <value ref="value"/>
  210. </itemset>
  211. </choices>
  212. </select1>
  213. <caption id="caption4" class="search_name" style="left:15px; top:9px; width:117px; height:17px; ">근무지기관</caption>
  214. </group>
  215. <caption id="caption9" class="tit_2" style="left:5px; top:85px; width:111px; height:14px; vertical-align:middle; ">사용자 조회</caption>
  216. <line id="line12" class="line_1" style="x1:5px; y1:100px; x2:348px; y2:100px; "/>
  217. <datagrid id="grd_menuauthgruplist" nodeset="/root/main/list_user/userlist" caption="사용자명^아이디^근무지기관명^근무지부서명^dutplcecd^jobkindcd^jobrespcd^dutinstcd^orginstcd^userkindcd" colwidth="65, 63, 95, 100, 100, 100, 100, 100, 100, 100" dataheight="25" explorerbar="sortshow" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="32" style="left:5px; top:105px; width:343px; height:635px; ">
  218. <col ref="usernm"/>
  219. <col ref="userid"/>
  220. <col disabled="true" ref="dutplceinstcd" type="combo">
  221. <choices>
  222. <itemset nodeset="/root/init/comcd/Z0007">
  223. <label ref="cdnm"/>
  224. <value ref="cdid"/>
  225. </itemset>
  226. </choices>
  227. </col>
  228. <col ref="depthngnm"/>
  229. <col ref="dutplcecd" visibility="hidden"/>
  230. <col ref="jobkindcd" visibility="hidden"/>
  231. <col ref="jobrespcd" visibility="hidden"/>
  232. <col ref="dutinstcd" visibility="hidden"/>
  233. <col ref="orginstcd" visibility="hidden"/>
  234. <col ref="userkindcd" visibility="hidden"/>
  235. <col ref="jobposcd" visibility="hidden"/>
  236. <col ref="grupjoblncd" visibility="hidden"/>
  237. <col ref="prfshipflagcd" visibility="hidden"/>
  238. <script type="javascript" ev:event="DOMFocusOut">
  239. <![CDATA[
  240. window.setPopupMenu(false);
  241. ]]>
  242. </script>
  243. <script type="javascript" ev:event="ondblclick">
  244. <![CDATA[
  245. var iRow = grd_menuauthgruplist.row;
  246. var iNode = "/root/main/list_user/userlist";
  247. opt_usernm.value = fGetValue(iNode, iRow, "usernm");
  248. opt_userid.value = fGetValue(iNode, iRow, "userid");
  249. if("" != model.getValue("/root/main/list_user/userlist["+iRow+"]/userid")){
  250. model.removeNodeset("/root/main/list_menu/menurightlist");
  251. model.removeNodeset("/root/main/list_authmenu/menuauthlist");
  252. model.removeNodeset("/root/main/list_authuser/menuauthuserlist");
  253. model.setValue("/root/send/userid", fGetValue(iNode, iRow, "userid") );
  254. model.setValue("/root/send/dutplceinstcd", fGetValue(iNode, iRow, "dutplceinstcd") );
  255. model.setValue("/root/send/dutplcecd", fGetValue(iNode, iRow, "dutplcecd") );
  256. model.setValue("/root/send/dutplce", fGetValue(iNode, iRow, "dutplceinstcd") + ""+ fGetValue(iNode, iRow, "dutplcecd") );
  257. model.setValue("/root/send/jobkindcd", fGetValue(iNode, iRow, "jobkindcd") );
  258. model.setValue("/root/send/jobrespcd", fGetValue(iNode, iRow, "jobrespcd") );
  259. model.setValue("/root/send/dutinstcd", fGetValue(iNode, iRow, "dutinstcd") );
  260. model.setValue("/root/send/orginstcd", fGetValue(iNode, iRow, "orginstcd") );
  261. model.setValue("/root/send/userkindcd", fGetValue(iNode, iRow, "userkindcd") );
  262. model.setValue("/root/send/grupjoblncd", fGetValue(iNode, iRow, "grupjoblncd") );
  263. model.setValue("/root/send/prfshipflagcd", fGetValue(iNode, iRow, "prfshipflagcd") );
  264. model.setValue("/root/send/jobposcd", fGetValue(iNode, iRow, "jobposcd") );
  265. //alert( fGetValue(iNode, iRow, "dutplcecd") );
  266. submit("TRZSA20408");
  267. }
  268. ]]>
  269. </script>
  270. <script type="javascript" ev:event="onkeyup">
  271. <![CDATA[
  272. ]]>
  273. </script>
  274. </datagrid>
  275. <line id="line2" class="line_1" style="x1:360px; y1:100px; x2:1165px; y2:100px; "/>
  276. <datagrid id="grd_menuinfo" nodeset="/root/main/list_menuinfo/userlist" caption="번호^사용자명^아이디^근무지기관명^근무지부서명^근무지코드^직종^직위^직책^메뉴권한그룹명^메뉴권한그룹코드^메뉴그룹명^메뉴그룹코드^근무부서코드^근무부서명^사용자유형코드^사용자유형명" colwidth="44, 65, 63, 95, 100, 100, 100, 100, 100, 100, 100, 100, 125" dataheight="25" explorerbar="sortshow" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="32" style="left:360px; top:105px; width:810px; height:635px; ">
  277. <col ref="index"/>
  278. <col ref="usernm"/>
  279. <col ref="userid"/>
  280. <col disabled="true" ref="dutplceinstcd" type="combo">
  281. <choices>
  282. <itemset nodeset="/root/init/comcd/Z0007">
  283. <label ref="cdnm"/>
  284. <value ref="cdid"/>
  285. </itemset>
  286. </choices>
  287. </col>
  288. <col ref="depthngnm"/>
  289. <col ref="dutplcecd"/>
  290. <col ref="jobkindcd" type="combo" _required="true">
  291. <choices>
  292. <itemset nodeset="/root/init/comcd/R0061">
  293. <label ref="cdnm"/>
  294. <value ref="cdid"/>
  295. </itemset>
  296. </choices>
  297. </col>
  298. <col ref="jobposcd" type="combo" _required="true">
  299. <choices>
  300. <itemset nodeset="/root/init/comcd/R0062">
  301. <label ref="cdnm"/>
  302. <value ref="cdid"/>
  303. </itemset>
  304. </choices>
  305. </col>
  306. <col ref="jobrespcd" type="combo" _required="true">
  307. <choices>
  308. <itemset nodeset="/root/init/comcd/R0063">
  309. <label ref="cdnm"/>
  310. <value ref="cdid"/>
  311. </itemset>
  312. </choices>
  313. </col>
  314. <col ref="menuauthnm"/>
  315. <col ref="menuauthcd"/>
  316. <col ref="menugrupnm"/>
  317. <col ref="menugrupcd"/>
  318. <col ref="dutunitcd"/>
  319. <col ref="dutunitnm"/>
  320. <col ref="userkindcd"/>
  321. <col disabled="true" ref="userkindcd" type="combo">
  322. <choices>
  323. <itemset nodeset="/root/init/comcd/Z0016">
  324. <label ref="cdnm"/>
  325. <value ref="cdid"/>
  326. </itemset>
  327. </choices>
  328. </col>
  329. <script type="javascript" ev:event="DOMFocusOut">
  330. <![CDATA[
  331. window.setPopupMenu(false);
  332. ]]>
  333. </script>
  334. <script type="javascript" ev:event="ondblclick">
  335. <![CDATA[
  336. /*
  337. var iRow = grd_menuauthgruplist.row;
  338. var iNode = "/root/main/list_user/userlist";
  339. opt_usernm.value = fGetValue(iNode, iRow, "usernm");
  340. opt_userid.value = fGetValue(iNode, iRow, "userid");
  341. if("" != model.getValue("/root/main/list_user/userlist["+iRow+"]/userid")){
  342. model.removeNodeset("/root/main/list_menu/menurightlist");
  343. model.removeNodeset("/root/main/list_authmenu/menuauthlist");
  344. model.removeNodeset("/root/main/list_authuser/menuauthuserlist");
  345. model.setValue("/root/send/userid", fGetValue(iNode, iRow, "userid") );
  346. model.setValue("/root/send/dutplceinstcd", fGetValue(iNode, iRow, "dutplceinstcd") );
  347. model.setValue("/root/send/dutplcecd", fGetValue(iNode, iRow, "dutplcecd") );
  348. model.setValue("/root/send/dutplce", fGetValue(iNode, iRow, "dutplceinstcd") + ""+ fGetValue(iNode, iRow, "dutplcecd") );
  349. model.setValue("/root/send/jobkindcd", fGetValue(iNode, iRow, "jobkindcd") );
  350. model.setValue("/root/send/jobrespcd", fGetValue(iNode, iRow, "jobrespcd") );
  351. model.setValue("/root/send/dutinstcd", fGetValue(iNode, iRow, "dutinstcd") );
  352. model.setValue("/root/send/orginstcd", fGetValue(iNode, iRow, "orginstcd") );
  353. model.setValue("/root/send/userkindcd", fGetValue(iNode, iRow, "userkindcd") );
  354. model.setValue("/root/send/grupjoblncd", fGetValue(iNode, iRow, "grupjoblncd") );
  355. model.setValue("/root/send/prfshipflagcd", fGetValue(iNode, iRow, "prfshipflagcd") );
  356. model.setValue("/root/send/jobposcd", fGetValue(iNode, iRow, "jobposcd") );
  357. //alert( fGetValue(iNode, iRow, "dutplcecd") );
  358. submit("TRZSA20408");
  359. }
  360. */
  361. ]]>
  362. </script>
  363. <script type="javascript" ev:event="onkeyup">
  364. <![CDATA[
  365. ]]>
  366. </script>
  367. </datagrid>
  368. <caption id="caption2" class="tit_2" style="left:360px; top:85px; width:126px; height:14px; vertical-align:middle; ">사용자별 메뉴정보</caption>
  369. <button id="button2" class="btn2_letter4" visibility="hidden" style="left:285px; top:80px; width:64px; height:19px; ">
  370. <caption>엑셀입력</caption>
  371. <script type="javascript" ev:event="DOMActivate">
  372. <![CDATA[
  373. var fileName = window.fileDialog("open", "", false);
  374. grd_acntitemlist.loadExcel(fileName);
  375. var acntgrupcd = opt_acntgrupcd.value;
  376. var acntgrupnm = opt_acntgrupnm.value;
  377. if (fileName != "")
  378. {
  379. for (i=grd_acntitemlist.fixedRows; i<grd_acntitemlist.rows; i++)
  380. {
  381. model.setValue("/root/main/list_item/acntitemlist["+i+"]/acntgrupcd", acntgrupcd);
  382. model.setValue("/root/main/list_item/acntitemlist["+i+"]/acntgrupnm", acntgrupnm);
  383. grd_acntitemlist.rowStatus(i) = 1;
  384. }
  385. grd_acntitemlist.deleteRow(1);
  386. }
  387. ]]>
  388. </script>
  389. </button>
  390. <button id="btn_save_excel" class="btn2_letter4" style="left:1100px; top:80px; width:64px; height:19px; ">
  391. <caption>엑셀저장</caption>
  392. <script type="javascript" ev:event="DOMActivate">
  393. <![CDATA[
  394. var fileName = window.fileDialog("save", ",", false, "사용자그룹", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
  395. if (fileName != "")
  396. {
  397. grd_menuinfo.saveExcel(fileName);
  398. }
  399. ]]>
  400. </script>
  401. </button>
  402. <input id="input1" ref="/root/init/start_num" style="left:360px; top:55px; width:110px; height:20px; "/>
  403. <input id="input2" ref="/root/init/end_num" style="left:495px; top:55px; width:115px; height:19px; "/>
  404. <caption id="caption5" class="search_name" style="left:360px; top:20px; width:117px; height:17px; ">페이지사이즈 :</caption>
  405. <input id="input3" ref="/root/send/offset" style="left:495px; top:20px; width:115px; height:19px; "/>
  406. <button id="button3" class="btn2_letter4" style="left:625px; top:55px; width:64px; height:19px; ">
  407. <caption>다음조회</caption>
  408. <script type="javascript" ev:event="DOMActivate">
  409. <![CDATA[
  410. var nodes = instance1.selectNodes("/root/main/list_user/userlist");
  411. var getData = getNodeListCSV(nodes);
  412. var start_num = model.getValue("/root/init/start_num");
  413. var end_num = model.getValue("/root/init/end_num");
  414. if (start_num != "" && end_num != "")
  415. {
  416. model.setValue("/root/send/start_num", start_num);
  417. model.setValue("/root/send/end_num", end_num);
  418. // for (i=start_num; i<=end_num; i++)
  419. // {
  420. // grd_menuauthgruplist.rowStatus(i) = 2;
  421. // }
  422. //
  423. // model.setValue("/root/send/userlist", grd_menuauthgruplist.getUpdateData());
  424. submit("TRZSA20499");
  425. output1.value = model.getValue("/root/properties/error/msg");
  426. }
  427. else
  428. {
  429. alert("시작 번호와 끝번호를 입력해주세요");
  430. }
  431. ]]>
  432. </script>
  433. </button>
  434. <button id="button4" class="btn2_letter4" style="left:625px; top:20px; width:64px; height:19px; ">
  435. <caption>전체조회</caption>
  436. <script type="javascript" ev:event="DOMActivate">
  437. <![CDATA[
  438. var nodes = instance1.selectNodes("/root/main/list_user/userlist");
  439. var getData = getNodeListCSV(nodes);
  440. var start_num = model.getValue("/root/init/start_num");
  441. var end_num = model.getValue("/root/init/end_num");
  442. if (start_num != "" && end_num != "")
  443. {
  444. model.setValue("/root/send/start_num", start_num);
  445. model.setValue("/root/send/end_num", end_num);
  446. // for (i=start_num; i<=end_num; i++)
  447. // {
  448. // grd_menuauthgruplist.rowStatus(i) = 2;
  449. // }
  450. //
  451. // model.setValue("/root/send/userlist", grd_menuauthgruplist.getUpdateData());
  452. submit("TRZSA20499");
  453. output1.value = model.getValue("/root/properties/error/msg");
  454. }
  455. else
  456. {
  457. alert("시작 번호와 끝번호를 입력해주세요");
  458. }
  459. ]]>
  460. </script>
  461. </button>
  462. <output id="output1" style="left:135px; top:80px; width:70px; height:20px; "/>
  463. <caption id="caption3" style="left:115px; top:80px; width:20px; height:20px; ">총</caption>
  464. </group>
  465. <group id="group3" scroll="auto" style="left:0px; top:16px; width:1195px; height:744px; ">
  466. <datagrid id="datagrid2" nodeset="/root/main/list_menuinfo/userlist" caption="번호^사용자명^아이디^근무지기관명^근무지부서명^근무지코드^직종^직위^직책^메뉴권한그룹명^메뉴권한그룹코드^메뉴그룹명^메뉴그룹코드^근무부서코드^근무부서명^사용자유형코드^사용자유형명" colwidth="44, 65, 63, 95, 100, 100, 100, 100, 100, 100, 100, 100, 125" dataheight="25" explorerbar="sortshow" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="32" style="left:360px; top:105px; width:810px; height:635px; ">
  467. <col ref="index"/>
  468. <col ref="usernm"/>
  469. <col ref="userid"/>
  470. <col disabled="true" ref="dutplceinstcd" type="combo">
  471. <choices>
  472. <itemset nodeset="/root/init/comcd/Z0007">
  473. <label ref="cdnm"/>
  474. <value ref="cdid"/>
  475. </itemset>
  476. </choices>
  477. </col>
  478. <col ref="depthngnm"/>
  479. <col ref="dutplcecd"/>
  480. <col ref="jobkindcd" type="combo" _required="true">
  481. <choices>
  482. <itemset nodeset="/root/init/comcd/R0061">
  483. <label ref="cdnm"/>
  484. <value ref="cdid"/>
  485. </itemset>
  486. </choices>
  487. </col>
  488. <col ref="jobposcd" type="combo" _required="true">
  489. <choices>
  490. <itemset nodeset="/root/init/comcd/R0062">
  491. <label ref="cdnm"/>
  492. <value ref="cdid"/>
  493. </itemset>
  494. </choices>
  495. </col>
  496. <col ref="jobrespcd" type="combo" _required="true">
  497. <choices>
  498. <itemset nodeset="/root/init/comcd/R0063">
  499. <label ref="cdnm"/>
  500. <value ref="cdid"/>
  501. </itemset>
  502. </choices>
  503. </col>
  504. <col ref="menuauthnm"/>
  505. <col ref="menuauthcd"/>
  506. <col ref="menugrupnm"/>
  507. <col ref="menugrupcd"/>
  508. <col ref="dutunitnm"/>
  509. <col ref="dutunitcd"/>
  510. <col ref="userkindcd"/>
  511. <col disabled="true" ref="userkindcd" type="combo">
  512. <choices>
  513. <itemset nodeset="/root/init/comcd/Z0016">
  514. <label ref="cdnm"/>
  515. <value ref="cdid"/>
  516. </itemset>
  517. </choices>
  518. </col>
  519. <script type="javascript" ev:event="DOMFocusOut">
  520. <![CDATA[
  521. window.setPopupMenu(false);
  522. ]]>
  523. </script>
  524. <script type="javascript" ev:event="ondblclick">
  525. <![CDATA[
  526. /*
  527. var iRow = grd_menuauthgruplist.row;
  528. var iNode = "/root/main/list_user/userlist";
  529. opt_usernm.value = fGetValue(iNode, iRow, "usernm");
  530. opt_userid.value = fGetValue(iNode, iRow, "userid");
  531. if("" != model.getValue("/root/main/list_user/userlist["+iRow+"]/userid")){
  532. model.removeNodeset("/root/main/list_menu/menurightlist");
  533. model.removeNodeset("/root/main/list_authmenu/menuauthlist");
  534. model.removeNodeset("/root/main/list_authuser/menuauthuserlist");
  535. model.setValue("/root/send/userid", fGetValue(iNode, iRow, "userid") );
  536. model.setValue("/root/send/dutplceinstcd", fGetValue(iNode, iRow, "dutplceinstcd") );
  537. model.setValue("/root/send/dutplcecd", fGetValue(iNode, iRow, "dutplcecd") );
  538. model.setValue("/root/send/dutplce", fGetValue(iNode, iRow, "dutplceinstcd") + ""+ fGetValue(iNode, iRow, "dutplcecd") );
  539. model.setValue("/root/send/jobkindcd", fGetValue(iNode, iRow, "jobkindcd") );
  540. model.setValue("/root/send/jobrespcd", fGetValue(iNode, iRow, "jobrespcd") );
  541. model.setValue("/root/send/dutinstcd", fGetValue(iNode, iRow, "dutinstcd") );
  542. model.setValue("/root/send/orginstcd", fGetValue(iNode, iRow, "orginstcd") );
  543. model.setValue("/root/send/userkindcd", fGetValue(iNode, iRow, "userkindcd") );
  544. model.setValue("/root/send/grupjoblncd", fGetValue(iNode, iRow, "grupjoblncd") );
  545. model.setValue("/root/send/prfshipflagcd", fGetValue(iNode, iRow, "prfshipflagcd") );
  546. model.setValue("/root/send/jobposcd", fGetValue(iNode, iRow, "jobposcd") );
  547. //alert( fGetValue(iNode, iRow, "dutplcecd") );
  548. submit("TRZSA20408");
  549. }
  550. */
  551. ]]>
  552. </script>
  553. <script type="javascript" ev:event="onkeyup">
  554. <![CDATA[
  555. ]]>
  556. </script>
  557. </datagrid>
  558. <group id="group4" style="left:5px; top:10px; width:343px; height:60px; vertical-align:top; ">
  559. <shape id="roundrect2" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:343px; height:60px; background-color:#fffbf2; border-color:#ffd799; "/>
  560. <caption id="caption7" class="search_name" style="left:15px; top:9px; width:117px; height:17px; ">근무지기관</caption>
  561. <button id="button1" class="btn1_letter2" style="left:277px; top:19px; width:56px; height:22px; ">
  562. <caption>조회</caption>
  563. <script type="javascript" ev:event="DOMActivate">
  564. <![CDATA[
  565. //if(isRequiredControls("ipt_search_item")) {
  566. model.removeNodeset("/root/main/list_user/userlist");
  567. model.removeNodeset("/root/main/list_menu/menurightlist");
  568. model.removeNodeset("/root/main/list_authmenu/menuauthlist");
  569. model.removeNodeset("/root/main/list_authuser/menuauthuserlist");
  570. model.setValue("/root/send/instcd", model.getValue("/root/init/instcd"));
  571. model.setValue("/root/send/username", model.getValue("/root/init/username"));
  572. submit("TRZSA20410");
  573. var usercnt = datagrid1.rows - datagrid1.fixedRows;
  574. model.setValue("/root/main/usercnt", usercnt); // 총사용자수
  575. model.setValue("/root/main/currentcnt", 0); // 현재 조회된 사용자수
  576. opt_usercnt.refresh(); // 컨트롤 리프레시
  577. ipt_current.refresh(); // 컨트롤 리프레시
  578. ipt_total.refresh();
  579. model.removeNodeset("/root/main/list_menuinfo/userlist"); // 그리드 초기화
  580. current_offset = 0; // 마지막으로 조회된 옵셋
  581. datagrid2.rebuild();
  582. //opt_usercnt.value = datagrid1.rows;
  583. //}
  584. ]]>
  585. </script>
  586. </button>
  587. <line id="line3" style="x1:266px; y1:8px; x2:266px; y2:51px; border-color:#ffe4bb; border-left-style:solid; "/>
  588. <input id="input4" ref="/root/init/username" class="input_s_essential" imemode="hangul" style="left:136px; top:34px; width:114px; height:19px; ">
  589. <script type="javascript" ev:event="onkeypress">
  590. <![CDATA[
  591. //inputEnterKey("btn_search_menuauth", "DOMActivate");
  592. ]]>
  593. </script>
  594. </input>
  595. <select1 id="combo1" ref="/root/init/instcd" class="combo_search" appearance="minimal" style="left:136px; top:8px; width:114px; height:19px; ">
  596. <choices>
  597. <itemset nodeset="/root/init/flag">
  598. <label ref="lable"/>
  599. <value ref="value"/>
  600. </itemset>
  601. </choices>
  602. </select1>
  603. <caption id="caption8" class="search_name" style="left:15px; top:9px; width:117px; height:17px; ">근무지기관</caption>
  604. </group>
  605. <caption id="caption10" class="tit_2" style="left:5px; top:85px; width:111px; height:14px; vertical-align:middle; ">사용자 조회</caption>
  606. <line id="line4" class="line_1" style="x1:5px; y1:100px; x2:348px; y2:100px; "/>
  607. <datagrid id="datagrid1" nodeset="/root/main/list_user/userlist" caption="사용자명^아이디^근무지기관명^근무지부서명^dutplcecd^jobkindcd^jobrespcd^dutinstcd^orginstcd^userkindcd" colwidth="65, 63, 95, 100, 100, 100, 100, 100, 100, 100" dataheight="25" explorerbar="sortshow" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="32" style="left:5px; top:105px; width:343px; height:635px; ">
  608. <col ref="usernm"/>
  609. <col ref="userid"/>
  610. <col disabled="true" ref="dutplceinstcd" type="combo">
  611. <choices>
  612. <itemset nodeset="/root/init/comcd/Z0007">
  613. <label ref="cdnm"/>
  614. <value ref="cdid"/>
  615. </itemset>
  616. </choices>
  617. </col>
  618. <col ref="depthngnm"/>
  619. <col ref="dutplcecd" visibility="visible"/>
  620. <col ref="jobkindcd" visibility="visible"/>
  621. <col ref="jobrespcd" visibility="visible"/>
  622. <col ref="dutinstcd" visibility="visible"/>
  623. <col ref="orginstcd" visibility="visible"/>
  624. <col ref="userkindcd" visibility="visible"/>
  625. <col ref="dutunitcd" visibility="visible"/>
  626. <col ref="dutunitnm" visibility="visible"/>
  627. <script type="javascript" ev:event="DOMFocusOut">
  628. <![CDATA[
  629. window.setPopupMenu(false);
  630. ]]>
  631. </script>
  632. <script type="javascript" ev:event="ondblclick">
  633. <![CDATA[
  634. var iRow = grd_menuauthgruplist.row;
  635. var iNode = "/root/main/list_user/userlist";
  636. opt_usernm.value = fGetValue(iNode, iRow, "usernm");
  637. opt_userid.value = fGetValue(iNode, iRow, "userid");
  638. if("" != model.getValue("/root/main/list_user/userlist["+iRow+"]/userid")){
  639. model.removeNodeset("/root/main/list_menu/menurightlist");
  640. model.removeNodeset("/root/main/list_authmenu/menuauthlist");
  641. model.removeNodeset("/root/main/list_authuser/menuauthuserlist");
  642. model.setValue("/root/send/userid", fGetValue(iNode, iRow, "userid") );
  643. model.setValue("/root/send/dutplceinstcd", fGetValue(iNode, iRow, "dutplceinstcd") );
  644. model.setValue("/root/send/dutplcecd", fGetValue(iNode, iRow, "dutplcecd") );
  645. model.setValue("/root/send/dutplce", fGetValue(iNode, iRow, "dutplceinstcd") + ""+ fGetValue(iNode, iRow, "dutplcecd") );
  646. model.setValue("/root/send/dutunitcd", fGetValue(iNode, iRow, "dutunitcd") );
  647. model.setValue("/root/send/dutunitnm", fGetValue(iNode, iRow, "dutunitnm") );
  648. model.setValue("/root/send/jobkindcd", fGetValue(iNode, iRow, "jobkindcd") );
  649. model.setValue("/root/send/jobrespcd", fGetValue(iNode, iRow, "jobrespcd") );
  650. model.setValue("/root/send/dutinstcd", fGetValue(iNode, iRow, "dutinstcd") );
  651. model.setValue("/root/send/orginstcd", fGetValue(iNode, iRow, "orginstcd") );
  652. model.setValue("/root/send/userkindcd", fGetValue(iNode, iRow, "userkindcd") );
  653. model.setValue("/root/send/grupjoblncd", fGetValue(iNode, iRow, "grupjoblncd") );
  654. model.setValue("/root/send/prfshipflagcd", fGetValue(iNode, iRow, "prfshipflagcd") );
  655. model.setValue("/root/send/jobposcd", fGetValue(iNode, iRow, "jobposcd") );
  656. //alert( fGetValue(iNode, iRow, "dutplcecd") );
  657. submit("TRZSA20408");
  658. }
  659. ]]>
  660. </script>
  661. <script type="javascript" ev:event="onkeyup">
  662. <![CDATA[
  663. ]]>
  664. </script>
  665. </datagrid>
  666. <line id="line5" class="line_1" style="x1:360px; y1:100px; x2:1165px; y2:100px; "/>
  667. <caption id="caption11" class="tit_2" style="left:360px; top:85px; width:200px; height:13px; vertical-align:middle; ">사용자별 메뉴정보 리스트</caption>
  668. <button id="button5" class="btn2_letter4" visibility="hidden" style="left:285px; top:80px; width:64px; height:19px; ">
  669. <caption>엑셀입력</caption>
  670. <script type="javascript" ev:event="DOMActivate">
  671. <![CDATA[
  672. var fileName = window.fileDialog("open", "", false);
  673. grd_acntitemlist.loadExcel(fileName);
  674. var acntgrupcd = opt_acntgrupcd.value;
  675. var acntgrupnm = opt_acntgrupnm.value;
  676. if (fileName != "")
  677. {
  678. for (i=grd_acntitemlist.fixedRows; i<grd_acntitemlist.rows; i++)
  679. {
  680. model.setValue("/root/main/list_item/acntitemlist["+i+"]/acntgrupcd", acntgrupcd);
  681. model.setValue("/root/main/list_item/acntitemlist["+i+"]/acntgrupnm", acntgrupnm);
  682. grd_acntitemlist.rowStatus(i) = 1;
  683. }
  684. grd_acntitemlist.deleteRow(1);
  685. }
  686. ]]>
  687. </script>
  688. </button>
  689. <button id="button6" class="btn2_letter4" style="left:1100px; top:80px; width:64px; height:19px; ">
  690. <caption>엑셀저장</caption>
  691. <script type="javascript" ev:event="DOMActivate">
  692. <![CDATA[
  693. var fileName = window.fileDialog("save", ",", false, "사용자그룹", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
  694. if (fileName != "")
  695. {
  696. grd_menuinfo.saveExcel(fileName);
  697. }
  698. ]]>
  699. </script>
  700. </button>
  701. <input id="ipt_current" ref="/root/main/currentcnt" editable="false" style="left:360px; top:55px; width:110px; height:20px; "/>
  702. <input id="ipt_total" ref="/root/main/usercnt" editable="false" style="left:495px; top:55px; width:115px; height:19px; "/>
  703. <caption id="caption12" class="search_name" style="left:360px; top:20px; width:117px; height:17px; ">페이지사이즈 :</caption>
  704. <input id="input7" ref="/root/send/pagesize" style="left:495px; top:20px; width:115px; height:19px; "/>
  705. <button id="button7" class="btn2_letter4" style="left:625px; top:55px; width:64px; height:19px; ">
  706. <caption>다음조회</caption>
  707. <script type="javascript" ev:event="DOMActivate">
  708. <![CDATA[
  709. var page_size = parseInt(model.getValue("/root/send/pagesize"));
  710. var next_offset = current_offset + page_size;
  711. //alert(next_offset);
  712. var nodes = instance1.selectNodes("/root/main/list_user/userlist[position()>"+current_offset+" and position()<="+next_offset+"]");
  713. var getData = getNodeListCSV(nodes);
  714. //alert(getData);
  715. model.setValue("/root/send/userlist", getData);
  716. submit("TRZSA20499");
  717. datagrid2.rebuild();
  718. // 조회처리
  719. current_offset = next_offset
  720. model.setValue("/root/main/currentcnt", current_offset);
  721. ipt_current.refresh();
  722. /*
  723. var start_num = model.getValue("/root/init/start_num");
  724. var end_num = model.getValue("/root/init/end_num");
  725. if (start_num != "" && end_num != "")
  726. {
  727. model.setValue("/root/send/start_num", start_num);
  728. model.setValue("/root/send/end_num", end_num);
  729. // for (i=start_num; i<=end_num; i++)
  730. // {
  731. // grd_menuauthgruplist.rowStatus(i) = 2;
  732. // }
  733. //
  734. // model.setValue("/root/send/userlist", grd_menuauthgruplist.getUpdateData());
  735. submit("TRZSA20499");
  736. output1.value = model.getValue("/root/properties/error/msg");
  737. }
  738. else
  739. {
  740. alert("시작 번호와 끝번호를 입력해주세요");
  741. }
  742. */
  743. ]]>
  744. </script>
  745. </button>
  746. <button id="button8" class="btn2_letter4" style="left:695px; top:55px; width:64px; height:19px; ">
  747. <caption>전체조회</caption>
  748. <script type="javascript" ev:event="DOMActivate">
  749. <![CDATA[
  750. var total = parseInt(model.getValue("/root/main/usercnt"));
  751. var page_size = parseInt(model.getValue("/root/send/pagesize"));
  752. for (;current_offset < total;)
  753. {
  754. var next_offset = current_offset + page_size;
  755. //alert(next_offset);
  756. var nodes = instance1.selectNodes("/root/main/list_user/userlist[position()>"+current_offset+" and position()<="+next_offset+"]");
  757. var getData = getNodeListCSV(nodes);
  758. //alert(getData);
  759. model.setValue("/root/send/userlist", getData);
  760. submit("TRZSA20499");
  761. datagrid2.rebuild();
  762. // 조회처리
  763. current_offset = next_offset
  764. model.setValue("/root/main/currentcnt", current_offset);
  765. ipt_current.refresh();
  766. }
  767. ]]>
  768. </script>
  769. </button>
  770. <output id="opt_usercnt" ref="/root/main/usercnt" style="left:135px; top:80px; width:70px; height:20px; text-align:right; "/>
  771. <caption id="caption13" style="left:115px; top:80px; width:20px; height:20px; ">총</caption>
  772. <caption id="caption14" style="left:210px; top:80px; width:20px; height:20px; ">명</caption>
  773. <input id="input8" ref="/root/main/msg" editable="false" style="left:625px; top:20px; width:290px; height:19px; "/>
  774. <caption id="caption15" style="left:480px; top:55px; width:20px; height:20px; ">/</caption>
  775. </group>
  776. </xhtml:body>
  777. </xhtml:html>