123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443 |
- /*
-
- 복막투석 예약등록(SMMND03000.xrw - JScript )
- - Version :
- 1) : Ver.1.00.01
- */
- var rsrvfromdd; //예약시작일자
- var rsrvtodd ; //예약종료일자
- var ddterm; //예약일자 간격
- var rsrvterm = 0; //예약기간
-
- /**
- * @group :
- * @ver : 2007.05.14
- * @by : 김진아
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 화면 초기화
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fDone(){
- //컨트롤 초기화
- var sRtn = getCurrentDate(); //현재일자 리턴
- model.makeValue("/root/main/cretlist/cretinfo/rsrvfromdd", sRtn);
-
- var node = getGlobalVariable("paminfo");
- setCSVToNode("/root/main/paminfo", node);
- if(getNodesetCount("/root/main/paminfo") > 0) {
- model.makeValue("/root/main/cretlist/cretinfo/pid", model.getValue("/root/main/paminfo/list/pid"));
- fSrchPat(); //환자기본정보 조회
- }
- // model.removeNodeset("/root/main/cretlist/pdrsrvlist"); // 예약정보 그리드 초기화
- grd_pdrsrvinfo.refresh();
- model.setFocus("ipt_pid");
- }
- /**
- * @group :
- * @ver : 2007.05.14
- * @by : 김진아
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 등록번호로 환자를 검색한다.(예약생성시)
- * @param :
- * @return : 환자명, 환자주민등록번호
- * @---------------------------------------------------
- */
- function fSrchPat()
- {
- if(model.getValue("/root/main/cretlist/cretinfo/pid") == ""){
- return;
- }
-
- model.removenode("/root/send");
- model.makeNode ("/root/send");
- model.makeValue ("/root/send/reqdata/pid" , model.getValue("/root/main/cretlist/cretinfo/pid"));
- model.makeValue ("/root/send/reqdata/dialflag", "P");
- model.removeNodeset("/root/main/cretlist/getcreinfo/hngnm");
- model.removeNodeset("/root/main/cretlist/getcreinfo/rrgstno1");
- model.removeNodeset("/root/main/cretlist/getcreinfo/rrgstno2");
- model.removeNodeset("/root/main/cretlist/getcreinfo/ioflag");
- model.removeNodeset("/root/main/cretlist/getcreinfo/matndialflag"); //유지투석구분
- model.removeNodeset("/root/main/cretlist/pdrsrvlist"); // 예약정보 그리드 초기화
-
- opt_hngnm.value = "";
- opt_rrgstno1.value = "";
- opt_rrgstno2.value = "";
- opt_ioflag.value = ""; //입원환자 등록번호
-
- submit("TRMND03001"); //환자기본정보 및 입원내역테이블을 조회한다.
- model.makeValue("/root/main/cretlist/cretinfo/pid" , model.getValue("/root/main/cretlist/getcreinfo/pid"));
- model.makeValue("/root/main/cretlist/cretinfo/hngnm" , model.getValue("/root/main/cretlist/getcreinfo/hngnm"));
- model.makeValue("/root/main/cretlist/cretinfo/rrgstno1" , model.getValue("/root/main/cretlist/getcreinfo/rrgstno1"));
- model.makeValue("/root/main/cretlist/cretinfo/rrgstno2" , model.getValue("/root/main/cretlist/getcreinfo/rrgstno2"));
- model.makeValue("/root/main/cretlist/cretinfo/ioflag" , model.getValue("/root/main/cretlist/getcreinfo/ioflag"));
- model.makeValue("/root/main/cretlist/cretinfo/matndialflag", model.getValue("/root/main/cretlist/getcreinfo/matndialflag"));
-
- fSetDefaultRsrvdd(); // 예약생성초기화
-
- // 복막투석 예약정보의 과거예약내역에 대한 선택항목 체크박스 비활성화
- for(var i=1; i<grd_pdrsrvinfo.rows; i++ ){
- if(model.getValue("/root/main/cretlist/pdrsrvlist/pdrsrvinfo["+i+"]/disableyn") == "false"){
- grd_pdrsrvinfo.isReadOnly(i, grd_pdrsrvinfo.colRef("check")) = true;
- }
- }
- model.refresh();
-
- if(model.getValue("/root/main/cretlist/getcreinfo/matndialflag") == "H"){
- messageBox("혈액투석 유지환자", "E008", "복막투석 예약을 수행 할 수 없습니다.");
- fClearChildNode("/root/main/cretlist/cretinfo");
- model.makeNode("/root/main/cretlist/getcreinfo");
- model.removeNodeset("/root/main/cretlist/pdrsrvlist"); // 예약정보 그리드 초기화
- fSetDefaultRsrvdd();
- model.refresh();
- }else if(model.getValue("/root/main/cretlist/getcreinfo/matndialflag") == ""){
- messageBox("유지환자가 아닙니다.", "I", "먼저 복막투석 유지환자로 등록하십시오.");
- fClearChildNode("/root/main/cretlist/cretinfo");
- model.makeNode("/root/main/cretlist/getcreinfo");
- model.removeNodeset("/root/main/cretlist/pdrsrvlist"); // 예약정보 그리드 초기화
- fSetDefaultRsrvdd();
- model.refresh();
- }
- }
- /**
- * @group :
- * @ver : 2007.05.14
- * @by : 김진아
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 예약일자 지정(저장버튼 클릭 시)
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSetRsrvdd()
- {
- rsrvfromdd = model.getValue("/root/main/cretlist/cretinfo/rsrvfromdd"); //예약시작일자
- rsrvtodd = model.getValue("/root/main/cretlist/cretinfo/rsrvtodd"); //예약종료일자
- ddterm = model.getValue("/root/main/cretlist/cretinfo/rsrvterm"); //예약일자 간격
- if(rdo_rsrvopt.value == 2){ //예약범위
- rsrvterm = getDateInterval(rsrvfromdd,rsrvtodd);
- }
- if(rdo_rsrvopt.value == 1){ // 단일 예약일자
- model.removeNodeset("/root/hidden");
- model.makeNode("/root/hidden/rsrvddlist/rsrvdd");
- model.setValue("/root/hidden/rsrvddlist/rsrvdd", model.getValue("/root/main/cretlist/cretinfo/rsrvfromdd"));
- }else if(rdo_rsrvopt.value == 2){ // 예약범위 지정
- model.removeNodeset("/root/hidden");
- //var year = rsrvfromdd.substr(0,4);
- //var month = rsrvfromdd.substr(4,2);
- //var day = rsrvfromdd.substr(6,2);
- //var dd = year + month + day;
- var dd = rsrvfromdd;
-
- //에약일자 간격으로 예약기간동안의 예약일자 구하기
- for(var i=1; i<=rsrvterm+1; i++){
- if(dd <= rsrvtodd){
- var insRow = eval(getNodesetCount("/root/hidden/rsrvddlist"))+1;
- model.makeNode("/root/hidden/rsrvddlist["+insRow+"]/rsrvdd");
- model.setValue("/root/hidden/rsrvddlist["+insRow+"]/rsrvdd", dd);
-
- dd = getDateCalc(dd, ddterm, "+");
-
- //2008-09-16 로직 삭제(양천덕)
- // day = parseInt(day) + parseInt(ddterm);
- // with(new Date(year, month, 1, 12)) { //MM = 1 .. 12
- // setDate(0);
- // var lstday = getDate(); //해당월의 마지막 일
- // }
- //
- // if(parseInt(day)>parseInt(lstday)){
- // if(month==12){
- // year = parseInt(year)+1;
- // month =(parseInt(month)+1)-12;
- // if(month<10){
- // month = "0"+month;
- // }
- // }else{
- // month = (parseInt(month)+1);
- // if(month<10){
- // month = "0"+month;
- // }
- // }
- // if((parseInt(day)-parseInt(lstday))<10){
- // day = "0"+(day-lstday);
- // }else{
- // day = (parseInt(day)-parseInt(lstday));
- // }
- // }else{
- // if(day<10){
- // day = "0"+day;
- // }
- // }
- // dd = year + month + day;
- }//end of if
- }//end of for
- }//end of if
- }
- function fSetDefaultRsrvdd(){
- model.makeValue("/root/main/cretlist/cretinfo/rsrvcnts" , "");
- model.makeValue("/root/main/cretlist/cretinfo/rsrvopt" , "1");
- model.makeValue("/root/main/cretlist/cretinfo/rsrvfromdd", getCurrentDate());
- model.makeValue("/root/main/cretlist/cretinfo/rsrvtodd" , "");
- model.makeValue("/root/main/cretlist/cretinfo/rsrvterm" , "");
- ipt_rsrvtodd.disabled = true;
- ipt_rsrvterm.disabled = true;
- }
- /**
- * @group :
- * @ver : 2007.05.14
- * @by : 김진아
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 복막투석 예약 저장(저장버튼 클릭 시)
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSaveRsrv(){
- if(model.getValue("/root/main/cretlist/getcreinfo/matndialflag") == "H"){
- messageBox("혈액투석 유지환자", "E008", "복막투석 예약을 수행 할 수 없습니다.");
- fClearChildNode("/root/main/cretlist/cretinfo");
- fClearChildNode("/root/main/cretlist/getcreinfo");
- model.refresh();
- } else{
- if(model.getValue("/root/main/cretlist/cretinfo/pid") == "") {
- messageBox("등록번호는", "I003", "");
- return;
- }
-
- if(model.getValue("/root/main/cretlist/cretinfo/hngnm")=="") {
- messageBox("환자기본 정보 조회 수행을 하지", "E007", "(등록번호 입력 후 엔터키를 누르십시오.)");
- model.setFocus("ipt_pid");
- return;
- }
-
- var sCurrDate = getCurrentDate();
- if(sCurrDate > ipt_rsrvfromdd.value){
- messageBox("예약일자는 현재일 이전으로 등록할 수 없습니다.","I");
- ipt_rsrvfromdd.value = sCurrDate;
- return;
- }
-
- if(ipt_rsrvtodd.value < ipt_rsrvfromdd.value && rdo_rsrvopt.value == "2"){
- messageBox("예약범위 설정이 잘 못되었습니다.","I");
- ipt_rsrvtodd.value = ipt_rsrvfromdd.value;
- return;
- }
-
- if(sCurrDate > ipt_rsrvtodd.value && rdo_rsrvopt.value == "2"){
- messageBox("예약일자는 현재일 이전으로 등록할 수 없습니다.","I");
- ipt_rsrvtodd.value = ipt_rsrvfromdd.value;
- return;
- }
-
- if(ipt_rsrvtodd.value < ipt_rsrvfromdd.value && rdo_rsrvopt.value == "2"){
- messageBox("예약범위 설정이 잘 못되었습니다.","I");
- ipt_rsrvtodd.value = ipt_rsrvfromdd.value;
- return;
- }
-
- if(model.getValue("/root/main/cretlist/cretinfo/ampmflag")==""){ // 오전,오후구분 추가_20100125
- model.setValue("/root/main/cretlist/cretinfo/ampmflag", "4");
- }
-
- // if(rdo_rsrvopt.value == 2){ //예약범위
- // rsrvterm = getDateInterval(rsrvfromdd,rsrvtodd);
- // }
- // model.makeValue("/root/send/savedata/pid" ,model.getValue("/root/main/cretlist/cretinfo/pid"));
- // model.makeValue("/root/send/savedata/ioflag" ,model.getValue("/root/main/cretlist/cretinfo/ioflag"));
- // model.makeValue("/root/send/savedata/rsrvcnts",model.getValue("/root/main/cretlist/cretinfo/rsrvcnts"));
- // for(var i=1;i<=rsrvterm+1; i++){
- // var dd = model.getValue("/root/hidden/rsrvdd"+i);
- // if(dd != ""){
- // model.makeValue("/root/send/savedata/status" , "i"); //상태값 지정(insert)
- // model.makeValue("/root/send/savedata/dialflag", "P");
- // model.makeValue("/root/send/savedata/rsrvdd" , dd );
- // model.removeNodeset("/root/main/chkinfo");
- //
- // var ret = submit("TXMND03001");
- // if(model.getValue("/root/main/chkinfo/rtnmgs") != ""){
- // messageBox("["+model.getValue("/root/main/chkinfo/rtnmgs")+"]일자에 예약이", "E006", "확인 후 다시 시도하십시오.");
- // return;
- // }
- // }
- // }
-
-
- var sOrddd_Old = "";
- var sCretno_Old = "";
- var sGenrflagcd_Old = "";
-
- var sSavePid = model.getValue("/root/main/cretlist/cretinfo/pid");
- var sSaveioflag = model.getValue("/root/main/cretlist/cretinfo/ioflag");
- var sSaversrvcnts = model.getValue("/root/main/cretlist/cretinfo/rsrvcnts");
- var sParamPid = sSavePid;
- var sParamRsrvdd = model.getValue("/root/main/cretlist/cretinfo/rsrvfromdd");
- var sSaveShiftflag = model.getValue("/root/main/cretlist/cretinfo/ampmflag");
- /* 진단 copy 로직 시작 */
- if(sSaveioflag == "외래" || sSaveioflag == "-" ){
- setParameter("preDiagCond", "InjRoom▦"+sParamPid+"▦"+sParamRsrvdd+"▦▦▦/root");
- fFindDiagInfo();
-
- var sParamArr = getParameter("preDiagResult").split("▦");
- sCretno_Old = sParamArr[3];
- sGenrflagcd_Old = sParamArr[4];
- sIoFlag = "외래";
-
- if(sParamArr[1] == "" && sParamArr[2] == "" ){
- //messageBox("가접수 생성시 진단 Copy할 수진 정보가 선택되지 않았습니다.", "I");
- //return;
- }else{
- if(sGenrflagcd_Old == "O"){
- sOrddd_Old = sParamArr[1];
- }else{
- sOrddd_Old = sParamArr[2];
- }
- }
- }
- /* 진단 copy 로직 종료 */
-
- for(var i= 1 ; i <= getNodesetCount("/root/hidden/rsrvddlist") ; i++){
- model.makeValue("/root/send/savedata["+i+"]/pid" , sSavePid);
- model.makeValue("/root/send/savedata["+i+"]/ioflag" , sSaveioflag);
- model.makeValue("/root/send/savedata["+i+"]/rsrvcnts" , sSaversrvcnts);
- model.makeValue("/root/send/savedata["+i+"]/status" , "i"); //상태값 지정(insert)
- model.makeValue("/root/send/savedata["+i+"]/dialflag" , "P");
- model.makeValue("/root/send/savedata["+i+"]/rsrvdd" , model.getValue("/root/hidden/rsrvddlist["+i+"]/rsrvdd"));
- model.makeValue("/root/send/savedata["+i+"]/orddd_old" , sOrddd_Old ); // 과거 진료일자
- model.makeValue("/root/send/savedata["+i+"]/cretno_old" , sCretno_Old ); // 과거 생성번호
- model.makeValue("/root/send/savedata["+i+"]/genrflagcd_old" , sGenrflagcd_Old ); // 과거 외래입원구분
- model.makeValue("/root/send/savedata["+i+"]/orddeptcd_old" , "" ); // 과거 진료과
- model.makeValue("/root/send/savedata["+i+"]/copyflag" , "Y" ); // 진단 복사 구분 ( Y/N,NULL => N이거나 NULL이면 이전 로직대로 )
- model.makeValue("/root/send/savedata["+i+"]/shiftflag" , sSaveShiftflag); // 오전,오후에 따른 shift구분 추가(오전:4,오후:6)_20100125
- }
- model.removeNodeset("/root/main/chkinfo");
- var ret = submit("TXMND03001");
-
- //return Msg 존재 여부 체크
- if(getNodesetCount("/root/main/chkinfo") > 0){
- var pDupMsg = ""; //중복값 관련 메시지
- var pEmpMsg = ""; //의사미지정 관련 메시지
- for(var k = 1 ; k <= getNodesetCount("/root/main/chkinfo") ; k++){
- if(model.getValue("/root/main/chkinfo["+k+"]/rtnmgsflag")=="dup"){
- if(pDupMsg == ""){
- pDupMsg += model.getValue("/root/main/chkinfo["+k+"]/rtnmgs");
- }else{
- pDupMsg += ", " + model.getValue("/root/main/chkinfo["+k+"]/rtnmgs");
- }
- }else{
- if(pEmpMsg == ""){
- pEmpMsg += model.getValue("/root/main/chkinfo["+k+"]/rtnmgs").substr(0,4)+"-"
- + model.getValue("/root/main/chkinfo["+k+"]/rtnmgs").substr(4,2)+"-"
- + model.getValue("/root/main/chkinfo["+k+"]/rtnmgs").substr(6,2);
- }else{
- pEmpMsg += ", " + model.getValue("/root/main/chkinfo["+k+"]/rtnmgs").substr(0,4)+"-"
- + model.getValue("/root/main/chkinfo["+k+"]/rtnmgs").substr(4,2)+"-"
- + model.getValue("/root/main/chkinfo["+k+"]/rtnmgs").substr(6,2);
- }
- }
- }
- if(pDupMsg != ""){
- messageBox("["+pDupMsg+"]일자에 예약이", "E006", "\n확인 후 다시 시도하십시오.");
- }
- if(pEmpMsg != ""){
- messageBox("["+pEmpMsg+"]일자에 예약의사가 지정되지 않았습니다.", "E", "\n확인 후 다시 시도하십시오.");
- }
- }else{
- if(ret == true){ //저장성공
- messageBox("", "I001", "");
- }
- }
- }
- fSrchPat();//환자기본정보 조회
- }
- /**
- * @group :
- * @ver : 2008.02.11
- * @by : 김진아
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 복막투석 예약취소 저장(취소저장 버튼 클릭 시)
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSaveCncl(){
- model.removenode("/root/send");
- model.makeNode ("/root/send");
- model.makeValue ("/root/send/savedata", grd_pdrsrvinfo.getupdatedataAll("i"));
- model.makeValue("/root/temp/rtnmsg/rtnmsg", "");
-
- if(submit("TXMND03002") == true){ //kys-20091222
- if(model.getValue("/root/temp/rtnmsg/rtnmsg")=="Y"){ //추가-kys-20091222-예약취소시 기록중인지를 체크한다.
- messageBox("예약취소건중 복막투석기록한것이 존재하여 예약취소를 ","E001","확인 후 다시 시도하십시오.");
- }
- }
- }
- /**
- * @group :
- * @ver : 2007.06.30
- * @by : 김진아
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 예약범위 초기화
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fInitRsrvdd() {
- if(rdo_rsrvopt.value == 1){ // 단일 예약일자
- model.makeValue("/root/main/cretlist/cretinfo/rsrvfromdd", getCurrentDate());
- model.makeValue("/root/main/cretlist/cretinfo/rsrvtodd" , "");
- model.makeValue("/root/main/cretlist/cretinfo/rsrvterm" , "");
- ipt_rsrvtodd.disabled = true;
- ipt_rsrvterm.disabled = true;
- }else{ // 예약범위 지정
- model.makeValue("/root/main/cretlist/cretinfo/rsrvfromdd", getCurrentDate());
- model.makeValue("/root/main/cretlist/cretinfo/rsrvtodd" , getCurrentDate());
- model.makeValue("/root/main/cretlist/cretinfo/rsrvterm" , "1");
- ipt_rsrvtodd.disabled = false;
- ipt_rsrvterm.disabled = false;
- }
- model.refresh();
- }
- function fUseridPopup(pPath, pNodeID, pNodeNM, pNodeRrgsNo1, pNodeRrgsNo2, pDOC) {
- model.removeNodeset("/root/properties/parameters/SendData/SendDatavalue");
- modal("SMMNE03700", 1, event.screenX-100, event.screenY-100, "SMMNE03700", "/root/main/cretlist/cretinfo/pid", "/root/init/searchitem");
- var pParam = model.getValue("/root/properties/parameters/SendData/SendDatavalue");
- var pParamValue = pParam.split("|");
- if(pParamValue[0].length > 0){
- model.makeValue("/root/main/cretlist/cretinfo/pid" , pParamValue[0]);
- model.makeValue("/root/main/cretlist/cretinfo/hngnm" , pParamValue[1]);
- model.makeValue("/root/main/cretlist/cretinfo/rrgstno1", pParamValue[2]);
- model.makeValue("/root/main/cretlist/cretinfo/rrgstno2", pParamValue[4]);
- model.refresh();
- }
- }
|