SMCRB00100_예약전송관리.xrw 109 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <!--
  3. * Name : SMCRB00100_예약전송관리
  4. * Summary : 예약메시지 전송정보
  5. * Programmer : 엄윤호
  6. * Date Written : 2007.08.07
  7. * History : 2008.07.05 차재훈
  8. * Remark :
  9. -->
  10. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
  11. <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
  12. <xhtml:head>
  13. <xhtml:title>예약메시지 전송관리</xhtml:title>
  14. <model id="model1">
  15. <instance id="instance1">
  16. <root xmlns="">
  17. <main>
  18. <groupinfo>
  19. <orddeptlist>
  20. <depthngnm/>
  21. <deptcd/>
  22. <depth/>
  23. </orddeptlist>
  24. <clslist>
  25. <earnclsnm/>
  26. <earnclscd/>
  27. <depth/>
  28. </clslist>
  29. </groupinfo>
  30. <list>
  31. <rsrvlist>
  32. <rsrvflag/>
  33. <itemflag/>
  34. <delivedd/>
  35. <delivetm/>
  36. <smsmsg/>
  37. <smstrsmcntcno/>
  38. <defltyn/>
  39. <clsnmlnk/>
  40. <deliveseq/>
  41. <bfaftflag/>
  42. <smsuseyn/>
  43. <smsmsglrgcd/>
  44. <smsmsgmdlcd/>
  45. <smsmsgsmlcd/>
  46. <clscdlnk/>
  47. <fsexamflag/>
  48. </rsrvlist>
  49. <prcplist>
  50. <rsrvflag/>
  51. <itemflag/>
  52. <rsrvdupluseyn/>
  53. <itemnm/>
  54. <delivedd/>
  55. <delivetm/>
  56. <msgcnts/>
  57. <inptdeptnm/>
  58. <aprvyn/>
  59. <smstrsmcntcno/>
  60. <itemcd/>
  61. <inptdeptcd/>
  62. <rgstdeptcd/>
  63. <delivedd/>
  64. <delivetm/>
  65. <smsmsglrgcd/>
  66. <smsmsgmdlcd/>
  67. <smsmsgsmlcd/>
  68. <smsyn/>
  69. </prcplist>
  70. <prcplisttemp>
  71. <itemflag/>
  72. <itemcd/>
  73. <rgstdeptcd/>
  74. </prcplisttemp>
  75. <msgsmllist>
  76. <msgsmlcd/>
  77. <msgcnts/>
  78. <smstrsmcntcno/>
  79. </msgsmllist>
  80. </list>
  81. <item>
  82. <rsrvflag/>
  83. <bfaftflag>B</bfaftflag>
  84. <delivedd/>
  85. <delivetm/>
  86. <deliveseq/>
  87. <smsuseyn/>
  88. <smsmsglrgcd/>
  89. <smsmsgmdlcd/>
  90. <smsmsgsmlcd/>
  91. <smsmsg/>
  92. <defltyn>Y</defltyn>
  93. <savemode>I</savemode>
  94. <deptcd/>
  95. <clscdlnk/>
  96. <itemflag/>
  97. <itemcd/>
  98. <rgstdeptcd/>
  99. <itemnm/>
  100. <orddrid/>
  101. <rsrvdupluseyn/>
  102. <smsyn/>
  103. <clsnmlnk/>
  104. <inptdeptcd/>
  105. <aprvyn/>
  106. <fsexamflag/>
  107. </item>
  108. <msgtmpl>
  109. <msglrgcd/>
  110. <msgmdlcd/>
  111. <msgsmlcd/>
  112. <replytelno/>
  113. <prvwscrn/>
  114. </msgtmpl>
  115. <procpitem>
  116. <itemflag/>
  117. <rgstdeptcd/>
  118. <inptdeptnm/>
  119. <inptdeptcd/>
  120. <rsrvdupluseyn/>
  121. <orddeptcd/>
  122. <orddeptnm/>
  123. <remarkcd/>
  124. <remarknm/>
  125. <prcpcd/>
  126. <prcpnm/>
  127. </procpitem>
  128. <rsrvitem>
  129. <orddeptcd>임시</orddeptcd>
  130. </rsrvitem>
  131. </main>
  132. <send>
  133. <info>
  134. <msglrgcd/>
  135. <msgmdlcd/>
  136. <chnlflag/>
  137. </info>
  138. <srch2>
  139. <prcpflag/>
  140. <prcpcd/>
  141. <prcpnm/>
  142. <deptcd/>
  143. <deptnm/>
  144. <rsrvflag/>
  145. </srch2>
  146. <rsrvinfo/>
  147. <prcplist/>
  148. <msgcount>
  149. <msglrgcd/>
  150. <msgmdlcd/>
  151. <msgsmlcd/>
  152. <biz_flag/>
  153. <gubun/>
  154. </msgcount>
  155. </send>
  156. <init>
  157. <comncdlist>
  158. <C0014list/>
  159. <C0022list/>
  160. <C0026list/>
  161. <C0036list/>
  162. <A0420list/>
  163. </comncdlist>
  164. <chnllrglist>
  165. <chnllrggrup>
  166. <msglrgnm/>
  167. <msglrgcd/>
  168. </chnllrggrup>
  169. </chnllrglist>
  170. <chnlmdllist>
  171. <chnlmdlgrup>
  172. <msgmdlnm/>
  173. <msgmdlcd/>
  174. <msglrgcd/>
  175. </chnlmdlgrup>
  176. </chnlmdllist>
  177. </init>
  178. <temp>
  179. <rdorsrv>B</rdorsrv>
  180. <result/>
  181. <osscd/>
  182. <treevisible>F</treevisible>
  183. <clsvisible>F</clsvisible>
  184. <treelist/>
  185. <clstreelist/>
  186. <ipt_test/>
  187. <clschk/>
  188. <messagecnt>0</messagecnt>
  189. <msg>
  190. <smsmsglrgcd/>
  191. <smsmsgmdlcd/>
  192. <smsmsgsmlcd/>
  193. </msg>
  194. </temp>
  195. <mastauth>
  196. <mastauth/>
  197. <aprvuserid/>
  198. <posdeptcd/>
  199. </mastauth>
  200. </root>
  201. </instance>
  202. <script type="javascript" ev:event="xforms-ready">
  203. <![CDATA[
  204. // C0014: 전후구분, C0022: 사용구분, C0026: 예약업무구분, C0036: 항목(Remark)구분, A0420: One Stop
  205. zbcfGetCodeList(new Array("C0014", "C0022", "C0026", "C0036", "A0420"),
  206. new Array("/root/init/comncdlist/C0014list", "/root/init/comncdlist/C0022list", "/root/init/comncdlist/C0026list",
  207. "/root/init/comncdlist/C0036list", "/root/init/comncdlist/A0420list"));
  208. //addComboItemAll( "cmb_rsrvflag|cmb_prcpflag");
  209. // SMS메시지 그리드의 col을 초기화 시켜준다.
  210. model.removenodeset("/root/main/list/msgsmllist"); // SMS 템플릿 리스트
  211. model.removenodeset("/root/main/list/rsrvlist"); // 병원기본 리스트
  212. model.removenodeset("/root/main/list/prcplist"); // 부서별 리스트
  213. model.removenodeset("/root/list/prcplisttemp");
  214. // 메시지 분류코드 설정 (SMS : S)
  215. model.setValue("/root/send/info/chnlflag", "S");
  216. // 메시지 대그룹을 가져온다
  217. submit("TRCNS00201");
  218. btn_orddrtab.selected = true;
  219. model.toggle("case1");
  220. // 공통코드에서 의료협력 One Stop Service 그리드를 생성
  221. for (var i=1; ; i++) {
  222. if (model.getValue("/root/init/comncdlist/A0420list/A0420["+i+"]/cdid") == "") break;
  223. model.makeValue("/root/temp/osscd/osslist["+i+"]/cdid", model.getValue("/root/init/comncdlist/A0420list/A0420["+i+"]/cdid"));
  224. model.makeValue("/root/temp/osscd/osslist["+i+"]/cdnm", model.getValue("/root/init/comncdlist/A0420list/A0420["+i+"]/cdnm"));
  225. }
  226. //조회 항목구분세팅
  227. fGetRsrvflagSet();
  228. submit("TRCRB00104"); //진료과treeView
  229. //마스터 권한 조회
  230. submit("TRCRB00106"); //권한 조회
  231. //권한 Y세팅
  232. model.makeNode("/root/mastauth/mastauth");
  233. model.setValue("/root/mastauth/mastauth", "Y");
  234. //초재진구분세팅
  235. model.setValue("/root/main/item/fsexamflag", "A");
  236. var mastauth = model.getValue("/root/mastauth/mastauth");
  237. //SMS 전송대상 및 전송시간 조회메뉴 설정 B:기본예약 D:부서별
  238. if(mastauth == "Y"){
  239. model.setValue("/root/temp/rdorsrv", "B");
  240. fGetSearchType("B");
  241. }else{
  242. model.setValue("/root/temp/rdorsrv", "D");
  243. fGetSearchType("D");
  244. btn_del.disabled = true;//삭제버튼 잠금
  245. }
  246. //부서 세팅
  247. var dutplcenm = getUserInfo("dutplcenm");
  248. var dutplcecd = getUserInfo("dutplcecd");
  249. model.setValue("root/send/srch2/deptnm", dutplcenm);
  250. model.setValue("root/send/srch2/deptcd", dutplcecd);
  251. model.setValue("/root/main/procpitem/inptdeptnm", dutplcenm);
  252. model.setValue("/root/main/procpitem/inptdeptcd", dutplcecd);
  253. // 진료예약 탭버튼 활성
  254. btn_orddrtab.selected = true;
  255. btn_orddrtab.disabled = true;
  256. btn_schartab.disabled = true;
  257. //권한 체크
  258. fCheckAuth();
  259. //초기자료 조회
  260. submit("TRCRB00101");
  261. submit("TRCRB00103");
  262. //같은 부서 마스터만 승인설정 가능
  263. fGetAprvynSet();
  264. model.refresh();
  265. ]]>
  266. </script>
  267. <submission id="TXCNS00202" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/msgcount"/>
  268. <submission id="TRCRB00107" mediatype="application/x-www-form-urlencoded" method="post" resultref="/root/main/list/prcplisttemp"/>
  269. <submission id="TRCRB00106" mediatype="application/x-www-form-urlencoded" method="post" replace="instance" resultref="/root/mastauth"/>
  270. <submission id="TXCRB00104" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/main/item" resultref="/root/temp/result"/>
  271. <submission id="TRCRB00105" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/info" replace="instance" resultref="/root/main/groupinfo/clslist"/>
  272. <submission id="TRCRB00104" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/info" replace="instance" resultref="/root/main/groupinfo/orddeptlist"/>
  273. <submission id="TRCNS00201" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/info" resultref="/root/init/chnllrglist/chnllrggrup"/>
  274. <submission id="TRCNS00202" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/info" replace="instance" resultref="/root/init/chnlmdllist/chnlmdlgrup"/>
  275. <submission id="TRZBC00101" mediatype="application/x-www-form-urlencoded" method="post" replace="instance"/>
  276. <submission id="TRCCN00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/info" replace="instance" resultref="/root/main/list/msgsmllist"/>
  277. <submission id="TRCRB00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/srch2" replace="instance" resultref="/root/main/list/rsrvlist"/>
  278. <submission id="TRCRB00103" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/srch2" resultref="/root/main/list/prcplist"/>
  279. <submission id="TXCRB00102" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/main/item" resultref="/root/temp/result"/>
  280. <submission id="TXCRB00103" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/main/item" resultref="/root/temp/result"/>
  281. <submission id="TXCRB00105" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/aprvgrid" replace="instance"/>
  282. </model>
  283. <script type="javascript" src="../../../crm/crmweb/js/CCZ001.js"/>
  284. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  285. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  286. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  287. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  288. <script type="javascript">
  289. <![CDATA[
  290. //============================================//
  291. //검사분류 및 진료과 선택 Tree Popup 호출 //
  292. //============================================//
  293. function fGetTreePopup(){
  294. if (model.getValue("/root/temp/clsvisible") == "F") {
  295. trv_clslist.visible = true;
  296. btn_close2.attribute("visibility") = "visible" ;
  297. model.setValue("/root/temp/clsvisible", "T");
  298. } else {
  299. trv_clslist.visible = false;
  300. btn_close2.attribute("visibility") = "hidden" ;
  301. model.setValue("/root/temp/clsvisible", "F");
  302. }
  303. var chckvalue = "";
  304. var changevalue = "";
  305. var original = ";";
  306. var replacement = "','"
  307. chckvalue = trv_clslist.getCheckValue(";");
  308. if(chckvalue != ""){
  309. changevalue = fGetChangeValueCls(chckvalue, original, replacement);
  310. model.setValue("/root/main/item/clscdlnk",changevalue);
  311. //레이블 가져오기
  312. //코드에서''이부분 제거
  313. //var str = model.getValue("/root/main/item/clscdlnk");
  314. var original2 = "'";
  315. var replacement2 = "";
  316. var clscdlnk = "";
  317. var label = "";
  318. clscdlnk = fGetReplaceValue(changevalue, original2, replacement2);
  319. label = fGetSrcTreeLabel(clscdlnk, trv_clslist);
  320. model.setValue("/root/main/item/clsnmlnk", label);
  321. }else{
  322. model.setValue("/root/main/item/clscdlnk","");
  323. model.setValue("/root/main/item/clsnmlnk","");
  324. }
  325. model.refresh();
  326. }
  327. //============================================//
  328. //같은 부서의 마스터만 승인 설정 //
  329. //============================================//
  330. function fGetAprvynSet(){
  331. if(grd_prcplist.rows > 1){
  332. for(i=1;grd_prcplist.rows>i;i++){
  333. if(model.getValue("/root/mastauth/posdeptcd")==grd_prcplist.valueMatrix(i,grd_prcplist.colRef("inptdeptcd"))
  334. && model.getValue("/root/mastauth/mastauth") == "Y"){
  335. grd_prcplist.isReadOnly(i,grd_prcplist.colRef("aprvyn"))= false;
  336. }else{
  337. grd_prcplist.isReadOnly(i,grd_prcplist.colRef("aprvyn"))= true;
  338. }
  339. }
  340. }
  341. model.refresh();
  342. }
  343. //============================================//
  344. //부서 저장시 중복키 못들어 가게 검증 //
  345. //============================================//
  346. function fGetCheckPrcpKey() {
  347. submit("TRCRB00107");//키값 조회
  348. var validkey = "N";
  349. var itemflag = model.getValue("/root/main/item/itemflag");
  350. var itemcd = model.getValue("/root/main/item/itemcd");
  351. var rgstdeptcd = model.getValue("/root/main/item/rgstdeptcd");
  352. var grid = grd_prcplisttemp;
  353. for(var i=grid.fixedRows; i < grid.rows ; i++){
  354. if(grid.valueMatrix(i,grid.colRef("itemflag"))==itemflag
  355. && grid.valueMatrix(i,grid.colRef("itemcd"))==itemcd
  356. && grid.valueMatrix(i,grid.colRef("rgstdeptcd"))==rgstdeptcd)
  357. {
  358. validkey = "Y";
  359. }
  360. }
  361. return validkey;
  362. }
  363. //============================================//
  364. //입력한 글자수 체크 //
  365. //============================================//
  366. function fGetCheckMsgCnts() {
  367. var strlen = 0;
  368. var str = tar_contents.currentText
  369. for (var i=0; i<str.length; i++) {
  370. strlen += (str.charCodeAt(i) > 128) ? 2 : 1;
  371. /* if (strlen > 80) {
  372. messageBox("최대입력글자인 80byte를 ", "E003");
  373. strlen -= (str.charCodeAt(i) > 128) ? 2 : 1;
  374. break;
  375. }
  376. */
  377. }
  378. model.setValue("/root/temp/messagecnt", strlen);
  379. ipt_messagecnt.refresh();
  380. }
  381. //============================================//
  382. //조회 예약구분 선택에 따른 항목세팅 //
  383. //============================================//
  384. function fGetRsrvflagSet(){
  385. var rsrvflag = model.getValue("/root/send/srch2/rsrvflag");
  386. if(rsrvflag == "1"){//진료예약 선택
  387. cmb_itemflag11.visible = true;
  388. cmb_itemflag33.visible = false;
  389. cmb_itemflag44.visible = false;
  390. cmb_itemflag00.visible = false;
  391. cmb_itemflag11.disabled = false;
  392. cpt_itemflag.disabled = false;
  393. ipt_prcpnm.disabled = false;
  394. btn_prcpsrch.disabled = false;
  395. }else if(rsrvflag == "2"){//입원예약
  396. cmb_itemflag11.visible = true;
  397. cmb_itemflag33.visible = false;
  398. cmb_itemflag44.visible = false;
  399. cmb_itemflag00.visible = false;
  400. cmb_itemflag11.disabled = true;
  401. cpt_itemflag.disabled = true;
  402. ipt_prcpnm.disabled = true;
  403. btn_prcpsrch.disabled = true;
  404. }else if(rsrvflag == "3"){//검사 예약
  405. cmb_itemflag11.visible = false;
  406. cmb_itemflag33.visible = true;
  407. cmb_itemflag44.visible = false;
  408. cmb_itemflag00.visible = false;
  409. cpt_itemflag.disabled = false;
  410. ipt_prcpnm.disabled = false;
  411. btn_prcpsrch.disabled = false;
  412. }else if(rsrvflag == "4"){//건진 예약
  413. cmb_itemflag11.visible = false;
  414. cmb_itemflag33.visible = false;
  415. cmb_itemflag44.visible = true;
  416. cmb_itemflag00.visible = false;
  417. cpt_itemflag.disabled = false;
  418. ipt_prcpnm.disabled = false;
  419. btn_prcpsrch.disabled = false;
  420. }else {
  421. cmb_itemflag11.visible = false;
  422. cmb_itemflag33.visible = false;
  423. cmb_itemflag44.visible = false;
  424. cmb_itemflag00.visible = true;
  425. cpt_itemflag.disabled = false;
  426. ipt_prcpnm.disabled = false;
  427. btn_prcpsrch.disabled = false;
  428. }
  429. }
  430. //============================================//
  431. //tree에 선택된 레이블 가져오기 //
  432. //============================================//
  433. function fGetTreeLabel(srcTree){
  434. var labelLnk = "";
  435. var item = "";
  436. for(var j=0; j < srcTree.length; j++) {
  437. item = srcTree.item(j);
  438. if(item.checked == true) {
  439. labelLnk += item.label;
  440. labelLnk += ", ";
  441. }
  442. }
  443. return labelLnk;
  444. }
  445. //============================================//
  446. //tree초기화 //
  447. //============================================//
  448. function fTreeInit(srcTree){
  449. var item = "";
  450. for(var j=0; j < srcTree.length; j++) {
  451. item = srcTree.item(j);
  452. item.checked = false;
  453. }
  454. }
  455. //============================================//
  456. //검사분류 조회시 많은 시간 소요되어 따로 분리//
  457. //============================================//
  458. function fGetClsTree(){
  459. var clschk = model.getValue("/root/temp/clschk");
  460. if(clschk != "Y"){
  461. submit("TRCRB00105"); //검사분류treeView
  462. model.setValue("/root/temp/clschk", "Y");
  463. }
  464. }
  465. function fCheckAuth() {
  466. // 권한체크
  467. if (!checkAuth("r")) {
  468. btn_search.disabled=true;
  469. }
  470. if (!checkAuth("x")) {
  471. btn_del.disabled=true;
  472. btn_reset.disabled=true;
  473. btn_update.disabled=true;
  474. btn_save.disabled=true;
  475. btn_prcpdel.disabled=true;
  476. btn_aprvsave.disabled=true;
  477. }
  478. if (!checkAuth("p")) {
  479. btn_saveexcel.disabled = true;
  480. }
  481. }
  482. function fInitRsrvList() {
  483. // 그리드 초기화
  484. model.removeNodeset("/root/main/list/rsrvlist");
  485. model.removeNodeset("/root/main/list/prcplist");
  486. //grd_rsrvlist.clearStatus();
  487. }
  488. //수정모드
  489. function fSetRsrvInfo(status, type) {
  490. if (status=="U") {//수정
  491. if(type=="B"){
  492. rdo_rsrv.value = "B";
  493. }else{
  494. rdo_rsrv.value = "D";
  495. }
  496. rdo_rsrv.disabled = true;
  497. cmb_rsrvflag.disabled = true;
  498. ipt_trsmdd.disabled = true;
  499. ipt_trsmtm.disabled = true;
  500. } else {
  501. rdo_rsrv.value = "B";
  502. rdo_rsrv.disabled = false;
  503. cmb_rsrvflag.disabled = false;
  504. ipt_trsmdd.disabled = false;
  505. ipt_trsmtm.disabled = false;
  506. }
  507. }
  508. //--------------------//
  509. //prcplist 그리드 선택//
  510. //--------------------//
  511. function fSelectPrcp() {
  512. // 그리드에서 선택
  513. var grid = grd_prcplist;
  514. if (grid.row > 0 ) {
  515. //전송설정 화면
  516. model.setValue("/root/main/item/smsyn",grid.valueMatrix(grid.row,grid.colRef("smsyn")));
  517. model.setValue("/root/main/item/rsrvflag",grid.valueMatrix(grid.row,grid.colRef("rsrvflag")));
  518. model.setValue("/root/main/procpitem/itemflag",grid.valueMatrix(grid.row,grid.colRef("itemflag")));
  519. model.setValue("/root/main/procpitem/inptdeptcd",grid.valueMatrix(grid.row,grid.colRef("inptdeptcd")));
  520. model.setValue("/root/main/procpitem/inptdeptnm",grid.valueMatrix(grid.row,grid.colRef("inptdeptnm")));
  521. if(model.getValue("/root/main/procpitem/itemflag")=="C"){
  522. model.setValue("/root/main/procpitem/prcpcd",grid.valueMatrix(grid.row,grid.colRef("itemcd")));
  523. model.setValue("/root/main/procpitem/prcpnm",grid.valueMatrix(grid.row,grid.colRef("itemnm")));
  524. }else if(model.getValue("/root/main/procpitem/itemflag")=="R"){
  525. model.setValue("/root/main/procpitem/remarkcd",grid.valueMatrix(grid.row,grid.colRef("itemcd")));
  526. model.setValue("/root/main/procpitem/remarknm",grid.valueMatrix(grid.row,grid.colRef("itemnm")));
  527. }else if(model.getValue("/root/main/procpitem/itemflag")=="O"){
  528. model.setValue("/root/main/procpitem/orddeptcd",grid.valueMatrix(grid.row,grid.colRef("itemcd")));
  529. model.setValue("/root/main/procpitem/orddeptnm",grid.valueMatrix(grid.row,grid.colRef("itemnm")));
  530. }
  531. model.setValue("/root/main/item/delivedd",grid.valueMatrix(grid.row,grid.colRef("delivedd")));
  532. model.setValue("/root/main/item/delivetm",grid.valueMatrix(grid.row,grid.colRef("delivetm")));
  533. model.setValue("/root/main/item/smsmsglrgcd",grid.valueMatrix(grid.row,grid.colRef("smsmsglrgcd")));
  534. model.setValue("/root/main/item/smsmsgmdlcd",grid.valueMatrix(grid.row,grid.colRef("smsmsgmdlcd")));
  535. model.setValue("/root/main/item/smsmsgsmlcd",grid.valueMatrix(grid.row,grid.colRef("smsmsgsmlcd")));
  536. model.setValue("/root/temp/msg/smsmsglrgcd",grid.valueMatrix(grid.row,grid.colRef("smsmsglrgcd")));
  537. model.setValue("/root/temp/msg/smsmsgmdlcd",grid.valueMatrix(grid.row,grid.colRef("smsmsgmdlcd")));
  538. model.setValue("/root/temp/msg/smsmsgsmlcd",grid.valueMatrix(grid.row,grid.colRef("smsmsgsmlcd")));
  539. model.setValue("/root/main/procpitem/rsrvdupluseyn",grid.valueMatrix(grid.row,grid.colRef("rsrvdupluseyn")));
  540. //미리보기 화면
  541. model.setValue("/root/main/msgtmpl/replytelno",grid.valueMatrix(grid.row,grid.colRef("smstrsmcntcno")));
  542. model.setValue("/root/main/msgtmpl/prvwscrn",grid.valueMatrix(grid.row,grid.colRef("msgcnts")));
  543. //SMS 메시지 내용 우측의 목록 갱신
  544. model.setValue("/root/main/msgtmpl/msglrgcd",grid.valueMatrix(grid.row,grid.colRef("smsmsglrgcd")));
  545. fGetChnlMdlCd();
  546. model.setValue("/root/main/msgtmpl/msgmdlcd",grid.valueMatrix(grid.row,grid.colRef("smsmsgmdlcd")));
  547. model.removenodeset("/root/main/list/msgsmllist");
  548. var i=0;
  549. var cur_rows = grd_msglist.rows
  550. for(i=0; i<cur_rows; i++)
  551. {
  552. grd_msglist.deleteRow(1, false);
  553. }
  554. grd_msglist.refresh();
  555. grd_msglist.addRow();
  556. var cur_row = grd_msglist.row;
  557. model.setValue("/root/main/list/msgsmllist[" + cur_row + "]/msgsmlcd", grid.valueMatrix(grid.row,grid.colRef("smsmsgsmlcd")));
  558. model.setValue("/root/main/list/msgsmllist[" + cur_row + "]/msgcnts", grid.valueMatrix(grid.row,grid.colRef("msgcnts")));
  559. model.setValue("/root/main/list/msgsmllist[" + cur_row + "]/smstrsmcntcno", grid.valueMatrix(grid.row,grid.colRef("smstrsmcntcno")));
  560. }
  561. }
  562. //필수입력 체크
  563. function fCheckRsrvInfo() {
  564. if(model.getValue("/root/temp/rdorsrv")=="D"){//부서별전송
  565. var deptnm = model.getValue("/root/main/procpitem/inptdeptnm");
  566. var deptcd = model.getValue("/root/main/procpitem/inptdeptcd");
  567. if (deptcd == "" ) {
  568. messageBox("등록부서를 조회하여","C002");
  569. model.setFocus("ipt_deptcd2");
  570. return false;
  571. }
  572. }
  573. if (model.getValue("/root/main/item/rsrvflag")=="") {
  574. messageBox("예약구분을","C002");
  575. return false;
  576. }
  577. if(model.getValue("/root/main/item/rsrvflag")!="2"){//입원예약이 아닐때만 검사
  578. if (model.getValue("/root/main/procpitem/itemflag")=="") {
  579. messageBox("항목구분을","C002");
  580. return false;
  581. }
  582. }
  583. if (model.getValue("/root/main/item/delivedd")=="") {
  584. messageBox("전송일을","C001");
  585. model.setFocus("ipt_trsmdd");
  586. return false;
  587. }
  588. if (model.getValue("/root/main/item/delivetm")=="") {
  589. messageBox("전송시간을","C001");
  590. model.setFocus("ipt_trsmtm");
  591. return false;
  592. }
  593. if (model.getValue("/root/main/item/smsmsgsmlcd")=="") {
  594. messageBox("SMS메세지를","C002");
  595. model.setFocus("cmb_msglrgcd");
  596. return false;
  597. }
  598. if(model.getValue("/root/main/item/fsexamflag") == ""){
  599. model.setValue("/root/main/item/fsexamflag", "A");
  600. }
  601. return true;
  602. }
  603. //--------------//
  604. //기본분류 저장//
  605. //--------------//
  606. function fSaveSetRsrv() {
  607. model.makeValue("/root/main/item/itemflag",model.getValue("/root/main/procpitem/itemflag"));
  608. if(model.getValue("/root/temp/rdorsrv") == "B"){//기본예약
  609. //setAlertOn();
  610. submit("TXCRB00102");
  611. //sub테이블 저장 (진료과 검사분류일때)
  612. if(model.getValue("/root/main/item/itemflag")=="D" ||
  613. model.getValue("/root/main/item/itemflag")=="P"){
  614. var str = model.getValue("/root/main/item/clscdlnk");
  615. var original = "'";
  616. var replacement = "";
  617. var clscdlnk = "";
  618. clscdlnk = fGetReplaceValue(str, original, replacement);
  619. //fGetValueSubmit(clscdlnk);
  620. }
  621. submit("TRCRB00101"); // 기본예약전송 목록 조회
  622. //model.setFocus("grd_rsrvlist");
  623. }else{//부서별
  624. if(model.getValue("/root/main/item/itemflag")=="C"){
  625. model.makeValue("/root/main/item/rgstdeptcd","ALL");
  626. model.makeValue("/root/main/item/itemcd",model.getValue("/root/main/procpitem/prcpcd"));
  627. model.makeValue("/root/main/item/itemnm",model.getValue("/root/main/procpitem/prcpnm"));
  628. }else if(model.getValue("/root/main/item/itemflag")=="R"){
  629. model.makeValue("/root/main/item/rgstdeptcd",model.getValue("/root/main/procpitem/rgstdeptcd"));
  630. model.makeValue("/root/main/item/itemcd",model.getValue("/root/main/procpitem/remarkcd"));
  631. model.makeValue("/root/main/item/itemnm",model.getValue("/root/main/procpitem/remarknm"));
  632. }else if(model.getValue("/root/main/item/itemflag")=="O"){
  633. model.makeValue("/root/main/item/rgstdeptcd","ALL");
  634. model.makeValue("/root/main/item/itemcd",model.getValue("/root/main/procpitem/orddeptcd"));
  635. model.makeValue("/root/main/item/itemnm",model.getValue("/root/main/procpitem/orddeptnm"));
  636. }
  637. model.makeValue("/root/main/item/inptdeptcd",model.getValue("/root/main/procpitem/inptdeptcd"));
  638. model.makeValue("/root/main/item/rsrvdupluseyn",model.getValue("/root/main/procpitem/rsrvdupluseyn"));
  639. model.refresh();
  640. //키값 검증
  641. var checkKey = "";
  642. checkKey = fGetCheckPrcpKey();
  643. if(checkKey == "Y" && model.getValue("/root/main/item/savemode")=="I"){//중복된 키값
  644. messageBox("이미 존재하는 목록이므로 등록","E001");
  645. return;
  646. }else{
  647. submit("TXCRB00103");//저장
  648. }
  649. submit("TRCRB00103");//조회
  650. //같은 부서 마스터만 승인설정 가능
  651. fGetAprvynSet();
  652. model.setFocus("grd_prcplist");
  653. }//부서별
  654. if(model.getValue("/root/main/item/savemode")=="I"){
  655. //메세지 카운트 증감
  656. var msglrgcd = model.getValue("/root/main/item/smsmsglrgcd");
  657. var msgmdlcd = model.getValue("/root/main/item/smsmsgmdlcd");
  658. var msgsmlcd = model.getValue("/root/main/item/smsmsgsmlcd");
  659. var gubun = "I";
  660. cczfMsgCount(msglrgcd, msgmdlcd, msgsmlcd, gubun);
  661. }else if(model.getValue("/root/main/item/savemode")=="U"){
  662. //메세지 카운트 감
  663. var msglrgcd2 = model.getValue("/root/temp/msg/smsmsglrgcd");
  664. var msgmdlcd2 = model.getValue("/root/temp/msg/smsmsgmdlcd");
  665. var msgsmlcd2 = model.getValue("/root/temp/msg/smsmsgsmlcd");
  666. var gubun2 = "D";
  667. //메세지 카운트 증
  668. var msglrgcd = model.getValue("/root/main/item/smsmsglrgcd");
  669. var msgmdlcd = model.getValue("/root/main/item/smsmsgmdlcd");
  670. var msgsmlcd = model.getValue("/root/main/item/smsmsgsmlcd");
  671. var gubun = "I";
  672. if(msgsmlcd2 != msgsmlcd){
  673. cczfMsgCount(msglrgcd2, msgmdlcd2, msgsmlcd2, gubun2);
  674. cczfMsgCount(msglrgcd, msgmdlcd, msgsmlcd, gubun);
  675. }
  676. }
  677. //초기화
  678. model.resetInstanceNode("/root/main/item");
  679. model.resetInstanceNode("/root/main/msgtmpl");
  680. model.resetInstanceNode("/root/main/list/msgsmllist");
  681. model.resetInstanceNode("/root/main/procpitem");
  682. //트리 초기화
  683. fTreeInit(trv_orddeptlist);
  684. fTreeInit(trv_clslist);
  685. //SMS 전송대상 및 전송시간 조회메뉴 설정 B:기본예약 D:부서별
  686. var mastauth = model.getValue("/root/mastauth/mastauth");
  687. if(mastauth == "Y"){
  688. model.setValue("/root/temp/rdorsrv", "B");
  689. fGetSearchType("B");
  690. }else{
  691. model.setValue("/root/temp/rdorsrv", "D");
  692. fGetSearchType("D");
  693. btn_del.disabled = true;//삭제버튼 잠금
  694. }
  695. model.setValue("/root/main/item/savemode", "I");
  696. model.setValue("/root/temp/messagecnt", "0");
  697. //부서 세팅
  698. var dutplcenm = getUserInfo("dutplcenm");
  699. var dutplcecd = getUserInfo("dutplcecd");
  700. model.setValue("/root/main/procpitem/inptdeptnm", dutplcenm);
  701. model.setValue("/root/main/procpitem/inptdeptcd", dutplcecd);
  702. model.refresh();
  703. }
  704. function fDeleteSetRsrv(rsrvflag, bfaftflag, delivedd, delivetm, deliveseq) {
  705. if (messageBox("선택된 병원 전송리스트를","Q001")==6) {
  706. model.setValue("/root/main/item/savemode", "D");
  707. model.setValue("/root/main/item/rsrvflag", rsrvflag);
  708. model.setValue("/root/main/item/bfaftflag", bfaftflag);
  709. model.setValue("/root/main/item/delivedd", delivedd);
  710. model.setValue("/root/main/item/delivetm", delivetm);
  711. model.setValue("/root/main/item/deliveseq", deliveseq);
  712. submit("TXCRB00102");
  713. //메세지 카운트 증감
  714. var msglrgcd = model.getValue("/root/main/item/smsmsglrgcd");
  715. var msgmdlcd = model.getValue("/root/main/item/smsmsgmdlcd");
  716. var msgsmlcd = model.getValue("/root/main/item/smsmsgsmlcd");
  717. var gubun = "D";
  718. cczfMsgCount(msglrgcd, msgmdlcd, msgsmlcd, gubun);
  719. //초기화
  720. model.resetInstanceNode("/root/main/item");
  721. model.resetInstanceNode("/root/main/msgtmpl");
  722. model.resetInstanceNode("/root/main/list/msgsmllist");
  723. model.resetInstanceNode("/root/main/procpitem");
  724. // 목록에서 제거 및 발송순서 업데이트를 위해 그리드 다시 조회
  725. model.removeNodeset("/root/main/list/rsrvlist");
  726. submit("TRCRB00101");
  727. model.setValue("/root/main/item/savemode" , "I");
  728. //트리 초기화
  729. fTreeInit(trv_orddeptlist);
  730. fTreeInit(trv_clslist);
  731. //SMS 전송대상 및 전송시간 조회메뉴 설정 B:기본예약 D:부서별
  732. model.setValue("/root/temp/rdorsrv" , "B");
  733. fGetSearchType("B");
  734. }
  735. }
  736. function fDeleteSetPrcp(itemflag, itemcd, rgstdeptcd) {
  737. if (messageBox("선택된 부서전송 리스트를","Q001")==6) {
  738. model.setValue("/root/main/item/savemode", "D");
  739. model.makeValue("/root/main/item/itemflag", itemflag);
  740. model.makeValue("/root/main/item/itemcd", itemcd);
  741. model.makeValue("/root/main/item/rgstdeptcd", rgstdeptcd);
  742. model.refresh();
  743. submit("TXCRB00103");// 삭제
  744. //메세지 카운트 증감
  745. var grid = grd_prcplist;
  746. var msglrgcd = grid.valueMatrix(grid.row,grid.colRef("smsmsglrgcd"));
  747. var msgmdlcd = grid.valueMatrix(grid.row,grid.colRef("smsmsgmdlcd"));
  748. var msgsmlcd = grid.valueMatrix(grid.row,grid.colRef("smsmsgsmlcd"));
  749. var gubun = "D";
  750. cczfMsgCount(msglrgcd, msgmdlcd, msgsmlcd, gubun);
  751. //초기화
  752. model.resetInstanceNode("/root/send/prcplist");
  753. model.resetInstanceNode("/root/main/item");
  754. model.resetInstanceNode("/root/main/msgtmpl");
  755. model.resetInstanceNode("/root/main/list/msgsmllist");
  756. model.resetInstanceNode("/root/main/procpitem");
  757. //다시 조회
  758. submit("TRCRB00103");
  759. //SMS 전송대상 및 전송시간 조회메뉴 설정 B:기본예약 D:부서별
  760. var mastauth = model.getValue("/root/mastauth/mastauth");
  761. if(mastauth == "Y"){
  762. model.setValue("/root/temp/rdorsrv", "B");
  763. fGetSearchType("B");
  764. }else{
  765. model.setValue("/root/temp/rdorsrv", "D");
  766. fGetSearchType("D");
  767. btn_del.disabled = true;//삭제버튼 잠금
  768. }
  769. model.setValue("/root/main/item/savemode", "I");
  770. }
  771. }
  772. function fSearchItem(flag, term, cd_path, nm_path) {
  773. if (flag == "C") {
  774. // 처방검색
  775. //var search_condition = "prcpcd";
  776. var one = "one";
  777. var standard = "prcpnm";
  778. var search_term = term;
  779. var receive_prcpcd_path = cd_path;
  780. var receive_prcpnm_path = nm_path;
  781. setParameter("one", one);
  782. setParameter("standard", standard);
  783. setParameter("search_term", search_term);
  784. setParameter("receive_prcpcd_path", receive_prcpcd_path);
  785. setParameter("receive_prcpnm_path", receive_prcpnm_path);
  786. modal("SPCDT00700");
  787. clearParameter("one");
  788. clearParameter("standard");
  789. clearParameter("search_term");
  790. clearParameter("receive_prcpcd_path");
  791. clearParameter("receive_prcpnm_path");
  792. } else if (flag == "R") {
  793. // Remark 검색
  794. var search_term = term;
  795. var receive_remarkcd_path = cd_path;
  796. var receive_remarknm_path = nm_path;
  797. var receive_rgdeptcd_path = "/root/main/procpitem/rgstdeptcd";
  798. setParameter("search_term", search_term);
  799. setParameter("receive_remarkcd_path", receive_remarkcd_path);
  800. setParameter("receive_remarknm_path", receive_remarknm_path);
  801. setParameter("receive_rgdeptcd_path", receive_rgdeptcd_path);
  802. modal("SPCRB00200");
  803. clearParameter("search_term");
  804. clearParameter("receive_remarkcd_path");
  805. clearParameter("receive_remarknm_path");
  806. clearParameter("receive_rgdeptcd_path");
  807. } else if (flag == "O") {
  808. // 의료협력 One Stop Service 검색
  809. var receive_osscd_path = cd_path;
  810. var receive_ossnm_path = nm_path;
  811. setParameter("receive_osscd_path", receive_osscd_path);
  812. setParameter("receive_ossnm_path", receive_ossnm_path);
  813. modal("SPCRB00300", "", "", "", "SPCRB00300", "/root/temp/osscd", "/root/main/list");
  814. clearParameter("receive_osscd_path");
  815. clearParameter("receive_ossnm_path");
  816. } else {
  817. //messageBox("항목구분이 선택되지","E007");
  818. }
  819. }
  820. function fCheckPrcpList() {
  821. var grid = grd_prcplist;
  822. for (i=grid.fixedRows; i<grid.rows; i++) {
  823. if (grid.rowstatus(i) == 1) {
  824. if (model.getValue("/root/main/list/prcplist["+i+"]/itemcd") == "") {
  825. messageBox("항목코드를","C002");
  826. //grid.row = i;
  827. //grid.col = 2;
  828. return false;
  829. }
  830. }
  831. }
  832. return true;
  833. }
  834. function fSavePrcpList() {
  835. if (!fCheckPrcpList()) return;
  836. var grid = grd_prcplist;
  837. var updt_list = getGridUpdateData(grid);
  838. if (updt_list != "") {
  839. model.setValue("/root/send/prcplist", grid.getUpdateData());
  840. }
  841. //setAlertOn();
  842. if (submit("TXCRB00103")) {
  843. grid.clearStatus(); // submit() 성공하면 그리드의 i,u,d 상태 제거
  844. model.setValue("/root/send/prcplist","");
  845. }
  846. submit("TRCRB00103");
  847. }
  848. //----------------------//
  849. // 선택된 그리드 행삭제 //
  850. //----------------------//
  851. function fDelRow(grid) {
  852. var srcGrid = grid;
  853. var fRow = srcGrid.fixedRows - 1;
  854. var sRow = srcGrid.selectedRow(0);
  855. if ( sRow > fRow ) {
  856. if (messageBox("선택된 행을","Q001")==6){
  857. srcGrid.deleteItem( srcGrid.selectedRow(0) );
  858. model.refresh();
  859. }
  860. }else{
  861. messageBox("삭제할 행을", "C002");
  862. }
  863. }
  864. // 상용구 팝업에서 닫기 또는 메시지 저장을 하는 경우 대분류를 다시 가져온다.
  865. function fGetChnlLrgCd() {
  866. model.removenodeset("/root/init/chnllrglist/chnllrggrup");
  867. model.removenodeset("/root/init/chnlmdllist/chnlmdlgrup");
  868. model.removenodeset("/root/main/list/msgsmllist");
  869. submit("TRCNS00201");
  870. }
  871. // 선택한 채널관리 대분류에 따른 채널관리 중분류를 가져온다.
  872. function fGetChnlMdlCd() {
  873. var msglrgcd = model.getValue("/root/main/msgtmpl/msglrgcd");
  874. model.setValue("/root/send/info/msglrgcd",msglrgcd);
  875. submit("TRCNS00202");
  876. }
  877. // 선택한 채널관리 중분류에 따른 메시지 리스트를 가져온다.
  878. function fGetChnlSmlCd() {
  879. var msgmdlcd = model.getValue("/root/main/msgtmpl/msgmdlcd");
  880. model.setValue("/root/send/info/msgmdlcd",msgmdlcd);
  881. submit("TRCCN00101");
  882. }
  883. //-------------------------//
  884. //SMS전송대상 조회옵션 설정//
  885. //-------------------------//
  886. function fGetSearchType(stype){
  887. if(stype == "B"){//기본으로 설정
  888. model.setValue("/root/send/msgcount/biz_flag", "H");//병원전송예약
  889. cmb_rsrvflag1_1.visible = true;//병원예약구분
  890. cmb_rsrvflag1_1.disabled = false;//병원예약구분
  891. cmb_rsrvflag1_2.visible = false;//부서예약구분
  892. cmb_itemflag1_1.visible = true;
  893. cmb_itemflag1_1.disabled = true;
  894. bol_defltyn.value = "Y";
  895. bol_defltyn.disabled = false;
  896. ipt_deptcd2.disabled = true;
  897. btn_deptcd2.disabled = true;
  898. rdo_rsrvdupl.value = "";
  899. rdo_rsrvdupl.disabled = true;
  900. if(model.getValue("/root/main/item/rsrvflag")=="1"){
  901. ipt_orddr.disabled = false; //진료과
  902. ipt_clscds.disabled = true; //검사분류
  903. }else if(model.getValue("/root/main/item/rsrvflag")=="3"){
  904. ipt_orddr.disabled = true; //진료과
  905. ipt_clscds.disabled = false; //검사분류
  906. }else{
  907. ipt_orddr.value = "";//진료과 초기화
  908. ipt_clscds.value = "";//검사분류 초기화
  909. ipt_orddr.disabled = true; //진료과
  910. ipt_clscds.disabled = true; //검사분류
  911. }
  912. //save_mode구분
  913. if(model.getValue("/root/main/item/savemode") == "U"){
  914. cmb_rsrvflag1_1.disabled = true;//예약구분잠금
  915. ipt_trsmdd.disabled = true;
  916. ipt_trsmtm.disabled = true;
  917. btn_update.disabled = false;//수정버튼
  918. btn_save.disabled = true;//저장버튼
  919. }else{
  920. cmb_rsrvflag1_1.disabled = false;//예약구분
  921. ipt_trsmdd.disabled = false;
  922. ipt_trsmtm.disabled = false;
  923. btn_update.disabled = true;//수정버튼
  924. btn_save.disabled = false;//저장버튼
  925. }
  926. }else{//부서별로 설정
  927. model.setValue("/root/send/msgcount/biz_flag", "B");//병원전송예약
  928. cmb_itemflag1_1.visible = true;
  929. cmb_itemflag1_1.disabled = true;
  930. cmb_rsrvflag1_1.visible = false;//병원기본예약구분
  931. cmb_rsrvflag1_2.visible = true;//부서별예약구분
  932. cmb_rsrvflag1_2.disabled = false;//부서별예약구분
  933. bol_defltyn.value = "N";
  934. bol_defltyn.disabled = true;
  935. if(rdo_rsrvdupl.value == ""){
  936. rdo_rsrvdupl.value = "N";
  937. }
  938. rdo_rsrvdupl.disabled = false;
  939. ipt_deptcd2.disabled = false;
  940. btn_deptcd2.disabled = false;
  941. ipt_orddr.value = "";//진료과 초기화
  942. ipt_clscds.value = "";//검사분류 초기화
  943. ipt_orddr.disabled = true; //진료과
  944. ipt_clscds.disabled = true; //검사분류
  945. //save_mode구분
  946. if(model.getValue("/root/main/item/savemode") == "U"){
  947. cmb_rsrvflag1_2.disabled = true;//부서별예약구분
  948. ipt_trsmdd.disabled = false;
  949. ipt_trsmtm.disabled = false;
  950. ipt_rst.disabled = false;
  951. btn_rst.disabled = false;
  952. btn_update.disabled = false;//수정버튼
  953. btn_save.disabled = true;//저장버튼
  954. }else{
  955. ipt_trsmdd.disabled = false;
  956. ipt_trsmtm.disabled = false;
  957. btn_update.disabled = true;//수정버튼
  958. btn_save.disabled = false;//저장버튼
  959. }
  960. }
  961. if(model.getValue("/root/mastauth/mastauth") == "Y"){
  962. rdo_rsrv.disabled = false;//기본 부서별 분류구분
  963. }else{
  964. rdo_rsrv.disabled = true;//기본 부서별 분류구분
  965. }
  966. ipt_onestop.disabled = true;
  967. //btn_onestop.disabled = true;
  968. ipt_remark.disabled = true;
  969. //btn_remark.disabled = true;
  970. model.refresh();
  971. }
  972. //---------------//
  973. ///미리보기 //
  974. //---------------//
  975. function fPrvwscrn(){
  976. var msgcnts = model.getValue("/root/main/msgtmpl/prvwscrn")
  977. var posinstnm = getUserInfo("posinstnm")
  978. var usernm = getUserInfo("usernm");
  979. var getdate = getCurrentDate();
  980. var pmonth = getdate.substr(4,2);
  981. var pdate = getdate.substr(6,2);
  982. var gettime = getCurrentTime();
  983. var phour = gettime.substr(0,2);
  984. var pmin = gettime.substr(2,2);
  985. msgcnts = msgcnts.replace('<@고객>','홍길동');
  986. msgcnts = msgcnts.replace('<@진료과>','내과');
  987. msgcnts = msgcnts.replace('<@진료의>','홍길순');
  988. msgcnts = msgcnts.replace('<@병원명>',posinstnm);
  989. msgcnts = msgcnts.replace('<@월>',pmonth);
  990. msgcnts = msgcnts.replace('<@일>',pdate);
  991. msgcnts = msgcnts.replace('<@시>',phour);
  992. msgcnts = msgcnts.replace('<@분>',pmin);
  993. msgcnts = msgcnts.replace('<@처방코드>','A001');
  994. model.setValue("/root/main/msgtmpl/prvwscrn", msgcnts)
  995. model.refresh();
  996. }
  997. //----------------------------------//
  998. //value 변환 진료과 분류 //
  999. //(aa;bb;cc를 'aa','bb','cc'로 바꿈)//
  1000. //----------------------------------//
  1001. function fGetChangeValue(srcstr){
  1002. var rtnstr = "'";
  1003. var i=0;
  1004. while( srcstr.charAt(i) != "" ) {
  1005. if( srcstr.charAt(i)!=';') {
  1006. rtnstr += srcstr.charAt(i);
  1007. i++;
  1008. }else{
  1009. rtnstr +="','"
  1010. i++;
  1011. }
  1012. }
  1013. rtnstr +="'"
  1014. return rtnstr;
  1015. }
  1016. //----------------------------------//
  1017. //value 변환 검사분류 //
  1018. //(aa;bb;cc를 'aa','bb','cc'로 바꿈)//
  1019. //----------------------------------//
  1020. function fGetChangeValueCls(str, original, replacement) {
  1021. var result = "'";
  1022. while(str.indexOf(original) != -1) {
  1023. if (str.indexOf(original) > 2){//2자리 부모코드 제외
  1024. result = result + str.substring(0, str.indexOf(original)) + replacement;
  1025. }
  1026. str = str.substring(str.indexOf(original) + original.length, str.length);
  1027. }
  1028. return result + str +"'";
  1029. }
  1030. //--------------------------------------------------------//
  1031. // str 중 특정 문자열을 대체 문자열로 바꾸어서 반환한다. //
  1032. //--------------------------------------------------------//
  1033. function fGetReplaceValue(str, original, replacement) {
  1034. var result = "";
  1035. while(str.indexOf(original) != -1) {
  1036. if (str.indexOf(original) > 0){
  1037. result = result + str.substring(0, str.indexOf(original)) + replacement;
  1038. }else{
  1039. result = result + replacement;
  1040. }
  1041. str = str.substring(str.indexOf(original) + original.length, str.length);
  1042. }
  1043. return result + str;
  1044. }
  1045. //--------------------------------------------------------//
  1046. // str 중 특정 문자열을 구분하여 submit보내기 //
  1047. //--------------------------------------------------------//
  1048. function fGetValueSubmit(str) {
  1049. str += ",";
  1050. var result = "";
  1051. var i=0;
  1052. var chck = "N";
  1053. while( str.charAt(i) != "" ) {
  1054. if( str.charAt(i)!=',') {
  1055. result += str.charAt(i);
  1056. i++;
  1057. }else{
  1058. //처음 실행은 del 그다음 insert(all delete and insert방식)
  1059. if(chck == "N" && model.getValue("/root/main/item/savemode")=="U"){
  1060. chck = "Y";
  1061. }else{
  1062. model.setValue("/root/main/item/savemode", "I");
  1063. }
  1064. model.setValue("/root/main/item/clscdlnk", result);
  1065. submit("TXCRB00104");
  1066. result = "";
  1067. i++;
  1068. }
  1069. }
  1070. }
  1071. //----------------------------------//
  1072. // 분류코드를 해당 트리에 뿌려준다. //
  1073. //----------------------------------//
  1074. function fGetSrcTree(srcCd, srcTree){
  1075. var valuesArray = srcCd.split(",");
  1076. var label = "";
  1077. for (var i = 0; i < valuesArray.length; i++) {
  1078. for(var j=0; j < srcTree.length; j++) {
  1079. var item = srcTree.item(j);
  1080. if(srcTree.item(j).value == valuesArray[i]) {
  1081. item.checked = true;
  1082. label += item.label;
  1083. if(i<valuesArray.length-1){
  1084. label += ", ";
  1085. }
  1086. }
  1087. }
  1088. }
  1089. return label;
  1090. }
  1091. //----------------------------------//
  1092. // 해당 트리의 분류 label을 가져온다 //
  1093. //----------------------------------//
  1094. function fGetSrcTreeLabel(srcCd, srcTree){
  1095. var valuesArray = srcCd.split(",");
  1096. var label = "";
  1097. for (var i = 0; i < valuesArray.length; i++) {
  1098. for(var j=0; j < srcTree.length; j++) {
  1099. var item = srcTree.item(j);
  1100. if(srcTree.item(j).value == valuesArray[i]) {
  1101. label += item.label;
  1102. if(i<valuesArray.length-1){
  1103. label += ", ";
  1104. }
  1105. }
  1106. }
  1107. }
  1108. return label;
  1109. }
  1110. //----------------------//
  1111. //항목구분별로 화면 조절//
  1112. //======================//
  1113. function fGetItemSet(){
  1114. var itemflag = model.getValue("/root/main/procpitem/itemflag");//항목구분
  1115. var rdo_rsrv = model.getValue("/root/temp/rdorsrv");//분류설정
  1116. var savemode = model.getValue("/root/main/item/savemode");//저장구분
  1117. if(itemflag == "D"){//진료과
  1118. if(savemode == "I"){
  1119. ipt_orddr.value = "";
  1120. }
  1121. // ipt_trsmdd.value = "3";
  1122. //model.setValue("/root/main/item/fsexamflag", "A");
  1123. // ipt_trsmdd.visible = true;
  1124. // ipt_trsmdd.disabled = true;
  1125. cmb_trsmdd2.visible = false;
  1126. cmb_trsmdd3.visible = false;
  1127. combo1.visible = true;
  1128. caption4.visible = true;
  1129. combo1.disabled = false;
  1130. // ipt_orddr.disabled = false;
  1131. //
  1132. // ipt_onestop.value = "";
  1133. // opt_onestop.value = "";
  1134. // ipt_onestop.disabled = true;
  1135. // btn_onestop.disabled = true;
  1136. //
  1137. // ipt_remark.value = "";
  1138. // opt_remark.value = "";
  1139. // ipt_remark.disabled = true;
  1140. // btn_remark.disabled = true;
  1141. // chk_smsyn.disabled = true;
  1142. //
  1143. // btn_orddrtab.selected = true;
  1144. model.toggle("case1");
  1145. }else if(itemflag == "O" && rdo_rsrv == "B"){//병원기본 의료협력 원스탑
  1146. // ipt_trsmdd.value = "4";
  1147. // ipt_trsmdd.visible = true;
  1148. // ipt_trsmdd.disabled = true;
  1149. cmb_trsmdd2.visible = false;
  1150. cmb_trsmdd3.visible = false;
  1151. combo1.visible = false;
  1152. caption4.visible = false;
  1153. // ipt_orddr.value = "";
  1154. // ipt_orddr.disabled = true;
  1155. //
  1156. // ipt_onestop.value = "";
  1157. // opt_onestop.value = "";
  1158. // ipt_onestop.disabled = true;
  1159. // btn_onestop.disabled = true;
  1160. //
  1161. // ipt_remark.value = "";
  1162. // opt_remark.value = "";
  1163. // ipt_remark.disabled = true;
  1164. // btn_remark.disabled = true;
  1165. // chk_smsyn.disabled = true;
  1166. // btn_orddrtab.selected = true;
  1167. model.toggle("case1");
  1168. }else if(itemflag == "E"){//가예약
  1169. // ipt_trsmdd.value = "3";
  1170. // ipt_trsmdd.visible = true;
  1171. // ipt_trsmdd.disabled = true;
  1172. cmb_trsmdd2.visible = false;
  1173. cmb_trsmdd3.visible = false;
  1174. combo1.visible = true;
  1175. caption4.visible = true;
  1176. // ipt_orddr.value = "";
  1177. // ipt_orddr.disabled = true;
  1178. //
  1179. // ipt_onestop.value = "";
  1180. // opt_onestop.value = "";
  1181. // ipt_onestop.disabled = true;
  1182. // btn_onestop.disabled = true;
  1183. //
  1184. // ipt_remark.value = "";
  1185. // opt_remark.value = "";
  1186. // ipt_remark.disabled = true;
  1187. // btn_remark.disabled = true;
  1188. // chk_smsyn.disabled = true;
  1189. //
  1190. // btn_orddrtab.selected = true;
  1191. model.toggle("case1");
  1192. }else if(itemflag == "R"){//remark
  1193. if(savemode == "I"){
  1194. ipt_trsmdd.value = "";
  1195. }
  1196. // ipt_trsmdd.visible = false;
  1197. // ipt_trsmdd.disabled = true;
  1198. cmb_trsmdd2.visible = true;
  1199. cmb_trsmdd3.visible = false;
  1200. combo1.visible = false;
  1201. caption4.visible = false;
  1202. // ipt_orddr.value = "";
  1203. // ipt_orddr.disabled = true;
  1204. //
  1205. // ipt_onestop.value = "";
  1206. // opt_onestop.value = "";
  1207. // ipt_onestop.disabled = true;
  1208. // btn_onestop.disabled = true;
  1209. chk_smsyn.disabled = false;
  1210. if(savemode == "I"){
  1211. ipt_remark.value = "";
  1212. opt_remark.value = "";
  1213. chk_smsyn.value = "";
  1214. // chk_smsyn.disabled = false;
  1215. // ipt_remark.disabled = false;
  1216. // btn_remark.disabled = false;
  1217. // }else{
  1218. // ipt_remark.disabled = true;
  1219. // btn_remark.disabled = true;
  1220. // chk_smsyn.disabled = false;
  1221. }
  1222. btn_orddrtab.selected = true;
  1223. model.toggle("case1");
  1224. }else if(itemflag == "O" && rdo_rsrv == "D"){//부서전송 의료협력 원스탑
  1225. if(savemode == "I"){
  1226. ipt_trsmdd.value = "";
  1227. }
  1228. // ipt_trsmdd.visible = false;
  1229. // ipt_trsmdd.disabled = true;
  1230. cmb_trsmdd2.visible = false;
  1231. cmb_trsmdd3.visible = true;
  1232. combo1.visible = false;
  1233. caption4.visible = false;
  1234. // ipt_orddr.value = "";
  1235. // ipt_orddr.disabled = true;
  1236. // if(savemode == "I"){
  1237. // ipt_onestop.value = "";
  1238. // opt_onestop.value = "";
  1239. // ipt_onestop.disabled = false;
  1240. // btn_onestop.disabled = false
  1241. // }else{
  1242. // ipt_onestop.disabled = true;
  1243. // btn_onestop.disabled = true;
  1244. // }
  1245. //
  1246. // ipt_remark.value = "";
  1247. // opt_remark.value = "";
  1248. // ipt_remark.disabled = true;
  1249. // btn_remark.disabled = true;
  1250. // chk_smsyn.disabled = true;
  1251. //
  1252. // btn_orddrtab.selected = true;
  1253. model.toggle("case1");
  1254. }else if(itemflag == "P"){//검사분류
  1255. if(savemode == "I"){
  1256. ipt_clscds.value = "";
  1257. }
  1258. // ipt_trsmdd.value = "3";
  1259. // ipt_trsmdd.visible = true;
  1260. // ipt_trsmdd.disabled = true;
  1261. cmb_trsmdd2.visible = false;
  1262. cmb_trsmdd3.visible = false;
  1263. combo1.visible = false;
  1264. caption4.visible = false;
  1265. // ipt_clscds.disabled = false;
  1266. //
  1267. // ipt_rst.value = "";
  1268. // opt_rst.value = "";
  1269. // ipt_rst.disabled = true;
  1270. // btn_rst.disabled = true;
  1271. // 검사예약 탭버튼 활성
  1272. // btn_schartab.selected = true;
  1273. model.toggle("case2");
  1274. fGetClsTree();
  1275. }else if(itemflag == "C"){//검사코드
  1276. if(savemode == "I"){
  1277. ipt_trsmdd.value = "";
  1278. }
  1279. // ipt_trsmdd.visible = false;
  1280. // ipt_trsmdd.disabled = true;
  1281. cmb_trsmdd2.visible = true;
  1282. cmb_trsmdd3.visible = false;
  1283. combo1.visible = false;
  1284. caption4.visible = false;
  1285. // ipt_clscds.value = "";
  1286. // ipt_clscds.disabled = true;
  1287. // if(savemode == "I"){
  1288. // ipt_rst.value = "";
  1289. // opt_rst.value = "";
  1290. // ipt_rst.disabled = false;
  1291. // btn_rst.disabled = false;
  1292. // }else{
  1293. // ipt_rst.disabled = true;
  1294. // btn_rst.disabled = true;
  1295. // }
  1296. // // 검사예약 탭버튼 활성
  1297. // btn_schartab.selected = true;
  1298. model.toggle("case2");
  1299. }else if(itemflag == "H"){//건진예약
  1300. if(savemode == "I"){
  1301. ipt_trsmdd.value = "";
  1302. }
  1303. // ipt_trsmdd.visible = true;
  1304. // ipt_trsmdd.disabled = false;
  1305. cmb_trsmdd2.visible = false;
  1306. cmb_trsmdd3.visible = false;
  1307. combo1.visible = false;
  1308. caption4.visible = false;
  1309. // ipt_orddr.value = "";
  1310. // ipt_orddr.disabled = true;
  1311. //
  1312. // ipt_onestop.value = "";
  1313. // opt_onestop.value = "";
  1314. // ipt_onestop.disabled = true;
  1315. // btn_onestop.disabled = true;
  1316. //
  1317. // ipt_remark.value = "";
  1318. // opt_remark.value = "";
  1319. // ipt_remark.disabled = true;
  1320. // btn_remark.disabled = true;
  1321. // chk_smsyn.disabled = true;
  1322. //
  1323. // btn_orddrtab.selected = true;
  1324. // model.toggle("case1");
  1325. }else if(itemflag == "S"){//건진상담예약
  1326. if(savemode == "I"){
  1327. ipt_trsmdd.value = "";
  1328. }
  1329. // ipt_trsmdd.visible = true;
  1330. // ipt_trsmdd.disabled = false;
  1331. cmb_trsmdd2.visible = false;
  1332. cmb_trsmdd3.visible = false;
  1333. combo1.visible = false;
  1334. caption4.visible = false;
  1335. // ipt_orddr.value = "";
  1336. // ipt_orddr.disabled = true;
  1337. //
  1338. // ipt_onestop.value = "";
  1339. // opt_onestop.value = "";
  1340. // ipt_onestop.disabled = true;
  1341. // btn_onestop.disabled = true;
  1342. //
  1343. // ipt_remark.value = "";
  1344. // opt_remark.value = "";
  1345. // ipt_remark.disabled = true;
  1346. // btn_remark.disabled = true;
  1347. // chk_smsyn.disabled = true;
  1348. //
  1349. // btn_orddrtab.selected = true;
  1350. // model.toggle("case1");
  1351. }else{//기본
  1352. ipt_trsmdd.value = "";
  1353. // ipt_trsmdd.visible = true;
  1354. // ipt_trsmdd.disabled = false;
  1355. cmb_trsmdd2.visible = false;
  1356. cmb_trsmdd3.visible = false;
  1357. combo1.visible = false;
  1358. caption4.visible = false;
  1359. // ipt_orddr.value = "";
  1360. // ipt_orddr.disabled = true;
  1361. //
  1362. // ipt_onestop.value = "";
  1363. // opt_onestop.value = "";
  1364. // ipt_onestop.disabled = true;
  1365. // btn_onestop.disabled = true;
  1366. //
  1367. // ipt_remark.value = "";
  1368. // opt_remark.value = "";
  1369. // ipt_remark.disabled = true;
  1370. // btn_remark.disabled = true;
  1371. // chk_smsyn.disabled = true;
  1372. //
  1373. // btn_orddrtab.selected = true;
  1374. // model.toggle("case1");
  1375. }
  1376. fTreeInit(trv_orddeptlist);
  1377. fTreeInit(trv_clslist);
  1378. model.refresh();
  1379. }
  1380. //----------------------//
  1381. //예약구분별로 항목구분 조절//
  1382. //======================//
  1383. function fGetRsrvSet(){
  1384. if(model.getValue("/root/main/item/savemode") == "I"){
  1385. model.setValue("/root/main/procpitem/itemflag", "");
  1386. }
  1387. var rsrvflag = model.getValue("/root/main/item/rsrvflag");
  1388. var rdo_rsrv = model.getValue("/root/temp/rdorsrv");//기본병원 부서설정
  1389. var savemode = model.getValue("/root/main/item/savemode");
  1390. if(rdo_rsrv == "B"){//병원기본 선택
  1391. if(rsrvflag == "1"){
  1392. cmb_itemflag1_1.visible = true;
  1393. cmb_itemflag3_1.visible = false;
  1394. cmb_itemflag4.visible = false;
  1395. cmb_itemflag1_1.disabled = false;
  1396. if(savemode == "U"){
  1397. cmb_itemflag1_1.disabled = true;
  1398. }
  1399. }else if(rsrvflag == "2"){//입원 예약
  1400. cmb_itemflag1_1.visible = true;
  1401. cmb_itemflag3_1.visible = false;
  1402. cmb_itemflag4.visible = false;
  1403. cmb_itemflag1_1.disabled = true;
  1404. }else if(rsrvflag == "3"){//검사 예약
  1405. cmb_itemflag1_1.visible = false;
  1406. cmb_itemflag3_1.visible = true;
  1407. cmb_itemflag4.visible = false;
  1408. cmb_itemflag3_1.select(1);
  1409. if(savemode == "U"){
  1410. cmb_itemflag3_1.disabled = true;
  1411. }
  1412. }else if(rsrvflag == "4"){//건진 예약
  1413. cmb_itemflag1_1.visible = false;
  1414. cmb_itemflag3_1.visible = false;
  1415. cmb_itemflag4.visible = true;
  1416. if(savemode == "U"){
  1417. cmb_itemflag4.disabled = true;
  1418. }
  1419. }else {//기본
  1420. cmb_itemflag1_1.visible = true;
  1421. cmb_itemflag3_1.visible = false;
  1422. cmb_itemflag4.visible = false;
  1423. cmb_itemflag1_1.disabled = true;
  1424. }
  1425. cmb_itemflag1_2.visible = false;
  1426. cmb_itemflag3_2.visible = false;
  1427. }else{//부서별 선택
  1428. if(rsrvflag == "1"){
  1429. cmb_itemflag1_2.visible = true;
  1430. cmb_itemflag3_2.visible = false;
  1431. if(savemode == "U"){
  1432. cmb_itemflag1_2.disabled = true;
  1433. }else{
  1434. cmb_itemflag1_2.disabled = false;
  1435. }
  1436. }else if(rsrvflag == "3"){//검사 예약
  1437. cmb_itemflag1_2.visible = false;
  1438. cmb_itemflag3_2.visible = true;
  1439. cmb_itemflag3_2.select(1);
  1440. if(savemode == "U"){
  1441. cmb_itemflag3_2.disabled = true;
  1442. }else{
  1443. cmb_itemflag3_2.disabled = false;
  1444. }
  1445. }
  1446. cmb_itemflag1_1.visible = false;
  1447. cmb_itemflag3_1.visible = false;
  1448. cmb_itemflag4.visible = false;
  1449. }
  1450. model.refresh();
  1451. }
  1452. //=======================//
  1453. //80바이트 넘으면 선긋기 //
  1454. //=======================//
  1455. function fGetLine(){
  1456. var strlen = 0;
  1457. var str = model.getValue("/root/main/msgtmpl/prvwscrn");
  1458. var prvStr = "";
  1459. var chck = "N";
  1460. for (var i=0; i<str.length; i++) {
  1461. strlen += (str.charCodeAt(i) > 128) ? 2 : 1;
  1462. prvStr += str.charAt(i);
  1463. if (strlen > 80 && chck == "N") {
  1464. prvStr += "\n"
  1465. prvStr += "=================";
  1466. chck = "Y";
  1467. }
  1468. }
  1469. if(chck == "Y"){
  1470. model.setValue("/root/main/msgtmpl/prvwscrn", prvStr);
  1471. model.refresh();
  1472. }
  1473. }
  1474. //=======================//
  1475. //메시지 신규입력 $4 //
  1476. //=======================//
  1477. function fSetNewMsg() {
  1478. // SMS 메시지 내용
  1479. model.setValue("/root/main/msgtmpl/prvwscrn", "");
  1480. model.removeNodeset("/root/main/list/msgsmllist");
  1481. // 메시지 분류코드 설정 (SMS : S)
  1482. model.setValue("/root/send/info/chnlflag", "S");
  1483. model.setValue("/root/main/msgtmpl/msglrgcd", "");
  1484. model.removenodeset("/root/init/chnlmdllist/chnlmdlgrup");
  1485. // 메시지 대그룹을 가져온다
  1486. submit("TRCNS00201");
  1487. // sms 전송 설정
  1488. model.setValue("/root/temp/rdorsrv", "B");
  1489. model.setValue("/root/main/procpitem/inptdeptnm", "병원");
  1490. model.setValue("/root/main/item/rsrvflag", "");
  1491. model.setValue("/root/main/procpitem/itemflag", "");
  1492. model.setValue("/root/main/procpitem/rsrvdupluseyn", "");
  1493. model.setValue("/root/main/item/defltyn", "Y");
  1494. // sms 전송대상
  1495. model.setValue("/root/main/item/delivedd", "");
  1496. model.setValue("/root/main/item/delivetm", "");
  1497. model.setValue("/root/main/item/clsnmlnk", "");
  1498. model.setValue("/root/main/procpitem/orddeptcd", "");
  1499. model.setValue("/root/main/procpitem/orddeptnm", "");
  1500. model.setValue("/root/main/procpitem/remarkcd", "");
  1501. model.setValue("/root/main/procpitem/remarknm", "");
  1502. model.setValue("/root/main/item/clsnmlnk", "");
  1503. model.setValue("/root/main/procpitem/prcpnm", "");
  1504. model.setValue("/root/main/procpitem/prcpcd", "");
  1505. fGetSearchType("B");
  1506. //조회 항목구분세팅
  1507. fGetRsrvflagSet();
  1508. ipt_trsmtm.disabled = false;
  1509. ipt_trsmdd.disabled = false;
  1510. cmb_rsrvflag1_2.disabled = false;
  1511. cmb_rsrvflag1_1.disabled = false;
  1512. model.refresh();
  1513. }
  1514. ]]>
  1515. </script>
  1516. </xhtml:head>
  1517. <xhtml:body guideline="1,1194;2,755;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  1518. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  1519. <caption id="caption1" class="tit_1" style="left:0px; top:0px; width:280px; height:14px; ">예약메시지 (SMS) 전송설정</caption>
  1520. </group>
  1521. <group id="group2" style="left:0px; top:23px; width:1194px; height:35px; vertical-align:top; ">
  1522. <shape id="roundrect1" appearance="roundrect" style="left:0px; top:0px; width:1194px; height:35px; "/>
  1523. <caption id="caption3" class="search_name" style="left:835px; top:10px; width:104px; height:17px; ">등록부서 :</caption>
  1524. <input id="ipt_deptnm" ref="/root/send/srch2/deptnm" class="input_search" navindex="5" maxlength="50" style="left:929px; top:9px; width:120px; height:19px; ">
  1525. <script type="javascript" ev:event="onkeyup">
  1526. <![CDATA[
  1527. inputEnterKey("btn_search", "DOMActivate");
  1528. ]]>
  1529. </script>
  1530. </input>
  1531. <button id="btn_deptsrch" class="icon_search" navindex="6" style="left:1054px; top:10px; width:16px; height:16px; ">
  1532. <caption/>
  1533. <script type="javascript" ev:event="DOMActivate">
  1534. <![CDATA[
  1535. var search_condition = "deptnm";
  1536. var search_term = model.getValue("/root/send/srch2/deptnm");
  1537. var receive_deptcd_path = "/root/send/srch2/deptcd";
  1538. var receive_deptnm_path = "/root/send/srch2/deptnm";
  1539. cczfOpenSelectDept(search_condition, search_term, receive_deptcd_path, receive_deptnm_path);
  1540. ]]>
  1541. </script>
  1542. </button>
  1543. <output id="opt_deptcd" ref="/root/send/srch2/deptcd" class="output_fix" visibility="hidden" style="left:1075px; top:10px; width:14px; height:19px; "/>
  1544. <caption id="cpt_itemflag" class="search_name" style="left:291px; top:9px; width:104px; height:17px; ">항목구분 :</caption>
  1545. <select1 id="cmb_itemflag00" ref="/root/send/srch2/prcpflag" class="combo_search" appearance="minimal" style="left:385px; top:8px; width:105px; height:19px; ">
  1546. <choices>
  1547. <item>
  1548. <label>전 체</label>
  1549. <value/>
  1550. </item>
  1551. <item>
  1552. <label>진료과</label>
  1553. <value>D</value>
  1554. </item>
  1555. <item>
  1556. <label>Remark</label>
  1557. <value>R</value>
  1558. </item>
  1559. <item>
  1560. <label>의료협력</label>
  1561. <value>O</value>
  1562. </item>
  1563. <item>
  1564. <label>가예약</label>
  1565. <value>E</value>
  1566. </item>
  1567. <item>
  1568. <label>검사분류</label>
  1569. <value>P</value>
  1570. </item>
  1571. <item>
  1572. <label>검사코드</label>
  1573. <value>C</value>
  1574. </item>
  1575. <item>
  1576. <label>건진예약</label>
  1577. <value>H</value>
  1578. </item>
  1579. <item>
  1580. <label>건진상담예약</label>
  1581. <value>S</value>
  1582. </item>
  1583. </choices>
  1584. </select1>
  1585. <select1 id="cmb_itemflag11" ref="/root/send/srch2/prcpflag" class="combo_search" appearance="minimal" style="left:385px; top:8px; width:105px; height:19px; ">
  1586. <choices>
  1587. <item>
  1588. <label>전 체</label>
  1589. <value/>
  1590. </item>
  1591. <item>
  1592. <label>진료과</label>
  1593. <value>D</value>
  1594. </item>
  1595. <item>
  1596. <label>Remark</label>
  1597. <value>R</value>
  1598. </item>
  1599. <item>
  1600. <label>의료협력</label>
  1601. <value>O</value>
  1602. </item>
  1603. <item>
  1604. <label>가예약</label>
  1605. <value>E</value>
  1606. </item>
  1607. </choices>
  1608. </select1>
  1609. <select1 id="cmb_itemflag33" ref="/root/send/srch2/prcpflag" class="combo_search" appearance="minimal" style="left:385px; top:8px; width:105px; height:19px; ">
  1610. <choices>
  1611. <item>
  1612. <label>전 체</label>
  1613. <value/>
  1614. </item>
  1615. <item>
  1616. <label>검사분류</label>
  1617. <value>P</value>
  1618. </item>
  1619. <item>
  1620. <label>검사코드</label>
  1621. <value>C</value>
  1622. </item>
  1623. </choices>
  1624. </select1>
  1625. <select1 id="cmb_itemflag44" ref="/root/send/srch2/prcpflag" class="combo_search" navindex="2" appearance="minimal" style="left:385px; top:8px; width:105px; height:19px; ">
  1626. <choices>
  1627. <item>
  1628. <label>전 체</label>
  1629. <value/>
  1630. </item>
  1631. <item>
  1632. <label>건진예약</label>
  1633. <value>H</value>
  1634. </item>
  1635. <item>
  1636. <label>건진상담예약</label>
  1637. <value>S</value>
  1638. </item>
  1639. </choices>
  1640. </select1>
  1641. <input id="ipt_prcpnm" ref="/root/send/srch2/prcpnm" class="input_search" navindex="3" maxlength="100" style="left:493px; top:8px; width:120px; height:19px; ">
  1642. <script type="javascript" ev:event="onkeyup">
  1643. <![CDATA[
  1644. inputEnterKey("btn_prcpsrch", "DOMActivate");
  1645. ]]>
  1646. </script>
  1647. </input>
  1648. <button id="btn_prcpsrch" class="icon_search" navindex="4" style="left:618px; top:9px; width:16px; height:16px; ">
  1649. <caption/>
  1650. <script type="javascript" ev:event="DOMActivate">
  1651. <![CDATA[
  1652. var prcp_flag = model.getValue("/root/send/srch2/prcpflag");
  1653. var prcp_term = model.getValue("/root/send/srch2/prcpcd");
  1654. var cd_path = "/root/send/srch2/prcpcd";
  1655. var nm_path = "/root/send/srch2/prcpnm";
  1656. if (prcp_flag == "") {
  1657. messageBox("[항목구분]을 먼저","C002");
  1658. model.setFocus("cmb_prcpflag");
  1659. } else {
  1660. fSearchItem(prcp_flag, prcp_term, cd_path, nm_path);
  1661. }
  1662. ]]>
  1663. </script>
  1664. </button>
  1665. <output id="opt_prcpcd" ref="/root/send/srch2/prcpcd" class="output_fix" style="left:639px; top:9px; width:121px; height:19px; "/>
  1666. <line id="line1" class="line_4" style="x1:1099px; y1:7px; x2:1099px; y2:29px; "/>
  1667. <button id="btn_search" class="btn1_letter2" navindex="7" style="left:1115px; top:7px; width:56px; height:22px; ">
  1668. <caption>조회</caption>
  1669. <script type="javascript" ev:event="DOMActivate">
  1670. <![CDATA[
  1671. var deptnm = model.getValue("/root/send/srch2/deptnm");
  1672. if(deptnm == ""){
  1673. model.setValue("/root/send/srch2/deptcd", "");
  1674. }
  1675. model.resetInstanceNode("/root/main/item");
  1676. model.resetInstanceNode("/root/main/msgtmpl");
  1677. model.resetInstanceNode("/root/main/list/msgsmllist");
  1678. model.resetInstanceNode("/root/main/procpitem");
  1679. model.resetInstanceNode("/root/send/prcplist");
  1680. //부서 세팅
  1681. //var dutplcenm = getUserInfo("dutplcenm");
  1682. //var dutplcecd = getUserInfo("dutplcecd");
  1683. //model.setValue("root/send/srch2/deptnm", dutplcenm);
  1684. //model.setValue("root/send/srch2/deptcd", dutplcecd);
  1685. //model.setValue("/root/main/procpitem/inptdeptnm", dutplcenm);
  1686. //model.setValue("/root/main/procpitem/inptdeptcd", dutplcecd);
  1687. var itemflag = model.getValue("/root/send/srch2/prcpflag");
  1688. if(itemflag == ""){
  1689. submit("TRCRB00101");
  1690. submit("TRCRB00103");
  1691. }else{
  1692. submit("TRCRB00103");
  1693. }
  1694. //같은 부서 마스터만 승인설정 가능
  1695. fGetAprvynSet();
  1696. ]]>
  1697. </script>
  1698. </button>
  1699. <select1 id="cmb_rsrvflag2" ref="/root/send/srch2/rsrvflag" class="combo_search" navindex="1" appearance="minimal" style="left:110px; top:8px; width:105px; height:19px; ">
  1700. <choices>
  1701. <item>
  1702. <label>전 체</label>
  1703. <value/>
  1704. </item>
  1705. <item>
  1706. <label>진료예약</label>
  1707. <value>1</value>
  1708. </item>
  1709. <item>
  1710. <label>입원예약</label>
  1711. <value>2</value>
  1712. </item>
  1713. <item>
  1714. <label>검사예약</label>
  1715. <value>3</value>
  1716. </item>
  1717. <item>
  1718. <label>건진예약</label>
  1719. <value>4</value>
  1720. </item>
  1721. </choices>
  1722. <script type="javascript" ev:event="xforms-select">
  1723. <![CDATA[
  1724. fGetRsrvflagSet();
  1725. model.refresh();
  1726. ]]>
  1727. </script>
  1728. </select1>
  1729. <caption id="caption20" class="search_name" style="left:16px; top:9px; width:104px; height:17px; ">예약구분 :</caption>
  1730. </group>
  1731. <group id="group3" scroll="auto" style="left:0px; top:58px; width:420px; height:377px; ">
  1732. <caption id="caption5" class="tit_2" style="left:5px; top:10px; width:135px; height:13px; ">병원전송 리스트</caption>
  1733. <line id="line2" class="line_1" style="x1:0px; y1:25px; x2:415px; y2:25px; "/>
  1734. <button id="btn_del" class="btn5_letter3" style="left:362px; top:5px; width:53px; height:19px; ">
  1735. <caption>행삭제</caption>
  1736. <script type="javascript" ev:event="DOMActivate">
  1737. <![CDATA[
  1738. var row = grd_rsrvlist.row;
  1739. var rsrvflag = grd_rsrvlist.valueMatrix(row, grd_rsrvlist.colRef("rsrvflag"));
  1740. var bfaftflag = grd_rsrvlist.valueMatrix(row, grd_rsrvlist.colRef("bfaftflag"));
  1741. var delivedd = grd_rsrvlist.valueMatrix(row, grd_rsrvlist.colRef("delivedd"));
  1742. var delivetm = grd_rsrvlist.valueMatrix(row, grd_rsrvlist.colRef("delivetm"));
  1743. var deliveseq = grd_rsrvlist.valueMatrix(row, grd_rsrvlist.colRef("deliveseq"));
  1744. if(rsrvflag!="" && bfaftflag!="" && delivedd!="" && delivetm!=""){
  1745. fDeleteSetRsrv(rsrvflag, bfaftflag, delivedd, delivetm, deliveseq);
  1746. fGetSearchType("B");
  1747. model.refresh();
  1748. }else{
  1749. messageBox("삭제할 병원 전송 리스트가 선택되지","E007");
  1750. return;
  1751. }
  1752. ]]>
  1753. </script>
  1754. </button>
  1755. <datagrid id="grd_rsrvlist" nodeset="/root/main/list/rsrvlist" allowselection="false" autoresize="true" caption="예약구분^항목구분^전송일^전송시간^초재진구분^발송순서^전후구분^SMS전송여부^SMS대분류코드^SMS중분류코드^SMS소분류코드^검사분류코드" colwidth="90, 90, 53, 69, 90, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0" ellipsis="true" explorerbar="sortshowmove" extendlastcol="scroll" rowheader="seq" style="left:0px; top:30px; width:415px; height:346px; ">
  1756. <col class="text_center" disabled="true" ref="rsrvflag" type="combo" _key="true">
  1757. <choices>
  1758. <itemset nodeset="/root/init/comncdlist/C0026list/C0026">
  1759. <label ref="cdnm"/>
  1760. <value ref="cdid"/>
  1761. </itemset>
  1762. </choices>
  1763. </col>
  1764. <col class="text_center" disabled="true" ref="itemflag" type="combo" _key="true">
  1765. <choices>
  1766. <item>
  1767. <label>진료과</label>
  1768. <value>D</value>
  1769. </item>
  1770. <item>
  1771. <label>Remark</label>
  1772. <value>R</value>
  1773. </item>
  1774. <item>
  1775. <label>의료협력</label>
  1776. <value>O</value>
  1777. </item>
  1778. <item>
  1779. <label>가예약</label>
  1780. <value>E</value>
  1781. </item>
  1782. <item>
  1783. <label>검사분류</label>
  1784. <value>P</value>
  1785. </item>
  1786. <item>
  1787. <label>검사코드</label>
  1788. <value>C</value>
  1789. </item>
  1790. <item>
  1791. <label>건진예약</label>
  1792. <value>H</value>
  1793. </item>
  1794. <item>
  1795. <label>건진상담예약</label>
  1796. <value>S</value>
  1797. </item>
  1798. </choices>
  1799. </col>
  1800. <col class="text_center" ref="delivedd" format="99"/>
  1801. <col class="text_center" ref="delivetm" format="hh:nn"/>
  1802. <col class="text_center" disabled="true" ref="fsexamflag" type="combo" _key="true">
  1803. <choices>
  1804. <item>
  1805. <label>전체</label>
  1806. <value>A</value>
  1807. </item>
  1808. <item>
  1809. <label>병원초진</label>
  1810. <value>F</value>
  1811. </item>
  1812. <item>
  1813. <label>재진(과초/상초포함)</label>
  1814. <value>D</value>
  1815. </item>
  1816. </choices>
  1817. </col>
  1818. <col ref="smsmsg" visibility="hidden"/>
  1819. <col ref="smstrsmcntcno" visibility="hidden"/>
  1820. <col ref="defltyn" visibility="hidden"/>
  1821. <col ref="clsnmlnk" visibility="hidden"/>
  1822. <col ref="deliveseq" visibility="hidden"/>
  1823. <col ref="bfaftflag" visibility="hidden"/>
  1824. <col ref="smsuseyn" visibility="hidden"/>
  1825. <col ref="smsmsglrgcd" visibility="hidden"/>
  1826. <col ref="smsmsgmdlcd" visibility="hidden"/>
  1827. <col ref="smsmsgsmlcd" visibility="hidden"/>
  1828. <col ref="clscdlnk" visibility="hidden"/>
  1829. <script type="javascript" ev:event="ondblclick">
  1830. <![CDATA[
  1831. if ((grd_rsrvlist.row > 0) && grd_rsrvlist.isCell(event.target)){
  1832. var mastauth = model.getValue("/root/mastauth/mastauth");
  1833. if( mastauth == "Y"){
  1834. //트리 초기화
  1835. fTreeInit(trv_orddeptlist);
  1836. fTreeInit(trv_clslist);
  1837. //fSelectRsrv();
  1838. var grid = grd_rsrvlist;
  1839. //전송설정 화면
  1840. model.setValue("/root/main/item/rsrvflag",grid.valueMatrix(grid.row,grid.colRef("rsrvflag")));
  1841. model.setValue("/root/main/item/itemflag",grid.valueMatrix(grid.row,grid.colRef("itemflag")));
  1842. model.setValue("/root/main/item/fsexamflag",grid.valueMatrix(grid.row,grid.colRef("fsexamflag")));
  1843. model.setValue("/root/main/item/delivedd",grid.valueMatrix(grid.row,grid.colRef("delivedd")));
  1844. model.setValue("/root/main/item/delivetm",grid.valueMatrix(grid.row,grid.colRef("delivetm")));
  1845. // model.setValue("/root/main/item/smsmsg",grid.valueMatrix(grid.row,grid.colRef("smsmsg")));
  1846. model.setValue("/root/main/item/defltyn",grid.valueMatrix(grid.row,grid.colRef("defltyn")));
  1847. model.setValue("/root/main/item/clsnmlnk",grid.valueMatrix(grid.row,grid.colRef("clsnmlnk")));
  1848. model.setValue("/root/main/item/deliveseq",grid.valueMatrix(grid.row,grid.colRef("deliveseq")));
  1849. model.setValue("/root/main/item/bfaftflag",grid.valueMatrix(grid.row,grid.colRef("bfaftflag")));
  1850. model.setValue("/root/main/item/smsuseyn",grid.valueMatrix(grid.row,grid.colRef("smsuseyn")));
  1851. model.setValue("/root/main/item/smsmsglrgcd",grid.valueMatrix(grid.row,grid.colRef("smsmsglrgcd")));
  1852. model.setValue("/root/main/item/smsmsgmdlcd",grid.valueMatrix(grid.row,grid.colRef("smsmsgmdlcd")));
  1853. model.setValue("/root/main/item/smsmsgsmlcd",grid.valueMatrix(grid.row,grid.colRef("smsmsgsmlcd")));
  1854. model.setValue("/root/main/item/clscdlnk",grid.valueMatrix(grid.row,grid.colRef("clscdlnk")));
  1855. //미리보기 화면
  1856. model.setValue("/root/main/msgtmpl/replytelno",grid.valueMatrix(grid.row,grid.colRef("smstrsmcntcno")));
  1857. model.setValue("/root/main/msgtmpl/prvwscrn",grid.valueMatrix(grid.row,grid.colRef("smsmsg")));
  1858. //SMS 메시지 내용 우측의 목록 갱신
  1859. model.setValue("/root/main/msgtmpl/msglrgcd",grid.valueMatrix(grid.row,grid.colRef("smsmsglrgcd")));
  1860. fGetChnlMdlCd();
  1861. model.setValue("/root/main/msgtmpl/msgmdlcd",grid.valueMatrix(grid.row,grid.colRef("smsmsgmdlcd")));
  1862. model.removenodeset("/root/main/list/msgsmllist");
  1863. var i=0;
  1864. var cur_rows = grd_msglist.rows
  1865. for(i=0; i<cur_rows; i++)
  1866. {
  1867. grd_msglist.deleteRow(1, false);
  1868. }
  1869. grd_msglist.refresh();
  1870. grd_msglist.addRow();
  1871. var cur_row = grd_msglist.row;
  1872. model.setValue("/root/main/list/msgsmllist[" + cur_row + "]/msgsmlcd", grid.valueMatrix(grid.row,grid.colRef("smsmsgsmlcd")));
  1873. model.setValue("/root/main/list/msgsmllist[" + cur_row + "]/msgcnts", grid.valueMatrix(grid.row,grid.colRef("smsmsg")));
  1874. model.setValue("/root/main/list/msgsmllist[" + cur_row + "]/smstrsmcntcno", grid.valueMatrix(grid.row,grid.colRef("smstrsmcntcno")));
  1875. // 수정모드
  1876. model.makeValue("/root/main/item/savemode", "U");
  1877. //현재메세지 임시저장
  1878. model.setValue("/root/temp/msg/smsmsglrgcd",grid.valueMatrix(grid.row,grid.colRef("smsmsglrgcd")));
  1879. // model.setValue("/root/temp/msg/smsmsglrgcd",model.getValue("/root/main/item/smsmsglrgcd"));
  1880. model.setValue("/root/temp/msg/smsmsgmdlcd",grid.valueMatrix(grid.row,grid.colRef("smsmsgmdlcd")));
  1881. // model.setValue("/root/temp/msg/smsmsgmdlcd",model.getValue("/root/main/item/smsmsgmdlcd"));
  1882. model.setValue("/root/temp/msg/smsmsgsmlcd",grid.valueMatrix(grid.row,grid.colRef("smsmsgsmlcd")));
  1883. // model.setValue("/root/temp/msg/smsmsgsmlcd",model.getValue("/root/main/item/smsmsgsmlcd"));
  1884. model.setValue("/root/main/procpitem/itemflag",grid.valueMatrix(grid.row,grid.colRef("itemflag")));
  1885. // model.setValue("/root/main/procpitem/itemflag", model.getValue("/root/main/item/itemflag"));
  1886. //fGetItemSet();
  1887. fGetSearchType("B");
  1888. rdo_rsrv.value = "B";
  1889. rdo_rsrv.disabled = true;
  1890. fGetRsrvSet();
  1891. fGetItemSet();
  1892. //초재진구분 콤보 disable
  1893. combo1.disabled = true;
  1894. //코드에서''이부분 제거
  1895. var str = model.getValue("/root/main/item/clscdlnk");
  1896. var original = "'";
  1897. var replacement = "";
  1898. var clscdlnk = "";
  1899. var label = "";
  1900. clscdlnk = fGetReplaceValue(str, original, replacement);
  1901. if(grd_rsrvlist.valueMatrix(grd_rsrvlist.row,grd_rsrvlist.colRef("rsrvflag")) == "1"){
  1902. btn_orddrtab.selected = true;
  1903. model.toggle("case1");
  1904. label = fGetSrcTree(clscdlnk, trv_orddeptlist);
  1905. }else if(grd_rsrvlist.valueMatrix(grd_rsrvlist.row,grd_rsrvlist.colRef("rsrvflag")) == "3"){
  1906. fGetClsTree();
  1907. btn_schartab.selected = true;
  1908. model.toggle("case2");
  1909. label = fGetSrcTree(clscdlnk, trv_clslist);
  1910. }else{
  1911. model.setValue("/root/main/item/clscdlnk","");
  1912. btn_orddrtab.selected = true;
  1913. model.toggle("case1");
  1914. }
  1915. model.setValue("/root/main/item/clsnmlnk", label);
  1916. fGetCheckMsgCnts();//문자 용량
  1917. model.refresh();
  1918. }
  1919. }
  1920. ]]>
  1921. </script>
  1922. </datagrid>
  1923. </group>
  1924. <group id="group4" style="left:0px; top:435px; width:600px; height:322px; vertical-align:top; ">
  1925. <caption id="caption6" class="tit_2" style="left:5px; top:10px; width:175px; height:14px; ">SMS 전송 설정</caption>
  1926. <line id="line3" class="line_1" style="x1:0px; y1:25px; x2:595px; y2:25px; "/>
  1927. <line id="line4" class="line_2" style="x1:0px; y1:52px; x2:595px; y2:52px; "/>
  1928. <caption id="caption7" class="cell_1" style="left:0px; top:30px; width:100px; height:23px; ">예약구분</caption>
  1929. <select1 id="cmb_rsrvflag1_1" ref="/root/main/item/rsrvflag" class="combo_essential" appearance="minimal" style="left:103px; top:31px; width:100px; height:19px; ">
  1930. <choices>
  1931. <item>
  1932. <label>선 택</label>
  1933. <value/>
  1934. </item>
  1935. <item>
  1936. <label>진료예약</label>
  1937. <value>1</value>
  1938. </item>
  1939. <item>
  1940. <label>입원예약</label>
  1941. <value>2</value>
  1942. </item>
  1943. <item>
  1944. <label>검사예약</label>
  1945. <value>3</value>
  1946. </item>
  1947. <item>
  1948. <label>건진예약</label>
  1949. <value>4</value>
  1950. </item>
  1951. </choices>
  1952. <script type="javascript" ev:event="xforms-select">
  1953. <![CDATA[
  1954. var stype = model.getValue("/root/temp/rdorsrv");
  1955. fGetSearchType(stype);
  1956. fGetRsrvSet();
  1957. ]]>
  1958. </script>
  1959. </select1>
  1960. <select1 id="cmb_rsrvflag1_2" ref="/root/main/item/rsrvflag" class="combo_essential" navindex="8" appearance="minimal" style="left:103px; top:31px; width:100px; height:19px; ">
  1961. <choices>
  1962. <item>
  1963. <label>선 택</label>
  1964. <value/>
  1965. </item>
  1966. <item>
  1967. <label>진료예약</label>
  1968. <value>1</value>
  1969. </item>
  1970. <item>
  1971. <label>검사예약</label>
  1972. <value>3</value>
  1973. </item>
  1974. </choices>
  1975. <script type="javascript" ev:event="xforms-value-changed">
  1976. <![CDATA[
  1977. fGetRsrvSet();
  1978. ]]>
  1979. </script>
  1980. </select1>
  1981. <bool id="bol_defltyn" checkvalue="Y,N" ref="/root/main/item/defltyn" style="left:217px; top:32px; width:20px; height:20px; "/>
  1982. <caption id="caption21" style="left:237px; top:32px; width:50px; height:20px; ">기본</caption>
  1983. <caption id="caption2" class="cell_1" style="left:0px; top:54px; width:100px; height:23px; ">항목구분</caption>
  1984. <select1 id="cmb_itemflag1_1" ref="/root/main/procpitem/itemflag" class="combo_essential" visibility="hidden" appearance="minimal" style="left:103px; top:55px; width:100px; height:19px; ">
  1985. <choices>
  1986. <item>
  1987. <label>선 택</label>
  1988. <value/>
  1989. </item>
  1990. <item>
  1991. <label>진료과</label>
  1992. <value>D</value>
  1993. </item>
  1994. <item>
  1995. <label>의료협력</label>
  1996. <value>O</value>
  1997. </item>
  1998. <item>
  1999. <label>가예약</label>
  2000. <value>E</value>
  2001. </item>
  2002. </choices>
  2003. <script type="javascript" ev:event="xforms-value-changed">
  2004. <![CDATA[
  2005. fGetItemSet();
  2006. ]]>
  2007. </script>
  2008. </select1>
  2009. <select1 id="cmb_itemflag1_2" ref="/root/main/procpitem/itemflag" class="combo_essential" visibility="hidden" appearance="minimal" style="left:103px; top:55px; width:100px; height:19px; ">
  2010. <choices>
  2011. <item>
  2012. <label>선 택</label>
  2013. <value/>
  2014. </item>
  2015. <item>
  2016. <label>Remark</label>
  2017. <value>R</value>
  2018. </item>
  2019. <item>
  2020. <label>의료협력</label>
  2021. <value>O</value>
  2022. </item>
  2023. </choices>
  2024. <script type="javascript" ev:event="xforms-value-changed">
  2025. <![CDATA[
  2026. fGetItemSet();
  2027. ]]>
  2028. </script>
  2029. </select1>
  2030. <select1 id="cmb_itemflag3_1" ref="/root/main/procpitem/itemflag" class="combo_essential" visibility="hidden" appearance="minimal" style="left:103px; top:55px; width:100px; height:19px; ">
  2031. <choices>
  2032. <item>
  2033. <label>선 택</label>
  2034. <value/>
  2035. </item>
  2036. <item>
  2037. <label>검사분류</label>
  2038. <value>P</value>
  2039. </item>
  2040. </choices>
  2041. <script type="javascript" ev:event="xforms-value-changed">
  2042. <![CDATA[
  2043. fGetItemSet();
  2044. ]]>
  2045. </script>
  2046. </select1>
  2047. <select1 id="cmb_itemflag3_2" ref="/root/main/procpitem/itemflag" class="combo_essential" visibility="hidden" appearance="minimal" style="left:103px; top:55px; width:100px; height:19px; ">
  2048. <choices>
  2049. <item>
  2050. <label>선 택</label>
  2051. <value/>
  2052. </item>
  2053. <item>
  2054. <label>검사코드</label>
  2055. <value>C</value>
  2056. </item>
  2057. </choices>
  2058. <script type="javascript" ev:event="xforms-value-changed">
  2059. <![CDATA[
  2060. fGetItemSet();
  2061. ]]>
  2062. </script>
  2063. </select1>
  2064. <select1 id="cmb_itemflag4" ref="/root/main/procpitem/itemflag" class="combo_essential" navindex="9" visibility="hidden" appearance="minimal" style="left:103px; top:55px; width:100px; height:19px; ">
  2065. <choices>
  2066. <item>
  2067. <label>선 택</label>
  2068. <value/>
  2069. </item>
  2070. <item>
  2071. <label>건진예약</label>
  2072. <value>H</value>
  2073. </item>
  2074. <item>
  2075. <label>건진상담예약</label>
  2076. <value>S</value>
  2077. </item>
  2078. </choices>
  2079. <script type="javascript" ev:event="xforms-value-changed">
  2080. <![CDATA[
  2081. fGetItemSet();
  2082. ]]>
  2083. </script>
  2084. </select1>
  2085. <caption id="caption8" class="cell_1" style="left:290px; top:54px; width:100px; height:23px; ">등록부서</caption>
  2086. <input id="ipt_deptcd2" ref="/root/main/procpitem/inptdeptnm" class="input_search" maxlength="50" style="left:393px; top:55px; width:110px; height:19px; ">
  2087. <script type="javascript" ev:event="onkeyup">
  2088. <![CDATA[
  2089. inputEnterKey("btn_deptcd2", "DOMActivate");
  2090. ]]>
  2091. </script>
  2092. </input>
  2093. <button id="btn_deptcd2" class="icon_search" style="left:508px; top:58px; width:16px; height:16px; ">
  2094. <caption/>
  2095. <script type="javascript" ev:event="DOMActivate">
  2096. <![CDATA[
  2097. var search_condition = "deptnm";
  2098. var search_term = model.getValue("/root/main/procpitem/inptdeptnm");
  2099. var receive_deptcd_path = "/root/main/procpitem/inptdeptcd";
  2100. var receive_deptnm_path = "/root/main/procpitem/inptdeptnm";
  2101. cczfOpenSelectDept(search_condition, search_term, receive_deptcd_path, receive_deptnm_path);
  2102. ]]>
  2103. </script>
  2104. </button>
  2105. <output id="opt_deptcd2" ref="/root/main/procpitem/inptdeptcd" class="output_fix" visibility="hidden" style="left:528px; top:55px; width:17px; height:19px; "/>
  2106. <line id="line5" class="line_2" style="x1:0px; y1:76px; x2:595px; y2:76px; "/>
  2107. <caption id="caption9" class="cell_1" style="left:0px; top:135px; width:100px; height:23px; ">전송일시</caption>
  2108. <input id="ipt_trsmdd" ref="/root/main/item/delivedd" class="input_essential" format="99" style="left:203px; top:136px; width:50px; height:19px; "/>
  2109. <select1 id="cmb_trsmdd2" ref="/root/main/item/delivedd" class="combo_essential" visibility="hidden" appearance="minimal" style="left:193px; top:136px; width:60px; height:19px; ">
  2110. <choices>
  2111. <item>
  2112. <label>선 택</label>
  2113. <value/>
  2114. </item>
  2115. <item>
  2116. <label>1</label>
  2117. <value>1</value>
  2118. </item>
  2119. <item>
  2120. <label>2</label>
  2121. <value>2</value>
  2122. </item>
  2123. </choices>
  2124. </select1>
  2125. <select1 id="cmb_trsmdd3" ref="/root/main/item/delivedd" class="combo_essential" visibility="hidden" appearance="minimal" style="left:193px; top:136px; width:60px; height:19px; ">
  2126. <choices>
  2127. <item>
  2128. <label>선 택</label>
  2129. <value/>
  2130. </item>
  2131. <item>
  2132. <label>1</label>
  2133. <value>1</value>
  2134. </item>
  2135. <item>
  2136. <label>2</label>
  2137. <value>2</value>
  2138. </item>
  2139. <item>
  2140. <label>3</label>
  2141. <value>3</value>
  2142. </item>
  2143. </choices>
  2144. </select1>
  2145. <caption id="caption10" style="left:255px; top:137px; width:35px; height:20px; ">일 전</caption>
  2146. <input id="ipt_trsmtm" ref="/root/main/item/delivetm" class="input_essential" format="hh:nn" style="left:315px; top:136px; width:59px; height:19px; "/>
  2147. <caption id="caption11" style="left:377px; top:137px; width:56px; height:20px; ">시에 전송</caption>
  2148. <caption id="caption12" class="cell_1" style="left:0px; top:78px; width:100px; height:23px; ">예약중복</caption>
  2149. <select1 id="rdo_rsrvdupl" ref="/root/main/procpitem/rsrvdupluseyn" navindex="10" appearance="full" cellspacing="3" cols="2" overflow="visible" style="left:103px; top:81px; width:280px; height:18px; border-style:none; ">
  2150. <choices>
  2151. <item>
  2152. <label>병원전송 대신 전송</label>
  2153. <value>N</value>
  2154. </item>
  2155. <item>
  2156. <label>병원전송 함께 전송</label>
  2157. <value>Y</value>
  2158. </item>
  2159. </choices>
  2160. </select1>
  2161. <line id="line6" class="line_3" style="x1:0px; y1:100px; x2:595px; y2:100px; "/>
  2162. <caption id="caption13" class="cell_1" style="left:290px; top:30px; width:100px; height:23px; ">분류설정</caption>
  2163. <select1 id="rdo_rsrv" ref="/root/temp/rdorsrv" appearance="full" cellspacing="30" cols="2" overflow="visible" style="left:393px; top:33px; width:202px; height:18px; border-style:none; ">
  2164. <choices>
  2165. <item>
  2166. <label>병원전송</label>
  2167. <value>B</value>
  2168. </item>
  2169. <item>
  2170. <label>부서전송</label>
  2171. <value>D</value>
  2172. </item>
  2173. </choices>
  2174. <script type="javascript" ev:event="onclick">
  2175. <![CDATA[
  2176. var stype = model.getValue("/root/temp/rdorsrv");
  2177. fGetSearchType(stype);
  2178. fGetRsrvSet();
  2179. fGetItemSet();
  2180. ]]>
  2181. </script>
  2182. </select1>
  2183. <caption id="caption14" class="tit_2" style="left:5px; top:115px; width:195px; height:13px; ">SMS 전송대상 및 전송시간</caption>
  2184. <line id="line8" class="line_1" style="x1:0px; y1:130px; x2:595px; y2:130px; "/>
  2185. <group id="group7" style="left:0px; top:163px; width:595px; height:159px; ">
  2186. <switch id="switch2" style="left:0px; top:21px; width:595px; height:137px; border-color:#c7a3cf; border-style:solid; ">
  2187. <case id="case1" style="left:0px; top:0px; width:598px; height:130px; ">
  2188. <caption id="caption15" class="cell_1" style="left:0px; top:2px; width:100px; height:23px; ">진료과</caption>
  2189. <input id="ipt_orddr" ref="/root/main/item/clsnmlnk" class="input_search" inputtype="button" style="left:103px; top:4px; width:480px; height:19px; ">
  2190. <script type="javascript" ev:event="onbuttonclick">
  2191. <![CDATA[
  2192. if (model.getValue("/root/temp/treevisible") == "F") {
  2193. trv_orddeptlist.visible = true;
  2194. btn_close.attribute("visibility") = "visible" ;
  2195. model.setValue("/root/temp/treevisible", "T");
  2196. } else {
  2197. trv_orddeptlist.visible = false;
  2198. btn_close.attribute("visibility") = "hidden" ;
  2199. model.setValue("/root/temp/treevisible", "F");
  2200. }
  2201. var chckvalue = "";
  2202. var changevalue = "";
  2203. chckvalue = trv_orddeptlist.getCheckValue(";");
  2204. if(chckvalue != ""){
  2205. changevalue = fGetChangeValue(chckvalue);
  2206. model.setValue("/root/main/item/clscdlnk",changevalue);
  2207. //레이블 가져오기
  2208. var clscdlnk = "";
  2209. var label = "";
  2210. clscdlnk = trv_orddeptlist.getCheckValue(",");
  2211. label = fGetSrcTreeLabel(clscdlnk, trv_orddeptlist);
  2212. model.setValue("/root/main/item/clsnmlnk", label);
  2213. }else{
  2214. model.setValue("/root/main/item/clscdlnk","");
  2215. model.setValue("/root/main/item/clsnmlnk","");
  2216. }
  2217. model.refresh();
  2218. ]]>
  2219. </script>
  2220. </input>
  2221. <line id="line9" class="line_2" style="x1:0px; y1:25px; x2:590px; y2:25px; "/>
  2222. <caption id="caption16" class="cell_1" style="left:0px; top:27px; width:100px; height:23px; ">의료협력</caption>
  2223. <input id="ipt_onestop" ref="/root/main/procpitem/orddeptcd" class="input_search" editable="false" maxlength="50" style="left:103px; top:28px; width:120px; height:19px; ">
  2224. <script type="javascript" ev:event="onkeyup">
  2225. <![CDATA[
  2226. inputEnterKey("btn_onestop", "DOMActivate");
  2227. ]]>
  2228. </script>
  2229. </input>
  2230. <button id="btn_onestop" class="icon_search" style="left:228px; top:31px; width:16px; height:16px; ">
  2231. <caption/>
  2232. <script type="javascript" ev:event="DOMActivate">
  2233. <![CDATA[
  2234. var item_flag = model.getValue("/root/main/procpitem/itemflag");
  2235. var item_term = model.getValue("/root/main/procpitem/orddeptcd");
  2236. var cd_path = "/root/main/procpitem/orddeptcd";
  2237. var nm_path = "/root/main/procpitem/orddeptnm";
  2238. if (item_flag == "") {
  2239. messageBox("[항목구분]을 먼저","C002");
  2240. } else if (item_flag != "O") {
  2241. messageBox("항목구분이 의료협력으로 선택되지","E007");
  2242. } else {
  2243. fSearchItem(item_flag, item_term, cd_path, nm_path);
  2244. }
  2245. ]]>
  2246. </script>
  2247. </button>
  2248. <output id="opt_onestop" ref="/root/main/procpitem/orddeptnm" class="output_fix" style="left:254px; top:28px; width:221px; height:19px; "/>
  2249. <line id="line10" class="line_2" style="x1:0px; y1:49px; x2:590px; y2:49px; "/>
  2250. <caption id="caption17" class="cell_1" style="left:0px; top:51px; width:100px; height:23px; ">Remark</caption>
  2251. <input id="ipt_remark" ref="/root/main/procpitem/remarkcd" class="input_search" editable="false" maxlength="50" style="left:103px; top:52px; width:120px; height:19px; ">
  2252. <script type="javascript" ev:event="onkeyup">
  2253. <![CDATA[
  2254. inputEnterKey("btn_remark", "DOMActivate");
  2255. ]]>
  2256. </script>
  2257. </input>
  2258. <button id="btn_remark" class="icon_search" style="left:228px; top:55px; width:16px; height:16px; ">
  2259. <caption/>
  2260. <script type="javascript" ev:event="DOMActivate">
  2261. <![CDATA[
  2262. var item_flag = model.getValue("/root/main/procpitem/itemflag");
  2263. var item_term = model.getValue("/root/main/procpitem/remarkcd");
  2264. var cd_path = "/root/main/procpitem/remarkcd";
  2265. var nm_path = "/root/main/procpitem/remarknm";
  2266. if (item_flag == "") {
  2267. messageBox("[항목구분]을 먼저","C002");
  2268. } else if (item_flag != "R") {
  2269. messageBox("항목구분이 Remark로 선택되지","E007");
  2270. } else {
  2271. fSearchItem(item_flag, item_term, cd_path, nm_path);
  2272. }
  2273. ]]>
  2274. </script>
  2275. </button>
  2276. <output id="opt_remark" ref="/root/main/procpitem/remarknm" class="output_fix" style="left:254px; top:52px; width:221px; height:19px; "/>
  2277. <line id="line11" class="line_3" style="x1:0px; y1:74px; x2:590px; y2:74px; "/>
  2278. <select id="chk_smsyn" ref="/root/main/item/smsyn" disabled="true" overflow="visible" appearance="full" style="left:490px; top:54px; width:80px; height:15px; border-style:none; ">
  2279. <choices>
  2280. <item>
  2281. <label>문자 금지</label>
  2282. <value>N</value>
  2283. </item>
  2284. </choices>
  2285. </select>
  2286. </case>
  2287. <case id="case2" selected="true">
  2288. <caption id="caption18" class="cell_1" style="left:0px; top:2px; width:100px; height:23px; ">검사분류</caption>
  2289. <input id="ipt_clscds" ref="/root/main/item/clsnmlnk" class="input_search" inputtype="button" style="left:103px; top:4px; width:480px; height:19px; ">
  2290. <script type="javascript" ev:event="onbuttonclick">
  2291. <![CDATA[
  2292. fGetTreePopup();
  2293. ]]>
  2294. </script>
  2295. </input>
  2296. <line id="line12" class="line_2" style="x1:0px; y1:25px; x2:585px; y2:25px; "/>
  2297. <caption id="caption19" class="cell_1" style="left:0px; top:27px; width:100px; height:23px; ">검사코드</caption>
  2298. <input id="ipt_rst" ref="/root/main/procpitem/prcpnm" class="input_search" editable="false" maxlength="50" style="left:103px; top:28px; width:255px; height:19px; ">
  2299. <script type="javascript" ev:event="onkeyup">
  2300. <![CDATA[
  2301. inputEnterKey("btn_rst", "DOMActivate");
  2302. ]]>
  2303. </script>
  2304. </input>
  2305. <button id="btn_rst" class="icon_search" style="left:363px; top:29px; width:16px; height:16px; ">
  2306. <caption/>
  2307. <script type="javascript" ev:event="DOMActivate">
  2308. <![CDATA[
  2309. var item_flag = model.getValue("/root/main/procpitem/itemflag");
  2310. var item_term = model.getValue("/root/main/procpitem/prcpnm");
  2311. var cd_path = "/root/main/procpitem/prcpcd";
  2312. var nm_path = "/root/main/procpitem/prcpnm";
  2313. if (item_flag == "") {
  2314. messageBox("[항목구분]을 먼저","C002");
  2315. } else if (item_flag != "C") {
  2316. messageBox("항목구분이 검사코드로 선택되지","E007");
  2317. } else {
  2318. fSearchItem(item_flag, item_term, cd_path, nm_path);
  2319. }
  2320. ]]>
  2321. </script>
  2322. </button>
  2323. <output id="opt_rst" ref="/root/main/procpitem/prcpcd" class="output_fix" style="left:389px; top:28px; width:141px; height:19px; "/>
  2324. <line id="line13" class="line_2" style="x1:0px; y1:49px; x2:585px; y2:49px; "/>
  2325. </case>
  2326. </switch>
  2327. <button id="btn_orddrtab" class="btn_sw4" disabled="true" group="tab" style="left:0px; top:0px; width:64px; height:22px; ">
  2328. <caption>진료예약</caption>
  2329. <script type="javascript" ev:event="DOMActivate">
  2330. <![CDATA[
  2331. model.toggle("case1");
  2332. ]]>
  2333. </script>
  2334. </button>
  2335. <button id="btn_schartab" class="btn_sw4" disabled="true" group="tab" style="left:63px; top:0px; width:64px; height:22px; ">
  2336. <caption>검사예약</caption>
  2337. <script type="javascript" ev:event="DOMActivate">
  2338. <![CDATA[
  2339. model.toggle("case2");
  2340. ]]>
  2341. </script>
  2342. </button>
  2343. </group>
  2344. <line id="line14" class="line_2" style="x1:0px; y1:158px; x2:595px; y2:158px; "/>
  2345. <caption id="caption22" style="left:110px; top:137px; width:70px; height:20px; ">예약일 기준</caption>
  2346. <treeview id="trv_orddeptlist" ref="/root/temp/treelist" visibility="hidden" hascheck="true" style="left:132px; top:19px; width:255px; height:297px; ">
  2347. <itemset nodeset="/root/main/groupinfo/orddeptlist">
  2348. <label ref="depthngnm"/>
  2349. <value ref="deptcd"/>
  2350. <depth ref="depth"/>
  2351. </itemset>
  2352. </treeview>
  2353. <treeview id="trv_clslist" ref="/root/temp/clstreelist" visibility="hidden" checkchildren="true" expanddepth="-1" hascheck="true" itemsettype="depth" style="left:132px; top:19px; width:255px; height:297px; ">
  2354. <itemset nodeset="/root/main/groupinfo/clslist">
  2355. <label ref="earnclsnm"/>
  2356. <value ref="earnclscd"/>
  2357. <depth ref="depth"/>
  2358. </itemset>
  2359. <script type="javascript" ev:event="ondblclick">
  2360. <![CDATA[
  2361. fGetTreePopup();
  2362. ]]>
  2363. </script>
  2364. </treeview>
  2365. <caption id="caption4" class="cell_1" visibility="hidden" style="left:385px; top:78px; width:80px; height:23px; ">초/재진구분</caption>
  2366. <select1 id="combo1" ref="/root/main/item/fsexamflag" class="combo_essential" navindex="9" visibility="hidden" appearance="minimal" style="left:468px; top:79px; width:125px; height:19px; ">
  2367. <choices>
  2368. <item>
  2369. <label>전체</label>
  2370. <value>A</value>
  2371. </item>
  2372. <item>
  2373. <label>병원초진</label>
  2374. <value>F</value>
  2375. </item>
  2376. <item>
  2377. <label>재진(과초/상초포함)</label>
  2378. <value>D</value>
  2379. </item>
  2380. </choices>
  2381. </select1>
  2382. <button id="btn_close" class="btn2_letter2" visibility="hidden" style="left:345px; top:0px; width:42px; height:19px; ">
  2383. <caption>닫기</caption>
  2384. <script type="javascript" ev:event="DOMActivate">
  2385. <![CDATA[
  2386. if (model.getValue("/root/temp/treevisible") == "F") {
  2387. trv_orddeptlist.visible = true;
  2388. model.setValue("/root/temp/treevisible", "T");
  2389. } else {
  2390. trv_orddeptlist.visible = false;
  2391. model.setValue("/root/temp/treevisible", "F");
  2392. }
  2393. var chckvalue = "";
  2394. var changevalue = "";
  2395. chckvalue = trv_orddeptlist.getCheckValue(";");
  2396. if(chckvalue != ""){
  2397. changevalue = fGetChangeValue(chckvalue);
  2398. model.setValue("/root/main/item/clscdlnk",changevalue);
  2399. //레이블 가져오기
  2400. var clscdlnk = "";
  2401. var label = "";
  2402. clscdlnk = trv_orddeptlist.getCheckValue(",");
  2403. label = fGetSrcTreeLabel(clscdlnk, trv_orddeptlist);
  2404. model.setValue("/root/main/item/clsnmlnk", label);
  2405. }else{
  2406. model.setValue("/root/main/item/clscdlnk","");
  2407. model.setValue("/root/main/item/clsnmlnk","");
  2408. }
  2409. trv_orddeptlist.attribute("visibility") = "hidden";
  2410. btn_close.attribute("visibility") = "hidden" ;
  2411. model.refresh();
  2412. ]]>
  2413. </script>
  2414. </button>
  2415. <button id="button1" class="btn2_letter3" visibility="hidden" style="left:542px; top:5px; width:53px; height:19px; ">
  2416. <caption>초기화</caption>
  2417. <script type="javascript" ev:event="DOMActivate">
  2418. <![CDATA[
  2419. // fSetNewMsg();
  2420. model.reset();
  2421. ]]>
  2422. </script>
  2423. </button>
  2424. <button id="btn_close2" class="btn2_letter2" visibility="hidden" style="left:345px; top:0px; width:42px; height:19px; ">
  2425. <caption>닫기</caption>
  2426. <script type="javascript" ev:event="DOMActivate">
  2427. <![CDATA[
  2428. fGetTreePopup();
  2429. ]]>
  2430. </script>
  2431. </button>
  2432. </group>
  2433. <group id="group5" style="left:425px; top:58px; width:769px; height:377px; ">
  2434. <caption id="caption23" class="tit_2" style="left:5px; top:10px; width:130px; height:13px; ">부서전송 리스트</caption>
  2435. <button id="btn_saveexcel" class="btn2_letter4" style="left:582px; top:5px; width:64px; height:19px; ">
  2436. <caption>엑셀저장</caption>
  2437. <script type="javascript" ev:event="DOMActivate">
  2438. <![CDATA[
  2439. var file_nm = window.fileDialog("save", ",", false, "excel", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
  2440. if (file_nm != "") {
  2441. grd_prcplist.saveExcel(file_nm, "SheetName", true, true, "", "", false);
  2442. }
  2443. ]]>
  2444. </script>
  2445. </button>
  2446. <button id="btn_aprvsave" class="btn2_letter4" style="left:649px; top:5px; width:53px; height:19px; ">
  2447. <caption>승인저장</caption>
  2448. <script type="javascript" ev:event="DOMActivate">
  2449. <![CDATA[
  2450. var row = grd_prcplist.row;
  2451. if (grd_prcplist.row > 0){
  2452. model.makeValue("/root/send/aprvgrid", grd_prcplist.getUpdateData());
  2453. if ( submit("TXCRB00105") ) {
  2454. grd_prcplist.clearStatus(); // submit() 성공하면 그리드의 i,u,d 상태 제거
  2455. messageBox("승인 정보 저장이 ", "I002");
  2456. model.removeNodeset("/root/main/list/prcplist");
  2457. submit("TRCRB00103");
  2458. model.removeNodeset("/root/send/aprvgrid");
  2459. model.refresh();
  2460. }
  2461. } else {
  2462. messageBox("저장할 승인 정보가 ","I004");
  2463. model.SetFocus("btn_aprvsave");
  2464. }
  2465. ]]>
  2466. </script>
  2467. </button>
  2468. <button id="btn_prcpdel" class="btn5_letter3" style="left:716px; top:5px; width:53px; height:19px; ">
  2469. <caption>행삭제</caption>
  2470. <script type="javascript" ev:event="DOMActivate">
  2471. <![CDATA[
  2472. var row = grd_prcplist.row;
  2473. var itemflag = grd_prcplist.valueMatrix(row, grd_prcplist.colRef("itemflag"));
  2474. var itemcd = grd_prcplist.valueMatrix(row, grd_prcplist.colRef("itemcd"));
  2475. var rgstdeptcd = grd_prcplist.valueMatrix(row, grd_prcplist.colRef("rgstdeptcd"));
  2476. //var itemflag = model.getValue("/root/send/prcplist/itemflag");
  2477. //var itemcd = model.getValue("/root/send/prcplist/itemcd");
  2478. //var rgstdeptcd = model.getValue("/root/send/prcplist/rgstdeptcd");
  2479. if(itemflag == "" && itemcd == "" && rgstdeptcd == ""){
  2480. messageBox("삭제할 부서 전송 리스트가 선택되지","E007");
  2481. return;
  2482. }
  2483. fDeleteSetPrcp(itemflag, itemcd, rgstdeptcd);
  2484. ]]>
  2485. </script>
  2486. </button>
  2487. <line id="line15" class="line_1" style="x1:0px; y1:25px; x2:769px; y2:25px; "/>
  2488. <datagrid id="grd_prcplist" nodeset="/root/main/list/prcplist" allowselection="false" autoresize="true" caption="예약구분^항목구분^중복^전송대상^전송일^전송시간^SMS 메시지^등록부서^승인" colwidth="60, 60, 40, 86, 50, 56, 272, 69, 35, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0" ellipsis="true" explorerbar="sortshowmove" extendlastcol="scroll" rowheader="seq" style="left:0px; top:30px; width:769px; height:346px; ">
  2489. <col class="text_center" disabled="true" ref="rsrvflag" type="combo" _key="true">
  2490. <choices>
  2491. <itemset nodeset="/root/init/comncdlist/C0026list/C0026">
  2492. <label ref="cdnm"/>
  2493. <value ref="cdid"/>
  2494. </itemset>
  2495. </choices>
  2496. </col>
  2497. <col class="text_center" disabled="true" ref="itemflag" type="combo" _key="true">
  2498. <choices>
  2499. <item>
  2500. <label>진료과</label>
  2501. <value>D</value>
  2502. </item>
  2503. <item>
  2504. <label>Remark</label>
  2505. <value>R</value>
  2506. </item>
  2507. <item>
  2508. <label>의료협력</label>
  2509. <value>O</value>
  2510. </item>
  2511. <item>
  2512. <label>가예약</label>
  2513. <value>E</value>
  2514. </item>
  2515. <item>
  2516. <label>검사분류</label>
  2517. <value>P</value>
  2518. </item>
  2519. <item>
  2520. <label>검사코드</label>
  2521. <value>C</value>
  2522. </item>
  2523. <item>
  2524. <label>건진예약</label>
  2525. <value>H</value>
  2526. </item>
  2527. <item>
  2528. <label>건진상담예약</label>
  2529. <value>S</value>
  2530. </item>
  2531. </choices>
  2532. </col>
  2533. <col class="text_center" ref="rsrvdupluseyn"/>
  2534. <col ref="itemnm"/>
  2535. <col class="text_center" ref="delivedd"/>
  2536. <col class="text_center" ref="delivetm" format="hh:nn"/>
  2537. <col ref="msgcnts"/>
  2538. <col ref="inptdeptnm"/>
  2539. <col ref="aprvyn" type="combo">
  2540. <choices>
  2541. <item>
  2542. <label>선택</label>
  2543. <value/>
  2544. </item>
  2545. <item>
  2546. <label>승인</label>
  2547. <value>Y</value>
  2548. </item>
  2549. <item>
  2550. <label>미승인</label>
  2551. <value>N</value>
  2552. </item>
  2553. </choices>
  2554. <script type="javascript" ev:event="xforms-value-changed">
  2555. <![CDATA[
  2556. grd_prcplist.addStatus(grd_prcplist.row, "u");
  2557. ]]>
  2558. </script>
  2559. </col>
  2560. <col ref="smstrsmcntcno" visibility="hidden"/>
  2561. <col ref="rsrvdupluseyn" visibility="hidden"/>
  2562. <col ref="itemcd" visibility="hidden"/>
  2563. <col ref="itemnm" visibility="hidden"/>
  2564. <col ref="inptdeptcd" visibility="hidden"/>
  2565. <col ref="rgstdeptcd" visibility="hidden"/>
  2566. <col ref="delivedd" visibility="hidden"/>
  2567. <col ref="delivetm" visibility="hidden"/>
  2568. <col ref="smsmsglrgcd" visibility="hidden"/>
  2569. <col ref="smsmsgmdlcd" visibility="hidden"/>
  2570. <col ref="smsmsgsmlcd" visibility="hidden"/>
  2571. <col ref="smsyn" visibility="hidden"/>
  2572. <script type="javascript" ev:event="ondblclick">
  2573. <![CDATA[
  2574. if ((grd_prcplist.row > 0) && grd_prcplist.isCell(event.target)){
  2575. fSelectPrcp();
  2576. // 수정모드
  2577. model.makeValue("/root/main/item/savemode", "U");
  2578. fGetSearchType("D");
  2579. rdo_rsrv.value = "D";
  2580. rdo_rsrv.disabled = true;
  2581. fGetRsrvSet();
  2582. fGetItemSet();
  2583. if(grd_prcplist.valueMatrix(grd_prcplist.row,grd_prcplist.colRef("itemflag")) == "C"){
  2584. btn_schartab.selected = true;
  2585. model.toggle("case2");
  2586. }else if(grd_prcplist.valueMatrix(grd_prcplist.row,grd_prcplist.colRef("itemflag")) == "R"){
  2587. btn_orddrtab.selected = true;
  2588. model.toggle("case1");
  2589. }else if(grd_prcplist.valueMatrix(grd_prcplist.row,grd_prcplist.colRef("itemflag")) == "O"){
  2590. btn_orddrtab.selected = true;
  2591. model.toggle("case1");
  2592. }
  2593. fGetCheckMsgCnts();//문자 용량
  2594. model.refresh();
  2595. }
  2596. ]]>
  2597. </script>
  2598. <script type="javascript" ev:event="xforms-value-changed">
  2599. <![CDATA[
  2600. var aprvyn = grd_prcplist.valueMatrix(grd_prcplist.row,grd_prcplist.colRef("aprvyn"));
  2601. model.makeValue("/root/main/item/aprvyn", aprvyn);
  2602. ]]>
  2603. </script>
  2604. </datagrid>
  2605. <datagrid id="grd_prcplisttemp" nodeset="/root/main/list/prcplisttemp" visibility="hidden" allowselection="false" autoresize="true" caption="항목구분^항목코드^등록부서" colwidth="60, 88, 76" ellipsis="true" explorerbar="sortshowmove" extendlastcol="scroll" rowheader="seq" style="left:50px; top:110px; width:280px; height:190px; ">
  2606. <col ref="itemflag"/>
  2607. <col ref="itemcd"/>
  2608. <col ref="rgstdeptcd"/>
  2609. </datagrid>
  2610. </group>
  2611. <group id="group6" style="left:609px; top:435px; width:585px; height:347px; ">
  2612. <caption id="caption24" class="tit_2" style="left:5px; top:10px; width:150px; height:14px; ">SMS 메시지 내용</caption>
  2613. <line id="line16" class="line_1" style="x1:0px; y1:25px; x2:584px; y2:25px; "/>
  2614. <img id="img1" src="../../../com/commonweb/images/sms_half_bg_new.gif" style="left:0px; top:29px; width:204px; height:295px; background-stretch:stretch; "/>
  2615. <textarea id="tar_contents" ref="/root/main/msgtmpl/prvwscrn" class="input_default" scroll="vertical" editable="false" style="left:48px; top:102px; width:127px; height:132px; color:#ffffff; background-color:transparent; border-style:none; "/>
  2616. <caption id="caption25" style="left:14px; top:286px; width:61px; height:23px; text-align:center; ">회신 번호</caption>
  2617. <input id="ipt_replytelno" ref="/root/main/msgtmpl/replytelno" class="input_default" disabled="true" maxlength="20" style="left:74px; top:287px; width:110px; height:19px; background-color:transparent; "/>
  2618. <caption id="caption26" style="left:146px; top:239px; width:28px; height:25px; font-weight:bold; color:#ffffff; ">/80</caption>
  2619. <input id="ipt_messagecnt" ref="/root/temp/messagecnt" class="input_default" editable="false" maxlength="20" style="left:117px; top:242px; width:30px; height:19px; font-weight:bold; color:#ffffff; text-align:right; background-color:transparent; border-style:none; "/>
  2620. <button id="btn_prvw" class="btn2_letter4" style="left:73px; top:262px; width:64px; height:19px; ">
  2621. <caption>미리보기</caption>
  2622. <script type="javascript" ev:event="DOMActivate">
  2623. <![CDATA[
  2624. fPrvwscrn();
  2625. fGetLine();
  2626. fGetCheckMsgCnts();//문자 용량
  2627. ]]>
  2628. </script>
  2629. </button>
  2630. <line id="line17" class="line_2" style="x1:205px; y1:54px; x2:584px; y2:54px; "/>
  2631. <caption id="cap_dtmntitl" class="cell_1" style="left:205px; top:31px; width:105px; height:23px; text-align:center; vertical-align:middle; ">그룹</caption>
  2632. <select1 id="cmb_msglrgcd" ref="/root/main/msgtmpl/msglrgcd" class="combo_default" navindex="11" appearance="minimal" style="left:313px; top:32px; width:125px; height:19px; ">
  2633. <choices>
  2634. <itemset nodeset="/root/init/chnllrglist/chnllrggrup">
  2635. <label ref="msglrgnm"/>
  2636. <value ref="msglrgcd"/>
  2637. </itemset>
  2638. </choices>
  2639. <script type="javascript" ev:event="xforms-value-changed">
  2640. <![CDATA[
  2641. // 기존에 선택된 중분류/소분류를 초기화한다.
  2642. model.removenodeset("/root/init/chnlmdllist/chnlmdlgrup");
  2643. model.removenodeset("/root/main/list/msgsmllist");
  2644. // 선택한 채널관리 대분류에 따른 채널관리 중분류를 가져온다.
  2645. fGetChnlMdlCd();
  2646. model.setFocus("cmb_msgmdlcd");
  2647. ]]>
  2648. </script>
  2649. </select1>
  2650. <select1 id="cmb_msgmdlcd" ref="/root/main/msgtmpl/msgmdlcd" class="combo_default" navindex="12" appearance="minimal" style="left:441px; top:32px; width:125px; height:19px; ">
  2651. <choices>
  2652. <itemset nodeset="/root/init/chnlmdllist/chnlmdlgrup">
  2653. <label ref="msgmdlnm"/>
  2654. <value ref="msgmdlcd"/>
  2655. </itemset>
  2656. </choices>
  2657. <script type="javascript" ev:event="xforms-value-changed">
  2658. <![CDATA[
  2659. // 메시지 리스트를 초기화한다.
  2660. model.removenodeset("/root/main/list/msgsmllist");
  2661. // 선택한 채널관리 대분류에 따른 채널관리 중분류를 가져온다.
  2662. fGetChnlSmlCd();
  2663. ]]>
  2664. </script>
  2665. </select1>
  2666. <datagrid id="grd_msglist" nodeset="/root/main/list/msgsmllist" caption="코드^메시지^" colwidth="46, 291, 0" dataheight="23" ellipsis="true" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="23" tooltip="true" style="left:205px; top:57px; width:379px; height:265px; ">
  2667. <col ref="msgsmlcd" style="text-align:center; "/>
  2668. <col ref="msgcnts" style="text-align:center; "/>
  2669. <col ref="smstrsmcntcno" visibility="hidden"/>
  2670. <script type="javascript" ev:event="onclick">
  2671. <![CDATA[
  2672. if( grd_msglist.isCell(event.target) && grd_msglist.row >= grd_msglist.fixedRows ){
  2673. var row = grd_msglist.row;
  2674. var msgcnts = grd_msglist.valueMatrix(row, grd_msglist.colRef("msgcnts"));
  2675. var msgsmlcd = grd_msglist.valueMatrix(row, grd_msglist.colRef("msgsmlcd"));
  2676. var smstrsmcntcno = grd_msglist.valueMatrix(row, grd_msglist.colRef("smstrsmcntcno"));
  2677. model.setValue("/root/main/msgtmpl/msgsmlcd", msgsmlcd);
  2678. model.setValue("/root/main/msgtmpl/prvwscrn", msgcnts);
  2679. model.setValue("/root/main/msgtmpl/replytelno", smstrsmcntcno);
  2680. model.setValue("/root/main/item/smsmsglrgcd", model.getValue("/root/main/msgtmpl/msglrgcd"));
  2681. model.setValue("/root/main/item/smsmsgmdlcd", model.getValue("/root/main/msgtmpl/msgmdlcd"));
  2682. model.setValue("/root/main/item/smsmsgsmlcd", model.getValue("/root/main/msgtmpl/msgsmlcd"));
  2683. tar_contents.refresh();
  2684. ipt_replytelno.refresh();
  2685. fGetCheckMsgCnts();//문자 용량
  2686. }
  2687. ]]>
  2688. </script>
  2689. </datagrid>
  2690. <button id="btn_update" class="btn4_letter2" style="left:399px; top:325px; width:56px; height:22px; ">
  2691. <caption>수정</caption>
  2692. <script type="javascript" ev:event="DOMActivate">
  2693. <![CDATA[
  2694. // 필수입력 체크
  2695. if (!fCheckRsrvInfo()) {
  2696. return;
  2697. }
  2698. fSaveSetRsrv();
  2699. combo1.visible = false;
  2700. caption4.visible = false;
  2701. model.refresh();
  2702. ]]>
  2703. </script>
  2704. </button>
  2705. <button id="btn_save" class="btn4_letter2" style="left:458px; top:325px; width:56px; height:22px; ">
  2706. <caption>저장</caption>
  2707. <script type="javascript" ev:event="DOMActivate">
  2708. <![CDATA[
  2709. // 필수입력 체크
  2710. if (!fCheckRsrvInfo()) {
  2711. return;
  2712. }
  2713. fSaveSetRsrv();
  2714. combo1.visible = false;
  2715. caption4.visible = false;
  2716. model.refresh();
  2717. ]]>
  2718. </script>
  2719. </button>
  2720. <button id="btn_init" class="btn4_letter3" style="left:517px; top:325px; width:68px; height:22px; ">
  2721. <caption>초기화</caption>
  2722. <script type="javascript" ev:event="DOMActivate">
  2723. <![CDATA[
  2724. //초기화
  2725. model.resetInstanceNode("/root/main/item");
  2726. //model.resetInstanceNode("/root/main/msgtmpl");
  2727. //model.resetInstanceNode("/root/main/list/msgsmllist");
  2728. model.resetInstanceNode("/root/main/procpitem");
  2729. model.resetInstanceNode("/root/main/msgtmpl/prvwscrn");
  2730. //트리 초기화
  2731. fTreeInit(trv_orddeptlist);
  2732. fTreeInit(trv_clslist);
  2733. //SMS 전송대상 및 전송시간 조회메뉴 설정 B:기본예약 D:부서별
  2734. var mastauth = model.getValue("/root/mastauth/mastauth");
  2735. if(mastauth == "Y"){
  2736. model.setValue("/root/temp/rdorsrv", "B");
  2737. fGetSearchType("B");
  2738. }else{
  2739. model.setValue("/root/temp/rdorsrv", "D");
  2740. fGetSearchType("D");
  2741. btn_del.disabled = true;//삭제버튼 잠금
  2742. }
  2743. //부서 세팅
  2744. var dutplcenm = getUserInfo("dutplcenm");
  2745. var dutplcecd = getUserInfo("dutplcecd");
  2746. model.setValue("/root/main/procpitem/inptdeptnm", dutplcenm);
  2747. model.setValue("/root/main/procpitem/inptdeptcd", dutplcecd);
  2748. model.setValue("/root/main/item/savemode", "I");
  2749. model.setValue("/root/temp/messagecnt", "0");
  2750. //초재진구분세팅
  2751. model.setValue("/root/main/item/fsexamflag", "A");
  2752. model.refresh();
  2753. ]]>
  2754. </script>
  2755. </button>
  2756. <button id="btn_memorialday" class="btn2_letter6" style="left:498px; top:4px; width:86px; height:19px; ">
  2757. <caption>상용구 관리</caption>
  2758. <script type="javascript" ev:event="DOMActivate">
  2759. <![CDATA[
  2760. open("SPCNS00600");
  2761. ]]>
  2762. </script>
  2763. </button>
  2764. </group>
  2765. </xhtml:body>
  2766. </xhtml:html>