SMRWB00200_위원회별 위원관리.xrw 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
  3. <?xml-stylesheet type="text/css" href="C:/CMCProject/application/webapps/com/commonweb/css/common.css" ?>
  4. <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">
  5. <xhtml:head>
  6. <xhtml:title>위원회별 위원관리</xhtml:title>
  7. <model id="model1">
  8. <instance id="instance1">
  9. <root xmlns="">
  10. <main>
  11. <bord>
  12. <bordlist>
  13. <instcd/>
  14. <bordcd/>
  15. <bordnm/>
  16. <aprvyn/>
  17. </bordlist>
  18. </bord>
  19. <bordmb>
  20. <bordmblist>
  21. <bordinstcd/>
  22. <bordcd/>
  23. <emplno/>
  24. <emplnm/>
  25. <instcd/>
  26. <instnm/>
  27. <unitcd/>
  28. <unitnm/>
  29. <jobposcd/>
  30. <jobposnm/>
  31. <currentinstnm/>
  32. <preststatnm/>
  33. <prfshipnm/>
  34. <bordrespcd/>
  35. <essnyn/>
  36. <appdd/>
  37. <todd/>
  38. <cmt/>
  39. </bordmblist>
  40. </bordmb>
  41. </main>
  42. <send>
  43. <instcd/>
  44. <selectedbord>
  45. <selectedinstcd/>
  46. <selectedbordcd/>
  47. </selectedbord>
  48. </send>
  49. <init>
  50. <essnynvalue>
  51. <label>공 인</label>
  52. <value>Y</value>
  53. <label>비공인</label>
  54. <value>N</value>
  55. </essnynvalue>
  56. <bordrespcdvalue>
  57. <label>위원장</label>
  58. <value>1</value>
  59. <label>간사</label>
  60. <value>2</value>
  61. <label>위원겸 간사</label>
  62. <value>3</value>
  63. <label>위원</label>
  64. <value>4</value>
  65. </bordrespcdvalue>
  66. <aprvynflag>
  67. <label>공 인</label>
  68. <value>Y</value>
  69. <label>비공인</label>
  70. <value>N</value>
  71. </aprvynflag>
  72. </init>
  73. <temp>
  74. </temp>
  75. </root>
  76. </instance>
  77. <script type="javascript" ev:event="xforms-ready">
  78. <![CDATA[
  79. fInitialize();
  80. misfComboInstCdListMulti("cmb_instcd",getCurrentDate(),"","N");
  81. model.refresh();
  82. ]]>
  83. </script>
  84. <submission id="TRRWB00201" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/bord"/>
  85. <submission id="TRRWB00202" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/selectedbord" resultref="/root/main/bordmb"/>
  86. <submission id="TXRWB00201" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/main/bordmb/bordmblist" resultref="/root/temp"/>
  87. </model>
  88. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  89. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  90. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  91. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  92. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  93. <script type="javascript" src="../../../mis/miscommonweb/js/RSZ001.js"/>
  94. <script type="javascript" src="../../../mis/humtrafactmngtweb/js/RPB001.js"/>
  95. <script type="javascript">
  96. <![CDATA[
  97. function fInitialize()
  98. {
  99. misfGridInit(grd_bordlist);
  100. misfGridInit(grd_bordmblist);
  101. misfMsterDetailSet(grd_bordlist, null, "TRRWB00201" , "Y");
  102. misfMsterDetailSet(grd_bordmblist,grd_bordlist, "TRRWB00202" ,"Y");
  103. }
  104. function fCheckSaveData()
  105. {
  106. for(row = grd_bordmblist.fixedRows ; row < grd_bordmblist.rows ; row++)
  107. {
  108. if(grd_bordmblist.valueMatrix(row , grd_bordmblist.colRef("emplnm")).length == 0)
  109. {
  110. messageBox("사원번호를 " ,"C001");
  111. grd_bordmblist.row= row ;
  112. grd_bordmblist.col= grd_bordmblist.colRef("emplno");
  113. return false;
  114. }
  115. if(grd_bordmblist.valueMatrix(row , grd_bordmblist.colRef("appdd")).length == 0)
  116. {
  117. messageBox("위촉일을 " ,"C001");
  118. grd_bordmblist.row= row ;
  119. grd_bordmblist.col= grd_bordmblist.colRef("appdd");
  120. return false;
  121. }
  122. }
  123. }
  124. function OverLappingCheck()
  125. {
  126. var checkemplno = grd_bordmblist.valueMatrix(grd_bordmblist.row, grd_bordmblist.colRef("emplno"));
  127. var grd_bordmblist_row = grd_bordmblist.row;
  128. var OverLappingCount;
  129. OverLappingCount = 0;
  130. if(checkemplno != "")
  131. {
  132. for( row = grd_bordmblist.fixedRows ; row < grd_bordmblist.rows - grd_bordmblist.fixedRows + 1 ; row++)
  133. {
  134. if(grd_bordmblist.valueMatrix(row, grd_bordmblist.colRef("emplno")) == checkemplno)
  135. {
  136. OverLappingCount +=1;
  137. if(OverLappingCount == 2)
  138. {
  139. messageBox("사원번호가 " ,"E006");
  140. grd_bordmblist.valueMatrix(grd_bordmblist_row,grd_bordmblist.colRef("emplno"))="";
  141. grd_bordmblist.valueMatrix(grd_bordmblist_row,grd_bordmblist.colRef("emplnm"))="";
  142. grd_bordmblist.valueMatrix(grd_bordmblist_row,grd_bordmblist.colRef("instcd"))="";
  143. grd_bordmblist.valueMatrix(grd_bordmblist_row,grd_bordmblist.colRef("instnm"))="";
  144. grd_bordmblist.valueMatrix(grd_bordmblist_row,grd_bordmblist.colRef("unitcd"))="";
  145. grd_bordmblist.valueMatrix(grd_bordmblist_row,grd_bordmblist.colRef("unitnm"))="";
  146. grd_bordmblist.valueMatrix(grd_bordmblist_row,grd_bordmblist.colRef("jobposcd"))="";
  147. grd_bordmblist.valueMatrix(grd_bordmblist_row,grd_bordmblist.colRef("jobposnm"))="";
  148. grd_bordmblist.valueMatrix(grd_bordmblist_row,grd_bordmblist.colRef("currentinstnm"))="";
  149. grd_bordmblist.valueMatrix(grd_bordmblist_row,grd_bordmblist.colRef("preststatnm"))="";
  150. grd_bordmblist.valueMatrix(grd_bordmblist_row,grd_bordmblist.colRef("prfshipnm"))="";
  151. grd_bordmblist.valueMatrix(grd_bordmblist_row,grd_bordmblist.colRef("appdd"))="";
  152. grd_bordmblist.valueMatrix(row, grd_bordmblist.colRef("essnyn")) = 'N';
  153. grd_bordmblist.valueMatrix(row, grd_bordmblist.colRef("bordrespcd")) = '4';
  154. grd_bordmblist.valueMatrix(row, grd_bordmblist.colRef("todd")) = '99991231';
  155. grd_bordmblist.valueMatrix(row, grd_bordmblist.colRef("cmt")) = "";
  156. grd_bordmblist.col= grd_bordmblist.colRef("bordcd");
  157. grd_bordmblist.row= grd_bordmblist_row;
  158. return false;
  159. }
  160. }
  161. }
  162. }
  163. return true;
  164. }
  165. function fsearch()
  166. {
  167. if(model.getValue(cmb_instcd.attribute("ref")).length== 0 )
  168. {
  169. messageBox("기관코드를 " ,"C002");
  170. model.setFocus("cmb_instcd");
  171. return false;
  172. }
  173. misfMsterDetailRetrieve();
  174. }
  175. ]]>
  176. </script>
  177. </xhtml:head>
  178. <xhtml:body style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  179. <group id="grp_tle" style="left:0px; top:0px; width:1195px; height:13px; ">
  180. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:206px; height:14px; ">위원회별 위원 세부 내역</caption>
  181. </group>
  182. <group id="grp_biz" scroll="auto" style="left:0px; top:38px; width:1195; height:744px; ">
  183. <caption id="caption1" class="tit_2" style="left:5px; top:59px; width:157px; height:13px; ">기관별 위원회</caption>
  184. <line id="line1" class="line_1" style="x1:241px; y1:74px; x2:1194px; y2:74px; "/>
  185. <datagrid id="grd_bordmblist" nodeset="/root/main/bordmb/bordmblist" scroll="horizontal" allowselection="true" caption="기관코드^위원회코드^사원번호^성명^가입시 기관 코드^가입시 기관^근무지부서코드^근무지부서명^가입시 직위코드^ 가입시 직위^현재 기관^근무상태^직원구분^위원회 직책^당연직 여부^위촉일^종료일자^비고" colsep="^" colwidth="100, 100, 80, 80, 100, 150, 100, 120, 100, 100, 80, 80, 110, 110, 80, 100, 100, 300" dataheight="25" ellipsis="true" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="25" rowsep="|" tooltip="true" style="left:245px; top:80px; width:950px; height:663px; ">
  186. <col ref="bordinstcd" visibility="hidden" style="left:20px; top:23px; width:100px; height:23px; "/>
  187. <col ref="bordcd" visibility="hidden"/>
  188. <col disabled="true" imemode="disabled" ref="emplno" type="inputbutton" format="9999999999"/>
  189. <col ref="emplnm"/>
  190. <col ref="instcd" visibility="hidden"/>
  191. <col ref="instnm"/>
  192. <col ref="unitcd" visibility="hidden"/>
  193. <col ref="unitnm"/>
  194. <col ref="jobposcd" visibility="hidden"/>
  195. <col ref="jobposnm"/>
  196. <col ref="currentinstnm"/>
  197. <col ref="preststatnm"/>
  198. <col ref="prfshipnm"/>
  199. <col ref="bordrespcd" type="combo" style="text-align:center; ">
  200. <choices>
  201. <itemset nodeset="/root/init/bordrespcdvalue">
  202. <label ref="label"/>
  203. <value ref="value"/>
  204. </itemset>
  205. </choices>
  206. </col>
  207. <col ref="essnyn" type="combo" style="text-align:center; ">
  208. <choices>
  209. <itemset nodeset="/root/init/essnynvalue">
  210. <label ref="label"/>
  211. <value ref="value"/>
  212. </itemset>
  213. </choices>
  214. </col>
  215. <col ref="appdd" type="inputdate" format="yyyy-mm-dd"/>
  216. <col ref="todd" type="inputdate" format="yyyy-mm-dd"/>
  217. <col ref="cmt" type="input"/>
  218. <script type="javascript" ev:event="onbuttonclick">
  219. <![CDATA[
  220. if(grd_bordmblist.colAttribute(grd_bordmblist.col,"ref") == "emplno" && OverLappingCheck() == true || grd_bordmblist.valueMatrix(grd_bordmblist.row,grd_bordmblist.colRef("instnm")) == "")
  221. {
  222. var recv_list = "emplno,emplnm,instcd,instnm,jobposcd,jobposnm,unitcd,unitnm,preststatnm,prfshipnm";
  223. rpbfOpenPopUpList("SPRPB00101", grd_bordmblist, recv_list,"","N");
  224. model.setValue("/root/main/bordmb/bordmblist[" + grd_bordmblist.row + "]/currentinstnm", grd_bordmblist.valueMatrix(grd_bordmblist.row,grd_bordmblist.colRef("instnm")));
  225. OverLappingCheck();
  226. }
  227. model.refresh();
  228. ]]>
  229. </script>
  230. <script type="javascript" ev:event="xforms-value-changed">
  231. <![CDATA[
  232. if(OverLappingCheck() == true)
  233. {
  234. if (grd_bordmblist.colAttribute(grd_bordmblist.col,"ref") == "emplno" ) { //계산기준코드
  235. var precv_list = "emplno,emplnm,instcd,instnm,jobposcd,jobposnm,unitcd,unitnm,preststatnm,prfshipnm";
  236. rpbfValidationCheck("EMPLNO", precv_list);
  237. model.setValue("/root/main/bordmb/bordmblist[" + grd_bordmblist.row + "]/currentinstnm", grd_bordmblist.valueMatrix(grd_bordmblist.row,grd_bordmblist.colRef("instnm")));
  238. if(grd_bordmblist.valueMatrix(grd_bordmblist.row,grd_bordmblist.colRef("emplnm")) == "")
  239. {
  240. grd_bordmblist.valueMatrix(grd_bordmblist.row,grd_bordmblist.colRef("emplno"))="";
  241. grd_bordmblist.col= grd_bordmblist.colRef("bordcd");
  242. }
  243. }
  244. model.refresh();
  245. }
  246. ]]>
  247. </script>
  248. </datagrid>
  249. <button id="btn_delete" class="btn2_letter3" style="left:1142px; top:51px; width:53px; height:19px; ">
  250. <caption>행삭제</caption>
  251. <script type="javascript" ev:event="DOMActivate">
  252. <![CDATA[
  253. misfGridIUD(grd_bordmblist, "D");
  254. ]]>
  255. </script>
  256. </button>
  257. <button id="btn_insert" class="btn2_letter3" style="left:1082px; top:51px; width:53px; height:19px; ">
  258. <caption>행추가</caption>
  259. <script type="javascript" ev:event="DOMActivate">
  260. <![CDATA[
  261. if(cmb_instcd.value == "") {
  262. messageBox("기관코드를","C002");
  263. }
  264. else if(grd_bordlist.rows < 2)
  265. {
  266. messageBox("위원회를","C002");
  267. }
  268. else
  269. {
  270. grd_bordmblist.addRow();
  271. var grd_bordlist_row = grd_bordlist.row;
  272. var grd_bordmblist_row = grd_bordmblist.row;
  273. //행추가를 누를시 상위코드의 값을 자동으로 저장한다.
  274. model.setValue("/root/main/bordmb/bordmblist[" + (grd_bordmblist.row - grd_bordmblist.fixedRows + 1) + "]/bordinstcd", grd_bordlist.valueMatrix(grd_bordlist_row, grd_bordlist.colRef("instcd")));
  275. model.setValue("/root/main/bordmb/bordmblist[" + (grd_bordmblist.row - grd_bordmblist.fixedRows + 1) + "]/bordcd", grd_bordlist.valueMatrix(grd_bordlist_row, grd_bordlist.colRef("bordcd")));
  276. grd_bordmblist.valueMatrix(grd_bordmblist.row, 17)="99991231";
  277. grd_bordmblist.valueMatrix(grd_bordmblist_row, grd_bordmblist.colRef("bordrespcd"))="4";
  278. grd_bordmblist.valueMatrix(grd_bordmblist_row, grd_bordmblist.colRef("essnyn"))="N";
  279. grd_bordmblist.col= grd_bordmblist.colRef("emplno");
  280. model.refresh();
  281. }
  282. ]]>
  283. </script>
  284. </button>
  285. <caption id="caption4" class="tit_2" style="left:244px; top:59px; width:186px; height:13px; ">위원회별 위원 세부내역</caption>
  286. <datagrid id="grd_bordlist" nodeset="/root/main/bord/bordlist" allowselection="true" caption="기간코드^위원회코드^위원회^공인여부" colsep="^" colwidth="50, 50, 150, 80" dataheight="35" ellipsis="true" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheight="25" rowsep="|" selectionmode="byrow" style="left:5px; top:80px; width:239px; height:663px; ">
  287. <col ref="instcd" visibility="hidden"/>
  288. <col ref="bordcd" visibility="hidden"/>
  289. <col ref="bordnm"/>
  290. <col disabled="true" ref="aprvyn" type="combo">
  291. <choices>
  292. <itemset nodeset="/root/init/essnynvalue">
  293. <label ref="label"/>
  294. <value ref="value"/>
  295. </itemset>
  296. </choices>
  297. </col>
  298. <script type="javascript" ev:event="onrowchanged">
  299. <![CDATA[
  300. misfGridInit(grd_bordmblist);
  301. var grd_bordlist_row = grd_bordlist.row;
  302. model.setValue("/root/send/selectedbord/selectedinstcd", grd_bordlist.valueMatrix(grd_bordlist_row,0));
  303. model.setValue("/root/send/selectedbord/selectedbordcd", grd_bordlist.valueMatrix(grd_bordlist_row,1));
  304. submit("TRRWB00202");
  305. ]]>
  306. </script>
  307. </datagrid>
  308. <line id="line2" class="line_1" style="x1:5px; y1:74px; x2:245px; y2:74px; "/>
  309. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:10px; width:1194px; height:35px; background-color:#fffbf2; border-color:#ffd799; "/>
  310. <caption id="caption2" class="search_name" style="left:7px; top:18px; width:61px; height:17px; ">기관:</caption>
  311. <select1 id="cmb_instcd" ref="/root/send/instcd" class="combo_s_essential" appearance="minimal" style="left:68px; top:17px; width:202px; height:19px; ">
  312. <choices>
  313. <itemset>
  314. <label/>
  315. <value/>
  316. </itemset>
  317. </choices>
  318. <script type="javascript" ev:event="xforms-select">
  319. <![CDATA[
  320. fsearch();
  321. ]]>
  322. </script>
  323. </select1>
  324. </group>
  325. <group id="grp_btn" scroll="auto" style="left:0px; top:12px; width:1195px; height:27px; ">
  326. <line id="line11" class="line_2" style="x1:0; y1:25; x2:1195; y2:25; "/>
  327. <line id="line5" class="line_6" style="x1:0px; y1:25; x2:1195px; y2:25; "/>
  328. <button id="btn_save" class="btn4_letter2" style="left:1139px; top:3px; width:56px; height:22px; ">
  329. <caption>저장</caption>
  330. <script type="javascript" ev:event="DOMActivate">
  331. <![CDATA[
  332. if(fCheckSaveData() == false)return;
  333. /*
  334. alert(grd_bordmblist.rows);
  335. if(grd_bordmblist.rows > 1)
  336. {
  337. for(row = 1 ; row <= grd_bordmblist.rows ; row++)
  338. {
  339. alert(grd_bordmblist.valueMatrix(row, grd_bordmblist.colRef("emplno")));
  340. if(grd_bordmblist.rowStatus(row) == 1 || grd_bordmblist.rowStatus(row) == 2 || grd_bordmblist.rowStatus(row) == 3)
  341. {
  342. grd_bordmblist.row = row;
  343. grd_bordmblist.col = grd_bordmblist.colRef("emplno");
  344. var precv_list = "emplno,emplnm,instcd,instnm,jobposcd,jobposnm,unitcd,unitnm,preststatnm,prfshipnm";
  345. rpbfValidationCheck("EMPLNO", precv_list);
  346. model.setValue("/root/main/bordmb/bordmblist[" + grd_bordmblist.row + "]/currentinstnm", grd_bordmblist.valueMatrix(grd_bordmblist.row,grd_bordmblist.colRef("instnm")));
  347. if(grd_bordmblist.valueMatrix(grd_bordmblist.row,grd_bordmblist.colRef("emplnm")) == "")
  348. {
  349. grd_bordmblist.valueMatrix(grd_bordmblist.row,grd_bordmblist.colRef("emplno"))="";
  350. grd_bordmblist.col= grd_bordmblist.colRef("bordcd");
  351. }
  352. }
  353. }
  354. }
  355. */
  356. if(OverLappingCheck() == true)
  357. {
  358. misfSave("TXRWB00201");
  359. }
  360. submit("TRRWB00202");
  361. ]]>
  362. </script>
  363. </button>
  364. <button id="btn_init" class="btn4_letter3" style="left:1069px; top:3px; width:68px; height:22px; ">
  365. <caption>초기화</caption>
  366. <script type="javascript" ev:event="DOMActivate">
  367. <![CDATA[
  368. fInitialize();
  369. ]]>
  370. </script>
  371. </button>
  372. </group>
  373. <button id="btn_search" class="btn1_letter2" style="left:1128px; top:56px; width:56px; height:22px; ">
  374. <caption>조회</caption>
  375. <script type="javascript" ev:event="DOMActivate">
  376. <![CDATA[
  377. fsearch();
  378. ]]>
  379. </script>
  380. </button>
  381. </xhtml:body>
  382. </xhtml:html>