ResultDetail02.jsp 40 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134
  1. <%--
  2. - FileName :
  3. - Author(s) :
  4. - Date :
  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. <%@ page import="com.udapsoft.waf.common.util.StringUtils" %>
  15. <%@ include file="/jsp/work/taglib.jsp" %>
  16. <%@ page import="kr.co.udapsoft.common.code.CommCodeManager" %>
  17. <jsp:useBean id="ctx" class="com.udapsoft.waf.system.context.SessionContext" scope="session" />
  18. <%
  19. ctx.init(request, response);
  20. HandlerStorage storage = ctx.getHandlerStorage();
  21. ValueObject params = storage.getParams();
  22. ValueObject user = storage.getUser();
  23. ValueObject vo = storage.getValueObject("ResultDetail02BizVo");
  24. RowSet fileRowSet = storage.getRowSet("RESULT_PDF");
  25. String pageEvent = storage.getEvent();
  26. %>
  27. <script language="javascript" src="/js/report.js"></script>
  28. <script type="text/javascript">
  29. <!--
  30. $(document).on("keyup", "input:text[numberOnly]", function()
  31. {
  32. $(this).val( $(this).val().replace(/[^0-9]/gi,"") ); //숫자만입력 정규식...
  33. $(this).val($(this).val().split(/(?=(?:\d{3})+(?:\.|$))/g).join(',')); //콤마찍기 정규식...귀찮ㄹ타
  34. });
  35. $(document).on("keyup", "input:text[number]", function()
  36. {
  37. $(this).val( $(this).val().replace(/[^0-9]/gi,"") ); //숫자만입력 정규식...
  38. });
  39. $(function(){
  40. $.gridInit = function()
  41. {
  42. var init_sheet = {};
  43. init_sheet.Cfg = {SearchMode:2, MergeSheet:msHeaderOnly, Page:10, SumPosition:1};
  44. init_sheet.Cols = [
  45. {Header:"삭제", Type:"DelCheck", SaveName:"DEL_CHECK", Width:50, Align:"Center"},
  46. {Header:'Status', Type:"Status", SaveName:"STATUS", Width:0, Align:"Center", Edit:"False", Hidden:"True"},
  47. {Header:"SEQ", Type:"Text", SaveName:"SEQ", Width:80, Align:"Center", Hidden:"True"},
  48. {Header:"SUB_CONT_MOD_ID", Type:"Text", SaveName:"SUB_CONT_MOD_ID", Width:80, Align:"Center", Hidden:"True"},
  49. {Header:"ACMP_YYYY", Type:"Text", SaveName:"ACMP_YYYY", Width:80, Align:"Center", Hidden:"True"},
  50. {Header:"SOC_CD", Type:"Text", SaveName:"SOC_CD", Width:80, Align:"Center", Hidden:"True"},
  51. {Header:"제출협회", Type:"Combo", SaveName:"SUB_SOC_CD", Width:80, Align:"Center", ComboText:"대한전문건설협회|대한기계설비공사협회|한국소방시설협회|한국정보통신공사협회|한국전기공사협회", ComboCode:"01|02|03|04|05", KeyField:"True", Edit:"True"},
  52. {Header:"공사(종)명", Type:"Text", SaveName:"CONT_NM", Width:80, Align:"Left", KeyField:"True"},
  53. {Header:"계약액", Type:"AutoSum", SaveName:"CONT_AMT", Width:80, Align:"Right", Format:"#,##0", KeyField:"True"},
  54. {Header:"착공년월일", Type:"Date", SaveName:"CONT_SDATE", Width:80, Align:"Right", KeyField:"True"},
  55. {Header:"준공년월일", Type:"Date", SaveName:"CONT_EDATE", Width:80, Align:"Right", KeyField:"True"},
  56. {Header:"전년도 기성액", Type:"AutoSum", SaveName:"PRV_PAY_AMT", Width:80, Align:"Right", Format:"#,##0"},
  57. {Header:"당년도 기성액", Type:"AutoSum", SaveName:"CUR_PAY_AMT", Width:80, Align:"Right", Format:"#,##0"},
  58. {Header:"하도급 금액", Type:"AutoSum", SaveName:"SCONT_AMT", Width:80, Align:"Right", Format:"#,##0", Hidden:"True"},
  59. {Header:"미기성 금액", Type:"AutoSum", SaveName:"PAY_NAMT", Width:80, Align:"Right", Format:"#,##0", CalcLogic:"|CONT_AMT|-|PRV_PAY_AMT|-|CUR_PAY_AMT|"}
  60. ];
  61. init_sheet.HeaderMode = {Sort:1};
  62. IBS_InitSheet(sheet1, init_sheet);
  63. sheet1.SetDataAutoTrim(0);
  64. // sheet1.SetEditable(false);
  65. sheet1.SetCountPosition(0);
  66. sheet1.SetCellText(sheet1.LastRow(), "CONT_NM", "합 계");
  67. sheet1.GetSumFontBold(1);
  68. sheet1.FitColWidth();
  69. }
  70. $.searchList = function()
  71. {
  72. $("#fevent").val("GET_LIST");
  73. var url = Modular.model.PageContext.CONTEXT_ROOT + "/portal/result/ResultDetail03_sheet.screen";
  74. Modular.view.IBSheet7.doSearch(sheet1, url, $("#form1"), 30, "");
  75. };
  76. $("#btn_sheet_add").click(function(){
  77. sheet1.DataInsert(-1);
  78. });
  79. $(".numberic").each(function(){
  80. $(this).val($(this).val().split(/(?=(?:\d{3})+(?:\.|$))/g).join(','));
  81. });
  82. $.callCalendar = function(id){
  83. var str_value = id;
  84. var re = new RegExp("_", "ig");
  85. var resultArray = str_value.match(re);
  86. if(resultArray.length == 1)
  87. {
  88. dlgCalendar(id);
  89. }
  90. else if(resultArray.length == 2)
  91. {
  92. id = id.substring(0, id.lastIndexOf("_"));
  93. dlgCalendar(id);
  94. }
  95. };
  96. $("[name=date_img]").click(function(){
  97. var id = $(this).attr("id").substring(0, $(this).attr("id").lastIndexOf("_"));
  98. dlgCalendar(id);
  99. });
  100. $("#btn_list").click(function(){
  101. //"/portal/result/ResultIngList.screen"
  102. $("#fevent").val("");
  103. if($("#p_page_gubun").val() == "target")
  104. {
  105. $("#form1").attr("action", "/portal/result/ResultTargetList.screen");
  106. }
  107. else if($("#p_page_gubun").val() == "info")
  108. {
  109. $("#form1").attr("action", $("#p_List").val());
  110. }
  111. $("#form1").attr("target", "_self");
  112. $("#form1").attr("method", "post");
  113. $("#form1").submit();
  114. });
  115. $("#btn_save").click(function(){
  116. var gubun = $("#p_page_gubun").val();
  117. if(confirm("저장 하시겠습니까?"))
  118. {
  119. if(gubun == "info")
  120. {
  121. //2016.1.11 반려일때만 금액수정 가능.
  122. if($("#prog_stat_cd").val() != "91"){
  123. $("#prog_stat_cd").val("10");
  124. }
  125. $("#fevent").val("UPDATE_DATA");
  126. var url = Modular.model.PageContext.CONTEXT_ROOT + "/portal/result/ResultDetail03_sheet.screen";
  127. var result = Modular.view.IBSheet7.doSave(sheet1, url, $("#form1"), false);
  128. }
  129. else
  130. {
  131. //$("#prog_stat_cd").val("10");2016.1.11 반려일때만 금액수정 가능.
  132. $("#fevent").val("SAVE_LIST");
  133. var url = Modular.model.PageContext.CONTEXT_ROOT + "/portal/result/ResultDetail03_sheet.screen";
  134. var result = Modular.view.IBSheet7.doSave(sheet1, url, $("#form1"), false);
  135. }
  136. }
  137. });
  138. //2016.1.21
  139. $("#viewSheet").click(function(){
  140. if ($("#viewSheet").is(":checked") == true)
  141. {
  142. $("#cur_cont_amt").attr("disabled", false);
  143. $("#cont_tamt").attr("disabled", false);
  144. $("#cur_pay_amt").attr("disabled", false);
  145. $("#prv_pay_amt").attr("disabled", false);
  146. $("#cur_pay_samt").attr("disabled", false);
  147. $("#prv_pay_samt").attr("disabled", false);
  148. }
  149. else
  150. {
  151. $("#cur_cont_amt").attr("disabled", true);
  152. $("#cont_tamt").attr("disabled", true);
  153. $("#cur_pay_amt").attr("disabled", true);
  154. $("#prv_pay_amt").attr("disabled", true);
  155. $("#cur_pay_samt").attr("disabled", true);
  156. $("#prv_pay_samt").attr("disabled", true);
  157. }
  158. });
  159. $("#btn_signOk").click(function(){
  160. if (typeof($('input[name=cont_type]:checked').val()) == 'undefined')
  161. {
  162. alert("공사유형을 선택하십시요.");
  163. return;
  164. }
  165. if ($("#main_field").val() == "")
  166. {
  167. alert("주력분야를 입력하십시요.");
  168. $("#main_field").focus();
  169. return;
  170. }
  171. if(sheet1.LastRow() <= 1 && ($("#viewSheet").is(":checked") == true))
  172. {
  173. alert("복합공종 실적 내용을 입력해 주세요.");
  174. $("#isuDiv").attr("tabindex", -1).focus();
  175. return;
  176. }
  177. /*
  178. if(($("#viewSheet").is(":checked") == true)&&sheet1.GetCellValue(sheet1.LastRow(), "CUR_PAY_AMT")!=$("#cur_pay_amt").val().replace(/,/gi, "")){
  179. //alert(sheet1.GetCellValue(sheet1.LastRow(), "CUR_PAY_AMT")+" "+$("#cur_pay_amt").val().replace(",",""));
  180. alert("당년도 기성액이 실적내용과 일치하지 않습니다.");
  181. $("#cur_pay_amt").focus();
  182. return;
  183. }
  184. //2016.1.8 복합공종 합계금액 확인
  185. if ($("#viewSheet").is(":checked") == true)
  186. {
  187. var sumAmt = sheet1.GetSumValue(0 ,"CONT_AMT");
  188. if( $("#cont_tamt").val().replace(/,/gi, "") != sumAmt){
  189. alert("계약금액과 복합공종 계약합계 금액이 일치 하지 않습니다.");
  190. return ;
  191. }
  192. } */
  193. //2016.1.12 업종필수입력
  194. /* if ($("#work_kind").val() == ""){
  195. alert("업종을 입력하십시요.");
  196. $("#work_kind").focus();
  197. return ;
  198. } */
  199. /* if ($("#issue_no").val() == ""){
  200. alert("일련번호를 입력하십시요.");
  201. $("#issue_no").focus();
  202. return ;
  203. } */
  204. if ($("#lic_nm").val() == "")
  205. {
  206. alert("업종(면허)명을 입력하십시요.");
  207. $("#lic_nm").focus();
  208. return;
  209. }
  210. if ($("#reg_no").val() == "")
  211. {
  212. alert("면허번호를 입력하십시요.");
  213. $("#reg_no").focus();
  214. return;
  215. }
  216. if ($("#ADD_01").val() == "")
  217. {
  218. alert("공종을 선택 하십시요.");
  219. $("#ADD_01").focus();
  220. return;
  221. }
  222. //2016.4.7
  223. if ($("#viewSheet").is(":checked") == true)
  224. {
  225. var sumAmt = sheet1.GetSumValue(0 ,"CONT_AMT");
  226. if( $("#cont_tamt_o").val().replace(/,/gi, "") != sumAmt){
  227. alert("총 계약금액과 복합공종 계약 합계금액이 일치 하지 않습니다.");
  228. return ;
  229. }
  230. sumAmt = sheet1.GetSumValue(0 ,"CUR_PAY_AMT");
  231. sumAmt = Number(sumAmt) - Number($("#cur_pay_amt_o").val().replace(/,/gi, ""));
  232. if( sumAmt < 0 || sumAmt > 3 ){
  233. alert("당년도 기성금액과 복합공종 기성 합계금액이 일치 하지 않습니다.");
  234. return ;
  235. }
  236. }
  237. var chk = "N";
  238. for (var i = 1; i < sheet1.LastRow(); i++ ){
  239. if (sheet1.GetCellValue(i, "SUB_SOC_CD") == $("#soc_cd").val()){
  240. chk = "Y";
  241. if (sheet1.GetCellValue(i, "CONT_AMT") != $("#cont_tamt").val().replace(/,/gi, "") || sheet1.GetCellValue(i, "CUR_PAY_AMT") != $("#cur_pay_amt").val().replace(/,/gi, "") )
  242. {
  243. alert("복합공종의 협회내용과 작성중인 협회금액이 일치하지 않습니다.");
  244. return;
  245. }
  246. }
  247. }
  248. if (chk == "N" && $("#viewSheet").is(":checked") == true) {
  249. alert("복합공종 내역에 작성중인 협회를 등록하십시요.");
  250. return;
  251. }
  252. fMakeItemInfo();
  253. });
  254. $("#btn_delete").click(function(){
  255. var f = document.form1;
  256. if(confirm("삭제 하시겠습니까?"))
  257. {
  258. submitXmlRequest("/portal/result/ResultDetail01_form.screen", "DELETE_DATA", f, "VALUEOBJECT");
  259. }
  260. });
  261. $("#btn_preview").click(function(){
  262. var f = document.form1;
  263. if(confirm("저장후 미리보기를 생성 하시겠습니까?"))
  264. {
  265. $("#fevent").val("UPDATE_DATA");
  266. $("#pdf").val("PREVIEW_PDF");
  267. var url = Modular.model.PageContext.CONTEXT_ROOT + "/portal/result/ResultDetail03_sheet.screen";
  268. var result = Modular.view.IBSheet7.doSave(sheet1, url, $("#form1"), false);
  269. /* $("#fevent").val("PREVIEW_PDF");
  270. submitXmlRequest("/portal/result/ResultDetail01_form.screen", "PREVIEW_PDF", f); */
  271. }
  272. });
  273. $("#contPopup").click(function(){
  274. var win_id = "ResultContPopup";
  275. var link = "/portal/result/ResultContPopup.screen";
  276. link += "?pop_win_id="+win_id+"&layerYn=Y";
  277. link += "&subContModId="+$("#p_sub_cont_mod_id").val();
  278. fLayerPop(win_id, link, 550,115, '', '', 'auto');
  279. });
  280. });
  281. $(document).ready(function(){
  282. $.gridInit(sheet1);
  283. $.searchList();
  284. if($("#COMPOSIT_YN").val()=="1"){
  285. $("#viewSheet").attr("checked",true);
  286. }else{
  287. $("#btn_sheet_add_area").css("display", "none");
  288. }
  289. var prog_stat_cd = "<%=vo.get("prog_stat_cd")%>";
  290. if($("#p_success_gubun").val() == "R")
  291. {
  292. $(':radio[name="p_reson"]').attr("disabled", true);
  293. $(':input').attr("readonly", true);
  294. $(':input').addClass("bg_gry");
  295. }
  296. //2016.4.7
  297. if(prog_stat_cd == "91" )
  298. {
  299. $("#reson_area").css("display", "table-row");
  300. //2016.1.11 금액관련 모두 수정가능
  301. }
  302. else
  303. {
  304. $("#reson_area").css("display", "none");
  305. //2016.4.7금액관련 모두 수정 불가
  306. if ($("#viewSheet").is(":checked") == false)
  307. {
  308. $("#cur_cont_amt").attr("disabled", true);
  309. $("#cont_tamt").attr("disabled", true);
  310. $("#cur_pay_amt").attr("disabled", true);
  311. $("#prv_pay_amt").attr("disabled", true);
  312. $("#cur_pay_samt").attr("disabled", true);
  313. $("#prv_pay_samt").attr("disabled", true);
  314. }
  315. }
  316. if(prog_stat_cd == "30" )
  317. {
  318. $("#viewSheet").css("display", "none");
  319. $("#btn_sheet_add_area").css("display", "none");
  320. sheet1.SetEditable(false);
  321. sheet1.FitColWidth();
  322. }
  323. if($("#p_page_gubun").val() == "info")
  324. {
  325. if($("#prog_stat_cd").val() == "10" || $("#prog_stat_cd").val() == "00" || $("#prog_stat_cd").val() == "91")
  326. {
  327. $("#signOk").css("display", "inline");
  328. $("#btn_preview_area").css("display", "inline");
  329. }
  330. else
  331. {
  332. $("#signOk").css("display", "none");
  333. $("#btn_save_area").css("display", "none");
  334. $("#btn_preview_area").css("display", "none");
  335. $("#btn_delete_area").css("display", "none");
  336. $("#issue_no").attr("readonly", "true");
  337. $("#lic_org").attr("readonly", "true");
  338. $("#lic_date").attr("readonly", "true");
  339. $("#lic_nm").attr("readonly", "true");
  340. $("#reg_no").attr("readonly", "true");
  341. $("#isu_charge_nm").attr("readonly", "true");
  342. $("#work_kind").attr("readonly", "true");
  343. $("#etc").attr("readonly", "true");
  344. $("#isu_req_hp1").attr("readonly", "true");
  345. $("#isu_req_hp2").attr("readonly", "true");
  346. $("#isu_req_hp3").attr("readonly", "true");
  347. }
  348. }
  349. else
  350. {
  351. $("#signOk").css("display", "none");
  352. $("#btn_preview_area").css("display", "none");
  353. $("#btn_delete_area").css("display", "none");
  354. }
  355. $("#viewSheet").click(function() {
  356. viewSheet();
  357. });
  358. $("#cont_type1").click(function(){
  359. $("#cont_type1").attr("checked",true);
  360. $("#cont_type2").attr("checked",false);
  361. });
  362. $("#cont_type2").click(function(){
  363. $("#cont_type1").attr("checked",false);
  364. $("#cont_type2").attr("checked",true);
  365. });
  366. });
  367. function viewSheet(){
  368. if($("#viewSheet").is(":checked") == true){
  369. sheet1.SetEditable(true);
  370. $("#btn_sheet_add_area").css("display", "inline");
  371. $("#COMPOSIT_YN").val("1");
  372. }else{
  373. if(sheet1.RowCount()!="0"){ //row가 남아있을때 확인
  374. if(confirm("작성된 내용을 삭제 하시겠습니까?")){
  375. sheet1.CheckAll(0,1);
  376. sheet1.SetEditable(false);
  377. $("#btn_sheet_add_area").css("display", "none");
  378. $("#COMPOSIT_YN").val("0");
  379. }
  380. }else{ //row 없을때
  381. sheet1.SetEditable(false);
  382. $("#btn_sheet_add_area").css("display", "none");
  383. $("#COMPOSIT_YN").val("0");
  384. }
  385. }
  386. }
  387. function sheet1_OnSaveEnd(code, msg)
  388. {
  389. var event = $("#fevent").val();
  390. var f = document.form1;
  391. document.form1.isSubmit = false;
  392. if(code >= "0")
  393. {
  394. if(event == "SAVE_LIST")
  395. {
  396. alert("등록 되었습니다.");
  397. location.href="/portal/result/ResultIngList.screen";
  398. }
  399. else if(event == "UPDATE_ISSUE")
  400. {
  401. alert("발급요청이 되었습니다.");
  402. location.href="/portal/result/ResultIngList.screen";
  403. }
  404. else if(event == "SIGN_OK")
  405. {
  406. alert("서명 되었습니다.");
  407. $("#fevent").val("GET_DETAIL_02");
  408. $("#form1").attr("action", "/portal/result/ResultDetail02.screen");
  409. $("#form1").submit();
  410. }
  411. else if($("#pdf").val()=="PREVIEW_PDF")
  412. {
  413. var reportInfo = new ReportInfo();
  414. reportInfo.title = "대한기계설비공사협회 실적증명";
  415. reportInfo.reportName = "/report/mrd/buyer/supplier/buld_application.mrd";
  416. reportInfo.set("<%=vo.get("corp_id")%>"); // $1
  417. reportInfo.set("<%=vo.get("sub_cont_mod_id")%>"); // $2
  418. reportInfo.set("<%=vo.get("acmp_yyyy")%>"); // $3
  419. reportInfo.set("<%=vo.get("soc_cd")%>"); // $4
  420. reportInfo.width = 1000; // Default: 1024
  421. reportInfo.height = 700; // Default: 768
  422. reportInfo.showPopup();
  423. $("#pdf").val("");
  424. }
  425. else{
  426. alert("수정 되었습니다.");
  427. $("#fevent").val("GET_DETAIL_02");
  428. $("#form1").attr("action", "/portal/result/ResultDetail02.screen");
  429. $("#form1").submit();
  430. }
  431. }
  432. }
  433. function doResult(resultObj) {
  434. try
  435. {
  436. document.form1.isSubmit = false;
  437. /*
  438. if( resultObj.getRequestEvent() == "SAVE_DATA")
  439. {
  440. if( resultObj.getSuccess() )
  441. {
  442. alert("등록 되었습니다.");
  443. location.href="/portal/result/ResultIngList.screen";
  444. }
  445. else
  446. {
  447. // dlgErrorMsg(resultObj.getMessage);
  448. alert(resultObj.getValueObject().get("errMsg"));
  449. }
  450. }
  451. else if(resultObj.getRequestEvent() == "UPDATE_DATA")
  452. {
  453. if( resultObj.getSuccess() )
  454. {
  455. alert("수정 되었습니다.");
  456. // location.href="/portal/result/ResultIngList.screen";
  457. }
  458. else
  459. {
  460. // dlgErrorMsg(resultObj.getMessage);
  461. alert(resultObj.getValueObject().get("errMsg"));
  462. }
  463. }
  464. else */if(resultObj.getRequestEvent() == "UPDATE_ISSUE")
  465. {
  466. if( resultObj.getSuccess() )
  467. {
  468. alert("발급요청이 되었습니다.");
  469. location.href="/portal/result/ResultIngList.screen";
  470. }
  471. else
  472. {
  473. // dlgErrorMsg(resultObj.getMessage);
  474. alert(resultObj.getValueObject().get("errMsg"));
  475. }
  476. }
  477. else if( resultObj.getRequestEvent() == "DELETE_DATA")
  478. {
  479. if( resultObj.getSuccess() )
  480. {
  481. alert("삭제 되었습니다.");
  482. location.href="/portal/result/ResultTargetList.screen";
  483. }
  484. else
  485. {
  486. // dlgErrorMsg(resultObj.getMessage);
  487. alert(resultObj.getValueObject().get("errMsg"));
  488. }
  489. }
  490. else if( resultObj.getRequestEvent() == "PREVIEW_PDF")
  491. {
  492. if( resultObj.getSuccess() )
  493. {
  494. alert("미리보기가 생성 되었습니다.");
  495. var url="/common/file/FileDownloadServlet?mode=fpDown&filePath=/result/<%=vo.get("sub_cont_mod_id")%>/<%=vo.get("acmp_yyyy")%>&fileName=preview_<%=vo.get("corp_id")%>.pdf&fileRealName=preview_<%=vo.get("corp_id")%>.pdf";
  496. window.open(url, "_blank");
  497. }
  498. else
  499. {
  500. // dlgErrorMsg(resultObj.getMessage);
  501. alert(resultObj.getValueObject().get("errMsg"));
  502. }
  503. }
  504. }
  505. catch(errorObject) {
  506. showErrorDlg("doResult()", errorObject);
  507. }
  508. }
  509. function fMakeItemInfo(){
  510. var sColumDelimiter = "┃";
  511. var sRowDelimiter = "↕";
  512. var sSumDelimiter = "╂";
  513. var sEncDelimiter = "⇔";
  514. var isNull = "NULL";
  515. //해시
  516. var sContHash = "";
  517. var sTemplate = "01";
  518. var sMainVendcd = "<%=vo.get("isu_vendcd") %>";
  519. //var sMainVendcd = "1234567890"; // 원사업자번호
  520. var issue_no = "<%=vo.get("issue_no") %>";
  521. var work_kind = "<%=vo.get("work_kind") %>";
  522. var cur_cont_amt = "<%=vo.get("cur_cont_amt") %>";
  523. var cur_pay_amt = "<%=vo.get("cur_pay_amt") %>";
  524. var etc = "<%=StringUtils.cvtHTML(vo.get("etc")) %>";
  525. sContHash=issue_no +sColumDelimiter
  526. +work_kind +sColumDelimiter
  527. +cur_cont_amt +sColumDelimiter
  528. +cur_pay_amt +sColumDelimiter
  529. +etc +sRowDelimiter;
  530. var GrowCount = sheet1.LastRow();
  531. for(var i=1; i < GrowCount+1; i++)
  532. {
  533. var cont_nm = "";
  534. var cont_amt = "";
  535. var cont_sdate = "";
  536. var cont_edate = "";
  537. var prv_pay_amt = "";
  538. var cur_pay_amt = "";
  539. var scont_amt = "";
  540. var pay_namt = "";
  541. cont_nm = sheet1.GetCellValue(i,"CONT_NM");
  542. if(cont_nm.length > 0){
  543. cont_amt = sheet1.GetCellValue(i,"CONT_AMT");
  544. if(isEmptyVal(cont_amt))
  545. cont_amt = isNull;
  546. cont_sdate = sheet1.GetCellValue(i,"CONT_SDATE");
  547. if(isEmptyVal(cont_sdate))
  548. cont_sdate = isNull;
  549. cont_edate = sheet1.GetCellValue(i,"CONT_EDATE");
  550. if(isEmptyVal(cont_edate))
  551. cont_edate = isNull;
  552. prv_pay_amt = sheet1.GetCellValue(i,"PRV_PAY_AMT");
  553. if(isEmptyVal(prv_pay_amt))
  554. prv_pay_amt = isNull;
  555. cur_pay_amt = sheet1.GetCellValue(i,"CUR_PAY_AMT");
  556. if(isEmptyVal(cur_pay_amt))
  557. cur_pay_amt = isNull;
  558. scont_amt = sheet1.GetCellValue(i,"SCONT_AMT");
  559. if(isEmptyVal(scont_amt))
  560. scont_amt = isNull;
  561. pay_namt = sheet1.GetCellValue(i,"PAY_NAMT");
  562. if(isEmptyVal(pay_namt))
  563. pay_namt = isNull;
  564. sContHash = sContHash
  565. + sTemplate + sColumDelimiter
  566. + sMainVendcd + sColumDelimiter
  567. + cont_amt + sColumDelimiter
  568. + cont_sdate + sColumDelimiter
  569. + cont_edate + sColumDelimiter
  570. + prv_pay_amt + sColumDelimiter
  571. + cur_pay_amt + sColumDelimiter
  572. + scont_amt + sColumDelimiter
  573. + pay_namt + sRowDelimiter
  574. }
  575. }
  576. $("#CONT_HASH").val(sContHash);
  577. if(confirm("서명 하시겠습니까?")){
  578. SignData();
  579. }
  580. }
  581. function isEmptyVal( value ) {
  582. if(value.length == 0){
  583. return true;
  584. }
  585. if( value == "" ) {
  586. return true;
  587. }
  588. return false;
  589. }
  590. //-->
  591. </script>
  592. <modular:search id="form1">
  593. <modular:key id="fevent" />
  594. </modular:search>
  595. <form id="form1" name="form1" method="post" modular:type="search">
  596. <INPUT type="hidden" name="fevent" id="fevent" value="" />
  597. <INPUT type="hidden" name="pdf" id="pdf" value="" />
  598. <input type="hidden" name="p_page_gubun" id="p_page_gubun" value="<%=params.get("p_page_gubun") %>" />
  599. <input type="hidden" name="p_List" id="p_List" value="<%=params.get("p_List") %>" />
  600. <input type="hidden" name="p_sub_cont_mod_id" id="p_sub_cont_mod_id" value="<%=vo.get("sub_cont_mod_id") %>" />
  601. <input type="hidden" name="p_acmp_yyyy" id="p_acmp_yyyy" value="<%=vo.get("acmp_yyyy") %>" />
  602. <input type="hidden" name="p_corp_id" id="p_corp_id" value="<%=vo.get("corp_id") %>" />
  603. <input type="hidden" name="p_soc_cd" id="p_soc_cd" value= "<%=params.get("p_soc_cd") %>" />
  604. <input type="hidden" name="sub_cont_mod_id" id="sub_cont_mod_id" value="<%=vo.get("sub_cont_mod_id") %>" />
  605. <input type="hidden" name="acmp_yyyy" id="acmp_yyyy" value="<%=vo.get("acmp_yyyy") %>" />
  606. <input type="hidden" name="corp_id" id="corp_id" value="<%=vo.get("corp_id") %>" />
  607. <input type="hidden" name="soc_cd" id="soc_cd" value= "<%=params.get("p_soc_cd") %>" />
  608. <input type="hidden" name="dept_cd" id="dept_cd" value= "<%=vo.get("dept_cd") %>" />
  609. <input type="hidden" name="dept_nm" id="dept_nm" value= "<%=vo.get("dept_name") %>" />
  610. <input type="hidden" name="isu_vendcd" id="isu_vendcd" value= "<%=vo.get("isu_vendcd") %>" />
  611. <input type="hidden" name="con_amt" id="con_amt" value= "<%=vo.get("con_amt") %>" />
  612. <input type="hidden" name="prog_stat_cd" id="prog_stat_cd" value= "<%=vo.get("prog_stat_cd") %>" />
  613. <input type="hidden" name="p_success_gubun" id="p_success_gubun" value= "<%=params.get("p_success_gubun") %>" />
  614. <input type="hidden" name="p_yyyy" id="p_yyyy" value= "<%=params.get("p_yyyy") %>" />
  615. <input type="hidden" name="p_dept_nm" id="p_dept_nm" value= "<%=params.get("p_dept_nm") %>" />
  616. <input type="hidden" name="p_cont_nm" id="p_cont_nm" value= "<%=params.get("p_cont_nm") %>" />
  617. <input type="hidden" name="COMPOSIT_YN" id="COMPOSIT_YN" value= "<%=vo.get("COMPOSIT_YN") %>" />
  618. <input type="hidden" name="PRV_PAY_AMT_O" id="PRV_PAY_AMT_O" value= "<%=vo.get("PRV_PAY_AMT_O") %>" />
  619. <input type="hidden" name="CUR_PAY_NAMT_O" id="CUR_PAY_NAMT_O" value= "<%=vo.get("CUR_PAY_NAMT_O") %>" />
  620. <!--서명 데이터 정보 START-->
  621. <INPUT type='hidden' name="CONT_HASH" value="">
  622. <INPUT type='hidden' name="sItemInfo" value="">
  623. <INPUT type='hidden' name="CONT_SIGNDATA" value="">
  624. <INPUT type='hidden' name="CONT_SIGNDN" value="">
  625. <INPUT type='hidden' name="signeddata" value="">
  626. <INPUT type='hidden' name="signEnddt" value="">
  627. <div align="left" id="title" style="float: left;">
  628. <ul>
  629. <li>실적증명 상세(<%=vo.get("PROG_STAT_NM").equals("") ? "작성대상" : vo.get("PROG_STAT_NM")%>)</li>
  630. </ul>
  631. </div>
  632. <div style="float: right; margin-top: 16px;">
  633. <span class="btnSearch center"><a href="javascript:void(0);" id="btn_list">목록</a></span>
  634. <!--<span class="btnSearch center" id="btn_preview_area"><a href="javascript:void(0);" id="btn_preview">미리보기</a></span>-->
  635. <span class="btnSearch center" id="btn_save_area"><a href="javascript:void(0);" id="btn_save">저장</a></span>
  636. <span class="btnSearch center" id="signOk"><a href="javascript:void(0);" id="btn_signOk">서명</a></span>
  637. <span class="btnSearch center" id="btn_delete_area"><a href="javascript:void(0);" id="btn_delete">삭제</a></span>
  638. </div>
  639. <!-- 기성실적증명서 정보 -->
  640. <div style="float: left;" class="application-info magT10">
  641. <div class="application-sub-title">
  642. <span class="title">기성실적증명서 정보</span>
  643. </div>
  644. <div class="application-location">
  645. </div>
  646. </div>
  647. <table border="0" cellspacing="0" cellpadding="0" width="100%" height="100%" class=form-table>
  648. <colgroup>
  649. <col width="15%" />
  650. <col width="35%" />
  651. <col width="15%" />
  652. <col width="35%" />
  653. </colgroup>
  654. <!-- 검색조건 영역, 테이터 영역 구분 여백 : 시작 -->
  655. <tr>
  656. <th style="text-align: left;">발 급 협 회</th>
  657. <td>
  658. 대한기계설비공사협회
  659. </td>
  660. <th style="text-align: left;">&nbsp;</th>
  661. <td>
  662. &nbsp;<%--<input type="text" name="issue_no" id="issue_no" value="<%=vo.get("issue_no") %>" /> --%>
  663. </td>
  664. </tr>
  665. <tr id="reson_area">
  666. <th style="text-align: left;">반려사유</th>
  667. <td colspan="3">
  668. <%=vo.get("return_reson").replace("\n", "<br/>") %>
  669. </td>
  670. </tr>
  671. </table>
  672. <!-- 신청인 -->
  673. <div style="float: left;" class="application-info magT10">
  674. <div class="application-sub-title">
  675. <span class="title">신청인</span>
  676. </div>
  677. <div class="application-location">
  678. </div>
  679. </div>
  680. <table border="0" cellspacing="0" cellpadding="0" width="100%" height="100%" class=form-table>
  681. <colgroup>
  682. <col width="15%" />
  683. <col width="35%" />
  684. <col width="15%" />
  685. <col width="35%" />
  686. </colgroup>
  687. <!-- 검색조건 영역, 테이터 영역 구분 여백 : 시작 -->
  688. <tr>
  689. <th style="text-align: left;">상 호</th>
  690. <td>
  691. <input type="text" name="isu_vendnm" id="isu_vendnm" value="<%=vo.get("ISU_VENDNM") %>" class="bg_gry input_blank" readonly="readonly"/>
  692. </td>
  693. <th style="text-align: left;">대표자 성명</th>
  694. <td>
  695. <input type="text" name="isu_pres_nm" id="isu_pres_nm" value="<%=vo.get("isu_pres_nm") %>" class="bg_gry input_blank" readonly="readonly"/>
  696. </td>
  697. </tr>
  698. <tr>
  699. <th style="text-align: left;">본사 소재지</th>
  700. <td colspan="3">
  701. <input type="text" name="isu_addr" id="isu_addr" value="<%=vo.get("ISU_ADDR") %>" style="width: 100%;" />
  702. </td>
  703. </tr>
  704. </table>
  705. <!-- 공사내역 -->
  706. <div style="float: left;" class="application-info magT10">
  707. <div class="application-sub-title">
  708. <span class="title">공사내역</span>
  709. <img alt="팝업" id="contPopup" name="contPopup" src="/img/buyer/button/bt_search_right.gif" style="vertical-align: middle; cursor: pointer;"/>
  710. </div>
  711. <div class="application-location">
  712. </div>
  713. </div>
  714. <table border="0" cellspacing="0" cellpadding="0" width="100%" height="100%" class=form-table>
  715. <colgroup>
  716. <col width="15%" />
  717. <col width="35%" />
  718. <col width="15%" />
  719. <col width="35%" />
  720. </colgroup>
  721. <!-- 검색조건 영역, 테이터 영역 구분 여백 : 시작
  722. <tr>
  723. <th style="text-align: left;">공사업종</th>
  724. <td colspan="3">
  725. <input type="text" name="work_kind" id="work_kind" value="<%=vo.get("work_kind") %>" />
  726. </td>
  727. </tr>-->
  728. <tr>
  729. <th style="text-align: left;">공사명</th>
  730. <td colspan="3">
  731. <input type="text" name="cont_nm" id="cont_nm" value="<%=vo.get("cont_nm") %>" style="width: 100%;" />
  732. </td>
  733. </tr>
  734. <tr>
  735. <th style="text-align: left;">현 장 소 재 지</th>
  736. <td colspan="3">
  737. <input type="text" name="work_place" id="work_place" value="<%=vo.get("work_place") %>" class="bg_gry input_blank" readonly="readonly"/>
  738. </td>
  739. </tr>
  740. <tr>
  741. <th style="text-align: left;">인 허 가 기 관</th>
  742. <td>
  743. <input type="text" name="lic_org" id="lic_org" value="<%=vo.get("lic_org") %>" class="bg_gry input_blank" style="width: 100%;"/>
  744. </td>
  745. <th style="text-align: left;">인허가연월일</th>
  746. <td>
  747. <input type="text" name="lic_date" id="lic_date" value="<%=vo.get("lic_date") %>" readonly="readonly" class="bg_gry input_blank" style="width: 80px;"/>
  748. <img alt="달력" id="lic_date_img" name="date_img" src="/img/buyer/button/bt_calender.gif" style="vertical-align: middle; cursor: pointer;"/>
  749. </td>
  750. </tr>
  751. <tr>
  752. <th style="text-align: left;">공 사 유 형</th>
  753. <td>
  754. <%-- <input type="text" name="cont_type" id="cont_type" value="<%=vo.get("cont_type") %>" style="width: 100%;"/> --%>
  755. <LABEL for="cont_type1"><INPUT id="cont_type1" name="cont_type" type="radio" name="cont_type1" value="N" <%=vo.get("cont_type").equals("N") ? "checked=\"checked\"" : ""%>>신설공사</LABEL>
  756. <LABEL for="cont_type2"><INPUT id="cont_type2" name="cont_type" type="radio" name="cont_type2" value="M" <%=vo.get("cont_type").equals("M") ? "checked=\"checked\"" : ""%>>유지보수공사</LABEL>
  757. </td>
  758. <th style="text-align: left;">주 력 분 야</th>
  759. <td>
  760. <input type="text" name="main_field" id="main_field" value="<%=vo.get("main_field") %>" style="width: 100%;"/>
  761. </td>
  762. </tr>
  763. <tr>
  764. <th style="text-align: left;">계약연월</th>
  765. <td>
  766. <input type="text" name="cont_cdate" id="cont_cdate" value="<%=vo.get("cont_cdate") %>" class="bg_gry input_blank" readonly="readonly" style="width: 80px;"/>
  767. <!-- <img alt="달력" id="cont_cdate_img" name="date_img" src="/img/buyer/icon/icon_calendar.gif" style="vertical-align: middle; cursor: pointer;"/> -->
  768. </td>
  769. <th style="text-align: left;">착공연월</th>
  770. <td>
  771. <input type="text" name="cont_sdate" id="cont_sdate" value="<%=vo.get("cont_sdate") %>" class="bg_gry input_blank" readonly="readonly" style="width: 80px;" />
  772. <!-- <img alt="달력" id="cont_sdate_img" name="date_img" src="/img/buyer/icon/icon_calendar.gif" style="vertical-align: middle; cursor: pointer;"/> -->
  773. </td>
  774. </tr>
  775. <tr>
  776. <th style="text-align: left;">준공연월</th>
  777. <td>
  778. <input type="text" name="cont_edate" id="cont_edate" value="<%=vo.get("cont_edate") %>" class="bg_gry input_blank" readonly="readonly" style="width: 80px;" />
  779. </td>
  780. <th style="text-align: left;">계약금액(총계약금액)</th>
  781. <td>
  782. <input type="text" name="cont_tamt" id="cont_tamt" value="<%=vo.get("cont_tamt") %>" style="text-align: right; width: 200px;" numberOnly="true" class="numberic" /> 천원
  783. (<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" /> )
  784. </td>
  785. </tr>
  786. <tr>
  787. <th style="text-align: left;">당년도계약액<br/>(이 월 금 액)</th>
  788. <td>
  789. <input type="text" name="cur_cont_amt" id="cur_cont_amt" value="<%=vo.get("cur_cont_amt") %>" style="text-align: right; width: 200px;" numberOnly="true" class="numberic" maxlength="20"/> 천원
  790. </td>
  791. <th style="text-align: left;">&nbsp;</th>
  792. <td>
  793. &nbsp;
  794. </td>
  795. </tr>
  796. <tr>
  797. <th style="text-align: left;">당년도 기성액(총기성액)</th>
  798. <td>
  799. <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" maxlength="20"/> 천원
  800. (<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" /> )
  801. </td>
  802. <th style="text-align: left;">전년도 누계기성액</th>
  803. <td>
  804. <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" maxlength="20"/> 천원
  805. </td>
  806. </tr>
  807. <tr>
  808. <th style="text-align: left;">당년도 기성지급액</th>
  809. <td>
  810. <input type="text" name="cur_pay_samt" id="cur_pay_samt" value="<%=vo.get("cur_pay_samt") %>" style="text-align: right; width: 200px;" numberOnly="true" class="numberic" maxlength="20"/> 천원
  811. </td>
  812. <th style="text-align: left;">전년도까지 누계지급액</th>
  813. <td>
  814. <input type="text" name="prv_pay_samt" id="prv_pay_samt" value="<%=vo.get("prv_pay_samt") %>" style="text-align: right; width: 200px;" numberOnly="true" class="numberic" maxlength="20" />
  815. </td>
  816. </tr>
  817. <tr>
  818. <th style="text-align: left;">업종(면허)명</th>
  819. <td>
  820. <input type="text" name="lic_nm" id="lic_nm" value="<%=vo.get("lic_nm") %>" style="width: 100%;"/>
  821. </td>
  822. <th style="text-align: left;">면 허 번 호</th>
  823. <td>
  824. <input type="text" name="reg_no" id="reg_no" value="<%=vo.get("reg_no") %>" style="width: 100%;"/>
  825. </td>
  826. </tr>
  827. <tr>
  828. <th style="text-align: left;">기타</th>
  829. <td colspan="3">
  830. (공사의 규모, 공법, 공동도급 내역 등)<br/>
  831. <textarea rows="5" cols="100" name="etc" id="etc"><%=vo.get("etc") %></textarea>
  832. </td>
  833. </tr>
  834. <tr>
  835. <th style="text-align: left;">공종</th>
  836. <td>
  837. <%=CommCodeManager.getSelectCodeSearchList("RESULT_02","ADD_01","height=18;width:180px;","<option value=''>--선택--</option>", vo.get("ADD_01"),"","DETAILCD") %>
  838. </td>
  839. <th style="text-align: left;">세부공종(전문)</th>
  840. <td>
  841. <%=CommCodeManager.getSelectCodeSearchList("RESULT_02_D","ADD_02","height=18;width:180px;","<option value=''>--선택--</option>", vo.get("ADD_02"),"","DETAILNM") %>
  842. </td>
  843. </tr>
  844. </table>
  845. <!-- 복합공종-->
  846. <div style="float: left;" class="application-info magT10">
  847. <div class="application-sub-title">
  848. <span class="title">복합공종(타공종 포함) 실적 내용 (단위:천원, 부가세 포함) <input type="checkbox" id="viewSheet"></span>
  849. </div>
  850. <div class="application-location">
  851. </div>
  852. </div>
  853. <div id="sheetDiv">
  854. <div style="float: right; margin-top: -23px; margin-bottom: 5px;" id="sheet1_btn">
  855. <span class="btnSearch center" id="btn_sheet_add_area"><a href="javascript:void(0);" id="btn_sheet_add">추가</a></span>
  856. <!-- <span class="btnSearch center"><a href="javascript:void(0);" id="btn_sheet_delete">삭제</a></span> -->
  857. </div>
  858. <!-- 시트 -->
  859. <div style="width: 100%; height: 150px; margin-top: 5px; margin-bottom: 80px;">
  860. <!-- 데이터 영역 : 시작 -->
  861. <!-- ibsheet7 그리드 생성 -->
  862. <script>createIBSheet("sheet1","100%", "150px;");</script>
  863. <!-- 데이터 영역 : 종료 -->
  864. </div>
  865. </div>
  866. <!-- 공사내역 -->
  867. <div style="float: left;" class="application-info magT10">
  868. <div class="application-sub-title">
  869. <span class="title">발급요청자 정보</span>
  870. </div>
  871. <div class="application-location">
  872. </div>
  873. </div>
  874. <table border="0" cellspacing="0" cellpadding="0" width="100%" height="100%" class=form-table>
  875. <colgroup>
  876. <col width="15%" />
  877. <col width="35%" />
  878. <col width="15%" />
  879. <col width="35%" />
  880. </colgroup>
  881. <!-- 검색조건 영역, 테이터 영역 구분 여백 : 시작 -->
  882. <tr>
  883. <th style="text-align: left;">담당자명</th>
  884. <td>
  885. <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") %>" />
  886. </td>
  887. <th style="text-align: left;">휴대전화</th>
  888. <td>
  889. <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"/> -
  890. <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"/> -
  891. <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"/>
  892. </td>
  893. </tr>
  894. </table>
  895. <%if(vo.get("prog_stat_cd").equals("30")){ %>
  896. <div id="file_area" style="width: 100%;">
  897. <!-- 첨부파일 -->
  898. <div style="float: left;" class="application-info magT10">
  899. <div class="application-sub-title">
  900. <span class="title">첨부파일</span>
  901. </div>
  902. <div class="application-location">
  903. </div>
  904. </div>
  905. <table border="0" cellspacing="0" cellpadding="0" width="100%" height="100%" class=form-table>
  906. <colgroup>
  907. <col width="15%" />
  908. <col width="*" />
  909. </colgroup>
  910. <!-- 검색조건 영역, 테이터 영역 구분 여백 : 시작 -->
  911. <tr>
  912. <th style="text-align: left;">첨부파일</th>
  913. <td colspan="3">
  914. <div id="auto_attach_file_view" class="attach_file_view">
  915. <ul>
  916. <%
  917. for(int i=0; i<fileRowSet.size(); i++)
  918. {
  919. %>
  920. <li>
  921. <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>
  922. </li>
  923. <%
  924. }
  925. %>
  926. </ul>
  927. </div>
  928. </td>
  929. </tr>
  930. </table>
  931. </div>
  932. <%} %>
  933. </form>
  934. <!-- ------------------서명 요청 처리 로직-------- -->
  935. <SCRIPT LANGUAGE="JavaScript">
  936. function SignData()
  937. {
  938. var VendorCd = "<%=vo.get("isu_vendcd")%>";
  939. // VendorCd = '2234567890';
  940. var sOrgnData = $("#CONT_HASH").val();
  941. unisign.SignDataNVerifyVID( sOrgnData, null, VendorCd, function( resultObject ) {
  942. if( !resultObject || resultObject.resultCode != 0 ){
  943. // alert( resultObject.resultMessage + "\n오류코드 : " + resultObject.resultCode );
  944. if( resultObject.resultCode == '14208'){
  945. alert("주민번호/사업자번호를 확인할 수 없는 인증서입니다.");
  946. } else if( resultObject.resultCode == '999'){
  947. alert("사용자 DN 선택이 취소 되었습니다.");
  948. } else {
  949. alert( resultObject.resultMessage);
  950. }
  951. return;
  952. }
  953. var signeddata = resultObject.signedData;
  954. var userdn = resultObject.certAttrs.subjectName;
  955. // alert(signeddata);//인증서 이름
  956. // alert(userdn);//인증서 이름
  957. $("#CONT_SIGNDATA").val(signeddata);
  958. $("#CONT_SIGNDN").val(userdn);
  959. $("#fevent").val("SIGN_OK");
  960. var url = Modular.model.PageContext.CONTEXT_ROOT + "/portal/result/ResultDetail03_sheet.screen";
  961. var result = Modular.view.IBSheet7.doSave(sheet1, url, $("#form1"), false);
  962. }
  963. );
  964. }
  965. </SCRIPT>
  966. <div id="CONTROL_LAYER" style="position:absolute; z-index:10; visibility:hidden;">
  967. <script>
  968. </script>
  969. </div>
  970. <!-- 전자인증 모듈 설정 //-->
  971. <link rel="stylesheet" type="text/css" href="/CrossCert/CC_WSTD_home/unisignweb/rsrc/css/certcommon.css?v=1" />
  972. <script type="text/javascript" src="/CrossCert/CC_WSTD_home/unisignweb/js/unisignwebclient.js?v=1"></script>
  973. <script type="text/javascript" src="/CrossCert/UniSignWeb_Multi_Init_Nim.js?v=1"></script>
  974. <!-- 전자인증 모듈 설정 //-->