123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873 |
- <?xml version="1.0" encoding="utf-8"?>
- <Script type="xscript4.0"><![CDATA[/***************************************************************************************
- * System Name : KNUH2.0
- * Job Name : EMR
- * Creator :
- * Make Date : 2014-10-15
- * Description :
- *---------------------------------------------------------------------------------------
- * Modify Date Modifier Modify Description
- *---------------------------------------------------------------------------------------
- * 2014-10-15 TF->XP
- *
- *---------------------------------------------------------------------------------------
- ****************************************************************************************/
- // var sPRMSPRCPSETLIST = "/root/main/prmsprcpsetinfo/prmsprcpsetlist";
- // var sPRMSPRCPSETLIST_HIDDEN = "/root/hidden/prmsprcpsetinfo/prmsprcpsetlist";
- // var sETCPRMSPRCPSETDETLLIST = "/root/main/etcprmsprcpsetdetlinfo/etcprmsprcpsetdetllist";
- // var sPRMSPRCPSETLIST_TMP = "/root/hidden/etcprmsprcpsettmp/etcprmsprcpsetlist";
- // var sDIAGHISTINFO = "/root/hidden/diaghistinfo/diaghist";
- /**
- * @desc : 처방 TreeView변경(TAB버튼 클릭Event)
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fChngSetTreeView(setflag){
- //약속SET 처방/진단/수술 TAB버튼 클릭시, Radio선택값을 default로 개인 설정, 부서선택 콤보박스 disabled
- caption2.attribute("visibility") = "visible";
- caption3.attribute("visibility") = "hidden";
- caption7.attribute("visibility") = "hidden";
- cmb_deptset.disabled = true;
- model.setValue("/root/main/cond/prmsflag", "P");
-
- if(setflag == "prmsdiag"){
-
- fReqSetTreeView("P", "D", "D");
- model.setValue("/root/main/cond/settypecd", "D");
- iviewer1.src="SMMMB00800_약속진단관리.xrw";
- model.toggle("prmscomn");
- }else if(setflag == "prmsprcp"){
-
- fReqSetTreeView("P", "D", "P");
- model.setValue("/root/main/cond/settypecd", "P");
- // iviewer1.src="SMMMB00200_약속처방SET관리.xrw";
- iviewer1.src="SPAER00804_처방SET관리.xrw";
- model.toggle("prmscomn");
- }else if(setflag == "prmsop"){
- fReqSetTreeView("P", "D", "O");
- model.setValue("/root/main/cond/settypecd", "O");
- iviewer1.src="SMMMB00700_약속수술관리.xrw";
- model.toggle("prmscomn");
- }else if(setflag == "protocol"){
-
- //프로토콜처방은 부서(D)만 있으며, 약속처방SET과 동일한 iviewer화면 사용한다.
- fReqSetTreeView("D", "D", "C");
- model.setValue("/root/main/cond/settypecd", "C");
- iviewer1.src="SMMMB00200_약속처방SET관리.xrw";
- model.toggle("protocol");
- }
- //SET폴더명 지운 후, treeview의 node path의 ref를 해체(TF 버그,추후 수정)
- model.setValue("/root/main/cond/foldernm", "");
- model.setValue(trv_prmsprcpsetlist.attribute("ref"), "");
- trv_prmsprcpsetlist.rebuild();
- }
- /**
- * @desc : 마우스 오른쪽 버튼 팝업창
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fMouseRghtBtnPopup(){
- if(fChkValidMouseBtn() != true){return;}
- if(event.button == 3){
- if(trv_prmsprcpsetlist.isCell(event.target) && trv_prmsprcpsetlist.focusIndex > -1)
- window.setPopupMenu(true, "/root/hidden/menu/menu", "label", "func", false); //팝업창 셋팅
- }else{
- window.setPopupMenu(false);
- }
- }
- /**
- * @desc : 새폴더 추가
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fAddPrmsDiagSet(){
- var item = trv_prmsprcpsetlist.item(trv_prmsprcpsetlist.selectedIndex);
- var rowPos = item.index + 1;
- if(fSetPrmsDiagInfo(rowPos, "i")!=-1){
- model.setValue(sPRMSPRCPSETLIST_HIDDEN + "/status", "i");
- model.refresh();
- fShowWndIptBox();
- }
- }
- /**
- * @desc : 폴더 삭제
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fDelPrmsDiagSet(){
- var item = trv_prmsprcpsetlist.item(trv_prmsprcpsetlist.selectedIndex);
- var rowPos = item.index + 1;
- if(fSetPrmsDiagInfo(rowPos, "d")!= -1){
- fSavePrmsDiagSet();
- }
- iviewer1.window.javascript.fClrGridData();
- }
- /**
- * @desc : 폴더 수정
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fUpdtPrmsDiagSet(){
- var item = trv_prmsprcpsetlist.item(trv_prmsprcpsetlist.selectedIndex);
- var rowPos = item.index + 1;
- if(fSetPrmsDiagInfo(rowPos, "u")!=-1){
- fShowWndIptBox();
- }
- }
- /**
- * @desc : 약속진단 SET저장
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSavePrmsDiagSet(){
- var setnm = model.getValue("/root/main/iptbox/setnm");
- model.setValue(sPRMSPRCPSETLIST_HIDDEN + "/setnm", setnm);
- model.copyNode("/root/send/savedata", sPRMSPRCPSETLIST_HIDDEN);
- if(submit("TXMMB00601")){
- model.setValue(trv_prmsprcpsetlist.attribute("ref"), "");
- trv_prmsprcpsetlist.rebuild();
- }
- }
- /**
- * @desc : 약속진단관리 폴더명을 입력할 InputBox를 보여줌.
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fShowWndIptBox(){
- group1.attribute("top") = event.clientY;
- group1.attribute("height") = 55;
- model.setFocus("ipt_setnm");
- model.refresh();
- }
- /**
- * @desc : 약속진단 SET정보 SETTING
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSetPrmsDiagInfo(rowpos, status){
- var setno = model.getValue(sPRMSPRCPSETLIST + "[" + rowpos + "]/setno");
- var settypecd = model.getValue(sPRMSPRCPSETLIST + "[" + rowpos + "]/settypecd");
- if(status == "u" && setno == 1){
- messageBox("선택한 폴더는 수정", "E001");
- return -1;
- }else if(status == "d" && setno == 1){
- messageBox("선택한 폴더는 삭제", "E001");
- return -1;
- }else if(settypecd == "E"){
- messageBox("선택한 폴더는 사용", "E001");
- return -1;
- }
- var levl = model.getValue(sPRMSPRCPSETLIST + "[" + rowpos + "]/levl");
- var supsetno = model.getValue(sPRMSPRCPSETLIST + "[" + rowpos + "]/supsetno");
- var setkindcd = model.getValue(sPRMSPRCPSETLIST + "[" + rowpos + "]/setkindcd");
- var setclscd = model.getValue(sPRMSPRCPSETLIST + "[" + rowpos + "]/setclscd");
- var settrgtcd = model.getValue(sPRMSPRCPSETLIST + "[" + rowpos + "]/settrgtcd");
- var settypecd = model.getValue(sPRMSPRCPSETLIST + "[" + rowpos + "]/settypecd");
- var setnm = model.getValue(sPRMSPRCPSETLIST + "[" + rowpos + "]/setnm");
- var sortno = model.getValue(sPRMSPRCPSETLIST + "[" + rowpos + "]/sortno");
- model.setValue(sPRMSPRCPSETLIST_HIDDEN + "/levl" , levl);
- model.setValue(sPRMSPRCPSETLIST_HIDDEN + "/setno" , setno);
- model.setValue(sPRMSPRCPSETLIST_HIDDEN + "/setkindcd", setkindcd);
- model.setValue(sPRMSPRCPSETLIST_HIDDEN + "/setclscd" , setclscd);
- model.setValue(sPRMSPRCPSETLIST_HIDDEN + "/settrgtcd", settrgtcd);
- model.setValue(sPRMSPRCPSETLIST_HIDDEN + "/settypecd", settypecd);
- model.setValue(sPRMSPRCPSETLIST_HIDDEN + "/status" , status);
- model.setValue(sPRMSPRCPSETLIST_HIDDEN + "/setnm" , setnm);
- if(status == "i"){
- model.setValue(sPRMSPRCPSETLIST_HIDDEN + "/supsetno" , setno);
- }else{
- model.setValue(sPRMSPRCPSETLIST_HIDDEN + "/supsetno" , supsetno);
- }
- if(sortno == "")
- sortno = 1000;
- model.setValue(sPRMSPRCPSETLIST_HIDDEN + "/sortno" , sortno);
- model.refresh();
- }
- /**
- * @desc : 약속진단SET Drag
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fPrmsDiagSetDrag(){
- if(fChkValidMouseBtn() != true){
- return;
- }
- var item = trv_prmsprcpsetlist.item(trv_prmsprcpsetlist.selectedIndex);
- var rowpos = item.index + 1;
- fSetPrmsDiagInfo(rowpos, "u");
- var setnm = model.getValue(sPRMSPRCPSETLIST + "[" + rowpos + "]/setnm");
- model.setValue("/root/main/iptbox/setnm", setnm);
- model.refresh();
- }
- /**
- * @desc : 약속진단SET Drop
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fPrmsDiagSetDrop(){
- if(fChkValidMouseBtn() != true){
- return;
- }
- var rowpos = trv_prmsprcpsetlist.mouseRow + 1;
- var levl = model.getValue(sPRMSPRCPSETLIST + "[" + rowpos + "]/levl");
- var setno = model.getValue(sPRMSPRCPSETLIST + "[" + rowpos + "]/setno");
- var supsetno = model.getValue(sPRMSPRCPSETLIST + "[" + rowpos + "]/supsetno");
- var cmplevl = model.getValue(sPRMSPRCPSETLIST_HIDDEN + "/levl");
- var cmpsetno = model.getValue(sPRMSPRCPSETLIST_HIDDEN + "/setno");
- var cmpsupsetno = model.getValue(sPRMSPRCPSETLIST_HIDDEN + "/supsetno");
- if(setno == cmpsetno){
- //messageBox("동일한 위치로 이동", "E001");
- trv_prmsprcpsetlist.item(trv_prmsprcpsetlist.mouseRow).attribute("background-color") = "#ffffff";
- trv_prmsprcpsetlist.item(trv_prmsprcpsetlist.mouseRow).attribute("text-decoration") = "";
- return;
- }else if(setno == cmpsupsetno){
- trv_prmsprcpsetlist.item(trv_prmsprcpsetlist.mouseRow).attribute("background-color") = "#ffffff";
- trv_prmsprcpsetlist.item(trv_prmsprcpsetlist.mouseRow).attribute("text-decoration") = "";
- //messageBox("지정된 위치로 이동", "E001");
- return;
- }
- //이동하는 SET폴더의 depth가 도착하는 곳보다 낮은 레벨일 경우,
- //자신의 child node 아래로 이동하는 것을 방지함.
- if(cmplevl < levl){
- var rootlevl;
- var rootsetno;
- while(cmplevl != rootlevl){
- rootlevl = model.getValue(sPRMSPRCPSETLIST + "[" + rowpos + "]/levl");
- rootsetno = model.getValue(sPRMSPRCPSETLIST + "[" + rowpos + "]/setno");
- rowpos--;
- }
- if(rootsetno == cmpsetno){
- //messageBox("지정된 위치로 이동", "E001");
- return;
- }
- }
- model.setValue(sPRMSPRCPSETLIST_HIDDEN + "/supsetno" , setno);
- model.refresh();
- fSavePrmsDiagSet();
- }
- /**
- * @desc : 약속SET상세 조회
- * @
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fReqPrmsDetlSet(){
- var item = trv_prmsprcpsetlist.item(trv_prmsprcpsetlist.selectedIndex);
- var rowpos = item.index + 1;
- var setno = model.getValue(sPRMSPRCPSETLIST + "[" + rowpos + "]/setno");
- var settypecd = model.getValue(sPRMSPRCPSETLIST + "[" + rowpos + "]/settypecd");
- var setnm = model.getValue(sPRMSPRCPSETLIST + "[" + rowpos + "]/setnm");
-
- iviewer1.model.setValue("/root/hidden/prmsprcpsetdetlset/setno" , setno);
- iviewer1.model.setValue("/root/hidden/prmsprcpsetdetlset/settypecd", settypecd);
- iviewer1.model.setValue("/root/hidden/prmsprcpsetdetlset/setnm", setnm);
- iviewer1.model.refresh();
- iviewer1.window.javascript.fReqGetPrmsSet();
- }
- /**
- * @desc : Mouse Drag Drop
- * @
- * @param :
- * @return : void
- * @authur : 오지훈 2007. 4. 24
- * @---------------------------------------------------
- */
- function fOndrop(){
- if(fChkValidMouseBtn() != true){
- return;
- }
- var rowpos = trv_prmsprcpsetlist.mouseRow + 1;
- var levl = model.getValue(sPRMSPRCPSETLIST + "[" + rowpos + "]/levl");
- var setnm = model.getValue(sPRMSPRCPSETLIST + "[" + rowpos + "]/setnm");
- var x = event.clientX;
- var maxposX = 24 + 16 * (levl - 1) + ( 13 * setnm.length);
- var minposX = 24 + 16 * (levl - 1);
- if(maxposX > x){
- fPrmsDiagSetDrop();
- }else{
- return;
- }
- }
- /**
- * @desc : Mouse Drag Over
- * @
- * @param :
- * @return : void
- * @authur : 오지훈 2007. 4. 24
- * @---------------------------------------------------
- */
- function fMouseOver(){
- if(fChkValidMouseBtn() != true){
- return;
- }
- var rowpos = trv_prmsprcpsetlist.mouseRow + 1;
- var levl = model.getValue(sPRMSPRCPSETLIST + "[" + rowpos + "]/levl");
- var setnm = model.getValue(sPRMSPRCPSETLIST + "[" + rowpos + "]/setnm");
- var x = event.clientX;
- var maxposX = 24 + 16 * (levl - 1) + ( 10 * setnm.length);
- var minposX = 24 + 16 * (levl - 1);
- if(maxposX > x){
- for ( var i = 0; i < trv_prmsprcpsetlist.length; i++ ) {
- trv_prmsprcpsetlist.item(i).attribute("background-color") = "#ffffff";
- trv_prmsprcpsetlist.item(i).attribute("text-decoration") = "";
- }
- trv_prmsprcpsetlist.item(trv_prmsprcpsetlist.mouseRow).attribute("background-color") = "#ece1ec";
- trv_prmsprcpsetlist.item(trv_prmsprcpsetlist.mouseRow).attribute("text-decoration") = "underline";
- }
- }
- /****************************************************************************************
- * Function : fSrchFolderNM
- * Description : 폴더명 검색할 경우 검색한 위치로 focus를 이동한다.
- * Argument :
- * :
- * return type :
- * Creator :
- ****************************************************************************************/
- function fSrchFolderNM(){
- var foldernm = ds_setdata.getColumn(0,"foldernm");
- for(var i=0; i < ds_prmsprcpsetlist.rowcount ; i++){
- var setnm = ds_prmsprcpsetlist.getColumn(i,"setnm");
- if(setnm == foldernm){
- break;
- }
- }
- ds_prmsprcpsetlist.rowposition = i;
- }
- /**
- * @desc : TreeView에 Drag상태로 Mouse over된 경우 item의 background color를 clear함
- * @
- * @param :
- * @return : void
- * @authur : 오지훈 2007. 4. 24
- * @---------------------------------------------------
- */
- function fOnDragMouseOver(){
- if(fChkValidMouseBtn() != true){
- return;
- }
- var treeObj = document.controls.item(event.currentTarget);
- var rowpos = trv_prmsprcpsetlist.mouseRow + 1;
- var levl = model.getValue(sPRMSPRCPSETLIST + "[" + rowpos + "]/levl");
- var setnm = model.getValue(sPRMSPRCPSETLIST + "[" + rowpos + "]/setnm");
- var x = event.clientX;
- var maxposX = 24 + 16 * (levl - 1) + ( 10 * setnm.length);
- var minposX = 24 + 16 * (levl - 1);
- if(maxposX > x){
- if( trv_prmsprcpsetlist.selectedIndex != treeObj.mouseRow ) {
- for ( var i = 0; i < treeObj.length; i++ ) {
- treeObj.item(i).attribute("background-color") = "#ffffff";
- }
- treeObj.item(treeObj.mouseRow).attribute("background-color") = "#ece1ec";
- }
- }
- }
- /**
- * @desc : 약속처방 SET의 처방 복사
- * @
- * @param :
- * @return : void
- * @authur : 오지훈 2007. 4. 24
- * @---------------------------------------------------
- */
- function fPasteCD() {
- if ( btn_prcp.selected ) {
- iviewer1.window.javascript.fPasteRow();
- } else if( btn_diag.selected ) {
- iviewer1.window.javascript.fPasteDiagCD();
- } else if( btn_op.selected ) {
- iviewer1.window.javascript.fPasteOpCD();
- }
- }
- /**
- * @desc : 마우스 버튼 클릭 유효성 검사
- * : 조건1 - 콤보박스 전체 선택인 경우 불가
- * @
- * @param :
- * @return : true / false
- * @authur : 오지훈 2007. 4. 24
- * @---------------------------------------------------
- */
- function fChkValidMouseBtn(){
- var prmsflag = model.getValue("/root/main/cond/prmsflag");
- if(prmsflag == "T")
- return false;
- else
- return true;
- }
- /**
- * @desc : Radio 값 변경 처리
- * @
- * @param :
- * @return : true / false
- * @authur : 오지훈 2007. 4. 24
- * @---------------------------------------------------
- */
- function fChngRadioBtnVal(){
-
- iviewer1.model.removeNodeset("/root/main/etcprmsprcpsetdetlinfo/etcprmsprcpsetdetllist");
- iviewer1.model.refresh();
-
- var prmsflag = model.getValue("/root/main/cond/prmsflag");
- var settypecd = model.getValue("/root/main/cond/settypecd");
- if(prmsflag == "P"){
- //Radio버튼 개인 선택시, 부서코드 콤보 disabled, 약속처방SET 조회
- cmb_deptset.disabled = true;
- caption2.attribute("visibility") = "visible";
- caption3.attribute("visibility") = "hidden";
- caption7.attribute("visibility") = "hidden";
- fReqSetTreeView("P", "D", settypecd);
- iviewer1.window.javascript.fSetBtnDisabled(false);
-
- }else if(prmsflag == "D"){
- //Radio버튼 과 선택시, 부서코드 콤보 disabled, 과별 약속처방SET 조회
- cmb_deptset.disabled = true;
- caption2.attribute("visibility") = "hidden";
- caption3.attribute("visibility") = "visible";
- caption7.attribute("visibility") = "hidden";
- fReqSetTreeView("D", "D", settypecd);
- iviewer1.window.javascript.fSetBtnDisabled(false);
-
- }else if(prmsflag == "T"){
- //Radio버튼 타과 선택시, 부서코드 콤보 enabled, 약속SET별 부서조회, 현재 조회된 약속SET 삭제
- cmb_deptset.disabled = false;
- caption2.attribute("visibility") = "hidden";
- caption3.attribute("visibility") = "hidden";
- caption7.attribute("visibility") = "visible";
- model.removeNodeset("/root/main/prmsprcpsetinfo/prmsprcpsetlist");
- fReqPrmsSetDept("D", "D", settypecd);
- model.setValue("/root/main/cond/deptsetcd", "-");
- iviewer1.window.javascript.fSetBtnDisabled(true);
-
- }
- //SET폴더명 지운 후, treeview의 node path의 ref를 해체(TF 버그,추후 수정)
- model.setValue("/root/main/cond/foldernm", "");
- model.setValue(trv_prmsprcpsetlist.attribute("ref"), "");
- trv_prmsprcpsetlist.rebuild();
- model.refresh();
- }
- /**
- * @desc : 부서코드 콤보 변경 처리
- * @
- * @param :
- * @return : true / false
- * @authur : 오지훈 2007. 6. 27
- * @---------------------------------------------------
- */
- function fChngDeptCombo(){
- var deptcd = model.getValue("/root/main/prmsprcp/cond/deptcd");
- if(deptcd != "-"){
- fReqSetTreeView("D", "D", "P", "D", deptcd, cmb_deptset.label);
- }
- }
- /**
- * @desc : 약속SET 처방/진단/수술/프로토콜 조회
- * @
- * @param : setkindcd - SET종류코드(개인P/부서D)
- * : setclscd - SET분류코드(의사D)
- * : settypecd - SET분류코드(처방P/진단D/수술O/프로토콜C)
- * : procflag - 처리구분(부서SET:D)
- * : deptcd - 부서코드
- * : deptnm - 부서명
- * @return :
- * @authur : 오지훈 2007. 6. 27
- * @---------------------------------------------------
- */
- function fReqSetTreeView(setkindcd, setclscd, settypecd, procflag, deptcd, deptnm){
- model.removeNodeset("/root/send/reqdata");
- model.makeValue("/root/send/reqdata/setkindcd", setkindcd); //개인, 부서
- model.makeValue("/root/send/reqdata/setclscd" , setclscd); //의사
- model.makeValue("/root/send/reqdata/settypecd", settypecd); //처방, 진단, 수술, 프로토콜
- model.makeValue("/root/send/reqdata/procflag" , procflag); //처리구분(부서SET 조회시 설정)
- model.makeValue("/root/send/reqdata/deptcd" , deptcd); //부서코드(부서SET 조회시 설정)
- model.makeValue("/root/send/reqdata/deptnm" , deptnm); //부서명 (부서SET 조회시 설정)
- submit("TRMMB00601");
- }
- /**
- * @desc : 약속SET 처방/진단/수술 부서 조회
- * : 처방/진단/수술 약속SET을 등록한 부서를 조회한다.
- *
- * @param : setkindcd - SET종류코드(개인P/부서D)
- * : setclscd - SET분류코드(의사D)
- * : settypecd - SET분류코드(처방P/진단D/수술O/프로토콜C)
- *
- * @return :
- * @authur : 오지훈 2007. 6. 27
- * @---------------------------------------------------
- */
- function fReqPrmsSetDept(setkindcd, setclscd, settypecd){
- model.removeNodeset("/root/send/reqdata");
- model.makeValue("/root/send/reqdata/setkindcd", setkindcd); //개인, 부서
- model.makeValue("/root/send/reqdata/setclscd" , setclscd ); //의사
- model.makeValue("/root/send/reqdata/settypecd", settypecd); //처방, 진단, 수술, 프로토콜
- submit("TRMMB00604");
- }
- /**
- * @desc : 타과 부서 약속SET 조회(타과Combo 선택 Event)
- * @
- * @param :
- * @return :
- * @authur : 오지훈 2007. 6. 27
- * @---------------------------------------------------
- */
- function fSelectDeptCmb(){
- var deptcd = model.getValue("/root/main/cond/deptsetcd");
- var settypecd = model.getValue("/root/main/cond/settypecd");
- fReqSetTreeView("D", "D", settypecd, "D", deptcd, cmb_deptset.label);
- }
- /****************************************************************************************
- * Function : fGetSytsRsltRefList
- * Description : 통합결과조회
- * Argument :
- * :
- * return type :
- * Creator :
- ****************************************************************************************/
- function fGetSytsRsltRefList(chkcheck, srchflag){ // "ALL","B"
- //model.copyNode(root.temp.patinfo.patinfolist, root.main.patinfo.patinfolist);
- dsf_copyDs(ds_temp_patinfolist,ds_patinfolist,"replace");
- ds_singdata.setColumn(0,"chkcheck",chkcheck);
-
- //검사분류별 누적조회 초기화
- group3.cmb_mdl.value = "00"
-
- //과별SET 누적조회
- ds_setdata.setColumn(0,"deptsetcd","");
- //분류별
- if(srchflag == "B"){
- //btn_case1.selected = true;
- //model.toggle("case1");
- group3.switch1.enableevent = false;
- group3.switch1.tabindex = 1;
- group3.switch1.enableevent = true;
-
- if(chkcheck == "A" || chkcheck == "D"){
- group3.datagrid2.visible = false;
- group3.grp_makedset.visible = false;
- group3.grd_subresultdetail1.visible = false;
- group3.grd_subresultdetail2.visible = true;
- }else{
- group3.datagrid2.visible = false;
- group3.grp_makedset.visible = false;
- group3.grd_subresultdetail2.visible = false;
- group3.grd_subresultdetail1.visible = true;
- }
-
- fGetWideListX1(group3.switch1, group3.switch1.case1.grd_maindaily);
- fGetWideListY2(group3.grd_subresultdetail1, "311", "938");
-
- //조건 체크
- var check = fGetMainListCondiCheck_Case1();
- if(check == "0") return true;
-
- if(ds_singdata.getColumn(0,"chkcheck") == "ALL") {
- fcheckyn();
- }
- fInitGrid(); //Grid 초기화
- frmf_openLoadingBar(); //Progress Start
- //fGetMainSrchPatInfo(); //환자정보
- ds_singdata.setColumn(0,"srchflag",srchflag);
- //submit("TRMMI00130", false);
- //sysf_trace(ds_singdata.saveXML());
- var oParam = {};
- oParam.id = "TRMMI00130";
- oParam.service = "examcureresultrefapp.RsltRef";
- oParam.method = "reqGetSytsRsltRefTClsList";
- oParam.inds = "reqparam=ds_singdata";
- oParam.outds = "ds_maindistinctdailylist=maindistinctdailylist ds_maindailylist=maindailylist ds_initorddd=initorddd";
- oParam.async = false;
- oParam.callback = "cf_TRMMI00130";
- tranf_submit(oParam);
- group3.switch1.case1.cmb_dailylist.index = ds_maindistinctdailylist.rowcount-1;
-
- //model.makeNode("/root/main/patinfo/patinfolist");
- //copyNodesetType("/root/main/patinfo/patinfolist", "/root/hidden/patinfo/patinfolist", "replace");
- //model.refresh();
-
- //일자별 전체조회일경우만 기준일자 조회
- var srchLength1 = ds_maindailylist.rowcount;
- if(srchLength1 > 0){
- var orddd = ds_initorddd.getColumn(ds_initorddd.rowposition,"orddd");
- var gubun = ds_initorddd.getColumn(ds_initorddd.rowposition,"gubun");
-
- //Grid Background Color Clear
- for(var i=0; i<srchLength1; i++){
- //datagrid1.rowstyle(i, "data", "background-color") = "#ffffff";
- ds_maindailylist.setColumn(i,"bgcolor","");
- }
-
- //전자서명번호가 존재하면 색상을 변경한다. 즉, 사본출력가능한 처방이면서 원래 서식모양으로 보여주기 위해, 20080214
- for(var i=0; i<srchLength1; i++){
- if(utlf_isNull(ds_maindailylist.getColumn(i,"signno"))) {
- var signno = 0;
- } else {
- var signno = parseInt(ds_maindailylist.getColumn(i,"signno"));
- }
- if(signno > 0){
- //datagrid1.rowstyle(i, "data", "background-color") = "#b9e5fb";
- ds_maindailylist.setColumn(i,"bgcolor","Y");
- }
- }
-
- //1. execprcpuniqno가 0이 아니면서(검사/치료만적용)
- //2. Signno가 동일 값이면 다중처방 단일서식이기에 결과내역은 한 건만 조회되게 한다.
- var flag = "N";
- for(var i=0; i<srchLength1; i++){
- var execprcpuniqno = ds_maindailylist.getColumn(i,"execprcpuniqno");
- var signno = ds_maindailylist.getColumn(i,"signno");
- if(execprcpuniqno != "0" && signno != "0" && !utlf_isNull(signno)){
- for(var j=0; j<srchLength1; j++){
- var vsignno = ds_maindailylist.getColumn(j,"signno");
- if(i != j && signno == vsignno){
- //다중 처방이면서 단일서식 결과가 존재합니다
- ds_maindailylist.setColumn(j,"check","0");
- flag = "Y";
- }
- }
- }
- if(flag == "Y") break;
- }
- //기본설정 기능으로 결과상세조회할 지 의 여부를 판단한다. 20090109
- fSort(); //날짜별 정렬1103730 1103730
- fGetResultContinueListInit1(); //선택항목에 대한 결과를 조회한다.
- }
- frmf_closeLoadingBar(); //Progress End
- //그룹별
- } else if(srchflag == "G"){
- // btn_case5.selected = true;
- // model.toggle("case5");
- group3.switch1.enableevent = false;
- group3.switch1.tabindex = 0;
- group3.switch1.enableevent = true;
-
- if(chkcheck == "A" || chkcheck == "D"){
- group3.datagrid2.visible = false;
- group3.grp_makedset.visible = false;
- group3.grd_subresultdetail1.visible = false;
- group3.grd_subresultdetail2.visible = true;
- }else{
- group3.datagrid2.visible = false;
- group3.grp_makedset.visible = false;
- group3.grd_subresultdetail2.visible = false;
- group3.grd_subresultdetail1.visible = true;
- }
-
- fGetWideListX1(group3.switch1, group3.switch1.case1.grd_maindaily);
- fGetWideListY2(group3.grd_subresultdetail1, "311", "938");
-
- //조건 체크
- var check = fGetMainListCondiCheck_Case1();
- if(check == "0") return true;
-
- if(ds_singdata.getColumn(0,"chkcheck") == "ALL") {
- fcheckyn();
- }
-
- fInitGrid(); //Grid 초기화
- frmf_openLoadingBar(); //Progress Start
- //fGetMainSrchPatInfo(); //환자정보
- ds_singdata.setColumn(0,"srchflag",srchflag);
- //submit("TRMMI00130", false);
- var oParam = {};
- oParam.id = "TRMMI00130";
- oParam.service = "examcureresultrefapp.RsltRef";
- oParam.method = "reqGetSytsRsltRefTClsList";
- oParam.inds = "reqparam=ds_singdata";
- oParam.outds = "ds_maindistinctdailylist=maindistinctdailylist ds_maindailylist=maindailylist ds_initorddd=initorddd";
- oParam.async = false;
- oParam.callback = "cf_TRMMI00130";
- tranf_submit(oParam);
- group3.switch1.case5.combo2.index = ds_maindistinctdailylist.rowcount-1;
- //sysf_trace(ds_singdata.saveXML());
- //model.makeNode("/root/main/patinfo/patinfolist");
- //copyNodesetType("/root/main/patinfo/patinfolist", "/root/hidden/patinfo/patinfolist" , "replace");
- //group3.switch1.case5.datagrid1.setFormatColProperty(4,"band","left");
- //var cnt = 0; ??????
- //일자별 전체조회일경우만 기준일자 조회
- var srchLength1 = ds_maindailylist.rowcount;
- if(srchLength1 > 0){
- var orddd = ds_initorddd.getColumn(ds_initorddd.rowposition,"orddd");
- var gubun = ds_initorddd.getColumn(ds_initorddd.rowposition,"gubun");
-
- //Grid Background Color Clear
- for(var i=0; i<srchLength1; i++){
- ds_maindailylist.setColumn(i,"bgcolor","");
- }
-
- //전자서명번호가 존재하면 색상을 변경한다. 즉, 사본출력가능한 처방이면서 원래 서식모양으로 보여주기 위해, 20080214
- for(var i=0; i<srchLength1; i++){
- if(utlf_isNull(ds_maindailylist.getColumn(i,"signno"))) {
- var signno = 0;
- } else {
- var signno = parseInt(ds_maindailylist.getColumn(i,"signno"));
- }
- if(signno > 0){
- ds_maindailylist.setColumn(i,"bgcolor","Y");
- }
- }
-
- //1. execprcpuniqno가 0이 아니면서(검사/치료만적용)
- //2. Signno가 동일 값이면 다중처방 단일서식이기에 결과내역은 한 건만 조회되게 한다.
- var flag = "N";
- for(var i=0; i<srchLength1; i++){
- var execprcpuniqno = ds_maindailylist.getColumn(i,"execprcpuniqno");
- var signno = ds_maindailylist.getColumn(i,"signno");
- if(execprcpuniqno != "0" && signno != "0" && !utlf_isNull(signno)){
- for(var j=0; j<srchLength1; j++){
- var vsignno = ds_maindailylist.getColumn(j,"signno");
- if(i != j && signno == vsignno){
- ds_maindailylist.setColumn(j,"check","0");
- flag = "Y";
- }
- }
- }
- if(flag == "Y") break;
- }
- fSort2(); //날짜별 정렬
- fGetResultContinueListInit2(); //기본설정 기능으로 결과상세조회할 지 의 여부를 판단한다. 20090109
- }
- frmf_closeLoadingBar(); //Progress End
- //SET별
- }else if(srchflag == "S"){
- //SET전체항목조회 비활성화
- group3.grp_makedset.visible = false;
- group3.datagrid2.visible = true;
- group3.grd_subresultdetail1.visible = false;
- ds_setdata.setColumn(0,"setkindcd","D");
- //진행상태
- }else if(srchflag == "P"){
- //조건 체크
- var check = fGetMainListCondiCheck_Case4();
- if(check == "0") return true;
- }
- if(chkcheck == "A"){
- fSetGridColor();
- }
- if(utlf_isNull(ds_patinfolist.getColumn(ds_patinfolist.rowposition,"pid"))) {
- fReqGetPatComnInfo("ds_req", ds_singdata.getColumn(0,"srchpid"));
- }
- dsf_copyDs(ds_patinfolist,ds_temp_patinfolist,"replace");
- }
- /****************************************************************************************
- * Function : cf_TRMMI00130
- * Description : TRMMI00130 콜백함수
- * Argument :
- * :
- * return type :
- * Creator :
- ****************************************************************************************/
- function cf_TRMMI00130(sSvcId, nErrorCode, sErrorMsg) {
- if(nErrorCode < 0) {
- return;
- } else {
- for(var i = 0 ; i < ds_maindailylist.rowcount ; i++) {
- ds_maindailylist.setColumn(i,"check" ,ds_maindailylist.getColumn(i,"check1"));
- ds_maindailylist.setColumn(i,"execdd1" ,ds_maindailylist.getColumn(i,"execdd"));
- ds_maindailylist.setColumn(i,"prcpdd1" ,ds_maindailylist.getColumn(i,"prcpdd"));
- ds_maindailylist.setColumn(i,"lastreptdd1" ,ds_maindailylist.getColumn(i,"lastreptdd"));
- }
- ds_maindailylist.rowposition = -1;
- //dsf_copyDs(ds_datagrid1,ds_maindailylist,"replace"); // 일단보류. 분류별 그룹별 같은 데이터셋을 사용하여 처리하기에 분리 해놨는데 탭누를때마다 재조회 한다면 필요없음.
- }
- }
- /****************************************************************************************
- * Function : aezfTrim
- * Description : Ascii Code의 Trim check. (ast AEZ0001.js 파일에 속해야함 추후 AST개발시 이동필요)
- * Argument : code1 : 대상 코드
- * : value : 비교 할 아스키코드
- * return type :
- * Creator :
- ****************************************************************************************/
- function aezfTrim(code1, value) {
-
- var startPoint = 0; // subString 하기 위한 시작 포인트
- var endPoint = code1.length; // subString 하기 위한 끝 포인트
- //문자열앞에 공백문자가 들어 있는 Index 추출
- while( (startPoint < endPoint) && (code1.charCodeAt(startPoint) == value) )
- {
- startPoint++;
- }
-
- //문자열뒤에 공백문자가 들어 있는 Index 추출
- while( (startPoint < endPoint) && (code1.charCodeAt(endPoint-1) == value) )
- {
- endPoint--;
- }
- // 공백을 제거했으면 subString하여 결과문자열을 리턴하고 제거한 내용이 없으면 그대로 리턴
- return ( (startPoint > 0) || (endPoint < code1.length) ) ? code1.substring(startPoint, endPoint) : code1;
- }]]></Script>
|