SMMNN00900.js 9.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295
  1. /*
  2. 적출물 관리대장(SMMNN00900_적출물 관리대장.xrw - JScript )
  3. - Version :
  4. 1) : Ver.1.00.01
  5. */
  6. var xMainAvulsionListPath = "/root/main/avulsioninfo/avulsionlist";
  7. var xHiddenAvulsionListPath = "/root/hidden/avulsioninfo/avulsionlist";
  8. /**
  9. * @group :
  10. * @ver : 2007.08.20
  11. * @by : 최경용
  12. * @---------------------------------------------------
  13. * @type : function
  14. * @access : public
  15. * @desc : 초기화 작업을 합니다.
  16. * @param :
  17. * @param :
  18. * @return :
  19. * @---------------------------------------------------
  20. */
  21. function fInitialize(){
  22. //처리장소
  23. fGetNursHardCdInfo("'153'", getCurrentDate()); //CareCom.js
  24. model.setValue("/root/main/cond/fromdd", getCurrentDate());
  25. model.setValue("/root/main/cond/todd", getCurrentDate());
  26. addComboItem("rdo_avulsionplce", "전체", "00", "above");
  27. model.setValue("/root/main/cond/avulsionplce", "00");
  28. model.refresh();
  29. grd_avulsion.removeRow(true);
  30. fGetAvulsion();
  31. }
  32. /**
  33. * @group :
  34. * @ver : 2007.08.20
  35. * @by : 최경용
  36. * @---------------------------------------------------
  37. * @type : function
  38. * @access : public
  39. * @desc : 적출물 내역을 조회한다.
  40. * @param :
  41. * @param :
  42. * @return :
  43. * @---------------------------------------------------
  44. */
  45. function fGetAvulsion(){
  46. model.removeNode("/root/send");
  47. model.makeNode("/root/send/reqdata");
  48. model.copyNode("/root/send/reqdata", "/root/main/cond");
  49. submit("TRMNN00901");
  50. fAvulsionDataCtrl();
  51. }
  52. /**
  53. * @group :
  54. * @ver : 2007.08.20
  55. * @by : 최경용
  56. * @---------------------------------------------------
  57. * @type : function
  58. * @access : public
  59. * @desc : 조회된 적출물 내역을 환자별로 합하여 리스트에 보여준다.
  60. * @param :
  61. * @param :
  62. * @return :
  63. * @---------------------------------------------------
  64. */
  65. function fAvulsionDataCtrl(){
  66. var nodecnt = getNodesetCount(xMainAvulsionListPath);
  67. var avulsionweig = 0;
  68. var avulsionheig = 0;
  69. var avulsionflag = "";
  70. var avulsioncnt = 0;
  71. var inst_cnt = 1;
  72. var recyn = "";
  73. var seqno = "";
  74. var firecnt = 0;
  75. var fireweig = 0;
  76. var biopsycnt = 0;
  77. var biopsyweig = 0;
  78. var etccnt = 0;
  79. var etcweig = 0;
  80. for(var i = 1; i <= nodecnt; i++){
  81. recyn = model.getValue("/root/main/avulsioninfo/avulsionlist[" + i + "]/recyn");
  82. avulsionflag = model.getValue("/root/main/avulsioninfo/avulsionlist[" + i + "]/avulsionflag");
  83. avulsionweig += Number(model.getValue("/root/main/avulsioninfo/avulsionlist[" + i + "]/avulsionweig"));
  84. avulsionheig += Number(model.getValue("/root/main/avulsioninfo/avulsionlist[" + i + "]/avulsionheig"));
  85. if(avulsionflag == "1" ){
  86. firecnt++;
  87. fireweig += Number(model.getValue("/root/main/avulsioninfo/avulsionlist[" + i + "]/avulsionweig"));
  88. }else if(avulsionflag == "2" ){
  89. biopsycnt++;
  90. biopsyweig += Number(model.getValue("/root/main/avulsioninfo/avulsionlist[" + i + "]/avulsionweig"));
  91. }else if(avulsionflag == "3" ){
  92. etccnt++;
  93. etcweig += Number(model.getValue("/root/main/avulsioninfo/avulsionlist[" + i + "]/avulsionweig"));
  94. }else{}
  95. if ( recyn == "N" ){
  96. grd_avulsion.rowstyle(i,"data","background-color") = "#ffff88";
  97. } else {
  98. grd_avulsion.rowstyle(i,"data","background-color") = "#FFFFFF";
  99. }
  100. }
  101. model.makeValue("/root/main/avulsioninfo/totalinfo/totalcnt", firecnt + biopsycnt + etccnt);
  102. model.makeValue("/root/main/avulsioninfo/totalinfo/totalweig", fireweig + biopsyweig + etcweig);
  103. model.makeValue("/root/main/avulsioninfo/totalinfo/firecnt", firecnt);
  104. model.makeValue("/root/main/avulsioninfo/totalinfo/fireweig", fireweig);
  105. model.makeValue("/root/main/avulsioninfo/totalinfo/biopsycnt", biopsycnt);
  106. model.makeValue("/root/main/avulsioninfo/totalinfo/biopsyweig", biopsyweig);
  107. model.makeValue("/root/main/avulsioninfo/totalinfo/etccnt", etccnt);
  108. model.makeValue("/root/main/avulsioninfo/totalinfo/etcweig", etcweig);
  109. model.refresh();
  110. }
  111. /**
  112. * @group :
  113. * @ver : 2007.08.20
  114. * @by : 최경용
  115. * @---------------------------------------------------
  116. * @type : function
  117. * @access : public
  118. * @desc : 적출물 내역 중 동일 산모의 적출물인지를 비교한다.
  119. * @param : index
  120. * @param :
  121. * @return : true/false
  122. * @---------------------------------------------------
  123. */
  124. function fCompareYN(i){
  125. if(model.getValue(xHiddenAvulsionListPath + "[" + i + "]/pid") == model.getValue(xHiddenAvulsionListPath +"[" + (i + 1)+ "]/pid") &&
  126. model.getValue(xHiddenAvulsionListPath + "[" + i + "]/indd") == model.getValue(xHiddenAvulsionListPath +"[" + (i + 1)+ "]/indd") &&
  127. model.getValue(xHiddenAvulsionListPath + "[" + i + "]/cretno") == model.getValue(xHiddenAvulsionListPath +"[" + (i + 1)+ "]/cretno") &&
  128. model.getValue(xHiddenAvulsionListPath + "[" + i + "]/avulsionflag") == model.getValue(xHiddenAvulsionListPath +"[" + (i + 1)+ "]/avulsionflag") &&
  129. model.getValue(xHiddenAvulsionListPath + "[" + i + "]/removedd") == model.getValue(xHiddenAvulsionListPath +"[" + (i + 1)+ "]/removedd")){
  130. return true;
  131. }else{
  132. return false;
  133. }
  134. }
  135. /**
  136. * @group :
  137. * @ver : 2007.08.20
  138. * @by : 최경용
  139. * @---------------------------------------------------
  140. * @type : function
  141. * @access : public
  142. * @desc : 적출물 내역 Excel파일로 저장
  143. * @param : grid 명
  144. * @param :
  145. * @return :
  146. * @---------------------------------------------------
  147. */
  148. function fSaveExcel(){
  149. grd_avulsion.gridToInstance();
  150. file = window.fileDialog("save","","true","","xls","All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
  151. if(file != "") {
  152. grd_avulsion.saveExcel(file);
  153. }
  154. }
  155. /**
  156. * @group :
  157. * @ver : 2007.08.20
  158. * @by : 최경용
  159. * @---------------------------------------------------
  160. * @type : function
  161. * @access : public
  162. * @desc : 적출물 내역 출력
  163. * @param : grid 명
  164. * @param :
  165. * @return :
  166. * @---------------------------------------------------
  167. */
  168. function fClickPrint(){
  169. grd_avulsion.gridToInstance();
  170. model.removenode("/root/send/printdata");
  171. //send 재구성
  172. model.makeValue("/root/send/printdata","");
  173. model.copynode("/root/send/printdata", "/root/main");
  174. exeReportPreview("RPMNN00901", "XMLSTR");
  175. }
  176. /**
  177. * @group :
  178. * @ver : 2007.08.20
  179. * @by : 최경용
  180. * @---------------------------------------------------
  181. * @type : function
  182. * @access : public
  183. * @desc : 적출물 내역을 저장한다.
  184. * @param :
  185. * @param :
  186. * @return :
  187. * @---------------------------------------------------
  188. */
  189. function fClickSave(){
  190. grd_avulsion.gridToInstance();
  191. model.removeNodeset("/root/send/savedata/avulsionlist");
  192. model.removeNodeset("/root/send/savedata/cond");
  193. model.makeNode("/root/send/savedata");
  194. var nodecnt = getNodesetCount("/root/main/avulsioninfo/avulsionlist");
  195. var changecnt = 0;
  196. for(var i = 1; i <= nodecnt; i++){
  197. if(grd_avulsion.rowStatus(i) == 2){
  198. model.duplicate("/root/send/savedata", "/root/main/avulsioninfo/avulsionlist[" + i + "]");
  199. changecnt++;
  200. }
  201. }
  202. if(changecnt > 0){
  203. model.duplicate("/root/send/savedata", "/root/main/cond");
  204. }else{
  205. messageBox("저장할 내용이","I004");
  206. }
  207. submit("TXMNN00901");
  208. fAvulsionDataCtrl();
  209. }
  210. /**
  211. * @group :
  212. * @ver : 2007.07.25
  213. * @by : 최경용
  214. * @---------------------------------------------------
  215. * @type : function
  216. * @access : public
  217. * @desc : 분만실 처치장부 수정(팝업).
  218. * @param :
  219. * @param :
  220. * @return :
  221. * @---------------------------------------------------
  222. */
  223. function fModifyMedicalInfo(){
  224. if(grd_avulsion.row > 0){
  225. grd_avulsion.gridToInstance();
  226. model.removeNode("/root/hidden/avulsioninfo/avulsionlist");
  227. model.makeNode("/root/hidden/avulsioninfo/avulsionlist");
  228. model.copyNode("/root/hidden/avulsioninfo/avulsionlist","/root/main/avulsioninfo/avulsionlist[" + grd_avulsion.row + "]");
  229. model.makeValue("/root/hidden/avulsioninfo/avulsionlist/medicaldd", model.getValue("/root/main/avulsioninfo/avulsionlist[" + grd_avulsion.row + "]/dlivdd"));
  230. model.makeValue("/root/hidden/avulsioninfo/avulsionlist/medicaltm", model.getValue("/root/main/avulsioninfo/avulsionlist[" + grd_avulsion.row + "]/dlivtm"));
  231. var medicalinfo = model.instances(0).selectNodes("/root/hidden/avulsioninfo/avulsionlist");
  232. setParameter("SMMNN00900_param", getNodeListCSV(medicalinfo));
  233. setParameter("SMMNN00900_paramYN", "Y");
  234. modal("SPMNN02400");
  235. fGetAvulsion();
  236. }else{
  237. messageBox("환자를","C002");
  238. }
  239. }
  240. /**
  241. * @group :
  242. * @ver : 2007.07.25
  243. * @by : 최경용
  244. * @---------------------------------------------------
  245. * @type : function
  246. * @access : public
  247. * @desc : 분만실 처치장부에서 작성한 적출물 기록 삭제
  248. * @param :
  249. * @param :
  250. * @return :
  251. * @---------------------------------------------------
  252. */
  253. function fDelAvulRecord(){
  254. if(grd_avulsion.row > 0){
  255. model.makeValue("/root/send/savedata/pid", model.getvalue("/root/main/avulsioninfo/avulsionlist[" + grd_avulsion.row + "]/pid"));
  256. model.makeValue("/root/send/savedata/indd", model.getvalue("/root/main/avulsioninfo/avulsionlist[" + grd_avulsion.row + "]/indd"));
  257. model.makeValue("/root/send/savedata/cretno", model.getvalue("/root/main/avulsioninfo/avulsionlist[" + grd_avulsion.row + "]/cretno"));
  258. model.makeValue("/root/send/savedata/avulsionweig", model.getvalue("/root/main/avulsioninfo/avulsionlist[" + grd_avulsion.row + "]/avulsionweig"));
  259. model.makeValue("/root/send/savedata/avulsionseqno", model.getvalue("/root/main/avulsioninfo/avulsionlist[" + grd_avulsion.row + "]/seqno"));
  260. model.makeValue("/root/send/savedata/avulsionstat", "D");
  261. model.makeValue("/root/send/savedata/status", "D");
  262. var rtnmsg = messageBox(model.getvalue("/root/main/avulsioninfo/avulsionlist[" + grd_avulsion.row + "]/patnm")+" 산모의 적출물 기록을 " ,"Q001");
  263. if ( rtnmsg == 6 ){
  264. submit("TXMNN00701");
  265. fGetAvulsion();
  266. }
  267. }else{
  268. messageBox("환자를","C002");
  269. }
  270. }