SMMNN020.js 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225
  1. /*
  2. APGAR score 평가(SPMNN02000_APGAR score 평가.xrw - JScript )
  3. - Version :
  4. 1) : Ver.1.00.01
  5. */
  6. var sSCORELIST = "/root/main/scorelists/scorelist";
  7. var sSCORESUM = "/root/main/scoresum/scorelist";
  8. /**
  9. * @group :
  10. * @ver : 2007.06.05
  11. * @by : 최경용
  12. * @---------------------------------------------------
  13. * @type : function
  14. * @access : public
  15. * @desc : A/s 초기값 셋팅 및 초기조회
  16. * @param :
  17. * @param :
  18. * @return :
  19. * @---------------------------------------------------
  20. */
  21. function fInitialize(){
  22. grd_assum.rowHidden(0) = 1;
  23. var apgarscorespec = opener.javascript.getParameter("SPMNN02000_Papgarscorespec");
  24. if(apgarscorespec != ""){
  25. instance1.loadXML( "<?xml version='1.0' encoding='euc-kr'?> <root>" + apgarscorespec + instance1.selectNodesXml("/root/properties") +"</root>");
  26. model.refresh();
  27. }
  28. fCellColorChange();
  29. }
  30. /**
  31. * @group :
  32. * @ver : 2007.06.05
  33. * @by : 최경용
  34. * @---------------------------------------------------
  35. * @type : function
  36. * @access : public
  37. * @desc : 그리드 셀 Color 변경
  38. * @param :
  39. * @param :
  40. * @return :
  41. * @---------------------------------------------------
  42. */
  43. function fCellColorChange(){
  44. grd_aslist.rowstyle(0, "all", "border-bottom-width") = "2px";
  45. grd_aslist.rowstyle(3, "all", "border-bottom-width") = "2px";
  46. grd_aslist.rowstyle(6, "all", "border-bottom-width") = "2px";
  47. grd_aslist.rowstyle(9, "all", "border-bottom-width") = "2px";
  48. grd_aslist.rowstyle(12, "all", "border-bottom-width") = "2px";
  49. grd_aslist.rowstyle(0, "all", "border-bottom-color") = "#000000";
  50. grd_aslist.rowstyle(3, "all", "border-bottom-color") = "#000000";
  51. grd_aslist.rowstyle(6, "all", "border-bottom-color") = "#000000";
  52. grd_aslist.rowstyle(9, "all", "border-bottom-color") = "#000000";
  53. grd_aslist.rowstyle(12, "all", "border-bottom-color") = "#000000";
  54. grd_aslist.cellstyle("border-bottom-width",1,0,1,0) = "2px";
  55. grd_aslist.cellstyle("border-bottom-width",4,0,4,0) = "2px";
  56. grd_aslist.cellstyle("border-bottom-width",7,0,7,0) = "2px";
  57. grd_aslist.cellstyle("border-bottom-width",10,0,10,0) = "2px";
  58. grd_aslist.cellstyle("border-bottom-color",1,0,1,0) = "#000000";
  59. grd_aslist.cellstyle("border-bottom-color",4,0,4,0) = "#000000";
  60. grd_aslist.cellstyle("border-bottom-color",7,0,7,0) = "#000000";
  61. grd_aslist.cellstyle("border-bottom-color",10,0,10,0) = "#000000";
  62. grd_aslist.cellstyle("border-right-width",0,0,15,4) = "1px";
  63. grd_aslist.cellstyle("border-right-color",0,0,15,4) = "#000000";
  64. grd_assum.cellstyle("border-right-width",0,0,1,2) = "1px";
  65. grd_assum.cellstyle("border-right-color",0,0,1,2) = "#000000";
  66. grd_aslist.cellstyle("background-color",1,3,1,4) = "#CCECFF";
  67. grd_aslist.cellstyle("background-color",2,3,2,4) = "#FFFF99";
  68. grd_aslist.cellstyle("background-color",3,3,3,4) = "#CCFFCC";
  69. grd_aslist.cellstyle("background-color",4,3,4,4) = "#CCECFF";
  70. grd_aslist.cellstyle("background-color",5,3,5,4) = "#FFFF99";
  71. grd_aslist.cellstyle("background-color",6,3,6,4) = "#CCFFCC";
  72. grd_aslist.cellstyle("background-color",7,3,7,4) = "#CCECFF";
  73. grd_aslist.cellstyle("background-color",8,3,8,4) = "#FFFF99";
  74. grd_aslist.cellstyle("background-color",9,3,9,4) = "#CCFFCC";
  75. grd_aslist.cellstyle("background-color",10,3,10,4) = "#CCECFF";
  76. grd_aslist.cellstyle("background-color",11,3,11,4) = "#FFFF99";
  77. grd_aslist.cellstyle("background-color",12,3,12,4) = "#CCFFCC";
  78. grd_aslist.cellstyle("background-color",13,3,13,4) = "#CCECFF";
  79. grd_aslist.cellstyle("background-color",14,3,14,4) = "#FFFF99";
  80. grd_aslist.cellstyle("background-color",15,3,15,4) = "#CCFFCC";
  81. grd_aslist.refresh();
  82. grd_assum.refresh();
  83. }
  84. /**
  85. * @group :
  86. * @ver : 2007.06.05
  87. * @by : 최경용
  88. * @---------------------------------------------------
  89. * @type : function
  90. * @access : public
  91. * @desc : APGAR score 계산
  92. * @param :
  93. * @param :
  94. * @return :
  95. * @---------------------------------------------------
  96. */
  97. function fCalculate(){
  98. var rows = grd_aslist.rows;//전체 항목 갯수 저장
  99. var cur_row = (parseInt(grd_aslist.row / 3.001) * 3) + 1;//선택된 항목(동일 항목 찾기 위해..3항목씩 묶음)
  100. var scorenum1 = 0;//1분 항목 점수 저장
  101. var scorenum5 = 0;//5분 항목 점수 저장
  102. var minute1 = 0;//1분 항목 점수 누적
  103. var minute5 = 0;//5분 항목 점수 누적
  104. var cnt1 = 0;//1분 항목 갯수 체크
  105. var cnt5 = 0;//5분 항목 갯수 체크
  106. var message = "";
  107. //계산 및 선택 항목 갯수 구하기
  108. for(var i = 1; i<= rows; i++){
  109. if(model.getValue(sSCORELIST + "[" + i + "]/minute1") == "true"){
  110. scorenum1 = model.getValue(sSCORELIST + "[" + i + "]/scorenum")
  111. minute1 += parseInt(scorenum1);
  112. cnt1++;
  113. }
  114. if(model.getValue(sSCORELIST + "[" + i + "]/minute5") == "true"){
  115. scorenum5 = model.getValue(sSCORELIST + "[" + i + "]/scorenum")
  116. minute5 += parseInt(scorenum5);
  117. cnt5++;
  118. }
  119. }
  120. //선택되지 않은 항목이 있는 경우 메시지 아니면 화면에 보여주기
  121. if(cnt1 == 0 || cnt1 == 5 && cnt5 == 0 || cnt5 == 5){
  122. if(cnt1 == 0){
  123. model.setValue(sSCORESUM + "/minute1", "");
  124. }else{
  125. model.setValue(sSCORESUM + "/minute1", minute1);
  126. }
  127. if(cnt5 == 0){
  128. model.setValue(sSCORESUM + "/minute5", "");
  129. }else{
  130. model.setValue(sSCORESUM + "/minute5", minute5);
  131. }
  132. }else{
  133. for(var j = 2; j <= rows; j){
  134. if(model.getValue(sSCORELIST + "[" + (j - 1) + "]/minute1") != "true" &&
  135. model.getValue(sSCORELIST + "[" + j + "]/minute1") != "true" &&
  136. model.getValue(sSCORELIST + "[" + (j + 1) + "]/minute1") != "true"){
  137. message += model.getValue(sSCORELIST + "[" + j + "]/scoreitem") + "1분, ";
  138. }
  139. if(model.getValue(sSCORELIST + "[" + (j - 1) + "]/minute5") != "true" &&
  140. model.getValue(sSCORELIST + "[" + j + "]/minute5") != "true" &&
  141. model.getValue(sSCORELIST + "[" + (j + 1) + "]/minute5") != "true"){
  142. message += model.getValue(sSCORELIST + "[" + j + "]/scoreitem") + "5분, ";
  143. }
  144. j = j + 3;
  145. }
  146. message = message.substr(0,message.length-2);
  147. messageBox(message + " 항목을","C002");
  148. }
  149. model.refresh();
  150. }
  151. /**
  152. * @group :
  153. * @ver : 2007.06.05
  154. * @by : 최경용
  155. * @---------------------------------------------------
  156. * @type : function
  157. * @access : public
  158. * @desc : APGAR score 1분, 5분 선택시 체크
  159. * @param :
  160. * @param :
  161. * @return :
  162. * @---------------------------------------------------
  163. */
  164. function fSelectCheckBox(){
  165. var col = grd_aslist.col;//선택한 col 저장
  166. var row = grd_aslist.row;//선택한 row 저장
  167. //선택된 항목(동일 항목 찾기 위해..3항목씩 묶음)
  168. var cur_row = (parseInt(grd_aslist.row / 3.001) * 3) + 1;
  169. //선택되지 않은 다른 항목 체크 해제
  170. for(var i = cur_row; i< cur_row + 3; i++){
  171. if(i != row && col == 3){//1분 체크시
  172. model.setValue(sSCORELIST + "[" + i + "]/minute1", "false");
  173. }
  174. if(i != row && col == 4){//5분 체크시
  175. model.setValue(sSCORELIST + "[" + i + "]/minute5", "false");
  176. }
  177. }
  178. model.refresh();
  179. grd_aslist.rebuild();
  180. }
  181. /**
  182. * @group :
  183. * @ver : 2007.06.05
  184. * @by : 최경용
  185. * @---------------------------------------------------
  186. * @type : function
  187. * @access : public
  188. * @desc : APGAR score 저장 후 창 닫기
  189. * @param :
  190. * @param :
  191. * @return :
  192. * @---------------------------------------------------
  193. */
  194. function fSaveAPGARscore(){
  195. var xmldata = instance1.selectNodesXml("/root/main");
  196. opener.javascript.setParameter("SPMNN02000_apgarscore1", model.getValue(sSCORESUM + "/minute1"));
  197. opener.javascript.setParameter("SPMNN02000_apgarscore5", model.getValue(sSCORESUM + "/minute5"));
  198. opener.javascript.setParameter("SPMNN02000_apgarscorespec", xmldata);
  199. model.close();
  200. }