ResultDetail05.jsp 33 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950
  1. <%--
  2. - FileName : OutSupplierApprList.jsp
  3. - Author(s) : Sung Min Lee
  4. - Date : 2014.06.17
  5. -
  6. - Description: 협력업체평가현황
  7. --%>
  8. <%@ page contentType="text/html; charset=utf-8" %>
  9. <%@ page import="com.udapsoft.waf.system.HandlerStorage" %>
  10. <%@ page import="com.udapsoft.waf.common.ui.*" %>
  11. <%@ page import="kr.co.hsnc.common.util.*"%>
  12. <%@ page import="kr.co.hsnc.common.sql.*" %>
  13. <%@page import="java.net.URLEncoder"%>
  14. <%@ include file="/jsp/work/taglib.jsp" %>
  15. <jsp:useBean id="ctx" class="com.udapsoft.waf.system.context.SessionContext" scope="session" />
  16. <%
  17. ctx.init(request, response);
  18. HandlerStorage storage = ctx.getHandlerStorage();
  19. ValueObject params = storage.getParams();
  20. ValueObject user = storage.getUser();
  21. ValueObject vo = storage.getValueObject("ResultDetail05BizVo");
  22. RowSet fileRowSet = storage.getRowSet("RESULT_PDF");
  23. String pageEvent = storage.getEvent();
  24. %>
  25. <script type="text/javascript">
  26. <!--
  27. $(document).on("keyup", "input:text[numberOnly]", function()
  28. {
  29. $(this).val( $(this).val().replace(/[^0-9]/gi,"") ); //숫자만입력 정규식...
  30. $(this).val($(this).val().split(/(?=(?:\d{3})+(?:\.|$))/g).join(',')); //콤마찍기 정규식...귀찮ㄹ타
  31. });
  32. $(document).on("keyup", "input:text[number]", function()
  33. {
  34. $(this).val( $(this).val().replace(/[^0-9]/gi,"") ); //숫자만입력 정규식...
  35. });
  36. $(function(){
  37. $.gridInit = function()
  38. {
  39. var init_sheet = {};
  40. init_sheet.Cfg = {SearchMode:2, MergeSheet:msHeaderOnly, Page:10, SumPosition:1};
  41. init_sheet.Cols = [
  42. {Header:"삭제", Type:"DelCheck", SaveName:"DEL_CHECK", Width:50, Align:"Center"},
  43. {Header:'Status', Type:"Status", SaveName:"STATUS", Width:0, Align:"Center", Edit:"False", Hidden:"True"},
  44. {Header:"SEQ", Type:"Text", SaveName:"SEQ", Width:80, Align:"Center", Hidden:"True"},
  45. {Header:"SUB_CONT_MOD_ID", Type:"Text", SaveName:"SUB_CONT_MOD_ID", Width:80, Align:"Center", Hidden:"True"},
  46. {Header:"ACMP_YYYY", Type:"Text", SaveName:"ACMP_YYYY", Width:80, Align:"Center", Hidden:"True"},
  47. {Header:"SOC_CD", Type:"Text", SaveName:"SOC_CD", Width:80, Align:"Center", Hidden:"True"},
  48. {Header:"공사(종)명", Type:"Text", SaveName:"CONT_NM", Width:80, Align:"Center"},
  49. {Header:"계약액", Type:"AutoSum", SaveName:"CONT_AMT", Width:80, Align:"Right", Format:"#,##0"},
  50. {Header:"착공년월일", Type:"Date", SaveName:"CONT_SDATE", Width:80, Align:"Right"},
  51. {Header:"준공년월일", Type:"Date", SaveName:"CONT_EDATE", Width:80, Align:"Right"},
  52. {Header:"전년도 기성액", Type:"AutoSum", SaveName:"PRV_PAY_AMT", Width:80, Align:"Right", Format:"#,##0"},
  53. {Header:"당년도 기성액", Type:"AutoSum", SaveName:"CUR_PAY_AMT", Width:80, Align:"Right", Format:"#,##0"},
  54. {Header:"하도급 금액", Type:"AutoSum", SaveName:"SCONT_AMT", Width:80, Align:"Right", Format:"#,##0"},
  55. {Header:"미기성 금액", Type:"AutoSum", SaveName:"PAY_NAMT", Width:80, Align:"Right", Format:"#,##0"}
  56. ];
  57. init_sheet.HeaderMode = {Sort:1};
  58. IBS_InitSheet(sheet1, init_sheet);
  59. sheet1.SetDataAutoTrim(0);
  60. // sheet1.SetEditable(false);
  61. sheet1.SetCountPosition(0);
  62. sheet1.SetCellText(sheet1.LastRow(), "CONT_NM", "합 계");
  63. sheet1.GetSumFontBold(1);
  64. sheet1.FitColWidth();
  65. }
  66. $.searchList = function()
  67. {
  68. $("#fevent").val("GET_LIST");
  69. var url = Modular.model.PageContext.CONTEXT_ROOT + "/result/outside/ResultDetail03_sheet.screen";
  70. Modular.view.IBSheet7.doSearch(sheet1, url, $("#form1"), 30, "");
  71. };
  72. $.callCalendar = function(id){
  73. var str_value = id;
  74. var re = new RegExp("_", "ig");
  75. var resultArray = str_value.match(re);
  76. if(resultArray.length == 1)
  77. {
  78. dlgCalendar(id);
  79. }
  80. else if(resultArray.length == 2)
  81. {
  82. id = id.substring(0, id.lastIndexOf("_"));
  83. dlgCalendar(id);
  84. }
  85. };
  86. $(".numberic").each(function(){
  87. $(this).val($(this).val().split(/(?=(?:\d{3})+(?:\.|$))/g).join(','));
  88. });
  89. $("[name=date_img]").click(function(){
  90. var id = $(this).attr("id").substring(0, $(this).attr("id").lastIndexOf("_"));
  91. dlgCalendar(id);
  92. });
  93. $("#btn_sheet_add").click(function(){
  94. sheet1.DataInsert(-1);
  95. });
  96. // $("#btn_sheet_delete").click(function(){
  97. // sheet1.SetCellValue(sheet1.LastRow()-1, "STATUS", "D");
  98. // sheet1.RowDelete(sheet1.LastRow()-1 , 0);
  99. // });
  100. $("#btn_preview").click(function(){
  101. var reportInfo = new ReportInfo();
  102. reportInfo.title = "한국전기공사협회 실적증명";
  103. reportInfo.reportName = "/report/mrd/buyer/supplier/electricity_application.mrd";
  104. reportInfo.set("<%=vo.get("corp_id")%>"); // $1
  105. reportInfo.set("<%=vo.get("sub_cont_mod_id")%>"); // $2
  106. reportInfo.set("<%=vo.get("acmp_yyyy")%>"); // $3
  107. reportInfo.set("<%=vo.get("soc_cd")%>"); // $4
  108. reportInfo.width = 1000; // Default: 1024
  109. reportInfo.height = 700; // Default: 768
  110. reportInfo.showPopup();
  111. $("#pdf").val("");
  112. });
  113. $("#btn_save").click(function(){
  114. var f = document.form1;
  115. fMakeItemInfo();
  116. if($(':radio[name="p_reson"]:checked').val() == undefined)
  117. {
  118. alert("발급 승인여부를 선택해 주세요.");
  119. return;
  120. }
  121. if(confirm($("#btn_save").text() + " 하시겠습니까?"))
  122. {
  123. if($(':radio[name="p_reson"]:checked').val() == "91" )
  124. {
  125. if($("#p_return_reson").val().trim() == "")
  126. {
  127. alert("반려사유를 입력해 주세요.");
  128. return $("#p_return_reson").focus();
  129. }
  130. $("#fevent").val("SAVE_STATUS");
  131. submitXmlRequest("/result/outside/ResultDetail01_form.screen", "SAVE_STATUS", f);
  132. }else{
  133. $("#fevent").val("SIGN_OK");
  134. submitXmlRequest("/result/outside/ResultDetail01_form.screen", "SIGN_OK", f);
  135. }
  136. }
  137. });
  138. //2016.1.25
  139. $("#btn_delete").click(function(){
  140. var f = document.form1;
  141. if(confirm( "반려 하시겠습니까?"))
  142. {
  143. $(':radio[name="p_reson"]:checked').val("91");
  144. $("#fevent").val("SAVE_STATUS");
  145. submitXmlRequest("/result/outside/ResultDetail01_form.screen", "SAVE_STATUS", f);
  146. }
  147. });
  148. $(':radio[name="p_reson"]').click(function(){
  149. if($(':radio[name="p_reson"]:checked').val() == "91" )
  150. {
  151. $("#reson_area").css("display", "table-row");
  152. $("#btn_save").text("반려");
  153. $("#p_return_reson").removeClass();
  154. $("#p_return_reson").attr("readonly", false);
  155. $("#p_return_reson").focus();
  156. }
  157. else
  158. {
  159. $("#reson_area").css("display", "none");
  160. $("#btn_save").text("승인");
  161. $("#p_return_reson").val("");
  162. $("#p_return_reson").addClass("bg_gry");
  163. $("#p_return_reson").attr("readonly", true);
  164. }
  165. });
  166. $("#btn_list").click(function(){
  167. //"/result/outside/ResultTargetList.screen" "/result/outside/ResultIngList.screen"
  168. $("#fevent").val("");
  169. if($("#p_page_gubun").val() == "target")
  170. {
  171. $("#form1").attr("action", "<%=params.get("p_List") %>");
  172. }
  173. else if($("#p_page_gubun").val() == "info")
  174. {
  175. $("#form1").attr("action", "<%=params.get("p_List") %>");
  176. }
  177. $("#form1").attr("target", "_self");
  178. $("#form1").attr("method", "post");
  179. $("#form1").submit();
  180. });
  181. });
  182. $(document).ready(function(){
  183. $.gridInit(sheet1);
  184. $.searchList();
  185. if($("#p_success_gubun").val() == "R")
  186. {
  187. $(':radio[name="p_reson"]').attr("disabled", true);
  188. $(':input').attr("readonly", true);
  189. $(':input[type="text"]').addClass("bg_gry");
  190. $(':input[type="text"]').addClass("input_blank");
  191. }
  192. if($(':radio[name="p_reson"]:checked').val() == "91" )
  193. {
  194. $("#reson_area").css("display", "table-row");
  195. $("#btn_save").text("반려");
  196. $("#p_return_reson").removeClass();
  197. $("#p_return_reson").attr("readonly", false);
  198. $("#p_return_reson").focus();
  199. }
  200. else
  201. {
  202. $("#reson_area").css("display", "none");
  203. $("#btn_save").text("승인");
  204. $("#p_return_reson").val("");
  205. $("#p_return_reson").addClass("bg_gry");
  206. $("#p_return_reson").attr("readonly", true);
  207. }
  208. if($("#p_page_gubun").val() == "info")
  209. {
  210. if($("#prog_stat_cd").val() == "20")
  211. {
  212. $("#btn_issue_req").css("display", "inline");
  213. $(':input').attr("readonly", true);
  214. $(':input[type="text"]').addClass("bg_gry");
  215. $(':input[type="text"]').addClass("input_blank");
  216. // $("#btn_issue_req").css("display", "inline");
  217. $("#btn_delete").css("display", "none");
  218. }
  219. else if($("#prog_stat_cd").val() == "30")
  220. {
  221. $("#btn_save_area").css("display", "none");
  222. }
  223. else if($("#prog_stat_cd").val() == "10")
  224. {
  225. $("#btn_issue_req").css("display", "none");
  226. $("#btn_save").css("display", "none");
  227. $("#btn_delete").css("display", "none");
  228. }
  229. else
  230. {
  231. // $("#btn_save").css("display", "none");
  232. $("#btn_delete").css("display", "none");
  233. $("#btn_sheet_add").css("display", "none");
  234. $("#btn_sheet_delete").css("display", "none");
  235. $("#issue_no").attr("readonly", "true");
  236. $("#cont_loc_no").attr("readonly", "true");
  237. $("#lic_nm").attr("readonly", "true");
  238. $("#work_place").attr("readonly", "true");
  239. $("#ord_nm").attr("readonly", "true");
  240. $("#ori_cont_nm").attr("readonly", "true");
  241. $("#cont_way_nm").attr("readonly", "true");
  242. $("#cont_kind").attr("readonly", "true");
  243. $("#work_kind").attr("readonly", "true");
  244. $("#sub_comp_nm").attr("readonly", "true");
  245. $("#sub_comp_no").attr("readonly", "true");
  246. $("#numberic").attr("readonly", "true");
  247. $("#isu_charge_nm").attr("readonly", "true");
  248. $("#isu_req_hp1").attr("readonly", "true");
  249. $("#isu_req_hp2").attr("readonly", "true");
  250. $("#isu_req_hp3").attr("readonly", "true");
  251. }
  252. if($("#prog_stat_cd").val() == "91")
  253. {
  254. $("#p_return_reson").removeClass();
  255. $("#p_return_reson").attr("readonly", false);
  256. $(':input').attr("readonly", false);
  257. }
  258. else
  259. {
  260. $("#p_return_reson").val();
  261. }
  262. }
  263. else
  264. {
  265. $("#btn_issue_req").css("display", "none");
  266. }
  267. });
  268. function sheet1_OnSaveEnd(code, msg)
  269. {
  270. var event = $("#fevent").val();
  271. var f = document.form1;
  272. document.form1.isSubmit = false;
  273. if(code >= "0")
  274. {
  275. if(event == "SAVE_LIST")
  276. {
  277. alert("저장이 완료되었습니다.");
  278. location.href="/result/outside/ResultIngList.screen";
  279. }
  280. else
  281. {
  282. alert("수정이 완료되었습니다.");
  283. }
  284. }
  285. }
  286. function doResult(resultObj) {
  287. try
  288. {
  289. document.form1.isSubmit = false;
  290. if( resultObj.getRequestEvent() == "SAVE_STATUS")
  291. {
  292. if( resultObj.getSuccess() )
  293. {
  294. alert($("#btn_save").text() + " 되었습니다.");
  295. if($(':radio[name="p_reson"]:checked').val() == "91" )
  296. {
  297. location.href="/result/outside/ResultIngList.screen";
  298. }
  299. else
  300. {
  301. location.href="/result/outside/ResultFinishList.screen";
  302. }
  303. }
  304. else
  305. {
  306. // dlgErrorMsg(resultObj.getMessage);
  307. alert(resultObj.getValueObject().get("errMsg"));
  308. }
  309. }else if(resultObj.getRequestEvent() == "SIGN_OK"){
  310. if( resultObj.getSuccess() )
  311. {
  312. alert($("#btn_save").text() + " 되었습니다.");
  313. if($(':radio[name="p_reson"]:checked').val() == "91" )
  314. {
  315. location.href="/result/outside/ResultIngList.screen";
  316. }
  317. else
  318. {
  319. location.href="/result/outside/ResultFinishList.screen";
  320. }
  321. }
  322. else
  323. {
  324. alert("실패하였습니다.");
  325. //alert(resultObj.getValueObject().get("errMsg"));
  326. }
  327. }
  328. }
  329. catch(errorObject) {
  330. showErrorDlg("doResult()", errorObject);
  331. }
  332. }
  333. function fMakeItemInfo(){
  334. var sColumDelimiter = "┃";
  335. var sRowDelimiter = "↕";
  336. var sSumDelimiter = "╂";
  337. var sEncDelimiter = "⇔";
  338. var isNull = "NULL";
  339. //해시
  340. var sContHash = "";
  341. var sTemplate = "01";
  342. <%-- var sMainVendcd = "<%=vo.get("isu_vendcd") %>"; --%>
  343. var sMainVendcd = "1234567890"; // 원사업자번호
  344. var issue_no = "<%=vo.get("issue_no") %>";
  345. var reg_no = "<%=vo.get("reg_no") %>";
  346. var work_kind = "<%=vo.get("work_kind") %>";
  347. var entry_no = "<%=vo.get("entry_no") %>";
  348. var cont_way_nm = "<%=vo.get("cont_way_nm") %>";
  349. var cont_kind = "<%=vo.get("cont_kind") %>";
  350. var prv_pay_amt = "<%=vo.get("prv_pay_amt") %>";
  351. var prv_trans_amt = "<%=vo.get("prv_trans_amt") %>";
  352. var cur_pay_amt = "<%=vo.get("cur_pay_amt") %>";
  353. var sub_amt = "<%=vo.get("sub_amt") %>";
  354. var cur_pay_namt = "<%=vo.get("cur_pay_namt") %>";
  355. var gov_ma_amt = "<%=vo.get("gov_ma_amt") %>";
  356. var other_pay_amt = "<%=vo.get("other_pay_amt") %>";
  357. var cur_cont_aamt = "<%=vo.get("cur_cont_aamt") %>";
  358. sContHash=issue_no +sColumDelimiter
  359. +reg_no +sColumDelimiter
  360. +work_kind +sColumDelimiter
  361. +entry_no +sColumDelimiter
  362. +cont_way_nm +sColumDelimiter
  363. +cont_kind +sColumDelimiter
  364. +prv_pay_amt +sColumDelimiter
  365. +prv_trans_amt +sColumDelimiter
  366. +cur_pay_amt +sColumDelimiter
  367. +sub_amt +sColumDelimiter
  368. +cur_pay_namt +sColumDelimiter
  369. +gov_ma_amt +sColumDelimiter
  370. +other_pay_amt +sColumDelimiter
  371. +cur_cont_aamt +sRowDelimiter;
  372. var GrowCount = sheet1.LastRow();
  373. for(var i=1; i < GrowCount+1; i++)
  374. {
  375. var cont_nm = "";
  376. var cont_amt = "";
  377. var cont_sdate = "";
  378. var cont_edate = "";
  379. var prv_pay_amt = "";
  380. var cur_pay_amt = "";
  381. var scont_amt = "";
  382. var pay_namt = "";
  383. cont_nm = sheet1.GetCellValue(i,"CONT_NM");
  384. if(cont_nm.length > 0){
  385. cont_amt = sheet1.GetCellValue(i,"CONT_AMT");
  386. if(isEmptyVal(cont_amt))
  387. cont_amt = isNull;
  388. cont_sdate = sheet1.GetCellValue(i,"CONT_SDATE");
  389. if(isEmptyVal(cont_sdate))
  390. cont_sdate = isNull;
  391. cont_edate = sheet1.GetCellValue(i,"CONT_EDATE");
  392. if(isEmptyVal(cont_edate))
  393. cont_edate = isNull;
  394. prv_pay_amt = sheet1.GetCellValue(i,"PRV_PAY_AMT");
  395. if(isEmptyVal(prv_pay_amt))
  396. prv_pay_amt = isNull;
  397. cur_pay_amt = sheet1.GetCellValue(i,"CUR_PAY_AMT");
  398. if(isEmptyVal(cur_pay_amt))
  399. cur_pay_amt = isNull;
  400. scont_amt = sheet1.GetCellValue(i,"SCONT_AMT");
  401. if(isEmptyVal(scont_amt))
  402. scont_amt = isNull;
  403. pay_namt = sheet1.GetCellValue(i,"PAY_NAMT");
  404. if(isEmptyVal(pay_namt))
  405. pay_namt = isNull;
  406. sContHash = sContHash
  407. + sTemplate + sColumDelimiter
  408. + sMainVendcd + sColumDelimiter
  409. + cont_amt + sColumDelimiter
  410. + cont_sdate + sColumDelimiter
  411. + cont_edate + sColumDelimiter
  412. + prv_pay_amt + sColumDelimiter
  413. + cur_pay_amt + sColumDelimiter
  414. + scont_amt + sColumDelimiter
  415. + pay_namt + sRowDelimiter
  416. }
  417. }
  418. $("#CONT_HASH").val(sContHash);
  419. //if(confirm("서명 하시겠습니까?")){
  420. // SignData();
  421. //}
  422. }
  423. function isEmptyVal( value ) {
  424. if(value.length == 0){
  425. return true;
  426. }
  427. if( value == "" ) {
  428. return true;
  429. }
  430. return false;
  431. }
  432. //-->
  433. </script>
  434. <modular:search id="form1">
  435. <modular:key id="fevent" />
  436. </modular:search>
  437. <form id="form1" name="form1" method="post" modular:type="search">
  438. <INPUT type="hidden" name="fevent" id="fevent" value="" />
  439. <input type="hidden" name="p_page_gubun" id="p_page_gubun" value="<%=params.get("p_page_gubun") %>" />
  440. <input type="hidden" name="p_sub_cont_mod_id" id="p_sub_cont_mod_id" value="<%=vo.get("sub_cont_mod_id") %>" />
  441. <input type="hidden" name="p_acmp_yyyy" id="p_acmp_yyyy" value="<%=vo.get("acmp_yyyy") %>" />
  442. <input type="hidden" name="p_corp_id" id="p_corp_id" value="<%=vo.get("corp_id") %>" />
  443. <input type="hidden" name="p_soc_cd" id="p_soc_cd" value= "<%=params.get("p_soc_cd") %>" />
  444. <input type="hidden" name="sub_cont_mod_id" id="sub_cont_mod_id" value="<%=vo.get("sub_cont_mod_id") %>" />
  445. <input type="hidden" name="acmp_yyyy" id="acmp_yyyy" value="<%=vo.get("acmp_yyyy") %>" />
  446. <input type="hidden" name="corp_id" id="corp_id" value="<%=vo.get("corp_id") %>" />
  447. <input type="hidden" name="soc_cd" id="soc_cd" value= "<%=params.get("p_soc_cd") %>" />
  448. <input type="hidden" name="dept_cd" id="dept_cd" value= "<%=vo.get("dept_cd") %>" />
  449. <input type="hidden" name="dept_nm" id="dept_nm" value= "<%=vo.get("dept_name") %>" />
  450. <input type="hidden" name="isu_vendcd" id="isu_vendcd" value= "<%=vo.get("isu_vendcd") %>" />
  451. <input type="hidden" name="con_amt" id="con_amt" value= "<%=vo.get("con_amt") %>" />
  452. <input type="hidden" name="prog_stat_cd" id="prog_stat_cd" value= "<%=vo.get("prog_stat_cd") %>" />
  453. <input type="hidden" name="p_success_gubun" id="p_success_gubun" value= "<%=params.get("p_success_gubun") %>" />
  454. <input type="hidden" name="p_yyyy" id="p_yyyy" value= "<%=params.get("p_yyyy") %>" />
  455. <input type="hidden" name="p_dept_nm" id="p_dept_nm" value= "<%=params.get("p_dept_nm") %>" />
  456. <input type="hidden" name="p_cont_nm" id="p_cont_nm" value= "<%=params.get("p_cont_nm") %>" />
  457. <input type="hidden" name="p_status" id="p_status" value= "<%=params.get("p_status") %>" />
  458. <input type="hidden" name="CONT_HASH" id="CONT_HASH" value= "" />
  459. <input type="hidden" name="PRV_PAY_AMT_O" id="PRV_PAY_AMT_O" value= "<%=vo.get("PRV_PAY_AMT_O") %>" />
  460. <input type="hidden" name="CUR_PAY_NAMT_O" id="CUR_PAY_NAMT_O" value= "<%=vo.get("CUR_PAY_NAMT_O") %>" />
  461. <div align="left" id="title" style="float: left;">
  462. <ul>
  463. <li>실적증명 상세(<%=vo.get("PROG_STAT_NM").equals("") ? "작성대상" : vo.get("PROG_STAT_NM")%>)</li>
  464. </ul>
  465. </div>
  466. <div style="float: right; margin-top: 16px;">
  467. <span class="btnSearch center"><a href="javascript:void(0);" id="btn_list">목록</a></span>
  468. <span class="btnSearch center" id="btn_preview_area"><a href="javascript:void(0);" id="btn_preview">미리보기</a></span>
  469. <span class="btnSearch center" id="btn_save_area"><a href="javascript:void(0);" id="btn_save">승인</a></span>
  470. <span class="btnSearch center"><a href="javascript:void(0);" id="btn_delete">반려</a></span>
  471. </div>
  472. <div style="float: left;" class="application-info magT10">
  473. <div class="application-sub-title">
  474. <span class="title">진행상태</span>
  475. </div>
  476. <div class="application-location">
  477. </div>
  478. </div>
  479. <table border="0" cellspacing="0" cellpadding="0" width="100%" height="100%" class=form-table>
  480. <colgroup>
  481. <col width="15%" />
  482. <col width="*%" />
  483. </colgroup>
  484. <tr>
  485. <th style="text-align: left; width: 100px;" >발급 승인여부</th>
  486. <td style="text-align: left;" colspan="3">
  487. <span><input type="radio" name="p_reson" id="p_reson1" value="30" <%=vo.get("prog_stat_cd").equals("30") ? "checked=\"checked\"" : "" %> /> 승인</span>
  488. <span style="margin-left: 50px;"><input type="radio" name="p_reson" id="p_reson2" value="91" <%=vo.get("prog_stat_cd").equals("91") ? "checked=\"checked\"" : "" %> /> 반려</span>
  489. </td>
  490. </tr>
  491. <tr id="reson_area">
  492. <th style="text-align: left;">반려사유</th>
  493. <td colspan="3">
  494. <textarea name="p_return_reson" id="p_return_reson" rows="5" style="width: 100%;" ><%=vo.get("return_reson") %></textarea>
  495. </td>
  496. </tr>
  497. </table>
  498. <!-- 기성실적증명서 정보 -->
  499. <div style="float: left;" class="application-info magT10">
  500. <div class="application-sub-title">
  501. <span class="title">기성실적증명서 정보</span>
  502. </div>
  503. <div class="application-location">
  504. </div>
  505. </div>
  506. <table border="0" cellspacing="0" cellpadding="0" width="100%" height="100%" class=form-table>
  507. <colgroup>
  508. <col width="15%" />
  509. <col width="35%" />
  510. <col width="15%" />
  511. <col width="35%" />
  512. </colgroup>
  513. <!-- 검색조건 영역, 테이터 영역 구분 여백 : 시작 -->
  514. <tr>
  515. <th style="text-align: left;">발 급 협 회</th>
  516. <td>
  517. 한국전기공사협회
  518. </td>
  519. <th style="text-align: left;">일 련 번 호</th>
  520. <td>
  521. <input type="text" name="issue_no" id="issue_no" style="width: 50%;" value="<%=vo.get("issue_no") %>" />
  522. </td>
  523. </tr>
  524. </table>
  525. <!-- 신청인 -->
  526. <div style="float: left;" class="application-info magT10">
  527. <div class="application-sub-title">
  528. <span class="title">신청인</span>
  529. </div>
  530. <div class="application-location">
  531. </div>
  532. </div>
  533. <table border="0" cellspacing="0" cellpadding="0" width="100%" height="100%" class=form-table>
  534. <colgroup>
  535. <col width="15%" />
  536. <col width="35%" />
  537. <col width="15%" />
  538. <col width="35%" />
  539. </colgroup>
  540. <!-- 검색조건 영역, 테이터 영역 구분 여백 : 시작 -->
  541. <tr>
  542. <th style="text-align: left;">상 호</th>
  543. <td>
  544. <input type="text" name="isu_vendnm" id="isu_vendnm" value="<%=vo.get("ISU_VENDNM") %>" class="bg_gry input_blank" readonly="readonly"/>
  545. </td>
  546. <th style="text-align: left;">면허번호</th>
  547. <td>
  548. <input type="text" name="reg_no" id="reg_no" value="<%=vo.get("reg_no") %>" style="width: 100%;" />
  549. </td>
  550. </tr>
  551. <tr>
  552. <th style="text-align: left;">대 표 자</th>
  553. <td>
  554. <input type="text" name="isu_pres_nm" id="isu_pres_nm" value="<%=vo.get("isu_pres_nm") %>" class="bg_gry input_blank" readonly="readonly"/>
  555. </td>
  556. <th style="text-align: left;">전화번호</th>
  557. <td>
  558. <input type="text" name="isu_phone" id="isu_phone" value="<%=vo.get("isu_phone") %>" class="bg_gry input_blank" readonly="readonly"/>
  559. </td>
  560. </tr>
  561. <tr>
  562. <th style="text-align: left;">소재지</th>
  563. <td colspan="3">
  564. <input type="text" name="isu_addr" id="isu_addr" value="<%=vo.get("ISU_ADDR") %>" class="bg_gry input_blank" readonly="readonly"/>
  565. </td>
  566. </tr>
  567. </table>
  568. <!-- 소방시설공사 내용 -->
  569. <div style="float: left;" class="application-info magT10">
  570. <div class="application-sub-title">
  571. <span class="title">공사내용</span>
  572. </div>
  573. <div class="application-location">
  574. </div>
  575. </div>
  576. <table border="0" cellspacing="0" cellpadding="0" width="100%" height="100%" class=form-table>
  577. <colgroup>
  578. <col width="15%" />
  579. <col width="35%" />
  580. <col width="15%" />
  581. <col width="35%" />
  582. </colgroup>
  583. <!-- 검색조건 영역, 테이터 영역 구분 여백 : 시작 -->
  584. <tr>
  585. <th style="text-align: left;">공사명</th>
  586. <td>
  587. <input type="text" name="cont_nm" id="cont_nm" value="<%=vo.get("cont_nm") %>" class="bg_gry input_blank" readonly="readonly"/>
  588. </td>
  589. <th style="text-align: left;">공사종류</th>
  590. <td>
  591. <input type="text" name="work_kind" id="work_kind" value="<%=vo.get("work_kind") %>" style="width: 100%;" />
  592. </td>
  593. </tr>
  594. <tr>
  595. <th style="text-align: left;">공사현장 소재지(주소)</th>
  596. <td colspan="3">
  597. <input type="text" name="work_place" id="work_place" value="<%=vo.get("work_place") %>" style="width: 100%;" class="bg_gry input_blank"/>
  598. </td>
  599. </tr>
  600. <tr>
  601. <th style="text-align: left;">발주자</th>
  602. <td>
  603. <input type="text" name="ord_nm" id="ord_nm" value="<%=vo.get("ord_nm") %>" style="width: 100%;" class="bg_gry input_blank" />
  604. </td>
  605. <th style="text-align: left;">원도급자</th>
  606. <td>
  607. <input type="text" name="ori_cont_nm" id="ori_cont_nm" value="<%=vo.get("ori_cont_nm") %>" style="width: 100%;" />
  608. </td>
  609. </tr>
  610. <tr>
  611. <th style="text-align: left;">등록번호</th>
  612. <td>
  613. <input type="text" name="entry_no" id="ord_nm" value="<%=vo.get("entry_no") %>" style="width: 100%;" />
  614. </td>
  615. <th style="text-align: left;">계약일</th>
  616. <td>
  617. <input type="text" name="cont_cdate" id="cont_cdate" value="<%=vo.get("cont_cdate") %>" style="width: 100%; width: 80px;" class="bg_gry input_blank" />
  618. </td>
  619. </tr>
  620. <tr>
  621. <th style="text-align: left;">착공일</th>
  622. <td>
  623. <input type="text" name="cont_sdate" id="cont_sdate" value="<%=vo.get("cont_sdate") %>" style="width: 100%; width: 80px;" class="bg_gry input_blank" />
  624. </td>
  625. <th style="text-align: left;">준공(예정)일</th>
  626. <td>
  627. <input type="text" name="cont_edate" id="cont_edate" value="<%=vo.get("cont_edate") %>" style="width: 100%; width: 80px;" class="bg_gry input_blank"/>
  628. </td>
  629. </tr>
  630. <tr>
  631. <th style="text-align: left;">계약방법</th>
  632. <td>
  633. <LABEL for="bid_1"><INPUT id="bid_1" type="radio" name="CONT_WAY_NM" value="1" desc="입찰방식" <%=vo.get("CONT_WAY_NM").equals("1") ? "checked=\"checked\"" : ""%>>지명경쟁</LABEL>
  634. <LABEL for="bid_2"><INPUT id="bid_2" type="radio" name="CONT_WAY_NM" value="2" desc="입찰방식" <%=vo.get("CONT_WAY_NM").equals("2") ? "checked=\"checked\"" : ""%>>수의계약</LABEL>
  635. </td>
  636. <th style="text-align: left;">도급종류</th>
  637. <td>
  638. <input type="text" name="cont_kind" id="cont_kind" value="<%=vo.get("cont_kind") %>" style="width: 100%;" />
  639. </td>
  640. </tr>
  641. </table>
  642. <!-- 소방시설공사 실적금액(부가세 포함) -->
  643. <div style="float: left;" class="application-info magT10">
  644. <div class="application-sub-title">
  645. <span class="title">소방시설공사 실적금액(부가세 포함)</span>
  646. </div>
  647. <div class="application-location">
  648. </div>
  649. </div>
  650. <table border="0" cellspacing="0" cellpadding="0" width="100%" height="100%" class=form-table>
  651. <colgroup>
  652. <col width="15%" />
  653. <col width="35%" />
  654. <col width="15%" />
  655. <col width="35%" />
  656. </colgroup>
  657. <!-- 검색조건 영역, 테이터 영역 구분 여백 : 시작 -->
  658. <tr>
  659. <th style="text-align: left;">계약금액(총계약금액)</th>
  660. <td>
  661. <input type="text" name="cont_tamt" id="cont_tamt" value="<%=vo.get("cont_tamt") %>" style="text-align: right; width: 200px;" numberOnly="true" class="numberic bg_gry input_blank" readonly="readonly"/> 천원
  662. (<input type="text" name="cont_tamt_o" id="cont_tamt_o" value="<%=vo.get("cont_tamt_O") %>" style="text-align: right; width: 70px;" class="numberic bg_gry input_blank" readonly="readonly" /> )
  663. </td>
  664. <th style="text-align: left;">전년까지의 기성액 누계</th>
  665. <td>
  666. <input type="text" name="prv_pay_amt" id="prv_pay_amt" value="<%=vo.get("prv_pay_amt") %>" style="text-align: right; width: 200px;" numberOnly="true" class="numberic bg_gry input_blank" readonly="readonly"/> 천원
  667. </td>
  668. </tr>
  669. <tr>
  670. <th style="text-align: left;">전년도 이월액</th>
  671. <td>
  672. <input type="text" name="prv_trans_amt" id="prv_trans_amt" value="<%=vo.get("prv_trans_amt") %>" style="text-align: right; width: 200px;" numberOnly="true" class="numberic bg_gry input_blank" readonly="readonly"/> 천원
  673. </td>
  674. <th style="text-align: left;">당년도 기성액(총기성액)</th>
  675. <td>
  676. <input type="text" name="cur_pay_amt" id="cur_pay_amt" value="<%=vo.get("cur_pay_amt") %>" style="text-align: right; width: 200px;" numberOnly="true" class="numberic bg_gry input_blank" readonly="readonly"/> 천원
  677. (<input type="text" name="cur_pay_amt_o" id="cur_pay_amt_o" value="<%=vo.get("cur_pay_amt_O") %>" style="text-align: right; width: 70px;" class="numberic bg_gry input_blank" readonly="readonly" /> )
  678. </td>
  679. </tr>
  680. <tr>
  681. <th style="text-align: left;">하도급 금액</th>
  682. <td>
  683. <input type="text" name="sub_amt" id="sub_amt" value="<%=vo.get("sub_amt") %>" style="text-align: right; width: 200px;" numberOnly="true" class="numberic" /> 천원
  684. </td>
  685. <th style="text-align: left;">미기성액</th>
  686. <td>
  687. <input type="text" name="cur_pay_namt" id="cur_pay_namt" value="<%=vo.get("cur_pay_namt") %>" style="text-align: right; width: 200px;" numberOnly="true" class="numberic bg_gry input_blank" readonly="readonly"/> 천원
  688. </td>
  689. </tr>
  690. <tr>
  691. <th style="text-align: left;">관급자재액</th>
  692. <td>
  693. <input type="text" name="gov_ma_amt" id="gov_ma_amt" value="<%=vo.get("gov_ma_amt") %>" style="text-align: right; width: 200px;" numberOnly="true" class="numberic" /> 천원
  694. </td>
  695. <th style="text-align: left;">타공정포함 기성액</th>
  696. <td>
  697. <input type="text" name="other_pay_amt" id="other_pay_amt" value="<%=vo.get("other_pay_amt") %>" style="text-align: right; width: 200px;" numberOnly="true" class="numberic" /> 천원
  698. </td>
  699. </tr>
  700. <tr>
  701. <th style="text-align: left;">당년도 추가(변경) 계약액</th>
  702. <td colspan="3">
  703. <input type="text" name="cur_cont_aamt" id="cur_cont_aamt" value="<%=vo.get("cur_cont_aamt") %>" style="text-align: right; width: 200px;" numberOnly="true" class="numberic" /> 천원
  704. </td>
  705. </tr>
  706. </table>
  707. <!-- 복합공종-->
  708. <div style="float: left;" class="application-info magT10">
  709. <div class="application-sub-title">
  710. <span class="title">복합공종(타공종 포함) 실적 내용 (단위:천원, 부가세 포함)</span>
  711. </div>
  712. <div class="application-location">
  713. </div>
  714. </div>
  715. <div style="float: right; margin-top: -23px; margin-bottom: 5px;" id="sheet1_btn">
  716. <!-- <span class="btnSearch center"><a href="javascript:void(0);" id="btn_sheet_add">추가</a></span> -->
  717. <!-- <span class="btnSearch center"><a href="javascript:void(0);" id="btn_sheet_delete">삭제</a></span> -->
  718. </div>
  719. <!-- 시트 -->
  720. <div style="width: 100%; height: 150px; margin-top: 5px; margin-bottom: 80px;">
  721. <!-- 데이터 영역 : 시작 -->
  722. <!-- ibsheet7 그리드 생성 -->
  723. <script>createIBSheet("sheet1","100%", "150px;");</script>
  724. <!-- 데이터 영역 : 종료 -->
  725. </div>
  726. <!-- 요청자 정보 -->
  727. <div style="float: left;" class="application-info magT10">
  728. <div class="application-sub-title">
  729. <span class="title">발급요청자 정보</span>
  730. </div>
  731. <div class="application-location">
  732. </div>
  733. </div>
  734. <table border="0" cellspacing="0" cellpadding="0" width="100%" height="100%" class=form-table>
  735. <colgroup>
  736. <col width="15%" />
  737. <col width="35%" />
  738. <col width="15%" />
  739. <col width="35%" />
  740. </colgroup>
  741. <!-- 검색조건 영역, 테이터 영역 구분 여백 : 시작 -->
  742. <tr>
  743. <th style="text-align: left;">담당자명</th>
  744. <td>
  745. <input type="text" name="isu_charge_nm" id="isu_charge_nm" value="<%=vo.get("isu_charge_nm").equals("") ? user.get("user_name") : vo.get("isu_charge_nm") %>" />
  746. </td>
  747. <th style="text-align: left;">휴대전화</th>
  748. <td>
  749. <input type="text" name="isu_req_hp1" id="isu_req_hp1" value="<%=vo.get("isu_req_hp1").equals("") ? user.get("hp1") : vo.get("isu_req_hp1") %>" style="width: 80px;" maxlength="3" number="true"/> -
  750. <input type="text" name="isu_req_hp2" id="isu_req_hp2" value="<%=vo.get("isu_req_hp2").equals("") ? user.get("hp2") : vo.get("isu_req_hp2") %>" style="width: 120px;" maxlength="4" number="true"/> -
  751. <input type="text" name="isu_req_hp3" id="isu_req_hp3" value="<%=vo.get("isu_req_hp3").equals("") ? user.get("hp3") : vo.get("isu_req_hp3") %>" style="width: 120px;" maxlength="4" number="true"/>
  752. </td>
  753. </tr>
  754. </table>
  755. <%if(vo.get("prog_stat_cd").equals("30")){ %>
  756. <div id="file_area" style="width: 100%;">
  757. <!-- 공사내역 -->
  758. <div style="float: left;" class="application-info magT10">
  759. <div class="application-sub-title">
  760. <span class="title">첨부파일</span>
  761. </div>
  762. <div class="application-location">
  763. </div>
  764. </div>
  765. <table border="0" cellspacing="0" cellpadding="0" width="100%" height="100%" class=form-table>
  766. <colgroup>
  767. <col width="15%" />
  768. <col width="*" />
  769. </colgroup>
  770. <!-- 검색조건 영역, 테이터 영역 구분 여백 : 시작 -->
  771. <tr>
  772. <th style="text-align: left;">첨부파일</th>
  773. <td colspan="3">
  774. <div id="auto_attach_file_view" class="attach_file_view">
  775. <ul>
  776. <%
  777. for(int i=0; i<fileRowSet.size(); i++)
  778. {
  779. %>
  780. <li>
  781. <a href="/common/file/FileDownloadServlet?mode=fpDown&filePath=<%=fileRowSet.getRow(i).get("FILE_PATH")%>&fileName=<%=URLEncoder.encode(fileRowSet.getRow(i).get("FILE_NAME"), "UTF-8")%>&fileRealName=<%=fileRowSet.getRow(i).get("REAL_FILE_NAME")%>"><%=i+1%> : <%=fileRowSet.getRow(i).get("FILE_NAME")%> (<%=fileRowSet.getRow(i).get("FILE_SIZE").trim() %>)</a>
  782. </li>
  783. <%
  784. }
  785. %>
  786. </ul>
  787. </div>
  788. </td>
  789. </tr>
  790. </table>
  791. </div>
  792. <%} %>
  793. </form>