123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481 |
- <?xml version="1.0" encoding="utf-8"?>
- <Script type="xscript4.0"><![CDATA[function fInitialize()
- {
- var parampid ;
-
- if (frmf_isPopup())
- {
- parampid = opener.frmf_getParameter("pid");
- }
-
- if(parampid == "undefined" || parampid == "" || utlf_isNull(parampid))
- {
- fGetTopInfo();
- }
-
- var fpid = ds_main_ordinfo.getColumn(0, "pid");
-
- if(!utlf_isNull(fpid))
- {
- fGetBMTInfo();
- }
- dsf_makeValue(ds_main_info_bmt, "recdd", "string", utlf_getCurrentDate(), 0);
- dsf_makeValue(ds_main_info_bmt, "recdt", "string", utlf_getCurrentTime(), 0);
- }
- function fGetTopInfo()
- {
- var paminfo;
- var paminfocnt = 0;
- var paminfoflag;
- var paminfotag;
- var paminfovalue;
- var sexinfo;
- var ageinfo;
-
- paminfo = sysf_getGlobalVariable("paminfo");
-
- if(paminfo.length > 0)
- {
- paminfoflag = paminfo.split("▩");
- paminfotag = paminfoflag[0].split("▦");
- paminfovalue = paminfoflag[1].split("▦");
- while(paminfocnt < paminfotag.length)
- {
- switch(paminfotag[paminfocnt])
- {
- case "pid":
- ds_main_ordinfo.setColumn(0, "pid", paminfovalue[paminfocnt]);
- break;
- case "orddd":
- ds_main_ordinfo.setColumn(0, "orddd", paminfovalue[paminfocnt]);
- break;
- case "indd":
- ds_main_ordinfo.setColumn(0, "orddd", paminfovalue[paminfocnt]);
- break;
- case "orddeptcd":
- ds_main_ordinfo.setColumn(0, "orddeptcd", paminfovalue[paminfocnt]);
- break;
- case "orddrid":
- ds_main_ordinfo.setColumn(0, "drid", paminfovalue[paminfocnt]);
- break;
- case "ioflag":
- ds_main_ordinfo.setColumn(0, "ordtype", paminfovalue[paminfocnt]);
- break;
- case "hngnm":
- ds_main_ordinfo.setColumn(0, "patnm", paminfovalue[paminfocnt]);
- break;
- case "roomcd":
- ds_main_ordinfo.setColumn(0, "inroomcd", paminfovalue[paminfocnt]);
- break;
- case "cretno":
- ds_main_ordinfo.setColumn(0, "cretno", paminfovalue[paminfocnt]);
- break;
- case "age":
- ageinfo = paminfovalue[paminfocnt];
- break;
- case "sex":
- sexinfo = paminfovalue[paminfocnt];
- break;
- case "rrgstno1":
- ds_main_ordinfo.setColumn(0, "rrgstno", paminfovalue[paminfocnt]);
- break;
- }
- paminfocnt++;
- }
- ds_hidden_topinfo.setColumn(0, "exist", "Y");
- }
- ds_main_ordinfo.setColumn(0, "orddeptnm", appf_getPatientInfo("orddept"));
- ds_main_ordinfo.setColumn(0, "drnm", appf_getPatientInfo("apntdr"));
- }
- function fGetBMTInfo()
- {
- var sPamInfo = sysf_getGlobalVariable("paminfo");
- dsf_setCSVToDs("ds_main_paminfo_pamlist", sPamInfo);
-
- var sPID = ds_main_paminfo_pamlist.getColumn(0, "pid");
-
- ds_send.setColumn(0, "pid", ds_main_ordinfo.getColumn(0, "pid"));
- ds_send.setColumn(0, "orddd", ds_main_ordinfo.getColumn(0, "orddd"));
-
- var trnptdg = ds_temp_bmtpatientinfo.getColumn(0, "trnptdg");
-
- if (!utlf_isNull(trnptdg))
- {
- ds_send.setColumn(0, "pid", ds_temp_bmtpatientinfo.getColumn(0, "pid"));
- ds_send.setColumn(0, "trnptdg", trnptdg);
- }
-
- var oParam = {};
- oParam.id = "TRMMR02101";
- oParam.service = "medirecapp.PrgmMediRec";
- oParam.method = "reqGetBmtScheDnorInfo";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_main_info_manage=grid ds_main_info_bmt=newdnor";
- oParam.async = false;
- //oParam.callback = "cf_TRMMR02101";
- tranf_submit(oParam);
-
- var dnorcnt = ds_main_info_bmt.getColumn(0, "dnorcnt");
-
- if(dnorcnt == "2")
- {
- group2.group4.visible = true;
- group2.group3.position.left = 267;
- group6.visible = true;
- group2.position.width = 378;
- tar_donor.position.width = 457;
- tar_donor.position.left = 382;
- }
- else
- {
- group2.group4.visible = false;
- group2.group3.position.left = 172;
- group6.visible = false;
- group2.position.width = 279;
- //tar_donor.position.width = 500;
- tar_donor.position.left = 283;
- }
-
- var PID = ds_main_info_bmt.getColumn(0, "pid");
- var trnptDG = ds_main_info_bmt.getColumn(0, "trnptdg");
- var instCD = ds_main_info_bmt.getColumn(0, "instcd");
-
- if(!utlf_isNull(PID))
- {
- ds_main_ordinfo.setColumn(0, "pid", PID);
- ds_main_ordinfo.setColumn(0, "orddd", ds_main_info_bmt.getColumn(0, "indd"));
- ds_main_ordinfo.setColumn(0, "patnm", ds_main_info_bmt.getColumn(0, "patnm"));
- }
-
- var rsltFlag = ds_main_info_bmt.getColumn(0, "rsltflag");
- var remark2 = "♣ Gut decontamination & Prevention of CMV & fungal infection\n"
- + "\tW-CF 500 mg #2 PO and ITZS 0.5/kg #2 PO from conditioning to ANC > 1,000/㎣\n"
- + "\t& then S-BTR 1T AM PO from engraftment to post BMT 6 months\n"
- + "\tIVGV weekly infusion from D-7 to engraftment, & IV acyclovir from D-7 to D+28\n"
- + "♣ Preparative regimen: TBI 400 cGy/day for 2 days (total 800 cGy),\n"
- + "\t\t\t\t\tCyclophosphamide 60 mg/kg/day for 2days (total 120 mg/kg)\n"
- + "♣ GVHD Prophylaxis with FK506 0.03 mg/kg CIV from D-1, 0.2 mg/kg # 2 PO (D+21, D+22) & 0.12 mg/kg # 2 PO (D+23~),\n"
- + " Methotrexate 5 mg/m ive D+1, +3, +6, +11\n"
- + "♣ VOD prophylaxis with PGE1\n"
- + "♣ LGT 350㎍ SC daily from D+7 to WBC>3,000/㎣";
-
- if(rsltFlag == "ast")
- {
- ds_main_info_bmt.setColumn(0, "remark2", remark2);
- ds_main_info_bmt.setColumn(0, "ent", "NS");
- ds_main_info_bmt.setColumn(0, "dent", "NS");
- ds_main_info_bmt.setColumn(0, "echo", "EF=%");
- ds_main_info_bmt.setColumn(0, "pft", "DLCO(%) FEV1(%) FEV1/FEV(%)");
- ds_main_info_bmt.setColumn(0, "doppler", "NS");
-
- var trnptdd = ds_main_info_bmt.getColumn(0, "trnptdd");
-
- ds_main_info_manage.clearData();
-
- for(var i = 0; i < 16; i++)
- {
- var row = ds_main_info_manage.addRow();
-
- dsf_makeValue(ds_main_info_manage, "pid", "string", PID, row);
- dsf_makeValue(ds_main_info_manage, "trnptdg", "string", trnptDG, row);
- dsf_makeValue(ds_main_info_manage, "instcd", "string", instCD, row);
- dsf_makeValue(ds_main_info_manage, "management", "string", "", row);
-
- if( i < 12)
- {
- dsf_makeValue(ds_main_info_manage, "daydiff", "string", i-10, row);
- dsf_makeValue(ds_main_info_manage, "trnptdd", "string", getDateAddc(trnptdd, i-10), row);
- dsf_makeValue(ds_main_info_manage, "dw", "string", getDateAddc(trnptdd, i-10).toDate().getDayOfWeek("K"), row);
-
- if(i == 3)
- {
- dsf_makeValue(ds_main_info_manage, "management", "string", "Gut decontamination with W-CF &Prophylaxis of fungal infection with ITZS", row);
- }
- if(i == 10)
- {
- dsf_makeValue(ds_main_info_manage, "daydiff", "string", "D0", row);
- }
- }
- }
-
- ds_main_info_manage.setColumn(12, "daydiff", 3);
- ds_main_info_manage.setColumn(12, "trnptdd", getDateAddc(trnptdd, 3));
- ds_main_info_manage.setColumn(12, "dw", getDateAddc(trnptdd, 3).toDate().getDayOfWeek("K"));
-
- ds_main_info_manage.setColumn(13, "daydiff", 6);
- ds_main_info_manage.setColumn(13, "trnptdd", getDateAddc(trnptdd, 6));
- ds_main_info_manage.setColumn(13, "dw", getDateAddc(trnptdd, 6).toDate().getDayOfWeek("K"));
-
- ds_main_info_manage.setColumn(14, "daydiff", 7);
- ds_main_info_manage.setColumn(14, "trnptdd", getDateAddc(trnptdd, 7));
- ds_main_info_manage.setColumn(14, "dw", getDateAddc(trnptdd, 7).toDate().getDayOfWeek("K"));
-
- ds_main_info_manage.setColumn(15, "daydiff", 11);
- ds_main_info_manage.setColumn(15, "trnptdd", getDateAddc(trnptdd, 11));
- ds_main_info_manage.setColumn(15, "dw", getDateAddc(trnptdd, 11).toDate().getDayOfWeek("K"));
-
- fCalcDnorBsa();
- fCalcPatBsa();
- fCalcDnor2Bsa();
- }
- else if(rsltFlag != "ast")
- {
-
- }
-
- dsf_makeValue(ds_main_info_bmt, "d0", "string", ds_main_info_manage.lookup("daydiff", "D0", "trnptdd"), 0);
- }
- function getDateAddc(inputday,addend)
- {
- var backDate ="";
- var rt = 0;
- var yyyy = inputday.substr(0,4) +"";
- var mm = inputday.substr(4,2) +"";
- var dd = inputday.substr(6,2) +"";
- var startDate = new Date(yyyy,(eval(mm)-1),dd);
-
- startDate.setTime(startDate.getTime()+(86400000*addend));
- NowYear = startDate.getYear();// 년
- NowMonth = startDate.getMonth()+1;// 월
- NowDay = startDate.getDate(); // 일
- backDate += NowYear ; //년도
-
- if (NowMonth < 10 )
- {
- backDate += "0" + NowMonth ;
- }
- else
- {
- backDate += (startDate.getMonth() + 1);
- }
- if (NowDay < 10 )
- {
- backDate += "0" + NowDay ;
- }
- else
- {
- backDate += (startDate.getDate());
- }
-
- return backDate ;
- }
- function fCalcDnorBsa()
- {
- var ht = ds_main_info_bmt.getColumn(0, "dnorbdht");
- var wt = ds_main_info_bmt.getColumn(0, "dnorbdwt");
- var sex = ds_main_info_bmt.getColumn(0, "dnorsa").substr(0,1);
-
- if(ht != ht || wt != wt)
- {
-
- }
- else if((!isNaN(ht) || !isNaN(wt)) && (!utlf_isNull(ht)|| !utlf_isNull(wt)))
- {
- if(sex == "M")
- {
- ds_main_info_bmt.setColumn(0, "dnoribw", parseFloat(ht*ht*22/10000).toFixed(2));
- }
- if(sex == "F")
- {
- ds_main_info_bmt.setColumn(0, "dnoribw", parseFloat(ht*ht*21/10000).toFixed(2));
- }
-
- ds_main_info_bmt.setColumn(0, "dnorbsa", parseFloat(Math.sqrt((ht*wt/3600))).toFixed(2));
-
- var dibw = ds_main_info_bmt.getColumn(0, "dnoribw");
- ds_main_info_bmt.setColumn(0, "dnorabw", parseFloat(parseFloat(dibw)+0.4*(parseFloat(wt)-parseFloat(dibw))).toFixed(2));
- }
- }
- function fCalcPatBsa()
- {
- var ht = ds_main_info_bmt.getColumn(0, "patbdht");
- var wt = ds_main_info_bmt.getColumn(0, "patbdwt");
- var sex = ds_main_info_bmt.getColumn(0, "patsa").substr(0,1);
-
- if(ht != ht || wt != wt)
- {
- }
- else if((!isNaN(ht) || !isNaN(wt)) && (!utlf_isNull(ht)||!utlf_isNull(wt)))
- {
- if(sex == "M")
- {
- ds_main_info_bmt.setColumn(0, "patibw", parseFloat(ht*ht*22/10000).toFixed(2));
- }
- if(sex == "F")
- {
- ds_main_info_bmt.setColumn(0, "patibw", parseFloat(ht*ht*21/10000).toFixed(2));
- }
-
- ds_main_info_bmt.setColumn(0, "patbsa", parseFloat(Math.sqrt((ht*wt/3600))).toFixed(2));
-
- var pibw = ds_main_info_bmt.getColumn(0, "patibw");
- ds_main_info_bmt.setColumn(0, "patibw", parseFloat(parseFloat(pibw)+0.4*(parseFloat(wt)-parseFloat(pibw))).toFixed(2));
- }
- }
- function fCalcDnor2Bsa()
- {
- var ht = ds_main_info_bmt.getColumn(0, "dnorbdht2");
- var wt = ds_main_info_bmt.getColumn(0, "dnorbdwt2");
- var sex = String(ds_main_info_bmt.getColumn(0, "dnorsa2")).substr(0,1);
-
- if(ht != ht || wt != wt)
- {
- }
- else if((!isNaN(ht) || !isNaN(wt)) && (!utlf_isNull(ht)||!utlf_isNull(wt)))
- {
- if(sex == "M")
- {
- ds_main_info_bmt.setColumn(0, "dnoribw2", parseFloat(ht*ht*22/10000).toFixed(2));
- }
- if(sex == "F")
- {
- ds_main_info_bmt.setColumn(0, "dnoribw2", parseFloat(ht*ht*21/10000).toFixed(2));
- }
-
- ds_main_info_bmt.setColumn(0, "dnorbsa2", parseFloat(Math.sqrt((ht*wt/3600))).toFixed(2));
-
- var d2ibw = ds_main_info_bmt.getColumn(0, "dnoribw2");
- ds_main_info_bmt.setColumn(0, "dnoribw2", parseFloat(parseFloat(d2ibw)+0.4*(parseFloat(wt)-parseFloat(d2ibw))).toFixed(2));
- }
- }
- function fSetDate()
- {
- var trnDD = ds_main_info_bmt.getColumn(0, "d0");
-
- for(var i = 0; i < ds_main_info_manage.rowcount; i++)
- {
- var dayFlag = ds_main_info_manage.getColumn(i, "daydiff");
-
- if( dayFlag != "D0")
- {
- ds_main_info_manage.setColumn(i, "trnptdd", getDateAddc(trnDD, dayFlag));
- ds_main_info_manage.setColumn(i, "dw", getDateAddc(trnDD, dayFlag).toDate().getDayOfWeek("K"));
- }
- else
- {
- ds_main_info_manage.setColumn(i, "trnptdd", trnDD);
- ds_main_info_manage.setColumn(i, "dw", trnDD.toDate().getDayOfWeek("K"));
- }
- }
- }
- function fUprowAdd()
- {
- var daydiff = ds_main_info_manage.getColumn(ds_main_info_manage.rowposition, "daydiff");
- var belowDay = ds_main_info_manage.getColumn(ds_main_info_manage.rowposition-1, "daydiff");
- var trnptdate = ds_main_info_manage.getColumn(ds_main_info_manage.rowposition, "trnptdd");
- daydiff = parseInt(daydiff) - 1;
-
- if(daydiff == belowDay)
- {
- sysf_messageBox("중복된 일자는 입력", "E001");
- return;
- }
- else if(utlf_isNull(trnptdate))
- {
- sysf_messageBox("이식일자 항목이 비어있어 추가", "E001");
- return;
- }
- else
- {
- var cur_row = ds_main_info_manage.insertRow(ds_main_info_manage.rowposition);
-
- dsf_makeValue(ds_main_info_manage, "daydiff", "string", daydiff, cur_row);
- dsf_makeValue(ds_main_info_manage, "trnptdd", "string", getDateAddc(trnptdate, -1), cur_row);
- dsf_makeValue(ds_main_info_manage, "dw", "string", getDateAddc(trnptdate, -1).toDate().getDayOfWeek("K"), cur_row);
- dsf_makeValue(ds_main_info_manage, "pid", "string", ds_main_info_bmt.getColumn(0, "pid"), cur_row);
- dsf_makeValue(ds_main_info_manage, "trnptdg", "string", ds_main_info_bmt.getColumn(0, "trnptdg"), cur_row);
- dsf_makeValue(ds_main_info_manage, "instcd", "string", ds_main_info_bmt.getColumn(0, "instcd"), cur_row);
- }
- }
- function fDownrowAdd()
- {
- var daydiff = ds_main_info_manage.getColumn(ds_main_info_manage.rowposition, "daydiff");
- var belowDay = ds_main_info_manage.getColumn(ds_main_info_manage.rowposition+1, "daydiff");
- var trnptdate = ds_main_info_manage.getColumn(ds_main_info_manage.rowposition, "trnptdd");
- daydiff = parseInt(daydiff) + 1;
-
- if(daydiff == belowDay)
- {
- sysf_messageBox("중복된 일자는 입력", "E001");
- return;
- }
- else if(utlf_isNull(trnptdate))
- {
- sysf_messageBox("이식일자 항목이 비어있어 추가", "E001");
- return;
- }
- else
- {
- var cur_row = ds_main_info_manage.insertRow(ds_main_info_manage.rowposition+1);
-
- dsf_makeValue(ds_main_info_manage, "daydiff", "string", daydiff, cur_row);
- dsf_makeValue(ds_main_info_manage, "trnptdd", "string", getDateAddc(trnptdate, 1), cur_row);
- dsf_makeValue(ds_main_info_manage, "dw", "string", getDateAddc(trnptdate, 1).toDate().getDayOfWeek("K"), cur_row);
- dsf_makeValue(ds_main_info_manage, "pid", "string", ds_main_info_bmt.getColumn(0, "pid"), cur_row);
- dsf_makeValue(ds_main_info_manage, "trnptdg", "string", ds_main_info_bmt.getColumn(0, "trnptdg"), cur_row);
- dsf_makeValue(ds_main_info_manage, "instcd", "string", ds_main_info_bmt.getColumn(0, "instcd"), cur_row);
- }
-
- }
- function fDelMngtlist()
- {
- var dDay = ds_main_info_manage.getColumn(ds_main_info_manage.rowposition, "daydiff");
-
- if(dDay == "0")
- {
- sysf_messageBox("이식일 당일은 삭제", "E001");
- return;
- }
- else
- {
- ds_main_info_manage.deleteRow(ds_main_info_manage.rowposition);
- }
- }
- function fSaveBMT()
- {
- for(var i = 0; i < ds_main_info_manage.rowcount; i++)
- {
- var rowstat = ds_main_info_manage.getRowType(i);
-
- if(rowstat == 8)
- {
- ds_main_info_manage.setColumn(i, "delyn", "Y");
- }
- else
- {
- ds_main_info_manage.updatecontrol = false;
- ds_main_info_manage.setRowType(i, "i");
- ds_main_info_manage.updatecontrol = true;
- }
- }
- var oParam = {};
- oParam.id = "TXMMR02101";
- oParam.service = "medirecapp.PrgmMediRec";
- oParam.method = "reqExeBmtSche";
- oParam.inds = "req=ds_main_info_bmt reqSub=ds_main_info_manage:U reqDel=ds_temp_delete";
- oParam.outds = "ds_=newrcipnt ds_main_info_manage=mngtlist";
- oParam.typeStr = "m";
- oParam.async = false;
- oParam.callback = "cf_TXMMR02101";
- tranf_submit(oParam);
- }
- ]]></Script>
|