SMMNW4701.js 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453
  1. /*
  2. (SMMNW04701.xrw - JScript )
  3. - Version :
  4. 1) : Ver.1.00.01
  5. - Desc : 피부욕창 팝업이미지 에서 사용하는 스크립트
  6. */
  7. /***************************************************************************************************************************************************/
  8. /****************************************************** 팝업 이미지에서 사용하는 펑션 시작 ************************************************************/
  9. /***************************************************************************************************************************************************/
  10. /**
  11. * @group :
  12. * @ver : 2007.06.18
  13. * @by : 정찬성
  14. * @---------------------------------------------------
  15. * @type : function
  16. * @access : public
  17. * @desc : 신체부위 체크값 풀때
  18. * @param :
  19. * @return :
  20. * @---------------------------------------------------
  21. */
  22. function fbodyunselect(){
  23. var selectValue2 = model.getValue("/root/main/cond/anteriogrup/anteriogruplist/select") ;
  24. var selectValueEtc = model.getValue("/root/main/cond/anteriogrup/anteriogruplist/select2") ;
  25. // alert("selectValue2 : " + selectValue2);
  26. /* 신체 부위 선택 필수 체크 시작 */
  27. if(selectValue2 == "" || selectValue2 == null ){
  28. /* 확인버튼만 있는 화면 시작 */
  29. model.setValue("/root/main/cond/positiongrup/positiongruplist/part","");
  30. model.setValue("/root/main/cond/positiongrup/positiongruplist/leftright","");//부위 선택이 바꿀때 left/right 초기화
  31. model.setValue("/root/main/cond/positiongrup/positiongruplist/seqforback","");//부위 선택이 바꿀때 seqforback 초기화
  32. button1.selected = true;
  33. model.toggle("case5");
  34. /* 확인버튼만 있는 화면 끝 */
  35. return;
  36. }
  37. /* 신체 부위 선택 필수 체크 끝 */
  38. }
  39. /**
  40. * @group :
  41. * @ver : 2007.06.18
  42. * @by : 정찬성
  43. * @---------------------------------------------------
  44. * @type : function
  45. * @access : public
  46. * @desc : 그리드내에 버튼을 클릭했을때, 어떤 버튼인지 체크
  47. * @param :
  48. * @return :
  49. * @---------------------------------------------------
  50. */
  51. function fbodyselect(){
  52. var value = model.getValue("/root/main/cond/anteriogrup/anteriogruplist/select");
  53. var valueArray = value.split(" ");
  54. model.setValue("/root/main/cond/anteriogrup/anteriogruplist/select", valueArray[valueArray.length - 1]);
  55. group1.refresh();
  56. input1.disabled = 'true';
  57. var selectValue = model.getValue("/root/main/cond/anteriogrup/anteriogruplist/select") ;
  58. model.setValue("/root/main/cond/anteriogrup/anteriogruplist/select2",""); //기타 체크박스 초기화
  59. model.setValue("/root/main/cond/positiongrup/positiongruplist/part",selectValue);//부위 선택이 바꿀때 선택부위 셋팅
  60. model.setValue("/root/main/cond/positiongrup/positiongruplist/leftright","");//부위 선택이 바꿀때 left/right 초기화
  61. model.setValue("/root/main/cond/positiongrup/positiongruplist/seqforback","");//부위 선택이 바꿀때 seqforback 초기화
  62. model.refresh();
  63. if(
  64. selectValue == "(anterior)face"
  65. || selectValue == "(anterior)chin"
  66. || selectValue == "(anterior)neck"
  67. || selectValue == "(anterior)chest"
  68. || selectValue == "(anterior)abdomen"
  69. || selectValue == "(posterior)occipital"
  70. || selectValue == "(posterior)spinous-process"
  71. || selectValue == "(posterior)coccyx"
  72. || selectValue == "(posterior)sacrum" //!!!
  73. ){
  74. /* 확인버튼만 있는 화면 시작 */
  75. button1.selected = true;
  76. model.toggle("case5");
  77. /* 확인버튼만 있는 화면 끝 */
  78. } else if(
  79. selectValue == "(anterior)thigh"
  80. || selectValue == "(posterior)thigh"
  81. || selectValue == "(anterior)ear"
  82. || selectValue == "(anterior)shoulder"
  83. || selectValue == "(anterior)upper-arm"
  84. || selectValue == "(anterior)lower-arm"
  85. || selectValue == "(anterior)wrist"
  86. || selectValue == "(anterior)leg"
  87. || selectValue == "(anterior)ankle"
  88. || selectValue == "(anterior)inguinal"
  89. || selectValue == "(anterior)malleolus"
  90. || selectValue == "(anterior)knee"
  91. || selectValue == "(posterior)inguinal"
  92. || selectValue == "(posterior)scapular"
  93. || selectValue == "(posterior)elbow"
  94. || selectValue == "(posterior)iliac-crest"
  95. || selectValue == "(posterior)trochant"
  96. || selectValue == "(posterior)ischium"
  97. || selectValue == "(posterior)calf"
  98. || selectValue == "(posterior)heel"
  99. || selectValue == "(posterior)buttock"
  100. ) {
  101. /* 오른쪽/왼쪽 선택화면 시작 */
  102. button18.selected = true;
  103. model.toggle("case1");
  104. /* 오른쪽/왼쪽 선택화면 끝 */
  105. } else if(
  106. selectValue == "(anterior)finger"
  107. || selectValue == "(anterior)toe"
  108. ){
  109. /* 오른쪽/왼쪽 손/발가락 선택화면 시작 */
  110. button2.selected = true;
  111. model.toggle("case2");
  112. /* 오른쪽/왼쪽 손/발가락 선택화면 끝 */
  113. } else if(
  114. selectValue == "(anterior)hand"
  115. ){
  116. /* 오른쪽/왼쪽 손바닥/손등 선택화면 시작 */
  117. button3.selected = true;
  118. model.toggle("case3");
  119. /* 오른쪽/왼쪽 손바닥/손등 선택화면 끝 */
  120. } else if(
  121. selectValue == "(anterior)foot"
  122. ){
  123. /* 오른쪽/왼쪽 발바닥/발등 선택화면 시작 */
  124. button4.selected = true;
  125. model.toggle("case4");
  126. /* 오른쪽/왼쪽 발바닥/발등 선택화면 끝 */
  127. }
  128. model.refresh();
  129. }
  130. /**
  131. * @group :
  132. * @ver : 2007.06.18
  133. * 2008.06.04 dhkim 수정
  134. * @by : 정찬성
  135. * @---------------------------------------------------
  136. * @type : function
  137. * @access : public
  138. * @desc : 팝업창 Init
  139. * @param :
  140. * @return :
  141. * @---------------------------------------------------
  142. */
  143. function fPopinit(){
  144. button1.selected = true;
  145. model.toggle("case5");
  146. if( window.opener != null && opener.window.javascript.getParameter("partall") != "" ){
  147. var partall = opener.window.javascript.getParameter("partall");
  148. var valueArray = partall.split(",");
  149. model.setValue("/root/main/cond/anteriogrup/anteriogruplist/select",valueArray[0]);//신체부위 선택
  150. model.setValue("/root/main/cond/positiongrup/positiongruplist/part",valueArray[0]);//선택부위 명칭 등록
  151. model.setValue("/root/main/cond/positiongrup/positiongruplist/leftright",valueArray[1]);//leftrigth
  152. model.setValue("/root/main/cond/positiongrup/positiongruplist/seqforback",valueArray[2]);//마디/바닥/등 선택
  153. model.refresh();
  154. if(
  155. valueArray[0] == "(anterior)face"
  156. || valueArray[0] == "(anterior)chin"
  157. || valueArray[0] == "(anterior)neck"
  158. || valueArray[0] == "(anterior)chest"
  159. || valueArray[0] == "(anterior)abdomen"
  160. || valueArray[0] == "(posterior)occipital"
  161. || valueArray[0] == "(posterior)spinous-process"
  162. || valueArray[0] == "(posterior)coccyx"
  163. || valueArray[0] == "(posterior)sacrum"
  164. ){
  165. /* 확인버튼만 있는 화면 시작 */
  166. button1.selected = true;
  167. model.toggle("case5");
  168. /* 확인버튼만 있는 화면 끝 */
  169. } else if(
  170. valueArray[0] == "(anterior)thigh"
  171. || valueArray[0] == "(posterior)thigh"
  172. || valueArray[0] == "(anterior)ear"
  173. || valueArray[0] == "(anterior)shoulder"
  174. || valueArray[0] == "(anterior)upper-arm"
  175. || valueArray[0] == "(anterior)lower-arm"
  176. || valueArray[0] == "(anterior)wrist"
  177. || valueArray[0] == "(anterior)leg"
  178. || valueArray[0] == "(anterior)ankle"
  179. || valueArray[0] == "(anterior)malleolus"
  180. || valueArray[0] == "(anterior)knee"
  181. || valueArray[0] == "(posterior)inguinal"
  182. || valueArray[0] == "(posterior)scapular"
  183. || valueArray[0] == "(posterior)elbow"
  184. || valueArray[0] == "(posterior)iliac-crest"
  185. || valueArray[0] == "(posterior)trochant"
  186. || valueArray[0] == "(posterior)ischium"
  187. || valueArray[0] == "(posterior)calf"
  188. || valueArray[0] == "(posterior)heel"
  189. || valueArray[0] == "(posterior)buttock"
  190. ) {
  191. /* 오른쪽/왼쪽 선택화면 시작 */
  192. button18.selected = true;
  193. model.toggle("case1");
  194. /* 오른쪽/왼쪽 선택화면 끝 */
  195. } else if(
  196. valueArray[0] == "(anterior)finger"
  197. || valueArray[0] == "(anterior)toe"
  198. ){
  199. /* 오른쪽/왼쪽 손/발가락 선택화면 시작 */
  200. button2.selected = true;
  201. model.toggle("case2");
  202. /* 오른쪽/왼쪽 손/발가락 선택화면 끝 */
  203. } else if(
  204. valueArray[0] == "(anterior)hand"
  205. ){
  206. /* 오른쪽/왼쪽 손바닥/손등 선택화면 시작 */
  207. button3.selected = true;
  208. model.toggle("case3");
  209. /* 오른쪽/왼쪽 손바닥/손등 선택화면 끝 */
  210. } else if(
  211. valueArray[0] == "(anterior)foot"
  212. ){
  213. /* 오른쪽/왼쪽 발바닥/발등 선택화면 시작 */
  214. button4.selected = true;
  215. model.toggle("case4");
  216. /* 오른쪽/왼쪽 발바닥/발등 선택화면 끝 */
  217. }
  218. } else if( window.opener != null && opener.window.javascript.getParameter("partall") == "" ) {
  219. button1.selected = true;
  220. model.toggle("case5");
  221. }
  222. //이미저장된 데이터이면 확인버튼을 hidden처리한다.
  223. var editable = opener.window.javascript.getParameter('editable');
  224. if(editable == 'f'){
  225. button1.attribute('visibility') = 'hidden';
  226. button2.attribute('visibility') = 'hidden';
  227. button3.attribute('visibility') = 'hidden';
  228. button4.attribute('visibility') = 'hidden';
  229. button18.attribute('visibility') = 'hidden';
  230. }else if(editable == 't'){
  231. button1.attribute('visibility') = 'visible';
  232. button2.attribute('visibility') = 'visible';
  233. button3.attribute('visibility') = 'visible';
  234. button4.attribute('visibility') = 'visible';
  235. button18.attribute('visibility') = 'visible';
  236. }
  237. //readonly상태일때 모든 checkbox를 disabled처리한다.
  238. if(editable == 'f')
  239. group1.disabled = true;
  240. else if(editable == 't')
  241. group1.disabled = false;
  242. }
  243. /**
  244. * @group :
  245. * @ver : 2007.06.18
  246. * : 2008.05.28 dhkim 수정
  247. * @by : 정찬성
  248. * @------------------------------------------------------------
  249. * @type : function
  250. * @access : public
  251. * @param :
  252. * @return :
  253. * @desc : 욕창 부위 선택 팝업창 확인버튼 누를때 호출 되는 펑션이다.
  254. * [case 종류] - 체크박스를 선택 할 때마다 아래 case별로 화면이 바뀜
  255. * case 1 : left, right만 선택
  256. * case 2 : left, right, 방향 선택(손가락, 발가락)
  257. * case 3 : left, right, 손등,손바닥 선택
  258. * case 4 : left, right, 발등, 발바닥 선택
  259. * case 5 : 확인버튼만 있음
  260. * @------------------------------------------------------------
  261. */
  262. function fPopClose(){
  263. var xAnterioGrupPath = '/root/main/cond/anteriogrup/anteriogruplist'; //발생 부위
  264. var xPositionGrupPath = '/root/main/cond/positiongrup/positiongruplist'; //발생 위치 (left, right, 손발등, 손발바닥, 손발가락)
  265. //선택한 체크박스 값
  266. var selectValue2 = model.getValue(xAnterioGrupPath + "/select") ;
  267. var part = model.getValue(xPositionGrupPath + "/part");
  268. var leftright = model.getValue(xPositionGrupPath + "/leftright");
  269. var seqforback = model.getValue(xPositionGrupPath + "/seqforback");
  270. var selectValueEtc = model.getValue(xAnterioGrupPath + "/select2") ;
  271. //선택 안했을때 리턴시킴
  272. if(selectValue2 == "" || selectValue2 == null ){
  273. if(selectValueEtc == "" || selectValueEtc == null) {
  274. messageBox("신체 부위를 ", "C002");
  275. model.setValue(xPositionGrupPath + "/leftright", "");
  276. model.setValue(xPositionGrupPath + "/seqforback","");
  277. button1.selected = true;
  278. model.toggle("case5");
  279. return;
  280. } else {
  281. model.setValue(xPositionGrupPath + "/leftright", "");
  282. model.setValue(xPositionGrupPath + "/seqforback","");
  283. }
  284. }
  285. //위치정보 필요없는 부위(검정색)
  286. if( part == "(anterior)face" || part == "(anterior)chin" || part == "(anterior)neck"
  287. || part == "(anterior)chest" || part == "(anterior)abdomen" || part == "(posterior)occipital"
  288. || part == "(posterior)spinous-process" || part == "(posterior)coccyx"|| part == "(posterior)sacrum" ) {
  289. model.setValue(xPositionGrupPath + "/leftright", "");
  290. model.setValue(xPositionGrupPath + "/seqforback","");
  291. // 신체 부위 선택시 추가 선택부분 체크
  292. if(leftright != "" || seqforback != ""){
  293. messageBox("신체 부위 추가선택 항목은 ", "I001");
  294. return;
  295. }
  296. }
  297. //left, right 선택해야 하는 부위(초록색)
  298. else if( part == "(anterior)thigh" || part == "(posterior)thigh" || part == "(anterior)ear" || part == "(anterior)shoulder"
  299. || part == "(anterior)upper-arm" || part == "(anterior)lower-arm" || part == "(anterior)wrist" || part == "(anterior)leg"
  300. || part == "(anterior)ankle" || part == "(anterior)malleolus" || part == "(anterior)knee" || part == "(posterior)inguinal"
  301. || part == "(posterior)scapular"|| part == "(posterior)elbow" || part == "(posterior)iliac-crest"
  302. || part == "(posterior)trochant" || part == "(posterior)ischium" || part == "(posterior)buttock"
  303. || part == "(posterior)calf" || part == "(posterior)heel" ) {
  304. model.setValue(xPositionGrupPath + "/seqforback","");
  305. // 신체 부위 선택시 추가 선택부분 체크
  306. if(leftright == "" || leftright.length == 0 ){
  307. messageBox("Left/Right를 ", "C002");
  308. return;
  309. }
  310. }
  311. //left, right, 손발 번호 선택 (빨간색)
  312. else if(part == "(anterior)finger" || part == "(anterior)toe"){
  313. /* 신체 부위 선택시 추가 선택부분 체크 시작 */
  314. if(leftright == "" || leftright.length == 0 ){
  315. messageBox("Left/Right를 ", "C002");
  316. return;
  317. } else if ( seqforback == "" || seqforback.length == 0 ) {
  318. messageBox("손/발가락 번호를 ", "C002");
  319. return;
  320. }
  321. }
  322. //left, right, 손발바닥, 손발등 선택(빨간색)
  323. else if(part == "(anterior)hand" || part == "(anterior)foot"){
  324. /* 신체 부위 선택시 추가 선택부분 체크 시작 */
  325. if(leftright == "" || leftright.length == 0 ){
  326. messageBox("Left/Right를 ", "C002");
  327. return;
  328. } else if ( seqforback == "" || seqforback.length == 0 ) {
  329. messageBox("손/발바닥, 손/발등을 ", "C002");
  330. return;
  331. }
  332. }
  333. model.setValue(xPositionGrupPath + "/part", selectValue2);
  334. model.refresh();
  335. if( window.opener != null ){
  336. var retStr = part;
  337. if(leftright != null && leftright != ''){
  338. // retStr += ',' + leftright;
  339. retStr += leftright;
  340. }
  341. if(seqforback != null && seqforback != ''){
  342. // retStr += ',' + seqforback;
  343. retStr += seqforback;
  344. }
  345. opener.javascript.setParameter("part", part);
  346. opener.javascript.setParameter("leftright", leftright);
  347. opener.javascript.setParameter("seqforback",seqforback);
  348. opener.javascript.setParameter("caseno", switch1.selectedIndex);
  349. opener.javascript.setParameter('retStr', retStr);
  350. window.close();
  351. }
  352. }
  353. /***************************************************************************************************************************************************/
  354. /****************************************************** 팝업 이미지에서 사용하는 펑션 끝 ************************************************************/
  355. /***************************************************************************************************************************************************/