SPCCN00400_채널별메시지검색.xrw 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <!--
  3. * Name : SPCCN00400_채널별메시지검색
  4. * Summary : 채널별메시지검색
  5. * Programmer : 최정환
  6. * Date Written : 2007.07.10
  7. * History : 2007.07.10
  8. * Remark :
  9. -->
  10. <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.css" ?>
  11. <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">
  12. <xhtml:head>
  13. <xhtml:title>채널별 상용구 검색</xhtml:title>
  14. <model id="model1">
  15. <instance id="instance1">
  16. <root xmlns="">
  17. <main>
  18. <emailattr>
  19. <recvrnm/>
  20. <replemail/>
  21. <emailtitl/>
  22. <emailbdtext/>
  23. <msglrgcd/>
  24. <msgmdlcd/>
  25. <msgsmlcd/>
  26. </emailattr>
  27. <msgattr>
  28. <msgcnts/>
  29. <smstrsmcntcno/>
  30. <msgsmlcd/>
  31. <msglrgcd/>
  32. <msgmdlcd/>
  33. </msgattr>
  34. <msgsmllist>
  35. <msgsmlcd/>
  36. <emailtitl/>
  37. <smstrsmcntcno/>
  38. <msgcnts/>
  39. </msgsmllist>
  40. <recvrinfo>
  41. <recvrlist>
  42. <chk/>
  43. <recvrnm/>
  44. <recvrtelno/>
  45. </recvrlist>
  46. </recvrinfo>
  47. </main>
  48. <send>
  49. <info>
  50. <msglrgcd/>
  51. <msgmdlcd/>
  52. <msgsmlcd/>
  53. <chnlflag/>
  54. </info>
  55. </send>
  56. <init>
  57. <chnllrglist>
  58. <chnllrggrup>
  59. <msglrgnm/>
  60. <msglrgcd/>
  61. </chnllrggrup>
  62. </chnllrglist>
  63. <chnlmdllist>
  64. <chnlmdlgrup>
  65. <msgmdlnm/>
  66. <msgmdlcd/>
  67. <msglrgcd/>
  68. </chnlmdlgrup>
  69. </chnlmdllist>
  70. </init>
  71. <temp>
  72. <emailattr>
  73. <msgsmlcd/>
  74. <emailtitl/>
  75. <replemail/>
  76. <emailbdtext/>
  77. <emailbdtextfile/>
  78. <msglrgcd/>
  79. <msgmdlcd/>
  80. </emailattr>
  81. </temp>
  82. <hidden/>
  83. </root>
  84. </instance>
  85. <submission id="TRCNS00201" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/info" resultref="/root/init/chnllrglist/chnllrggrup"/>
  86. <submission id="TRCNS00202" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/info" replace="instance" resultref="/root/init/chnlmdllist/chnlmdlgrup"/>
  87. <submission id="TRCCN00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/info" replace="instance" resultref="/root/main/msgsmllist"/>
  88. <submission id="TRCCN00201" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/info" replace="instance" resultref="/root/temp/emailattr"/>
  89. <submission id="TXCCN00201" mediatype="multipart/form-data" method="form-data-post" ref="/root/main/emailattr" resultref="/root/hidden"/>
  90. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  91. <script type="javascript" ev:event="xforms-ready">
  92. <![CDATA[
  93. // 채널구분은 Default로 SMS(S)로 설정해준다.
  94. // model.setValue("/root/send/info/chnlflag", "S")
  95. // submit("TRCNS00201");
  96. // 고객정보 페이지에서 호출하였을 경우 채널구분은 SMS(S) 만으로 고정시킨다.
  97. var chnlflag = opener.window.javascript.getParameter("search_condition");
  98. //var chnlflag = "S"
  99. model.setValue("/root/send/info/chnlflag", chnlflag)
  100. submit("TRCNS00201");
  101. cmb_chnlflag.disabled = true;
  102. // 초기화면 설정.
  103. if (chnlflag == "E") {
  104. model.toggle("case1");
  105. } else if (chnlflag == "S") {
  106. model.toggle("case2");
  107. }
  108. ]]>
  109. </script>
  110. <script type="javascript">
  111. <![CDATA[
  112. // 선택한 업무구분(S:SMS, E:Email)에 따른 채널관리 대분류를 가져온다.
  113. function fGetChnlLrgCd() {
  114. model.removenodeset("/root/init/chnllrglist/chnllrggrup");
  115. model.removenodeset("/root/init/chnlmdllist/chnlmdlgrup");
  116. model.removenodeset("/root/main/msgsmllist");
  117. submit("TRCNS00201");
  118. var chnlflag = model.getValue("/root/send/info/chnlflag")
  119. if (chnlflag == "S") {
  120. model.toggle("case2");
  121. } else {
  122. model.toggle("case1");
  123. }
  124. }
  125. // 선택한 채널관리 대분류에 따른 채널관리 중분류를 가져온다.
  126. function fGetChnlMdlCd() {
  127. var msglrgcd = model.getValue("/root/main/emailattr/msglrgcd");
  128. model.setValue("/root/send/info/msglrgcd",msglrgcd);
  129. submit("TRCNS00202");
  130. }
  131. // 선택한 채널관리 중분류에 따른 메시지 리스트를 가져온다.
  132. function fGetChnlSmlCd() {
  133. var msgmdlcd = model.getValue("/root/main/emailattr/msgmdlcd");
  134. model.setValue("/root/send/info/msgmdlcd",msgmdlcd);
  135. submit("TRCCN00101");
  136. }
  137. // Email정보조회
  138. function fGetEmailAttr() {
  139. var row = grd_emaillist.row;
  140. // 선택한 채널관리 리스트항목의 대분류에 따른 채널관리 중분류를 가져온다.
  141. var msgsmlcd = grd_emaillist.valueMatrix(row, grd_emaillist.colRef("msgsmlcd"));
  142. if (msgsmlcd != "") {
  143. model.setValue("/root/send/info/msgsmlcd", msgsmlcd);
  144. submit("TRCCN00201");
  145. var msgsmlcd = model.getValue("/root/temp/emailattr/msgsmlcd");
  146. var emailtitl = model.getValue("/root/temp/emailattr/emailtitl");
  147. var replemail = model.getValue("/root/temp/emailattr/replemail");
  148. var emailbdtext = model.getValue("/root/temp/emailattr/emailbdtext");
  149. var msglrgcd = model.getValue("/root/temp/emailattr/msglrgcd");
  150. var msgmdlcd = model.getValue("/root/temp/emailattr/msgmdlcd");
  151. model.setValue("/root/main/emailattr/msgsmlcd", msgsmlcd);
  152. model.setValue("/root/main/emailattr/emailtitl", emailtitl);
  153. model.setValue("/root/main/emailattr/replemail", replemail);
  154. model.setValue("/root/main/emailattr/emailbdtext", emailbdtext);
  155. model.setValue("/root/main/emailattr/msglrgcd", msglrgcd);
  156. model.setValue("/root/main/emailattr/msgmdlcd", msgmdlcd);
  157. model.refresh();
  158. }
  159. }
  160. ]]>
  161. </script>
  162. </model>
  163. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  164. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  165. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  166. </xhtml:head>
  167. <xhtml:body pagewidth="517" pageheight="470" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  168. <group id="grp_tmpl" scroll="auto" style="left:0px; top:0px; width:501px; height:57px; ">
  169. <caption id="caption1" class="tit_2" style="left:5px; top:10px; width:110px; height:13px; ">상용구 리스트</caption>
  170. <line id="line1" class="line_1" style="x1:0px; y1:25px; x2:500px; y2:25px; "/>
  171. <line id="line3" class="line_2" style="x1:0px; y1:53px; x2:500px; y2:53px; "/>
  172. <caption id="cap_dtmntitl" class="cell_1" style="left:0px; top:30px; width:105px; height:23px; text-align:center; vertical-align:middle; ">그룹</caption>
  173. <select1 id="cmb_chnlflag" ref="/root/send/info/chnlflag" class="combo_default" appearance="minimal" style="left:108px; top:31px; width:67px; height:19px; ">
  174. <choices>
  175. <item>
  176. <label>SMS</label>
  177. <value>S</value>
  178. </item>
  179. <item>
  180. <label>Email</label>
  181. <value>E</value>
  182. </item>
  183. </choices>
  184. <script type="javascript" ev:event="xforms-select">
  185. <![CDATA[
  186. // 선택한 업무구분(S:SMS, E:Email)에 따른 채널관리 대분류를 가져온다.
  187. fGetChnlLrgCd();
  188. model.setFocus("cmb_msglrgcd");
  189. ]]>
  190. </script>
  191. </select1>
  192. <select1 id="cmb_msglrgcd" ref="/root/main/emailattr/msglrgcd" class="combo_default" appearance="minimal" style="left:178px; top:31px; width:150px; height:19px; ">
  193. <choices>
  194. <itemset nodeset="/root/init/chnllrglist/chnllrggrup">
  195. <label ref="msglrgnm"/>
  196. <value ref="msglrgcd"/>
  197. </itemset>
  198. </choices>
  199. <script type="javascript" ev:event="xforms-select">
  200. <![CDATA[
  201. // 기존에 선택된 중분류를 초기화한다.
  202. model.removenodeset("/root/init/chnlmdllist/chnlmdlgrup");
  203. // 선택한 채널관리 대분류에 따른 채널관리 중분류를 가져온다.
  204. fGetChnlMdlCd();
  205. model.setFocus("cmb_msgmdlcd");
  206. ]]>
  207. </script>
  208. </select1>
  209. <select1 id="cmb_msgmdlcd" ref="/root/main/emailattr/msgmdlcd" class="combo_default" appearance="minimal" style="left:331px; top:31px; width:150px; height:19px; ">
  210. <choices>
  211. <itemset nodeset="/root/init/chnlmdllist/chnlmdlgrup">
  212. <label ref="msgmdlnm"/>
  213. <value ref="msgmdlcd"/>
  214. </itemset>
  215. </choices>
  216. <script type="javascript" ev:event="xforms-select">
  217. <![CDATA[
  218. // 메시지 리스트를 초기화한다.
  219. model.removenodeset("/root/main/msgsmllist");
  220. // 선택한 채널관리 대분류에 따른 채널관리 중분류를 가져온다.
  221. fGetChnlSmlCd();
  222. ]]>
  223. </script>
  224. </select1>
  225. </group>
  226. <switch id="switch2" style="left:0px; top:57px; width:501px; height:386px; border-color:#c7a3cf; border-style:solid; ">
  227. <case id="case1" selected="true">
  228. <datagrid id="grd_emaillist" nodeset="/root/main/msgsmllist" caption="메시지코드^이메일제목^" colwidth="100, 350," dataheight="23" ellipsis="true" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="23" tooltip="true" style="left:0px; top:0px; width:499px; height:204px; ">
  229. <col ref="msgsmlcd"/>
  230. <col ref="emailtitl"/>
  231. <col ref="smstrsmcntcno" visibility="hidden"/>
  232. <script type="javascript" ev:event="ondblclick">
  233. <![CDATA[
  234. if( grd_emaillist.isCell(event.target) && grd_emaillist.row >= grd_emaillist.fixedRows ){
  235. fGetEmailAttr(); // Email메시지 정보조회
  236. }
  237. ]]>
  238. </script>
  239. </datagrid>
  240. <caption id="caption2" class="tit_2" style="left:5px; top:214px; width:118px; height:14px; ">이메일 상세 내용</caption>
  241. <line id="line4" class="line_1" style="x1:0px; y1:229px; x2:499px; y2:229px; "/>
  242. <caption id="cap_emailbdtext" class="cell_1" style="left:0px; top:283px; width:90px; height:100px; vertical-align:middle; ">내용</caption>
  243. <textarea id="tar_emailbdtext" ref="/root/main/emailattr/emailbdtext" class="text_essential" disabled="true" navindex="4" style="left:93px; top:283px; width:387px; height:100px; "/>
  244. <line id="line24" class="line_2" style="x1:0px; y1:256px; x2:499px; y2:256px; "/>
  245. <input id="ipt_replemail" ref="/root/main/emailattr/replemail" class="input_essential" disabled="true" navindex="1" style="left:93px; top:234px; width:202px; height:19px; "/>
  246. <caption id="cap_replemail" class="cell_1" style="left:0px; top:233px; width:90px; height:23px; vertical-align:middle; ">보내는이</caption>
  247. <line id="line6" class="line_2" style="x1:0px; y1:281px; x2:499px; y2:281px; "/>
  248. <caption id="cap_emailtitl" class="cell_1" style="left:0px; top:258px; width:90px; height:23px; vertical-align:middle; ">제목</caption>
  249. <input id="ipt_emailtitl" ref="/root/main/emailattr/emailtitl" class="input_essential" disabled="true" navindex="3" style="left:93px; top:259px; width:387px; height:19px; "/>
  250. <caption id="cap_recvrnm" class="cell_1" style="left:298px; top:233px; width:57px; height:23px; vertical-align:middle; ">이름</caption>
  251. <input id="ipt_recvrnm" ref="/root/main/emailattr/recvrnm" class="input_essential" disabled="true" navindex="1" style="left:358px; top:235px; width:122px; height:19px; "/>
  252. </case>
  253. <case id="case2">
  254. <datagrid id="grd_msglist" nodeset="/root/main/msgsmllist" caption="메시지코드^메시지^" colwidth="100, 350," dataheight="23" ellipsis="true" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="23" tooltip="true" style="left:0px; top:0px; width:499px; height:204px; ">
  255. <col ref="msgsmlcd"/>
  256. <col ref="msgcnts"/>
  257. <col ref="smstrsmcntcno" visibility="hidden"/>
  258. <script type="javascript" ev:event="ondblclick">
  259. <![CDATA[
  260. var row = grd_msglist.row;
  261. var msgcnts = grd_msglist.valueMatrix(row, grd_msglist.colRef("msgcnts"));
  262. var msgsmlcd = grd_msglist.valueMatrix(row, grd_msglist.colRef("msgsmlcd"));
  263. var smstrsmcntcno = grd_msglist.valueMatrix(row, grd_msglist.colRef("smstrsmcntcno"));
  264. var msglrgcd = model.getValue("/root/main/emailattr/msglrgcd")
  265. var msgmdlcd = model.getValue("/root/main/emailattr/msgmdlcd")
  266. model.setValue("/root/main/msgattr/msgsmlcd", msgsmlcd);
  267. model.setValue("/root/main/msgattr/msgcnts", msgcnts);
  268. model.setValue("/root/main/msgattr/smstrsmcntcno", smstrsmcntcno);
  269. model.setValue("/root/main/msgattr/msglrgcd", msglrgcd);
  270. model.setValue("/root/main/msgattr/msgmdlcd", msgmdlcd);
  271. tar_contents.refresh();
  272. ipt_callback.refresh();
  273. ]]>
  274. </script>
  275. </datagrid>
  276. <caption id="caption3" class="tit_2" style="left:5px; top:214px; width:148px; height:14px; ">SMS 메시지 내용</caption>
  277. <line id="line2" class="line_1" style="x1:0px; y1:229px; x2:499px; y2:229px; "/>
  278. <line id="line5" class="line_2" style="x1:0px; y1:256px; x2:499px; y2:256px; "/>
  279. <caption id="caption5" class="cell_1" style="left:0px; top:233px; width:90px; height:23px; text-align:center; vertical-align:middle; ">회신번호</caption>
  280. <input id="ipt_callback" ref="/root/main/msgattr/smstrsmcntcno" class="input_essential" disabled="true" navindex="1" style="left:93px; top:234px; width:202px; height:19px; "/>
  281. <caption id="caption4" class="cell_1" style="left:0px; top:258px; width:90px; height:125px; text-align:center; vertical-align:middle; ">메 시 지</caption>
  282. <textarea id="tar_contents" ref="/root/main/msgattr/msgcnts" class="text_essential" disabled="true" navindex="4" style="left:93px; top:258px; width:387px; height:125px; "/>
  283. </case>
  284. </switch>
  285. <group id="grp_btn" scroll="auto" style="left:0px; top:443px; width:501px; height:27px; ">
  286. <button id="btn_confirm" class="btn4_letter2" style="left:385px; top:5px; width:56px; height:22px; ">
  287. <caption>확인</caption>
  288. <script type="javascript" ev:event="DOMActivate">
  289. <![CDATA[
  290. var receive_msglrgcd_path = opener.window.javascript.getParameter("receive_msglrgcd_path");
  291. var receive_msgmdlcd_path = opener.window.javascript.getParameter("receive_msgmdlcd_path");
  292. var receive_msgsmlcd_path = opener.window.javascript.getParameter("receive_msgsmlcd_path");
  293. var receive_msgcnts_path = opener.window.javascript.getParameter("receive_msgcnts_path");
  294. var receive_emailtitl_path = opener.window.javascript.getParameter("receive_emailtitl_path");
  295. var chnlflag = model.getValue("/root/send/info/chnlflag");
  296. if (chnlflag == "S") {
  297. var msglrgcd = model.getValue("/root/main/msgattr/msglrgcd");
  298. var msgmdlcd = model.getValue("/root/main/msgattr/msgmdlcd");
  299. var msgsmlcd = model.getValue("/root/main/msgattr/msgsmlcd");
  300. var msgcnts = model.getValue("/root/main/msgattr/msgcnts");
  301. } else {
  302. var msglrgcd = model.getValue("/root/main/emailattr/msglrgcd");
  303. var msgmdlcd = model.getValue("/root/main/emailattr/msgmdlcd");
  304. var msgsmlcd = model.getValue("/root/main/emailattr/msgsmlcd");
  305. var emailtitl = model.getValue("/root/main/emailattr/emailtitl");
  306. }
  307. if (receive_msglrgcd_path != "") {
  308. opener.model.makeValue(receive_msglrgcd_path, msglrgcd);
  309. }
  310. if (receive_msgmdlcd_path != "") {
  311. opener.model.makeValue(receive_msgmdlcd_path, msgmdlcd);
  312. }
  313. if (receive_msgsmlcd_path != "") {
  314. opener.model.makeValue(receive_msgsmlcd_path, msgsmlcd);
  315. }
  316. if (receive_msgcnts_path != "") {
  317. opener.model.makeValue(receive_msgcnts_path, msgcnts);
  318. }
  319. if (receive_emailtitl_path != "") {
  320. opener.model.makeValue(receive_emailtitl_path, emailtitl);
  321. }
  322. opener.model.refresh();
  323. window.close();
  324. ]]>
  325. </script>
  326. </button>
  327. <button id="btn_cancel" class="btn4_letter2" style="left:444px; top:5px; width:56px; height:22px; ">
  328. <caption>취소</caption>
  329. <script type="javascript" ev:event="DOMActivate">
  330. <![CDATA[
  331. window.close();
  332. ]]>
  333. </script>
  334. </button>
  335. <line id="line32" class="line_6" style="x1:0px; y1:0px; x2:501px; y2:0px; "/>
  336. </group>
  337. </xhtml:body>
  338. </xhtml:html>