123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382 |
- <?xml version="1.0" encoding="utf-8"?>
- <Script type="xscript4.0"><![CDATA[var arErrorCode = new HashArray();
- var gPRCPFLAG; //처방구분
- var gSRCHFLAG; //검색구분
- function fPrcpClsSrchInfo(iRow) {
- var lvl = ds_main_prcpclscdlist.getColumn(iRow, "lvl");
- var lvl2 = ds_main_prcpclscdlist.getColumn(iRow + 1, "lvl");
- if ( lvl != lvl2 && !utlf_isNull(lvl2)) {
- if ( lvl < lvl2 ) {
- return false;
- }
- }
-
- var prcpclscd = lf_getDsValue(ds_main_prcpclscdlist, iRow, "prcpclscd");
- var prcpclscd1 = lf_getDsValue(ds_main_prcpclscdlist, iRow, "prcpclscd1");
- var prcpclscd2 = lf_getDsValue(ds_main_prcpclscdlist, iRow, "prcpclscd2");
- var prcpclscd3 = lf_getDsValue(ds_main_prcpclscdlist, iRow, "prcpclscd3");
- var prcpclsnm = lf_getDsValue(ds_main_prcpclscdlist, iRow, "prcpclsnm");
-
- var prcpdd = oOpener.ds_init.getColumn(0, "prcpdd");
-
- if(gPRCPFLAG == 2){ //지시처방인 경우
- var ordprcpflag = "genr";
- }else if(gPRCPFLAG == 4){ //BMT인 경우
- //var chkflag = "bmt" ;
- gPRCPFLAG = 2 ;
- var ordprcpflag = "bmt";
- }else{
- var ordprcpflag = ""; //지시처방이 아닌 경우, cond10은 empty처리함
- }
-
- var gSRCHFLAG = ds_send.getColumn(0, "cond1"); //검색구분(식이, 지시..)
-
- var ioflag = oOpener.ds_patflag.getColumn(0, "prcpgenrflag");
- if(ioflag == "O" || ioflag == "S"){
- ioflag = "O";
- }else{
- ioflag = "I";
- }
-
- ds_send.clearData();
- ds_send.addRow();
-
- ds_send.setColumn(0, "cond1" , gSRCHFLAG); //검색구분(식이, 지시..)
- ds_send.setColumn(0, "cond2" , ioflag ); //외래, 입원, 응급 구분
- ds_send.setColumn(0, "cond3" , prcpdd); //처방일
- ds_send.setColumn(0, "cond4" , "11"); //환자보험유형
- ds_send.setColumn(0, "cond5" , prcpclscd1); //분류1
- ds_send.setColumn(0, "cond6" , prcpclscd2); //분류2
- ds_send.setColumn(0, "cond7" , prcpclscd3); //분류3
- ds_send.setColumn(0, "cond8" , prcpclscd ); //분류: 약에서 사용한다.
- ds_send.setColumn(0, "cond9" , gPRCPFLAG ); //지시처방
- ds_send.setColumn(0, "cond10", ordprcpflag); //지시처방구분(일반:genr, BMT:bmt)
- ds_send.setColumn(0, "cond99", "getPrcpClsSrchInfo" ); //검색구분
-
- var oParam = {};
- oParam.id = "TRMMO02202";
- oParam.service = "prcpmngtapp.PrcpMngt";
- oParam.method = "reqGetPrcpSrchInfo";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_prcpsrch_prcplist=prcplist";
- oParam.async = false;
- oParam.callback = "cf_TRMMO02202";
- tranf_submit(oParam);
-
- if (arErrorCode.pop("TRMMO02202") > -1) {
- grd_prcpsrchlist.setCellProperty("head", 2, "text", prcpclsnm.getTrim());
- if ( ordprcpflag == "bmt" ) {
- gPRCPFLAG = 4 ;
- }
-
- return true;
- }
- }
- function cf_TRMMO02202(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
-
- if(nErrorCode > -1)
- dsf_setDefaultVal(ds_prcpsrch_prcplist, "prcpvol:0,prcpvolunitnm:-,prcpqty:0,prcpqtyunitnm:-,prcptims:0,prcpdayno:0,drugmthdspccdnm:-,drugmthdspccd:-,hsctdelivepos:0,hsctlnkno:0,etcprcpflag:-,drgacptflag:-");
- }
- function fdetlvw() {
- if ( grd_prcpsrchlist.visible ) {
- grd_prcpsrchlist.visible = false;
- datagrid6.visible = true;
- trv_prcpclscdlist.visible = true;
- trv_prcpclscdlist.setFocus();
- } else {
- grd_prcpsrchlist.visible = true;
- datagrid6.visible = false;
- trv_prcpclscdlist.visible = false;
- grd_prcpsrchlist.setFocus();
- }
- }
- /**
- * @desc : 처방검색화면에서 button 초기화 setting
- * @return : void
- * @authur : 마정민 2007. 8. 20
- */
- function fInitSrchBtnSet() {
- var ds_btnsrchenvcnts = oOpener.ds_initsrch_btnsrchenvcnts;
- var btn_srchcnt = 0;
- for ( var i = 0; i < 16; i++ ) {
- btn_srchcnt = i + 1;
- var btncd = ds_btnsrchenvcnts.getColumn(i, "btncd");
- var btnnm = "group1.button" + btn_srchcnt;
- var buttonObj = eval(btnnm);
-
- if ( i < ds_btnsrchenvcnts.rowcount ) {
- buttonObj.text = ds_btnsrchenvcnts.getColumn(i, "btnnm");
- buttonObj.visible = true;
- buttonObj._value = btncd;
- buttonObj.onclick.addHandler(fBtnClick2);
- } else {
- buttonObj.visible = false;
- }
- }
- }
- function fBtnClick2(obj:Button, e:ClickEventInfo) {
- var btnnm = obj.name.substring ( 6, 8 );
- if ( !utlf_isNull (btnnm)) {
- var srcnbtnnm = eval ( btnnm ) - 50;
- var srcnbtnnm = "button" + srcnbtnnm;
-
- if ( oOpener.div_all.Tap_prcp.tabindex == 3 ) {
- fCallSrchBtn(srcnbtnnm);
- } else {
- oOpener.ds_init.setColumn(0, "srchbtn", srcnbtnnm );
- oOpener.div_all.Tap_prcp.tabindex = 3;
- }
- }
- }
- /**
- * @desc : 처방검색화면에서 버튼값 설정
- * @return : void
- * @authur : 마정민 2007. 8. 9
- */
- function fSrchBtnClick(srcnbtnnm) {
- var buttonObj = eval("group1." + srcnbtnnm);
- var buttonValue = buttonObj._value;
-
- if ( buttonValue == "01") { //진단검사
- ds_main_prcpclscdlist.clearData();
- oOpener.div_all.button102.onclick.fireEvent(oOpener.div_all.button102, new ClickEventInfo());
- } else if ( buttonValue == "02") { //지시
- ds_send.clearData();
- ds_send.addRow();
-
- ds_send.setColumn(0, "cond1" , "direc");
- ds_send.setColumn(0, "cond2" , oOpener.ds_init.getColumn(0, "prcpdd"));
- ds_send.setColumn(0, "cond10", "genr");
- grd_prcpsrchlist.setCellProperty("head", 2, "text", "처방명");
-
- var oParam = {};
- oParam.id = "TRMMO02201";
- oParam.service = "prcpmngtapp.PrcpMngt";
- oParam.method = "reqGetPrcpClsCdList";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_main_prcpclscdlist=prcpclscdlist";
- oParam.async = false;
- oParam.callback = "cf_TRMMO02201";
- tranf_submit(oParam);
-
- if (arErrorCode.pop("TRMMO02201") > -1)
- gPRCPFLAG = 2;
- } else if ( buttonValue == "03") { //식사
- ds_send.clearData();
- ds_send.addRow();
-
- ds_send.setColumn(0, "cond1", "meal" );
- ds_send.setColumn(0, "cond2", oOpener.ds_init.getColumn(0, "prcpdd"));
-
- grd_prcpsrchlist.setCellProperty("head", 2, "text", "처방명");
-
- var oParam = {};
- oParam.id = "TRMMO02201";
- oParam.service = "prcpmngtapp.PrcpMngt";
- oParam.method = "reqGetPrcpClsCdList";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_main_prcpclscdlist=prcpclscdlist";
- oParam.async = false;
- oParam.callback = "cf_TRMMO02201";
- tranf_submit(oParam);
-
- if (arErrorCode.pop("TRMMO02201") > -1)
- gPRCPFLAG = 3;
- } else if ( buttonValue == "04") { //BMT 20081106 지시, BMT 분리 요청
- ds_send.clearData();
- ds_send.addRow();
-
- ds_send.setColumn(0, "cond1" , "direc" );
- ds_send.setColumn(0, "cond2" , oOpener.ds_init.getColumn(0, "prcpdd"));
- ds_send.setColumn(0, "cond10", "bmt" );
-
- grd_prcpsrchlist.setCellProperty("head", 2, "text", "처방명");
- var oParam = {};
- oParam.id = "TRMMO02201";
- oParam.service = "prcpmngtapp.PrcpMngt";
- oParam.method = "reqGetPrcpClsCdList";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_main_prcpclscdlist=prcpclscdlist";
- oParam.async = false;
- oParam.callback = "cf_TRMMO02201";
- tranf_submit(oParam);
-
- if (arErrorCode.pop("TRMMO02201") > -1)
- gPRCPFLAG = 4;
- } else if (buttonValue == "05"){
- ds_send.clearData();
- ds_send.addRow();
-
- ds_send.setColumn(0, "cond1", "prcpclasscd");
- ds_send.setColumn(0, "cond2" , oOpener.ds_init.getColumn(0, "prcpdd"));
-
- grd_prcpsrchlist.setCellProperty("head", 2, "text", "처방명");
-
- var oParam = {};
- oParam.id = "TRMMO02203";
- oParam.service = "prcpmngtapp.PrcpMngt";
- oParam.method = "reqGetPrcpClassCdList";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_main_prcpclscdlist=prcpclscdlist";
- oParam.async = false;
- oParam.callback = "cf_TRMMO02203";
- tranf_submit(oParam);
-
- if (arErrorCode.pop("TRMMO02203") > -1)
- gPRCPFLAG = 5;
- }
- }
- function cf_TRMMO02201(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- function cf_TRMMO02203(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- function fCallSrchBtn ( srcnbtnnm ) {
- var buttonObj = eval("group1." + srcnbtnnm);
- var buttonValue = buttonObj._value;
- stt_btnnm.text = buttonObj.text;
-
- if( buttonValue == "01" || buttonValue == "02" || buttonValue == "03" || buttonValue == "04" || buttonValue == "05" ) {
- fSrchBtnClick(srcnbtnnm);
- } else {
- ds_send.clearData();
- ds_send.addRow();
-
- ds_send.setColumn(0, "cond1", buttonValue );
- ds_send.setColumn(0, "cond2", oOpener.ds_init.getColumn(0, "prcpdd"));
-
- grd_prcpsrchlist.setCellProperty("head", 2, "text", "처방명");
-
- var oParam = {};
- oParam.id = "TRMMO02201";
- oParam.service = "prcpmngtapp.PrcpMngt";
- oParam.method = "reqGetPrcpClsCdList";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_main_prcpclscdlist=prcpclscdlist";
- oParam.async = false;
- oParam.callback = "cf_TRMMO02201";
- tranf_submit(oParam);
-
- if (arErrorCode.pop("TRMMO02201") > -1);
- gPRCPFLAG = 1;
-
- if ( buttonValue == "A" ) {
- grd_prcpsrchlist.setFormatColProperty(1, "size", 40);
- grd_prcpsrchlist.setFormatColProperty(2, "size", 322);
- } else {
- grd_prcpsrchlist.setFormatColProperty(1, "size", 0);
- grd_prcpsrchlist.setFormatColProperty(2, "size", 351);
- }
- }
- if( buttonValue != "01" ){
- var leng = ds_main_prcpclscdlist.rowcount;
-
- ds_prcpsrch_prcplist.clearData();
- datagrid6.visible = true;
- ds_main_prcpclscdlist.rowposition = -1;
- if ( 1 < leng && leng < 25 ) {
- // trv_prcpclscdlist.expandDepth = 3;
- trv_prcpclscdlist.treeinitstatus = "expand,all";
- } else {
- trv_prcpclscdlist.treeinitstatus = "collapse,all";
-
- var lvl1Cnt = ds_main_prcpclscdlist.getCaseCount("lvl == '1'");
- var findLvl1 = 0;
-
- for(var i = 0; i < leng; i++) {
- var lvl = ds_main_prcpclscdlist.getColumn(i, "lvl");
- if(lvl == "1") {
- findLvl1++;
-
- var row = trv_prcpclscdlist.getTreeRow(i);
- if(row > -1 && !trv_prcpclscdlist.isTreeLeafRow(row, false))
- trv_prcpclscdlist.setTreeStatus(row, true);
-
- if(findLvl1 == lvl1Cnt) break;
- }
- }
-
- trv_prcpclscdlist.userdata = 0;
- }
-
- trv_prcpclscdlist.visible = true;
- this.setTimer(0, 1); // 그리드 포커스 설정
- }
- }
- /**
- * @desc : 처방 분류에 따른 처방 조회
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fPrcpClassSrchInfo(indx) {
- var row = trv_prcpclscdlist.getTreeRow(indx);
-
- if (trv_prcpclscdlist.getTreeStatus(row) == 3) { // 최종 노드를 클릭했을때만 적용되도록 함.
- var prcpclscd = ds_main_prcpclscdlist.getColumn(indx, "prcpclscd");
- var prcpdd = oOpener.ds_init.getColumn(0, "prcpdd");
-
- gPRCPFLAG = 5 ;
- var gSRCHFLAG = ds_send.getColumn(0, "cond1"); //검색구분(식이, 지시..)
- var ioflag = oOpener.ds_patflag.getColumn(0, "prcpgenrflag");
- if(ioflag == "O" || ioflag == "S"){
- ioflag = "O";
- }else{
- ioflag = "I";
- }
-
- ds_send.clearData();
- ds_send.addRow();
-
- ds_send.setColumn(0, "cond1" , gSRCHFLAG); //검색구분(식이, 지시..)
- ds_send.setColumn(0, "cond2" , ioflag ); //외래, 입원, 응급 구분
- ds_send.setColumn(0, "cond3" , prcpdd); //처방일
- ds_send.setColumn(0, "cond4" , "11"); //환자보험유형
- ds_send.setColumn(0, "cond8" , prcpclscd ); //분류: 약에서 사용한다.
- ds_send.setColumn(0, "cond9" , gPRCPFLAG ); //지시처방
- ds_send.setColumn(0, "cond99", "getPrcpClassPrcpSrchInfo" ); //검색구분
-
- var oParam = {};
- oParam.id = "TRMMO02202";
- oParam.service = "prcpmngtapp.PrcpMngt";
- oParam.method = "reqGetPrcpSrchInfo";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_prcpsrch_prcplist=prcplist";
- oParam.async = false;
- oParam.callback = "cf_TRMMO02202";
- tranf_submit(oParam);
-
- if (arErrorCode.pop("TRMMO02202") > -1) {
- grd_prcpsrchlist.setCellProperty("head", 2, "text", "처방분류");
- return true;
- }
- }
- }]]></Script>
|