SMAHA04090_공단단체예약접수.xrw 79 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <!--
  3. * 제 목 : SMAHA00300.xrw
  4. * 설 명 : 단체예약/접수(종건/일건)
  5. * 설 계 자 : 박원희
  6. * 작 성 자 : 박원희
  7. * 작 성 일 : 2007.07.12
  8. * 수정이력 : 손범성
  9. * 기 타 :
  10. -->
  11. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
  12. <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">
  13. <xhtml:head>
  14. <xhtml:title>단체예약접수</xhtml:title>
  15. <model id="model1">
  16. <instance id="instance1">
  17. <root xmlns="">
  18. <main>
  19. <uploadlst>
  20. <item>
  21. <chk/>
  22. <hngnm/>
  23. <rrgstno1/>
  24. <rrgstno2/>
  25. <hopedd/>
  26. <email/>
  27. <telno/>
  28. <mpphon/>
  29. <zipcd11/>
  30. <zipcd12/>
  31. <detladdr1/>
  32. <pkgcd/>
  33. <testcd/>
  34. <healexamplacecd/>
  35. <pkgnm/>
  36. <testnm/>
  37. <sex/>
  38. <brthdd/>
  39. <age/>
  40. <forgneryn/>
  41. <emailid/>
  42. <emailtype/>
  43. <statflag/>
  44. <healexamflag/>
  45. <healexamdetlflag/>
  46. </item>
  47. </uploadlst>
  48. <uploadspcllst>
  49. <item>
  50. <chk/>
  51. <cmpycd/>
  52. <hopedd/>
  53. <chartno/>
  54. <hngnm/>
  55. <rrgstno/>
  56. <clntempid/>
  57. <acpt_insuid/>
  58. <deptnm/>
  59. <entcodd/>
  60. <junibdd/>
  61. <jobkindcd/>
  62. <workproccd/>
  63. <workprocnm/>
  64. <gnrlflag/>
  65. <gnrluncocd/>
  66. <spclhealexamflag/>
  67. <spclpkg1/>
  68. <spclpkg2/>
  69. <spclpkg3/>
  70. <spclpkg4/>
  71. <spclpkg5/>
  72. <spclpkg6/>
  73. <spclpkg7/>
  74. <spclpkg8/>
  75. <spclpkg9/>
  76. <spclpkg10/>
  77. <spclpkg11/>
  78. <spclpkg12/>
  79. <spclpkg13/>
  80. <spclpkg14/>
  81. <spclpkg15/>
  82. <spclpkg16/>
  83. <spclpkg17/>
  84. <spclpkg18/>
  85. <spclpkg19/>
  86. <spclpkg20/>
  87. <addtest/>
  88. <adduncocd/>
  89. <simppkgcd/>
  90. <simpuncocd/>
  91. <healexamplacecd/>
  92. <plceflag/>
  93. <lifeconvpkgcd/>
  94. <lifeconvuncocd/>
  95. <remcnts/>
  96. <dgflag/>
  97. <sex/>
  98. <brthdd/>
  99. <age/>
  100. <forgneryn/>
  101. <statflag/>
  102. <gnrlpkgcd/>
  103. <acptcd/>
  104. <healexamflag/>
  105. <healexamdetlflag/>
  106. </item>
  107. </uploadspcllst>
  108. <uploadinsulst>
  109. <item>
  110. <rrgstno1/>
  111. <rrgstno2/>
  112. <insuid/>
  113. </item>
  114. </uploadinsulst>
  115. <pkginfo>
  116. <pkglst/>
  117. </pkginfo>
  118. <downloadlst>
  119. <item>
  120. <chk/>
  121. <cmpycd/>
  122. <hopedd/>
  123. <chartno/>
  124. <hngnm/>
  125. <rrgstno/>
  126. <clntempid/>
  127. <insuid/>
  128. <clntdeptnm/>
  129. <entcodd/>
  130. <junibdd/>
  131. <jobkindnm/>
  132. <workproccd/>
  133. <workprocnm/>
  134. <gnrlpkg/>
  135. <gnrluncocd/>
  136. <spclhealexamflag/>
  137. <spclpkg1/>
  138. <spclpkg2/>
  139. <spclpkg3/>
  140. <spclpkg4/>
  141. <spclpkg5/>
  142. <spclpkg6/>
  143. <spclpkg7/>
  144. <spclpkg8/>
  145. <spclpkg9/>
  146. <spclpkg10/>
  147. <spclpkg11/>
  148. <spclpkg12/>
  149. <spclpkg13/>
  150. <spclpkg14/>
  151. <spclpkg15/>
  152. <spclpkg16/>
  153. <spclpkg17/>
  154. <spclpkg18/>
  155. <spclpkg19/>
  156. <spclpkg20/>
  157. <addtest/>
  158. <adduncocd/>
  159. <simppkg/>
  160. <simpuncocd/>
  161. <pid/>
  162. <acptdd/>
  163. <spclpkg/>
  164. <spclpkgcmt/>
  165. <cmpynm/>
  166. </item>
  167. </downloadlst>
  168. <printinfo>
  169. <spcl>
  170. <chartno/>
  171. <cmpynm/>
  172. <clntempid/>
  173. <pid/>
  174. <hngnm/>
  175. <rrgstno/>
  176. <spclpkg/>
  177. <spclpkgcmt/>
  178. </spcl>
  179. </printinfo>
  180. </main>
  181. <send>
  182. <srchhealexamflag/>
  183. <srchhealexamdetlflag/>
  184. <srchhealexamplacecd/>
  185. <srchhealexamplacecd2/>
  186. <srchspclcmpycd/>
  187. <srchspclcmpynm/>
  188. <srchspclbizoffccd/>
  189. <srchspcldeptcd/>
  190. <srchrrgstno1/>
  191. <srchrrgstno2/>
  192. <srchinsuid/>
  193. <srchinstcd/>
  194. <srchplceflag/>
  195. <save>
  196. <gnrlgroup/>
  197. <spclgroup/>
  198. <insugroup/>
  199. </save>
  200. <srch>
  201. <rrgstno/>
  202. <insurrgstno/>
  203. </srch>
  204. <cmpyinfo>
  205. <srchcmpycd/>
  206. <srchappyear/>
  207. </cmpyinfo>
  208. <download>
  209. <srchfromdd/>
  210. <srchtodd/>
  211. <srchcmpycd/>
  212. <srchcmpynm/>
  213. <srchdeptnm/>
  214. </download>
  215. <srchrrgstnogrd1/>
  216. <srchrrgstnogrd2/>
  217. </send>
  218. <init>
  219. <baseinfo>
  220. <healexamplacelst/>
  221. <healexamflag/>
  222. <healexamdetlflag/>
  223. <spclflaglst/>
  224. <jobkindlst/>
  225. <autopkglst/>
  226. <acptcd/>
  227. <plceflag/>
  228. </baseinfo>
  229. <pkginfo>
  230. <srchhealexamflag/>
  231. <srchhealexamdetlflag/>
  232. </pkginfo>
  233. <print>
  234. </print>
  235. <popupmenu>
  236. <grid>
  237. <item>
  238. <name>선택</name>
  239. <func>fSetCheck</func>
  240. </item>
  241. <item>
  242. <name>선택취소</name>
  243. <func>fSetCnclCheck</func>
  244. </item>
  245. </grid>
  246. </popupmenu>
  247. </init>
  248. <hidden>
  249. <pkglst>
  250. </pkglst>
  251. <testlst/>
  252. <send>
  253. <pkgcd/>
  254. <srchpkgcd/>
  255. <grupflag/>
  256. <healexamflag/>
  257. </send>
  258. <duprrgstnolst>
  259. <item/>
  260. </duprrgstnolst>
  261. <cmpyinfodetl/>
  262. </hidden>
  263. <tmp>
  264. <cmpyinfo>
  265. </cmpyinfo>
  266. <uploadinsulst>
  267. <item/>
  268. </uploadinsulst>
  269. <rrgstinfo>
  270. <item/>
  271. </rrgstinfo>
  272. </tmp>
  273. </root>
  274. </instance>
  275. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  276. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  277. <script type="javascript" src="../../../com/commonweb/js/utilHelper.js"/>
  278. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  279. <script type="javascript" src="../../../ast/commonweb/js/AST.js"/>
  280. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  281. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  282. <script type="javascript" src="../../../ast/healthexamrsrvacptweb/js/AHA.js"/>
  283. <script type="javascript" src="../../../ast/healexamweb/js/AHA001.js"/>
  284. <script type="javascript" src="../../../com/zipcodeweb/js/ZBP001.js"/>
  285. <script type="javascript" src="../../../ast/healthexambaseweb/js/healcombolist.js"/>
  286. <submission id="TRZBC00101"/>
  287. <submission id="TRAHA00001"/>
  288. <submission id="TRAHA00002"/>
  289. <submission id="TRAHA00104" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/baseinfo/pamcdlst"/>
  290. <submission id="TRAHA00013" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/hidden/send" resultref="/root/tmp"/>
  291. <submission id="TRAHA05101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/cmpyinfo" replace="instance" resultref="/root/tmp/cmpyinfo"/>
  292. <submission id="TRAHA04091" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/srch" resultref="/root/hidden/duprrgstnolst"/>
  293. <submission id="TRAHA04092" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/tmp/uploadinsulst"/>
  294. <submission id="TRAHA04093" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/download" replace="instance" resultref="/root/main/downloadlst"/>
  295. <submission id="TRAHA04042" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/init/pkginfo" replace="instance" resultref="/root/main/pkginfo/pkglst"/>
  296. <submission id="TXAHA04091" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/save" resultref="/root/tmp"/>
  297. <submission id="TXAHA04092" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/save" resultref="/root/tmp"/>
  298. <submission id="TXAHA04093" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/save" resultref="/root/tmp"/>
  299. <script type="javascript" ev:event="xforms-ready">
  300. <![CDATA[
  301. var sFlag = getScreenMenuParameter();
  302. if(sFlag != "") {
  303. m_vHealexamflag = sFlag.substr(0,1);
  304. m_vHealexamdetlflag = sFlag.substr(0,3);
  305. }
  306. fGetBaseInfo();
  307. fInit();
  308. model.refresh();
  309. ]]>
  310. </script>
  311. <script type="javascript">
  312. <![CDATA[
  313. var m_vHealexamflag = "";
  314. var m_vHealexamdetlflag = "";
  315. /**
  316. *기본정보 가져오기
  317. */
  318. function fGetBaseInfo(){
  319. zbcfGetCodeList( new Array("A0068","A0070","A0110"),
  320. new Array("/root/init/baseinfo/healexamflag" // 건진구분
  321. ,"/root/init/baseinfo/healexamdetlflag" // 일반건진상세구분
  322. ,"/root/init/baseinfo/plceflag" //건진장소
  323. ) );
  324. healGetCodeList( new Array("S600","G108","G111")
  325. , new Array("/root/init/baseinfo/healexamplacelst"
  326. ,"/root/init/baseinfo/jobkindlst"
  327. ,"/root/init/baseinfo/spclflaglst" ) );
  328. model.removenode("/root/init/baseinfo/healexamplacelst/S600[cdid='']");
  329. // submit 방식 모든 공통코드 전체항목이 조회 됨
  330. healGetCodeListSubmit( new Array("G110","G112")
  331. , new Array("/root/init/baseinfo/autopkglst"
  332. ,"/root/init/baseinfo/acptcd" // 공단접수코드
  333. ), false);
  334. model.setValue("/root/send/srchinstcd", getUserInfo("dutplceinstcd") );
  335. submit("TRAHA00104",false);
  336. model.makeValue("/root/init/pkginfo/srchhealexamflag" , "G");
  337. model.makeValue("/root/init/pkginfo/srchhealexamdetlflag" , "G03");
  338. submit("TRAHA04042" , false);
  339. model.refresh();
  340. }
  341. function fInit() {
  342. model.setValue("/root/send/download/srchfromdd" , getCurrentDate());
  343. model.setValue("/root/send/download/srchtodd" , getCurrentDate());
  344. model.toggle("case_gnrl");
  345. btn_gnrl.selected = true;
  346. model.setValue("/root/send/srchhealexamflag" , m_vHealexamflag);
  347. model.setValue("/root/send/srchhealexamdetlflag" , m_vHealexamdetlflag);
  348. grd_cupload.fixedcellcheckbox(0 , grd_cupload.colRef("chk")) = true;
  349. grd_spcldownlst.fixedcellcheckbox(0 , grd_cupload.colRef("chk")) = true;
  350. grd_supload.fixedcellcheckbox(0,grd_supload.colRef("chk"))=true;
  351. rdo_healexamplacecd.select(0);
  352. rdo_spclhealexamplace.select(0);
  353. }
  354. /********************************************************************************************************************************************************
  355. * 파일 업로드
  356. ********************************************************************************************************************************************************/
  357. function fFileUpload(){
  358. var healexamdeltflag = model.getValue("/root/init/baseinfo/healexamdetlflag" );
  359. var fileName = window.fileDialog("open", ",", false, "", "xls", "Excel Files(*.xls)|*.xls|Dat Files(*.dat)|*.dat|All Files (*.*)|*.*");
  360. var regExp = /.dat$/gi;
  361. var vGrd = null;
  362. if(fileName == "" || fileName == null) return;
  363. //model.setValue("/root/hidden/save/filename" , fileName);
  364. // 엑셀, dat파일 구분
  365. if(regExp.test(fileName)) {
  366. /*
  367. var fso,ts,tsr;
  368. fso = new ActiveXObject("Scripting.FileSystemObject");
  369. ts = fso.OpenTextFile(fileName);
  370. model.setValue("/root/send/linkdata",ts.ReadAll());
  371. ts.Close();
  372. if(submit("TRAHA00304",false)) {
  373. if(model.getValue("/root/main/linklst/cmpy/cmpyrgstyn") == 0) {
  374. submit("TXAHA00303");
  375. }
  376. model.toggle("case_linkup");
  377. } */
  378. }else {
  379. if(case_gnrl.selected == true) {
  380. grd_cupload.loadExcel(fileName);
  381. var cnt = grd_cupload.rows;
  382. for(var i = 1; i < cnt +1 ; i++){
  383. grd_cupload.addStatus(i, "insert");
  384. }
  385. grd_cupload.deleteRow(1);
  386. grd_cupload.rebuildStyle();
  387. grd_cupload.refresh();
  388. }else if(case_spcl.selected == true) {
  389. grd_supload.loadExcel(fileName);
  390. var cnt = grd_supload.rows;
  391. model.setValue("/root/send/srchrrgstno1" , "");
  392. model.setValue("/root/send/srchrrgstno2" , "");
  393. model.setValue("/root/send/srchinsuid" , "");
  394. submit("TRAHA04092" , false);
  395. grd_supload.deleteRow(1);
  396. grd_supload.rebuildStyle();
  397. for(var i = 1; i < cnt +1 ; i++){
  398. grd_supload.valueMatrix( i , grd_supload.colRef("rrgstno")) = grd_supload.valueMatrix( i , grd_supload.colRef("rrgstno")).replace(/-/g,"");
  399. var rrgstno1 = grd_supload.valueMatrix( i , grd_supload.colRef("rrgstno")).substr(0,6);
  400. var rrgstno2 = grd_supload.valueMatrix( i , grd_supload.colRef("rrgstno")).substr(6,7);
  401. var node = instance1.selectNodes("/root/tmp/uploadinsulst/item[rrgstno1='" + rrgstno1+ "' and rrgstno2='" + rrgstno2 +"']");
  402. if(node.length > 0) {
  403. if(grd_supload.valueMatrix( i , grd_supload.colRef("acpt_insuid")) == "") {
  404. grd_supload.valueMatrix( i , grd_supload.colRef("acpt_insuid")) = node.item(0).insuid.text;
  405. }
  406. }
  407. grd_supload.addStatus(i, "insert");
  408. }
  409. grd_supload.refresh();
  410. }else if(case_insu.selected == true) {
  411. model.resetInstanceNode(grd_iupload.nodeset);
  412. grd_iupload.loadExcel(fileName);
  413. var cnt = grd_iupload.rows;
  414. for(var i = 1; i < cnt +1 ; i++){
  415. grd_iupload.addStatus(i, "insert");
  416. }
  417. grd_iupload.deleteRow(1);
  418. grd_iupload.rebuildStyle();
  419. model.makeValue("/root/send/srch/insurrgstno" , getGridUpdateData(grd_iupload));
  420. var rrgstCnt = 0;
  421. if(submit("TRAHA04091" , false)) {
  422. rrgstCnt = getNodesetCount("/root/hidden/duprrgstnolst/insu");
  423. for(var j=1; j < grd_iupload.rows; j++) {
  424. var srchrrgstno1 = grd_iupload.valueMatrix(j ,grd_iupload.colRef("rrgstno1"));
  425. var srchrrgstno2 = grd_iupload.valueMatrix(j ,grd_iupload.colRef("rrgstno2"));
  426. for(var k=1; k <= rrgstCnt ; k++) {
  427. var desrrgstno1 = model.getValue("/root/hidden/duprrgstnolst/insu[" + k + "]/rrgstno1");
  428. var desrrgstno2 = model.getValue("/root/hidden/duprrgstnolst/insu[" + k + "]/rrgstno2");
  429. if(srchrrgstno1 == desrrgstno1 && srchrrgstno2 == desrrgstno2) {
  430. grd_iupload.cellStyle("background-color", j , grd_iupload.colRef("rrgstno1")) = "#f7a08b";
  431. grd_iupload.cellStyle("background-color", j , grd_iupload.colRef("rrgstno2")) = "#f7a08b";
  432. }
  433. }
  434. }
  435. }
  436. grd_iupload.refresh();
  437. if(rrgstCnt > 0) {
  438. messageBox("["+ rrgstCnt +"]건이 이미 등록된 주민번호 ","I009");
  439. }
  440. }
  441. }
  442. }
  443. /********************************************************************************************************************************************************
  444. * 단체 예약 종합건진접수 등록
  445. ********************************************************************************************************************************************************/
  446. function fSaveGroupRsrvAcpt(){
  447. var hopeDDCnt = 0;
  448. var pkgCnt = 0;
  449. var healexamplaceCnt = 0;
  450. for(var i=1; i < grd_cupload.rows; i++){
  451. if(grd_cupload.valueMatrix(i , grd_cupload.colRef("chk")) == "Y"){
  452. if(grd_cupload.valueMatrix(i , grd_cupload.colRef("hopedd")) == ""){
  453. hopeDDCnt++;
  454. }
  455. if(grd_cupload.valueMatrix(i , grd_cupload.colRef("pkgcd")) == ""){
  456. pkgCnt++;
  457. }
  458. if(grd_cupload.valueMatrix(i , grd_cupload.colRef("healexamplacecd")) == ""){
  459. healexamplaceCnt++;
  460. }
  461. }
  462. }
  463. var healexamflag = model.getValue("/root/send/srchhealexamflag");
  464. var healexamdetlflag = model.getValue("/root/send/srchhealexamdetlflag");
  465. //등록정보 체크
  466. if(healexamflag == "" || instance1.selectNodes("/root/init/baseinfo/healexamflag/A0068[cdid='" + healexamflag + "']").length < 1) {
  467. messageBox("건진구분 정보를", "I007");
  468. return;
  469. }
  470. if(healexamdetlflag == "" || instance1.selectNodes("/root/init/baseinfo/healexamdetlflag/A0070[cdid='"+ healexamdetlflag + "']").length < 1 ) {
  471. messageBox("건진상세구분 정보를", "I007");
  472. return;
  473. }
  474. if(hopeDDCnt > 0) {
  475. messageBox("건진일을 모두 ", "C001");
  476. return;
  477. }
  478. if(pkgCnt > 0) {
  479. messageBox("패키지코드를 모두 ", "C001");
  480. return;
  481. }
  482. if(healexamplaceCnt > 0) {
  483. messageBox("건진장소 구분을 모두 ", "C001");
  484. return;
  485. }
  486. //초기화
  487. var rsrvCnt = 0;
  488. var healexamflag = model.getValue("/root/send/srchhealexamflag");
  489. var healexamdetlflag = model.getValue("/root/send/srchhealexamdetlflag");
  490. grd_cupload.clearStatus();
  491. for (var i=1; i<grd_cupload.rows; i++){
  492. if(grd_cupload.valueMatrix(i , grd_cupload.colRef("chk") ) == "Y" ){
  493. var rrgstno = grd_cupload.valueMatrix(i , grd_cupload.colRef("rrgstno1")) + grd_cupload.valueMatrix(i , grd_cupload.colRef("rrgstno2"));
  494. var email = grd_cupload.valueMatrix(i , grd_cupload.colRef("email")).split("@");
  495. grd_cupload.addStatus(i,"insert");
  496. grd_cupload.valueMatrix(i , grd_cupload.colRef("sex")) = fGetRrgstNo(rrgstno,"S");
  497. grd_cupload.valueMatrix(i , grd_cupload.colRef("brthdd")) = fGetRrgstNo(rrgstno,"B");
  498. grd_cupload.valueMatrix(i , grd_cupload.colRef("age")) = fGetRrgstNo(rrgstno,"A");
  499. grd_cupload.valueMatrix(i , grd_cupload.colRef("forgeryn")) = fGetRrgstNo(rrgstno,"F");
  500. grd_cupload.valueMatrix(i , grd_cupload.colRef("statflag")) = "A";
  501. grd_cupload.valueMatrix(i , grd_cupload.colRef("emailid")) = email[0];
  502. grd_cupload.valueMatrix(i , grd_cupload.colRef("emailtype")) = email[1];
  503. grd_cupload.valueMatrix(i , grd_cupload.colRef("healexamflag")) = healexamflag;
  504. grd_cupload.valueMatrix(i , grd_cupload.colRef("healexamdetlflag")) = healexamdetlflag;
  505. }
  506. }
  507. var saveGroup = getGridUpdateData(grd_cupload);
  508. if(saveGroup != "") {
  509. model.setValue("/root/send/save/gnrlgroup" , saveGroup);
  510. openLoadingBar("일괄 예약/접수");
  511. if(submit("TXAHA04091")) {
  512. messageBox("예약처리가","I002");
  513. return;
  514. }
  515. closeLoadingBar();
  516. }else {
  517. messageBox("저장할 내역이 " , "E014");
  518. return;
  519. }
  520. }
  521. /********************************************************************************************************************************************************
  522. * 선택 그리드 일괄적용
  523. ********************************************************************************************************************************************************/
  524. function fSetBatApp(vGrd) {
  525. var vCol = vGrd.col
  526. var vChng = vGrd.valueMatrix(vGrd.row,vCol);
  527. var vEcep = vGrd.valueMatrix(vGrd.row,vGrd.colRef("testcd"));
  528. for(var i = 0; i <= vGrd.selectedRows; i++) {
  529. var vRow = vGrd.selectedRow(i);
  530. if(vCol != vGrd.colRef("testcd")) {
  531. vGrd.valueMatrix(vRow,vCol) = vChng;
  532. }else {
  533. vGrd.valueMatrix(vRow ,vGrd.colRef("testnm")) = vChng;
  534. vGrd.valueMatrix(vRow ,vGrd.colRef("testcd")) = vEcep;
  535. }
  536. }
  537. vGrd.refresh();
  538. }
  539. /********************************************************************************************************************************************************
  540. * 해당값을 구분자로 구분하여 배열에 등록한다.
  541. *vSpiltValue:구분할값 vMode:모드 vDel:구분자
  542. ********************************************************************************************************************************************************/
  543. String.prototype.fSplit = function(vMode,vDel){
  544. if(vDel == "") vDel = "-";
  545. var vSplit = this;
  546. var chk = vSplit.search(eval("/[" + vDel + "]/g"));
  547. var vDelValue = new Array();
  548. if(chk > -1) {
  549. vDelValue = vSplit.split(vDel);
  550. }else {
  551. if(vMode == "R") {
  552. // 주민번호
  553. vDelValue[0] = vSplit.substr(0,6);
  554. vDelValue[1] = vSplit.substr(6,7);
  555. } else if(vMode == "Z") {
  556. // 우편번호
  557. vDelValue[0] = vSplit.substr(0,3);
  558. vDelValue[1] = vSplit.substr(3,3);
  559. } else if(vMode == "E") {
  560. //Email
  561. vDelValue = vSplit.split('@');
  562. }
  563. }
  564. return vDelValue;
  565. }
  566. /********************************************************************************************************************************************************
  567. * 주민번호를 이용하여
  568. *S:성별 A:나이 B:생년월일 F:외국인여부
  569. ********************************************************************************************************************************************************/
  570. function fGetRrgstNo(vRstno,vMode) {
  571. var rstno = vRstno.replace("-","");
  572. var sex = rstno.substr(6,1);
  573. var YY = "";
  574. //성별
  575. if(vMode == "S") {
  576. if(sex == "2" || sex == "4" || sex == "6" || sex == "8"){
  577. return "F";
  578. }else if(sex == "1" || sex == "3" || sex == "5" || sex == "7") {
  579. return "M";
  580. }
  581. // 나이
  582. }else if(vMode == "A"){
  583. if(sex == "1" || sex == "2" || sex == "5" || sex == "6") {
  584. YY = "19"
  585. }else if(sex == "3" || sex == "4" || sex == "7" || sex == "8") {
  586. YY = "20"
  587. }
  588. var toYear = getNewDate().getFullYear();
  589. var bornday = YY + rstno.substr(0,2);
  590. return parseInt(toYear) - parseInt(bornday);
  591. }else if(vMode == "B") {
  592. if(sex == "1" || sex == "2" || sex == "5" || sex == "6") {
  593. YY = "19"
  594. }else if(sex == "3" || sex == "4" || sex == "7" || sex == "8") {
  595. YY = "20"
  596. }
  597. return YY + rstno.substr(0,6);
  598. }else if(vMode == "F") {
  599. var forgnerYN = "N";
  600. if(sex == "5" || sex == "6" || sex == "7" || sex == "8") {
  601. forgnerYN = "Y";
  602. }
  603. return forgnerYN;
  604. }
  605. }
  606. /********************************************************************************************************************************************************
  607. * 패키지 검사를
  608. ********************************************************************************************************************************************************/
  609. function fSetPkg(vGrd , vNodeSet) {
  610. if(vGrd == null) return;
  611. if(vNodeSet == null || vNodeSet == "") return;
  612. var nodeList = instance1.selectNodes(vNodeSet);
  613. var pkgcdList = vGrd.valueMatrix( vGrd.row , vGrd.colRef("pkgcd"));
  614. var pkgnmList = vGrd.valueMatrix( vGrd.row , vGrd.colRef("pkgnm"));
  615. for(var i=1; i <= nodeList.length; i++) {
  616. var pkgcd = model.getValue(vNodeSet + "[" + i + "]/pkgcd");
  617. var pkgnm = model.getValue(vNodeSet + "[" + i + "]/pkgnm");
  618. // 중복체크 로직
  619. if(pkgcdList != "") {
  620. if ( fCheckDup(pkgcdList , pkgcd) ) {
  621. if( messageBox("중복되는 패키지코드[" + pkgcd + " - " + pkgnm +"] 를 추가 ", "S001") != 6 ){
  622. continue ;
  623. }
  624. }
  625. }
  626. if(pkgcdList != "") {
  627. pkgcdList += "," + pkgcd ;
  628. pkgnmList += "," + pkgnm ;
  629. }else {
  630. pkgcdList += pkgcd != "" && nodeList.length>i ? "," + pkgcd : pkgcd;
  631. pkgnmList += pkgnm != "" &&nodeList.length>i ?"," + pkgnm : pkgnm;
  632. }
  633. }
  634. vGrd.valueMatrix(vGrd.row,vGrd.colRef("pkgcd")) = pkgcdList;
  635. vGrd.valueMatrix(vGrd.row,vGrd.colRef("pkgnm")) = pkgnmList;
  636. }
  637. /********************************************************************************************************************************************************
  638. * 추가검사 선택을 그리드에 등록
  639. ********************************************************************************************************************************************************/
  640. function fSetAddTest(vGrd , vNodeSet) {
  641. if(vGrd == null) return;
  642. if(vNodeSet == null || vNodeSet == "") return;
  643. var nodeList = instance1.selectNodes(vNodeSet);
  644. var testcdList = vGrd.valueMatrix( vGrd.row , vGrd.colRef("testcd"));
  645. var testnmList = vGrd.valueMatrix( vGrd.row , vGrd.colRef("testnm"));
  646. for(var i=1; i <= nodeList.length; i++){
  647. var testcd = model.getValue(vNodeSet + "[" + i + "]/testcd");
  648. var testnm = model.getValue(vNodeSet + "[" + i + "]/testnm");
  649. var groupflag = model.getValue(vNodeSet + "[" + i + "]/grupflag");
  650. // 중복체크 로직
  651. if(testcdList != "") {
  652. if ( fCheckDup(testcdList , testcd) ) {
  653. if( messageBox("중복되는 검사코드[" + testcd + " - " + testnm +"] 를 추가 ", "S001") != 6 ){
  654. continue ;
  655. }
  656. }
  657. }
  658. var pkgCd = vGrd.valueMatrix(vGrd.row , vGrd.colRef("pkgcd"));
  659. if(pkgCd != ""){
  660. // 패키지 내부검사 중복여부 체크
  661. model.removeNodeset("/root/hidden/send");
  662. model.makeValue("/root/hidden/send/pkgcd" , testcd);
  663. model.makeValue("/root/hidden/send/grupflag" , groupflag);
  664. model.makeValue("/root/hidden/send/srchpkgcd" , pkgCd );
  665. model.makeValue("/root/hidden/send/healexamflag" , model.getValue("/root/send/srchhealexamflag"));
  666. submit("TRAHA00013",false); //패키지내 중복 체크*/
  667. var dupTestnm = model.getValue("/root/tmp/testcount/testcount/testnm")
  668. if(dupTestnm != "") {
  669. if( messageBox("패키지의 [" + testnm + "]검사와 중복됩니다. 추가 ", "S001") != 6 ){
  670. continue ;
  671. }
  672. }
  673. }
  674. if(testcdList != "") {
  675. testcdList += "," + testcd ;
  676. testnmList += "," + testnm ;
  677. }else {
  678. testcdList += testcd != "" && nodeList.length>i ? "," + testcd : testcd;
  679. testnmList += testnm != "" &&nodeList.length>i ? "," + testnm : testnm;
  680. }
  681. }
  682. vGrd.valueMatrix(vGrd.row,vGrd.colRef("testcd")) = testcdList;
  683. vGrd.valueMatrix(vGrd.row,vGrd.colRef("testnm")) = testnmList;
  684. }
  685. /********************************************************************************************************************************************************
  686. * 추가검사 중복선택 체크여부
  687. ********************************************************************************************************************************************************/
  688. function fCheckDup(testList , desTestCd) {
  689. var sTestCd = testList.split(",");
  690. var chk = false;
  691. for(var j=0; j < sTestCd.length; j++) {
  692. var srcTestCd = sTestCd[j];
  693. if(srcTestCd == desTestCd) {
  694. chk = true;
  695. }
  696. }
  697. return chk;
  698. }
  699. /********************************************************************************************************************************************************
  700. * 데이터 포맷을 체크한다.
  701. * R : 주민번호 Z: 우편번호 D: 날짜 E: e-mail T: 전화번호 M:핸드폰
  702. ********************************************************************************************************************************************************/
  703. function fChkValue(vChkValue,vMode,vDel) {
  704. var ret = false;
  705. var regExp = "";
  706. if(typeof(vDel) == "undefined" || vDel == null) {
  707. vDel = "";
  708. }
  709. if(vMode == "R1") {
  710. regExp = "/[0-9]{2}[01]{1}[0-9]{1}[0123]{1}[0-9]{1}$/g";
  711. }else if(vMode == "R2") {
  712. regExp = "/[12345678]{1}[0-9]{6}$/g";
  713. }else if(vMode == "Z1") {
  714. regExp = "/^[0-9]{3}$/g";
  715. }else if(vMode == "Z2") {
  716. regExp = "/^[0-9]{3}$/g";
  717. }else if(vMode == "D") {
  718. regExp = "/[0-9]{4}" + vDel + "[01]{1}[0-9]{1}" + vDel + "[0123]{1}[0-9]{1}/g";
  719. }else if(vMode == "E") {
  720. regExp = "/[_0-9a-zA-Z]+([-+.0-9a-zA-Z_]+)*@[_0-9a-zA-Z]+([-+.0-9a-zA-Z_]+)*.[a-zA-Z]{2,4}$/g";
  721. }else if(vMode == "T") {
  722. regExp = "/(02|0[3-9]{1}[0-9]{1})" + vDel + "[1-9]{1}[0-9]{2,3}" + vDel + "[0-9]{4}$/g";
  723. }else if(vMode == "M") {
  724. regExp = "/01[016789]" + vDel + "[1-9]{1}[0-9]{2,3}" + vDel + "[0-9]{4}$/g";
  725. }
  726. if(vChkValue == "") {
  727. return true;
  728. }else {
  729. return ret = eval(regExp).test(vChkValue);
  730. }
  731. }
  732. /********************************************************************************************************************************************************
  733. * 그리드의 데이터 체크
  734. ********************************************************************************************************************************************************/
  735. function fChkData(vGrd) {
  736. // 초기화
  737. vGrd.rebuildStyle();
  738. var nodeSet = vGrd.nodeset;
  739. var chkCnt = 0;
  740. for(var i = 1; i < vGrd.rows ; i++ ){
  741. //주민번호 check
  742. var rrgstno1 = model.getValue(nodeSet+"[" + i + "]/rrgstno1");
  743. var rrgstno2 = model.getValue(nodeSet+"[" + i + "]/rrgstno2");
  744. if(!isResidentNo(rrgstno1 + rrgstno2)) {
  745. var ret1 = fChkValue(rrgstno1,"R1")
  746. var ret2 = fChkValue(rrgstno2,"R2")
  747. if(!ret1) {
  748. fDispGrd(vGrd,"E",i,vGrd.colRef("rrgstno1"));
  749. chkCnt++;
  750. }
  751. if(!ret2) {
  752. fDispGrd(vGrd,"E",i,vGrd.colRef("rrgstno2"));
  753. chkCnt++;
  754. }
  755. if(ret1 == true && ret2 == true) {
  756. fDispGrd(vGrd,"E",i,vGrd.colRef("rrgstno1"));
  757. fDispGrd(vGrd,"E",i,vGrd.colRef("rrgstno2"));
  758. chkCnt++;
  759. }
  760. }
  761. // 선택검사 비어있다면 "당일로 처리"
  762. /* var vchoi = model.getValue("/root/main/uploadlst/c_lst/item[" + i + "]/choi");
  763. if (vchoi == "" ){
  764. model.setValue("/root/main/uploadlst/c_lst/item[" + i + "]/choi","01");
  765. }*/
  766. // 우편번호
  767. var zip1 = model.getValue(nodeSet+"[" + i + "]/zipcd11");
  768. if(!fChkValue(zip1,"Z1")) {
  769. fDispGrd(vGrd,"E",i,vGrd.colRef("zipcd11"));
  770. chkCnt++;
  771. }
  772. var zip2 = model.getValue(nodeSet+"[" + i + "]/zipcd12");
  773. if(!fChkValue(zip2,"Z2")) {
  774. fDispGrd(vGrd,"E",i,vGrd.colRef("zipcd12"));
  775. chkCnt++;
  776. }
  777. // 전화번호
  778. var telno = model.getValue(nodeSet+"[" + i + "]/telno");
  779. if(!fChkValue(telno,"T","-")) {
  780. fDispGrd(vGrd,"E",i,vGrd.colRef("telno"));
  781. chkCnt++;
  782. }
  783. // 핸드폰번호
  784. var mpno = model.getValue(nodeSet + "[" + i + "]/mpphon");
  785. if(!fChkValue(mpno,"M","-")) {
  786. fDispGrd(vGrd,"E",i,vGrd.colRef("mpphon"));
  787. chkCnt++;
  788. }
  789. // 예약 체크
  790. var hopedd = model.getValue(nodeSet + "[" + i + "]/hopedd").replace(/-/g,"");
  791. if(!fChkValue(hopedd,"D","")) {
  792. fDispGrd(vGrd,"E",i,vGrd.colRef("hopedd"));
  793. chkCnt++;
  794. }
  795. //email주소
  796. var email = model.getValue(nodeSet+ "[" + i + "]/email");
  797. if(!fChkValue(email,"E")) {
  798. fDispGrd(vGrd,"E",i,vGrd.colRef("email"));
  799. chkCnt++;
  800. }
  801. }
  802. vGrd.refresh();
  803. return chkCnt;
  804. }
  805. /********************************************************************************************************************************************************
  806. * 그리드의 상태 Style을 변경한다.
  807. * vGrd: 그리드객체 vMode: 모드 vRow: 변경할 row vCol: 변경할 col
  808. ********************************************************************************************************************************************************/
  809. function fDispGrd(vGrd,vMode,vRow,vCol) {
  810. if(vMode == "E") {
  811. if(vCol !="") {
  812. vGrd.cellStyle("background-color",vRow,vCol) = "#f7a08b";
  813. vGrd.isReadOnly(vRow,vCol) = false;
  814. }else {
  815. vGrd.cellStyle("background-color",vRow,0,vRow,vGrd.cols - 1) = "#f7a08b";
  816. //vGrd.isReadOnly(vRow,0,vRow,vGrd.cols - 1) = true;
  817. }
  818. }
  819. }
  820. function fChkDupRrgstno(vGrd) {
  821. vGrd.clearStatus();
  822. for(var i=1; i < vGrd.rows; i++) {
  823. if(vGrd.valueMatrix(i , vGrd.colRef("chk") )== "Y" ) {
  824. vGrd.addStatus(i,"insert");
  825. }
  826. }
  827. model.makeValue("/root/send/srch/rrgstno" , getGridUpdateData(vGrd) );
  828. if(submit("TRAHA04091")) {
  829. var rrgstCnt = getNodesetCount("/root/hidden/duprrgstnolst/item");
  830. for(var j=1; j < vGrd.rows; j++) {
  831. var srchrrgstno1 = vGrd.valueMatrix(j ,vGrd.colRef("rrgstno1"));
  832. var srchrrgstno2 = vGrd.valueMatrix(j ,vGrd.colRef("rrgstno2"));
  833. for(var k=1; k <= rrgstCnt ; k++) {
  834. var desrrgstno1 = model.getValue("/root/hidden/duprrgstnolst/item[" + k + "]/rrgstno1");
  835. var desrrgstno2 = model.getValue("/root/hidden/duprrgstnolst/item[" + k + "]/rrgstno2");
  836. if(srchrrgstno1 == desrrgstno1 && srchrrgstno2 == desrrgstno2) {
  837. vGrd.valueMatrix( j , vGrd.colRef("chk") ) = "N";
  838. vGrd.cellStyle("background-color", j , vGrd.colRef("hngnm")) = "#f7a08b";
  839. }
  840. }
  841. }
  842. }
  843. return rrgstCnt;
  844. }
  845. /********************************************************************************************************************************************************
  846. * 특수건진 일괄예약 정보를 저장한다.
  847. ********************************************************************************************************************************************************/
  848. function fSaveGroupSpclRsrvAcpt() {
  849. var hopeDDCnt = 0;
  850. var plceCnt = 0;
  851. var healexamplaceCnt = 0;
  852. for(var i=1; i < grd_supload.rows; i++) {
  853. if(grd_supload.valueMatrix(i , grd_supload.colRef("chk") )== "Y" ) {
  854. var plceFlag = grd_supload.valueMatrix(i , grd_supload.colRef("plceflag"));
  855. var healexamplcecd = grd_supload.valueMatrix(i , grd_supload.colRef("healexamplacecd"));
  856. if(grd_supload.valueMatrix(i , grd_supload.colRef("hopedd") ) == "") {
  857. hopeDDCnt++;
  858. }
  859. if( healexamplcecd == "" || instance1.selectNodes("/root/init/baseinfo/healexamplacelst/S600[cdid='" + healexamplcecd + "']").length < 1) {
  860. healexamplaceCnt++;
  861. }
  862. if(plceFlag == "" || instance1.selectNodes("/root/init/baseinfo/plceflag/A0110[cdid='" + plceFlag + "']").length < 1) {
  863. plceCnt++;
  864. }
  865. }
  866. }
  867. var healexamflag = model.getValue("/root/send/srchhealexamflag");
  868. var healexamdetlflag = model.getValue("/root/send/srchhealexamdetlflag");
  869. // 등록정보 체크
  870. if(healexamflag == "" || instance1.selectNodes("/root/init/baseinfo/healexamflag/A0068[cdid='" + healexamflag + "']").length < 1) {
  871. messageBox("건진구분 정보를", "I007");
  872. return;
  873. }
  874. if(healexamdetlflag == "" || instance1.selectNodes("/root/init/baseinfo/healexamdetlflag/A0070[cdid='"+ healexamdetlflag + "']").length < 1 ) {
  875. messageBox("건진상세구분 정보를", "I007");
  876. return;
  877. }
  878. if(hopeDDCnt > 0) {
  879. messageBox("건진일을", "I007");
  880. return;
  881. }
  882. if(healexamplaceCnt > 0) {
  883. messageBox("건진장소 구분을 ", "I007");
  884. return;
  885. }
  886. if(plceCnt > 0) {
  887. messageBox("출장/내원 구분을", "I007");
  888. return;
  889. }
  890. // 초기화
  891. var rsrvCnt = 0;
  892. var healexamflag = model.getValue("/root/send/srchhealexamflag");
  893. var healexamdetlflag = model.getValue("/root/send/srchhealexamdetlflag");
  894. grd_supload.clearStatus();
  895. for(var i=1; i<grd_supload.rows; i++){
  896. if(grd_supload.valueMatrix(i , grd_supload.colRef("chk") ) == "Y" ){
  897. grd_supload.addStatus(i,"insert");
  898. var rrgstno = grd_supload.valueMatrix(i , grd_supload.colRef("rrgstno"));
  899. grd_supload.valueMatrix(i , grd_supload.colRef("sex")) = fGetRrgstNo(rrgstno,"S");
  900. grd_supload.valueMatrix(i , grd_supload.colRef("brthdd")) = fGetRrgstNo(rrgstno,"B");
  901. grd_supload.valueMatrix(i , grd_supload.colRef("age")) = fGetRrgstNo(rrgstno,"A");
  902. grd_supload.valueMatrix(i , grd_supload.colRef("forgeryn")) = fGetRrgstNo(rrgstno,"F");
  903. grd_supload.valueMatrix(i , grd_supload.colRef("statflag")) = "A";
  904. grd_supload.valueMatrix(i , grd_supload.colRef("healexamflag")) = healexamflag;
  905. grd_supload.valueMatrix(i , grd_supload.colRef("healexamdetlflag")) = healexamdetlflag;
  906. grd_supload.valueMatrix(i , grd_supload.colRef("gnrlpkgcd")) = model.getValue("/root/init/baseinfo/autopkglst/G110[cdid='" + grd_supload.valueMatrix(i , grd_supload.colRef("gnrlflag")) + "']/cmt");
  907. grd_supload.valueMatrix(i , grd_supload.colRef("acptcd")) = model.getValue("/root/init/baseinfo/acptcd/G112[cdid='01']/cmt");
  908. }
  909. }
  910. var saveGroup = getGridUpdateData(grd_supload);
  911. if(saveGroup != ""){
  912. model.setValue("/root/send/save/spclgroup", saveGroup);
  913. if(submit("TXAHA04092")){
  914. messageBox("예약처리가","I002");
  915. return;
  916. }
  917. }else{
  918. messageBox("저장할 내역이 " , "E014");
  919. return;
  920. }
  921. }
  922. /**
  923. * 업체별 영업소 및 부서정보 조회
  924. */
  925. function fGetCmpyDetlCdList(){
  926. if( ipt_cmpycd.value == "" ) return ;
  927. var appYear = getCurrentDate().toDate().getDateFormat("YYYY");
  928. model.makeValue("/root/send/cmpyinfo/srchcmpycd", ipt_cmpycd.value );
  929. model.makeValue("/root/send/cmpyinfo/srchappyear" , appYear);
  930. return submit("TRAHA05101");
  931. }
  932. /********************************************************************************************************************************************************
  933. * 엑셀 주민번호에 증번호등록
  934. ********************************************************************************************************************************************************/
  935. function fSaveGroupInsuInfo() {
  936. var rrgstnoCnt1 = 0;
  937. var rrgstnoCnt2 = 0;
  938. var insuidCnt = 0;
  939. for(var i=1; i < grd_iupload.rows; i++) {
  940. if(grd_iupload.valueMatrix( i , grd_iupload.colRef("rrgstno1")) == "") {
  941. rrgstnoCnt1++;
  942. }
  943. if(grd_iupload.valueMatrix( i , grd_iupload.colRef("rrgstno2")) == "") {
  944. rrgstnoCnt2++;
  945. }
  946. if(grd_iupload.valueMatrix( i , grd_iupload.colRef("insuid")) == "") {
  947. insuidCnt++;
  948. }
  949. }
  950. // 등록정보 체크
  951. if(rrgstnoCnt1 > 0) {
  952. messageBox("주민번호 앞번호를", "C001");
  953. return;
  954. }
  955. if(rrgstnoCnt2 > 0) {
  956. messageBox("주민번호 뒷번호를", "C001");
  957. return;
  958. }
  959. if(insuidCnt > 0) {
  960. messageBox("증번호", "C001");
  961. return;
  962. }
  963. // 초기화
  964. var saveGroup = getGridUpdateData(grd_iupload);
  965. if(saveGroup != "") {
  966. model.setValue("/root/send/save/insugroup" , saveGroup);
  967. if(submit("TXAHA04093")) {
  968. model.resetInstanceNode(grd_iupload.nodeset);
  969. if(submit("TRAHA04092")) {
  970. copyNodesetType("/root/main/uploadinsulst/item" , "/root/tmp/uploadinsulst/item" , "replace");
  971. grd_iupload.refresh();
  972. }
  973. messageBox("등록처리가","I002");
  974. return;
  975. }
  976. }else {
  977. messageBox("저장할 내역이 " , "E014");
  978. return;
  979. }
  980. }
  981. /********************************************************************************************************************************************************
  982. * 특수건진 업로드 내역 내려받기
  983. ********************************************************************************************************************************************************/
  984. function fGetSpclDownList() {
  985. var healexamflag = model.getValue("/root/send/srchhealexamflag");
  986. var healexamdetlflag = model.getValue("/root/send/srchhealexamdetlflag");
  987. model.makeValue("/root/send/download/srchhealexamflag" , healexamflag);
  988. model.makeValue("/root/send/download/srchhealexamdetlflag" , healexamdetlflag);
  989. submit("TRAHA04093");
  990. }
  991. /********************************************************************************************************************************************************
  992. * 특수건진 검진 개인표 출력
  993. ********************************************************************************************************************************************************/
  994. function fPrintSpclSeq() {
  995. if(instance1.selectNodes(grd_spcldownlst.nodeset + "[chk='Y']").length < 1) {
  996. messageBox("출력할 건진자가" , "I004");
  997. return;
  998. }
  999. for(var i=1; i < grd_spcldownlst.rows; i++) {
  1000. if(grd_spcldownlst.valueMatrix(i , grd_spcldownlst.colRef("chk")) == "Y") {
  1001. model.resetInstanceNode("/root/main/printinfo/spcl");
  1002. model.makeValue("/root/main/printinfo/spcl/chartno" , grd_spcldownlst.valueMatrix(i , grd_spcldownlst.colRef("chartno")));
  1003. model.makeValue("/root/main/printinfo/spcl/cmpynm" , grd_spcldownlst.valueMatrix(i , grd_spcldownlst.colRef("cmpynm")));
  1004. model.makeValue("/root/main/printinfo/spcl/deptnm" , grd_spcldownlst.valueMatrix(i , grd_spcldownlst.colRef("clntdeptnm")));
  1005. model.makeValue("/root/main/printinfo/spcl/clntempid" , grd_spcldownlst.valueMatrix(i , grd_spcldownlst.colRef("clntempid")));
  1006. model.makeValue("/root/main/printinfo/spcl/pid" , grd_spcldownlst.valueMatrix(i , grd_spcldownlst.colRef("pid")));
  1007. model.makeValue("/root/main/printinfo/spcl/hngnm" , grd_spcldownlst.valueMatrix(i , grd_spcldownlst.colRef("hngnm")));
  1008. model.makeValue("/root/main/printinfo/spcl/rrgstno" , grd_spcldownlst.valueMatrix(i , grd_spcldownlst.colRef("rrgstno")));
  1009. model.makeValue("/root/main/printinfo/spcl/spclpkg" , grd_spcldownlst.valueMatrix(i , grd_spcldownlst.colRef("spclpkg")));
  1010. model.makeValue("/root/main/printinfo/spcl/spclpkgcmt" , grd_spcldownlst.valueMatrix(i , grd_spcldownlst.colRef("spclpkgcmt")));
  1011. //exeReportPreview("RPAHA04090", "XMLSTR", "", "", "", "", "", "", "", "","", "", "", "", "", "", "", "");
  1012. exeReportPreview("RPAHA04090", "XMLSTR", "", "", "true", "", "", "", "", "true","", "", "", "", "", "", "", 0);
  1013. }
  1014. }
  1015. }
  1016. function fSetCheck() {
  1017. for( var i = 0 ; i <= grd_spcldownlst.selectedRows ; i++){
  1018. grd_spcldownlst.valueMatrix(grd_spcldownlst.selectedRow(i), grd_spcldownlst.colRef("chk")) = "Y" ;
  1019. }
  1020. }
  1021. function fSetCnclCheck() {
  1022. for( var i = 0 ; i <= grd_spcldownlst.selectedRows ; i++){
  1023. grd_spcldownlst.valueMatrix(grd_spcldownlst.selectedRow(i), grd_spcldownlst.colRef("chk")) = "N" ;
  1024. }
  1025. }
  1026. ]]>
  1027. </script>
  1028. <submission id="TRAHA04094" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/tmp/rrgstinfo"/>
  1029. </model>
  1030. </xhtml:head>
  1031. <xhtml:body>
  1032. <script type="javascript" ev:event="onmenu">
  1033. <![CDATA[
  1034. if(event.description == "deladdtest"){
  1035. grd_cupload.valueMatrix( grd_cupload.row , grd_cupload.colRef("testcd")) = "";
  1036. grd_cupload.valueMatrix( grd_cupload.row , grd_cupload.colRef("testnm")) = "";
  1037. }
  1038. ]]>
  1039. </script>
  1040. <group id="group1" style="left:0px; top:0px; width:1194px; height:13px; ">
  1041. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:159px; height:14px; ">일괄예약/접수</caption>
  1042. </group>
  1043. <group id="grp_btn" style="left:0px; top:756px; width:1195px; height:28px; ">
  1044. <button id="button8" class="btn4_letter4" style="left:1110px; top:6px; width:80px; height:22px; ">
  1045. <caption>등록처리</caption>
  1046. <script type="javascript" ev:event="DOMActivate">
  1047. <![CDATA[
  1048. if(messageBox("예약처리를","Q004") == "6") {
  1049. if(case_gnrl.selected == true) {
  1050. fSaveGroupRsrvAcpt();
  1051. }else if(case_spcl.selected == true) {
  1052. fSaveGroupSpclRsrvAcpt();
  1053. }else if(case_insu.selected == true) {
  1054. fSaveGroupInsuInfo();
  1055. }
  1056. }
  1057. ]]>
  1058. </script>
  1059. </button>
  1060. <button id="button33" class="btn4_letter3" style="left:1040px; top:6px; width:68px; height:22px; ">
  1061. <caption>초기화</caption>
  1062. <script type="javascript" ev:event="onclick">
  1063. <![CDATA[
  1064. grd_supload.rebuildStyle();
  1065. grd_iupload.rebuildStyle();
  1066. grd_cupload.rebuildStyle();
  1067. model.reset();
  1068. ]]>
  1069. </script>
  1070. </button>
  1071. <button id="button14" class="btn6_letter5" style="left:0px; top:4px; width:84px; height:22px; ">
  1072. <caption>검진개인표</caption>
  1073. <script type="javascript" ev:event="onclick">
  1074. <![CDATA[
  1075. if(case_down.selected == true){
  1076. fPrintSpclSeq();
  1077. }
  1078. ]]>
  1079. </script>
  1080. </button>
  1081. </group>
  1082. <button id="btn_gnrl" class="btn_sw" group="tab" style="left:5px; top:18px; width:100px; height:22px; ">
  1083. <caption>공단건진</caption>
  1084. <toggle case="case_gnrl" ev:event="DOMActivate"/>
  1085. </button>
  1086. <button id="btn_spcl" class="btn_sw" group="tab" style="left:105px; top:18px; width:100px; height:22px; ">
  1087. <caption>특수건진</caption>
  1088. <toggle case="case_spcl" ev:event="DOMActivate"/>
  1089. </button>
  1090. <switch id="switch1" style="left:0px; top:40px; width:1195px; height:717px; ">
  1091. <case id="case_gnrl" selected="true">
  1092. <line id="line8" class="line_3" style="x1:5px; y1:53px; x2:1189px; y2:53px; "/>
  1093. <button id="button3" class="btn2_letter4" style="left:233px; top:32px; width:64px; height:19px; ">
  1094. <caption>일괄적용</caption>
  1095. <script type="javascript" ev:event="onclick">
  1096. <![CDATA[
  1097. for(var i =1; i < grd_cupload.rows; i++) {
  1098. grd_cupload.valueMatrix( i , grd_cupload.colRef("healexamplacecd")) = model.getValue("/root/send/srchhealexamplacecd");
  1099. }
  1100. ]]>
  1101. </script>
  1102. </button>
  1103. <caption id="caption2" class="tit_2" style="left:8px; top:8px; width:151px; height:14px; ">공단일괄 예약/접수</caption>
  1104. <button id="btn_upload" class="btn2_letter5" style="left:1034px; top:5px; width:75px; height:19px; ">
  1105. <caption>파일업로드</caption>
  1106. <script type="javascript" ev:event="DOMActivate">
  1107. <![CDATA[
  1108. openLoadingBar("파일 업로드");
  1109. fFileUpload();
  1110. closeLoadingBar();
  1111. ]]>
  1112. </script>
  1113. </button>
  1114. <select1 id="rdo_healexamplacecd" ref="/root/send/srchhealexamplacecd" overflow="visible" appearance="full" cols="2" rows="1" style="left:82px; top:32px; width:143px; height:20px; border-style:none; ">
  1115. <choices>
  1116. <itemset nodeset="/root/init/baseinfo/healexamplacelst/S600">
  1117. <label ref="cdnm"/>
  1118. <value ref="cdid"/>
  1119. </itemset>
  1120. </choices>
  1121. </select1>
  1122. <caption id="caption47" class="cell_1" style="left:5px; top:31px; width:73px; height:20px; vertical-align:middle; ">장소구분</caption>
  1123. <line id="line17" class="line_1" style="x1:4px; y1:25px; x2:1188px; y2:25px; "/>
  1124. <datagrid id="grd_cupload" nodeset="/root/main/uploadlst/item" allowselection="true" autoresize="true" caption="선택^성명^주민번호^주민번호^건진일^이메일주소^전화번호^핸드폰^우편번호^우편번호^주 소^패키지^추가검사^건진장소^패키지명^추가검사명^sex^brthdd^age^forgneryn^emailid^emailtype^statflag^healexamflag^healexamdetlflag" colsep="^" colwidth="50, 80, 70, 70, 90, 150, 110, 110, 35, 35, 250, 200, 200, 80, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100" explorerbar="sortshow" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" selectionmode="listbox" subtotalposition="below" style="left:4px; top:55px; width:1184px; height:655px; ">
  1125. <col checkvalue="Y,N" ref="chk" type="checkbox"/>
  1126. <col ref="hngnm" style="left:94px; top:43px; width:61px; height:23px; "/>
  1127. <col disabled="true" ref="rrgstno1" type="input" style="left:118px; top:23px; width:114px; height:23px; "/>
  1128. <col disabled="true" ref="rrgstno2" type="input"/>
  1129. <col ref="hopedd" type="inputdate"/>
  1130. <col disabled="true" ref="email" type="input"/>
  1131. <col disabled="true" ref="telno" type="input"/>
  1132. <col disabled="true" ref="mpphon" type="input"/>
  1133. <col disabled="true" ref="zipcd11" type="input"/>
  1134. <col disabled="true" ref="zipcd12" type="input"/>
  1135. <col disabled="true" ref="detladdr1" style="left:1001px; top:43px; width:250px; height:23px; "/>
  1136. <col ref="pkgcd" type="inputbutton"/>
  1137. <col ref="testcd" type="inputbutton"/>
  1138. <col ref="healexamplacecd" type="combo">
  1139. <choices>
  1140. <itemset nodeset="/root/init/baseinfo/healexamplacelst/S600">
  1141. <label ref="cdnm"/>
  1142. <value ref="cdid"/>
  1143. </itemset>
  1144. </choices>
  1145. </col>
  1146. <col ref="pkgnm" visibility="hidden"/>
  1147. <col ref="testnm" visibility="hidden"/>
  1148. <col ref="sex" visibility="hidden"/>
  1149. <col ref="brthdd" visibility="hidden"/>
  1150. <col ref="age" visibility="hidden"/>
  1151. <col ref="forgneryn" visibility="hidden"/>
  1152. <col ref="emailid" visibility="hidden"/>
  1153. <col ref="emailtype" visibility="hidden"/>
  1154. <col ref="statflag" visibility="hidden"/>
  1155. <col ref="healexamflag" visibility="hidden"/>
  1156. <col ref="healexamdetlflag" visibility="hidden"/>
  1157. <script type="javascript" ev:event="xforms-value-changed">
  1158. <![CDATA[
  1159. //fSetBatApp(grd_cupload);
  1160. ]]>
  1161. </script>
  1162. <script type="javascript" ev:event="onbuttonclick">
  1163. <![CDATA[
  1164. var col = grd_cupload.col;
  1165. var row = grd_cupload.row;
  1166. // 패키지검사
  1167. if(col == grd_cupload.colRef("pkgcd")){
  1168. if(model.getValue("/root/send/srchhealexamdetlflag") == "" ){
  1169. messageBox("건진구분 정보를", "C001");
  1170. return;
  1171. }
  1172. model.resetInstanceNode("/root/hidden/pkglst/list");
  1173. var rgstno = grd_cupload.valueMatrix(row, grd_cupload.colRef("rrgstno1")) + grd_cupload.valueMatrix(row, grd_cupload.colRef("rrgstno2")); // 주민번호
  1174. fGetPkgCd("SMAHA00300", "P", "Y","nm" , "",model.getValue("/root/send/srchhealexamdetlflag") , fGetRrgstNo(rgstno,"S"), "/root/hidden/pkglst","Y","" ,fGetRrgstNo(rgstno,"A") );
  1175. if(model.getValue("/root/temp/okflag") == "ok") {
  1176. fSetPkg(grd_cupload , "/root/hidden/pkglst/list");
  1177. //fSetAddTest(grd_cupload);
  1178. }
  1179. //fSetBatApp(grd_cupload);
  1180. }else if( col == grd_cupload.colRef("testcd")) {
  1181. if(model.getValue("/root/send/srchhealexamdetlflag") == "" ) {
  1182. messageBox("건진구분 정보를", "C001");
  1183. return;
  1184. }
  1185. model.resetInstanceNode("/root/hidden/testlst/list");
  1186. var rgstno = grd_cupload.valueMatrix(row, grd_cupload.colRef("rrgstno1")) + grd_cupload.valueMatrix(row, grd_cupload.colRef("rrgstno2")); // 주민번호
  1187. fGetPkgCd("SMAHA00300", "A", "Y","nm" , "",model.getValue("/root/send/srchhealexamdetlflag") , fGetRrgstNo(rgstno,"S"), "/root/hidden/testlst","Y","" ,fGetRrgstNo(rgstno,"A") );
  1188. if(model.getValue("/root/temp/okflag") == "ok") {
  1189. fSetAddTest(grd_cupload , "/root/hidden/testlst/list");
  1190. }
  1191. }
  1192. ]]>
  1193. </script>
  1194. <script type="javascript" ev:event="onmousedown">
  1195. <![CDATA[
  1196. if(event.button == 3){
  1197. if(grd_cupload.isCell(event.target) && grd_cupload.mouseRow >= grd_cupload.fixedrows){
  1198. window.setPopupMenu(true, "/root/popup/item", "label", "func", true);
  1199. }else{
  1200. window.setPopupMenu(false);
  1201. }
  1202. }
  1203. ]]>
  1204. </script>
  1205. <script type="javascript" ev:event="onaftersort">
  1206. <![CDATA[
  1207. grd_cupload.gridToInstance();
  1208. ]]>
  1209. </script>
  1210. </datagrid>
  1211. <button id="btn_chkdata" class="btn2_letter5" style="left:1113px; top:5px; width:75px; height:19px; ">
  1212. <caption>데이터확인</caption>
  1213. <script type="javascript" ev:event="onclick">
  1214. <![CDATA[
  1215. var chkCnt = 0;
  1216. var dupRrgstCnt = 0;
  1217. grd_cupload.isReadOnly(1 , grd_cupload.colRef("pname") , grd_cupload.rows -1 , grd_cupload.cols - 1) = true;
  1218. chkCnt = fChkData(grd_cupload);
  1219. dupRrgstCnt = fChkDupRrgstno(grd_cupload);
  1220. messageBox("데이터 확인이 처리되었습니다.\n주민번호 중복[" + dupRrgstCnt + "]건과 \n" + "["+ chkCnt +"]건의 오류항목이 ","E005");
  1221. ]]>
  1222. </script>
  1223. </button>
  1224. </case>
  1225. <case id="case_spcl">
  1226. <button id="button1" class="btn2_letter5" style="left:1113px; top:5px; width:75px; height:19px; ">
  1227. <caption>파일업로드</caption>
  1228. <script type="javascript" ev:event="DOMActivate">
  1229. <![CDATA[
  1230. openLoadingBar("파일 업로드");
  1231. fFileUpload();
  1232. closeLoadingBar();
  1233. ]]>
  1234. </script>
  1235. </button>
  1236. <caption id="caption1" class="tit_2" style="left:8px; top:8px; width:151px; height:14px; ">특수일괄 예약/접수</caption>
  1237. <line id="line1" class="line_1" style="x1:4px; y1:25px; x2:1188px; y2:25px; "/>
  1238. <line id="line2" class="line_3" style="x1:5px; y1:53px; x2:1189px; y2:53px; "/>
  1239. <button id="button4" class="btn2_letter4" style="left:432px; top:32px; width:64px; height:19px; ">
  1240. <caption>일괄적용</caption>
  1241. <script type="javascript" ev:event="onclick">
  1242. <![CDATA[
  1243. for(var i =1; i < grd_supload.rows; i++){
  1244. grd_supload.valueMatrix( i , grd_supload.colRef("healexamplacecd")) = model.getValue("/root/send/srchhealexamplacecd2");
  1245. grd_supload.valueMatrix( i , grd_supload.colRef("plceflag")) = model.getValue("/root/send/srchplceflag");
  1246. }
  1247. ]]>
  1248. </script>
  1249. </button>
  1250. <select1 id="rdo_spclhealexamplace" ref="/root/send/srchhealexamplacecd2" overflow="visible" appearance="full" cols="2" rows="1" style="left:82px; top:32px; width:143px; height:20px; border-style:none; ">
  1251. <choices>
  1252. <itemset nodeset="/root/init/baseinfo/healexamplacelst/S600">
  1253. <label ref="cdnm"/>
  1254. <value ref="cdid"/>
  1255. </itemset>
  1256. </choices>
  1257. </select1>
  1258. <caption id="caption3" class="cell_1" style="left:5px; top:31px; width:73px; height:20px; vertical-align:middle; ">장소구분</caption>
  1259. <datagrid id="grd_supload" nodeset="/root/main/uploadspcllst/item" allowselection="true" autoresize="true" caption="선택^사업장코드^예약일자^차트번호^성명^주민번호^사원번호^증번호^부서명^입사일자^전입일자^직종^작업공정코드^작업공정명^일반/생애^청구구분^특수구분^유해인자1^유해인자2^유해인자3^유해인자4^유해인자5^유해인자6^유해인자7^유해인자8^유해인자9^유해인자10^유해인자11^유해인자12^유해인자13^유해인자14^유해인자15^유해인자16^유해인자17^유해인자18^유해인자19^유해인자20^추가검사^추가청구구분^간이패키지^간이청구구분^장소구분^출장/내원구분^공단(생애전환기)^공단청구구분^비고^1/2차^sex^brthdd^age^forgneryn^statflag^gnrlpkgcd^acptcd^healexamflag^healexamdetlflag" colsep="^" colwidth="50, 80, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100" explorerbar="sortshow" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" selectionmode="listbox" subtotalposition="below" style="left:4px; top:55px; width:1184px; height:655px; ">
  1260. <col checkvalue="Y,N" ref="chk" type="checkbox"/>
  1261. <col ref="cmpycd" style="left:94px; top:43px; width:61px; height:23px; "/>
  1262. <col disabled="true" ref="hopedd" type="inputdate"/>
  1263. <col ref="chartno"/>
  1264. <col ref="hngnm"/>
  1265. <col ref="rrgstno"/>
  1266. <col ref="clntempid"/>
  1267. <col ref="acpt_insuid"/>
  1268. <col ref="deptnm"/>
  1269. <col disabled="true" ref="entcodd" type="inputdate"/>
  1270. <col disabled="true" ref="junibdd" type="inputdate"/>
  1271. <col disabled="true" ref="jobkindcd" type="combo">
  1272. <choices>
  1273. <itemset nodeset="/root/init/baseinfo/jobkindlst/G108">
  1274. <label ref="cdnm"/>
  1275. <value ref="cdid"/>
  1276. </itemset>
  1277. </choices>
  1278. </col>
  1279. <col ref="workproccd" type="inputbutton"/>
  1280. <col ref="workprocnm"/>
  1281. <col disabled="true" ref="gnrlflag" type="combo">
  1282. <choices>
  1283. <itemset nodeset="/root/init/baseinfo/autopkglst/G110">
  1284. <label ref="cdnm"/>
  1285. <value ref="cdid"/>
  1286. </itemset>
  1287. </choices>
  1288. </col>
  1289. <col disabled="true" ref="gnrluncocd" type="combo">
  1290. <choices>
  1291. <itemset nodeset="/root/init/baseinfo/pamcdlst/uncocdlst">
  1292. <label ref="nm"/>
  1293. <value ref="cd"/>
  1294. </itemset>
  1295. </choices>
  1296. </col>
  1297. <col disabled="true" ref="spclhealexamflag" type="combo">
  1298. <choices>
  1299. <itemset nodeset="/root/init/baseinfo/spclflaglst/G111">
  1300. <label ref="cdnm"/>
  1301. <value ref="cdid"/>
  1302. </itemset>
  1303. </choices>
  1304. </col>
  1305. <col ref="spclpkg1" type="inputbutton"/>
  1306. <col ref="spclpkg2" type="inputbutton"/>
  1307. <col ref="spclpkg3" type="inputbutton"/>
  1308. <col ref="spclpkg4" type="inputbutton"/>
  1309. <col ref="spclpkg5" type="inputbutton"/>
  1310. <col ref="spclpkg6" type="inputbutton"/>
  1311. <col ref="spclpkg7" type="inputbutton"/>
  1312. <col ref="spclpkg8" type="inputbutton"/>
  1313. <col ref="spclpkg9" type="inputbutton"/>
  1314. <col ref="spclpkg10" type="inputbutton"/>
  1315. <col ref="spclpkg11" type="inputbutton"/>
  1316. <col ref="spclpkg12" type="inputbutton"/>
  1317. <col ref="spclpkg13" type="inputbutton"/>
  1318. <col ref="spclpkg14" type="inputbutton"/>
  1319. <col ref="spclpkg15" type="inputbutton"/>
  1320. <col ref="spclpkg16" type="inputbutton"/>
  1321. <col ref="spclpkg17" type="inputbutton"/>
  1322. <col ref="spclpkg18" type="inputbutton"/>
  1323. <col ref="spclpkg19" type="inputbutton"/>
  1324. <col ref="spclpkg20" type="inputbutton"/>
  1325. <col ref="addtest" type="inputbutton"/>
  1326. <col disabled="true" ref="adduncocd" type="combo">
  1327. <choices>
  1328. <itemset nodeset="/root/init/baseinfo/pamcdlst/uncocdlst">
  1329. <label ref="nm"/>
  1330. <value ref="cd"/>
  1331. </itemset>
  1332. </choices>
  1333. </col>
  1334. <col ref="simppkgcd" type="inputbutton"/>
  1335. <col disabled="true" ref="simpuncocd" type="combo">
  1336. <choices>
  1337. <itemset nodeset="/root/init/baseinfo/pamcdlst/uncocdlst">
  1338. <label ref="nm"/>
  1339. <value ref="cd"/>
  1340. </itemset>
  1341. </choices>
  1342. </col>
  1343. <col ref="healexamplacecd" type="combo">
  1344. <choices>
  1345. <itemset nodeset="/root/init/baseinfo/healexamplacelst/S600">
  1346. <label ref="cdnm"/>
  1347. <value ref="cdid"/>
  1348. </itemset>
  1349. </choices>
  1350. </col>
  1351. <col disabled="true" ref="plceflag" type="combo">
  1352. <choices>
  1353. <itemset nodeset="/root/init/baseinfo/plceflag/A0110">
  1354. <label ref="cdnm"/>
  1355. <value ref="cdid"/>
  1356. </itemset>
  1357. </choices>
  1358. </col>
  1359. <col ref="lifeconvpkgcd" type="inputbutton"/>
  1360. <col disabled="true" ref="lifeconvuncocd" type="combo">
  1361. <choices>
  1362. <itemset nodeset="/root/init/baseinfo/pamcdlst/uncocdlst">
  1363. <label ref="nm"/>
  1364. <value ref="cd"/>
  1365. </itemset>
  1366. </choices>
  1367. </col>
  1368. <col ref="remcnts"/>
  1369. <col ref="dgflag" type="combo">
  1370. <choices>
  1371. <item>
  1372. <label>1차</label>
  1373. <value>1</value>
  1374. </item>
  1375. <item>
  1376. <label>2차</label>
  1377. <value>2</value>
  1378. </item>
  1379. </choices>
  1380. </col>
  1381. <col ref="sex" visibility="hidden"/>
  1382. <col ref="brthdd" visibility="hidden"/>
  1383. <col ref="age" visibility="hidden"/>
  1384. <col ref="forgneryn" visibility="hidden"/>
  1385. <col ref="statflag" visibility="hidden"/>
  1386. <col ref="gnrlpkgcd" visibility="hidden"/>
  1387. <col ref="acptcd" visibility="hidden"/>
  1388. <col ref="healexamflag" visibility="hidden"/>
  1389. <col ref="healexamdetlflag" visibility="hidden"/>
  1390. <script type="javascript" ev:event="xforms-value-changed">
  1391. <![CDATA[
  1392. //fSetBatApp(grd_cupload);
  1393. ]]>
  1394. </script>
  1395. <script type="javascript" ev:event="onbuttonclick">
  1396. <![CDATA[
  1397. var col = grd_supload.col;
  1398. var row = grd_supload.row;
  1399. // 패키지검사
  1400. if(col >= grd_supload.colRef("spclpkg1") && grd_supload.colRef("spclpkg20") >= col){
  1401. model.resetInstanceNode("/root/hidden/pkglst");
  1402. var rgstno = grd_supload.valueMatrix(row, grd_supload.colRef("rrgstno1")) + grd_supload.valueMatrix(row, grd_supload.colRef("rrgstno2")); // 주민번호
  1403. fGetPkgCd("SMAHA00300", "P", "N","nm" , grd_supload.valueMatrix(row,col) ,"G03" , fGetRrgstNo(rgstno,"S"), "/root/hidden/pkglst","Y","" ,fGetRrgstNo(rgstno,"A") );
  1404. grd_supload.valueMatrix(row,col) = model.getValue("/root/hidden/pkglst/pkgcd") == "" ? grd_supload.valueMatrix(row,col) : model.getValue("/root/hidden/pkglst/pkgcd");
  1405. }else if( col == grd_supload.colRef("addtest")){
  1406. model.resetInstanceNode("/root/hidden/testlst/list");
  1407. var rgstno = grd_supload.valueMatrix(row, grd_supload.colRef("rrgstno1")) + grd_supload.valueMatrix(row, grd_supload.colRef("rrgstno2")); // 주민번호
  1408. fGetPkgCd("SMAHA00300", "A", "Y","nm" , "","G03" , fGetRrgstNo(rgstno,"S"), "/root/hidden/testlst","Y","" ,fGetRrgstNo(rgstno,"A") );
  1409. var nodeList = instance1.selectNodes("/root/hidden/testlst/list");
  1410. var testcdList = grd_supload.valueMatrix( grd_supload.row , grd_supload.colRef("addtest"));
  1411. for(var i=1; i <= nodeList.length; i++){
  1412. var testcd = model.getValue("/root/hidden/testlst/list[" + i + "]/testcd");
  1413. var testnm = model.getValue("/root/hidden/testlst/list[" + i + "]/testnm");
  1414. var groupflag = model.getValue("/root/hidden/testlst/list[" + i + "]/grupflag");
  1415. //중복체크 로직
  1416. if(testcdList != ""){
  1417. if( fCheckDup(testcdList , testcd)){
  1418. if( messageBox("중복되는 검사코드[" + testcd + " - " + testnm +"] 를 추가 ", "S001") != 6 ){
  1419. continue ;
  1420. }
  1421. }
  1422. }
  1423. if(testcdList != "") {
  1424. testcdList += "," + testcd ;
  1425. }else {
  1426. testcdList += testcd != "" && nodeList.length>i ? "," + testcd : testcd;
  1427. }
  1428. }
  1429. grd_supload.valueMatrix(grd_supload.row,grd_supload.colRef("addtest")) = testcdList;
  1430. }else if( col == grd_supload.colRef("lifeconvpkgcd")) {
  1431. model.resetInstanceNode("/root/hidden/testlst/list");
  1432. var rgstno = grd_supload.valueMatrix(row, grd_supload.colRef("rrgstno1")) + grd_supload.valueMatrix(row, grd_supload.colRef("rrgstno2")); // 주민번호
  1433. fGetPkgCd("SMAHA00300", "A", "Y","nm" , "","G08" , fGetRrgstNo(rgstno,"S"), "/root/hidden/testlst","Y","" ,fGetRrgstNo(rgstno,"A") );
  1434. var nodeList = instance1.selectNodes("/root/hidden/testlst/list");
  1435. var testcdList = grd_supload.valueMatrix( grd_supload.row , grd_supload.colRef("lifeconvpkgcd"));
  1436. for(var i=1; i <= nodeList.length; i++) {
  1437. var testcd = model.getValue("/root/hidden/testlst/list[" + i + "]/testcd");
  1438. var testnm = model.getValue("/root/hidden/testlst/list[" + i + "]/testnm");
  1439. var groupflag = model.getValue("/root/hidden/testlst/list[" + i + "]/grupflag");
  1440. // 중복체크 로직
  1441. if(testcdList != "") {
  1442. if ( fCheckDup(testcdList , testcd) ) {
  1443. if( messageBox("중복되는 검사코드[" + testcd + " - " + testnm +"] 를 추가 ", "S001") != 6 ){
  1444. continue ;
  1445. }
  1446. }
  1447. }
  1448. if(testcdList != "") {
  1449. testcdList += "," + testcd ;
  1450. }else {
  1451. testcdList += testcd != "" && nodeList.length>i ? "," + testcd : testcd;
  1452. }
  1453. }
  1454. grd_supload.valueMatrix(grd_supload.row,grd_supload.colRef("lifeconvpkgcd")) = testcdList;
  1455. }else if( col == grd_supload.colRef("workproccd")) {
  1456. fGetCommonCode("N","G105",grd_supload.valueMatrix(row , grd_supload.colRef("workproccd")),"", grd_supload.nodeset + "[" + row + "]/workproccd", grd_supload.nodeset + "[" + row + "]/workprocnm");
  1457. }else if(col == grd_supload.colRef("simppkgcd")) {
  1458. model.resetInstanceNode("/root/hidden/pkglst");
  1459. var rgstno = grd_supload.valueMatrix(row, grd_supload.colRef("rrgstno1")) + grd_supload.valueMatrix(row, grd_supload.colRef("rrgstno2")); // 주민번호
  1460. fGetPkgCd("SMAHA00300", "P", "N","nm" , grd_supload.valueMatrix(row,col) ,"G11" , fGetRrgstNo(rgstno,"S"), "/root/hidden/pkglst","Y","" ,fGetRrgstNo(rgstno,"A") );
  1461. grd_supload.valueMatrix(row,col) = model.getValue("/root/hidden/pkglst/pkgcd") == "" ? grd_supload.valueMatrix(row,col) : model.getValue("/root/hidden/pkglst/pkgcd");
  1462. }
  1463. ]]>
  1464. </script>
  1465. <script type="javascript" ev:event="onmousedown">
  1466. <![CDATA[
  1467. if(event.button == 3){
  1468. if(grd_cupload.isCell(event.target) && grd_cupload.mouseRow >= grd_cupload.fixedrows){
  1469. window.setPopupMenu(true, "/root/popup/item", "label", "func", true);
  1470. }else{
  1471. window.setPopupMenu(false);
  1472. }
  1473. }
  1474. ]]>
  1475. </script>
  1476. <script type="javascript" ev:event="onaftersort">
  1477. <![CDATA[
  1478. grd_cupload.gridToInstance();
  1479. ]]>
  1480. </script>
  1481. </datagrid>
  1482. <button id="button2" class="btn2_letter4" style="left:1046px; top:5px; width:64px; height:19px; ">
  1483. <caption>물질확인</caption>
  1484. <script type="javascript" ev:event="DOMActivate">
  1485. <![CDATA[
  1486. var pkgNodeList = instance1.selectNodes("/root/main/pkginfo/pkglst/item");
  1487. for(var i=1; i < grd_supload.rows; i++) {
  1488. for(var j=grd_supload.colRef("spclpkg1"); j <= grd_supload.colRef("spclpkg20"); j++) {
  1489. var srchPkgnm = grd_supload.valueMatrix(i , j);
  1490. if(srchPkgnm == "") continue;
  1491. for(var x=0; x < pkgNodeList.length; x++) {
  1492. var desPkgnm = pkgNodeList.item(x).pkgnm.text;
  1493. if(srchPkgnm == desPkgnm) {
  1494. grd_supload.valueMatrix(i , j) = pkgNodeList.item(x).pkgcd.text;
  1495. break;
  1496. }
  1497. }
  1498. }
  1499. }
  1500. grd_supload.refresh();
  1501. ]]>
  1502. </script>
  1503. </button>
  1504. <caption id="caption4" class="cell_1" style="left:228px; top:31px; width:90px; height:20px; vertical-align:middle; ">출장/내원구분</caption>
  1505. <select1 id="combo1" ref="/root/send/srchplceflag" appearance="minimal" style="left:322px; top:32px; width:105px; height:19px; ">
  1506. <choices>
  1507. <itemset nodeset="/root/init/baseinfo/plceflag/A0110">
  1508. <label ref="cdnm"/>
  1509. <value ref="cdid"/>
  1510. </itemset>
  1511. </choices>
  1512. </select1>
  1513. <button id="button15" class="btn2_letter6" style="left:957px; top:5px; width:86px; height:19px; ">
  1514. <caption>주민번호체크</caption>
  1515. <script type="javascript" ev:event="DOMActivate">
  1516. <![CDATA[
  1517. grd_supload.rebuildStyle();
  1518. var chkCnt = 0;
  1519. for(var i=1; i < grd_supload.rows; i++) {
  1520. if(!isResidentNo(grd_supload.valueMatrix(i , grd_supload.colRef("rrgstno")))) {
  1521. grd_supload.cellStyle("background-color", i , grd_supload.colRef("rrgstno")) = "#f7a08b";
  1522. chkCnt++;
  1523. }
  1524. //해당환자의 원무주민번호가 2건이상일경우 메세지처리
  1525. var rrgstno1 = grd_supload.valueMatrix(i , grd_supload.colRef("rrgstno")).substr(0,6);
  1526. var rrgstno2 = grd_supload.valueMatrix(i , grd_supload.colRef("rrgstno")).substr(6,7);
  1527. var hngnm = grd_supload.valueMatrix(i , grd_supload.colRef("hngnm"));
  1528. model.setValue("/root/send/srchrrgstnogrd1",rrgstno1);
  1529. model.setValue("/root/send/srchrrgstnogrd2",rrgstno2);
  1530. if(submit("TRAHA04094")){
  1531. var rrgstcnt = parseInt(model.getValue("/root/tmp/rrgstinfo/item/rrgstcnt"));
  1532. if(rrgstcnt > 1){
  1533. messageBox("[" + hngnm + "]님의 주민번호가 [" + rrgstcnt + "]건 있습니다.","I007");
  1534. return;
  1535. }
  1536. }
  1537. }
  1538. messageBox("[" + chkCnt + "]건의 주민번호가","E016");
  1539. ]]>
  1540. </script>
  1541. </button>
  1542. </case>
  1543. <case id="case_insu">
  1544. <caption id="caption8" class="tit_2" style="left:8px; top:42px; width:151px; height:13px; ">증번호등록</caption>
  1545. <line id="line3" class="line_1" style="x1:4px; y1:59px; x2:1188px; y2:59px; "/>
  1546. <datagrid id="grd_iupload" nodeset="/root/main/uploadinsulst/item" caption="주민번호^주민번호^증번호" colsep="^" colwidth="150, 150, 150" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" style="left:4px; top:64px; width:1184px; height:646px; ">
  1547. <col disabled="true" ref="rrgstno1" type="input"/>
  1548. <col disabled="true" ref="rrgstno2" type="input"/>
  1549. <col ref="insuid" type="input"/>
  1550. </datagrid>
  1551. <button id="button6" class="btn2_letter5" style="left:1035px; top:39px; width:75px; height:19px; ">
  1552. <caption>파일업로드</caption>
  1553. <script type="javascript" ev:event="DOMActivate">
  1554. <![CDATA[
  1555. openLoadingBar("파일 업로드");
  1556. fFileUpload();
  1557. closeLoadingBar();
  1558. ]]>
  1559. </script>
  1560. </button>
  1561. <button id="button7" class="btn2_letter3" style="left:923px; top:39px; width:53px; height:19px; ">
  1562. <caption>행추가</caption>
  1563. <script type="javascript" ev:event="DOMActivate">
  1564. <![CDATA[
  1565. grd_iupload.addRow();
  1566. ]]>
  1567. </script>
  1568. </button>
  1569. <button id="button9" class="btn2_letter3" style="left:979px; top:39px; width:53px; height:19px; ">
  1570. <caption>행삭제</caption>
  1571. <script type="javascript" ev:event="DOMActivate">
  1572. <![CDATA[
  1573. deleteSelectedRows(grd_iupload,true);
  1574. ]]>
  1575. </script>
  1576. </button>
  1577. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:1px; width:1193px; height:31px; background-color:#fffbf2; border-color:#ffd799; "/>
  1578. <button id="btn_acptlst" class="btn1_letter2" style="left:1122px; top:5px; width:56px; height:22px; ">
  1579. <caption>조회</caption>
  1580. <script type="javascript" ev:event="DOMActivate">
  1581. <![CDATA[
  1582. model.resetInstanceNode(grd_iupload.nodeset);
  1583. if(submit("TRAHA04092")){
  1584. copyNodesetType("/root/main/uploadinsulst/item" , "/root/tmp/uploadinsulst/item" , "replace");
  1585. grd_iupload.refresh();
  1586. }
  1587. ]]>
  1588. </script>
  1589. </button>
  1590. <line id="line29" style="x1:1106px; y1:6px; x2:1106px; y2:28px; border-color:#ffe4bb; border-left-style:solid; "/>
  1591. <input id="input1" ref="/root/send/srchrrgstno1" style="left:95px; top:7px; width:100px; height:19px; "/>
  1592. <input id="input2" ref="/root/send/srchrrgstno2" style="left:205px; top:7px; width:100px; height:19px; "/>
  1593. <input id="input3" ref="/root/send/srchinsuid" style="left:412px; top:6px; width:110px; height:19px; "/>
  1594. <caption id="caption49" class="search_name" style="left:5px; top:8px; width:86px; height:17px; ">주민번호 :</caption>
  1595. <caption id="caption9" class="search_name" style="left:335px; top:8px; width:86px; height:17px; ">증번호 :</caption>
  1596. <button id="button10" class="btn2_letter5" style="left:1113px; top:39px; width:75px; height:19px; ">
  1597. <caption>데이터확인</caption>
  1598. <script type="javascript" ev:event="onclick">
  1599. <![CDATA[
  1600. var chkCnt = 0;
  1601. for(var i =1; i < grd_iupload.rows; i++) {
  1602. var rrgstno1 = grd_iupload.valueMatrix( i , grd_iupload.colRef("rrgstno1"));
  1603. var rrgstno2 = grd_iupload.valueMatrix( i , grd_iupload.colRef("rrgstno2"));
  1604. if(!isResidentNo(rrgstno1+rrgstno2)) {
  1605. var ret1 = fChkValue(rrgstno1,"R1")
  1606. var ret2 = fChkValue(rrgstno2,"R2")
  1607. if(!ret1) {
  1608. fDispGrd(grd_iupload,"E",i,grd_iupload.colRef("rrgstno1"));
  1609. chkCnt++;
  1610. }
  1611. if(!ret2) {
  1612. fDispGrd(grd_iupload,"E",i,grd_iupload.colRef("rrgstno2"));
  1613. chkCnt++;
  1614. }
  1615. if(ret1 == true && ret2 == true) {
  1616. fDispGrd(grd_iupload,"E",i,grd_iupload.colRef("rrgstno1"));
  1617. fDispGrd(grd_iupload,"E",i,grd_iupload.colRef("rrgstno2"));
  1618. chkCnt++;
  1619. }
  1620. }
  1621. }
  1622. messageBox("데이터 확인이 처리되었습니다.\n" + "["+ chkCnt +"]건의 주민번호가 ","E016");
  1623. ]]>
  1624. </script>
  1625. </button>
  1626. </case>
  1627. <case id="case_down">
  1628. <shape id="roundrect2" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:1192px; height:30px; background-color:#fffbf2; border-color:#ffd799; "/>
  1629. <input id="opt_cmpynm" ref="/root/send/download/srchcmpynm" class="output_fix" disabled="true" imemode="alpha" style="left:536px; top:5px; width:140px; height:19px; "/>
  1630. <button id="btn_srchcmpy" class="icon_search" style="left:517px; top:5px; width:16px; height:16px; ">
  1631. <caption/>
  1632. <script type="javascript" ev:event="DOMActivate">
  1633. <![CDATA[
  1634. fGetComnCd("SMAHA01500", "09" , "nm", ipt_cmpycd.currentText ,ipt_cmpycd.attribute("ref"), opt_cmpynm.attribute("ref"));
  1635. ipt_cmpycd.refresh();
  1636. opt_cmpynm.refresh();
  1637. ]]>
  1638. </script>
  1639. </button>
  1640. <input id="ipt_cmpycd" ref="/root/send/download/srchcmpycd" class="input_default" navindex="12" imemode="alpha" style="left:408px; top:5px; width:104px; height:19px; ">
  1641. <script type="javascript" ev:event="onkeyup">
  1642. <![CDATA[
  1643. inputEnterKey("btn_srchcmpy", "DOMActivate");
  1644. ]]>
  1645. </script>
  1646. </input>
  1647. <caption id="caption5" class="search_name" style="left:5px; top:7px; width:86px; height:17px; ">건진일자 :</caption>
  1648. <caption id="caption7" class="search_name" style="left:330px; top:7px; width:86px; height:17px; ">사업체 :</caption>
  1649. <input id="ipt_srchfromdd" ref="/root/send/download/srchfromdd" class="input_s_essential" inputtype="date" style="left:92px; top:5px; width:100px; height:19px; "/>
  1650. <caption id="caption50" class="search_n_b" style="left:196px; top:5px; width:12px; height:17px; font-weight:bolder; ">~</caption>
  1651. <input id="ipt_srchtodd" ref="/root/send/download/srchtodd" class="input_s_essential" inputtype="date" style="left:212px; top:5px; width:100px; height:19px; ">
  1652. <script type="javascript" ev:event="xforms-value-changed">
  1653. <![CDATA[
  1654. btn_acptlst.dispatch("DOMActivate");
  1655. ]]>
  1656. </script>
  1657. </input>
  1658. <button id="button12" class="btn1_letter2" style="left:1122px; top:5px; width:56px; height:22px; ">
  1659. <caption>조회</caption>
  1660. <script type="javascript" ev:event="DOMActivate">
  1661. <![CDATA[
  1662. fGetSpclDownList();
  1663. ]]>
  1664. </script>
  1665. </button>
  1666. <line id="line4" style="x1:1111px; y1:5px; x2:1111px; y2:27px; border-color:#ffe4bb; border-left-style:solid; "/>
  1667. <button id="button13" class="btn2_letter4" style="left:1124px; top:35px; width:64px; height:19px; ">
  1668. <caption>엑셀저장</caption>
  1669. <script type="javascript" ev:event="DOMActivate">
  1670. <![CDATA[
  1671. var fileName = window.fileDialog("save", ",", false, "excel", "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
  1672. if(fileName != ""){
  1673. grd_spcldownlst.saveExcel(fileName, "sheetname:sheet1;colhiddenextend:false", false, true, "", "", false);
  1674. }
  1675. ]]>
  1676. </script>
  1677. </button>
  1678. <datagrid id="grd_spcldownlst" nodeset="/root/main/downloadlst/item" allowselection="true" autoresize="true" caption="선택^사업장코드^예약일자^차트번호^성명^주민번호^사원번호^증번호^부서명^입사일자^전입일자^직종^작업공정코드^작업공정명^일반/생애^청구구분^특수구분^유해인자1^유해인자2^유해인자3^유해인자4^유해인자5^유해인자6^유해인자7^유해인자8^유해인자9^유해인자10^유해인자11^유해인자12^유해인자13^유해인자14^유해인자15^유해인자16^유해인자17^유해인자18^유해인자19^유해인자20^추가검사^추가청구구분^간이패키지^간이청구구분^ 등록번호^검진일^유해인자목록^유해인자별검사^사업체명" colsep="^" colwidth="50, 80, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100" explorerbar="sortshow" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" selectionmode="listbox" subtotalposition="below" style="left:4px; top:60px; width:1184px; height:650px; ">
  1679. <col checkvalue="Y,N" ref="chk" type="checkbox"/>
  1680. <col ref="cmpycd" style="left:94px; top:43px; width:61px; height:23px; "/>
  1681. <col disabled="true" ref="hopedd" type="inputdate"/>
  1682. <col ref="chartno"/>
  1683. <col ref="hngnm"/>
  1684. <col ref="rrgstno"/>
  1685. <col ref="clntempid"/>
  1686. <col ref="insuid"/>
  1687. <col ref="clntdeptnm"/>
  1688. <col disabled="true" ref="entcodd" type="inputdate"/>
  1689. <col disabled="true" ref="junibdd" type="inputdate"/>
  1690. <col disabled="true" ref="jobkindnm" type="output"/>
  1691. <col ref="workproccd" type="output"/>
  1692. <col ref="workprocnm"/>
  1693. <col disabled="true" ref="gnrlpkg" type="output"/>
  1694. <col disabled="true" ref="gnrluncocd" type="output"/>
  1695. <col disabled="true" ref="spclhealexamflag" type="output"/>
  1696. <col ref="spclpkg1" type="output"/>
  1697. <col ref="spclpkg2" type="output"/>
  1698. <col ref="spclpkg3" type="output"/>
  1699. <col ref="spclpkg4" type="output"/>
  1700. <col ref="spclpkg5" type="output"/>
  1701. <col ref="spclpkg6" type="output"/>
  1702. <col ref="spclpkg7" type="output"/>
  1703. <col ref="spclpkg8" type="output"/>
  1704. <col ref="spclpkg9" type="output"/>
  1705. <col ref="spclpkg10" type="output"/>
  1706. <col ref="spclpkg11" type="output"/>
  1707. <col ref="spclpkg12" type="output"/>
  1708. <col ref="spclpkg13" type="output"/>
  1709. <col ref="spclpkg14" type="output"/>
  1710. <col ref="spclpkg15" type="output"/>
  1711. <col ref="spclpkg16" type="output"/>
  1712. <col ref="spclpkg17" type="output"/>
  1713. <col ref="spclpkg18" type="output"/>
  1714. <col ref="spclpkg19" type="output"/>
  1715. <col ref="spclpkg20" type="output"/>
  1716. <col ref="addtest" type="output"/>
  1717. <col disabled="true" ref="adduncocd" type="output"/>
  1718. <col ref="simppkg" type="output"/>
  1719. <col disabled="true" ref="simpuncocd" type="output"/>
  1720. <col ref="pid" type="output"/>
  1721. <col disabled="true" ref="acptdd" type="inputdate"/>
  1722. <col ref="spclpkg" visibility="hidden"/>
  1723. <col ref="spclpkgcmt" visibility="hidden"/>
  1724. <col ref="cmpynm" visibility="hidden"/>
  1725. <script type="javascript" ev:event="onaftersort">
  1726. <![CDATA[
  1727. grd_spcldownlst.gridToInstance();
  1728. ]]>
  1729. </script>
  1730. <script type="javascript" ev:event="onmousedown">
  1731. <![CDATA[
  1732. if(event.button == 3){
  1733. if(isDataCell()){
  1734. setPopupMenu("grd_spcldownlst", false, "/root/init/popupmenu/grid/item", "name", "func");
  1735. }
  1736. }
  1737. ]]>
  1738. </script>
  1739. <script type="javascript" ev:event="DOMFocusOut">
  1740. <![CDATA[
  1741. window.setPopupMenu(false);
  1742. ]]>
  1743. </script>
  1744. <script type="javascript" ev:event="DOMFocusIn">
  1745. <![CDATA[
  1746. if(event.button == 3){
  1747. if(isDataCell()){
  1748. setPopupMenu("grd_spcldownlst", false, "/root/init/popupmenu/grid/item", "name", "func");
  1749. }
  1750. }
  1751. ]]>
  1752. </script>
  1753. </datagrid>
  1754. <caption id="caption10" class="tit_2" style="left:8px; top:38px; width:151px; height:13px; ">특수일괄 예약/접수</caption>
  1755. <line id="line5" class="line_1" style="x1:4px; y1:55px; x2:1188px; y2:55px; "/>
  1756. <caption id="caption11" class="search_name" style="left:700px; top:7px; width:86px; height:17px; ">부서명 :</caption>
  1757. <input id="input4" ref="/root/send/download/srchdeptnm" style="left:775px; top:5px; width:170px; height:19px; ">
  1758. <script type="javascript" ev:event="onkeyup">
  1759. <![CDATA[
  1760. inputEnterKey("button12", "DOMActivate");
  1761. ]]>
  1762. </script>
  1763. </input>
  1764. </case>
  1765. </switch>
  1766. <button id="button5" class="btn_sw" group="tab" style="left:205px; top:18px; width:100px; height:22px; ">
  1767. <caption>증번호</caption>
  1768. <toggle case="case_insu" ev:event="DOMActivate"/>
  1769. </button>
  1770. <button id="button11" class="btn_sw" group="tab" style="left:305px; top:18px; width:100px; height:22px; ">
  1771. <caption>내려받기</caption>
  1772. <toggle case="case_down" ev:event="DOMActivate"/>
  1773. </button>
  1774. </xhtml:body>
  1775. </xhtml:html>