123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319 |
- <?xml version="1.0" encoding="utf-8"?>
- <Script type="xscript4.0"><![CDATA[
- //초기화
- function fInit() {
- var param = opener.frmf_getParameter("SPMMO32000_param");
- param = param.split("▦");
- ds_tmp_patinfo.setColumn(0,"pid", param[0]);
- ds_tmp_patinfo.setColumn(0,"orddd", param[1]);
- ds_tmp_patinfo.setColumn(0,"cretno", param[2]);
- ds_tmp_patinfo.setColumn(0,"visitno", param[3]);
-
- ///mmbfGetHardCodeInfoNm("/root/send/reqdata" , "/root/init/ercallno" , 7);
- lf_getHardCDList("N", 7, null, ds_init_ercallno);
- var oParam = {};
- oParam.id = "TRMNE05202";
- oParam.service = "ercareapp.ERSmsCallBase";
- oParam.method = "reqGetErPatInfo";
- oParam.inds = "req=ds_tmp_patinfo";
- oParam.outds = "ds_erpatinfo=erpatinfo";
- oParam.async = false;
- oParam.callback = "cf_TRMNE05202";
- tranf_submit(oParam); //환자정보 가져옴
-
- var pid = ds_erpatinfo.getColumn(0,"pid");
- var nm = ds_erpatinfo.getColumn(0,"nm");
- var sa = ds_erpatinfo.getColumn(0,"sa");
- var indt = ds_erpatinfo.getColumn(0,"indt");
- var deptengabbr = ds_erpatinfo.getColumn(0,"deptengabbr");
- caption2.value = nm + "(" + pid + ") " + sa + " " + indt + " " + deptengabbr;
-
- //@부서정보 불러오기.
- var instcd = sysf_getUserInfo("dutplceinstcd");
- var standard_yn = "orduseyn";
- var ord_deptflag = "D";
- var sort_field = "depthngnm";
- var sort_method = "asc";
- //zbcfGetDeptCodeList(instcd, standard_yn, ord_deptflag, rslt_ref, sort_field, sort_method);
- appf_getDeptCodeList(instcd,standard_yn,ord_deptflag,sort_field,sort_method,"","","","ds_init_orddeptinfo",true,"");
-
- ds_cond.setColumn(0,"callcnts", "응급실 환자 " + nm + "(" + pid + ")님 진료 바랍니다. ");
- ds_cond.setColumn(0,"callpsnno", ds_init_ercallno.getColumn(0,"hardcd"));
-
- }
- function cf_TRMNE05202(sSvcId, nErrorCode, sErrorMsg) {
- if(nErrorCode < 0) return;
- }
- //의사 스케쥴 체크
- function fChkErSheduleList(){
-
- dsf_makeValue(ds_send_deptchk,"erorddeptcd","string",ds_cond.getColumn(0,"orddeptcd"));
- dsf_makeValue(ds_send_deptchk,"deptpartinfo","string",ds_cond.getColumn(0,"deptpartinfo"));
-
- var oParam = {};
- oParam.id = "TRMMO31003";
- oParam.service = "prcpmngtapp.ErMngt";
- oParam.method = "reqGetDrSheduleChk";
- oParam.inds = "req=ds_send_deptchk";
- oParam.outds = "ds_temp_erorshedulchk=shedulchk";
- oParam.async = false;
- oParam.callback = "cf_TRMMO31003";
- tranf_submit(oParam);
- if(arErrorCode.pop("TRMMO31003") < 0){
- sysf_messageBox("응급의사 스케쥴 조회를 실패하였습니다.", "E");
- }
- //var a = instance1.selectNodes("/root/temp/erorshedulchk/shedulchk");
- if(ds_temp_erorshedulchk.rowcount == 0){
- sysf_messageBox("해당부서에 응급호출 등록된 의사가 없습니다.", "E999");
- }else{
- if(ds_temp_erorshedulchk.getColumn(0,"chkflag") != "-"){
- sysf_messageBox("주치의를 선택하십시오.", "I");
- group1.cmb_erdr.setFocus();
- }
- }
- }
- function cf_TRMMO31003(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- //20091104 dhkim
- //호출 유효성 체크
- function fIsValidErCallDr(params){
- var paramArr = params.split("|");
- var pid = paramArr[0];
- var indd = paramArr[1];
- var cretno = paramArr[2];
- var visitno = paramArr[3];
- var intm = paramArr[4];
- var erorddeptcd = paramArr[5];
-
- //환자정보가 없는경우
- if(utlf_isNull(pid) || utlf_isNull(indd)|| utlf_isNull(cretno) || utlf_isNull(visitno) || utlf_isNull(intm)){
- sysf_messageBox("환자정보가 존재하지 않아 호출 할 수 없습니다.", "E");
- return false;
- }
-
- //응급호출과를 선택하지 않은경우
- if(utlf_isNull(erorddeptcd)){
- sysf_messageBox("응급호출할 과를 선택하십시오.", "E");
- return false;
- }
-
- return true;
- }
- /**
- /* 호출
- /* 수정이력 : 20091116 dhkim grtype구분자추가
- /* 수정이력 : 20100512 kimsj 호출자번호(연락처) 추가
- */
- function fErCallDr(){
- //주치의 선택
- var a = instance1.selectNodes("/root/temp/erorshedulchk/shedulchk");
- var b = ds_cond.getColumn(0,"ordrid");
- var flag = ds_temp_erorshedulchk.getColumn(0,"chkflag") ;
- if(ds_temp_erorshedulchk.rowcount >0 && b==""&& flag != "-"){
- sysf_messageBox("주치의를 선택하십시오", "E999");
- group1.cmb_erdr.setFocus();
- return;
- }
- //환자정보
- var pid = ds_erpatinfo.getColumn(0,"pid");
- var indd = ds_erpatinfo.getColumn(0,"indd");
- var cretno = ds_erpatinfo.getColumn(0,"cretno");
- var visitno = ds_erpatinfo.getColumn(0,"visitno");
- var intm = ds_erpatinfo.getColumn(0,"intm");
- var patnm = ds_erpatinfo.getColumn(0,"nm");
- var erorddeptcd = ds_cond.getColumn(0,"orddeptcd");
- var callcnts = ds_cond.getColumn(0,"callcnts");
- var deptpartinfo = ds_cond.getColumn(0,"deptpartinfo");
- var callpsnno = ds_cond.getColumn(0,"callpsnno");
- //호출전 유효성체크
- var params = pid + "|"
- + indd + "|"
- + cretno + "|"
- + visitno + "|"
- + intm + "|"
- + erorddeptcd;
- if(!fIsValidErCallDr(params)) return;
-
- //해당과의 스케쥴 조회 및 의사호출
- ds_send.clear();
- dsf_makeValue(ds_send,"pid" , "string", pid);
- dsf_makeValue(ds_send,"indd" , "string", indd);
- dsf_makeValue(ds_send,"cretno" , "string", cretno);
- dsf_makeValue(ds_send,"visitno" , "string", visitno);
- dsf_makeValue(ds_send,"erorddeptcd" , "string", erorddeptcd);
- dsf_makeValue(ds_send,"hngnm" , "string", patnm);
- dsf_makeValue(ds_send,"callcnts" , "string", callcnts);
- dsf_makeValue(ds_send,"deptpartinfo" , "string", deptpartinfo);
- dsf_makeValue(ds_send,"callpsnno" , "string", callpsnno);
- dsf_setDefaultVal(ds_send, "deptpartinfo:1");
-
- var oParam = {};
- oParam.id = "TRMMO31002";
- oParam.service = "prcpmngtapp.ErMngt";
- oParam.method = "reqGetDrSheduleList";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_temp_erorshedulelist=erorlist";
- oParam.async = false;
- oParam.callback = "cf_TRMMO31002";
- tranf_submit(oParam);
- if(arErrorCode.pop("TRMMO31002") < 0){
- sysf_messageBox("의사조회 실패하였습니다.", "E");
- return;
- }
-
- var a = instance1.selectNodes("/root/temp/erorshedulelist/erorlist");
- if(ds_temp_erorshedulelist.rowcount == 0){
- sysf_messageBox("해당부서에 응급호출 등록된 의사가 없습니다.", "E");
- return;
- }
- if(flag != "-"){
- ds_temp_erorshedulelist.setColumn(ds_temp_erorshedulelist.findRowEXPR("erorddoctcd=='"+b+"'"),"mainyn","M");
- }
- var oParam = {};
- oParam.id = "TXMMO31002";
- oParam.service = "prcpmngtapp.ErMngt";
- oParam.method = "reqSetErDrCallVisit";
- oParam.inds = "req=ds_temp_erorshedulelist";
- oParam.outds = "";
- oParam.async = false;
- oParam.callback = "cf_TXMMO31002";
- tranf_submit(oParam);
-
- if(arErrorCode.pop("TXMMO31002") > -1){
- sysf_messageBox("호출되었습니다.", "I");
- }else{
- sysf_messageBox("호출 실패하였습니다.", "E");
- }
- }
- function cf_TRMMO31002(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- function cf_TXMMO31002(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- function fGetDeptDetlFlag() {
- //var ref = "/root/send";
- //var rstRef = "/root/init/deptpartinfo";
- //var orddeptcd = model.getValue('/root/cond/orddeptcd');
- var orddeptcd = ds_cond.getColumn(0,"orddeptcd");
- dsf_makeValue(ds_send,"orddeptcd", "string",orddeptcd);
- //model.removenode("/root/main/cond/deptpartinfo");
- group1.cmb_partinfo.index = -1;
- var srchym = fGetToDaySchym();
- var srchymfirstday = srchym.concat("01");
- var srchymlastday = srchym.concat(fGetLastDay(srchym));
- dsf_makeValue(ds_send,"srchymfirstday", "string",srchymfirstday );
- dsf_makeValue(ds_send,"srchymlastday ", "string",srchymlastday );
-
- var oParam = {};
- oParam.id = "TRMMO30002";
- oParam.service = "prcpmngtapp.ErMngt";
- oParam.method = "reqGetDeptDetlInfo";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_init_deptpartinfo=partlist";
- oParam.async = false;
- oParam.callback = "cf_TRMMO30002";
- tranf_submit(oParam);
- if( arErrorCode.pop("TRMMO30002") < 0){
- sysf_messageBox("진료과별 파트정보 조회를 실패하였습니다.", "E999");
- return false;
- }
-
- //model.makeNode("/root/main/cond/deptpartinfo");
-
- }
- function cf_TRMMO30002(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- // 부서 파트 정보가 있는지 체크
- // 부서 파트 정보가 있는데 파트 정보를 입력하지 않았을 경우 true리턴
- function fChkDeptDetlFlag(){
- //var nodeList = instance1.selectNodes('/root/init/deptpartinfo/partlist');
- var deptdetlflag = ds_cond.getColumn(0,"deptpartinfo");
- //var orddeptnm = model.getValue("/root/cond/orddeptcd");
- if( ds_init_deptpartinfo.rowcount > 0 && ( utlf_isNull(deptdetlflag)) ){
- //messageBox(orddeptnm + "는 파트정보가", "I003");
- //model.removeNodeset("/root/main/workerinfo/workerinfolist");
- return true;
- }
-
- return false;
- }
- function fChkSelDeptDetlFlag(){
- //var selDeptDetlFlag = model.getValue("/root/cond/deptpartinfo");
- //var nodeList = instance1.selectNodes('/root/init/deptpartinfo/partlist');
- if ( fChkDeptDetlFlag() ){
- //cmb_partinfo.select(0);
- group1.cmb_partinfo.enable=true;
- sysf_messageBox("파트정보를 선택하십시오.", "I");
- group1.cmb_partinfo.setFocus();
- }
- else if( ds_init_deptpartinfo.rowcount > 0 ){
- group1.cmb_partinfo.enable=true;
- }
- else{
- group1.cmb_partinfo.enable=false;
- //model.removenode("/root/main/cond/deptpartinfo");
- group1.cmb_partinfo.index = -1;
- }
- }
- function fGetToDaySchym(){
- var today = new Date();
- var year = today.getFullYear();
- var month = today.getMonth()+1;
- year = year.toString();
- month = fAddZero(month);
- return year.concat(month.toString());
- }
- function fAddZero(n){
- return n < 10 ? "0" + n : n;
- }
- function fGetLastDay(mm){
- var dd = 31;
-
- switch(mm){
- case 4:
- case 6:
- case 9:
- case 11:
- dd = 30;
- break;
- case 2:
- if( (yyyy%4)==0 || (yyyy%100)==0){
- dd=29;
- }
- else{
- dd=28;
- }
- break;
- }
-
- return dd;
- }
- ]]></Script>
|