123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507 |
- /**
- * MMR07201.js
- * SMMMR07201_전과기록JCI.xrw
- */
- /**
- * @desc : [item코드목록]
- * "0000960003" //진단명
- * "0000931001" //주호소 또는 입원사유
- * "0000062001" //경과 및 특이소견
- * "0000500001" //수술 및 시술
- * "0001113001" //투약내역
- * "0000792001" //전과사유
- * "0022830001" //전과시 환자상태
- * [버튼목록]
- * "btn_medprcp_0001113001"//투약처방조회
- */
-
- var gItemCds = new Array(
- "0000960003" //진단명
- , "0000931001" //주호소 또는 입원사유
- , "0000062001" //경과 및 특이소견
- , "0000500001" //수술 및 시술
- , "0001113001" //투약내역
- , "0000792001" //전과사유
- , "0022830001" //전과시 환자상태
- );
-
- var gItemCdsTextArea = new Array(
- "0000960003" //진단명
- , "0000931001" //주호소 또는 입원사유
- , "0000062001" //경과 및 특이소견
- , "0000500001" //수술 및 시술
- , "0001113001" //투약내역
- , "0000792001" //전과사유
- , "0022830001" //전과시 환자상태
- );
- /**
- * @desc : 확장버튼(이미지,가계도,추가기록)을 기록여부에 따라 표시를 위한 버튼목록
- * @id :
- * @authur : 안치원
- * @history : 2009.09.09 신규 안치원 ACW_090909A
- var gExtnBtnIds = new Array(
- "btn_imge_0008224001" //S&O 이미지버튼
- , "btn_fmy_0008224001" //S&O 가계도버튼
- , "btn_etcrec_0008224001" //S&O 추가기록버튼
- , "btn_diag_0001129001" //A 진단버튼
- , "btn_imge_0001129001" //A 이미지버튼
- , "btn_etcrec_0001129001" //A 추가기록버튼
- , "btn_prcp_0000080001" //P 처방버튼
- , "btn_imge_0000080001" //P 이미지버튼
- , "btn_etcrec_0000080001" //P 추가기록버튼
- );
-
- */
- var gExtnBtnIds = new Array(
- "btn_medprcp_0001113001"//투약처방조회
- );
- /**
- * @desc : 기록데이터 조회
- * @id :
- * @event : xforms-ready
- * @return : void
- * @authur : 박종훈
- */
- function fLoadData()
- {
- InitPgmFormData();
- InitUnitFormData(gItemCds);
-
- }
- /**
- * @desc : 서식 데이터 Clear
- * @id :
- * @event : xforms-ready
- * @return : void
- * @authur : 박종훈
- */
- function fClearComnFormData()
- {
- if (gMaxSectionID != "")
- {
- var MaxObj = document.controls("lbl_" + gMaxSectionID);
- MaxObj.dispatch("onclick");
- }
-
- ClearComnFormData(gItemCds);
- clearData();
-
- //초기화 후 기본내용 조회
- fExtnInitFormRec();
-
- //포커스 처리
- SetDefFocusMTX(gItemCds);
- }
- /**
- * @desc : 기록 인스턴스 연결
- * @id :
- * @event : xforms-ready
- * @return : void
- * @authur : 박종훈
- */
- function fSetRecItemValue(reciteminfo)
- {
- return SetCommMediFormValue(gItemCds, reciteminfo);
- }
- /**
- * @desc : 확장서식 기록 초기 설정
- * @
- * @param :
- * @return :
- * @authur : 박종훈
- */
- function fExtnInitFormRec()
- {
- if (parent.window.javascript.fGetFormRec("status") == "C")
- {
-
- // alert("MMR07201.js:::fExtnInitFormRec::: fGetDiagNM::"+parent.instance1.selectSingleNode("/root/main/recinfo/formrec"));
- // ivw_0000960003.window.javascript.fGetDiagNm(parent.instance1.selectSingleNode("/root/main/recinfo/formrec")); //환자정보로 진단명 조회
- }
- }
- /**
- * @desc : 서식 진단명 사이즈 조절
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSetSizeFormDiag()
- {
- ivw_0000960003.window.javascript.fInitPage(false, parseInt(ivw_0000960003.attribute("height")), parseInt(ivw_0000960003.attribute("width")));
- }
- var gLoadFormCnts = 0;
- /**
- * @group :
- * @ver : 2008.06.13
- * @by : snoweye
- * @---------------------------------------------------
- * @type : function
- * @access : private
- * @desc : 화면 로드시 초기화 작업을 수행
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fFormReady()
- {
- grup_base.attribute("border-style") = "none";
- //섹션사이즈초기화
- setSectionSize(gItemCds, 0, 683);
- /*
- //섹션별 버튼초기화
- InitBtnImge(gItemCds);
- InitBtnFmy(gItemCds);
- InitBtnComn(gItemCds);
- InitBtnDiag("0001129001");
- InitBtnPrcp("0000080001");
- InitBtnEtcRec(gItemCds);
- */
- //기본 첫번째 부분서식을 로딩해서 보여준다.
- dispOnLoadComplete(COMN_FORM);//COMN_FORM : 1
- }
- /**
- * @desc : 부분서식 불러오기
- * @id :
- * @event : onloadcomplete
- * @return : void
- * @authur : 박종훈
- */
- function fLoadUnitForm()
- {
- initSection(gItemCds);
- }
- /**
- * @desc : 부분서식이 로딩 완료 되었을때 발생하는 이벤트
- * @id :
- * @event : xforms-ready
- * @return : void
- * @authur : 박종훈
- */
- function fOnLoadComplete()
- {
- var curLoadFormCd = getParameter("loadformcd");
- var fstLevlItemCd = model.getValue(gPageInfo.forminfoRef + "/unitformmast[formcd='" + curLoadFormCd + "' and loaded != 'true']/orgsupdegnitemcd");
- var ivwObj = document.controls("ivw_" + fstLevlItemCd);
- var unitformload = model.getValue(gPageInfo.forminfoRef + "/unitformmast[formcd='" + curLoadFormCd + "' and loaded != 'true']/loaded");
-
- if(ivwObj != null && unitformload != "true")
- {
- setFstLevlItemCd(ivwObj, curLoadFormCd);
- model.setValue(gPageInfo.forminfoRef + "/unitformmast[formcd='" + curLoadFormCd + "']/loaded", "true");
- }
- //진단명 부분서식 로딩후 처리
- if(fstLevlItemCd == '0000960003')
- {
- fSetSizeFormDiag();
- }
- gLoadFormCnts++;
- if(gItemCds.length == gLoadFormCnts)
- {
- fExtnInitFormRec();
- dispOnLoadComplete(UNIT_FORM);
-
- // if (parent.window.javascript.fGetFormRec("status") == "C")
- // {
- // SetDefFocusMTX(gItemCds);
- // }
-
- }
- }
- /**
- * @group :
- * @ver : 2008.11.28
- * @by : jonghun
- * @---------------------------------------------------
- * @type : function
- * @access : private
- * @desc : 동일 서식이 떠있을 경우 내부 인스턴스 로딩 후 디폴트 조회내용 조회
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fGetDefData()
- {
- dispOnLoadComplete(UNIT_FORM);
-
- // if (parent.window.javascript.fGetFormRec("status") == "C")
- // {
- // SetDefFocusMTX(gItemCds);
- // }
- }
- /**
- * @desc : 전과시 환자상태 화면 로딩 후 사이즈 조절
- * @id :
- * @event : xforms-ready
- * @return : void
- * @authur : dhkim
- */
- function fSetSizeFormCC(gItemCd_MMR07201)
- {
-
- //Care Plan 화면 로딩
- if(gItemCd_MMR07201 == "0022830001")
- ivw_0022830001.window.javascript.fInitPage(false, parseInt(ivw_0022830001.attribute("height")), parseInt(ivw_0022830001.attribute("width")));
-
- }
- /**
- * 20091231 dhkim 추가
- * MMR01100.js에서 서식load를 완료한 후에 호출한다.
- * @return
- */
- function initFormAtLast_MMR01100I() {
-
- var srcformcd = parent.window.javascript.fGetFormMast("srcformcd");
-
- // alert("srcformcd ::::" + srcformcd + " status:::"+parent.window.javascript.fGetFormRec("status"));
- if (srcformcd == "0000001595"){//전입기록의 기본서식코드 : 0000001595
-
- //신규서식로딩의 경우만 전출기록 -> 전입기록 연동
- if (parent.window.javascript.fGetFormRec("status") == "C"){
- model.makeValue("/root/send/extninfo/infoflag", "recdata");
- model.makeValue("/root/send/extninfo/recdataflag", "transferIn");
-
- model.makeValue("/root/send/extninfo/pid", parent.window.javascript.fGetFormRec("pid"));
- model.makeValue("/root/send/extninfo/orddd", parent.window.javascript.fGetFormRec("orddd"));
- model.makeValue("/root/send/extninfo/cretno", parent.window.javascript.fGetFormRec("cretno"));
- model.makeValue("/root/send/extninfo/fromsrcformcd", "0000001596"); //전출기록의 기본서식코드
- model.makeValue("/root/send/extninfo/toformcd", parent.window.javascript.fGetFormMast("formcd"));
-
- //2010.01.14 dhkim - srcformcd 파라미터 누락되어 추가
- model.makeValue("/root/send/extninfo/srcformcd", srcformcd);//전입기록
-
- //2010.03.08 dhkim formrecdd추가
- model.makeValue("/root/send/extninfo/formrecdd", parent.window.javascript.fGetFormRec("formrecdd"));
-
- model.removenode("/root/main/extninfo");
- model.makenode("/root/main/extninfo");
-
- if (submit("TRMMR01302")) {
- //copyNodeset(gPageInfo.recItemRef, "/root/main/extninfo/recitem", "replace", model, model);
- copyNodeset(gPageInfo.recItemRef2, "/root/main/extninfo/recitem", "replace", model, model);
- fLoadData();
-
- model.refresh();
- }
- }
-
- //전입기록시 투약처방버튼 hidden
- btn_medprcp_0001113001.visible = false;
-
- } else if (srcformcd == "0000001596"){//전출기록의 기본서식코드 : 0000001596
-
-
- //전출기록시 투약처방버튼 visible
- btn_medprcp_0001113001.visible = true;
-
-
- //2010.01.12 안치원 - 입원초진의 주호소 -> 전출기록의 주호소
- if (parent.window.javascript.fGetFormRec("status") == "C"){
- model.makeValue("/root/send/extninfo/infoflag", "rectext");
-
- model.makeValue("/root/send/extninfo/pid", parent.window.javascript.fGetFormRec("pid"));
- model.makeValue("/root/send/extninfo/orddd", parent.window.javascript.fGetFormRec("orddd"));
- model.makeValue("/root/send/extninfo/cretno", parent.window.javascript.fGetFormRec("cretno"));
-
- model.makeValue("/root/send/extninfo/srcformcd", "0000000003"); //입원초진기록의 기본서식코드(입원초진의 주호소를 default 연동위해)
- model.makeValue("/root/send/extninfo/fstlevlitembasecds", "0000931");
-
- model.removenode("/root/main/extninfo");
- model.makenode("/root/main/extninfo");
-
- if (submit("TRMMR01302")) {
- var itemVal = new ITEMVAL();
- itemVal.reccnts = model.getValue("/root/main/extninfo/rectextinfo[fstlevlitembasecd='0000931']/viewcnts");
- setFormItemValue("0000931", itemVal,false);
- model.refresh();
- }
-
-
- //투약처방내역이 없을때 default로 투약처방내역 연동
- var degnitemlevlcd = "0001113";
- var itemCd = "0001113001";
- var pageInfo = new PAGEINFO();
- var node = instance1.selectSingleNode(pageInfo.recItemRef + "[fstlevlitemcd='" + itemCd + "']/reccnts");
- var prcpList = "";
- if(node != null){
- prcpList = node.text;
- }
-
- if(prcpList == ""){
- GetPatDrugPrcpList_MMR07201(itemCd);//투약처방조회
- }
-
-
- }
-
-
-
- }
-
-
- //2010.01.19 dhkim - 통합기록조회용 JCI구분자추가
- //parent.window.javascript.fSetFormRec("xsltflag", "JCI");//fSetXsltFlag없애고 getSubmitID_MMR01300I로 이동
- }
- /**
- * MMR01300.js에서 submit직전에 submitID를 설정하기 위해서 호출한다.
- * @return
- */
- function getSubmitID_MMR01300I() {
-
- //2010.02.23 dhkim - 통합기록조회용 JCI구분자추가(fSetXsltFlag없애고 getSubmitID_MMR01300I로 이동)
- parent.window.javascript.fSetFormRec("xsltflag", "JCI");
-
- return TX_SUBMIT_EXTN_FORM;
- }
- /**
- * 전출기록의 투약처방조회
- */
- function GetPatDrugPrcpList_MMR07201(itemCd)
- {
- var pageInfo = new PAGEINFO();
- var prcpdd = "";
- var bfflag = "bfprcp";
- var flag = "";
- var todd = "";
- var pid = parent.model.getValue(pageInfo.recMastRef + "/pid");
- var orddd = parent.model.getValue(pageInfo.recMastRef + "/orddd");
- var cretno = parent.model.getValue(pageInfo.recMastRef + "/cretno");
- var orddrid = parent.model.getValue(pageInfo.recMastRef + "/orddrid");
- var orddeptcd = parent.model.getValue(pageInfo.recMastRef + "/orddeptcd");
- var prcpgenrflag = parent.model.getValue(pageInfo.recMastRef + "/chosflag");
- if (prcpgenrflag == "I" || prcpgenrflag == "E" || prcpgenrflag == "D")
- {
- prcpdd = parent.model.getValue(pageInfo.recMastRef + "/formrecdd");//전출일 전날
- }
- else
- {
- prcpdd = orddd;
- }
-
- //JCI요청사항 (2010.03.04 dhkim ) - 조회할 처방일자는 전출일 전날
- prcpdd = prcpdd.toDate('YYYYMMDD').getAddDate(-1, "D").getDateFormat('YYYYMMDD');//하루전
- //처방정보 가져오기(퇴원처방 prcpkindcd = 60)
- if(fBfPrcpSrchCom(pid, orddd, prcpdd, bfflag, flag, orddrid, todd, prcpgenrflag, orddeptcd, cretno, "TRMMO00100", true))
- {
-
- //투약
- //JCI요청사항 (2010.03.04 dhkim )
- //- 전출과의 약/주사에 한해 전일 정규처방
- //- 전일 기준설정 : 전출기록 미작성시, 해당환자의 전출처방(=전과신청) 차단 요청되어있음.
- //- 전출기록작성시점 전일 처방을 대상으로 연동처리
- model.addLog("dutplcecd:" + getUserInfo("dutplcecd"));
- var nodelistDrugPrcpinfo = model.instances(0).selectNodes("/root/prcpsrch/prcplist[(prcpkindcd = '10' and prcphistcd != 'C' and prcphistcd != 'L' and prcphistcd != 'E') and (prcpclscd = 'A2' or prcpclscd = 'A4' or prcpclscd = 'A6') and (rgstdeptcd = '"+getUserInfo("dutplcecd")+"')]");
- }
-
- var prcpkind = ""; //처방종류
- var orgprcpnm = ""; //처방명
- var drugmthdspccdnm = ""; //용법
- var prcpdelivefact = ""; //전달사항
- var prcplist = "";
- var prcphistcd = ""; //임시,인증구분
- var prcpclscd = "";
-
- var tmpdrugmthdspccdnm = "";
- if(nodelistDrugPrcpinfo.length >= 1){
- for(var i = 1; i <= nodelistDrugPrcpinfo.length; i++)
- {
- var subNode = nodelistDrugPrcpinfo.item(i - 1);
- //orgprcpnm = subNode.selectSingleNode("orgprcpnm").text;
- tmpdrugmthdspccdnm = subNode.selectSingleNode("drugmthdspccdnm").text;
- prcpkind = subNode.selectSingleNode("tempcol13").text;
- orgprcpnm = subNode.selectSingleNode("tempcol6").text;
- drugmthdspccdnm = subNode.selectSingleNode("tempcol7").text;
- prcpclscd = subNode.selectSingleNode("prcpclscd").text;
-
- drugmthdspccdnm = drugmthdspccdnm.replace(tmpdrugmthdspccdnm, "");
-
- drugmthdspccdnm = drugmthdspccdnm.replace("[급]", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("[일]", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("[본]", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("(집)", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("[home]", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("[임상]", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("[prn]", "");
- prcpdelivefact = subNode.selectSingleNode("prcpdelivefact").text;
- prcphistcd = subNode.selectSingleNode("prcphistcd").text;
-
- if(prcphistcd == "T")
- {
- if (prcpclscd == "A2" || prcpclscd == "A4" || prcpclscd == "A6")
- {
- prcplist += "[임] " + orgprcpnm + " " + drugmthdspccdnm + "\n"
- }
- else
- {
- prcplist += "[임] " + orgprcpnm + "\n"
- }
- }
- else
- {
- if (prcpclscd == "A2" || prcpclscd == "A4" || prcpclscd == "A6")
- {
- prcplist += orgprcpnm + " " + drugmthdspccdnm + "\n"
- }
- else
- {
- prcplist += orgprcpnm + "\n"
- }
- }
- }
- }
- var prerec = model.getValue(pageInfo.recItemRef + "[fstlevlitemcd='" + itemCd + "']/reccnts");
- if (prerec != "")
- {
- prerec = prerec + "\n" + prcplist + "\n";
- }
- else
- {
- prerec = prcplist + "\n"
- }
- model.setValue(pageInfo.recItemRef + "[fstlevlitemcd='" + itemCd + "']/reccnts", prerec);
-
- model.refresh();
- }
|