123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330 |
- /* ---------------------------------------------------------------------
- 수술명 분류체계 관리(SMMNP01200.xfm - JScript )
- - Version :
- 1) : Ver.1.00.00
- : Create By Grace Lee
- : 2007.09.17
- ---------------------------------------------------------------------- */
- var xPathGridData = "/root/main/mnpmpgmslist" ; // 수술명분류리스트 xPath
- var OpGrp1Mode = "1" ; // 대분류모드
- var OpGrp2Mode = "2" ; // 중분류모드
- var InsertMode = "I" ; // Insert 모드
- var UpdateMode = "U" ; // Update 모드
- var DeleteMode = "D" ; // Delete 모드
- /* ------------------------------------------------- */
- /* SMMNP01200_수술명 분류체계 등록 */
- /* On Load 시 Call */
- /* ------------------------------------------------- */
- /* group : EMR 간호 수술마취 */
- /* ver : 2007.09.17 */
- /* by : 이현숙 */
- /* --------------------------------------------------*/
- /* type : function */
- /* access : public */
- /* desc : xforms-ready시 수행한다 */
- /* return : */
- /* --------------------------------------------------*/
- function fFormInit() {
- MnpmpgmsCombo_Read();
- }
- /* ------------------------------------------------- */
- /* SMMNP01200_ 수술명 분류체계 */
- /* On Load 시 Call */
- /* ------------------------------------------------- */
- /* group : EMR 간호 수술마취 */
- /* ver : 2007.09.17 */
- /* by : 이현숙 */
- /* ------------------------------------------------- */
- /* SMMNP01200_ 수술분류 */
- /* On Load 시 Call */
- /* desc : 수술명 분류체계 정보 가져오기 */
- /* --------------------------------------------------*/
- function MnpmpgmsCombo_Read() {
- model.removenode("/root/send");
- model.makeValue("/root/send/instcd" , model.getValue("/root/main/cond/instcd" )); // 병원기관코드
- model.makeValue("/root/send/conflag" , model.getValue("/root/main/cond/conflag")); // 검색구분
- model.makeValue("/root/send/opgrp1" , model.getValue("/root/main/cond/opgrp1" )); // 대분류코드
- submit("TRMNP01201"); // 수술명 분류 코드와 명칭을 가져온다.
- cmb_opgrp1.select(0);
- }
- /* ------------------------------------------------- */
- /* SMMNP01200_ 수술명 분류체계 */
- /* 조회버튼 클릭시 Call */
- /* ------------------------------------------------- */
- /* group : EMR 간호 수술마취 */
- /* ver : 2007.09.17 */
- /* by : 이현숙 */
- /* ------------------------------------------------- */
- /* SMMNP01200_ 수술분류 */
- /* 조회버튼 클릭시 Call */
- /* desc : 수술명 분류 리스트 가져오기 */
- /* --------------------------------------------------*/
- function MnpmpgmsList_Read() {
- model.removenode("/root/send");
- model.makeValue("/root/send/instcd" , model.getValue("/root/main/cond/instcd" )); // 병원기관코드
- model.makeValue("/root/send/conflag" , model.getValue("/root/main/cond/conflag")); // 검색구분
- model.makeValue("/root/send/opgrp1" , model.getValue("/root/main/cond/opgrp1" )); // 대분류코드
- submit("TRMNP01202");
- fNew(); // 하단 입력항목 초기화
- }
- /* ------------------------------------------------- */
- /* desc : 수술명 분류체계 검색구분 선택 */
- /* param : pModel - Model */
- /* return : */
- /* -------------------------------------------------- */
- function fSelectGrp(){
- var flag = rdo_grpkind.value;
- switch(flag){
- case OpGrp1Mode:
- caption26.attribute("visibility") = "hidden";
- cmb_opgrp1.attribute("visibility") = "hidden";
- break;
- case OpGrp2Mode:
- caption26.attribute("visibility") = "visible";
- cmb_opgrp1.attribute("visibility") = "visible";
- break;
- }
- MnpmpgmsList_Read(); // 수술명 분류체계 리스트 조회
- }
- /* ------------------------------------------------- */
- /* desc : 대분류 콤보리스트 선택 */
- /* param : pModel - Model */
- /* return : */
- /* -------------------------------------------------- */
- function fSelectComboGrp(){
- MnpmpgmsList_Read(); // 수술명 분류체계 리스트 조회
- }
- /* ------------------------------------------------- */
- /* desc : 수술명 분류체계 신규버튼 클릭 */
- /* param : pModel - Model */
- /* tNode - Target Node */
- /* return : */
- /* -------------------------------------------------- */
- function fNew(){
- var flag = rdo_grpkind.value;
- var tNode = "/root/main/mnpmpgmsinfo";
- var opgrp1 = "";
- var opgrp2 = "";
- switch(flag){
- case OpGrp1Mode: // 대분류
- opgrp2 = "00";
- fSetEditable(inp_opgrp1, true );
- fSetEditable(inp_opgrp2, false);
- break;
- case OpGrp2Mode: // 중분류
- opgrp1 = cmb_opgrp1.value;
- fSetEditable(inp_opgrp1, false );
- fSetEditable(inp_opgrp2, true);
- break;
- }
- model.setValue(tNode+"/opgrp1" , opgrp1 );
- model.setValue(tNode+"/opgrp2" , opgrp2 );
- model.setValue(tNode+"/opgrp3" , "00" );
- model.setValue(tNode+"/instcd" , model.getValue("/root/init/HideData/instcd" ) );
- model.setValue(tNode+"/opgrpkname" , "" );
- model.setValue(tNode+"/opgrpename" , "" );
- model.setValue(tNode+"/txmode" , InsertMode );
- model.refresh();
- }
- /* ------------------------------------------------- */
- /* desc : 수술명 분류체계 리스트 선택시 */
- /* param : pModel - Model */
- /* tNode - Target Node */
- /* sNode - Source Node */
- /* return : */
- /* -------------------------------------------------- */
- function fSelectRow(){
- if(grd_mnpmpgms.row <1 ) return;
- var tNode = "/root/main/mnpmpgmsinfo";
- var sNode = "/root/main/mnpmpgmslist/mnpmpgmsinfo["+grd_mnpmpgms.row+"]";
- fSetEditable(inp_opgrp1, false );
- fSetEditable(inp_opgrp2, false);
- model.setValue(tNode+"/opgrp1" , model.getValue(sNode+"/opgrp1" ));
- model.setValue(tNode+"/opgrp2" , model.getValue(sNode+"/opgrp2" ));
- model.setValue(tNode+"/opgrp3" , model.getValue(sNode+"/opgrp3" ));
- model.setValue(tNode+"/instcd" , model.getValue(sNode+"/instcd" ));
- model.setValue(tNode+"/opgrpkname" , model.getValue(sNode+"/opgrpkname" ));
- model.setValue(tNode+"/opgrpename" , model.getValue(sNode+"/opgrpename" ));
- model.setValue(tNode+"/txmode" , UpdateMode );
- model.refresh();
- }
- /* ------------------------------------------------- */
- /* desc : Editable 속성 지정 */
- /* param : pModel - Model */
- /* return : */
- /* -------------------------------------------------- */
- function fSetEditable(pObj, pVal){
- if(pVal){
- pObj.attribute("editable")="true";
- pObj.initStyle("background-color");
- }else{
- pObj.attribute("editable")="false";
- pObj.attribute("background-color") = "#f2f2f2";
- }
- }
- /* ------------------------------------------------- */
- /* desc : 수술명 분류체계 자료저장하기 */
- /* param : pModel - Model */
- /* tNode - Target Node */
- /* sNode - Source Node */
- /* return : */
- /* -------------------------------------------------- */
- function fSave(flag){
- var sNode = "";
- var tNode = "/root/send/mnpmpgmsinfo";
- var txmode = "";
- if(flag==DeleteMode){ // Delete
- // 선택확인
- if(grd_mnpmpgms.row<1){
- messageBox( "수술명 분류를", "C002");
- return ;
- }
- // 삭제확인메시지
- if(rdo_grpkind.value == OpGrp1Mode ){
- if(messageBox("하위 중분류가 모두 삭제됩니다. \n데이터를 ", "Q001")=="7") return;
- }else {
- if(messageBox("데이터를 ", "Q001")=="7") return;
- }
- sNode = "/root/main/mnpmpgmslist/mnpmpgmsinfo["+grd_mnpmpgms.row+"]";
- txmode = DeleteMode;
- }else{ // Insert, Update
- sNode = "/root/main/mnpmpgmsinfo";
- txmode = model.getValue(sNode+"/txmode" );
- if(!fCheckValid()) return;
- }
- model.removenode("/root/send");
- model.makeValue(tNode+"/opgrp1" ,model.getValue(sNode+"/opgrp1" )); // 대분류
- model.makeValue(tNode+"/opgrp2" ,model.getValue(sNode+"/opgrp2" )); // 중분류
- model.makeValue(tNode+"/opgrp3" ,model.getValue(sNode+"/opgrp3" )); // 소분류
- model.makeValue(tNode+"/instcd" ,model.getValue(sNode+"/instcd" )); // 병원기관코드(코드정의서 Z0007 참조)
- model.makeValue(tNode+"/opgrpkname" ,model.getValue(sNode+"/opgrpkname" )); // 한글수술명
- model.makeValue(tNode+"/opgrpename" ,model.getValue(sNode+"/opgrpename" )); // 한글영문명
- model.makeValue(tNode+"/txmode" ,txmode ); // 처리모드 (I:Insert, U:Update, D:Delete)
- submit("TXMNP01201");
- MnpmpgmsList_Read(); // 수술명 분류체계 리스트 조회
- // 대분류 저장시 대분류 콤보리스트 재조회
- if(rdo_grpkind.value == OpGrp1Mode ){
- MnpmpgmsCombo_Read();
- }
- }
- /* ------------------------------------------------- */
- /* desc : 수술명분류 validation check */
- /* param : pModel - Model */
- /* sNode - Source Node */
- /* return : */
- /* -------------------------------------------------- */
- function fCheckValid(){
- var sNode = "/root/main/mnpmpgmsinfo";
- var opgrp1 = model.getValue(sNode+"/opgrp1" );
- var opgrp2 = model.getValue(sNode+"/opgrp2" );
- var opgrpkname = model.getValue(sNode+"/opgrpkname" );
- var opgrpename = model.getValue(sNode+"/opgrpename" );
- var txmode = model.getValue(sNode+"/txmode" );
- //-------------------- 1. 필수 입력 항목 체크
- if(txmode==InsertMode){
- if(opgrp1==""){
- messageBox( "대분류구분을", "C001");
- model.setFocus("inp_opgrp1");
- return false;
- }
- if(opgrp2==""){
- messageBox( "중분류구분을", "C001");
- model.setFocus("inp_opgrp2");
- return false;
- }
- }
- if(opgrpkname==""){
- messageBox( "분류한글명을", "C001");
- model.setFocus("inp_opgrpkname");
- return false;
- }
- if(opgrpename==""){
- messageBox( "분류영문명을", "C001");
- model.setFocus("inp_opgrpename");
- return false;
- }
- //-------------------- 2. 중복체크
- if(txmode==InsertMode){
- if(fIsExist(opgrp1, opgrp2)){
- messageBox( "수술명 분류 정보가", "E006");
- return false;
- }
- }
- return true;
- }
- /* ------------------------------------------------- */
- /* desc : 수술명분류 등록여부 check */
- /* param : pModel - Model */
- /* sNode - Source Node */
- /* return : */
- /* -------------------------------------------------- */
- function fIsExist(popgrp1, popgrp2){
- var opgrp1, opgrp2;
- for (var i = grd_mnpmpgms.fixedrows; i < grd_mnpmpgms.rows; i++) {
- opgrp1 = grd_mnpmpgms.valueMatrix(i,1);
- opgrp2 = grd_mnpmpgms.valueMatrix(i,2);
- if(popgrp1 == opgrp1 && popgrp2 == opgrp2){
- return true;
- }
- }
- return false;
- }
- /* ------------------------------------------------- */
- /* ------End Of List ------------------------------- */
- /* -------------------------------------------------- */
|