123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610 |
- /**
- * @desc : 화면초기화
- *
- * @param :
- * @return :
- * @author : HIT EMR Team
- * @---------------------------------------------------
- */
- function fInitialize(){
- // Knuh_20110118
- //var rgstfromdd = ((getCurrentDate()).toDate()).getAddDate(-7, "D");
- var rgstfromdd = (getCurrentDate()).toDate();
- model.setValue("/root/main/srchprofhist/fromdd", rgstfromdd.getDateFormat());
- model.setValue("/root/main/srchprofhist/todd", getCurrentDate());
- fPrstUsge();
- //fReqFormlist();
- model.setValue("/root/main/newprof/formnm","-");
- model.removeNodeset("/root/main/profhist/list");
- fGetProfPrntHist();
- model.refresh();
- }
- /**
- * @desc : 사용여부
- *
- * @param :
- * @return :
- * @author : HIT EMR Team
- * @---------------------------------------------------
- */
- function fPrstUsge(){
- model.removeNodeset("/root/hidden/issusge");
- model.makeNode("/root/hidden/issusge");
- zbcfGetCodeList(new Array("M0332"), new Array("/root/hidden/issusge"));
- }
-
- /**
- * @desc : 서식명 조회
- * @
- * @param :
- * @return :
- * @author : HIT EMR Team
- * @---------------------------------------------------
- */
- function fReqFormlist(){
- //formnm , formcd 조회
- submit("TRMRF00708");
- addComboItem("cmb_profformlist", "전체", "-", "above");
- }
- /**
- * @desc : 출력내역 조회
- *
- * @param :
- * @return :
- * @author : HIT EMR Team
- * @---------------------------------------------------
- */
- function fGetProfPrntHist(){
-
- if( model.getValue("/root/main/srchprofhist/prntuserid") == "" ){
- model.setValue("/root/main/srchprofhist/prntusernm", "");
- }
-
- model.removeNodeset("/root/send/reqdata");
- model.makeValue("/root/send/reqdata/pid" , model.getValue("/root/main/srchprofhist/pid"));
- model.makeValue("/root/send/reqdata/fromdd" , model.getValue("/root/main/srchprofhist/fromdd"));
- model.makeValue("/root/send/reqdata/todd" , model.getValue("/root/main/srchprofhist/todd"));
- model.makeValue("/root/send/reqdata/formcd" , model.getValue("/root/main/srchprofhist/formcd"));
- model.makeValue("/root/send/reqdata/issflag" , model.getValue("/root/main/srchprofhist/issflag"));
- model.makeValue("/root/send/reqdata/srchflag" , model.getValue("/root/main/srchprofhist/srchflag"));
- model.makeValue("/root/send/reqdata/histflag" , "histflag" );
- model.makeValue("/root/send/reqdata/prntuserid" , model.getValue("/root/main/srchprofhist/prntuserid") );
- model.makeValue("/root/send/reqdata/prntusernm" , model.getValue("/root/main/srchprofhist/prntusernm") );
-
- //2010.02.22, 주희경, ordtype 조회조건 추가
- model.makeValue("/root/send/reqdata/ordtype" , model.getValue("/root/main/srchprofhist/ordtype"));
-
- //자필, OCS 제증명 구분을 조회조건에 추가함
- //2009. 1. 23. 오지훈
- model.makeValue("/root/send/reqdata/holograpflag", model.getValue("/root/main/srchprofhist/holograpflag"));
-
- //로그인 사용자가 보험팀인 경우, 노인요양, 방문간호지시서만 조회
- //2009. 1. 2. 오지훈
- if(getUserInfo("dutplcecd")=="4070300000"){
- model.makeValue("/root/send/reqdata/insuflag", "Y");
- }
-
- if(submit("TRMMR02301")){
- model.makeNode("/root/temp2/profhist");
- model.copyNode("/root/temp2/profhist", "/root/main/profhist");
- }
- model.refresh();
- }
- /**
- * @desc : 제증명 관리 화면 open
- *
- * @param :
- * @return :
- * @author : HIT EMR Team
- * @---------------------------------------------------
- */
- function fOpenProfMngt(){
- var currow = grd_proflist.row - grd_proflist.fixedRows + 1;
- mmbfGetHardCodeInfo("/root/send/reqdata", "/root/memo/hardcd", 5593);
-
- //연번호 발행된 이력인 경우, 제증명관리화면을 open하지 않는다.
- if(model.getValue("/root/main/profhist/list["+ currow +"]/recyn") == "N"){
- var formrecseq = model.getValue("/root/main/profhist/list[" + currow + "]/formrecseq");
- var yearseqno = model.getValue("/root/main/profhist/list[" + currow + "]/yearseqno");
- var pid = model.getValue("/root/main/profhist/list[" + currow + "]/pid");
- var formcd = model.getValue("/root/main/profhist/list[" + currow + "]/formcd");
-
- model.resetInstanceNode("/root/init/iemr");
- model.setValue("/root/init/iemr/pid" , pid); //등록번호
- model.setValue("/root/init/iemr/docucd" , formcd); //서식코드
- model.setValue("/root/init/iemr/ocmnum" , yearseqno); //연번호
- model.makeValue("/root/init/iemr/cmc_spcid" , ""); //blocking null exception
- model.makeValue("/root/init/iemr/cmc_orddate", ""); //blocking null exception
- model.makeValue("/root/init/iemr/cmc_orderseqno", ""); //blocking null exception
-
- if(window.children.item("imgemrviewer") == null){
- //window.load("SSMRC03130.xrw", "modeless", "imgemrviewer", "", "/root/init/iemr", "/root/hidden/temp");
- //open("SPMMR06400", "", "", "", "", "/root/init/iemr", "/root/send/iemr");
- }
- messageBox("자필 제증명입니다.", "I999");
- }else{
- model.makeValue("/root/temp/popup/disflag" , "popup");
- model.makeValue("/root/temp/popup/pid" , model.getValue("/root/main/profhist/list[" + currow + "]/pid"));
- model.makeValue("/root/temp/popup/orddd" , model.getValue("/root/main/profhist/list[" + currow + "]/orddd"));
- model.makeValue("/root/temp/popup/cretno" , model.getValue("/root/main/profhist/list[" + currow + "]/cretno"));
- model.makeValue("/root/temp/popup/ioflag" , model.getValue("/root/main/profhist/list[" + currow + "]/ioflag"));
- model.makeValue("/root/temp/popup/profcertseq" , model.getValue("/root/main/profhist/list[" + currow + "]/profcertseq"));
- model.makeValue("/root/temp/popup/formrecseq" , model.getValue("/root/main/profhist/list[" + currow + "]/formrecseq"));
- model.makeValue("/root/temp/popup/yearseqno" , model.getValue("/root/main/profhist/list[" + currow + "]/yearseqno"));
- model.makeValue("/root/temp/popup/ord" , "ord");
- model.makeValue("/root/temp/popup/issstat" , model.getValue("/root/main/profhist/list[" + currow + "]/issstat"));
- model.makeValue("/root/temp/popup/issflag" , model.getValue("/root/main/profhist/list[" + currow + "]/issflag"));
- model.makeValue("/root/temp/popup/issid" , model.getValue("/root/main/profhist/list[" + currow + "]/issid"));
- model.makeValue("/root/temp/popup/issnm" , model.getValue("/root/main/profhist/list[" + currow + "]/issnm"));
- model.makeValue("/root/temp/popup/issdeptcd" , model.getValue("/root/main/profhist/list[" + currow + "]/issdeptcd"));
- model.makeValue("/root/temp/popup/issdeptnm" , model.getValue("/root/main/profhist/list[" + currow + "]/issdeptnm"));
- model.makeValue("/root/temp/popup/memoviewflag" , model.getValue("/root/memo/hardcd/hardcd/hardcd"));
-
- modal("SMMMR02900", 1,10, 10, "SMMMR02900", "/root/temp/popup", "/root/temp/popup");
- fGetProfPrntHist();
- }
- }
-
- /**
- * @desc : 건별 데이타 조회
- *
- * @param :
- * @return :
- * @author : HIT EMR Team
- * @---------------------------------------------------
- */
- function fSrchCalcScor(){
- var iRow = grd_proflist.row - grd_proflist.fixedRows + 1;
- model.removeNodeset("/root/send/reqdata");
- model.makeValue("/root/send/reqdata/profcertseq", model.getValue("/root/main/profhist/list["+iRow+"]/profcertseq"));
-
- if(!(submit("TRMMR02302"))){
- messageBox("조회를", "E009");
- model.makeValue("/root/temp/profinfo/profcertseq", "");
- }
- model.makeValue("/root/temp/profinfo/profcertseq", model.getValue("/root/main/profhist/list["+iRow+"]/profcertseq"));
- grp_calcHist.attribute("visibility")= "visible";
- }
- /**
- * @desc : 건별 데이타 삭제
- *
- * @param :
- * @return :
- * @author : HIT EMR Team
- * @---------------------------------------------------
- */
- function fDelCalcScor(){
- var nodeList = instance1.selectNodes("/root/main/prcpinfo/list");
-
- for(var i = 1; i <= nodeList.length; i++){
- if(model.getValue("/root/main/prcpinfo/list["+i+"]/check") == "true"){
- fDCprcpIFSet(i);
- }
- }
- grp_calcHist.attribute("visibility")= "hidden";
-
- fGetProfPrntHist();
- }
- /**
- * @desc : 저장 데이타 셋팅
- *
- * @param :
- * @return :
- * @author : HIT EMR Team
- * @---------------------------------------------------
- */
- function fDCprcpIFSet(){
- var nodeList = instance1.selectNodes("/root/main/prcpinfo/list");
-
- var sPassData =
- "savedataflag" //저장자료구분 (2:처방)
- + "▦saveflag" //저장구분 (O:외래, I:입원, E:응급, S:건진)
- + "▦prcpflag" //처방구분 (코드정의서 M0035 참조 '0'을 제외한 해당 값을 넣어주세요...)
- + "▦inptflag" //입력구분 (11:건진처방, 12:LIS장비IF, 13:기타LIS, 14:병리, 15:EMR기록, 16:원무)
- + "▦pamflag" //원무정보 처리구분 (Y/N) -> N일 경우 check하지 않음.
- + "▦diagflag" //진단정보 처리구분 (Y/N) -> N일 경우 check하지 않음. ('Y'이면 진단없이 처방 저장이 안됨)
- + "▦prcperrflag" //처방오류구분(Y/N) -> Y일 경우 의사처방과 동일하게 오류리스트를 반환, N이면 오류를 확인하지 않음
- + "▦deptcd" //부서코드 (입력자 또는 로그인한 사용자의 부서코드)
- + "▦deptnm" //부서명 (입력자 또는 로그인한 사용자의 부서명)
- + "▦userid" //사용자ID (입력자 또는 로그인한 사용자ID)
- + "▦usernm" //사용자명 (입력자 또는 로그인한 사용자명)
- + "▦singyn" //전자서명여부
- + "▦pid" //등록번호(원무Key)
- + "▦orddd" //진료일자(원무Key) - 입원일경우는 '-'
- + "▦indd" //입원일자(원무Key) - 외래일경우는 '-'
- + "▦cretno" //생성번호(원무Key)
- + "▦orddeptcd" //진료과(원무)
- + "▦orddrid" //진료의ID(원무)
- + "▦instcd" //기관코드
- + "▦status" //신규(I), DC(C)
- + "▦rowno" //줄번호 (병리 요구)
- + "▦prcpdd" //처방일자(외래/종건은 orddd와 동일, 입원은 처방일자)
- + "▦prcpno" //처방번호 (status가 'I'일 경우 0)
- + "▦prcphistno" //처방이력번호 (status가 'I'일 경우 0)
- + "▦prcpgenrflag" //처방발생구분(원무) - O:외래, I:입원, E:응급, S:건진
- + "▦prcpstatcd" //처방상태 : '000'
- + "▦prcpkindcd" //처방종류 : '20'
- + "▦prcpcd" //처방코드
- + "▦calcscorcd" //수가코드
- + "▦inclprcpcd" //종속처방코드 ('-')
- + "▦inclprcpno" //종속처방번호 (일련번호 - 종속처방코드별로 생성)
- + "▦prcpexecdeptcd" //처방실시부서코드 (수가의 접수부서를 넣어 주거나, 접수하는 부서코드, 없을 경우 '-'로 처리)
- + "▦prcphopedd" //처방희망일자 (처방일자 이전으로 발생불가)
- + "▦prcpqty" //처방수량 (1) (약품일 경우 반드시 포장단위 수량을 넣어 주어야 됨)
- + "▦prcpqtyunitflag" //처방수량단위 (약품일 경우 '3', 그렇지 않을경우 '-')
- + "▦prcptims" //처방횟수 (1) (입원일 경우 횟수에 따라 풀림)
- + "▦prcpdayno" //처방일수 (1) (지원부서에서는 주사처방에 대하여 일수를 넣으면 안됨, 넣으면 자료가 문제가 생김)
- + "▦payflagcd" //급여구분코드 (M0029 참조) -> '-'로 넣으주면 환자의 보험유형에 따라 자동 발생
- + "▦erprcpflag" //응급처방구분 (Y/N)
- + "▦precureprcpflag" //선처치처방구분 (Y/N)
- + "▦nigtprcpflag" //야간처방구분 (Y/N) : 야간가산에 해당 될 경우
- + "▦portprcpflag" //포터블처방구분 (Y/N)
- + "▦fixprcpflag" //정액처방구분 (Y/N)
- + "▦choiordflag" //선택처방구분 (Y/N) -> 만약 '-'일 경우 원무정보 기준으로 처리
- + "▦anamneflag" //기왕력(증)구분 (Y/N)
- + "▦prcpdirecflag" //처방방향구분 (코드정의서 M0041 참조), 재활은 위치구분으로 사용 : '-'
- + "▦angioflagcd" //Angio구분 (코드정의서 M0006 참조) : '-'
- + "▦opansflagcd" //수술마취구분 (코드정의서 M0007, M0008 참조) : '-'
- + "▦ansttm" //마취처방에 대한 마취적용시간 - 분을 4자리로 표현, 연속검사 검사간격
- + "▦offictourhealexamflag" //출장검진구분 (Y/N)
- + "▦stemcellflag" //'00NNN' 건진청구구분, 조혈모(줄기)세포 구분 - Stem Cell Source 여부 ,Cryo여부, CD34 채집여부, 해동여부의 조합으로 구성
- + "▦hosinhosoutflag" //원내외구분(건진은 'I', 약이 아닐경우 '-')
- + "▦hosinprcpresncd" //원내처방사유 (건진에 해당하는 사유 - 정의, 약이 아닐경우 '00')
- + "▦issdeptcd" //발행부서코드 (집계가 타부서일 경우 타과코드, 입원은 기본이 병동) -> '-' 로 처리하면 자동 처리(기본은 처방입력부서이나 입원은 해당 병동으로 처리)
- + "▦prcpauthflag" //처방권한구분(0:의사처방화면, 1:의사및간호사공유처방, 2:순수간호처방, 3:지원부서의사처방, 4:기타처방 - 기타 지원부서 추가, 5:계산용원무처방, 6:건진처방 ==> 0,1만 의사처방화면에 보임, 단 3은 추후에 결정)
- + "▦prcpinptflag" //처방입력구분(저장구분정보의 inptflag와 동일하게 처리)
- + "▦prcpsignflag" //처방서명구분(0:인증안됨, 1:의사가 후인증, 2:인증완료)
- + "▦oprsrvno" //수술예약번호(0)
- + "▦clincstdyflag" //임상연구구분 (Y/N)
- + "▦clincstdycd" //임상연구코드 ('-') -> 임상연구구분이 'Y'일 경우 임상연구코드를 등록
- + "▦drugmthdspccd" //투여방법및검체코드(약일 경우 복용방법, 진검 및 병리일 경우 검체코드, Default '-')
- + "▦prcpdelivefact" //처방전달사항
- + "▦tootfact" //치식 (병리만 사용, 나머지는 '-')
- + "▦matrsetprcpspec" //재료처방내용 ('-') -> 추후정의
- + "▦calcflag" //계산구분 (Y/N)
- + "▦rsrvflag" //예약구분 (Y/N)
- + "▦rsrvdd" //예약일자 ('N'일 경우 '00000000')
- + "▦rsrvtm" //예약시간 ('N'일 경우 '000000')
- + "▦rsrvrid" //예약자ID ('-')
- + "▦execdd" //실시일자 ('00000000')
- + "▦exectm" //실시시간 ('000000')
- + "▦execrid" //실시자ID ('-')
- + "▦direcprcplnkdd" //지시처방연계일자 (00000000) -> 지원부서에서 사용 - 원지시처방의 처방일자
- + "▦direcprcplnkno" //지시처방연계번호 (0) -> 지원부서에서 사용 - 원지시처방의 실시처방유일번호
- + "▦ordreqlnkno" //진료의뢰연계번호 (0)
- + "▦testreqlnkno" //검사의뢰연계번호 (0) -> 병리와 진단검사 사용
- + "▦ocrtag" // OCRTAG 2013.12.20
- + "▩" ;
-
- var sHeaderData =
- "saveflag"
- + "▦ocrtag"
- + "▦pid"
- + "▦orddd"
- + "▦cretno"
- + "▦orddeptcd"
- + "▦orddrid"
- + "▦lstupdtdeptcd"
- + "▦lstupdtdt"
- + "▦lstupdtuserid"
- + "▦delyn"
- + "▦eocryn"
- + "▦statcd"
- + "▦updtresncnts"
- + "▦pagecnt"
- + "▩" ;
-
- var savedataflag = "";
- var saveflag = "";
- var prcpflag = "";
- var inptflag = "";
- var pamflag = "";
- var diagflag = "";
- var prcperrflag = "";
- var deptcd = "";
- var deptnm = "";
- var userid = "";
- var usernm = "";
- var singyn = "";
- var pid = "";
- var orddd = "";
- var indd = "";
- var cretno = "";
- var orddeptcd = "";
- var orddrid = "";
- var instcd = "";
- var status = "";
- var rowno = "";
- var prcpdd = "";
- var prcpno = "";
- var prcphistno = "";
- var prcpgenrflag = "";
- var prcpstatcd = "";
- var prcpkindcd = "";
- var prcpcd = "";
- var calcscorcd = "";
- var inclprcpcd = "";
- var inclprcpno = "";
- var prcpexecdeptcd = "";
- var prcphopedd = "";
- var prcpqty = "";
- var prcpqtyunitflag = "";
- var prcptims = "";
- var prcpdayno = "";
- var payflagcd = "";
- var erprcpflag = "";
- var precureprcpflag = "";
- var nigtprcpflag = "";
- var portprcpflag = "";
- var fixprcpflag = "";
- var choiordflag = "";
- var anamneflag = "";
- var prcpdirecflag = "";
- var angioflagcd = "";
- var opansflagcd = "";
- var ansttm = "";
- var offictourhealexamflag = "";
- var stemcellflag = "";
- var hosinhosoutflag = "";
- var hosinprcpresncd = "";
- var issdeptcd = "";
- var prcpauthflag = "";
- var prcpinptflag = "";
- var prcpsignflag = "";
- var oprsrvno = "";
- var clincstdyflag = "";
- var clincstdycd = "";
- var drugmthdspccd = "";
- var prcpdelivefact = "";
- var tootfact = "";
- var matrsetprcpspec = "";
- var calcflag = "";
- var rsrvflag = "";
- var rsrvdd = "";
- var rsrvtm = "";
- var rsrvrid = "";
- var execdd = "";
- var exectm = "";
- var execrid = "";
- var direcprcplnkdd = "";
- var direcprcplnkno = "";
- var ordreqlnkno = "";
- var testreqlnkno = "";
- var ocrtag = "";
- var chkcnt = 0;
- for(var i = 1; i <= nodeList.length; i++){
- if(model.getValue("/root/main/prcpinfo/list["+i+"]/check") == "true"){
- chkcnt++;
- savedataflag = "2"; //저장자료구분 (2:처방)
- // saveflag = "O"; //저장구분 (O:외래, I:입원, E:응급, S:건진)
- saveflag = model.getValue("/root/main/prcpinfo/list[" + i + "]/saveflag"); //2010.02.18, hkjoo, 저장구분 (O:외래, I:입원, E:응급, S:건진)
- prcpflag = "5"; //처방구분 (코드정의서 M0035 참조 '0'을 제외한 해당 값을 넣어주세요...)
- inptflag = "15"; //입력구분 (11:건진처방, 12:LIS장비IF, 13:기타LIS, 14:병리, 15:EMR기록, 16:원무)
- pamflag = "Y"; //원무정보 처리구분 (Y/N) -> N일 경우 check하지 않음.
- diagflag = "N"; //진단정보 처리구분 (Y/N) -> N일 경우 check하지 않음. ('Y'이면 진단없이 처방 저장이 안됨)
- prcperrflag = "Y"; //처방오류구분(Y/N) -> Y일 경우 의사처방과 동일하게 오류리스트를 반환, N이면 오류를 확인하지 않음
- deptcd = getUserInfo("dutplcecd"); //부서코드 (입력자 또는 로그인한 사용자의 부서코드)
- deptnm = getUserInfo("dutplcenm"); //부서명(입력자 또는 로그인한 사용자의 부서명)
- userid = getUserInfo("userid"); //사용자ID (입력자 또는 로그인한 사용자ID)
- usernm = getUserInfo("usernm"); //사용자명 (입력자 또는 로그인한 사용자명)
- singyn = "N"; //전자서명여부
- pid = model.getValue("/root/main/prcpinfo/list[" + i + "]/pid"); //등록번호(원무Key)
- orddd = model.getValue("/root/main/prcpinfo/list[" + i + "]/orddd"); //진료일자(원무Key) - 입원일경우는 '-'
- indd = "-"; //입원일자(원무Key) - 외래일경우는 '-'
- if (saveflag == "I")
- {
- indd = model.getValue("/root/main/prcpinfo/list["+i+"]/orddd");
- }
- cretno = model.getValue("/root/main/prcpinfo/list[" + i + "]/cretno"); //생성번호(원무Key)
- orddeptcd = model.getValue("/root/main/prcpinfo/list[" + i + "]/orddeptcd"); //진료과(원무)
- orddrid = model.getValue("/root/main/prcpinfo/list[" + i + "]/orddrid");
- instcd = model.getValue("/root/main/prcpinfo/list[" + i + "]/instcd"); //기관코드
- status = ""; //신규(I), DC(C)
- status = "C";
- rowno = "1"; //줄번호 (병리 요구)
- prcpdd = ""; //처방일자(외래/종건은 orddd와 동일, 입원은 처방일자)
- //2010.02.27, 외래도 입원도 발행시 저장된 prcpdd 그대로 넘겨줘야함. 외래일 경우 다른날에 출력 할 수 있기 때문.
- prcpdd = model.getValue("/root/main/prcpinfo/list[" + i + "]/prcpdd"); //prcpdd
- /* if (saveflag == "I") //2010.02.18, hkjoo 입원의 경우에도 입원일자가 prcpdd로 셋팅되야함.
- {
- prcpdd = getCurrentDate();
- }
- else
- {*/
- // prcpdd = orddd;
- // }
- prcpno = model.getValue("/root/main/prcpinfo/list[" + i + "]/prcpno"); //처방번호 (status가 'I'일 경우 0)
- prcphistno = model.getValue("/root/main/prcpinfo/list[" + i + "]/prcphistno"); //처방이력번호 (status가 'I'일 경우 0)
- prcpgenrflag = saveflag; //처방발생구분(원무) - O:외래, I:입원, E:응급, S:건진
- prcpstatcd = "000"; //처방상태 : '000'
- prcpkindcd = "20"; //처방종류 : '20'
- prcpcd = model.getValue("/root/main/prcpinfo/list[" + i + "]/prcpcd"); //처방코드
- calcscorcd = model.getValue("/root/main/prcpinfo/list[" + i + "]/calcscorcd"); //수가코드
- inclprcpcd = "-"; //종속처방코드 ('-')
- inclprcpno = ""; //종속처방번호 (일련번호 - 종속처방코드별로 생성)
- prcpexecdeptcd = getUserInfo("dutplcecd"); //처방실시부서코드 (수가의 접수부서를 넣어 주거나, 접수하는 부서코드, 없을 경우 '-'로 처리)
- prcphopedd = prcpdd //처방희망일자 (처방일자 이전으로 발생불가)
- prcpqty = "1"; //처방수량 (1) (약품일 경우 반드시 포장단위 수량을 넣어 주어야 됨)
- prcpqtyunitflag = "-"; //처방수량단위 (약품일 경우 '3', 그렇지 않을경우 '-')
- prcptims = model.getValue("/root/main/prcpinfo/list[" + i + "]/prcptims"); //처방횟수 (1) (입원일 경우 횟수에 따라 풀림)
- prcpdayno = "1"; //처방일수 (1) (지원부서에서는 주사처방에 대하여 일수를 넣으면 안됨, 넣으면 자료가 문제가 생김)
- payflagcd = "-"; //급여구분코드 (M0029 참조) -> '-'로 넣으주면 환자의 보험유형에 따라 자동 발생
- erprcpflag = "N"; //응급처방구분 (Y/N)
- precureprcpflag = "N"; //선처치처방구분 (Y/N)
- nigtprcpflag = "N"; //야간처방구분 (Y/N) : 야간가산에 해당 될 경우
- portprcpflag = "N"; //포터블처방구분 (Y/N)
- fixprcpflag = "N"; //정액처방구분 (Y/N)
- choiordflag = "-"; //선택처방구분 (Y/N) -> 만약 '-'일 경우 원무정보 기준으로 처리
- anamneflag = "N"; //기왕력(증)구분 (Y/N)
- prcpdirecflag = "-"; //처방방향구분 (코드정의서 M0041 참조), 재활은 위치구분으로 사용 : '-'
- angioflagcd = "-"; //Angio구분 (코드정의서 M0006 참조) : '-'
- opansflagcd = "-"; //수술마취구분 (코드정의서 M0007, M0008 참조) : '-'
- ansttm = "0000"; //마취처방에 대한 마취적용시간 - 분을 4자리로 표현, 연속검사 검사간격
- offictourhealexamflag = "N"; //출장검진구분 (Y/N)
- stemcellflag = ""; //'00NNN' 건진청구구분, 조혈모(줄기)세포 구분 - Stem Cell Source 여부 ,Cryo여부, CD34 채집여부, 해동여부의 조합으로 구성
- hosinhosoutflag = "-"; //원내외구분(건진은 'I', 약이 아닐경우 '-')
- hosinprcpresncd = "00"; //원내처방사유 (건진에 해당하는 사유 - 정의, 약이 아닐경우 '00')
- issdeptcd = "-"; //발행부서코드 (집계가 타부서일 경우 타과코드, 입원은 기본이 병동) -> '-' 로 처리하면 자동 처리(기본은 처방입력부서이나 입원은 해당 병동으로 처리)
- prcpauthflag = "5"; //처방권한구분(0:의사처방화면, 1:의사및간호사공유처방, 2:순수간호처방, 3:지원부서의사처방, 4:기타처방 - 기타 지원부서 추가, 5:계산용원무처방, 6:건진처방 ==> 0,1만 의사처방화면에 보임, 단 3은 추후에 결정)
- prcpinptflag = "15"; //처방입력구분(저장구분정보의 inptflag와 동일하게 처리)
- prcpsignflag = "0"; //처방서명구분(0:인증안됨, 1:의사가 후인증, 2:인증완료)
- oprsrvno = "0"; //수술예약번호(0)
- clincstdyflag = "N"; //임상연구구분 (Y/N)
- clincstdycd = "-"; //임상연구코드 ('-') -> 임상연구구분이 'Y'일 경우 임상연구코드를 등록
- drugmthdspccd = "-"; //투여방법및검체코드(약일 경우 복용방법, 진검 및 병리일 경우 검체코드, Default '-')
- prcpdelivefact = ""; //처방전달사항
- tootfact = "-"; //치식 (병리만 사용, 나머지는 '-')
- matrsetprcpspec = "-"; //재료처방내용 ('-') -> 추후정의
- calcflag = "N"; //계산구분 (Y/N)
- rsrvflag = "N"; //예약구분 (Y/N)
- rsrvdd = "00000000"; //예약일자 ('N'일 경우 '00000000')
- rsrvtm = "000000"; //예약시간 ('N'일 경우 '000000')
- rsrvrid = "-"; //예약자ID ('-')
- execdd = "00000000"; //실시일자 ('00000000')
- exectm = "000000"; //실시시간 ('000000')
- execrid = "-"; //실시자ID ('-')
- direcprcplnkdd = "00000000"; //지시처방연계일자 (00000000) -> 지원부서에서 사용 - 원지시처방의 처방일자
- direcprcplnkno = "0"; //지시처방연계번호 (0) -> 지원부서에서 사용 - 원지시처방의 실시처방유일번호
- ordreqlnkno = "0"; //진료의뢰연계번호 (0)
- testreqlnkno = "0"; //검사의뢰연계번호 (0) -> 병리와 진단검사 사용
- ocrtag = model.getValue("/root/main/profhist/list[" + grd_proflist.row + "]/ocrtag"); //ocrtag
-
- sPassData = sPassData
- + savedataflag //savedataflag 저장자료구분 (2:처방)
- + "▦" + saveflag //saveflag" 저장구분 (O:외래, I:입원, E:응급, S:건진)
- + "▦" + prcpflag //prcpflag" 처방구분 (코드정의서 M0035 참조 '0'을 제외한 해당 값을 넣어주세요...)
- + "▦" + inptflag //inptflag" 입력구분 (11:건진처방, 12:LIS장비IF, 13:기타LIS, 14:병리, 15:EMR기록, 16:원무)
- + "▦" + pamflag //pamflag" 원무정보 처리구분 (Y/N) -> N일 경우 check하지 않음.
- + "▦" + diagflag //diagflag" 진단정보 처리구분 (Y/N) -> N일 경우 check하지 않음. ('Y'이면 진단없이 처방 저장이 안됨)
- + "▦" + prcperrflag //prcperrflag" 처방오류구분(Y/N) -> Y일 경우 의사처방과 동일하게 오류리스트를 반환, N이면 오류를 확인하지 않음
- + "▦" + deptcd //deptcd" 부서코드 (입력자 또는 로그인한 사용자의 부서코드)
- + "▦" + deptnm //deptnm" 부서명 (입력자 또는 로그인한 사용자의 부서명)
- + "▦" + userid //userid" 사용자ID (입력자 또는 로그인한 사용자ID)
- + "▦" + usernm //usernm" 사용자명 (입력자 또는 로그인한 사용자명)
- + "▦" + singyn //singyn" 전자서명여부
- + "▦" + pid //pid" 등록번호(원무Key)
- + "▦" + orddd //orddd" 진료일자(원무Key) - 입원일경우는 '-'
- + "▦" + indd //indd" 입원일자(원무Key) - 외래일경우는 '-'
- + "▦" + cretno //cretno" 생성번호(원무Key)
- + "▦" + orddeptcd //orddeptcd" 진료과(원무)
- + "▦" + orddrid //orddrid" 진료의ID(원무)
- + "▦" + instcd //instcd" 기관코드
- + "▦" + status //status" 신규(I), DC(C)
- + "▦" + rowno //rowno" 줄번호 (병리 요구)
- + "▦" + prcpdd //prcpdd" 처방일자(외래/종건은 orddd와 동일, 입원은 처방일자)
- + "▦" + prcpno //prcpno" 처방번호 (status가 'I'일 경우 0)
- + "▦" + prcphistno //prcphistno" 처방이력번호 (status가 'I'일 경우 0)
- + "▦" + prcpgenrflag //prcpgenrflag" 처방발생구분(원무) - O:외래, I:입원, E:응급, S:건진
- + "▦" + prcpstatcd //prcpstatcd" 처방상태 : '000'
- + "▦" + prcpkindcd //prcpkindcd" 처방종류 : '20'
- + "▦" + prcpcd //prcpcd" 처방코드
- + "▦" + calcscorcd //calcscorcd" 수가코드
- + "▦" + inclprcpcd //inclprcpcd" 종속처방코드 ('-')
- + "▦" + inclprcpno //inclprcpno" 종속처방번호 (일련번호 - 종속처방코드별로 생성)
- + "▦" + prcpexecdeptcd //prcpexecdeptcd" 처방실시부서코드 (수가의 접수부서를 넣어 주거나, 접수하는 부서코드, 없을 경우 '-'로 처리)
- + "▦" + prcphopedd //prcphopedd" 처방희망일자 (처방일자 이전으로 발생불가)
- + "▦" + prcpqty //prcpqty" 처방수량 (1) (약품일 경우 반드시 포장단위 수량을 넣어 주어야 됨)
- + "▦" + prcpqtyunitflag //prcpqtyunitflag" 처방수량단위 (약품일 경우 '3', 그렇지 않을경우 '-')
- + "▦" + prcptims //prcptims" 처방횟수 (1) (입원일 경우 횟수에 따라 풀림)
- + "▦" + prcpdayno //prcpdayno" 처방일수 (1) (지원부서에서는 주사처방에 대하여 일수를 넣으면 안됨, 넣으면 자료가 문제가 생김)
- + "▦" + payflagcd //payflagcd" 급여구분코드 (M0029 참조) -> '-'로 넣으주면 환자의 보험유형에 따라 자동 발생
- + "▦" + erprcpflag //erprcpflag" 응급처방구분 (Y/N)
- + "▦" + precureprcpflag //precureprcpflag" 선처치처방구분 (Y/N)
- + "▦" + nigtprcpflag //nigtprcpflag" 야간처방구분 (Y/N) : 야간가산에 해당 될 경우
- + "▦" + portprcpflag //portprcpflag" 포터블처방구분 (Y/N)
- + "▦" + fixprcpflag //fixprcpflag" 정액처방구분 (Y/N)
- + "▦" + choiordflag //choiordflag" 선택처방구분 (Y/N) -> 만약 '-'일 경우 원무정보 기준으로 처리
- + "▦" + anamneflag //anamneflag" 기왕력(증)구분 (Y/N)
- + "▦" + prcpdirecflag //prcpdirecflag" 처방방향구분 (코드정의서 M0041 참조), 재활은 위치구분으로 사용 : '-'
- + "▦" + angioflagcd //angioflagcd" Angio구분 (코드정의서 M0006 참조) : '-'
- + "▦" + opansflagcd //opansflagcd" 수술마취구분 (코드정의서 M0007, M0008 참조) : '-'
- + "▦" + ansttm //ansttm" 마취처방에 대한 마취적용시간 - 분을 4자리로 표현, 연속검사 검사간격
- + "▦" + offictourhealexamflag //offictourhealexamflag" 출장검진구분 (Y/N)
- + "▦" + stemcellflag //stemcellflag" '00NNN' 건진청구구분, 조혈모(줄기)세포 구분 - Stem Cell Source 여부 ,Cryo여부, CD34 채집여부, 해동여부의 조합으로 구성
- + "▦" + hosinhosoutflag //hosinhosoutflag" 원내외구분(건진은 'I', 약이 아닐경우 '-')
- + "▦" + hosinprcpresncd //hosinprcpresncd" 원내처방사유 (건진에 해당하는 사유 - 정의, 약이 아닐경우 '00')
- + "▦" + issdeptcd //issdeptcd" 발행부서코드 (집계가 타부서일 경우 타과코드, 입원은 기본이 병동) -> '-' 로 처리하면 자동 처리(기본은 처방입력부서이나 입원은 해당 병동으로 처리)
- + "▦" + prcpauthflag //prcpauthflag" 처방권한구분(0:의사처방화면, 1:의사및간호사공유처방, 2:순수간호처방, 3:지원부서의사처방, 4:기타처방 - 기타 지원부서 추가, 5:계산용원무처방, 6:건진처방 ==> 0,1만 의사처방화면에 보임, 단 3은 추후에 결정)
- + "▦" + prcpinptflag //prcpinptflag" 처방입력구분(저장구분정보의 inptflag와 동일하게 처리)
- + "▦" + prcpsignflag //prcpsignflag" 처방서명구분(0:인증안됨, 1:의사가 후인증, 2:인증완료)
- + "▦" + oprsrvno //oprsrvno" 수술예약번호(0)
- + "▦" + clincstdyflag //clincstdyflag" 임상연구구분 (Y/N)
- + "▦" + clincstdycd //clincstdycd" 임상연구코드 ('-') -> 임상연구구분이 'Y'일 경우 임상연구코드를 등록
- + "▦" + drugmthdspccd //drugmthdspccd" 투여방법및검체코드(약일 경우 복용방법, 진검 및 병리일 경우 검체코드, Default '-')
- + "▦" + prcpdelivefact //prcpdelivefact" 처방전달사항
- + "▦" + tootfact //tootfact" 치식 (병리만 사용, 나머지는 '-')
- + "▦" + matrsetprcpspec //matrsetprcpspec" 재료처방내용 ('-') -> 추후정의
- + "▦" + calcflag //calcflag" 계산구분 (Y/N)
- + "▦" + rsrvflag //rsrvflag" 예약구분 (Y/N)
- + "▦" + rsrvdd //rsrvdd" 예약일자 ('N'일 경우 '00000000')
- + "▦" + rsrvtm //rsrvtm" 예약시간 ('N'일 경우 '000000')
- + "▦" + rsrvrid //rsrvrid" 예약자ID ('-')
- + "▦" + execdd //execdd" 실시일자 ('00000000')
- + "▦" + exectm //exectm" 실시시간 ('000000')
- + "▦" + execrid //execrid" 실시자ID ('-')
- + "▦" + direcprcplnkdd //direcprcplnkdd" 지시처방연계일자 (00000000) -> 지원부서에서 사용 - 원지시처방의 처방일자
- + "▦" + direcprcplnkno //direcprcplnkno" 지시처방연계번호 (0) -> 지원부서에서 사용 - 원지시처방의 실시처방유일번호
- + "▦" + ordreqlnkno //ordreqlnkno" 진료의뢰연계번호 (0)
- + "▦" + testreqlnkno //testreqlnkno" 검사의뢰연계번호 (0) -> 병리와 진단검사 사용
- + "▦" + ocrtag //ocrtag" OCRTAG
- + "▩" ;
- // 2013.12.26 Start
- if( chkcnt == 1 ){
- // 2013.12.20 반환시 OCR 이미지 삭제처리
- if( ocrtag != null && ocrtag != "" ){
- sHeaderData = sHeaderData
- + saveflag
- + "▦" + ocrtag
- + "▦" + pid //pid" 등록번호(원무Key)
- + "▦" + orddd //orddd" 진료일자(원무Key) - 입원일경우는 '-'
- + "▦" + cretno //cretno" 생성번호(원무Key)
- + "▦" + orddeptcd //orddeptcd" 진료과(원무)
- + "▦" + orddrid //orddrid" 진료의ID(원무)
- + "▦" + getUserInfo("dutplcecd") //instcd" 기관코드
- + "▦" + getCurrentDate()
- + "▦" + getUserInfo("userid")
- + "▦" + "Y"
- + "▦" + "Y"
- + "▦" + "CP"
- + "▦" + "제증명 반환으로 인한 삭제"
- + "▦" + "1"
- + "▩" ;
- }
- }
- }
- }
-
- model.makeValue("/root/send/savedata/ocrtaglist", sHeaderData);
- model.makeValue("/root/send/savedata/rcptlist", sPassData);
- model.makeValue("/root/send/savedata/profcertseq", model.getValue("/root/temp/profinfo/profcertseq"));
- if (submit("TXMMR02301", false) == true){
- //오류팝업_KNUH_20110215 추가
- var prcpErrList = model.instances(0).selectNodes( "/root/result/prcperrlist" );
- if ( prcpErrList.length > 0 ) {
- if ( !isNull(model.getValue ("/root/result/prcperrlist/prcpcd"))){
- var xpt = window.screenleft + 100;
- var ypt = window.screenTop + 50;
- var coord = getRelativeCoordinate ( xpt, ypt );
- var mon = coord[0];
- xpt = coord[1];
- ypt = coord[2];
- model.makeValue("/root/result/prcperrlist/flag", "1");
- //open ( "SPMMO00600", mon, xpt, ypt, "prcpdetl", "/root/temp/result", "/root/result", "", false );
- modal ( "SPMMO00600", mon, xpt, ypt, "prcpdetl", "/root/result", "/root/result" ); //오류팝업
- model.removeNodeset("/root/result/prcperrlist");
- }
- }
- else
- {
- fSrchCalcScor();
- }
- }
- }
|