123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135 |
- <?xml version="1.0" encoding="utf-8"?>
- <Script type="xscript4.0"><![CDATA[/***************************************************************************************
- * System Name : HIT
- * Job Name :
- * File Name : comm_app.xjs
- * Creator : 임준호
- * Make Date : 2014-02-18
- *
- * Description :
- *---------------------------------------------------------------------------------------
- * Modify Date Modifier Modify Description
- *---------------------------------------------------------------------------------------
- * 2014-02-18 HIT
- *
- *---------------------------------------------------------------------------------------
- ****************************************************************************************/
-
- /********************************************************************************************************************/
- /************************* 공통코드 API 관련 함수 *****************************************************************/
- /********************************************************************************************************************/
- // appf_showValue : 공통 코드 콤보박스에 code컬럼을 표시한다. (2014-04-07 신규)
- // appf_getCodeList : 공통 코드를 가져온다. (cache or transaction) (2014-04-07 수정)
- // appf_getCodeListSubmit : 공통 코드를 DB에서 가져온다. (only transaction) (2014-04-07 수정)
- // appf_getKindCodeList : 유형 코드를 가져온다. (cache or transaction)
- // appf_getKindCodeListSubmit : 유형 코드를 DB에서 가져온다. (only transaction)
- // appf_getAllKindCodeList : 모든 유형코드를 가져온다.
- // appf_getSubCodeList : 상하위 관계 코드를 가져온다.
- // appf_openCodeList : 코드목록 조회 팝업
- // appf_openKindCodeList : 유형코드목록 조회 팝업
- // appf_openCodeGroupList : 코드그룹목록 조회 팝업
- // appf_openAllKindCodeList : 모든 유형코드목록 조회 팝업
- // appf_openBizCodeList : 업무규칙 목록 조회 팝업
- // appf_getSubCodeGroupList : 하위 코드군 목록을 가져온다.
- // appf_getUserCodeList : 사용자 코드를 가져온다.
- // appf_ContainsUserCD : 사용자코드에 해당 파라미터의 코드 값이 존재 하는지 여부를 체크 한다.
- /********************************************************************************************************************/
- /************************* 통합부서 API 관련 함수 *****************************************************************/
- /********************************************************************************************************************/
- // appf_openDeptCodeList : 부서코드목록 조회 팝업
- // appf_openMasterDeptCodeList : 통합부서검색 팝업
- // appf_openInstDeptCodeList : 근무지 기관 기준 부서코드목록 조회 팝업
- // appf_openAssignedInstDeptCodeList : 전체 기관 기준 부서코드목록 조회 팝업
- // appf_openAssignedInstDeptCodeBaseDDList : 전체 기관 기준 부서코드목록 조회 팝업, 기준일자 조건 추가
- // appf_getDeptCodeList : 부서코드목록 조회
- // appf_getInsuExecDeptList : 보험수행구분부서콤보
- // appf_getInOrdDeptList : 입원진료과 목록을 조회
- // appf_getOutOrdDeptList : 외래진료과 목록을 조회
- // appf_getCareOutOrderDepartmentList : 간호기준의 외래진료부서를 조회
- // appf_getCntrOrdKindDepartmentList : 진료부서구분이 센터로 등록된 부서를 조회
- // appf_getCntrSubOrdDepartmentList : 센터에 속한 하위의 진료부서를 조회한다. 진료부서구분이 센터로 등록된 부서를 선택하면 그 하위에 해당하는 진료 부서만 출력한다.
- // appf_getClsDeptList : 지정된 대표과의 분과 목록을 출력한다.
- // appf_getInClsDeptList : (입원)지정된 대표과의 분과 목록을 출력한다.
- // appf_getOutClsDeptList : (외래)지정된 대표과의 분과 목록을 출력한다.
- // appf_getInOutClsDeptList : (외래, 입원)지정된 대표과의 분과 목록을 출력한다.
- // appf_getInOutOrdDeptList : 외래/입원 진료과 목록을 조회
- // appf_getWardDeptList :
- // appf_openDeptListFromTree : 각 트리에 속해있는 아이템중 부서코드 목록을 조회한다. 과거, 현재, 미래이력 조회 (우선순위 현재>미래>과거)
- /********************************************************************************************************************/
- /************************* 사용자조회 API 관련 함수 **************************************************************/
- /********************************************************************************************************************/
- // appf_openUserInfoList : 사용자 기본 정보 조회 팝업
- // appf_getOrdDeptDoctorList : 진료의 목록
- // appf_getInOrdDeptDoctorList : 입원 진료의 목록
- // appf_getOutOrdDeptDoctorList : 외래 진료의 목록
- // appf_getInOutOrdDeptDoctorList : 입원외래통합 진료의 목록
- // appf_getCntrOrdDeptDoctorList :
- // appf_openUserInfo : 사원기본정보조회 팝업
- // appf_openEmployee : 교직원기본정보조회 팝업
- // appf_openTeamMember : 근무지별사용자조회 팝업
- // appf_getUserInfoCombo : 로그인한 기관의 '근무지코드'를 검색조건으로 근무지코드에 속한 사용자 조회
- /********************************************************************************************************************/
- /************************* hismain 공통 화면 ***********************************************************************/
- /********************************************************************************************************************/
- // appf_openPasswordValidate : 로그인 비밀번호 확인 화면 호출
- // appf_openNoticePopup : 공지사항 팝업화면을 띄우는 함수
- // appf_openTargetPopup : 공지사항이 보여질 사용자 선택
- /********************************************************************************************************************/
- /************************* 환자상단 관련 함수 *********************************************************************/
- /********************************************************************************************************************/
- // appf_initPatientInfo : 환자정보 초기화
- // appf_setPatientInfo : 환자정보 셋팅
- // appf_setPatientInfos : 환자정보 전체 저장
- // appf_delPatientInfos : 환자정보 삭제
- // appf_getPatientInfo : 환자정보 조회
- // appf_getPatientInfos : 환자기본정보 전체 조회
- // appf_getPatientInfosWithName : 환자기본정보 전체 조회(컬럼명포함)
- // appf_getPatientId : 환자번호 조회
- // appf_getPatientName : 환자명 조회
- // appf_setPatientFlag : 환자구분을 설정한다.
- // appf_setPatientInfoDetail : 환자구분에 따른 상세정보를 설정한다.
- // appf_setPatientInfoDetailByKey : 환자상세정보를 key 별로 저장한다. 반드시 setPatientInfoDetail(objDsSrc) 를 통해 최초 한번은 환자상세정보를 설정해야 한다.
- // appf_getPatientInfoDetail : 환자구분에 따른 상세정보를 key에 해당하는 value반환한다.
- // appf_setOperationInfo : 수술관련 상세정보를 설정한다.(fCheckPatientId-확인필요)
- // appf_setOperationInfoDetailByKey : 수술관련 상세정보를 key 별로 설정한다. 반드시 setOperationInfo(objDsSrc) 를 통해 최초 한번은 수술정보를 설정해야 한다.
- // appf_getOperationInfo : key에 해당하는 수술관련 정보를 반환한다.
- // appf_getOperationInfos : 수술관련 정보를 지정한 dataset으로 모두 복사한다.
- // appf_setConsultInfo : 협진관련 상세정보를 설정한다.
- // appf_setConsultInfoDetailByKey : 협진관련 상세정보를 key 별로 저장한다. 반드시 setConsultInfo(objDsSrc) 를 통해 최초 한번은 협진정보를 설정해야 한다.
- // appf_getConsultInfo : key에 해당하는 협진관련 정보를 반환한다.
- // appf_getConsultInfos : 협진관련 정보를 지정한 노드로 모두 copyNode한다.
- /********************************************************************************************************************/
- /************************* 설명처방 관련 함수 *********************************************************************/
- /********************************************************************************************************************/
- // appf_openHiChart : 설명처방 창 열기
- // appf_sendHiChartLMS : 설명처방 문자 전송
- /********************************************************************************************************************/
- /************************* 공통코드 API 관련 함수 *****************************************************************/
- /********************************************************************************************************************/
- /**********************************************************************************
- * 함 수 명 : appf_showValue
- * 설 명 : 공통 코드 콤보박스에 code컬럼을 표시한다.
- * argument : 01.objDs - dataset object
- * return Type :
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_showValue(objDs:Dataset, sId, sNm){
- if( utlf_isNull(sId) ){
- sId = "cdid";
- }
- if( utlf_isNull(sNm) ){
- sNm = "cdnm";
- }
- var nRowCnt = objDs.rowcount;
- for(var i=0 ; i<nRowCnt ; i++){
- var sItemCd = utlf_transNullToEmpty(objDs.getColumn(i, sId));
- var sItemNm = utlf_transNullToEmpty(objDs.getColumn(i, sNm));
- var sMergeItemNm = "["+sItemCd+"]"+" "+sItemNm;
- objDs.setColumn(i, sNm, sMergeItemNm);
- }
- }
- /**********************************************************************************
- * 함 수 명 : appf_getCodeList
- * 설 명 : 공통 코드를 가져온다.
- * argument : arrParam
- * # cdGrpId(필수) - 코드ID
- * # dsNm(필수) - 가져온 코드를 담을 dataset 명
- * # sortField(선택) - 정렬할 컬럼명 (cdid, cdnm, dispseq)
- * # sortMehotd(선택) - 정렬 방법 (asc, desc)
- * # showValue(선택) - code column을 datacolumn과 같이 표시한다.(출력예 : [001] 등록비 )
- * 작성예) [{dsNm: "ds_code_1", cdGrpId: "R3310", sortField: "cdnm", sortMehotd: "desc", showValue:true}
- * , {dsNm: "ds_code_2", cdGrpId: "R3310", sortField: "cdnm", sortMehotd: "desc", showValue:true}]
- * bMinimum - true, false
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type :
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getCodeList(arrParam, bMinimum, bAsync, sCallback){
-
- //appf_getCodeListSubmit 인자값
- var arrSubmitParam = new Array();
-
- //비동기 여부가 null일때 false
- //기본 비동기
- if(utlf_isNull(bAsync)){
- bAsync = false;
- }
-
- //minimun default값은 true
- if(utlf_isNull(bMinimum)){
- bMinimum = true;
- }
-
- for(var i in arrParam){
- var bIsCached = false;
- var dsCachedDs = null;
-
- if(utlf_isNull(arrParam[i].showValue)) arrParam[i].showValue = false;
-
- //Quick View를 위하여 예외처리함. Quick View실행 시 submit을 실행한다.
- try {
- dsCachedDs = agv_objAppTopPath.form.getComnCodeCache(arrParam[i].cdGrpId);
- }catch (e){
- sysf_catchTrace(e);
- }
-
- // minumum이 true이고 sortfield_list와 sortmethod_list가 null인 경우에만 cache에서 조회한다.
- if(bMinimum && utlf_isNull(arrParam[i].sortField) && utlf_isNull(arrParam[i].sortMehotd)){
- bIsCached = true;
- }
-
- //cdGrpId로 가져온 cached ds가 null이면 db에서 코드를 가져온다.
- if(utlf_isNull(dsCachedDs)){
- bIsCached = false;
- }
-
- //cdGrpId로 가져온 cached ds가 null이면 db에서 코드를 가져온다.
- // if(utlf_isNull(dsCachedDs)){
- // bIsCached = false;
- // }else{
- // if(utlf_isNull(bMinimum)){
- // bIsCached = true;
- // }else{
- // bIsCached = bMinimum;
- // }
- // }
- if(bIsCached){ //cached 공통 코드를 가져온다.
- //trace("cached");
- if(this.objects[arrParam[i].dsNm] == null){
- //trace("==ds null : "+arrParam[i].dsNm);
- //form에 ds이 없으면 새로 생성하고 복사
- var sDsNm = dsf_createDs(arrParam[i].dsNm);
-
- this.objects[sDsNm].copyData(dsCachedDs);
- //trace("dataset id="+this.objects[sDsNm].name);
- if(arrParam[i].showValue) appf_showValue(this.objects[sDsNm]);
- }else{
- //trace("==ds not nul : "+arrParam[i].dsNm);
- //form에 ds이 있으면 복사만
- this.objects[arrParam[i].dsNm].copyData(dsCachedDs);
- if(arrParam[i].showValue) appf_showValue(this.objects[arrParam[i].dsNm])
- }
- }else{ //db에서 공통 코드를 가져와야 될때.
- //trace("submit");
- arrSubmitParam.push(arrParam[i]);
- }
- }
-
- if(arrSubmitParam.length > 0){
- appf_getCodeListSubmit(arrSubmitParam, bMinimum, bAsync, sCallback);
- }else{
- if(sCallback == null) return;
- if(sCallback == "undefined") return;
- if(sCallback.length == 0) return;
- if(bAsync) eval(sCallback + "();");
- }
- }
- /**********************************************************************************
- * 함 수 명 : appf_getCodeListSubmit
- * 설 명 : 공통 코드를 DB에서 가져온다.
- * argument : sCallback - callback function
- * arrParam
- * #cdGrpId(필수) - 코드ID
- * #dsNm(필수) - 가져온 코드를 담을 dataset 명
- * #sortField(선택) - 정렬할 컬럼명 (cdid, cdnm, dispseq)
- * #sortMehotd(선택) - 정렬 방법 (asc, desc)
- * #showValue(선택) - code column을 datacolumn과 같이 표시한다.(출력예 : [001] 등록비 )
- * 작성예) [{cdGrpId: "R3310", dsNm: "ds_code_1", sortField: "cdnm", sortMehotd: "desc", showValue: true}
- * , {cdGrpId: "R3310", dsNm: "ds_code_2", sortField: "cdnm", sortMehotd: "desc", showValue: true}]
- * bMinimum - true, false
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type :
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getCodeListSubmit(arrParam, bMinimum, bAsync, sCallback){
-
- var S_IN_DS_CMD = "appf_ds_cmd_getCodeListSubmit";
- var S_IN_DS_REQ = "appf_ds_req_getCodeListSubmit";
-
- var sInDsCmd = "";
- var sOutDs = "";
- var sOutParam = "";
- var sGrpIds = "";
- var sDupDs = "";
-
- var sMinimum = "true";
-
- //inds cmd 생성
- //bMinimun이 null 이면 true로.
- if(!utlf_isNull(bMinimum)){
- //bMinimum이 false일 경우만 "false" 입력
- if(!bMinimum) sMinimum = "false";
- }
- // if(bMinimum){
- // sMinimum = "true";
- // }else{
- // sMinimum = "false";
- // }
- dsf_createDsRow(S_IN_DS_CMD
- , {col:"minimum", type:"string", size:256, val:sMinimum});
-
- //inds req 생성
- if(this.objects[S_IN_DS_REQ] != null){
- this.objects[S_IN_DS_REQ].clear();
- }else{
- var objDs = new Dataset;
- this.addChild(S_IN_DS_REQ, objDs);
- }
- this.objects[S_IN_DS_REQ].addColumn("cdgrupid", "String", "256");
-
- var sTrId = "appf_tr_reqGetCodeLists~";
- //outds string 생성
- for(var i in arrParam){
-
- //arrParam[i].dsNm 이 form에 없을때만 생성한다.
- if(utlf_isNull(this.objects[arrParam[i].dsNm])){
- dsf_createDs(arrParam[i].dsNm);
- }
- //trace("before="+this.objects[arrParam[i].dsNm].name);
- this.objects[S_IN_DS_REQ].addRow();
- this.objects[S_IN_DS_REQ].setColumn(i, "cdgrupid", arrParam[i].cdGrpId);
-
- this.objects[S_IN_DS_REQ].addColumn("sortfield", "String", "256");
- if(utlf_isNull(arrParam[i].sortField)){
- this.objects[S_IN_DS_REQ].setColumn(i, "sortfield", "dispseq");
- }else{
- this.objects[S_IN_DS_REQ].setColumn(i, "sortfield", arrParam[i].sortField);
- }
- this.objects[S_IN_DS_REQ].addColumn("sortmethod", "String", "256");
- if(utlf_isNull(arrParam[i].sortMehotd)){
- this.objects[S_IN_DS_REQ].setColumn(i, "sortmethod", "asc");
- }else{
- this.objects[S_IN_DS_REQ].setColumn(i, "sortmethod", arrParam[i].sortMehotd);
- }
-
- // basedd 넘겨서 처리 할 수 있도록 수정 2019.02.21 - smkim
- this.objects[S_IN_DS_REQ].addColumn("basedd", "String", "256");
- if(utlf_isNull(arrParam[i].baseDd)){
- this.objects[S_IN_DS_REQ].setColumn(i, "basedd", "");
- }else{
- this.objects[S_IN_DS_REQ].setColumn(i, "basedd", arrParam[i].baseDd);
- }
-
- sGrpIds = sGrpIds + arrParam[i].cdGrpId + " ";
- //sTrId = sTrId+arrParam[i].dsNm+"~";
- if(utlf_getStrCount(sGrpIds, arrParam[i].cdGrpId) == 1){
- sOutDs = sOutDs + arrParam[i].dsNm+"="+arrParam[i].cdGrpId+" ";
- sOutParam = sOutParam + arrParam[i].dsNm+"="+arrParam[i].cdGrpId+"="+arrParam[i].showValue+" ";
- }else if(utlf_getStrCount(sGrpIds, arrParam[i].cdGrpId) > 1){
- sDupDs = sDupDs + arrParam[i].dsNm+"="+arrParam[i].cdGrpId+"="+arrParam[i].showValue+" ";
- }
- }
- var sAsync = "FALSE";
- if(bAsync) sAsync = "TRUE";
- sTrId = sTrId + sOutParam + "~" + sAsync + "~" + sCallback + "~" + sDupDs;
- var objTrParam = new Object();
- objTrParam.id = sTrId;
- objTrParam.service = "basiccodeapp.BasicCodeUser";
- objTrParam.method = "reqGetCodeLists";
- objTrParam.inds = "cmd="+S_IN_DS_CMD+" req="+S_IN_DS_REQ;
- objTrParam.outds = sOutDs;
- objTrParam.callback = "cbf_appf_tr_reqGetCodeLists";
- objTrParam.async = bAsync;
-
- tranf_submit(objTrParam);
- }
- function cbf_appf_tr_reqGetCodeLists(sSvcId, nErrorCode, sErrorMsg){
-
- //var arrSvcParam = sSvcId.split("~");
- var sTranId = sSvcId.split("~")[0];
- var sOutDs = sSvcId.split("~")[1];
- var sAsync = sSvcId.split("~")[2];
- var sCallback = sSvcId.split("~")[3];
- var sDupDs = sSvcId.split("~")[4];
-
- var arrOutDs = sOutDs.split(" ");
-
- //Quick View를 위하여 예외처리함. Quick View실행 시 cache에 등록하지 않는다.
-
- //db에서 가져온 코드를 top영역의 code cache에 등록한다.
- for(var i=0 ; i<arrOutDs.length ; i++){
- var arrTempDsNm = arrOutDs[i].split("=");
-
- if(!utlf_isNull(arrOutDs[i])){
- var name = this.objects[arrTempDsNm[0]].name;
- this.objects[arrTempDsNm[0]].name = arrTempDsNm[1];
- try{
- agv_objAppTopPath.form.setComnCodeCache(this.objects[arrTempDsNm[0]]);
- }catch(e){
- sysf_catchTrace(e);
- }
- this.objects[arrTempDsNm[0]].name = name; // 데이터셋 이름이 ds_ 없이 코드로만 되어 있어서 다시 원래 이름 붙히도록 수정함 2017.08.09 smkim
- if(arrTempDsNm[2] == "true") appf_showValue(this.objects[arrTempDsNm[0]]);
- }
- }
-
- //중복된 코드를 복사한다.
- if(!utlf_isNull(sDupDs)){
- //trace("중복="+sDupDs);
- var arrDupDs = sDupDs.split(" ");
- for(var i in arrDupDs){
- if(!utlf_isNull(arrDupDs[i])){
- var sDupDsNm = arrDupDs[i].split("=")[0];
- var sDupGrpCd = arrDupDs[i].split("=")[1];
- var sShowValue = arrDupDs[i].split("=")[2];
-
- var objCachedDs = agv_objAppTopPath.form.getComnCodeCache(sDupGrpCd);
-
- if(this.objects[sDupDsNm] == null){
- //form에 ds이 없으면 새로 생성하고 복사
- dsf_createDs(sDupDsNm);
- this.objects[sDupDsNm].copyData(objCachedDs);
- if(sShowValue == "true") appf_showValue(this.objects[sDupDsNm]);
- }else{
- //form에 ds이 있으면 복사만
- this.objects[sDupDsNm].copyData(objCachedDs);
- if(sShowValue == "true") appf_showValue(this.objects[sDupDsNm])
- }
- }
- }
- }
-
- // Form Callback 함수 호출 async가 true일때만
- //if(arrSvcParam[2] == "TRUE"){
- //if(arrSvcParam[3] == "null") return;
- if(sCallback == null) return;
- if(sCallback == "undefined") return;
- if(sCallback.length == 0) return;
- eval(sCallback + "('" + sTranId + "', '" + nErrorCode + "', '" + sErrorMsg + "');");
- //}
- }
- /**********************************************************************************
- * 함 수 명 : appf_getKindCodeList
- * 설 명 : 유형 코드를 가져온다.
- * argument : arrParam
- * #bizId(필수) - biz ID
- * #cdGrpId(필수) - 코드ID
- * #dsNm(필수) - 가져온 코드를 담을 dataset 명
- * #sortField(선택) - 정렬할 컬럼명 (cdid, cdnm, dispseq)
- * #sortMehotd(선택) - 정렬 방법 (asc, desc)
- * 작성예) [{bizId: "Z0001", cdGrpId: "Z0009", dsNm: "ds_kindCode_1", sortField: "cdnm", sortMehotd: "desc"}
- * , {bizId: "M0036", cdGrpId: "M0289", dsNm: "ds_kindCode_2", sortField: "cdnm", sortMehotd: "desc"}]
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type :
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getKindCodeList(arrParam, bAsync, sCallback){
- //appf_getCodeListSubmit 인자값
- var arrSubmitParam = new Array();
-
- //비동기 여부가 null일때 false
- //기본 비동기
- if(utlf_isNull(bAsync)){
- bAsync = false;
- }
-
- for(var i in arrParam){
- var bIsCached = false;
- var sBizCdGrp = arrParam[i].bizId+arrParam[i].cdGrpId;
- var dsCachedDs = null;
-
- //Quick View를 위하여 예외처리함. Quick View실행 시 submit을 실행한다.
- try {
- dsCachedDs = agv_objAppTopPath.form.getComnCodeCache(sBizCdGrp);
- }catch (e){
- sysf_catchTrace(e);
- }
-
- //minimun default값은 true
- // if(utlf_isNull(bMinimum)){
- // bMinimum = true;
- // }
-
- // sortfield_list와 sortmethod_list가 null인 경우에만 cache에서 조회한다.
- if(utlf_isNull(arrParam[i].sortField) && utlf_isNull(arrParam[i].sortMehotd)){
- bIsCached = true;
- }
-
- //cdGrpId로 가져온 cached ds가 null이면 db에서 코드를 가져온다.
- if(utlf_isNull(dsCachedDs)){
- bIsCached = false;
- }
-
- //cdGrpId로 가져온 cached ds가 null이면 db에서 코드를 가져온다.
- // if(utlf_isNull(dsCachedDs)){
- // bIsCached = false;
- // }else{
- // if(utlf_isNull(bMinimum)){
- // bIsCached = true;
- // }else{
- // bIsCached = bMinimum;
- // }
- // }
-
- if(bIsCached){ //cached 공통 코드를 가져온다.
- //trace("cached"+arrParam[i].bizId+arrParam[i].cdGrpId);
- if(this.objects[arrParam[i].dsNm] == null){
- //form에 ds이 없으면 새로 생성하고 복사
- var sDsNm = dsf_createDs(arrParam[i].dsNm);
- this.objects[sDsNm].copyData(dsCachedDs);
- }else{
- //form에 ds이 있으면 복사만
- this.objects[arrParam[i].dsNm].copyData(dsCachedDs);
- }
- }else{ //db에서 공통 코드를 가져와야 될때.
- //trace("submit");
- arrSubmitParam.push(arrParam[i]);
- }
- }
-
- if(arrSubmitParam.length > 0){
- appf_getKindCodeListSubmit(arrSubmitParam, bAsync, sCallback);
- }else{
- //비동기 이면서 callback함수가 null이 아닐때
- if(sCallback == null) return;
- if(sCallback == "undefined") return;
- if(sCallback.length == 0) return;
- if(bAsync) eval(sCallback + "();");
- }
- }
- /**********************************************************************************
- * 함 수 명 : appf_getKindCodeListSubmit
- * 설 명 : 유형 코드를 DB에서 가져온다.
- * argument : arrParam
- * #bizId(필수) - biz ID
- * #cdGrpId(필수) - 코드ID
- * #dsNm(필수) - 가져온 코드를 담을 dataset 명
- * #sortField(선택) - 정렬할 컬럼명 (cdid, cdnm, dispseq)
- * #sortMehotd(선택) - 정렬 방법 (asc, desc)
- * 작성예) [{bizId: "Z0001", cdGrpId: "Z0009", dsNm: "ds_kindCode_1", sortField: "cdnm", sortMehotd: "desc"}
- * , {bizId: "M0036", cdGrpId: "M0289", dsNm: "ds_kindCode_2", sortField: "cdnm", sortMehotd: "desc"}]
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type :
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getKindCodeListSubmit(arrParam, bAsync, sCallback){
- //trace(arrParam.length);
- //var S_IN_DS_CMD = "appf_ds_cmd";
- var S_IN_DS_REQ = "appf_ds_req_getKindCodeListSubmit";
-
- //var sInDsCmd = "";
- var sOutDs = "";
- var sGrpIds = "";
- var sOutParam = "";
- var sDupDs = "";
-
- //inds cmd 생성
- // var sMinimum = "true";
- // if(bMinimum){
- // sMinimum = "true";
- // }else{
- // sMinimum = "false";
- // }
- // sInDsCmd = dsf_createDsRow(S_IN_DS_CMD, "minimum="+wrapQuote(sMinimum));
-
- //inds req 생성
- if(this.objects[S_IN_DS_REQ] != null){
- this.objects[S_IN_DS_REQ].clear();
- }else{
- var objDs = new Dataset;
- this.addChild(S_IN_DS_REQ, objDs);
- }
- this.objects[S_IN_DS_REQ].addColumn("bizid", "String", "256");
- this.objects[S_IN_DS_REQ].addColumn("cdgrupid", "String", "256");
-
- var sTrId = "appf_tr_reqGetKindCodeLists~";
- //outds string 생성
- for(var i in arrParam){
-
- var sBizCdGrp = arrParam[i].bizId+arrParam[i].cdGrpId;
-
- //arrParam[i].dsNm 이 form에 없을때만 생성한다.
- if(utlf_isNull(this.objects[arrParam[i].dsNm])){
- dsf_createDs(arrParam[i].dsNm);
- }
-
- this.objects[S_IN_DS_REQ].addRow();
- this.objects[S_IN_DS_REQ].setColumn(i, "bizid", arrParam[i].bizId);
- this.objects[S_IN_DS_REQ].setColumn(i, "cdgrupid", arrParam[i].cdGrpId);
-
- if(utlf_isNull(arrParam[i].sortField)){
- this.objects[S_IN_DS_REQ].deleteColumn("sortfield");
- }else{
- this.objects[S_IN_DS_REQ].addColumn("sortfield", "String", "256");
- this.objects[S_IN_DS_REQ].setColumn(i, "sortfield", arrParam[i].sortField);
- }
-
- if(utlf_isNull(arrParam[i].sortMehotd)){
- this.objects[S_IN_DS_REQ].deleteColumn("sortmethod");
- }else{
- this.objects[S_IN_DS_REQ].addColumn("sortmethod", "String", "256");
- this.objects[S_IN_DS_REQ].setColumn(i, "sortmethod", arrParam[i].sortMehotd);
- }
-
- //sOutDs = sOutDs + arrParam[i].dsNm+"="+arrParam[i].bizId+arrParam[i].cdGrpId+" ";
- sGrpIds = sGrpIds + sBizCdGrp + " ";
-
- //sTrId = sTrId+arrParam[i].dsNm+"~";
- if(utlf_getStrCount(sGrpIds, sBizCdGrp) == 1){
- sOutDs = sOutDs + arrParam[i].dsNm+"="+sBizCdGrp+" ";
- //sOutParam = sOutParam + arrParam[i].dsNm+"="+arrParam[i].cdGrpId+"="+arrParam[i].showValue+" ";
- sOutParam = sOutParam + arrParam[i].dsNm+"="+sBizCdGrp+" ";
- }else if(utlf_getStrCount(sGrpIds, sBizCdGrp) > 1){
- //sDupDs = sDupDs + arrParam[i].dsNm+"="+arrParam[i].cdGrpId+"="+arrParam[i].showValue+" ";
- sDupDs = sDupDs + arrParam[i].dsNm+"="+sBizCdGrp+" ";
- }
- }
-
- //sTrId = sTrId + sOutDs + "~" + sCallback;
- var sAsync = "FALSE";
- if(bAsync) sAsync = "TRUE";
- //sTrId = sTrId + sOutDs + "~" + sAsync + "~" + sCallback;
- sTrId = sTrId + sOutParam + "~" + sAsync + "~" + sCallback + "~" + sDupDs;
-
- tranf_submit({
- id: sTrId
- , service: "basiccodeapp.KindCodeUser"
- , method: "reqGetKindCodeLists"
- , inds : "req="+S_IN_DS_REQ
- , outds: sOutDs
- , async: bAsync
- , callback: "cbf_appf_tr_reqGetKindCodeLists"
- });
-
- //Quick View를 위하여 예외처리함. Quick View실행 시 cache에 등록하지 않는다.
- /*
- try{
- //db에서 가져온 코드를 top영역의 code cache에 등록한다.
- for(var i in arrParam){
- if(!utlf_isNull(arrParam[i].dsNm)){
- agv_objAppTopPath.form.setComnCodeCache(this.objects[arrParam[i].dsNm]);
- }
- }
- }catch (e){
- sysf_catchTrace(e);
- }*/
- }
- function cbf_appf_tr_reqGetKindCodeLists(sSvcId, nErrorCode, sErrorMsg){
-
- // var arrSvcParam = sSvcId.split("~");
- // var arrParam = arrSvcParam[1].split(" ");
- var sTranId = sSvcId.split("~")[0];
- var sOutDs = sSvcId.split("~")[1];
- var sAsync = sSvcId.split("~")[2];
- var sCallback = sSvcId.split("~")[3];
- var sDupDs = sSvcId.split("~")[4];
-
- var arrOutDs = sOutDs.split(" ");
-
- //trace(arrParam.length);
- //Quick View를 위하여 예외처리함. Quick View실행 시 cache에 등록하지 않는다.
-
- //db에서 가져온 코드를 top영역의 code cache에 등록한다.
- for(var i=0 ; i<arrOutDs.length ; i++){
-
- var arrTempDsNm = arrOutDs[i].split("=");
-
- if(!utlf_isNull(arrOutDs[i])){
- this.objects[arrTempDsNm[0]].name = arrTempDsNm[1];
-
- try{
- agv_objAppTopPath.form.setComnCodeCache(this.objects[arrTempDsNm[0]]);
- }catch(e){
- sysf_catchTrace(e);
- }
- if(arrTempDsNm[2] == "true") appf_showValue(this.objects[arrTempDsNm[0]]);
- }
- }
-
- //중복된 코드를 복사한다.
- if(!utlf_isNull(sDupDs)){
- //trace("중복="+sDupDs);
- var arrDupDs = sDupDs.split(" ");
- for(var i in arrDupDs){
- if(!utlf_isNull(arrDupDs[i])){
- var sDupDsNm = arrDupDs[i].split("=")[0];
- var sDupGrpCd = arrDupDs[i].split("=")[1];
- var sShowValue = arrDupDs[i].split("=")[2];
-
- var objCachedDs = agv_objAppTopPath.form.getComnCodeCache(sDupGrpCd);
-
- if(this.objects[sDupDsNm] == null){
- //form에 ds이 없으면 새로 생성하고 복사
- dsf_createDs(sDupDsNm);
- this.objects[sDupDsNm].copyData(objCachedDs);
- //if(sShowValue == "true") appf_showValue(this.objects[sDupDsNm]);
- }else{
- //form에 ds이 있으면 복사만
- this.objects[sDupDsNm].copyData(objCachedDs);
- //if(sShowValue == "true") appf_showValue(this.objects[sDupDsNm])
- }
- }
- }
- }
-
- // Form Callback 함수 호출 async가 true일때만
- //if(arrSvcParam[2] == "TRUE" && !utlf_isNull(arrSvcParam[3])){
- if(sCallback == null) return;
- if(sCallback == "undefined") return;
- if(sCallback.length == 0) return;
-
- eval(sCallback + "('" + sTranId + "', '" + nErrorCode+"', '" + sErrorMsg + "');");
-
- //}
- }
- /**********************************************************************************
- * 함 수 명 : appf_getAllKindCodeList
- * 설 명 : 모든 유형코드를 가져온다.
- * argument : arrParam
- * bizId(필수) - biz ID
- * cdGrpId(필수) - 코드ID
- * dsNm(필수) - 가져온 코드를 담을 dataset 명
- * sortField(선택) - 정렬할 컬럼명 (cdid, cdnm, dispseq)
- * sortMehotd(선택) - 정렬 방법 (asc, desc)
- * 작성예) [{bizId: "Z0001", cdGrpId: "Z0009", dsNm: "ds_kindCode_1", sortField: "cdnm", sortMehotd: "desc"}
- * , {bizId: "M0036", cdGrpId: "M0289", dsNm: "ds_kindCode_2", sortField: "cdnm", sortMehotd: "desc"}]
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type :
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getAllKindCodeList(arrParam, bAsync, sCallback){
-
- //비동기 여부가 null일때 false
- //기본 비동기
- if(utlf_isNull(bAsync)){
- bAsync = false;
- }
-
- var S_IN_DS_REQ = "appf_ds_req_getAllKindCodeList";
-
- //var sInDsCmd = "";
- var sOutDs = "";
-
- //inds req 생성
- if(this.objects[S_IN_DS_REQ] != null){
- this.objects[S_IN_DS_REQ].clear();
- }else{
- var objDs = new Dataset;
- this.addChild(S_IN_DS_REQ, objDs);
- }
- this.objects[S_IN_DS_REQ].addColumn("bizid", "String", "256");
- this.objects[S_IN_DS_REQ].addColumn("cdgrupid", "String", "256");
- this.objects[S_IN_DS_REQ].addColumn("organcd", "String", "256");
-
- var sTrId = "appf_tr_reqGetAllKindCodeLists~";
- //outds string 생성
- for(var i in arrParam){
-
- //arrParam[i].dsNm 이 form에 없을때만 생성한다.
- if(utlf_isNull(this.objects[arrParam[i].dsNm])){
- dsf_createDs(arrParam[i].dsNm);
- }
-
- this.objects[S_IN_DS_REQ].addRow();
- this.objects[S_IN_DS_REQ].setColumn(i, "bizid", arrParam[i].bizId);
- this.objects[S_IN_DS_REQ].setColumn(i, "cdgrupid", arrParam[i].cdGrpId);
- this.objects[S_IN_DS_REQ].setColumn(i, "organcd", "000");
-
- if(utlf_isNull(arrParam[i].sortField)){
- this.objects[S_IN_DS_REQ].deleteColumn("sortfield");
- }else{
- this.objects[S_IN_DS_REQ].addColumn("sortfield", "String", "256");
- this.objects[S_IN_DS_REQ].setColumn(i, "sortfield", arrParam[i].sortField);
- }
-
- if(utlf_isNull(arrParam[i].sortMehotd)){
- this.objects[S_IN_DS_REQ].deleteColumn("sortmethod");
- }else{
- this.objects[S_IN_DS_REQ].addColumn("sortmethod", "String", "256");
- this.objects[S_IN_DS_REQ].setColumn(i, "sortmethod", arrParam[i].sortMehotd);
- }
-
- sOutDs = sOutDs + arrParam[i].dsNm+"="+arrParam[i].bizId+arrParam[i].cdGrpId+" ";
- }
-
- //sTrId = sTrId + sOutDs + "~" + sCallback;
- var sAsync = "FALSE";
- if(bAsync) sAsync = "TRUE";
- sTrId = sTrId + sOutDs + "~" + sAsync + "~" + sCallback;
-
- tranf_submit({
- id: sTrId
- , service: "basiccodeapp.KindCodeUser"
- , method: "reqGetKindCodeLists"
- , inds : "req="+S_IN_DS_REQ
- , outds: sOutDs
- , async: bAsync
- , callback: "appf_tr_reqGetAllKindCodeLists"
- });
-
- //Quick View를 위하여 예외처리함. Quick View실행 시 cache에 등록하지 않는다.
- /*
- try{
- //db에서 가져온 코드를 top영역의 code cache에 등록한다.
- for(var i in arrParam){
- if(!utlf_isNull(arrParam[i].dsNm)){
- agv_objAppTopPath.form.setComnCodeCache(this.objects[arrParam[i].dsNm]);
- }
- }
- }catch (e){
- sysf_catchTrace(e);
- }
- */
- }
- function appf_tr_reqGetAllKindCodeLists(sSvcId, nErrorCode, sErrorMsg){
- //trace(sSvcId);
- var arrSvcParam = sSvcId.split("~");
- var arrParam = arrSvcParam[1].split(" ");
-
- //trace(arrParam.length);
- //Quick View를 위하여 예외처리함. Quick View실행 시 cache에 등록하지 않는다.
-
- //db에서 가져온 코드를 top영역의 code cache에 등록한다.
- for(var i=0 ; i<arrParam.length ; i++){
- trace(arrParam[i]);
- var arrTempDsNm = arrParam[i].split("=");
-
- if(!utlf_isNull(arrParam[i])){
- this.objects[arrTempDsNm[0]].name = arrTempDsNm[1];
- //trace(this.objects[arrParam[i]]);
- //trace(this.objects[arrTempDsNm[0]].name);
- //trace("name="+this.objects[arrParam[i]].name);
- try{
- agv_objAppTopPath.form.setComnCodeCache(this.objects[arrTempDsNm[0]]);
- }catch(e){
- sysf_catchTrace(e);
- }
- }
- }
-
- // Form Callback 함수 호출 async가 true일때만
- //if(arrSvcParam[2] == "TRUE" && !utlf_isNull(arrSvcParam[3])){
- if(arrSvcParam[3] == null) return;
- if(arrSvcParam[3] == "undefined") return;
- if(arrSvcParam[3].length == 0) return;
- eval(arrSvcParam[3] + "('" + arrSvcParam[0] + "', '" + nErrorCode+"', '" + sErrorMsg + "');");
- //}
- //eval(arrSvcParam[2] + "('" + arrSvcParam[0] + "', '" + nErrorCode+"', '" + sErrorMsg + "');");
- }
- /**********************************************************************************
- * 함 수 명 : appf_getSubCodeList
- * 설 명 : 상하위 관계 코드를 가져온다.
- * argument : sSupcdgrupid - 상위코드군 ID
- * sSupcdid - 상위코드
- * sSubcdgrupid - 하위코드군ID
- * sSortfield - 정렬할 컬럼명
- * sSortmethod - 정렬 방법 (asc, desc)
- * bMinimum - true, false
- * sDsNm - dataset ID
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type :
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getSubCodeList(sSupcdgrupid, sSupcdid, sSubcdgrupid, sSortfield, sSortmethod, bMinimum, sDsNm, bAsync, sCallback){
-
- //비동기 여부가 null일때 false
- //기본 비동기
- if(utlf_isNull(bAsync)){
- bAsync = false;
- }
-
- var S_IN_DS_REQ = "appf_ds_req_getSubCodeList";
- var sMinimum = "true";
-
- //bMinimun이 null 이면 true로.
- if(!utlf_isNull(bMinimum)){
- //bMinimum이 false일 경우만 "false" 입력
- if(!bMinimum) sMinimum = "false";
- }
-
- if(utlf_isNull(this.objects[sDsNm])){
- dsf_createDs(sDsNm);
- }
-
- dsf_createDsRow(S_IN_DS_REQ
- , [{col: "supcdgrupid", val: sSupcdgrupid}
- , {col: "supcdid", val: sSupcdid}
- , {col: "subcdgrupid", val: sSubcdgrupid}
- , {col: "sortfield", val: sSortfield}
- , {col: "sortmethod", val: sSortmethod}
- , {col: "minimum", val: sMinimum}
- ]);
-
- var objTranParam = new Object();
- objTranParam.id = "appf_tr_reqGetSubCodeList";
- objTranParam.service = "basiccodeapp.BasicCodeUser";
- objTranParam.method = "reqGetSubCodeList";
- objTranParam.inds = "req="+S_IN_DS_REQ;
- objTranParam.outds = sDsNm+"="+sSubcdgrupid;
- objTranParam.async = bAsync;
- if(bAsync) objTranParam.callback = sCallback;
-
- tranf_submit(objTranParam);
-
- return sDsNm;
- }
- /**********************************************************************************
- * 함 수 명 : appf_openCodeList
- * 설 명 : 코드목록 조회 팝업
- * argument : sCdgrupid - 코드그룹ID
- * sSearchCondition - 검색 조건 (cdid, cdnm)
- * 코드검색팝업의 검색조건 combo에 설정된다.
- * sSearchTerm - 검색어
- * 코드검색팝업의 검색어edit에 설정된다.
- * return Type : Object - cdid, cdnm
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_openCodeList(sCdgrupid, sSearchCondition, sSearchTerm){
- var objArg = new Object();
-
- if(utlf_isNull(sCdgrupid)){
- alert("코드군ID를 입력하세요.");
- return;
- }
-
- objArg.plgv_sCdgrupid = sCdgrupid;
- objArg.plgv_sSearchCondition = sSearchCondition;
- objArg.plgv_sSearchTerm = sSearchTerm;
-
- return frmf_modal("SPZBC00100", "SPZBC00100", objArg);
- }
- /**********************************************************************************
- * 함 수 명 : appf_openKindCodeList
- * 설 명 : 유형코드목록 조회 팝업
- * argument : sBizid - 업무규칙ID
- * sCdgrupid - 코드그룹ID
- * sSearchCondition - 검색 조건 (cdid, cdnm)
- * 코드검색팝업의 검색조건 combo에 설정된다.
- * sSearchTerm - 검색어
- * 코드검색팝업의 검색어edit에 설정된다.
- * return Type : Object - cdid, cdnm
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_openKindCodeList(sBizid, sCdgrupid, sSearchCondition, sSearchTerm){
- var objArg = new Object();
-
- if(utlf_isNull(sBizid)){
- alert("업무규칙ID를 입력하세요.");
- return;
- }
-
- if(utlf_isNull(sCdgrupid)){
- alert("코드군ID를 입력하세요.");
- return;
- }
-
- objArg.plgv_sBizid = sBizid;
- objArg.plgv_sCdgrupid = sCdgrupid;
- objArg.plgv_sSearchCondition = sSearchCondition;
- objArg.plgv_sSearchTerm = sSearchTerm;
- objArg.plgv_sOrgncd = null;
-
- return frmf_modal("SPZBC00400", "SPZBC00400", objArg);
- }
- /**********************************************************************************
- * 함 수 명 : appf_openCodeGroupList
- * 설 명 : 코드그룹목록 조회 팝업
- * argument : sSearchCondition - 검색 조건 (cdgrupid, cdgrupnm)
- * 코드그룹검색팝업의 검색조건 combo에 설정된다.
- * sSearchTerm - 검색어
- * 코드그룹검색팝업의 검색어edit에 설정된다.
- * bAdmin - 관리자 구분
- * return Type : Object - cdgrupid, cdgrupnm
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_openCodeGroupList(sSearchCondition, sSearchTerm, bAdmin){
- var objArg = new Object();
-
- objArg.plgv_sSearchCondition = sSearchCondition;
- objArg.plgv_sSearchTerm = sSearchTerm;
- objArg.plgv_sAuthinstcd = "";
- objArg.plgv_sAuthdeptcd = "";
- objArg.plgv_bAdmin = bAdmin;
-
- return frmf_modal("SPZBC00200", "SPZBC00200", objArg);
- }
- /**********************************************************************************
- * 함 수 명 : appf_openAllKindCodeList
- * 설 명 : 모든 유형코드목록 조회 팝업
- * argument : sBizid - 업무규칙ID
- * sCdgrupid - 코드그룹ID
- * sSearchCondition - 검색 조건 (cdid, cdnm)
- * 코드검색팝업의 검색조건 combo에 설정된다.
- * sSearchTerm - 검색어
- * 코드검색팝업의 검색어edit에 설정된다.
- * return Type : Object - cdid, cdnm
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_openAllKindCodeList(sBizid, sCdgrupid, sSearchCondition, sSearchTerm){
-
- var objArg = new Object();
-
- if(utlf_isNull(sBizid)){
- alert("업무규칙ID를 입력하세요.");
- return;
- }
-
- if(utlf_isNull(sCdgrupid)){
- alert("코드군ID를 입력하세요.");
- return;
- }
-
- objArg.plgv_sBizid = sBizid;
- objArg.plgv_sCdgrupid = sCdgrupid;
- objArg.plgv_sOrgncd = "000";
- objArg.plgv_sSearchCondition = sSearchCondition;
- objArg.plgv_sSearchTerm = sSearchTerm;
-
- return frmf_modal("SPZBC00400", "SPZBC00400", objArg);
- }
- /**********************************************************************************
- * 함 수 명 : appf_openBizCodeList
- * 설 명 : 업무규칙 목록 조회 팝업
- * argument : sSearchCondition - 검색 조건 (bizid, biznm)
- * 코드검색팝업의 검색조건 combo에 설정된다.
- * sSearchTerm - 검색어
- * 코드검색팝업의 검색어edit에 설정된다.
- * return Type : Object - bizid, biznm
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_openBizCodeList(sSearchCondition, sSearchTerm){
-
- var objArg = new Object();
-
- objArg.plgv_sSearchCondition = sSearchCondition;
- objArg.plgv_sSearchTerm = utlf_transNullToEmpty(sSearchTerm);
-
- return frmf_modal("SPZBC00300", "SPZBC00300", objArg);
- }
- /**********************************************************************************
- * 함 수 명 : appf_getSubCodeGroupList
- * 설 명 : 하위 코드군 목록을 가져온다.
- * argument : sSupcdid - 상위코드
- * sDsNm - dataset ID
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type :
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getSubCodeGroupList(sSupcdsid, sDsNm, bAsync, sCallback){
-
- //비동기 여부가 null일때 false
- //기본 비동기
- if(utlf_isNull(bAsync)){
- bAsync = false;
- }
-
- var S_IN_DS_REQ = "appf_ds_req_getSubCodeGroupList";
-
- if(utlf_isNull(this.objects[sDsNm])){
- dsf_createDs(sDsNm);
- }
-
- dsf_createDsRow(S_IN_DS_REQ
- , [{col: "supcdsid", val: sSupcdsid}]);
-
- var objTranParam = new Object();
- objTranParam.id = "appf_tr_getSubCodeGroupList";
- objTranParam.service = "basiccodeapp.BasicCodeAdmin";
- objTranParam.method = "reqGetSubCodeGroupList";
- objTranParam.inds = "req="+S_IN_DS_REQ;
- objTranParam.outds = sDsNm+"=cdgrup";
- objTranParam.async = bAsync;
- if(!utlf_isNull(bAsync)) objTranParam.callback = sCallback;
-
- tranf_submit(objTranParam);
-
- return sDsNm;
- }
- /**
- * @desc : 사용자코드에 해당 파라미터의 코드 값이 존재 하는지 여부를 체크 한다.
- * @param : sUserCd : 사용자코드
- * sCheckCode : 체크 할 코드
- * 사용법 : appf_ContainsUserCD("00001", "AST");
- * @return : true : 값이 존재 함.
- false : 값이 존재하지 않음.
- * @author : 엄영만 2019.04.22
- * 변환 OK
- * @---------------------------------------------------
- */
- function appf_ContainsUserCD(sUserCd, sCheckCode) {
- var bRtn = false; // 반환값
- var sDsNm = "ds_ContainsUserCD_" + sUserCd
- dsf_createDs(sDsNm); //체크용 DS 생성
-
- try {
- appf_getUserCodeList([{dsNm: sDsNm, userCd: sUserCd}], false);
-
- var oDataset = this.objects[sDsNm];
- if(oDataset.rowcount > 0) {
- if(!utlf_isNull(oDataset.getColumn(oDataset.findRow("cdid", sCheckCode), "cdid"))) {
- bRtn = true;
- }
- }
- } catch(err) {
- sysf_messageBox ( "appf_ContainsUserCD() 실행 중 오류가 발생 하였습니다. sUserCd:" + sUserCd + " sCheckCode:"+ sCheckCode, "E" );
- } finally {
- dsf_deleteDs(sDsNm); //체크용 DS 삭제
- }
-
- return bRtn;
- }
- /**********************************************************************************
- * 함 수 명 : appf_getUserCodeList
- * 설 명 : 사용자 코드를 가져온다.
- * argument : arrParam
- * # dsNm(필수) - 가져온 코드를 담을 dataset 명
- * # userCd(필수) - 코드ID
- * # sortField(선택) - 정렬할 컬럼명 (cdid, cdnm, seqno)
- * # sortMehotd(선택) - 정렬 방법 (asc, desc)
- * # showValue(선택) - code column을 datacolumn과 같이 표시한다.(출력예 : [001] 등록비 )
- * 작성예) [{dsNm: "ds_UC00011", cdGrpId: "00011", sortField: "cdid", sortMehotd: "desc", showValue:true}
- * , {dsNm: "ds_UC00012", cdGrpId: "00012", sortField: "cdnm", sortMehotd: "desc", showValue:true}]
- * bMinimum - true, false
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type :
- * @author : 엄영만 2019.04.22
- **********************************************************************************/
- function appf_getUserCodeList(arrParam, bMinimum, bAsync){
-
- var S_IN_DS_REQ = "appf_ds_req_getUserCodeList";
- var sInDsCmd = "";
- var sOutDs = "";
- var sOutParam = "";
- var sUserCds = "";
- var sDupDs = "";
- var sMinimum = "true";
-
- if(!utlf_isNull(bMinimum)){ //bMinimun이 null 이면 true로.
- if(!bMinimum) sMinimum = "false"; //bMinimum이 false일 경우만 "false" 입력
- }
-
- //inds req 생성
- if(utlf_isNull(this.objects[S_IN_DS_REQ])) {
- var objDs = new Dataset;
- this.addChild(S_IN_DS_REQ, objDs);
- } else {
- this.objects[S_IN_DS_REQ].clear();
- }
-
- //outds string 생성
- for(var i in arrParam){
- //arrParam[i].dsNm 이 form에 없을때만 생성한다.
- if(utlf_isNull(this.objects[arrParam[i].dsNm])){
- dsf_createDs(arrParam[i].dsNm);
- }
-
- this.objects[S_IN_DS_REQ].addRow();
- this.objects[S_IN_DS_REQ].addColumn("minimum", "String", "256");
- this.objects[S_IN_DS_REQ].addColumn("usercd", "String", "256");
- this.objects[S_IN_DS_REQ].addColumn("basedd", "String", "256");
- this.objects[S_IN_DS_REQ].addColumn("sortfield", "String", "256");
- this.objects[S_IN_DS_REQ].addColumn("sortmethod", "String", "256");
-
- this.objects[S_IN_DS_REQ].setColumn(i, "minimum", sMinimum);
- this.objects[S_IN_DS_REQ].setColumn(i, "usercd", arrParam[i].userCd);
-
- if(utlf_isNull(arrParam[i].baseDd)){
- this.objects[S_IN_DS_REQ].setColumn(i, "basedd", "");
- }else{
- this.objects[S_IN_DS_REQ].setColumn(i, "basedd", arrParam[i].baseDd);
- }
- if(utlf_isNull(arrParam[i].sortField)){
- this.objects[S_IN_DS_REQ].setColumn(i, "sortfield", "seqno");
- }else{
- this.objects[S_IN_DS_REQ].setColumn(i, "sortfield", arrParam[i].sortField);
- }
- if(utlf_isNull(arrParam[i].sortMehotd)){
- this.objects[S_IN_DS_REQ].setColumn(i, "sortmethod", "asc");
- }else{
- this.objects[S_IN_DS_REQ].setColumn(i, "sortmethod", arrParam[i].sortMehotd);
- }
-
- sUserCds = sUserCds + arrParam[i].userCd + " ";
- if(utlf_getStrCount(sUserCds, arrParam[i].userCd) == 1){
- sOutDs = sOutDs + arrParam[i].dsNm+"="+arrParam[i].userCd+" ";
- }
- }
- var sAsync = "FALSE";
- if(bAsync) sAsync = "TRUE";
-
- var objTrParam = new Object();
- objTrParam.id = "appf_tr_reqGetUserCodeList";
- objTrParam.service = "basiccodeapp.UserCode";
- objTrParam.method = "reqGetUserCodeList";
- objTrParam.inds = "req="+S_IN_DS_REQ;
- objTrParam.outds = sOutDs;
- objTrParam.async = bAsync;
-
- if(tranf_submit(objTrParam)) {
- for(var i in arrParam){
- if(arrParam[i].showValue) { appf_showValue(this.objects[arrParam[i].dsNm]); }
- }
- }
- }
- /**********************************************************************************
- * 함 수 명 : appf_getSubUserCodeList
- * 설 명 : 하위 사용자 코드 목록을 가져온다.
- * argument : sSupCd - 상위코드
- * sDsNm - dataset ID
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type :
- * 작성자 : 엄영만
- **********************************************************************************/
- function appf_getUserSubUserCdList(sSupCd, sDsNm, bAsync, sCallback){
-
- //비동기 여부가 null일때 false
- //기본 비동기
- if(utlf_isNull(bAsync)){
- bAsync = false;
- }
-
- var S_IN_DS_REQ = "appf_ds_req_getUserSubUserCdList";
-
- if(utlf_isNull(this.objects[sDsNm])){
- dsf_createDs(sDsNm);
- }
-
- dsf_createDsRow(S_IN_DS_REQ
- , [{col: "supcd", val: sSupCd}]);
-
- var objTranParam = new Object();
- objTranParam.id = "appf_tr_getUserSubUserCdList";
- objTrParam.service = "basiccodeapp.UserCode";
- objTrParam.method = "reqGetUserSubUserCdList";
- objTranParam.inds = "req="+S_IN_DS_REQ;
- objTranParam.outds = sDsNm+"=usercdlist";
- objTranParam.async = bAsync;
- if(!utlf_isNull(bAsync)) objTranParam.callback = sCallback;
-
- tranf_submit(objTranParam);
-
- return sDsNm;
- }
- /********************************************************************************************************************/
- /************************* 통합부서 API 관련 함수 *****************************************************************/
- /********************************************************************************************************************/
- /**********************************************************************************
- * 함 수 명 : appf_openDeptCodeList
- * 설 명 : 부서코드목록 조회 팝업
- * argument : sInstType - 근무지 기관 기준('dutplceinstcd'), 전체기관기준('totalinstcd')
- * sInstCode - 기관코드
- * sSearchCondition - 검색조건
- * sSearchTerm - 검색어
- * sStandardYn - 업무사용여부 속성명
- * sOrdDeptflag - 진료부서구분
- * sStandardSupdeptcd - 업무상위부서 속성명
- * sVisibleColumns - 팝업 부서코드목록에서 보여줄 컬럼을 정의한다. 컬럼과 컬럼은 공백으로 구분한다.
- * sBasedd - 기준일자
- * return Type : Object - deptcd, depthngnm, detail
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_openDeptCodeList(sInstType, sInstCode, sSearchCondition, sSearchTerm, sStandardYn, sOrdDeptflag, sStandardSupdeptcd, sVisibleColumns, sBasedd){
-
- var objArg = new Object();
-
- objArg.plgv_sInstType = sInstType;
- objArg.plgv_sInstCode = sInstCode;
- objArg.plgv_sSearchCondition = sSearchCondition;
- objArg.plgv_sSearchTerm = sSearchTerm;
-
- // if(!utlf_isNull(sStandardYn)) arrArg["plgv_sStandardYn"] = sStandardYn;
- // if(!utlf_isNull(sOrdDeptflag)) arrArg["plgv_sOrdDeptflag"] = sOrdDeptflag;
- // if(!utlf_isNull(sStandardSupdeptcd)) arrArg["plgv_sStandardSupdeptcd"] = sStandardSupdeptcd;
- // if(!utlf_isNull(sVisibleColumns)){
- // arrArg["plgv_sVisibleColumns"] = sVisibleColumns;
- // }else{
- // arrArg["plgv_sVisibleColumns"] = "depthngnm";
- // }
- objArg.plgv_sStandardYn = sStandardYn;
- objArg.plgv_sOrdDeptflag = sOrdDeptflag;
- objArg.plgv_sStandardSupdeptcd = sStandardSupdeptcd;
- if(!utlf_isNull(sVisibleColumns)){
- objArg.plgv_sVisibleColumns = sVisibleColumns;
- }else{
- objArg.plgv_sVisibleColumns = "depthngnm";
- }
- objArg.plgv_sBasedd = sBasedd;
-
- if(sInstType === "dutplceinstcd"){
- //return frmf_modal("SPZSD00200", "SPZSD00200", objArg);
- return frmf_modal("SPZSD00200", "SPZSD00200", objArg, null, "", "", "", null, null, null, null, null, "M");
- }else if(sInstType === "totalinstcd"){
- //return frmf_modal("SPZSD00300", "SPZSD00300", objArg);
- return frmf_modal("SPZSD00300", "SPZSD00300", objArg, null, "", "", "", null, null, null, null, null, "M");
- }
- }
- /**********************************************************************************
- * 함 수 명 : appf_openMasterDeptCodeList
- * 설 명 : 통합부서검색 팝업
- * argument : sSearchCondition - 검색조건
- * sSearchTerm - 검색어
- * return Type : Object - deptcd, deptnm
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_openMasterDeptCodeList(sSearchCondition, sSearchTerm){
-
- var objArg = new Object();
-
- objArg.plgv_sSearchCondition = sSearchCondition;
- objArg.plgv_sSearchTerm = sSearchTerm;
-
- return frmf_modal("SPZSD00100", "SPZSD00100", objArg);
- }
- /**********************************************************************************
- * 함 수 명 : appf_openInstDeptCodeList
- * 설 명 : 근무지 기관 기준 부서코드목록 조회 팝업
- * argument : sSearchCondition - 검색조건
- * sSearchTerm - 검색어
- * sStandardYn - 업무사용여부 속성명
- * sOrdDeptflag - 진료부서구분
- * sVisibleColumns - 팝업 부서코드목록에서 보여줄 컬럼을 정의한다. 컬럼과 컬럼은 공백으로 구분한다.
- * - deptcd 부서코드
- * - depthngnm 한글부서명
- * - deptengnm 영문부서명
- * - deptchinm
- * - depthngabbr
- * - deptengabbr
- * - reqfild
- * - reqdeptno
- * - nextplceyn
- * - nextplceprity
- * - inetrsrvyn
- * - cntctel
- * - dutplceuseyn
- * - reqauthdeptyn
- * return Type : Object - deptcd, depthngnm, detail
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_openInstDeptCodeList(sSearchCondition, sSearchTerm, sStandardYn, sOrdDeptflag, sVisibleColumns){
- return appf_openDeptCodeList("dutplceinstcd", "", sSearchCondition, sSearchTerm, sStandardYn, sOrdDeptflag, "", sVisibleColumns, "");
- }
- /**********************************************************************************
- * 함 수 명 : appf_openAssignedInstDeptCodeList
- * 설 명 : 전체 기관 기준 부서코드목록 조회 팝업
- * argument : sInstCode - 기관코드
- * sSearchCondition - 검색조건
- * sSearchTerm - 검색어
- * sStandardYn - 업무사용여부 속성명
- * sOrdDeptflag - 진료부서구분
- * sVisibleColumns - 팝업 부서코드목록에서 보여줄 컬럼을 정의한다. 컬럼과 컬럼은 공백으로 구분한다.
- * - deptcd 부서코드
- * - depthngnm 한글부서명
- * - deptengnm 영문부서명
- * - deptchinm
- * - depthngabbr
- * - deptengabbr
- * - reqfild
- * - reqdeptno
- * - nextplceyn
- * - nextplceprity
- * - inetrsrvyn
- * - cntctel
- * - dutplceuseyn
- * - reqauthdeptyn
- * return Type : Object - deptcd, depthngnm, detail
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_openAssignedInstDeptCodeList(sInstCode, sSearchCondition, sSearchTerm, sStandardYn, sOrdDeptflag, sVisibleColumns){
- return appf_openDeptCodeList("totalinstcd", sInstCode, sSearchCondition, sSearchTerm, sStandardYn, sOrdDeptflag, "", sVisibleColumns, "");
- }
- /**********************************************************************************
- * 함 수 명 : appf_openAssignedInstDeptCodeBaseDDList
- * 설 명 : 전체 기관 기준 부서코드목록 조회 팝업, 기준일자 조건 추가
- * argument : sInstCode - 기관코드
- * sSearchCondition - 검색조건
- * sSearchTerm - 검색어
- * sStandardYn - 업무사용여부 속성명
- * sOrdDeptflag - 진료부서구분
- * sVisibleColumns - 팝업 부서코드목록에서 보여줄 컬럼을 정의한다. 컬럼과 컬럼은 공백으로 구분한다.
- * - deptcd 부서코드
- * - depthngnm 한글부서명
- * - deptengnm 영문부서명
- * - deptchinm
- * - depthngabbr
- * - deptengabbr
- * - reqfild
- * - reqdeptno
- * - nextplceyn
- * - nextplceprity
- * - inetrsrvyn
- * - cntctel
- * - dutplceuseyn
- * - reqauthdeptyn
- * sBasedd - 기준일자
- * return Type : Object - deptcd, depthngnm, detail
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_openAssignedInstDeptCodeBaseDDList(sInstCode, sSearchCondition, sSearchTerm, sStandardYn, sOrdDeptflag, sVisibleColumns, sBasedd){
- return appf_openDeptCodeList("totalinstcd", sInstCode, sSearchCondition, sSearchTerm, sStandardYn, sOrdDeptflag, "", sVisibleColumns, sBasedd);
- }
- /**********************************************************************************
- * 함 수 명 : appf_getCommDeptCodeList
- * 설 명 : 부서코드목록 조회(공통)
- * argument : sInstType - 근무지 기관 기준('dutplceinstcd'), 전체기관기준('totalinstcd')
- * sInstCode - 기관코드
- * sCommand - 명령어
- * sStandardYn - 업무사용여부 속성명
- * sOrdDeptflag - 진료부서구분
- * sSortfield - 정렬할 컬럼명
- * sSortmethod - 정렬 방법 (asc, desc)
- * sBasedd - 기준일자
- * sOrdclsdeptFlag - 진료분과여부(대표과:R,분과:'C')
- * sMode - 데이터 출력 방식 (replace:교체, after:dest ds 마지막에 추가, before:dest ds 처음에 삽입)
- * sDsNm - dataset ID
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type : String - dataset ID
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getCommDeptCodeList(sInstType, sInstCode, sCommand, sStandardYn, sOrdDeptflag, sSortfield, sSortmethod, sBasedd, sOrdclsdeptFlag, sMode, sDsNm, bAsync, sCallback){
-
- //비동기 여부가 null일때 false
- //기본 비동기
- if(utlf_isNull(bAsync)){
- bAsync = false;
- }
-
- var S_IN_DS_REQ = "appf_ds_req_getDeptCodeList";
- var sTempDsNm = "frm_ds_temp_getDeptCodeList";
-
- if(!utlf_isNull(this.objects[S_IN_DS_REQ])){
- this.objects[S_IN_DS_REQ].clear();
- }
-
- if(utlf_isNull(this.objects[sTempDsNm])){
- dsf_createDs(sTempDsNm);
- }else{
- this.objects[sTempDsNm].clear();
- }
-
- if(utlf_isNull(this.objects[sDsNm])){
- dsf_createDs(sDsNm);
- }else{
- this.objects[sDsNm].clear();
- }
-
- var objColInfo = new Array();
- objColInfo.push({col: "insttype", val: sInstType});
- if(!utlf_isNull(sCommand)){
- objColInfo.push({col: "command", val: sCommand});
- }
- objColInfo.push({col: "instcd", val: sInstCode});
- objColInfo.push({col: "standardyn", val: sStandardYn});
- objColInfo.push({col: "orddeptflag", val: sOrdDeptflag});
- if(utlf_isNull(sSortfield)){
- objColInfo.push({col: "sortfield", val: "depthngnm"});
- }else{
- objColInfo.push({col: "sortfield", val: sSortfield});
- }
- if(utlf_isNull(sSortmethod)){
- objColInfo.push({col: "sortmethod", val: "asc"});
- }else{
- objColInfo.push({col: "sortmethod", val: sSortmethod});
- }
- objColInfo.push({col: "basedd", val: utlf_transNullToEmpty(sBasedd)});
- objColInfo.push({col: "ordclsdeptflag", val: sOrdclsdeptFlag});
-
- dsf_createDsRow(S_IN_DS_REQ, objColInfo);
-
- var sAsync = "FALSE";
- if(bAsync) sAsync = "TRUE";
- var sTrId = "appf_tr_reqGetDepartmentCodeList"+"~"+sDsNm+"~"+sTempDsNm+"~"+sMode+"~"+sCallback+"~"+sAsync;
-
- tranf_submit({
- id: sTrId
- , service: "departmentcodeapp.DepartmentCodeUser"
- , method: "reqGetDepartmentCodeList"
- , inds : "req="+S_IN_DS_REQ
- , outds: sTempDsNm+"=dept"
- , async: bAsync
- , callback: "cbf_appf_tr_reqGetDepartmentCodeList"
- });
-
- //if(this.objects[sDsNm].colcount == 0) dsf_copyColInfo(this.objects[sDsNm], this.objects[sTempDsNm], false);
- //dsf_copyDs(this.objects[sDsNm], this.objects[sTempDsNm], sMode);
-
- return sDsNm;
- }
- function cbf_appf_tr_reqGetDepartmentCodeList(sSvcId, nErrorCode, sErrorMsg){
- var arrParam = sSvcId.split("~");
- var sDsNm = arrParam[1];
- var sTempDsNm = arrParam[2];
- var sMode = arrParam[3];
- var sCallback = arrParam[4];
- var sAsync = arrParam[5];
- if(this.objects[sDsNm].colcount == 0) dsf_copyColInfo(this.objects[sDsNm], this.objects[sTempDsNm], false);
- //trace(this.objects[sDsNm].saveXML());
- dsf_copyDs(this.objects[sDsNm], this.objects[sTempDsNm], sMode);
-
- // Form Callback 함수 호출 async가 true일때만
- if(sAsync == "TRUE" && !utlf_isNull(sCallback)){
- //eval(arrSvcParam[3] + "('" + arrSvcParam[0] + "', '" + nErrorCode+"', '" + sErrorMsg + "');");
- eval(sCallback + "('" + sSvcId + "', '" + nErrorCode+"', '" + sErrorMsg + "');");
- }
-
- }
- /**********************************************************************************
- * 함 수 명 : appf_getDeptCodeList
- * 설 명 : 부서코드목록 조회
- * argument : sInstType - 근무지 기관 기준('dutplceinstcd'), 전체기관기준('totalinstcd')
- * sStandardYn - 업무사용여부 속성명
- * sOrdDeptflag - 진료부서구분
- * sSortfield - 정렬할 컬럼명
- * sSortmethod - 정렬 방법 (asc, desc)
- * sBasedd - 기준일자
- * sOrdclsdeptFlag - 진료분과여부(대표과:R,분과:'C')
- * sMode - 데이터 출력 방식 (replace:교체, after:dest ds 마지막에 추가, before:dest ds 처음에 삽입)
- * sDsNm - dataset ID
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type : String - dataset ID
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getDeptCodeList(sInstCode, sStandardYn, sOrdDeptflag, sSortfield, sSortmethod, sBasedd, sOrdclsdeptFlag, sMode, sDsNm, bAsync, sCallback){
-
- return appf_getCommDeptCodeList("totalinstcd", sInstCode, null, sStandardYn, sOrdDeptflag, sSortfield, sSortmethod, sBasedd, sOrdclsdeptFlag, sMode, sDsNm, bAsync, sCallback);
- }
- /**********************************************************************************
- * 함 수 명 : appf_getInsuExecDeptList
- * 설 명 : 보험수행구분부서콤보
- * argument : sInstCode - 기관코드
- * sSelectfield - 조회할필드
- * null일경우 - deptcd, depthngnm
- * sSortfield - 정렬할 컬럼명
- * sBasedd - 기준일자
- * sDsNm - dataset ID
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type : String - dataset id
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getInsuExecDeptList(sCallback, sDsNm, sInstCode, sSelectfield, sSortfield, sBasedd, sDsNm, bAsync, sCallback){
-
- //비동기 여부가 null일때 false
- //기본 비동기
- if(utlf_isNull(bAsync)){
- bAsync = false;
- }
-
- var S_IN_DS_REQ = "appf_ds_req_getInsuExecDeptList";
-
- if(utlf_isNull(this.objects[sDsNm])){
- dsf_createDs(sDsNm);
- }
-
- dsf_createDsRow(S_IN_DS_REQ
- , [{col: "instcd", val: sInstCode}
- , {col: "selectfield", val: sSelectfield}
- , {col: "sortfield", val: sSortfield}
- , {col: "basedd", val: sBasedd}
- ]);
-
- var objTranParam = new Object();
- objTranParam.id = "appf_tr_reqGetInsuUseDepartmentCodeList";
- objTranParam.service = "departmentcodeapp.DepartmentCodeUser";
- objTranParam.method = "reqGetInsuUseDepartmentCodeList";
- objTranParam.inds = "req="+S_IN_DS_REQ;
- objTranParam.outds = sDsNm+"=dept";
- objTranParam.async = bAsync;
- if(!utlf_isNull(bAsync)) objTranParam.callback = sCallback;
-
- tranf_submit(objTranParam);
-
- return sDsNm;
- }
- /**********************************************************************************
- * 함 수 명 : appf_getInOrdDeptList
- * 설 명 : 입원진료과 목록을 조회
- * argument : sInstCode - 기관코드
- * sSortfield - 정렬할 컬럼명
- * sSortmethod - 정렬 방법 (asc, desc)
- * sBasedd - 기준일자
- * sOrdclsdeptFlag - 진료분과여부(대표과:R,분과:'C')
- * sDsNm - dataset ID
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type : String - dataset id
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getInOrdDeptList(sInstCode, sSortfield, sSortmethod, sBasedd, sOrdclsdeptFlag, sDsNm, bAsync, sCallback){
- return appf_getCommDeptCodeList("totalinstcd", sInstCode, "getInOrderDepartmentList", "", "", sSortfield, sSortmethod, sBasedd, sOrdclsdeptFlag, "replace", sDsNm, bAsync, sCallback);
- }
- /**********************************************************************************
- * 함 수 명 : appf_getOutOrdDeptList
- * 설 명 : 외래진료과 목록을 조회
- * argument : sInstCode - 기관코드
- * sSortfield - 정렬할 컬럼명
- * sSortmethod - 정렬 방법 (asc, desc)
- * sBasedd - 기준일자
- * sOrdclsdeptFlag - 진료분과여부(대표과:R,분과:'C')
- * sDsNm - dataset ID
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type : String - dataset id
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getOutOrdDeptList(sInstCode, sSortfield, sSortmethod, sBasedd, sOrdclsdeptFlag, sDsNm, bAsync, sCallback){
- return appf_getCommDeptCodeList("totalinstcd", sInstCode, "getOutOrderDepartmentList", "", "", sSortfield, sSortmethod, sBasedd, sOrdclsdeptFlag, "replace", sDsNm, bAsync, sCallback);
- }
- /**********************************************************************************
- * 함 수 명 : appf_getCareOutOrderDepartmentList
- * 설 명 : 간호기준의 외래진료부서를 조회
- * argument : sInstCode - 기관코드
- * sBasedd - 기준일자
- * sDsNm - dataset ID
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type : String - dataset id
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getCareOutOrderDepartmentList(sInstCode, sBasedd, sDsNm, bAsync, sCallback){
-
- //비동기 여부가 null일때 false
- //기본 비동기
- if(utlf_isNull(bAsync)){
- bAsync = false;
- }
-
- var S_IN_DS_REQ = "appf_ds_req_getCareOutOrderDepartmentList";
-
- if(utlf_isNull(this.objects[sDsNm])){
- dsf_createDs(sDsNm);
- }
-
- dsf_createDsRow(S_IN_DS_REQ
- , [{col: "instcd", val: sInstCode}
- , {col: "basedd", val: sBasedd}
- ]);
-
- var objTranParam = new Object();
- objTranParam.id = "appf_tr_reqGetCareOutOrderDepartmentList";
- objTranParam.service = "departmentcodeapp.DepartmentCodeUser";
- objTranParam.method = "reqGetCareOutOrderDepartmentList";
- objTranParam.inds = "req="+S_IN_DS_REQ;
- objTranParam.outds = sDsNm+"=dept";
- objTranParam.async = bAsync;
- if(!utlf_isNull(bAsync)) objTranParam.callback = sCallback;
-
- tranf_submit(objTranParam);
-
- return sDsNm;
- }
- /**********************************************************************************
- * 함 수 명 : appf_getCntrOrdKindDepartmentList
- * 설 명 : 진료부서구분이 센터로 등록된 부서를 조회
- * argument : sInstCode - 기관코드
- * sBasedd - 기준일자
- * sDsNm - dataset ID
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type : String - dataset id
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getCntrOrdKindDepartmentList(sInstCode, sBasedd, sDsNm, bAsync, sCallback){
-
- //비동기 여부가 null일때 false
- //기본 비동기
- if(utlf_isNull(bAsync)){
- bAsync = false;
- }
-
- var S_IN_DS_REQ = "appf_ds_req_getCntrOrdKindDepartmentList";
-
- if(utlf_isNull(this.objects[sDsNm])){
- dsf_createDs(sDsNm);
- }
-
- dsf_createDsRow(S_IN_DS_REQ
- , [{col: "instcd", val: sInstCode}
- , {col: "basedd", val: sBasedd}
- ]);
-
- var objTranParam = new Object();
- objTranParam.id = "appf_tr_reqGetCntrOrdKindDepartmentList";
- objTranParam.service = "departmentcodeapp.DepartmentCodeAdmin";
- objTranParam.method = "reqGetCntrOrdKindDepartmentList";
- objTranParam.inds = "req="+S_IN_DS_REQ;
- objTranParam.outds = sDsNm+"=dept";
- objTranParam.async = bAsync;
- if(!utlf_isNull(bAsync)) objTranParam.callback = sCallback;
-
- tranf_submit(objTranParam);
-
- return sDsNm;
- }
- /**********************************************************************************
- * 함 수 명 : appf_getCntrSubOrdDepartmentList
- * 설 명 : 센터에 속한 하위의 진료부서를 조회한다.
- * 진료부서구분이 센터로 등록된 부서를 선택하면 그 하위에 해당하는 진료 부서만 출력한다.
- * argument : sInstCode - 기관코드
- * sDeptcd - 센터상위부서코드
- * sInoutFlag - 외래입원진료구분
- * sBasedd - 기준일자
- * sDsNm - dataset ID
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type : String - dataset id
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getCntrSubOrdDepartmentList(sInstCode, sDeptcd, sInoutFlag, sBasedd, sDsNm, bAsync, sCallback){
-
- //비동기 여부가 null일때 false
- //기본 비동기
- if(utlf_isNull(bAsync)){
- bAsync = false;
- }
-
- var S_IN_DS_REQ = "appf_ds_req_getCntrSubOrdDepartmentList";
-
- if(utlf_isNull(this.objects[sDsNm])){
- dsf_createDs(sDsNm);
- }
-
- dsf_createDsRow(S_IN_DS_REQ
- , [{col: "instcd", val: sInstCode}
- , {col: "deptcd", val: sDeptcd}
- , {col: "inoutflag", val: sInoutFlag}
- , {col: "basedd", val: sBasedd}
- ]);
-
- var objTranParam = new Object();
- objTranParam.id = "appf_tr_reqGetCntrSubOrdDepartmentList";
- objTranParam.service = "departmentcodeapp.DepartmentCodeAdmin";
- objTranParam.method = "reqGetCntrSubOrdDepartmentList";
- objTranParam.inds = "req="+S_IN_DS_REQ;
- objTranParam.outds = sDsNm+"=dept";
- objTranParam.async = bAsync;
- if(!utlf_isNull(bAsync)) objTranParam.callback = sCallback;
-
- tranf_submit(objTranParam);
-
- return sDsNm;
- }
- /**********************************************************************************
- * 함 수 명 : appf_getClsDeptList
- * 설 명 : 지정된 대표과의 분과 목록을 출력한다.
- * argument : sInstCode - 기관코드
- * sDeptcd - 센터상위부서코드
- * sInoutFlag - 외래입원진료구분
- * sSortfield - 정렬할 컬럼명
- * sSortmethod - 정렬 방법 (asc, desc)
- * sBasedd - 기준일자
- * sDsNm - dataset ID
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type : String - dataset id
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getClsDeptList(sInstCode, sDeptcd, sInoutFlag, sSortfield, sSortmethod, sBasedd, sDsNm, bAsync, sCallback){
-
- //비동기 여부가 null일때 false
- //기본 비동기
- if(utlf_isNull(bAsync)){
- bAsync = false;
- }
-
- var S_IN_DS_REQ = "appf_ds_req_getClsDeptList";
-
- if(utlf_isNull(this.objects[sDsNm])){
- dsf_createDs(sDsNm);
- }
-
- dsf_createDsRow(S_IN_DS_REQ
- , [{col: "instcd", val: sInstCode}
- , {col: "deptcd", val: sDeptcd}
- , {col: "inoutflag", val: sInoutFlag}
- , {col: "sortfield", val: sSortfield}
- , {col: "sortmethod", val: sSortmethod}
- , {col: "basedd", val: sBasedd}
- ]);
-
- var objTranParam = new Object();
- objTranParam.id = "appf_tr_reqGetClassificationOfDepartmentList";
- objTranParam.service = "departmentcodeapp.DepartmentCodeUser";
- objTranParam.method = "reqGetClassificationOfDepartmentList";
- objTranParam.inds = "req="+S_IN_DS_REQ;
- objTranParam.outds = sDsNm+"=dept";
- objTranParam.async = bAsync
- if(!utlf_isNull(bAsync)) objTranParam.callback = sCallback;
-
- tranf_submit(objTranParam);
-
- return sDsNm;
- }
- /**********************************************************************************
- * 함 수 명 : appf_getInClsDeptList
- * 설 명 : (입원)지정된 대표과의 분과 목록을 출력한다.
- * argument : sInstCode - 기관코드
- * sDeptcd - 센터상위부서코드
- * sSortfield - 정렬할 컬럼명
- * sSortmethod - 정렬 방법 (asc, desc)
- * sBasedd - 기준일자
- * sDsNm - dataset ID
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type : String - dataset id
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getInClsDeptList(sInstCode, sDeptcd, sSortfield, sSortmethod, sBasedd, sDsNm, bAsync, sCallback){
- return appf_getClsDeptList(sInstCode, sDeptcd, "in", sSortfield, sSortmethod, sBasedd, sDsNm, bAsync, sCallback);
- }
- /**********************************************************************************
- * 함 수 명 : appf_getOutClsDeptList
- * 설 명 : (외래)지정된 대표과의 분과 목록을 출력한다.
- * argument : sInstCode - 기관코드
- * sDeptcd - 센터상위부서코드
- * sSortfield - 정렬할 컬럼명
- * sSortmethod - 정렬 방법 (asc, desc)
- * sBasedd - 기준일자
- * sDsNm - dataset ID
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type : String - dataset id
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getOutClsDeptList(sInstCode, sDeptcd, sSortfield, sSortmethod, sBasedd, sDsNm, bAsync, sCallback){
- return appf_getClsDeptList(sInstCode, sDeptcd, "out", sSortfield, sSortmethod, sBasedd, sDsNm, bAsync, sCallback);
- }
- /**********************************************************************************
- * 함 수 명 : appf_getInOutClsDeptList
- * 설 명 : (외래, 입원)지정된 대표과의 분과 목록을 출력한다.
- * argument : sInstCode - 기관코드
- * sDeptcd - 센터상위부서코드
- * sSortfield - 정렬할 컬럼명
- * sSortmethod - 정렬 방법 (asc, desc)
- * sBasedd - 기준일자
- * sDsNm - dataset ID
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type : String - dataset id
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getInOutClsDeptList(sCallback, sDsNm, sInstCode, sDeptcd, sSortfield, sSortmethod, sBasedd, sDsNm, bAsync, sCallback){
- return appf_getClsDeptList(sCallback, sDsNm, sInstCode, sDeptcd, "", sSortfield, sSortmethod, sBasedd, sDsNm, bAsync, sCallback);
- }
- /**********************************************************************************
- * 함 수 명 : appf_getInOutOrdDeptList
- * 설 명 : 외래/입원 진료과 목록을 조회
- * argument : sInstCode - 기관코드
- * sSortfield - 정렬할 컬럼명
- * sSortmethod - 정렬 방법 (asc, desc)
- * sBasedd - 기준일자
- * sOrdclsdeptFlag - 진료분과여부(대표과:R,분과:'C')
- * sDsNm - dataset ID
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type : String - dataset id
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getInOutOrdDeptList(sInstCode, sSortfield, sSortmethod, sBasedd, sOrdclsdeptFlag, sDsNm, bAsync, sCallback){
- return appf_getCommDeptCodeList("totalinstcd", sInstCode, "getInOutOrderDepartmentList", "", "", sSortfield, sSortmethod, sBasedd, sOrdclsdeptFlag, "replace", sDsNm, bAsync, sCallback);
- }
- /**********************************************************************************
- * 함 수 명 : appf_getWardDeptList
- * 설 명 :
- * argument : sInstCode - 기관코드
- * sSortfield - 정렬할 컬럼명
- * sSortmethod - 정렬 방법 (asc, desc)
- * sBasedd - 기준일자
- * sMode - 데이터 출력 방식 (replace:교체, after:dest ds 마지막에 추가, before:dest ds 처음에 삽입)
- * sDsNm - dataset ID
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type : String - dataset ID
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getWardDeptList(sInstCode, sSortfield, sSortmethod, sBasedd, sMode, sDsNm, bAsync, sCallback){
- return appf_getCommDeptCodeList("totalinstcd", sInstCode, null, "orduseyn", "W", sSortfield, sSortmethod, sBasedd, null, sMode, sDsNm, bAsync, sCallback);
- }
- /**********************************************************************************
- * 함 수 명 : appf_openDeptListFromTree
- * 설 명 : 각 트리에 속해있는 아이템중 부서코드 목록을 조회한다. 과거, 현재, 미래이력 조회 (우선순위 현재>미래>과거)
- * argument : sSearchCondition - 검색조건
- * sSearchTerm - 검색어
- * sInstCode - 기관코드
- * sSupDeptColumn - 상위부서코드컬럼명
- * return Type : Object - deptcd, depthngnm
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_openDeptListFromTree(sSearchCondition, sSearchTerm, sInstCd, sSupDeptColumn){
-
- var objArg = new Object();
-
- objArg.plgv_sSearchCondition = sSearchCondition;
- objArg.plgv_sSearchTerm = sSearchTerm;
- objArg.plgv_sInstCd = sInstCd;
- objArg.plgv_sSupDeptColumn = sSupDeptColumn;
-
- return frmf_modal("SPZSD00600", "SPZSD00600", objArg);
- }
- /**********************************************************************************
- * 함 수 명 : appf_openInsuUseDeptCodeList (TF 함수 불완전)
- * 설 명 : 센터구성관리 화면으로 센터부서리스트 목록을 출력한다.
- * argument : sSearchCondition - 검색조건
- * sSearchTerm - 검색어
- * sInstCode - 기관코드
- * sSelectfield - 조회할필드
- * null일경우 - deptcd, depthngnm
- * sSortfield - 정렬할 컬럼명
- * return Type : Object - deptcd, depthngnm
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_openInsuUseDeptCodeList(sSearchCondition, sSearchTerm, sInstCd, sSelectfield, sSortfield){
- var objArg = new Object();
-
- if(utlf_isNull(sSelectfield)){
- sSelectfield = "deptcd, depthngnm";
- }
- if(utlf_isNull(sSortfield)){
- sSortfield = "lastupdtdt desc";
- }
-
- objArg.plgv_sSearchCondition = sSearchCondition;
- objArg.plgv_sSearchTerm = sSearchTerm;
- objArg.plgv_sInstCd = sInstCd;
- objArg.plgv_sSelectfield = sSelectfield;
- objArg.plgv_sSortfield = sSortfield;
-
- return frmf_modal("SPZSD00700", "SPZSD00700", objArg);
- }
- /********************************************************************************************************************/
- /************************* 사용자조회 API 관련 함수 **************************************************************/
- /********************************************************************************************************************/
- /**********************************************************************************
- * 함 수 명 : appf_openUserInfoList
- * 설 명 : 사용자 기본 정보 조회 팝업
- * argument : sSearchCondition - 검색조건(usernm, userid) 팝업의 검색구분combo설정
- * sSearchTerm - 검색어
- * sUserfromdd - 적용시작일자
- * sUsertodd - 적용종료일자
- * sDutinstcd - 근무기관코드
- * sDutunitcd - 근무부서코드
- * return Type : Object - userInfo
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_openUserInfoList(sSearchCondition, sSearchTerm, sUserfromdd, sUsertodd, sDutinstcd, sDutunitcd){
-
- var objArg = new Object();
-
- objArg.plgv_sSearchCondition = sSearchCondition;
- objArg.plgv_sSearchTerm = sSearchTerm;
- objArg.plgv_sUserfromdd = sUserfromdd;
- objArg.plgv_sUsertodd = sUsertodd;
- objArg.plgv_sDutinstcd = sDutinstcd;
- objArg.plgv_sDutunitcd = sDutunitcd;
-
- return frmf_modal("SPZSU10100", "SPZSU10100", objArg);
- }
- /**********************************************************************************
- * 함 수 명 : appf_getOrdDeptDoctorList
- * 설 명 : 진료의 목록
- * argument : sInoutflag - 입원진료, 외래진료여부(in:입원, out:외래, inout:입원외래통합)
- * sDutplceinstcd - 근무지기관코드
- * sDutplcecd - 근무지부서코드
- * sSortField - 정렬 컬럼(userid, usernm, dispseq)
- * sSortMethod - 정렬방법(asc, desc)
- * sBasedd - 기준일자
- * sDsNm - dataset ID
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type : sDsNm - 조회결과 dataset ID
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getOrdDeptDoctorList(sInoutflag, sDutplceinstcd, sDutplcecd, sSortField, sSortMethod, sBasedd, sDsNm, bAsync, sCallback){
-
- //비동기 여부가 null일때 false
- //기본 비동기
- if(utlf_isNull(bAsync)){
- bAsync = false;
- }
-
- var S_IN_DS_REQ = "appf_ds_req_getOrdDeptDoctorList";
-
- if(utlf_isNull(this.objects[sDsNm])){
- dsf_createDs(sDsNm);
- }
-
- dsf_createDsRow(S_IN_DS_REQ
- , [{col: "inoutflag", val: sInoutflag}
- , {col: "dutplceinstcd", val: sDutplceinstcd}
- , {col: "dutplcecd", val: sDutplcecd}
- , {col: "instcd", val: sDutplceinstcd}
- , {col: "deptcd", val: sDutplcecd}
- , {col: "sortfield", val: sSortField}
- , {col: "sortmethod", val: sSortMethod}
- , {col: "basedd", val: sBasedd}
- ]);
-
- var objTranParam = new Object();
- objTranParam.id = "appf_tr_reqGetOrderDepartmentDoctorList";
- objTranParam.service = "userdeptinfoapp.UserDeptInfo";
- objTranParam.method = "reqGetOrderDepartmentDoctorList";
- objTranParam.inds = "req="+S_IN_DS_REQ;
- objTranParam.outds = sDsNm+"=user";
- objTranParam.async = bAsync;
- if(!utlf_isNull(bAsync)) objTranParam.callback = sCallback;
-
- tranf_submit(objTranParam);
-
- return sDsNm;
- }
- /**********************************************************************************
- * 함 수 명 : appf_getInOrdDeptDoctorList
- * 설 명 : 입원 진료의 목록
- * argument : sDsNm - 조회결과 담을 dataset ID
- * sDutplceinstcd - 근무지기관코드
- * sDutplcecd - 근무지부서코드
- * sSortField - 정렬 컬럼(userid, usernm, dispseq)
- * sSortMethod - 정렬방법(asc, desc)
- * sBasedd - 기준일자
- * sDsNm - dataset ID
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type : sDsNm - 조회결과 dataset ID
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getInOrdDeptDoctorList(sDutplceinstcd, sDutplcecd, sSortField, sSortMethod, sBasedd, sDsNm, bAsync, sCallback){
-
- return appf_getOrdDeptDoctorList("in", sDutplceinstcd, sDutplcecd, sSortField, sSortMethod, sBasedd, sDsNm, bAsync, sCallback);
- }
- /**********************************************************************************
- * 함 수 명 : appf_getOutOrdDeptDoctorList
- * 설 명 : 외래 진료의 목록
- * argument : sDutplceinstcd - 근무지기관코드
- * sDutplcecd - 근무지부서코드
- * sSortField - 정렬 컬럼(userid, usernm, dispseq)
- * sSortMethod - 정렬방법(asc, desc)
- * sBasedd - 기준일자
- * sDsNm - dataset ID
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type : sDsNm - 조회결과 dataset ID
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getOutOrdDeptDoctorList(sDutplceinstcd, sDutplcecd, sSortField, sSortMethod, sBasedd, sDsNm, bAsync, sCallback){
-
- return appf_getOrdDeptDoctorList("out", sDutplceinstcd, sDutplcecd, sSortField, sSortMethod, sBasedd, sDsNm, bAsync, sCallback);
- }
- /**********************************************************************************
- * 함 수 명 : appf_getInOutOrdDeptDoctorList
- * 설 명 : 입원외래통합 진료의 목록
- * argument : sDutplceinstcd - 근무지기관코드
- * sDutplcecd - 근무지부서코드
- * sSortField - 정렬 컬럼(userid, usernm, dispseq)
- * sSortMethod - 정렬방법(asc, desc)
- * sBasedd - 기준일자
- * sDsNm - dataset ID
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type : sDsNm - 조회결과 dataset ID
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getInOutOrdDeptDoctorList(sDutplceinstcd, sDutplcecd, sSortField, sSortMethod, sBasedd, sDsNm, bAsync, sCallback){
-
- return appf_getOrdDeptDoctorList("inout", sDutplceinstcd, sDutplcecd, sSortField, sSortMethod, sBasedd, sDsNm, bAsync, sCallback);
- }
- /**********************************************************************************
- * 함 수 명 : appf_getCntrOrdDeptDoctorList
- * 설 명 :
- * argument : sInstcd - 근무지기관코드(대표과여부체크)
- * sDeptcd - 근무지부서코드(대표과여부체크)
- * sInoutflag - 입원진료, 외래진료여부(in:입원, out:외래, inout:입원외래통합)
- * sSortField - 정렬 컬럼(userid, usernm, dispseq)
- * sSortMethod - 정렬방법(asc, desc)
- * sBasedd - 기준일자
- * sDsNm - dataset ID
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type : sDsNm - 조회결과 dataset ID
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getCntrOrdDeptDoctorList(sInstcd, sDeptcd, sInoutflag, sSortField, sSortMethod, sBasedd, sDsNm, bAsync, sCallback){
-
- //비동기 여부가 null일때 false
- //기본 비동기
- if(utlf_isNull(bAsync)){
- bAsync = false;
- }
-
- var S_IN_DS_REQ = "appf_ds_req_getCntrOrdDeptDoctorList";
-
- if(utlf_isNull(this.objects[sDsNm])){
- dsf_createDs(sDsNm);
- }
-
- dsf_createDsRow(S_IN_DS_REQ
- , [{col: "instcd", val: sInstcd}
- , {col: "deptcd", val: sDeptcd}
- , {col: "inoutflag", val: sInoutflag}
- , {col: "sortfield", val: sSortField}
- , {col: "sortmethod", val: sSortMethod}
- , {col: "basedd", val: sBasedd}
- ]);
-
- var objTranParam = new Object();
- objTranParam.id = "appf_tr_reqGetCntrOrderDepartmentDoctorList";
- objTranParam.service = "userdeptinfoapp.UserDeptInfo";
- objTranParam.method = "reqGetCntrOrderDepartmentDoctorList";
- objTranParam.inds = "req="+S_IN_DS_REQ;
- objTranParam.outds = sDsNm+"=user";
- objTranParam.async = bAsync;
- if(!utlf_isNull(bAsync)) objTranParam.callback = sCallback;
-
- tranf_submit(objTranParam);
-
- return sDsNm;
- }
- /**********************************************************************************
- * 함 수 명 : appf_openUserInfo
- * 설 명 : 사원기본정보조회 팝업
- * argument : sSearchCondition - 검색조건
- * sSearchTerm - 검색어
- * sVisibleColumns - 사원정보목록에서 보여줄 컬럼을 정의한다. 컬럼과 컬럼은 공백으로 구분한다.
- * sStandarddd - 기준일자
- * sUserkindcd - 사용자유형(01:교직원,02:수련담당자,03:실습생,04:의국원,05:자원봉사자,06:원목,07:가정간호봉사자,08:외부용역직원,09:임상연구센터연구원,10:협력병원회원)
- * return Type : Object - userInfo
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_openUserInfo(sSearchCondition, sSearchTerm, sVisibleColumns, sStandarddd, sUserkindcd){
-
- // var arrArg = new Array();
- //
- // arrArg["plgv_sSearchCondition"] = sSearchCondition;
- // arrArg["plgv_sSearchTerm"] = sSearchTerm;
- // arrArg["plgv_sVisibleColumns"] = sVisibleColumns;
- // arrArg["plgv_sStandarddd"] = sStandarddd;
- // arrArg["plgv_sUserkindcd"] = sUserkindcd;
- var objArg = new Object();
-
- objArg.plgv_sSearchCondition = sSearchCondition;
- objArg.plgv_sSearchTerm = sSearchTerm;
- objArg.plgv_sVisibleColumns = sVisibleColumns;
- objArg.plgv_sStandarddd = sStandarddd;
- objArg.plgv_sUserkindcd = sUserkindcd;
-
- return frmf_modal("SPZSU10104", "SPZSU10104", objArg);
- }
- /**********************************************************************************
- * 함 수 명 : appf_openEmployee
- * 설 명 : 교직원기본정보조회 팝업
- * argument : sSearchCondition - 검색조건
- * sSearchTerm - 검색어
- * sVisibleColumns - 사원정보목록에서 보여줄 컬럼을 정의한다. 컬럼과 컬럼은 공백으로 구분한다.
- * sStandarddd - 기준일자
- * return Type : Object - userInfo
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_openEmployee(sSearchCondition, sSearchTerm, sVisibleColumns, sStandarddd){
-
- appf_openUserInfo(sSearchCondition, sSearchTerm, sVisibleColumns, sStandarddd, "01");
- }
- /**********************************************************************************
- * 함 수 명 : appf_openTeamMember
- * 설 명 : 근무지별사용자조회 팝업
- * argument : sSearchCondition - 검색조건
- * sSearchTerm - 검색어
- * sDutplceinstcd - 근무지기관코드
- * sDutplcecd - 근무지코드
- * sBasedd - 기준일자
- * return Type : Object - userid, usernm
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_openTeamMember(sSearchCondition, sSearchTerm, sDutplceinstcd, sDutplcecd, sBasedd){
-
- var objArg = new Object();
-
- objArg.plgv_sSearchCondition = sSearchCondition;
- objArg.plgv_sSearchTerm = sSearchTerm;
- objArg.plgv_sDutplceinstcd = sDutplceinstcd;
- objArg.plgv_sDutplcecd = sDutplcecd;
- objArg.plgv_sBasedd = sBasedd;
-
- return frmf_modal("SPZSU10106", "SPZSU10106", objArg);
- }
- /**********************************************************************************
- * 함 수 명 : appf_getUserInfoCombo (TF함수가 불완전)
- * 설 명 : 로그인한 기관의 ‘근무지코드’를 검색조건으로 근무지코드에 속한 사용자 조회
- * argument : sDutplcecd - 근무지코드
- * sJobkindcd - 직종코드
- * sDsNm - dataset ID
- * bAsync - 동기 / 비동기 여부
- * sCallback - callback 함수명
- * return Type : sDsNm - 조회결과 dataset ID
- * 작성자 : 임준호
- **********************************************************************************/
- function appf_getUserInfoCombo(sDutplcecd, sJobkindcd, sDsNm, bAsync, sCallback){
-
- //비동기 여부가 null일때 false
- //기본 비동기
- if(utlf_isNull(bAsync)){
- bAsync = false;
- }
-
- var S_IN_DS_REQ = "appf_ds_req_getUserInfoCombo";
-
- if(utlf_isNull(this.objects[sDsNm])){
- dsf_createDs(sDsNm);
- }
-
- dsf_createDsRow(S_IN_DS_REQ
- , [{col: "dutplcecd", val: sDutplcecd}
- , {col: "jobkindcd", val: sJobkindcd}
- ]);
-
- var objTranParam = new Object();
- objTranParam.id = "appf_tr_reqGetUserInfoCombo";
- objTranParam.service = "userdeptinfoapp.UserDeptInfo";
- objTranParam.method = "reqGetUserInfoCombo";
- objTranParam.inds = "req="+S_IN_DS_REQ;
- objTranParam.outds = sDsNm+"=usercombo";
- objTranParam.async = bAsync;
- if(!utlf_isNull(bAsync)) objTranParam.callback = sCallback;
-
- tranf_submit(objTranParam);
-
- return sDsNm;
- }
- /********************************************************************************************************************/
- /************************* hismain 공통 화면 ***********************************************************************/
- /********************************************************************************************************************/
- /****************************************************************************************
- * Function : frmf_openPasswordValidate
- * Description : 로그인 비밀번호 확인 화면 호출
- * Argument : 01.sType - 비밀번호 확인 타입 (session:세션타임아웃, duplogin:중복로그인, pwdcnfm:비밀번호확인)
- * : 02.sTitlemsg - 타이틀 메시지
- * : 03.sHelpmsg - 도움말
- * return type : Boolean - 로그아웃 가능 여부
- * Creator : 임준호
- ****************************************************************************************/
- function appf_openPasswordValidate(sType, sTitlemsg, sHelpmsg){
-
- var objArg = new Object();
-
- objArg.plgv_sType = sType;
- objArg.plgv_sTitlemsg = sTitlemsg;
- objArg.plgv_sHelpmsg = sHelpmsg;
-
- var width = 300;
- var height = 177;
-
- if(sType == "session" || sType == "duplogin"){
- height = 187;
- }
-
- return frmf_modalInternal("SPZUM00400", "com_hismainxp::SPZUM00400_암호확인.xfdl", objArg, false, null, null, null, width, height);
- }
- /****************************************************************************************
- * Function : appf_openNoticePopup
- * Description : 공지사항 팝업화면을 띄우는 함수
- * Argument :
- * return type :
- * Creator : 임준호
- ****************************************************************************************/
- function appf_openNoticePopup(){
-
- return frmf_modal("SPZSN00100", "SPZSN00100");
- }
- /****************************************************************************************
- * Function : appf_openTargetPopup
- * Description : 공지사항이 보여질 사용자 선택
- * Argument : 01.sTargetFlag
- * return type :
- * Creator : 임준호
- ****************************************************************************************/
- function appf_openTargetPopup(sTargetFlag) {
-
- //modal("SPZSN00200","","300","100","SPZSN00200","/root/temp/targetinfo","/root/main/selecteduser");
- var objArg = new Object();
- objArg.plgv_sTargetFlag = sTargetFlag;
-
- frmf_modal("SPZSN00200", "SPZSN00200", objArg);
- }
- /********************************************************************************************************************/
- /************************* 환자상단 관련 함수 *********************************************************************/
- /********************************************************************************************************************/
- /****************************************************************************************
- * Function : appf_initPatientInfo
- * Description : 환자정보 초기화
- * Argument :
- * return type : Boolean
- * Creator : 임준호
- ****************************************************************************************/
- function appf_initPatientInfo(condparam, errflag){
- if( !utlf_isNull(condparam) && !utlf_isNull(frmf_getScreenID()) ){
- condparam += "▦" + frmf_getScreenID();
- }
- var objForm = frmf_getViewer("patientInfo");
- return objForm.fInitPatientInfo(condparam, errflag);
- }
- /****************************************************************************************
- * Function : appf_setPatientInfo
- * Description : 환자정보 셋팅
- * Argument : 01.sKey - 환자정보 key
- * pid : 환자번호
- * hngnm : 환자명
- * sa : 나이(54/M)
- * addr : 주소
- * insukind : 보험유형
- * ininfo : 재원정보
- * body : 몸무게 키
- * btype : 혈액형
- * orddept : 진료과
- * apntdr : 의사정보 - 지정의
- * attndr : 의사정보 - 주치의
- * diagnosis : 진단명
- * operation : 수술정보
- * allergy : 알러지 정보(Y^Y)
- * newallergy : 새로운 알러지 확인 정보(Y)
- * infection : 감염정보(Y^Y^Y)
- * intncare : 특례(Y)
- * vip : vip(Y)
- * one : one(Y)
- * healexam : 건진(Y)
- * coop : 협력(Y)
- * cp : cp(Y)
- * addrdetl : 상세주소
- * regstno : 주민번호
- * telno : 전화번호
- * zipcd : 우편번호
- * : 02.sValue - 환자정보 value
- * return type : Boolean
- * Creator : 임준호
- ****************************************************************************************/
- function appf_setPatientInfo(sKey, sValue) {
-
- var objForm = frmf_getViewer("patientInfo");
- var bResult = false;
-
- if (!utlf_isNull(objForm)){
- if (sKey != "pid" && sValue.split("|")[0] == appf_getPatientId()){
- bResult = objForm.fSetTopInfo(sKey, sValue.split("|")[1]);
- }else{
- bResult = objForm.fSetTopInfo(sKey, sValue);
- }
- }
- return bResult;
- }
- /****************************************************************************************
- * Function : appf_setPatientInfos
- * Description : 환자정보 전체 저장
- * Argument : 01.sValues - 환자정보
- * return type : Boolean - 성공여부
- * Creator : 임준호
- ****************************************************************************************/
- function appf_setPatientInfos(sValues){
-
- var objForm = frmf_getViewer("patientInfo");
- var bResult = false;
-
- if (!utlf_isNull(objForm)){
- bResult = objForm.fSetTopInfos(sValues);
- }
-
- return bResult;
- }
- /****************************************************************************************
- * Function : appf_delPatientInfos
- * Description : 환자정보 삭제
- * Argument :
- * return type : Boolean
- * Creator : 임준호
- ****************************************************************************************/
- function appf_delPatientInfos(){
-
- var objForm = frmf_getViewer("patientInfo");
- var bResult = false;
-
- if(!utlf_isNull(objForm)){
- bResult = objForm.fDelPatientInfos();
- }
-
- return bResult;
- }
- /****************************************************************************************
- * Function : appf_getPatientInfo
- * Description : 환자정보 조회
- * Argument : 01.key - 환자정보 key
- * pid : 환자번호
- * hngnm : 환자명
- * sa : 나이(54/M)
- * addr : 주소
- * insukind : 보험유형
- * ininfo : 재원정보
- * body : 몸무게 키
- * btype : 혈액형
- * orddept : 진료과
- * apntdr : 의사정보 - 지정의
- * attndr : 의사정보 - 주치의
- * diagnosis : 진단명
- * operation : 수술정보
- * allergy : 알러지 정보(Y^Y)
- * newallergy : 새로운 알러지 확인 정보(Y)
- * infection : 감염정보(Y^Y^Y)
- * intncare : 특례(Y)
- * vip : vip(Y)
- * one : one(Y)
- * healexam : 건진(Y)
- * coop : 협력(Y)
- * cp : cp(Y)
- * addrdetl : 상세주소
- * regstno : 주민번호
- * telno : 전화번호
- * zipcd : 우편번호
- * return type : String - 환자정보
- * Creator : 임준호
- ****************************************************************************************/
- function appf_getPatientInfo(key){
-
- var objForm = frmf_getViewer("patientInfo");
- var sPatientInfo = "";
-
- if(!utlf_isNull(objForm)){
- sPatientInfo = objForm.fGetTopInfo(key);
- }
-
- return sPatientInfo;
- }
- /****************************************************************************************
- * Function : appf_getPatientInfos
- * Description : 환자기본정보 전체 조회
- * Argument :
- * return type : String - 환자정보
- * Creator : 임준호
- ****************************************************************************************/
- function appf_getPatientInfos(){
-
- var objForm = frmf_getViewer("patientInfo");
- var sPatientInfos = "";
- if(!utlf_isNull(objForm)){
- sPatientInfos = objForm.fGetTopInfos();
- }
-
- return sPatientInfos;
- }
- /****************************************************************************************
- * Function : appf_getPatientInfos
- * Description : 환자기본정보 전체 조회(컬럼명포함)
- * Argument :
- * return type : String - 환자정보
- * Creator : 김상목
- ****************************************************************************************/
- function appf_getPatientInfosWithName(){
-
- var objForm = frmf_getViewer("patientInfo");
- var sPatientInfos = "";
- if(!utlf_isNull(objForm)){
- sPatientInfos = objForm.fGetTopInfosWithName();
- }
-
- return sPatientInfos;
- }
- /****************************************************************************************
- * Function : appf_getPatientId
- * Description : 환자번호 조회
- * Argument :
- * return type : String - 환자번호
- * Creator : 임준호
- ****************************************************************************************/
- function appf_getPatientId() {
-
- var objForm = frmf_getViewer("patientInfo");
- var sPatientId = "";
-
- if (!utlf_isNull(objForm)){
- sPatientId = objForm.fGetTopInfo("pid");//fGetPatientId();
- }
-
- return sPatientId;
- }
- /****************************************************************************************
- * Function : appf_getPatientName
- * Description : 환자명 조회
- * Argument :
- * return type : String - 환자명
- * Creator : 임준호
- ****************************************************************************************/
- function appf_getPatientName(){
- var objForm = frmf_getViewer("patientInfo");
- var sPatientName = "";
- if (!utlf_isNull(objForm)){
- sPatientName = objForm.fGetTopInfo("pname");//fGetPatientName();
- }
-
- return sPatientName;
- }
- /****************************************************************************************
- * Function : appf_setPatientFlag
- * Description : 환자구분을 설정한다.
- * Argument : 01.sValue - 환자구분
- * return type : String or Boolean - 환자구분 or false
- * Creator : 임준호
- ****************************************************************************************/
- function appf_setPatientFlag(sValue){
-
- var objForm = frmf_getViewer("patientInfo");
-
- if (!utlf_isNull(objForm)){
- return objForm.fSetPatientFlag(sValue);
- }
-
- return false;
- }
- /****************************************************************************************
- * Function : appf_setPatientInfoDetail(확인필요)
- * Description : 환자구분에 따른 상세정보를 설정한다.
- * Argument : 01.objDsSrc - dataset object
- * return type : 환자구분 or false
- * Creator : 임준호
- ****************************************************************************************/
- function appf_setPatientInfoDetail(objDsSrc:Dataset){
-
- var objForm = frmf_getViewer("patientInfo");
- //var srcPath = instance1.selectSingleNode(srcPath);
- if (!utlf_isNull(objForm)){// && srcPath != null){
- var objDsDest = objForm.objects[objForm.fGetPatientInfoPath()];
- if(!utlf_isNull(objDsDest)){
- if(objDsDest.name != objDsSrc.name)
- objDsDest.copyData(objDsSrc);
- return objForm.fCheckPatientId("paminfo");
- }else{
- sysf_messageBox("환자구분이","E014");
- }
- }
- return false;
- }
- /****************************************************************************************
- * Function : appf_setPatientInfoDetailByKey
- * Description : 환자상세정보를 key 별로 저장한다.
- * : 반드시 setPatientInfoDetail(objDsSrc) 를 통해 최초 한번은 환자상세정보를 설정해야 한다.
- * Argument : 01.sKey - key name
- * : 02.sValue - value
- * return type : 환자상세정보 or false
- * Creator : 임준호
- ****************************************************************************************/
- function appf_setPatientInfoDetailByKey(sKey, sValue){
-
- var objForm = frmf_getViewer("patientInfo");
-
- if (!utlf_isNull(objForm)){
- if(sKey == "pid") {
- return objForm.fSetPatientInfoDetailByKey(sKey, sValue);
- } else {
- if (sValue.split("|")[0] == appf_getPatientId()) {
- return objForm.fSetPatientInfoDetailByKey(sKey, sValue.split("|")[1]);
- }
- }
- }
-
- return false;
- }
- /****************************************************************************************
- * Function : appf_getPatientInfoDetail
- * Description : 환자구분에 따른 상세정보를 key에 해당하는 value반환한다.
- * Argument : 01.sKey - key name
- * return type : 환자상세정보
- * Creator : 임준호
- ****************************************************************************************/
- function appf_getPatientInfoDetail(sKey) {
-
- var objForm = frmf_getViewer("patientInfo");
- var sValue = "";
-
- if (!utlf_isNull(objForm)){
- sValue = objForm.fGetPatientInfoDetail(sKey);
- }
- return sValue;
- }
- /****************************************************************************************
- * Function : appf_getPatientInfoDetail
- * Description : 환자구분에 따른 상세정보 전체를 반환한다.
- 지정한 Dataset으로 copy한다.
- * Argument : 01.sDestDs - 환자정보를 가져올 Dataset 이름
- * return type : 환자상세정보 or false
- * Creator : 김상목
- ****************************************************************************************/
- function appf_getPatientInfoDetails(sDestDs) {
- var objForm = frmf_getViewer("patientInfo");
- var oDestDs = this.objects[sDestDs];
- if ( !utlf_isNull(objForm) && !utlf_isNull(oDestDs)){
- var sSrcDs = objForm.fGetPatientInfoPath();
- if(!utlf_isNull(sSrcDs)){
- var oSrcDs = objForm.objects[sSrcDs];
- if(!utlf_isNull(oSrcDs)){
- oDestDs.copyData(oSrcDs);
- return true;
- }
- }
- }
- return false;
- }
- /****************************************************************************************
- * Function : appf_setOperationInfo
- * Description : 수술관련 상세정보를 설정한다.(fCheckPatientId-확인필요)
- * Argument : 01.objDsDest - dataset object
- * return type : 수술정보정보 or false
- * Creator : 임준호
- ****************************************************************************************/
- function appf_setOperationInfo(objDsSrc:Dataset){
-
- var objForm = frmf_getViewer("patientInfo");
-
- if (!utlf_isNull(objForm) && !utlf_isNull(objDsSrc)){
- return objForm.fCheckPatientId("operation");
- }
- return false;
- }
- /****************************************************************************************
- * Function : appf_setOperationInfoDetailByKey
- * Description : 수술관련 상세정보를 key 별로 설정한다.
- * : 반드시 setOperationInfo(objDsSrc) 를 통해 최초 한번은 수술정보를 설정해야 한다.
- * Argument : 01.sKey - key name
- * : 02.sValue - value
- * return type : 수술 상세정보 or false
- * Creator : 임준호
- ****************************************************************************************/
- function appf_setOperationInfoDetailByKey(sKey, sValue) {
-
- var objForm = frmf_getViewer("patientInfo");
-
- if (!utlf_isNull(objForm)){
- if (sKey == "pid") {
- return objForm.fSetOperationInfoDetailByKey(sKey, sValue);
- } else {
- if (sValue.split("|")[0] == appf_getPatientId()) {
- return objForm.fSetOperationInfoDetailByKey(sKey, sValue.split("|")[1]);
- }
- }
- }
- return false;
- }
- /****************************************************************************************
- * Function : appf_getOperationInfo
- * Description : key에 해당하는 수술관련 정보를 반환한다.
- * Argument : 01.sKey - key name
- * return type : String - 수술정보
- * Creator : 임준호
- ****************************************************************************************/
- function appf_getOperationInfo(sKey){
-
- var objForm = frmf_getViewer("patientInfo");
- var sOperationInfo = "";
-
- if (!utlf_isNull(objForm)){
- sOperationInfo = objForm.fGetOperationInfo(sKey);
- }
-
- return sOperationInfo;
- }
- /****************************************************************************************
- * Function : appf_getOperationInfos
- * Description : 수술관련 정보를 지정한 dataset으로 모두 복사한다.
- * Argument : 01.objDsDest - 수술정보를 복사할 dataset object
- * return type :
- * Creator : 임준호
- ****************************************************************************************/
- function appf_getOperationInfos(objDsDest:Dataset){
-
- var objForm = frmf_getViewer("patientInfo");
-
- if (!utlf_isNull(objForm) && !utlf_isNull(objDsDest)){
- var objDsSrc = objForm.fgetOperationInfos();
- if(!utlf_isNull(objDsSrc)){
- objDsSrc.copyData(objDsDest);
- //return true;
- }
- }
- //return false;
- }
- /****************************************************************************************
- * Function : appf_setConsultInfo(확인필요)
- * Description : 협진관련 상세정보를 설정한다.
- * Argument : 01.objDsSrc - dataset object
- * return type :
- * Creator : 임준호
- ****************************************************************************************/
- function appf_setConsultInfo(objDsSrc:Dataset){
-
- var objForm = frmf_getViewer("patientInfo");
-
- if (!utlf_isNull(objForm) && !utlf_isNull(objDsSrc)){
- return objForm.fCheckPatientId("consult");
- }
- return false;
- }
- /****************************************************************************************
- * Function : appf_setConsultInfoDetailByKey
- * Description : 협진관련 상세정보를 key 별로 저장한다.
- * : 반드시 setConsultInfo(objDsSrc) 를 통해 최초 한번은 협진정보를 설정해야 한다.
- * Argument : 01.sKey - 협진관련키
- * : 02.sValue - 데이터값
- * return type : 협진상세정보 or false
- * Creator : 임준호
- ****************************************************************************************/
- function appf_setConsultInfoDetailByKey(sKey, sValue) {
-
- var objForm = frmf_getViewer("patientInfo");
- if (!utlf_isNull(objForm)){
- if (sKey == "pid") {
- return objForm.fSetConsultInfoDetailByKey(sKey, sValue);
- } else {
- if (value.split("|")[0] == appf_getPatientId()) {
- return objForm.fSetConsultInfoDetailByKey(sKey, sValue.split("|")[1]);
- }
- }
- }
- return false;
- }
- /****************************************************************************************
- * Function : appf_getConsultInfo
- * Description : key에 해당하는 협진관련 정보를 반환한다.
- * Argument : 01.sKey - 협진관련키
- * return type : 협진정보 or ""
- * Creator : 임준호
- ****************************************************************************************/
- function appf_getConsultInfo(sKey){
-
- var objForm = frmf_getViewer("patientInfo");
- var sConsultInfo = "";
-
- if (!utlf_isNull(objForm)){
- sConsultInfo = objForm.fGetConsultInfo(sKey);
- }
-
- return sConsultInfo;
- }
- /****************************************************************************************
- * Function : appf_getConsultInfos
- * Description : 협진관련 정보를 지정한 노드로 모두 copyNode한다.
- * Argument : 01.sKey - 협진관련키
- * return type : 협진정보 or ""
- * Creator : 임준호
- ****************************************************************************************/
- function appf_getConsultInfos(objDsDest) {
-
- var objForm = frmf_getViewer("patientInfo");
- if (!utlf_isNull(objForm) && !utlf_isNull(objDsDest)){
- var objDsSrc = objForm.fgetConsultInfos();
- if(!utlf_isNull(objDsSrc)){
- objDsSrc.copyData(objDsDest);
- return true;
- }
- }
- return false;
- }
- /**
- * @-----------------------------------------------------------------------------------
- * @desc : 처방기본데이터 copyNode
- * @param : destPath : 대상경로
- * @return : true or false
- * @-----------------------------------------------------------------------------------
- */
- function appf_getOrderBasicInfo(destPath){
- var viewerObj = frmf_getViewer("orderbasicinfo");
- if (!utlf_isNull(viewerObj)){
- var objects = viewerObj.objects;
- for(var i = 0; i < objects.length; i++) {
- var object = objects[i];
- var sObject = dsf_createDs(destPath + object.name.substr(3));
- var ds_object = this.objects[sObject];
-
- ds_object.copyData(object);
- }
- return true;
- }
- return false;
- }
- /****************************************************************************************
- * Function : appf_getZipCodeList
- * Description : 우편번호 검색.
- * Argument : 01.sCondition
- * - "zipcode" : 우편번호
- * - "combination" : 동명/아파트명/건물명
- * - "address" : 주소
- * 02. sTerm : 검색어
- * return type : Object - zipcdhead : 우편번호앞번호
- * - zipcdfoot : 우편번호뒷번호
- * - seqno : 일련번호
- * - address : 입력주소
- * Creator : TF zbcfOpenZipCodeList () 함수 대체
- ****************************************************************************************/
- function appf_getZipCodeList(sCondition, sTerm)
- {
- var objArg = new Object();
- objArg.plgv_sCondition = sCondition;
- objArg.plgv_sTerm = sTerm;
- return frmf_modal("SPZBP00101", "SPZBP00101", objArg, null, null, null, null, null, null, null, null, null, "M");
- }
- /****************************************************************************************
- * Function : appf_openHiChart
- * Description : 설명처방 창 열기
- * Argument : 없음
- * return type : 없음
- * Creator : 김상목
- ****************************************************************************************/
- function appf_openHiChart() {
- var dutplceinstcd = sysf_getUserInfo("dutplceinstcd");
- if(dutplceinstcd == "033") {
- return;
- }
-
- var ykiho = (dutplceinstcd == "032") ? "37100467" : "37100017";
- var userid = sysf_getUserId();
- var usernm = sysf_getUserName();
- var orddeptcd = sysf_getUserInfo("dutplcecd");
- var hospitalkey = (dutplceinstcd == "032") ? "e285dd1eb61d4949b8bde02a936d9cf8" : "1b9bed0d8cd9439d88aa8dc273f30551";
- var url = "";
- var usertype = "";
-
- var jobkindcd = sysf_getUserInfo("jobkindcd");
- if(jobkindcd == "0330") { // 의사
- usertype = "D";
- } else if(jobkindcd == "1220") { // 약사
- usertype = "E";
- } else if(jobkindcd == "1140") { // 간호사
- usertype = "F";
- // } else if(jobkindcd == "9951") { // 간호조무사 (일단 기타로 처리)
- // usertype = "G";
- } else if(jobkindcd == "7020") { // 임상기사
- usertype = "H";
- } else { // 기타
- usertype = "I";
- }
-
- var pamInfoCvs = sysf_getGlobalVariable("paminfo");
- dsf_setCSVToDs ( "ds_hichartinfo", pamInfoCvs ); //상단화면 정보 초기화
- // 주소 : hichart.knuh.kr (192.168.101.31, 192.168.101.32) 1호기, 2호기 이중화 되어 있음
- if(ds_hichartinfo.rowcount <= 0) {
- url = "https://hichart.knuh.kr/Controls/Doctor/OCSEMR/default.aspx?pa=" + ykiho + "&bl=" + orddeptcd + "&kt=" + usertype
- + "&kw=" + usernm + "&g=" + userid + "&key=" + hospitalkey;
- } else {
- var pid = ds_hichartinfo.getColumn(0, "pid");
- var mpphontel = ds_hichartinfo.getColumn(0, "mpphontel");
- var ioflag = ds_hichartinfo.getColumn(0, "ioflag");
-
- // 본원 또는 외래는 원무기본정보로 환자 휴대폰번호 셋팅
- if(dutplceinstcd == "031" || ioflag != "I") {
- url = "https://hichart.knuh.kr/Controls/Doctor/OCSEMR/default.aspx?pa=" + ykiho + "&bl=" + orddeptcd + "&kt=" + usertype
- + "&kw=" + usernm + "&g=" + userid + "&mi=" + mpphontel + "&c=" + pid + "&key=" + hospitalkey;
- } else {
- // 간호초기평가 기록 조회
- var instcd = ds_hichartinfo.getColumn(0, "instcd");
- var indd = ds_hichartinfo.getColumn(0, "indd");
-
- appf_getHiChartPatPhoneInfo(instcd, pid, indd); // 조회 후 ds_result_hichart_patphoneinfo 데이터셋이 생성된다.
-
- if(ds_result_hichart_patphoneinfo.rowcount <= 0) {
- sysf_messageBox("환자정보를 조회 할 수 없어\n\n원무기본정보로 환자 휴대전화번호를 셋팅합니다.", "E");
-
- url = "https://hichart.knuh.kr/Controls/Doctor/OCSEMR/default.aspx?pa=" + ykiho + "&bl=" + orddeptcd + "&kt=" + usertype
- + "&kw=" + usernm + "&g=" + userid + "&mi=" + mpphontel + "&c=" + pid + "&key=" + hospitalkey;
- } else {
- // 환자의 전화번호
- var patmphone = ds_result_hichart_patphoneinfo.getColumn(0, "patmphone");
- var pattel = ds_result_hichart_patphoneinfo.getColumn(0, "pattel");
- var patetcphone1 = ds_result_hichart_patphoneinfo.getColumn(0, "patetcphone1"); // 현재 사용 안함(2018.01.22)
- var patetcphone2 = ds_result_hichart_patphoneinfo.getColumn(0, "patetcphone2"); // 현재 사용 안함(2018.01.22)
- var telflag = ds_result_hichart_patphoneinfo.getColumn(0, "telflag");
- telflag = (utlf_isNull(telflag)) ? "" : "[" + telflag + "]"; // 본인, 보호자 입력 되어 있지 않을 경우엔 미표시
-
- // 보호자의 전화번호
- var guardrelanm = ds_result_hichart_patphoneinfo.getColumn(0, "guardrelanm");
- var guardmpphone = ds_result_hichart_patphoneinfo.getColumn(0, "guardmpphone");
- var guardtel = ds_result_hichart_patphoneinfo.getColumn(0, "guardtel");
-
- // 가져온 번호에서 숫자만 추출
- patmphone = utlf_getNumberFromString(patmphone);
- pattel = utlf_getNumberFromString(pattel);
- patetcphone1 = utlf_getNumberFromString(patetcphone1);
- patetcphone2 = utlf_getNumberFromString(patetcphone2);
- guardmpphone = utlf_getNumberFromString(guardmpphone);
- guardtel = utlf_getNumberFromString(guardtel);
-
- var regExp = /^01([0|1|6|7|8|9]?)-?([0-9]{3,4})-?([0-9]{4})$/;
-
- // 주보호자 (간호초기평가)
- var guardmpphone2 = "";
- if(regExp.test(guardmpphone)){
- guardmpphone2 = "주보호자[" + guardrelanm + "]:" + guardmpphone;
- }
-
- // 환자 휴대폰 (원무 정보)
- var patmphone2 = "";
- if(patmphone != "") {
- var prefix = (guardmpphone2 == "") ? "" : ",";
- patmphone2 = prefix + "휴대폰" + telflag + ":" + patmphone;
- }
-
- // 환자 연락처 (원무 정보)
- var pattel2 = "";
- if(regExp.test(pattel)){
- var prefix = (guardmpphone2 == "" && patmphone2 == "") ? "" : ",";
- pattel2 = prefix + "연락처" + telflag + ":" + pattel;
- }
-
- var phonelist = "";
-
- // 디폴트 휴대폰 설정
- // 주보호자가 지정되어 있지 않을 경우 환자의 휴대폰과 연락처만 표시
- var defaultPhone = guardmpphone;
- if(defaultPhone == "") {
- if(patmphone == "") defaultPhone = pattel;
- else defaultPhone = patmphone;
- }
-
- var phoneNums = "";
- if(guardmpphone2 != "" || patmphone2 != "" || pattel2 != "") {
- phoneNums = "&ml=" + guardmpphone2 + patmphone2 + pattel2;
- }
-
- phonelist = "&mi=" + defaultPhone + phoneNums;
- url = "https://hichart.knuh.kr/Controls/Doctor/OCSEMR/default.aspx?pa=" + ykiho + "&bl=" + orddeptcd + "&kt=" + usertype
- + "&kw=" + usernm + "&g=" + userid + phonelist +"&c=" + pid + "&key=" + hospitalkey;
- }
- }
- }
-
- frmf_openHtml(url);
-
- // var objExtCommon = new ExtCommon();
- // objExtCommon.executeProcess("C:\\Program Files (x86)\\Internet Explorer\\iexplore.exe", url, "");
- }
- /****************************************************************************************
- * Function : appf_sendHiChartLMS
- * Description : 설명처방 LMS 전송
- * Argument : 01.sVodlist : 설명처방코드 (콤마(,) 구분으로 복수개 전송가능)
- * - "a153a" : 한개 전송
- * - "a153a,g294a" : 복수개 전송 시 콤마(,)로 구분
- * 02. sReceiver : 문자를 받을 휴대전화번호
- * - "010XXXXXXXX" : 한명에게 전송 (콤마(,) 구분으로 여러명에게 전송가능)
- * - "010XXXXXXXX,010YYYYYYYY" : 여러명에게 전송 시 콤마(,)로 구분
- * 03. sPid : 환자번호
- * 04. sComment : 환자에게 알리는 코멘트
- * 05. sCallBackFunc : 콜백함수
- * 06. 콜백에서 업데이트 시킬 rowposition
- * return type : 없음
- * Creator : 김상목
- ****************************************************************************************/
- function appf_sendHiChartLMS(sVodlist, sReceiver, sPid, sComment, sCallBackFunc, rowpos, sReservetime) {
- var objColInfo = new Array();
- objColInfo.push({col: "vodlist", val: sVodlist});
- objColInfo.push({col: "receiver", val: sReceiver});
- objColInfo.push({col: "pid", val: sPid});
- objColInfo.push({col: "comment", val: sComment});
- objColInfo.push({col: "userid", val: sysf_getUserId()});
- objColInfo.push({col: "ordnm", val: sysf_getUserInfo("usernm")});
- objColInfo.push({col: "jobkindcd", val: sysf_getUserInfo("jobkindcd")});
- objColInfo.push({col: "orddeptcd", val: sysf_getUserInfo("dutplcecd")});
-
- if(!utlf_isNull(rowpos))
- objColInfo.push({col: "rowpos", val: rowpos});
-
- if(!utlf_isNull(sReservetime))
- objColInfo.push({col: "reservetime", val: sReservetime});
-
- dsf_createDsRow("ds_send_hichart", objColInfo);
- dsf_createDs("ds_result_hichart");
-
- var oParam = {};
- oParam.id = "hichart_API";
- oParam.service = "hichartapp.HiChart";
- oParam.method = "reqExeSendHiChartLMS";
- oParam.inds = "req=ds_send_hichart";
- oParam.outds = "ds_result_hichart=result_hichart";
- oParam.async = false;
-
- if(!utlf_isNull(sCallBackFunc))
- oParam.callback = sCallBackFunc;
- tranf_submit(oParam);
- }
- function appf_getHiChartPatPhoneInfo(sInstcd, sPid, sIndd) {
- var objColInfo = new Array();
- objColInfo.push({col: "instcd", val: sInstcd});
- objColInfo.push({col: "pid", val: sPid});
- objColInfo.push({col: "indd", val: sIndd});
-
- dsf_createDsRow("ds_send_hichart_patphoneinfo", objColInfo);
- dsf_createDs("ds_result_hichart_patphoneinfo");
-
- var oParam = {};
- oParam.id = "hichart_patphoneinfo_API";
- oParam.service = "hichartapp.HiChart";
- oParam.method = "reqGetHiChartPatPhoneInfo";
- oParam.inds = "req=ds_send_hichart_patphoneinfo";
- oParam.outds = "ds_result_hichart_patphoneinfo=result_hichart_patphoneinfo";
- oParam.async = false;
- tranf_submit(oParam);
- }
- function appf_getHiChartSendHistory(objColInfo, sResultDs, sCallBackFunc) {
- dsf_createDsRow("ds_send_hichart_sendhistory", objColInfo);
- dsf_createDs(sResultDs);
-
- var oParam = {};
- oParam.id = "hichart_sendhistory_API";
- oParam.service = "hichartapp.HiChart";
- oParam.method = "reqGetHiChartSendHistory";
- oParam.inds = "req=ds_send_hichart_sendhistory";
- oParam.outds = sResultDs + "=result_sendhistory";
- oParam.async = true;
-
- if(!utlf_isNull(sCallBackFunc))
- oParam.callback = sCallBackFunc;
- tranf_submit(oParam);
- }
- function appf_getHiChartContentsURL(contentscd) {
- var objColInfo = new Array();
- objColInfo.push({col: "contentscd", val: contentscd});
-
- dsf_createDsRow("ds_send_hichart_getcontentsurl", objColInfo);
- dsf_createDs("ds_result_hichart_contentsurl");
-
- var oParam = {};
- oParam.id = "hichart_getcontentsurl_API";
- oParam.service = "hichartapp.HiChart";
- oParam.method = "reqGetHiChartContentsURL";
- oParam.inds = "req=ds_send_hichart_getcontentsurl";
- oParam.outds = "ds_result_hichart_contentsurl=result_contentsurl";
- oParam.async = false;
- tranf_submit(oParam);
-
- return ds_result_hichart_contentsurl.getColumn(0, "thumUrl");
- }
- ]]></Script>
|