123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368 |
- <?xml version="1.0" encoding="utf-8"?>
- <Script type="xscript4.0"><![CDATA[
- /*
-
- 기준자료관리(SMMNI01300.xfm - JScript )
- - Version :
- 1) : Ver.1.00.01
- */
- //20090512 dhkim 사용자부서정보
- var userdeptcd = sysf_getUserInfo("dutplcecd");
- //20090512 dhkim 주사실코드
- var injdeptcd;
- /**
- * 20090506 dhkim
- * 초기화펑션추가
- */
- function fInit(){
-
- var oParam = {};
- oParam.id = "TRMNI00504";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqGetInjDeptcd";
- oParam.inds = "";
- oParam.outds = "ds_hidden_injdeptinfo_injcdinfo=injcdinfo";
- oParam.async = false;
- oParam.callback = "cf_TRMNI00504";
- tranf_submit(oParam);
- //20090512 dhkim 주사실코드 가져오기
- if(arErrorCode.pop("TRMNI00504") <= -1){
- sysf_messageBox("주사실코드조회를", "E009");
- return false;
- }
- injdeptcd = ds_hidden_injdeptinfo_injcdinfo.getColumn(0, "injdeptcd");
-
- //시행부서조건추가 (20090506 현재 육아상담실, 소아청소년과, 중앙주사실)
- ds_send.clearData();
- dsf_makeValue(ds_send,"cdgrupid" ,"string", '075');
- dsf_makeValue(ds_send,"execdept" ,"string", '-');
-
- var oParam = {};
- oParam.id = "TRMNI01302";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqGetNursBaseCd";
- oParam.inds = "refCond=ds_send";
- oParam.outds = "ds_hidden_execinfo_execinfolist=execinfolist";
- oParam.async = false;
- oParam.callback = "cf_TRMNI01302";
- tranf_submit(oParam);
- if(arErrorCode.pop("TRMNI01302") <= -1){
- sysf_messageBox('시행부서 초기화를', 'E009');
- return false;
- }
-
- //20090512 dhkim 사용자정보가 주사실일 경우는 주사실만 보여지고 주사실이 아니면 주사실만 빼고 보여줌.
- //노드에서 제거
- fSetNodeExecUserDept();
-
- ds_main_ref.setColumn(0, "execdeptcd", userdeptcd);
-
- //시행부서콤보선택시 기본조건변경
- fExecChanged(userdeptcd);
-
- }
-
-
- /*************************************************************************************************************
- * 20090512 dhkim
- * 전체노드중 주사실사용자는 주사실노드만 재구성,
- * 소아청소년과/육아상담실은 주사실제외후 재구성
- *------------------------------------------------------------------------------------------------------------
- * 20090603 dhkim
- * supcdid파라미터 구성 배열로 변경
- * supcdid[0]예방주사비활성화여부(Y:비활성, N:활성)
- * supcdid[1]겸직사용자여부 (Y:겸직, N:비겸직)
- *************************************************************************************************************/
- function fSetNodeExecUserDept(){
-
- //노드초기화
- ds_init_execinfo_execinfolist.clearData();
-
- var nodeCnt = ds_hidden_execinfo_execinfolist.rowcount;
- var basecd, basenm, supcdid;
-
- //20090604 dhkim bmt주사실의 추가로 노드구성을 변경함
- //supcdid를 배열로 만들어 [0]번에 기타처치등록가능여부, [1]번에 콤보노드구성 (로그인부서2개이상여부) 체크함
- //ex) supcdid = Y|Y 또는 N|Y , Y|N, N|N 등으로 입력됨
- // supcdid[0] = Y: 기타처치,예방주사 모두등록가능
- // supcdid[0] = N: 기타처치만 등록가능함
- // supcdid[1] = Y: 사용자의 부서가 여러개가 올수있음 (예 : 소아청소년과, 육아상담실 겸직)
- // supcdid[1] = N: 사용자의 부서가 단일과로 구성됨. (예 : 중앙주사실, BMT주사실)
- var supcdidSplit, isMultiDept;
-
- var newNodeCnt = -1;
- for(var i = 0; i < nodeCnt; i++){
-
- basecd = ds_hidden_execinfo_execinfolist.getColumn(i, "basecd");
- supcdid = ds_hidden_execinfo_execinfolist.getColumn(i, "supcdid");
- supcdidSplit = supcdid.split("|");//20090604 dhkim 배열로 분리
-
- if(basecd == userdeptcd){
- isMultiDept = supcdidSplit[1];//겸직여부를 찾는다.
- }
- }
-
- for(var i = 0; i < nodeCnt; i++){
-
- basecd = ds_hidden_execinfo_execinfolist.getColumn(i, "basecd");;
- basenm = ds_hidden_execinfo_execinfolist.getColumn(i, "basenm");
- supcdid = ds_hidden_execinfo_execinfolist.getColumn(i, "supcdid");
-
- //20090604 dhkim 배열로 분리
- supcdidSplit = supcdid.split("|");
- supcdid = supcdidSplit[1];
-
- if(isMultiDept == 'Y'){
- if(supcdid == 'Y'){
- newNodeCnt++;
- dsf_makeValue(ds_init_execinfo_execinfolist,"basecd" ,"string", basecd, newNodeCnt);
- dsf_makeValue(ds_init_execinfo_execinfolist,"basenm" ,"string", basenm, newNodeCnt);
- }
- }else if(isMultiDept == 'N'){
- if(basecd == userdeptcd){
- newNodeCnt++;
- dsf_makeValue(ds_init_execinfo_execinfolist,"basecd" ,"string", basecd, newNodeCnt);
- dsf_makeValue(ds_init_execinfo_execinfolist,"basenm" ,"string", basenm, newNodeCnt);
- return;
- }
- }
- }
-
- }
-
- /*************************************************************************************************************
- * 20090506 dhkim
- * 시행부서조회조건변경시 호출
- * 육아상담실과 소아청소년과가 선택되었을경우 기타처치가 default선택되고
- * 예방주사구분은 선택안되도록 비활성화시킴.
- *------------------------------------------------------------------------------------------------------------
- * 20090604 dhkim bmt주사실의 추가로 노드구성을 변경함
- * supcdid를 배열로 만들어 [0]번에 기타처치등록가능여부, [1]번에 콤보노드구성 (로그인부서2개이상여부) 체크함
- * ex) supcdid = Y|Y 또는 N|Y , Y|N, N|N 등으로 입력됨
- * supcdid[0] = Y: 기타처치,예방주사 모두등록가능
- * supcdid[0] = N: 기타처치만 등록가능함
- * supcdid[1] = Y: 사용자의 부서가 여러개가 올수있음 (예 : 소아청소년과, 육아상담실 겸직)
- * supcdid[1] = N: 사용자의 부서가 단일과로 구성됨. (예 : 중앙주사실, BMT주사실)
- *************************************************************************************************************/
- function fExecChanged(execdeptcd){
-
- var supcdidSplit;
- var supcdid = ds_hidden_execinfo_execinfolist.lookup("basecd", execdeptcd, "supcdid");
-
- //20090604 dhkim 배열로 분리
- supcdidSplit = supcdid.split("|");
- supcdid = supcdidSplit[0];
-
- //supcdid가 Y인경우는 기본 기타처치로 선택상태로 변경하고 예방주사구분선택못하게 비활성화
- if(supcdid == "Y"){//소아청소년과,육아상담실
- ds_main_ref.setColumn(0, "cdcls", 'JQ');//기타처치
- group6.com_cdcls.enable = false;
- group6.rdo_supbasetypecd.enable = true;
- }else{//중앙주사실
- group6.com_cdcls.enable = true;
- group6.rdo_supbasetypecd.enable = true;
- }
- }
- /**
- * @group :
- * @ver : 2007.07.30
- * @by : 신혁춘
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : grd_basecodelist 데이타 조회
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fsrch(){
-
- var cdclslist = ds_main_ref.getColumn(0, "cdcls");
- var baseclsflag = cdclslist.substring(0,1);
-
- ds_send.clearData();
-
- dsf_makeValue(ds_send,"baseclsflag" , "string", baseclsflag);
- dsf_makeValue(ds_send,"cdcls" , "string", ds_main_ref.getColumn(0, "cdcls"));
- //20090506 dhkim 시행부서추가
- dsf_makeValue(ds_send,"execdeptcd" , "string", ds_main_ref.getColumn(0, "execdeptcd"));
-
- if (cdclslist == "JQ"){
- dsf_makeValue(ds_send,"supbasetypecd" , "string", ds_main_ref.getColumn(0, "supbasetypecd"));
- }
- if (cdclslist != "JQ"){
- dsf_makeValue(ds_send,"supbasetypecd" , "string","JSA");
- }
-
- var oParam = {};
- oParam.id = "TRMNI01301";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqGetBaseCodeList";
- oParam.inds = "refCond=ds_send";
- oParam.outds = "ds_main_baseinfo_baseinfolist=baseinfolist";
- oParam.async = false;
- tranf_submit(oParam);
- }
- /**
- * @group :
- * @ver : 2007.07.25
- * @by : 신혁춘
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : rdo_curespec 사용여부
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fcurespec(){
- var chk = group6.com_cdcls.value;
-
- if (chk == "JS"){
- group6.rdo_supbasetypecd.enable=false;
- }
- if (chk == "JQ"){
- group6.rdo_supbasetypecd.enable=true;
- }
- }
- /**
- * @group :
- * @ver : 2007.07.25
- * @by : 신혁춘
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : but_add 행추가시
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fadd(){
-
- var spec = ds_main_ref.getColumn(0, "supbasetypecd");
- var fag = ds_main_ref.getColumn(0, "cdcls");
- var execdeptcd = ds_main_ref.getColumn(0, "execdeptcd");
-
- if( utlf_isNull(execdeptcd) || execdeptcd == '-'){
- sysf_messageBox("시행부서를","C002");
- return;
- }
-
- if(fag == "JQ"){
- if(spec == "JQA"){
- sysf_messageBox("처치내역을 전체로 선택하신 경우 행추가를 할 수","I004");
- return;
- }
- }
-
- ds_main_baseinfo_baseinfolist.addRow();
-
- var iRow = ds_main_baseinfo_baseinfolist.rowposition;
-
- if(fag == "JQ"){
- ds_main_baseinfo_baseinfolist.setColumn(iRow, "supbasetypecd" , spec);//구분
- ds_main_baseinfo_baseinfolist.setColumn(iRow, "refseq" , iRow);//정렬순서
- ds_main_baseinfo_baseinfolist.setColumn(iRow, "execdeptcd" , execdeptcd);//시행부서
-
- //grd_basecodelist.textmatrix(iRow, 1) = spec;
- //grd_basecodelist.textmatrix(iRow, 4) = iRow;
- }
- if(fag == "JS"){
- ds_main_baseinfo_baseinfolist.setColumn(iRow, "supbasetypecd" , "JSA");//구분
- ds_main_baseinfo_baseinfolist.setColumn(iRow, "refseq" , iRow);//정렬순서
- ds_main_baseinfo_baseinfolist.setColumn(iRow, "execdeptcd" , execdeptcd);//시행부서
-
- //grd_basecodelist.textmatrix(iRow, 1) = "JSA";
- //grd_basecodelist.textmatrix(iRow, 4) = iRow;
- }
- }
- /**
- * @group :
- * @ver : 2007.07.31
- * @by : 신혁춘
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : grd_basecodelist 상태값 삭제표시
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fdelchk(){
- var row = ds_main_baseinfo_baseinfolist.rowposition;
-
- ds_main_baseinfo_baseinfolist.updatecontrol =false;
- ds_main_baseinfo_baseinfolist.setRowType(ds_main_baseinfo_baseinfolist.rowposition, "D");
- ds_main_baseinfo_baseinfolist.updatecontrol =true;
- }
- /**
- * @group :
- * @ver : 2007.07.31
- * @by : 신혁춘
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : grd_basecodelist 데이타 삽입 및 수정 및 삭제
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fsave(){
- var updtdata = grdf_getGridUpdateData(group3.grd_basecodelist);
- var cdclslist = ds_main_ref.getColumn(0, "cdcls");
- var baseclsflag = cdclslist.substring(0,1);
-
- dsf_makeValue(ds_send,"baseclsflag" ,"string", baseclsflag);
- dsf_makeValue(ds_send,"cdcls" ,"string", ds_main_ref.getColumn(0, "cdcls"));
-
- if (cdclslist == "JQ"){
- dsf_makeValue(ds_send,"supbasetypecd" ,"string", ds_main_ref.getColumn(0, "supbasetypecd"));
- }else{
- dsf_makeValue(ds_send,"supbasetypecd" ,"string", "JSA");
- }
-
- grdf_setStatusColumn(updtdata, "m");
-
- dsf_createDs("ds_send_baseinfolist");
- ds_send_baseinfolist.copyData(updtdata, true);
-
- ds_send_baseinfolist.updateColID("execdeptcd", "orddeptcd");
-
- //20090506 dhkim 시행부서추가로 주석처리
- //model.makeValue("/root/send/orddeptcd","ALL");
- var oParam = {};
- oParam.id = "TXMNI01301";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqExeBaseCodeData";
- oParam.inds = "refCond=ds_send_baseinfolist refConds=ds_send";
- oParam.outds = "";
- oParam.async = false;
- oParam.callback = "cf_TXMNI01301";
- tranf_submit(oParam);
- if(arErrorCode.pop("TXMNI01301") > -1){
- fsrch();
- }
- }
- ]]></Script>
|