123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332 |
- <?xml version="1.0" encoding="utf-8"?>
- <Script type="xscript4.0"><![CDATA[/*
- - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
- 입원예약내역 (SPMMO14800_입원예약내역.xrw - JScript )
- - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
- */
- var sINREQFRMINFO_PATH = ds_main_inreqfrminfo_inreqfrminfo;
- var sINREQHISTLIST_PATH = ds_main_inreqhistinfo_inreqhistlist;
- /**
- * @desc : 입원결정서 내역 조회
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fInitialize_SPMMO14800(){
- ds_main_inreqhistinfo_inreqhistlist.clearData();
-
- var arrParam = [{dsNm: "ds_init_inrsrvcnclresn_P0020", cdGrpId: "P0020"},
- {dsNm: "ds_init_specroomyn_P0378", cdGrpId: "P0378"}];
- appf_getCodeList(arrParam);
-
- rdo_specroomyn.position.height = Math.ceil(ds_init_specroomyn_P0378.rowcount / 3) * 15;
-
- if( Math.ceil(ds_init_specroomyn_P0378.rowcount / 3) > 2 ){
- //this.position.height += (Math.ceil(ds_init_specroomyn_P0378.rowcount / 3) - 2) * 15;
- this.scrollbars = "alwaysvert";
- }else{
- this.scrollbars = "autoboth";
- }
-
- lf_mmbfGetDeptCodeComboList(ds_init_orddept_dept, "D");
- ds_main_cond.setColumn(0, "year" , utlf_getCurrentDate().substr(0, 4)); //year
- ds_main_cond.setColumn(0, "month", utlf_getCurrentDate().substr(4, 2)); //month
-
- //grd_calendar.dataheight = 31; // grid data height default set
- fReqInReqCalendar(); //달력조회
- }
- /**
- * @desc : 입원결정서 내역 조회
- * @
- * @param : pid - 등록번호
- * : inrsrvacptseqno- 입원예약번호
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fReqInReqHistList(pid, inrsrvacptdd, orddeptcd, inrsrvacptseqno){
-
- ds_send_reqdata.setColumn(0, "pid" , pid);
- ds_send_reqdata.setColumn(0, "inrsrvacptdd" , inrsrvacptdd);
- ds_send_reqdata.setColumn(0, "orddeptcd" , orddeptcd);
- ds_send_reqdata.setColumn(0, "inrsrvacptseqno" , inrsrvacptseqno);
- ds_send_reqdata.setColumn(0, "queryflag", "nurse"); //간호 조회용 쿼리, 미래일자 입원결정서는 조회하지 않는다.
-
- var oParam = {};
- oParam.id = "TRMMO00109";
- oParam.service = "prcpmngtapp.EtcPrcpMngt";
- oParam.method = "reqGetInReqHistList";
- oParam.inds = "req=ds_send_reqdata";
- oParam.outds = "ds_main_inreqhistinfo_inreqhistlist=inreqhistlist ds_main_inreqhistinfo_diagcdlist=diagcdlist ds_main_inreqhistinfo_opcdlist=opcdlist ds_main_inreqhistinfo_dschchkyn=dschchkyn";
- oParam.async = false;
- oParam.callback = "cf_TRMMO00109";
- tranf_submit(oParam);
-
- if( arErrorCode.pop("TRMMO00109") > -1 ){
- fDispInReqHistInfo(0);
- }
- fReqInReqDiagOpList(); //입원결정서 진단,수술조회
- }
- function cf_TRMMO00109(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
-
- if( !utlf_isNull(ds_main_inreqhistinfo_inreqhistlist.getColumnInfo("orddeptcd")) ){
- ds_main_inreqhistinfo_inreqhistlist.addColumn("orgorddeptcd", "string");
- //ds_main_inreqhistinfo_inreqhistlist.updateColID("orddeptcd", "orgorddeptcd");
- for(var i =0; i< ds_main_inreqhistinfo_inreqhistlist.rowcount; i++){
- ds_main_inreqhistinfo_inreqhistlist.setColumn(i, "orgorddeptcd", ds_main_inreqhistinfo_inreqhistlist.getColumn(i, "orddeptcd"));
- }
- }
- if( !utlf_isNull(ds_main_inreqhistinfo_opcdlist.getColumnInfo("diagcd")) ){
- ds_main_inreqhistinfo_opcdlist.updateColID("diagcd", "orgopcd");
- }
- }
- /**
- * @desc : 입원내역 리스트 클릭시 -> 입원내역 정보 display
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fDispInReqHistInfo(currow){
- var orddeptcd = sINREQHISTLIST_PATH.getColumn(currow, "orddeptcd");
- if( utlf_isNull(orddeptcd) ){
- return;
- }
- lf_mmbfGetUserComboList(ds_init_userlist_usercombo, orddeptcd, "0330");
-
- sINREQFRMINFO_PATH.clearData();
- sINREQFRMINFO_PATH.addRow();
- sINREQFRMINFO_PATH.copyRow(0, sINREQHISTLIST_PATH, currow);
- }
- /**
- * @desc : 입원의뢰서 진단,수술 리스트 조회
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fReqInReqDiagOpList(){
-
- var pid = sINREQFRMINFO_PATH.getColumn(0, "pid");
- var inhopedd = sINREQFRMINFO_PATH.getColumn(0, "inhopedd");
- var orddeptcd= sINREQFRMINFO_PATH.getColumn(0, "orddeptcd");
- var orddrid = sINREQFRMINFO_PATH.getColumn(0, "orddrid");
-
- if( utlf_isNull(pid) || utlf_isNull(inhopedd) || utlf_isNull(orddeptcd) || utlf_isNull(orddrid) ){ //입원결정서가 없는 경우,
- return; //입원결정서 진단을 조회하지 않는다.
- }
- ds_send_reqdata.setColumn(0, "pid" , pid);
- ds_send_reqdata.setColumn(0, "orddd" , inhopedd); //입원희망일자
- ds_send_reqdata.setColumn(0, "cretno" , 0);
- ds_send_reqdata.setColumn(0, "orddeptcd", orddeptcd);
- ds_send_reqdata.setColumn(0, "orddrid" , orddrid);
-
- var oParam = {};
- oParam.id = "TRMMO00112";
- oParam.service = "prcpmngtapp.PatDiagMngt";
- oParam.method = "reqGetInReqDiagInfo";
- oParam.inds = "req=ds_send_reqdata";
- oParam.outds = "ds_main_diaginfo_diagcdlist=diagcdlist ds_main_diaginfo_opcdlist=opcdlist";
- oParam.async = false;
- //oParam.callback = "cf_TRMMO00112";
- tranf_submit(oParam);
-
- ds_main_diaginfo_diagcdlist.rowposition = -1;
- ds_main_diaginfo_opcdlist.rowposition = -1;
- }
- /**
- * @desc : 입원의뢰서 달력 조회
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fReqInReqCalendar(){
- ds_main_week_week.clearData();
- ds_main_calendar_calendar.clearData();
- var year = ds_main_cond.getColumn(0, "year");
- var month = ds_main_cond.getColumn(0, "month");
- var orgyear = year;
- var orgmonth = month;
- ds_send_reqdata.setColumn(0, "fromdd" , year + "-" + month + "-" + "01");
- if( month == 12 ){ //12월인 경우, 해를 넘겨서 계산한다.
- year++;
- month = "01";
- }else{
- month = eval(month) + 1;
- if( month < 10 ){ month = "0".concat(month); }
- }
- ds_send_reqdata.setColumn(0, "todd" , year + "-" + month + "-" + "01");
- ds_send_reqdata.setColumn(0, "basedd" , ("" + orgyear + "").concat(orgmonth));
- ds_send_reqdata.setColumn(0, "orddeptcd", sINREQFRMINFO_PATH.getColumn(0, "orddeptcd"));
-
- var oParam = {};
- oParam.id = "TRMMO00110";
- oParam.service = "prcpmngtapp.EtcPrcpMngt";
- oParam.method = "reqGetInReqCalendar";
- oParam.inds = "req=ds_send_reqdata";
- oParam.outds = "ds_main_calendar_calendar=calendar";
- oParam.async = false;
- oParam.callback = "cf_TRMMO00110";
- tranf_submit(oParam);
-
- if( arErrorCode.pop("TRMMO00110") > -1 ){
- fMakeCalendar(); //조회 후 달력 값을 설정
- }
- }
- function cf_TRMMO00110(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- /**
- * @desc : 달력값 설정
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fMakeCalendar(){
-
- ds_main_week_week.addRow();
- var row = -1;
- var col = 0;
- var patsum = 0;
- var totcnt = ds_main_calendar_calendar.rowcount;
-
- var sExprColor = "EXPR(";
-
- for( var i=0 ; i<totcnt ; i++ ){
- row = ds_main_calendar_calendar.getColumn(i, "week")-1;
- col = ds_main_calendar_calendar.getColumn(i, "day") - 1;
- patsum = ds_main_calendar_calendar.getColumn(i, "patsum");
- dutflag = ds_main_calendar_calendar.getColumn(i, "dutflag");
- if( dutflag == 4 ){ //토
- sExprColor += "currow == "+row+" && self.col == "+col+" ? '#0000FF' : ";
- //grd_calendar.cellstyle("color", row, col) = "#0000FF";
-
- }else if( dutflag == 8 ){ //일
- sExprColor += "currow == "+row+" && self.col == "+col+" ? '#FF0000' : ";
- //grd_calendar.cellstyle("color", row, col) = "#FF0000";
-
- }else{ //휴일
- sExprColor += "currow == "+row+" && self.col == "+col+" ? '#000000' : ";
- //grd_calendar.cellstyle("color", row, col) = "#000000";
-
- }
-
- var sColNm = grd_calendar.getCellProperty("Body", col, "text").replace("bind:", "");
- ds_main_week_week.setColumn(row, sColNm, (i+1) + "\n(" + patsum + ")");
-
- if( col == 6 ){
- ds_main_week_week.addRow();
- }
- }
-
- sExprColor += "''";
-
- for( var i=0 ; i<grd_calendar.getCellCount("Body") ; i++ ){
- grd_calendar.setCellProperty("Body", i, "color", sExprColor);
- grd_calendar.setCellProperty("Body", i, "color2", sExprColor);
- grd_calendar.setCellProperty("Body", i, "selectcolor", sExprColor);
- }
-
- ds_main_week_week.rowposition = -1;
- }
- /**
- * @desc : 달력 년도 변경 버튼 클릭
- * @
- * @param : pflag - bf 이전 해
- * - af 다음 해
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fClkBtnYear(pflag){
- ds_main_week_week.clearData();
- var year = ds_main_cond.getColumn(0, "year");
-
- if( pflag == "bf" ){
- ds_main_cond.setColumn(0, "year", --year);
- }else if( pflag == "af" ){
- ds_main_cond.setColumn(0, "year", ++year);
- }
- fReqInReqCalendar();
- }
- /**
- * @desc : 당력 월 변경 버튼 클릭
- * @
- * @param : pflag - bf 이전 해
- * - af 다음 해
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fClkBtnMonth(pflag){
- ds_main_week_week.clearData();
- var year = ds_main_cond.getColumn(0, "year");
- var month = ds_main_cond.getColumn(0, "month");
-
- if( pflag == "af" ){
- month = eval(month) + 1;
- if( month == 13 ){
- year = eval(year) + 1;
- month = "01";
- }else if( month < 10 ){ //2자리가 아닌 경우, 앞자리에 0을 붙인다.
- month = "0".concat(month);
- }
-
- }else if( pflag == "bf" ){
- month -= 1;
- if( month == 0 ){
- year -= 1;
- month = 12;
- }else if( month < 10 ){ //2자리가 아닌 경우, 앞자리에 0을 붙인다.
- month = "0".concat(month);
- }
- }
- ds_main_cond.setColumn(0, "year", year);
- ds_main_cond.setColumn(0, "month", month);
-
- fReqInReqCalendar();
- }
- function fReqPatInfo(pid){
- if(pid != ""){
- fReqInReqHistList(pid); //입원내역조회
-
- fReqInReqDiagOpList(); //입원결정서 진단,수술조회
- }
- }
- ]]></Script>
|