sales-frontend-bridge 0.0.41 → 0.0.42

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -2188,10 +2188,10 @@ var NativeBridgeOz = class extends CommonBridge {
2188
2188
  return this.core.callToTarget("hideMissingFieldWarning");
2189
2189
  }
2190
2190
  /**
2191
- * 미입력 서식 Alert 표시하기
2191
+ * Alert 표시하기
2192
2192
  */
2193
- async showMissingAlert() {
2194
- return this.core.callToTarget("showMissingAlert");
2193
+ async showAlert(options) {
2194
+ return this.core.callToTarget("showAlert", options);
2195
2195
  }
2196
2196
  // TODO: 필요 플러그인들 추가
2197
2197
  };
@@ -2216,25 +2216,24 @@ var commentPenGreen = [...commentPenDefaultParam, `comment.highlightpen_color=81
2216
2216
  var commentPenEraser = [`comment.selectedpen=eraser`];
2217
2217
 
2218
2218
  // src/oz/constant/oz-param.ts
2219
- var commonOzParam = [
2220
- `information.debug = true`,
2219
+ var informationOzParam = [
2220
+ // 뷰어 콘솔 로그 정보의 수준(Level)을 설정합니다. - 뷰어 수행에 필요한 디버깅용 메시지를 자바 콘솔에 출력
2221
+ `information.debug = true`
2222
+ ];
2223
+ var globalOzParam = [
2224
+ // 다중 보고서 호출 시 부모 보고서의 파라미터 값을 자식 보고서가 상속받을지 여부를 설정합니다.
2221
2225
  `global.inheritparameter=true`,
2222
- `global.concatpage=true`,
2226
+ // 멀티 보고서를 하나의 보고서처럼 사용할지 여부를 설정합니다.
2227
+ `global.concatpage=true`
2228
+ // 멀티 보고서를 하나의 보고서처럼 설정한 경우 각각의 보고서별로 페이지 번호를 부여할지 여부를 설정합니다.
2223
2229
  // `global.eachpagenumberatconcatpage=true`,
2230
+ ];
2231
+ var eformOzParam = [
2224
2232
  `eform.signpad_type=embedded`,
2225
2233
  // `eform.signpad_type=keypad`,
2226
2234
  `eform.show_prev_next_input=true`,
2227
2235
  // `eform.signpad_prev_next_iconposition=sign_top_left`,
2228
2236
  `eform.signpad_prev_next_iconposition=sign_top`,
2229
- `eform.inputcomponent_toolbar_button_json=${JSON.stringify({
2230
- // 서명패드 버튼 배열 수정
2231
- "all": {
2232
- // 왼쪽에 [이전, 창닫기]
2233
- "left_align": "prev,ok",
2234
- // 오른쪽에 [다시쓰기, 성명,서명 불러오기, 다음]
2235
- "right_align": "clear,reusablesign,next"
2236
- }
2237
- })}`,
2238
2237
  `eform.signpad_show_draw_erase_button=false`,
2239
2238
  `eform.signpad_viewtype=keepratioandfittoframe`,
2240
2239
  `eform.radiobutton_type=ensurevisible_at_prev_next`,
@@ -2242,9 +2241,19 @@ var commonOzParam = [
2242
2241
  `eform.prev_next_required_rule=required_only`,
2243
2242
  `eform.prev_next_navigation_rule=required_only`,
2244
2243
  `eform.prev_next_constraint_rule=empty_only`,
2244
+ `eform.imagepicker_camera_iconposition = camera_top`,
2245
+ `eform.inputeventcommand=true`,
2245
2246
  // 서명 입력 중간중간에 onValueChanged가 호출 / 디폴트는 입력끝나고 창이 닫힐때 호출
2246
2247
  `eform.onvaluechanged_callrule_json=${JSON.stringify({ signpad: "changed" })}`,
2247
- `viewer.pagenavigate_by_prev_next=true`,
2248
+ `eform.inputcomponent_toolbar_button_json=${JSON.stringify({
2249
+ // 서명패드 버튼 배열 수정
2250
+ "all": {
2251
+ // 왼쪽에 [이전, 창닫기]
2252
+ "left_align": "prev,ok",
2253
+ // 오른쪽에 [다시쓰기, 성명,서명 불러오기, 다음]
2254
+ "right_align": "clear,reusablesign,next"
2255
+ }
2256
+ })}`,
2248
2257
  `eform.imagepicker_id_info=${JSON.stringify({
2249
2258
  ids: [
2250
2259
  {
@@ -2299,9 +2308,10 @@ var commonOzParam = [
2299
2308
  { id: "5", name: "\uC678\uAD6D\uC778\uB4F1\uB85D\uC99D \uB4B7\uBA74", size: "86x54", margin: "3", mask: [{ name: "\uC678\uAD6D\uC778", area: "0,0,0,0" }] }
2300
2309
  ],
2301
2310
  choice: { title: "\uC2E0\uBD84\uC99D\uC744 \uC120\uD0DD\uD558\uC138\uC694.", items: "1,2,3,4,5" }
2302
- })}`,
2303
- `eform.imagepicker_camera_iconposition = camera_top`,
2304
- `eform.inputeventcommand=true`,
2311
+ })}`
2312
+ ];
2313
+ var viewerOzPram = [
2314
+ `viewer.pagenavigate_by_prev_next=true`,
2305
2315
  // `viewer.zoombymouse=false`,
2306
2316
  `viewer.pagedisplay=singlepagecontinuous`,
2307
2317
  `viewer.usetoolbar=false`,
@@ -2315,9 +2325,19 @@ var commonOzParam = [
2315
2325
  `viewer.exportcommand=true`,
2316
2326
  `viewer.errorcommand=true`,
2317
2327
  `viewer.reportchangecommand=true`,
2318
- `viewer.pagebindcommandinterval=500`,
2328
+ `viewer.pagebindcommandinterval=500`
2329
+ ];
2330
+ var ozdOzParam = [
2331
+ // connection.args=key=value로 넘기는 정보들은 ozr에서만 유효하나 ozd에서도 유효하도록 허용
2319
2332
  `ozd.allowreplaceformparam=true`
2320
2333
  ];
2334
+ var commonOzParam = [
2335
+ ...informationOzParam,
2336
+ ...globalOzParam,
2337
+ ...eformOzParam,
2338
+ ...viewerOzPram,
2339
+ ...ozdOzParam
2340
+ ];
2321
2341
 
2322
2342
  // src/oz/constant/pdf-param.ts
2323
2343
  var commonPdfExportParam = [
@@ -2337,20 +2357,19 @@ var commonPdfExportParam = [
2337
2357
  var wrapperStyle = { display: "flex", flexFlow: "column", gap: "10px" };
2338
2358
  var btnStyle = { border: "1px solid red", minHeight: "40px" };
2339
2359
  var DownloadDocumentList = [
2340
- { name: "[A0010]\uCCAD\uC57D\uC11C", doc: [{ docCode: "A0010", fileID: "Fgn33vCNaUbAHKkAA", imageFormatCode: "RT003001", imageDocumentTypeCode: "IT00", filePath: "", startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false }
2341
- // { name: '[A0100]비교안내확인서', doc: [{ docCode: 'A0100', fileID: '0IxCQWCNZNl-SKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
2342
- // { name: '[A0900]상품설명서', doc: [{ docCode: 'A0900', fileID: 'IRnk0TCNZNzt7KkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
2343
- // { name: '[A1500]청약부속정보확인서', doc: [{ docCode: 'A1500', fileID: 'uw0KChCNZP1eFKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
2344
- // { name: '[A2215]보험계약대출이행관리동의서', doc: [{ docCode: 'A2215', fileID: 'QIpmmaCNZRWRuKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
2345
- // { name: '[A2800]계약전알릴의무', doc: [{ docCode: 'A2800', fileID: 'ZirCIiCNZRbLFKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
2346
- // { name: '[A3503]청약서별지(변액용)', doc: [{ docCode: 'A3503', fileID: '7Cm2jqCNZRimXKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
2347
- // { name: '[B0101]보험계약체결동의서', doc: [{ docCode: 'B0101', fileID: 'g1oZeaCNZRrGhKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
2348
- // { name: '[C0400]계약체결이행동의서', doc: [{ docCode: 'C0400', fileID: 'eyBV4QCNalUwWKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
2349
- // { name: '[C0401]상품소개상세동의서', doc: [{ docCode: 'C0401', fileID: 'OqBHIjCNZS1BTKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
2350
- // { name: '[C1000]보험상품판매체크리스트', doc: [{ docCode: 'C1000', fileID: 'aSAXJOCNa8UgjKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
2351
- // { name: '[C1300]계약체결고지의무확인서', doc: [{ docCode: 'C1300', fileID: 'uz9gVwCNZTYsUKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
2352
- // { name: '[C1400]보험상품비교설명확인서', doc: [{ docCode: 'C1400', fileID: 'KFZ4kKCNZTb5CKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
2353
- // { name: '[A0010]청약서', doc: [{ docCode: 'A0010', fileID: 'Fgn33vCNaUbAHKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
2360
+ { name: "[A0010]\uCCAD\uC57D\uC11C", doc: [{ docCode: "A0010", fileID: "DnDwwjCNoyKPrKkAA", imageFormatCode: "RT003001", imageDocumentTypeCode: "IT00", filePath: "", startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
2361
+ // { name: '[A0100]비교안내확인서', doc: [{ docCode: 'A0100', fileID: 'WaFvafCNoyN9MKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
2362
+ // { name: '[A0900]상품설명서', doc: [{ docCode: 'A0900', fileID: 'DYYVmcCNoyVCIKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
2363
+ // { name: '[A1500]청약부속정보확인서', doc: [{ docCode: 'A1500', fileID: 's4reYCCNoyeMOKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
2364
+ // { name: '[A2215]보험계약대출이행관리동의서', doc: [{ docCode: 'A2215', fileID: 'iqcUYECNoyiEmKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
2365
+ // { name: '[A2800]계약전알릴의무', doc: [{ docCode: 'A2800', fileID: 'OAzjftCNoyn7MKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
2366
+ // { name: '[A3503]청약서별지(변액용)', doc: [{ docCode: 'A3503', fileID: 'gG68cJCNoyvItKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
2367
+ // { name: '[B0101]보험계약체결동의서', doc: [{ docCode: 'B0101', fileID: 'egYx4aCNoy7qbKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
2368
+ { name: "[C0400]\uACC4\uC57D\uCCB4\uACB0\uC774\uD589\uB3D9\uC758\uC11C", doc: [{ docCode: "C0400", fileID: "9ovagwCNoy-6DKkAA", imageFormatCode: "RT003001", imageDocumentTypeCode: "IT00", filePath: "", startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
2369
+ // { name: '[C0401]상품소개상세동의서', doc: [{ docCode: 'C0401', fileID: 'NQHHzNCNozQD9KkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
2370
+ { name: "[C1000]\uBCF4\uD5D8\uC0C1\uD488\uD310\uB9E4\uCCB4\uD06C\uB9AC\uC2A4\uD2B8", doc: [{ docCode: "C1000", fileID: "FSEeZ3CNozTrTKkAA", imageFormatCode: "RT003001", imageDocumentTypeCode: "IT00", filePath: "", startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false }
2371
+ // { name: '[C1300]계약체결고지의무확인서', doc: [{ docCode: 'C1300', fileID: 'D1MxpkCNozYJgKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
2372
+ // { name: '[C1400]보험상품비교설명확인서', doc: [{ docCode: 'C1400', fileID: 'v6vgqOCNozcBkKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
2354
2373
  ];
2355
2374
  var ExtraData = {
2356
2375
  // 문서코드
@@ -2756,6 +2775,8 @@ async function SignatureHandler({ type, btnID }) {
2756
2775
  }
2757
2776
  if (btnID === "signatureInProgress") {
2758
2777
  await SignatureInProgressHandler();
2778
+ } else if (btnID === "signatureInMissing") {
2779
+ await SignatureInMissingHandler();
2759
2780
  } else if (btnID === "signatureComplete") {
2760
2781
  await SignatureCompleteHandler();
2761
2782
  } else {
@@ -2768,6 +2789,20 @@ async function SignatureInProgressHandler() {
2768
2789
  await enableFocusOnValidation(reportCount);
2769
2790
  await validateAllPages(pageCount);
2770
2791
  }
2792
+ async function SignatureInMissingHandler() {
2793
+ const { data: { result } } = await Bridge.nativeOz.showAlert({
2794
+ title: "\uC785\uB825\uD558\uC9C0 \uC54A\uC740 \uD56D\uBAA9\uC774 \uC788\uC2B5\uB2C8\uB2E4",
2795
+ message: "\uD574\uB2F9 \uD56D\uBAA9\uC73C\uB85C \uC774\uB3D9\uD558\uC5EC \uC785\uB825\uC744 \uC644\uB8CC\uD574\uC8FC\uC138\uC694.",
2796
+ buttons: {
2797
+ close: true,
2798
+ main: "\uBBF8\uC785\uB825 \uD56D\uBAA9 \uC785\uB825\uD558\uAE30"
2799
+ }
2800
+ });
2801
+ if (result === "main") {
2802
+ return await SignatureInProgressHandler();
2803
+ }
2804
+ return;
2805
+ }
2771
2806
  async function SignatureCompleteHandler() {
2772
2807
  try {
2773
2808
  await Bridge.native.showLoader();
@@ -2785,7 +2820,7 @@ async function SignatureCompleteHandler() {
2785
2820
  await Bridge.nativeOz.createOzPdfViewer({ filePath });
2786
2821
  } catch (e) {
2787
2822
  if (e === "MissingAlert") {
2788
- await Bridge.nativeOz.showMissingAlert();
2823
+ await SignatureInMissingHandler();
2789
2824
  } else {
2790
2825
  alert("PDF export \uC911 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD558\uC600\uC2B5\uB2C8\uB2E4");
2791
2826
  }
@@ -2804,6 +2839,8 @@ async function SaveTotalPdf() {
2804
2839
  );
2805
2840
  const totalPage = await getTotalPageMemo();
2806
2841
  await Bridge.nativeOz.savePdf({
2842
+ // PDF 저장은 증번폴더/파일이름.pdf로 생성
2843
+ policyNumber,
2807
2844
  param: [
2808
2845
  // 저장할 파일명 설정
2809
2846
  `pdf.filename=${"total.pdf"}`,