SMAYA00100_당직 및 연간일정등록관리.xrw 99 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/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. <cond_cal>
  11. <year/>
  12. <month/>
  13. </cond_cal>
  14. <cond_rgstngdt>
  15. <rgstflagcd/>
  16. <ngdtfromdd/>
  17. <ngdttodd/>
  18. <ngdtdwcd/>
  19. </cond_rgstngdt>
  20. <cond_refngdt>
  21. <conslrid/>
  22. <ngdt_refyear/>
  23. <ngdt_refmonth>A</ngdt_refmonth>
  24. <ngdt_refyymm/>
  25. <ngdt_refflag/>
  26. </cond_refngdt>
  27. <cond_refyy>
  28. <conslrid/>
  29. <yy_refyear/>
  30. <yy_refmonth>A</yy_refmonth>
  31. <yy_refyymm/>
  32. </cond_refyy>
  33. <conslrlist>
  34. <conslrlistinfo>
  35. <chk/>
  36. <conslrid/>
  37. <conslrnm/>
  38. <mpphontel/>
  39. <depttel/>
  40. <fromdd/>
  41. <todd/>
  42. <fromtm/>
  43. <totm/>
  44. <scheflagcd/>
  45. <schecntscd/>
  46. <cost/>
  47. <diplyn/>
  48. <plcenm/>
  49. <rem/>
  50. <clscntscd/>
  51. <status/>
  52. </conslrlistinfo>
  53. </conslrlist>
  54. <cal>
  55. <weeks>
  56. <sun/>
  57. <mon/>
  58. <tue/>
  59. <wed/>
  60. <thu/>
  61. <fri/>
  62. <sat/>
  63. </weeks>
  64. <weeks>
  65. <sun/>
  66. <mon/>
  67. <tue/>
  68. <wed/>
  69. <thu/>
  70. <fri/>
  71. <sat/>
  72. </weeks>
  73. <weeks>
  74. <sun/>
  75. <mon/>
  76. <tue/>
  77. <wed/>
  78. <thu/>
  79. <fri/>
  80. <sat/>
  81. </weeks>
  82. <weeks>
  83. <sun/>
  84. <mon/>
  85. <tue/>
  86. <wed/>
  87. <thu/>
  88. <fri/>
  89. <sat/>
  90. </weeks>
  91. <weeks>
  92. <sun/>
  93. <mon/>
  94. <tue/>
  95. <wed/>
  96. <thu/>
  97. <fri/>
  98. <sat/>
  99. </weeks>
  100. <weeks>
  101. <sun/>
  102. <mon/>
  103. <tue/>
  104. <wed/>
  105. <thu/>
  106. <fri/>
  107. <sat/>
  108. </weeks>
  109. </cal>
  110. <caldatalist>
  111. <caldatainfo>
  112. <basedd/>
  113. <dutflag/>
  114. <day/>
  115. <dw/>
  116. <weekno/>
  117. <rgst_conslrnm/>
  118. <rgst_conslrid/>
  119. </caldatainfo>
  120. </caldatalist>
  121. <ngdtschelist>
  122. <ngdtschelistinfo>
  123. <chk/>
  124. <ngdtddday/>
  125. <rem/>
  126. <conslrid/>
  127. <ngdtdd/>
  128. <seqno/>
  129. <status/>
  130. </ngdtschelistinfo>
  131. </ngdtschelist>
  132. <yyschelist>
  133. <yyschelistinfo>
  134. <chk/>
  135. <fromdd/>
  136. <todd/>
  137. <fromtm/>
  138. <totm/>
  139. <scheflagcd/>
  140. <schecntscd/>
  141. <clscntscd/>
  142. <cost/>
  143. <diplyn/>
  144. <plcenm/>
  145. <rem/>
  146. <conslrid/>
  147. <scheflagcd_a/>
  148. <seqno/>
  149. <status/>
  150. </yyschelistinfo>
  151. </yyschelist>
  152. <rptngdtdd>
  153. <rptngdtddinfo>
  154. <ngdtdd/>
  155. </rptngdtddinfo>
  156. </rptngdtdd>
  157. <ngdtschergst>
  158. <ngdtschergstinfo>
  159. <conslrid/>
  160. <conslrnm/>
  161. <ngdtdd/>
  162. <rem/>
  163. <status/>
  164. </ngdtschergstinfo>
  165. </ngdtschergst>
  166. <yyschergst>
  167. <yyschergstinfo>
  168. <conslrid/>
  169. <conslrnm/>
  170. <mpphontel/>
  171. <depttel/>
  172. <fromdd/>
  173. <todd/>
  174. <fromtm/>
  175. <totm/>
  176. <scheflagcd/>
  177. <schecntscd/>
  178. <cost/>
  179. <diplyn/>
  180. <plcenm/>
  181. <rem/>
  182. <clscntscd/>
  183. <status/>
  184. </yyschergstinfo>
  185. </yyschergst>
  186. <yyschecnts>
  187. <yyschecntsinfo>
  188. <fromdd/>
  189. <todd/>
  190. <fromtm/>
  191. <totm/>
  192. <scheflagcd/>
  193. <schecntscd/>
  194. <cost/>
  195. <diplyn>N</diplyn>
  196. <plcenm/>
  197. <rem/>
  198. <clscntscd>2</clscntscd>
  199. </yyschecntsinfo>
  200. </yyschecnts>
  201. </main>
  202. <send>
  203. <reqdata_calendar>
  204. <date/>
  205. </reqdata_calendar>
  206. <reqdata/>
  207. <savedata/>
  208. <combodata/>
  209. </send>
  210. <init>
  211. <combolist>
  212. <ngdtsche>
  213. <ngdtscheyear/>
  214. </ngdtsche>
  215. <yysche>
  216. <yyscheyear/>
  217. </yysche>
  218. <ngdtschelistinfo>
  219. <chk/>
  220. <ngdtddday/>
  221. <rem/>
  222. <conslrid/>
  223. <ngdtdd/>
  224. <seqno/>
  225. <status/>
  226. </ngdtschelistinfo>
  227. <yyschelistinfo>
  228. <chk/>
  229. <fromdd/>
  230. <todd/>
  231. <scheflagcd/>
  232. <schecntscd/>
  233. <cost/>
  234. <diplyn/>
  235. <plcenm/>
  236. <rem/>
  237. <conslrid/>
  238. <scheflagcd_a/>
  239. <seqno/>
  240. <status/>
  241. </yyschelistinfo>
  242. </combolist>
  243. <comcodelist>
  244. <ngdtdwcd_cmblist/>
  245. <scheflag_cmblist/>
  246. <schecnts_cmblist/>
  247. <schecnts_kindcmblist/>
  248. </comcodelist>
  249. <calyear/>
  250. </init>
  251. <hidden>
  252. </hidden>
  253. <temp/>
  254. </root>
  255. </instance>
  256. <script type="javascript" ev:event="xforms-ready">
  257. <![CDATA[
  258. fInit();
  259. //달력스타일 초기화
  260. fInitCalendarStyle();
  261. //달력 오늘날짜로 셋팅
  262. fInitCalendarYM();
  263. //달력정보 및 일자별 담당원목자를 달력에 표시
  264. fSetCalendar();
  265. model.refresh();
  266. ]]>
  267. </script>
  268. <submission id="TRAYA00101" ref="/root/send/reqdata" method="post" mediatype="application/x-www-form-urlencoded" resultref="/root/main/conslrlist"/>
  269. <submission id="TRAYA00102" ref="/root/send/reqdata_calendar" method="post" mediatype="application/x-www-form-urlencoded" resultref="/root/main/caldatalist"/>
  270. <submission id="TRAYA00103" ref="/root/send/reqdata" method="post" mediatype="application/x-www-form-urlencoded" resultref="/root/main/ngdtschelist"/>
  271. <submission id="TRAYA00104" ref="/root/send/reqdata" method="post" mediatype="application/x-www-form-urlencoded" resultref="/root/main/yyschelist"/>
  272. <submission id="TRAYA00105" ref="/root/send/combodata" method="post" mediatype="application/x-www-form-urlencoded" resultref="/root/init/combolist"/>
  273. <submission id="TRAYA00106" ref="/root/send/reqdata" method="post" mediatype="application/x-www-form-urlencoded" resultref="/root/main/rptngdtdd"/>
  274. <submission id="TXAYA00101" ref="/root/send/savedata" method="post" mediatype="application/x-www-form-urlencoded" resultref="/root/temp"/>
  275. <submission id="TXAYA00102" ref="/root/send/savedata" method="post" mediatype="application/x-www-form-urlencoded" resultref="/root/temp"/>
  276. <submission id="TRZBC00105" method="post" mediatype="application/x-www-form-urlencoded"/>
  277. <submission id="TRZBC00101" method="post" mediatype="application/x-www-form-urlencoded" replace="instance"/>
  278. </model>
  279. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  280. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  281. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  282. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  283. <script type="javascript" src="../../../com/commonweb/js/utilHelper.js"/>
  284. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  285. <script type="javascript">
  286. <![CDATA[
  287. //화면 오픈시
  288. function fInit() {
  289. swt_sche.selectedIndex = 0;
  290. //그리드 초기화
  291. model.removeNodeset("/root/main/conslrlist/conslrlistinfo");
  292. model.removeNodeset("/root/main/ngdtschelist/ngdtschelistinfo");
  293. model.removeNodeset("/root/main/yyschelist/yyschelistinfo");
  294. model.removeNodeset("/root/main/ngdtschergst/ngdtschergstinfo");
  295. model.removeNodeset("/root/main/yyschergst/yyschergstinfo");
  296. // 달력 년도 셋팅
  297. for (i = 0; i < 20; i++)
  298. {
  299. var currentdate = getCurrentDate().substr(0, 4);
  300. var label = parseInt(currentdate) + (-10 + i);
  301. var value = parseInt(currentdate) + (-10 + i);
  302. //alert(label)
  303. addComboItem("cmb_year", label, value, "after");
  304. }
  305. //그리드 체크박스 설정
  306. grd_conslrlist.fixedcellcheckbox(0,1) = true;
  307. grd_ngdtschelist.fixedcellcheckbox(0,1) = true;
  308. //grd_yyschelist.fixedcellcheckbox(0,1) = true;
  309. //일반등록모드 설정
  310. model.setValue("/root/main/cond_rgstngdt/rgstflagcd", 'G');
  311. ipt_ngdtfromdd.disabled = true;
  312. ipt_ngdttodd.disabled = true;
  313. cmb_ngdtdwcd.disabled = true;
  314. btn_select.visible = false;
  315. //model.refresh();
  316. //원목자리스트 조회
  317. model.makeValue("/root/send/reqdata/joblncd", "B");
  318. submit("TRAYA00101", false);
  319. //연간일정구분 , 연간일정내용 콤보리스트 조회
  320. zbcfGetCodeList(new Array("P0033", "A0217", "A0218"), new Array("/root/init/comcodelist/ngdtdwcd_cmblist", "/root/init/comcodelist/scheflag_cmblist", "/root/init/comcodelist/schecnts_cmblist"), true, new Array("cdid", "cdid", "cdid"));
  321. //연간일정내용 인스턴스에 flag 생성
  322. var schecntsCnt = getNodesetCnt(model1, "/root/init/comcodelist/schecnts_cmblist/A0218"); //달력 노드갯수
  323. for (var i = 1; i <= schecntsCnt; i++) {
  324. var schecntscd = model.getValue("/root/init/comcodelist/schecnts_cmblist/A0218[" + i + "]/cdid");
  325. var schecntsflag = schecntscd.substr(0,1);
  326. model.makeNode("/root/init/comcodelist/schecnts_cmblist/A0218[" + i + "]/flag");
  327. if ( schecntsflag == 'A' ) {
  328. model.setValue("/root/init/comcodelist/schecnts_cmblist/A0218[" + i + "]/flag", 'A');
  329. } else if ( schecntsflag == 'B' ) {
  330. model.setValue("/root/init/comcodelist/schecnts_cmblist/A0218[" + i + "]/flag", 'B');
  331. } else if ( schecntsflag == 'C' ) {
  332. model.setValue("/root/init/comcodelist/schecnts_cmblist/A0218[" + i + "]/flag", 'C');
  333. } else if ( schecntsflag == 'D' ) {
  334. model.setValue("/root/init/comcodelist/schecnts_cmblist/A0218[" + i + "]/flag", 'D');
  335. } else if ( schecntsflag == 'Z' ) {
  336. model.setValue("/root/init/comcodelist/schecnts_cmblist/A0218[" + i + "]/flag", 'Z');
  337. }
  338. }
  339. //model.refresh();
  340. // 20071117 현재달로 셋팅되도록 요청됨
  341. var currentmonth = getCurrentDate().substr(5, 2);
  342. //model.setValue("/root/main/cond_refngdt/ngdt_refmonth", 'A'); //조회 후 '전체'조회되므로 세팅
  343. model.setValue("/root/main/cond_refngdt/ngdt_refmonth", currentmonth); //조회 후 '전체'조회되므로 세팅
  344. model.refresh();
  345. }
  346. //달력스타일 초기화
  347. function fInitCalendarStyle() {
  348. //height
  349. grd_calendar.dataHeight = 64;
  350. //font style
  351. grd_calendar.allStyle("all", "font-size") = "15px";
  352. //달력 기본색 지정
  353. grd_calendar.allStyle("all", "background-color") = "#ffffff"; //흰색
  354. }
  355. //달력 오늘날짜로 셋팅
  356. function fInitCalendarYM() {
  357. var CurrentDate = getCurrentDate();
  358. var sYear = CurrentDate.substr(0,4);
  359. var sMonth = CurrentDate.substr(4,2);
  360. model.setValue("/root/main/cond_cal/year", sYear);
  361. model.setValue("/root/main/cond_cal/month", sMonth);
  362. //model.refresh();
  363. }
  364. //달력정보 및 일자별 담당원목자를 달력에 표시
  365. function fSetCalendar() {
  366. //서버로 자료 요청
  367. //달력조회
  368. if ( fGetHospitalCalendar() != true ){
  369. messageBox("병원일정 데이터를 가져올 수", "I004");
  370. //에러로 인한 초기화면으로 세팅
  371. //달력 오늘날짜로 셋팅
  372. fInitCalendarYM();
  373. //fCreateCalendar();
  374. return;
  375. } else {
  376. model.resetInstanceNode("/root/main/cal");
  377. }
  378. var oldday = 0;
  379. var newday = 0;
  380. var selDataCnt = getNodesetCnt(model1, "/root/main/caldatalist/caldatainfo");
  381. for ( i = 1; i <= selDataCnt; i++) {
  382. var row = model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/weekno");
  383. var col = eval(model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/dw"));
  384. var dutflag = model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/dutflag");
  385. newday = model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/day");
  386. if ( dutflag == "4"){ //토요일인 경우, 파란색 설정
  387. grd_calendar.cellStyle("color", row, col, row, col) = "#0000ff";
  388. } else if ( dutflag == '8') { //휴일인 경우, 빨간색 설정
  389. grd_calendar.cellStyle("color", row, col, row, col) = "#ff0000";
  390. } else { //그 이외는 검정색(평일 : 0)
  391. grd_calendar.cellStyle("color", row, col, row, col) = "#000000";
  392. }
  393. var conslrnm = model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/rgst_conslrnm");
  394. /*
  395. if (conslrnm != "") {
  396. grd_calendar.cellStyle("background-color", row, col, row, col) = "#ffffcc"; //노란색
  397. } else {
  398. grd_calendar.cellStyle("background-color", row, col, row, col) = "#ffffff"; //흰색
  399. }
  400. */
  401. switch (col) {
  402. case 0:
  403. if (oldday == newday) {
  404. model.setValue("/root/main/cal/weeks[" + row + "]/sun", model.getValue("/root/main/cal/weeks[" + row + "]/sun") + "\n" + " " + model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/rgst_conslrnm"));
  405. } else {
  406. model.setValue("/root/main/cal/weeks[" + row + "]/sun", model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/day") + "\n" + " " + model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/rgst_conslrnm"));
  407. }
  408. break;
  409. case 1:
  410. if (oldday == newday) {
  411. model.setValue("/root/main/cal/weeks[" + row + "]/mon", model.getValue("/root/main/cal/weeks[" + row + "]/mon") + "\n" + " " + model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/rgst_conslrnm"));
  412. } else {
  413. model.setValue("/root/main/cal/weeks[" + row + "]/mon", model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/day") + "\n" + " " + model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/rgst_conslrnm"));
  414. }
  415. break;
  416. case 2:
  417. if (oldday == newday) {
  418. model.setValue("/root/main/cal/weeks[" + row + "]/tue", model.getValue("/root/main/cal/weeks[" + row + "]/tue") + "\n" + " " + model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/rgst_conslrnm"));
  419. } else {
  420. model.setValue("/root/main/cal/weeks[" + row + "]/tue", model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/day") + "\n" + " " + model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/rgst_conslrnm"));
  421. }
  422. break;
  423. case 3:
  424. if (oldday == newday) {
  425. model.setValue("/root/main/cal/weeks[" + row + "]/wed", model.getValue("/root/main/cal/weeks[" + row + "]/wed") + "\n" + " " + model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/rgst_conslrnm"));
  426. } else {
  427. model.setValue("/root/main/cal/weeks[" + row + "]/wed", model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/day") + "\n" + " " + model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/rgst_conslrnm"));
  428. }
  429. break;
  430. case 4:
  431. if (oldday == newday) {
  432. model.setValue("/root/main/cal/weeks[" + row + "]/thu", model.getValue("/root/main/cal/weeks[" + row + "]/thu") + "\n" + " " + model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/rgst_conslrnm"));
  433. } else {
  434. model.setValue("/root/main/cal/weeks[" + row + "]/thu", model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/day") + "\n" + " " + model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/rgst_conslrnm"));
  435. }
  436. break;
  437. case 5:
  438. if (oldday == newday) {
  439. model.setValue("/root/main/cal/weeks[" + row + "]/fri", model.getValue("/root/main/cal/weeks[" + row + "]/fri") + "\n" + " " + model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/rgst_conslrnm"));
  440. } else {
  441. model.setValue("/root/main/cal/weeks[" + row + "]/fri", model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/day") + "\n" + " " + model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/rgst_conslrnm"));
  442. }
  443. break;
  444. case 6:
  445. if (oldday == newday) {
  446. model.setValue("/root/main/cal/weeks[" + row + "]/sat", model.getValue("/root/main/cal/weeks[" + row + "]/sat") + "\n" + " " + model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/rgst_conslrnm"));
  447. } else {
  448. model.setValue("/root/main/cal/weeks[" + row + "]/sat", model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/day") + "\n" + " " + model.getValue("/root/main/caldatalist/caldatainfo[" + i + "]/rgst_conslrnm"));
  449. }
  450. break;
  451. }
  452. oldday = newday;
  453. }
  454. //model.refresh();
  455. }
  456. //달력조회
  457. function fGetHospitalCalendar() {
  458. var sYear = model.getValue("/root/main/cond_cal/year");
  459. var sMonth = model.getValue("/root/main/cond_cal/month");
  460. model.setValue("/root/send/reqdata_calendar/date", sYear.concat(sMonth));
  461. model.removeNodeset("/root/main/caldatalist/caldatainfo");
  462. //model.refresh();
  463. if (submit("TRAYA00102", false) == true) {
  464. return true;
  465. } else {
  466. return false;
  467. }
  468. }
  469. //이전 달 조회 클릭
  470. function fBfMonthRef() {
  471. var sYear = model.getValue("/root/main/cond_cal/year");
  472. var sMonth = model.getValue("/root/main/cond_cal/month");
  473. var BfMonth;
  474. if (sMonth.substr(0,1) == "0") { //10월 이전인 경우, 앞자리 0을 제거
  475. BfMonth = sMonth.substr(1,1);
  476. }else{ //10월 이후인 경우
  477. BfMonth = eval(sMonth);
  478. }
  479. BfMonth--;
  480. if (BfMonth < 1) { // 1월 이전을 선택한 경우, 년도를 바꿈
  481. sMonth = "12";
  482. sYear--;
  483. } else if (BfMonth < 10) { // 10월 이전을 선택한 경우, 월 앞에 0을 붙인다.
  484. sMonth = "0".concat(BfMonth);
  485. } else {
  486. sMonth = BfMonth;
  487. }
  488. model.setValue("/root/main/cond_cal/year", sYear);
  489. model.setValue("/root/main/cond_cal/month", sMonth);
  490. //model.refresh();
  491. }
  492. //다음 달 조회 클릭
  493. function fAfMonthRef() {
  494. var sYear = model.getValue("/root/main/cond_cal/year");
  495. var sMonth = model.getValue("/root/main/cond_cal/month");
  496. var BfMonth;
  497. if (sMonth.substr(0,1) == "0") { //10월 이전인 경우, 앞자리 0을 제거
  498. BfMonth = sMonth.substr(1,1);
  499. }else{ //10월 이후인 경우
  500. BfMonth = eval(sMonth);
  501. }
  502. BfMonth++;
  503. if (BfMonth > 12) { // 12월 이후를 선택한 경우, 년도를 바꿈
  504. sMonth = "01";
  505. sYear++;
  506. } else if (BfMonth < 10) { // 10월 이전을 선택한 경우, 월 앞에 0을 붙인다.
  507. sMonth = "0".concat(BfMonth);
  508. } else {
  509. sMonth = BfMonth;
  510. }
  511. model.setValue("/root/main/cond_cal/year", sYear);
  512. model.setValue("/root/main/cond_cal/month", sMonth);
  513. //model.refresh();
  514. }
  515. //이전 년도 조회 클릭
  516. function fBfYearRef() {
  517. var sYear = model.getValue("/root/main/cond_cal/year");
  518. sYear--;
  519. model.setValue("/root/main/cond_cal/year", sYear);
  520. //model.refresh();
  521. }
  522. //다음 년도 조회 클릭
  523. function fAfYearRef() {
  524. var sYear = model.getValue("/root/main/cond_cal/year");
  525. sYear++;
  526. model.setValue("/root/main/cond_cal/year", sYear);
  527. //model.refresh();
  528. }
  529. //등록구분 선택(일반/반복일정)
  530. function fSelectRgstFlag() {
  531. var rgstflagcd = model.getValue("/root/main/cond_rgstngdt/rgstflagcd");
  532. if (model.getValue("/root/main/ngdtschergst/ngdtschergstinfo/conslrid") != "") {
  533. messageBox("선택한 일정을 저장 후", "C002");
  534. if (rgstflagcd == 'G') { //일반
  535. model.setValue("/root/main/cond_rgstngdt/rgstflagcd", 'R');
  536. } else if (rgstflagcd == 'R') { //반복일정
  537. model.setValue("/root/main/cond_rgstngdt/rgstflagcd", 'G');
  538. }
  539. rdo_rgstflagcd.refresh();
  540. return;
  541. } else {
  542. if (rgstflagcd == 'G') { //일반
  543. ipt_ngdtfromdd.disabled = true;
  544. ipt_ngdttodd.disabled = true;
  545. cmb_ngdtdwcd.disabled = true;
  546. btn_select.visible = false;
  547. } else if (rgstflagcd == 'R') { //반복일정
  548. ipt_ngdtfromdd.disabled = false;
  549. ipt_ngdttodd.disabled = false;
  550. cmb_ngdtdwcd.disabled = false;
  551. btn_select.visible = true;
  552. }
  553. }
  554. }
  555. //원목자 리스트 선택여부 확인
  556. function fChkConslrList() {
  557. var totRow = grd_conslrlist.rows;
  558. for ( var i = 1; i < totRow; i++) {
  559. var chkFlag = model.getValue("/root/main/conslrlist/conslrlistinfo[" + i + "]/chk"); //체크되었을 때 true를 반환함
  560. if (chkFlag == "true") {
  561. return true;
  562. }
  563. }
  564. }
  565. //달력 날짜 클릭시
  566. function fSelectedDate() {
  567. if (model.getValue("/root/main/cond_rgstngdt/rgstflagcd") == 'R') {
  568. messageBox("반복일정 상태에서는 선택","E001");
  569. return;
  570. //원목자 리스트 선택여부 확인
  571. } else if ( fChkConslrList() != true) {
  572. messageBox("당직일정을 등록할 원목자를 ","C002");
  573. return;
  574. } else {
  575. var iRow = grd_calendar.row;
  576. var iCol = grd_calendar.col;
  577. if (iRow < 1 ) return;
  578. var selectedCells = grd_calendar.selectedCells;
  579. var cell = grd_calendar.selectedCells.item(0);
  580. //일자 선택시 당직일정 등록리스트 추가
  581. var dataarray = grd_calendar.valueMatrix(cell.row, cell.col).split("\n"); //일
  582. var dd = model.getValue("/root/main/caldatalist/caldatainfo[day='" + dataarray[0] + "']/basedd"); //년월일
  583. var rgdtConslrCnt = getNodesetCnt(model1, "/root/main/caldatalist/caldatainfo"); //달력 노드갯수
  584. var rgdtChkCnt = getNodesetCnt(model1, "/root/main/conslrlist/conslrlistinfo[chk='" + "true" + "']/chk"); //원목자리스트의 체크된 갯수
  585. var rgdtScherddCnt = getNodesetCnt(model1, "/root/main/ngdtschergst/ngdtschergstinfo[ngdtdd='" + dd + "']/conslrid"); //당직일정 등록리스트의 같은 당직일 원목자수 노드갯수
  586. var rgdtConslrddCnt = 0; //달력의 해당날짜별 원목자 수 노드갯수
  587. for (var j = 1; j <= rgdtConslrCnt; j++) {
  588. if(model.getValue("/root/main/caldatalist/caldatainfo["+ j +"]/basedd") == dd ){
  589. if ((model.getValue("/root/main/caldatalist/caldatainfo["+ j +"]/rgst_conslrnm") == "")) {
  590. rgdtConslrddCnt = 0;
  591. } else {
  592. rgdtConslrddCnt = getNodesetCnt(model1, "/root/main/caldatalist/caldatainfo[basedd='" + dd + "']/rgst_conslrnm");
  593. }
  594. }
  595. }
  596. //선택한 일자에 색 지정
  597. var focusColor = grd_calendar.cellStyle("background-color", iRow, iCol, iRow, iCol);
  598. if ((focusColor == '#ffffff' || focusColor == '#ffffcc' ) && dd != "") { //흰색 or 노란색
  599. for ( var i = 1; i < grd_conslrlist.rows; i++) {
  600. var chkFlag = model.getValue("/root/main/conslrlist/conslrlistinfo[" + i + "]/chk");
  601. if (chkFlag == "true") {
  602. var conslrid = model.getValue("/root/main/conslrlist/conslrlistinfo[" + i + "]/conslrid");
  603. var selectedCalConslr = getNodesetCnt(model1, "/root/main/caldatalist/caldatainfo[rgst_conslrid='" + conslrid + "' and basedd ='" + dd + "']/rgst_conslrid"); //해당 날짜의 해당 원목자 유무(존재:1, 존재안함:0)
  604. /*
  605. //한 날짜에 두명 이상 입력시
  606. if (rgdtConslrddCnt + rgdtChkCnt >2) {
  607. messageBox("두명 이상 입력", "E001");
  608. return;
  609. }
  610. */
  611. //이름 중복입력시
  612. if (selectedCalConslr != 0 ) {
  613. messageBox("당직자가 ", "E006");
  614. return;
  615. }
  616. }
  617. }
  618. grd_calendar.cellstyle("background-color", iRow, iCol, iRow, iCol) = '#ff99cc'; //분홍색
  619. //당직일정 등록리스트로 해당자 이동
  620. for ( var i = 1; i < grd_conslrlist.rows; i++) {
  621. var chkFlag = model.getValue("/root/main/conslrlist/conslrlistinfo[" + i + "]/chk");
  622. var idxRow = grd_ngdtrgstlist.rows;
  623. if (chkFlag == "true") {
  624. var getColor = grd_calendar.cellStyle("background-color", iRow, iCol, iRow, iCol);
  625. if (getColor == '#ff99cc'){ //분홍색일 경우 등록 추가
  626. grd_ngdtrgstlist.addrow(false);
  627. model.setValue("/root/main/ngdtschergst/ngdtschergstinfo["+ idxRow +"]/conslrid", model.getValue("/root/main/conslrlist/conslrlistinfo[" + i + "]/conslrid"));
  628. model.setValue("/root/main/ngdtschergst/ngdtschergstinfo["+ idxRow +"]/conslrnm", model.getValue("/root/main/conslrlist/conslrlistinfo[" + i + "]/conslrnm"));
  629. model.setValue("/root/main/ngdtschergst/ngdtschergstinfo["+ idxRow +"]/ngdtdd", dd);
  630. }
  631. }
  632. grd_ngdtrgstlist.rebuild();
  633. }
  634. } else if (focusColor == '#ff99cc') { //분홍색
  635. for ( var i = 1; i < grd_conslrlist.rows; i++) {
  636. var chkFlag = model.getValue("/root/main/conslrlist/conslrlistinfo[" + i + "]/chk");
  637. var idxRow = grd_ngdtrgstlist.rows;
  638. if (chkFlag == "true") {
  639. var conslrid = model.getValue("/root/main/conslrlist/conslrlistinfo[" + i + "]/conslrid");
  640. var selectedrgstConslr = getNodesetCnt(model1, "/root/main/ngdtschergst/ngdtschergstinfo[conslrid='" + conslrid + "' and ngdtdd ='" + dd + "']/conslrid"); //해당 날짜의 해당 원목자 유무(존재:1, 존재안함:0) - 등록리스트
  641. var rgstdifferConslr = getNodesetCnt(model1, "/root/main/ngdtschergst/ngdtschergstinfo[conslrid!='" + conslrid + "' and ngdtdd ='" + dd + "']/conslrid"); //해당 날짜의 다른 아이디 원목자 유무(존재:1, 존재안함:0) - 등록리스트
  642. if (model.getValue("/root/main/caldatalist/caldatainfo[basedd='" + dd + "']/rgst_conslrid") == "") {
  643. if (model.getValue("/root/main/ngdtschergst/ngdtschergstinfo[conslrid='" + conslrid + "' and ngdtdd ='" + dd + "']/conslrid") != ""){
  644. if (rgstdifferConslr == 0) {
  645. grd_calendar.cellstyle("background-color", iRow, iCol, iRow, iCol) = '#ffffff'; //흰색
  646. } else {
  647. grd_calendar.cellstyle("background-color", iRow, iCol, iRow, iCol) = '#ff99cc'; //분홍색
  648. }
  649. model.removeNodeset("/root/main/ngdtschergst/ngdtschergstinfo[conslrid='" + conslrid + "' and ngdtdd ='" + dd + "']");
  650. } else {
  651. grd_calendar.cellstyle("background-color", iRow, iCol, iRow, iCol) = '#ff99cc'; //분홍색
  652. /*
  653. //한 날짜에 두명 이상 입력시
  654. if ( rgdtConslrddCnt + rgdtChkCnt + rgdtScherddCnt > 2) {
  655. messageBox("두명 이상 입력", "E001");
  656. return;
  657. }
  658. */
  659. grd_ngdtrgstlist.addrow(false);
  660. model.setValue("/root/main/ngdtschergst/ngdtschergstinfo["+ idxRow +"]/conslrid", model.getValue("/root/main/conslrlist/conslrlistinfo[" + i + "]/conslrid"));
  661. model.setValue("/root/main/ngdtschergst/ngdtschergstinfo["+ idxRow +"]/conslrnm", model.getValue("/root/main/conslrlist/conslrlistinfo[" + i + "]/conslrnm"));
  662. model.setValue("/root/main/ngdtschergst/ngdtschergstinfo["+ idxRow +"]/ngdtdd", dd);
  663. }
  664. } else { //해당일에 한명이 등록되어 있는 경우
  665. if (model.getValue("/root/main/ngdtschergst/ngdtschergstinfo[conslrid='" + conslrid + "' and ngdtdd ='" + dd + "']/conslrid") == conslrid ) {
  666. grd_calendar.cellstyle("background-color", iRow, iCol, iRow, iCol) = '#ffffcc'; //노란색
  667. model.removeNodeset("/root/main/ngdtschergst/ngdtschergstinfo[conslrid='" + conslrid + "' and ngdtdd ='" + dd + "']");
  668. } else {
  669. /*
  670. if (rgdtConslrddCnt + rgdtChkCnt + rgdtScherddCnt >2) {
  671. messageBox("두명 이상 입력", "E001");
  672. return;
  673. }
  674. */
  675. }
  676. }
  677. }
  678. grd_ngdtrgstlist.rebuild();
  679. }
  680. }
  681. }
  682. }
  683. //반복일정 선택시 당직일정 그리드로 이동
  684. function fRptSche() {
  685. //원목자 리스트 선택여부 확인
  686. if ( fChkConslrList() != true) {
  687. messageBox("당직일정을 등록할 원목자를 ","C002");
  688. return false;
  689. } else {
  690. var conslrchkCnt = getNodesetCnt(model1, "/root/main/conslrlist/conslrlistinfo[chk='" + "true" + "']"); //노드갯수구함
  691. /*
  692. if (conslrchkCnt > 2) {
  693. messageBox("두명 이상 입력", "E001");
  694. return;
  695. }
  696. */
  697. model.removeNodeset("/root/send/reqdata");
  698. model.makeNode("/root/send/reqdata");
  699. model.copyNode("/root/send/reqdata", "/root/main/cond_rgstngdt");
  700. // reqGetRptScheInfo
  701. // getRptScheInfo
  702. // 해당요일의 날짜 조회(ex)-월요일에 해당하는 날짜 조회
  703. if (submit("TRAYA00106", false)) {
  704. for ( var i = 1; i < grd_conslrlist.rows; i++) {
  705. var chkConslr = model.getValue("/root/main/conslrlist/conslrlistinfo[" + i + "]/chk");
  706. var conslrid = model.getValue("/root/main/conslrlist/conslrlistinfo[" + i + "]/conslrid");
  707. var rptngdtddCnt = getNodesetCnt(model1, "/root/main/rptngdtdd/rptngdtddinfo"); //노드갯수구함
  708. var ngdtlistCnt = getNodesetCnt(model1, "/root/main/ngdtschergst/ngdtschergstinfo"); //노드갯수구함
  709. var ngdt_array = new Array();
  710. if (chkConslr == "true") {
  711. for ( var j = 1; j < rptngdtddCnt+1; j++) {
  712. var chkYN = "N";
  713. // 기존등록사항 체크
  714. for (var k = 1; k < grd_ngdtrgstlist.rows; k++)
  715. {
  716. var oldconslrid = model.getValue("/root/main/ngdtschergst/ngdtschergstinfo[" + k + "]/conslrid");
  717. var oldngdtdd = model.getValue("/root/main/ngdtschergst/ngdtschergstinfo[" + k + "]/ngdtdd");
  718. if (oldconslrid == conslrid && oldngdtdd == model.getValue("/root/main/rptngdtdd/rptngdtddinfo["+ j +"]/ngdtdd"))
  719. {
  720. chkYN = "Y";
  721. break;
  722. }
  723. }
  724. //alert(chkYN);
  725. if (chkYN == "N")
  726. {
  727. grd_ngdtrgstlist.addrow(false);
  728. ngdtlistCnt++;
  729. ngdt_array[j] = model.getValue("/root/main/rptngdtdd/rptngdtddinfo["+ j +"]/ngdtdd");
  730. // alert(ngdt_array[j]);
  731. model.setValue("/root/main/ngdtschergst/ngdtschergstinfo["+ ngdtlistCnt +"]/conslrid", model.getValue("/root/main/conslrlist/conslrlistinfo[" + i + "]/conslrid"));
  732. model.setValue("/root/main/ngdtschergst/ngdtschergstinfo["+ ngdtlistCnt +"]/conslrnm", model.getValue("/root/main/conslrlist/conslrlistinfo[" + i + "]/conslrnm"));
  733. model.setValue("/root/main/ngdtschergst/ngdtschergstinfo["+ ngdtlistCnt +"]/ngdtdd", ngdt_array[j]);
  734. }
  735. }
  736. }
  737. }
  738. grd_ngdtrgstlist.rebuild();
  739. }
  740. }
  741. }
  742. //원목자 리스트 선택시 연간일정 등록 리스트로 이동
  743. function fSelectedConslrList() {
  744. var idxRow = grd_conslrlist.row;
  745. var idxCol = grd_conslrlist.col;
  746. if (idxRow < 1 && idxCol != 1) return;
  747. // 해드 체크박스를 선택한 경우
  748. if (idxRow == 0 && idxCol == 1)
  749. {
  750. for (i=1; i < grd_conslrlist.rows; i++)
  751. {
  752. if (idxCol == 1 && swt_sche.selectedIndex == 1) { //체크박스 선택할 경우 연간일정 등록의 해당 원목자 리스트로 이동
  753. var chkFlag = model.getValue("/root/main/conslrlist/conslrlistinfo[" + i + "]/chk");
  754. var selConslrid = model.getValue("/root/main/conslrlist/conslrlistinfo[" + i + "]/conslrid");
  755. var chkRow = grd_yyschergstlist.findRow(selConslrid, 1, 1, false, false); //없을 경우 -1, 해당될 경우 해당 row idx 반환
  756. var selConslrCnt = getNodesetCnt(model1, "/root/main/yyschergst/yyschergstinfo");
  757. if (chkFlag == "true" && chkRow == -1) {
  758. model.makeNode("/root/main/yyschergst/yyschergstinfo["+ (selConslrCnt + 1) +"]");
  759. model.copyNode("/root/main/yyschergst/yyschergstinfo["+ (selConslrCnt + 1) +"]", "/root/main/conslrlist/conslrlistinfo[" + i + "]");
  760. grd_yyschergstlist.rebuild();
  761. } else if (chkFlag == "false") {
  762. model.removeNodeset("/root/main/yyschergst/yyschergstinfo[" + chkRow + "]");
  763. grd_yyschergstlist.rebuild();
  764. //model.refresh();
  765. }
  766. }
  767. }
  768. }
  769. else if (idxRow > 0)
  770. {
  771. if (idxCol == 1 && swt_sche.selectedIndex == 1) { //체크박스 선택할 경우 연간일정 등록의 해당 원목자 리스트로 이동
  772. var chkFlag = model.getValue("/root/main/conslrlist/conslrlistinfo[" + idxRow + "]/chk");
  773. var selConslrid = model.getValue("/root/main/conslrlist/conslrlistinfo[" + idxRow + "]/conslrid");
  774. var chkRow = grd_yyschergstlist.findRow(selConslrid, 1, 1, false, false); //없을 경우 -1, 해당될 경우 해당 row idx 반환
  775. var selConslrCnt = getNodesetCnt(model1, "/root/main/yyschergst/yyschergstinfo");
  776. if (chkFlag == "true" && chkRow == -1) {
  777. model.makeNode("/root/main/yyschergst/yyschergstinfo["+ (selConslrCnt + 1) +"]");
  778. model.copyNode("/root/main/yyschergst/yyschergstinfo["+ (selConslrCnt + 1) +"]", "/root/main/conslrlist/conslrlistinfo[" + idxRow + "]");
  779. grd_yyschergstlist.rebuild();
  780. } else if (chkFlag == "false") {
  781. model.removeNodeset("/root/main/yyschergst/yyschergstinfo[" + chkRow + "]");
  782. //model.refresh();
  783. }
  784. } else if (idxCol > 1) { //그리드 선택할 경우 당직일정 조회, 연간일정 조회
  785. //해당 원목자의 등록된 당직년도, 일정년도 콤보리스트, 일정리스트 조회
  786. fRefCombo_ListInfo();
  787. //당직일정, 연간일정 그리드 복사
  788. fCopyData();
  789. //연간일정 조회시 구분에 따른 내용콤보 셋팅
  790. fScheCntsRef();
  791. }
  792. }
  793. }
  794. //해당 원목자의 등록된 당직년도, 일정년도 콤보리스트, 일정리스트 조회
  795. function fRefCombo_ListInfo() {
  796. var idxRow = grd_conslrlist.row;
  797. var selectConslrid = model.getValue("/root/main/conslrlist/conslrlistinfo[" + idxRow + "]/conslrid");
  798. model.removeNodeset("/root/init/combolist/ngdtschelistinfo");
  799. model.removeNodeset("/root/init/combolist/yyschelistinfo");
  800. model.removeNodeset("/root/send/combodata");
  801. model.makeNode("/root/send/combodata");
  802. model.makeNode("/root/send/combodata/conslrid");
  803. // 원목자 ID
  804. model.setValue("/root/send/combodata/conslrid", selectConslrid);
  805. // 당직년도, 연간년도, 당직일정리스트, 연간일정 리스트 조회
  806. if (submit("TRAYA00105", false)) {
  807. model.resetInstanceNode("/root/main/cond_refngdt/ngdt_refyear");
  808. model.resetInstanceNode("/root/main/cond_refyy/yy_refyear");
  809. model.setValue("/root/main/cond_refngdt/ngdt_refyear", model.getValue("/root/init/combolist/ngdtsche/ngdtscheyear"));
  810. model.setValue("/root/main/cond_refyy/yy_refyear", model.getValue("/root/init/combolist/yysche/yyscheyear"));
  811. model.removeNodeset("/root/main/ngdtschelist");
  812. model.makeNode("/root/main/ngdtschelist");
  813. model.makeNode("/root/main/ngdtschelist/ngdtschelistinfo");
  814. model.makeNode("/root/main/ngdtschelist/ngdtschelistinfo/chk");
  815. model.makeNode("/root/main/ngdtschelist/ngdtschelistinfo/ngdtddday");
  816. model.makeNode("/root/main/ngdtschelist/ngdtschelistinfo/rem");
  817. model.makeNode("/root/main/ngdtschelist/ngdtschelistinfo/conslrid");
  818. model.makeNode("/root/main/ngdtschelist/ngdtschelistinfo/ngdtdd");
  819. model.makeNode("/root/main/ngdtschelist/ngdtschelistinfo/seqno");
  820. model.makeNode("/root/main/ngdtschelist/ngdtschelistinfo/status");
  821. model.removeNodeset("/root/main/yyschelist");
  822. model.makeNode("/root/main/yyschelist");
  823. model.makeNode("/root/main/yyschelist/yyschelistinfo");
  824. model.makeNode("/root/main/yyschelist/yyschelistinfo/chk");
  825. model.makeNode("/root/main/yyschelist/yyschelistinfo/fromdd");
  826. model.makeNode("/root/main/yyschelist/yyschelistinfo/todd");
  827. model.makeNode("/root/main/yyschelist/yyschelistinfo/scheflagcd");
  828. model.makeNode("/root/main/yyschelist/yyschelistinfo/schecntscd");
  829. model.makeNode("/root/main/yyschelist/yyschelistinfo/clscntscd");
  830. model.makeNode("/root/main/yyschelist/yyschelistinfo/cost");
  831. model.makeNode("/root/main/yyschelist/yyschelistinfo/diplyn");
  832. model.makeNode("/root/main/yyschelist/yyschelistinfo/plcenm");
  833. model.makeNode("/root/main/yyschelist/yyschelistinfo/rem");
  834. model.makeNode("/root/main/yyschelist/yyschelistinfo/conslrid");
  835. model.makeNode("/root/main/yyschelist/yyschelistinfo/scheflagcd_a");
  836. model.makeNode("/root/main/yyschelist/yyschelistinfo/seqno");
  837. model.makeNode("/root/main/yyschelist/yyschelistinfo/status");
  838. /* var setNgdtlist = model.instances(0).selectNodes("/root/init/combolist/ngdtschelistinfo");
  839. var getNgdtlist = model.instances(0).selectSingleNode("/root/main/ngdtschelist/ngdtschelistinfo");
  840. for ( var i = 0; i < setNgdtlist.length; i++ ){
  841. getNgdtlist.appendChild(setNgdtlist.item(i).cloneNode(true));
  842. }
  843. */
  844. var getNgdtlistCnt = getNodesetCnt(model1, "/root/init/combolist/ngdtschelistinfo");
  845. var getYYlistCnt = getNodesetCnt(model1, "/root/init/combolist/yyschelistinfo");
  846. var ngdt_idx = 1;
  847. var yy_idx = 1;
  848. /*
  849. for (var i = 1; i <= getNgdtlistCnt; i++) {
  850. copyNodesetType("/root/main/ngdtschelist/ngdtschelistinfo[" + ngdt_idx + "]", "/root/init/combolist/ngdtschelistinfo[" + i + "]", "after");
  851. ngdt_idx++;
  852. }
  853. for (var i = 1; i <= getYYlistCnt; i++) {
  854. copyNodesetType("/root/main/yyschelist/yyschelistinfo[" + yy_idx + "]", "/root/init/combolist/yyschelistinfo[" + i + "]", "after");
  855. yy_idx++;
  856. }
  857. model.removenode("/root/main/ngdtschelist/ngdtschelistinfo");
  858. model.removenode("/root/main/yyschelist/yyschelistinfo");
  859. */
  860. // 20071117 현재달로 셋팅되도록 요청됨
  861. var currentmonth = getCurrentDate().substr(4, 2);
  862. var currentyear = getCurrentDate().substr(0, 4);
  863. //alert(getCurrentDate());
  864. //alert(currentmonth);
  865. //model.setValue("/root/main/cond_refngdt/ngdt_refmonth", 'A'); //조회 후 '전체'조회되므로 세팅
  866. model.setValue("/root/main/cond_refngdt/ngdt_refmonth", currentmonth); //조회 후 '전체'조회되므로 세팅
  867. model.setValue("/root/main/cond_refngdt/ngdt_refyear", currentyear); //조회 후 '전체'조회되므로 세팅
  868. // 당직일정조회
  869. fNgdtScheListRef();
  870. // 연간일정 월에 전체
  871. model.setValue("/root/main/cond_refyy/yy_refmonth", 'A');
  872. // 20071130 연간일정 해당월로 셋팅되도록 요청함
  873. model.setValue("/root/main/cond_refyy/yy_refyear",currentyear);
  874. //해당 원목자의 연간일정 조회
  875. fYYScheListRef();
  876. //model.refresh();
  877. }
  878. }
  879. //노드 갯수 구함
  880. function getNodesetCnt(srchModel, path) {
  881. var insXml = srchModel.instances(0);
  882. var nodeList = insXml.selectNodes(path);
  883. return nodeList.length;
  884. }
  885. //당직일정, 연간일정 그리드 복사
  886. function fCopyData() {
  887. //당직일정 조회그리드 복사
  888. model.removeNodeset("/root/temp/main/ngdtschelist");
  889. model.makeNode("/root/temp/main/ngdtschelist");
  890. model.copyNode("/root/temp/main/ngdtschelist","/root/main/ngdtschelist");
  891. //연간일정 조회그리드 복사
  892. model.removeNodeset("/root/temp/main/yyschelist");
  893. model.makeNode("/root/temp/main/yyschelist");
  894. model.copyNode("/root/temp/main/yyschelist","/root/main/yyschelist");
  895. }
  896. //해당 원목자의 당직일정 조회
  897. function fNgdtScheListRef() {
  898. // 헤더 체크박스 초기화
  899. grd_ngdtschelist.fixedcellischeck(0, 1) = false;
  900. var idxRow = grd_conslrlist.row;
  901. var selectConslrid = model.getValue("/root/main/conslrlist/conslrlistinfo[" + idxRow + "]/conslrid");
  902. var ngdt_sYear = model.getValue("/root/main/cond_refngdt/ngdt_refyear");
  903. var ngdt_sMonth = model.getValue("/root/main/cond_refngdt/ngdt_refmonth");
  904. if (ngdt_sMonth != 'A') {
  905. model.setValue("/root/main/cond_refngdt/ngdt_refyymm", ngdt_sYear.concat(ngdt_sMonth));
  906. }
  907. model.setValue("/root/main/cond_refngdt/conslrid", selectConslrid);
  908. model.setValue("/root/main/cond_refngdt/ngdt_refflag", 'C'); //해당 원목자 조회 flag
  909. //model.refresh();
  910. model.removeNodeset("/root/send/reqdata");
  911. model.makeNode("/root/send/reqdata");
  912. model.copyNode("/root/send/reqdata","/root/main/cond_refngdt");
  913. // getNgdtScheListInfo
  914. submit("TRAYA00103", false);
  915. //당직일정, 연간일정 그리드 복사
  916. fCopyData();
  917. }
  918. // 년도 및 월 선택될때마다 구분에 따른 내용 유형코드 셋팅
  919. //해당 원목자의 연간일정 조회
  920. function fYYScheListRef() {
  921. var idxRow = grd_conslrlist.row;
  922. var selectConslrid = model.getValue("/root/main/conslrlist/conslrlistinfo[" + idxRow + "]/conslrid");
  923. var yy_sYear = model.getValue("/root/main/cond_refyy/yy_refyear");
  924. var yy_sMonth = model.getValue("/root/main/cond_refyy/yy_refmonth");
  925. if (yy_sMonth != 'A') {
  926. model.setValue("/root/main/cond_refyy/yy_refyymm", yy_sYear.concat(yy_sMonth));
  927. }
  928. model.setValue("/root/main/cond_refyy/conslrid", selectConslrid);
  929. //model.refresh();
  930. model.removeNodeset("/root/send/reqdata");
  931. model.makeNode("/root/send/reqdata");
  932. model.copyNode("/root/send/reqdata","/root/main/cond_refyy");
  933. // reqGetYYScheListInfo
  934. // getYYScheListInfo
  935. submit("TRAYA00104", false);
  936. grd_yyschelist.rebuild();
  937. //당직일정, 연간일정 그리드 복사
  938. fCopyData();
  939. }
  940. //당직일정 조회 그리드에서 해당 당직일 선택
  941. function fSelNgdtSche() {
  942. var idxRow = grd_ngdtschelist.row;
  943. var idxCol = grd_ngdtschelist.col;
  944. if (idxRow < 1 || idxCol < 2) return;
  945. }
  946. //당직일정 등록부분의 저장버튼 클릭시
  947. function fSaveNgdtSche() {
  948. var totRow = grd_ngdtrgstlist.rows;
  949. if (totRow <= 1)
  950. {
  951. messageBox("저장할 내역이", "I004");
  952. return;
  953. }
  954. for (var i = 1; i < totRow; i++) {
  955. model.setValue("/root/main/ngdtschergst/ngdtschergstinfo[" + i + "]/status", "i");
  956. }
  957. model.removeNodeset("/root/send/savedata");
  958. model.makeNode("/root/send/savedata");
  959. model.setValue("/root/send/savedata", grd_ngdtrgstlist.getUpdateDataAll("i"));
  960. //model.refresh();
  961. // reqExeNgdtScheInfo
  962. if (submit("TXAYA00101", false)) {
  963. //당직일정 등록 초기화
  964. fResetNgdt();
  965. fRefCombo_ListInfo();
  966. /*
  967. var ngdt_refyear = model.getValue("/root/main/cond_refngdt/ngdt_refyear");
  968. if (ngdt_refyear != "") {
  969. //해당 원목자의 당직일정 조회
  970. fNgdtScheListRef();
  971. } else {
  972. //해당 원목자의 등록된 당직년도, 일정년도 콤보리스트, 일정리스트 조회
  973. fRefCombo_ListInfo();
  974. }
  975. */
  976. }
  977. }
  978. //당직일정 그리드 값 변경시 체크 알림
  979. function fChkNgdtSche() {
  980. var idxRow = grd_ngdtschelist.row;
  981. var idxCol = grd_ngdtschelist.col;
  982. if (idxRow < 1 || idxCol < 1) return;
  983. var totRow = grd_ngdtschelist.rows;
  984. if (idxCol >1) {
  985. for (var i = 1; i < totRow; i++) {
  986. var chkFlag = model.getValue("/root/main/ngdtschelist/ngdtschelistinfo[" + i + "]/chk"); //체크되었을 때 true를 반환함
  987. if (instance1.selectSingleNode("/root/main/ngdtschelist/ngdtschelistinfo["+ i +"]").xml != instance1.selectSingleNode("/root/temp/main/ngdtschelist/ngdtschelistinfo["+ i +"]").xml) {
  988. if (chkFlag == "false") {
  989. messageBox("수정할 당직일을 ","C002");
  990. return;
  991. }
  992. }
  993. }
  994. }
  995. }
  996. //당직일정 조회부분의 저장(수정)버튼 클릭시
  997. function fUpdtNgdtSche() {
  998. var totRow = grd_ngdtschelist.rows;
  999. var chkYN = "";
  1000. for (var i = 1; i < totRow; i++) {
  1001. var chkFlag = model.getValue("/root/main/ngdtschelist/ngdtschelistinfo[" + i + "]/chk"); //체크되었을 때 true를 반환함
  1002. if (chkFlag == "true"){
  1003. model.setValue("/root/main/ngdtschelist/ngdtschelistinfo[" + i + "]/status", "u");
  1004. chkYN = "Y";
  1005. }
  1006. }
  1007. if ( chkYN == "") {
  1008. //messageBox("변경된 데이터가 ","I004");
  1009. //messageBox("저장할 당직일자를 ","C002");
  1010. messageBox("선택한 당직일자가", "I004");
  1011. return;
  1012. }
  1013. model.removeNodeset("/root/send/savedata");
  1014. model.makeNode("/root/send/savedata");
  1015. model.setValue("/root/send/savedata", grd_ngdtschelist.getUpdateDataAll("u"));
  1016. //model.refresh();
  1017. if (submit("TXAYA00101", false)){
  1018. //해당 원목자의 당직일정 조회
  1019. fNgdtScheListRef();
  1020. //당직일정, 연간일정 그리드 복사
  1021. fCopyData();
  1022. }
  1023. }
  1024. //당직일정 조회부분의 삭제버튼 클릭시
  1025. function fDelNgdtSche() {
  1026. var totRow = grd_ngdtschelist.rows;
  1027. var chkYN = "";
  1028. for (var i = 1; i < totRow; i++) {
  1029. var chkFlag = model.getValue("/root/main/ngdtschelist/ngdtschelistinfo[" + i + "]/chk"); //체크되었을 때 true를 반환함
  1030. if (chkFlag == "true"){
  1031. model.setValue("/root/main/ngdtschelist/ngdtschelistinfo[" + i + "]/status", "d");
  1032. chkYN = "Y";
  1033. }
  1034. }
  1035. if ( chkYN == "") {
  1036. //messageBox("삭제할 당직일자를 ","C002");
  1037. messageBox("선택한 당직일자가", "I004");
  1038. return;
  1039. }
  1040. model.removeNodeset("/root/send/savedata");
  1041. model.makeNode("/root/send/savedata");
  1042. var btn = messageBox("선택한 당직일자를 ", "Q001");
  1043. if (btn == '6') {
  1044. model.setValue("/root/send/savedata", grd_ngdtschelist.getUpdateDataAll("d"));
  1045. //model.refresh();
  1046. if (submit("TXAYA00101", false)) {
  1047. //해당 원목자의 당직일정 조회
  1048. fNgdtScheListRef();
  1049. //달력정보 및 일자별 담당원목자를 달력에 표시
  1050. fSetCalendar();
  1051. //당직일정, 연간일정 그리드 복사
  1052. fCopyData();
  1053. }
  1054. } else if (btn == '7') {
  1055. return;
  1056. }
  1057. }
  1058. //당직일정 등록 초기화
  1059. function fResetNgdt() {
  1060. model.resetInstanceNode("/root/main/cond_rgstngdt/ngdtfromdd")
  1061. model.resetInstanceNode("/root/main/cond_rgstngdt/ngdttodd");
  1062. model.resetInstanceNode("/root/main/cond_rgstngdt/ngdtdwcd");
  1063. model.removeNodeset("/root/main/ngdtschergst/ngdtschergstinfo");
  1064. grd_calendar.cellStyle("background-color",1 , 0, 6, 6) = "#ffffff"; //흰색
  1065. //model.refresh();
  1066. // 원목자 리스트 초기화
  1067. fResetConslrList();
  1068. //달력정보 및 일자별 담당원목자를 달력에 표시
  1069. fSetCalendar(); //달력 재조회
  1070. }
  1071. //연간일정 조회 그리드에서 해당 일정 선택
  1072. function fSelYYSche() {
  1073. var idxRow = grd_yyschelist.row;
  1074. var idxCol = grd_yyschelist.col;
  1075. if (idxRow < 1 || idxCol < 2) return;
  1076. }
  1077. //연간일정 등록부분의 저장버튼 클릭시
  1078. function fSaveYYSche() {
  1079. var totRow = grd_yyschergstlist.rows;
  1080. if (totRow <= 1)
  1081. {
  1082. messageBox("연간일정을 등록할 원목자를 ","C002");
  1083. return;
  1084. }
  1085. for (var i = 1; i < totRow; i++) {
  1086. //alert(model.getValue("/root/main/yyschecnts/yyschecntsinfo/fromdd"));
  1087. model.setValue("/root/main/yyschergst/yyschergstinfo[" + i + "]/fromdd", model.getValue("/root/main/yyschecnts/yyschecntsinfo/fromdd"));
  1088. model.setValue("/root/main/yyschergst/yyschergstinfo[" + i + "]/todd", model.getValue("/root/main/yyschecnts/yyschecntsinfo/todd"));
  1089. model.setValue("/root/main/yyschergst/yyschergstinfo[" + i + "]/scheflagcd", model.getValue("/root/main/yyschecnts/yyschecntsinfo/scheflagcd"));
  1090. model.setValue("/root/main/yyschergst/yyschergstinfo[" + i + "]/schecntscd", model.getValue("/root/main/yyschecnts/yyschecntsinfo/schecntscd"));
  1091. model.setValue("/root/main/yyschergst/yyschergstinfo[" + i + "]/cost", model.getValue("/root/main/yyschecnts/yyschecntsinfo/cost"));
  1092. model.setValue("/root/main/yyschergst/yyschergstinfo[" + i + "]/diplyn", model.getValue("/root/main/yyschecnts/yyschecntsinfo/diplyn"));
  1093. model.setValue("/root/main/yyschergst/yyschergstinfo[" + i + "]/plcenm", model.getValue("/root/main/yyschecnts/yyschecntsinfo/plcenm"));
  1094. model.setValue("/root/main/yyschergst/yyschergstinfo[" + i + "]/rem", model.getValue("/root/main/yyschecnts/yyschecntsinfo/rem"));
  1095. model.setValue("/root/main/yyschergst/yyschergstinfo[" + i + "]/clscntscd", model.getValue("/root/main/yyschecnts/yyschecntsinfo/clscntscd"));
  1096. model.setValue("/root/main/yyschergst/yyschergstinfo[" + i + "]/fromtm", model.getValue("/root/main/yyschecnts/yyschecntsinfo/fromtm")); // 시작시간 종료시간 추가 (2009.11.23 hhm)
  1097. model.setValue("/root/main/yyschergst/yyschergstinfo[" + i + "]/totm", model.getValue("/root/main/yyschecnts/yyschecntsinfo/totm"));
  1098. model.setValue("/root/main/yyschergst/yyschergstinfo[" + i + "]/status", "i");
  1099. //model.refresh();
  1100. }
  1101. model.removeNodeset("/root/send/savedata");
  1102. model.makeNode("/root/send/savedata");
  1103. model.setValue("/root/send/savedata", grd_yyschergstlist.getUpdateDataAll("i"));
  1104. //model.refresh();
  1105. if (submit("TXAYA00102", false)) {
  1106. //연간일정 등록 초기화
  1107. fResetYY();
  1108. fRefCombo_ListInfo();
  1109. /*
  1110. var yy_refyear = model.getValue("/root/main/cond_refyy/yy_refyear");
  1111. if (yy_refyear != "") {
  1112. //해당 원목자의 연간일정 조회
  1113. fYYScheListRef();
  1114. } else {
  1115. //해당 원목자의 등록된 당직년도, 일정년도 콤보리스트, 일정리스트 조회
  1116. fRefCombo_ListInfo();
  1117. }
  1118. */
  1119. }
  1120. }
  1121. //연간일정 그리드 값 변경시 체크 알림
  1122. function fChkYYSche() {
  1123. var idxRow = grd_yyschelist.row;
  1124. var idxCol = grd_yyschelist.col;
  1125. if (idxRow < 1 || idxCol < 1) return;
  1126. var totRow = grd_yyschelist.rows;
  1127. if (idxCol >1) {
  1128. for (var i = 1; i < totRow; i++) {
  1129. var chkFlag = model.getValue("/root/main/yyschelist/yyschelistinfo[" + i + "]/chk"); //체크되었을 때 true를 반환함
  1130. if (instance1.selectSingleNode("/root/main/yyschelist/yyschelistinfo["+ i +"]").xml != instance1.selectSingleNode("/root/temp/main/yyschelist/yyschelistinfo["+ i +"]").xml) {
  1131. if (chkFlag == "false") {
  1132. messageBox("수정할 일정을 ","C002");
  1133. return;
  1134. }
  1135. }
  1136. }
  1137. }
  1138. }
  1139. //연간일정 조회부분의 저장(수정)버튼 클릭시
  1140. function fUpdtYYSche() {
  1141. var totRow = grd_yyschelist.rows;
  1142. var chkYN = "";
  1143. for (var i = 1; i < totRow; i++) {
  1144. var chkFlag = model.getValue("/root/main/yyschelist/yyschelistinfo[" + i + "]/chk"); //체크되었을 때 true를 반환함
  1145. if (chkFlag == "true"){
  1146. model.setValue("/root/main/yyschelist/yyschelistinfo[" + i + "]/status", "u");
  1147. chkYN = "Y";
  1148. }
  1149. }
  1150. if ( chkYN == "") {
  1151. //messageBox("변경된 데이터가 ","I004");
  1152. messageBox("선택한 연간일정이", "I004");
  1153. return;
  1154. }
  1155. model.removeNodeset("/root/send/savedata");
  1156. model.makeNode("/root/send/savedata");
  1157. model.setValue("/root/send/savedata", grd_yyschelist.getUpdateDataAll("u"));
  1158. //model.refresh();
  1159. if (submit("TXAYA00102", false)) {
  1160. //해당 원목자의 연간일정 조회
  1161. fYYScheListRef();
  1162. grd_conslrlist.dispatch("onclick");
  1163. //당직일정, 연간일정 그리드 복사
  1164. //fCopyData();
  1165. }
  1166. }
  1167. //연간일정 조회부분의 삭제버튼 클릭시
  1168. function fDelYYSche() {
  1169. var totRow = grd_yyschelist.rows;
  1170. var chkYN = "";
  1171. for (var i = 1; i < totRow; i++) {
  1172. var chkFlag = model.getValue("/root/main/yyschelist/yyschelistinfo[" + i + "]/chk"); //체크되었을 때 true를 반환함
  1173. if (chkFlag == "true"){
  1174. model.setValue("/root/main/yyschelist/yyschelistinfo[" + i + "]/status", "d");
  1175. chkYN = "Y";
  1176. }
  1177. }
  1178. if ( chkYN == "") {
  1179. //messageBox("삭제할 일정을 ","C002");
  1180. messageBox("선택한 연간일정이", "I004");
  1181. return;
  1182. }
  1183. model.removeNodeset("/root/send/savedata");
  1184. model.makeNode("/root/send/savedata");
  1185. var btn = messageBox("선택한 일정을 ", "Q001");
  1186. if (btn == '6') {
  1187. model.setValue("/root/send/savedata", grd_yyschelist.getUpdateDataAll("d"));
  1188. //model.refresh();
  1189. if (submit("TXAYA00102", false)) {
  1190. //해당 원목자의 연간일정 조회
  1191. fYYScheListRef();
  1192. //당직일정, 연간일정 그리드 복사
  1193. fCopyData();
  1194. }
  1195. } else if (btn == '7') {
  1196. return;
  1197. }
  1198. }
  1199. //연간일정 등록 초기화
  1200. function fResetYY() {
  1201. model.removeNodeset("/root/main/yyschergst/yyschergstinfo");
  1202. model.resetInstanceNode("/root/main/yyschecnts/yyschecntsinfo");
  1203. var CurrentDate = getCurrentDate();
  1204. model.setValue("/root/main/yyschecnts/yyschecntsinfo/fromdd", CurrentDate);
  1205. model.setValue("/root/main/yyschecnts/yyschecntsinfo/todd", CurrentDate);
  1206. cmb_scheflag.select(0);
  1207. model.setValue("/root/main/yyschecnts/yyschecntsinfo/clscntscd", "2");
  1208. model.setValue("/root/main/yyschecnts/yyschecntsinfo/diplyn", "N");
  1209. //model.refresh();
  1210. //원목자리스트 초기화
  1211. fResetConslrList();
  1212. }
  1213. //연간일정구분 콤보 변경에 따른 내용콤보 셋팅
  1214. function fScheflagChgRef() {
  1215. /* scheflagcd
  1216. A : 휴가
  1217. B : 영성교육
  1218. C : 자기계발교육
  1219. D : 직무교육
  1220. Z : 기타
  1221. schecntscd
  1222. A01 : 휴가
  1223. B01 : 연수
  1224. B02 : 재수련
  1225. B03 : 피정
  1226. C01 Case Study
  1227. C02 : 팀워크샵
  1228. C03 : 연계부서교육
  1229. D01 : 직무교육
  1230. Z01 : 기타
  1231. */
  1232. var scheflagcd = model.getValue("/root/main/yyschecnts/yyschecntsinfo/scheflagcd");
  1233. var bizid; //업무규칙
  1234. if (scheflagcd == 'A') {
  1235. bizid = "A0002";
  1236. } else if (scheflagcd == 'B') {
  1237. bizid = "A0003";
  1238. } else if (scheflagcd == 'C') {
  1239. bizid = "A0004";
  1240. } else if (scheflagcd == 'D') {
  1241. bizid = "A0005";
  1242. } else if (scheflagcd == 'Z') {
  1243. bizid = "A0006";
  1244. }
  1245. // 초기화
  1246. model.removeNodeset("/root/init/comcodelist/schecnts_kindcmblist");
  1247. model.makeNode("/root/init/comcodelist/schecnts_kindcmblist");
  1248. zbcfGetKindCodeList(
  1249. new Array(bizid), //업무규칙
  1250. new Array("A0218"), //코드군
  1251. new Array("/root/init/comcodelist/schecnts_kindcmblist"), //노드
  1252. true, //minimum : true TRZBC00105
  1253. new Array("cdid"), //sorting 항목
  1254. new Array("asc")
  1255. );
  1256. // zbcfGetKindCodeList(new Array("A0018"), new Array("A0507"),new Array("/root/hidden/init/comcd3"),true,'','');
  1257. zbcfGetKindCodeList(
  1258. new Array(bizid), //업무규칙
  1259. new Array("A0218"), //코드군
  1260. new Array("/root/init/comcodelist/schecnts_cmblist"), //노드
  1261. true, //minimum : true TRZBC00105
  1262. new Array("cdid"), //sorting 항목
  1263. new Array("asc")
  1264. );
  1265. if (scheflagcd == 'A') {
  1266. cmb_schecnts.choices.itemset.attribute("nodeset") = "/root/init/comcodelist/schecnts_kindcmblist/A0002A0218";
  1267. } else if (scheflagcd == 'B') {
  1268. cmb_schecnts.choices.itemset.attribute("nodeset") = "/root/init/comcodelist/schecnts_kindcmblist/A0003A0218";
  1269. } else if (scheflagcd == 'C') {
  1270. cmb_schecnts.choices.itemset.attribute("nodeset") = "/root/init/comcodelist/schecnts_kindcmblist/A0004A0218";
  1271. } else if (scheflagcd == 'D') {
  1272. cmb_schecnts.choices.itemset.attribute("nodeset") = "/root/init/comcodelist/schecnts_kindcmblist/A0005A0218";
  1273. } else if (scheflagcd == 'Z') {
  1274. cmb_schecnts.choices.itemset.attribute("nodeset") = "/root/init/comcodelist/schecnts_kindcmblist/A0006A0218";
  1275. }
  1276. cmb_schecnts.refresh();
  1277. cmb_schecnts.select(0);
  1278. }
  1279. //당직일정등록 탭 선택시
  1280. function fNgdtScheInfo() {
  1281. var saveinfo = model.getValue("/root/main/yyschergst/yyschergstinfo/conslrid");
  1282. if (saveinfo != "") {
  1283. var saveYN = messageBox("저장하지 않은 내용이 있습니다!", "Q003");
  1284. if(saveYN == 6) { //예
  1285. model.toggle("case_ngdtsche");
  1286. //연간일정 등록 초기화
  1287. fResetYY();
  1288. }else if (saveYN == 7) { //아니오
  1289. btn_yyrgst.dispatch("onclick");
  1290. return;
  1291. }
  1292. } else {
  1293. if ( swt_sche.selectedIndex == 1) {
  1294. // 원목자 리스트 초기화
  1295. fResetConslrList();
  1296. }
  1297. model.toggle("case_ngdtsche");
  1298. }
  1299. }
  1300. //연간일정등록 탭 선택시
  1301. function fYYScheInfo() {
  1302. var saveinfo = model.getValue("/root/main/ngdtschergst/ngdtschergstinfo/conslrid");
  1303. if (saveinfo != "") {
  1304. var saveYN = messageBox("저장하지 않은 내용이 있습니다!", "Q003");
  1305. if(saveYN == 6) { //예
  1306. model.toggle("case_yysche");
  1307. //당직일정 등록 초기화
  1308. fResetNgdt();
  1309. //연간일정 등록 초기화
  1310. fResetYY();
  1311. }else if (saveYN == 7) { //아니오
  1312. btn_ngdtrgst.dispatch("onclick");
  1313. return;
  1314. }
  1315. } else {
  1316. if ( swt_sche.selectedIndex == 0 ) {
  1317. //원목자리스트 초기화
  1318. fResetConslrList();
  1319. //연간일정 등록 초기화
  1320. fResetYY();
  1321. }
  1322. model.toggle("case_yysche");
  1323. }
  1324. }
  1325. //원목자리스트 초기화
  1326. function fResetConslrList() {
  1327. grd_conslrlist.fixedcellischeck(0, 1) = false;
  1328. for (var i = 1; i < grd_conslrlist.rows; i++) {
  1329. model.resetInstanceNode("/root/main/conslrlist/conslrlistinfo[" + i + "]/chk");
  1330. }
  1331. //model.refresh();
  1332. }
  1333. //연간일정 조회시 구분에 따른 내용콤보 셋팅
  1334. function fScheCntsRef() {
  1335. for ( i = 1; i < grd_yyschelist.rows; i++) {
  1336. var idx_scheflagcd = model.getValue("/root/main/yyschelist/yyschelistinfo[" + i + "]/scheflagcd");
  1337. if( idx_scheflagcd == "A" ) {
  1338. grd_yyschelist.cellComboNodeset(i,5) = "/root/init/comcodelist/schecnts_cmblist/A0218[flag='A']";
  1339. } else if (idx_scheflagcd == "B" ) {
  1340. grd_yyschelist.cellComboNodeset(i,5) = "/root/init/comcodelist/schecnts_cmblist/A0218[flag='B']";
  1341. } else if( idx_scheflagcd == "C" ) {
  1342. grd_yyschelist.cellComboNodeset(i,5) = "/root/init/comcodelist/schecnts_cmblist/A0218[flag='C']";
  1343. } else if( idx_scheflagcd == "D" ) {
  1344. grd_yyschelist.cellComboNodeset(i,5) = "/root/init/comcodelist/schecnts_cmblist/A0218[flag='D']";
  1345. } else if( idx_scheflagcd == "Z" ) {
  1346. grd_yyschelist.cellComboNodeset(i,5) = "/root/init/comcodelist/schecnts_cmblist/A0218[flag='Z']";
  1347. }
  1348. }
  1349. }
  1350. //연간일정구분 그리드 콤보 변경에 따른 내용콤보 셋팅
  1351. function fScheflagChgRef_Grd() {
  1352. /* scheflagcd
  1353. A : 휴가
  1354. B : 영성교육
  1355. C : 자기계발교육
  1356. D : 직무교육
  1357. Z : 기타
  1358. */
  1359. if( grd_yyschelist.col == 4 ) {
  1360. if( grd_yyschelist.valueMatrix(grd_yyschelist.row,4) == "A" ) {
  1361. grd_yyschelist.cellComboNodeset(grd_yyschelist.row,5) = "/root/init/comcodelist/schecnts_cmblist/A0218[flag='A']";
  1362. } else if( grd_yyschelist.valueMatrix(grd_yyschelist.row,4) == "B" ) {
  1363. grd_yyschelist.cellComboNodeset(grd_yyschelist.row,5) = "/root/init/comcodelist/schecnts_cmblist/A0218[flag='B']";
  1364. } else if( grd_yyschelist.valueMatrix(grd_yyschelist.row,4) == "C" ) {
  1365. grd_yyschelist.cellComboNodeset(grd_yyschelist.row,5) = "/root/init/comcodelist/schecnts_cmblist/A0218[flag='C']";
  1366. } else if( grd_yyschelist.valueMatrix(grd_yyschelist.row,4) == "D" ) {
  1367. grd_yyschelist.cellComboNodeset(grd_yyschelist.row,5) = "/root/init/comcodelist/schecnts_cmblist/A0218[flag='D']";
  1368. } else if( grd_yyschelist.valueMatrix(grd_yyschelist.row,4) == "Z" ) {
  1369. grd_yyschelist.cellComboNodeset(grd_yyschelist.row,5) = "/root/init/comcodelist/schecnts_cmblist/A0218[flag='Z']";
  1370. }
  1371. model.refresh();
  1372. }
  1373. }
  1374. // 당직일정조회 entercell
  1375. function fEntCelNgdtSche()
  1376. {
  1377. if (grd_ngdtschelist.colType(grd_ngdtschelist.col) == "input")
  1378. grd_ngdtschelist.editCell();
  1379. }
  1380. // 연간일정조회 entercell
  1381. function fEntCelYYSche()
  1382. {
  1383. if (grd_yyschelist.colType(grd_yyschelist.col) == "input")
  1384. grd_yyschelist.editCell();
  1385. }
  1386. // 당일일정 등록 entercell
  1387. function fEntCelNgdtRgst()
  1388. {
  1389. if (grd_ngdtrgstlist.colType(grd_ngdtrgstlist.col) == "input")
  1390. grd_ngdtrgstlist.editCell();
  1391. }
  1392. // 연간일정조회 Popup
  1393. function fAYA00300()
  1394. {
  1395. modal("SMAYA00300",1,100,100);
  1396. //modal("SMAYA00300",null,null,null, "SMAYA00300", "/root/actsource", "/root/main/actsource");
  1397. }
  1398. // 당직일정현황조회 popup
  1399. function fAYA00200()
  1400. {
  1401. modal("SMAYA00200",1,100,100);
  1402. //modal("SMAYA00200",null,null,null, "SMAYA00200", "/root/actsource", "/root/main/actsource");
  1403. }
  1404. ]]>
  1405. </script>
  1406. </xhtml:head>
  1407. <xhtml:body guideline="1,1388;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  1408. <group id="group3" scroll="auto" style="left:0px; top:13px; width:1195px; height:742px; ">
  1409. <line id="line12" class="line_1" style="x1:0px; y1:27px; x2:315px; y2:27px; "/>
  1410. <datagrid id="grd_conslrlist" nodeset="/root/main/conslrlist/conslrlistinfo" caption="^사번^원목자명^핸드폰번호^부서전화" colwidth="30, 58, 59, 76, 66" dataheight="25" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="25" rowsep="|" colsep="^" style="left:0px; top:32px; width:315px; height:450px; ">
  1411. <col ref="chk" type="checkbox"/>
  1412. <col ref="conslrid" style="text-align:center; "/>
  1413. <col ref="conslrnm" style="text-align:center; "/>
  1414. <col ref="mpphontel"/>
  1415. <col ref="depttel"/>
  1416. <script type="javascript" ev:event="onclick">
  1417. <![CDATA[
  1418. //원목자 리스트 선택시 연간일정 등록 리스트로 이동
  1419. fSelectedConslrList();
  1420. model.refresh();
  1421. ]]>
  1422. </script>
  1423. </datagrid>
  1424. <caption id="caption1" class="tit_2" style="left:4px; top:494px; width:108px; height:13px; ">당직일정 조회</caption>
  1425. <line id="line1" class="line_1" style="x1:0px; y1:510px; x2:315px; y2:510px; "/>
  1426. <datagrid id="grd_ngdtschelist" nodeset="/root/main/ngdtschelist/ngdtschelistinfo" autoresize="true" caption="^당직일^참고사항^원목자아이디^당직일자(key)^일련번호^상태" colwidth="30, 100, 119, 40, 100, 40, 40" dataheight="25" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="25" rowsep="|" colsep="^" tooltip="true" style="left:0px; top:515px; width:315px; height:225px; ">
  1427. <col ref="chk" type="checkbox"/>
  1428. <col ref="ngdtddday"/>
  1429. <col ref="rem" type="input" imemode="hangul" maxlength="30"/>
  1430. <col ref="conslrid" visibility="hidden"/>
  1431. <col ref="ngdtdd" visibility="hidden"/>
  1432. <col ref="seqno" visibility="hidden">
  1433. <![CDATA[ngdtschelistinfo]]>
  1434. </col>
  1435. <col ref="status" visibility="hidden"/>
  1436. <script type="javascript" ev:event="onclick">
  1437. <![CDATA[
  1438. //당직일정 조회 그리드에서 해당 당직일 선택
  1439. fSelNgdtSche();
  1440. ]]>
  1441. </script>
  1442. <script type="javascript" ev:event="xforms-value-changed">
  1443. <![CDATA[
  1444. //당직일정 그리드 값 변경시 체크 알림
  1445. //fChkNgdtSche();
  1446. ]]>
  1447. </script>
  1448. <script type="javascript" ev:event="onentercell">
  1449. <![CDATA[
  1450. fEntCelNgdtSche();
  1451. ]]>
  1452. </script>
  1453. </datagrid>
  1454. <caption id="caption3" class="tit_2" style="left:5px; top:11px; width:145px; height:13px; ">원목자 리스트</caption>
  1455. <button id="button90" class="btn5_letter2" style="left:228px; top:490px; width:49px; height:19px; ">
  1456. <caption>저장</caption>
  1457. <script type="javascript" ev:event="DOMActivate">
  1458. <![CDATA[
  1459. //당직일정 조회부분의 저장(수정)버튼 클릭시
  1460. fUpdtNgdtSche();
  1461. model.refresh();
  1462. ]]>
  1463. </script>
  1464. </button>
  1465. <button id="button4" class="btn5_letter2" style="left:273px; top:490px; width:42px; height:19px; ">
  1466. <caption>삭제</caption>
  1467. <script type="javascript" ev:event="DOMActivate">
  1468. <![CDATA[
  1469. fDelNgdtSche();
  1470. model.refresh();
  1471. ]]>
  1472. </script>
  1473. </button>
  1474. <button id="btn_ngdtrgst" class="btn_sw" group="tab" selected="true" style="left:320px; top:5px; width:88px; height:22px; ">
  1475. <caption>당직일정등록</caption>
  1476. <script type="javascript" ev:event="DOMActivate">
  1477. <![CDATA[
  1478. fNgdtScheInfo();
  1479. model.refresh();
  1480. ]]>
  1481. </script>
  1482. </button>
  1483. <button id="btn_yyrgst" class="btn_sw" group="tab" style="left:408px; top:5px; width:88px; height:22px; ">
  1484. <caption>연간일정등록</caption>
  1485. <script type="javascript" ev:event="DOMActivate">
  1486. <![CDATA[
  1487. fYYScheInfo();
  1488. model.refresh();
  1489. ]]>
  1490. </script>
  1491. </button>
  1492. <switch id="swt_sche" class="sw_box" style="left:320px; top:25px; width:869px; height:458px; border-style:solid; ">
  1493. <case id="case_ngdtsche">
  1494. <line id="line3" class="line_1" style="x1:584px; y1:94px; x2:865px; y2:94px; "/>
  1495. <button id="button9" class="btn5_letter2" style="left:767px; top:74px; width:42px; height:19px; ">
  1496. <caption>저장</caption>
  1497. <script type="javascript" ev:event="DOMActivate">
  1498. <![CDATA[
  1499. //당직일정 등록부분의 저장버튼 클릭시
  1500. fSaveNgdtSche();
  1501. model.refresh();
  1502. ]]>
  1503. </script>
  1504. </button>
  1505. <datagrid id="grd_calendar" nodeset="/root/main/cal/weeks" allowselection="true" allowuserresize="false" backcoloralternate="transparent" caption="일^월^화^수^목^금^토" colwidth="82, 82, 82, 82, 82, 82, 82" defaultrows="7" focuscolor="transparent" frozencols="1" selectionmode="free" rowsep="|" colsep="^" style="left:2px; top:43px; width:577px; height:411px; ">
  1506. <col ref="sun" style="vertical-align:top; "/>
  1507. <col ref="mon" style="vertical-align:top; "/>
  1508. <col ref="tue" style="vertical-align:top; "/>
  1509. <col ref="wed" style="vertical-align:top; "/>
  1510. <col ref="thu" style="vertical-align:top; "/>
  1511. <col ref="fri" style="vertical-align:top; "/>
  1512. <col ref="sat" style="vertical-align:top; "/>
  1513. <script type="javascript" ev:event="onclick">
  1514. <![CDATA[
  1515. //달력 날짜 클릭시
  1516. fSelectedDate();
  1517. ]]>
  1518. </script>
  1519. </datagrid>
  1520. <select1 id="rdo_rgstflagcd" ref="/root/main/cond_rgstngdt/rgstflagcd" class="radio_search" overflow="visible" appearance="full" rows="1" cols="2" cellspacing="10" style="left:672px; top:5px; width:140px; height:19px; border-style:none; ">
  1521. <choices>
  1522. <item>
  1523. <label>일반</label>
  1524. <value>G</value>
  1525. </item>
  1526. <item>
  1527. <label>반복일정</label>
  1528. <value>R</value>
  1529. </item>
  1530. </choices>
  1531. <script type="javascript" ev:event="xforms-select">
  1532. <![CDATA[
  1533. //등록구분 선택(일반/반복일정)
  1534. fSelectRgstFlag();
  1535. ]]>
  1536. </script>
  1537. </select1>
  1538. <input id="ipt_ngdtfromdd" ref="/root/main/cond_rgstngdt/ngdtfromdd" class="input_default" inputtype="date" style="left:672px; top:26px; width:90px; height:19px; "/>
  1539. <input id="ipt_ngdttodd" ref="/root/main/cond_rgstngdt/ngdttodd" class="input_default" inputtype="date" style="left:775px; top:26px; width:90px; height:19px; "/>
  1540. <select1 id="cmb_ngdtdwcd" ref="/root/main/cond_rgstngdt/ngdtdwcd" class="combo_default" appearance="minimal" style="left:672px; top:49px; width:90px; height:19px; ">
  1541. <choices>
  1542. <itemset nodeset="/root/init/comcodelist/ngdtdwcd_cmblist/P0033">
  1543. <label ref="cdnm"/>
  1544. <value ref="cdid"/>
  1545. </itemset>
  1546. </choices>
  1547. </select1>
  1548. <caption id="caption4" class="search_no_b" style="left:762px; top:26px; width:17px; height:17px; ">~</caption>
  1549. <caption id="caption7" class="tit_2" style="left:588px; top:78px; width:118px; height:14px; ">당직일정 등록</caption>
  1550. <datagrid id="grd_ngdtrgstlist" nodeset="/root/main/ngdtschergst/ngdtschergstinfo" autoresize="true" caption="사번^원목자명^당직일^참고사항^상태" colwidth="56, 61, 69, 68, 40" dataheight="25" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="25" rowsep="|" colsep="^" style="left:584px; top:99px; width:281px; height:355px; ">
  1551. <col ref="conslrid"/>
  1552. <col ref="conslrnm"/>
  1553. <col ref="ngdtdd" format="yyyy-mm-dd"/>
  1554. <col ref="rem" type="input" imemode="hangul" maxlength="30"/>
  1555. <col ref="status" visibility="hidden"/>
  1556. <script type="javascript" ev:event="onentercell">
  1557. <![CDATA[
  1558. fEntCelNgdtRgst();
  1559. ]]>
  1560. </script>
  1561. </datagrid>
  1562. <group id="grp_calendar" style="left:2px; top:2px; width:579px; height:40px; ">
  1563. <shape id="rectangle1" class="calendar_header" appearance="rectangle" style="left:0px; top:0px; width:577px; height:40px; "/>
  1564. <button id="btn_afmonth" class="icon_next_month" style="left:373px; top:14px; width:16px; height:16px; ">
  1565. <caption/>
  1566. <script type="javascript" ev:event="DOMActivate">
  1567. <![CDATA[
  1568. //다음 달 조회 클릭
  1569. fAfMonthRef();
  1570. //달력스타일 초기화
  1571. fInitCalendarStyle();
  1572. //달력정보 및 일자별 담당원목자를 달력에 표시
  1573. fSetCalendar();
  1574. model.refresh();
  1575. ]]>
  1576. </script>
  1577. </button>
  1578. <button id="btn_bfmonth" class="icon_pre_month" style="left:186px; top:14px; width:16px; height:16px; ">
  1579. <caption/>
  1580. <script type="javascript" ev:event="DOMActivate">
  1581. <![CDATA[
  1582. //이전 달 조회 클릭
  1583. fBfMonthRef();
  1584. //달력스타일 초기화
  1585. fInitCalendarStyle();
  1586. //달력정보 및 일자별 담당원목자를 달력에 표시
  1587. fSetCalendar();
  1588. model.refresh();
  1589. ]]>
  1590. </script>
  1591. </button>
  1592. <button id="btn_bfyear" class="icon_pre_year" style="left:167px; top:14px; width:16px; height:16px; ">
  1593. <caption/>
  1594. <script type="javascript" ev:event="DOMActivate">
  1595. <![CDATA[
  1596. //이전 년도 조회 클릭
  1597. fBfYearRef();
  1598. //달력스타일 초기화
  1599. fInitCalendarStyle();
  1600. //달력정보 및 일자별 담당원목자를 달력에 표시
  1601. fSetCalendar();
  1602. model.refresh();
  1603. ]]>
  1604. </script>
  1605. </button>
  1606. <button id="btn_afyear" class="icon_next_year" style="left:392px; top:14px; width:16px; height:16px; ">
  1607. <caption/>
  1608. <script type="javascript" ev:event="DOMActivate">
  1609. <![CDATA[
  1610. //다음 년도 조회 클릭
  1611. fAfYearRef();
  1612. //달력스타일 초기화
  1613. fInitCalendarStyle();
  1614. //달력정보 및 일자별 담당원목자를 달력에 표시
  1615. fSetCalendar();
  1616. model.refresh();
  1617. ]]>
  1618. </script>
  1619. </button>
  1620. <select1 id="cmb_year" ref="/root/main/cond_cal/year" class="combo_default" appearance="minimal" style="left:210px; top:12px; width:70px; height:19px; text-align:center; ">
  1621. <choices>
  1622. <itemset nodeset="/root/init/calyear">
  1623. <label ref="cdnm"/>
  1624. <value ref="cdid"/>
  1625. </itemset>
  1626. </choices>
  1627. <script type="javascript" ev:event="xforms-value-changed">
  1628. <![CDATA[
  1629. //달력스타일 초기화
  1630. fInitCalendarStyle();
  1631. //달력정보 및 일자별 담당원목자를 달력에 표시
  1632. fSetCalendar();
  1633. model.refresh();
  1634. ]]>
  1635. </script>
  1636. </select1>
  1637. <select1 id="cmb_month" ref="/root/main/cond_cal/month" class="combo_default" appearance="minimal" style="left:307px; top:12px; width:44px; height:19px; text-align:center; ">
  1638. <choices>
  1639. <item>
  1640. <label>1</label>
  1641. <value>01</value>
  1642. </item>
  1643. <item>
  1644. <label>2</label>
  1645. <value>02</value>
  1646. </item>
  1647. <item>
  1648. <label>3</label>
  1649. <value>03</value>
  1650. </item>
  1651. <item>
  1652. <label>4</label>
  1653. <value>04</value>
  1654. </item>
  1655. <item>
  1656. <label>5</label>
  1657. <value>05</value>
  1658. </item>
  1659. <item>
  1660. <label>6</label>
  1661. <value>06</value>
  1662. </item>
  1663. <item>
  1664. <label>7</label>
  1665. <value>07</value>
  1666. </item>
  1667. <item>
  1668. <label>8</label>
  1669. <value>08</value>
  1670. </item>
  1671. <item>
  1672. <label>9</label>
  1673. <value>09</value>
  1674. </item>
  1675. <item>
  1676. <label>10</label>
  1677. <value>10</value>
  1678. </item>
  1679. <item>
  1680. <label>11</label>
  1681. <value>11</value>
  1682. </item>
  1683. <item>
  1684. <label>12</label>
  1685. <value>12</value>
  1686. </item>
  1687. </choices>
  1688. <script type="javascript" ev:event="xforms-value-changed">
  1689. <![CDATA[
  1690. //달력스타일 초기화
  1691. fInitCalendarStyle();
  1692. //달력정보 및 일자별 담당원목자를 달력에 표시
  1693. fSetCalendar();
  1694. model.refresh();
  1695. ]]>
  1696. </script>
  1697. </select1>
  1698. <caption id="caption16" class="calendar_output" style="left:282px; top:12px; width:20px; height:19px; ">년</caption>
  1699. <caption id="caption17" class="calendar_output" style="left:351px; top:12px; width:20px; height:19px; ">월</caption>
  1700. </group>
  1701. <caption id="caption8" class="cell_1" style="left:584px; top:2px; width:85px; height:68px; vertical-align:middle; ">등록구분</caption>
  1702. <line id="line8" class="line_3" style="x1:584px; y1:71px; x2:865px; y2:71px; "/>
  1703. <button id="btn_select" class="btn2_letter2" style="left:823px; top:4px; width:42px; height:19px; ">
  1704. <caption>선택</caption>
  1705. <script type="javascript" ev:event="DOMActivate">
  1706. <![CDATA[
  1707. //반복일정 선택시 당직일정 그리드로 이동
  1708. fRptSche();
  1709. model.refresh();
  1710. ]]>
  1711. </script>
  1712. </button>
  1713. <button id="button91" class="btn5_letter3" style="left:812px; top:74px; width:53px; height:19px; ">
  1714. <caption>초기화</caption>
  1715. <script type="javascript" ev:event="DOMActivate">
  1716. <![CDATA[
  1717. //당직일정 등록 초기화
  1718. fResetNgdt();
  1719. grd_ngdtrgstlist.rebuild();
  1720. model.refresh();
  1721. ]]>
  1722. </script>
  1723. </button>
  1724. </case>
  1725. <case id="case_yysche" selected="true">
  1726. <line id="line13" class="line_2" style="x1:446px; y1:77px; x2:864px; y2:77px; "/>
  1727. <caption id="caption21" class="cell_1" style="left:657px; top:79px; width:85px; height:23px; vertical-align:middle; ">내용</caption>
  1728. <caption id="caption22" class="cell_1" style="left:657px; top:30px; width:85px; height:23px; vertical-align:middle; ">종료일</caption>
  1729. <line id="line14" class="line_3" style="x1:446px; y1:199px; x2:865px; y2:199px; "/>
  1730. <caption id="caption23" class="cell_1" style="left:446px; top:152px; width:85px; height:23px; vertical-align:middle; ">장소</caption>
  1731. <select1 id="cmb_schecnts" ref="/root/main/yyschecnts/yyschecntsinfo/schecntscd" class="combo_default" appearance="minimal" style="left:745px; top:80px; width:120px; height:19px; ">
  1732. <choices>
  1733. <itemset>
  1734. <label ref="cdnm"/>
  1735. <value ref="cdid"/>
  1736. </itemset>
  1737. </choices>
  1738. </select1>
  1739. <select1 id="cmb_scheflag" ref="/root/main/yyschecnts/yyschecntsinfo/scheflagcd" class="combo_default" appearance="minimal" style="left:534px; top:80px; width:120px; height:19px; ">
  1740. <choices>
  1741. <itemset nodeset="/root/init/comcodelist/scheflag_cmblist/A0217">
  1742. <label ref="cdnm"/>
  1743. <value ref="cdid"/>
  1744. </itemset>
  1745. </choices>
  1746. <script type="javascript" ev:event="xforms-select">
  1747. <![CDATA[
  1748. fScheflagChgRef();
  1749. ]]>
  1750. </script>
  1751. </select1>
  1752. <caption id="caption24" class="cell_1" style="left:446px; top:30px; width:85px; height:23px; vertical-align:middle; ">시작일</caption>
  1753. <line id="line16" class="line_2" style="x1:446px; y1:126px; x2:864px; y2:126px; "/>
  1754. <line id="line17" class="line_2" style="x1:446px; y1:174px; x2:864px; y2:174px; "/>
  1755. <caption id="caption25" class="cell_1" style="left:446px; top:79px; width:85px; height:23px; vertical-align:middle; ">구분</caption>
  1756. <input id="ipt_yyschetodd" ref="/root/main/yyschecnts/yyschecntsinfo/todd" class="input_default" inputtype="date" style="left:745px; top:32px; width:120px; height:19px; "/>
  1757. <caption id="caption26" class="cell_1" style="left:657px; top:128px; width:85px; height:23px; vertical-align:middle; ">수료증여부</caption>
  1758. <line id="line18" class="line_2" style="x1:446px; y1:150px; x2:864px; y2:150px; "/>
  1759. <caption id="caption27" class="cell_1" style="left:446px; top:176px; width:85px; height:23px; vertical-align:middle; ">비고</caption>
  1760. <caption id="caption28" class="cell_1" style="left:446px; top:128px; width:85px; height:23px; vertical-align:middle; ">비용</caption>
  1761. <input id="ipt_yyschefromdd" ref="/root/main/yyschecnts/yyschecntsinfo/fromdd" class="input_default" inputtype="date" style="left:534px; top:32px; width:120px; height:19px; ">
  1762. <script type="javascript" ev:event="xforms-value-changed">
  1763. <![CDATA[
  1764. var fromdd = model.getValue("/root/main/yyschecnts/yyschecntsinfo/fromdd");
  1765. model.setValue("/root/main/yyschecnts/yyschecntsinfo/todd", fromdd);
  1766. ipt_yyschetodd.refresh();
  1767. ]]>
  1768. </script>
  1769. </input>
  1770. <line id="line19" class="line_1" style="x1:446px; y1:25px; x2:865px; y2:25px; "/>
  1771. <datagrid id="grd_yyschergstlist" nodeset="/root/main/yyschergst/yyschergstinfo" caption="사번^원목자명^핸드폰번호^부서전화^시작일^종료일^시작시간^종료시간^일정구분코드^일정내용코드^비용^수료증여부^장소^비고^분류내용^상태" colwidth="93, 100, 127, 90, 40, 40, 31, 34, 40, 40, 40, 40, 40, 40, 40, 40" dataheight="25" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="25" rowsep="|" colsep="^" style="left:4px; top:30px; width:437px; height:425px; ">
  1772. <col ref="conslrid"/>
  1773. <col ref="conslrnm"/>
  1774. <col ref="mpphontel"/>
  1775. <col ref="depttel"/>
  1776. <col ref="fromdd" visibility="hidden"/>
  1777. <col ref="todd" visibility="hidden"/>
  1778. <col ref="fromtm" visibility="hidden"/>
  1779. <col ref="totm" visibility="hidden"/>
  1780. <col ref="scheflagcd" visibility="hidden"/>
  1781. <col ref="schecntscd" visibility="hidden"/>
  1782. <col ref="cost" visibility="hidden"/>
  1783. <col ref="diplyn" visibility="hidden"/>
  1784. <col ref="plcenm" visibility="hidden"/>
  1785. <col ref="rem" visibility="hidden"/>
  1786. <col ref="clscntscd" visibility="hidden"/>
  1787. <col ref="status" visibility="hidden"/>
  1788. </datagrid>
  1789. <button id="button11" class="btn5_letter2" style="left:767px; top:5px; width:42px; height:19px; ">
  1790. <caption>저장</caption>
  1791. <script type="javascript" ev:event="DOMActivate">
  1792. <![CDATA[
  1793. fSaveYYSche();
  1794. model.refresh();
  1795. ]]>
  1796. </script>
  1797. </button>
  1798. <line id="line20" class="line_1" style="x1:4px; y1:25px; x2:441px; y2:25px; "/>
  1799. <caption id="caption29" class="tit_2" style="left:9px; top:11px; width:145px; height:14px; ">선택한 원목자 리스트</caption>
  1800. <caption id="caption30" class="tit_2" style="left:450px; top:11px; width:145px; height:13px; ">연간일정 등록</caption>
  1801. <caption id="caption9" style="left:638px; top:135px; width:15px; height:15px; ">원</caption>
  1802. <button id="button1" class="btn5_letter3" style="left:812px; top:5px; width:53px; height:19px; ">
  1803. <caption>초기화</caption>
  1804. <script type="javascript" ev:event="DOMActivate">
  1805. <![CDATA[
  1806. //연간일정 등록 초기화
  1807. fResetYY();
  1808. model.refresh();
  1809. ]]>
  1810. </script>
  1811. </button>
  1812. <caption id="caption5" class="cell_1" style="left:447px; top:104px; width:85px; height:23px; vertical-align:middle; ">분류내용</caption>
  1813. <line id="line4" class="line_2" style="x1:446px; y1:103px; x2:864px; y2:103px; "/>
  1814. <select1 id="rdo_clscntscd" ref="/root/main/yyschecnts/yyschecntsinfo/clscntscd" overflow="visible" appearance="full" cols="2" style="left:535px; top:105px; width:140px; height:20px; border-style:none; ">
  1815. <choices>
  1816. <item>
  1817. <label>팀</label>
  1818. <value>1</value>
  1819. </item>
  1820. <item>
  1821. <label>개별</label>
  1822. <value>2</value>
  1823. </item>
  1824. </choices>
  1825. </select1>
  1826. <input id="ipt_cost" ref="/root/main/yyschecnts/yyschecntsinfo/cost" class="input_default" maxlength="9" format="#,###" style="left:534px; top:130px; width:100px; height:19px; "/>
  1827. <select1 id="cmb_diplyn" ref="/root/main/yyschecnts/yyschecntsinfo/diplyn" class="combo_default" appearance="minimal" style="left:745px; top:130px; width:65px; height:19px; ">
  1828. <choices>
  1829. <item>
  1830. <label>Y</label>
  1831. <value>Y</value>
  1832. </item>
  1833. <item>
  1834. <label>N</label>
  1835. <value>N</value>
  1836. </item>
  1837. </choices>
  1838. </select1>
  1839. <input id="ipt_plcenm" ref="/root/main/yyschecnts/yyschecntsinfo/plcenm" class="input_default" imemode="hangul" maxlength="33" style="left:534px; top:153px; width:331px; height:19px; "/>
  1840. <input id="ipt_rem" ref="/root/main/yyschecnts/yyschecntsinfo/rem" class="input_default" imemode="hangul" maxlength="30" style="left:534px; top:178px; width:331px; height:19px; "/>
  1841. <caption id="caption10" class="cell_1" style="left:446px; top:54px; width:85px; height:23px; vertical-align:middle; ">시작시간</caption>
  1842. <caption id="caption12" class="cell_1" style="left:657px; top:54px; width:85px; height:23px; vertical-align:middle; ">종료시간</caption>
  1843. <input id="ipt_fromtm" ref="/root/main/yyschecnts/yyschecntsinfo/fromtm" class="input_default" maxlength="9" format="hh:nn" style="left:534px; top:56px; width:120px; height:19px; "/>
  1844. <input id="ipt_totm" ref="/root/main/yyschecnts/yyschecntsinfo/totm" class="input_default" maxlength="9" format="hh:nn" style="left:745px; top:55px; width:120px; height:19px; "/>
  1845. </case>
  1846. </switch>
  1847. <datagrid id="grd_yyschelist" nodeset="/root/main/yyschelist/yyschelistinfo" autoresize="true" caption="^시작일^종료일^시작시간^종료시간^구분^내용^분류내용^비용^수료증 여부^장소^비고^원목자아이디^구분코드_a^일련번호^상태" colwidth="30, 95, 95, 60, 60, 105, 100, 60, 70, 70, 115, 99, 40, 40, 40, 40" dataheight="25" explorerbar="sortshowmove" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="25" rowsep="|" colsep="^" tooltip="true" style="left:320px; top:515px; width:874px; height:225px; ">
  1848. <col ref="chk" type="checkbox"/>
  1849. <col ref="fromdd" type="inputdate"/>
  1850. <col ref="todd" type="inputdate"/>
  1851. <col ref="fromtm" type="input" format="hh:nn"/>
  1852. <col ref="totm" type="input" format="hh:nn"/>
  1853. <col ref="scheflagcd" type="combo" disabled="true">
  1854. <choices>
  1855. <itemset nodeset="/root/init/comcodelist/scheflag_cmblist/A0217">
  1856. <label ref="cdnm"/>
  1857. <value ref="cdid"/>
  1858. </itemset>
  1859. </choices>
  1860. </col>
  1861. <col ref="schecntscd" type="combo">
  1862. <choices>
  1863. <itemset nodeset="/root/init/comcodelist/schecnts_cmblist/A0218">
  1864. <label ref="cdnm"/>
  1865. <value ref="cdid"/>
  1866. </itemset>
  1867. </choices>
  1868. </col>
  1869. <col ref="clscntscd" type="combo">
  1870. <choices>
  1871. <item>
  1872. <label>팀</label>
  1873. <value>1</value>
  1874. </item>
  1875. <item>
  1876. <label>개별</label>
  1877. <value>2</value>
  1878. </item>
  1879. </choices>
  1880. </col>
  1881. <col ref="cost" type="input" maxlength="9" style="text-align:right; "/>
  1882. <col ref="diplyn" type="combo" style="text-align:center; ">
  1883. <choices>
  1884. <item>
  1885. <label>Y</label>
  1886. <value>Y</value>
  1887. </item>
  1888. <item>
  1889. <label>N</label>
  1890. <value>N</value>
  1891. </item>
  1892. </choices>
  1893. </col>
  1894. <col ref="plcenm" type="input" imemode="hangul" maxlength="33"/>
  1895. <col ref="rem" type="input" imemode="hangul" maxlength="30" allowuserresize="true"/>
  1896. <col ref="conslrid" visibility="hidden"/>
  1897. <col ref="scheflagcd_a" visibility="hidden"/>
  1898. <col ref="seqno" visibility="hidden"/>
  1899. <col ref="status" visibility="hidden"/>
  1900. <script type="javascript" ev:event="xforms-value-changed">
  1901. <![CDATA[
  1902. //fChkYYSche();
  1903. ]]>
  1904. </script>
  1905. <script type="javascript" ev:event="onclick">
  1906. <![CDATA[
  1907. fSelYYSche();
  1908. ]]>
  1909. </script>
  1910. <script type="javascript" ev:event="xforms-select">
  1911. <![CDATA[
  1912. //연간일정구분 그리드 콤보 변경에 따른 내용콤보 셋팅
  1913. fScheflagChgRef_Grd();
  1914. ]]>
  1915. </script>
  1916. <script type="javascript" ev:event="onentercell">
  1917. <![CDATA[
  1918. fEntCelYYSche();
  1919. ]]>
  1920. </script>
  1921. </datagrid>
  1922. <line id="line2" class="line_1" style="x1:320px; y1:510px; x2:1194px; y2:510px; "/>
  1923. <caption id="caption2" class="tit_2" style="left:325px; top:496px; width:160px; height:13px; ">연간일정 조회</caption>
  1924. <button id="button3" class="btn5_letter2" style="left:1107px; top:490px; width:42px; height:19px; ">
  1925. <caption>저장</caption>
  1926. <script type="javascript" ev:event="DOMActivate">
  1927. <![CDATA[
  1928. fUpdtYYSche();
  1929. model.refresh();
  1930. ]]>
  1931. </script>
  1932. </button>
  1933. <button id="button2" class="btn5_letter2" style="left:1152px; top:490px; width:42px; height:19px; ">
  1934. <caption>삭제</caption>
  1935. <script type="javascript" ev:event="DOMActivate">
  1936. <![CDATA[
  1937. fDelYYSche();
  1938. model.refresh();
  1939. ]]>
  1940. </script>
  1941. </button>
  1942. <select1 id="cmb_yyyear" ref="/root/main/cond_refyy/yy_refyear" class="combo_default" appearance="minimal" style="left:994px; top:490px; width:56px; height:19px; ">
  1943. <choices>
  1944. <itemset nodeset="/root/init/combolist/yysche">
  1945. <label ref="yyscheyear"/>
  1946. <value ref="yyscheyear"/>
  1947. </itemset>
  1948. </choices>
  1949. <script type="javascript" ev:event="xforms-value-changed">
  1950. <![CDATA[
  1951. //해당 원목자의 연간일정 조회
  1952. fYYScheListRef();
  1953. model.refresh();
  1954. ]]>
  1955. </script>
  1956. </select1>
  1957. <select1 id="cmb_ngdtmonth" ref="/root/main/cond_refngdt/ngdt_refmonth" class="combo_default" appearance="minimal" style="left:174px; top:490px; width:51px; height:19px; ">
  1958. <choices>
  1959. <item>
  1960. <label>전체</label>
  1961. <value>A</value>
  1962. </item>
  1963. <item>
  1964. <label>1월</label>
  1965. <value>01</value>
  1966. </item>
  1967. <item>
  1968. <label>2월</label>
  1969. <value>02</value>
  1970. </item>
  1971. <item>
  1972. <label>3월</label>
  1973. <value>03</value>
  1974. </item>
  1975. <item>
  1976. <label>4월</label>
  1977. <value>04</value>
  1978. </item>
  1979. <item>
  1980. <label>5월</label>
  1981. <value>05</value>
  1982. </item>
  1983. <item>
  1984. <label>6월</label>
  1985. <value>06</value>
  1986. </item>
  1987. <item>
  1988. <label>7월</label>
  1989. <value>07</value>
  1990. </item>
  1991. <item>
  1992. <label>8월</label>
  1993. <value>08</value>
  1994. </item>
  1995. <item>
  1996. <label>9월</label>
  1997. <value>09</value>
  1998. </item>
  1999. <item>
  2000. <label>10월</label>
  2001. <value>10</value>
  2002. </item>
  2003. <item>
  2004. <label>11월</label>
  2005. <value>11</value>
  2006. </item>
  2007. <item>
  2008. <label>12월</label>
  2009. <value>12</value>
  2010. </item>
  2011. </choices>
  2012. <script type="javascript" ev:event="xforms-value-changed">
  2013. <![CDATA[
  2014. //해당 원목자의 당직일정 조회
  2015. fNgdtScheListRef();
  2016. model.refresh();
  2017. ]]>
  2018. </script>
  2019. </select1>
  2020. <select1 id="cmb_ngdtyear" ref="/root/main/cond_refngdt/ngdt_refyear" class="combo_default" appearance="minimal" style="left:115px; top:490px; width:56px; height:19px; ">
  2021. <choices>
  2022. <itemset nodeset="/root/init/combolist/ngdtsche">
  2023. <label ref="ngdtscheyear"/>
  2024. <value ref="ngdtscheyear"/>
  2025. </itemset>
  2026. </choices>
  2027. <script type="javascript" ev:event="xforms-value-changed">
  2028. <![CDATA[
  2029. //해당 원목자의 당직일정 조회
  2030. fNgdtScheListRef();
  2031. model.refresh();
  2032. ]]>
  2033. </script>
  2034. </select1>
  2035. <select1 id="cmb_yymonth" ref="/root/main/cond_refyy/yy_refmonth" class="combo_default" appearance="minimal" style="left:1053px; top:490px; width:51px; height:19px; ">
  2036. <choices>
  2037. <item>
  2038. <label>전체</label>
  2039. <value>A</value>
  2040. </item>
  2041. <item>
  2042. <label>1월</label>
  2043. <value>01</value>
  2044. </item>
  2045. <item>
  2046. <label>2월</label>
  2047. <value>02</value>
  2048. </item>
  2049. <item>
  2050. <label>3월</label>
  2051. <value>03</value>
  2052. </item>
  2053. <item>
  2054. <label>4월</label>
  2055. <value>04</value>
  2056. </item>
  2057. <item>
  2058. <label>5월</label>
  2059. <value>05</value>
  2060. </item>
  2061. <item>
  2062. <label>6월</label>
  2063. <value>06</value>
  2064. </item>
  2065. <item>
  2066. <label>7월</label>
  2067. <value>07</value>
  2068. </item>
  2069. <item>
  2070. <label>8월</label>
  2071. <value>08</value>
  2072. </item>
  2073. <item>
  2074. <label>9월</label>
  2075. <value>09</value>
  2076. </item>
  2077. <item>
  2078. <label>10월</label>
  2079. <value>10</value>
  2080. </item>
  2081. <item>
  2082. <label>11월</label>
  2083. <value>11</value>
  2084. </item>
  2085. <item>
  2086. <label>12월</label>
  2087. <value>12</value>
  2088. </item>
  2089. </choices>
  2090. <script type="javascript" ev:event="xforms-value-changed">
  2091. <![CDATA[
  2092. //해당 원목자의 연간일정 조회
  2093. fYYScheListRef();
  2094. fScheCntsRef();
  2095. model.refresh();
  2096. ]]>
  2097. </script>
  2098. </select1>
  2099. <button id="btn_AYA00300" class="btn3_letter6" style="left:1085px; top:3px; width:104px; height:22px; ">
  2100. <caption>연간일정조회</caption>
  2101. <script type="javascript" ev:event="DOMActivate">
  2102. <![CDATA[
  2103. fAYA00300();
  2104. ]]>
  2105. </script>
  2106. </button>
  2107. <button id="button83" class="btn3_letter8" style="left:955px; top:3px; width:128px; height:22px; ">
  2108. <caption>당직일정현황조회</caption>
  2109. <script type="javascript" ev:event="DOMActivate">
  2110. <![CDATA[
  2111. fAYA00200();
  2112. ]]>
  2113. </script>
  2114. </button>
  2115. </group>
  2116. <group id="group5" scroll="auto" style="left:0px; top:757px; width:1195px; height:27px; ">
  2117. <line id="line37" class="line_6" style="x1:0px; y1:0px; x2:1194px; y2:0px; "/>
  2118. </group>
  2119. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  2120. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:800px; height:14px; ">당직 및 연간일정등록관리</caption>
  2121. </group>
  2122. </xhtml:body>
  2123. </xhtml:html>