SMAYA01400_성사 및 미사관리.xrw 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424
  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. <divsvcmassclslist>
  11. <divsvcmassclslistinfo>
  12. <clsflag/>
  13. <clscd/>
  14. <clssupcd/>
  15. <clsnm/>
  16. <scrncd/>
  17. <depth/>
  18. <pathcd/>
  19. </divsvcmassclslistinfo>
  20. </divsvcmassclslist>
  21. <cond>
  22. <clsnm/>
  23. <clscd/>
  24. <reffromdd/>
  25. <reftodd/>
  26. <sort>1</sort>
  27. <depth/>
  28. </cond>
  29. <divsvcmassschelist>
  30. <divsvcmassschelistinfo>
  31. <clsnm/>
  32. <titlnm/>
  33. <fromdd/>
  34. <fromtm/>
  35. <totm/>
  36. <plcenm/>
  37. <pastornm/>
  38. <voluntrnm/>
  39. <trgtpsnqty/>
  40. <chrgconslrnm/>
  41. <pastorid/>
  42. <chrgconslrid/>
  43. <clscd/>
  44. <seqno/>
  45. <todd/>
  46. <scrncd/>
  47. <clsflag/>
  48. <outerpastoryn/>
  49. <status/>
  50. <schecnts/>
  51. </divsvcmassschelistinfo>
  52. </divsvcmassschelist>
  53. </main>
  54. <send>
  55. <reqdata/>
  56. <removedata/>
  57. </send>
  58. <init>
  59. <insupdtvalue/>
  60. </init>
  61. <hidden/>
  62. </root>
  63. </instance>
  64. <script type="javascript" ev:event="xforms-ready">
  65. <![CDATA[
  66. fInit();
  67. ]]>
  68. </script>
  69. <submission id="TRZBC00101" mediatype="application/x-www-form-urlencoded" method="post" replace="instance"/>
  70. <submission id="TRAYA01401" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/init" resultref="/root/main/divsvcmassclslist"/>
  71. <submission id="TRAYA01402" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/divsvcmassschelist"/>
  72. <submission id="TXAYA01401" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/removedata" resultref="/root/main/divsvcmassschelist"/>
  73. </model>
  74. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  75. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  76. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  77. <script type="javascript">
  78. <![CDATA[
  79. //화면 오픈시
  80. function fInit() {
  81. //alert(getUserInfo("usernm"));
  82. //성사/미사일정 조회 그리드 초기화
  83. model.removeNodeset("/root/main/divsvcmassschelist/divsvcmassschelistinfo");
  84. grd_divsvcmassschelist.refresh();
  85. //성사/미사리스트 트리구조를 조회
  86. model.makeNode("/root/send/clsflag");
  87. model.makeValue("/root/init/clsflag",'C'); //clsflag값을 'C'로 넘기기
  88. submit("TRAYA01401");
  89. //조회기간 오늘 날짜로 세팅
  90. var CurrentDate = getCurrentDate();
  91. model.setValue("/root/main/cond/reffromdd", CurrentDate.substr(0, 6) + "01");
  92. model.setValue("/root/main/cond/reftodd", CurrentDate);
  93. trv_divsvcmassclslist.select(0);
  94. fSelectedTree();
  95. model.refresh();
  96. }
  97. //조회버튼 클릭시
  98. function fRef() {
  99. var clscd = model.getValue("/root/main/cond/clscd");
  100. var depth = model.getValue("/root/main/divsvcmassclslist/divsvcmassclslistinfo[clscd='" + clscd + "']/depth");
  101. /*
  102. if (depth == '1') {
  103. messageBox("최상위 레벨은 조회", "E001");
  104. return;
  105. }
  106. */
  107. model.setValue("/root/main/cond/depth", depth);
  108. model.copyNode("/root/send/reqdata","/root/main/cond");
  109. // reqGetDivSvcMassScheListInfo
  110. // getPrgmScheListInfo
  111. submit("TRAYA01402");
  112. model.refresh();
  113. }
  114. //트리리스트 클릭시
  115. function fSelectedTree() {
  116. //트리리스트에서 선택한 clscd 값
  117. var clscd = model.getValue("/root/main/cond/clscd");
  118. //성사/미사 리스트 트리구조 선택시 조회조건의 성사/미사명에 셋팅
  119. model.setValue("/root/main/cond/clsnm", model.getValue("/root/main/divsvcmassclslist/divsvcmassclslistinfo[clscd='" + clscd + "']/clsnm"));
  120. model.refresh();
  121. }
  122. //등록버튼 클릭시
  123. function fRgstDivSvcMassSche() {
  124. //트리리스트에서 선택한 clscd 값
  125. var clscd = model.getValue("/root/main/cond/clscd");
  126. var clsflag = model.getValue("/root/main/divsvcmassclslist/divsvcmassclslistinfo[clscd='" + clscd + "']/clsflag"); //'분류구분 교육(A), 행사(B), 성사 및 미사(C), 교직원 단체(D)'
  127. //팝업 등록화면으로 가져가는 parameter값
  128. var clsnmvalue = setParameter("condclsnm", model.getValue("/root/main/cond/clsnm")); //팝업 등록화면의 성사/미사명에 값 가져가기
  129. var clscdvalue = setParameter("condclscd", model.getValue("/root/main/cond/clscd")); //팝업 등록화면으로 화면코드 값 가져가기
  130. var scrncdvalue = setParameter("scrncd", model.getValue("/root/main/divsvcmassclslist/divsvcmassclslistinfo[clscd='" + clscd + "']/scrncd")); //팝업 등록화면으로 화면코드 값 가져가기
  131. var clsflag = setParameter("clsflag", clsflag);
  132. var statusvalue = setParameter("scrnstatus",'ins'); //팝업 등록화면으로 상태 값 가져가기
  133. var rgstclsnm = model.getValue("/root/main/cond/clsnm");
  134. /*
  135. if (clscd == '' || rgstclsnm == "") {
  136. messageBox("등록할 성사/미사명을 성사/미사리스트에서", "C002");//행사명을 선택하지 않았을 경우
  137. } else if(clscd != '' && (scrncdvalue.charAt(0) != clsflag)){
  138. messageBox("'" + clsnm + "' 하위에 성사/미사가 존재합니다. 최하위 행사를", "C002");//최하위 레벨이 아닐경우
  139. */
  140. if (rgstclsnm == "") { //성사/미사명명을 선택하지 않았을 경우
  141. //messageBox("등록할 성사/미사명을 ", "C002");
  142. messageBox("등록할 성사/미사명을 성사/미사리스트에서", "C002");//행사명을 선택하지 않았을 경우
  143. } else {
  144. //트리구조 성사/미사 리스트의 최하위레벨로만 등록하도록 함
  145. var scrncd = model.getValue("/root/main/divsvcmassclslist/divsvcmassclslistinfo[clscd = '" + clscd + "']/scrncd");
  146. var clsflag = model.getValue("/root/main/divsvcmassclslist/divsvcmassclslistinfo[clscd = '" + clscd + "']/clsflag");
  147. if ((scrncd.charAt(0)) == clsflag ) {
  148. modal("SPAYA01500",1,100,100);
  149. //modal("SPAYA01500",null,null,null, "SPAYA01500", "/root/actsource", "/root/main/actsource");
  150. freRef();
  151. }
  152. else{
  153. //messageBox("최하위 레벨의 성사/미사명을 ", "C002");
  154. messageBox("'" + rgstclsnm + "' 하위에 성사/미사가 존재합니다. 최하위 성사/미사를", "C002");//최하위 레벨이 아닐경우
  155. }
  156. }
  157. }
  158. //수정버튼 클릭시
  159. function fUpdtDivSvcMassSche() {
  160. var idxRow = grd_divsvcmassschelist.row; //그리드에서 해당 성사/미사 선택
  161. if (idxRow < 1) return;
  162. var clscd = model.getValue("/root/main/cond/clscd");
  163. var rowclscd = setParameter("grd_clscd",model.getValue("/root/main/divsvcmassschelist/divsvcmassschelistinfo[" + idxRow + "]/clscd"));
  164. var rowfromdd = setParameter("grd_fromdd",model.getValue("/root/main/divsvcmassschelist/divsvcmassschelistinfo[" + idxRow + "]/fromdd"));
  165. var rowseqno = setParameter("grd_seqno",model.getValue("/root/main/divsvcmassschelist/divsvcmassschelistinfo[" + idxRow + "]/seqno"));
  166. //var scrncdvalue = setParameter("scrncd", model.getValue("/root/main/divsvcmassclslist/divsvcmassclslistinfo[clscd='" + clscd + "']/scrncd")); //팝업 등록화면으로 화면코드 값 가져가기
  167. var scrncdvalue = setParameter("scrncd", model.getValue("/root/main/divsvcmassschelist/divsvcmassschelistinfo[" + idxRow + "]/scrncd")); //팝업 등록화면으로 화면코드 값 가져가기
  168. var clsflag = setParameter("clsflag", model.getValue("/root/main/divsvcmassschelist/divsvcmassschelistinfo[" + idxRow + "]/clsflag")); //팝업 등록화면으로 화면코드 값 가져가기
  169. var statusvalue = setParameter("scrnstatus",'updt'); //팝업 등록화면으로 상태 값 가져가기
  170. var rowpastornm = setParameter("grd_pastornm",model.getValue("/root/main/divsvcmassschelist/divsvcmassschelistinfo[" + idxRow + "]/pastornm"));
  171. //alert(model.getValue("/root/main/divsvcmassschelist/divsvcmassschelistinfo[" + idxRow + "]/pastornm"));
  172. modal("SPAYA01500",1,100,100);
  173. //modal("SPAYA01500",null,null,null, "SPAYA01500", "/root/actsource", "/root/main/actsource");
  174. freRef();
  175. /*
  176. if (idxRow == 1 ) {
  177. modal("SPAYA01500",1,100,100);
  178. freRef();
  179. }
  180. else { //idxRow == -1
  181. messageBox("수정할 일정을","C002");
  182. return;
  183. }
  184. */
  185. }
  186. //저장, 수정 후 재조회
  187. function freRef() {
  188. var InsUpdtValue = model.getValue("/root/init/insupdtvalue"); //저장, 수정 여부
  189. var reffromdd = model.getValue("/root/main/cond/reffromdd");
  190. var reftodd = model.getValue("/root/main/cond/reftodd");
  191. if (InsUpdtValue == 'y' && reffromdd != "" && reftodd != "") {
  192. fRef();
  193. } else {
  194. return;
  195. }
  196. }
  197. //삭제버튼 클릭시
  198. function fDelDivSvcMassSche() {
  199. var idxRow = grd_divsvcmassschelist.row; //그리드에서 해당 성사/미사 선택
  200. if ( model.getValue("/root/main/divsvcmassschelist/divsvcmassschelistinfo[" + idxRow + "]/clsnm") != ""){
  201. var btn = messageBox("선택 일정을 ", "Q001");
  202. if (btn == '6') {
  203. model.removeNodeset("/root/send/removedata");
  204. model.makeNode("/root/send/removedata");
  205. model.makeNode("/root/send/removedata/clscd");
  206. model.makeNode("/root/send/removedata/fromdd");
  207. model.makeNode("/root/send/removedata/seqno");
  208. model.makeNode("/root/send/removedata/reffromdd");
  209. model.makeNode("/root/send/removedata/reftodd");
  210. model.makeNode("/root/send/removedata/scrncd");
  211. model.makeNode("/root/send/removedata/status");
  212. model.setValue("/root/send/removedata/clscd",model.getValue("/root/main/divsvcmassschelist/divsvcmassschelistinfo[" + idxRow + "]/clscd"));
  213. model.setValue("/root/send/removedata/fromdd",model.getValue("/root/main/divsvcmassschelist/divsvcmassschelistinfo[" + idxRow + "]/fromdd"));
  214. model.setValue("/root/send/removedata/seqno",model.getValue("/root/main/divsvcmassschelist/divsvcmassschelistinfo[" + idxRow + "]/seqno"));
  215. model.setValue("/root/send/removedata/reffromdd",model.getValue("/root/main/cond/reffromdd"));
  216. model.setValue("/root/send/removedata/reftodd",model.getValue("/root/main/cond/reftodd"));
  217. model.setValue("/root/send/removedata/scrncd",model.getValue("/root/main/divsvcmassschelist/divsvcmassschelistinfo[" + idxRow + "]/scrncd"));
  218. model.setValue("/root/send/removedata/status",'d');
  219. // reqDelDivSvcMassScheInfo
  220. // delPrgmScheInfo
  221. if (submit("TXAYA01401", false) == true)
  222. {
  223. fRef();
  224. }
  225. } else if (btn == '7') {
  226. return;
  227. }
  228. } else {
  229. messageBox("삭제할 일정을", "C002");
  230. }
  231. }
  232. // 출력
  233. function fPreview()
  234. {
  235. exeReportPreview("RPAYA01401", "XMLSTR");
  236. /*
  237. if(chk_lookaheadyn.value == "Y"){
  238. exeReportPreview("RPAHA00404", "XMLSTR");
  239. }
  240. else {
  241. exeReportPreview("RPAYA00201", "XMLSTR" , "" , "" , "true" , "", "", "", "", "true");
  242. }
  243. */
  244. }
  245. // 트리 더블 클릭
  246. function fDbClickTree()
  247. {
  248. var clscd = model.getValue("/root/main/cond/clscd");
  249. var scrncd = model.getValue("/root/main/divsvcmassclslist/divsvcmassclslistinfo[clscd = '" + clscd + "']/scrncd");
  250. var clsflag = model.getValue("/root/main/divsvcmassclslist/divsvcmassclslistinfo[clscd = '" + clscd + "']/clsflag");
  251. if ((scrncd.charAt(0)) == clsflag ) {
  252. fRgstDivSvcMassSche();
  253. }
  254. }
  255. ]]>
  256. </script>
  257. </xhtml:head>
  258. <xhtml:body guideline="1,1194;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  259. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  260. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:147px; height:14px; ">성사 및 미사관리</caption>
  261. </group>
  262. <group id="group3" scroll="auto" style="left:0px; top:13px; width:1195px; height:744px; ">
  263. <treeview id="trv_divsvcmassclslist" ref="/root/main/cond/clscd" expanddepth="3" itemsettype="depth" style="left:0px; top:30px; width:290px; height:710px; ">
  264. <itemset nodeset="/root/main/divsvcmassclslist/divsvcmassclslistinfo">
  265. <label ref="clsnm"/>
  266. <value ref="clscd"/>
  267. <depth ref="depth"/>
  268. </itemset>
  269. <script type="javascript" ev:event="xforms-select">
  270. <![CDATA[
  271. fSelectedTree();
  272. ]]>
  273. </script>
  274. <script type="javascript" ev:event="ondblclick">
  275. <![CDATA[
  276. fDbClickTree();
  277. ]]>
  278. </script>
  279. </treeview>
  280. <caption id="caption1" class="tit_2" style="left:300px; top:85px; width:190px; height:13px; ">성사/미사일정 조회</caption>
  281. <line id="line1" class="line_1" style="x1:0px; y1:25px; x2:290px; y2:25px; ">-</line>
  282. <caption id="caption2" class="tit_2" style="left:5px; top:10px; width:145px; height:14px; ">성사/미사 리스트</caption>
  283. <group id="group4" style="left:295px; top:10px; width:899px; height:65px; vertical-align:top; ">
  284. <shape id="roundrect1" class="roundrect_search" appearance="roundrect" style="left:0px; top:0px; width:899px; height:60px; "/>
  285. <button id="button5" class="btn1_letter2" style="left:825px; top:20px; width:56px; height:22px; ">
  286. <caption>조회</caption>
  287. <script type="javascript" ev:event="DOMActivate">
  288. <![CDATA[
  289. fRef();
  290. ]]>
  291. </script>
  292. </button>
  293. <line id="line13" class="line_4" style="x1:807px; y1:10px; x2:807px; y2:53px; "/>
  294. <caption id="caption3" class="search_name" style="left:15px; top:20px; width:119px; height:17px; ">성사/미사명 :</caption>
  295. <caption id="caption4" class="search_name" style="left:340px; top:10px; width:91px; height:17px; ">조회기간 :</caption>
  296. <caption id="caption7" class="search_no_b" style="left:543px; top:10px; width:12px; height:17px; ">~</caption>
  297. <input id="input2" ref="/root/main/cond/reftodd" class="input_search" inputtype="date" style="left:560px; top:10px; width:100px; height:19px; "/>
  298. <input id="input3" ref="/root/main/cond/reffromdd" class="input_search" inputtype="date" style="left:440px; top:10px; width:100px; height:19px; "/>
  299. <output id="opt_clsnm" ref="/root/main/cond/clsnm" class="output_search" style="left:135px; top:20px; width:135px; height:19px; "/>
  300. <caption id="caption5" class="search_name" style="left:340px; top:35px; width:101px; height:17px; ">정렬기준 :</caption>
  301. <select1 id="radio1" ref="/root/main/cond/sort" appearance="full" cellspacing="6" cols="4" rows="1" overflow="visible" style="left:440px; top:35px; width:335px; height:17px; border-style:none; ">
  302. <choices>
  303. <item>
  304. <label>일자별</label>
  305. <value>1</value>
  306. </item>
  307. <item>
  308. <label>성사/미사명별</label>
  309. <value>2</value>
  310. </item>
  311. <item>
  312. <label>주례자별</label>
  313. <value>3</value>
  314. </item>
  315. <item>
  316. <label>담당원목자별</label>
  317. <value>4</value>
  318. </item>
  319. </choices>
  320. <script type="javascript" ev:event="xforms-select">
  321. <![CDATA[
  322. fRef();
  323. ]]>
  324. </script>
  325. </select1>
  326. </group>
  327. <line id="line5" class="line_1" style="x1:295px; y1:100px; x2:1194px; y2:100px; "/>
  328. <datagrid id="grd_divsvcmassschelist" nodeset="/root/main/divsvcmassschelist/divsvcmassschelistinfo" autoresize="true" caption="성사/미사명^비고^시작일자^시작시간^종료시간^장소^주례자^봉사자^대상인원^담당원목자^caption1^caption2^caption3^caption4^caption5^caption6^caption7^caption8^caption9^caption10" colsep="^" colwidth="125, 123, 80, 60, 60, 98, 100, 80, 65, 70, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100" dataheight="25" explorerbar="sortshowmove" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="25" rowsep="|" style="left:295px; top:105px; width:899px; height:630px; ">
  329. <col ref="clsnm"/>
  330. <col ref="titlnm"/>
  331. <col ref="fromdd" format="yyyy-mm-dd" style="text-align:center; "/>
  332. <col ref="fromtm" format="hh:nn" style="text-align:center; "/>
  333. <col ref="totm" format="hh:nn" style="text-align:center; "/>
  334. <col ref="plcenm"/>
  335. <col ref="pastornm" style="text-align:center; "/>
  336. <col ref="voluntrnm" style="text-align:center; "/>
  337. <col ref="trgtpsnqty" style="text-align:right; "/>
  338. <col ref="chrgconslrnm" style="text-align:center; "/>
  339. <col ref="pastorid" visibility="hidden"/>
  340. <col ref="chrgconslrid" visibility="hidden"/>
  341. <col ref="clscd" visibility="hidden"/>
  342. <col ref="seqno" visibility="hidden"/>
  343. <col ref="todd" visibility="hidden"/>
  344. <col ref="scrncd" visibility="hidden"/>
  345. <col ref="clsflag" visibility="hidden"/>
  346. <col ref="outerpastoryn" visibility="hidden"/>
  347. <col ref="status" visibility="hidden"/>
  348. <col ref="schecnts" visibility="hidden"/>
  349. <script type="javascript" ev:event="ondblclick">
  350. <![CDATA[
  351. fUpdtDivSvcMassSche();
  352. ]]>
  353. </script>
  354. <script type="javascript" ev:event="onaftersort">
  355. <![CDATA[
  356. grd_divsvcmassschelist.gridToInstance();
  357. ]]>
  358. </script>
  359. </datagrid>
  360. <button id="btn_print" class="btn2_letter2" style="left:1130px; top:79px; width:42px; height:19px; ">
  361. <caption>출력</caption>
  362. <script type="javascript" ev:event="DOMActivate">
  363. <![CDATA[
  364. fPreview();
  365. ]]>
  366. </script>
  367. </button>
  368. </group>
  369. <group id="group5" scroll="auto" style="left:0px; top:757px; width:1195px; height:27px; ">
  370. <line id="line37" class="line_6" style="x1:0px; y1:0px; x2:1194px; y2:0px; "/>
  371. </group>
  372. <button id="button4" class="btn4_letter2" style="left:1017px; top:760px; width:56px; height:22px; ">
  373. <caption>등록</caption>
  374. <script type="javascript" ev:event="DOMActivate">
  375. <![CDATA[
  376. fRgstDivSvcMassSche();
  377. ]]>
  378. </script>
  379. </button>
  380. <button id="button2" class="btn4_letter2" style="left:1077px; top:760px; width:56px; height:22px; ">
  381. <caption>수정</caption>
  382. <script type="javascript" ev:event="DOMActivate">
  383. <![CDATA[
  384. fUpdtDivSvcMassSche();
  385. ]]>
  386. </script>
  387. </button>
  388. <button id="button9" class="btn4_letter2" style="left:1138px; top:760px; width:56px; height:22px; ">
  389. <caption>삭제</caption>
  390. <script type="javascript" ev:event="DOMActivate">
  391. <![CDATA[
  392. fDelDivSvcMassSche();
  393. ]]>
  394. </script>
  395. </button>
  396. </xhtml:body>
  397. </xhtml:html>