123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659 |
- var gRef_MediFormView = "/root/main/nursing/nursinglist";
- var gRef_ViewMediFormView = "/root/main/viewnursinglist/nursinglist";
- var IMGE_SZ = 500;
- /**
- * @desc : 화면 초기화
- * @id :
- * @event : xforms-ready
- * @return : void
- * @authur : 박종훈
- */
- function fReadyForm()
- {
- grd_nursinglist.autoresize = true;
-
- var pInfo = getPatientInfos();
- pInfo = pInfo.split("|");
- var prestdt = getCurrentDate() + getCurrentTime();
-
- if (isPopup())
- {
- fRefNursingCntsPopup();
- }
- }
- /**
- * @desc : 간호기록내역 조회(팝업으로 호출시)
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function fRefNursingCntsPopup()
- {
- model.setValue("/root/send/reqComn/pid", opener.model.getValue("/root/main/paminfo/list/pid"));
-
- var ioflag = opener.model.getValue("/root/main/paminfo/list/ioflag");
-
- if(ioflag == "I" || ioflag == "E"){
- model.setValue("/root/send/reqComn/indd", opener.model.getValue("/root/main/paminfo/list/indd"));
- if(ioflag == "I"){
- model.setValue("/root/send/reqComn/recflag", "G");
- } else {
- model.setValue("/root/send/reqComn/recflag", "E");
- }
- }
- else if(ioflag == "O")
- {
- model.setValue("/root/send/reqComn/recflag", "O");
- model.setValue("/root/send/reqComn/orddd", opener.model.getValue("/root/main/paminfo/list/orddd"));
- }
- model.setValue("/root/send/reqComn/cretno", opener.model.getValue("/root/main/paminfo/list/cretno"));
- model.setValue("/root/send/reqComn/ioflag", ioflag);
- model.setValue("/root/send/reqComn/fromdd", opener.model.getValue("/root/send/reqmedireclist/recfromdt"));
- model.setValue("/root/send/reqComn/todd", opener.model.getValue("/root/send/reqmedireclist/rectodt"));
- model.setValue("/root/send/reqComn/dnarflag", "%");
- model.setValue("/root/send/reqComn/sortseq", "A");
- model.setValue("/root/send/reqComn/instcd", "012");
- model.setValue("/root/send/reqComn/prestdt", getCurrentDate() + getCurrentTime());
- grd_nursinglist.attribute("ref") = "";
-
- submit("TRMMR04101");
-
- grd_nursinglist.attribute("ref") = "/root/main/nursing/nursinglist";
- fExeFilter(gFilterCond);
-
- }
- /**
- * @desc : 조회내역 클리어
- * @id :
- * @event : xforms-ready
- * @return : void
- * @authur : 박종훈
- */
- function fClear()
- {
- model.removeNodeset(gRef_MediFormView);
- model.removeNodeset(gRef_ViewMediFormView);
- }
- /**
- * @desc : 간호기록내역 조회
- * @id :
- * @event : xforms-ready
- * @return : void
- * @authur : 박종훈
- */
- function fRefNursingCnts(comn_cont_reccnts)
- {
- model.setValue("/root/send/reqComn/pid", comn_cont_reccnts.pid);
- if(comn_cont_reccnts.ioflag == "I" || (comn_cont_reccnts.ioflag == "E")){
- model.setValue("/root/send/reqComn/indd", comn_cont_reccnts.indd);
- if(comn_cont_reccnts.ioflag == "I"){
- model.setValue("/root/send/reqComn/recflag", "G");
- } else {
- model.setValue("/root/send/reqComn/recflag", "E");
- }
- }
- else if(comn_cont_reccnts.ioflag == "O")
- {
- model.setValue("/root/send/reqComn/recflag", "O");
- model.setValue("/root/send/reqComn/orddd", comn_cont_reccnts.orddd);
- }
- model.setValue("/root/send/reqComn/cretno", comn_cont_reccnts.cretno);
- model.setValue("/root/send/reqComn/ioflag", comn_cont_reccnts.ioflag);
- model.setValue("/root/send/reqComn/fromdd", comn_cont_reccnts.fromdd);
- model.setValue("/root/send/reqComn/todd", comn_cont_reccnts.todd);
- model.setValue("/root/send/reqComn/dnarflag", "%");
- model.setValue("/root/send/reqComn/sortseq", "D");
- model.setValue("/root/send/reqComn/instcd", "012");
- model.setValue("/root/send/reqComn/prestdt", getCurrentDate() + getCurrentTime());
- grd_nursinglist.attribute("ref") = "";
-
- submit("TRMMR04101");
-
- grd_nursinglist.attribute("ref") = "/root/main/nursing/nursinglist";
- fExeFilter(gFilterCond);
-
- }
- /**
- * @desc : 그리드 그리기 로직
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- var gfontSz = 11;
- function fDrawGrid()
- {
- grd_nursinglist.visible = false;
- grd_nursinglist.rebuild();
-
- var colref_viewflag = grd_nursinglist.colref("viewflag");
- var colref_imgehei = grd_nursinglist.colref("imgehei");
- var colref_degnitemlevlno = grd_nursinglist.colref("degnitemlevlno");
-
- var viewflag;
- var degnitemlevlno;
- //var ft_std = 11;
- var ft_std = 0;
- var ft_header = (ft_std + gfontSz + 1) + "pt";
- var ft_cnts = (ft_std + gfontSz) + "pt";
- var ft_tail = (ft_std + gfontSz - 1) + "pt";
- var padng = 15;
- //alert(grd_nursinglist.rows);
- for (var i = 1; i <= grd_nursinglist.rows; i++)
- {
- viewflag = grd_nursinglist.valueMatrix(i, colref_viewflag);
- grd_nursinglist.rowstyle(i, "all", "color") = "#55435d";
- if (viewflag == "data")
- {
- if (grd_nursinglist.valueMatrix(i, colref_imgehei) == "")
- {
- fSetRowStyle(i, "transparent", "", ft_cnts, (padng * parseInt(grd_nursinglist.valueMatrix(i, colref_degnitemlevlno))) + "");
- }
- else
- {
- fSetRowStyle(i, "transparent", "", "11", "IMGE");
- //grd_nursinglist.rowheight(i) = parseInt(grd_nursinglist.valueMatrix(i, colref_imgehei)) + 5;
- }
- }
- else if (viewflag == "fstlevl")
- {
- fSetRowStyle(i, "transparent", "bold", ft_cnts, "5");
- }
- else if (viewflag == "formnm")
- {
- fSetRowStyle(i, "#cce8ff", "bold", ft_header, "5");
- }
- else if (viewflag == "recinfo")
- {
- fSetRowStyle(i, "#cce8ff", "", ft_cnts, "5");
- }
- else if (viewflag == "recuser")
- {
- fSetRowStyle(i, "transparent", "", "12", "5");
- }
-
- }
- grd_nursinglist.resizeCells();
- for (var i = 1; i <= grd_nursinglist.rows; i++)
- {
- viewflag = grd_nursinglist.valueMatrix(i, colref_viewflag);
- if (grd_nursinglist.valueMatrix(i, colref_imgehei) != "")
- {
- grd_nursinglist.rowheight(i) = parseInt(grd_nursinglist.valueMatrix(i, colref_imgehei)) + 5;
- }
- else if (viewflag == "formnm")
- {
- grd_nursinglist.rowheight(i) = grd_nursinglist.rowheight(i) + 5;
- }
- else if (viewflag == "recinfo")
- {
- //grd_nursinglist.rowheight(i) = grd_nursinglist.rowheight(i) + 3;
- grd_nursinglist.rowheight(i) = 30;
- grd_nursinglist.mergebyfree(i, 0, i, 2);
- grd_nursinglist.rowstyle(i, "data", "text-align") = "left";
-
- }
- else if (viewflag == "recuser")
- {
- grd_nursinglist.rowheight(i) = 50;
- }
- }
- grd_nursinglist.refresh();
- grd_nursinglist.visible = true;
- }
- /**
- * @desc : 그리드 Row형식 셋팅
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function fSetRowStyle(rowidx, backColr, fontWei, fontSize, padLeft)
- {
- grd_nursinglist.rowstyle(rowidx, "data", "background-color") = backColr;
-
- grd_nursinglist.rowstyle(rowidx, "data", "font-weight") = fontWei;
- grd_nursinglist.rowStyle(rowidx, "data", "font-size") = fontSize;
- if (padLeft == "IMGE")
- {
- grd_nursinglist.rowStyle(rowidx, "data", "background-position") = "center";
- }
- else
- {
- grd_nursinglist.rowStyle(rowidx, "data", "padding-left") = padLeft;
- grd_nursinglist.rowStyle(rowidx, "data", "background-image") = "";
- }
- }
- /**
- * @desc : 메뉴 확인버튼 클릭시
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function fCnfm()
- {
- var nodelist = instance1.selectNodes("/root/hidden/formlist[chk='Y' and value!='-']/value");
- var arrSrcFormCds = null;
- //alert((nodelist.length +"/"+ getNodesetCount("/root/hidden/formlist")));
- if (nodelist.length != getNodesetCount("/root/hidden/formlist[value!='-']"))
- {
- arrSrcFormCds = new Array(nodelist.length);
- for (var i=0; i<nodelist.length; i++)
- {
- arrSrcFormCds[i] = nodelist.item(i).text;
- }
- }
- nodelist = instance1.selectNodes("/root/hidden/itemlist[chk='Y' and value!='-']/value");
- var arrItemBaseCds = null;
- //alert((nodelist.length +"/"+ getNodesetCount("/root/hidden/itemlist")));
- if (nodelist.length != getNodesetCount("/root/hidden/itemlist"))
- {
- arrItemBaseCds = new Array(nodelist.length);
- for (var i=0; i<nodelist.length; i++)
- {
- arrItemBaseCds[i] = nodelist.item(i).text;
- }
- }
-
- grup_menu.visible = false;
- return fFiltering(arrSrcFormCds, arrItemBaseCds);
- }
- /**
- * @desc : 메뉴 취소버튼 클릭시
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function fCncl()
- {
- grup_menu.visible = false;
- }
- /**
- * @desc : 기록내용 필터링
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- var gSrcFormCds = "";
- var gItemBaseCds = "";
- function fFiltering(pArrSrcFormCds, pArrItemBaseCds)
- {
- var stmtForm = "";
- var stmtItem = "";
- if (pArrSrcFormCds != null)
- {
- for (var i = 0; i < pArrSrcFormCds.length; i++)
- {
- if (stmtForm != "")
- stmtForm += " or ";
- stmtForm += "srcformcd='" +pArrSrcFormCds[i]+ "'";
- }
- }
- if (pArrItemBaseCds != null)
- {
- for (var i = 0; i < pArrItemBaseCds.length; i++)
- {
- if (stmtItem != "")
- stmtItem += " or ";
- stmtItem += "fstlevlitembasecd='" +pArrItemBaseCds[i]+ "'";
- }
- }
- var stmt = "";
- if (stmtForm != "")
- {
- stmt = "(" + stmtForm + ")";
- }
- if (stmt != "" && stmtItem != "")
- {
- stmt += " and ";
- }
- if (stmtItem != "")
- {
- stmt += "(" + stmtItem + " or fstlevlitembasecd='-1')";
- }
- if (gFilterCond == stmt)
- {
- return false;
- }
- else
- {
- return fExeFilter(stmt);
- }
- // if (pArrSrcFormCds == null && pArrItemBaseCds == null)
- // {
- // if (gFilterCond != "")
- // return fExeFilter("");
- // }
- // else
- // {
- // var stmtForm = "";
- // var stmtItem = "";
- //
- // if (pArrSrcFormCds != null)
- // {
- // for (var i = 0; i < pArrSrcFormCds.length; i++)
- // {
- // if (stmtForm != "")
- // stmtForm += " or ";
- //
- // stmtForm += "srcformcd='" +pArrSrcFormCds[i]+ "'";
- // }
- // }
- //
- // if (pArrItemBaseCds != null)
- // {
- // for (var i = 0; i < pArrItemBaseCds.length; i++)
- // {
- // if (stmtItem != "")
- // stmtItem += " or ";
- //
- // stmtItem += "fstlevlitembasecd='" +pArrItemBaseCds[i]+ "'";
- // }
- // }
- //
- // var stmt = "";
- // if (stmtForm != "")
- // {
- // stmt = "(" + stmtForm + ")";
- // }
- // if (stmt != "" && stmtItem != "")
- // {
- // stmt += " and ";
- // }
- // if (stmtItem != "")
- // {
- // stmt += "(" + stmtItem + " or fstlevlitembasecd='-1')";
- // }
- //
- // if (gFilterCond == stmt)
- // {
- // return false;
- // }
- // else
- // {
- // return fExeFilter(stmt);
- // }
- // }
- }
- /**
- * @desc : 기록내용 필터
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- var gFilterCond = "";
- function fExeFilter(stmt)
- {
- var cond = stmt;
- if (stmt == null || stmt == "")
- stmt = "";
- else
- stmt = "[" +stmt+ "]";
- var cnt = getNodesetCount(gRef_MediFormView + stmt);
- //alert(gRef_MediFormView + stmt);
- if (cnt == 0)
- {
- messageBox("결과가", "I004");
- return false;
- }
- copyNodeset(gRef_ViewMediFormView, gRef_MediFormView + stmt, "replace", model, model);
- grd_nursinglist.rebuild();
- fDrawGrid();
- gFilterCond = cond;
- return true;
- }
- /**
- * @desc : 최근 폰트 사이즈로 보이기
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function fShowLstFtSz()
- {
- if(event.button == 3)
- {
- if(grd_nursinglist.isCell(event.target) && grd_nursinglist.mouseRow >= grd_nursinglist.fixedrows)
- {
- grup_menu.attribute("left") = event.clientX;
- grup_menu.attribute("top") = event.clientY;
- var widGrup = parseInt(grup_menu.attribute("width"));
- var widGrd = parseInt(grd_nursinglist.attribute("width"));
- if (widGrd < event.clientX + widGrup)
- {
- grup_menu.attribute("left") = widGrd - widGrup - 17;
- }
- var heiGrup = parseInt(grup_menu.attribute("height"));
- var heiGrd = parseInt(grd_nursinglist.attribute("height"));
- if (heiGrd < event.clientY + heiGrup)
- {
- grup_menu.attribute("top") = heiGrd - heiGrup;
- }
-
- grup_menu.visible = true;
- }
- else
- {
- grup_menu.visible = false;
- }
- event.propagate = "stop";
- }
- else
- {
- grup_menu.visible = false;
- }
- }
- /**
- * @desc : 폰트 사이즈 변경
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function fChgFontSz()
- {
- grup_menu.visible = false;
- if (grd_fntsz.row != 0)
- {
- if (gfontSz != parseInt(grd_fntsz.valueMatrix(grd_fntsz.row, grd_fntsz.colref("value"))))
- {
- gfontSz = parseInt(grd_fntsz.valueMatrix(grd_fntsz.row, grd_fntsz.colref("value")));
- if (fCnfm() == false)
- {
- fDrawGrid();
- }
- }
- }
- }
- /**
- * @desc : 기록 인스턴스 연결
- * @
- * @param :
- * @return :
- * @authur : 박종훈
- */
- function fSetRecItemValue()
- {
- var viewflag = grd_nursinglist.valueMatrix(grd_nursinglist.row, grd_nursinglist.colref("viewflag"));
- var nodelist;
- var preFix = "[formrecseq = '" + grd_nursinglist.valueMatrix(grd_nursinglist.row, grd_nursinglist.colref("formrecseq")) + "'";
- var postFix = " and viewflag='data']";
- //var postFix = " and viewflag='data' and (rectermcd != '' or recitemcd != '' or reccnts != '')]";
- switch (viewflag)
- {
- case "data":
- nodelist = instance1.selectNodes(gRef_ViewMediFormView +
- preFix +
- postFix);
- var reciteminfo = new RECITEM_INFO();
- reciteminfo.degnitemkind = grd_nursinglist.valueMatrix(grd_nursinglist.row, grd_nursinglist.colref("degnitemkind"));
- reciteminfo.degnitemcd = "";
- reciteminfo.degnitemlevlcd = grd_nursinglist.valueMatrix(grd_nursinglist.row, grd_nursinglist.colref("degnitemlevlcd"));
- reciteminfo.rectermcd = grd_nursinglist.valueMatrix(grd_nursinglist.row, grd_nursinglist.colref("rectermcd"));
- reciteminfo.recitemcd = grd_nursinglist.valueMatrix(grd_nursinglist.row, grd_nursinglist.colref("recitemcd"));
- reciteminfo.reccnts = grd_nursinglist.valueMatrix(grd_nursinglist.row, grd_nursinglist.colref("reccnts"));
- parent.window.javascript.fSetRecItemValueBydegnitemlevlcd(reciteminfo);
- fRecurSelect(grd_nursinglist.valueMatrix(grd_nursinglist.row, grd_nursinglist.colref("formrecseq")),
- grd_nursinglist.valueMatrix(grd_nursinglist.row, grd_nursinglist.colref("fstlevlitemcd")),
- grd_nursinglist.valueMatrix(grd_nursinglist.row, grd_nursinglist.colref("degnitemno")));
- break;
- case "fstlevl":
- nodelist = instance1.selectNodes(gRef_ViewMediFormView +
- preFix +
- " and fstlevlitemcd = '" + grd_nursinglist.valueMatrix(grd_nursinglist.row, grd_nursinglist.colref("fstlevlitemcd")) +"'"+
- postFix);
- fSetRecItemValueByNodeList(nodelist);
- break;
- default:
- nodelist = instance1.selectNodes(gRef_ViewMediFormView +
- preFix +
- postFix);
- fSetRecItemValueByNodeList(nodelist);
- break;
- }
- }
- /**
- * @desc : 노드리스트별 기록 인스턴스 연결을 위한 재귀함수
- * @
- * @param :
- * @return :
- * @authur : 박종훈
- */
- function fRecurSelect(formrecseq, fstlevlitemcd, degnitemno)
- {
- var nodelist = instance1.selectNodes(gRef_ViewMediFormView + "[viewflag='data' and formrecseq = '" +formrecseq+
- "' and fstlevlitemcd = '" +fstlevlitemcd+ "' and supdegnitemno = '" +degnitemno+ "']");
- for (var i=0; i<nodelist.length; i++)
- {
- fRecurSelect(formrecseq, fstlevlitemcd, nodelist.item(i).getXPathString("degnitemno"));
- }
- fSetRecItemValueByNodeList(nodelist);
- }
- /**
- * @desc : 노드리스트별 기록 인스턴스 연결
- * @
- * @param :
- * @return :
- * @authur : 박종훈
- */
- function fSetRecItemValueByNodeList(nodelist)
- {
- var reciteminfo;
- for (var i=0; i<nodelist.length; i++)
- {
- if (nodelist.item(i).getXPathString("rectermcd") != "" ||
- nodelist.item(i).getXPathString("recitemcd") != "" ||
- nodelist.item(i).getXPathString("reccnts") != "" )
- {
- reciteminfo = new RECITEM_INFO();
- reciteminfo.degnitemkind = nodelist.item(i).getXPathString("degnitemkind");
- reciteminfo.degnitemcd = "";
- reciteminfo.degnitemlevlcd = nodelist.item(i).getXPathString("degnitemlevlcd");
- reciteminfo.rectermcd = nodelist.item(i).getXPathString("rectermcd");
- reciteminfo.recitemcd = nodelist.item(i).getXPathString("recitemcd");
- reciteminfo.reccnts = nodelist.item(i).getXPathString("reccnts");
- parent.window.javascript.fSetRecItemValueBydegnitemlevlcd(reciteminfo);
- }
- }
- }
- /*
- function fConfirm()
- {
- getSubFormData();
-
- var refTarget = "/root/main/subform";
- var refUniqInfo = "/root/hidden/forminfo/formdegnseqno";
- if(findNode(opener.model, refTarget + "[@id='" + model.getValue(refUniqInfo) + "']"))
- opener.model.removeNode(refTarget + "[@id='" + model.getValue(refUniqInfo) + "']");
- var cntSubForm = getNodesetCnt(opener.model, refTarget);
- copyNodeset(opener.model, model, refTarget + "[" + (cntSubForm + 1) + "]", refTarget);
- opener.model.makeValue(refTarget + "[" + (cntSubForm + 1) + "]/@id", model.getValue(refUniqInfo));
- opener.model.makeValue(refTarget + "[" + (cntSubForm + 1) + "]/@type", "formdegnseqno");
- window.close();
- }
- function fTmpSave()
- {
- getSubFormData();
- fSetFormRecInfo("N");
- }
- function fSignedSave()
- {
- getSubFormData();
- fSetFormRecInfo("Y");
- }
- */
|