123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323 |
- <?xml version="1.0" encoding="utf-8"?>
- <Script type="xscript4.0"><![CDATA[/* ---------------------------------------------------------------------
- 수술기록 관찰기록(SMMNP00315.xfm - JScript )
- - Version :
- 1) : Ver.1.00.01
- : Create By 손성훈
- : 2012.05.22 오후 08:40
- ---------------------------------------------------------------------- */
- var sPid = ""; //등록번호
- var sOprsrvno = ""; //수술예약번호
- var sOphistno = ""; //수술예약 일련번호
- var sDoctid = ""; //집도의ID
- var sDoctnm = ""; //집도의
- var sInstcd = "";
- var sOpfromdt = ""; //수술시작일시
- var sOproomcd = ""; //수술방코드
- var sOpcnfmdd = ""; //수술확정일자
- //sSendData = sPid+"▥"+ sOprsrvno +"▥"+ sOphistno +"▥"+ sInstcd +"▥"+ sOpfromdt +"▥"+tempOproomcd+ "▨"+ sSendPinfo +"▨"+sSendDoctinfo;
- /**
- * 화면 초기화
- *
- */
- function fInit(){
-
- var sRecvFlag = opener.frmf_getParameter("SMMNP00300_searchFlag");
- var sRecvData = opener.frmf_getParameter("SMMNP00300_SearchCondition");
-
- opener.frmf_setParameter("SMMNP00300_searchFlag", "");
- opener.frmf_setParameter("SMMNP00300_SearchCondition", "");
-
- if( sRecvFlag != "true" ){
- sysf_messageBox("관찰기록은 수술기록 화면에서만 연동할 수 있으며 기록 가능합니다.", "");
- group3.enable = false;
- return;
- }
-
- var sRecvArr = null;
- if( !utlf_isNull(sRecvData) ){
- sRecvArr = sRecvData.split("▨");
- var sDataArr = sRecvArr[1].split("▥");
- if( !utlf_isNull(sRecvArr[1]) ){
- sOpcnfmdd = sDataArr[0];
- ds_init.setColumn(0, "pinfo", sOpcnfmdd);
- ds_init.setColumn(0, "pinfo2", sDataArr[1]);
- ds_init.setColumn(0, "pinfo3", sDataArr[2]);
-
- }
-
- if( !utlf_isNull(sRecvArr[0]) ){
- var sRecvPinfoArr = sRecvArr[0].split("▥");
- sPid = sRecvPinfoArr[0];
- sOprsrvno = sRecvPinfoArr[1]; //수술예약번호
- sOphistno = sRecvPinfoArr[2]; //수술예약 일련번호
- sInstcd = sRecvPinfoArr[3];
- sOpfromdt = sRecvPinfoArr[4]; //수술시작일시
- sOproomcd = sRecvPinfoArr[5]; //수술방코드
- }
-
- if( !utlf_isNull(sRecvArr[2]) ){
- var sRecvDoctArr = sRecvArr[2].split("▥");
- sDoctnm = sRecvDoctArr[0]; //집도의
- sDoctid = sRecvDoctArr[1]; //집도의ID
- }
- }
-
- if( !utlf_isNull(sOprsrvno) ){
- //수술예약번호가 존재할 경우 정상 조회 처리
- fGetRoomInfo();
- fSearchMnphOpobserv();
- }
-
-
- // 20190417 김현석, 관찰 기록 도움말 문구 변경. 요청번호 : 20190319025
- group1.Static00.text = "진정치료인 경우, 혈압, 맥박, 산소포화도 등의 내용을 포함하여 진정치료 시작 후 5분, 이후 10분 간격으로 기록, 산소 포화도 필수기록";
-
- }
- /**
- * 화면 오픈시 수술방 정보와 취급 간호사, 집도의 부서 정보를 조회한다.
- *
- */
- function fGetRoomInfo(){
-
- ds_send.setColumn(0, "flag", "userid");
- ds_send.setColumn(0, "searchitem", "00009006");
-
- var oParam = {};
- oParam.id = "TRMNP00301";
- oParam.service = "opanstapp.OpAnstRec";
- oParam.method = "reqGetOpRoomInfo";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_init_HideData_OpRoomData_OpRoomInfo=OpRoomInfo";
- oParam.async = false;
- //oParam.callback = "cf_TRMNP00301";
- tranf_submit(oParam); // 수술실의 코드와 명칭을 가져온다.
-
- ds_send.setColumn(0, "doctid", sDoctid);
- ds_send.setColumn(0, "flag", "userid");
- ds_send.setColumn(0, "selectflag", "userid");
- ds_send.setColumn(0, "searchitem", "");
- ds_send.setColumn(0, "searchdd", sOpcnfmdd);//조회 기준일자
- ds_send.setColumn(0, "deptflag", "015");//수술실 간호사코드 anstrecmgr - getUserList
-
- var oParam = {};
- oParam.id = "TRMNP00316";
- oParam.service = "opanstapp.OpAnstRec";
- oParam.method = "reqGetOPNurInfoDoctInfo";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_init_DisplayData_nurlist=nurlist ds_init_DisplayData_doctinfo=doctinfo";
- oParam.async = false;
- //oParam.callback = "cf_TRMNP00316";
- tranf_submit(oParam); //수술방 간호사 정보 및 집도의 리스트 정보 조회
-
- }
- /**
- * 조회 버튼 클릭시 이벤트
- *
- */
- function fSearchMnphOpobserv(){
- if( utlf_isNull(sOprsrvno) ){
- sysf_messageBox("관찰 기록은 수술기록 화면에서만 연동할 수 있으며 기록 가능합니다.", "");
- return;
- }
-
- ds_send.setColumn(0, "oprsrvno", sOprsrvno);
- ds_main_oblists_oblist.clearData();
-
- var oParam = {};
- oParam.id = "TRMNP00315";
- oParam.service = "opanstapp.OpAnstRec";
- oParam.method = "reqGetMnphOpObserRecInfo";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_main_oblists_oblist=oblist";
- oParam.async = false;
- //oParam.callback = "cf_TRMNP00315";
- tranf_submit(oParam);
-
- if( utlf_isNull(ds_main_oblists_oblist.getColumnInfo("obnurid")) ){
- ds_main_oblists_oblist.addColumn("obnurid", "string");
- }
- if( utlf_isNull(ds_main_oblists_oblist.getColumnInfo("displayobnurid")) ){
- ds_main_oblists_oblist.addColumn("displayobnurid", "string");
- }
-
- ds_main_oblists_oblist.enableevent = false;
- ds_main_oblists_oblist.updatecontrol = false;
-
- for( var i=0 ; i<ds_main_oblists_oblist.rowcount ; i++ ){
- ds_main_oblists_oblist.setColumn(i, "displayobnurid", ds_main_oblists_oblist.getColumn(i, "obnurid"));
- }
-
- ds_main_oblists_oblist.updatecontrol = true;
- ds_main_oblists_oblist.enableevent = true;
-
- ds_main_oblists_oblist.rowposition = -1;
-
- }
- /**
- * 추가 버튼 클릭 시 이벤트
- *
- */
- function fOnClickGridAddBtn(){
-
- var i = ds_main_oblists_oblist.addRow();
- if( utlf_isNull(ds_main_oblists_oblist.getColumn(i, "opdeptcd")) ){
- ds_main_oblists_oblist.setColumn(i, "opdeptcd", ds_init_DisplayData_doctinfo.getColumn(0, "deptcd")); //집도과ID
- }
-
- if( utlf_isNull(ds_main_oblists_oblist.getColumn(i, "opdeptnm")) ){
- ds_main_oblists_oblist.setColumn(i, "opdeptnm", ds_init_DisplayData_doctinfo.getColumn(0, "deptnm")); //집도과명
- }
-
- if( utlf_isNull(ds_main_oblists_oblist.getColumn(i, "opdoctid")) ){
- ds_main_oblists_oblist.setColumn(i, "opdoctid", sDoctid); //적출의ID - 집도의
- }
-
- if( utlf_isNull(ds_main_oblists_oblist.getColumn(i, "opdoctnm")) ){
- ds_main_oblists_oblist.setColumn(i, "opdoctnm", sDoctnm); //적출의명
- }
- }
- /**
- * 삭제 버튼 클릭 시 이벤트
- *
- */
- function fOnClickGridDeleteBtn(){
- var iRow = group3.datagrid1.currentrow;
- var iCol = group3.datagrid1.currentcol;
-
- ds_main_oblists_oblist.deleteRow(iRow);
- }
- /**
- * Grid Time button 클릭시
- *
- */
- function fOnClickGridTimeBtn(){
- var iRow = group3.datagrid1.currentrow;
- var iCol = group3.datagrid1.currentcol;
- if( iCol == group3.datagrid1.getBindCellIndex("body", "obrectm") ){
- ds_main_oblists_oblist.setColumn(iRow, "obrecdd", utlf_getCurrentDate());
- ds_main_oblists_oblist.setColumn(iRow, "obrectm", utlf_getCurrentTime().substr(0, 4));
- }
- }
- /**
- * 저장시 valid check 및 default info copy
- *
- */
- function validForSave(){
- var itotalRow = group3.datagrid1.rowcount;
- var iCol = group3.datagrid1.currentcol;
- if( utlf_isNull(sOprsrvno) ){
- return false;
- }
-
- for( var i=0 ; i<itotalRow ; i++ ){
- /*
- 0 : 데이터는 있지만 변경되지 않은 사항
- 1 : new
- 2 : update
- */
- if( utlf_isNull(ds_main_oblists_oblist.getColumn(i, "oprsrvno")) ){
- ds_main_oblists_oblist.setColumn(i, "oprsrvno", sOprsrvno);
- }
- if( utlf_isNull(ds_main_oblists_oblist.getColumn(i, "oproomcd")) ){
- ds_main_oblists_oblist.setColumn(i, "oproomcd", sOproomcd);
- }
-
- if( utlf_isNull(ds_main_oblists_oblist.getColumn(i, "opdeptcd")) ){
- ds_main_oblists_oblist.setColumn(i, "opdeptcd", ds_init_DisplayData_doctinfo.getColumn(0, "deptcd")); //집도과ID
- }
-
- if( utlf_isNull(ds_main_oblists_oblist.getColumn(i, "opdeptnm")) ){
- ds_main_oblists_oblist.setColumn(i, "opdeptnm", ds_init_DisplayData_doctinfo.getColumn(0, "deptnm")); //집도과명
- }
-
- if( utlf_isNull(ds_main_oblists_oblist.getColumn(i, "opdoctid")) ){
- ds_main_oblists_oblist.setColumn(i, "opdoctid", sDoctid); // 집도의
- }
-
- if( utlf_isNull(ds_main_oblists_oblist.getColumn(i, "opdoctnm")) ){
- ds_main_oblists_oblist.setColumn(i, "opdoctnm", sDoctnm); //집도의명
- }
- }
- return true;
- }
- /**
- * 저장 버튼 클릭 시 이벤트
- *
- */
- function onclickSaveBtn(){
- if( !validForSave() ) return;
-
- grdf_setStatusColumn(ds_main_oblists_oblist, "status");
- ds_send_oblists.assign(ds_main_oblists_oblist);
-
- var oParam = {};
- oParam.id = "TXMNP00355";
- oParam.service = "opanstapp.OpAnstRec";
- oParam.method = "reqExeMnphOpObserRecInfo";
- oParam.inds = "oblists=ds_send_oblists:A";
- oParam.outds = "ds_main_oblists_oblist=oblist";
- oParam.async = false;
- //oParam.callback = "cf_TXMNP00355";
- tranf_submit(oParam);
-
- if( utlf_isNull(ds_main_oblists_oblist.getColumnInfo("obnurid")) ){
- ds_main_oblists_oblist.addColumn("obnurid", "string");
- }
- if( utlf_isNull(ds_main_oblists_oblist.getColumnInfo("displayobnurid")) ){
- ds_main_oblists_oblist.addColumn("displayobnurid", "string");
- }
-
- ds_main_oblists_oblist.enableevent = false;
- ds_main_oblists_oblist.updatecontrol = false;
-
- for( var i=0 ; i<ds_main_oblists_oblist.rowcount ; i++ ){
- ds_main_oblists_oblist.setColumn(i, "displayobnurid", ds_main_oblists_oblist.getColumn(i, "obnurid"));
- }
-
- ds_main_oblists_oblist.updatecontrol = true;
- ds_main_oblists_oblist.enableevent = true;
-
- ds_main_oblists_oblist.rowposition = -1;
-
- fSearchMnphOpobserv();
-
- }
- //grid Value Changed event
- function fGridValueChanged(){
- var iRow = group3.datagrid1.currentrow;
- var iCol = group3.datagrid1.currentcol;
-
- if( iCol == group3.datagrid1.getBindCellIndex("body", "obnurid") ){
- //model.setValue("/root/main/eolists/eolist["+iRow+"]/displayactnurid", datagrid1.valueMartrix(iRow, datagrid1.colRef("search")));
-
- ds_main_oblists_oblist.setColumn(iRow, "displayobnurid", ds_main_oblists_oblist.getColumn(iRow, "obnurid"));
- }
- }
- ]]></Script>
|