123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378 |
- /*
- - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
- 관심환자등록 (SPMMO08200_관심환자등록.xrw - JScript )
- - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
- */
- var sPATINFO_PARAM; // 환자의 등록번호, 입원(외래)일자 및 한글명을 받는 Parameter
- var sINPATINFO_PATH = "/root/hidden/patinfo";
- var sCONCPATINFO_PATH = "/root/main/concpatinfo/concpatinfo";
- var sCONCPATINFOHIST_PATH = "/root/main/concpatinfohist/concpatinfohist"
- var sCONDITION_PATH = "/root/main/cond";
- /**
- * @desc : 화면 초기화
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fInitialize(){
- model.setValue("/root/init/today", getCurrentDate());
- model.setValue("/root/main/concpatinfo/concpatinfo/valifromdd", getCurrentDate());
- model.setValue("/root/main/concpatinfo/concpatinfo/valitodd", "99991231");
- zbcfGetCodeList(new Array("M0001"), new Array("/root/init/M0001"));
- model.refresh();
-
- if(checkOpener()){
- sPATINFO_PARAM = opener.javascript.getParameter("param");
- fSetPatInfo(sPATINFO_PARAM);
- fReqConcPatInfo(grd_concpatinfohist); //관심환자 정보 조회
- fReqConcTypeCd(); //관심분류코드 조회
- }
- }
- /**
- * @desc : 관심환자 정보 설정
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSetPatInfo(param){
- //param구조 genrflagcd + "▩" + pid + "▩" + hngnm + "▩" + indd + "▩" + cretno + "▩" + seqno + "▩" + instcd;
- if(param != ""){
- var paramArray = param.split("▩");
-
- model.setValue(sCONCPATINFO_PATH + "/pid" , paramArray[1]);
- model.setValue(sCONDITION_PATH + "/dd" , paramArray[3]);
- model.setValue(sCONCPATINFO_PATH + "/hngnm" , paramArray[2]);
- model.setValue(sCONCPATINFO_PATH + "/instcd" , paramArray[6]);
- model.setValue(sCONCPATINFO_PATH + "/valifromdd", model.getValue("/root/init/today"));
-
- }
- else{
-
- var paminfo = getGlobalVariable("paminfo");
- setCSVToNode("/root/paminfo", paminfo);
-
- model.setValue(sCONCPATINFO_PATH + "/pid" , getPatientInfo("pid"));
- model.setValue(sCONDITION_PATH + "/dd" , model.getValue("/root/paminfo/list/indd"));
- model.setValue(sCONCPATINFO_PATH + "/hngnm" , getPatientInfo("pname"));
- model.setValue(sCONCPATINFO_PATH + "/instcd" , getUserInfo("posinstcd"));
- model.setValue(sCONCPATINFO_PATH + "/valifromdd", model.getValue("/root/init/today"));
- }
- model.refresh();
- }
- /**
- * @desc : 관심환자 조회
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fReqConcPatInfo(grdObj){
- model.copyNode("/root/send/reqdata", sCONCPATINFO_PATH);
- model.makeValue("/root/send/reqdata/conckindcd", model.getValue(sCONCPATINFO_PATH + "/conckindcd"));
- model.refresh();
-
- if(submit("TRMMO08203")){
- var totRow = grdObj.rows - grdObj.fixedRows + 1;
- if(totRow < 2){
- model.setValue(sCONDITION_PATH + "/status", "i");
- model.setValue(sCONDITION_PATH + "/statusnm", "신규등록");
- model.refresh();
- }else{
- model.copyNode(sCONCPATINFO_PATH, sCONCPATINFOHIST_PATH + "[" + 1 + "]");
- }
- }
- }
- /**
- * @desc : 관심환자 정보 수정 상태로 변경
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSetUpdtStatus(){
- var status = model.getValue(sCONDITION_PATH + "/status");
- if(status == "i"){
- return;
- }else{
- model.setValue(sCONDITION_PATH + "/status", "u");
- model.setValue(sCONDITION_PATH + "/statusnm", "수정 중");
- }
- model.refresh();
- }
- /**
- * @desc : 신규 관심환자 등록
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fRgstNewConcPatInfo(){
- model.resetInstanceNode(sCONCPATINFO_PATH);
- fSetPatInfo(sPATINFO_PARAM);
-
- model.setValue(sCONCPATINFO_PATH + "/conckindcd", "P");
- model.setValue(sCONDITION_PATH + "/status" , "i");
- model.setValue(sCONDITION_PATH + "/statusnm" , "신규등록");
- //model.setValue(sCONDITION_PATH + "/valitodd" , "99991231");
- //091103 박유진 초기화시 초기 todd 지정되지 않아 수정함.
- model.setValue(sCONCPATINFO_PATH + "/valitodd" , "99991231");
- model.refresh();
- }
- /**
- * @desc : 관심분류명 및 코드 조회
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fReqConcTypeCd(){
- model.removeNodeset("/root/send/reqdata");
- model.makeValue("/root/send/reqdata/conckindcd", model.getValue(sCONCPATINFO_PATH + "/conckindcd"));
- if(submit("TRMMO08301")){
- }
- }
- /**
- * @desc : 관심환자정보 저장
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSaveConcPatInfo(){
- if(ipt_pid.value == ""){
- messageBox("등록번호를", "C001");
- return;
- }
- if(opt_unitcd.value == ""){
- messageBox("환자명을", "C001");
- return;
- }
- var conctypecd = model.getValue(sCONCPATINFO_PATH + "/conctypecd");
- if(conctypecd == ""){ //관심분류명을 선택하지 않은 경우 error!!
- messageBox("분류명을", "C001");
- return;
- }
- model.copyNode("/root/send/savedata" , sCONCPATINFO_PATH);
- model.makeValue("/root/send/savedata/status", model.getValue(sCONDITION_PATH + "/status"));
- if(submit("TXMMO08203")){
- var rsltnode = model.instance1.selectNodes(sCONCPATINFOHIST_PATH);
- if(rsltnode.length > 0){
- grd_concpatinfohist.row = 1;
- fSelectConcPatInfo();
- }
-
- }
- }
- /**
- * @desc : 관심환자정보 선택 - 상세 정보를 보여줌, 수정할 수 있도록 처리함
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSelectConcPatInfo(){
- var currow = grd_concpatinfohist.row;
- model.copyNode(sCONCPATINFO_PATH, sCONCPATINFOHIST_PATH + "[" + currow + "]");
- model.setValue(sCONDITION_PATH + "/status" , "u");
- model.refresh();
- }
- /**
- * @desc : 등록번호로 환자검색
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fAfSignPatSrch(){
-
- var fPid = model.getValue("/root/main/concpatinfo/concpatinfo/pid");
- if(fPid == ""){
- fPid = getPatientInfo("pid");
- }
- if(fPid == ""){
- messageBox("등록번호를", "C001");
- return;
- }
-
- model.setValue ( "/root/send/cond1", "1");
- model.setValue ( "/root/send/cond2", fPid);
- model.setValue ( "/root/send/cond3", getUserInfo("dutplceinstcd"));
- model.setValue ( "/root/send/cond4", "N");
- model.setValue ( "/root/send/cond5", "N");
- model.setValue ( "/root/send/cond6", "-");
- model.setValue ( "/root/send/cond10", ((getCurrentDate().toDate()).getAddDate(-3,"M")).getDateFormat());
- model.setValue ( "/root/send/cond11", getCurrentDate())
- if (!submit ( "TRMMO00200",false )) { //검색 시작 값이 없으면 clear 한다.
- fClearAddPrcp();
- return;
- }
- var srcNodeList = model.instances(0).selectNodes("/root/patordinfo/patordinfolist");
- var currentDate = getCurrentDate();
-
- setParameter ( "SPMMO09100_paminfoyn", "N");
- //model.setValue("/root/formerkey/pseuacptflag", "N");
-
- if ( srcNodeList.length >= 1 ) { //값이 한개이상이면 팝업을 띄운다.
- var xpt = window.screenleft + 50;
- var ypt = window.screenTop + 80;
- var coord = getRelativeCoordinate ( xpt, ypt );
- var mon = coord[0];
- xpt = coord[1];
- ypt = coord[2];
- modal ( "SPMMO09100", mon, xpt, ypt, "patordinfo", "/root/patordinfo", "/root/patordinfo", "", false );
- // 팝업에서 취소 시 이벤트 처리
- var cancelKey = getParameter ( "SPMMO09100_rtnyn");
- if (cancelKey != "Y") {
- fClearAddPrcp();
- clearParameter("SPMMO09100_rtnyn" );
- clearParameter("SPMMO09100_paminfoyn" );
- return ;
- }
-
- model.removeNodeset("/root/patordinfo/patordinfolist");
- var rtnparam = getParameter( "SPMMO09100_rtn_param");
- setCSVToNode("/root/patordinfo", rtnparam, "patordinfolist");
-
- var pid = getParameter ( "SPMMO09100_pid" );
- var orddd = getParameter ( "SPMMO09100_orddd");
- var cretno = getParameter ( "SPMMO09100_cretno");
- var instcd = getParameter ( "SPMMO09100_instcd");
- var ioflag = getParameter ( "SPMMO09100_ioflag");
- var orddeptcd = getParameter ( "SPMMO09100_orddeptcd");
- var orddrid = getParameter ( "SPMMO09100_orddrid");
- var indschacptstat = getParameter ( "SPMMO09100_indschacptstat");
- var dschdd = getParameter ( "SPMMO09100_dschdd");
- var insukind = getParameter ( "SPMMO09100_insukind");
- var suppkind = getParameter ( "SPMMO09100_suppkind");
-
- model.setValue("/root/main/concpatinfo/concpatinfo/hngnm", model.getValue("/root/patordinfo/patordinfolist/hngnm"));
- model.setValue("/root/main/cond/dd", model.getValue("/root/patordinfo/patordinfolist/orddd"));
- model.setValue("/root/main/concpatinfo/concpatinfo/instcd", model.getValue("/root/patordinfo/patordinfolist/instcd"));
-
- /*
- if ( getParameter ( "SPMMO09100_dc") != "DC" ) {
- // 진료일과 현재일이 다른 경우 가접수 후 데이타 셋팅. 20090604 퇴원후 바로 가접수처리건때문에 외래에만 적용.
- //if ( currentDate != orddd ) {
- if ( currentDate != orddd && (ioflag == "O" || ioflag == "S")) {
- // 진단명 조회를 위한 구 키 셋팅
- model.setValue("/root/formerkey/pid", pid);
- model.setValue("/root/formerkey/orddd_old", orddd);
- model.setValue("/root/formerkey/cretno_old", cretno);
- model.setValue("/root/formerkey/instcd", instcd);
- model.setValue("/root/formerkey/genrflagcd_old", ioflag);
- model.setValue("/root/formerkey/pseuacptflag", "Y");
-
- var returnkey = fSetAssumAccept(pid, orddd, cretno, "O");
- if (returnkey == false) return ;
-
- pid = model.getValue ( "/root/execpatordinfo/execpatordinfolist/otpt_pid" );
- orddd = model.getValue ( "/root/execpatordinfo/execpatordinfolist/otpt_orddd" );
- cretno = model.getValue ( "/root/execpatordinfo/execpatordinfolist/otpt_cretno" );
-
- model.setValue("/root/formerkey/orddd", orddd);
- model.setValue("/root/formerkey/cretno", cretno);
- model.setValue("/root/formerkey/genrflagcd", ioflag);
- } else if ( (ioflag == "I" || ioflag == "D" || ioflag == "E") && indschacptstat == "D" ) {
- // 진단명 조회를 위한 구 키 셋팅
- model.setValue("/root/formerkey/pid", pid);
- model.setValue("/root/formerkey/orddd_old", orddd);
- model.setValue("/root/formerkey/cretno_old", cretno);
- model.setValue("/root/formerkey/instcd", instcd);
- model.setValue("/root/formerkey/genrflagcd_old", ioflag);
- model.setValue("/root/formerkey/pseuacptflag", "Y");
-
- var returnkey = fSetAssumAccept(pid, orddd, cretno, "I", orddeptcd, orddrid, insukind, suppkind );
- if (returnkey == false) return ;
-
- pid = model.getValue ( "/root/followup/followup/otpt_pid" );
- orddd = model.getValue ( "/root/followup/followup/otpt_orddd" );
- cretno = model.getValue ( "/root/followup/followup/otpt_cretno" );
- ioflag = "O" ; // 강제로 외래 셋팅
- model.setValue( "/root/patordinfo/patordinfolist/ioflag", ioflag);
-
- model.setValue("/root/formerkey/orddd", orddd);
- model.setValue("/root/formerkey/cretno", cretno);
- model.setValue("/root/formerkey/genrflagcd", ioflag);
- }
- //}
- }
- */
- clearParameter("SPMMO09100_pid" );
- clearParameter("SPMMO09100_orddd");
- clearParameter("SPMMO09100_cretno");
- clearParameter("SPMMO09100_instcd");
- clearParameter("SPMMO09100_ioflag");
- clearParameter("SPMMO09100_orddeptcd");
- clearParameter("SPMMO09100_orddrid");
- clearParameter("SPMMO09100_indschacptstat");
- clearParameter("SPMMO09100_dschdd");
- clearParameter("SPMMO09100_dc");
- clearParameter("SPMMO09100_insukind");
- clearParameter("SPMMO09100_suppkind");
- /*
- if ( isNull(pid )) {
- fClearAddPrcp();
- } else {
- fAddPrcpInitConDone( pid, orddd, cretno, instcd, ioflag , "N", dschdd );
- fPatDethInfo(); //사망환자 alert(2009.12.21 JJE)
- }
- */
- }
- model.refresh();
- }
- function fClearAddPrcp() {
- //cmb_prcpdd.visible = false;
- //cmb_issdept.visible = false;
- //cmb_hosinprcpresn.visible = false;
- //caption14.visible = false;
- //cmb_prcpkind.visible = false;
- // btn_prcpsave.disabled = true;
- //model.setValue ( "/root/init/srchcond2","" );
- //model.setValue ( "/root/init/srchcond3","" );
- //model.setValue ( "/root/init/rrgstno2","" );
- //model.setValue ( "/root/init/orddeptnm","" );
- //model.removeNodeSet ( "/root/main/diaginfo/diagcdlist");
- //model.removeNodeSet ( "/root/main/prcp/prcplist");
- //model.removeNodeSet ( "/root/paminfo/list");
- //model.removeNodeSet ( "/root/patflag/list");
- //output2.value = "";
- //output3.value = "";
- //output4.value = "";
- //output6.value = "";
- //output7.value = "";
- //appendChildPrcp ( "/root/reset/prcplist", "/root/main/prcp", "main" )
- //btn_prmsprcp.selected = true;
- //ivw_prcp.src = "SMMMO02300_약속처방.xrw";
- //btn_issdept.visible = false;
- //model.refresh();
- return;
- }
|