SMRAC01200_Email관리.xrw 29 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.css" ?>
  3. <xhtml:html xmlns:ex="http://www.comsquare.co.kr/xforms/excel" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:ms="urn:schemas-microsoft-com:xslt" xmlns:my="http://www.comsquare.co.kr/example" 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" xmlns:cs="http://www.comsquare.co.kr/xforms">
  4. <xhtml:head>
  5. <xhtml:title>사용자 E-mail 관리</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <email>
  11. <emaillist/>
  12. </email>
  13. <regemail>
  14. <regemaillist/>
  15. </regemail>
  16. <emailinst>
  17. <emailinstlist/>
  18. </emailinst>
  19. </main>
  20. <send>
  21. <condition>
  22. <instcd/>
  23. <deptcd/>
  24. <depthngnm/>
  25. <emplno/>
  26. <emplnm/>
  27. <dutplcecd/>
  28. </condition>
  29. <regemail>
  30. <regemaillist/>
  31. </regemail>
  32. <emailinst>
  33. <emailinstlist/>
  34. </emailinst>
  35. <acntdept>
  36. <instcd/>
  37. <mngtcd>acntdept</mngtcd>
  38. </acntdept>
  39. <condition_one>
  40. <emplno/>
  41. <emplnm/>
  42. <dutplcecd/>
  43. </condition_one>
  44. </send>
  45. <init>
  46. <code>
  47. <codelist/>
  48. </code>
  49. </init>
  50. <hidden/>
  51. <source>
  52. <defaultvalue/>
  53. </source>
  54. <temp/>
  55. </root>
  56. </instance>
  57. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  58. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  59. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  60. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  61. <script type="javascript" src="../../../mis/miscommonweb/js/RAC001.js"/>
  62. <script type="javascript" ev:event="xforms-ready">
  63. <![CDATA[
  64. fResetForm();
  65. ]]>
  66. </script>
  67. <script type="javascript">
  68. <![CDATA[
  69. //========================================================================================
  70. //화면 로드시 초기화 함수
  71. //========================================================================================
  72. function fResetForm()
  73. {
  74. misfComboComCdList("Z0007", cmb_instcd, "Y");
  75. model.setValue(cmb_instcd.attribute("ref"), getUserInfo("dutplceinstcd"));
  76. model.removeNodeset("/root/main/email/emaillist");
  77. model.removeNodeset("/root/main/regemail/regemaillist");
  78. model.removeNodeset("/root/main/emailinst/emailinstlist");
  79. model.setValue("/root/send/condition/instcd", getUserInfo("dutplceinstcd"));
  80. model.setValue("/root/send/acntdept/instcd", getUserInfo("dutplceinstcd"));
  81. model.setValue(ipt_deptcd.attribute("ref"), getUserInfo("dutplcecd"));
  82. model.setValue(ipt_depthngnm.attribute("ref"), getUserInfo("dutplcenm"));
  83. model.setValue(ipt_emplno.attribute("ref"), getUserInfo("userid"));
  84. model.setValue(ipt_name.attribute("ref"), getUserInfo("usernm"));
  85. model.setValue(ipt_emplno_one.attribute("ref"), getUserInfo("userid"));
  86. model.setValue(ipt_name_one.attribute("ref"), getUserInfo("usernm"));
  87. model.setValue("/root/send/condition/dutplcecd", getUserInfo("dutplcecd"));
  88. model.setValue("/root/send/condition_one/dutplcecd", getUserInfo("dutplcecd"));
  89. submit("TRRAZ00001");
  90. if(model.getValue("/root/init/code/codelist/cdid") != getUserInfo("dutplcecd"))
  91. {
  92. ipt_deptcd.disabled = true;
  93. ipt_depthngnm.disabled = true;
  94. // ipt_emplno.disabled = true;
  95. // ipt_name.disabled = true;
  96. ipt_emplno_one.disabled = true;
  97. ipt_name_one.disabled = true;
  98. cap_instcd.visible = false;
  99. cmb_instcd.visible = false;
  100. }
  101. misfGridComboComCdList('Z0007', grd_regemaillist, "instcd");
  102. misfGridComboComCdList('Z0007', grd_emailinstlist, "instcd");
  103. model.refresh();
  104. btn_search.dispatch("DOMActivate");
  105. }
  106. //========================================================================================
  107. //코드 Validation Check
  108. //========================================================================================
  109. function fValidationCheck(vgbn, recvlist, pcdgrupid, pNextIndex, pValueControl, pNodeName, pRetrKind)
  110. {
  111. if(event.keyCode == 13 || event.name == "xforms-value-changed")
  112. {
  113. document.controls(event.currentTarget).value = document.controls(event.currentTarget).currentText;
  114. misfValidationCheck(vgbn, pcdgrupid, recvlist, pValueControl, pNodeName, pRetrKind);
  115. model.refresh();
  116. if (pNextIndex != "") {
  117. model.setFocus(pNextIndex);
  118. }
  119. }
  120. }
  121. //========================================================================================
  122. //부서코드 Help Open
  123. //========================================================================================
  124. function fOpenPopupDeptHelp(pControl, pInstance)
  125. {
  126. misfOpenPopUpList("11", pControl, "TRRBC00501", pInstance);
  127. model.refresh();
  128. }
  129. function fOpenPopupUserHelp(pCtrl, pInstance)
  130. {
  131. misfOpenPopUpList("01", pCtrl, "", pInstance);
  132. model.refresh();
  133. }
  134. //========================================================================================
  135. // 기본 기관 지정
  136. //========================================================================================
  137. function fSetDefault()
  138. {
  139. for(var i = grd_emailinstlist.fixedRows ; i < grd_emailinstlist.rows ; i++)
  140. {
  141. if(grd_regemaillist.valueMatrix(1, grd_regemaillist.colRef("instcd")) == grd_emailinstlist.valueMatrix(i, grd_emailinstlist.colRef("instcd")))
  142. {
  143. grd_emailinstlist.valueMatrix(i, grd_emailinstlist.colRef("selected")) = "true";
  144. break;
  145. }
  146. }
  147. }
  148. ]]>
  149. </script>
  150. <submission id="TRRAZ00001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/acntdept" resultref="/root/init/code"/>
  151. <submission id="TXRAC01201" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/regemail/regemaillist" resultref="/root/temp"/>
  152. <submission id="TRRAC01201" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/condition" resultref="/root/main/email"/>
  153. <submission id="TRRAC01202" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/condition_one" resultref="/root/main/regemail"/>
  154. <submission id="TRRAC01203" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/condition_one" resultref="/root/main/emailinst"/>
  155. <submission id="TXRAC01202" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/emailinst/emailinstlist" resultref="/root/temp"/>
  156. </model>
  157. </xhtml:head>
  158. <xhtml:body guideline="1,1194;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  159. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  160. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:230px; height:14px; ">Email 관리</caption>
  161. <caption id="caption4" class="patient_text_black" style="left:922px; top:0px; width:272px; "/>
  162. </group>
  163. <group id="group3" scroll="auto" style="left:0px; top:15px; width:1195px; height:769px; ">
  164. <group id="grp_sea" style="left:0px; top:10px; width:1194; height:35px; vertical-align:top; ">
  165. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:1194; height:35px; background-color:#fffbf2; border-color:#ffd799; "/>
  166. <caption id="caption7" class="search_name" style="left:16px; top:9px; width:85px; height:17px; ">부 서 :</caption>
  167. <line id="line5" class="line_4" style="x1:1107px; y1:8px; x2:1107px; y2:30px; border-color:#ffe4bb; border-left-style:solid; "/>
  168. <input id="ipt_deptcd" ref="/root/send/condition/deptcd" class="input_s_essential" navindex="2" style="left:104px; top:8px; width:76px; height:19px; ">
  169. <script type="javascript" ev:event="onkeypress">
  170. <![CDATA[
  171. if(event.keyCode == 13)
  172. {
  173. model.setFocus("btn_search");
  174. }
  175. ]]>
  176. </script>
  177. <script type="javascript" ev:event="xforms-value-changed">
  178. <![CDATA[
  179. racfDeptValidCheck("deptcd,depthngnm");
  180. ]]>
  181. </script>
  182. </input>
  183. <input id="ipt_depthngnm" ref="/root/send/condition/depthngnm" class="input_s_essential" navindex="3" style="left:205px; top:8px; width:140px; height:19px; ">
  184. <script type="javascript" ev:event="onkeypress">
  185. <![CDATA[
  186. if(event.keyCode == 13)
  187. {
  188. model.setFocus("btn_search");
  189. }
  190. ]]>
  191. </script>
  192. <script type="javascript" ev:event="xforms-value-changed">
  193. <![CDATA[
  194. racfDeptValidCheck("deptcd,depthngnm");
  195. ]]>
  196. </script>
  197. </input>
  198. <button id="btn_search" class="btn1_letter2" navindex="4" style="left:1123px; top:8px; width:56px; height:22px; text-align:left; ">
  199. <caption>조회</caption>
  200. <script type="javascript" ev:event="DOMActivate">
  201. <![CDATA[
  202. model.removeNodeset("/root/main/email/emaillist");
  203. if(grd_emaillist.rows > grd_emaillist.fixedRows)
  204. {
  205. misfSetReadOnlyCol(grd_emaillist, "dept_id,dept_name,user_id,authority", true);
  206. for(var i = grd_emaillist.fixedRows ; i < grd_emaillist.rows ; i++)
  207. {
  208. if(grd_emaillist.valueMatrix(grd_emaillist.row, grd_emaillist.colRef("password")) == "********")
  209. {
  210. misfSetReadOnlyCol(grd_emaillist, "password,cellphone,email", true);
  211. }
  212. }
  213. grd_emaillist.col = grd_emaillist.colRef("user_name");
  214. grd_emaillist.row = grd_emaillist.fixedRows;
  215. grd_emaillist.dispatch("onrowchanged");
  216. }
  217. ]]>
  218. </script>
  219. </button>
  220. <button id="btn_help" class="icon_search" style="left:184px; top:11px; width:16px; height:16px; ">
  221. <caption/>
  222. <script type="javascript" ev:event="DOMActivate">
  223. <![CDATA[
  224. fOpenPopupDeptHelp(ipt_deptcd, "deptcd,depthngnm");
  225. ]]>
  226. </script>
  227. </button>
  228. <caption id="caption10" class="search_name" style="left:365px; top:10px; width:91px; height:17px; ">사 번 :</caption>
  229. <input id="ipt_name" ref="/root/send/condition/emplnm" class="input_s_essential" navindex="2" style="left:553px; top:9px; width:140px; height:19px; ">
  230. <script type="javascript" ev:event="onkeypress">
  231. <![CDATA[
  232. if(event.keyCode == 13)
  233. {
  234. model.setFocus("btn_search");
  235. }
  236. ]]>
  237. </script>
  238. <script type="javascript" ev:event="xforms-value-changed">
  239. <![CDATA[
  240. fValidationCheck("12", "emplno,emplnm", "", "btn_search");
  241. ]]>
  242. </script>
  243. </input>
  244. <button id="btn_emplno" class="icon_search" style="left:534px; top:11px; width:16px; height:16px; ">
  245. <caption/>
  246. <script type="javascript" ev:event="DOMActivate">
  247. <![CDATA[
  248. fOpenPopupUserHelp(ipt_emplno, "emplno,emplnm");
  249. model.refresh();
  250. ]]>
  251. </script>
  252. </button>
  253. <input id="ipt_emplno" ref="/root/send/condition/emplno" class="input_s_essential" navindex="1" maxlength="8" style="left:455px; top:9px; width:76px; height:19px; text-align:center; ">
  254. <script type="javascript" ev:event="onkeypress">
  255. <![CDATA[
  256. if(event.keyCode == 13)
  257. {
  258. model.setFocus("btn_search");
  259. }
  260. ]]>
  261. </script>
  262. <script type="javascript" ev:event="xforms-value-changed">
  263. <![CDATA[
  264. fValidationCheck("12", "emplno,emplnm", "", "btn_search");
  265. ]]>
  266. </script>
  267. </input>
  268. <select1 id="cmb_instcd" ref="/root/send/condition/instcd" class="combo_s_essential" disabled="false" navindex="1" visibility="hidden" appearance="minimal" style="left:835px; top:9px; width:210px; height:19px; ">
  269. <choices>
  270. <itemset>
  271. <label/>
  272. <value/>
  273. </itemset>
  274. </choices>
  275. </select1>
  276. <caption id="cap_instcd" class="search_name" visibility="hidden" style="left:726px; top:10px; width:104px; height:17px; text-align:left; ">기 관 :</caption>
  277. </group>
  278. <caption id="caption9" class="tit_2" style="left:5px; top:75px; width:225px; height:13px; ">기관별 사용자 E-mail List</caption>
  279. <line id="line3" class="line_1" style="x1:0px; y1:90px; x2:1194px; y2:90px; "/>
  280. <line id="line4" class="line_3" style="x1:0px; y1:121px; x2:1194px; y2:121px; "/>
  281. <datagrid id="grd_emaillist" nodeset="/root/main/email/emaillist" caption="기관코드^관리부서^관리부서^사원번호^성명^비밀번호^핸드폰^E-mail^사용여부^권한" colsep="^" colwidth="0, 85, 120, 100, 100, 120, 90, 250, 80, 100" focuscolor="#ccffff" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="16" rowsep="|" selectionmode="free" style="left:0px; top:95px; width:1194px; height:375px; ">
  282. <col ref="instcd"/>
  283. <col class="text_center" ref="dept_id"/>
  284. <col ref="dept_name"/>
  285. <col class="text_center" ref="user_id"/>
  286. <col class="text_center" ref="user_name"/>
  287. <col ref="password"/>
  288. <col ref="cellphone"/>
  289. <col ref="email"/>
  290. <col checkvalue="Y,N" disabled="false" ref="use_yn" type="checkbox"/>
  291. <col disabled="true" ref="authority" type="combo" style="text-align:center; vertical-align:middle; ">
  292. <choices>
  293. <item>
  294. <label>관리자</label>
  295. <value>0</value>
  296. </item>
  297. <item>
  298. <label>일반</label>
  299. <value>2</value>
  300. </item>
  301. </choices>
  302. </col>
  303. <script type="javascript" ev:event="onbuttonclick">
  304. <![CDATA[
  305. if(grd_emaillist.col == grd_emaillist.colRef("dept_id"))
  306. {
  307. fOpenPopupDeptHelp(grd_emaillist, "dept_id,dept_name");
  308. }
  309. else if(grd_emaillist.col == grd_emaillist.colRef("user_id"))
  310. {
  311. fOpenPopupUserHelp(grd_emaillist, "user_id,user_name");
  312. }
  313. ]]>
  314. </script>
  315. <script type="javascript" ev:event="onendedit">
  316. <![CDATA[
  317. if(grd_emaillist.col == grd_emaillist.colRef("dept_id") || grd_emaillist.col == grd_emaillist.colRef("dept_name"))
  318. {
  319. misfValidationCheck("02", "", "dept_id,dept_name");
  320. model.refresh();
  321. }
  322. ]]>
  323. </script>
  324. <script type="javascript" ev:event="onrowchanged">
  325. <![CDATA[
  326. model.setValue(ipt_emplno_one.attribute("ref"), grd_emaillist.valueMatrix(grd_emaillist.row, grd_emaillist.colRef("user_id")));
  327. model.setValue(ipt_name_one.attribute("ref"), grd_emaillist.valueMatrix(grd_emaillist.row, grd_emaillist.colRef("user_name")));
  328. model.refresh();
  329. btn_search_one.dispatch("DOMActivate");
  330. grd_emaillist.dispatch("onmouseup");
  331. ]]>
  332. </script>
  333. </datagrid>
  334. <group id="group4" style="left:0px; top:500px; width:1194px; height:35px; vertical-align:top; ">
  335. <shape id="roundrect2" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:1194; height:35px; background-color:#fffbf2; border-color:#ffd799; "/>
  336. <line id="line2" class="line_4" style="x1:1107px; y1:8px; x2:1107px; y2:30px; border-color:#ffe4bb; border-left-style:solid; "/>
  337. <button id="btn_search_one" class="btn1_letter2" navindex="4" style="left:1123px; top:8px; width:56px; height:22px; text-align:left; ">
  338. <caption>조회</caption>
  339. <script type="javascript" ev:event="DOMActivate">
  340. <![CDATA[
  341. model.removeNodeset("/root/main/regemail/regemaillist");
  342. model.removeNodeset("/root/main/emailinst/emailinstlist");
  343. submit("TRRAC01202");
  344. submit("TRRAC01203");
  345. misfSetReadOnlyCol(grd_regemaillist, "dept_id,dept_name,user_id,email", true);
  346. if(model.getValue("/root/init/code/codelist/cdid") != getUserInfo("dutplcecd"))
  347. {
  348. misfSetReadOnlyCol(grd_regemaillist, "authority", true);
  349. }
  350. if(grd_regemaillist.valueMatrix(1, grd_regemaillist.colRef("password")) == "********")
  351. {
  352. misfSetReadOnlyCol(grd_regemaillist, "password", true);
  353. for(var i = grd_emailinstlist.fixedRows ; i < grd_emailinstlist.rows ; i++)
  354. {
  355. misfSetReadOnlyCol(grd_emailinstlist, "instcd,dept_id,dept_name", true);
  356. }
  357. }
  358. fSetDefault();
  359. ]]>
  360. </script>
  361. </button>
  362. <caption id="caption2" class="search_name" style="left:15px; top:10px; width:91px; height:17px; ">사 번 :</caption>
  363. <input id="ipt_name_one" ref="/root/send/condition_one/emplnm" class="input_s_essential" navindex="2" style="left:203px; top:9px; width:140px; height:19px; ">
  364. <script type="javascript" ev:event="onkeypress">
  365. <![CDATA[
  366. if(event.keyCode == 13)
  367. {
  368. model.setFocus("btn_search");
  369. }
  370. ]]>
  371. </script>
  372. <script type="javascript" ev:event="xforms-value-changed">
  373. <![CDATA[
  374. fValidationCheck("12", "emplno,emplnm", "", "btn_search");
  375. ]]>
  376. </script>
  377. </input>
  378. <button id="button3" class="icon_search" style="left:184px; top:11px; width:16px; height:16px; ">
  379. <caption/>
  380. <script type="javascript" ev:event="DOMActivate">
  381. <![CDATA[
  382. fOpenPopupUserHelp(ipt_emplno_one, "emplno,emplnm");
  383. model.refresh();
  384. ]]>
  385. </script>
  386. </button>
  387. <input id="ipt_emplno_one" ref="/root/send/condition_one/emplno" class="input_s_essential" navindex="1" maxlength="8" style="left:105px; top:9px; width:76px; height:19px; text-align:center; ">
  388. <script type="javascript" ev:event="onkeypress">
  389. <![CDATA[
  390. if(event.keyCode == 13)
  391. {
  392. model.setFocus("btn_search");
  393. }
  394. ]]>
  395. </script>
  396. <script type="javascript" ev:event="xforms-value-changed">
  397. <![CDATA[
  398. fValidationCheck("12", "emplno,emplnm", "", "btn_search");
  399. ]]>
  400. </script>
  401. </input>
  402. </group>
  403. <datagrid id="grd_regemaillist" nodeset="/root/main/regemail/regemaillist" caption="대표기관^대표기관부서^대표기관부서^사원번호^성명^다큐빌 가입 비밀번호^핸드폰^E-mail^사용여부^권한" colsep="^" colwidth="120, 85, 120, 100, 100, 130, 90, 250, 70, 100" focuscolor="#ccffff" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="16" rowsep="|" selectionmode="free" style="left:0px; top:537px; width:1194px; height:75px; ">
  404. <col disabled="true" ref="instcd" type="combo">
  405. <choices>
  406. <itemset>
  407. <label/>
  408. <value/>
  409. </itemset>
  410. </choices>
  411. </col>
  412. <col class="text_center" ref="dept_id" type="inputbutton" editable="false"/>
  413. <col ref="dept_name" type="input"/>
  414. <col class="text_center" ref="user_id" type="inputbutton" editable="false"/>
  415. <col class="text_center" ref="user_name"/>
  416. <col ref="password" type="input"/>
  417. <col ref="cellphone" type="input"/>
  418. <col ref="email" type="input"/>
  419. <col checkvalue="Y,N" ref="use_yn" type="checkbox"/>
  420. <col ref="authority" type="combo" style="text-align:center; vertical-align:middle; ">
  421. <choices>
  422. <item>
  423. <label>관리자</label>
  424. <value>0</value>
  425. </item>
  426. <item>
  427. <label>일반</label>
  428. <value>2</value>
  429. </item>
  430. </choices>
  431. </col>
  432. <script type="javascript" ev:event="onbuttonclick">
  433. <![CDATA[
  434. if(grd_regemaillist.col == grd_regemaillist.colRef("user_id"))
  435. {
  436. fOpenPopupUserHelp(grd_regemaillist, "user_id,user_name");
  437. for(var i = grd_emailinstlist.fixedRows ; i < grd_emailinstlist.rows ; i++)
  438. {
  439. grd_emailinstlist.valueMatrix(i, grd_emailinstlist.colRef("user_id")) = grd_regemaillist.valueMatrix(1,grd_regemaillist.colRef("user_id"));
  440. }
  441. }
  442. ]]>
  443. </script>
  444. </datagrid>
  445. <button id="btn_delrow" class="btn2_letter3" visibility="hidden" style="left:170px; top:613px; width:53px; height:19px; ">
  446. <caption>행삭제</caption>
  447. <script type="javascript" ev:event="DOMActivate">
  448. <![CDATA[
  449. var vRowCnt = 0;
  450. for(var i = grd_emailinstlist.fixedRows ; i < grd_emailinstlist.rows ; i++)
  451. {
  452. if(!(grd_emailinstlist.rowStatus(i) == 4 || grd_emailinstlist.rowStatus(i) == 5 || grd_emailinstlist.rowStatus(i) == 6))
  453. {
  454. vRowCnt = vRowCnt + 1;
  455. }
  456. }
  457. if(vRowCnt == 1)
  458. {
  459. messageBox("하나이상의 기관코드는 남아 있어야 합니다.","I000");
  460. return false;
  461. }
  462. misfGridIUD(grd_emailinstlist, "D");
  463. ]]>
  464. </script>
  465. </button>
  466. <button id="btn_addrow" class="btn2_letter3" style="left:380px; top:613px; width:53px; height:19px; ">
  467. <caption>행추가</caption>
  468. <script type="javascript" ev:event="DOMActivate">
  469. <![CDATA[
  470. if(grd_regemaillist.valueMatrix(1, grd_regemaillist.colRef("password")) == "********")
  471. {
  472. messageBox("권한이 없습니다.","I000");
  473. return;
  474. }
  475. for(var i = grd_emailinstlist.fixedRows ; i < grd_emailinstlist.rows ; i++)
  476. {
  477. // 입력 수정 삭제 상태이면 더이상 추가 되지 않도록 예외처리, 입력하려는 기관(세션의 기관면 입력된다.)이 기존에 있으면 중복되지 못하도록 추가 제한 예외처리
  478. if(grd_emailinstlist.rowStatus(i) != 0 || grd_emailinstlist.valueMatrix(i, grd_emailinstlist.colRef("instcd")) == getUserInfo("dutplceinstcd"))
  479. {
  480. return false;
  481. }
  482. }
  483. var NewYN = "N";
  484. if((grd_regemaillist.rows - grd_regemaillist.fixedRows) == 0)
  485. {
  486. NewYN = "Y";
  487. misfGridIUD(grd_regemaillist, "A");
  488. grd_regemaillist.valueMatrix(grd_regemaillist.row, grd_regemaillist.colRef("instcd")) = getUserInfo("dutplceinstcd");
  489. }
  490. grd_regemaillist.valueMatrix(grd_regemaillist.row, grd_regemaillist.colRef("use_yn")) = "Y";
  491. grd_regemaillist.valueMatrix(grd_regemaillist.row, grd_regemaillist.colRef("authority")) = "2";
  492. if(NewYN == "Y" )
  493. {
  494. grd_regemaillist.valueMatrix(grd_regemaillist.row, grd_regemaillist.colRef("dept_id")) = getUserInfo("dutplcecd");
  495. grd_regemaillist.valueMatrix(grd_regemaillist.row, grd_regemaillist.colRef("dept_name")) = getUserInfo("dutplcenm");
  496. grd_regemaillist.valueMatrix(grd_regemaillist.row, grd_regemaillist.colRef("user_id")) = getUserInfo("userid");
  497. grd_regemaillist.valueMatrix(grd_regemaillist.row, grd_regemaillist.colRef("user_name")) = getUserInfo("usernm");
  498. }
  499. misfGridIUD(grd_emailinstlist, "A");
  500. grd_emailinstlist.valueMatrix(grd_emailinstlist.row, grd_emailinstlist.colRef("instcd")) = getUserInfo("dutplceinstcd");
  501. grd_emailinstlist.valueMatrix(grd_emailinstlist.row, grd_emailinstlist.colRef("user_id")) = getUserInfo("userid");
  502. grd_emailinstlist.valueMatrix(grd_emailinstlist.row, grd_emailinstlist.colRef("dept_id")) = getUserInfo("dutplcecd");
  503. grd_emailinstlist.valueMatrix(grd_emailinstlist.row, grd_emailinstlist.colRef("dept_name")) = getUserInfo("dutplcenm");
  504. misfSetReadOnlyCol(grd_regemaillist, "instcd", true);
  505. misfSetReadOnlyCol(grd_emailinstlist, "instcd", true);
  506. if(model.getValue("/root/init/code/codelist/cdid") != getUserInfo("dutplcecd"))
  507. {
  508. misfSetReadOnlyCol(grd_regemaillist, "use_yn,authority,dept_id,dept_name,user_id", true);
  509. misfSetReadOnlyCol(grd_emailinstlist, "dept_id,dept_name", true);
  510. }
  511. fSetDefault();
  512. ]]>
  513. </script>
  514. </button>
  515. <datagrid id="grd_emailinstlist" nodeset="/root/main/emailinst/emailinstlist" caption="기관^사원번호^관리부서^관리부서^선택" colsep="^" colwidth="100, 0, 100, 120, 60" focuscolor="#ccffff" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="16" rowsep="|" selectionmode="free" style="left:0px; top:633px; width:430px; height:135px; ">
  516. <col disabled="true" ref="instcd" type="combo">
  517. <choices>
  518. <itemset>
  519. <label/>
  520. <value/>
  521. </itemset>
  522. </choices>
  523. </col>
  524. <col class="text_center" ref="user_id" type="inputbutton"/>
  525. <col class="text_center" ref="dept_id" type="inputbutton" editable="false"/>
  526. <col ref="dept_name" type="input"/>
  527. <col ref="selected" type="radio"/>
  528. <script type="javascript" ev:event="onbuttonclick">
  529. <![CDATA[
  530. if(grd_emailinstlist.col == grd_emailinstlist.colRef("dept_id"))
  531. {
  532. fOpenPopupDeptHelp(grd_emailinstlist, "dept_id,dept_name");
  533. }
  534. grd_emailinstlist.dispatch("xforms-value-changed");
  535. ]]>
  536. </script>
  537. <script type="javascript" ev:event="onendedit">
  538. <![CDATA[
  539. if(grd_emailinstlist.col == grd_emailinstlist.colRef("dept_id") || grd_emailinstlist.col == grd_emailinstlist.colRef("dept_name"))
  540. {
  541. misfValidationCheck("02", "", "dept_id,dept_name");
  542. model.refresh();
  543. }
  544. grd_emailinstlist.dispatch("xforms-value-changed");
  545. ]]>
  546. </script>
  547. <script type="javascript" ev:event="xforms-value-changed">
  548. <![CDATA[
  549. if(grd_emailinstlist.col == grd_emailinstlist.colRef("dept_id") && grd_emailinstlist.valueMatrix(grd_emailinstlist.row, grd_emailinstlist.colRef("selected")) == "true")
  550. {
  551. grd_regemaillist.valueMatrix(1, grd_regemaillist.colRef("dept_id")) = grd_emailinstlist.valueMatrix(grd_emailinstlist.row, grd_emailinstlist.colRef("dept_id"));
  552. grd_regemaillist.valueMatrix(1, grd_regemaillist.colRef("dept_name")) = grd_emailinstlist.valueMatrix(grd_emailinstlist.row, grd_emailinstlist.colRef("dept_name"));
  553. }
  554. else if(grd_emailinstlist.col == grd_emailinstlist.colRef("instcd") && grd_emailinstlist.valueMatrix(grd_emailinstlist.row, grd_emailinstlist.colRef("selected")) == "true")
  555. {
  556. grd_regemaillist.valueMatrix(1, grd_regemaillist.colRef("instcd")) = grd_emailinstlist.valueMatrix(grd_emailinstlist.row, grd_emailinstlist.colRef("instcd"));
  557. }
  558. model.refresh();
  559. ]]>
  560. </script>
  561. <script type="javascript" ev:event="onclick">
  562. <![CDATA[
  563. if(grd_emailinstlist.isCell(event.target) && grd_emailinstlist.row >= grd_emailinstlist.fixedRows && grd_emailinstlist.col == grd_emailinstlist.colRef("selected"))
  564. {
  565. grd_regemaillist.valueMatrix(1, grd_regemaillist.colRef("instcd")) = grd_emailinstlist.valueMatrix(grd_emailinstlist.row, grd_emailinstlist.colRef("instcd"));
  566. grd_regemaillist.valueMatrix(1, grd_regemaillist.colRef("dept_id")) = grd_emailinstlist.valueMatrix(grd_emailinstlist.row, grd_emailinstlist.colRef("dept_id"));
  567. grd_regemaillist.valueMatrix(1, grd_regemaillist.colRef("dept_name")) = grd_emailinstlist.valueMatrix(grd_emailinstlist.row, grd_emailinstlist.colRef("dept_name"));
  568. grd_regemaillist.addStatus(1, "update");
  569. }
  570. ]]>
  571. </script>
  572. </datagrid>
  573. <caption id="caption1" class="tit_2" style="left:5px; top:485px; width:225px; height:13px; ">사용자 E-mail 등록</caption>
  574. <button id="btn_save" class="btn4_letter2" style="left:1138px; top:475px; width:56px; height:22px; ">
  575. <caption>저장</caption>
  576. <script type="javascript" ev:event="DOMActivate">
  577. <![CDATA[
  578. if(getGridUpdateData(grd_regemaillist) == "" && getGridUpdateData(grd_emailinstlist) == "")
  579. {
  580. messageBox("변경된 데이터가","I004");
  581. }
  582. else
  583. {
  584. for(var i = grd_regemaillist.fixedRows ; i < grd_regemaillist.rows ; i++)
  585. {
  586. if(grd_regemaillist.valueMatrix(i, grd_regemaillist.colRef("user_id")) == "")
  587. {
  588. messageBox("사번을 입력하세요!","I000");
  589. return false;
  590. }
  591. if(grd_regemaillist.valueMatrix(i, grd_regemaillist.colRef("email")) == "")
  592. {
  593. messageBox("E-mail 을 입력하세요!","I000");
  594. return false;
  595. }
  596. if(grd_regemaillist.valueMatrix(i, grd_regemaillist.colRef("password")) == "")
  597. {
  598. messageBox("비밀번호를 입력하세요!","I000");
  599. return false;
  600. }
  601. }
  602. for(var i = grd_emailinstlist.fixedRows ; i < grd_emailinstlist.rows ; i++)
  603. {
  604. if(grd_emailinstlist.valueMatrix(i, grd_emailinstlist.colRef("dept_id")) == "")
  605. {
  606. messageBox("부서를 선택하세요!","I000");
  607. return false;
  608. }
  609. }
  610. model.setValue("/root/send/regemail/regemaillist", grd_regemaillist.getUpdateData());
  611. submit("TXRAC01201");
  612. model.setValue("/root/send/emailinst/emailinstlist", grd_emailinstlist.getUpdateData());
  613. submit("TXRAC01202");
  614. btn_search.dispatch("DOMActivate");
  615. btn_search_one.dispatch("DOMActivate");
  616. }
  617. ]]>
  618. </script>
  619. </button>
  620. <button id="btn_alldelrow" class="btn2_letter4" visibility="hidden" style="left:225px; top:613px; width:53px; height:19px; ">
  621. <caption>전체삭제</caption>
  622. <script type="javascript" ev:event="DOMActivate">
  623. <![CDATA[
  624. ret = messageBox("삭제하시겠습니까?","Q999");
  625. if (ret == "6")
  626. {
  627. misfGridIUD(grd_regemaillist, "D");
  628. for(var i = grd_emailinstlist.fixedRows ; i < grd_emailinstlist.rows ; i++)
  629. {
  630. grd_emailinstlist.row = i;
  631. misfGridIUD(grd_emailinstlist, "D");
  632. }
  633. btn_save.dispatch("DOMActivate");
  634. }
  635. ]]>
  636. </script>
  637. </button>
  638. <caption id="caption3" style="left:10px; top:50px; width:1160px; height:20px; font-weight:bold; color:#ff0000; text-align:left; ">주의 : 전자세금계산서용 E-mail은 입력 후 수정 / 삭제를 할 수 없습니다. 정확히 입력하세요.</caption>
  639. </group>
  640. </xhtml:body>
  641. </xhtml:html>