12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427 |
- <?xml version="1.0" encoding="EUC-KR"?>
- <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.css" ?>
- <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
- <xhtml:head>
- <xhtml:title>레지던트 수련계획 관리</xhtml:title>
- <model id="model1">
- <instance id="instance1">
- <root xmlns="">
- <main>
- <reflist/>
- </main>
- <send>
- <req>
- <educyy/>
- <supinfqurtyyflag>1</supinfqurtyyflag>
- <anual>1</anual>
- <deptcd/>
- <mainguidhosp/>
- <name/>
- <refanual/>
- <preststatcd/>
- <trainyychangyn/>
- <iptrefanual>4</iptrefanual>
- </req>
- <reqmd>
- <instcd>001</instcd>
- <deptcd/>
- </reqmd>
- <reqeduc>
- <deptcd/>
- <yy/>
- </reqeduc>
- <save/>
- <requpdtsche>
- <scheflag>02</scheflag>
- </requpdtsche>
- <addrowinfo>
- <emplno/>
- <deptcd/>
- </addrowinfo>
- <prnseq>
- <yy/>
- <deptcd/>
- <supinfqurtyyflag/>
- <anual/>
- <apprtcdrflag/>
- <deptnm/>
- </prnseq>
- </send>
- <init/>
- <hidden/>
- <temp>
- <cellinfo>
- <flag/>
- <ref/>
- <mm/>
- <nextref/>
- </cellinfo>
- <colviewflag>1</colviewflag>
- <emplcnt/>
- <refedreq/>
- <updtyyanual>
- <educyy/>
- <anual/>
- </updtyyanual>
- <guid>
- <guidmedispclinstnm/>
- <guidmedispclinstcd/>
- <guidmedispcldremplnm/>
- <guidmedispcldremplno/>
- </guid>
- <scheflag/>
- </temp>
- </root>
- </instance>
- <submission id="TRRTS00602" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqint" resultref="/root/main/tisorddeptcdlist"/>
- <submission id="TRRTS02201" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/req" resultref="/root/main/reflist"/>
- <submission id="TRRTS02202" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqmd" resultref="/root/main/mdlist"/>
- <submission id="TRRTS02203" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqeduc" resultref="/root/main/educ"/>
- <submission id="TRRTS02204" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/requpdtsche/scheflag" resultref="/root/main/updtsche"/>
- <submission id="TXRTS02201" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/save"/>
- <submission id="TXRTS02202" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/req" resultref="/root/main/tretinfo"/>
- <submission id="TXRTS02203" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/addrowinfo" resultref="/root/main/tretinfo"/>
- <submission id="TXRTS02204" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/addrowinfo" resultref="/root/main/tretinfo"/>
- <submission id="TRRTP00306" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/prnseq" resultref="/root/main/reflist"/>
- <submission id="TRRTS00301" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/prnseq" resultref="/root/main/reflist"/>
- <submission id="TXRTS02205" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/prnseq" resultref="/root/main/tretinfo"/>
- </model>
- <script type="javascript" src="../../../com/commonweb/js/common.js"/>
- <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
- <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
- <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
- <script type="javascript" src="../../../mis/dligclaznsmngtweb/js/RPD001.js"/>
- <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
- <script type="javascript" src="../../../mis/tistrngeducbaseinfomngtweb/js/RTC001.js"/>
- <script type="javascript" ev:event="xforms-ready">
- <![CDATA[
- grd_plan.attribute("backcoloralternate") = "";
- //사용자 권한
- fCheckAuth();
- misfComboComCdListMulti("R0237,R0281,R0305,R0146,R0314,R0281", "cmb_supinfqurtyyflag,cmb_anual,cmb_mainguidhosp,cmb_preststatcd,cmb_instcd,combo1");
-
- submit("TRRTS00602");
- //submit("TRRTS02204");
-
- addComboItem( "cmb_mainguidhosp", "", "", "above");
- addComboItem( "cmb_preststatcd", "", "", "above");
- addComboItem( "combo1", "", "", "above");
-
- grd_instcd.nodeset = cmb_instcd.choices.itemset.attribute("nodeset");
-
- var today = getCurrentDate();
- var cur_yy = parseInt(today.substring(0, 4));
- model.setValue("/root/send/req/educyy", cur_yy);
- ipt_yy.refresh();
-
-
- ]]>
- </script>
- <script type="javascript">
- <![CDATA[
- var gMastUser = false;
- //========================================================================================
- //버튼에 대한 화면 권한 체크(R : 읽기, X : 입력/수정/삭제, P : 출력)
- //========================================================================================
- function fCheckAuth() {
- gMastUser = checkAuth("P") ;
- btn_search.disabled = !checkAuth("R") ;
- btn_save.disabled = !checkAuth("X") ;
-
- btn_adduninputplan.visible = gMastUser;
- btn_grdadd.visible = gMastUser ;
- btn_grddel.visible = gMastUser ;
-
- }
-
- function setScheFromTo() {
- gMastUser = checkAuth("P") ;
- if (!gMastUser) {
- /*
- var sPosdeptcd = getUserInfo("posdeptcd");
-
- // 내과 세부분과일시 내과로 세팅
- if(sPosdeptcd == "2010300000" || sPosdeptcd == "2010400000" || sPosdeptcd == "2010500000" || sPosdeptcd == "2010600000" || sPosdeptcd == "2010700000" || sPosdeptcd == "2010800000" || sPosdeptcd == "2010900000" || sPosdeptcd == "2011000000" || sPosdeptcd == "2011100000")
- {
- model.setValue("/root/send/req/deptcd", "2010000000");
-
- }
- else
- {
- model.setValue("/root/send/req/deptcd", getUserInfo("posdeptcd"));
- }
- cmb_deptcd.refresh();
- */
-
- ipt_yy.disabled = true;
-
- rtsfCheckTermFlag('02',cmb_deptcd.value);
-
- var from = model.getValue("/root/updtsche/list/schefrom");
- var to = model.getValue("/root/updtsche/list/scheto");
- var fromyy=from.substr(0,4);
- var frommm=from.substr(4,2);
- var fromdd=from.substr(6,2);
- var toyy=to.substr(0,4);
- var tomm=to.substr(4,2);
- var todd=to.substr(6,2);
- var today = getCurrentDate();
-
- var schefromto= "수련계획 입력기간은 "+fromyy+"년 "+ frommm+"월 "+fromdd+"일 "+"~ "+ toyy+"년 "+ tomm+"월 "+todd+"일 까지 입니다.";
- model.setValue("/root/temp/scheflag",schefromto);
- if( parseInt(today) >= parseInt(from) && parseInt(today) <= parseInt(to) ){
- btn_save.disabled=false;
- }else{
- btn_save.disabled=true;;
- }
- }
-
- }
-
- /* 수련계획을 추가하거나 삭제한다.
- 추가 : 최종 수련계획으로 6개월을 생성
- 삭제 : 최종 수련계획 6개월을 삭제
- 이기능의 주목적은 수련기간 중 휴직,분만을 통해 수료조건의 기간 불충분시 근무연장에 대한 수련계획 추가를 한다.
- 6개월 단위로 하는 것은 휴직이 6개월 단위이므로 추가분도 6개월 단위이다.
- 1년이 연장되면 추가를 두번한다.
- */
- function fDoAddOrDel(submitid)
- {
- // 조회년차를 4년으로 하여야 한다.
- if (model.getValue("/root/temp/refedreq/iptrefanual") == "4")
- {
- var emplno = grd_plan.valueMatrix(grd_plan.row, grd_plan.colRef("emplno"));
- var emplnm = grd_plan.valueMatrix(grd_plan.row, grd_plan.colRef("name"));
-
- if (emplno == "")
- {
- messageBox("선택된 전공의가 없습니다.", "I", "");
- return;
- }
-
- var msg = document.controls( event.target ).text;
- if (messageBox(emplnm + " 의 " +msg+ " 합니다.\n\n", "Q004", "") != 6)
- {
- return;
- }
-
- // 최종의 수련계획은 사원번호의 전공과목의 레지던트 수련계획이다.
- model.setValue("/root/send/addrowinfo/emplno", emplno);
- model.setValue("/root/send/addrowinfo/deptcd", model.getValue("/root/temp/refedreq/deptcd"));
-
- if ( submit(submitid) )
- {
- if (model.getValue("/root/main/tretinfo/tretcnt") == "0")
- {
- messageBox(model.getValue("/root/main/tretinfo/tretmsg"), "I", "");
- return;
- }
- else
- {
- btn_search.dispatch("DOMActivate");
- }
- }
- }
- else
- {
- messageBox("조회년차를 4년차로 하여 조회 하신후에 가능합니다.", "I", "");
- }
- }
-
- /* 수련입력기간 체크
- 수련교육실무자는 언제든지 가능한다.
- 그외의 사용자는 과별로 입력기간에만 가능하다.
- 입력가능기간이라고 해도 지난 수련계획은 수정 할 수 없다.
- */
- function fChkUpdt(ym)
- {
- if (gMastUser)
- {
- return true;
- }
- else
- {
- //var node = instance1.selectSingleNode("/root/main/updtsche/lis[schedetlcd='"+ model.getValue("/root/temp/refedreq/deptcd") +"']");
- //rtsfCheckTermFlag('02',getUserInfo("posdeptcd"));
- rtsfCheckTermFlag('02',cmb_deptcd.value);
- var from = model.getValue("/root/updtsche/list/schefrom");
- var to = model.getValue("/root/updtsche/list/scheto");
- var today = getCurrentDate();
-
- var cur_md = today.substr(4, 4);
- var cur_ym = today.substr(0, 6);
-
- if (ym > cur_ym && from <= today && today <= to) {
- return true;
- }
- }
-
- messageBox("수련계획입력기간중에 미래의 계획만 입력가능합니다.", "I", "");
- return false;
- }
-
-
- // 현재 셀의 위치가 몇월인가, 기관,근무,교육인가를 리턴
- function CELL_INFO()
- {
- this.flag = ""; //기관:inst,근무지:dept,교육:educ
- this.ref = ""; //col ref
- this.mm = ""; //month
- this.nextref = "";
- }
-
- // 그리드 표시를 3,9 월부터 표시 할때 수행하는 함수
- // 사용하지 않는다.
- function fChgGrdColPos()
- {
- var arr_nm = new Array("yymm", "instmm", "deptmm", "educmm");
- var arr_mm1 = new Array("03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "01", "02");
- var arr_mm2 = new Array("09", "10", "11", "12", "01", "02", "03", "04", "05", "06", "07", "08");
- var arr_col = new Array(-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1);
-
- var arr_src;
- var arr_dest;
- if (model.getValue("/root/temp/colviewflag") == "1")
- {
- arr_src = arr_mm2;
- arr_dest = arr_mm1;
- }
- else
- {
- arr_src = arr_mm1;
- arr_dest = arr_mm2;
- }
- for (var i=0; i<arr_nm.length; i++)
- {
- for (var j=0; j<arr_src.length; j++)
- {
- arr_col[j] = grd_plan.colRef(arr_nm[i] + arr_src[j]);
- }
-
- for (var j=0; j<arr_col.length; j++)
- {
- //colidx = grd_plan.colRef(arr_nm[i] + arr_src[j]);
- grd_plan.colAttribute(arr_col[j], "ref") = arr_nm[i] + arr_dest[j];
-
- grd_plan.valueMatrix(0, arr_col[j]) = arr_dest[j]+"월";
- grd_plan.valueMatrix(1, arr_col[j]) = arr_dest[j]+"월";
- grd_plan.valueMatrix(2, arr_col[j]) = arr_dest[j]+"월";
- }
- }
-
- grd_plan.refresh();
- }
-
- // 기관, 근무지, 교육, 교육년도, 년차를 입력 할 때 수행하는 함수
- // 해당 값을 세팅하고 월별 status를 u로 세팅한다.
- function fSetPlanValue(colidx, valu)
- {
- var mm = fGetMMfromRef(grd_plan.colAttribute(colidx, "ref"));
- var yy = grd_plan.valueMatrix(grd_plan.row, grd_plan.colRef("yy"));
-
- if (fChkUpdt(yy+mm))
- {
- grd_plan.valueMatrix(grd_plan.row, colidx) = valu;
- grd_plan.rowStatus(grd_plan.row) = 2;
-
- grd_plan.valueMatrix(grd_plan.row, grd_plan.colRef("statusmm"+mm)) = "u";
- }
- }
-
- /* 교육코드 리스트 세팅
-
- */
- function fSetEducList(rowidx, mm)
- {
- var deptcd = grd_plan.valueMatrix(rowidx, grd_plan.colRef("deptmm"+ mm));
- var instcd = grd_plan.valueMatrix(rowidx, grd_plan.colRef("instmm"+ mm));
- var anual = grd_plan.valueMatrix(rowidx, grd_plan.colRef("anualmm"+mm));
-
- if (deptcd == "")
- {
- grd_educ.attribute("visibility") = "hidden";
- return false;
- }
- if (instcd == "")
- {
- messageBox(mm + " 월의 기관이 입력되지 않았습니다.", "I", "");
- grd_educ.attribute("visibility") = "hidden";
- return false;
- }
-
- if (model.getValue("/root/temp/refedreq/deptcd") == "2230000000")
- {
- var deptcd10 = instance1.getXPathString("/root/main/tisorddeptcdlist[tisdeptcd='"+deptcd+"']/deptcd");
- if (model.getValue("/root/send/reqeduc/deptcd") != deptcd10)
- {
- model.setValue("/root/send/reqeduc/deptcd", deptcd10);
- model.setValue("/root/send/reqeduc/yy", model.getValue("/root/temp/refedreq/educyy"));
- submit("TRRTS02203");
- }
- }
-
- var s_nodeset = "/root/main/educ/educcdlist[instcd='"+instcd+"' and anual='"+anual+"']";
-
- if (s_nodeset != model.getValue("/root/temp/educnodeset"))
- {
- model.makeValue("/root/temp/educnodeset", s_nodeset);
-
- grd_educ.nodeset = s_nodeset;
- }
-
- return true;
- }
-
- /* 코드창 드래그시 수행하는 함수
- */
- function fSetDiffPos(grdObj)
- {
- if (event.button == "1")
- {
- model.makeValue("/root/temp/diffpos/x", event.clientX - parseInt(grdObj.attribute("left")));
- model.makeValue("/root/temp/diffpos/y", event.clientY - parseInt(grdObj.attribute("top")));
- }
-
- }
-
- /* 코드창 드래그시 수행하는 함수
- */
- function fMoveGrd(grdObj)
- {
- if (event.button == "1")
- {
- grdObj.attribute("left") = event.clientX - (parseInt(model.getValue("/root/temp/diffpos/x")));
- grdObj.attribute("top") = event.clientY - (parseInt(model.getValue("/root/temp/diffpos/y")));
- }
- }
-
- function fGetMMfromRef(refstr)
- {
- return refstr.substr(refstr.length-2, 2);
- }
-
- /* 입력 가능한 셀인지를 체크한다.
- */
- function fIsMonthCell(colidx)
- {
- var cellinfo = new CELL_INFO();
-
- if (grd_plan.colRef("instmm01") <= colidx && colidx <= grd_plan.colRef("instmm12"))
- {
- cellinfo.flag = "inst";
- }
- else if (grd_plan.colRef("deptmm01") <= colidx && colidx <= grd_plan.colRef("deptmm12"))
- {
- cellinfo.flag = "dept";
- }
- else if (grd_plan.colRef("educmm01") <= colidx && colidx <= grd_plan.colRef("educmm12"))
- {
- cellinfo.flag = "educ";
- }
- else if (grd_plan.colRef("educyymm01") <= colidx && colidx <= grd_plan.colRef("educyymm12"))
- {
- cellinfo.flag = "anual";
- }
- else if (grd_plan.colRef("anualmm01") <= colidx && colidx <= grd_plan.colRef("anualmm12"))
- {
- cellinfo.flag = "anual";
- }
-
- cellinfo.ref = grd_plan.colAttribute(colidx, "ref");
- cellinfo.mm = fGetMMfromRef(cellinfo.ref);
-
- var dept_valu = grd_plan.valueMatrix(grd_plan.row, grd_plan.colRef("deptmm" + cellinfo.mm));
- if (dept_valu == "")
- cellinfo.flag = "";
-
- var imm = parseInt(cellinfo.mm, 10) + 1;
- if (imm > 12)
- imm -= 12;
-
- var smm = (imm + "").getLeftPad(2, "0");
- cellinfo.nextref = cellinfo.ref.substring(0, cellinfo.ref.length-2) + smm;
-
- if (cellinfo.flag == "")
- cellinfo = null;
-
- /*model.makeValue("/root/temp/cellinfo/flag", cellinfo.flag);
- model.makeValue("/root/temp/cellinfo/ref", cellinfo.ref);
- model.makeValue("/root/temp/cellinfo/mm", cellinfo.mm);
- model.makeValue("/root/temp/cellinfo/nextref", cellinfo.nextref);
-
- output1.refresh();
- output2.refresh();
- output3.refresh();
- output4.refresh();*/
-
- return cellinfo;
- }
-
- function fDefaultDeptSetting(control)
- {
- var sPosdeptcd = getUserInfo("posdeptcd");
- var sDeptcd = control.value;
-
- // 주임교수이면서 핵의학과 교수일때
- if(checkAuth("X") && sPosdeptcd == "2180000000")
- {
- if(sDeptcd == "2180000000" || sDeptcd == "2160000000")
- {}
- else
- {
- messageBox(control.label+ "을 선택", "E001");
- control.value = sPosdeptcd;
- // model.setValue("/root/send/deptcd", sPosdeptcd); // 진료과 설정
- }
- }
-
- // 주임교수이면서 치과 교수일때
- else if(checkAuth("X") && sPosdeptcd == "2240000000")
- {
- if(sDeptcd == "2240000000" || sDeptcd == "2240500000" || sDeptcd == "2240200000" || sDeptcd == "2240400000")
- {}
- else
- {
- messageBox(control.label+ "을 선택", "E001");
- control.value = sPosdeptcd;
- // model.setValue("/root/send/deptcd", sPosdeptcd); // 진료과 설정
- }
- }
-
- else if(sPosdeptcd == "2010300000" || sPosdeptcd == "2010400000" || sPosdeptcd == "2010500000" || sPosdeptcd == "2010600000" || sPosdeptcd == "2010700000" || sPosdeptcd == "2010800000" || sPosdeptcd == "2010900000" || sPosdeptcd == "2011000000" || sPosdeptcd == "2011100000")
- {
- if(sDeptcd != "2010000000")
- {
- messageBox(control.label+ "을 선택", "E001");
- sPosdeptcd = "2010000000";
- control.value = sPosdeptcd;
- // model.setValue("/root/send/deptcd", sPosdeptcd); // 진료과 설정
- }
- }
-
- else
- {
- if(checkAuth("X"))
- {}
- else
- {
- if(sPosdeptcd != sDeptcd)
- {
- messageBox(control.label+ "을 선택", "E001");
- control.value = sPosdeptcd;
- }
- }
- }
-
- model.refresh();
- }
- ]]>
- </script>
- </xhtml:head>
- <xhtml:body style="margin-left:8; margin-right:8; ">
- <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
- <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:800px; height:14px; ">레지던트 수련 계획 관리</caption>
- </group>
- <group id="group2" scroll="auto" style="left:0px; top:38px; width:1195px; height:744px; ">
- <caption id="caption22" class="tit_2" style="left:5px; top:81px; width:219px; height:14px; ">수련계획 및 교육관리</caption>
- <group id="group6" style="left:0px; top:10px; width:1195px; height:90px; vertical-align:top; ">
- <shape id="roundrect3" class="roundrect_search" appearance="roundrect" style="left:0px; top:0px; width:1195px; height:63px; "/>
- <caption id="cap_yy" class="search_name" style="left:15px; top:11px; width:125px; height:17px; ">년 도 :</caption>
- <caption id="cap_supinfqurtyyflag" class="search_name" style="left:285px; top:11px; width:126px; height:17px; ">상 하 반 기 :</caption>
- <caption id="cap_anual" class="search_name" style="left:539px; top:10px; width:109px; height:17px; ">전공의년차 :</caption>
- <caption id="cap_deptcd" class="search_name" style="left:770px; top:10px; width:109px; height:17px; ">전 공 과 :</caption>
- <select1 id="cmb_anual" ref="/root/send/req/anual" class="combo_s_essential" appearance="minimal" style="left:642px; top:9px; width:100px; height:19px; ">
- <choices>
- <itemset>
- <label/>
- <value/>
- </itemset>
- </choices>
- <script type="javascript" ev:event="xforms-value-changed">
- <![CDATA[
- var anual = cmb_anual.value;
- var deptcd = cmb_deptcd.value;
-
- if(deptcd =='2230000000' || deptcd =='2240000000' ||deptcd =='2240200000'||deptcd =='2240400000'||deptcd =='2240500000')
- {
- if(anual =='4')
- {
- cmb_anual.value ='3';
- }
-
- }
- ]]>
- </script>
- </select1>
- <select1 id="cmb_deptcd" ref="/root/send/req/deptcd" class="combo_s_essential" appearance="minimal" style="left:864px; top:9px; width:100px; height:19px; ">
- <choices>
- <itemset nodeset="/root/main/tisorddeptcdlist">
- <label ref="deptnm"/>
- <value ref="deptcd"/>
- </itemset>
- </choices>
- <script type="javascript" ev:event="xforms-value-changed">
- <![CDATA[
- fDefaultDeptSetting(cmb_deptcd);
-
- var anual = cmb_anual.value;
- var deptcd =cmb_deptcd.value;
-
- if(deptcd =='2230000000' || deptcd =='2240000000' ||deptcd =='2240200000'||deptcd =='2240400000'||deptcd =='2240500000' )
- { if(anual =='4')
- {
- cmb_anual.value ='3';
- }
-
- }
- ]]>
- </script>
- </select1>
- <input id="ipt_yy" ref="/root/send/req/educyy" class="input_s_essential" inputtype="date" format="yyyy" style="left:145px; top:9px; width:110px; height:19px; "/>
- <caption id="caption2" class="search_name" style="left:15px; top:35px; width:125px; height:17px; ">주지도교육병원 :</caption>
- <select1 id="cmb_mainguidhosp" ref="/root/send/req/mainguidhosp" class="combo_s_essential" appearance="minimal" style="left:145px; top:34px; width:110px; height:19px; ">
- <choices>
- <itemset>
- <label/>
- <value/>
- </itemset>
- </choices>
- </select1>
- <caption id="caption3" class="search_name" style="left:285px; top:35px; width:110px; height:17px; ">이 름 :</caption>
- <caption id="caption4" class="search_name" style="left:539px; top:36px; width:106px; height:17px; ">조회 년차 :</caption>
- <line id="line3" class="line_4" style="x1:1110px; y1:8px; x2:1110px; y2:51px; border-color:#ffe4bb; border-left-style:solid; "/>
- <select1 id="cmb_supinfqurtyyflag" ref="/root/send/req/supinfqurtyyflag" class="combo_s_essential" navindex="2" appearance="minimal" style="left:400px; top:9px; width:110px; height:19px; ">
- <choices>
- <itemset>
- <label/>
- <value/>
- </itemset>
- </choices>
- </select1>
- <input id="ipt_name" ref="/root/send/req/name" class="input_default" imemode="hangul" style="left:400px; top:34px; width:110px; height:19px; ">
- <script type="javascript" ev:event="onkeypress">
- <![CDATA[
- inputEnterKey("btn_search", "DOMActivate");
- ]]>
- </script>
- </input>
- <button id="btn_search" class="btn1_letter2" style="left:1125px; top:18px; width:56px; height:22px; ">
- <caption>조회</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- var updtdata = getGridUpdateData(grd_plan);
-
- if ( updtdata != "")
- {
- var ret = messageBox("그리드에 작업 중인 내용이 있습니다.","Q002");
- if (ret == 6) { // OK
- var savedata = grd_plan.getUpdateData();
- model.makeValue("/root/send/save", savedata);
- submit("TXRTS02201");
- }
- }
- // 필수 조회조건
- if ( !isRequiredControls("ipt_yy", "cmb_supinfqurtyyflag","cmb_anual","cmb_deptcd") ) {
- return false;
- }
-
- var a1 = parseInt(model.getValue("/root/send/req/anual"));
- var a2 = parseInt(model.getValue("/root/send/req/iptrefanual"));
-
- model.setValue("/root/send/req/refanual", a1+a2-1);
-
- // 그리드의 스타일을 초기화하고 코드입력창을 모두 숨긴다.
- grd_plan.rebuildStyle();
-
- grd_mdlist.visible = false;
- grd_instcd.visible = false;
- grd_educ.visible = false;
- grup_educyyanual.visible = false;
-
- /*if (model.getValue("/root/send/req/supinfqurtyyflag") != model.getValue("/root/temp/colviewflag"))
- {
- model.setValue("/root/temp/colviewflag", model.getValue("/root/send/req/supinfqurtyyflag"));
-
- //fChgGrdColPos();
- }*/
-
- // 레지던트 수련계획 조회
- var isRef = submit("TRRTS02201");
- //수련계획입력기관 설정
- setScheFromTo();
- if (! isRef)
- return;
-
-
- // 주지도병원, 이름, 근무상태는 전체이고 조회년차가 4일때 수련계획 생성 로직을 수행한다.
- var today = getCurrentDate();
- var cur_yy = parseInt(today.substring(0, 4));
- var cretflag = false;
- if (model.getValue("/root/send/req/educyy") == cur_yy &&
- model.getValue("/root/send/req/mainguidhosp") == "" &&
- model.getValue("/root/send/req/name") == "" &&
- model.getValue("/root/send/req/iptrefanual") == "4" &&
- model.getValue("/root/send/req/preststatcd") == "" )
- {
- cretflag = true;
- }
- // 조회된 결과가 없다면 최종수련계획으로 1년을 생성한다.
- // 1년차는 4년을 생성한다. 가정의학,보철,구강,교정은 3년 생성
- // tobe는 신규임용시 4년을 생성하나 asis데이터는 1년씩 생성하여 나머지 데이터가 존재하지 않음으로 해서 1년생성 로직이 필요함.
- if (cretflag && getNodesetCount("/root/main/reflist/resitrngpalnlist") == "0" && cmb_anual.value=='1')
- {
- if (submit("TXRTS02202"))
- {
- if (model.getValue("/root/main/tretinfo/tretcnt") == "0")
- {
- messageBox(model.getValue("/root/main/tretinfo/tretmsg"), "I", "");
- return;
- }
- else
- {
- isRef = submit("TRRTS02201");
-
- if (! isRef)
- return;
- }
- }
- else
- {
- return;
- }
- }
-
- // 조회가 이루어지면 화면 세팅을 한다.
- if (isRef)
- {
- model.copyNode("/root/temp/refedreq", "/root/send/req");
-
- // 가정의학과는 근무지를 변경 할 수 있으므로 근무지 선택시 조회한다.
- if (model.getValue("/root/send/req/deptcd") != "2230000000")
- {
- if (model.getValue("/root/send/reqeduc/deptcd") != model.getValue("/root/send/req/deptcd") ||
- model.getValue("/root/send/reqeduc/yy") != model.getValue("/root/send/req/educyy"))
- {
- model.setValue("/root/send/reqeduc/deptcd", model.getValue("/root/send/req/deptcd"));
- model.setValue("/root/send/reqeduc/yy", model.getValue("/root/send/req/educyy"));
- submit("TRRTS02203");
- }
- }
-
- // 내과의 분과코드를 조회한다.
- if (model.getValue("/root/send/req/deptcd") == "2010000000")
- {
- model.setValue("/root/send/reqmd/deptcd", "MD");
- submit("TRRTS02202");
- }
- // 가정의학과의 근무지는 모든 전공과로 가능하다.
- else
- {
- model.setValue("/root/send/reqmd/deptcd", "");
- submit("TRRTS02202");
- }
- // 다른과는 근무지와 전공과가 같으며 변경 될 수 없다.
-
- // 사원번호를 기준으로 alterante한다.
- var colr = "#eeffff";
- var colidx_emplno = grd_plan.colRef("emplno");
- var cur_emplno = "";
- var emplcnt = 0;
- for (var i=grd_plan.fixedRows; i<grd_plan.rows; i++)
- {
- if (cur_emplno != grd_plan.valueMatrix(i, colidx_emplno))
- {
- emplcnt++;
- cur_emplno = grd_plan.valueMatrix(i, colidx_emplno);
-
- if (colr == "") {
- colr = "#eeffff";
- } else {
- colr = "";
- }
- }
-
- if (colr != "")
- grd_plan.rowStyle(i, "all", "background-color") = colr;
- }
- grd_plan.refresh();
-
- // 조회된 인원수 표시
- model.setValue("/root/temp/emplcnt", emplcnt);
- opt_emplcnt.refresh();
-
- // 수련계획 추가,삭제는 수련교육실무자만 한다.
- // 최종의 수련계획을 통해 6개월을 추가,삭제 하기 때문에 확인을 위해서는 조회년차를 필히 4년으로 하여 작업하게 한다.
- if (gMastUser && model.getValue("/root/send/req/iptrefanual") == "4")
- {
- btn_grdadd.disabled = false;
- btn_grddel.disabled = false;
- }
- else
- {
- btn_grdadd.disabled = true;
- btn_grddel.disabled = true;
- }
- }
-
- ]]>
- </script>
- </button>
- <button id="btn_grdadd" class="btn5_letter7" style="left:881px; top:65px; width:97px; height:19px; ">
- <caption>수련계획 추가</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- fDoAddOrDel("TXRTS02203");
- ]]>
- </script>
- </button>
- <select1 id="cmb_refanual" ref="/root/send/req/iptrefanual" class="combo_s_essential" appearance="minimal" style="left:642px; top:35px; width:100px; height:19px; ">
- <choices>
- <item>
- <label>1</label>
- <value>1</value>
- </item>
- <item>
- <label>2</label>
- <value>2</value>
- </item>
- <item>
- <label>3</label>
- <value>3</value>
- </item>
- <item>
- <label>4</label>
- <value>4</value>
- </item>
- </choices>
- </select1>
- <select1 id="cmb_preststatcd" ref="/root/send/req/preststatcd" class="combo_s_essential" visibility="hidden" appearance="minimal" style="left:863px; top:35px; width:100px; height:19px; ">
- <choices>
- <itemset nodeset="/root/main/codelist/deptlist">
- <label ref="passsbjnm"/>
- <value ref="passsbjcd"/>
- </itemset>
- </choices>
- </select1>
- <caption id="caption5" class="search_name" visibility="hidden" style="left:770px; top:35px; width:109px; height:17px; ">근무상태 :</caption>
- <output id="output1" ref="/root/temp/cellinfo/flag" visibility="hidden" style="left:152px; top:65px; width:53px; height:19px; "/>
- <output id="output2" ref="/root/temp/cellinfo/ref" visibility="hidden" style="left:200px; top:65px; width:53px; height:19px; "/>
- <output id="output3" ref="/root/temp/cellinfo/mm" visibility="hidden" style="left:227px; top:65px; width:53px; height:19px; "/>
- <output id="output4" ref="/root/temp/cellinfo/nextref" visibility="hidden" style="left:282px; top:65px; width:53px; height:19px; "/>
- <caption id="caption7" style="left:10px; top:65px; width:100px; height:20px; ">조회된 인원수 :</caption>
- <output id="opt_emplcnt" ref="/root/temp/emplcnt" style="left:100px; top:65px; width:50px; height:19px; text-align:left; "/>
- <button id="btn_grddel" class="btn5_letter7" style="left:981px; top:65px; width:97px; height:19px; ">
- <caption>수련계획 삭제</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- fDoAddOrDel("TXRTS02204");
- ]]>
- </script>
- </button>
- <input id="ipt_guidmedispclinstnm" ref="/root/temp/guid/guidmedispclinstnm" class="input_search" navindex="2" visibility="hidden" style="left:1010px; top:15px; width:20px; height:19px; "/>
- <input id="ipt_guidmedispclinstcd" ref="/root/temp/guid/guidmedispclinstcd" class="input_search" navindex="2" visibility="hidden" style="left:985px; top:15px; width:20px; height:19px; "/>
- <input id="ipt_guidmedispcldremplno" ref="/root/temp/guid/guidmedispcldremplno" class="input_search" navindex="2" visibility="hidden" style="left:1060px; top:15px; width:55px; height:19px; "/>
- <input id="ipt_guidmedispcldremplnm" ref="/root/temp/guid/guidmedispcldremplnm" class="input_search" navindex="2" visibility="hidden" style="left:1035px; top:15px; width:20px; height:19px; "/>
- <output id="oup_scheflag" ref="/root/temp/scheflag" style="left:294px; top:65px; width:455px; height:19px; font-weight:bold; color:#0000ff; "/>
- <button id="btn_adduninputplan" class="btn5_letter10" style="left:749px; top:65px; width:130px; height:19px; ">
- <caption>수련계획미입력자 추가</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- model.setValue("/root/send/prnseq/yy", model.getValue("/root/send/req/educyy"));
- model.setValue("/root/send/prnseq/supinfqurtyyflag", model.getValue("/root/send/req/supinfqurtyyflag"));
- var retMes = messageBox("수련계획 미입력자를 추가하시겠습니까?", "Q999");
- if (retMes == 6) {
- if (submit("TXRTS02205")) {
- if (model.getValue("/root/main/tretinfo/tretcnt") == "0") {
- messageBox(model.getValue("/root/main/tretinfo/tretmsg"), "I", "");
- return;
- } else {
- btn_search.dispatch("DOMActivate");
- }
- }
- }
- ]]>
- </script>
- </button>
- </group>
- <line id="line19" class="line_1" style="x1:0px; y1:95px; x2:1195px; y2:95px; "/>
- <button id="button1" class="btn2_letter4" style="left:1085px; top:75px; width:64px; height:19px; ">
- <caption>엑셀저장</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- var fileName = window.fileDialog("save", ",", false, "excel", "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
- if (fileName != "") {;
- grd_plan.saveExcel(fileName, "exporttype:multi");
- }
- ]]>
- </script>
- </button>
- <multilinegrid id="grd_plan" nodeset="/root/main/reflist/resitrngpalnlist" caption="근무년도^성명^전공과^지도교수^구분^1월^1월^2월^2월^3월^3월^4월^4월^5월^5월^6월^6월^7월^7월^8월^8월^9월^9월^10월^10월^11월^11월^12월^12월|근무년도^성명^군보^지도교수^구분^1월^1월^2월^2월^3월^3월^4월^4월^5월^5월^6월^6월^7월^7월^8월^8월^9월^9월^10월^10월^11월^11월^12월^12월|근무년도^사원번호^군보^근무병원^구분^1월^1월^2월^2월^3월^3월^4월^4월^5월^5월^6월^6월^7월^7월^8월^8월^9월^9월^10월^10월^11월^11월^12월^12월|근무년도^사원번호^주교육병원^근무병원^구분^1월^1월^2월^2월^3월^3월^4월^4월^5월^5월^6월^6월^7월^7월^8월^8월^9월^9월^10월^10월^11월^11월^12월^12월" colsep="^" colwidth="40, 60, 70, 70, 72, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35" focuscolor="transparent" rowsep="|" mergecellsfixedrows="bycolrec" style="left:0px; top:100px; width:1195px; height:644px; ">
- <row>
- <col ref="yy" rowspan="4" tyle="text-align:center;"/>
- <col ref="name" rowspan="2" style="text-align:center; "/>
- <col ref="posdeptnm" style="text-align:center; "/>
- <col ref="guidmedispcldremplnm" rowspan="2" style="text-align:center; "/>
- <col ref="instmmtt" style="text-align:center; "/>
- <col colspan="2" ref="instmm01" style="text-align:center; "/>
- <col colspan="2" ref="instmm02" style="text-align:center; "/>
- <col colspan="2" ref="instmm03" style="text-align:center; "/>
- <col colspan="2" ref="instmm04" style="text-align:center; "/>
- <col colspan="2" ref="instmm05" style="text-align:center; "/>
- <col colspan="2" ref="instmm06" style="text-align:center; "/>
- <col colspan="2" ref="instmm07" style="text-align:center; "/>
- <col colspan="2" ref="instmm08" style="text-align:center; "/>
- <col colspan="2" ref="instmm09" style="text-align:center; "/>
- <col colspan="2" ref="instmm10" style="text-align:center; "/>
- <col colspan="2" ref="instmm11" style="text-align:center; "/>
- <col colspan="2" ref="instmm12" style="text-align:center; "/>
- <col ref="statusmm01" rowspan="4" visibility="hidden" style="text-align:center; "/>
- <col ref="statusmm02" rowspan="4" visibility="hidden" style="text-align:center; "/>
- <col ref="statusmm03" rowspan="4" visibility="hidden" style="text-align:center; "/>
- <col ref="statusmm04" rowspan="4" visibility="hidden" style="text-align:center; "/>
- <col ref="statusmm05" rowspan="4" visibility="hidden" style="text-align:center; "/>
- <col ref="statusmm06" rowspan="4" visibility="hidden" style="text-align:center; "/>
- <col ref="statusmm07" rowspan="4" visibility="hidden" style="text-align:center; "/>
- <col ref="statusmm08" rowspan="4" visibility="hidden" style="text-align:center; "/>
- <col ref="statusmm09" rowspan="4" visibility="hidden" style="text-align:center; "/>
- <col ref="statusmm10" rowspan="4" visibility="hidden" style="text-align:center; "/>
- <col ref="statusmm11" rowspan="4" visibility="hidden" style="text-align:center; "/>
- <col ref="statusmm12" rowspan="4" visibility="hidden" style="text-align:center; "/>
- <col ref="statusmmmg" rowspan="4" visibility="hidden" style="text-align:center; "/>
- <col ref="posdeptcd" rowspan="4" visibility="hidden" style="text-align:center; "/>
- <col ref="rregno" rowspan="4" visibility="hidden" style="text-align:center; "/>
- <col ref="apprtcdrflag" rowspan="4" visibility="hidden" style="text-align:center; "/>
- <col ref="guidmedispcldremplno" rowspan="4" visibility="hidden" style="text-align:center; "/>
- <col ref="guidmedispclinstcd" rowspan="4" visibility="hidden" style="text-align:center; "/>
- <col ref="statusguid" rowspan="4" visibility="hidden" style="text-align:center; "/>
- </row>
- <row>
- <col ref="armyflag" rowspan="2" style="text-align:center; "/>
- <col ref="deptmmtt" style="text-align:center; "/>
- <col colspan="2" ref="deptmm01" style="text-align:center; "/>
- <col colspan="2" ref="deptmm02" style="text-align:center; "/>
- <col colspan="2" ref="deptmm03" style="text-align:center; "/>
- <col colspan="2" ref="deptmm04" style="text-align:center; "/>
- <col colspan="2" ref="deptmm05" style="text-align:center; "/>
- <col colspan="2" ref="deptmm06" style="text-align:center; "/>
- <col colspan="2" ref="deptmm07" style="text-align:center; "/>
- <col colspan="2" ref="deptmm08" style="text-align:center; "/>
- <col colspan="2" ref="deptmm09" style="text-align:center; "/>
- <col colspan="2" ref="deptmm10" style="text-align:center; "/>
- <col colspan="2" ref="deptmm11" style="text-align:center; "/>
- <col colspan="2" ref="deptmm12" style="text-align:center; "/>
- </row>
- <row>
- <col ref="emplno" rowspan="2" style="text-align:center; "/>
- <col ref="guidmedispclinstnm" rowspan="2" style="text-align:center; "/>
- <col ref="educmmtt" style="text-align:center; "/>
- <col colspan="2" ref="educmm01" style="text-align:center; "/>
- <col colspan="2" ref="educmm02" style="text-align:center; "/>
- <col colspan="2" ref="educmm03" style="text-align:center; "/>
- <col colspan="2" ref="educmm04" style="text-align:center; "/>
- <col colspan="2" ref="educmm05" style="text-align:center; "/>
- <col colspan="2" ref="educmm06" style="text-align:center; "/>
- <col colspan="2" ref="educmm07" style="text-align:center; "/>
- <col colspan="2" ref="educmm08" style="text-align:center; "/>
- <col colspan="2" ref="educmm09" style="text-align:center; "/>
- <col colspan="2" ref="educmm10" style="text-align:center; "/>
- <col colspan="2" ref="educmm11" style="text-align:center; "/>
- <col colspan="2" ref="educmm12" style="text-align:center; "/>
- </row>
- <row>
- <col ref="mainguidhospnm" style="text-align:center; "/>
- <col ref="yyanualtt" style="text-align:center; "/>
- <col ref="educyymm01" style="text-align:center; "/>
- <col ref="anualmm01" style="text-align:center; "/>
- <col ref="educyymm02" style="text-align:center; "/>
- <col ref="anualmm02" style="text-align:center; "/>
- <col ref="educyymm03" style="text-align:center; "/>
- <col ref="anualmm03" style="text-align:center; "/>
- <col ref="educyymm04" style="text-align:center; "/>
- <col ref="anualmm04" style="text-align:center; "/>
- <col ref="educyymm05" style="text-align:center; "/>
- <col ref="anualmm05" style="text-align:center; "/>
- <col ref="educyymm06" style="text-align:center; "/>
- <col ref="anualmm06" style="text-align:center; "/>
- <col ref="educyymm07" style="text-align:center; "/>
- <col ref="anualmm07" style="text-align:center; "/>
- <col ref="educyymm08" style="text-align:center; "/>
- <col ref="anualmm08" style="text-align:center; "/>
- <col ref="educyymm09" style="text-align:center; "/>
- <col ref="anualmm09" style="text-align:center; "/>
- <col ref="educyymm10" style="text-align:center; "/>
- <col ref="anualmm10" style="text-align:center; "/>
- <col ref="educyymm11" style="text-align:center; "/>
- <col ref="anualmm11" style="text-align:center; "/>
- <col ref="educyymm12" style="text-align:center; "/>
- <col ref="anualmm12" style="text-align:center; "/>
- </row>
- <script type="javascript" ev:event="onclick">
- <![CDATA[
- if( grd_plan.isCell(event.target) && grd_plan.row >= grd_plan.fixedRows )
- {
- if (grd_plan.colRef("guidmedispcldremplnm") == grd_plan.col)
- {
- var par_row = grd_plan.row;
- var recv_list = "guidmedispclinstcd,guidmedispclinstnm,guidmedispcldremplnm,guidmedispcldremplno";
- misfOpenPopUpList("35", ipt_guidmedispcldremplno,"",recv_list);
- var dremplno = ipt_guidmedispcldremplno.value;
- var drname = ipt_guidmedispcldremplnm.value;
- var guidmedispclinstcd = ipt_guidmedispclinstcd.value;
- var guidmedispclinstnm = ipt_guidmedispclinstnm.value;
-
- if(dremplno == null || dremplno == "")
- {
- return;
- }
- else
- {
- var colref = grd_plan.colRef("emplno");
- var emplno = grd_plan.valueMatrix(par_row, colref);
-
- grd_plan.addStatus(par_row,"update");
- grd_plan.valueMatrix(par_row, grd_plan.colRef("statusguid")) = "u";
-
- for(i=grd_plan.fixedRows; i < grd_plan.rows ; i++)
- {
- if (emplno == grd_plan.valueMatrix(i, colref))
- {
- grd_plan.valueMatrix(i, grd_plan.colRef("guidmedispcldremplno")) = dremplno;
- grd_plan.valueMatrix(i, grd_plan.colRef("guidmedispcldremplnm")) = drname;
- grd_plan.valueMatrix(i, grd_plan.colRef("guidmedispclinstcd")) = guidmedispclinstcd;
- grd_plan.valueMatrix(i, grd_plan.colRef("guidmedispclinstnm")) = guidmedispclinstnm;
- }
- }
- grd_plan.refresh();
- }
- }
- else
- {
- var cellinfo = fIsMonthCell(grd_plan.col);
- var cellcolorbase = grd_plan.cellstyle("background-color", grd_plan.row, 3);
- if (cellinfo != null)
- {
- var xpos = event.clientX + parseInt(grd_plan.attribute("left"));
- var ypos = event.clientY;
-
- if (cellinfo.flag == "inst")
- {
- if (grd_instcd.attribute("visibility") == "hidden")
- {
- grd_instcd.attribute("left") = xpos - ( parseInt(grd_instcd.attribute("width")) / 2 );
- grd_instcd.attribute("top") = ypos;
- }
-
- grd_instcd.attribute("visibility") = "visible";
- grd_mdlist.attribute("visibility") = "hidden";
- grd_educ.attribute("visibility") = "hidden";
- grup_educyyanual.attribute("visibility") = "hidden";
- grd_plan.rowStyle(grd_plan.row, "all", "background-color") = cellcolorbase;
- grd_plan.cellstyle("background-color", grd_plan.row, grd_plan.col) = "#FFF000";
-
-
- }
- else if (cellinfo.flag == "dept")
- {
- //내과일때는 세부분과, 가정의학과는 다른 모든과를 지정할 수 있다..
- /*if (model.getValue("/root/temp/refedreq/deptcd") == "2010000000" ||
- model.getValue("/root/temp/refedreq/deptcd") == "2230000000")
- {*/
- if (grd_mdlist.attribute("visibility") == "hidden")
- {
- grd_mdlist.attribute("left") = xpos - ( parseInt(grd_mdlist.attribute("width")) / 2 );
- grd_mdlist.attribute("top") = ypos;
- }
- grd_mdlist.attribute("visibility") = "visible";
- grd_instcd.attribute("visibility") = "hidden";
- grd_educ.attribute("visibility") = "hidden";
- grup_educyyanual.attribute("visibility") = "hidden";
- grd_plan.rowStyle(grd_plan.row, "all", "background-color") = cellcolorbase;
- grd_plan.cellstyle("background-color", grd_plan.row, grd_plan.col) = "#FFF000";
- //}
- }
- else if (cellinfo.flag == "educ")
- {
- if (fSetEducList(grd_plan.row, cellinfo.mm))
- {
- if (grd_educ.attribute("visibility") == "hidden")
- {
- grd_educ.attribute("left") = xpos - ( parseInt(grd_educ.attribute("width")) / 2 );
- grd_educ.attribute("top") = ypos ;
- }
- grd_educ.attribute("visibility") = "visible";
- grd_instcd.attribute("visibility") = "hidden";
- grd_mdlist.attribute("visibility") = "hidden";
- grup_educyyanual.attribute("visibility") = "hidden";
- grd_plan.rowStyle(grd_plan.row, "all", "background-color") = cellcolorbase;
- grd_plan.cellstyle("background-color", grd_plan.row, grd_plan.col) = "#FFF000";
- model.setFocus("grd_educ");
- }
- }
- else if (cellinfo.flag == "anual")
- {
- if (grup_educyyanual.attribute("visibility") == "hidden")
- {
- grup_educyyanual.attribute("left") = xpos - ( parseInt(grup_educyyanual.attribute("width")) / 2 );
- grup_educyyanual.attribute("top") = ypos;
- }
- grup_educyyanual.visible = true;
- grd_educ.attribute("visibility") = "hidden";
- grd_instcd.attribute("visibility") = "hidden";
- grd_mdlist.attribute("visibility") = "hidden";
- grd_plan.rowStyle(grd_plan.row, "all", "background-color") = cellcolorbase;
- grd_plan.cellstyle("background-color", grd_plan.row, grd_plan.col) = "#FFF000";
- }
- }
- }
- }
- ]]>
- </script>
- </multilinegrid>
- <datagrid id="grd_mdlist" nodeset="/root/main/mdlist/getmddeptlist" visibility="hidden" caption="파견과 [닫기]^파견과 [닫기]" colsep="^" colwidth="50, 100" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowsep="|" style="left:90px; top:225px; width:156px; height:236px; border-width:3px; ">
- <col ref="deptcd" style="text-align:center; "/>
- <col ref="deptnm" style="text-align:center; "/>
- <script type="javascript" ev:event="ondblclick">
- <![CDATA[
- if( grd_mdlist.isCell(event.target))
- {
- if (grd_mdlist.row <= grd_mdlist.fixedRows-1)
- {
- grd_mdlist.attribute("visibility") = "hidden";
- var cellcolorbase = grd_plan.cellstyle("background-color", grd_plan.row, 3);
- grd_plan.rowStyle(grd_plan.row, "all", "background-color") = cellcolorbase;
- }
- else
- {
- var cellinfo = fIsMonthCell(grd_plan.col);
- if (cellinfo != null)
- {
- var rowidx = grd_plan.row;
- //grd_plan.valueMatrix(grd_plan.row, grd_plan.col) = grd_mdlist.valueMatrix(grd_mdlist.row, grd_mdlist.colRef("deptcd"));
- fSetPlanValue(grd_plan.colRef("deptmm"+fGetMMfromRef(cellinfo.ref)), grd_mdlist.valueMatrix(grd_mdlist.row, grd_mdlist.colRef("deptcd")));
-
- grd_plan.row = rowidx;
- grd_plan.col = grd_plan.colRef(cellinfo.nextref);
- grd_plan.dispatch("onmouseup");
-
- var cellcolor= grd_plan.cellstyle("background-color", rowidx, grd_plan.colRef(cellinfo.nextref));
- grd_plan.cellstyle("background-color", rowidx, grd_plan.colRef(cellinfo.nextref)-1)=cellcolor;
- grd_plan.cellstyle("background-color", rowidx, grd_plan.colRef(cellinfo.nextref)) = "#FFF000";
- if(grd_plan.col== 38){
- grd_mdlist.attribute("visibility") = "hidden";
- var cellcolorbase = grd_plan.cellstyle("background-color", grd_plan.row, 3);
- grd_plan.rowStyle(grd_plan.row, "all", "background-color") = cellcolorbase;
- }
- }
- }
- }
- ]]>
- </script>
- <script type="javascript" ev:event="onmousedown">
- <![CDATA[
- fSetDiffPos(grd_mdlist);
- ]]>
- </script>
- <script type="javascript" ev:event="onmousemove">
- <![CDATA[
- fMoveGrd(grd_mdlist);
- ]]>
- </script>
- </datagrid>
- <datagrid id="grd_instcd" visibility="hidden" caption="기관 [닫기]^기관 [닫기]" colsep="^" colwidth="50, 100" mergecellsfixedrows="bycolrec" rowsep="|" style="left:110px; top:275px; width:156px; height:328px; border-width:3px; ">
- <col ref="cdnm" style="text-align:center; "/>
- <col ref="detldesc" style="text-align:center; "/>
- <script type="javascript" ev:event="ondblclick">
- <![CDATA[
- if( grd_instcd.isCell(event.target))
- {
- if (grd_instcd.row <= grd_instcd.fixedRows-1)
- {
- grd_instcd.attribute("visibility") = "hidden";
- var cellcolorbase = grd_plan.cellstyle("background-color", grd_plan.row, 3);
- grd_plan.rowStyle(grd_plan.row, "all", "background-color") = cellcolorbase;
- }
- else
- {
- var cellinfo = fIsMonthCell(grd_plan.col);
- if (cellinfo != null)
- {
- var rowidx = grd_plan.row;
- //grd_plan.valueMatrix(grd_plan.row, grd_plan.col) = grd_instcd.valueMatrix(grd_instcd.row, grd_instcd.colRef("cdnm"));
- fSetPlanValue(grd_plan.colRef("instmm"+fGetMMfromRef(cellinfo.ref)), grd_instcd.valueMatrix(grd_instcd.row, grd_instcd.colRef("cdnm")));
-
- grd_plan.row = rowidx;
- grd_plan.col = grd_plan.colRef(cellinfo.nextref);
- grd_plan.dispatch("onmouseup");
- var cellcolor= grd_plan.cellstyle("background-color", rowidx, grd_plan.colRef(cellinfo.nextref));
- grd_plan.cellstyle("background-color", rowidx, grd_plan.colRef(cellinfo.nextref)-1)=cellcolor;
- grd_plan.cellstyle("background-color", rowidx, grd_plan.colRef(cellinfo.nextref)) = "#FFF000";
- if(grd_plan.col== 5){
- grd_instcd.attribute("visibility") = "hidden";
- var cellcolorbase = grd_plan.cellstyle("background-color", grd_plan.row, 3);
- grd_plan.rowStyle(grd_plan.row, "all", "background-color") = cellcolorbase;
- }
- }
- }
- }
- ]]>
- </script>
- <script type="javascript" ev:event="onmousedown">
- <![CDATA[
- fSetDiffPos(grd_instcd);
- ]]>
- </script>
- <script type="javascript" ev:event="onmousemove">
- <![CDATA[
- fMoveGrd(grd_instcd);
- ]]>
- </script>
- </datagrid>
- <datagrid id="grd_educ" nodeset="/root/main/educ/educcdlist" visibility="hidden" caption="기관^년차^교육 [닫기]^교육 [닫기]" colsep="^" colwidth="30, 30, 50, 100" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowsep="|" style="left:130px; top:325px; width:216px; height:328px; border-width:3px; ">
- <col ref="instcd" style="text-align:center; "/>
- <col ref="anual" style="text-align:center; "/>
- <col ref="educcd" style="text-align:center; "/>
- <col ref="educnm" style="text-align:center; "/>
- <col ref="deptcd" visibility="hidden" style="text-align:center; "/>
- <script type="javascript" ev:event="ondblclick">
- <![CDATA[
- if( grd_educ.isCell(event.target))
- {
- if (grd_educ.row <= grd_educ.fixedRows-1)
- {
- grd_educ.attribute("visibility") = "hidden";
- var cellcolorbase = grd_plan.cellstyle("background-color", grd_plan.row, 3);
- grd_plan.rowStyle(grd_plan.row, "all", "background-color") = cellcolorbase;
- }
- else
- {
- var cellinfo = fIsMonthCell(grd_plan.col);
- if (cellinfo != null)
- {
- if (grd_plan.valueMatrix(grd_plan.row, grd_plan.colRef("instmm"+ cellinfo.mm)) == "")
- {
- messageBox(cellinfo.mm + " 월의 기관이 입력되지 않았습니다.", "I", "");
- return;
- }
-
- var rowidx = grd_plan.row;
- //grd_plan.valueMatrix(grd_plan.row, grd_plan.col) = grd_educ.valueMatrix(grd_educ.row, grd_educ.colRef("educcd"));
- var educcd = grd_educ.valueMatrix(grd_educ.row, grd_educ.colRef("educcd"));
- var instcd = grd_educ.valueMatrix(grd_educ.row, grd_educ.colRef("instcd"));
- var deptcd = grd_educ.valueMatrix(grd_educ.row, grd_educ.colRef("deptcd"));
- var anual = grd_educ.valueMatrix(grd_educ.row, grd_educ.colRef("anual"));
- fSetPlanValue(grd_plan.colRef("educmm"+fGetMMfromRef(cellinfo.ref)), educcd);
-
- grd_plan.row = rowidx;
- grd_plan.col = grd_plan.colRef(cellinfo.nextref);
- grd_plan.dispatch("onmouseup");
- var cellcolor= grd_plan.cellstyle("background-color", rowidx, grd_plan.colRef(cellinfo.nextref));
- grd_plan.cellstyle("background-color", rowidx, grd_plan.colRef(cellinfo.nextref)-1)=cellcolor;
- grd_plan.cellstyle("background-color", rowidx, grd_plan.colRef(cellinfo.nextref)) = "#FFF000";
- if(grd_plan.col== 53){
- grd_educ.attribute("visibility") = "hidden";
- var cellcolorbase = grd_plan.cellstyle("background-color", grd_plan.row, 3);
- grd_plan.rowStyle(grd_plan.row, "all", "background-color") = cellcolorbase;
- }
-
- fSetEducList(rowidx, fGetMMfromRef(cellinfo.nextref));
- }
- }
- }
- ]]>
- </script>
- <script type="javascript" ev:event="onmousedown">
- <![CDATA[
- fSetDiffPos(grd_educ);
- ]]>
- </script>
- <script type="javascript" ev:event="onmousemove">
- <![CDATA[
- fMoveGrd(grd_educ);
- ]]>
- </script>
- <script type="javascript" ev:event="onmouseout">
- <![CDATA[
- return;
- //if( grd_educ.isCell(event.target))
- if( event.target != "grd_educ")
- return;
-
- //alert("currentTarget : "+event.currentTarget+" / down : "+event.down+" / drag : "+event.drag+" / hover : "+event.hover+" / target : "+event.target+" / focus : "+event.focus);
-
- var ctrl = document.controls(event.target);
- var xfr = event.targetX + parseInt(ctrl.attribute("left"));
- var yfr = event.targetX + parseInt(ctrl.attribute("top"));
- var xto = xfr + parseInt(ctrl.attribute("witdh"));
- var yto = yfr + parseInt(ctrl.attribute("height"));
-
- if ( (xfr <= event.targetX && event.targetX <= xto) && (yfr <= event.targetY && event.targetY <= yto) )
- {
-
- }
- else
- {
- grd_educ.attribute("visibility") = "hidden";
- }
- ]]>
- </script>
- <script type="javascript" ev:event="onmouseover">
- <![CDATA[
- //grd_educ.attribute("visibility") = "hidden";
- ]]>
- </script>
- </datagrid>
- <group id="grup_educyyanual" visibility="hidden" style="left:155px; top:340px; width:180px; height:95px; border-color:#c0c0c0; border-width:3px; border-style:solid; ">
- <caption id="caption13" class="cell_1" style="left:5px; top:5px; width:165px; height:23px; vertical-align:middle; ">교육년도</caption>
- <input id="input3" ref="/root/temp/updtyyanual/educyy" class="input_search" format="yyyy" validateformat="true" style="left:93px; top:7px; width:70px; height:19px; "/>
- <caption id="caption1" class="cell_1" style="left:5px; top:30px; width:165px; height:23px; vertical-align:middle; ">년차</caption>
- <button id="button2" class="btn2_letter2" style="left:82px; top:62px; width:42px; height:19px; ">
- <caption>입력</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
-
- var cellinfo = fIsMonthCell(grd_plan.col);
- if (!gMastUser){
- messageBox("년도/연차 입력 ","E002");
- btn_planclose.dispatch("DOMActivate");
- return;
- }
- if (cellinfo != null)
- {
- var rowidx = grd_plan.row;
- var educyy = model.getValue("/root/temp/updtyyanual/educyy");
- var anual = model.getValue("/root/temp/updtyyanual/anual");
-
- if (educyy != "")
- {
- fSetPlanValue(grd_plan.colRef("educyymm"+fGetMMfromRef(cellinfo.ref)), educyy);
- }
-
- if (anual != "")
- {
- fSetPlanValue(grd_plan.colRef("anualmm"+fGetMMfromRef(cellinfo.ref)), anual);
- }
-
- grd_plan.row = rowidx;
- grd_plan.col = grd_plan.colRef(cellinfo.nextref);
- grd_plan.dispatch("onmouseup");
- var cellcolor= grd_plan.cellstyle("background-color", rowidx, grd_plan.colRef(cellinfo.nextref));
- grd_plan.cellstyle("background-color", rowidx, grd_plan.colRef(cellinfo.nextref)-1)=cellcolor;
- grd_plan.cellstyle("background-color", rowidx, grd_plan.colRef(cellinfo.nextref)) = "#FFF000";
- if(grd_plan.colRef(cellinfo.nextref)== 67){
- btn_planclose.dispatch("DOMActivate");
- var cellcolorbase = grd_plan.cellstyle("background-color", grd_plan.row, 3);
- grd_plan.rowStyle(grd_plan.row, "all", "background-color") = cellcolorbase;
- }
- }
- ]]>
- </script>
- </button>
- <button id="btn_planclose" class="btn2_letter2" style="left:127px; top:62px; width:42px; height:19px; ">
- <caption>닫기</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- var cellcolorbase = grd_plan.cellstyle("background-color", grd_plan.row, 3);
- grd_plan.rowStyle(grd_plan.row, "all", "background-color") = cellcolorbase;
- grup_educyyanual.visible = false;
- ]]>
- </script>
- </button>
- <select1 id="combo1" ref="/root/temp/updtyyanual/anual" class="combo_s_essential" appearance="minimal" style="left:93px; top:32px; width:70px; height:19px; ">
- <choices>
- <itemset>
- <label/>
- <value/>
- </itemset>
- </choices>
- </select1>
- <script type="javascript" ev:event="onmousedown">
- <![CDATA[
- fSetDiffPos(grup_educyyanual);
- ]]>
- </script>
- <script type="javascript" ev:event="onmousemove">
- <![CDATA[
- fMoveGrd(grup_educyyanual);
- ]]>
- </script>
- </group>
- <button id="button3" class="btn2_letter2" style="left:1150px; top:75px; width:42px; height:19px; ">
- <caption>출력</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- // 필수 조회조건
- if ( !isRequiredControls("ipt_yy", "cmb_supinfqurtyyflag","cmb_anual","cmb_deptcd") ) {
- return false;
- }
- model.setValue("/root/send/prnseq/yy",ipt_yy.value);
- model.setValue("/root/send/prnseq/supinfqurtyyflag",cmb_supinfqurtyyflag.value);
- model.setValue("/root/send/prnseq/deptcd",cmb_deptcd.value);
- model.setValue("/root/send/prnseq/anual",cmb_anual.value);
- model.setValue("/root/send/prnseq/apprtcdrflag", "R");
- model.setValue("/root/send/prnseq/deptnm", cmb_deptcd.label);
- submit("TRRTS00301");
-
- exeReportPreview("RPRTP00306","XMLSTR");
-
- ]]>
- </script>
- </button>
- </group>
- <group id="grp_btn" scroll="auto" style="left:0px; top:12px; width:1195px; height:27px; ">
- <line id="line11" class="line_6" style="x1:0; y1:25; x2:1195; y2:25; "/>
- <button id="btn_save" class="btn4_letter2" style="left:1124px; top:3px; width:56px; height:22px; ">
- <caption>저장</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- var retMes = messageBox("저장 하시겠습니까?", "Q999");
- if ( retMes != 6) {
- return;
- }
-
- // 각 월별로 status가 있어서 1개의 월만 수정했다고 해서 12개를 업데이트 하지 않는다.
- // 일단 ui에서는 한개의 row를 서버로 보내게 되고 app단의 로직에서 status를 검사한다.
- var savedata = grd_plan.getUpdateData();
- model.makeValue("/root/send/save", savedata);
-
- if(submit("TXRTS02201"))
- {
- grd_plan.clearStatus();
- btn_search.dispatch("DOMActivate");
- }
- ]]>
- </script>
- </button>
- <button id="button16" class="btn5_letter8" visibility="hidden" style="left:685px; top:5px; width:108px; height:19px; ">
- <caption>Excel자료Load</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- var fileName = window.fileDialog("open", "", false);
- grd_plan.loadExcel(fileName);
-
- for (i=grd_plan.fixedRows; i<grd_plan.rows; i++)
- {
- grd_plan.rowStatus(i) = 1;
- }
- ]]>
- </script>
- </button>
- <select1 id="cmb_instcd" visibility="hidden" appearance="minimal" style="left:525px; top:5px; width:100px; height:20px; ">
- <choices>
- <itemset>
- <label/>
- <value/>
- </itemset>
- </choices>
- </select1>
- </group>
- </xhtml:body>
- </xhtml:html>
|