OutSuppFixApprPop2.jsp 37 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895
  1. <%--
  2. - FileName : OutSuppFixApprPop.jsp
  3. --%>
  4. <%@ page contentType="text/html; charset=utf-8" %>
  5. <%@ page import="com.udapsoft.waf.system.HandlerStorage" %>
  6. <%@ page import="com.udapsoft.waf.common.ui.*" %>
  7. <%@ page import="com.udapsoft.waf.common.util.DateUtil"%>
  8. <%@ page import="kr.co.hsnc.common.util.*"%>
  9. <%@ page import="kr.co.hsnc.common.sql.*" %>
  10. <%@ include file="/jsp/work/taglib.jsp" %>
  11. <jsp:useBean id="ctx" class="com.udapsoft.waf.system.context.SessionContext" scope="session" />
  12. <%
  13. ctx.init(request, response);
  14. HandlerStorage storage = ctx.getHandlerStorage();
  15. ValueObject params = storage.getParams();
  16. String event = storage.getEvent();
  17. ValueObject vo = storage.getValueObject("getAppr");
  18. RowSet getApprSrdList = storage.getRowSet("getApprSrdList");
  19. String status_cd = params.get("status_cd");
  20. String yyyymmdd = (new java.text.SimpleDateFormat ("yyyy년 MM월 dd일")).format (new java.util.Date());
  21. String appr_date = (new java.text.SimpleDateFormat ("yyyyMMdd")).format (new java.util.Date());
  22. %>
  23. <script type="text/javascript">
  24. var chkVal = 0;
  25. function test(obj, code)
  26. {
  27. var id = document.getElementById(obj.getAttribute("id")).getAttribute("id");
  28. var cnt = obj.name.substring(obj.name.lastIndexOf("_")+1, obj.name.length);
  29. document.getElementById("result_" + cnt).innerHTML = obj.value;
  30. var cnt2 = id.substring(id.indexOf("_")+1, id.lastIndexOf("_"));
  31. var appr_cd = "";
  32. var idx = 0;
  33. var idx2 = 0;
  34. var total_1 = 0;
  35. var total_2 = 0;
  36. var total_3 = 0;
  37. var total_4 = 0;
  38. var total_5 = 0;
  39. <%
  40. for(int k=0; k < getApprSrdList.size(); k++)
  41. {
  42. %>
  43. if("01" == "<%=getApprSrdList.getRow(k).get("APPR_CD").substring(0,2)%>")
  44. {
  45. total_1 += Number(document.getElementById("result_" + idx).innerHTML);
  46. document.getElementById("totalAll_0").innerHTML = total_1;
  47. if(document.getElementById("test_"+cnt2+"_" + idx).checked)
  48. {
  49. if(cnt2 == "1")
  50. {
  51. document.form1.chkResultCd_<%=k%>.value = "S";
  52. }
  53. else if(cnt2 == "2")
  54. {
  55. document.form1.chkResultCd_<%=k%>.value = "A";
  56. }
  57. else if(cnt2 == "3")
  58. {
  59. document.form1.chkResultCd_<%=k%>.value = "B";
  60. }
  61. else if(cnt2 == "4")
  62. {
  63. document.form1.chkResultCd_<%=k%>.value = "C";
  64. }
  65. else if(cnt2 == "5")
  66. {
  67. document.form1.chkResultCd_<%=k%>.value = "D";
  68. }
  69. else
  70. {
  71. document.form1.chkResultCd_<%=k%>.value = "D";
  72. }
  73. }
  74. idx++;
  75. }
  76. else if("02" == "<%=getApprSrdList.getRow(k).get("APPR_CD").substring(0,2)%>")
  77. {
  78. total_2 += Number(document.getElementById("result_" + idx).innerHTML);
  79. document.getElementById("totalAll_1").innerHTML = total_2;
  80. if(document.getElementById("test_"+cnt2+"_" + idx).checked)
  81. {
  82. if(cnt2 == "1")
  83. {
  84. document.form1.chkResultCd_<%=k%>.value = "S";
  85. }
  86. else if(cnt2 == "2")
  87. {
  88. document.form1.chkResultCd_<%=k%>.value = "A";
  89. }
  90. else if(cnt2 == "3")
  91. {
  92. document.form1.chkResultCd_<%=k%>.value = "B";
  93. }
  94. else if(cnt2 == "4")
  95. {
  96. document.form1.chkResultCd_<%=k%>.value = "C";
  97. }
  98. else if(cnt2 == "5")
  99. {
  100. document.form1.chkResultCd_<%=k%>.value = "D";
  101. }
  102. }
  103. idx++;
  104. }
  105. else if("03" == "<%=getApprSrdList.getRow(k).get("APPR_CD").substring(0,2)%>")
  106. {
  107. total_3 += Number(document.getElementById("result_" + idx).innerHTML);
  108. document.getElementById("totalAll_2").innerHTML = total_3;
  109. if(document.getElementById("test_"+cnt2+"_" + idx).checked)
  110. {
  111. if(cnt2 == "1")
  112. {
  113. document.form1.chkResultCd_<%=k%>.value = "S";
  114. }
  115. else if(cnt2 == "2")
  116. {
  117. document.form1.chkResultCd_<%=k%>.value = "A";
  118. }
  119. else if(cnt2 == "3")
  120. {
  121. document.form1.chkResultCd_<%=k%>.value = "B";
  122. }
  123. else if(cnt2 == "4")
  124. {
  125. document.form1.chkResultCd_<%=k%>.value = "C";
  126. }
  127. else if(cnt2 == "5")
  128. {
  129. document.form1.chkResultCd_<%=k%>.value = "D";
  130. }
  131. }
  132. idx++;
  133. }
  134. else if("04" == "<%=getApprSrdList.getRow(k).get("APPR_CD").substring(0,2)%>")
  135. {
  136. total_4 += Number(document.getElementById("result_" + idx).innerHTML);
  137. document.getElementById("totalAll_3").innerHTML = total_4;
  138. if(document.getElementById("test_"+cnt2+"_" + idx).checked)
  139. {
  140. if(cnt2 == "1")
  141. {
  142. document.form1.chkResultCd_<%=k%>.value = "S";
  143. }
  144. else if(cnt2 == "2")
  145. {
  146. document.form1.chkResultCd_<%=k%>.value = "A";
  147. }
  148. else if(cnt2 == "3")
  149. {
  150. document.form1.chkResultCd_<%=k%>.value = "B";
  151. }
  152. else if(cnt2 == "4")
  153. {
  154. document.form1.chkResultCd_<%=k%>.value = "C";
  155. }
  156. else if(cnt2 == "5")
  157. {
  158. document.form1.chkResultCd_<%=k%>.value = "D";
  159. }
  160. }
  161. idx++;
  162. }
  163. else if("05" == "<%=getApprSrdList.getRow(k).get("APPR_CD").substring(0,2)%>")
  164. {
  165. total_5 += Number(document.getElementById("result_" + idx).innerHTML);
  166. document.getElementById("totalAll_4").innerHTML = total_5;
  167. if(document.getElementById("test_"+cnt2+"_" + idx).checked)
  168. {
  169. if(cnt2 == "1")
  170. {
  171. document.form1.chkResultCd_<%=k%>.value = "S";
  172. }
  173. else if(cnt2 == "2")
  174. {
  175. document.form1.chkResultCd_<%=k%>.value = "A";
  176. }
  177. else if(cnt2 == "3")
  178. {
  179. document.form1.chkResultCd_<%=k%>.value = "B";
  180. }
  181. else if(cnt2 == "4")
  182. {
  183. document.form1.chkResultCd_<%=k%>.value = "C";
  184. }
  185. else if(cnt2 == "5")
  186. {
  187. document.form1.chkResultCd_<%=k%>.value = "D";
  188. }
  189. }
  190. idx++;
  191. }
  192. <%
  193. }
  194. %>
  195. document.getElementById("total_rate_all").innerHTML = total_1 + total_2 + total_3 + total_4 + total_5;
  196. document.getElementById("total_value").innerHTML = total_1 + total_2 + total_3 + total_4 + total_5;
  197. document.form1.appr_tot_rate.value = total_1 + total_2 + total_3 + total_4 + total_5;
  198. var total_test_value = total_1 + total_2 + total_3 + total_4 + total_5;
  199. if(total_test_value >= 92)
  200. {
  201. document.getElementById("total_level").innerHTML = "S등급";
  202. document.form1.item_std_cd.value = "S";
  203. }
  204. else if(total_test_value >= 84)
  205. {
  206. document.getElementById("total_level").innerHTML = "A등급";
  207. document.form1.item_std_cd.value = "A";
  208. }
  209. else if(total_test_value >= 76)
  210. {
  211. document.getElementById("total_level").innerHTML = "B등급";
  212. document.form1.item_std_cd.value = "B";
  213. }
  214. else if(total_test_value >= 68)
  215. {
  216. document.getElementById("total_level").innerHTML = "C등급";
  217. document.form1.item_std_cd.value = "C";
  218. }
  219. else
  220. {
  221. document.getElementById("total_level").innerHTML = "D등급";
  222. document.form1.item_std_cd.value = "D";
  223. }
  224. }
  225. function test2(id, code)
  226. {
  227. var id = document.getElementById(obj.getAttribute("id")).getAttribute("id");
  228. var cnt = obj.name.substring(obj.name.lastIndexOf("_")+1, obj.name.length);
  229. document.getElementById("result_" + cnt).innerHTML = obj.value;
  230. var cnt2 = id.substring(id.indexOf("_")+1, id.lastIndexOf("_"));
  231. var appr_cd = "";
  232. var idx = 0;
  233. var idx2 = 0;
  234. var total_1 = 0;
  235. var total_2 = 0;
  236. var total_3 = 0;
  237. var total_4 = 0;
  238. var total_5 = 0;
  239. <%
  240. for(int k=0; k < getApprSrdList.size(); k++)
  241. {
  242. %>
  243. if("01" == "<%=getApprSrdList.getRow(k).get("APPR_CD").substring(0,2)%>")
  244. {
  245. total_1 += Number(document.getElementById("result_" + idx).innerHTML);
  246. document.getElementById("totalAll_0").innerHTML = total_1;
  247. if(document.getElementById("test_"+cnt2+"_" + idx).checked)
  248. {
  249. if(cnt2 == "1")
  250. {
  251. document.form1.chkResultCd_<%=k%>.value = "S";
  252. }
  253. else if(cnt2 == "2")
  254. {
  255. document.form1.chkResultCd_<%=k%>.value = "A";
  256. }
  257. else if(cnt2 == "3")
  258. {
  259. document.form1.chkResultCd_<%=k%>.value = "B";
  260. }
  261. else if(cnt2 == "4")
  262. {
  263. document.form1.chkResultCd_<%=k%>.value = "C";
  264. }
  265. else if(cnt2 == "5")
  266. {
  267. document.form1.chkResultCd_<%=k%>.value = "D";
  268. }
  269. else
  270. {
  271. document.form1.chkResultCd_<%=k%>.value = "D";
  272. }
  273. }
  274. idx++;
  275. }
  276. else if("02" == "<%=getApprSrdList.getRow(k).get("APPR_CD").substring(0,2)%>")
  277. {
  278. total_2 += Number(document.getElementById("result_" + idx).innerHTML);
  279. document.getElementById("totalAll_1").innerHTML = total_2;
  280. if(document.getElementById("test_"+cnt2+"_" + idx).checked)
  281. {
  282. if(cnt2 == "1")
  283. {
  284. document.form1.chkResultCd_<%=k%>.value = "S";
  285. }
  286. else if(cnt2 == "2")
  287. {
  288. document.form1.chkResultCd_<%=k%>.value = "A";
  289. }
  290. else if(cnt2 == "3")
  291. {
  292. document.form1.chkResultCd_<%=k%>.value = "B";
  293. }
  294. else if(cnt2 == "4")
  295. {
  296. document.form1.chkResultCd_<%=k%>.value = "C";
  297. }
  298. else if(cnt2 == "5")
  299. {
  300. document.form1.chkResultCd_<%=k%>.value = "D";
  301. }
  302. }
  303. idx++;
  304. }
  305. else if("03" == "<%=getApprSrdList.getRow(k).get("APPR_CD").substring(0,2)%>")
  306. {
  307. total_3 += Number(document.getElementById("result_" + idx).innerHTML);
  308. document.getElementById("totalAll_2").innerHTML = total_3;
  309. if(document.getElementById("test_"+cnt2+"_" + idx).checked)
  310. {
  311. if(cnt2 == "1")
  312. {
  313. document.form1.chkResultCd_<%=k%>.value = "S";
  314. }
  315. else if(cnt2 == "2")
  316. {
  317. document.form1.chkResultCd_<%=k%>.value = "A";
  318. }
  319. else if(cnt2 == "3")
  320. {
  321. document.form1.chkResultCd_<%=k%>.value = "B";
  322. }
  323. else if(cnt2 == "4")
  324. {
  325. document.form1.chkResultCd_<%=k%>.value = "C";
  326. }
  327. else if(cnt2 == "5")
  328. {
  329. document.form1.chkResultCd_<%=k%>.value = "D";
  330. }
  331. }
  332. idx++;
  333. }
  334. else if("04" == "<%=getApprSrdList.getRow(k).get("APPR_CD").substring(0,2)%>")
  335. {
  336. total_4 += Number(document.getElementById("result_" + idx).innerHTML);
  337. document.getElementById("totalAll_3").innerHTML = total_4;
  338. if(document.getElementById("test_"+cnt2+"_" + idx).checked)
  339. {
  340. if(cnt2 == "1")
  341. {
  342. document.form1.chkResultCd_<%=k%>.value = "S";
  343. }
  344. else if(cnt2 == "2")
  345. {
  346. document.form1.chkResultCd_<%=k%>.value = "A";
  347. }
  348. else if(cnt2 == "3")
  349. {
  350. document.form1.chkResultCd_<%=k%>.value = "B";
  351. }
  352. else if(cnt2 == "4")
  353. {
  354. document.form1.chkResultCd_<%=k%>.value = "C";
  355. }
  356. else if(cnt2 == "5")
  357. {
  358. document.form1.chkResultCd_<%=k%>.value = "D";
  359. }
  360. }
  361. idx++;
  362. }
  363. else if("05" == "<%=getApprSrdList.getRow(k).get("APPR_CD").substring(0,2)%>")
  364. {
  365. total_5 += Number(document.getElementById("result_" + idx).innerHTML);
  366. document.getElementById("totalAll_4").innerHTML = total_5;
  367. if(document.getElementById("test_"+cnt2+"_" + idx).checked)
  368. {
  369. if(cnt2 == "1")
  370. {
  371. document.form1.chkResultCd_<%=k%>.value = "S";
  372. }
  373. else if(cnt2 == "2")
  374. {
  375. document.form1.chkResultCd_<%=k%>.value = "A";
  376. }
  377. else if(cnt2 == "3")
  378. {
  379. document.form1.chkResultCd_<%=k%>.value = "B";
  380. }
  381. else if(cnt2 == "4")
  382. {
  383. document.form1.chkResultCd_<%=k%>.value = "C";
  384. }
  385. else if(cnt2 == "5")
  386. {
  387. document.form1.chkResultCd_<%=k%>.value = "D";
  388. }
  389. }
  390. idx++;
  391. }
  392. <%
  393. }
  394. %>
  395. document.getElementById("total_rate_all").innerHTML = total_1 + total_2 + total_3 + total_4 + total_5;
  396. document.getElementById("total_value").innerHTML = total_1 + total_2 + total_3 + total_4 + total_5;
  397. document.form1.appr_tot_rate.value = total_1 + total_2 + total_3 + total_4 + total_5;
  398. var total_test_value = total_1 + total_2 + total_3 + total_4 + total_5;
  399. total_test_value = total_test_value;
  400. if(total_test_value >= 92)
  401. {
  402. document.getElementById("total_level").innerHTML = "S등급";
  403. document.form1.item_std_cd.value = "S";
  404. }
  405. else if(total_test_value >= 84)
  406. {
  407. document.getElementById("total_level").innerHTML = "A등급";
  408. document.form1.item_std_cd.value = "A";
  409. }
  410. else if(total_test_value >= 76)
  411. {
  412. document.getElementById("total_level").innerHTML = "B등급";
  413. document.form1.item_std_cd.value = "B";
  414. }
  415. else if(total_test_value >= 68)
  416. {
  417. document.getElementById("total_level").innerHTML = "C등급";
  418. document.form1.item_std_cd.value = "C";
  419. }
  420. else
  421. {
  422. document.getElementById("total_level").innerHTML = "D등급";
  423. document.form1.item_std_cd.value = "D";
  424. }
  425. }
  426. function loadTest()
  427. {
  428. <%
  429. for (int ll = 0; ll < getApprSrdList.size(); ll++)
  430. {
  431. %>
  432. var index = $(':radio[name="test_<%=ll%>"]').index($(':radio[name="test_<%=ll%>"]:checked')) +1;
  433. if(index == "1")
  434. {
  435. $("#test_1_<%=ll%>").click();
  436. }
  437. else if(index == "2")
  438. {
  439. $("#test_2_<%=ll%>").click();
  440. }
  441. else if(index == "3")
  442. {
  443. $("#test_3_<%=ll%>").click();
  444. }
  445. else if(index == "4")
  446. {
  447. $("#test_4_<%=ll%>").click();
  448. }
  449. else if(index == "5")
  450. {
  451. $("#test_5_<%=ll%>").click();
  452. }
  453. <%
  454. }
  455. %>
  456. }
  457. function doSave()
  458. {
  459. var f = document.form1;
  460. $("#fevent").val("GET_SAVE");
  461. if(f.appr_note.value == ""){
  462. alert("평가자 종합의견을 작성해주십시오.");
  463. return
  464. }
  465. if (f.item_std_cd.value == "C"){
  466. if (!confirm("입력하신 해당업체의 준공평가 결과는 C등급으로 당사에서 수행하는 모든 프로젝트의 입찰이 1년간 제한됩니다.<br>저장하시겠습니까?")){
  467. return
  468. }
  469. }else if (f.item_std_cd.value == "D"){
  470. if (!confirm("입력하신 해당업체의 준공평가 결과는 D등급으로 협력업체 등록 취소 및 당사에서 수행하는 모든 프로젝트 입찰이 영구 제한됩니다.<br>저장하시겠습니까?")){
  471. return
  472. }
  473. }else {
  474. if (!confirm("저장하시겠습니까?")){
  475. return
  476. }
  477. }
  478. submitXmlRequest("/supplier/outside/OutSuppFixApprPopSave.screen", "GET_SAVE", f);
  479. }
  480. function doResult(resultObj) {
  481. var f = document.form1;
  482. try
  483. {
  484. document.form1.isSubmit = false;
  485. if(resultObj.getRequestEvent() == "GET_SAVE")
  486. {
  487. if (resultObj.getSuccess())
  488. {
  489. alert("저장완료");
  490. }
  491. else
  492. {
  493. dlgErrorMsg( resultObj );
  494. }
  495. }
  496. }
  497. catch(errorObject) {
  498. showErrorDlg("doResult()", errorObject);
  499. }
  500. }
  501. $(document).ready(function(){
  502. loadTest();
  503. //페이지 로드시 콤마 찍어주기.
  504. $(".numberic").each(function(){
  505. $(this).val($(this).val().split(/(?=(?:\d{3})+(?:\.|$))/g).join(','));
  506. });
  507. });
  508. $(window).load(function () {
  509. $(".gubun").each(function () {
  510. var rows = $(".gubun:contains('" + $(this).text() + "')");
  511. if (rows.length > 1) {
  512. rows.eq(0).attr("rowspan", rows.length);
  513. rows.not(":eq(0)").remove();
  514. }
  515. });
  516. });
  517. $(function(){
  518. $(document).on("keyup", "input:text[numberOnly]", function(){
  519. $(this).val( $(this).val().replace(/[^0-9]/gi,"") );
  520. });
  521. $(document).on("keyup", ".numberic", function(){
  522. $(this).val($(this).val().split(/(?=(?:\d{3})+(?:\.|$))/g).join(',')); //콤마찍기 정규식...귀찮ㄹ타
  523. });
  524. });
  525. </script>
  526. <modular:search id="form1">
  527. <modular:key id="fevent" />
  528. </modular:search>
  529. <form name="form1" method="post" action="" >
  530. <input type="hidden" name="fevent" id="fevent" value="" />
  531. <input type="hidden" name="listSize" id="listSize" value="<%=getApprSrdList.size() %>" />
  532. <input type="hidden" name="corp_id" id="corp_id" value="<%=params.get("corp_id") %>" />
  533. <input type="hidden" name="corp_no" id="corp_no" value="<%=params.get("corp_no") %>" />
  534. <input type="hidden" name="appr_date" id="appr_date" value="<%=appr_date %>" />
  535. <input type="hidden" name="item_std_cd" id="item_std_cd" value="" />
  536. <input type="hidden" name="appr_tot_rate" id="appr_tot_rate" value="" />
  537. <input type="hidden" name="doc_cd" id="doc_cd" value="<%=params.get("p_doc_cd") %>" />
  538. <input type="hidden" name="dept_cd" id="dept_cd" value="<%=params.get("dept_cd") %>" />
  539. <input type="hidden" name="dept_name" id="dept_name" value="<%=params.get("dept_name") %>" />
  540. <input type="hidden" name="acmp_id" id="acmp_id" value="<%=params.get("acmp_id") %>" />
  541. <input type="hidden" name="arr_id" id="arr_id" value="<%=vo.get("arr_id") %>" />
  542. <input type="hidden" name="USER_SABUN" id="USER_SABUN" value="<%=params.get("USER_SABUN") %>" />
  543. <input type="hidden" name="subContId" id="subContId" value="<%=params.get("subContId") %>" />
  544. <input type="hidden" name="out_item_cd" id="out_item_cd" value="06" />
  545. <div style="width: 100%; text-align: center; margin-top: 10px; margin-bottom: 15px;" >
  546. <span style="font-size: 15px; font-weight: bold;">협력업체 준공평가표 (설계.인허가)</span>
  547. </div>
  548. <div style="width: 100%;">
  549. <div style="text-align: left; width:50%; float: left;">현장명 : <%=params.get("dept_name") %></div>
  550. <div style="text-align: right; width:50%; float: left;"><%=yyyymmdd %> 현재</div>
  551. </div>
  552. <TABLE cellspacing="0" cellpadding="0" border="1" bordercolordark="#FFFFF" bordercolorlight="#d2d2d2" class="input_table" style="width:100%;">
  553. <col width="25%" />
  554. <col width="25%" />
  555. <col width="25%" />
  556. <!-- <col width="20%" />
  557. <col width="12%" /> -->
  558. <col width="*" />
  559. <tr>
  560. <td class="insert_table_title" style="text-align: center;">협력업체명<br/>/연락처</td>
  561. <td class="search_table_input2">
  562. <input type="text" name="corp_kor" id="corp_kor" value="<%=vo.get("corp_kor") %>" class="input required" style="width: 99%;"/><br/>
  563. <input type="text" name="corp_tel" id="corp_tel" value="<%=vo.get("corp_tel") %>" class="input required" style="width: 99%;"/>
  564. </td>
  565. <td class="insert_table_title" style="text-align: center;">협력업체소장<br/>/대표자</td>
  566. <td class="search_table_input2">
  567. <input type="text" name="corp_manager" id="corp_manager" value="<%=vo.get("corp_manager") %>" class="input required" style="width: 99%;"/><br/>
  568. <input type="text" name="rep_name" id="rep_name" value="<%=vo.get("rep_name") %>"class="input required" style="width: 99%;" />
  569. </td>
  570. <%-- <td class="insert_table_title" align="center">
  571. <div>3년평균</div>
  572. <div>매출액</div>
  573. </td>
  574. <td class="search_table_input2">
  575. <input type="text" name="sales_3year" id="sales_3year" value="<%=vo.get("sales_3year") %>" class="input required numberic" numberOnly="true" style="width: 95%; text-align: right;"/>
  576. </td> --%>
  577. </tr>
  578. <tr>
  579. <td class="insert_table_title" style="text-align: center;">공 종 명</td>
  580. <td class="search_table_input2">
  581. <input type="text" name="item_name" id="item_name" value="<%=vo.get("item_name") %>" class="input required" style="width: 99%;"/>
  582. </td>
  583. <td class="insert_table_title" style="text-align: center;">계약금액(VAT별도)</td>
  584. <td class="search_table_input2">
  585. <input type="text" name="con_amt" id="con_amt" value="<%=vo.get("con_amt").equals("") ? params.get("con_supply_amt") : vo.get("con_supply_tamt")%>" class="input required numberic" numberOnly="true" style="width: 99%; text-align: right;"/>
  586. </td>
  587. </tr>
  588. <tr>
  589. <td class="insert_table_title" style="text-align: center;">계약공기</td>
  590. <td class="search_table_input2">
  591. <input type="text" name="start_work_date" id="start_work_date" value="<%=vo.get("start_work_date").equals("") ? params.get("startWorkDate") : vo.get("start_work_date") %>" class="input required" style="width: 35%; text-align: center;"/>
  592. <A href="JavaScript:dlgCalendar('start_work_date');"><IMG src="/img/supplier/template/bt_calender.gif" alt="달력" border="0" align="absmiddle"></A>~
  593. <input type="text" name="end_work_date" id="end_work_date" value="<%=vo.get("end_work_date").equals("") ? params.get("endWorkDate") : vo.get("end_work_date") %>" class="input required" style="width: 35%; text-align: center;" />
  594. <A href="JavaScript:dlgCalendar('end_work_date');"><IMG src="/img/supplier/template/bt_calender.gif" alt="달력" border="0" align="absmiddle"></A>
  595. </td>
  596. <td class="insert_table_title" style="text-align: center;">실공기</td>
  597. <td class="search_table_input2">
  598. <input type="text" name="start_real_date" id="start_real_date" value="<%=vo.get("start_real_date") %>" class="input required" style="width: 35%; text-align: center;" />
  599. <A href="JavaScript:dlgCalendar('start_real_date');"><IMG src="/img/supplier/template/bt_calender.gif" alt="달력" border="0" align="absmiddle"></A>~
  600. <input type="text" name="end_real_date" id="end_real_date" value="<%=vo.get("end_real_date") %>" class="input required" style="width: 35%; text-align: center;" />
  601. <A href="JavaScript:dlgCalendar('end_real_date');"><IMG src="/img/supplier/template/bt_calender.gif" alt="달력" border="0" align="absmiddle"></A>
  602. </td>
  603. </tr>
  604. <tr>
  605. <td class="insert_table_title" style="text-align: center;">작성 및 평가자</td>
  606. <td class="search_table_input2" style="text-align: center;">
  607. <%=vo.get("USER_NAME") %> (인) <br/>
  608. <input type="hidden" name="write_no" id="write_no" value="<%=vo.get("USER_NAME") %>" class="input required" style="width: 99%;" />
  609. </td>
  610. <td class="insert_table_title" style="text-align: center;">평가구분</td>
  611. <td class="search_table_input2" style="text-align: center;">
  612. 연평가, 준공평가
  613. </td>
  614. </tr>
  615. </table>
  616. <table cellspacing="0" cellpadding="0" border="1" bordercolordark="#FFFFF" bordercolorlight="#d2d2d2" class="input_table" style="width:100%;">
  617. <col width="15%" />
  618. <col width="*" />
  619. <col width="7%" />
  620. <col width="8%" />
  621. <col width="8%" />
  622. <col width="8%" />
  623. <col width="8%" />
  624. <!-- <col width="8%" /> -->
  625. <col width="15%" />
  626. <tr>
  627. <td class="insert_table_title" colspan="2" rowspan="2" style="text-align: center;">평 가 항 목</td>
  628. <td class="insert_table_title" rowspan="2" style="text-align: center;">배점</td>
  629. <td class="insert_table_title" rowspan="2" style="text-align: center; text-indent : 0px;">평가점수</td>
  630. <td class="insert_table_title" colspan="4" style="text-align: center;">평 가 등 급</td>
  631. </tr>
  632. <tr>
  633. <td class="insert_table_title" style="text-align: center;"><div>E</div>Exceed</td>
  634. <td class="insert_table_title" style="text-align: center;"><div>M</div>Meet</td>
  635. <td class="insert_table_title" style="text-align: center;"><div>B</div>Below</td>
  636. <td class="insert_table_title" style="text-align: center;"><div>평가사유</div></td>
  637. <!-- <td class="insert_table_title" style="text-align: center;"><div>C</div>(미흡)</td>
  638. <td class="insert_table_title" style="text-align: center;"><div>D</div>(불량)</td> -->
  639. </tr>
  640. <%
  641. String chk = "";
  642. int idx = 0;
  643. int sum_stock_rate = 0;
  644. int all_sum_stock_rate = 0;
  645. String appr_cd = "";
  646. for(int i=0; i < getApprSrdList.size(); i++)
  647. {
  648. %>
  649. <%
  650. if(!appr_cd.equals("") && !appr_cd.equals(getApprSrdList.getRow(i).get("APPR_CD").substring(0,2)))
  651. {
  652. System.out.println("타는시점?");
  653. System.out.println(getApprSrdList.getRow(i).get("APPR_CD").substring(0,2));
  654. %>
  655. <tr height="25">
  656. <td class="insert_table_title gubun" style="text-indent: 0px;"><%=getApprSrdList.getRow(i-1).get("GUBUN_1") %></td>
  657. <td class="insert_table_title" style="text-align: center; text-indent: 0px;">소 계</td>
  658. <td class="insert_table_title" style="text-align: center; text-indent: 0px;"><%=sum_stock_rate %></td>
  659. <td class="insert_table_title" style="text-align: center; text-indent: 0px;"><div id="totalAll_<%=idx%>">0</div></td>
  660. <td class="insert_table_title" style="text-align: center; text-indent: 0px;" colspan="4">&nbsp;</td>
  661. </tr>
  662. <tr>
  663. <td class="insert_table_title gubun" style="text-indent: 0px;"><%=getApprSrdList.getRow(i).get("GUBUN_1") %></td>
  664. <td class="insert_table_title" style="text-indent: 0px;"><%=getApprSrdList.getRow(i).get("GUBUN_2") %></td>
  665. <td class="insert_table_title" style="text-align: center; text-indent: 0px;"><%=getApprSrdList.getRow(i).get("STOCK_RATE") %></td>
  666. <td style="text-align: center; text-indent: 0px;">
  667. <div id="result_<%=i%>">0</div>
  668. <div style="display: none;"><input type="hidden" name="appr_cd_<%=i %>" value="<%=getApprSrdList.getRow(i).get("APPR_CD") %>" /></div>
  669. <div style="display: none;"><input type="hidden" name="chkResultCd_<%=i %>" value="<%=getApprSrdList.getRow(i).get("APPR_RESULT_CD") %>" /></div>
  670. </td>
  671. <td style="text-align: center; text-indent: 0px;"><input type="radio" name="test_<%=i %>" id="test_1_<%=i %>" value="<%=getApprSrdList.getRow(i).get("A_RATE") %>" onclick="test(this, '<%=getApprSrdList.getRow(i).get("APPR_CD").substring(0,2)%>');" <%=getApprSrdList.getRow(i).get("A_RATE").equals(getApprSrdList.getRow(i).get("APPR_RATE")) ? "checked=\"checked\"" : ""%> /><div>(<%=getApprSrdList.getRow(i).get("A_RATE") %>)</div></td>
  672. <td style="text-align: center; text-indent: 0px;"><input type="radio" name="test_<%=i %>" id="test_2_<%=i %>" value="<%=getApprSrdList.getRow(i).get("B_RATE") %>" onclick="test(this, '<%=getApprSrdList.getRow(i).get("APPR_CD").substring(0,2)%>');" <%=getApprSrdList.getRow(i).get("B_RATE").equals(getApprSrdList.getRow(i).get("APPR_RATE")) ? "checked=\"checked\"" : ""%>/><div>(<%=getApprSrdList.getRow(i).get("B_RATE") %>)</div></td>
  673. <td style="text-align: center; text-indent: 0px;"><input type="radio" name="test_<%=i %>" id="test_3_<%=i %>" value="<%=getApprSrdList.getRow(i).get("C_RATE") %>" onclick="test(this, '<%=getApprSrdList.getRow(i).get("APPR_CD").substring(0,2)%>');" <%=getApprSrdList.getRow(i).get("C_RATE").equals(getApprSrdList.getRow(i).get("APPR_RATE")) ? "checked=\"checked\"" : ""%>/><div>(<%=getApprSrdList.getRow(i).get("C_RATE") %>)</div></td>
  674. <td style="text-align: left; text-indent: 0px;"><textarea maxlength="250" cols="95%" name="appr_reason_<%=i %>" id="appr_reason_<%=i %>" style="width:98%" ><%=getApprSrdList.getRow(i).get("APPR_REASON") %></textarea></td>
  675. <%-- <td style="text-align: center; text-indent: 0px;"><input type="radio" name="test_<%=i %>" id="test_4_<%=i %>" value="<%=getApprSrdList.getRow(i).get("D_RATE") %>" onclick="test(this, '<%=getApprSrdList.getRow(i).get("APPR_CD").substring(0,2)%>');" <%=getApprSrdList.getRow(i).get("D_RATE").equals(getApprSrdList.getRow(i).get("APPR_RATE")) ? "checked=\"checked\"" : ""%>/><div>(<%=getApprSrdList.getRow(i).get("D_RATE") %>)</div></td>
  676. <td style="text-align: center; text-indent: 0px;"><input type="radio" name="test_<%=i %>" id="test_5_<%=i %>" value="<%=getApprSrdList.getRow(i).get("E_RATE") %>" onclick="test(this, '<%=getApprSrdList.getRow(i).get("APPR_CD").substring(0,2)%>');" <%=getApprSrdList.getRow(i).get("E_RATE").equals(getApprSrdList.getRow(i).get("APPR_RATE")) ? "checked=\"checked\"" : ""%>/><div>(<%=getApprSrdList.getRow(i).get("E_RATE") %>)</div></td> --%>
  677. </tr>
  678. <% all_sum_stock_rate += sum_stock_rate;
  679. sum_stock_rate = 0;
  680. idx++;
  681. }else{
  682. %>
  683. <tr>
  684. <td class="insert_table_title gubun" style="text-indent: 0px;"><%=getApprSrdList.getRow(i).get("GUBUN_1") %></td>
  685. <td class="insert_table_title" style="text-indent: 0px;"><%=getApprSrdList.getRow(i).get("GUBUN_2") %></td>
  686. <td class="insert_table_title" style="text-align: center; text-indent: 0px;"><%=getApprSrdList.getRow(i).get("STOCK_RATE") %></td>
  687. <td style="text-align: center; text-indent: 0px;">
  688. <div id="result_<%=i%>">0</div>
  689. <div style="display: none;"><input type="hidden" name="appr_cd_<%=i %>" value="<%=getApprSrdList.getRow(i).get("APPR_CD") %>" /></div>
  690. <div style="display: none;"><input type="hidden" name="chkResultCd_<%=i %>" value="<%=getApprSrdList.getRow(i).get("APPR_RESULT_CD") %>" /></div>
  691. </td>
  692. <td style="text-align: center; text-indent: 0px;"><input type="radio" name="test_<%=i %>" id="test_1_<%=i %>" value="<%=getApprSrdList.getRow(i).get("A_RATE") %>" onclick="test(this, '<%=getApprSrdList.getRow(i).get("APPR_CD").substring(0,2)%>');" <%=getApprSrdList.getRow(i).get("A_RATE").equals(getApprSrdList.getRow(i).get("APPR_RATE")) ? "checked=\"checked\"" : ""%> /><div>(<%=getApprSrdList.getRow(i).get("A_RATE") %>)</div></td>
  693. <td style="text-align: center; text-indent: 0px;"><input type="radio" name="test_<%=i %>" id="test_2_<%=i %>" value="<%=getApprSrdList.getRow(i).get("B_RATE") %>" onclick="test(this, '<%=getApprSrdList.getRow(i).get("APPR_CD").substring(0,2)%>');" <%=getApprSrdList.getRow(i).get("B_RATE").equals(getApprSrdList.getRow(i).get("APPR_RATE")) ? "checked=\"checked\"" : ""%>/><div>(<%=getApprSrdList.getRow(i).get("B_RATE") %>)</div></td>
  694. <td style="text-align: center; text-indent: 0px;"><input type="radio" name="test_<%=i %>" id="test_3_<%=i %>" value="<%=getApprSrdList.getRow(i).get("C_RATE") %>" onclick="test(this, '<%=getApprSrdList.getRow(i).get("APPR_CD").substring(0,2)%>');" <%=getApprSrdList.getRow(i).get("C_RATE").equals(getApprSrdList.getRow(i).get("APPR_RATE")) ? "checked=\"checked\"" : ""%>/><div>(<%=getApprSrdList.getRow(i).get("C_RATE") %>)</div></td>
  695. <td style="text-align: left; text-indent: 0px;"><textarea maxlength="250" cols="95%" name="appr_reason_<%=i %>" id="appr_reason_<%=i %>" style="width:98%" ><%=getApprSrdList.getRow(i).get("APPR_REASON") %></textarea></td>
  696. <%-- <td style="text-align: center; text-indent: 0px;"><input type="radio" name="test_<%=i %>" id="test_4_<%=i %>" value="<%=getApprSrdList.getRow(i).get("D_RATE") %>" onclick="test(this, '<%=getApprSrdList.getRow(i).get("APPR_CD").substring(0,2)%>');" <%=getApprSrdList.getRow(i).get("D_RATE").equals(getApprSrdList.getRow(i).get("APPR_RATE")) ? "checked=\"checked\"" : ""%>/><div>(<%=getApprSrdList.getRow(i).get("D_RATE") %>)</div></td>
  697. <td style="text-align: center; text-indent: 0px;"><input type="radio" name="test_<%=i %>" id="test_5_<%=i %>" value="<%=getApprSrdList.getRow(i).get("E_RATE") %>" onclick="test(this, '<%=getApprSrdList.getRow(i).get("APPR_CD").substring(0,2)%>');" <%=getApprSrdList.getRow(i).get("E_RATE").equals(getApprSrdList.getRow(i).get("APPR_RATE")) ? "checked=\"checked\"" : ""%>/><div>(<%=getApprSrdList.getRow(i).get("E_RATE") %>)</div></td> --%>
  698. </tr>
  699. <%
  700. }
  701. %>
  702. <%
  703. appr_cd = getApprSrdList.getRow(i).get("APPR_CD").substring(0,2);
  704. sum_stock_rate += Integer.parseInt(getApprSrdList.getRow(i).get("STOCK_RATE"));
  705. if (i+1 == getApprSrdList.size()) //마지막이면 소계표기 2015.8.5
  706. {
  707. all_sum_stock_rate += sum_stock_rate;
  708. %>
  709. <tr height="25">
  710. <td class="insert_table_title gubun" style="text-indent: 0px;"><%=getApprSrdList.getRow(i).get("GUBUN_1") %></td>
  711. <td class="insert_table_title" style="text-align: center; text-indent: 0px;">소 계</td>
  712. <td class="insert_table_title" style="text-align: center; text-indent: 0px;"><%=sum_stock_rate %></td>
  713. <td class="insert_table_title" style="text-align: center; text-indent: 0px;"><div id="totalAll_<%=idx%>">0</div></td>
  714. <td class="insert_table_title" style="text-align: center; text-indent: 0px;" colspan="4">&nbsp;</td>
  715. </tr>
  716. <%
  717. }
  718. }%>
  719. <tr height="25">
  720. <td class="insert_table_title gubun" colspan="2" align="center" style="text-indent: 0px;">합계</td>
  721. <td style="text-align: center;" class="insert_table_title" style="text-indent: 0px;">
  722. <div name="total_rate" id="total_rate">
  723. <%=all_sum_stock_rate %>
  724. </div>
  725. </td>
  726. <td style="text-align: center;" class="insert_table_title" style="text-indent: 0px;">
  727. <div name="total_rate_all" id="total_rate_all">
  728. 0
  729. </div>
  730. </td>
  731. <td style="text-align: center;" class="insert_table_title" style="text-indent: 0px;" colspan="4">
  732. &nbsp;
  733. </td>
  734. </tr>
  735. </table>
  736. <table cellspacing="0" cellpadding="0" border="1" bordercolordark="#FFFFF" bordercolorlight="#d2d2d2" class="input_table" style="width:100%;">
  737. <col width="15%" />
  738. <col width="20%" />
  739. <col width="7%" />
  740. <col width="8%" />
  741. <col width="8%" />
  742. <col width="8%" />
  743. <col width="8%" />
  744. <col width="8%" />
  745. <col width="9%" />
  746. <%
  747. chk = "";
  748. sum_stock_rate = 0;
  749. appr_cd = "";
  750. %>
  751. <tr>
  752. <td class="insert_table_title" style="text-align: center; text-indent: 0px;" rowspan="2">종합평가</td>
  753. <td class="insert_table_title" style="text-align: left; text-indent: 0px;">
  754. <div style="float: left;">합계 점수</div>
  755. <div style="float: right;" id="total_value">0</div>
  756. </td>
  757. <td class="insert_table_title" style="text-align: left; text-indent: 0px;" rowspan="2" colspan="7">
  758. <div style="margin-bottom: 3px; margin-top: 3px;">S등급(탁월: 92점~100점): 입찰참여 기회 보장 및 협력업체 평가시 가산점 부여 (+20점)</div>
  759. <div style="margin-bottom: 3px;">A등급(우수: 84점~91점): 입찰참여 기회 보장 및 협력업체 평가시 가산점 부여 (+10점)</div>
  760. <div style="margin-bottom: 3px;">B등급(보통: 76점~83점): 협력업체 유지</div>
  761. <div style="margin-bottom: 3px;">C등급(미흡: 68점~75점): 입찰참여 1년간 제한 및 협력업체 평가시 가산점 부여 (-5점)</div>
  762. <div style="margin-bottom: 3px;">D등급(불량: 0점~67점): 협력업체 등록 취소 및 입찰참여 영구 제한 및 협력업체 평가시 가산점 부여 (-10점)</div>
  763. </td>
  764. </tr>
  765. <tr>
  766. <td class="insert_table_title" style="text-align: left; text-indent: 0px;">
  767. <div style="float: left;">협력업체<div style="margin-top: 3px;">등&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;급</div></div>
  768. <div style="float: right; height: 30px; line-height: 30px;" id="total_level">등급</div>
  769. </td>
  770. </tr>
  771. <tr>
  772. <td class="insert_table_title" style="text-align: center; text-indent: 0px;" >평가자 종합의견</td>
  773. <td class="insert_table_title" style="text-align: left; text-indent: 0px;" colspan="8">
  774. <textarea rows="5" cols="95%" name="appr_note" id="appr_note" ><%=vo.get("appr_note") %></textarea>
  775. </td>
  776. </tr>
  777. <tr>
  778. <td class="insert_table_title" style="text-align: left; text-indent: 0px;" colspan="9">
  779. <div style="margin-bottom: 3px;">*작성 시 유의사항</div>
  780. <div style="margin-bottom: 3px;">1)항목별 점수는 각 항목마다 Exceed(우수), Meet(양호), Below(미흡)으로 한다.</div>
  781. <div style="margin-bottom: 3px;color:red;">2)"Exceed" 또는 "Below"로 평가 시 반드시 구체적인 평가사유를 작성해야 한다.</div>
  782. <div style="margin-bottom: 3px;">3)추가평가 항목의 경우, 가산점 부여 시 이에 대한 평가 사유를 작성해야 한다.</div>
  783. <div style="margin-bottom: 3px;">4)이 평가표는 향후 협력업체 등록 및 계약 시 영향을 끼칠 것이므로 공정하고 신중하게 작성되어야 한다.</div>
  784. <div style="margin-bottom: 3px;">5)최종 평가 결과, C등급인 경우 향후 1년간 입찰 제한, D등급인 경우 협력업체 등록을 취소한다.</div>
  785. <div style="margin-bottom: 3px;color:red;">6)평가자 종합의견 작성 필수</div>
  786. <div style="margin-bottom: 3px;color:red;">&nbsp&nbsp- 평가자 종합의견 미비사항은 추후 입찰 참여 시 대책방안 제출하도록 하여 검토, 확인 후 입찰 진행</div>
  787. </td>
  788. </tr>
  789. </table>
  790. </form>
  791. <div style="width: 100%; text-align: center;">
  792. <%if(("".equals(vo.get("REGU_STATUS_CD")) || vo.get("REGU_STATUS_CD").equals("01")) && ("01".equals(status_cd) || "02".equals(status_cd) || "03".equals(status_cd)) ){ %> <!-- !"10".equals(status_cd) 2017.04.25 결재올린후 평가수정하는 경우 발생 -->
  793. <img alt="저장" src="/img/buyer/button/bt_save.gif" style="cursor: pointer;" onclick="doSave();"/>
  794. <%} %>
  795. </div>