SMMRE00700.js 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420
  1. /*
  2. - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
  3. 치과기록치식 ( SMMRE00700_치과기록치식.xrw - JScript )
  4. - Version :
  5. 1) : Ver.1.00.01
  6. - Author : 최원돈 (2010.10.25~
  7. - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
  8. */
  9. var sVIEWDENTALINFO_PATH = "/root/main/viewinfo/dentalinfo"
  10. var defalut_tabidx = 0;
  11. /**
  12. * @---------------------------------------------------
  13. * @creat : 2011-01-01
  14. * @author : 최원돈
  15. * @desc : 초기화
  16. * @---------------------------------------------------
  17. */
  18. function fRecMainReady()
  19. {
  20. selectBtnTab(0); // 치식탭1 선택
  21. }
  22. // Flag 별 화면 설정
  23. function setwrdflag()
  24. {
  25. selectBtnTab(0); // 치식탭1 선택
  26. if( defalut_tabidx < 1 ){
  27. var tabidx = "";
  28. fGetUserEnvOcsOrdAnsw("/root/send/reqdata", "/root/init/tabselidx" , "045");
  29. if( model.getValue("/root/init/tabselidx/answcnt") == "001" ){
  30. tabidx = "bt_wrdflag1";
  31. bt_wrdflag1.selected = true;
  32. }else if( model.getValue("/root/init/tabselidx/answcnt") == "002" ){
  33. tabidx = "bt_wrdflag2";
  34. bt_wrdflag2.selected = true;
  35. }else if( model.getValue("/root/init/tabselidx/answcnt") == "003" ){
  36. tabidx = "bt_wrdflag3";
  37. bt_wrdflag3.selected = true;
  38. }else if( model.getValue("/root/init/tabselidx/answcnt") == "004" ){
  39. tabidx = "bt_wrdflag4";
  40. bt_wrdflag4.selected = true;
  41. }else if( model.getValue("/root/init/tabselidx/answcnt") == "005" ){
  42. tabidx = "bt_wrdflag5";
  43. bt_wrdflag5.selected = true;
  44. }else if( model.getValue("/root/init/tabselidx/answcnt") == "006" ){
  45. tabidx = "bt_wrdflag6";
  46. bt_wrdflag6.selected = true;
  47. }else if( model.getValue("/root/init/tabselidx/answcnt") == "007" ){
  48. tabidx = "bt_wrdflag7";
  49. bt_wrdflag7.selected = true;
  50. }else if( model.getValue("/root/init/tabselidx/answcnt") == "008" ){
  51. tabidx = "bt_wrdflag8";
  52. bt_wrdflag8.selected = true;
  53. }else if( model.getValue("/root/init/tabselidx/answcnt") == "009" ){
  54. tabidx = "bt_wrdflag9";
  55. bt_wrdflag9.selected = true;
  56. }else{
  57. tabidx = event.target;
  58. }
  59. fGetUserEnvOcsOrdAnsw("/root/send/reqdata", "/root/init/imemode", "046");
  60. if( model.getValue("/root/init/imemode/answcnt") == "001" ){
  61. opener.ivw_denti.window.document.controls.item("ipt_recnm").attribute("imemode") = "alpha";
  62. }else if( model.getValue("/root/init/imemode/answcnt") == "002" ){
  63. opener.ivw_denti.window.document.controls.item("ipt_recnm").attribute("imemode") = "hangul";
  64. }else if( model.getValue("/root/init/imemode/answcnt") == "003" ){ // 해당무일 경우에는 Defalut값
  65. opener.ivw_denti.window.document.controls.item("ipt_recnm").attribute("imemode") = "";
  66. }
  67. defalut_tabidx++;
  68. }else{
  69. tabidx = event.target;
  70. }
  71. opener.ivw_denti.window.document.controls.item(tabidx).dispatch("onclick");
  72. return;
  73. }
  74. /**
  75. * @---------------------------------------------------
  76. * @creat : 2011-01-01
  77. * @author : 최원돈
  78. * @desc : 치식 전체 리셋
  79. * @---------------------------------------------------
  80. */
  81. function resetdet()
  82. {
  83. setdenti(1, "lt", 1, 8, false); // 치식 1탭 좌측 상단 공백 셋팅
  84. setdenti(1, "lb", 1, 8, false); // 치식 1탭 좌측 하단 공백 셋팅
  85. setdenti(1, "rt", 1, 8, false); // 치식 1탭 우측 상단 공백 셋팅
  86. setdenti(1, "rb", 1, 8, false); // 치식 1탭 우측 하단 공백 셋팅
  87. setdenti(2, "lt", 1, 5, false); // 치식 2탭 좌측 상단 공백 셋팅
  88. setdenti(2, "lb", 1, 5, false); // 치식 2탭 좌측 하단 공백 셋팅
  89. setdenti(2, "rt", 1, 5, false); // 치식 2탭 우측 상단 공백 셋팅
  90. setdenti(2, "rb", 1, 5, false); // 치식 2탭 우측 하단 공백 셋팅
  91. return;
  92. }
  93. /**
  94. * @---------------------------------------------------
  95. * @creat : 2011-01-01
  96. * @author : 최원돈
  97. * @desc : 치식중앙 상단 설정
  98. * @---------------------------------------------------
  99. */
  100. function resetdet1tc()
  101. {
  102. var lb_chkblank = getdentiblank("lt", 1, 3) || getdentiblank("rt", 1, 3);
  103. setdenti(1, "lt", 1, 3, lb_chkblank); // 치식 1탭 좌측 상단 셋팅
  104. setdenti(1, "rt", 1, 3, lb_chkblank); // 치식 1탭 우측 상단 셋팅
  105. return;
  106. }
  107. /**
  108. * @---------------------------------------------------
  109. * @creat : 2011-01-01
  110. * @author : 최원돈
  111. * @desc : 치식 중앙 하단 설정
  112. * @---------------------------------------------------
  113. */
  114. function resetdet1bc()
  115. {
  116. var lb_chkblank = getdentiblank("lb", 1, 3) || getdentiblank("rb", 1, 3);
  117. setdenti(1, "lb", 1, 3, lb_chkblank); // 치식 1탭 좌측 상단 셋팅
  118. setdenti(1, "rb", 1, 3, lb_chkblank); // 치식 1탭 우측 상단 셋팅
  119. return;
  120. }
  121. /**
  122. * @---------------------------------------------------
  123. * @creat : 2011-01-01
  124. * @author : 최원돈
  125. * @desc : 치식 비공백을 체크한다.
  126. * @---------------------------------------------------
  127. */
  128. function getdentiNonBlank(ps_path, pi_from, pi_to)
  129. {
  130. for (var i = pi_from; i <= pi_to; i++)
  131. {
  132. if (model.getValue(sVIEWDENTALINFO_PATH + "/" + ps_path + i) != " ")
  133. {
  134. return true;
  135. }
  136. }
  137. return false;
  138. }
  139. /**
  140. * @---------------------------------------------------
  141. * @creat : 2011-01-01
  142. * @author : 최원돈
  143. * @desc : 치식 전체 비공백 여부 가져오기
  144. * @---------------------------------------------------
  145. */
  146. function getdentiNonBlankAll()
  147. {
  148. return getdentiNonBlank("lt", 1, 8) || getdentiNonBlank("lb", 1, 8)
  149. || getdentiNonBlank("rt", 1, 8) || getdentiNonBlank("rb", 1, 8);
  150. }
  151. /**
  152. * @---------------------------------------------------
  153. * @creat : 2011-01-01
  154. * @author : 최원돈
  155. * @desc : 치식 공백을 체크한다.
  156. * @---------------------------------------------------
  157. */
  158. function getdentiblank(ps_path, pi_from, pi_to)
  159. {
  160. for (var i = pi_from; i <= pi_to; i++)
  161. {
  162. if (model.getValue(sVIEWDENTALINFO_PATH + "/" + ps_path + i) == " ")
  163. {
  164. return true;
  165. }
  166. }
  167. return false;
  168. }
  169. /**
  170. * @---------------------------------------------------
  171. * @creat : 2011-01-01
  172. * @author : 최원돈
  173. * @desc : 치식 값을 설정한다.
  174. * @---------------------------------------------------
  175. */
  176. function setdenti(pi_page, ps_path, pi_from, pi_to, bp_chkyn)
  177. {
  178. if (bp_chkyn == null)
  179. {
  180. var lb_check = getdentiblank(ps_path, pi_from, pi_to);
  181. }
  182. else
  183. {
  184. var lb_check = bp_chkyn;
  185. }
  186. if (pi_page == 1)
  187. {
  188. for (var i = pi_from; i <= pi_to; i++)
  189. {
  190. if (lb_check)
  191. {
  192. model.setValue(sVIEWDENTALINFO_PATH + "/" + ps_path + i, i);
  193. document.controls.item("cp_det" + pi_page + ps_path + i).attribute("background-color") = "#9fb2f5";
  194. }
  195. else
  196. {
  197. model.setValue(sVIEWDENTALINFO_PATH + "/" + ps_path + i, " ");
  198. document.controls.item("cp_det" + pi_page + ps_path + i).attribute("background-color") = "#FFFFFF";
  199. }
  200. }
  201. }
  202. else
  203. {
  204. for (var i = pi_from; i <= pi_to; i++)
  205. {
  206. if (lb_check)
  207. {
  208. model.setValue(sVIEWDENTALINFO_PATH + "/" + ps_path + i, String.fromCharCode(i+64));
  209. document.controls.item("cp_det" + pi_page + ps_path + String.fromCharCode(i+96)).attribute("background-color") = "#9fb2f5";
  210. }
  211. else
  212. {
  213. model.setValue(sVIEWDENTALINFO_PATH + "/" + ps_path + i, " ");
  214. document.controls.item("cp_det" + pi_page + ps_path + String.fromCharCode(i+96)).attribute("background-color") = "#FFFFFF";
  215. }
  216. }
  217. }
  218. }
  219. /**
  220. * @---------------------------------------------------
  221. * @creat : 2011-01-01
  222. * @author : 최원돈
  223. * @desc : 치식 1탭 전체 셋팅
  224. * @---------------------------------------------------
  225. */
  226. function setdetall(pi_page, pi_enditem)
  227. {
  228. var lb_chkblank = getdentiblank("lt", 1, pi_enditem)
  229. || getdentiblank("lb", 1, pi_enditem)
  230. || getdentiblank("rt", 1, pi_enditem)
  231. || getdentiblank("rb", 1, pi_enditem);
  232. setdenti(pi_page, "lt", 1, pi_enditem, lb_chkblank); // 치식 1탭 좌측 상단 셋팅
  233. setdenti(pi_page, "lb", 1, pi_enditem, lb_chkblank); // 치식 1탭 좌측 하단 셋팅
  234. setdenti(pi_page, "rt", 1, pi_enditem, lb_chkblank); // 치식 1탭 우측 상단 셋팅
  235. setdenti(pi_page, "rb", 1, pi_enditem, lb_chkblank); // 치식 1탭 우측 하단 셋팅
  236. return;
  237. }
  238. /**
  239. * @---------------------------------------------------
  240. * @creat : 2011-01-01
  241. * @author : 최원돈
  242. * @desc : 치식탭 선택
  243. * @---------------------------------------------------
  244. */
  245. function selectBtnTab(pi_index)
  246. {
  247. if (pi_index == 0) //1번 탭 선택
  248. {
  249. btn_dentaltab1.attribute("background-image") = "../../../com/commonweb/images/tab_v_show.jpg";
  250. btn_dentaltab2.attribute("background-image") = "../../../com/commonweb/images/tab_v_hide.jpg";
  251. }
  252. else //2번 탭 선택
  253. {
  254. btn_dentaltab1.attribute("background-image") = "../../../com/commonweb/images/tab_v_hide.jpg";
  255. btn_dentaltab2.attribute("background-image") = "../../../com/commonweb/images/tab_v_show.jpg";
  256. }
  257. resetdet(); // 치식 전체 리셋
  258. sw_dentaltab.selectedIndex = pi_index;
  259. }
  260. /**
  261. * @---------------------------------------------------
  262. * @creat : 2011-01-01
  263. * @author : 최원돈
  264. * @desc : 치식 좌상 값 가져오기
  265. * @---------------------------------------------------
  266. */
  267. function getdetlt()
  268. {
  269. return model.getValue(sVIEWDENTALINFO_PATH + "/lt8")
  270. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/lt7")
  271. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/lt6")
  272. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/lt5")
  273. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/lt4")
  274. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/lt3")
  275. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/lt2")
  276. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/lt1");
  277. }
  278. /**
  279. * @---------------------------------------------------
  280. * @creat : 2011-01-01
  281. * @author : 최원돈
  282. * @desc : 치식 우상 값 가져오기
  283. * @---------------------------------------------------
  284. */
  285. function getdetrt()
  286. {
  287. return model.getValue(sVIEWDENTALINFO_PATH + "/rt1")
  288. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/rt2")
  289. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/rt3")
  290. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/rt4")
  291. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/rt5")
  292. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/rt6")
  293. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/rt7")
  294. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/rt8");
  295. }
  296. /**
  297. * @---------------------------------------------------
  298. * @creat : 2011-01-01
  299. * @author : 최원돈
  300. * @desc : 치식 좌하 값 가져오기
  301. * @---------------------------------------------------
  302. */
  303. function getdetlb()
  304. {
  305. return " " + model.getValue(sVIEWDENTALINFO_PATH + "/lb8")
  306. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/lb7")
  307. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/lb6")
  308. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/lb5")
  309. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/lb4")
  310. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/lb3")
  311. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/lb2")
  312. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/lb1");
  313. }
  314. /**
  315. * @---------------------------------------------------
  316. * @creat : 2011-01-01
  317. * @author : 최원돈
  318. * @desc : 치식 우하 값 가져오기
  319. * @---------------------------------------------------
  320. */
  321. function getdetrb()
  322. {
  323. return model.getValue(sVIEWDENTALINFO_PATH + "/rb1")
  324. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/rb2")
  325. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/rb3")
  326. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/rb4")
  327. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/rb5")
  328. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/rb6")
  329. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/rb7")
  330. + " " + model.getValue(sVIEWDENTALINFO_PATH + "/rb8");
  331. }
  332. /**
  333. * @---------------------------------------------------
  334. * @creat : 2011-01-01
  335. * @author : 최원돈
  336. * @desc : 치식 각각의 값을 설정한다.
  337. * @---------------------------------------------------
  338. */
  339. function setdetal()
  340. {
  341. var ls_ctrlid = event.target;
  342. var lo_ctrl = document.controls.item(ls_ctrlid);
  343. var li_ctrllen = ls_ctrlid.length;
  344. var ls_ctrlpath = "";
  345. if (ls_ctrlid.charAt(6) == "1")
  346. {
  347. ls_ctrlpath = sVIEWDENTALINFO_PATH + "/" + ls_ctrlid.substr(li_ctrllen - 3);
  348. }
  349. else
  350. {
  351. ls_ctrlpath = sVIEWDENTALINFO_PATH + "/" + ls_ctrlid.substr(li_ctrllen - 3, 2) + (ls_ctrlid.charAt(li_ctrllen-1).charCodeAt() - 96)
  352. }
  353. var ls_ctrlinst = model.getValue(ls_ctrlpath);
  354. if (ls_ctrlinst == " ")
  355. {
  356. model.setValue(ls_ctrlpath, lo_ctrl.text);
  357. lo_ctrl.attribute("background-color") = "#9fb2f5";
  358. }
  359. else
  360. {
  361. model.setValue(ls_ctrlpath, " ");
  362. lo_ctrl.attribute("background-color") = "#FFFFFF";
  363. }
  364. }
  365. /**
  366. * @---------------------------------------------------
  367. * @creat : 2011-01-01
  368. * @author : 최원돈
  369. * @desc : 저장을 표시한다.
  370. * @---------------------------------------------------
  371. */
  372. function setBtnSignsaveColor(pb_value)
  373. {
  374. if (pb_value)
  375. {
  376. btn_signsave.attribute("class") = "btn5_letter7";
  377. }
  378. else
  379. {
  380. btn_signsave.attribute("class") = "btn2_letter7";
  381. }
  382. }