SMLLF10200_통합검사대분류중분류관리.xrw 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <!--
  3. * 제 목 : SMLLF00200_검사대분류중분류관리.xrw
  4. * 설 명 : 검사대분류중분류 조회 및 등록
  5. * 설 계 자 : (주)에이씨케이 -
  6. * 작 성 자 : (주)에이씨케이 - 박정은
  7. * 작 성 일 : 2007.04.10
  8. * 수정이력 : 2007.08.31 UserDeptFlagCD
  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>
  18. <main>
  19. <testlrglist>
  20. <testlrgfromdd/>
  21. <testlrgtodd/>
  22. <testlrgcd/>
  23. <testlrgkind/>
  24. <testlrgnm/>
  25. <testlrgscrnnm/>
  26. <testlrgabbrnm/>
  27. <testlrgprntnm/>
  28. <testlrglblnm/>
  29. </testlrglist>
  30. <testmdllist>
  31. <testmdlfromdd/>
  32. <testmdltodd/>
  33. <testlrgcd/>
  34. <testmdlcd/>
  35. <testmdlnm/>
  36. <testmdlscrnnm/>
  37. <testmdlabbrnm/>
  38. <testmdlprntnm/>
  39. <testmdllblnm/>
  40. </testmdllist>
  41. </main>
  42. <send>
  43. <Data1/>
  44. <Data2/>
  45. <refgbn/>
  46. <testlrgcd/>
  47. <grdlrgdata/>
  48. <grdmdldata/>
  49. <codeflag/>
  50. <deptflag/>
  51. </send>
  52. <init>
  53. </init>
  54. <hidden>
  55. <ref>
  56. <refgbn>1</refgbn>
  57. </ref>
  58. </hidden>
  59. </root>
  60. </instance>
  61. <script src="../../../com/commonweb/js/common.js" type="javascript"/>
  62. <script src="../../../com/commonweb/js/dateHelper.js" type="javascript"/>
  63. <script src="../../../com/commonweb/js/tfHelper.js" type="javascript"/>
  64. <script ev:event="xforms-ready" type="javascript">
  65. <![CDATA[
  66. var td = getCurrentDate(); // 현재날짜 YYYYMMDD
  67. //alert("td= " + td);
  68. // 초기정보 조회
  69. model.setValue("/root/send/codeflag", "0000|"); // 0000= 유저과플래그
  70. submit("TRLZZ00101");
  71. ]]>
  72. </script>
  73. <!-- 대분류코드 리스트 조회-->
  74. <submission id="TRLLF10201" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/testlrglist"/>
  75. <!-- 중분류코드 리스트 조회-->
  76. <submission id="TRLLF10202" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/sliplist"/>
  77. <!-- 대분류코드 수정,등록-->
  78. <submission id="TXLLF10201" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance"/>
  79. <!-- 중분류코드 수정,등록-->
  80. <submission id="TXLLF10202" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance"/>
  81. <submission id="TRLZZ00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init"/>
  82. <script ev:event="xforms-ready" type="javascript">
  83. <![CDATA[
  84. grd_testlrg.deleteRow(1);
  85. grd_testmdl.deleteRow(2);
  86. fSetHddentodd();
  87. ]]>
  88. </script>
  89. </model>
  90. <script type="javascript">
  91. <![CDATA[
  92. //조회구분에 따라 사용종료일 숨기기
  93. function fSetHddentodd(){
  94. if(cmb_refgbn.value == "1"){
  95. grd_testlrg.colHidden(2) = true;
  96. grd_testmdl.colHidden(2) = true;
  97. }else if(cmb_refgbn.value =="2"){
  98. grd_testlrg.colHidden(2) = false;
  99. grd_testmdl.colHidden(2) = false;
  100. }
  101. }
  102. // 대분류 행추가
  103. function fInsRowAddlrg(){
  104. grd_testlrg.row = grd_testlrg.rows;
  105. var dt = getCurrentDate();
  106. grd_testlrg.addRow();
  107. model.setValue("/root/main/testlrglist["+grd_testlrg.row+"]/testlrgfromdd", dt);
  108. model.setValue("/root/main/testlrglist["+grd_testlrg.row+"]/testlrgtodd","99991231");
  109. model.setValue("/root/main/testlrglist["+grd_testlrg.row+"]/testlrgabbrnm", "-");
  110. model.setValue("/root/main/testlrglist["+grd_testlrg.row+"]/testlrgprntnm", "-");
  111. model.setValue("/root/main/testlrglist["+grd_testlrg.row+"]/testlrglblnm", "-");
  112. model.setValue("/root/main/testlrglist["+grd_testlrg.row+"]/testlrgkind", "-"); //대분류유형 기본값 '-' 셋팅
  113. fGetTestMdllist(grd_testlrg.row);
  114. }
  115. // 중분류 행추가
  116. function fInsRowAddmdl(){
  117. var dt = getCurrentDate();
  118. grd_testmdl.addRow();
  119. model.setValue("/root/main/testmdllist["+(grd_testmdl.row-1)+"]/testmdlfromdd", dt);
  120. model.setValue("/root/main/testmdllist["+(grd_testmdl.row-1)+"]/testmdltodd", "99991131");
  121. model.setValue("/root/main/testmdllist["+(grd_testmdl.row-1)+"]/testmdlabbrnm", "-");
  122. model.setValue("/root/main/testmdllist["+(grd_testmdl.row-1)+"]/testmdlprntnm", "-");
  123. model.setValue("/root/main/testmdllist["+(grd_testmdl.row-1)+"]/testmdllblnm", "-");
  124. }
  125. // 초기화 버튼
  126. function fSetInit() {
  127. model.removeNodeset("/root/main/testlrglist");
  128. model.removeNodeset("/root/main/testmdllist");
  129. model.refresh();
  130. }
  131. // 대분류코드 리스트 조회
  132. function fGetTestLrgList(){
  133. model.setValue("/root/send/refgbn", model.getValue("/root/hidden/ref/refgbn"));
  134. model.setValue("/root/send/deptflag", model.getValue("/root/init/LB0000/nm"));
  135. if(submit("TRLLF10201")==true){
  136. // 중분류코드 자동 조회
  137. grd_testlrg.row = 1;
  138. fGetTestMdllist(1);
  139. }
  140. }
  141. // 중분류코드 리스트 조회
  142. function fGetTestMdllist(row){
  143. // 중분류 노드 초기화 (resetinstance 하면 맨윗줄 안없어짐,,, deleteitem 해도...)
  144. model.removeNodeset("/root/main/testmdllist");
  145. model.setValue("/root/send/refgbn", model.getValue("/root/hidden/ref/refgbn"));
  146. model.setvalue("/root/send/testlrgcd", model.getvalue("/root/main/testlrglist["+ row +"]/testlrgcd"));
  147. submit("TRLLF10202");
  148. }
  149. // 저장 버튼 클릭(대분류/중분류 수정, 등록)
  150. function fExeTestLrgMdlInfo(){
  151. // 대분류 수정,등록
  152. var testlrgcd = model.getvalue("/root/main/testlrglist["+ grd_testlrg.row +"]/testlrgcd");
  153. var lrgdata = getGridUpdateData(grd_testlrg); // 대분류 업데이트 정보
  154. model.setValue("/root/send/grdlrgdata", lrgdata);
  155. model.setValue("/root/send/deptflag", model.getValue("/root/init/LB0000/nm"));
  156. //model.setValue("/root/send/testlrgcd", testlrgcd);
  157. if(submit("TXLLF10201")==true){
  158. // 중분류 수정,등록
  159. var mdldata = getGridUpdateData(grd_testmdl); // 중분류 업데이트 정보
  160. model.setValue("/root/send/testlrgcd", testlrgcd);
  161. model.setValue("/root/send/grdmdldata", mdldata);
  162. model.setValue("/root/send/deptflag", model.getValue("/root/init/LB0000/nm"));
  163. if(submit("TXLLF10202")==true){
  164. // 재조회
  165. fGetTestLrgList();
  166. }// 중분류 submit
  167. }// 대분류 submit
  168. }
  169. // Null 체크
  170. function fNullCheck(){
  171. var msg = "";
  172. var nullyn = "true";
  173. if(grd_testmdl.rows<3){
  174. messageBox("중분류 정보를", "C001", ""); // 중분류 정보를 입력하십시오.
  175. return;
  176. }
  177. for(i=1; i<grd_testlrg.rows; i++ ){
  178. //if(grd_tsect.rowStatus(i) == 3 || grd_tsect.rowStatus(i) == 1){
  179. if(model.getValue("/root/main/testmdllist["+i+"]/testmdllblnm")==""){
  180. msg = "[중분류 라벨명] 은 " ;
  181. nullyn = "false";
  182. }
  183. if(model.getValue("/root/main/testmdllist["+i+"]/testmdlprntnm")==""){
  184. msg = "[중분류 출력명] 은 " ;
  185. nullyn = "false";
  186. }
  187. if(model.getValue("/root/main/testmdllist["+i+"]/testmdlabbrnm")==""){
  188. msg = "[중분류 약어명] 은 " ;
  189. nullyn = "false";
  190. }
  191. if(model.getValue("/root/main/testmdllist["+i+"]/testmdlscrnnm")==""){
  192. msg = "[중분류 화면명] 은 " ;
  193. nullyn = "false";
  194. }
  195. if(model.getValue("/root/main/testmdllist["+i+"]/testmdlnm")==""){
  196. msg = "[중분류명] 은 " ;
  197. nullyn = "false";
  198. }
  199. if(model.getValue("/root/main/testmdllist["+i+"]/testmdlcd")==""){
  200. msg = "[중분류 코드] 는 " ;
  201. nullyn = "false";
  202. }
  203. if(model.getValue("/root/main/testmdllist["+i+"]/testmdltodd")==""){
  204. msg = "[사용종료일] 은 " ;
  205. nullyn = "false";
  206. }
  207. if(model.getValue("/root/main/testmdllist["+i+"]/testmdlfromdd")==""){
  208. msg = "[사용시작일] 은 " ;
  209. nullyn = "false";
  210. }
  211. //}
  212. if(nullyn == "false"){
  213. messageBox(msg, "I003", "");
  214. }
  215. return nullyn;
  216. }
  217. }
  218. // 상세 행추가시 계 널값 체크
  219. function fGetSectNull(){
  220. var msg = "";
  221. var nullyn = "true";
  222. var row = grd_testlrg.row;
  223. if(model.getValue("/root/main/testlrglist["+row+"]/testlrglblnm")==""){
  224. msg = "[대분류 라벨명] 은 " ;
  225. nullyn = "false";
  226. }
  227. if(model.getValue("/root/main/testlrglist["+row+"]/testlrgprntnm")==""){
  228. msg = "[대분류 출력명] 은 " ;
  229. nullyn = "false";
  230. }
  231. if(model.getValue("/root/main/testlrglist["+row+"]/testlrgabbrnm")==""){
  232. msg = "[대분류 약어명] 은 " ;
  233. nullyn = "false";
  234. }
  235. if(model.getValue("/root/main/testlrglist["+row+"]/testlrgscrnnm")==""){
  236. msg = "[대분류 화면명] 은 " ;
  237. nullyn = "false";
  238. }
  239. if(model.getValue("/root/main/testlrglist["+row+"]/testlrgnm")==""){
  240. msg = "[대분류명] 은 " ;
  241. nullyn = "false";
  242. }
  243. /*if(model.getValue("/root/main/testlrglist["+row+"]/testlrgkind")==""){
  244. msg = "[대분류 유형] 은 " ;
  245. nullyn = "false";
  246. }*/
  247. if(model.getValue("/root/main/testlrglist["+row+"]/testlrgcd")==""){
  248. msg = "[대분류 코드] 는 " ;
  249. nullyn = "false";
  250. }
  251. if(model.getValue("/root/main/testlrglist["+row+"]/testlrgtodd")==""){
  252. msg = "[사용종료일] 은 " ;
  253. nullyn = "false";
  254. }
  255. if(model.getValue("/root/main/testlrglist["+row+"]/testlrgfromdd")==""){
  256. msg = "[사용시작일] 은 " ;
  257. nullyn = "false";
  258. }
  259. if(nullyn == "false"){
  260. messageBox(msg, "I003", "");
  261. }
  262. return nullyn;
  263. }
  264. ]]>
  265. </script>
  266. </xhtml:head>
  267. <xhtml:body style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  268. <group id="group1" style="left:0px; top:0px; width:1194px; height:13px; ">
  269. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:585px; height:14px; ">검사분류코드관리</caption>
  270. </group>
  271. <group id="group3" scroll="auto" style="left:0px; top:40px; width:1195px; height:744px; ">
  272. <group id="group2" style="left:0px; top:10px; width:1195px; height:35px; vertical-align:top; ">
  273. <shape id="roundrect1" class="roundrect_search" appearance="roundrect" style="left:0px; top:0px; width:1194px; height:35px; "/>
  274. <caption id="caption2" class="search_name" style="left:15px; top:9px; width:90; height:17px; ">조회구분 :</caption>
  275. <line id="line11" class="line_4" style="x1:1108px; y1:6px; x2:1108px; y2:28px; "/>
  276. <button id="btn_ref" class="btn1_letter2" style="left:1123px; top:7px; width:57px; height:22px; ">
  277. <caption>조회</caption>
  278. <script ev:event="DOMActivate" type="javascript">
  279. <![CDATA[
  280. // 대분류코드리스트 조회
  281. fGetTestLrgList();
  282. ]]>
  283. </script>
  284. </button>
  285. <select1 id="cmb_refgbn" ref="/root/hidden/ref/refgbn" class="combo_s_essential" appearance="minimal" style="left:108px; top:8px; width:150px; height:19px; ">
  286. <choices>
  287. <item>
  288. <label>사용코드</label>
  289. <value>1</value>
  290. </item>
  291. <item>
  292. <label>전체코드</label>
  293. <value>2</value>
  294. </item>
  295. </choices>
  296. <script ev:event="xforms-value-changed" type="javascript">
  297. <![CDATA[
  298. fSetHddentodd();
  299. ]]>
  300. </script>
  301. </select1>
  302. </group>
  303. <caption id="caption1" class="tit_2" style="left:5px; top:55px; width:134px; height:14px; ">대분류코드상세내역</caption>
  304. <line id="line1" class="line_1" style="x1:0px; y1:70px; x2:510px; y2:70px; "/>
  305. <caption id="caption3" class="tit_2" style="left:520px; top:55px; width:134px; height:14px; ">중분류코드상세내역</caption>
  306. <line id="line2" class="line_1" style="x1:515px; y1:70px; x2:1195px; y2:70px; "/>
  307. <datagrid id="grd_testlrg" nodeset="/root/main/testlrglist" allowselection="false" caption="사용시작일^사용종료일^대분류코드^대분류유형^대분류명^대분류명(화면)^대분류명(약어)^대분류명(출력)^대분류명(라벨)^표시순서" colwidth="85, 85, 70, 70, 100, 100, 100, 100, 100, 60" dataheight="23" defaultrows="1" ellipsis="true" explorerbar="sortshow" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="23" selectionmode="byrow" style="left:0px; top:75px; width:510px; height:669; ">
  308. <col ref="testlrgfromdd" type="inputdate"/>
  309. <col ref="testlrgtodd" type="inputdate"/>
  310. <col ref="testlrgcd" type="input" style="text-align:center; "/>
  311. <col ref="testlrgkind" type="combo">
  312. <choices>
  313. <item>
  314. <label/>
  315. <value>-</value>
  316. </item>
  317. <item>
  318. <label>미생물</label>
  319. <value>M</value>
  320. </item>
  321. <item>
  322. <label>혈액은행</label>
  323. <value>B</value>
  324. </item>
  325. <item>
  326. <label>분자/세포 유전</label>
  327. <value>G</value>
  328. </item>
  329. <item>
  330. <label>핵의학-체외</label>
  331. <value>N</value>
  332. </item>
  333. </choices>
  334. </col>
  335. <col ref="testlrgnm" type="input"/>
  336. <col ref="testlrgscrnnm" type="input"/>
  337. <col ref="testlrgabbrnm" type="input"/>
  338. <col ref="testlrgprntnm" type="input"/>
  339. <col ref="testlrglblnm" type="input"/>
  340. <script ev:event="onclick" type="javascript">
  341. <![CDATA[
  342. // 중분류코드 리스트 조회
  343. fGetTestMdllist( grd_testlrg.row);
  344. ]]>
  345. </script>
  346. <script ev:event="onaftersort" type="javascript">
  347. <![CDATA[
  348. grd_testlrg.gridToInstance();
  349. ]]>
  350. </script>
  351. </datagrid>
  352. <datagrid id="grd_testmdl" nodeset="/root/main/testmdllist" allowselection="false" caption="사용시작일^사용종료일^대/중분류코드^대/중분류코드^중분류명^중분류명(화면)^중분류명(약어)^중분류명(출력)^중분류명(라벨)^대분류&#xA;표시 순서^중분류&#xA;표시 순서|사용시작일^사용종료일^대분류^중분류^중분류명^중분류명(화면)^중분류명(약어)^중분류명(출력)^중분류명(라벨)^대분류&#xA;표시 순서^중분류&#xA;표시 순서" colwidth="85, 85, 45, 45, 100, 100, 100, 100, 100, 65, 60" dataheight="23" defaultrows="1" ellipsis="true" explorerbar="sortshow" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="23" selectionmode="byrow" style="left:515px; top:75px; width:680px; height:669px; ">
  353. <col disabled="true" ref="testmdlfromdd" type="inputdate"/>
  354. <col disabled="true" ref="testmdltodd" type="inputdate"/>
  355. <col ref="testlrgcd" style="text-align:center; "/>
  356. <col ref="testmdlcd" type="input" style="text-align:center; "/>
  357. <col ref="testmdlnm" type="input"/>
  358. <col ref="testmdlscrnnm" type="input"/>
  359. <col ref="testmdlabbrnm" type="input"/>
  360. <col ref="testmdlprntnm" type="input"/>
  361. <col ref="testmdllblnm" type="input"/>
  362. <script ev:event="onaftersort" type="javascript">
  363. <![CDATA[
  364. grd_testmdl.gridToInstance();
  365. ]]>
  366. </script>
  367. </datagrid>
  368. <button id="btn_lrg" class="btn2_letter3" style="left:457px; top:49px; width:53px; height:19px; ">
  369. <caption>행추가</caption>
  370. <script ev:event="DOMActivate" type="javascript">
  371. <![CDATA[
  372. fInsRowAddlrg();
  373. ]]>
  374. </script>
  375. </button>
  376. <button id="btn_mdl" class="btn2_letter3" style="left:1142px; top:49px; width:53px; height:19px; ">
  377. <caption>행추가</caption>
  378. <script ev:event="DOMActivate" type="javascript">
  379. <![CDATA[
  380. if(fGetSectNull()=="true"){
  381. fInsRowAddmdl();
  382. }
  383. ]]>
  384. </script>
  385. </button>
  386. </group>
  387. <group id="group4" scroll="auto" style="left:0px; top:13px; width:1195px; height:27px; ">
  388. <line id="line17" class="line_6" style="x1:0px; y1:25px; x2:1194px; y2:25px; "/>
  389. <button id="btn_save" class="btn4_letter2" style="left:1068px; top:3px; width:56px; height:22px; ">
  390. <caption>저장</caption>
  391. <script ev:event="DOMActivate" type="javascript">
  392. <![CDATA[
  393. if(fNullCheck()=="true"){
  394. // 저장버튼 클릭시
  395. fExeTestLrgMdlInfo();
  396. }
  397. ]]>
  398. </script>
  399. </button>
  400. <button id="btn_reset" class="btn4_letter3" style="left:1127px; top:3px; width:68px; height:22px; ">
  401. <caption>초기화</caption>
  402. <script ev:event="DOMActivate" type="javascript">
  403. <![CDATA[
  404. fSetInit();
  405. ]]>
  406. </script>
  407. </button>
  408. </group>
  409. </xhtml:body>
  410. </xhtml:html>