diff --git a/src/main/java/com/madeu/crm/kiosk/service/KioskService.java b/src/main/java/com/madeu/crm/kiosk/service/KioskService.java index 0ecf10d..9b58720 100644 --- a/src/main/java/com/madeu/crm/kiosk/service/KioskService.java +++ b/src/main/java/com/madeu/crm/kiosk/service/KioskService.java @@ -139,8 +139,6 @@ public class KioskService { String muUserAgreementId = ("UA").concat(String.valueOf(System.currentTimeMillis())); consentFormMap.put("muUserAgreementId", muUserAgreementId); - - consentFormMap.put("muUserId", dto.getUserNumber().get("id")); consentFormMap.put("userName", dto.getUserName()); consentFormMap.put("type", type); @@ -156,7 +154,7 @@ public class KioskService { consentFormMap.put("fileName", "-"); consentFormMap.put("originalFileName", "-"); consentFormMap.put("loginMemberId", "kiosk"); - + consentFormMap.put("signatureBase64", dto.getSignatureData()); webUserSqlMapDAO.insertUserAgreement(consentFormMap); } diff --git a/src/main/java/com/madeu/service/web/webuser/impl/WebUserServiceImpl.java b/src/main/java/com/madeu/service/web/webuser/impl/WebUserServiceImpl.java index 9b1d6fe..8e25c4b 100644 --- a/src/main/java/com/madeu/service/web/webuser/impl/WebUserServiceImpl.java +++ b/src/main/java/com/madeu/service/web/webuser/impl/WebUserServiceImpl.java @@ -3020,15 +3020,15 @@ public class WebUserServiceImpl implements WebUserService { if(true == check){ // file - HashMap uploadFileMap = new HashMap(); - uploadFileMap.put("type", "UA"); - uploadFileMap.put("fileType", "I"); - uploadFileMap.put("fileName", file.getOriginalFilename()); - HashMap fileMap = fileService.uploadFile(uploadFileMap, file); - String cdnUrl = String.valueOf(fileMap.get("cdnUrl")); - String filePath = String.valueOf(fileMap.get("fileUrl")); - String fileName = String.valueOf(fileMap.get("fileName")); - String chgFileNmae = fileName; + /* + * HashMap uploadFileMap = new HashMap(); + * uploadFileMap.put("type", "UA"); uploadFileMap.put("fileType", "I"); + * uploadFileMap.put("fileName", file.getOriginalFilename()); HashMap fileMap = fileService.uploadFile(uploadFileMap, file); String cdnUrl + * = String.valueOf(fileMap.get("cdnUrl")); String filePath = + * String.valueOf(fileMap.get("fileUrl")); String fileName = + * String.valueOf(fileMap.get("fileName")); String chgFileNmae = fileName; + */ // 동의서 등록 paramMap.put("tId", tId); @@ -3037,10 +3037,11 @@ public class WebUserServiceImpl implements WebUserService { String muUserAgreementId = ("UA").concat(String.valueOf(System.currentTimeMillis())); paramMap.put("muUserAgreementId",muUserAgreementId); paramMap.put("status", "Y"); - paramMap.put("cdnUrl", cdnUrl); - paramMap.put("filePath", filePath); - paramMap.put("fileName", fileName); - paramMap.put("originalFileName", chgFileNmae); + paramMap.put("cdnUrl", ""); + paramMap.put("filePath", ""); + paramMap.put("fileName", ""); + paramMap.put("originalFileName", ""); + webUserSqlMapDAO.insertUserAgreement(paramMap); map.put("msgCode", Constants.OK); diff --git a/src/main/resources/mappers/WebUserSqlMap.xml b/src/main/resources/mappers/WebUserSqlMap.xml index 9187d4f..cd7e23a 100644 --- a/src/main/resources/mappers/WebUserSqlMap.xml +++ b/src/main/resources/mappers/WebUserSqlMap.xml @@ -800,6 +800,7 @@ ,MA.RETURN_RELATIONSHIP AS "returnRelationship" ,MA.RETURN_PHONE_NUMBER AS "returnPhoneNumber" ,DATE_FORMAT(MA.WRITE_DATE, '%Y-%m-%d') AS "writeDate" + ,SIGNATURE_BASE64 AS "signatureBase64" FROM MU_USER_AGREEMENT AS MA WHERE MA.USE_YN = 'Y' AND MA.MU_USER_AGREEMENT_ID = #{muUserAgreementId} @@ -956,6 +957,9 @@ ,REG_DATE ,MOD_ID ,MOD_DATE + + ,SIGNATURE_BASE64 + )VALUES( #{id} ,#{muUserId} @@ -1033,6 +1037,9 @@ ,NOW() ,#{loginMemberId} ,NOW() + + ,#{signatureBase64} + ) diff --git a/src/main/resources/static/js/web/user/popup/userAgreementInsertPop.js b/src/main/resources/static/js/web/user/popup/userAgreementInsertPop.js index f18e98a..da42a0a 100644 --- a/src/main/resources/static/js/web/user/popup/userAgreementInsertPop.js +++ b/src/main/resources/static/js/web/user/popup/userAgreementInsertPop.js @@ -236,8 +236,9 @@ let agreementInsertModal = { // 서명 관련 let canvas = selectForm.find('.signPad canvas')[0]; let context = canvas.getContext('2d'); - let dataUrl = canvas.toDataURL(); - let blob = dataURItoBlob(dataUrl); + let signatureBase64 = canvas.toDataURL(); + + //let blob = dataURItoBlob(dataUrl); // 고객명 let userName = selectForm.find('span.userName').text(); @@ -774,7 +775,7 @@ let agreementInsertModal = { } } - if(!fn_emptyCheck(blob) || fn_isCanvasBlank(canvas)){ + if(!fn_emptyCheck(signatureBase64) || fn_isCanvasBlank(canvas)){ modalEvent.warning("등록", "서명 정보가 없습니다."); return; } @@ -786,7 +787,7 @@ let agreementInsertModal = { formData.append("type", type); formData.append("renewalCycle", renewalCycle); formData.append("expirationDate", expirationDate); - formData.append("file", blob); + //formData.append("file", blob); formData.append("userName", userName); formData.append("agree3Yn", agree3Yn); @@ -834,6 +835,7 @@ let agreementInsertModal = { formData.append("userName2", userName2); formData.append("relationship", relationship); formData.append("phoneNumber2", phoneNumber2); + formData.append("signatureBase64", signatureBase64); $.ajax({ url: encodeURI('/webuser/insertUserAgreement.do'), diff --git a/src/main/resources/static/js/web/user/popup/userAgreementSelectPop.js b/src/main/resources/static/js/web/user/popup/userAgreementSelectPop.js index 78bcbcb..96f7df6 100644 --- a/src/main/resources/static/js/web/user/popup/userAgreementSelectPop.js +++ b/src/main/resources/static/js/web/user/popup/userAgreementSelectPop.js @@ -241,8 +241,20 @@ let agreementSelectModal = { $("#agreementSelectModal input[name='modalUserName']").val(userName); $("#agreementSelectModal input[name='modalPtUserName']").val(ptUserName); + let signatureBase64 = data.rows[0].signatureBase64; + if (signatureBase64) { + // 1. 만약 DB에 "data:image/png;base64,..." 접두사까지 저장했다면 그대로 사용 + // 2. 만약 순수 암호문만 저장했다면 앞에 접두사를 붙여줍니다. + let imgSrc = signatureBase64.startsWith('data:image') + ? signatureBase64 + : 'data:image/png;base64,' + signatureBase64; + // 이미지 태그를 생성하여 서명 박스에 삽입 + $("#agreementSelectModal .signImgBox").html('서명'); + } else { + $("#agreementSelectModal .signImgBox").html('서명 없음'); + } // 서명 이미지 - $("#agreementSelectModal .signImgBox").html('sign'); + //$("#agreementSelectModal .signImgBox").html('sign'); // 폼 값 셋팅 let agreementIndex = $("#agreementSelectModal #modalAgreementType").next('.select_option_list').find('input[value="'+type+'"]').closest('li').index();