123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226 |
- /*
- - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
- 약속SET순서변경 ( SPMMB00800_약속SET순서변경.xrw - JScript )
- - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
- */
- var g_prevmouserow = 0;
- /**
- * @desc : 약속SET순서변경 초기화
- * @
- * @param :
- * @return :
- * @author : 오지훈 2007. 10. 30
- * @---------------------------------------------------
- */
- function fInitialize_SPMMB00800(){
- var openerparam = opener.javascript.getParameter("SPMMB00800_param");
- var param = openerparam.split("▦");
- var setkindcd = param[0];
- var setclscd = param[1];
- var settypecd = param[2];
- var procflag = param[3];
- var deptcd = param[4];
- var deptnm = param[5];
- var ioflag = param[6];
- var indx = param[7];
-
- fReqSetTreeView(setkindcd, setclscd, settypecd, procflag, deptcd, deptnm, ioflag);
- trv_prmsprcpsetlist.select(indx);
- trv_prmsprcpsetlist.expand(indx, true);
- trv_prmsprcpsetlist.rebuild();
- }
- /**
- * @desc : 약속SET 처방/진단/수술/프로토콜 조회
- * @
- * @param : setkindcd - SET종류코드(개인P/부서D)
- * : setclscd - SET분류코드(의사D)
- * : settypecd - SET분류코드(처방P/진단D/수술O/프로토콜C)
- * : procflag - 처리구분(부서SET:D)
- * : deptcd - 부서코드
- * : deptnm - 부서명
- * : ioflag - 외래/입원구분
- * @return :
- * @authur : 오지훈 2007. 6. 27
- * @---------------------------------------------------
- */
- function fReqSetTreeView(setkindcd, setclscd, settypecd, procflag, deptcd, deptnm, ioflag){
- 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 조회시 설정)
- if(settypecd == "D"||settypecd == "O"){ //진단, 수술인 경우N으로 처리
- var ioflag = "N";
- }
- model.makeValue("/root/send/reqdata/ioflag" , ioflag); //외래입원구분
- if(submit("TRMMB00601")){
- trv_prmsprcpsetlist.rebuild();
- }
- }
- /**
- * @desc : Mouse Drag Over중 선택한 treeview item의 색깔 변경
- * @
- * @param :
- * @return :
- * @author : 오지훈 2007. 10. 30
- * @---------------------------------------------------
- */
- function fDragOverColorChng(){
- if(trv_prmsprcpsetlist.mouseRow != g_prevmouserow){
- trv_prmsprcpsetlist.item(g_prevmouserow).attribute("background-color")="#ffffff";
- trv_prmsprcpsetlist.item(trv_prmsprcpsetlist.mouseRow).attribute("background-color")="#ccffff";
- g_prevmouserow = trv_prmsprcpsetlist.mouseRow;
- }
- }
- /**
- * @desc : Mouse Drop시 treeview item의 순서 변경
- * @
- * @param :
- * @return :
- * @author : 오지훈 2007. 10. 30
- * @---------------------------------------------------
- */
- function fDropTrvItem(){
- //선택된 아이템
- var srcindx = trv_prmsprcpsetlist.selectedIndex;
- var srcval = trv_prmsprcpsetlist.item(srcindx).value;
-
- //드롭 위치의 아이템
- var trgtindx = trv_prmsprcpsetlist.mouseRow;
- var trgtval = trv_prmsprcpsetlist.item(trgtindx).value;
-
- if(trgtval == 1){
- messageBox("선택된 폴더로 이동", "E001");
- return;
- }
-
- var treeItemNodeSet = trv_prmsprcpsetlist.itemset.attribute("nodeset");
-
- var srcparentindx = getParentItemIndex(srcindx , treeItemNodeSet);
- var trgtparentindx = getParentItemIndex(trgtindx, treeItemNodeSet);
-
- if(trv_prmsprcpsetlist.item(srcparentindx).value == trv_prmsprcpsetlist.item(trgtparentindx).value){
- var srcLastChildItemIndex = getLastChildItemIndex(srcindx , treeItemNodeSet);
- var trgLastChildItemIndex = getLastChildItemIndex(trgtindx, treeItemNodeSet);
- var srcNodeList = instance1.selectNodes(treeItemNodeSet + "[position() >= " + (srcindx + 1)+ " and position() <=" + (srcLastChildItemIndex + 1) + "]");
-
- var srcNode, trgNode, newNode;
- var itemtParentNode = instance1.selectSingleNode(treeItemNodeSet).parentNode;
- var cloneSrcNode;
-
- if(srcindx < trgtindx) {
- trgNode = instance1.selectSingleNode(treeItemNodeSet + "[" + ( trgLastChildItemIndex + 1) + "]");
-
- while(srcNode = srcNodeList.nextNode()) {
- cloneSrcNode = srcNode.cloneNode(true);
- newNode = itemtParentNode.insertAfter(cloneSrcNode, trgNode);
- trgNode = newNode;
- itemtParentNode.removeChild(srcNode);
- }
- }else if(srcindx > trgtindx) {
- trgNode = instance1.selectSingleNode(treeItemNodeSet + "[" + ( trgtindx + 1) + "]");
-
- while(srcNode = srcNodeList.nextNode()) {
- cloneSrcNode = srcNode.cloneNode(true);
- newNode = itemtParentNode.insertBefore(cloneSrcNode, trgNode);
- itemtParentNode.removeChild(srcNode);
- }
- }
- trv_prmsprcpsetlist.rebuild();
-
- }else{
- messageBox("선택된 폴더로 이동", "E001");
-
- }
- }
- /**
- * @desc : 현재 item index의 부모 item index를 return
- * @
- * @param :
- * @return :
- * @author : 김기용 2007. 1. 10
- * @---------------------------------------------------
- */
- function getParentItemIndex(itemIndex, treeItemNodeSet) {
- var curDepthValue = model.getValue(treeItemNodeSet + "[" + (itemIndex + 1) + "]/levl");
- var parentDepthValue = curDepthValue - 1;
-
- do {
- itemIndex--;
- curDepthValue = model.getValue(treeItemNodeSet + "[" + (itemIndex + 1) + "]/levl");
- } while(curDepthValue != parentDepthValue)
-
- return itemIndex;
- }
- /**
- * @desc : 현재 아이템 인덱스의 자식 아이템중 마지막 아이템 인덱스를 반환
- * @
- * @param :
- * @return :
- * @author : 김기용 2007. 1. 10
- * @---------------------------------------------------
- */
- function getLastChildItemIndex(itemIndex, treeItemNodeSet) {
- var curDepthValue = model.getValue(treeItemNodeSet + "[" + (itemIndex + 1) + "]/levl");
- var childDepthValue = model.getValue(treeItemNodeSet + "[" + (itemIndex + 2) + "]/levl");
-
- while(curDepthValue < childDepthValue) {
- itemIndex++;
- childDepthValue = model.getValue(treeItemNodeSet + "[" + (itemIndex + 2) + "]/levl");
- }
- return itemIndex;
- }
- /**
- * @desc : tree nodeset 순서 설정
- * @
- * @param :
- * @return :
- * @author : 오지훈 2007. 10. 31
- * @---------------------------------------------------
- */
- function fUpdtRefSeq(){
- var indx = trv_prmsprcpsetlist.selectedIndex;
-
- var treeItemNodeset = trv_prmsprcpsetlist.itemset.attribute("nodeset");
- var totcnt = getNodeSetCnt(treeItemNodeset);
- for(var i = 2; i <= totcnt; i++){
- model.setValue(treeItemNodeset + "[" + i + "]/setrefseq", i);
- }
- var savedata = getNodeListCSV(instance1.selectNodes(treeItemNodeset));
- model.removeNodeset("/root/send/savedata");
- model.makeValue("/root/send/savedata", savedata);
- if(submit("TXMMB00801")){
-
- }
- //trv_prmsprcpsetlist.select(indx);
- //trv_prmsprcpsetlist.expand(indx, true);
- //trv_prmsprcpsetlist.rebuild();
- }
- /**
- * @desc : tree nodeset 순서 설정
- * @
- * @param :
- * @return :
- * @author : 오지훈 2007. 10. 31
- * @---------------------------------------------------
- */
- function fClkBtnClose(){
- var indx = trv_prmsprcpsetlist.selectedIndex;
- opener.javascript.setParameter("SPMMB00800_rtnparam", indx);
- window.close();
- }
|