@uxda/appkit 4.3.11 → 4.3.13
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/appkit.css +105 -12
- package/dist/index.js +1097 -407
- package/package.json +2 -5
- package/src/balance/api/index.ts +1 -1
- package/src/balance/components/PromoterCard.vue +1 -0
- package/src/notice/api/index.ts +1 -1
- package/src/notice/components/NoticeList2.vue +234 -73
- package/src/notice/components/useCommonList.ts +1 -0
- package/src/payment/api/endpoints.ts +2 -0
- package/src/payment/api/index.ts +2 -1
- package/src/payment/components/RechargeResult.vue +0 -1
- package/src/payment/components/TradeView.vue +329 -121
- package/src/payment/services/request-payment.ts +2 -0
- package/src/payment/types.ts +1 -0
- package/src/register/components/SelfRegistration.vue +1 -1
- package/src/shared/components/AppVerify.vue +15 -6
- package/src/shared/components/OcrBank.vue +202 -0
- package/src/shared/components/OcrBusinessLicense.vue +20 -37
- package/src/shared/components/OcrIcon.vue +105 -67
- package/src/shared/components/OcrInvoice.vue +322 -0
- package/src/shared/components/index.ts +3 -1
- package/src/shared/composables/index.ts +1 -0
- package/src/shared/composables/useCompress.ts +64 -0
- package/src/shared/composables/useUpload.ts +96 -51
- package/src/shared/http/Http.ts +1 -0
- package/src/shared/tracking/tracking-sdk.ts +0 -1
- package/src/shared/weixin/jssdk.ts +1 -0
- package/src/user/api/index.ts +1 -1
- package/src/user/components/UserAuth.vue +1 -1
- package/src/user/components/UserFeedback.vue +1 -0
- package/src/user/components/UserInfo.vue +2 -0
- package/types/global.d.ts +2 -0
package/dist/index.js
CHANGED
|
@@ -4,12 +4,12 @@ import '@nutui/nutui-taro/dist/packages/checkbox/style/css';
|
|
|
4
4
|
import { defineComponent, reactive, openBlock, createBlock, withCtx, createElementBlock, Fragment, renderList, normalizeClass, createElementVNode, toDisplayString, createTextVNode, ref, computed, onUnmounted, resolveDirective, createCommentVNode, withDirectives, renderSlot, createVNode, normalizeStyle, unref, isRef, onMounted, createStaticVNode, watch, vShow, mergeModels, useModel, resolveComponent, vModelText, watchPostEffect, withModifiers } from 'vue';
|
|
5
5
|
import '@nutui/nutui-taro/dist/packages/grid/style/css';
|
|
6
6
|
import '@nutui/nutui-taro/dist/packages/griditem/style/css';
|
|
7
|
-
import Taro, { showModal, getSystemInfoSync, getMenuButtonBoundingClientRect,
|
|
7
|
+
import Taro, { showModal, getSystemInfoSync, getMenuButtonBoundingClientRect, request as request$1, uploadFile, showToast, chooseMedia, chooseMessageFile, showLoading, hideLoading, getStorageSync, setStorageSync, getSystemInfo, getNetworkType, getEnv, getAccountInfoSync, getPerformance, onAppHide, useDidShow, onAppShow, onNetworkStatusChange, useRouter } from '@tarojs/taro';
|
|
8
8
|
import '@nutui/nutui-taro/dist/packages/popup/style/css';
|
|
9
9
|
import isMobilePhone from 'validator/es/lib/isMobilePhone';
|
|
10
10
|
import isIdentityCard from 'validator/es/lib/isIdentityCard';
|
|
11
11
|
import qs from 'qs';
|
|
12
|
-
import { NsForm, NsInput, NsButton, NsIcon, usePopup,
|
|
12
|
+
import { NsForm, NsInput, NsButton, useNutshell, NsIcon, usePopup, NsButtonGroup, usePaging, NsPage, NsTabs, NsPageContent, NsSkeleton, NsRepeator, NsCard, NsEmpty, NsCheckbox } from '@uxda/nutshell/taro';
|
|
13
13
|
import '@nutui/nutui-taro/dist/packages/actionsheet/style/css';
|
|
14
14
|
import pako from 'pako';
|
|
15
15
|
import dsBridge from 'dsbridge';
|
|
@@ -34,7 +34,7 @@ import '@nutui/nutui-taro/dist/packages/step/style/css';
|
|
|
34
34
|
|
|
35
35
|
const _hoisted_1$G = { class: "token-line number" };
|
|
36
36
|
const _hoisted_2$t = { class: "number" };
|
|
37
|
-
var script$
|
|
37
|
+
var script$O = /* @__PURE__ */ defineComponent({
|
|
38
38
|
__name: "AmountPicker",
|
|
39
39
|
props: {
|
|
40
40
|
items: { type: Array, required: true, default: () => [] },
|
|
@@ -107,7 +107,7 @@ var script$M = /* @__PURE__ */ defineComponent({
|
|
|
107
107
|
}
|
|
108
108
|
});
|
|
109
109
|
|
|
110
|
-
script$
|
|
110
|
+
script$O.__file = "src/payment/components/AmountPicker.vue";
|
|
111
111
|
|
|
112
112
|
const getSdkConfig = (appCode, url) => {
|
|
113
113
|
return new Promise((resolve, reject) => {
|
|
@@ -128,6 +128,7 @@ function requestWxH5Pay(options) {
|
|
|
128
128
|
title: "\u63D0\u793A",
|
|
129
129
|
content: "\u5F53\u524D\u73AF\u5883\u4E0D\u652F\u6301\u5FAE\u4FE1\u652F\u4ED8\uFF0C\u8BF7\u5728\u5FAE\u4FE1\u5185\u7F6E\u6D4F\u89C8\u5668\u4E2D\u6253\u5F00",
|
|
130
130
|
confirmText: "\u786E\u5B9A",
|
|
131
|
+
confirmColor: "#017fff",
|
|
131
132
|
success: () => {
|
|
132
133
|
}
|
|
133
134
|
});
|
|
@@ -310,71 +311,84 @@ function useEncode() {
|
|
|
310
311
|
};
|
|
311
312
|
}
|
|
312
313
|
|
|
313
|
-
const
|
|
314
|
-
|
|
315
|
-
const
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
}
|
|
325
|
-
const
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
314
|
+
const compressImageWithCanvas = (src, quality) => {
|
|
315
|
+
return new Promise((resolve, reject) => {
|
|
316
|
+
const img = new Image();
|
|
317
|
+
img.crossOrigin = "anonymous";
|
|
318
|
+
img.onload = () => {
|
|
319
|
+
try {
|
|
320
|
+
const canvas = document.createElement("canvas");
|
|
321
|
+
const ctx = canvas.getContext("2d");
|
|
322
|
+
if (!ctx) {
|
|
323
|
+
reject(new Error("\u65E0\u6CD5\u83B7\u53D6 canvas \u4E0A\u4E0B\u6587"));
|
|
324
|
+
return;
|
|
325
|
+
}
|
|
326
|
+
const maxWidth = 850;
|
|
327
|
+
const maxHeight = 850;
|
|
328
|
+
let width = img.width;
|
|
329
|
+
let height = img.height;
|
|
330
|
+
if (width > maxWidth || height > maxHeight) {
|
|
331
|
+
const ratio = Math.min(maxWidth / width, maxHeight / height);
|
|
332
|
+
width = width * ratio;
|
|
333
|
+
height = height * ratio;
|
|
334
|
+
}
|
|
335
|
+
canvas.width = width;
|
|
336
|
+
canvas.height = height;
|
|
337
|
+
ctx.drawImage(img, 0, 0, width, height);
|
|
338
|
+
canvas.toBlob(
|
|
339
|
+
(blob) => {
|
|
340
|
+
if (!blob) {
|
|
341
|
+
reject(new Error("\u56FE\u7247\u538B\u7F29\u5931\u8D25"));
|
|
342
|
+
return;
|
|
343
|
+
}
|
|
344
|
+
const compressedUrl = URL.createObjectURL(blob);
|
|
345
|
+
resolve(compressedUrl);
|
|
346
|
+
},
|
|
347
|
+
"image/jpeg",
|
|
348
|
+
quality / 100
|
|
349
|
+
);
|
|
350
|
+
} catch (error) {
|
|
351
|
+
reject(error);
|
|
352
|
+
}
|
|
353
|
+
};
|
|
354
|
+
img.onerror = () => {
|
|
355
|
+
reject(new Error("\u56FE\u7247\u52A0\u8F7D\u5931\u8D25"));
|
|
356
|
+
};
|
|
357
|
+
img.src = src;
|
|
358
|
+
});
|
|
343
359
|
};
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
360
|
+
async function compressImage(src, quality = 80) {
|
|
361
|
+
if (Taro.getEnv() === "WEB") {
|
|
362
|
+
try {
|
|
363
|
+
const compressedUrl = await compressImageWithCanvas(src, quality);
|
|
364
|
+
return { tempFilePath: compressedUrl };
|
|
365
|
+
} catch (error) {
|
|
366
|
+
console.error("\u56FE\u7247\u538B\u7F29\u5931\u8D25:", error);
|
|
367
|
+
return { tempFilePath: src };
|
|
368
|
+
}
|
|
369
|
+
} else {
|
|
347
370
|
return new Promise((resolve, reject) => {
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
objectNo: `min${Date.now()}`
|
|
354
|
-
},
|
|
355
|
-
header: {
|
|
356
|
-
...config.headers,
|
|
357
|
-
token: appkitOptions.tempToken() || appkitOptions.token()
|
|
371
|
+
Taro.compressImage({
|
|
372
|
+
src,
|
|
373
|
+
quality,
|
|
374
|
+
success: (res) => {
|
|
375
|
+
resolve(res);
|
|
358
376
|
},
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
try {
|
|
362
|
-
const response = JSON.parse(data);
|
|
363
|
-
console.log("===response", response);
|
|
364
|
-
resolve(transformFields(response.result));
|
|
365
|
-
} catch (e) {
|
|
366
|
-
reject({
|
|
367
|
-
message: "\u6587\u4EF6\u4E0A\u4F20\u5F02\u5E38"
|
|
368
|
-
});
|
|
369
|
-
}
|
|
377
|
+
fail: (res) => {
|
|
378
|
+
reject(res);
|
|
370
379
|
}
|
|
371
380
|
});
|
|
372
381
|
});
|
|
373
|
-
}
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
382
|
+
}
|
|
383
|
+
}
|
|
384
|
+
function getCompressQuality(size) {
|
|
385
|
+
let quality = 100;
|
|
386
|
+
const curSize = size / (1024 * 1024);
|
|
387
|
+
if (curSize > 6) {
|
|
388
|
+
quality = quality - (curSize - 6) / curSize * 100;
|
|
389
|
+
}
|
|
390
|
+
return quality;
|
|
391
|
+
}
|
|
378
392
|
|
|
379
393
|
const defaultCryptoConfig = {
|
|
380
394
|
maskField: "mask",
|
|
@@ -415,6 +429,25 @@ function useCrypto(config) {
|
|
|
415
429
|
};
|
|
416
430
|
}
|
|
417
431
|
|
|
432
|
+
const globalData = {};
|
|
433
|
+
|
|
434
|
+
const appKitOptions = {
|
|
435
|
+
app: () => "",
|
|
436
|
+
tenant: () => "",
|
|
437
|
+
token: () => "",
|
|
438
|
+
tempToken: () => "",
|
|
439
|
+
baseUrl: () => "",
|
|
440
|
+
401() {
|
|
441
|
+
},
|
|
442
|
+
gray: () => ""
|
|
443
|
+
};
|
|
444
|
+
const useAppKitOptions = () => {
|
|
445
|
+
if (!globalData.$appKitOptions) {
|
|
446
|
+
globalData.$appKitOptions = appKitOptions;
|
|
447
|
+
}
|
|
448
|
+
return globalData.$appKitOptions;
|
|
449
|
+
};
|
|
450
|
+
|
|
418
451
|
const defaultLogOptions = {
|
|
419
452
|
projectName: "ddyk-dev",
|
|
420
453
|
logStore: "ddjf-internet-web",
|
|
@@ -548,11 +581,59 @@ function useWxAuth() {
|
|
|
548
581
|
};
|
|
549
582
|
}
|
|
550
583
|
|
|
584
|
+
const mappings$1 = {
|
|
585
|
+
downloadUrl: "thrumb",
|
|
586
|
+
fileId: "id",
|
|
587
|
+
fileName: "name",
|
|
588
|
+
fileSize: "size",
|
|
589
|
+
fileSuffix: "ext",
|
|
590
|
+
fileType: "type",
|
|
591
|
+
originalUrl: "url"
|
|
592
|
+
};
|
|
593
|
+
const transformFields = (row) => {
|
|
594
|
+
return Object.fromEntries(Object.entries(row).map(([k, v]) => [mappings$1[k] || k, v]));
|
|
595
|
+
};
|
|
596
|
+
const useUpload = (config) => {
|
|
597
|
+
const appkitOptions = useAppKitOptions();
|
|
598
|
+
const upload = (url, file) => {
|
|
599
|
+
return new Promise((resolve, reject) => {
|
|
600
|
+
uploadFile({
|
|
601
|
+
url: config.baseUrl + url,
|
|
602
|
+
filePath: file.path,
|
|
603
|
+
name: "file",
|
|
604
|
+
formData: {
|
|
605
|
+
objectNo: `min${Date.now()}`,
|
|
606
|
+
appCode: config.headers?.appcode || appkitOptions.app()
|
|
607
|
+
},
|
|
608
|
+
header: {
|
|
609
|
+
...config.headers,
|
|
610
|
+
token: appkitOptions.tempToken() || appkitOptions.token()
|
|
611
|
+
},
|
|
612
|
+
success: (rsp) => {
|
|
613
|
+
const { data } = rsp;
|
|
614
|
+
try {
|
|
615
|
+
const response = JSON.parse(data);
|
|
616
|
+
console.log("===response", response);
|
|
617
|
+
resolve(transformFields(response.result));
|
|
618
|
+
} catch (e) {
|
|
619
|
+
reject({
|
|
620
|
+
message: "\u6587\u4EF6\u4E0A\u4F20\u5F02\u5E38"
|
|
621
|
+
});
|
|
622
|
+
}
|
|
623
|
+
}
|
|
624
|
+
});
|
|
625
|
+
});
|
|
626
|
+
};
|
|
627
|
+
return {
|
|
628
|
+
upload
|
|
629
|
+
};
|
|
630
|
+
};
|
|
631
|
+
|
|
551
632
|
const _hoisted_1$F = {
|
|
552
633
|
key: 0,
|
|
553
634
|
class: "page-title"
|
|
554
635
|
};
|
|
555
|
-
var script$
|
|
636
|
+
var script$N = /* @__PURE__ */ defineComponent({
|
|
556
637
|
__name: "PageHeader",
|
|
557
638
|
props: {
|
|
558
639
|
title: { type: String, required: false, default: "" },
|
|
@@ -609,10 +690,10 @@ var script$L = /* @__PURE__ */ defineComponent({
|
|
|
609
690
|
}
|
|
610
691
|
});
|
|
611
692
|
|
|
612
|
-
script$
|
|
693
|
+
script$N.__file = "src/shared/components/PageHeader.vue";
|
|
613
694
|
|
|
614
695
|
const _hoisted_1$E = { class: "drawer-body" };
|
|
615
|
-
var script$
|
|
696
|
+
var script$M = /* @__PURE__ */ defineComponent({
|
|
616
697
|
__name: "AppDrawer",
|
|
617
698
|
props: {
|
|
618
699
|
modelValue: { type: Boolean, required: true },
|
|
@@ -636,7 +717,7 @@ var script$K = /* @__PURE__ */ defineComponent({
|
|
|
636
717
|
"onUpdate:visible": onVisibleChange
|
|
637
718
|
}, {
|
|
638
719
|
default: withCtx(() => [
|
|
639
|
-
createVNode(script$
|
|
720
|
+
createVNode(script$N, {
|
|
640
721
|
title: __props.title,
|
|
641
722
|
style: normalizeStyle(unref(Taro).getEnv() !== "WEB" ? "" : "--height: 40px"),
|
|
642
723
|
onClose: onPageHeaderClose
|
|
@@ -652,18 +733,18 @@ var script$K = /* @__PURE__ */ defineComponent({
|
|
|
652
733
|
}
|
|
653
734
|
});
|
|
654
735
|
|
|
655
|
-
script$
|
|
736
|
+
script$M.__file = "src/shared/components/AppDrawer.vue";
|
|
656
737
|
|
|
657
738
|
const _hoisted_1$D = { class: "app-verify column" };
|
|
658
739
|
const _hoisted_2$s = { class: "caption" };
|
|
659
740
|
const _hoisted_3$m = { class: "number" };
|
|
660
|
-
const _hoisted_4$
|
|
661
|
-
const _hoisted_5$
|
|
741
|
+
const _hoisted_4$i = { class: "form-btn" };
|
|
742
|
+
const _hoisted_5$e = {
|
|
662
743
|
key: 1,
|
|
663
744
|
class: "caption"
|
|
664
745
|
};
|
|
665
746
|
const _hoisted_6$a = { class: "row buttons" };
|
|
666
|
-
var script$
|
|
747
|
+
var script$L = /* @__PURE__ */ defineComponent({
|
|
667
748
|
__name: "AppVerify",
|
|
668
749
|
props: {
|
|
669
750
|
phone: { type: String, required: true },
|
|
@@ -738,7 +819,7 @@ var script$J = /* @__PURE__ */ defineComponent({
|
|
|
738
819
|
method: (value) => value.length === 6
|
|
739
820
|
}]
|
|
740
821
|
}, null, 8, ["modelValue", "rules"]),
|
|
741
|
-
createElementVNode("div", _hoisted_4$
|
|
822
|
+
createElementVNode("div", _hoisted_4$i, [
|
|
742
823
|
!sent.value ? withDirectives((openBlock(), createBlock(
|
|
743
824
|
unref(NsButton),
|
|
744
825
|
{
|
|
@@ -757,7 +838,7 @@ var script$J = /* @__PURE__ */ defineComponent({
|
|
|
757
838
|
]) : createCommentVNode("v-if", true),
|
|
758
839
|
sent.value ? (openBlock(), createElementBlock(
|
|
759
840
|
"div",
|
|
760
|
-
_hoisted_5$
|
|
841
|
+
_hoisted_5$e,
|
|
761
842
|
toDisplayString(countdown.value) + "s\u540E\u91CD\u65B0\u53D1\u9001",
|
|
762
843
|
1
|
|
763
844
|
/* TEXT */
|
|
@@ -770,6 +851,7 @@ var script$J = /* @__PURE__ */ defineComponent({
|
|
|
770
851
|
createElementVNode("div", _hoisted_6$a, [
|
|
771
852
|
withDirectives((openBlock(), createBlock(unref(NsButton), {
|
|
772
853
|
class: "cancel-btn",
|
|
854
|
+
r: 20,
|
|
773
855
|
onClick: _cache[2] || (_cache[2] = ($event) => emits("cancel"))
|
|
774
856
|
}, {
|
|
775
857
|
default: withCtx(() => [..._cache[3] || (_cache[3] = [
|
|
@@ -786,6 +868,7 @@ var script$J = /* @__PURE__ */ defineComponent({
|
|
|
786
868
|
]),
|
|
787
869
|
withDirectives((openBlock(), createBlock(unref(NsButton), {
|
|
788
870
|
color: "primary",
|
|
871
|
+
r: 20,
|
|
789
872
|
onClick: onOk
|
|
790
873
|
}, {
|
|
791
874
|
default: withCtx(() => [..._cache[4] || (_cache[4] = [
|
|
@@ -806,10 +889,10 @@ var script$J = /* @__PURE__ */ defineComponent({
|
|
|
806
889
|
}
|
|
807
890
|
});
|
|
808
891
|
|
|
809
|
-
script$
|
|
892
|
+
script$L.__file = "src/shared/components/AppVerify.vue";
|
|
810
893
|
|
|
811
894
|
const _hoisted_1$C = { key: 0 };
|
|
812
|
-
var script$
|
|
895
|
+
var script$K = /* @__PURE__ */ defineComponent({
|
|
813
896
|
__name: "index",
|
|
814
897
|
props: {
|
|
815
898
|
text: { type: String, required: false },
|
|
@@ -876,7 +959,7 @@ var script$I = /* @__PURE__ */ defineComponent({
|
|
|
876
959
|
}
|
|
877
960
|
});
|
|
878
961
|
|
|
879
|
-
script$
|
|
962
|
+
script$K.__file = "src/components/dd-notice-bar/index.vue";
|
|
880
963
|
|
|
881
964
|
const typeMappings = {
|
|
882
965
|
CZ: "\u5145\u503C",
|
|
@@ -1039,7 +1122,7 @@ function useHttp$3() {
|
|
|
1039
1122
|
const headers = {
|
|
1040
1123
|
Token: appkitOptions.tempToken() || appkitOptions.token(),
|
|
1041
1124
|
Appcode: appkitOptions.app(),
|
|
1042
|
-
|
|
1125
|
+
tid: appkitOptions.tenant(),
|
|
1043
1126
|
gray: appkitOptions.gray ? appkitOptions.gray() : "0"
|
|
1044
1127
|
};
|
|
1045
1128
|
const $http = createHttp({
|
|
@@ -1081,7 +1164,7 @@ function useHttp$3() {
|
|
|
1081
1164
|
return $http;
|
|
1082
1165
|
}
|
|
1083
1166
|
|
|
1084
|
-
var script$
|
|
1167
|
+
var script$J = /* @__PURE__ */ defineComponent({
|
|
1085
1168
|
__name: "DeviceVersion",
|
|
1086
1169
|
props: {
|
|
1087
1170
|
versions: { type: String, required: false, default: "{}" }
|
|
@@ -1128,7 +1211,7 @@ var script$H = /* @__PURE__ */ defineComponent({
|
|
|
1128
1211
|
}
|
|
1129
1212
|
});
|
|
1130
1213
|
return (_ctx, _cache) => {
|
|
1131
|
-
return showAlert.value ? (openBlock(), createBlock(script$
|
|
1214
|
+
return showAlert.value ? (openBlock(), createBlock(script$K, {
|
|
1132
1215
|
key: 0,
|
|
1133
1216
|
showClose: "",
|
|
1134
1217
|
style: normalizeStyle(topStype.value),
|
|
@@ -1139,102 +1222,83 @@ var script$H = /* @__PURE__ */ defineComponent({
|
|
|
1139
1222
|
}
|
|
1140
1223
|
});
|
|
1141
1224
|
|
|
1142
|
-
script$
|
|
1225
|
+
script$J.__file = "src/shared/components/DeviceVersion.vue";
|
|
1143
1226
|
|
|
1144
|
-
var script$
|
|
1227
|
+
var script$I = /* @__PURE__ */ defineComponent({
|
|
1145
1228
|
__name: "OcrIcon",
|
|
1146
1229
|
props: {
|
|
1147
1230
|
disabled: { type: Boolean, required: false, default: false },
|
|
1148
1231
|
side: { type: String, required: false, default: "face" },
|
|
1149
|
-
|
|
1232
|
+
className: { type: String, required: false, default: "" },
|
|
1233
|
+
uploadUrl: { type: String, required: false, default: "/saas-base/file/uploadPublic" },
|
|
1234
|
+
customUpload: { type: Function, required: false },
|
|
1235
|
+
hasUploadVo: { type: Boolean, required: false, default: true },
|
|
1236
|
+
customClick: { type: Boolean, required: false, default: false }
|
|
1150
1237
|
},
|
|
1151
1238
|
emits: ["complete"],
|
|
1152
|
-
setup(__props, { emit: __emit }) {
|
|
1239
|
+
setup(__props, { expose: __expose, emit: __emit }) {
|
|
1153
1240
|
const appKitOptions = useAppKitOptions();
|
|
1241
|
+
const $http = useHttp$3(), $n = useNutshell();
|
|
1154
1242
|
const emits = __emit;
|
|
1155
1243
|
const props = __props;
|
|
1156
|
-
async function taroImgCompress(src, quality = 80) {
|
|
1157
|
-
if (Taro.getEnv() === "WEB") {
|
|
1158
|
-
return src;
|
|
1159
|
-
} else {
|
|
1160
|
-
return new Promise((resolve, reject) => {
|
|
1161
|
-
Taro.compressImage({
|
|
1162
|
-
src,
|
|
1163
|
-
quality,
|
|
1164
|
-
success: (res) => {
|
|
1165
|
-
resolve(res);
|
|
1166
|
-
},
|
|
1167
|
-
fail: (res) => {
|
|
1168
|
-
reject(res);
|
|
1169
|
-
}
|
|
1170
|
-
});
|
|
1171
|
-
});
|
|
1172
|
-
}
|
|
1173
|
-
}
|
|
1174
|
-
function getCompressQuality(size) {
|
|
1175
|
-
let quality = 100;
|
|
1176
|
-
const curSize = size / (1024 * 1024);
|
|
1177
|
-
if (curSize > 6) {
|
|
1178
|
-
quality = quality - (curSize - 6) / curSize * 100;
|
|
1179
|
-
}
|
|
1180
|
-
return quality;
|
|
1181
|
-
}
|
|
1182
1244
|
function allTrim(str) {
|
|
1183
1245
|
return str.replace(/\s+/g, "");
|
|
1184
1246
|
}
|
|
1185
1247
|
async function onUploadFile(csRes) {
|
|
1186
1248
|
let result = null;
|
|
1187
1249
|
try {
|
|
1188
|
-
console.log("===\u4E0A\u4F20", csRes);
|
|
1189
1250
|
let { path, size, tempFilePath } = csRes.tempFiles[0];
|
|
1190
|
-
|
|
1191
|
-
|
|
1192
|
-
|
|
1193
|
-
filePath
|
|
1194
|
-
|
|
1195
|
-
filePath = path || tempFilePath;
|
|
1251
|
+
const compressImg = await compressImage(path || tempFilePath, getCompressQuality(size)) || {};
|
|
1252
|
+
const filePath = compressImg.tempFilePath || path;
|
|
1253
|
+
if (props.customUpload) {
|
|
1254
|
+
props.customUpload(filePath);
|
|
1255
|
+
return;
|
|
1196
1256
|
}
|
|
1197
|
-
|
|
1198
|
-
showLoading({ title: "\u8EAB\u4EFD\u8BC1\u8BC6\u522B\u4E2D.." });
|
|
1257
|
+
showLoading({ title: "\u8EAB\u4EFD\u8BC1\u8BC6\u522B\u4E2D..", mask: true });
|
|
1199
1258
|
const session = appKitOptions.token();
|
|
1200
1259
|
const baseUrl = appKitOptions.baseUrl();
|
|
1201
1260
|
const upRes = await uploadFile({
|
|
1202
|
-
url: baseUrl
|
|
1261
|
+
url: `${baseUrl}${!props.hasUploadVo ? props.uploadUrl : "/hkapprove/ocr/idcard"}`,
|
|
1203
1262
|
filePath,
|
|
1204
1263
|
name: "file",
|
|
1205
1264
|
formData: {
|
|
1206
1265
|
objectNo: `min${Date.now()}`,
|
|
1207
|
-
side: props.side
|
|
1266
|
+
side: props.side,
|
|
1267
|
+
appCode: appKitOptions.app()
|
|
1208
1268
|
},
|
|
1209
1269
|
header: {
|
|
1210
1270
|
token: session || ""
|
|
1211
1271
|
}
|
|
1212
1272
|
});
|
|
1213
|
-
hideLoading();
|
|
1214
1273
|
const res = JSON.parse(upRes.data);
|
|
1215
1274
|
if (res.code === "200") {
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
|
|
1227
|
-
|
|
1228
|
-
|
|
1229
|
-
|
|
1230
|
-
|
|
1231
|
-
|
|
1232
|
-
|
|
1233
|
-
|
|
1234
|
-
|
|
1235
|
-
|
|
1275
|
+
if (props.hasUploadVo) {
|
|
1276
|
+
hideLoading();
|
|
1277
|
+
const faceInfo = res.result.faceInfo || {};
|
|
1278
|
+
const backInfo = res.result.backInfo || {};
|
|
1279
|
+
result = {
|
|
1280
|
+
faceInfo: {
|
|
1281
|
+
name: allTrim(faceInfo.name || ""),
|
|
1282
|
+
certNo: allTrim(faceInfo.num || ""),
|
|
1283
|
+
address: allTrim(faceInfo.address || "")
|
|
1284
|
+
},
|
|
1285
|
+
backInfo: {
|
|
1286
|
+
startDate: backInfo?.startDate || "",
|
|
1287
|
+
endDate: backInfo?.endDate || ""
|
|
1288
|
+
},
|
|
1289
|
+
fileUploadVO: res.result.fileUploadVO || {}
|
|
1290
|
+
};
|
|
1291
|
+
if (props.side === "face" && !result.faceInfo.name && !result.faceInfo.certNo) {
|
|
1292
|
+
showToast({ title: "\u8BC6\u522B\u5931\u8D25\uFF0C\u8BF7\u91CD\u8BD5", icon: "none" });
|
|
1293
|
+
}
|
|
1294
|
+
if (props.side === "back" && !result.backInfo?.startDate && !result.backInfo?.endDate) {
|
|
1295
|
+
showToast({ title: "\u8BC6\u522B\u5931\u8D25\uFF0C\u8BF7\u91CD\u8BD5", icon: "none" });
|
|
1296
|
+
}
|
|
1297
|
+
} else {
|
|
1298
|
+
await getOcrInfo(res.result);
|
|
1236
1299
|
}
|
|
1237
1300
|
} else {
|
|
1301
|
+
hideLoading();
|
|
1238
1302
|
showToast({
|
|
1239
1303
|
title: res.msg,
|
|
1240
1304
|
icon: "error"
|
|
@@ -1244,7 +1308,42 @@ var script$G = /* @__PURE__ */ defineComponent({
|
|
|
1244
1308
|
hideLoading();
|
|
1245
1309
|
console.log(err);
|
|
1246
1310
|
}
|
|
1247
|
-
emits("complete", result);
|
|
1311
|
+
props.hasUploadVo && (result?.faceInfo.name || result?.backInfo.startDate) && emits("complete", result);
|
|
1312
|
+
}
|
|
1313
|
+
async function getOcrInfo(file) {
|
|
1314
|
+
try {
|
|
1315
|
+
const res = await $http.get("/hkbase/common/idCard", {
|
|
1316
|
+
fileUrl: typeof file === "string" ? file : file.originalUrl,
|
|
1317
|
+
side: props.side
|
|
1318
|
+
});
|
|
1319
|
+
hideLoading();
|
|
1320
|
+
if (props.side === "face" && !res?.name || props.side === "back" && !res?.signDate) {
|
|
1321
|
+
$n.dialog({
|
|
1322
|
+
title: "\u8BC6\u522B\u5931\u8D25",
|
|
1323
|
+
message: `\u60A8\u4E0A\u4F20\u7684\u56FE\u7247\u53EF\u80FD\u4E0D\u591F\u6E05\u6670\u6216\u4E0E\u5F53\u524D\u529F\u80FD\u4E0D\u7B26\uFF0C\u8BF7\u91CD\u65B0\u4E0A\u4F20\u4E00\u5F20\u6E05\u6670\u3001\u5B8C\u6574\u7684\u56FE\u7247\u3002\u8C22\u8C22\uFF01`,
|
|
1324
|
+
okText: "\u6211\u77E5\u9053\u4E86",
|
|
1325
|
+
cancelText: ""
|
|
1326
|
+
});
|
|
1327
|
+
return;
|
|
1328
|
+
}
|
|
1329
|
+
emits("complete", {
|
|
1330
|
+
faceInfo: {
|
|
1331
|
+
name: allTrim(res?.name || ""),
|
|
1332
|
+
certNo: allTrim(res?.cardNumber || ""),
|
|
1333
|
+
address: allTrim(res?.address || "")
|
|
1334
|
+
},
|
|
1335
|
+
backInfo: {
|
|
1336
|
+
startDate: res?.expireDate || "",
|
|
1337
|
+
endDate: res?.signDate || ""
|
|
1338
|
+
},
|
|
1339
|
+
fileUploadVO: {
|
|
1340
|
+
fileUrl: typeof file === "string" ? file : file.originalUrl,
|
|
1341
|
+
fileKey: typeof file === "string" ? file : file.fileId
|
|
1342
|
+
}
|
|
1343
|
+
});
|
|
1344
|
+
} catch (err) {
|
|
1345
|
+
hideLoading();
|
|
1346
|
+
}
|
|
1248
1347
|
}
|
|
1249
1348
|
const activeSheetVisible = ref(false);
|
|
1250
1349
|
const actionSheetMenus = [
|
|
@@ -1282,21 +1381,545 @@ var script$G = /* @__PURE__ */ defineComponent({
|
|
|
1282
1381
|
onUploadFile(csRes);
|
|
1283
1382
|
}
|
|
1284
1383
|
}
|
|
1285
|
-
async function
|
|
1384
|
+
async function onUpload() {
|
|
1385
|
+
if (props.disabled) return;
|
|
1386
|
+
if (Taro.getEnv() === "WEB") {
|
|
1387
|
+
const csRes = await chooseMedia({
|
|
1388
|
+
count: 1,
|
|
1389
|
+
sourceType: ["album"],
|
|
1390
|
+
// "camera" | "album"
|
|
1391
|
+
maxDuration: 60
|
|
1392
|
+
// 使用duration属性判断是图片还是视频,图片没有该属性
|
|
1393
|
+
});
|
|
1394
|
+
onUploadFile(csRes);
|
|
1395
|
+
return;
|
|
1396
|
+
}
|
|
1397
|
+
activeSheetVisible.value = true;
|
|
1398
|
+
}
|
|
1399
|
+
__expose({
|
|
1400
|
+
onUpload
|
|
1401
|
+
});
|
|
1402
|
+
return (_ctx, _cache) => {
|
|
1403
|
+
const _component_nut_action_sheet = ActionSheet;
|
|
1404
|
+
const _directive_track_click = resolveDirective("track-click");
|
|
1405
|
+
return openBlock(), createElementBlock(
|
|
1406
|
+
Fragment,
|
|
1407
|
+
null,
|
|
1408
|
+
[
|
|
1409
|
+
withDirectives((openBlock(), createElementBlock(
|
|
1410
|
+
"div",
|
|
1411
|
+
{
|
|
1412
|
+
class: normalizeClass(["ocr-icon", [__props.disabled ? "disabled" : "", __props.className]]),
|
|
1413
|
+
onClick: _cache[0] || (_cache[0] = ($event) => !__props.customClick ? onUpload() : null)
|
|
1414
|
+
},
|
|
1415
|
+
[
|
|
1416
|
+
renderSlot(_ctx.$slots, "icon", {}, () => [
|
|
1417
|
+
createVNode(unref(NsIcon), { name: "https://cdn.ddjf.com/static/images/beidouxing/ocr-icon.png" })
|
|
1418
|
+
])
|
|
1419
|
+
],
|
|
1420
|
+
2
|
|
1421
|
+
/* CLASS */
|
|
1422
|
+
)), [
|
|
1423
|
+
[_directive_track_click, "\u8EAB\u4EFD\u8BC1\u8BC6\u522B-\u70B9\u51FB"]
|
|
1424
|
+
]),
|
|
1425
|
+
createVNode(_component_nut_action_sheet, {
|
|
1426
|
+
visible: activeSheetVisible.value,
|
|
1427
|
+
"onUpdate:visible": _cache[1] || (_cache[1] = ($event) => activeSheetVisible.value = $event),
|
|
1428
|
+
"menu-items": actionSheetMenus,
|
|
1429
|
+
onChoose: chooseImages,
|
|
1430
|
+
"cancel-txt": "\u53D6\u6D88"
|
|
1431
|
+
}, null, 8, ["visible"])
|
|
1432
|
+
],
|
|
1433
|
+
64
|
|
1434
|
+
/* STABLE_FRAGMENT */
|
|
1435
|
+
);
|
|
1436
|
+
};
|
|
1437
|
+
}
|
|
1438
|
+
});
|
|
1439
|
+
|
|
1440
|
+
script$I.__file = "src/shared/components/OcrIcon.vue";
|
|
1441
|
+
|
|
1442
|
+
var script$H = /* @__PURE__ */ defineComponent({
|
|
1443
|
+
__name: "OcrBank",
|
|
1444
|
+
props: {
|
|
1445
|
+
disabled: { type: Boolean, required: false, default: false },
|
|
1446
|
+
class: { type: String, required: false, default: "" },
|
|
1447
|
+
uploadUrl: { type: String, required: false, default: "/hkbase/file/uploadFile" },
|
|
1448
|
+
customClick: { type: Boolean, required: false, default: false }
|
|
1449
|
+
},
|
|
1450
|
+
emits: ["complete"],
|
|
1451
|
+
setup(__props, { expose: __expose, emit: __emit }) {
|
|
1452
|
+
const appKitOptions = useAppKitOptions();
|
|
1453
|
+
const $http = useHttp$3(), $n = useNutshell();
|
|
1454
|
+
const emits = __emit;
|
|
1455
|
+
const props = __props;
|
|
1456
|
+
async function onUploadFile(csRes) {
|
|
1457
|
+
try {
|
|
1458
|
+
let { path, size, tempFilePath } = csRes.tempFiles[0];
|
|
1459
|
+
const compressImg = await compressImage(path || tempFilePath, getCompressQuality(size)) || {};
|
|
1460
|
+
const filePath = compressImg.tempFilePath || path;
|
|
1461
|
+
showLoading({ title: "\u94F6\u884C\u5361\u8BC6\u522B\u4E2D..", mask: true });
|
|
1462
|
+
const session = appKitOptions.token();
|
|
1463
|
+
const baseUrl = appKitOptions.baseUrl();
|
|
1464
|
+
const upRes = await uploadFile({
|
|
1465
|
+
url: baseUrl + props.uploadUrl,
|
|
1466
|
+
filePath,
|
|
1467
|
+
name: "file",
|
|
1468
|
+
formData: {
|
|
1469
|
+
objectNo: `min${Date.now()}`,
|
|
1470
|
+
appCode: appKitOptions.app()
|
|
1471
|
+
},
|
|
1472
|
+
header: {
|
|
1473
|
+
token: session || ""
|
|
1474
|
+
}
|
|
1475
|
+
});
|
|
1476
|
+
const res = JSON.parse(upRes.data);
|
|
1477
|
+
if (res.code === "200") {
|
|
1478
|
+
await getBankCardInfo(res.result);
|
|
1479
|
+
} else {
|
|
1480
|
+
hideLoading();
|
|
1481
|
+
showToast({
|
|
1482
|
+
title: res.msg,
|
|
1483
|
+
icon: "error"
|
|
1484
|
+
});
|
|
1485
|
+
}
|
|
1486
|
+
} catch (err) {
|
|
1487
|
+
hideLoading();
|
|
1488
|
+
console.log(err);
|
|
1489
|
+
}
|
|
1490
|
+
}
|
|
1491
|
+
async function getBankCardInfo(file) {
|
|
1492
|
+
try {
|
|
1493
|
+
const res = await $http.get("/hkbase/common/bankCard", {
|
|
1494
|
+
fileUrl: typeof file === "string" ? file : file.originalUrl
|
|
1495
|
+
});
|
|
1496
|
+
hideLoading();
|
|
1497
|
+
if (res && !res.bankCardNumber) {
|
|
1498
|
+
$n.dialog({
|
|
1499
|
+
title: "\u8BC6\u522B\u5931\u8D25",
|
|
1500
|
+
message: `\u60A8\u4E0A\u4F20\u7684\u56FE\u7247\u53EF\u80FD\u4E0D\u591F\u6E05\u6670\u6216\u4E0E\u5F53\u524D\u529F\u80FD\u4E0D\u7B26\uFF0C\u8BF7\u91CD\u65B0\u4E0A\u4F20\u4E00\u5F20\u6E05\u6670\u3001\u5B8C\u6574\u7684\u56FE\u7247\u3002\u8C22\u8C22\uFF01`,
|
|
1501
|
+
okText: "\u6211\u77E5\u9053\u4E86",
|
|
1502
|
+
cancelText: ""
|
|
1503
|
+
});
|
|
1504
|
+
return;
|
|
1505
|
+
}
|
|
1506
|
+
emits("complete", {
|
|
1507
|
+
...res,
|
|
1508
|
+
fileUrl: typeof file === "string" ? file : file.originalUrl,
|
|
1509
|
+
fileKey: typeof file === "string" ? file : file.fileId
|
|
1510
|
+
});
|
|
1511
|
+
} catch (err) {
|
|
1512
|
+
hideLoading();
|
|
1513
|
+
}
|
|
1514
|
+
}
|
|
1515
|
+
const activeSheetVisible = ref(false);
|
|
1516
|
+
const actionSheetMenus = [
|
|
1517
|
+
{
|
|
1518
|
+
name: "\u62CD\u6444",
|
|
1519
|
+
type: "camera"
|
|
1520
|
+
},
|
|
1521
|
+
{
|
|
1522
|
+
name: "\u4ECE\u76F8\u518C\u9009\u62E9",
|
|
1523
|
+
type: "album"
|
|
1524
|
+
},
|
|
1525
|
+
{
|
|
1526
|
+
name: "\u4ECE\u804A\u5929\u4F1A\u8BDD\u9009\u62E9",
|
|
1527
|
+
type: "message"
|
|
1528
|
+
}
|
|
1529
|
+
];
|
|
1530
|
+
if (Taro.getEnv() === "WEB") {
|
|
1531
|
+
actionSheetMenus.pop();
|
|
1532
|
+
}
|
|
1533
|
+
async function chooseImages(item) {
|
|
1534
|
+
if (["camera", "album"].includes(item.type)) {
|
|
1535
|
+
const csRes = await chooseMedia({
|
|
1536
|
+
count: 1,
|
|
1537
|
+
sourceType: [item.type],
|
|
1538
|
+
// "camera" | "album"
|
|
1539
|
+
maxDuration: 60
|
|
1540
|
+
// 使用duration属性判断是图片还是视频,图片没有该属性
|
|
1541
|
+
});
|
|
1542
|
+
onUploadFile(csRes);
|
|
1543
|
+
} else {
|
|
1544
|
+
const csRes = await chooseMessageFile({
|
|
1545
|
+
count: 1,
|
|
1546
|
+
type: "image"
|
|
1547
|
+
});
|
|
1548
|
+
onUploadFile(csRes);
|
|
1549
|
+
}
|
|
1550
|
+
}
|
|
1551
|
+
async function onUpload() {
|
|
1552
|
+
if (props.disabled) return;
|
|
1553
|
+
if (Taro.getEnv() === "WEB") {
|
|
1554
|
+
const csRes = await chooseMedia({
|
|
1555
|
+
count: 1,
|
|
1556
|
+
sourceType: ["album"],
|
|
1557
|
+
// "camera" | "album"
|
|
1558
|
+
maxDuration: 60
|
|
1559
|
+
// 使用duration属性判断是图片还是视频,图片没有该属性
|
|
1560
|
+
});
|
|
1561
|
+
onUploadFile(csRes);
|
|
1562
|
+
return;
|
|
1563
|
+
}
|
|
1564
|
+
activeSheetVisible.value = true;
|
|
1565
|
+
}
|
|
1566
|
+
__expose({
|
|
1567
|
+
onUpload
|
|
1568
|
+
});
|
|
1569
|
+
return (_ctx, _cache) => {
|
|
1570
|
+
const _component_nut_action_sheet = ActionSheet;
|
|
1571
|
+
const _directive_track_click = resolveDirective("track-click");
|
|
1572
|
+
return openBlock(), createElementBlock(
|
|
1573
|
+
Fragment,
|
|
1574
|
+
null,
|
|
1575
|
+
[
|
|
1576
|
+
withDirectives((openBlock(), createElementBlock(
|
|
1577
|
+
"div",
|
|
1578
|
+
{
|
|
1579
|
+
class: normalizeClass(["ocr-bank", [__props.disabled ? "disabled" : ""]]),
|
|
1580
|
+
onClick: _cache[0] || (_cache[0] = ($event) => !__props.customClick ? onUpload() : null)
|
|
1581
|
+
},
|
|
1582
|
+
[
|
|
1583
|
+
renderSlot(_ctx.$slots, "icon", {}, () => [
|
|
1584
|
+
createVNode(unref(NsIcon), { name: "https://cdn.ddjf.com/static/images/beidouxing/ocr-icon.png" })
|
|
1585
|
+
])
|
|
1586
|
+
],
|
|
1587
|
+
2
|
|
1588
|
+
/* CLASS */
|
|
1589
|
+
)), [
|
|
1590
|
+
[_directive_track_click, "\u94F6\u884C\u5361\u8BC6\u522B-\u70B9\u51FB"]
|
|
1591
|
+
]),
|
|
1592
|
+
createVNode(_component_nut_action_sheet, {
|
|
1593
|
+
visible: activeSheetVisible.value,
|
|
1594
|
+
"onUpdate:visible": _cache[1] || (_cache[1] = ($event) => activeSheetVisible.value = $event),
|
|
1595
|
+
"menu-items": actionSheetMenus,
|
|
1596
|
+
onChoose: chooseImages,
|
|
1597
|
+
"cancel-txt": "\u53D6\u6D88"
|
|
1598
|
+
}, null, 8, ["visible"])
|
|
1599
|
+
],
|
|
1600
|
+
64
|
|
1601
|
+
/* STABLE_FRAGMENT */
|
|
1602
|
+
);
|
|
1603
|
+
};
|
|
1604
|
+
}
|
|
1605
|
+
});
|
|
1606
|
+
|
|
1607
|
+
script$H.__file = "src/shared/components/OcrBank.vue";
|
|
1608
|
+
|
|
1609
|
+
var script$G = /* @__PURE__ */ defineComponent({
|
|
1610
|
+
__name: "OcrBusinessLicense",
|
|
1611
|
+
props: {
|
|
1612
|
+
disabled: { type: Boolean, required: true, default: false },
|
|
1613
|
+
customClick: { type: Boolean, required: false, default: false }
|
|
1614
|
+
},
|
|
1615
|
+
emits: ["complete"],
|
|
1616
|
+
setup(__props, { expose: __expose, emit: __emit }) {
|
|
1617
|
+
const appKitOptions = useAppKitOptions();
|
|
1618
|
+
const emits = __emit;
|
|
1619
|
+
const props = __props;
|
|
1620
|
+
function allTrim(str) {
|
|
1621
|
+
return str.replace(/\s+/g, "");
|
|
1622
|
+
}
|
|
1623
|
+
async function onUpload() {
|
|
1624
|
+
if (props.disabled) {
|
|
1625
|
+
return;
|
|
1626
|
+
}
|
|
1627
|
+
let result = null;
|
|
1628
|
+
try {
|
|
1629
|
+
const csRes = await chooseMedia({
|
|
1630
|
+
count: 1,
|
|
1631
|
+
sourceType: ["album", "camera"]
|
|
1632
|
+
});
|
|
1633
|
+
let { size, tempFilePath } = csRes.tempFiles[0];
|
|
1634
|
+
const compressImg = await compressImage(tempFilePath, getCompressQuality(size)) || {};
|
|
1635
|
+
const filePath = compressImg.tempFilePath;
|
|
1636
|
+
showLoading({ title: "\u8425\u4E1A\u6267\u7167\u8BC6\u522B\u4E2D..", mask: true });
|
|
1637
|
+
const session = appKitOptions.token();
|
|
1638
|
+
const baseUrl = appKitOptions.baseUrl();
|
|
1639
|
+
const upRes = await uploadFile({
|
|
1640
|
+
url: baseUrl + "/promoact/common/parseBusinessLicense",
|
|
1641
|
+
filePath,
|
|
1642
|
+
name: "file",
|
|
1643
|
+
formData: {
|
|
1644
|
+
objectNo: `min${Date.now()}`,
|
|
1645
|
+
appCode: appKitOptions.app()
|
|
1646
|
+
},
|
|
1647
|
+
header: {
|
|
1648
|
+
token: session || ""
|
|
1649
|
+
}
|
|
1650
|
+
});
|
|
1651
|
+
hideLoading();
|
|
1652
|
+
const res = JSON.parse(upRes.data);
|
|
1653
|
+
if (res.code === "200") {
|
|
1654
|
+
const faceInfo = res.result || {};
|
|
1655
|
+
result = {
|
|
1656
|
+
companyName: allTrim(faceInfo.companyName || ""),
|
|
1657
|
+
idCardNo: allTrim(faceInfo.idCardNo || ""),
|
|
1658
|
+
legalPersonName: allTrim(faceInfo.legalPersonName || ""),
|
|
1659
|
+
fileId: faceInfo.fileId,
|
|
1660
|
+
originalUrl: faceInfo.originalUrl,
|
|
1661
|
+
downloadUrl: faceInfo.downloadUrl
|
|
1662
|
+
};
|
|
1663
|
+
console.log("===\u8BC6\u522B", result);
|
|
1664
|
+
if (!result.companyName && !result.idCardNo) {
|
|
1665
|
+
showToast({ title: "\u8BC6\u522B\u5931\u8D25\uFF0C\u8BF7\u91CD\u8BD5", icon: "none" });
|
|
1666
|
+
}
|
|
1667
|
+
} else {
|
|
1668
|
+
showToast({
|
|
1669
|
+
title: res.msg,
|
|
1670
|
+
icon: "error"
|
|
1671
|
+
});
|
|
1672
|
+
}
|
|
1673
|
+
} catch (err) {
|
|
1674
|
+
hideLoading();
|
|
1675
|
+
console.log(err);
|
|
1676
|
+
}
|
|
1677
|
+
emits("complete", result);
|
|
1678
|
+
}
|
|
1679
|
+
__expose({
|
|
1680
|
+
onUpload
|
|
1681
|
+
});
|
|
1682
|
+
return (_ctx, _cache) => {
|
|
1683
|
+
const _directive_track_click = resolveDirective("track-click");
|
|
1684
|
+
return withDirectives((openBlock(), createElementBlock(
|
|
1685
|
+
"div",
|
|
1686
|
+
{
|
|
1687
|
+
class: normalizeClass([["ocr-business-license", __props.disabled ? "disabled" : ""], "ocr-icon"]),
|
|
1688
|
+
onClick: _cache[0] || (_cache[0] = ($event) => !__props.customClick ? onUpload() : null)
|
|
1689
|
+
},
|
|
1690
|
+
[
|
|
1691
|
+
renderSlot(_ctx.$slots, "icon", {}, () => [
|
|
1692
|
+
createVNode(unref(NsIcon), { name: "https://cdn.ddjf.com/static/images/beidouxing/ocr-icon.png" })
|
|
1693
|
+
])
|
|
1694
|
+
],
|
|
1695
|
+
2
|
|
1696
|
+
/* CLASS */
|
|
1697
|
+
)), [
|
|
1698
|
+
[_directive_track_click, "\u8425\u4E1A\u6267\u7167\u8BC6\u522B-\u70B9\u51FB"]
|
|
1699
|
+
]);
|
|
1700
|
+
};
|
|
1701
|
+
}
|
|
1702
|
+
});
|
|
1703
|
+
|
|
1704
|
+
script$G.__file = "src/shared/components/OcrBusinessLicense.vue";
|
|
1705
|
+
|
|
1706
|
+
var script$F = /* @__PURE__ */ defineComponent({
|
|
1707
|
+
__name: "OcrInvoice",
|
|
1708
|
+
props: {
|
|
1709
|
+
disabled: { type: Boolean, required: false, default: false },
|
|
1710
|
+
side: { type: String, required: false, default: "face" },
|
|
1711
|
+
className: { type: String, required: false, default: "" },
|
|
1712
|
+
customUpload: { type: Function, required: false },
|
|
1713
|
+
uploadUrl: { type: String, required: false, default: "/hkbase/file/uploadFile" },
|
|
1714
|
+
customClick: { type: Boolean, required: false, default: false }
|
|
1715
|
+
},
|
|
1716
|
+
emits: ["complete"],
|
|
1717
|
+
setup(__props, { expose: __expose, emit: __emit }) {
|
|
1718
|
+
const appKitOptions = useAppKitOptions();
|
|
1719
|
+
const $http = useHttp$3(), $n = useNutshell();
|
|
1720
|
+
const emits = __emit;
|
|
1721
|
+
const props = __props;
|
|
1722
|
+
function getFileType(filePath, fileName) {
|
|
1723
|
+
const lowerPath = filePath.toLowerCase();
|
|
1724
|
+
const lowerName = (fileName || "").toLowerCase();
|
|
1725
|
+
if (lowerPath.endsWith(".pdf") || lowerName.endsWith(".pdf")) {
|
|
1726
|
+
return "pdf";
|
|
1727
|
+
}
|
|
1728
|
+
const imageExtensions = [".jpg", ".jpeg", ".png", ".gif", ".bmp", ".webp"];
|
|
1729
|
+
if (imageExtensions.some((ext) => lowerPath.endsWith(ext) || lowerName.endsWith(ext))) {
|
|
1730
|
+
return "img";
|
|
1731
|
+
}
|
|
1732
|
+
return "img";
|
|
1733
|
+
}
|
|
1734
|
+
async function onUploadFile(csRes, fileType) {
|
|
1735
|
+
try {
|
|
1736
|
+
let { path, size, tempFilePath, name } = csRes.tempFiles[0];
|
|
1737
|
+
const originalPath = path || tempFilePath;
|
|
1738
|
+
const detectedFileType = fileType || getFileType(originalPath, name);
|
|
1739
|
+
let filePath = originalPath;
|
|
1740
|
+
if (detectedFileType === "img") {
|
|
1741
|
+
const compressImg = await compressImage(originalPath, getCompressQuality(size)) || {};
|
|
1742
|
+
filePath = compressImg.tempFilePath || originalPath;
|
|
1743
|
+
}
|
|
1744
|
+
if (props.customUpload) {
|
|
1745
|
+
props.customUpload(filePath, detectedFileType);
|
|
1746
|
+
return;
|
|
1747
|
+
}
|
|
1748
|
+
showLoading({ title: "\u53D1\u7968\u8BC6\u522B\u4E2D..", mask: true });
|
|
1749
|
+
const session = appKitOptions.token();
|
|
1750
|
+
const baseUrl = appKitOptions.baseUrl();
|
|
1751
|
+
const upRes = await uploadFile({
|
|
1752
|
+
url: `${baseUrl}${props.uploadUrl}`,
|
|
1753
|
+
filePath,
|
|
1754
|
+
name: "file",
|
|
1755
|
+
formData: {
|
|
1756
|
+
objectNo: `min${Date.now()}`,
|
|
1757
|
+
appCode: appKitOptions.app()
|
|
1758
|
+
},
|
|
1759
|
+
header: {
|
|
1760
|
+
token: session || ""
|
|
1761
|
+
}
|
|
1762
|
+
});
|
|
1763
|
+
const res = JSON.parse(upRes.data);
|
|
1764
|
+
if (res.code === "200") {
|
|
1765
|
+
await getOcrInfo(res.result, detectedFileType);
|
|
1766
|
+
} else {
|
|
1767
|
+
hideLoading();
|
|
1768
|
+
showToast({
|
|
1769
|
+
title: res.msg,
|
|
1770
|
+
icon: "error"
|
|
1771
|
+
});
|
|
1772
|
+
}
|
|
1773
|
+
} catch (err) {
|
|
1774
|
+
hideLoading();
|
|
1775
|
+
console.log(err);
|
|
1776
|
+
}
|
|
1777
|
+
}
|
|
1778
|
+
async function getOcrInfo(file, fileType = "img") {
|
|
1779
|
+
try {
|
|
1780
|
+
const fileUrl = typeof file === "string" ? file : file.originalUrl;
|
|
1781
|
+
const res = await $http.get("/hkbase/common/vatInvoice", {
|
|
1782
|
+
fileUrl,
|
|
1783
|
+
fileType
|
|
1784
|
+
});
|
|
1785
|
+
hideLoading();
|
|
1786
|
+
if (!res?.purchaserRegisterNum) {
|
|
1787
|
+
$n.dialog({
|
|
1788
|
+
title: "\u8BC6\u522B\u5931\u8D25",
|
|
1789
|
+
message: `\u60A8\u4E0A\u4F20\u7684${fileType === "pdf" ? "\u6587\u4EF6" : "\u56FE\u7247"}\u53EF\u80FD\u4E0D\u591F\u6E05\u6670\u6216\u4E0E\u5F53\u524D\u529F\u80FD\u4E0D\u7B26\uFF0C\u8BF7\u91CD\u65B0\u4E0A\u4F20\u4E00\u5F20\u6E05\u6670\u3001\u5B8C\u6574\u7684${fileType === "pdf" ? "PDF\u6587\u4EF6" : "\u56FE\u7247"}\u3002\u8C22\u8C22\uFF01`,
|
|
1790
|
+
okText: "\u6211\u77E5\u9053\u4E86",
|
|
1791
|
+
cancelText: ""
|
|
1792
|
+
});
|
|
1793
|
+
return;
|
|
1794
|
+
}
|
|
1795
|
+
emits("complete", {
|
|
1796
|
+
invoiceDate: res?.invoiceDate,
|
|
1797
|
+
invoiceNum: res?.invoiceNum,
|
|
1798
|
+
invoiceNumConfirm: res?.invoiceNumConfirm,
|
|
1799
|
+
invoiceType: res?.invoiceType,
|
|
1800
|
+
noteDrawer: res?.noteDrawer,
|
|
1801
|
+
purchaserBank: res?.purchaserBank,
|
|
1802
|
+
purchaserName: res?.purchaserName,
|
|
1803
|
+
purchaserRegisterNum: res?.purchaserRegisterNum,
|
|
1804
|
+
remarks: res?.remarks,
|
|
1805
|
+
sellerName: res?.sellerName,
|
|
1806
|
+
sellerRegisterNum: res?.sellerRegisterNum,
|
|
1807
|
+
serviceType: res?.serviceType,
|
|
1808
|
+
totalAmount: res?.totalAmount,
|
|
1809
|
+
totalTax: res?.totalTax,
|
|
1810
|
+
fileUrl,
|
|
1811
|
+
fileType,
|
|
1812
|
+
fileKey: typeof file === "string" ? file : file.fileId
|
|
1813
|
+
});
|
|
1814
|
+
} catch (err) {
|
|
1815
|
+
hideLoading();
|
|
1816
|
+
}
|
|
1817
|
+
}
|
|
1818
|
+
const activeSheetVisible = ref(false);
|
|
1819
|
+
const actionSheetMenus = [
|
|
1820
|
+
{
|
|
1821
|
+
name: "\u62CD\u6444",
|
|
1822
|
+
type: "camera"
|
|
1823
|
+
},
|
|
1824
|
+
{
|
|
1825
|
+
name: "\u4ECE\u76F8\u518C\u9009\u62E9",
|
|
1826
|
+
type: "album"
|
|
1827
|
+
},
|
|
1828
|
+
{
|
|
1829
|
+
name: "\u4ECE\u804A\u5929\u4F1A\u8BDD\u9009\u62E9",
|
|
1830
|
+
type: "message"
|
|
1831
|
+
},
|
|
1832
|
+
{
|
|
1833
|
+
name: "\u9009\u62E9\u6587\u4EF6",
|
|
1834
|
+
type: "file"
|
|
1835
|
+
}
|
|
1836
|
+
];
|
|
1837
|
+
if (Taro.getEnv() === "WEB") {
|
|
1838
|
+
actionSheetMenus.splice(2, 1);
|
|
1839
|
+
}
|
|
1840
|
+
async function chooseImages(item) {
|
|
1841
|
+
if (["camera", "album"].includes(item.type)) {
|
|
1842
|
+
const csRes = await chooseMedia({
|
|
1843
|
+
count: 1,
|
|
1844
|
+
sourceType: [item.type],
|
|
1845
|
+
// "camera" | "album"
|
|
1846
|
+
maxDuration: 60
|
|
1847
|
+
// 使用duration属性判断是图片还是视频,图片没有该属性
|
|
1848
|
+
});
|
|
1849
|
+
onUploadFile(csRes);
|
|
1850
|
+
} else if (item.type === "message") {
|
|
1851
|
+
const csRes = await chooseMessageFile({
|
|
1852
|
+
count: 1,
|
|
1853
|
+
type: "image"
|
|
1854
|
+
});
|
|
1855
|
+
onUploadFile(csRes);
|
|
1856
|
+
} else if (item.type === "file") {
|
|
1857
|
+
const csRes = await chooseMessageFile({
|
|
1858
|
+
count: 1,
|
|
1859
|
+
type: "file"
|
|
1860
|
+
});
|
|
1861
|
+
onUploadFile(csRes);
|
|
1862
|
+
}
|
|
1863
|
+
}
|
|
1864
|
+
function chooseFileInWeb() {
|
|
1865
|
+
return new Promise((resolve, reject) => {
|
|
1866
|
+
const input = document.createElement("input");
|
|
1867
|
+
input.type = "file";
|
|
1868
|
+
input.accept = "image/*,.pdf";
|
|
1869
|
+
input.style.display = "none";
|
|
1870
|
+
input.onchange = async (e) => {
|
|
1871
|
+
const file = e.target?.files?.[0];
|
|
1872
|
+
if (!file) {
|
|
1873
|
+
document.body.removeChild(input);
|
|
1874
|
+
resolve();
|
|
1875
|
+
return;
|
|
1876
|
+
}
|
|
1877
|
+
let fileType = "img";
|
|
1878
|
+
if (file.type === "application/pdf" || file.name.toLowerCase().endsWith(".pdf")) {
|
|
1879
|
+
fileType = "pdf";
|
|
1880
|
+
}
|
|
1881
|
+
const filePath = URL.createObjectURL(file);
|
|
1882
|
+
try {
|
|
1883
|
+
const csRes = {
|
|
1884
|
+
tempFiles: [{
|
|
1885
|
+
path: filePath,
|
|
1886
|
+
tempFilePath: filePath,
|
|
1887
|
+
size: file.size,
|
|
1888
|
+
name: file.name
|
|
1889
|
+
}]
|
|
1890
|
+
};
|
|
1891
|
+
await onUploadFile(csRes, fileType);
|
|
1892
|
+
resolve();
|
|
1893
|
+
} catch (error) {
|
|
1894
|
+
reject(error);
|
|
1895
|
+
} finally {
|
|
1896
|
+
document.body.removeChild(input);
|
|
1897
|
+
URL.revokeObjectURL(filePath);
|
|
1898
|
+
}
|
|
1899
|
+
};
|
|
1900
|
+
input.oncancel = () => {
|
|
1901
|
+
document.body.removeChild(input);
|
|
1902
|
+
resolve();
|
|
1903
|
+
};
|
|
1904
|
+
document.body.appendChild(input);
|
|
1905
|
+
input.click();
|
|
1906
|
+
});
|
|
1907
|
+
}
|
|
1908
|
+
async function onUpload() {
|
|
1286
1909
|
if (props.disabled) return;
|
|
1287
1910
|
if (Taro.getEnv() === "WEB") {
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
|
-
// 使用duration属性判断是图片还是视频,图片没有该属性
|
|
1294
|
-
});
|
|
1295
|
-
onUploadFile(csRes);
|
|
1911
|
+
try {
|
|
1912
|
+
await chooseFileInWeb();
|
|
1913
|
+
} catch (err) {
|
|
1914
|
+
console.error("\u6587\u4EF6\u9009\u62E9\u5931\u8D25:", err);
|
|
1915
|
+
}
|
|
1296
1916
|
return;
|
|
1297
1917
|
}
|
|
1298
1918
|
activeSheetVisible.value = true;
|
|
1299
1919
|
}
|
|
1920
|
+
__expose({
|
|
1921
|
+
onUpload
|
|
1922
|
+
});
|
|
1300
1923
|
return (_ctx, _cache) => {
|
|
1301
1924
|
const _component_nut_action_sheet = ActionSheet;
|
|
1302
1925
|
const _directive_track_click = resolveDirective("track-click");
|
|
@@ -1307,8 +1930,8 @@ var script$G = /* @__PURE__ */ defineComponent({
|
|
|
1307
1930
|
withDirectives((openBlock(), createElementBlock(
|
|
1308
1931
|
"div",
|
|
1309
1932
|
{
|
|
1310
|
-
class: normalizeClass(["ocr-
|
|
1311
|
-
onClick:
|
|
1933
|
+
class: normalizeClass(["ocr-invoice", [__props.disabled ? "disabled" : "", __props.className]]),
|
|
1934
|
+
onClick: _cache[0] || (_cache[0] = ($event) => !__props.customClick ? onUpload() : null)
|
|
1312
1935
|
},
|
|
1313
1936
|
[
|
|
1314
1937
|
renderSlot(_ctx.$slots, "icon", {}, () => [
|
|
@@ -1318,11 +1941,11 @@ var script$G = /* @__PURE__ */ defineComponent({
|
|
|
1318
1941
|
2
|
|
1319
1942
|
/* CLASS */
|
|
1320
1943
|
)), [
|
|
1321
|
-
[_directive_track_click, "\
|
|
1944
|
+
[_directive_track_click, "\u53D1\u7968\u8BC6\u522B-\u70B9\u51FB"]
|
|
1322
1945
|
]),
|
|
1323
1946
|
createVNode(_component_nut_action_sheet, {
|
|
1324
1947
|
visible: activeSheetVisible.value,
|
|
1325
|
-
"onUpdate:visible": _cache[
|
|
1948
|
+
"onUpdate:visible": _cache[1] || (_cache[1] = ($event) => activeSheetVisible.value = $event),
|
|
1326
1949
|
"menu-items": actionSheetMenus,
|
|
1327
1950
|
onChoose: chooseImages,
|
|
1328
1951
|
"cancel-txt": "\u53D6\u6D88"
|
|
@@ -1335,125 +1958,7 @@ var script$G = /* @__PURE__ */ defineComponent({
|
|
|
1335
1958
|
}
|
|
1336
1959
|
});
|
|
1337
1960
|
|
|
1338
|
-
script$
|
|
1339
|
-
|
|
1340
|
-
var script$F = /* @__PURE__ */ defineComponent({
|
|
1341
|
-
__name: "OcrBusinessLicense",
|
|
1342
|
-
props: {
|
|
1343
|
-
disabled: { type: Boolean, required: true }
|
|
1344
|
-
},
|
|
1345
|
-
emits: ["complete"],
|
|
1346
|
-
setup(__props, { emit: __emit }) {
|
|
1347
|
-
const appKitOptions = useAppKitOptions();
|
|
1348
|
-
const emits = __emit;
|
|
1349
|
-
const props = __props;
|
|
1350
|
-
async function taroImgCompress(src, quality = 80) {
|
|
1351
|
-
return new Promise((resolve, reject) => {
|
|
1352
|
-
Taro.compressImage({
|
|
1353
|
-
src,
|
|
1354
|
-
quality,
|
|
1355
|
-
success: (res) => {
|
|
1356
|
-
resolve(res);
|
|
1357
|
-
},
|
|
1358
|
-
fail: (res) => {
|
|
1359
|
-
reject(res);
|
|
1360
|
-
}
|
|
1361
|
-
});
|
|
1362
|
-
});
|
|
1363
|
-
}
|
|
1364
|
-
function getCompressQuality(size) {
|
|
1365
|
-
let quality = 100;
|
|
1366
|
-
const curSize = size / (1024 * 1024);
|
|
1367
|
-
if (curSize > 6) {
|
|
1368
|
-
quality = quality - (curSize - 6) / curSize * 100;
|
|
1369
|
-
}
|
|
1370
|
-
return quality;
|
|
1371
|
-
}
|
|
1372
|
-
function allTrim(str) {
|
|
1373
|
-
return str.replace(/\s+/g, "");
|
|
1374
|
-
}
|
|
1375
|
-
async function onIconClick() {
|
|
1376
|
-
if (props.disabled) {
|
|
1377
|
-
return;
|
|
1378
|
-
}
|
|
1379
|
-
console.log("===onIconClick");
|
|
1380
|
-
let result = null;
|
|
1381
|
-
try {
|
|
1382
|
-
const csRes = await chooseMedia({
|
|
1383
|
-
count: 1,
|
|
1384
|
-
sourceType: ["album", "camera"]
|
|
1385
|
-
});
|
|
1386
|
-
let { size, tempFilePath } = csRes.tempFiles[0];
|
|
1387
|
-
let filePath;
|
|
1388
|
-
if (Taro.getEnv() !== "WEB") {
|
|
1389
|
-
const compressImg = await taroImgCompress(tempFilePath, getCompressQuality(size)) || {};
|
|
1390
|
-
filePath = compressImg.tempFilePath;
|
|
1391
|
-
} else {
|
|
1392
|
-
filePath = tempFilePath;
|
|
1393
|
-
}
|
|
1394
|
-
showLoading({ title: "\u8425\u4E1A\u6267\u7167\u8BC6\u522B\u4E2D.." });
|
|
1395
|
-
const session = appKitOptions.token();
|
|
1396
|
-
const baseUrl = appKitOptions.baseUrl();
|
|
1397
|
-
const upRes = await uploadFile({
|
|
1398
|
-
url: baseUrl + "/promoact/common/parseBusinessLicense",
|
|
1399
|
-
filePath,
|
|
1400
|
-
name: "file",
|
|
1401
|
-
formData: {
|
|
1402
|
-
objectNo: `min${Date.now()}`
|
|
1403
|
-
},
|
|
1404
|
-
header: {
|
|
1405
|
-
token: session || ""
|
|
1406
|
-
}
|
|
1407
|
-
});
|
|
1408
|
-
hideLoading();
|
|
1409
|
-
const res = JSON.parse(upRes.data);
|
|
1410
|
-
if (res.code === "200") {
|
|
1411
|
-
const faceInfo = res.result || {};
|
|
1412
|
-
result = {
|
|
1413
|
-
companyName: allTrim(faceInfo.companyName || ""),
|
|
1414
|
-
idCardNo: allTrim(faceInfo.idCardNo || ""),
|
|
1415
|
-
legalPersonName: allTrim(faceInfo.legalPersonName || ""),
|
|
1416
|
-
fileId: faceInfo.fileId,
|
|
1417
|
-
originalUrl: faceInfo.originalUrl,
|
|
1418
|
-
downloadUrl: faceInfo.downloadUrl
|
|
1419
|
-
};
|
|
1420
|
-
console.log("===\u8BC6\u522B", result);
|
|
1421
|
-
if (!result.companyName && !result.idCardNo) {
|
|
1422
|
-
showToast({ title: "\u8BC6\u522B\u5931\u8D25\uFF0C\u8BF7\u91CD\u8BD5", icon: "none" });
|
|
1423
|
-
}
|
|
1424
|
-
} else {
|
|
1425
|
-
showToast({
|
|
1426
|
-
title: res.msg,
|
|
1427
|
-
icon: "error"
|
|
1428
|
-
});
|
|
1429
|
-
}
|
|
1430
|
-
} catch (err) {
|
|
1431
|
-
hideLoading();
|
|
1432
|
-
console.log(err);
|
|
1433
|
-
}
|
|
1434
|
-
emits("complete", result);
|
|
1435
|
-
}
|
|
1436
|
-
return (_ctx, _cache) => {
|
|
1437
|
-
const _directive_track_click = resolveDirective("track-click");
|
|
1438
|
-
return withDirectives((openBlock(), createElementBlock(
|
|
1439
|
-
"div",
|
|
1440
|
-
{
|
|
1441
|
-
class: normalizeClass([["ocr-business-license", __props.disabled ? "disabled" : ""], "ocr-icon"]),
|
|
1442
|
-
onClick: onIconClick
|
|
1443
|
-
},
|
|
1444
|
-
[
|
|
1445
|
-
createVNode(unref(NsIcon), { name: "https://cdn.ddjf.com/static/images/beidouxing/ocr-icon.png" })
|
|
1446
|
-
],
|
|
1447
|
-
2
|
|
1448
|
-
/* CLASS */
|
|
1449
|
-
)), [
|
|
1450
|
-
[_directive_track_click, "\u8425\u4E1A\u6267\u7167\u8BC6\u522B-\u70B9\u51FB"]
|
|
1451
|
-
]);
|
|
1452
|
-
};
|
|
1453
|
-
}
|
|
1454
|
-
});
|
|
1455
|
-
|
|
1456
|
-
script$F.__file = "src/shared/components/OcrBusinessLicense.vue";
|
|
1961
|
+
script$F.__file = "src/shared/components/OcrInvoice.vue";
|
|
1457
1962
|
|
|
1458
1963
|
var HttpMethod = /* @__PURE__ */ ((HttpMethod2) => {
|
|
1459
1964
|
HttpMethod2["get"] = "GET";
|
|
@@ -1501,6 +2006,7 @@ const request = (config) => {
|
|
|
1501
2006
|
}
|
|
1502
2007
|
}).catch((e) => {
|
|
1503
2008
|
console.log("request.catch===", e);
|
|
2009
|
+
reject(e);
|
|
1504
2010
|
});
|
|
1505
2011
|
});
|
|
1506
2012
|
};
|
|
@@ -2008,7 +2514,6 @@ class TrackingSDK {
|
|
|
2008
2514
|
* 发送埋点数据
|
|
2009
2515
|
*/
|
|
2010
2516
|
async flush() {
|
|
2011
|
-
console.log(this.eventQueue.length, "this.eventQueue.length");
|
|
2012
2517
|
if (this.eventQueue.length === 0) return;
|
|
2013
2518
|
const events = [...this.eventQueue];
|
|
2014
2519
|
this.eventQueue = [];
|
|
@@ -2694,9 +3199,11 @@ const endpointsList$2 = {
|
|
|
2694
3199
|
certificateNo: params.user,
|
|
2695
3200
|
accountAuthFlag: params.accountAuthFlag || false,
|
|
2696
3201
|
channelCode: params.channelCode || null,
|
|
2697
|
-
payFinishJumpUrl: params.payFinishJumpUrl || null
|
|
3202
|
+
payFinishJumpUrl: params.payFinishJumpUrl || null,
|
|
3203
|
+
useCloudBean: params.useCloudBean || false
|
|
2698
3204
|
}),
|
|
2699
3205
|
transform: (data) => {
|
|
3206
|
+
console.log(data, "data-----");
|
|
2700
3207
|
let json = null;
|
|
2701
3208
|
try {
|
|
2702
3209
|
json = JSON.parse(data.prePayStr);
|
|
@@ -2764,6 +3271,7 @@ const vendor$2 = {
|
|
|
2764
3271
|
title: data.msg,
|
|
2765
3272
|
icon: "none"
|
|
2766
3273
|
});
|
|
3274
|
+
reject(data.msg);
|
|
2767
3275
|
}
|
|
2768
3276
|
}).catch((e) => {
|
|
2769
3277
|
reject(e);
|
|
@@ -2776,7 +3284,7 @@ function useHttp$2(defaultHeader) {
|
|
|
2776
3284
|
const headers = {
|
|
2777
3285
|
Token: appkitOptions.tempToken() || appkitOptions.token(),
|
|
2778
3286
|
Appcode: defaultHeader?.Appcode || appkitOptions.app(),
|
|
2779
|
-
|
|
3287
|
+
tid: defaultHeader?.Tenant || appkitOptions.tenant(),
|
|
2780
3288
|
gray: appkitOptions.gray ? appkitOptions.gray() : "0"
|
|
2781
3289
|
};
|
|
2782
3290
|
const $http = createHttp({
|
|
@@ -2927,6 +3435,8 @@ const requestBrandWCPayByBean = (params, Appcode = "") => {
|
|
|
2927
3435
|
}
|
|
2928
3436
|
});
|
|
2929
3437
|
}
|
|
3438
|
+
}).catch(() => {
|
|
3439
|
+
resolve(false);
|
|
2930
3440
|
});
|
|
2931
3441
|
});
|
|
2932
3442
|
};
|
|
@@ -2955,7 +3465,7 @@ const isIOS = () => {
|
|
|
2955
3465
|
const _hoisted_1$B = { class: "view recharge-view" };
|
|
2956
3466
|
const _hoisted_2$r = { class: "flex-grow" };
|
|
2957
3467
|
const _hoisted_3$l = { class: "amount-footer" };
|
|
2958
|
-
const _hoisted_4$
|
|
3468
|
+
const _hoisted_4$h = { class: "agreement" };
|
|
2959
3469
|
var script$E = /* @__PURE__ */ defineComponent({
|
|
2960
3470
|
__name: "RechargeView",
|
|
2961
3471
|
props: {
|
|
@@ -3053,7 +3563,7 @@ var script$E = /* @__PURE__ */ defineComponent({
|
|
|
3053
3563
|
const _directive_track_click = resolveDirective("track-click");
|
|
3054
3564
|
return openBlock(), createElementBlock("view", _hoisted_1$B, [
|
|
3055
3565
|
createElementVNode("view", _hoisted_2$r, [
|
|
3056
|
-
createVNode(script$
|
|
3566
|
+
createVNode(script$O, {
|
|
3057
3567
|
items: amounts.value,
|
|
3058
3568
|
selected: state.selected,
|
|
3059
3569
|
onChange: onAmountSelect
|
|
@@ -3061,7 +3571,7 @@ var script$E = /* @__PURE__ */ defineComponent({
|
|
|
3061
3571
|
renderSlot(_ctx.$slots, "banner")
|
|
3062
3572
|
]),
|
|
3063
3573
|
createElementVNode("view", _hoisted_3$l, [
|
|
3064
|
-
createElementVNode("view", _hoisted_4$
|
|
3574
|
+
createElementVNode("view", _hoisted_4$h, [
|
|
3065
3575
|
createVNode(_component_nut_checkbox, {
|
|
3066
3576
|
modelValue: state.agreed,
|
|
3067
3577
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => state.agreed = $event)
|
|
@@ -3134,7 +3644,7 @@ const _hoisted_3$k = {
|
|
|
3134
3644
|
key: 0,
|
|
3135
3645
|
class: "caption"
|
|
3136
3646
|
};
|
|
3137
|
-
const _hoisted_4$
|
|
3647
|
+
const _hoisted_4$g = {
|
|
3138
3648
|
key: 1,
|
|
3139
3649
|
class: "caption"
|
|
3140
3650
|
};
|
|
@@ -3175,7 +3685,7 @@ var script$C = /* @__PURE__ */ defineComponent({
|
|
|
3175
3685
|
),
|
|
3176
3686
|
__props.payMethod == "bean" ? (openBlock(), createElementBlock("div", _hoisted_3$k, "\u6743\u76CA\u5DF2\u5230\u8D26")) : (openBlock(), createElementBlock(
|
|
3177
3687
|
"div",
|
|
3178
|
-
_hoisted_4$
|
|
3688
|
+
_hoisted_4$g,
|
|
3179
3689
|
toDisplayString(views[__props.type][1]) + "\u5C06\u57281\u5206\u949F\u4E4B\u5185\u5230\u8D26",
|
|
3180
3690
|
1
|
|
3181
3691
|
/* TEXT */
|
|
@@ -3322,8 +3832,8 @@ const _hoisted_3$i = {
|
|
|
3322
3832
|
key: 0,
|
|
3323
3833
|
class: "bean-buy"
|
|
3324
3834
|
};
|
|
3325
|
-
const _hoisted_4$
|
|
3326
|
-
const _hoisted_5$
|
|
3835
|
+
const _hoisted_4$f = { class: "left" };
|
|
3836
|
+
const _hoisted_5$d = {
|
|
3327
3837
|
key: 0,
|
|
3328
3838
|
class: "amount"
|
|
3329
3839
|
};
|
|
@@ -3333,24 +3843,33 @@ const _hoisted_6$9 = {
|
|
|
3333
3843
|
};
|
|
3334
3844
|
const _hoisted_7$6 = { class: "amount" };
|
|
3335
3845
|
const _hoisted_8$5 = ["src"];
|
|
3336
|
-
const _hoisted_9$4 = {
|
|
3846
|
+
const _hoisted_9$4 = {
|
|
3847
|
+
key: 0,
|
|
3848
|
+
class: "balance-warning"
|
|
3849
|
+
};
|
|
3337
3850
|
const _hoisted_10$3 = {
|
|
3851
|
+
key: 1,
|
|
3852
|
+
class: "balance-warning-tip"
|
|
3853
|
+
};
|
|
3854
|
+
const _hoisted_11$3 = { class: "amount-footer" };
|
|
3855
|
+
const _hoisted_12$3 = {
|
|
3338
3856
|
key: 0,
|
|
3339
3857
|
class: "agreement"
|
|
3340
3858
|
};
|
|
3341
|
-
const
|
|
3342
|
-
const
|
|
3343
|
-
const
|
|
3344
|
-
const _hoisted_14$2 = { class: "item" };
|
|
3345
|
-
const _hoisted_15$2 = { class: "item" };
|
|
3859
|
+
const _hoisted_13$2 = { class: "buy-amount" };
|
|
3860
|
+
const _hoisted_14$2 = { class: "left" };
|
|
3861
|
+
const _hoisted_15$2 = { class: "amount" };
|
|
3346
3862
|
const _hoisted_16$2 = { class: "item" };
|
|
3863
|
+
const _hoisted_17$2 = { class: "item" };
|
|
3864
|
+
const _hoisted_18$2 = { class: "item" };
|
|
3347
3865
|
var script$A = /* @__PURE__ */ defineComponent({
|
|
3348
3866
|
__name: "TradeView",
|
|
3349
3867
|
props: {
|
|
3350
3868
|
headerApp: { type: String, required: true },
|
|
3351
3869
|
app: { type: String, required: true },
|
|
3352
3870
|
tenant: { type: String, required: true },
|
|
3353
|
-
payFinishJumpUrl: { type: String, required: false }
|
|
3871
|
+
payFinishJumpUrl: { type: String, required: false },
|
|
3872
|
+
apps: { type: String, required: false }
|
|
3354
3873
|
},
|
|
3355
3874
|
emits: ["complete", "agree", "loaded"],
|
|
3356
3875
|
setup(__props, { emit: __emit }) {
|
|
@@ -3376,8 +3895,28 @@ var script$A = /* @__PURE__ */ defineComponent({
|
|
|
3376
3895
|
state.selected = selected;
|
|
3377
3896
|
selectBean.value = false;
|
|
3378
3897
|
};
|
|
3898
|
+
const extraPaymentAmount = computed(() => {
|
|
3899
|
+
if (!selectBean.value || !amounts.value[state.selected]) {
|
|
3900
|
+
return 0;
|
|
3901
|
+
}
|
|
3902
|
+
const paymentAmount = amounts.value[state.selected].paymentAmount || 0;
|
|
3903
|
+
const currentBalance = balance.value || 0;
|
|
3904
|
+
return Math.max(0, paymentAmount - currentBalance);
|
|
3905
|
+
});
|
|
3379
3906
|
const currentAmount = computed(() => {
|
|
3380
|
-
|
|
3907
|
+
if (!amounts.value[state.selected]) {
|
|
3908
|
+
return 0;
|
|
3909
|
+
}
|
|
3910
|
+
if (selectBean.value) {
|
|
3911
|
+
if (balance.value < amounts.value[state.selected].paymentAmount) {
|
|
3912
|
+
return extraPaymentAmount.value;
|
|
3913
|
+
}
|
|
3914
|
+
return 0;
|
|
3915
|
+
}
|
|
3916
|
+
return amounts.value[state.selected].paymentAmount || 0;
|
|
3917
|
+
});
|
|
3918
|
+
const isCombinedPayment = computed(() => {
|
|
3919
|
+
return selectBean.value && amounts.value[state.selected] && balance.value < amounts.value[state.selected].paymentAmount;
|
|
3381
3920
|
});
|
|
3382
3921
|
onMounted(() => {
|
|
3383
3922
|
const $http = useHttp$2({ Appcode: props.headerApp, Tenant: props.tenant });
|
|
@@ -3392,24 +3931,28 @@ var script$A = /* @__PURE__ */ defineComponent({
|
|
|
3392
3931
|
const showDialog = ref(false);
|
|
3393
3932
|
async function beanPay() {
|
|
3394
3933
|
const $http = useHttp$2({ Appcode: props.headerApp, Tenant: props.tenant });
|
|
3395
|
-
|
|
3934
|
+
try {
|
|
3935
|
+
const response = await $http.post(
|
|
3936
|
+
`/payment/paymentCaseConfig/purchase/${amounts.value[state.selected].id}`
|
|
3937
|
+
);
|
|
3396
3938
|
if (response) {
|
|
3397
3939
|
showDialog.value = false;
|
|
3398
3940
|
emit("complete", { result: response, type: "bean" });
|
|
3399
3941
|
} else {
|
|
3400
3942
|
showToast({
|
|
3401
|
-
title: response
|
|
3943
|
+
title: response?.message || "\u652F\u4ED8\u5931\u8D25",
|
|
3402
3944
|
icon: "none"
|
|
3403
3945
|
});
|
|
3404
3946
|
}
|
|
3405
|
-
})
|
|
3406
|
-
|
|
3407
|
-
|
|
3408
|
-
|
|
3409
|
-
|
|
3410
|
-
return;
|
|
3947
|
+
} catch (error) {
|
|
3948
|
+
showToast({
|
|
3949
|
+
title: error?.message || "\u652F\u4ED8\u5931\u8D25",
|
|
3950
|
+
icon: "none"
|
|
3951
|
+
});
|
|
3411
3952
|
}
|
|
3412
|
-
|
|
3953
|
+
}
|
|
3954
|
+
function proceedWechatPayment() {
|
|
3955
|
+
if (!state.agreed) {
|
|
3413
3956
|
showToast({
|
|
3414
3957
|
title: "\u8BF7\u52FE\u9009\u300A\u5927\u9053\u4E91\u5E73\u53F0\u4E91\u8C46\u5145\u503C\u534F\u8BAE\u300B",
|
|
3415
3958
|
icon: "none"
|
|
@@ -3428,41 +3971,109 @@ var script$A = /* @__PURE__ */ defineComponent({
|
|
|
3428
3971
|
}
|
|
3429
3972
|
requestBrandWCPayByBean({
|
|
3430
3973
|
caseConfigId: amounts.value[state.selected].id,
|
|
3431
|
-
amount:
|
|
3974
|
+
amount: currentAmount.value,
|
|
3432
3975
|
app: "loankitMp",
|
|
3433
3976
|
tenant: props.tenant,
|
|
3434
3977
|
accountAuthFlag: false,
|
|
3435
3978
|
channelCode: "centergzh",
|
|
3436
3979
|
payFinishJumpUrl: props.payFinishJumpUrl,
|
|
3437
|
-
fromMini: !!params.from
|
|
3980
|
+
fromMini: !!params.from,
|
|
3981
|
+
useCloudBean: isCombinedPayment.value
|
|
3438
3982
|
}).then((result) => {
|
|
3439
|
-
console.log(result, "------requestBrandWCPay");
|
|
3440
3983
|
state.buttonLoading = false;
|
|
3441
3984
|
if (typeof result === "boolean" && result) {
|
|
3442
3985
|
window.location.href = props.payFinishJumpUrl;
|
|
3443
3986
|
} else {
|
|
3444
|
-
emit("complete", {
|
|
3987
|
+
emit("complete", {
|
|
3988
|
+
result,
|
|
3989
|
+
type: isCombinedPayment.value ? "combined" : "wePay"
|
|
3990
|
+
});
|
|
3445
3991
|
}
|
|
3992
|
+
}).catch((error) => {
|
|
3993
|
+
state.buttonLoading = false;
|
|
3994
|
+
showToast({
|
|
3995
|
+
title: error.message || "\u652F\u4ED8\u5931\u8D25",
|
|
3996
|
+
icon: "none"
|
|
3997
|
+
});
|
|
3446
3998
|
});
|
|
3447
3999
|
} else {
|
|
3448
4000
|
wx.login({
|
|
3449
4001
|
success({ code }) {
|
|
3450
|
-
requestPaymentByBean(
|
|
3451
|
-
|
|
3452
|
-
|
|
3453
|
-
|
|
3454
|
-
|
|
3455
|
-
|
|
3456
|
-
|
|
4002
|
+
requestPaymentByBean(
|
|
4003
|
+
{
|
|
4004
|
+
caseConfigId: amounts.value[state.selected].id,
|
|
4005
|
+
amount: currentAmount.value,
|
|
4006
|
+
app: props.app,
|
|
4007
|
+
tenant: props.tenant,
|
|
4008
|
+
user: code
|
|
4009
|
+
},
|
|
4010
|
+
props.headerApp
|
|
4011
|
+
).then((result) => {
|
|
3457
4012
|
state.buttonLoading = false;
|
|
3458
4013
|
if (result) {
|
|
3459
|
-
emit("complete", {
|
|
4014
|
+
emit("complete", {
|
|
4015
|
+
result: true,
|
|
4016
|
+
type: isCombinedPayment.value ? "combined" : "wePay"
|
|
4017
|
+
});
|
|
3460
4018
|
}
|
|
4019
|
+
}).catch((error) => {
|
|
4020
|
+
state.buttonLoading = false;
|
|
4021
|
+
showToast({
|
|
4022
|
+
title: error.message || "\u652F\u4ED8\u5931\u8D25",
|
|
4023
|
+
icon: "none"
|
|
4024
|
+
});
|
|
4025
|
+
});
|
|
4026
|
+
},
|
|
4027
|
+
fail() {
|
|
4028
|
+
state.buttonLoading = false;
|
|
4029
|
+
showToast({
|
|
4030
|
+
title: "\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u91CD\u8BD5",
|
|
4031
|
+
icon: "none"
|
|
3461
4032
|
});
|
|
3462
4033
|
}
|
|
3463
4034
|
});
|
|
3464
4035
|
}
|
|
4036
|
+
}
|
|
4037
|
+
const onPayClick = async () => {
|
|
4038
|
+
if (selectBean.value && !isCombinedPayment.value) {
|
|
4039
|
+
showDialog.value = true;
|
|
4040
|
+
return;
|
|
4041
|
+
}
|
|
4042
|
+
if (isCombinedPayment.value) {
|
|
4043
|
+
const res = await checkBalance();
|
|
4044
|
+
if (!res) return;
|
|
4045
|
+
}
|
|
4046
|
+
proceedWechatPayment();
|
|
3465
4047
|
};
|
|
4048
|
+
async function checkBalance() {
|
|
4049
|
+
const $http = useHttp$2();
|
|
4050
|
+
return new Promise((resolve, reject) => {
|
|
4051
|
+
state.buttonLoading = true;
|
|
4052
|
+
$http.get(endpoints$2.\u83B7\u53D6\u4F59\u989D\u660E\u7EC6, {
|
|
4053
|
+
app: props.apps
|
|
4054
|
+
}).then((data) => {
|
|
4055
|
+
state.buttonLoading = false;
|
|
4056
|
+
if (data.commonAccount < balance.value) {
|
|
4057
|
+
showModal({
|
|
4058
|
+
title: "\u6E29\u99A8\u63D0\u793A",
|
|
4059
|
+
content: "\u4E91\u8C46\u4E0D\u8DB3\uFF0C\u8BF7\u5237\u65B0\u540E\u518D\u6B21\u786E\u8BA4",
|
|
4060
|
+
showCancel: false,
|
|
4061
|
+
confirmText: "\u5237\u65B0",
|
|
4062
|
+
confirmColor: "#017fff",
|
|
4063
|
+
success: () => {
|
|
4064
|
+
balance.value = data.commonAccount;
|
|
4065
|
+
}
|
|
4066
|
+
});
|
|
4067
|
+
resolve(false);
|
|
4068
|
+
} else {
|
|
4069
|
+
resolve(true);
|
|
4070
|
+
}
|
|
4071
|
+
}).catch((error) => {
|
|
4072
|
+
state.buttonLoading = false;
|
|
4073
|
+
resolve(false);
|
|
4074
|
+
});
|
|
4075
|
+
});
|
|
4076
|
+
}
|
|
3466
4077
|
return (_ctx, _cache) => {
|
|
3467
4078
|
const _component_nut_checkbox = Checkbox;
|
|
3468
4079
|
const _component_nut_button = Button;
|
|
@@ -3476,7 +4087,7 @@ var script$A = /* @__PURE__ */ defineComponent({
|
|
|
3476
4087
|
onChange: onAmountSelect
|
|
3477
4088
|
}, null, 8, ["items", "selected"]),
|
|
3478
4089
|
amounts.value[state.selected] ? (openBlock(), createElementBlock("div", _hoisted_3$i, [
|
|
3479
|
-
createElementVNode("div", _hoisted_4$
|
|
4090
|
+
createElementVNode("div", _hoisted_4$f, [
|
|
3480
4091
|
_cache[4] || (_cache[4] = createElementVNode(
|
|
3481
4092
|
"div",
|
|
3482
4093
|
{ class: "title" },
|
|
@@ -3484,29 +4095,28 @@ var script$A = /* @__PURE__ */ defineComponent({
|
|
|
3484
4095
|
-1
|
|
3485
4096
|
/* CACHED */
|
|
3486
4097
|
)),
|
|
3487
|
-
!selectBean.value ? (openBlock(), createElementBlock(
|
|
4098
|
+
!selectBean.value || isCombinedPayment.value ? (openBlock(), createElementBlock(
|
|
3488
4099
|
"div",
|
|
3489
|
-
_hoisted_5$
|
|
3490
|
-
"\u4F59\u989D " + toDisplayString(unref(formatAmount)(balance.value || 0)),
|
|
4100
|
+
_hoisted_5$d,
|
|
4101
|
+
" \u4F59\u989D " + toDisplayString(unref(formatAmount)(balance.value || 0)),
|
|
3491
4102
|
1
|
|
3492
4103
|
/* TEXT */
|
|
3493
4104
|
)) : (openBlock(), createElementBlock(
|
|
3494
4105
|
"div",
|
|
3495
4106
|
_hoisted_6$9,
|
|
3496
|
-
"\u6263\u51CF\u540E\u4F59\u989D " + toDisplayString(unref(formatAmount)(balance.value - amounts.value[state.selected].paymentAmount)),
|
|
4107
|
+
" \u6263\u51CF\u540E\u4F59\u989D " + toDisplayString(unref(formatAmount)(balance.value - amounts.value[state.selected].paymentAmount)),
|
|
3497
4108
|
1
|
|
3498
4109
|
/* TEXT */
|
|
3499
4110
|
))
|
|
3500
4111
|
]),
|
|
3501
|
-
|
|
3502
|
-
key: 0,
|
|
4112
|
+
createElementVNode("div", {
|
|
3503
4113
|
class: "right",
|
|
3504
4114
|
onClick: _cache[0] || (_cache[0] = ($event) => selectBean.value = !selectBean.value)
|
|
3505
4115
|
}, [
|
|
3506
4116
|
createElementVNode(
|
|
3507
4117
|
"div",
|
|
3508
4118
|
_hoisted_7$6,
|
|
3509
|
-
"-" + toDisplayString(unref(formatAmount)(amounts.value[state.selected].paymentAmount || 0)),
|
|
4119
|
+
" -" + toDisplayString(unref(formatAmount)(amounts.value[state.selected].paymentAmount || 0)),
|
|
3510
4120
|
1
|
|
3511
4121
|
/* TEXT */
|
|
3512
4122
|
),
|
|
@@ -3514,12 +4124,20 @@ var script$A = /* @__PURE__ */ defineComponent({
|
|
|
3514
4124
|
class: "icon",
|
|
3515
4125
|
src: selectBean.value ? "https://cdn.ddjf.com/static/images/appkit/select.svg" : "https://cdn.ddjf.com/static/images/appkit/not-select.svg"
|
|
3516
4126
|
}, null, 8, _hoisted_8$5)
|
|
3517
|
-
])
|
|
4127
|
+
]),
|
|
4128
|
+
isCombinedPayment.value ? (openBlock(), createElementBlock(
|
|
4129
|
+
"div",
|
|
4130
|
+
_hoisted_9$4,
|
|
4131
|
+
" \u4E91\u8C46\u4F59\u989D\u4E0D\u8DB3,\u8FD8\u9700\u989D\u5916\u652F\u4ED8" + toDisplayString(unref(formatAmount)(extraPaymentAmount.value)) + "\u5143 ",
|
|
4132
|
+
1
|
|
4133
|
+
/* TEXT */
|
|
4134
|
+
)) : createCommentVNode("v-if", true)
|
|
3518
4135
|
])) : createCommentVNode("v-if", true),
|
|
4136
|
+
isCombinedPayment.value ? (openBlock(), createElementBlock("div", _hoisted_10$3, " \u8BF7\u5728\u652F\u4ED8\u5B8C\u6210\u524D\u786E\u4FDD\u5143\u8C46\u4F59\u989D\u4E0D\u88AB\u6D88\u8017,\u5426\u5219\u672C\u6B21\u6743\u76CA\u53EF\u80FD\u8D2D\u4E70\u5931\u8D25 ")) : createCommentVNode("v-if", true),
|
|
3519
4137
|
renderSlot(_ctx.$slots, "banner")
|
|
3520
4138
|
]),
|
|
3521
|
-
createElementVNode("view",
|
|
3522
|
-
!selectBean.value ? (openBlock(), createElementBlock("view",
|
|
4139
|
+
createElementVNode("view", _hoisted_11$3, [
|
|
4140
|
+
!selectBean.value || isCombinedPayment.value ? (openBlock(), createElementBlock("view", _hoisted_12$3, [
|
|
3523
4141
|
createVNode(_component_nut_checkbox, {
|
|
3524
4142
|
modelValue: state.agreed,
|
|
3525
4143
|
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => state.agreed = $event)
|
|
@@ -3547,14 +4165,14 @@ var script$A = /* @__PURE__ */ defineComponent({
|
|
|
3547
4165
|
/* STABLE */
|
|
3548
4166
|
}, 8, ["modelValue"])
|
|
3549
4167
|
])) : createCommentVNode("v-if", true),
|
|
3550
|
-
createElementVNode("div",
|
|
3551
|
-
createElementVNode("div",
|
|
4168
|
+
createElementVNode("div", _hoisted_13$2, [
|
|
4169
|
+
createElementVNode("div", _hoisted_14$2, [
|
|
3552
4170
|
_cache[8] || (_cache[8] = createTextVNode(
|
|
3553
4171
|
" \u5F85\u652F\u4ED8\uFF1A ",
|
|
3554
4172
|
-1
|
|
3555
4173
|
/* CACHED */
|
|
3556
4174
|
)),
|
|
3557
|
-
createElementVNode("span",
|
|
4175
|
+
createElementVNode("span", _hoisted_15$2, [
|
|
3558
4176
|
_cache[7] || (_cache[7] = createElementVNode(
|
|
3559
4177
|
"i",
|
|
3560
4178
|
null,
|
|
@@ -3605,22 +4223,22 @@ var script$A = /* @__PURE__ */ defineComponent({
|
|
|
3605
4223
|
[
|
|
3606
4224
|
createElementVNode(
|
|
3607
4225
|
"div",
|
|
3608
|
-
|
|
3609
|
-
"\u4E91\u8C46\u6263\u51CF\uFF1A" + toDisplayString(unref(formatAmount)(amounts.value[state.selected].paymentAmount || 0)),
|
|
4226
|
+
_hoisted_16$2,
|
|
4227
|
+
" \u4E91\u8C46\u6263\u51CF\uFF1A" + toDisplayString(unref(formatAmount)(amounts.value[state.selected].paymentAmount || 0)),
|
|
3610
4228
|
1
|
|
3611
4229
|
/* TEXT */
|
|
3612
4230
|
),
|
|
3613
4231
|
createElementVNode(
|
|
3614
4232
|
"div",
|
|
3615
|
-
|
|
3616
|
-
"\u6743\u76CA\u589E\u52A0\uFF1A" + toDisplayString(unref(formatAmount)(amounts.value[state.selected].priceRightNum || 0)) + "\u7B14",
|
|
4233
|
+
_hoisted_17$2,
|
|
4234
|
+
" \u6743\u76CA\u589E\u52A0\uFF1A" + toDisplayString(unref(formatAmount)(amounts.value[state.selected].priceRightNum || 0)) + "\u7B14 ",
|
|
3617
4235
|
1
|
|
3618
4236
|
/* TEXT */
|
|
3619
4237
|
),
|
|
3620
4238
|
createElementVNode(
|
|
3621
4239
|
"div",
|
|
3622
|
-
|
|
3623
|
-
"\u6263\u51CF\u540E\u4E91\u8C46\u4F59\u989D\uFF1A" + toDisplayString(unref(formatAmount)(balance.value - amounts.value[state.selected].paymentAmount)),
|
|
4240
|
+
_hoisted_18$2,
|
|
4241
|
+
" \u6263\u51CF\u540E\u4E91\u8C46\u4F59\u989D\uFF1A" + toDisplayString(unref(formatAmount)(balance.value - amounts.value[state.selected].paymentAmount)),
|
|
3624
4242
|
1
|
|
3625
4243
|
/* TEXT */
|
|
3626
4244
|
)
|
|
@@ -3640,7 +4258,7 @@ var script$A = /* @__PURE__ */ defineComponent({
|
|
|
3640
4258
|
script$A.__file = "src/payment/components/TradeView.vue";
|
|
3641
4259
|
|
|
3642
4260
|
const components = {
|
|
3643
|
-
AmountPicker: script$
|
|
4261
|
+
AmountPicker: script$O,
|
|
3644
4262
|
RechargeView: script$E,
|
|
3645
4263
|
UserAgreement: script$D,
|
|
3646
4264
|
RechargeResult: script$C,
|
|
@@ -3650,8 +4268,8 @@ const components = {
|
|
|
3650
4268
|
const _hoisted_1$w = { class: "account-card" };
|
|
3651
4269
|
const _hoisted_2$n = { class: "card" };
|
|
3652
4270
|
const _hoisted_3$h = { class: "card-row" };
|
|
3653
|
-
const _hoisted_4$
|
|
3654
|
-
const _hoisted_5$
|
|
4271
|
+
const _hoisted_4$e = { class: "card-row-left" };
|
|
4272
|
+
const _hoisted_5$c = { class: "bean-nums number" };
|
|
3655
4273
|
const _hoisted_6$8 = { class: "card-row-right" };
|
|
3656
4274
|
var script$z = /* @__PURE__ */ defineComponent({
|
|
3657
4275
|
__name: "BalanceCard",
|
|
@@ -3698,7 +4316,7 @@ var script$z = /* @__PURE__ */ defineComponent({
|
|
|
3698
4316
|
return openBlock(), createElementBlock("div", _hoisted_1$w, [
|
|
3699
4317
|
createElementVNode("div", _hoisted_2$n, [
|
|
3700
4318
|
createElementVNode("div", _hoisted_3$h, [
|
|
3701
|
-
createElementVNode("div", _hoisted_4$
|
|
4319
|
+
createElementVNode("div", _hoisted_4$e, [
|
|
3702
4320
|
_cache[0] || (_cache[0] = createElementVNode(
|
|
3703
4321
|
"div",
|
|
3704
4322
|
{ class: "bean-box" },
|
|
@@ -3716,7 +4334,7 @@ var script$z = /* @__PURE__ */ defineComponent({
|
|
|
3716
4334
|
)),
|
|
3717
4335
|
createElementVNode(
|
|
3718
4336
|
"div",
|
|
3719
|
-
_hoisted_5$
|
|
4337
|
+
_hoisted_5$c,
|
|
3720
4338
|
toDisplayString(unref(formatAmount)(balance.value.total || 0)),
|
|
3721
4339
|
1
|
|
3722
4340
|
/* TEXT */
|
|
@@ -3778,8 +4396,8 @@ const consumptionDirections = ["\u5168\u90E8", "\u6536\u5165", "\u652F\u51FA"];
|
|
|
3778
4396
|
const _hoisted_1$v = { class: "consumption-filter" };
|
|
3779
4397
|
const _hoisted_2$m = { class: "consumption-filter-content" };
|
|
3780
4398
|
const _hoisted_3$g = { class: "title" };
|
|
3781
|
-
const _hoisted_4$
|
|
3782
|
-
const _hoisted_5$
|
|
4399
|
+
const _hoisted_4$d = { class: "info" };
|
|
4400
|
+
const _hoisted_5$b = ["onClick"];
|
|
3783
4401
|
const _hoisted_6$7 = { class: "consumption-filter-btn spa-between" };
|
|
3784
4402
|
var script$y = /* @__PURE__ */ defineComponent({
|
|
3785
4403
|
__name: "ConsumptionFilter",
|
|
@@ -3858,7 +4476,7 @@ var script$y = /* @__PURE__ */ defineComponent({
|
|
|
3858
4476
|
1
|
|
3859
4477
|
/* TEXT */
|
|
3860
4478
|
),
|
|
3861
|
-
createElementVNode("div", _hoisted_4$
|
|
4479
|
+
createElementVNode("div", _hoisted_4$d, [
|
|
3862
4480
|
(openBlock(true), createElementBlock(
|
|
3863
4481
|
Fragment,
|
|
3864
4482
|
null,
|
|
@@ -3867,7 +4485,7 @@ var script$y = /* @__PURE__ */ defineComponent({
|
|
|
3867
4485
|
onClick: () => onFilterSectionClick(index, it.code),
|
|
3868
4486
|
class: normalizeClass([getItemClass(index, it.code), "info-item"]),
|
|
3869
4487
|
key: i
|
|
3870
|
-
}, toDisplayString(typeof it === "string" ? it : it.name), 11, _hoisted_5$
|
|
4488
|
+
}, toDisplayString(typeof it === "string" ? it : it.name), 11, _hoisted_5$b);
|
|
3871
4489
|
}),
|
|
3872
4490
|
128
|
|
3873
4491
|
/* KEYED_FRAGMENT */
|
|
@@ -3917,7 +4535,7 @@ script$y.__file = "src/balance/components/ConsumptionFilter.vue";
|
|
|
3917
4535
|
const _hoisted_1$u = { class: "appkit-date-filter" };
|
|
3918
4536
|
const _hoisted_2$l = { class: "content" };
|
|
3919
4537
|
const _hoisted_3$f = { class: "time" };
|
|
3920
|
-
const _hoisted_4$
|
|
4538
|
+
const _hoisted_4$c = { class: "buttons spa-between" };
|
|
3921
4539
|
var script$x = /* @__PURE__ */ defineComponent({
|
|
3922
4540
|
__name: "DateFilter",
|
|
3923
4541
|
props: {
|
|
@@ -4040,7 +4658,7 @@ var script$x = /* @__PURE__ */ defineComponent({
|
|
|
4040
4658
|
)
|
|
4041
4659
|
])
|
|
4042
4660
|
]),
|
|
4043
|
-
createElementVNode("div", _hoisted_4$
|
|
4661
|
+
createElementVNode("div", _hoisted_4$c, [
|
|
4044
4662
|
createElementVNode("div", {
|
|
4045
4663
|
class: "btn",
|
|
4046
4664
|
onClick: reset
|
|
@@ -4216,8 +4834,8 @@ script$u.__file = "src/balance/components/Tip.vue";
|
|
|
4216
4834
|
const _hoisted_1$q = { class: "account-view" };
|
|
4217
4835
|
const _hoisted_2$k = { class: "scroll-content" };
|
|
4218
4836
|
const _hoisted_3$e = { class: "row jusify-right" };
|
|
4219
|
-
const _hoisted_4$
|
|
4220
|
-
const _hoisted_5$
|
|
4837
|
+
const _hoisted_4$b = { class: "balance" };
|
|
4838
|
+
const _hoisted_5$a = { class: "bean-box spa-between" };
|
|
4221
4839
|
const _hoisted_6$6 = { class: "bean-counts spa-between" };
|
|
4222
4840
|
const _hoisted_7$5 = { class: "counts number" };
|
|
4223
4841
|
const _hoisted_8$4 = {
|
|
@@ -4458,7 +5076,7 @@ var script$t = /* @__PURE__ */ defineComponent({
|
|
|
4458
5076
|
[
|
|
4459
5077
|
createElementVNode("div", _hoisted_1$q, [
|
|
4460
5078
|
createElementVNode("div", _hoisted_2$k, [
|
|
4461
|
-
createVNode(unref(script$
|
|
5079
|
+
createVNode(unref(script$N), {
|
|
4462
5080
|
title: unref(Taro).getEnv() !== "WEB" ? "\u6211\u7684\u8D26\u6237" : "",
|
|
4463
5081
|
class: normalizeClass({ "with-background": scrolled.value > 0 }),
|
|
4464
5082
|
onClose: onPageHeaderClose
|
|
@@ -4479,8 +5097,8 @@ var script$t = /* @__PURE__ */ defineComponent({
|
|
|
4479
5097
|
[_directive_track_click]
|
|
4480
5098
|
])
|
|
4481
5099
|
]),
|
|
4482
|
-
createElementVNode("div", _hoisted_4$
|
|
4483
|
-
createElementVNode("div", _hoisted_5$
|
|
5100
|
+
createElementVNode("div", _hoisted_4$b, [
|
|
5101
|
+
createElementVNode("div", _hoisted_5$a, [
|
|
4484
5102
|
_cache[9] || (_cache[9] = createElementVNode(
|
|
4485
5103
|
"div",
|
|
4486
5104
|
{ class: "bean-img" },
|
|
@@ -4763,7 +5381,7 @@ var script$t = /* @__PURE__ */ defineComponent({
|
|
|
4763
5381
|
_: 1
|
|
4764
5382
|
/* STABLE */
|
|
4765
5383
|
}, 8, ["visible"]),
|
|
4766
|
-
createVNode(unref(script$
|
|
5384
|
+
createVNode(unref(script$M), {
|
|
4767
5385
|
modelValue: secondBalanceOpen.value,
|
|
4768
5386
|
"onUpdate:modelValue": _cache[6] || (_cache[6] = ($event) => secondBalanceOpen.value = $event),
|
|
4769
5387
|
title: "\u6536\u652F\u660E\u7EC6"
|
|
@@ -4953,8 +5571,8 @@ script$t.__file = "src/balance/components/AccountView.vue";
|
|
|
4953
5571
|
const _hoisted_1$p = { class: "balance-reminder" };
|
|
4954
5572
|
const _hoisted_2$j = { class: "body" };
|
|
4955
5573
|
const _hoisted_3$d = { class: "footer" };
|
|
4956
|
-
const _hoisted_4$
|
|
4957
|
-
const _hoisted_5$
|
|
5574
|
+
const _hoisted_4$a = { class: "col" };
|
|
5575
|
+
const _hoisted_5$9 = { class: "col" };
|
|
4958
5576
|
var script$s = /* @__PURE__ */ defineComponent({
|
|
4959
5577
|
__name: "BalanceReminder",
|
|
4960
5578
|
props: {
|
|
@@ -4995,7 +5613,7 @@ var script$s = /* @__PURE__ */ defineComponent({
|
|
|
4995
5613
|
)
|
|
4996
5614
|
]),
|
|
4997
5615
|
createElementVNode("div", _hoisted_3$d, [
|
|
4998
|
-
createElementVNode("div", _hoisted_4$
|
|
5616
|
+
createElementVNode("div", _hoisted_4$a, [
|
|
4999
5617
|
createVNode(_component_nut_button, {
|
|
5000
5618
|
class: "cancel-button",
|
|
5001
5619
|
onClick: _cache[0] || (_cache[0] = ($event) => emit("update:modelValue", false)),
|
|
@@ -5012,7 +5630,7 @@ var script$s = /* @__PURE__ */ defineComponent({
|
|
|
5012
5630
|
/* STABLE */
|
|
5013
5631
|
})
|
|
5014
5632
|
]),
|
|
5015
|
-
createElementVNode("div", _hoisted_5$
|
|
5633
|
+
createElementVNode("div", _hoisted_5$9, [
|
|
5016
5634
|
withDirectives((openBlock(), createBlock(_component_nut_button, {
|
|
5017
5635
|
block: "",
|
|
5018
5636
|
class: "recharge-button",
|
|
@@ -5150,8 +5768,8 @@ script$r.__file = "src/balance/components/DateRange.vue";
|
|
|
5150
5768
|
const _hoisted_1$n = { class: "list-filter-picker" };
|
|
5151
5769
|
const _hoisted_2$i = { class: "list-filter-picker-content" };
|
|
5152
5770
|
const _hoisted_3$c = { class: "title" };
|
|
5153
|
-
const _hoisted_4$
|
|
5154
|
-
const _hoisted_5$
|
|
5771
|
+
const _hoisted_4$9 = { class: "info" };
|
|
5772
|
+
const _hoisted_5$8 = ["onClick"];
|
|
5155
5773
|
const _hoisted_6$5 = { class: "list-filter-picker-btn spa-between" };
|
|
5156
5774
|
var script$q = /* @__PURE__ */ defineComponent({
|
|
5157
5775
|
__name: "ListFilterPicker",
|
|
@@ -5228,7 +5846,7 @@ var script$q = /* @__PURE__ */ defineComponent({
|
|
|
5228
5846
|
1
|
|
5229
5847
|
/* TEXT */
|
|
5230
5848
|
),
|
|
5231
|
-
createElementVNode("div", _hoisted_4$
|
|
5849
|
+
createElementVNode("div", _hoisted_4$9, [
|
|
5232
5850
|
(openBlock(true), createElementBlock(
|
|
5233
5851
|
Fragment,
|
|
5234
5852
|
null,
|
|
@@ -5237,7 +5855,7 @@ var script$q = /* @__PURE__ */ defineComponent({
|
|
|
5237
5855
|
onClick: () => onFilterSectionClick(item.name, it.value),
|
|
5238
5856
|
class: normalizeClass([getItemClass(item.name, it.value), "info-item"]),
|
|
5239
5857
|
key: i
|
|
5240
|
-
}, toDisplayString(typeof it === "string" ? it : it.label), 11, _hoisted_5$
|
|
5858
|
+
}, toDisplayString(typeof it === "string" ? it : it.label), 11, _hoisted_5$8);
|
|
5241
5859
|
}),
|
|
5242
5860
|
128
|
|
5243
5861
|
/* KEYED_FRAGMENT */
|
|
@@ -5353,8 +5971,8 @@ const _hoisted_1$m = {
|
|
|
5353
5971
|
};
|
|
5354
5972
|
const _hoisted_2$h = { class: "promoter-card-hd-num number" };
|
|
5355
5973
|
const _hoisted_3$b = ["src"];
|
|
5356
|
-
const _hoisted_4$
|
|
5357
|
-
const _hoisted_5$
|
|
5974
|
+
const _hoisted_4$8 = { class: "promoter-card-ft" };
|
|
5975
|
+
const _hoisted_5$7 = {
|
|
5358
5976
|
key: 0,
|
|
5359
5977
|
class: "promoter-card-ft-item"
|
|
5360
5978
|
};
|
|
@@ -5450,6 +6068,7 @@ var script$o = /* @__PURE__ */ defineComponent({
|
|
|
5450
6068
|
showModal({
|
|
5451
6069
|
content: toastMap[type],
|
|
5452
6070
|
showCancel: false,
|
|
6071
|
+
confirmColor: "#017fff",
|
|
5453
6072
|
confirmText: "\u77E5\u9053\u4E86"
|
|
5454
6073
|
});
|
|
5455
6074
|
}
|
|
@@ -5512,8 +6131,8 @@ var script$o = /* @__PURE__ */ defineComponent({
|
|
|
5512
6131
|
])), [
|
|
5513
6132
|
[_directive_track_click]
|
|
5514
6133
|
]) : createCommentVNode("v-if", true),
|
|
5515
|
-
createElementVNode("div", _hoisted_4$
|
|
5516
|
-
__props.applyRecord.accessCheckStatus === "Y" ? (openBlock(), createElementBlock("div", _hoisted_5$
|
|
6134
|
+
createElementVNode("div", _hoisted_4$8, [
|
|
6135
|
+
__props.applyRecord.accessCheckStatus === "Y" ? (openBlock(), createElementBlock("div", _hoisted_5$7, [
|
|
5517
6136
|
__props.\u663E\u793A\u4E0B\u7EA7\u5206\u9500\u5546 ? (openBlock(), createElementBlock(
|
|
5518
6137
|
Fragment,
|
|
5519
6138
|
{ key: 0 },
|
|
@@ -5955,8 +6574,8 @@ script$l.__file = "src/components/dd-selector/index.vue";
|
|
|
5955
6574
|
const _hoisted_1$j = { class: "self-registration" };
|
|
5956
6575
|
const _hoisted_2$f = { class: "self-registration-body" };
|
|
5957
6576
|
const _hoisted_3$a = ["src"];
|
|
5958
|
-
const _hoisted_4$
|
|
5959
|
-
const _hoisted_5$
|
|
6577
|
+
const _hoisted_4$7 = { class: "self-registration__input" };
|
|
6578
|
+
const _hoisted_5$6 = { class: "self-registration-bottom" };
|
|
5960
6579
|
var script$k = /* @__PURE__ */ defineComponent({
|
|
5961
6580
|
__name: "SelfRegistration",
|
|
5962
6581
|
props: {
|
|
@@ -6116,7 +6735,7 @@ var script$k = /* @__PURE__ */ defineComponent({
|
|
|
6116
6735
|
required: ""
|
|
6117
6736
|
}, {
|
|
6118
6737
|
default: withCtx(() => [
|
|
6119
|
-
createElementVNode("div", _hoisted_4$
|
|
6738
|
+
createElementVNode("div", _hoisted_4$7, [
|
|
6120
6739
|
withDirectives(createElementVNode(
|
|
6121
6740
|
"input",
|
|
6122
6741
|
{
|
|
@@ -6132,7 +6751,10 @@ var script$k = /* @__PURE__ */ defineComponent({
|
|
|
6132
6751
|
), [
|
|
6133
6752
|
[vModelText, formState.name]
|
|
6134
6753
|
]),
|
|
6135
|
-
createVNode(script$
|
|
6754
|
+
createVNode(script$I, {
|
|
6755
|
+
"has-upload-vo": false,
|
|
6756
|
+
onComplete: onOCRInfo
|
|
6757
|
+
}, {
|
|
6136
6758
|
icon: withCtx(() => [..._cache[9] || (_cache[9] = [
|
|
6137
6759
|
createElementVNode(
|
|
6138
6760
|
"img",
|
|
@@ -6267,7 +6889,7 @@ var script$k = /* @__PURE__ */ defineComponent({
|
|
|
6267
6889
|
/* STABLE */
|
|
6268
6890
|
})
|
|
6269
6891
|
]),
|
|
6270
|
-
createElementVNode("div", _hoisted_5$
|
|
6892
|
+
createElementVNode("div", _hoisted_5$6, [
|
|
6271
6893
|
withDirectives((openBlock(), createBlock(_component_nut_button, {
|
|
6272
6894
|
block: "",
|
|
6273
6895
|
type: "primary",
|
|
@@ -6389,7 +7011,7 @@ function useHttp$1() {
|
|
|
6389
7011
|
const headers = {
|
|
6390
7012
|
Token: appkitOptions.tempToken() || appkitOptions.token(),
|
|
6391
7013
|
Appcode: appkitOptions.app(),
|
|
6392
|
-
|
|
7014
|
+
tid: appkitOptions.tenant(),
|
|
6393
7015
|
gray: appkitOptions.gray ? appkitOptions.gray() : "0"
|
|
6394
7016
|
};
|
|
6395
7017
|
const $http = createHttp({
|
|
@@ -6703,7 +7325,7 @@ var script$i = /* @__PURE__ */ defineComponent({
|
|
|
6703
7325
|
Fragment,
|
|
6704
7326
|
null,
|
|
6705
7327
|
renderList(bannerMessages.value, (item, key) => {
|
|
6706
|
-
return withDirectives((openBlock(), createBlock(script$
|
|
7328
|
+
return withDirectives((openBlock(), createBlock(script$K, {
|
|
6707
7329
|
class: normalizeClass({ show: key === activeKey.value }),
|
|
6708
7330
|
key,
|
|
6709
7331
|
showClose: item.noticeType === 0,
|
|
@@ -6974,7 +7596,8 @@ function useCommonList(api, query, loading = true, method = "GET") {
|
|
|
6974
7596
|
const isLoading = ref(false);
|
|
6975
7597
|
async function fetchData(loading2) {
|
|
6976
7598
|
loading2 && showLoading({
|
|
6977
|
-
title: "\u52A0\u8F7D\u4E2D..."
|
|
7599
|
+
title: "\u52A0\u8F7D\u4E2D...",
|
|
7600
|
+
mask: true
|
|
6978
7601
|
});
|
|
6979
7602
|
isLoading.value = true;
|
|
6980
7603
|
const $http = useHttp$1();
|
|
@@ -7031,8 +7654,8 @@ const _hoisted_3$7 = {
|
|
|
7031
7654
|
key: 0,
|
|
7032
7655
|
class: "wrapper"
|
|
7033
7656
|
};
|
|
7034
|
-
const _hoisted_4$
|
|
7035
|
-
const _hoisted_5$
|
|
7657
|
+
const _hoisted_4$6 = ["onClick"];
|
|
7658
|
+
const _hoisted_5$5 = { class: "time" };
|
|
7036
7659
|
const _hoisted_6$3 = {
|
|
7037
7660
|
key: 0,
|
|
7038
7661
|
class: "notice-list-label"
|
|
@@ -7165,7 +7788,7 @@ var script$f = /* @__PURE__ */ defineComponent({
|
|
|
7165
7788
|
createElementVNode("div", null, [
|
|
7166
7789
|
createElementVNode(
|
|
7167
7790
|
"div",
|
|
7168
|
-
_hoisted_5$
|
|
7791
|
+
_hoisted_5$5,
|
|
7169
7792
|
toDisplayString(formatMinutes(item.receiveTime)),
|
|
7170
7793
|
1
|
|
7171
7794
|
/* TEXT */
|
|
@@ -7222,7 +7845,7 @@ var script$f = /* @__PURE__ */ defineComponent({
|
|
|
7222
7845
|
/* CLASS */
|
|
7223
7846
|
)
|
|
7224
7847
|
])
|
|
7225
|
-
], 10, _hoisted_4$
|
|
7848
|
+
], 10, _hoisted_4$6)), [
|
|
7226
7849
|
[_directive_track_click, "\u6D88\u606F\u8BE6\u60C5"]
|
|
7227
7850
|
]);
|
|
7228
7851
|
}),
|
|
@@ -7264,16 +7887,21 @@ var script$f = /* @__PURE__ */ defineComponent({
|
|
|
7264
7887
|
|
|
7265
7888
|
script$f.__file = "src/notice/components/NoticeList.vue";
|
|
7266
7889
|
|
|
7267
|
-
const _hoisted_1$d =
|
|
7890
|
+
const _hoisted_1$d = ["onClick"];
|
|
7891
|
+
const _hoisted_2$9 = {
|
|
7892
|
+
key: 0,
|
|
7893
|
+
class: "custom-title-dot"
|
|
7894
|
+
};
|
|
7895
|
+
const _hoisted_3$6 = {
|
|
7268
7896
|
key: 0,
|
|
7269
7897
|
class: "read-all"
|
|
7270
7898
|
};
|
|
7271
|
-
const
|
|
7899
|
+
const _hoisted_4$5 = {
|
|
7272
7900
|
key: 0,
|
|
7273
7901
|
class: "news-item-title-icon",
|
|
7274
|
-
src: "https://cdn.ddjf.com/static/images/
|
|
7902
|
+
src: "https://cdn.ddjf.com/static/images/fnfundkit/ic_msg_system_notice.png"
|
|
7275
7903
|
};
|
|
7276
|
-
const
|
|
7904
|
+
const _hoisted_5$4 = { class: "news-item-time" };
|
|
7277
7905
|
var script$e = /* @__PURE__ */ defineComponent({
|
|
7278
7906
|
__name: "NoticeList2",
|
|
7279
7907
|
props: {
|
|
@@ -7284,9 +7912,28 @@ var script$e = /* @__PURE__ */ defineComponent({
|
|
|
7284
7912
|
emits: ["itemClick"],
|
|
7285
7913
|
setup(__props, { expose: __expose, emit: __emit }) {
|
|
7286
7914
|
const props = __props;
|
|
7915
|
+
const tabList = ref([
|
|
7916
|
+
{
|
|
7917
|
+
label: "\u5168\u90E8",
|
|
7918
|
+
value: "\u5168\u90E8"
|
|
7919
|
+
},
|
|
7920
|
+
{
|
|
7921
|
+
label: "\u4E1A\u52A1\u6D88\u606F",
|
|
7922
|
+
value: "\u4E1A\u52A1\u6D88\u606F"
|
|
7923
|
+
},
|
|
7924
|
+
{
|
|
7925
|
+
label: "\u7CFB\u7EDF\u516C\u544A",
|
|
7926
|
+
value: "\u7CFB\u7EDF\u516C\u544A"
|
|
7927
|
+
},
|
|
7928
|
+
{
|
|
7929
|
+
label: "\u672A\u8BFB",
|
|
7930
|
+
value: "\u672A\u8BFB"
|
|
7931
|
+
}
|
|
7932
|
+
]);
|
|
7287
7933
|
const $http = useHttp$1(), \u663E\u793A\u9AA8\u67B6\u5C4F = ref(true);
|
|
7288
7934
|
useDidShow(() => {
|
|
7289
7935
|
nextPage(1);
|
|
7936
|
+
getNotice();
|
|
7290
7937
|
});
|
|
7291
7938
|
const state = reactive({
|
|
7292
7939
|
search: "",
|
|
@@ -7339,6 +7986,7 @@ var script$e = /* @__PURE__ */ defineComponent({
|
|
|
7339
7986
|
}
|
|
7340
7987
|
function itemClick(item) {
|
|
7341
7988
|
read(item);
|
|
7989
|
+
getNotice();
|
|
7342
7990
|
emits("itemClick", item);
|
|
7343
7991
|
}
|
|
7344
7992
|
function read(item) {
|
|
@@ -7351,7 +7999,8 @@ var script$e = /* @__PURE__ */ defineComponent({
|
|
|
7351
7999
|
async function readAll() {
|
|
7352
8000
|
try {
|
|
7353
8001
|
showLoading({
|
|
7354
|
-
title: "\u8BF7\u7A0D\u540E..."
|
|
8002
|
+
title: "\u8BF7\u7A0D\u540E...",
|
|
8003
|
+
mask: true
|
|
7355
8004
|
});
|
|
7356
8005
|
const appkitOptions = useAppKitOptions();
|
|
7357
8006
|
const ep = endpoints["\u5168\u90E8\u5DF2\u8BFB"];
|
|
@@ -7366,9 +8015,26 @@ var script$e = /* @__PURE__ */ defineComponent({
|
|
|
7366
8015
|
});
|
|
7367
8016
|
});
|
|
7368
8017
|
} finally {
|
|
8018
|
+
setTimeout(() => {
|
|
8019
|
+
getNotice();
|
|
8020
|
+
}, 300);
|
|
7369
8021
|
hideLoading();
|
|
7370
8022
|
}
|
|
7371
8023
|
}
|
|
8024
|
+
const noticeShow = ref(false);
|
|
8025
|
+
async function getNotice() {
|
|
8026
|
+
const appkitOptions = useAppKitOptions();
|
|
8027
|
+
const $http2 = useHttp$1();
|
|
8028
|
+
$http2.get("/cas/msg/count-unread", {
|
|
8029
|
+
deviceType: 2,
|
|
8030
|
+
appCode: props.app,
|
|
8031
|
+
tenantId: appkitOptions.tenant(),
|
|
8032
|
+
userId: props.userId
|
|
8033
|
+
}).then((result) => {
|
|
8034
|
+
if (typeof result === "object") return;
|
|
8035
|
+
noticeShow.value = result > 0;
|
|
8036
|
+
});
|
|
8037
|
+
}
|
|
7372
8038
|
const emits = __emit;
|
|
7373
8039
|
__expose({
|
|
7374
8040
|
readAll
|
|
@@ -7384,7 +8050,7 @@ var script$e = /* @__PURE__ */ defineComponent({
|
|
|
7384
8050
|
class: normalizeClass(["tabContainer", { inH5: unref(isWeb)() }])
|
|
7385
8051
|
},
|
|
7386
8052
|
[
|
|
7387
|
-
createCommentVNode(' <ns-
|
|
8053
|
+
createCommentVNode(' <ns-tabs\n v-model="state.tab"\n fill="#fff"\n square\n size="xl"\n style="height: 46px"\n @change="onTabChange"\n >\n <ns-tabs-item key="\u5168\u90E8" tab="\u5168\u90E8"></ns-tabs-item>\n <ns-tabs-item key="\u4E1A\u52A1\u6D88\u606F" tab="\u4E1A\u52A1\u6D88\u606F"></ns-tabs-item>\n <ns-tabs-item key="\u7CFB\u7EDF\u516C\u544A" tab="\u7CFB\u7EDF\u516C\u544A"></ns-tabs-item>\n <ns-tabs-item key="\u672A\u8BFB" tab="\u672A\u8BFB"></ns-tabs-item>\n </ns-tabs> '),
|
|
7388
8054
|
createVNode(unref(NsTabs), {
|
|
7389
8055
|
modelValue: state.tab,
|
|
7390
8056
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => state.tab = $event),
|
|
@@ -7392,30 +8058,50 @@ var script$e = /* @__PURE__ */ defineComponent({
|
|
|
7392
8058
|
square: "",
|
|
7393
8059
|
size: "xl",
|
|
7394
8060
|
style: { "height": "46px" },
|
|
7395
|
-
|
|
8061
|
+
class: "news-tab",
|
|
8062
|
+
items: tabList.value
|
|
7396
8063
|
}, {
|
|
7397
|
-
|
|
7398
|
-
|
|
7399
|
-
|
|
7400
|
-
|
|
7401
|
-
|
|
7402
|
-
|
|
7403
|
-
|
|
7404
|
-
|
|
7405
|
-
|
|
7406
|
-
|
|
7407
|
-
|
|
7408
|
-
|
|
7409
|
-
|
|
7410
|
-
|
|
7411
|
-
|
|
7412
|
-
|
|
7413
|
-
|
|
8064
|
+
titles: withCtx(() => [
|
|
8065
|
+
(openBlock(true), createElementBlock(
|
|
8066
|
+
Fragment,
|
|
8067
|
+
null,
|
|
8068
|
+
renderList(tabList.value, (item) => {
|
|
8069
|
+
return openBlock(), createElementBlock("div", {
|
|
8070
|
+
class: normalizeClass([{ customLine: state.tab === item.value }, "nut-tabs__titles-item custom-tab-item"]),
|
|
8071
|
+
key: item.value,
|
|
8072
|
+
onClick: ($event) => {
|
|
8073
|
+
state.tab = item.value;
|
|
8074
|
+
onTabChange();
|
|
8075
|
+
}
|
|
8076
|
+
}, [
|
|
8077
|
+
createElementVNode(
|
|
8078
|
+
"div",
|
|
8079
|
+
{
|
|
8080
|
+
class: normalizeClass(["custom-title", { active: state.tab === item.value }])
|
|
8081
|
+
},
|
|
8082
|
+
[
|
|
8083
|
+
createElementVNode(
|
|
8084
|
+
"div",
|
|
8085
|
+
null,
|
|
8086
|
+
toDisplayString(item.label),
|
|
8087
|
+
1
|
|
8088
|
+
/* TEXT */
|
|
8089
|
+
),
|
|
8090
|
+
item.value === "\u672A\u8BFB" && noticeShow.value ? (openBlock(), createElementBlock("div", _hoisted_2$9, " \u2022\u2022\u2022 ")) : createCommentVNode("v-if", true)
|
|
8091
|
+
],
|
|
8092
|
+
2
|
|
8093
|
+
/* CLASS */
|
|
8094
|
+
)
|
|
8095
|
+
], 10, _hoisted_1$d);
|
|
8096
|
+
}),
|
|
8097
|
+
128
|
|
8098
|
+
/* KEYED_FRAGMENT */
|
|
8099
|
+
))
|
|
7414
8100
|
]),
|
|
7415
8101
|
_: 1
|
|
7416
8102
|
/* STABLE */
|
|
7417
|
-
}, 8, ["modelValue"]),
|
|
7418
|
-
state.list.length > 0 ? (openBlock(), createElementBlock("div",
|
|
8103
|
+
}, 8, ["modelValue", "items"]),
|
|
8104
|
+
state.list.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_3$6, [
|
|
7419
8105
|
withDirectives((openBlock(), createElementBlock("div", {
|
|
7420
8106
|
class: "btn",
|
|
7421
8107
|
onClick: readAll
|
|
@@ -7472,7 +8158,7 @@ var script$e = /* @__PURE__ */ defineComponent({
|
|
|
7472
8158
|
class: "news-item-title"
|
|
7473
8159
|
},
|
|
7474
8160
|
[
|
|
7475
|
-
item.\u662F\u516C\u544A ? (openBlock(), createElementBlock("img",
|
|
8161
|
+
item.\u662F\u516C\u544A ? (openBlock(), createElementBlock("img", _hoisted_4$5)) : createCommentVNode("v-if", true),
|
|
7476
8162
|
createTextVNode(
|
|
7477
8163
|
" " + toDisplayString(item.\u6807\u9898),
|
|
7478
8164
|
1
|
|
@@ -7493,7 +8179,7 @@ var script$e = /* @__PURE__ */ defineComponent({
|
|
|
7493
8179
|
}, null, 8, ["style", "content"]),
|
|
7494
8180
|
createElementVNode(
|
|
7495
8181
|
"div",
|
|
7496
|
-
|
|
8182
|
+
_hoisted_5$4,
|
|
7497
8183
|
toDisplayString(item.\u65F6\u95F4),
|
|
7498
8184
|
1
|
|
7499
8185
|
/* TEXT */
|
|
@@ -7774,7 +8460,7 @@ function useHttp() {
|
|
|
7774
8460
|
const headers = {
|
|
7775
8461
|
Token: appkitOptions.tempToken() || appkitOptions.token(),
|
|
7776
8462
|
Appcode: appkitOptions.app(),
|
|
7777
|
-
|
|
8463
|
+
tid: appkitOptions.tenant(),
|
|
7778
8464
|
gray: appkitOptions.gray ? appkitOptions.gray() : "0"
|
|
7779
8465
|
};
|
|
7780
8466
|
const $http = createHttp({
|
|
@@ -7950,7 +8636,8 @@ var script$b = /* @__PURE__ */ defineComponent({
|
|
|
7950
8636
|
}
|
|
7951
8637
|
async function updateImage(filePath) {
|
|
7952
8638
|
showLoading({
|
|
7953
|
-
title: "\u4E0A\u4F20\u4E2D..."
|
|
8639
|
+
title: "\u4E0A\u4F20\u4E2D...",
|
|
8640
|
+
mask: true
|
|
7954
8641
|
});
|
|
7955
8642
|
const appkitOptions = useAppKitOptions();
|
|
7956
8643
|
const $http = useHttp();
|
|
@@ -8063,6 +8750,7 @@ var script$b = /* @__PURE__ */ defineComponent({
|
|
|
8063
8750
|
title: "\u63D0\u793A",
|
|
8064
8751
|
content: "\u786E\u5B9A\u8981\u9000\u51FA\u767B\u5F55\u5417\uFF1F",
|
|
8065
8752
|
confirmText: "\u786E\u5B9A",
|
|
8753
|
+
confirmColor: "#017fff",
|
|
8066
8754
|
success: async (e) => {
|
|
8067
8755
|
if (e.confirm) {
|
|
8068
8756
|
emits("logout");
|
|
@@ -9926,7 +10614,8 @@ var script$6 = /* @__PURE__ */ defineComponent({
|
|
|
9926
10614
|
const $http = useHttp();
|
|
9927
10615
|
const appkitOptions = useAppKitOptions();
|
|
9928
10616
|
showLoading({
|
|
9929
|
-
title: "\u53CD\u9988\u4E2D..."
|
|
10617
|
+
title: "\u53CD\u9988\u4E2D...",
|
|
10618
|
+
mask: true
|
|
9930
10619
|
});
|
|
9931
10620
|
const attachment = JSON.parse(
|
|
9932
10621
|
JSON.stringify(
|
|
@@ -10636,8 +11325,9 @@ var script$2 = /* @__PURE__ */ defineComponent({
|
|
|
10636
11325
|
rules: ["required"]
|
|
10637
11326
|
}, {
|
|
10638
11327
|
append: withCtx(() => [
|
|
10639
|
-
!\u5DF2\u8BA4\u8BC1.value ? (openBlock(), createBlock(unref(script$
|
|
11328
|
+
!\u5DF2\u8BA4\u8BC1.value ? (openBlock(), createBlock(unref(script$I), {
|
|
10640
11329
|
key: 0,
|
|
11330
|
+
"has-upload-vo": false,
|
|
10641
11331
|
onComplete: onOcrComplete
|
|
10642
11332
|
})) : createCommentVNode("v-if", true)
|
|
10643
11333
|
]),
|
|
@@ -11246,4 +11936,4 @@ const AppKit = {
|
|
|
11246
11936
|
}
|
|
11247
11937
|
};
|
|
11248
11938
|
|
|
11249
|
-
export { script$t as AccountView, script$
|
|
11939
|
+
export { script$t as AccountView, script$O as AmountPicker, script$M as AppDrawer, script$L as AppVerify, script$z as BalanceCard, script$s as BalanceReminder, script$r as DateRange, script$J as DeviceVersion, script$p as ListFilter, script$4 as LoginSetting, script$i as NoticeBanner, script$h as NoticeEntry, script$f as NoticeList, script$e as NoticeList2, script$H as OcrBank, script$G as OcrBusinessLicense, script$I as OcrIcon, script$F as OcrInvoice, script$N as PageHeader, script$o as PromoterCard, script$C as RechargeResult, script$E as RechargeView, script$k as SelfRegistration, script as SharePoster, script$A as TradeView, script$D as UserAgreement, script$2 as UserAuth, script$a as UserBinding, script$9 as UserBindingSuccess, script$d as UserEntry, script$6 as UserFeedback, script$5 as UserFeedbackEntry, script$7 as UserHeadCrop, script$b as UserInfo, script$3 as UserResourceEmpty, components, compressImage, compressImageWithCanvas, createHttp, AppKit as default, defaultCryptoConfig, generateUniqueId, getCompressQuality, getSdkConfig, initTracking, installTrackingPlugin, jssdkServices, requestPayment$2 as requestPayment, requestWxH5Pay, services$1 as services, trackingSDK, useAppKit, useCountdown, useCrypto, useEncode, useLogger, usePageTracking, useSafeArea, useTabbar, useUpload, useValidator, useWxAuth };
|