123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253 |
- /**
- * @desc : 화면 초기화
- * @
- * @param :
- * @return :
- * @author : 엄영만
- * @---------------------------------------------------
- */
- function fInitialize_SMMMB08500(){
- zbcfGetCodeList(new Array("M0530"), new Array("/root/init/resnflag"));
- addComboInstance("/root/init/resnflag" , "cdid^cdnm", "-^해당없음", "M0530"); //사유구분 해당없음 추가
-
- mmbfGetDeptCodeComboList("/root/send/reqdata", "/root/init/orddept", "A"); //진료과 콤보
-
- fGetMercdList();
- }
- /**
- * @desc : 진료오류코드 리스트 조회
- * @
- * @param :
- * @return :
- * @author : 엄영만
- * @---------------------------------------------------
- */
- function fGetMercdList(){
- model.removeNodeset("/root/main/info/mercd/mercdlist"); // 진료공통코드 리스트
- //input박스 비활성화
- ipt_errcd.disabled = true;
-
- submit("TRMMB08501");
-
- model.refresh(); // 트리가 접힌 상태에서 재조회 하면 그리드에 접힌 수만큼 조회 되지 않는 오류 수정.
- setTree(grd_mercdlist, grd_mercdlist.colRef("levl"), grd_mercdlist.colRef("displaynm"), true);
-
- model.refresh();
- }
- /**
- * @desc : 진료오류코드 리스트 클릭시 기본정보 설정
- * @
- * @param :
- * @return :
- * @author : 엄영만
- * @---------------------------------------------------
- */
- function fSetErrCodeInfo(){
- var nRow = grd_mercdlist.row;
- var sErrCd = model.getValue("/root/main/mercd/mercdlist["+nRow+"]/errcd");
-
- if(!isNull(sErrCd)) {
- model.makeValue("/root/send/reqdata/userid", getUserInfo("userid"));
- model.makeValue("/root/send/reqdata/deptcd", getUserInfo("dutplcecd"));
- model.makeValue("/root/send/reqdata/errcd", sErrCd);
- if (submit("TRMMB08502")){
- //input박스 비활성화
- ipt_errcd.disabled = true;
-
- model.removeNodeset("/root/main/recv");
- }
- model.refresh();
- }
- }
- /**
- * @desc : 진료오류코드 상세정보 저장
- * @
- * @param :
- * @return :
- * @author : 엄영만
- * @---------------------------------------------------
- */
- function fSaveErrCodeInfo(){
- if(isNull(model.getValue("/root/main/errcdinfo/errcodeinfo/errcd"))){
- messageBox("오류코드을","C001");
- return false;
- }
-
- if(isNull(model.getValue("/root/main/errcdinfo/errcodeinfo/errnm"))){
- messageBox("코드명을","C001");
- return false;
- }
-
- if(isNull(model.getValue("/root/main/errcdinfo/errcodeinfo/fromdd"))){
- messageBox("적용기간의 시작일자를","C001");
- return false;
- }
-
- if(isNull(model.getValue("/root/main/errcdinfo/errcodeinfo/todd"))){
- messageBox("적용기간의 종료일자를","C001");
- return false;
- }
-
- if(isNull(model.getValue("/root/main/errcdinfo/errcodeinfo/superrcd"))){
- messageBox("상위코드을","C001");
- return false;
- }
-
- if(isNull(model.getValue("/root/main/errcdinfo/errcodeinfo/errmsg"))){
- messageBox("메세지을","C001");
- return false;
- }
-
- if( messageBox("기본정보를","Q002") == 6 ){
- copyNodesetType("/root/send/savedata/mercdinfo", "/root/main/errcdinfo/errcodeinfo", "replace", model, model);
-
- if ( submit("TXMMB08501") ) {
- fGetMercdList();
- }
- }
- }
- /**
- * @desc : 진료공통코드 예외 리스트 저장
- * @
- * @param :
- * @return :
- * @author : 엄영만
- * @---------------------------------------------------
- */
- function fSaveErrCdExInfo(){
- var sErrCd = model.getValue("/root/main/errcdinfo/errcodeinfo/errcd");
- if(isNull(sErrCd)) {
- messageBox("선택된 오류코드가 없습니다. 오류코드를 선택하세요.", "E999");
- return;
- } else {
- if( messageBox(sErrCd + " 코드의 예외조건 정보를","Q002") == 6 ){
- model.removeNodeset("/root/send/reqdata/");
- model.makeValue("/root/send/reqdata/exdeptinfo", grd_notapply_dept.getUpdateData());
- model.makeValue("/root/send/reqdata/exuserinfo", grd_notapply_user.getUpdateData());
- model.makeValue("/root/send/reqdata/expatinfo", grd_notapply_pat.getUpdateData());
- model.refresh();
-
- if ( submit("TXMMB08502") ) {
- fSetErrCodeInfo();
- } else {
- messageBox("저장에","I009");
- }
- }
- }
- }
- function fCompareDate(){
- var fromdd = model.getValue("/root/main/applyinfo/prcpinfo/fromdd");
- var todd = model.getValue("/root/main/applyinfo/prcpinfo/todd");
-
- if(fromdd != "" && todd != ""){
- if(todd < fromdd){
- messageBox("시작일자가 종료일자보다 빠를 수","I004");
- return;
- }
- }
- }
- /*
- * param = D -> 부서 U -> 사용자 P -> 환자 C -> 관련코드
- */
- function fGridAdd(datagrid, sFlag){
- var sErrCd = "";
- var sFromDd = "";
- var sExId = "";
- var sExIdNm = "";
- var sNodeSet = "";
-
- sErrCd = model.getValue("/root/main/errcdinfo/errcodeinfo/errcd");
- sFromDd = model.getValue("/root/main/errcdinfo/errcodeinfo/fromdd");
- if(isNull(sErrCd) || isNull(sFromDd)) {
- messageBox("선택된 오류코드가 없습니다. 오류코드를 선택하세요.", "E999");
- return;
- }
-
- if(sFlag == "D"){
- sExId = model.getValue("/root/main/objectinfo/dept/orddept");
- sExIdNm = model.getValue("/root/init/orddept/dept[deptcd = '"+sExId+"']/depthngnm");
- sNodeSet = "/root/main/errcdinfo/exdeptinfo/deptlist";
- } else if(sFlag == "U"){
- sExId = model.getValue("/root/main/objectinfo/user/orddrid");
- sExIdNm = model.getValue("/root/init/userlist/usercombo[userid = '"+sExId+"']/usernm");
- sNodeSet = "/root/main/errcdinfo/exuserinfo/userlist";
- } else if(sFlag == "P"){
- modal("SPPMC02500");
- sExId = model.getValue("/root/main/patinfo/patinfolist/pid");
- sExIdNm = model.getValue("/root/main/patinfo/patinfolist/hngnm");
- sNodeSet = "/root/main/errcdinfo/expatinfo/patlist";
- } else {
- return;
- }
-
- if(sExId != ""){
- if(fCheckDup(sExId, sNodeSet)){
- if(sFlag == "D"){
- msg = "해당 부서는";
- }else if(sFlag == "U"){
- msg = "해당 사용자는";
- }else if(sFlag == "P"){
- msg = "해당 환자는";
- }else{}
- messageBox(msg,"E006");
- return;
- }
- datagrid.addRow(true, true);
- var nRow = datagrid.rows;
- model.setValue(sNodeSet + "["+eval(nRow-1)+"]/errcd", sErrCd);
- model.setValue(sNodeSet + "["+eval(nRow-1)+"]/fromdd", sFromDd);
- model.setValue(sNodeSet + "["+eval(nRow-1)+"]/exno", "0");
- model.setValue(sNodeSet + "["+eval(nRow-1)+"]/extype", sFlag);
- model.setValue(sNodeSet + "["+eval(nRow-1)+"]/exid", sExId);
- model.setValue(sNodeSet + "["+eval(nRow-1)+"]/exidnm", sExIdNm);
-
- model.setValue("/root/main/objectinfo/dept/orddept","");
- model.setValue("/root/main/objectinfo/user/orddrid","");
- model.refresh();
- }else{
- messageBox("추가 할 항목을 아래에서 선택 하세요.", "I999");
- return;
- }
- }
- function fGridDel(datagrid){
- var sNodeSet = "";
- var nRow = datagrid.row;
- var nStatus = null;
- if( nRow <= 0 ){
- alert("삭제할 항목을 선택해주십시오.");
- return;
- }
-
- nStatus = datagrid.rowstatus(nRow);
- if(nStatus == 0) { // 기존데이터
- datagrid.rowstatus(nRow) = 4;
- } else if (nStatus == 1) { // 신규데이터
- datagrid.deleteRow(nRow);
- } else if (nStatus == 4) { // 삭제데이터
- datagrid.rowstatus(nRow) = 0;
- }
-
- model.refresh();
- }
- function fCheckDup(sValue, sNodeSet){
- var nCnt = getNodesetCount(sNodeSet);
- var bExist = false;
- for(i=1; i<= nCnt; i++){
- if(sValue == model.getValue(sNodeSet+"["+i+"]/exid")){
- bExist = true;
- }
- }
- return bExist;
- }
|