123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840 |
- /*
-
- 표준간호과정 set 관리(SMMNR02000.xfm - JScript )
- - Version :
- 1) : Ver.1.00.01
- */
- var xStmtListPath = "/root/main/stmtlist/stmtinfo"; // 표준 간호 진술문
- var xCondPath = "/root/main/cond"; // 조회조건
- var xNursDiagInfoPath = "/root/main/nursdiaginfo"; // Nursing Diagnosis
- var xRetPath = "/root/hidden/retinfo"; // 팝업 리턴 결과
- var xStmtClsListPath = "/root/main/stmtclslist/stmtclsinfo"; // 표준간호과정 set 등록
- var xStmtSetListPath = "/root/main/grupstmtsetinfo/stmtsetinfo/stmtsetlist"; // 진술문 분류 등록 내의 표준간호진술문
- var xLrgGrupListPath = "/root/main/grupstmtsetinfo/lrggrupinfo/lrggruplist"; // 대분류
- var xDetlGrupListPath = "/root/main/grupstmtsetinfo/detlgrupinfo/detlgruplist" // 상세분류
- var xSetStmtInfoPath = "/root/main/setstmtinfo"; // 분류 정보
- var xHardCodeList = "/root/code/codeinfo/codelist";
- var gAuthYN = "";
- var sGrupFlag = "";
- var MGFlag = ""; // 메뉴그룹 구분 (C:중앙사용자, I:기관사용자) 2010-06-25 안도영
- /**
- * @group :
- * @ver : 2007.03.28
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 화면 초기화
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fInit(){
- // 주석처리 2010-06-25 안도영
- /*
- // 간호하드코딩 테이블 조회_20090604 김홍점 수정권한자
- var pCode = "'097'"; // 조회할 CdGrupID 코드정보
- var pDate = getCurrentDate(); // 조회기준일자
- fGetNursHardCdInfo(pCode, pDate);
- */
- model.setValue(xCondPath+"/dnar", "%");
- model.removenodeset(xStmtListPath);
- model.removenodeset(xStmtClsListPath);
- // fSearchStmtInfo();
- grd_lrggruplist.allowSelection = false; // 멀티 선택 여부.
- grd_detlgruplist.allowSelection = false;
- fSearchGrupInfo();
-
-
-
- // 주석처리 2010-06-25 안도영
- /*
- if ( !isNull(getUserId())
- && !isNull(model.getValue(xHardCodeList + "[cdid='"+ getUserId() +"']/cdid"))
- ){
- gAuthYN = "Y";
- btn_select.disabled = false;
- btn_delstndcareset.disabled = false;
- btn_savestndcareset.disabled = false;
- }else{
- gAuthYN = "N";
- btn_select.disabled = true;
- btn_delstndcareset.disabled = true;
- btn_savestndcareset.disabled = true;
-
- }
- */
- }
- /**
- * @group :
- * @ver : 2007.03.28
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 진술문 조회
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSearchStmtInfo(){
- model.removenodeset(xStmtListPath);
- var sSetYN = model.getValue(xCondPath+"/setyn");
- if(sSetYN == "Y"){
-
- var sStmtCD = model.getValue(xCondPath+"/nursdiagstmtcd");
- if(sStmtCD == ""){
- modal("SPMNR02900");
- model.setValue(xCondPath+"/nursdiagstmtcd", model.getValue(xRetPath+"/stmtinfo/stmtcd"));
- sStmtCD = model.getValue(xCondPath+"/nursdiagstmtcd");
- }
- model.removenode("/root/send");
- model.makeValue("/root/send/dnar", model.getValue(xCondPath+"/dnar"));
- model.makeValue("/root/send/stmtnm", model.getValue(xCondPath+"/stmtnm"));
- model.makeValue("/root/send/nursdiagstmtcd", sStmtCD);
- model.makeValue("/root/send/searchflag", "stmt");
- submit("TRMNR02006");
- }else{
- if(model.getValue(xCondPath+"/stmtnm") == ""){
- messageBox("검색할 단어를 먼저","C001");
- return;
- }
- model.removenode("/root/send");
- model.makeNode("/root/send");
- model.copyNode("/root/send",xCondPath);
- submit("TRMNR02001");
- }
-
- grd_stmtlist.colSort(grd_stmtlist.colRef("dnarflag")) = "asc";
- grd_stmtlist.sort(1, grd_stmtlist.colRef("dnarflag"), grd_stmtlist.rows-1, grd_stmtlist.cols-1) = "usersort";
- grd_stmtlist.gridToInstance();
- //grd_stmtlist.refresh();
-
-
- grd_stmtlist.mergecells = "bycol";
- grd_stmtlist.mergecol(2) = false;
- grd_stmtlist.mergecol(3) = false;
- fSettingStmtStyle("stmtinfo"); //진술문 폰트 color 설정
- grd_stmtlist.resizeCells();
- }
- /**
- * @group :
- * @ver : 2007.03.29
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 진단 진술문장 호출
- * @param :
- * @return :
- * @---------------------------------------------------
- */
-
- function fCallNursDiagInfo(){
- modal("SPMNR02900");
- model.setValue(xNursDiagInfoPath+"/nursdiagstmtcnts",model.getValue(xRetPath+"/stmtinfo/stmtcnts"));
- model.setValue(xNursDiagInfoPath+"/nursdiagstmtcd",model.getValue(xRetPath+"/stmtinfo/stmtcd"));
- ipt_nursdiagstmtcnts.refresh();
- if(model.getValue(xNursDiagInfoPath+"/nursdiagstmtcnts") == ""){
- return;
- }
- model.removenode("/root/send");
- model.makeValue("/root/send/nursdiagstmtcd", model.getValue(xNursDiagInfoPath+"/nursdiagstmtcd"));
- if(submit("TRMNR02002")){
- grd_stndcarestmtlist.mergecells = "bycol";
- grd_stndcarestmtlist.mergecol(1) = false;
- grd_stndcarestmtlist.mergecol(3) = false;
- grd_stndcarestmtlist.mergecol(4) = false;
- fSettingStmtStyle("stndcarestmtlist"); // 진술문 폰트 color 설정
- grd_stndcarestmtlist.resizeCells();
- }
- }
- /**
- * @group :
- * @ver : 2007.03.30
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 그리드의 항목 삭제
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fDelGridRow(){
- if ( gAuthYN != "Y" ){
- return;
- }
- var icase = swt_stmtset.selectedIndex;
- var iRow = 0;
- var sRowCnt = 0;
- var sStatus = "";
- switch(icase){
- case 0 : // 표준간호과정 SET등록
- sRowCnt = grd_stndcarestmtlist.rows - grd_stndcarestmtlist.fixedrows;
- if(sRowCnt < 1) return;
- for(iRow=1; iRow<= sRowCnt; iRow++){
- if(grd_stndcarestmtlist.isselected(iRow) == true){
- sStatus = model.getValue(xStmtClsListPath+"["+iRow+"]/status");
- if(sStatus == "I"){
- grd_stndcarestmtlist.deleteItem(iRow);
- }else if(sStatus == "-"){
- model.setValue(xStmtClsListPath+"["+iRow+"]/status","D");
- }else{
- model.setValue(xStmtClsListPath+"["+iRow+"]/status","-");
- }
- }
- }
- break;
- case 1 : // 진술문 분류 등록
- sRowCnt = grd_stmtsetlist.rows - grd_stmtsetlist.fixedrows;
- if(sRowCnt < 1) return;
- for(iRow=1; iRow<= sRowCnt; iRow++){
- if(grd_stmtsetlist.isselected(iRow) == true){
- sStatus = model.getValue(xStmtSetListPath+"["+iRow+"]/status");
- if(sStatus == "I"){
- grd_stmtsetlist.deleteItem(iRow);
- }else if(sStatus == "-"){
- model.setValue(xStmtSetListPath+"["+iRow+"]/status","D");
- }else{
- model.setValue(xStmtSetListPath+"["+iRow+"]/status","-");
- }
- }
- }
- break;
- }
- }
- /**
- * @group :
- * @ver : 2007.03.30
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 진술문 전송
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSendStmtInfo(){
- if ( gAuthYN != "Y" ){
- return;
- }
-
- var icase = swt_stmtset.selectedIndex;
- var sDNARFlag = ""; // dnar 구분
- var sStmtCnts = ""; // 진술문장
- var sStmtCd = ""; // 진술문 코드
- var sStmtCntsAttr ="";//속성이 2개이상인 진술문 concat
- var sSelectRows = grd_stmtlist.selectedrows;
- var iStndCareStmtRow = 0; // 표준간호과정내의 진술문 개수
- var iStmtSetRow = 0; // 진술문 분류내의 진술문 개수
- var sNursDiagStmtCd = model.getValue(xNursDiagInfoPath+"/nursdiagstmtcd");
- var sSmlGrupCd = model.getValue(xSetStmtInfoPath+"/smlgrupcd");
-
- if(icase == 1 && sSmlGrupCd == ""){ // 진술문 분류 등록 check
- messageBox("상세분류를 먼저","C002");
- return;
- }
-
- if(sSelectRows < 1){ // 선택된 진술문장이 없을 경우
- messageBox("등록을 원하는 진술문을 먼저","C002");
- return;
- }else if(sSelectRows == 1){ // 선택된 진술문장이 1인 경우
- var sStmtRow = grd_stmtlist.row;
- sDNARFlag = model.getValue(xStmtListPath+"["+sStmtRow+"]/dnarflag"); // dnar 구분
- sStmtCnts = model.getValue(xStmtListPath+"["+sStmtRow+"]/stmtcnts"); // 진술문장
- sStmtCd = model.getValue(xStmtListPath+"["+sStmtRow+"]/stmtcd"); // 진술문 코드
-
- switch(icase){
- case 0 : // 표준간호과정 SET등록
- if(sDNARFlag == "2N"){
- var sRowCnt = grd_stndcarestmtlist.rows-grd_stndcarestmtlist.fixedrows;
- var sStatus = "";
- var sRtnMsg = 0;
- var sChngChk = "false";
- for(var iRow=grd_stndcarestmtlist.fixedrows; iRow < sRowCnt; iRow++){
- sStatus = model.getValue(xStmtClsListPath+"["+iRow+"]/status");
- if(sStatus == "I" || sStatus == "D"){
- sChngChk = "true";
- break;
- }
- }
-
- if(sChngChk == "true"){
- sRtnMsg = messageBox("변경된 데이터가 있습니다. 그래도", "Q003");
- if(sRtnMsg != 6) return;
- }
- model.setValue(xNursDiagInfoPath+"/nursdiagstmtcnts",sStmtCnts);
- model.setValue(xNursDiagInfoPath+"/nursdiagstmtcd",sStmtCd);
- model.removenode("/root/send");
- model.makeValue("/root/send/nursdiagstmtcd", model.getValue(xNursDiagInfoPath+"/nursdiagstmtcd"));
- model.makeValue("/root/send/searchflag", "cls");
- if(submit("TRMNR02002")){
- grd_stndcarestmtlist.mergecells = "bycol";
- grd_stndcarestmtlist.mergecol(1) = false;
- grd_stndcarestmtlist.mergecol(3) = false;
- grd_stndcarestmtlist.mergecol(4) = false;
- fSettingStmtStyle("stndcarestmtlist"); // 진술문 폰트 color 설정
- grd_stndcarestmtlist.resizeCells();
- }
- return;
- }
- if(icase == 0 && sNursDiagStmtCd == ""){ // 표준간호과정 SET 등록 check
- messageBox("Nursing Diagnosis를 먼저","C002");
- return;
- }
- if(model.getValue(xStmtClsListPath+"[stmtcd ='"+sStmtCd+"']/stmtcd") != ""){
- messageBox("선택하신 진술문은 이미 등록이 되어 있습니다.\n등록","E001");
- return;
- }
-
- grd_stndcarestmtlist.addItem();
- iStndCareStmtRow = grd_stndcarestmtlist.rows - grd_stndcarestmtlist.fixedrows;
-
- model.setValue(xStmtClsListPath+"["+iStndCareStmtRow+"]/status","I");
- model.setValue(xStmtClsListPath+"["+iStndCareStmtRow+"]/dnarflag",sDNARFlag);
- model.setValue(xStmtClsListPath+"["+iStndCareStmtRow+"]/stmtcnts",sStmtCnts);
- model.setValue(xStmtClsListPath+"["+iStndCareStmtRow+"]/stmtcd",sStmtCd);
- model.setValue(xStmtClsListPath+"["+iStndCareStmtRow+"]/nursdiagstmtcd",sNursDiagStmtCd);
- model.setValue(xStmtClsListPath+"["+iStndCareStmtRow+"]/todd","99991231235959");
- grd_stndcarestmtlist.rebuild();
- grd_stndcarestmtlist.resizeCells();
- grd_stndcarestmtlist.topRow = grd_stndcarestmtlist.rows;
- break;
- case 1 : // 진술문 분류 등록
- if(model.getValue(xStmtSetListPath+"[stmtcd ='"+sStmtCd+"']/stmtcd") != ""){
- messageBox("선택하신 진술문은 이미 등록이 되어 있습니다.\n등록","E001");
- return;
- }
-
- // if( sGrupFlag == "5" && model.getValue(xStmtListPath+"["+sStmtRow+"]/attrcnt") >= 2){
- // messageBox("선택하신 진술문은 속성이 2개이상이므로 등록할수 ","I004");
- // return;
- // }
-
- grd_stmtsetlist.addItem();
- iStmtSetRow = grd_stmtsetlist.rows - grd_stmtsetlist.fixedrows;
- model.setValue(xStmtSetListPath+"["+iStmtSetRow+"]/status","I");
- model.setValue(xStmtSetListPath+"["+iStmtSetRow+"]/dnarflag",sDNARFlag);
- model.setValue(xStmtSetListPath+"["+iStmtSetRow+"]/stmtcnts",sStmtCnts);
- model.setValue(xStmtSetListPath+"["+iStmtSetRow+"]/stmtcd",sStmtCd);
- model.setValue(xStmtSetListPath+"["+iStmtSetRow+"]/grupcd",sSmlGrupCd);
- model.setValue(xStmtSetListPath+"["+iStmtSetRow+"]/todd","99991231235959");
- model.setValue(xStmtSetListPath+"["+iStmtSetRow+"]/dnar",fChangedDNAR(sDNARFlag));
- grd_stmtsetlist.resizeCells();
- grd_stmtsetlist.topRow = grd_stmtsetlist.rows;
- break;
- }
- }else{ // 선택된 진술문장이 여러 개인 경우
- var iStmtRowCnt = grd_stmtlist.rows - grd_stmtlist.fixedrows;
- sStmtCntsAttr = "";
-
- if(icase == 0 && sNursDiagStmtCd == ""){ // 표준간호과정 SET 등록 check
- messageBox("Nursing Diagnosis를 먼저","C002");
- return;
- }
- switch(icase){
- case 0 : // 표준간호과정 SET등록
- iStndCareStmtRow = grd_stndcarestmtlist.rows - grd_stndcarestmtlist.fixedrows;
- for(var iStmtRow=1; iStmtRow<= iStmtRowCnt; iStmtRow++){
- if(grd_stmtlist.isselected(iStmtRow) == true){
- sDNARFlag = model.getValue(xStmtListPath+"["+iStmtRow+"]/dnarflag"); // dnar 구분
- sStmtCd = model.getValue(xStmtListPath+"["+iStmtRow+"]/stmtcd"); // 진술문 코드
- if(sDNARFlag == "2N") continue;
- if(model.getValue(xStmtClsListPath+"[stmtcd ='"+sStmtCd+"']/stmtcd") != "") continue;
-
- grd_stndcarestmtlist.addItem();
- iStndCareStmtRow++;
- model.setValue(xStmtClsListPath+"["+iStndCareStmtRow+"]/status","I");
- model.setValue(xStmtClsListPath+"["+iStndCareStmtRow+"]/dnarflag",sDNARFlag); // dnar 구분
- model.setValue(xStmtClsListPath+"["+iStndCareStmtRow+"]/stmtcnts",model.getValue(xStmtListPath+"["+iStmtRow+"]/stmtcnts")); // 진술문장
- model.setValue(xStmtClsListPath+"["+iStndCareStmtRow+"]/stmtcd",sStmtCd); // 진술문 코드
- model.setValue(xStmtClsListPath+"["+iStndCareStmtRow+"]/nursdiagstmtcd",sNursDiagStmtCd);
- model.setValue(xStmtClsListPath+"["+iStndCareStmtRow+"]/todd","99991231235959");
- }
- }
- grd_stndcarestmtlist.rebuild();
- grd_stndcarestmtlist.resizeCells();
- grd_stndcarestmtlist.topRow = grd_stndcarestmtlist.rows;
- break;
- case 1 : // 진술문 분류 등록
- iStmtSetRow = grd_stmtsetlist.rows - grd_stmtsetlist.fixedrows;
- for(var iStmtRow=1; iStmtRow <= iStmtRowCnt; iStmtRow++){
- if(grd_stmtlist.isselected(iStmtRow) == true){
-
- // if( sGrupFlag == "5" && model.getValue(xStmtListPath+"["+iStmtRow+"]/attrcnt") >= 2){
- // sStmtCntsAttr += " \n"+ model.getValue(xStmtListPath+"["+iStmtRow+"]/stmtcnts") +" \n";
- // continue;
- // }
-
- sDNARFlag = model.getValue(xStmtListPath+"["+iStmtRow+"]/dnarflag"); // dnar 구분
- sStmtCd = model.getValue(xStmtListPath+"["+iStmtRow+"]/stmtcd"); // 진술문 코드
- if(model.getValue(xStmtSetListPath+"[stmtcd ='"+sStmtCd+"']/stmtcd") != "") continue;
- grd_stmtsetlist.addItem();
- iStmtSetRow++;
- model.setValue(xStmtSetListPath+"["+iStmtSetRow+"]/status","I");
- model.setValue(xStmtSetListPath+"["+iStmtSetRow+"]/dnarflag",sDNARFlag); // dnar 구분
- model.setValue(xStmtSetListPath+"["+iStmtSetRow+"]/stmtcnts",model.getValue(xStmtListPath+"["+iStmtRow+"]/stmtcnts")); // 진술문장
- model.setValue(xStmtSetListPath+"["+iStmtSetRow+"]/stmtcd",sStmtCd); // 진술문 코드
- model.setValue(xStmtSetListPath+"["+iStmtSetRow+"]/grupcd",sSmlGrupCd);
- model.setValue(xStmtSetListPath+"["+iStmtSetRow+"]/todd","99991231235959");
- model.setValue(xStmtSetListPath+"["+iStmtSetRow+"]/dnar",fChangedDNAR(sDNARFlag));
- }
- }
- grd_stmtsetlist.rebuild();
- grd_stmtsetlist.resizeCells();
- grd_stmtsetlist.topRow = grd_stmtsetlist.rows;
- if( sStmtCntsAttr != "" && sStmtCntsAttr != null ){
- messageBox("선택하신 진술문 중 \n"+sStmtCntsAttr+"\n 은/는 속성이 2개이상이므로 등록되지 ","E007");
- }
-
- break;
- }
- }
-
- }
-
- /**
- * @group :
- * @ver : 2007.03.30
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 저장
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSave(){
- var icase = swt_stmtset.selectedIndex;
- var iRow = 0;
- switch(icase){
- case 0 : // 표준간호과정 SET등록
- model.removenode("/root/send");
- model.makeValue("/root/send/nursdiagstmtcd",model.getValue(xNursDiagInfoPath+"/nursdiagstmtcd"));
- model.makeValue("/root/send/stmtclslist",grd_stndcarestmtlist.getUpdateDataAll("i"));
- if(submit("TXMNR02001")){
- fSettingStmtStyle("stndcarestmtlist"); // 진술문 폰트 color 설정
- grd_stndcarestmtlist.resizeCells();
- }
- break;
- case 1 : // 진술문 분류 등록
- model.removenode("/root/send");
- model.makeValue("/root/send/grupcd", model.getValue(xSetStmtInfoPath+"/smlgrupcd"));
- model.makeValue("/root/send/stmtsetlist", grd_stmtsetlist.getUpdateDataAll("i"));
- if(submit("TXMNR02002")){
- fSetupLnkDiag(); // 연결진단 설정
- fSettingStmtStyle("grupstmtset"); // 진술문 폰트 color 설정
- grd_stmtsetlist.resizeCells();
- }
- break;
- }
- }
- /**
- * @group :
- * @ver : 2007.03.30
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 그리드 클릭시
- * @param : pFlag ( lrggrup : 대분류, deltgrup : 상세분류정보)
- * @return :
- * @---------------------------------------------------
- */
- function fClickedGrid(pFlag){
- var iRow = 0;
- var sSelectedRow = 0; // 선택된 상세분류 코드
- var sRowCnt = 0;
- var sDepth= "";
- sGrupFlag = "";
-
- if(pFlag == "lrggrup"){ // 대분류
- sSelectedRow = grd_lrggruplist.row;
- if(sSelectedRow < 1) return;
- model.setValue(xSetStmtInfoPath+"/laggrupnm", model.getValue(xLrgGrupListPath+"["+sSelectedRow+"]/hngnm"));
- model.setValue(xSetStmtInfoPath+"/mdlgrupnm", "");
- model.setValue(xSetStmtInfoPath+"/smlgrupnm", "");
- model.setValue(xSetStmtInfoPath+"/smlgrupcd", "");
- model.removeNode("/root/send");
- model.makeValue("/root/send/lrggrupcd",model.getValue(xLrgGrupListPath+"["+sSelectedRow+"]/grupcd"));
- if(submit("TRMNR02004")){
- sRowCnt = grd_detlgruplist.rows - grd_detlgruplist.fixedRows;
- for(var i = 1 ; i <= sRowCnt; i++){
- sGrupFlag = model.getValue(xDetlGrupListPath+"["+i+"]/grupflag");
- sDepth = model.getValue(xDetlGrupListPath+"["+i+"]/depth");
- grd_detlgruplist.cellStyle("color",i,1,i,1) = "#000000";
- grd_detlgruplist.cellStyle("font-weight",i,1,i,1) = "";
- grd_detlgruplist.IsSubtotal(i) = true;
- grd_detlgruplist.outlinelevel(i) = sDepth;
-
-
- if((sGrupFlag == 3 || sGrupFlag == 5) && sDepth == 1){
- grd_detlgruplist.cellStyle("color",i,1,i,1) = "#0000FF";
- grd_detlgruplist.cellStyle("font-weight",i,1,i,1) = "bold";
- }
-
-
- }
- grd_detlgruplist.OutlineCol = 1;
- grd_detlgruplist.OutlineBar = 4;
- grd_detlgruplist.TreeColor = "gray";
- model.removenodeset(xStmtSetListPath);
-
- var iRow= grd_lrggruplist.row;
-
- // 주석처리 2010-06-25 안도영
- /*
- if ( !isNull(getUserId())
- && !isNull(model.getValue(xHardCodeList + "[cdid='"+ getUserId() +"']/cdid"))
- && ( sGrupFlag == "1"
- || sGrupFlag == "2"
- )
- ){
- gAuthYN = "Y";
- btn_select.disabled = false;
- btn_delgrupstmtset.disabled = false;
- btn_savegrupstmtset.disabled = false;
-
- }else{
-
- if( sGrupFlag == "1"
- || sGrupFlag == "2" ){
- gAuthYN = "N";
- btn_select.disabled = true;
- btn_delgrupstmtset.disabled = true;
- btn_savegrupstmtset.disabled = true;
- } else {
- gAuthYN = "Y";
- btn_select.disabled = false;
- btn_delgrupstmtset.disabled = false;
- btn_savegrupstmtset.disabled = false;
-
- }
- }
- */
-
- grd_stmtsetlist.rebuild();
- }
-
- for(var i = grd_detlgruplist.fixedRows; i < grd_detlgruplist.rows; i++) {
- grd_detlgruplist.iscollapsed(i)=true;
- }
- opt_lrggrupnm.refresh();
- }else if(pFlag == "detlgrup"){ // 상세분류
- sSelectedRow = grd_detlgruplist.row;
- if(sSelectedRow < 1) return;
- var sDeptCd = model.getValue(xDetlGrupListPath+"["+sSelectedRow+"]/deptcd");
- var sDepth = model.getValue(xDetlGrupListPath+"["+sSelectedRow+"]/depth");
- var sGrupCd = model.getValue(xDetlGrupListPath+"["+sSelectedRow+"]/grupcd");
- sGrupFlag = model.getValue(xDetlGrupListPath+"["+sSelectedRow+"]/grupflag");//20080701김홍점
- model.removenode("/root/send");
-
- // 최하단 그룹에서만 등록이 가능함(부서별 : 3 레벨, 그외의 대분류 : 2레벨)
- if((sDepth < 3 && sGrupFlag == "3" )
- || (sDepth < 2 && sGrupFlag != "5")
- || (sDepth < 2 && sGrupFlag == "5")){
- model.setValue(xSetStmtInfoPath+"/mdlgrupnm","");
- model.setValue(xSetStmtInfoPath+"/smlgrupnm","");
- model.setValue(xSetStmtInfoPath+"/smlgrupcd","");
- model.refresh();
- // 자식 접기 or 펼치기
- sDepth = eval(model.getValue(xDetlGrupListPath+"["+sSelectedRow+"]/depth"));
- sRowCnt = grd_detlgruplist.rows - grd_detlgruplist.fixedrows;
- if(grd_detlgruplist.iscollapsed(sSelectedRow) == true){
- sBoolStatus = false;
- }else{
- sBoolStatus = true;
- }
-
- for(var i=sSelectedRow; i<=sRowCnt; i++){
- iDepth = eval(model.getValue(xDetlGrupListPath+"["+i+"]/depth"));
- if(i==sSelectedRow){
- grd_detlgruplist.iscollapsed(i) = sBoolStatus;
- }else if(i != sSelectedRow && sDepth < iDepth){
- grd_detlgruplist.iscollapsed(i) = sBoolStatus;
- }else{
- break;
- }
- }
- return;
- }
-
- // 중분류 찾아오기
- for(var iRow = sSelectedRow-1; iRow > 0; iRow--){
- if(model.getValue(xDetlGrupListPath+"["+iRow+"]/depth") < sDepth){
- model.setValue(xSetStmtInfoPath+"/mdlgrupnm",model.getValue(xDetlGrupListPath+"["+iRow+"]/hngnm"));
- break;
- }
- }
- model.setValue(xSetStmtInfoPath+"/smlgrupnm", model.getValue(xDetlGrupListPath+"["+sSelectedRow+"]/hngnm"));
- model.setValue(xSetStmtInfoPath+"/smlgrupcd", sGrupCd);
- // if( sGrupFlag == '5'){
- //
- // model.setValue(xSetStmtInfoPath+"/smlgrupnm", model.getValue(xDetlGrupListPath+"["+sSelectedRow+"]/hngnm"));
- // model.setValue(xSetStmtInfoPath+"/smlgrupcd", sGrupCd); //smlgrupcd 이값을 읽으므로 중분류명에다 세팅은 해주고 코드는그대로
- // } else {
- // model.setValue(xSetStmtInfoPath+"/smlgrupnm", model.getValue(xDetlGrupListPath+"["+sSelectedRow+"]/hngnm"));
- // model.setValue(xSetStmtInfoPath+"/smlgrupcd", sGrupCd);
- // }
- model.makeValue("/root/send/grupcd", sGrupCd);
- if(submit("TRMNR02005")){
- fSetupLnkDiag(); // 연결진단 설정
- grd_stmtsetlist.mergecells = "bycol";
- grd_stmtsetlist.mergecol(1) = false;
- grd_stmtsetlist.mergecol(3) = false;
- grd_stmtsetlist.mergecol(4) = false;
- fSettingStmtStyle("grupstmtset"); // 진술문 폰트 color 설정
- grd_stmtsetlist.resizeCells();
- }
- }
- }
- /**
- * @group :
- * @ver : 2007.03.30
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 진술문 분류 등록 클릭시
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSearchGrupInfo(){
-
- model.removenodeset(xLrgGrupListPath);
- model.removenodeset(xDetlGrupListPath);
- model.removenodeset(xStmtSetListPath);
- model.setValue(xSetStmtInfoPath+"/laggrupnm","");
- model.setValue(xSetStmtInfoPath+"/mdlgrupnm","");
- model.setValue(xSetStmtInfoPath+"/smlgrupnm","");
- model.setValue(xSetStmtInfoPath+"/smlgrupcd","");
- model.removeNode("/root/send");
- model.makeValue("/root/send/supcd","********");
- submit("TRMNR02003");
-
- }
- /**
- * @group :
- * @ver : 2007.03.30
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : DNAR 변경
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fChangedDNAR(pDNAR){
- var sDNARFlag = "";//pDNAR;
- switch(pDNAR){
- case "1D" : sDNARFlag = "2D";
- break;
- case "2N" : sDNARFlag = "1N";
- break;
- default :
- sDNARFlag = pDNAR;
- }
- return sDNARFlag;
- }
- /**
- * @group :
- * @ver : 2007.04.06
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 연결 진단 설정
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSetupLnkDiag(){
- var sRowCnt = grd_stmtsetlist.rows - grd_stmtsetlist.fixedrows;
- var sNursDiagInfo = null;
- var sLnkDiag = "";
- // 진단연결 설정
- for(var iSetRow=0; iSetRow<= sRowCnt; iSetRow++){
- // 간호진단을 제외한 진술문의 진단연결 번호를 설정한다.
- if(model.getValue(xStmtSetListPath+"["+iSetRow+"]/dnarflag") != "2N"){
- sLnkDiag = "";
- sNursDiagInfo = model.getValue(xStmtSetListPath+"["+iSetRow+"]/nursdiaginfo").split(",");
- if(sNursDiagInfo.length > 0){
- if(sNursDiagInfo[0] != ""){
- sLnkDiag = model.getValue(xStmtSetListPath+"[stmtcd='"+sNursDiagInfo[0]+"']/rownum");
- }
- for(var i=1; i<sNursDiagInfo.length; i++){
- if(sNursDiagInfo[i] != ""){
- sLnkDiag += ","+ model.getValue(xStmtSetListPath+"[stmtcd='"+sNursDiagInfo[i]+"']/rownum");
- }
- }
- if(sLnkDiag != ""){
- model.setValue(xStmtSetListPath+"["+iSetRow+"]/lnkdiag", sLnkDiag);
- }
- }
- }
- }
- grd_stmtsetlist.rebuild();
- }
- /**
- * @group :
- * @ver : 2007.04.19
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 진술문 폰트 color 설정 - 속성이 있는 경우 진술문 폰트 색상을 변경한다.
- * @param : pFlag ( stmtinfo : 표준간호진술문, grupstmtset : 진숢문 분류 등록, stndcarestmtlist : 표준간호과정 SET 등록)
- * @return :
- * @---------------------------------------------------
- */
- function fSettingStmtStyle(pFlag){
- switch(pFlag){
- case "stmtinfo" : //
- grd_stmtlist.allstyle("data","color") = "#000000";
- for(var iRow=grd_stmtlist.fixedrows; iRow<=grd_stmtlist.rows-grd_stmtlist.fixedrows; iRow++){
- if(eval(model.getValue(xStmtListPath+"["+iRow+"]/attrcnt"))>0){
- grd_stmtlist.cellstyle("color",iRow,2) = "#33CC33"; // 녹색
- }
- }
- break;
- case "grupstmtset":
- grd_stmtsetlist.allstyle("data","color") = "#000000";
- for(var iRow=grd_stmtsetlist.fixedrows; iRow<=grd_stmtsetlist.rows-grd_stmtsetlist.fixedrows; iRow++){
- if(eval(model.getValue(xStmtSetListPath+"["+iRow+"]/attrcnt"))>0){
- grd_stmtsetlist.cellstyle("color",iRow,3) = "#33CC33"; // 녹색
- }
- }
- break;
- case "stndcarestmtlist" :
- grd_stndcarestmtlist.allstyle("data","color") = "#000000";
- for(var iRow=grd_stndcarestmtlist.fixedrows; iRow<=grd_stndcarestmtlist.rows-grd_stndcarestmtlist.fixedrows; iRow++){
- if(eval(model.getValue(xStmtClsListPath+"["+iRow+"]/attrcnt"))>0){
- grd_stndcarestmtlist.cellstyle("color",iRow,3) = "#33CC33"; // 녹색
- }
- }
- break;
- }
- }
- /**
- * @group :
- * @ver : 2010.06.24
- * @by : 안도영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 중앙/기관별 관리 메뉴그룹 구분을 위한 함수
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- /* 메뉴그룹코드 가져오기(from 간호하드코딩 테이블) 2010-06-24 안도영 */
- function chkInstMG(){
- // 초기 설정
- model.setValue(xCondPath+"/dnar", "%");
- model.removenodeset(xStmtListPath);
- model.removenodeset(xStmtClsListPath);
- // fSearchStmtInfo();
- grd_lrggruplist.allowSelection = false; // 멀티 선택 여부.
- grd_detlgruplist.allowSelection = false;
- fSearchGrupInfo();
-
- var pCode = "'208'"; // 조회할 CdGrupID 코드정보
- var pDate = getCurrentDate(); //조회기준일자
- var pTime = getCurrentTime().substring(0,4); //조회기준시간
- //var mainPath = "/root/temp/shifttimeinfo/shifttimelist";
- var initPath = "/root/code/codeinfo/codelist";
- fGetNursHardCdInfo(pCode, pDate); // 간호공통관리 메뉴그룹코드 조회
-
- var str = getGlobalVariable("menugroupcd");
- var currentMG = "";
- // 현재의 메뉴그룹코드 추출
- for(i=0; i < str.length; i++){
- if(str.charAt(i) == "|") break;
- currentMG = currentMG + str.charAt(i);
- }
-
- // 중앙, 기관별 관리자 메뉴그룹 구분
- if(model.getValue(initPath+"[supcdid = '1' and cdid = '"+currentMG+"']/cdid")){
- MGFlag = "C"; // 중앙
- }
- else if(model.getValue(initPath+"[supcdid = '2' and cdid = '"+currentMG+"']/cdid")){
- MGFlag = "I"; // 기관별
- }else{ // 둘다 해당하지 않을시 default로 기관별 사용자 (2010-06-29 서울성모 김숙인샘 요청)
- MGFlag = "I";
- }
-
- if(MGFlag == "I"){ // default로 보일 탭 설정- 기관별사용자일 경우 버튼 disable
- btn_stndcareset.disabled = true;
- btn_grupstmtset.selected = true;
- model.toggle("GrupStmtSet");
- }
-
- setBtnAuth();
-
- }
- /**
- * @group :
- * @ver : 2010.06.25
- * @by : 안도영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 중앙/기관별 관리 메뉴그룹에 따른 버튼 권한 부여
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function setBtnAuth(){
- if(MGFlag == "I"){
- var datapath = "/root/main/grupstmtsetinfo/lrggrupinfo/lrggruplist";
- var currentRow = model.getValue(datapath + "["+grd_lrggruplist.Row + "]/grupflag");
-
- if(currentRow == "1" || currentRow == "2"){ // 상황별, 질환별 대분류
- btn_delgrupstmtset.disabled = true;
- btn_savegrupstmtset.disabled = true;
- gAuthYN = "N";
- }else{
- btn_delgrupstmtset.disabled = false;
- btn_savegrupstmtset.disabled = false;
- gAuthYN = "Y";
- }
- }else{
- btn_delgrupstmtset.disabled = false;
- btn_savegrupstmtset.disabled = false;
- gAuthYN = "Y";
- }
- }
|