123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958 |
- /* ---------------------------------------------------------------------
- Case Cart MASTER 사항(SMMNP01500.xfm - JScript )
- - Version :
- 1) : Ver.1.00.01
- : Create By Francis Choi
- : 2015.05.02
- ---------------------------------------------------------------------- */
- var xPathData = "/root/main/MnpmcartData/MnpmcartList" ; //
- var xPathInput = "/root/init/WorkData/InputData" ; //
- var tColWidth = "74,90,70,80,121,55,291,30,73,0,0,0,0,0,0,0,0,0,0#" // 집도
- + "74,90,70,80,121,55,179,33,70,0,0,0,0,0,0,0,0,0,0" ; // 마취
- var tWidth = tColWidth.split("#");
- /* ------------------------------------------------- */
- /* SMMNP01500_Cart Master등록 */
- /* On Load 시 Call */
- /* ------------------------------------------------- */
- /* group : EMR 간호 수술마취 */
- /* ver : 2007.05.03 */
- /* by : 최학록 */
- /* --------------------------------------------------*/
- /* type : function */
- /* access : public */
- /* desc : xforms-ready시 수행한다 */
- /* return : */
- /* --------------------------------------------------*/
- function fFormInit() {
- model.removeNodeset("/root/main/diaginfo/diagcdlist");
- model.removeNodeset("/root/main/icd10indx/icd10indxcdlist");
- model.removeNode("/root/main/copyoplist/diagcdlist");
- //var curtDate = getCurrentDate();
- //var curtYYMM = curtDate.substr(0, 8);
- //model.setValue("/root/init/WorkData/InputData/appdd", curtYYMM);
- //화면 open시, ICD9색인탭이 기본
- btn_icd10.selected = true;
- model.toggle("icd9");
- fReqGetIndxList();
- model.removenode("/root/send");
- model.makeValue("/root/send/flag" , "X" );
- model.makeValue("/root/send/searchitem", "XX" );
- model.makeValue("/root/send/deptflag" , "011" );
-
- submit("TRMNP01512");
- addComboItem("cmb_orddept" , "전 체", "", "above" );
- addComboItem("cmb_orddept2" , "전 체", "", "above" );
- removeComboItem("cmb_orddept2" , "전 체", "", "above" );
-
- grd_cartlist.explorerbar = "sort";
- grd_cartlist.fixedcellcheckbox(0,1) = true;
- grd_cartlist.frozencols = grd_cartlist.colRef("opengnm"); // 틀고정
- grd_copyoplist.frozencols = grd_copyoplist.colRef("opengnm"); // 틀고정
-
- // 요청번호; 845
- // 요청내용: 수술의뢰시 필요한 기준자료 추가 등록
- // 세부내용: 수술체위, 수술창상, 수술위치, 마취방법
- // 수정날자 2010.05.24
- // 수정자 : kskim
- zbcfGetCodeList(new Array("M0016",
- "M0357",
- "M0017",
- "M0341"),
- new Array("/root/init/M0016",
- "/root/init/M0357",
- "/root/init/M0017",
- "/root/init/M0341"));
-
- model.makeNode("/root/hidden/updatelist");
-
- // 요청번호: 845
- // 요청사항: 845기본요청사항에 추가적으로 로그인한 집도과, 집도의 정보 연동
- // 수정일: 2010.05.25
- // 수정자: 김광성. kskim
- var jobkindcd = getUserInfo("jobkindcd");
- var jobcd = jobkindcd.substr(0,2);
- if( !isNull(jobkindcd) && jobcd == "03"){ // 집도과, 집도의, 수술명이 사용유무 정보가 Y인 것 조회
- model.setValue("/root/init/WorkData/cond/rgstdeptcd", getUserInfo("dutplcecd")); // 집도과 정보 셋팅
- cmb_orddept.dispatch("xforms-value-changed");
- model.setValue("/root/init/WorkData/cond/rgstperf", getUserInfo("userid")); // 집도의 정보 셋팅
- model.setValue("/root/init/WorkData/cond/useflag", "Y"); // 수술명 사용이 Y인 것만 조회
- button4.dispatch("DOMActivate");
- model.setFocus("grd_cartlist");
- }
-
- /*zbcfGetCodeList(new Array("M0017","M0246"), new Array("/root/init/M0017list", "/root/init/M0246list"), true);
- model.copyNode("/root/main/M0017list", "/root/init/M0017list");
- model.copyNode("/root/main/M0246list", "/root/init/M0246list");
- addComboItem("cmb_anstkind" , "전 체", "", "above" );
- addComboItem("cmb_anstageflag", "전 체", "", "above" );
- addComboItem("in_anstageflag", "-", "00", "above" );
- cmb_anstkind.disabled = true; //마취방법 비활성화
- cmb_anstageflag.disabled = true; //연령대 비활성화
- model.removenode("/root/send");
- model.makeValue("/root/send/req/conflag", "1");//대분류
- submit("TRMNP01504", false);
- fDeptCombo("011"); // 집도과
- addComboItem("cmb_orddept", "전 체", "", "above" );
- grd_cartlist.fixedcellcheckbox(0,1) = true;
- model.removenode("/root/send");
- model.makeValue("/root/send/reqdata/sortflag", "N");
- submit("TRMNP01503");
- // model.refresh();*/
- }
- /* ------------------------------------------------- */
- /* group : EMR 간호 수술마취 */
- /* ver : 2008.12.18 */
- /* by : 김진명 */
- /* ------------------------------------------------- */
- /* SMMNP01500_Case Cart MASTER */
- /* desc : ICD9 INDEX 조회 */
- /* --------------------------------------------------*/
- function fReqGetIndxList(){
- model.removenode("/root/send");
- model.makeValue("/root/send/reqdata/indxflag", "9");
- submit("TRMNP01502");
- }
- /* ------------------------------------------------- */
- /* group : EMR 간호 수술마취 */
- /* ver : 2008.12.18 */
- /* by : 김진명 */
- /* ------------------------------------------------- */
- /* SMMNP01500_Case Cart MASTER */
- /* desc : ICD9 용어 조회 */
- /* --------------------------------------------------*/
- function fReqGetICD9CDList(pFlag){
- var indxcd, refopnm, refcond, condflag;
- if( trv_icd9indxcdlist.selectedIndex != -1 ) {
- var item = trv_icd9indxcdlist.item(trv_icd9indxcdlist.selectedIndex);
- if(item.depth == 0){ //상위index를 클릭한 경우, 조회하지 않는다.
- return;
- }
- indxcd = trv_icd9indxcdlist.value;
- }
- if( pFlag == "2" ) {//Tree 조회시
- //트리 선택시 검색어 및 전체 검색 초기화
- model.setValue("/root/init/WorkData/cond/refopnm", "");
- model.setValue("/root/init/WorkData/cond/refcond", "");
- }else if ( pFlag == "1" ) {//검색조건 조회시 전체 검색
- model.setValue("/root/init/WorkData/cond/refcond", "ALL");
- }
- refopnm = model.getValue("/root/init/WorkData/cond/refopnm");
- refcond = model.getValue("/root/init/WorkData/cond/refcond");
- condflag = fIsHangul(refopnm);
- if( indxcd == "" ) { indxcd = "0"; }//인덱스 코드가 없으면 0으로 셋팅 맵핑시 인덱스 코드가 없으면 값이 안넘어감.
- if( (indxcd == "0")&&(refopnm == "") ) {
- messageBox("수술명 검색 조건을 입력하지 ", "E007");
- return;
- }
- model.removenode("/root/send");
- model.makeValue("/root/send/reqdata/icd9indxcd", indxcd);
- model.makeValue("/root/send/reqdata/refopnm", refopnm);
- model.makeValue("/root/send/reqdata/refcond", refcond);
- model.makeValue("/root/send/reqdata/condflag", condflag);
- submit("TRMNP01511");
- }
- /* ------------------------------------------------- */
- /* group : EMR 간호 수술마취 */
- /* ver : 2008.12.18 */
- /* by : 김진명 */
- /* ------------------------------------------------- */
- /* SMMNP01500_Case Cart MASTER */
- /* desc : 한글여부 */
- /* --------------------------------------------------*/
- function fIsHangul(pData) {
- var sBit = pData.charAt(0);
- if (escape(sBit).length <= 4) return "E";
- return "H";
- }
- /* ------------------------------------------------- */
- /* group : EMR 간호 수술마취 */
- /* ver : 2009.01.05 */
- /* by : 김진명 */
- /* ------------------------------------------------- */
- /* SMMNP01500_Case Cart MASTER */
- /* desc : 수술명 복사 */
- /* --------------------------------------------------*/
- function fSelectOpNm(){
- var cnt = 0;
- model.removenode("/root/main/copyoplist");//수술명복사 그리드 초기화
- model.makeNode("/root/main/copyoplist");//수술명복사 인스턴스 생성
- for( var iRow = 1; iRow <= grd_cartlist.rows; iRow++ ) {
- if( model.getValue("/root/main/diaginfo/diagcdlist[" + iRow + "]/chkflag") == "true" ) {
- if( model.getValue("/root/main/diaginfo/diagcdlist[" + iRow + "]/ccrtno") != "" ) {
- if( model.getValue("/root/main/diaginfo/diagcdlist[" + iRow + "]/useflag") == "N" ) {
- messageBox("미 사용중인 수술명은 선택 ", "E001");
- model.removenode("/root/main/copyoplist");//수술명복사 그리드 초기화
- model.makeNode("/root/main/copyoplist");//수술명복사 인스턴스 생성
- model.refresh();
- return;
- }
- model.duplicate("/root/main/copyoplist", "/root/main/diaginfo/diagcdlist["+ iRow +"]");
- cnt++;
- }else {
- messageBox("미 등록된 수술명은 선택 ", "E001");
- model.removenode("/root/main/copyoplist");//수술명복사 그리드 초기화
- model.makeNode("/root/main/copyoplist");//수술명복사 인스턴스 생성
- model.refresh();
- return;
- }
- }
- }
- if( cnt < 1 ) {
- messageBox("선택하신 수술명이 ", "I004");
- return;
- }else {
- model.refresh();
- }
- }
- /* ------------------------------------------------- */
- /* SMMNP01500_Case Cart MASTER */
- /* ------------------------------------------------- */
- /* group : EMR 간호 수술마취 */
- /* ver : 2009.01.05 */
- /* by : 김진명 */
- /* ------------------------------------------------- */
- /* SMMNP01500_Case Cart MASTER */
- /* desc :Case Cart MASTER 정보 가져오기 */
- /* --------------------------------------------------*/
- function fSearchCartList() {
- model.removenode("/root/send");
- if( model.getValue("/root/init/WorkData/cond/rgstdeptcd") == "" ) {
- messageBox("집도과를 선택하지 ", "E007");
- model.setFocus("cmb_orddept");
- return;
- }
- model.makeValue("/root/send/reqdata/perfdeptcd", model.getValue("/root/init/WorkData/cond/rgstdeptcd"));
- model.makeValue("/root/send/reqdata/perfdrid", model.getValue("/root/init/WorkData/cond/rgstperf"));
- model.makeValue("/root/send/reqdata/useflag", model.getValue("/root/init/WorkData/cond/useflag"));
- model.makeValue("/root/send/reqdata/cartgubn", "O");
- submit("TRMNP01513");
- }
- /* ------------------------------------------------- */
- /* SMMNP01500_Case Cart MASTER */
- /* ------------------------------------------------- */
- /* group : EMR 간호 수술마취 */
- /* ver : 2009.01.05 */
- /* by : 김진명 */
- /* ------------------------------------------------- */
- /* SMMNP01500_Case Cart MASTER */
- /* desc :수술명 복사 초기화 */
- /* --------------------------------------------------*/
- function fClear() {
- model.removenode("/root/main/copyoplist");//수술명복사 그리드 초기화
- model.removenode("/root/init/DrInfoII/DrLists/drlist");//집도의 콤보리스트 초기화
- model.setValue("/root/init/WorkData/cond/copdeptcd", "");//수술명복사 집도과 초기화
- model.setValue("/root/init/WorkData/cond/copperf", "");//수술명복사 집도의 초기화
- model.setValue("/root/init/WorkData/cond/copgubn", "");//수술명복사 조건 초기화
- model.refresh();
- }
- /*function MnpmcartList_Read() {
- model.removenode("/root/send");
- model.makeValue("/root/send/orddeptcd" , model.getValue("/root/init/WorkData/cond/rgstdeptcd" )); // 진료과코드
- model.makeValue("/root/send/perfid" , model.getValue("/root/init/WorkData/cond/rgstperf" )); // 집도의ID
- model.makeValue("/root/send/useflag" , model.getValue("/root/init/WorkData/cond/useflag" )); // 사용여부
- model.makeValue("/root/send/cartgubn" , model.getValue("/root/init/WorkData/cond/cartgubn" )); // Cart구분(O:수술,A:마취)
- submit("TRMNP01501"); // 수술실의 코드와 명칭을 가져온다.
- }*/
- /* ------------------------------------------------- */
- /* desc : Case Cart MASTER 자료저장하기 */
- /* param : pModel - Model */
- /* tNode - Target Node */
- /* sNode - Source Node */
- /* return : */
- /* -------------------------------------------------- */
- /*function fSave(pFlag){
- var tNode = "/root/send/MnpmcartList";
- var sCode = model.getValue(xPathInput+ "/ccrtno" );
- if ((pFlag == 'D') || (pFlag == 'U') || (pFlag == 'A') || (pFlag == 'S')){
- if (sCode == "") {
- messageBox("CaseCart 번호를", "C002");
- return;
- }
- }
- if (inp_orddeptcd.label == "") { // 집도과코드(마취과)
- model.setvalue(xPathInput+ "/orddeptcd","");
- alert("집도(마취)과를 선택하십시요");
- return;
- }
- //inp_perfid
- if (inp_perfid.label ==""){ // 집도의ID(마취의)
- model.setvalue(xPathInput+ "/perfid", "");
- alert("집도(마취)의를 선택하십시요");
- return;
- }
- model.removenode("/root/send");
- model.makeValue(tNode+"/ccrtno" , model.getvalue(xPathInput+ "/ccrtno" )); // CaseCart 번호 - 일련번호로 생성 "
- model.makeValue(tNode+"/cartgubn" , rdo_cartgubn.value ); // Cart구분(O:수술,A:마취) " default="O"
- model.makeValue(tNode+"/orddeptcd" , model.getvalue(xPathInput+ "/orddeptcd" )); // 집도과코드(마취과) "
- model.makeValue(tNode+"/anstkind" , model.getvalue(xPathInput+ "/anstkind" )); // 마취종류(코드정의서 M0017 참조) " default="00"
- model.makeValue(tNode+"/perfid" , model.getvalue(xPathInput+ "/perfid" )); // 집도의ID(마취의) "
- model.makeValue(tNode+"/anstageflag" , model.getvalue(xPathInput+ "/anstageflag" )); // 수술마취나이구분(코드 M0246 참조) " default="00"
- model.makeValue(tNode+"/opcd" , model.getvalue(xPathInput+ "/opcd" )); // 수술코드 "
- model.makeValue(tNode+"/appdd" , model.getvalue(xPathInput+ "/appdd" )); // 적용일자 "
- model.makeValue(tNode+"/perfavgoptm" , model.getvalue(xPathInput+ "/perfavgoptm" )); // 집도의별평균수술시간 "
- model.makeValue(tNode+"/perfavgdowntm" , model.getvalue(xPathInput+ "/perfavgdowntm" )); // 집도의별평균DownTime "
- model.makeValue(tNode+"/useflag" , model.getvalue(xPathInput+ "/useflag" )); // 사용여부 " default="Y"
- model.makeValue(tNode+"/endouseyn" , model.getvalue(xPathInput+ "/endouseyn" )); // 내시경사용여부 " default="N"
- if (pFlag == 'I') {
- model.makeValue(tNode+"/deptinit", model.getValue("/root/main/DeptLists/deptlist["+(inp_orddeptcd.focusIndex+1)+"]/deptengabbr")); // 부서영문약자코드 "
- }
- if (pFlag == "C") { // 수술명 복사
- if (model.getvalue(xPathInput+ "/copydept")=="") { // 집도과코드(마취과)
- alert("복사 집도(마취)과를 선택하십시요");
- return;
- }
- if (model.getvalue(xPathInput+ "/copydr" )==""){ // 집도의ID(마취의)
- alert("복사 집도(마취)의를 선택하십시요");
- return;
- }
- model.makeValue(tNode+"/deptinit" , model.getValue("/root/main/DeptLists/deptlist["+(cp_deptcd.focusIndex+1)+"]/deptengabbr")); // 부서영문약자코드 "
- model.makeValue(tNode+"/orddeptcd" , model.getvalue(xPathInput+ "/copydept" )); // 집도과코드(마취과)
- model.makeValue(tNode+"/perfid" , model.getvalue(xPathInput+ "/copydr" )); // 집도의ID(마취의)
- model.makeValue(tNode+"/frdeptcd" , model.getvalue(xPathInput+ "/orddeptcd" )); // From 부서코드
- model.makeValue(tNode+"/frperfid" , model.getvalue(xPathInput+ "/perfid" )); // From 의사ID
- if (rd_copyflag.value == "C") {
- if (rd_nameflag.value=="A") { // 수술명 + Cart물품 + 전체
- pFlag = "2";
- } else { // 수술명 + Cart물품 + 지정수술명
- pFlag = "4";
- }
- } else {
- if (rd_nameflag.value=="A") { // 수술명 + 전체
- pFlag = "1";
- } else { // 수술명 + 지정수술명
- pFlag = "3";
- }
- }
- }
- //
- if ((pFlag == 'I')||(pFlag == 'U')||(pFlag == 'I')||(pFlag == '3')||(pFlag == '4')) {
- if (model.getvalue(xPathInput+ "/opcd" )==""){ // 수술명
- alert("수술명을 선택하십시요");
- return;
- }
- }
- //
- model.makeValue(tNode+"/recstat" , pFlag); // I:입력 U:수정 D:삭제,S:사용전환Single,A:사용전환All, A:마취생성",수술명복사:1 수술명,2수술명+Cart물품,3지정수술명,4지정수술명+Cart물품
- if (submit("TXMNP01500")){ // 수술간호기록정보,참가자 정보저장
- msg = model.getValue("/root/dummy/proclist/procname");
- alert(msg);
- }
- model.resetInstanceNode(xPathInput);
- var curtDate = getCurrentDate();
- var curtYYMM = curtDate.substr(0, 8);
- model.setValue("/root/init/WorkData/InputData/appdd", curtYYMM);//적용일자 현재 날짜로 셋팅
- MnpmcartList_Read();
- }*/
- /* ------------------------------------------------- */
- /* group : EMR 간호 수술마취 */
- /* ver : 2009.01.05 */
- /* by : 김진명 */
- /* ------------------------------------------------- */
- /* desc : Case Cart MASTER 자료저장하기 */
- /* param : */
- /* return : */
- /* ------------------------------------------------- */
- function fOpNmSave(pFlag){
- var ccrtno, opcd, useflag, statflag;
- var cnt = 0;
- var opsavelist = "m▦opcd▦orddeptcd▦perfid▦cartgubn▦useflag▦deptinit▦ccrtno▦opusetm▦opposturecd▦opdirecflag▦anstmthdcd▦opcntmdg"; // 수술체위, 수술창상, 마취방법, 수술위치, 소요시간 정보 추가 2010.05.24 kskim
- var perfdeptcd = model.getValue("/root/init/WorkData/cond/rgstdeptcd");
- var perfdrid = model.getValue("/root/init/WorkData/cond/rgstperf");
- var deptinit = model.getValue("/root/init/ComboLists/deptlist[deptcd='" + perfdeptcd + "']/deptengabbr");
- if( perfdeptcd == "" ) {
- messageBox("집도과를 선택하지 ", "E007");
- model.setFocus("cmb_orddept");
- return;
- }
- if( perfdrid == "" ) {
- messageBox("집도의를 선택하지 ", "E007");
- model.setFocus("cmb_perf");
- return;
- }
- for(var iRow = 1; iRow < grd_cartlist.rows; iRow++ ) {
- if( model.getValue("/root/main/diaginfo/diagcdlist[" + iRow + "]/chkflag") == "true" ) {
- ccrtno = model.getValue("/root/main/diaginfo/diagcdlist[" + iRow +"]/ccrtno");
- opcd = model.getValue("/root/main/diaginfo/diagcdlist[" + iRow +"]/opcd");
- useflag = model.getValue("/root/main/diaginfo/diagcdlist[" + iRow +"]/useflag");
-
- // 요청번호; 845
- // 요청내용: 수술의뢰시 필요한 기준자료 추가 등록
- // 세부내용: 수술체위, 수술창상, 수술위치, 마취방법
- // 수정날자 2010.05.24
- // 수정자 : kskim
- // 수정 시작 kskim
- usehours = model.getValue("/root/main/diaginfo/diagcdlist[" + iRow +"]/usehours"); // 소요시간(시)
- usemins = model.getValue("/root/main/diaginfo/diagcdlist[" + iRow +"]/usemins"); // 소요시간(분)
- opposturecd = model.getValue("/root/main/diaginfo/diagcdlist[" + iRow +"]/opposturecd"); // 수술체위
- opdirecflag = model.getValue("/root/main/diaginfo/diagcdlist[" + iRow +"]/opdirecflag"); //수술위치
- anstmthdcd = model.getValue("/root/main/diaginfo/diagcdlist[" + iRow +"]/anstmthdcd"); //마취방법
- opcntmdg = model.getValue("/root/main/diaginfo/diagcdlist[" + iRow +"]/opcntmdg"); //수술창상
- opusetm = usehours.concat(usemins);
- uptstat = model.getValue("/root/main/diaginfo/diagcdlist[" + iRow +"]/uptstat"); //update상태 정보
-
- // 수정 종료 kskim
-
- if( pFlag != "D" ) {
- if( useflag == "Y" && uptstat != "U") {
- messageBox("이미 사용중인 수술명", "E008");
- return;
- }
- }else {
- if( useflag == "N" ) {
- messageBox("이미 미사용 수술명", "E008");
- return;
- }
- }
- if( ccrtno == "" ) {//등록된 카트가 아니면 신규등록, 등록된 카트이면서 미사용중이면 수정
- statflag = "I";
- useflag = "Y"
- }else {
- statflag = "U";
- useflag = "Y"
- }
- if( pFlag == "D" ) {//삭제이면
- statflag = "D";
- useflag = "N"
- }
- cnt++
-
- // 소요시간, 수술체위, 수술위치, 마취방법, 수술창상 추가 . kskim. 2010.05.24
- opsavelist = opsavelist + "▩" +
- statflag + "▦" +
- opcd + "▦" +
- perfdeptcd + "▦" +
- perfdrid + "▦" +
- "O" + "▦" +
- useflag + "▦" +
- deptinit + "▦" +
- ccrtno + "▦" +
- opusetm + "▦" +
- opposturecd + "▦" +
- opdirecflag + "▦" +
- anstmthdcd + "▦" +
- opcntmdg;
- }
- }
- if( cnt > 0 ) {
- model.removenode("/root/send");
- model.makeValue("/root/send/reqdata/perfdeptcd", perfdeptcd);
- model.makeValue("/root/send/reqdata/perfdrid", perfdrid);
- model.makeValue("/root/send/reqdata/useflag", model.getValue("/root/init/WorkData/cond/useflag"));
- model.makeValue("/root/send/reqdata/cartgubn", "O");
- model.makeValue("/root/send/savedata", opsavelist);
- submit("TXMNP01503");
- }else {
- messageBox("선택하신 수술명이 ", "E007");
- return;
- }
- }
- /* ------------------------------------------------- */
- /* desc : Case Cart MASTER 자료저장하기 */
- /* param : pModel - Model */
- /* tNode - Target Node */
- /* sNode - Source Node */
- /* return : */
- /* -------------------------------------------------- */
- function fRow2setValue(){
- var grdID;
- if( model.getValue("/root/init/WorkData/cond/cartgubn") == "O" ) {//수술
- grdID = grd_cartlist;
- } else {
- grdID = grd_anstcartlist;
- }
- if (grdID.rows < 1) {
- return;
- }
- var DrRead = "N";
- var sNode = "/root/main/MnpmcartData/MnpmcartList["+grdID.row+"]";
- model.setValue(xPathInput + "/ccrtno" , model.getValue(sNode +"/ccrtno" ));
- var DeptCode = model.getValue(sNode +"/orddeptcd" );
- if (inp_orddeptcd.value != DeptCode) DrRead = "Y";
- model.removenode("/root/send");
- model.makeValue("/root/send/reqdata/conflag", "2");
- model.makeValue("/root/send/reqdata/lrgcd", model.getValue(sNode +"/lrgcd"));
- submit("TRMNP01505", false);
- model.removenode("/root/send");
- model.makeValue("/root/send/reqdata/opgrp1" , model.getValue(sNode +"/lrgcd"));
- model.makeValue("/root/send/reqdata/opgrp2" , model.getValue(sNode +"/mdlcd"));
- model.makeValue("/root/send/reqdata/sortflag" , "N");
- submit("TRMNP01503", false);
- model.setValue(xPathInput + "/orddeptcd" , model.getValue(sNode +"/orddeptcd"));
- model.setValue(xPathInput + "/perfid" , model.getValue(sNode +"/perfid"));
- model.setValue(xPathInput + "/opcd" , model.getValue(sNode +"/opcd"));
- model.setValue(xPathInput + "/appdd" , model.getValue(sNode +"/appdd"));
- model.setValue(xPathInput + "/perfavgoptm" , model.getValue(sNode +"/perfavgoptm"));
- model.setValue(xPathInput + "/perfavgdowntm", model.getValue(sNode +"/perfavgdowntm"));
- model.setValue(xPathInput + "/useflag" , model.getValue(sNode +"/useflag"));
- model.setValue(xPathInput + "/anstkind" , model.getValue(sNode +"/anstkind"));
- model.setValue(xPathInput + "/anstageflag" , model.getValue(sNode +"/anstageflag"));
- model.setValue(xPathInput + "/lrgcd" , model.getValue(sNode +"/lrgcd"));
- model.setValue(xPathInput + "/mdlcd" , model.getValue(sNode +"/mdlcd"));
- if ( DrRead == "Y") fDrCombo(2, DeptCode); // 집도(마취의) 가져오기
- grp_input.refresh();
- }
- /* ------------------------------------------------- */
- /* desc : 수술명 복사 */
- /* param : */
- /* return : */
- /* -------------------------------------------------- */
- function fOpCopy(){
- var copylist = "ccrtno▦opcd▦copyflag▦perfdeptcd▦perfid▦opusetm▦opposturecd▦opdirecflag▦anstmthdcd▦opcntmdg"; // 수술체위, 수술창상, 수술위치, 마취방법, 소요시간 추가 2010.05.24 kskim
- var perfdeptcd = model.getValue("/root/init/WorkData/cond/copdeptcd");
- var perfid = model.getValue("/root/init/WorkData/cond/copperf");
- var copyflag = model.getValue("/root/init/WorkData/cond/copgubn");
- if( perfdeptcd == "" ) {
- messageBox("복사할 집도과를 ", "C002");
- model.setFocus("cmb_orddept2");
- return;
- }else if( perfid == "" ) {
- messageBox("복사할 집도의를 ", "C002");
- model.setFocus("cmb_perf2");
- return;
- }else if( copyflag == "" ) {
- messageBox("복사 조건을 ", "C002");
- model.setFocus("rd_copyflag");
- return;
- }
- var cnt = 0;
- for( var i=0; i < grd_copyoplist.rows; i++ ) {
- var chk = model.getValue("/root/main/copyoplist/diagcdlist[" + i + "]/chkflag");
- var opcd = model.getValue("/root/main/copyoplist/diagcdlist[" + i + "]/opcd");
- var ccrtno = model.getValue("/root/main/copyoplist/diagcdlist[" + i + "]/ccrtno");
-
- // 요청번호; 845
- // 요청내용: 수술의뢰시 필요한 기준자료 추가 등록
- // 세부내용: 수술체위, 수술창상, 수술위치, 마취방법
- // 수정날자 2010.05.24
- // 수정자 : kskim
- // 수정 시작
- var opposturecd = model.getValue("/root/main/copyoplist/diagcdlist[" + i + "]/opposturecd"); // 수숭체위
- var opdirecflag = model.getValue("/root/main/copyoplist/diagcdlist[" + i + "]/opdirecflag"); // 수술위치
- var anstmthdcd = model.getValue("/root/main/copyoplist/diagcdlist[" + i + "]/anstmthdcd"); // 마취방법
- var opcntmdg = model.getValue("/root/main/copyoplist/diagcdlist[" + i + "]/opcntmdg"); // 수술창상
- var usehours = model.getValue("/root/main/copyoplist/diagcdlist[" + i + "]/usehours"); // 소요시간(시)
- var usemins = model.getValue("/root/main/copyoplist/diagcdlist[" + i + "]/usemins"); // 소요시간(분)
- var opusetm = usehours.concat(usemins);
- // 소요시간, 수술체위, 수술위치, 마취방법, 수술창상 추가 . kskim. 2010.05.24
- if( chk == "true" ) {
- copylist = copylist + "▩" +
- ccrtno + "▦" +
- opcd + "▦" +
- copyflag + "▦" +
- perfdeptcd + "▦" +
- perfid + "▦" +
- opusetm + "▦" +
- opposturecd + "▦" +
- opdirecflag + "▦" +
- anstmthdcd + "▦" +
- opcntmdg;
-
- cnt++;
- }
- }
- if( cnt > 0 ) {
- model.removenode("/root/send");
- model.makeValue("/root/send/copylist", copylist);
- submit("TXMNP01502", false);
- fClear();//수술명 복사 초기화
- }else {
- messageBox("선택하신 수술명이 ", "I004");
- }
- }
- function fCheckCartCode(pCode){
- var sCode = "";
- var sNode = "/root/main/MnpmcartData/MnpmcartList";
- var sRowCnt = grd_cartlist.rows-grd_cartlist.fixedrows;
- for (var i=1;i<=sRowCnt; i++){
- sCode = model.getValue(sNode + "["+i+"]/ccrtno");
- if (pCode == sCode) {
- return true;
- }
- }
- return false;
- }
- function fOpCodePopup() {
- var xpos = event.screenX;
- var ypos = event.screenY-300;
- open("SPMNP01500", 1, xpos, ypos,"SPMNP01500","/root/init/WorkData/oplist", "/root/Cond/oplist");
- var iProperties = getParameter("SendData");
- var iSplit_Value = iProperties.split("|");
- if (iSplit_Value.length > 0) {
- model.setValue(xPathInput + "/opcd" , iSplit_Value[0]); // CODE
- model.setValue(xPathInput + "/opkname", iSplit_Value[1]); // NAME
- }
- }
- // --------------------------------------------------
- // Switch 속성변경 처리하는 함수
- // --------------------------------------------------
- function fViewToggle() {
- if (sToggle == 0) {
- grp_grid.attribute("width" ) = "1195";
- lin_grid.attribute("x2" ) = "1195";
- grd_cartlist.attribute("width" ) = "1195";
- bbt_excel.visible = true;
- } else {
- bbt_excel.visible = false;
- grp_grid.attribute("width" ) = "726";
- lin_grid.attribute("x2" ) = "724";
- grd_cartlist.attribute("width" ) = "724";
- }
- grp_grid.refresh();
- }
- /* --------------------------------------------------*/
- /* type : function */
- /* access : public */
- /* desc : 집도과(마취과) 콤보아이템 가져오기 */
- /* param : */
- /* return : */
- /* --------------------------------------------------*/
- function fDeptCombo(pFlag) {
- removeComboItem("cmb_orddept" );
- model.removenode("/root/send" );
- model.makeValue("/root/send/flag" , "X" );
- model.makeValue("/root/send/searchitem", "XX" );
- model.makeValue("/root/send/deptflag" , pFlag );
- submit("TRMNP00102", false);
- model.removeNodeset("/root/main/DeptLists/deptlist");
- model.copyNode("/root/main/DeptLists", "/root/init/DeptLists");
- }
- /* --------------------------------------------------*/
- /* type : function */
- /* access : public */
- /* desc : 집도의(마취의) 콤보아이템 가져오기 */
- /* param : */
- /* return : */
- /* --------------------------------------------------*/
- function fDrCombo(pCls, pDept) {
- model.removenode("/root/send" );
- model.makeNode("/root/send" );
- model.makeNode("/root/send/reqdata");
- model.makeValue("/root/send/reqdata/orddept", pDept);
- submit("TRMNP00103");
- if (pCls ==1) {//수술명 등록용 집도의 리스트
- model.removeNodeset("/root/init/DrInfoI/DrLists/drlist");
- model.copyNode("/root/init/DrInfoI/DrLists", "root/init/DrLists");
- addComboItem("cmb_perf", "전 체", "", "above" );
- cmb_perf.refresh();
- }
- if (pCls ==2) {//수술명 복사용 집도의 리스트
- model.removeNodeset("/root/init/DrInfoII/DrLists/drlist");
- model.copyNode("/root/init/DrInfoII/DrLists", "root/init/DrLists");
- addComboItem("cmb_perf2", "전 체", "", "above" );
- cmb_perf2.refresh();
- }
- }
- /* --------------------------------------------------*/
- /* type : function */
- /* access : public */
- /* desc : 콤보아이템 제거 */
- /* param : */
- /* return : */
- /* --------------------------------------------------*/
- function removeComboItem( comboID ) {
- var comboObj = document.all.item(comboID);
- var comboItemNodeSet = comboObj.choices.itemset.attribute("nodeset");
- model.removenode(comboItemNodeSet + "[1]");
- model.refresh();
- }
- // --------------------------------------------------
- // 화면 Query 시 처리하는 함수
- // --------------------------------------------------
- function fCheckCartGubn() {
- var sCartGubn = model.getValue("/root/init/WorkData/cond/cartgubn"); // Cart구분 O:수술
- model.removeNodeset("/root/main/MnpmcartData/MnpmcartList");
- model.setValue("/root/init/WorkData/cond/anstkind" , "");
- model.setValue("/root/init/WorkData/cond/anstageflag", "");
- model.setValue(xPathInput + "/anstkind" , "");
- model.setValue(xPathInput + "/anstageflag", "");
- //cmb_anstkind.refresh();
- //cmb_anstageflag.refresh();
- if (sCartGubn == "O") {
- cap_dr.text = "집 도 의";
- cap_dept.text = "집 도 과";
- cap_in_dr.text = "집 도 의";
- cap_in_dept.text = "집 도 과";
- cmb_anstkind.disabled = true; //마취방법 비활성화
- cmb_anstageflag.disabled = true; //연령대 비활성화
- grd_anstcartlist.visible = flase;
- grd_cartlist.visible = true;
- model.setValue(xPathInput + "/anstopflag" , "");
- grp_dr.disabled = true;
- cmb_orddept.disabled = false;
- //grd_cartlist.colhidden(2) = false;
- //grd_cartlist.colhidden(4) = true;
- //grd_cartlist.colhidden(5) = true;
- model.removeNodeset("/root/init/drlist");
- fDeptCombo("011"); // 집도과
- addComboItem("cmb_orddept", "전 체", "", "above" );
- } else {
- cap_dr.text = "마 취 의";
- cap_dept.text = "마 취 과";
- cap_in_dr.text = "마 취 의";
- cap_in_dept.text = "마 취 과";
- cmb_anstkind.disabled = false; //마취방법 활성화
- cmb_anstageflag.disabled = false; //연령대 활성화
- grd_anstcartlist.visible = true;
- grd_cartlist.visible = false;
- grp_dr.disabled = false;
- cmb_orddept.disabled = true;
- //grd_cartlist.colhidden(2) = true;
- //grd_cartlist.colhidden(4) = false;
- //grd_cartlist.colhidden(5) = false;
- fDeptCombo("012"); // 마취과
- }
- fInputDataClear();
- var curtDate = getCurrentDate();
- var curtYYMM = curtDate.substr(0, 8);
- model.setValue("/root/init/WorkData/InputData/appdd", curtYYMM);//적용일자는 현재일로 셋팅
- cmb_orddept.selectedIndex = 1;
- fDrCombo(1, model.getValue("/root/init/WorkData/cond/orddept"));
- model.refresh();
- }
- //
- function fInputDataClear() {
- model.setValue(xPathInput + "/ccrtno" ,"" );
- model.setValue(xPathInput + "/orddeptcd" ,"" );
- model.setValue(xPathInput + "/perfid" ,"" );
- model.setValue(xPathInput + "/opcd" ,"" );
- model.setValue(xPathInput + "/appdd" ,"" );
- model.setValue(xPathInput + "/perfavgoptm" ,"" );
- model.setValue(xPathInput + "/perfavgdowntm","" );
- model.setValue(xPathInput + "/useflag" ,"Y" );
- model.setValue(xPathInput + "/recstat" ,"" );
- model.setValue(xPathInput + "/depthngnm" ,"" );
- model.setValue(xPathInput + "/usernm" ,"" );
- model.setValue(xPathInput + "/opkname" ,"" );
- model.setValue(xPathInput + "/anstkind" ,"" );
- model.setValue(xPathInput + "/anstageflag" ,"");
- model.setValue(xPathInput + "/anstopflag" ,"");
- model.setValue(xPathInput + "/copydr" ,"" );
- model.setValue(xPathInput + "/copydept" ,"" );
- model.setValue(xPathInput + "/nameflag" ,"" );
- model.setValue(xPathInput + "/copyflag" ,"" );
- grp_input.refresh();
- }
- // --------------------------------------------------
- // Grid 속성변경 처리하는 함수
- // --------------------------------------------------
- function fSetAttribute(pIdx) {
- var sWidth = tWidth[pIdx].split(",");
- for (i = 0; i < sWidth.length; i++) {
- grd_cartlist.colwidth(i+1) = sWidth[i];
- }
- }
- /* ------------------------------------------------- */
- /* SMMNP01500_Case Cart MASTER */
- /* */
- /* ------------------------------------------------- */
- /* group : EMR 간호 수술마취 */
- /* ver : 2008.10.14 */
- /* by : 김진명 */
- /* ------------------------------------------------- */
- /* SMMNP01500_Case Cart MASTER */
- /* */
- /* desc :수술명 사용 전환 */
- /* --------------------------------------------------*/
- function fConvertOP(useflag) {
- model.removenode("/root/send");
- var SendData = "ccrtno▦useflag";
- var ccrtno, cnt=0;
- for( var i = 0; i < grd_cartlist.rows; i++ ) {
- if( model.getValue("/root/main/MnpmcartData/MnpmcartList[" + i + "]/chk") == "true" ) {
- cnt++
- ccrtno = model.getValue("/root/main/MnpmcartData/MnpmcartList[" + i + "]/ccrtno")
- SendData = SendData + "▩" + ccrtno + "▦" + useflag;
- }
- }
- if( cnt > 0 ) {
- model.makeValue("/root/send/senddata", SendData);
- model.makeValue("/root/send/reqdata/orddeptcd" , model.getValue("/root/init/WorkData/cond/orddept" )); // 진료과코드
- model.makeValue("/root/send/reqdata/perfid" , model.getValue("/root/init/WorkData/cond/perfdr" )); // 집도의ID
- model.makeValue("/root/send/reqdata/useflag" , model.getValue("/root/init/WorkData/cond/useflag" )); // 사용여부
- model.makeValue("/root/send/reqdata/cartgubn" , model.getValue("/root/init/WorkData/cond/cartgubn" )); // Cart구분(O:수술,A:마취)
- model.makeValue("/root/send/reqdata/anstkind" , model.getValue("/root/init/WorkData/cond/anstkind" )); // 마취종류(코드정의서 M0017 참조)
- model.makeValue("/root/send/reqdata/anstageflag", model.getValue("/root/init/WorkData/cond/anstageflag")); // 수술마취나이구분(코드 M0246 참조)
- submit("TXMNP01501"); // 수술명 사용 전환
- }
- }
- /**
- * @desc : 수술소요 시간(hour)입력 정보 체크 및 수정
- * @
- * @param : 선택된 Row
- * @return :
- * @author : 김광성
- * @---------------------------------------------------
- */
- function fCheckUseHours(grdFlag, selRow){
- var hours;
-
- if(grdFlag == "original") hours = model.getValue(grd_cartlist.nodeset + "[" + selRow + "]/usehours");
- if(grdFlag == "copy") hours = model.getValue(grd_copyoplist.nodeset + "[" + selRow + "]/usehours");
-
- var addZeroHours = "0";
-
- if(isNull(hours) ){
- return addZeroHours.concat("0");
- }
- else if(hours.length < 2){
- return addZeroHours.concat(hours);
- }
- else{
- return hours;
- }
- }
- /* ------------------------------------------------- */
- /* ------End Of List ------------------------------- */
- /* -------------------------------------------------- */
|