123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785 |
- <?xml version="1.0" encoding="utf-8"?>
- <FDL version="1.5">
- <TypeDefinition url="..\..\..\default_typedef.xml"/>
- <Form id="SMMNE05400" position="absolute 0 0 892 855" titletext="응급실 당직 전문의 (on-call) 스케줄 관리" oninit="SMMNE05400_oninit" onload="SMMNE05400_onload" onclose="SMMNE05400_onclose" onbeforeclose="SMMNE05400_onbeforeclose" ontimer="SMMNE05400_ontimer">
- <Layouts>
- <Layout>
- <Static text="응급실 당직 전문의 (on-call) 스케줄 관리" position="absolute 0 0 284 25" id="caption6" class="tit_1"/>
- <Shape id="line2" linetype="horizontal" class="line_10" position="absolute 0 85 360 91"/>
- <Div id="group4" taborder="2" position="absolute 0 25 360 85" class="div_SA">
- <Layouts>
- <Layout>
- <Button id="btn_search" taborder="3" text="조회" class="btn1" position="absolute 295 20 351 40" onclick="group4_btn_search_onclick" anchor="default"/>
- <Shape id="line13" linetype="vertical" class="line_4" position="absolute 285 9 291 54" anchor="default"/>
- <Static id="caption4" text="당직년월 :" class="search_name" position="absolute 7 8 98 28" anchor="default"/>
- <Static id="caption1" text="진 료 과 :" class="search_name" position="absolute 7 32 98 52" anchor="default"/>
- <Combo id="cmb_orddeptcd" taborder="5" innerdataset="@ds_init_cmb_orddeptinfolist" codecolumn="deptcd" datacolumn="deptnm" position="absolute 90 32 280 52" onitemchanged="group4_cmb_orddeptcd_onitemchanged" anchor="default" canitemchange="group4_cmb_orddeptcd_canitemchange"/>
- <Button id="btn_bfyear" taborder="6" class="icon_pre_year" position="absolute 90 10 106 26" onclick="group4_btn_bfyear_onclick" anchor="default"/>
- <Button id="btn_bfmonth" taborder="7" class="icon_pre_month" position="absolute 108 10 124 26" onclick="group4_btn_bfmonth_onclick" anchor="default"/>
- <Button id="btn_afmonth" taborder="8" class="icon_next_month" position="absolute 241 10 257 26" onclick="group4_btn_afmonth_onclick" anchor="default"/>
- <Button id="btn_afyear" taborder="9" class="icon_next_year" position="absolute 259 10 275 26" onclick="group4_btn_afyear_onclick" anchor="default"/>
- <Calendar id="ipt_srchdd" taborder="10" autoselect="true" dateformat="yyyy-MM-dd" position="absolute 129 8 236 28" style="align:center middle;"/>
- </Layout>
- </Layouts>
- </Div>
- <Grid id="grd_drlist" taborder="3" binddataset="ds_grd_drlist" useinputpanel="false" position="absolute 0 90 360 784" oncellclick="grd_drlist_oncellclick" anchor="left top bottom">
- <Formats>
- <Format id="default">
- <Columns>
- <Column size="70"/>
- <Column size="80"/>
- <Column size="70"/>
- <Column size="120"/>
- <Column size="100"/>
- </Columns>
- <Rows>
- <Row size="24" band="head"/>
- <Row size="24"/>
- </Rows>
- <Band id="head">
- <Cell text="사번"/>
- <Cell col="1" text="이름"/>
- <Cell col="2" text="nzone"/>
- <Cell col="3" text="Hp No"/>
- <Cell col="4"/>
- </Band>
- <Band id="body">
- <Cell style="selectbackground:greenyellow;" text="bind:drid"/>
- <Cell col="1" style="selectbackground:greenyellow;" text="bind:drnm"/>
- <Cell col="2" style="selectbackground:greenyellow;" text="bind:nzone"/>
- <Cell col="3" style="selectbackground:greenyellow;" text="bind:hpno"/>
- <Cell col="4" style="selectbackground:greenyellow;" text="bind:orddeptcd"/>
- </Band>
- </Format>
- </Formats>
- </Grid>
- <Shape id="roundrect3" type="roundrectangle" class="roundrect_example" position="absolute 0 785 892 855" anchor="left right bottom"/>
- <Static id="caption2" text="* on-call 시간은 평일 - 당일 17:30 ~ 익일 08:30 , 주말 및 공휴일 - 당일 08:30 ~ 익일 08:30까지 입니다." position="absolute 4 795 732 815" anchor="left bottom"/>
- <Static id="caption5" text="* on-call 명단은 반드시 전산으로 입력하여야 하며, 학회나 개인사정 등으로 수정 및 변경이 될 때에도 전산으로 입력하신 뒤 진료행정팀으로 수정된 명단을 제출하여 주시기 바랍니다." position="absolute 4 815 732 843" anchor="left bottom"/>
- <Static id="cpt_worktitle" text="당직 리스트" class="tit_2" position="absolute 362 68 650 84"/>
- <Shape id="line3" linetype="horizontal" class="line_10" position="absolute 362 85 892 91" anchor="left top right"/>
- <Button id="button42" taborder="4" text="저장" class="btn2" position="absolute 789 65 840 85" onclick="button42_onclick" anchor="top right"/>
- <Grid id="grd_workerlist" taborder="5" binddataset="ds_grd_workerlist" useinputpanel="false" position="absolute 362 90 892 784" autofittype="col" oncellclick="grd_workerlist_oncellclick" onrbuttondown="grd_workerlist_onrbuttondown" onlbuttondown="grd_workerlist_onlbuttondown" anchor="all">
- <Formats>
- <Format id="default">
- <Columns>
- <Column size="25"/>
- <Column size="120"/>
- <Column size="50"/>
- <Column size="100"/>
- <Column size="80"/>
- <Column size="120"/>
- <Column size="0"/>
- <Column size="0"/>
- <Column size="0"/>
- </Columns>
- <Rows>
- <Row size="24" band="head"/>
- <Row size="24"/>
- </Rows>
- <Band id="head">
- <Cell/>
- <Cell col="1" text="일자"/>
- <Cell col="2" text="요일"/>
- <Cell col="3" text="의사"/>
- <Cell col="4" text="n-zone"/>
- <Cell col="5" text="hp no"/>
- <Cell col="6" text="drid"/>
- <Cell col="7" text="orddeptcd"/>
- <Cell col="8" text="orddeptnm"/>
- </Band>
- <Band id="body">
- <Cell displaytype="image" style="align:center middle;"/>
- <Cell col="1" displaytype="date" text="bind:workdd" mask="yyyy-MM-dd" calendardisplaynulltype="none"/>
- <Cell col="2" text="bind:datenm"/>
- <Cell col="3" text="bind:drnm"/>
- <Cell col="4" text="bind:nzone"/>
- <Cell col="5" text="bind:hpno"/>
- <Cell col="6" text="bind:drid"/>
- <Cell col="7" text="bind:orddeptcd"/>
- <Cell col="8" text="bind:orddeptnm"/>
- </Band>
- </Format>
- </Formats>
- </Grid>
- <Button id="btn_prt" taborder="6" text="출력" class="btn6" position="absolute 841 65 892 85" onclick="btn_prt_onclick" anchor="top right"/>
- </Layout>
- </Layouts>
- <Objects>
- <Dataset id="ds_grd_workerlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false" onload="ds_grd_workerlist_onload">
- <ColumnInfo>
- <Column id="gbn" type="STRING" size="256" sumtext="구분"/>
- <Column id="workdd" type="STRING" size="256" sumtext="당직일자"/>
- <Column id="duty" type="STRING" size="256" sumtext="duty"/>
- <Column id="datenm" type="STRING" size="256" sumtext="요일"/>
- <Column id="drid" type="STRING" size="256" sumtext="당직의사id"/>
- <Column id="drnm" type="STRING" size="256" sumtext="당직의사이름"/>
- <Column id="nzone" type="STRING" size="256" sumtext="nzone"/>
- <Column id="hpno" type="STRING" size="256" sumtext="hpno"/>
- <Column id="orddeptcd" type="STRING" size="256" sumtext="기준과"/>
- <Column id="orddeptnm" type="STRING" size="256" sumtext="기준과"/>
- <Column id="confirmyn" type="STRING" size="256" sumtext="최종저장여부"/>
- </ColumnInfo>
- </Dataset>
- <Dataset id="ds_grd_drlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="drid" type="STRING" size="256" sumtext="의사사번"/>
- <Column id="drnm" type="STRING" size="256" sumtext="의사이름"/>
- <Column id="nzone" type="STRING" size="256" sumtext="nzone"/>
- <Column id="hpno" type="STRING" size="256" sumtext="휴대전화"/>
- <Column id="orddeptcd" type="STRING" size="256" sumtext="진료과"/>
- <Column id="jobposcd" type="STRING" size="256" sumtext="jobposcd"/>
- </ColumnInfo>
- </Dataset>
- <Dataset id="ds_init_cmb_orddeptinfolist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="deptcd" type="STRING" size="256" sumtext="부서코드"/>
- <Column id="deptnm" type="STRING" size="256" sumtext="부서코드"/>
- <Column id="duty" type="STRING" size="256" sumtext="duty"/>
- </ColumnInfo>
- </Dataset>
- <Dataset id="ds_init_basicinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="stime" type="STRING" size="256" sumtext="시작시간"/>
- <Column id="etime" type="STRING" size="256" sumtext="종료시간"/>
- </ColumnInfo>
- <Rows>
- <Row/>
- </Rows>
- </Dataset>
- <Dataset id="ds_init_validinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="validyn" type="STRING" size="256" sumtext="유효여부"/>
- <Column id="scheyn" type="STRING" size="256" sumtext="중복스케줄여부"/>
- <Column id="holiyn" type="STRING" size="256" sumtext="휴진등록여부"/>
- </ColumnInfo>
- <Rows>
- <Row/>
- </Rows>
- </Dataset>
- <Dataset id="ds_temp" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_cond" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="srchym" type="STRING" size="256"/>
- <Column id="srchdd" type="STRING" size="256"/>
- <Column id="orddeptcd" type="STRING" size="256"/>
- </ColumnInfo>
- <Rows>
- <Row/>
- </Rows>
- </Dataset>
- </Objects>
- <Bind>
- <BindItem id="item1" compid="group4.cmb_orddeptcd" propid="value" datasetid="ds_cond" columnid="orddeptcd"/>
- <BindItem id="item10" compid="group4.ipt_srchdd" propid="value" datasetid="ds_cond" columnid="srchdd"/>
- </Bind>
- <Script type="xscript4.0"><![CDATA[/***************************************************************************************
- * System Name :
- * Job Name :
- * Creator :
- * Make Date : 2015-11-13
- * Description :
- *---------------------------------------------------------------------------------------
- * Modify Date Modifier Modify Description
- *---------------------------------------------------------------------------------------
- * 2015-11-13 Live Converter TF->XP
- *
- *---------------------------------------------------------------------------------------
- ****************************************************************************************/
- //=======================================================================================
- // Lib Include
- //---------------------------------------------------------------------------------------
- include "com_commonxp::comm_main.xjs";
- //include "emr_carecomxp::CareCom.xjs";
- var lrow = null;
- var uIcon = 'theme://images/ico_u.png';
- var eIcon = 'theme://images/ico_e.png';
- var dIcon = 'theme://images/ico_d.png';
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /******************************************************************
- * Argument :
- * Description : 초기화 메서드
- ******************************************************************/
- function fInit(){
- var curdd = utlf_getCurrentDate();
- var curym = utlf_getCurrentDate().substring(0, 6);
- var worktitle = curym.substring(0, 4) + '년 ' + curym.substring(4, 6) + '월 전문의 당직리스트';
- cpt_worktitle.text = worktitle;
-
- ds_cond.clear();
- dsf_makeValue(ds_cond,"srchdd", "string", curdd);
- dsf_makeValue(ds_cond,"srchym", "string", curym);
- dsf_makeValue(ds_cond,"orddeptcd", "string", sysf_getUserInfo("dutplcecd"));
-
- var ds_req = dsf_createDsRow('ds_req', [
- { col: 'srchdd', type: 'string', size: 256, val: curdd }, // 당직년월
- { col: 'srchym', type: 'string', size: 256, val: curym }, // 당직년월
- { col: 'gbn', type: 'string', size: 256, val: 'E' }, // 구분
- { col: 'icucd', type: 'string', size: 256, val: ''}, // wardcd
- { col: 'csflag', type: 'string', size: 256, val: ''} // csflag
- ], false);
-
- var oParam = {};
- oParam.id = "TRMNE05401";
- oParam.service = "ercareapp.ERPatMngt";
- oParam.method = "reqGetErProfscheDeptInfo";
- oParam.inds = "req=ds_req";
- oParam.outds = "ds_init_cmb_orddeptinfolist=orddeptinfolist";
- oParam.async = false;
- //oParam.callback = "cf_TRMNE05401";
- tranf_submit(oParam);
- }
- /******************************************************************
- * Argument :
- * Description : 그리드가 변경상태인지 조회
- ******************************************************************/
- function isScheduleRefresh(isClose){
- if(!utlf_isNull(grdf_getUpdateRows('grd_workerlist', 'update'))){
- var message, id;
-
- if(isClose){
- message = '수정하신 스케줄을 저장하지 않고 창을 닫으시겠습니까?';
- id = 'Q';
- }
- else{
- message = '수정하신 스케줄을 저장하지 않고 새로운 내역을';
- id = 'Q005';
- }
- var result = 'N';
- if(sysf_messageBox(message, id) == 6){
- result = 'Y';
- }
- return result;
- }
- return 'Y';
- }
- /******************************************************************
- * Argument :
- * Description : 의사의 정보를 가져온다
- ******************************************************************/
- function fGetDrInfo(orddeptcd) {
- dsf_createDsRow('ds_send', [
- { col: 'srchdd', type: 'string', size: 256, val: ds_cond.getColumn(0,"srchdd") }, // 당직년월
- { col: 'srchym', type: 'string', size: 256, val: ds_cond.getColumn(0,"srchym") }, // 당직년월
- { col: 'gbn', type: 'string', size: 256, val: 'E' }, // 구분
- { col: 'orddeptcd', type: 'string', size: 256, val: orddeptcd }], // 기준과
- false);
-
- var oParam = {};
- oParam.id = "TRMNE05402";
- oParam.service = "ercareapp.ERPatMngt";
- oParam.method = "reqGetErProfscheDrInfo";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_grd_drlist=drinfolist";
- oParam.async = false;
- oParam.callback = "cf_TRMNE05402";
- tranf_submit(oParam);
- }
- /****************************************************************************************
- * Function : fClkArrowBtn
- * Description : 당직년월 화살표 클릭시 날자변경
- * Argument : objName : 버튼명
- * return type :
- * Creator :
- ****************************************************************************************/
- function fClkArrowBtn(objName){
- var srchdd = ds_cond.getColumn(0,"srchdd");
- var sNewdd = "";
-
-
- if(objName == "btn_bfyear") {
- sNewdd = srchdd.toDate("YYYYMMDD").getAddDate(-1, "Y").getDateFormat();
- } else if(objName == "btn_bfmonth") {
- sNewdd = srchdd.toDate("YYYYMMDD").getAddDate(-1, "M").getDateFormat();
- } else if(objName == "btn_afmonth") {
- sNewdd = srchdd.toDate("YYYYMMDD").getAddDate(1, "M").getDateFormat();
- } else if(objName == "btn_afyear"){
- sNewdd = srchdd.toDate("YYYYMMDD").getAddDate(1, "Y").getDateFormat();
- }
-
- if (!utlf_isNull(sNewdd)) {
- ds_cond.setColumn(0,"srchdd", sNewdd);
- ds_cond.setColumn(0,"srchym", sNewdd.substr(0, 6));
- }
- }
- /******************************************************************
- * Argument :
- * Description : 의사의 정보를 가져온다
- ******************************************************************/
- function cf_TRMNE05402(sSvcId, nErrorCode, sErrorMsg) {
- if(nErrorCode < 0){
- sysf_messageBox("진료과별 당직대상자 조회를 실패하였습니다.", "E999");
- return;
- }
- //grd_drlist.redraw();
- }
- /******************************************************************
- * Argument :
- * Description : 당직대상자리스트를 조회한다
- ******************************************************************/
- function fGetWorkScheduleList(orddeptcd){
-
- var srchdd = ds_cond.getColumn(0,"srchdd");
- var srchym = ds_cond.getColumn(0,"srchym");
-
- var worktitle = srchym.substring(0, 4) + '년 ' + srchym.substring(4, 6) + '월 전문의 당직리스트';
- cpt_worktitle.text = worktitle;
-
- dsf_createDsRow('ds_send', [
- { col: 'srchdd', type: 'string', size: 256, val: srchdd }, // 당직년월
- { col: 'srchym', type: 'string', size: 256, val: srchym }, // 당직년월
- { col: 'gbn', type: 'string', size: 256, val: 'E' }, // 구분
- { col: 'orddeptcd', type: 'string', size: 256, val: orddeptcd }, // 부서코드
- { col: 'monthcnt', type: 'string', size: 256,
- val: utlf_getDayCountForMonth(srchym.substring(0, 4), srchym.substring(4, 6)) } //조회년월의 마지막일
-
- ],
- false);
-
- var oParam = {};
- oParam.id = "TRMNE05403";
- oParam.service = "ercareapp.ERPatMngt";
- oParam.method = "reqGetErProfscheList";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_grd_workerlist=workerinfolist";
- oParam.async = false;
- oParam.callback = "cf_TRMNE05403";
- tranf_submit(oParam);
- }
- /******************************************************************
- * Argument :
- * Description : 당직대상자리스트 조회 후 콜백
- ******************************************************************/
- function cf_TRMNE05403(sSvcId, nErrorCode, sErrorMsg) {
- if(nErrorCode < 0){
- return;
- }
- }
- /******************************************************************
- * Argument :
- * Description : 당직대상자리스트에서 의사 삭제
- 왜? 삭제는 바로 query 를 날릴까?
- ******************************************************************/
- function fDelWorkDr(workdd, orddeptcd) {
- dsf_createDsRow('ds_refCond', [
- { col: 'workdd', type: 'string', size: 256, val: workdd },
- { col: 'gbn', type: 'string', size: 256, val: 'E' },
- { col: 'orddeptcd', type: 'string', size: 256, val: orddeptcd },
- { col: 'placecd', type: 'string', size: 256, val: '' },
- { col: 'duty', type: 'string', size: 256, val: 'A' }
-
- ],
- false);
-
- var srchym = ds_cond.getColumn(0,"srchym");
-
- // sysf_trace('srchym' + srchym);
-
- dsf_createDsRow('ds_saveinfo', [
- { col: 'orddeptcd', type: 'string', size: 256, val: orddeptcd },
- { col: 'srchym', type: 'string', size: 256, val: srchym },
- { col: 'monthcnt', type: 'string', size: 256,
- val: utlf_getDayCountForMonth(srchym.substring(0, 4), srchym.substring(4, 6)) },
- { col: 'gbn', type: 'string', size: 256, val: 'E' }
-
- ],
- false);
-
- var oParam = {};
- oParam.id = "TXMNE05402";
- oParam.service = "ercareapp.ERPatMngt";
- oParam.method = "reqDelErProfscheList";
- oParam.inds = "refCond=ds_refCond saveinfo=ds_saveinfo";
- oParam.outds = "ds_grd_workerlist=workerinfolist";
- oParam.async = false;
- oParam.callback = "cf_TXMNE05402";
-
- tranf_submit(oParam);
-
- //fGetWorkScheduleList(orddeptcd);//당직자리스트를 조회한다
- }
- function cf_TXMNE05402(sSvcId, nErrorCode, sErrorMsg) {
- if(nErrorCode < 0) return;
- fGetWorkScheduleList(ds_refCond.getColumn(0, 'orddeptcd'));//당직자리스트를 조회한다
- }
- function expr_getStatusImage(){
- }
- /******************************************************************
- * Argument :
- * Description : 선택된 의사의 당직, 휴진 정보를 조회하여
- 추가 가능 여부를 보여준다
- ******************************************************************/
- function fCheckValid(selDD, selGbn, selPlc, sColNm, drid) {
- // 시작/종료일시 기준자료 조회
- // 쿼리에 사용될 Dataset 생성
- ds_send.clear();
- dsf_createDsRow('ds_send', [
- { col: 'workdd', type: 'string', size: 256, val: selDD },
- { col: 'hugbn', type: 'string', size: 256, val: 'Y' },
- { col: 'duty', type: 'string', size: 256, val: 'A' },
- { col: 'cdgrupid', type: 'string', size: 256, val: 'P15' }
- ],
- false);
-
- var oParam = {};
- oParam.id = "TRMNE05404";
- oParam.service = "ercareapp.ERPatMngt";
- oParam.method = "reqGetDrScheErTimeByDate";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_init_basicinfo=basicinfo";
- oParam.async = false;
- //oParam.callback = "cf_TRMNE05404";
- tranf_submit(oParam);
-
- var fromtm = ds_init_basicinfo.getColumn(0, 'stime');
- var totm = ds_init_basicinfo.getColumn(0, 'etime');
-
- // 휴진내역이 있는지 점검
- // 무슨 내용인지 모르겠다...
- //var selDuty = sColNm.substr(5, 1).toUpperCase();
- var fromdt, todt;
-
- ds_send.clear();
- // 쿼리에 사용될 Dataset 생성
- dsf_createDsRow('ds_send', [
- { col: 'workdd', type: 'string', size: 256, val: selDD },
- { col: 'gbn', type: 'string', size: 256, val: selGbn },
- { col: 'placecd', type: 'string', size: 256, val: selPlc },
- { col: 'duty', type: 'string', size: 256, val: 'A' },
- { col: 'drid', type: 'string', size: 256, val: drid },
- { col: 'fromtm', type: 'string', size: 256, val: fromtm },
- { col: 'totm', type: 'string', size: 256, val: totm }
- ],
- false);
-
- var oParam = {};
- oParam.id = "TRMNE09002";
- oParam.service = "ercareapp.ERPatMngt";
- oParam.method = "reqGetDrScheValidInfo";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_init_validinfo=validinfo";
- oParam.async = false;
- //oParam.callback = "cf_TRMNE09002";
- tranf_submit(oParam);
-
- var sValidYn = ds_init_validinfo.getColumn(0, 'validyn');
- var sScheYn = ds_init_validinfo.getColumn(0, 'scheyn');
- var sHoliYn = ds_init_validinfo.getColumn(0, 'holiyn');
-
- // 유효하지 않다면 메시지 박스를 보여준다
- if(sValidYn == 'N'){
- sysf_trace('sValidYn: ' + sValidYn + ', sScheYn: ' + sScheYn + ', sHoliYn: ' + sHoliYn);
- if(sScheYn == 'Y' && sHoliYn == 'N'){
- sysf_messageBox('같은 일자에 등록된 당직 정보가 있습니다.', 'E999');
- }
- else if(sScheYn == 'N' && sHoliYn == 'Y'){
- sysf_messageBox('해당 일자에 등록된 휴진 정보가 있습니다.', 'E999');
- }
- else if(sScheYn == 'Y' && sHoliYn == 'Y'){
- sysf_messageBox('같은 일자에 등록된 당직정보와 해당 일자에 등록된 휴진 정보가 있습니다.', 'E999');
- }
- return false;
- };
- return true;
- }
- //=======================================================================================
- // Event
- //---------------------------------------------------------------------------------------
- /******************************************************************
- * Argument :
- * Description : oninit 이벤트
- ******************************************************************/
- function SMMNE05400_oninit(obj:Form, e:InitEventInfo){
-
- }
- /******************************************************************
- * Argument :
- * Description : onload 이벤트
- ******************************************************************/
- function SMMNE05400_onload(obj:Form, e:LoadEventInfo){
- // 화면공통
- frmf_initForm(obj);
-
- //속도개선
- this.setTimer(0, 100);
- //fInit();
-
- //grdf_setRowTypeIcon(grd_workerlist, 0);
- //grdf_initGrid(grd_drlist);
- //grdf_initGrid(grd_workerlist);
-
- // grd_drlist.enableredraw = false;
- // grd_workerlist.useselcolor = false;
- // grd_workerlist.enableredraw = false;
- }
- /******************************************************************
- * Argument :
- * Description : onclose 이벤트
- ******************************************************************/
- function SMMNE05400_onclose(obj:Form, e:CloseEventInfo){
-
- }
- /******************************************************************
- * Argument :
- * Description : 조회 버큰 클릭 이벤트
- ******************************************************************/
- function group4_btn_search_onclick(obj:Button, e:ClickEventInfo){
- var isRefresh = isScheduleRefresh(false);
-
- if(isRefresh == 'N'){
- return;
- }
- var orddeptcd = group4.cmb_orddeptcd.value;
- if(utlf_isNull(orddeptcd)){
- sysf_messageBox("선택된 진료과가 없습니다.", "E999");
- return;
- }
- fGetDrInfo(orddeptcd); //선택된 진료과의 의사리스트조회
- fGetWorkScheduleList(orddeptcd);
- }
- /******************************************************************
- * Argument :
- * Description : bfmonth 버큰 클릭 이벤트
- ******************************************************************/
- function group4_btn_bfmonth_onclick(obj:Button, e:ClickEventInfo){
- fClkArrowBtn(obj.name);
- }
- /******************************************************************
- * Argument :
- * Description : afmonth 버튼 클릭 이벤트
- ******************************************************************/
- function group4_btn_afmonth_onclick(obj:Button, e:ClickEventInfo){
- fClkArrowBtn(obj.name);
- }
- /******************************************************************
- * Argument :
- * Description : bfyear 버튼 클릭 이벤트
- ******************************************************************/
- function group4_btn_bfyear_onclick(obj:Button, e:ClickEventInfo){
- fClkArrowBtn(obj.name);
- }
- /******************************************************************
- * Argument :
- * Description : afyear 버튼 클릭 이벤트
- ******************************************************************/
- function group4_btn_afyear_onclick(obj:Button, e:ClickEventInfo){
- fClkArrowBtn(obj.name);
- }
- var goback = false;
- /******************************************************************
- * Argument :
- * Description : 콤보 박스 아이템 변경 전 이벤트
- ******************************************************************/
- function group4_cmb_orddeptcd_canitemchange(obj:Combo, e:ItemChangeEventInfo){
- var isRefresh = isScheduleRefresh(false);
-
- if(isRefresh == 'N'){
- //goback = true;
- return false;
- }
- var orddeptcd = obj.innerdataset.getColumn(e.postindex, 'deptcd');
-
- fGetDrInfo(orddeptcd);
- fGetWorkScheduleList(orddeptcd);
- }
- /******************************************************************
- * Argument :
- * Description : 콤보 박스 아이템 변경 후 이벤트
- ******************************************************************/
- function group4_cmb_orddeptcd_onitemchanged(obj:Combo, e:ItemChangeEventInfo){
- if(goback){
- obj.index = e.preindex;
- goback = false;
- }
-
- }
- /******************************************************************
- * Argument :
- * Description :
- ******************************************************************/
- function grd_drlist_oncellclick(obj:Grid, e:GridClickEventInfo){
- lrow = e.row;
- //grd_drlist.redraw();
- }
- /******************************************************************
- * Argument :
- * Description : workerlist 마우스 우측버튼 클릭
- ******************************************************************/
- function grd_workerlist_onrbuttondown(obj:Grid, e:GridMouseEventInfo){
- var workdd = ds_grd_workerlist.getColumn(e.row, 'workdd');
- var drnm = ds_grd_workerlist.getColumn(e.row, 'drnm');
- var deptcd = ds_grd_workerlist.getColumn(e.row, 'orddeptcd');
-
- if(sysf_messageBox('[' + workdd + '/' + drnm+ '] 일정을', 'Q001') == 6){
- // 해당 일자에 사용자를 삭제한다
- fDelWorkDr(workdd, deptcd);
- }
- }
- /******************************************************************
- * Argument :
- * Description : workerlist 마우스 좌측버튼 클릭
- ******************************************************************/
- function grd_workerlist_onlbuttondown(obj:Grid, e:GridMouseEventInfo)
- {
-
- }
- /******************************************************************
- * Argument :
- * Description : 저장 버튼 클릭
- ******************************************************************/
- function button42_onclick(obj:Button, e:ClickEventInfo){
- var orddeptcd = ds_grd_workerlist.getColumn(0, 'orddeptcd');
- var srchym = ds_cond.getColumn(0,"srchym");
-
-
- dsf_createDsRow('ds_saveinfo', [
- { col: 'orddeptcd', type: 'string', size: 256, val: orddeptcd },
- { col: 'srchym', type: 'string', size: 256, val: srchym },
- { col: 'gbn', type: 'string', size: 256, val: 'E'},
- { col: 'monthcnt', type: 'string', size: 256,
- val: utlf_getDayCountForMonth(srchym.substr(0, 4), srchym.substr(4, 6)) }
- ],
- false);
-
- var oParam = {};
- oParam.id = "TXMNE05401";
- oParam.service = "ercareapp.ERPatMngt";
- oParam.method = "reqExecErProfscheList";
- oParam.inds = "refCond=ds_grd_workerlist saveinfo=ds_saveinfo";
- oParam.outds = "ds_grd_workerlist=workerinfolist";
- oParam.async = false;
- //oParam.callback = "cf_TXMNE05401";
- tranf_submit(oParam);
- }
- /******************************************************************
- * Argument :
- * Description : 출력 버튼 클릭
- ******************************************************************/
- function btn_prt_onclick(obj:Button, e:ClickEventInfo){
- // DOM 객체 설정
-
- var srchym = new String(group4.ipt_srchdd.value);
- trace(srchym);
- var worktitle = srchym.substring(0, 4) + '년 ' + srchym.substring(4, 6) + '월 전문의 당직리스트';
- var deptnm = group4.cmb_orddeptcd.text;
-
- ds_grd_workerlist.updatecontrol = false;
- ds_grd_workerlist.addColumn("orddeptnm","string");
- for (i=0; i<ds_grd_workerlist.rowcount; i++){
- ds_grd_workerlist.setColumn(i,"orddeptnm",deptnm);
- }
- ds_grd_workerlist.updatecontrol = true;
-
- var objDOM = rptf_createDOM();
- // 데이터셋 1
-
- rptf_setNodeListToDOM(objDOM, "root/main/workerinfo/workerinfolist", ds_grd_workerlist);
- rptf_setValueToDOM(objDOM, "/root/main/titleinfo/worktitle", worktitle);
-
-
- // 최상의노드 XML 스트링 추출
- var objParam = new Object();
- objParam.xml_data_XML1 = objDOM.documentElement.source;
-
- var option = "open=1;save=1;directprint=0;print=1;zoom=0;";
- rptf_exeReportPreview30(["RPMNE05400"],[objParam], option);
- }
- /******************************************************************
- * Argument :
- * Description : onbeforeclose 클릭
- ******************************************************************/
- function SMMNE05400_onbeforeclose(obj:Form, e:CloseEventInfo)
- {
- var isRefresh = isScheduleRefresh(false);
-
- if(isRefresh == 'N'){
- //goback = true;
- return false;
- }
- }
- function SMMNE05400_ontimer(obj:Form, e:TimerEventInfo)
- {
- if (e.timerid == 0) {
- this.killTimer(0);
- fInit();
-
- grdf_setRowTypeIcon(grd_workerlist, 0);
- grdf_initGrid(grd_drlist);
- grdf_initGrid(grd_workerlist);
- }
-
- }
- function grd_workerlist_oncellclick(obj:Grid, e:GridClickEventInfo)
- {
- // 좌측에 선택된 의사가 없으면 동작하면 안된다
- if(utlf_isNull(lrow)){
- return;
- }
-
- //선택된 당직대상자정보(id, nm)
- var drid = ds_grd_drlist.getColumn(lrow, 'drid');
- var drnm = ds_grd_drlist.getColumn(lrow, 'drnm');
- var orddeptcd = ds_grd_drlist.getColumn(lrow, 'orddeptcd');
- var nzone = ds_grd_drlist.getColumn(lrow, 'nzone');
- var hpno = ds_grd_drlist.getColumn(lrow, 'hpno');
- var selectedDD = ds_grd_workerlist.getColumn(e.row, 'workdd'); //선택된일자
-
- if(fCheckValid(selectedDD, 'E', '-', '', drid)){
- ds_grd_workerlist.setColumn(e.row, 'drid', drid);
- ds_grd_workerlist.setColumn(e.row, 'drnm', drnm);
- ds_grd_workerlist.setColumn(e.row, 'orddeptcd', orddeptcd);
- ds_grd_workerlist.setColumn(e.row, 'nzone', nzone);
- ds_grd_workerlist.setColumn(e.row, 'hpno', hpno);
- }
- }
- ]]></Script>
- </Form>
- </FDL>
|