SMRPA01700_동호회회원등록.xrw 33 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.css" ?>
  3. <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">
  4. <xhtml:head>
  5. <xhtml:title>동호회회원등록</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <clubmemblist>
  11. <numno/>
  12. <payinstnm/>
  13. <cmntnm/>
  14. <emplno/>
  15. <emplnm/>
  16. <jobposnm/>
  17. <prtnjobpos/>
  18. <reglmbrgrdenm/>
  19. <rgstdd/>
  20. <secssdd/>
  21. <rgstaprv/>
  22. <cmt/>
  23. <dutplceinstnm/>
  24. <reglmbrgrde/>
  25. <workgbn/>
  26. <ownitrd/>
  27. <cmntcd/>
  28. <rgstaprvdd/>
  29. <rgstaprvnm/>
  30. <rgstaprvid/>
  31. <dutplceinst/>
  32. <posdeptnm/>
  33. <posdeptcd/>
  34. <jobrespcd/>
  35. <jobrespnm/>
  36. <jobposcd/>
  37. <jobposnm/>
  38. <cmninstcd/>
  39. <seqno/>
  40. <paydeducretyn/>
  41. <payinst/>
  42. </clubmemblist>
  43. <item>
  44. <posdeptnm/>
  45. <emplnm/>
  46. <emplno/>
  47. <prtnjobpos/>
  48. <rgstaprv/>
  49. <rgstdd/>
  50. <secssdd/>
  51. <cmt/>
  52. <ownitrd/>
  53. <cmntcd/>
  54. <cmntnm/>
  55. <jobposnm/>
  56. <jobposcd/>
  57. <dutplceinst/>
  58. <dutplceinstnm/>
  59. <posdeptcd/>
  60. <jobrespcd/>
  61. <jobrespnm/>
  62. <rgstaprvnm/>
  63. <rgstaprvdd/>
  64. <rgstaprvid/>
  65. <workgbn/>
  66. <reglmbrgrde/>
  67. <reglmbrgrdenm/>
  68. <payinstnm/>
  69. <cmninstcd/>
  70. <seqno/>
  71. <paydeducretyn/>
  72. <payinst/>
  73. </item>
  74. <clubempl>
  75. <clubempllist/>
  76. </clubempl>
  77. <countlist>
  78. <memcnt/>
  79. </countlist>
  80. </main>
  81. <init>
  82. <radio1>
  83. <label>전체</label>
  84. <value/>
  85. <label>예</label>
  86. <value>Y</value>
  87. <label>아니오</label>
  88. <value>N</value>
  89. </radio1>
  90. <radio2>
  91. <label>예</label>
  92. <value>Y</value>
  93. <label>아니오</label>
  94. <value>N</value>
  95. </radio2>
  96. <combo1>
  97. <label>정회원</label>
  98. <value>1</value>
  99. <label>준회원</label>
  100. <value>0</value>
  101. </combo1>
  102. <regclubcodelist/>
  103. </init>
  104. <send>
  105. <cmntcd_s/>
  106. <emplno/>
  107. <emplnm/>
  108. <secss_s/>
  109. <clubmemblist/>
  110. <secssdd/>
  111. <cmntcd/>
  112. <emplno/>
  113. <workgbn/>
  114. <cmninstcd/>
  115. </send>
  116. <temp>
  117. <checklist>
  118. <paydeducretyn/>
  119. <memdatayn/>
  120. </checklist>
  121. </temp>
  122. </root>
  123. </instance>
  124. <script type="javascript">
  125. <![CDATA[
  126. var GVN_TARGET_NODE = "/root/main/clubempldata";
  127. var GVN_SOURCE_NODE = "/root/main/clubempl";
  128. ]]>
  129. </script>
  130. <script type="javascript" ev:event="xforms-ready">
  131. <![CDATA[
  132. fInitialize();
  133. submit("TRRPA00405");
  134. misfGetUserAuth();
  135. cmb_instcd.disabled = true;
  136. cmb_cmntcd_s.disabled = true;
  137. if(DUTY_PAY_YN == 'Y'){
  138. cmb_instcd.disabled = false;
  139. cmb_cmntcd_s.disabled = false;
  140. misfComboClubCdList(getUserInfo("dutplceinstcd"),cmb_cmntcd_s,"Y");
  141. }else{
  142. if(getUserInfo("dutplcecd") == '4030100000'){ // 재무팀 (?)
  143. cmb_cmntcd_s.disabled = false;
  144. misfComboClubCdList(getUserInfo("dutplceinstcd"),cmb_cmntcd_s,"Y");
  145. }else{
  146. if(model.getValue("/root/init/regclubcodelist/cmntcd") == ''){ // 회장/총무인클럽이 없는경우
  147. messageBox('권한이 없습니다.','');
  148. misfComboClubCdList(getUserInfo("dutplceinstcd"),cmb_cmntcd_s,"Y");
  149. btn_init.disabled = true;
  150. btn_delete.disabled = true;
  151. btn_save.disabled = true;
  152. btn_search.disabled = true;
  153. }else{
  154. misfComboClubCdList(getUserInfo("dutplceinstcd"),cmb_cmntcd_s,"",getUserInfo("userid")); // 회장/총무인것만 콤보박스에
  155. cmb_cmntcd_s.disabled = false;
  156. }
  157. }
  158. }
  159. misfGridInit(grd_clubmemblist);
  160. misfMsterDetailSet(grd_clubmemblist,null,"TRRPA01701","Y");
  161. misfComboComCdList("Z0007",cmb_instcd,"Y");
  162. misfComboComCdList("Z0007",cmb_instcd_d,"");
  163. misfComboComCdList("Z0007",cmb_posinstcd,"");
  164. model.setValue("/root/send/cmninstcd" , getUserInfo("dutplceinstcd"));
  165. model.setValue("/root/main/item/cmninstcd" , getUserInfo("dutplceinstcd"));
  166. model.setValue("/root/main/item/payinst" , getUserInfo("dutplceinstcd"));
  167. misfComboClubCdList(getUserInfo("dutplceinstcd"),cmb_cmntcd,"");
  168. /*
  169. misfGridInit(grd_clubmemblist);
  170. btn_save.disabled = !(checkAuth("X"));
  171. misfMsterDetailSet(grd_clubmemblist,null,"TRRPA01701","Y");
  172. // 공통코드 바인딩 silver
  173. misfComboComCdList("Z0007",cmb_instcd,"Y");
  174. misfComboComCdList("Z0007",cmb_instcd_d,"");
  175. misfComboComCdList("Z0007",cmb_posinstcd,"");
  176. model.setValue("/root/send/cmninstcd" , getUserInfo("dutplceinstcd"));
  177. model.setValue("/root/main/item/cmninstcd" , getUserInfo("dutplceinstcd"));
  178. model.setValue("/root/main/item/payinst" , getUserInfo("dutplceinstcd"));
  179. // misfComboClubCdList(getUserInfo("dutplceinstcd"),cmb_cmntcd_s,"Y");
  180. misfComboClubCdList(getUserInfo("dutplceinstcd"),cmb_cmntcd,"");
  181. // btn_search.dispatch("DOMActivate");
  182. */
  183. ]]>
  184. </script>
  185. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  186. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  187. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  188. <script type="javascript" src="../../../mis/pubwelfmngtweb/js/RPS001.js"/>
  189. <script type="javascript" src="../../../mis/humtrafactmngtweb/js/RPB001.js"/>
  190. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  191. <script type="javascript">
  192. <![CDATA[
  193. // 화면 open시와 초기화 버튼 클릭시 화면 초기화 기능을 수행한다.
  194. function fInitialize() {
  195. fEnableInsertButton();
  196. model.removeNodeset("/root/main/clubmemblist");
  197. model.removeNodeset("/root/main/clubempl/clubempllist");
  198. model.resetInstanceNode("root/main/countlist");
  199. model.resetInstanceNode("/root/send");
  200. model.resetInstanceNode("/root/main/item");
  201. model.refresh();
  202. var curdate = getCurrentDate();
  203. var cvtdate = curdate.toDate("YYYYMMDD");
  204. ipt_rgstdd.value=cvtdate.getAddDate(0,"M").getDateFormat("YYYYMMDD");
  205. cmd_reglmbrgrde.value='1';
  206. rdo_rgstaprv.value ='Y';
  207. ipt_rgstaprvnm.value = getUserInfo("usernm");
  208. ipt_rgstaprvdd.value = cvtdate.getAddDate(0,"M").getDateFormat("YYYYMMDD");
  209. }
  210. function fEnableInsertButton() {
  211. btn_insert.disabled = false;
  212. btn_update.disabled = true;
  213. }
  214. function fEnableUpdateButton() {
  215. btn_insert.disabled = true;
  216. btn_update.disabled = false;
  217. ipt_rgstaprvdd.disabled=true;
  218. }
  219. function fChangeGridValue(cur_row) {
  220. var cmninstcd= getUserInfo("dutplceinstcd");
  221. //model.setValue("/root/main/clubmemblist[" + cur_row + "]/cmninstcd",cmninstcd);
  222. model.setValue("/root/main/clubmemblist[" + cur_row + "]/cmntnm",cmb_cmntcd.label); //단체명
  223. model.setValue("/root/main/clubmemblist[" + cur_row + "]/cmntcd",cmb_cmntcd.value); //단체코드
  224. if(rdo_rgstaprv.value==""){
  225. model.setValue("/root/main/clubmemblist[" + cur_row + "]/rgstaprv","N");
  226. }else{
  227. model.setValue("/root/main/clubmemblist[" + cur_row + "]/rgstaprv",rdo_rgstaprv.value);
  228. }
  229. if(ipt_rgstdd.value==""){
  230. model.setValue("/root/main/clubmemblist[" + cur_row + "]/rgstdd",mis_to_day());
  231. }
  232. model.setValue("/root/main/clubmemblist[" + cur_row + "]/reglmbrgrdenm",cmd_reglmbrgrde.label);
  233. model.setValue("/root/main/clubmemblist[" + cur_row + "]/reglmbrgrde",cmd_reglmbrgrde.value);
  234. model.setValue("/root/main/clubmemblist[" + cur_row + "]/workgbn","rpadmemb");
  235. }
  236. function fdoubleCheck(){
  237. var double_check_cmntcd="";
  238. var double_check_emplno="";
  239. for(var i =1 ; i < grd_clubmemblist.rows; i++)
  240. {
  241. double_check_cmntcd=model.getValue(grd_clubmemblist.attribute("nodeset")+"["+i+"]/cmntcd");
  242. double_check_emplno=model.getValue(grd_clubmemblist.attribute("nodeset")+"["+i+"]/emplno");
  243. double_check_paydeducretyn=model.getValue(grd_clubmemblist.attribute("nodeset")+"["+i+"]/paydeducretyn");
  244. if( double_check_cmntcd== cmb_cmntcd.value && double_check_emplno== ipt_emplno.value){
  245. messageBox("동호회 가입이","E006");
  246. return false;
  247. }
  248. }
  249. return true;
  250. }
  251. function fsecssddCheck(){
  252. var secssVal = ipt_secssdd.value;
  253. var restVal = ipt_rgstdd.value;
  254. if(parseInt(secssVal) < parseInt(restVal)){
  255. messageBox("탈퇴일자는 가입일자 ","E012");
  256. //alert("탈퇴일자는 가입일자보다 작을수 없습니다.");
  257. return false;
  258. }
  259. return true;
  260. }
  261. ]]>
  262. </script>
  263. <submission id="TRRPA01701" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/clubmemblist"/>
  264. <submission id="TXRPA01701" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/item"/>
  265. <submission id="TRRPA01702" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/countlist"/>
  266. <submission id="TRRPA02702" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/main/item" resultref="/root/temp"/>
  267. <submission id="TRRPA00405" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/init"/>
  268. </model>
  269. </xhtml:head>
  270. <xhtml:body style="margin-left:8; margin-right:8; ">
  271. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  272. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:800px; height:14px; ">동호회회원등록</caption>
  273. </group>
  274. <group id="group2" scroll="auto" style="left:0px; top:38px; width:1195px; height:744px; ">
  275. <line id="line204" class="line_2" style="x1:0px; y1:637px; x2:1195px; y2:637px; "/>
  276. <line id="line2" class="line_3" style="x1:0px; y1:733px; x2:1195px; y2:733px; "/>
  277. <line id="line1" class="line_2" style="x1:0px; y1:685px; x2:1195px; y2:685px; "/>
  278. <line id="line205" class="line_2" style="x1:0px; y1:661px; x2:1195px; y2:661px; "/>
  279. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:10px; width:1195px; height:35px; "/>
  280. <caption id="caption2" class="search_name" style="left:230px; top:20px; width:91px; height:17px; ">동호회명 :</caption>
  281. <button id="btn_search" class="btn1_letter2" style="left:1125px; top:16px; width:56px; height:22px; ">
  282. <caption>조회</caption>
  283. <script type="javascript" ev:event="DOMActivate">
  284. <![CDATA[
  285. var updtdata = getGridUpdateData(grd_clubmemblist);
  286. if ( updtdata != "" ) {
  287. var ret = messageBox("그리드에 작업 중인 내용이 있습니다. 조회 작업을","Q003");
  288. if (ret != 6) { // not OK
  289. return;
  290. }
  291. }
  292. submit("TRRPA01701");
  293. ]]>
  294. </script>
  295. </button>
  296. <line id="line13" class="line_4" style="x1:1110px; y1:16px; x2:1110px; y2:38px; "/>
  297. <caption id="caption278" class="tit_2" style="left:5px; top:54px; width:127px; height:13px; ">동호회 회원 현황</caption>
  298. <line id="line207" class="line_1" style="x1:0px; y1:69px; x2:1195px; y2:69px; "/>
  299. <datagrid id="grd_clubmemblist" nodeset="/root/main/clubmemblist" caption="순번^급여기관^동호회명^사원번호^성명^부서^직위^동아리직위^회원등급^가입일자^탈퇴일자^가입승인^비고^caption1^caption2^caption3^caption4^caption5^caption6^caption7^caption8^caption9^caption10^caption11^caption12^caption13^caption14^caption15^caption16^caption17^caption18^caption19" colsep="^" colwidth="52, 110, 148, 70, 70, 125, 79, 98, 60, 75, 75, 70, 119, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0" dataheight="25" ellipsis="true" explorerbar="sortshow" rowheader="update" rowheight="25" rowsep="|" tooltip="true" style="left:0px; top:74px; width:1195px; height:510px; ">
  300. <col ref="numno" style="padding-left:5; "/>
  301. <col ref="payinstnm"/>
  302. <col ref="cmntnm"/>
  303. <col ref="emplno"/>
  304. <col ref="emplnm"/>
  305. <col ref="posdeptnm"/>
  306. <col ref="jobposnm"/>
  307. <col ref="prtnjobpos"/>
  308. <col ref="reglmbrgrdenm" style="text-align:center; "/>
  309. <col ref="rgstdd" format="yyyy-mm-dd" style="text-align:center; "/>
  310. <col ref="secssdd" format="yyyy-mm-dd" style="text-align:center; "/>
  311. <col checkvalue="Y,N" disabled="true" ref="rgstaprv" type="checkbox"/>
  312. <col ref="cmt"/>
  313. <col ref="dutplceinstnm" visibility="hidden"/>
  314. <col ref="reglmbrgrde" visibility="hidden"/>
  315. <col ref="workgbn" visibility="hidden"/>
  316. <col ref="ownitrd" visibility="hidden"/>
  317. <col ref="cmntcd" visibility="hidden"/>
  318. <col ref="rgstaprvdd" visibility="hidden"/>
  319. <col ref="rgstaprvnm" visibility="hidden"/>
  320. <col ref="rgstaprvid" visibility="hidden"/>
  321. <col ref="dutplceinst" visibility="hidden"/>
  322. <col ref="posdeptnm" visibility="hidden"/>
  323. <col ref="posdeptcd" visibility="hidden"/>
  324. <col ref="jobrespcd" visibility="hidden"/>
  325. <col ref="jobrespnm" visibility="hidden"/>
  326. <col ref="jobposcd" visibility="hidden"/>
  327. <col ref="cmninstcd" visibility="hidden"/>
  328. <col ref="seqno" visibility="hidden"/>
  329. <col ref="paydeducretyn" visibility="hidden"/>
  330. <col ref="payinst" visibility="hidden"/>
  331. <script type="javascript" ev:event="onclick">
  332. <![CDATA[
  333. var cur_row = grd_clubmemblist.row;
  334. if ( cur_row > 0 ) {
  335. fEnableUpdateButton();
  336. model.copyNode("/root/main/item","/root/main/clubmemblist["+cur_row+"]");
  337. model.refresh();
  338. }
  339. ipt_emplno.disabled =true;
  340. cmb_cmntcd.disabled=true;
  341. cmb_instcd_d.disabled=true;
  342. ]]>
  343. </script>
  344. <script type="javascript" ev:event="onaftersort">
  345. <![CDATA[
  346. grd_clubmemblist.gridToInstance();
  347. ]]>
  348. </script>
  349. </datagrid>
  350. <line id="line206" class="line_2" style="x1:0px; y1:710px; x2:280px; y2:710px; "/>
  351. <caption id="cap_emplno" class="cell_1" style="left:0px; top:615px; width:82px; height:23px; ">사번</caption>
  352. <caption id="caption283" class="tit_2" style="left:5px; top:595px; width:118px; height:13px; ">등록 및 수정사항</caption>
  353. <caption id="cap_instcd_d" class="cell_1" style="left:0px; top:639px; width:82px; height:23px; ">동호회기관</caption>
  354. <caption id="caption12" class="cell_1" style="left:0px; top:687px; width:82px; height:47px; ">자기소개</caption>
  355. <line id="line203" class="line_1" style="x1:0px; y1:610px; x2:1195px; y2:610px; "/>
  356. <caption id="caption5" class="search_name" style="left:466px; top:19px; width:85px; height:17px; ">사 번 :</caption>
  357. <button id="btn_excelsave" class="btn2_letter4" style="left:1130px; top:48px; width:64px; height:19px; ">
  358. <caption>엑셀저장</caption>
  359. <script type="javascript" ev:event="DOMActivate">
  360. <![CDATA[
  361. var fileName = window.fileDialog("save", ",", false, "excel", "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
  362. if (fileName != ""){
  363. grd_clubmemblist.saveExcel(fileName, "SheetName", true, true, "", "");
  364. }
  365. ]]>
  366. </script>
  367. </button>
  368. <input id="ipt_emplno_s" ref="/root/send/emplno" class="input_default" style="left:552px; top:18px; width:75px; height:19px; "/>
  369. <input id="ipt_name_s" ref="/root/send/emplnm" class="input_default" style="left:650px; top:18px; width:100px; height:19px; "/>
  370. <input id="ipt_emplno" ref="/root/main/item/emplno" class="input_essential" style="left:84px; top:616px; width:62px; height:19px; ">
  371. <script type="javascript" ev:event="xforms-value-changed">
  372. <![CDATA[
  373. var recv_list = "emplno,emplnm,payinst,dutplceinst,dutplceinstnm,posdeptcd,posdeptnm,jobrespcd,jobrespnm,jobposcd,jobposnm" ;
  374. rpbfValidationCheck("EMPLNO", recv_list);
  375. var posinstcd = model.getValue("/root/main/item/payinst");
  376. model.setValue("/root/main/item/payinst",posinstcd);
  377. model.refresh();
  378. ]]>
  379. </script>
  380. <script type="javascript" ev:event="onkeypress">
  381. <![CDATA[
  382. inputEnterKey("ipt_emplno", "xforms-value-changed");
  383. ]]>
  384. </script>
  385. </input>
  386. <button id="btn_emplsearch" class="icon_search" style="left:151px; top:618px; width:16px; height:16px; ">
  387. <caption/>
  388. <script type="javascript" ev:event="DOMActivate">
  389. <![CDATA[
  390. /* 사원번호 Help 화면 Open
  391. misfOpenPopUpList(화면종류Code, OPEN하는 Control, 공통코드, 리턴받을 Instance명) */
  392. var recv_list = "emplno,emplnm,payinst,dutplceinst,dutplceinstnm,posdeptcd,posdeptnm,jobrespcd,jobrespnm,jobposcd,jobposnm";
  393. rpbfOpenPopUpList("SPRPB00101", ipt_emplno, recv_list,"","N");
  394. var posinstcd = model.getValue("/root/main/item/payinst");
  395. model.refresh();
  396. ]]>
  397. </script>
  398. </button>
  399. <input id="ipt_emplnm" ref="/root/main/item/emplnm" class="input_default" disabled="true" style="left:172px; top:616px; width:111px; height:19px; "/>
  400. <input id="ipt_dutplceinst" ref="/root/main/item/dutplceinst" visibility="hidden"/>
  401. <input id="ipt_dutplceinstnm" ref="/root/main/item/dutplceinstnm" visibility="hidden"/>
  402. <input id="ipt_posdeptnm" ref="/root/main/item/dutplceinstnm" visibility="hidden"/>
  403. <input id="ipt_jobrespcd" ref="/root/main/item/jobrespcd" visibility="hidden"/>
  404. <input id="ipt_jobrespnm" ref="/root/main/item/jobrespnm" visibility="hidden"/>
  405. <input id="ipt_jobposcd" ref="/root/main/item/jobposcd" visibility="hidden"/>
  406. <input id="ipt_jobposnm" ref="/root/main/item/jobposnm" class="input_default" disabled="true" style="left:553px; top:617px; width:112px; height:19px; "/>
  407. <caption id="caption20" class="cell_1" style="left:285px; top:615px; width:74px; height:23px; ">급여기관</caption>
  408. <caption id="caption21" class="cell_1" style="left:477px; top:639px; width:74px; height:23px; ">승인여부</caption>
  409. <caption id="cap_reglmbrgrde" class="cell_1" style="left:972px; top:615px; width:74px; height:23px; ">회원등급</caption>
  410. <caption id="caption3" class="cell_1" style="left:477px; top:615px; width:74px; height:23px; ">직위</caption>
  411. <caption id="caption4" class="cell_1" style="left:667px; top:615px; width:74px; height:23px; ">동아리직위</caption>
  412. <caption id="caption1" class="search_name" style="left:758px; top:19px; width:86px; height:17px; ">탈퇴여부 :</caption>
  413. <select1 id="cmb_cmntcd_s" ref="/root/send/cmntcd_s" class="combo_s_essential" appearance="minimal" style="left:315px; top:19px; width:145px; height:19px; ">
  414. <choices>
  415. <itemset nodeset="/root/main/init">
  416. <label ref="cnstnm"/>
  417. <value ref="cnstcd"/>
  418. </itemset>
  419. </choices>
  420. </select1>
  421. <select1 id="rdo_secss_s" ref="/root/send/secss_s" class="radio_search" appearance="full" cellspacing="5" cols="3" overflow="visible" style="left:843px; top:19px; width:167px; height:16px; text-align:center; border-style:none; ">
  422. <choices>
  423. <itemset nodeset="/root/init/radio1">
  424. <label ref="label"/>
  425. <value ref="value"/>
  426. </itemset>
  427. </choices>
  428. </select1>
  429. <input id="ipt_rgstdd" ref="/root/main/item/rgstdd" class="input_default" inputtype="date" style="left:361px; top:640px; width:114px; height:19px; "/>
  430. <input id="ipt_secssdd" ref="/root/main/item/secssdd" class="input_default" inputtype="date" style="left:361px; top:665px; width:114px; height:19px; "/>
  431. <input id="ipt_prtnjobpos" ref="/root/main/item/prtnjobpos" class="input_default" style="left:743px; top:616px; width:227px; height:19px; "/>
  432. <input id="ipt_cmt" ref="/root/main/item/cmt" class="input_default" maxlength="100" style="left:555px; top:665px; width:638px; height:19px; "/>
  433. <textarea id="ipt_pwnitrd" ref="/root/main/item/ownitrd" maxlength="100" style="left:84px; top:689px; width:1109px; height:43px; "/>
  434. <input id="ipt_workgbn" ref="/root/send/workgbn" visibility="hidden"/>
  435. <input id="ipt_paydeducretyn" ref="/root/main/item/paydeducretyn" visibility="hidden"/>
  436. <button id="but_prsdempno_s" class="icon_search" style="left:631px; top:20px; width:16px; height:16px; ">
  437. <caption/>
  438. <script type="javascript" ev:event="onclick">
  439. <![CDATA[
  440. var recv_list = "emplno,emplnm" ;
  441. rpbfOpenPopUpList("SPRPB00101", ipt_emplno_s , recv_list,"","N");
  442. model.refresh();
  443. ]]>
  444. </script>
  445. </button>
  446. <datagrid id="grd_clubempllist" nodeset="/root/main/clubempl/clubempllist" visibility="hidden" caption="사번^성명^주민번호^소속부서^부서명^근무부서^근무부서명^팀^유닛^직군^직열^직종^직위^직책" colsep="^" colwidth="68, 58, 100, 100, 91, 100, 100, 100, 100, 100, 100, 100, 100, 100" dataheight="25" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="25" rowsep="|" style="left:390px; top:490px; width:465px; height:83px; ">
  447. <col class="text_center" ref="emplno"/>
  448. <col class="text_center" ref="emplnm"/>
  449. <col class="text_center" ref="posinstcd"/>
  450. <col class="text_center" ref="posinstnm"/>
  451. <col class="text_center" ref="dutplceinst"/>
  452. <col class="text_center" ref="dutplceinstnm"/>
  453. <col class="text_center" ref="posdeptcd" visibility="hidden"/>
  454. <col class="text_center" ref="posdeptnm"/>
  455. <col class="text_center" ref="jobrespcd" visibility="hidden"/>
  456. <col class="text_center" ref="jobrespnm" style="left:210px; top:23px; width:120px; height:23px; "/>
  457. <col class="text_center" ref="jobposcd" visibility="hidden"/>
  458. <col class="text_center" ref="jobposnm"/>
  459. </datagrid>
  460. <caption id="caption10" class="cell_1" style="left:972px; top:639px; width:74px; height:23px; ">승인자</caption>
  461. <select1 id="rdo_rgstaprv" ref="/root/main/item/rgstaprv" class="radio_search" appearance="full" cols="2" overflow="visible" style="left:553px; top:643px; width:112; height:16px; text-align:center; border-style:none; ">
  462. <choices>
  463. <itemset nodeset="/root/init/radio2">
  464. <label ref="label"/>
  465. <value ref="value"/>
  466. </itemset>
  467. </choices>
  468. <script type="javascript" ev:event="xforms-select">
  469. <![CDATA[
  470. var rgstaprvVal=rdo_rgstaprv.value;
  471. if(rgstaprvVal=="Y"){
  472. ipt_rgstaprvdd.disabled=false;
  473. ipt_rgstaprvnm.value=getUserInfo("usernm");
  474. var curdate = getCurrentDate();
  475. var cvtdate = curdate.toDate("YYYYMMDD");
  476. ipt_rgstaprvdd.value=cvtdate.getAddDate(0,"M").getDateFormat("YYYYMMDD");
  477. }else{
  478. ipt_rgstaprvdd.disabled=true;
  479. ipt_rgstaprvdd.value="";
  480. ipt_rgstaprvnm.value="";
  481. ipt_rgstaprvid.value="";
  482. }
  483. ]]>
  484. </script>
  485. </select1>
  486. <caption id="cap_rgstdd" class="cell_1" style="left:285px; top:639px; width:74px; height:23px; ">가입일자</caption>
  487. <select1 id="cmb_cmntcd" ref="/root/main/item/cmntcd" class="combo_s_essential" appearance="minimal" style="left:84px; top:665px; width:199px; height:19px; ">
  488. <choices>
  489. <itemset>
  490. <label ref="cmntnm"/>
  491. <value ref="cmntcd"/>
  492. </itemset>
  493. </choices>
  494. </select1>
  495. <caption id="caption13" class="cell_1" style="left:0px; top:663px; width:82px; height:23px; ">동호회</caption>
  496. <caption id="caption7" class="cell_1" style="left:667px; top:639px; width:74px; height:23px; ">승인일자</caption>
  497. <input id="ipt_rgstaprvnm" ref="/root/main/item/rgstaprvnm" class="input_default" style="left:1048px; top:641px; width:145px; height:19px; "/>
  498. <input id="ipt_rgstaprvid" ref="/root/main/item/rgstaprvid" visibility="hidden"/>
  499. <caption id="caption14" class="cell_1" style="left:285px; top:663px; width:74px; height:23px; ">탈퇴일자</caption>
  500. <input id="ipt_rgstaprvdd" ref="/root/main/item/rgstaprvdd" class="input_default" disabled="true" inputtype="date" style="left:743px; top:640px; width:113; height:19px; "/>
  501. <input id="ipt_workgbn2" ref="/root/main/item/workgbn" visibility="hidden"/>
  502. <input id="ipt_seqno" ref="/root/main/item/seqno" visibility="hidden"/>
  503. <input id="ipt_memcnt" ref="/root/main/countlist/memcnt" visibility="hidden" style="left:985px; top:20px; width:110px; height:19px; "/>
  504. <select1 id="cmb_instcd" ref="/root/send/cmninstcd" class="combo_default" appearance="minimal" style="left:87px; top:18px; width:133px; height:19px; ">
  505. <choices>
  506. <itemset nodeset="/root/main/init">
  507. <label ref="cnstnm"/>
  508. <value ref="cnstcd"/>
  509. </itemset>
  510. </choices>
  511. <script type="javascript" ev:event="xforms-value-changed">
  512. <![CDATA[
  513. var instcd = model.getValue(cmb_instcd.attribute("ref"));
  514. misfComboClubCdList(instcd,cmb_cmntcd_s,"Y");
  515. model.refresh();
  516. ]]>
  517. </script>
  518. </select1>
  519. <caption id="caption8" class="search_name" style="left:15px; top:19px; width:85px; height:17px; ">기 관 :</caption>
  520. <caption id="caption9" class="cell_1" style="left:477px; top:663px; width:74px; height:23px; ">비고</caption>
  521. <select1 id="cmb_instcd_d" ref="/root/main/item/cmninstcd" class="combo_s_essential" appearance="minimal" style="left:84px; top:640px; width:199px; height:19px; ">
  522. <choices>
  523. <itemset nodeset="/root/main/init">
  524. <label ref="cnstnm"/>
  525. <value ref="cnstcd"/>
  526. </itemset>
  527. </choices>
  528. <script type="javascript" ev:event="xforms-value-changed">
  529. <![CDATA[
  530. var instcd = model.getValue(cmb_instcd_d.attribute("ref"));
  531. misfComboClubCdList(instcd,cmb_cmntcd,"");
  532. model.refresh();
  533. ]]>
  534. </script>
  535. </select1>
  536. <select1 id="cmb_posinstcd" ref="/root/main/item/payinst" class="combo_s_essential" appearance="minimal" style="left:361px; top:616px; width:114px; height:19px; ">
  537. <choices>
  538. <itemset nodeset="/root/main/init">
  539. <label ref="cnstnm"/>
  540. <value ref="cnstcd"/>
  541. </itemset>
  542. </choices>
  543. <script type="javascript" ev:event="xforms-value-changed">
  544. <![CDATA[
  545. var instcd = model.getValue(cmb_instcd_d.attribute("ref"));
  546. misfComboClubCdList(instcd,cmb_cmntcd,"");
  547. model.refresh();
  548. ]]>
  549. </script>
  550. </select1>
  551. <input id="ipt_payinst" ref="/root/main/item/payinst" class="input_default" disabled="true" visibility="hidden" style="left:575px; top:590px; width:114px; height:19px; "/>
  552. </group>
  553. <group id="grp_btn" scroll="auto" style="left:0px; top:12px; width:1195px; height:27px; ">
  554. <button id="btn_move" class="btn3_letter4" visibility="hidden" style="left:0px; top:3px; width:80px; height:22px; ">
  555. <caption>화면이동</caption>
  556. </button>
  557. <line id="line11" class="line_6" style="x1:0; y1:25; x2:1195; y2:25; "/>
  558. <button id="btn_init" class="btn4_letter3" style="left:1011px; top:3px; width:68px; height:22px; ">
  559. <caption>초기화</caption>
  560. <script type="javascript" ev:event="DOMActivate">
  561. <![CDATA[
  562. var updtdata = getGridUpdateData(grd_clubmemblist);
  563. if (updtdata != "" ) {
  564. var ret = messageBox("그리드에 작업 중인 내용이 있습니다. 초기화 작업을","Q003");
  565. if (ret != 6) { // not OK
  566. return;
  567. }
  568. }
  569. fInitialize();
  570. ipt_emplno.disabled =false;
  571. cmb_cmntcd.disabled=false;
  572. ]]>
  573. </script>
  574. </button>
  575. <button id="btn_delete" class="btn4_letter2" style="left:1081px; top:3px; width:56px; height:22px; ">
  576. <caption>삭제</caption>
  577. <script type="javascript" ev:event="DOMActivate">
  578. <![CDATA[
  579. misfGridIUD(grd_clubmemblist,"D");
  580. model.refresh();
  581. ]]>
  582. </script>
  583. </button>
  584. <button id="btn_save" class="btn4_letter2" style="left:1139px; top:3px; width:56px; height:22px; ">
  585. <caption>저장</caption>
  586. <script type="javascript" ev:event="DOMActivate">
  587. <![CDATA[
  588. var updtdata = getGridUpdateData(grd_clubmemblist);
  589. if (updtdata == "" ) {
  590. messageBox("변경된 데이터가","I004");
  591. return;
  592. }
  593. var null_check1 = "";
  594. var null_chech2 = "";
  595. for(var i=1;i<=grd_clubmemblist.rows-1;i++) {
  596. null_check1 = model.getValue(grd_clubmemblist.attribute("nodeset")+"["+i+"]/cmntcd");
  597. null_check2 = model.getValue(grd_clubmemblist.attribute("nodeset")+"["+i+"]/emplno");
  598. null_check3 = model.getValue(grd_clubmemblist.attribute("nodeset")+"["+i+"]/paydeducretyn");
  599. var status=grd_clubmemblist.rowStatus(i);
  600. if(status=="2"||status=="4"){
  601. if(null_check3 =='Y'){
  602. messageBox("급여생성이 완료된 회원은 수정","E001");
  603. return;
  604. }
  605. }
  606. if(null_check1 =="") {
  607. messageBox("사원번호는","I003");
  608. return;
  609. } else if(null_check2 == "") {
  610. messageBox(" 단체코드는","I003");
  611. return;
  612. }
  613. }
  614. misGetDouList("TRRPA01702");
  615. if(ipt_memcnt.value !="" && ipt_memcnt.value != "0" ){
  616. messageBox("동호회 가입이","E006");
  617. return;
  618. }else{
  619. misfSave("TXRPA01701");
  620. }
  621. ]]>
  622. </script>
  623. </button>
  624. </group>
  625. <button id="btn_update" class="btn2_letter2" navindex="13" style="left:1096px; top:627px; width:42px; height:19px; ">
  626. <caption>수정</caption>
  627. <script type="javascript" ev:event="DOMActivate">
  628. <![CDATA[
  629. if(!isRequiredControls("ipt_emplno","cmb_cmntcd", "cmd_reglmbrgrde","ipt_rgstdd"))return;
  630. if(!fsecssddCheck()) return;
  631. var secssdd = ipt_secssdd.value;
  632. var emplno = ipt_emplno.value;
  633. var cmntcd = cmb_cmntcd.value;
  634. if(secssdd !=''){
  635. model.setValue("/root/send/secssdd",secssdd);
  636. model.setValue("/root/send/emplno",emplno);
  637. model.setValue("/root/send/cmntcd",cmntcd);
  638. model.setValue("/root/send/workgbn","R");
  639. submit("TRRPA02702");
  640. var paydeducretyn= model.getValue("/root/temp/checklist/paydeducretyn");
  641. if(paydeducretyn =='Y'){
  642. messageBox("탈퇴월의 급여생성이 완료되어 수정 할수 ","I004");
  643. return;
  644. }
  645. }
  646. var cur_row = grd_clubmemblist.row; // 행 번호 가져오기
  647. if (cur_row > 0) {
  648. // 그리드에 추가
  649. model.setValue("/root/main/item/payinstnm",cmb_posinstcd.label);
  650. model.copyNode("/root/main/clubmemblist["+cur_row+"]","/root/main/item");
  651. // 그리드의 레이블을 변경한다.
  652. fChangeGridValue(cur_row);
  653. grd_clubmemblist.addStatus(cur_row,"update"); // 행을 업데이트 상태로 변경
  654. model.refresh();
  655. }
  656. ]]>
  657. </script>
  658. </button>
  659. <button id="btn_clear" class="btn2_letter3" navindex="14" style="left:1141px; top:627px; width:53px; height:19px; ">
  660. <caption>지우기</caption>
  661. <script type="javascript" ev:event="DOMActivate">
  662. <![CDATA[
  663. fEnableInsertButton();
  664. ipt_rgstaprvdd.disabled=true;
  665. ipt_rgstaprvnm.disabled=true;
  666. model.resetInstanceNode("/root/main/item");
  667. model.refresh();
  668. ipt_emplno.disabled = false;
  669. cmb_cmntcd.disabled = false;
  670. cmb_instcd_d.disabled = false;
  671. var curdate = getCurrentDate();
  672. var cvtdate = curdate.toDate("YYYYMMDD");
  673. ipt_rgstdd.value=cvtdate.getAddDate(0,"M").getDateFormat("YYYYMMDD");
  674. cmd_reglmbrgrde.value='1';
  675. rdo_rgstaprv.value ='Y';
  676. ipt_rgstaprvnm.value = getUserInfo("usernm");
  677. ipt_rgstaprvdd.value = cvtdate.getAddDate(0,"M").getDateFormat("YYYYMMDD");
  678. ]]>
  679. </script>
  680. </button>
  681. <button id="btn_insert" class="btn2_letter2" navindex="12" style="left:1051px; top:627px; width:42px; height:19px; ">
  682. <caption>추가</caption>
  683. <script type="javascript" ev:event="DOMActivate">
  684. <![CDATA[
  685. if (!fdoubleCheck()) return;
  686. if(!isRequiredControls("ipt_emplno","cmb_instcd_d","cmb_cmntcd", "cmd_reglmbrgrde","ipt_rgstdd"))return;
  687. if(!fsecssddCheck()) return;
  688. var emplno = ipt_emplno.value;
  689. var cmntcd = cmb_cmntcd.value;
  690. model.setValue("/root/main/item/secssdd",'');
  691. model.setValue("/root/main/item/workgbn","R");
  692. submit("TRRPA02702");
  693. var memdatayn =model.getValue("/root/temp/checklist/memdatayn");
  694. if(memdatayn =='Y'){
  695. messageBox(cmb_cmntcd.label +"동호회 가입이 ","E006");
  696. return;
  697. }
  698. grd_clubmemblist.addrow(); // 입력할 행 추가.
  699. var cur_row = grd_clubmemblist.row; // 추가된 행 번호 가져오기
  700. // 그리드에 추가
  701. model.setValue("/root/main/item/payinstnm",cmb_posinstcd.label);
  702. model.copyNode("/root/main/clubmemblist["+cur_row+"]","/root/main/item");
  703. fChangeGridValue(cur_row); // 그리드의 레이블을 변경한다.
  704. model.resetInstanceNode("/root/main/item");
  705. model.refresh();
  706. var cmninstcd = grd_clubmemblist.valueMatrix(cur_row,grd_clubmemblist.colRef("cmninstcd"));
  707. var cmntcd = grd_clubmemblist.valueMatrix(cur_row,grd_clubmemblist.colRef("cmntcd"));
  708. var curdate = getCurrentDate();
  709. var cvtdate = curdate.toDate("YYYYMMDD");
  710. model.setValue("/root/main/item/cmninstcd",cmninstcd);
  711. model.setValue("/root/main/item/cmntcd",cmntcd);
  712. rdo_rgstaprv.value ='Y';
  713. ipt_rgstaprvnm.value = getUserInfo("usernm");
  714. ipt_rgstaprvdd.value = cvtdate.getAddDate(0,"M").getDateFormat("YYYYMMDD");
  715. model.setValue("/root/main/item/rgstdd",cvtdate.getAddDate(0,"M").getDateFormat("YYYYMMDD"));
  716. cmd_reglmbrgrde.value = '1';
  717. model.refresh();
  718. ]]>
  719. </script>
  720. </button>
  721. <select1 id="cmd_reglmbrgrde" ref="/root/main/item/reglmbrgrde" appearance="minimal" style="left:1048px; top:654px; width:145px; height:19px; ">
  722. <choices>
  723. <itemset nodeset="/root/init/combo1">
  724. <label ref="label"/>
  725. <value ref="value"/>
  726. </itemset>
  727. </choices>
  728. </select1>
  729. </xhtml:body>
  730. </xhtml:html>