@uxda/appkit 4.0.3 → 4.0.12

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.
Files changed (114) hide show
  1. package/.eslintrc.mjs +7 -7
  2. package/README.md +187 -187
  3. package/babel.config.js +12 -12
  4. package/dist/appkit.css +144 -5
  5. package/dist/index.js +730 -248
  6. package/package.json +75 -80
  7. package/project.config.json +15 -15
  8. package/project.tt.json +13 -13
  9. package/rollup.config.mjs +56 -56
  10. package/src/Appkit.ts +65 -65
  11. package/src/balance/api/endpoints.ts +126 -126
  12. package/src/balance/api/index.ts +82 -82
  13. package/src/balance/components/AccountView.vue +748 -748
  14. package/src/balance/components/BalanceCard.vue +205 -209
  15. package/src/balance/components/BalanceReminder.vue +85 -85
  16. package/src/balance/components/ConsumptionFilter.vue +218 -218
  17. package/src/balance/components/ConsumptionRules.vue +68 -68
  18. package/src/balance/components/DateFilter.vue +226 -226
  19. package/src/balance/components/DateRange.vue +62 -0
  20. package/src/balance/components/ListFilter.vue +40 -0
  21. package/src/balance/components/ListFilterPicker.vue +195 -0
  22. package/src/balance/components/SecondBalance.vue +71 -71
  23. package/src/balance/components/Tip.vue +45 -45
  24. package/src/balance/components/index.ts +13 -9
  25. package/src/balance/types.ts +91 -90
  26. package/src/components/bt-cropper/index.vue +774 -774
  27. package/src/components/bt-cropper/utils/calcCropper.js +42 -42
  28. package/src/components/bt-cropper/utils/calcImagePosition.js +23 -23
  29. package/src/components/bt-cropper/utils/calcImageSize.js +37 -37
  30. package/src/components/bt-cropper/utils/calcPointDistance.js +12 -12
  31. package/src/components/bt-cropper/utils/calcRightAndBottom.js +7 -7
  32. package/src/components/bt-cropper/utils/ratio.js +3 -3
  33. package/src/components/bt-cropper/utils/tools.js +25 -25
  34. package/src/components/dd-area/index.vue +225 -225
  35. package/src/components/dd-icon/doc.md +21 -21
  36. package/src/components/dd-icon/index.vue +23 -23
  37. package/src/components/dd-notice-bar/index.vue +78 -78
  38. package/src/components/dd-search/doc.md +34 -34
  39. package/src/components/dd-search/index.vue +168 -168
  40. package/src/components/dd-selector/index.vue +124 -124
  41. package/src/components/dd-skeleton/doc.md +19 -19
  42. package/src/components/dd-skeleton/index.vue +36 -36
  43. package/src/components/ocr-id/index.vue +114 -114
  44. package/src/components/ocr-id/types.d.ts +12 -12
  45. package/src/global.ts +6 -6
  46. package/src/index.ts +89 -89
  47. package/src/main.scss +1 -1
  48. package/src/notice/api/endpoints.ts +17 -17
  49. package/src/notice/api/index.ts +82 -82
  50. package/src/notice/components/NoticeBanner.vue +243 -243
  51. package/src/notice/components/NoticeEntry.vue +99 -99
  52. package/src/notice/components/NoticeList.vue +315 -315
  53. package/src/notice/components/NoticePopup.vue +161 -161
  54. package/src/notice/components/index.ts +5 -5
  55. package/src/notice/components/useCommonList.ts +86 -86
  56. package/src/notice/components/useNotice.ts +35 -35
  57. package/src/notice/index.ts +1 -1
  58. package/src/notice/types.ts +25 -25
  59. package/src/payment/api/config.ts +7 -7
  60. package/src/payment/api/endpoints.ts +103 -103
  61. package/src/payment/api/index.ts +71 -71
  62. package/src/payment/components/AmountPicker.vue +93 -93
  63. package/src/payment/components/RechargeResult.vue +69 -69
  64. package/src/payment/components/RechargeView.vue +154 -154
  65. package/src/payment/components/RightsPicker.vue +105 -105
  66. package/src/payment/components/TradeView.vue +298 -298
  67. package/src/payment/components/UserAgreement.vue +234 -234
  68. package/src/payment/components/index.ts +22 -22
  69. package/src/payment/index.ts +5 -5
  70. package/src/payment/services/index.ts +16 -16
  71. package/src/payment/services/invoke-recharge.ts +25 -25
  72. package/src/payment/services/request-payment.ts +58 -58
  73. package/src/payment/types.ts +28 -28
  74. package/src/register/components/SelfRegistration.vue +254 -254
  75. package/src/register/components/index.ts +2 -2
  76. package/src/shared/components/AppDrawer.vue +58 -58
  77. package/src/shared/components/AppVerify.vue +84 -0
  78. package/src/shared/components/DeviceVersion.vue +68 -68
  79. package/src/shared/components/EmptyView.vue +33 -33
  80. package/src/shared/components/OcrIcon.vue +119 -0
  81. package/src/shared/components/PageHeader.vue +79 -79
  82. package/src/shared/components/index.ts +7 -5
  83. package/src/shared/composables/index.ts +6 -5
  84. package/src/shared/composables/useCountdown.ts +46 -46
  85. package/src/shared/composables/useDragBox.ts +97 -97
  86. package/src/shared/composables/useEncode.ts +43 -43
  87. package/src/shared/composables/useSafeArea.ts +46 -46
  88. package/src/shared/composables/useTabbar.ts +24 -24
  89. package/src/shared/composables/useUpload.ts +55 -0
  90. package/src/shared/composables/useValidator.ts +31 -31
  91. package/src/shared/http/Http.ts +136 -136
  92. package/src/shared/http/index.ts +1 -1
  93. package/src/shared/http/types.ts +157 -157
  94. package/src/shared/index.ts +3 -3
  95. package/src/shared/weixin/payment.ts +38 -38
  96. package/src/styles/fonts.scss +2 -2
  97. package/src/styles/vars.scss +3 -3
  98. package/src/user/api/endpoints.ts +17 -17
  99. package/src/user/api/index.ts +87 -87
  100. package/src/user/components/LoginSetting.vue +114 -114
  101. package/src/user/components/UserBinding.vue +307 -307
  102. package/src/user/components/UserBindingSuccess.vue +80 -80
  103. package/src/user/components/UserEntry.vue +142 -142
  104. package/src/user/components/UserFeedback.vue +440 -440
  105. package/src/user/components/UserFeedbackEntry.vue +192 -192
  106. package/src/user/components/UserHeadCrop.vue +65 -65
  107. package/src/user/components/UserInfo.vue +632 -632
  108. package/src/user/components/UserResourceEmpty.vue +75 -75
  109. package/src/user/components/index.ts +21 -21
  110. package/src/user/index.ts +1 -1
  111. package/tsconfig.json +30 -30
  112. package/types/global.d.ts +21 -21
  113. package/types/vue.d.ts +10 -10
  114. package/dist/assets/asset-3B_CoPto +0 -1
package/dist/index.js CHANGED
@@ -1,12 +1,13 @@
1
1
  import { GridItem, Grid, Popup, Checkbox, Button, Dialog, DatePicker, Radio, RadioGroup, FormItem, Form, Skeleton, Cell, Input, Step, Steps } from '@nutui/nutui-taro';
2
2
  import '@nutui/nutui-taro/dist/packages/button/style/css';
3
3
  import '@nutui/nutui-taro/dist/packages/checkbox/style/css';
4
- import { defineComponent, reactive, openBlock, createBlock, withCtx, createElementBlock, Fragment, renderList, normalizeClass, createElementVNode, toDisplayString, createTextVNode, createStaticVNode, ref, computed, onUnmounted, createCommentVNode, renderSlot, createVNode, normalizeStyle, onMounted, unref, watch, resolveComponent, withDirectives, vShow, vModelText, watchPostEffect, withModifiers } from 'vue';
4
+ import { defineComponent, reactive, openBlock, createBlock, withCtx, createElementBlock, Fragment, renderList, normalizeClass, createElementVNode, toDisplayString, createTextVNode, createStaticVNode, ref, computed, onUnmounted, createCommentVNode, renderSlot, createVNode, unref, isRef, normalizeStyle, onMounted, watch, resolveComponent, withDirectives, vShow, 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
7
  import '@nutui/nutui-taro/dist/packages/popup/style/css';
8
8
  import Taro, { useDidShow, useRouter } from '@tarojs/taro';
9
9
  import { isIdentityCard, isMobilePhone } from 'validator';
10
+ import { NsForm, NsInput, NsButton, NsIcon, useNutshell } from '@uxda/nutshell/taro';
10
11
  import debounce from 'lodash/debounce';
11
12
  import '@nutui/nutui-taro/dist/packages/dialog/style/css';
12
13
  import '@nutui/nutui-taro/dist/packages/datepicker/style/css';
@@ -22,9 +23,9 @@ import '@nutui/nutui-taro/dist/packages/skeleton/style/css';
22
23
  import '@nutui/nutui-taro/dist/packages/steps/style/css';
23
24
  import '@nutui/nutui-taro/dist/packages/step/style/css';
24
25
 
25
- const _hoisted_1$A = { class: "token-line number" };
26
- const _hoisted_2$u = { class: "number" };
27
- var script$C = /* @__PURE__ */ defineComponent({
26
+ const _hoisted_1$E = { class: "token-line number" };
27
+ const _hoisted_2$y = { class: "number" };
28
+ var script$H = /* @__PURE__ */ defineComponent({
28
29
  __name: "AmountPicker",
29
30
  props: {
30
31
  items: { type: Array, required: true, default: () => [] },
@@ -62,7 +63,7 @@ var script$C = /* @__PURE__ */ defineComponent({
62
63
  default: withCtx(() => [
63
64
  createElementVNode(
64
65
  "h4",
65
- _hoisted_1$A,
66
+ _hoisted_1$E,
66
67
  toDisplayString(amount.token),
67
68
  1
68
69
  /* TEXT */
@@ -71,7 +72,7 @@ var script$C = /* @__PURE__ */ defineComponent({
71
72
  createTextVNode("\xA5"),
72
73
  createElementVNode(
73
74
  "span",
74
- _hoisted_2$u,
75
+ _hoisted_2$y,
75
76
  toDisplayString(amount.amount),
76
77
  1
77
78
  /* TEXT */
@@ -93,21 +94,21 @@ var script$C = /* @__PURE__ */ defineComponent({
93
94
  }
94
95
  });
95
96
 
96
- script$C.__file = "src/payment/components/AmountPicker.vue";
97
+ script$H.__file = "src/payment/components/AmountPicker.vue";
97
98
 
98
- const _hoisted_1$z = { class: "agreement-doc" };
99
- const _hoisted_2$t = /* @__PURE__ */ createStaticVNode('<h1>\u5927\u9053\u4E91\u5E73\u53F0\u4E91\u8C46\u5145\u503C\u670D\u52A1\u534F\u8BAE</h1><p>2023-12-01</p><p>\xA0</p><p>\u6B22\u8FCE\u60A8\u4F7F\u7528\u5927\u9053\u4E91\u5E73\u53F0\u4E91\u8C46\u5145\u503C\u670D\u52A1\uFF01</p><p>\xA0</p><p>\u3010\u63D0\u793A\u6761\u6B3E\u3011</p><p> \u6B22\u8FCE\u60A8\u4E0E\u5927\u9053\u4E91\u5E73\u53F0\u670D\u52A1\u63D0\u4F9B\u8005\u7B7E\u7F72\u300A\u5927\u9053\u4E91\u5E73\u53F0\u4E91\u8C46\u5145\u503C\u670D\u52A1\u534F\u8BAE\u300B\uFF08\u4EE5\u4E0B\u7B80\u79F0\u201C\u672C\u534F\u8BAE\u201D\uFF09\u5E76\u4F7F\u7528\u5927\u9053\u4E91\u5E73\u53F0\u4E91\u8C46\u503C\u670D\u52A1\uFF01\u60A8\u7406\u89E3\u548C\u540C\u610F\u672C\u534F\u8BAE\u7CFB\u6839\u636E\u300A\u7528\u6237\u6CE8\u518C\u534F\u8BAE\u300B\u7B49\u534F\u8BAE\u5236\u5B9A\uFF0C\u672C\u534F\u8BAE\u4E3A\u524D\u8FF0\u534F\u8BAE\u4E0D\u53EF\u5206\u5272\u7684\u4E00\u90E8\u5206\uFF0C\u672C\u534F\u8BAE\u672A\u89C4\u5B9A\u7684\uFF0C\u9002\u7528\u300A\u7528\u6237\u6CE8\u518C\u534F\u8BAE\u300B\u7B49\u534F\u8BAE\u4E2D\u7684\u76F8\u5173\u7EA6\u5B9A\u3002 </p><p>\xA0</p><p>\u3010\u5BA1\u614E\u9605\u8BFB\u3011</p><p><span class="bold">\u5728\u4F7F\u7528\u672C\u670D\u52A1\u524D\uFF0C\u8BF7\u60A8\u52A1\u5FC5\u5BA1\u614E\u9605\u8BFB\u3001\u5145\u5206\u7406\u89E3\u5404\u6761\u6B3E\u5185\u5BB9\uFF0C\u7279\u522B\u662F\u514D\u9664\u6216\u9650\u5236\u8D23\u4EFB\u7684\u76F8\u5E94\u6761\u6B3E\uFF0C\u4EE5\u53CA\u5F00\u901A\u6216\u4F7F\u7528\u67D0\u9879\u670D\u52A1\u7684\u5355\u72EC\u534F\u8BAE\uFF0C\u60A8\u4F7F\u7528\u6B64\u670D\u52A1\u5373\u8868\u793A\u60A8\u63A5\u53D7\u672C\u534F\u8BAE\u3002\u9650\u5236\u6216\u514D\u9664\u8D23\u4EFB\u6761\u6B3E\u53EF\u80FD\u4EE5\u52A0\u7C97\u5F62\u5F0F\u63D0\u793A\u60A8\u6CE8\u610F\u3002</span></p><p>\xA0</p><p>\u3010\u7279\u522B\u63D0\u793A\u3011</p><p><span class="bold">\u5145\u503C\u7528\u6237\u786E\u8BA4\uFF0C\u81EA\u5DF1\u4E3A\u5E74\u6EE118\u5468\u5C81\u4E14\u5177\u6709\u5B8C\u5168\u6C11\u4E8B\u884C\u4E3A\u80FD\u529B\u7684\u6210\u5E74\u4EBA\uFF0C\u9664\u975E\u60A8\u5DF2\u9605\u8BFB\u5E76\u63A5\u53D7\u672C\u534F\u8BAE\u6240\u6709\u6761\u6B3E\uFF0C\u5426\u5219\u60A8\u65E0\u6743\u4F7F\u7528\u5927\u9053\u4E91\u5E73\u53F0\u5145\u503C\u670D\u52A1\uFF08\u4EE5\u4E0B\u7B80\u79F0\u201C\u672C\u670D\u52A1\u201D\uFF09\u3002\u60A8\u5BF9\u672C\u670D\u52A1\u7684\u4EFB\u4F55\u8D2D\u4E70\u3001\u767B\u5F55\u3001\u67E5\u770B\u7B49\u4F7F\u7528\u884C\u4E3A\u5373\u89C6\u4E3A\u60A8\u5DF2\u9605\u8BFB\u5E76\u540C\u610F\u672C\u534F\u8BAE\u7684\u7EA6\u675F\u3002</span></p><p>\xA0</p><p><span class="bold">\u4E00\u3001\u534F\u8BAE\u7684\u8303\u56F4</span></p><p>\xA0</p><p>1.1\u3010\u534F\u8BAE\u9002\u7528\u4E3B\u4F53\u8303\u56F4\u3011</p><p>\u672C\u534F\u8BAE\u662F\u60A8\u4E0E\u5927\u9053\u4E91\u5E73\u53F0\u4E4B\u95F4\u5173\u4E8E\u60A8\u4F7F\u7528\u672C\u670D\u52A1\u6240\u8BA2\u7ACB\u7684\u534F\u8BAE\u3002</p><p>\xA0</p><p>1.2\u3010\u670D\u52A1\u5185\u5BB9\u3011</p><p> \u672C\u534F\u8BAE\u9879\u4E0B\u7684\u670D\u52A1\u662F\u6307\u5927\u9053\u4E91\u5E73\u53F0\u5411\u7528\u6237\u63D0\u4F9B\u7684\u4E91\u8C46\u5145\u503C\u670D\u52A1\uFF08\u4EE5\u4E0B\u7B80\u79F0\u201C\u672C\u670D\u52A1\u201D\uFF09\u3002\u672C\u534F\u8BAE\u5185\u5BB9\u540C\u65F6\u5305\u62EC\u5927\u9053\u4E91\u5E73\u53F0\u53EF\u80FD\u4E0D\u65AD\u53D1\u5E03\u7684\u5173\u4E8E\u672C\u670D\u52A1\u7684\u76F8\u5173\u534F\u8BAE\u3001\u4E1A\u52A1\u89C4\u5219\u7B49\u5185\u5BB9\u3002\u4E0A\u8FF0\u5185\u5BB9\u4E00\u7ECF\u6B63\u5F0F\u53D1\u5E03\uFF0C\u5373\u4E3A\u672C\u534F\u8BAE\u4E0D\u53EF\u5206\u5272\u7684\u7EC4\u6210\u90E8\u5206\uFF0C\u60A8\u540C\u6837\u5E94\u5F53\u9075\u5B88\u3002 </p><p>\xA0</p><p><span class="bold">\u4E8C\u3001\u540D\u8BCD\u5B9A\u4E49</span></p><p>\xA0</p><p><span class="bold">2.1\u3010\u4E91\u8C46\u3011</span></p><p><span class="bold">2.1.1 \u4E91\u8C46\u7CFB\u5927\u9053\u4E91\u5E73\u53F0\u4E3A\u7528\u6237\u63D0\u4F9B\u7684\u6570\u5B57\u5316\u5546\u54C1\uFF0C\u7528\u4E8E\u5927\u9053\u4E91\u5E73\u53F0\u4E0A\u7684\u4EA7\u54C1\u6743\u76CA\u4F7F\u7528\u62B5\u6263\u3002</span></p><p>\xA0</p><p><span class="bold">2.1.2 \u4E91\u8C46\u5C5E\u4E8E\u5728\u7EBF\u4EA4\u4ED8\u7684\u6570\u5B57\u5316\u5546\u54C1\uFF0C\u4E91\u8C46\u7684\u8D2D\u4E70\u8D39\u7528\u7CFB\u6570\u5B57\u5316\u5546\u54C1\u4EF7\u683C\uFF0C\u800C\u4E0D\u5177\u6709\u9884\u4ED8\u6B3E\u6027\u8D28\u6216\u8005\u5B9A\u91D1\u3001\u50A8\u503C\u7B49\u6027\u8D28\uFF0C\u4E91\u8C46\u8D2D\u4E70\u6210\u529F\u540E\u4E0D\u53EF\u8F6C\u8BA9\u6216\u8005\u9006\u5411\u5151\u6362\u4E3A\u4EBA\u6C11\u5E01\u6216\u5176\u4ED6\u8D27\u5E01\u3002</span></p><p><span class="bold">2.1.3 \u4E91\u8C46\u4EC5\u9650\u4E8E\u7528\u6237\u81EA\u5DF1\u8D26\u53F7\u5728\u5927\u9053\u4E91\u5E73\u53F0\u4F7F\u7528\uFF0C\u4E0D\u5F97\u4EE5\u76C8\u5229\u7B49\u975E\u4E2A\u4EBA\u4F7F\u7528\u76EE\u7684\u4F7F\u7528\u4E91\u8C46\uFF0C\u6216\u901A\u8FC7\u8D60\u4E0E\u3001\u51FA\u501F\u3001\u8F6C\u8BA9\u3001\u9500\u552E\u3001\u62B5\u62BC\u3001\u8BB8\u53EF\u4ED6\u4EBA\u4F7F\u7528\u7B49\u65B9\u5F0F\u83B7\u53D6\u6216\u5904\u7F6E\u4E91\u8C46\u3002</span></p><p><span class="bold">2.1.4 \u4EBA\u6C11\u5E01\u548C\u4E91\u8C46\u5151\u6362\u7684\u6BD4\u4F8B\u4E3A1:1\uFF08\u53731\u5143\u4EBA\u6C11\u5E01=1\u4E91\u8C46\uFF09\uFF0C\u4E91\u8C46\u5728\u4EFB\u4F55\u60C5\u51B5\u4E0B\u90FD\u4E0D\u5177\u6709\u6CD5\u5B9A\u8D27\u5E01\u7684\u6D41\u8F6C\u53CA\u652F\u4ED8\u529F\u80FD\uFF0C\u4E0D\u5F97\u53CD\u5411\u5151\u6362\u4E3A\u4EBA\u6C11\u5E01\u6216\u5176\u4ED6\u6CD5\u5B9A\u8D27\u5E01\u3001\u5B9E\u7269\u548C\u5176\u4ED6\u865A\u62DF\u8D27\u5E01\uFF0C\u8BF7\u60A8\u6839\u636E\u5B9E\u9645\u9700\u6C42\u8D2D\u4E70\u76F8\u5E94\u6570\u91CF\u7684\u4E91\u8C46\u3002</span></p><p>2.2\u3010\u5927\u9053\u4E91\u5E73\u53F0\u3011</p><p> \u6307\u7531<span class="bold">\u5927\u9053\u4E91\u5E73\u53F0\u6240\u62E5\u6709\u3001\u63A7\u5236\u3001\u7ECF\u8425\u7684\u5927\u9053\u4E91\u5FAE\u4FE1\u5C0F\u7A0B\u5E8F\u3001\u8702\u9E1F\u6C47\u4E91\u5FAE\u4FE1\u5C0F\u7A0B\u5E8F\u3001\u8702\u9E1F\u5C45\u95F4\u7CFB\u7EDF\u3001\u8702\u9E1F\u5468\u8F6C\u7CFB\u7EDF\u3002</span></p><p>\xA0</p><p><span class="bold">\u4E09\u3001\u6743\u5229\u4E49\u52A1</span></p><p>\xA0</p><p> 3.1.1 \u60A8\u627F\u8BFA\u5177\u5907\u4F7F\u7528\u672C\u670D\u52A1\u6240\u5FC5\u9700\u7684\u6C11\u4E8B\u80FD\u529B\u548C\u5408\u6CD5\u8D44\u683C\uFF0C\u6709\u6743\u4E14\u6709\u80FD\u529B\u540C\u610F\u672C\u534F\u8BAE\u53CA\u76F8\u5173\u534F\u8BAE\u7684\u5168\u90E8\u5185\u5BB9\u3002 </p><p> 3.1.2 <span class="bold">\u60A8\u5E94\u59A5\u5584\u4FDD\u7BA1\u5927\u9053\u4E91\u5E73\u53F0\u8D26\u53F7\u7684\u7528\u6237\u540D\u53CA\u5176\u5BC6\u7801\uFF0C\u5E76\u5BF9\u8BE5\u8D26\u53F7\u4E0B\u7684\u4E00\u5207\u64CD\u4F5C\u884C\u4E3A\u8D1F\u8D23\u3002\u5982\u60A8\u7684\u5927\u9053\u4E91\u8D26\u53F7\u5B58\u5728\u5F02\u5E38\u60C5\u5F62\uFF0C\u60A8\u53EF\u4EE5\u8054\u7CFB\u5BA2\u670D\u6302\u5931\u6216\u51BB\u7ED3\u60A8\u7684\u8D26\u6237\u3002\u6B64\u65F6\uFF0C\u5927\u9053\u4E91\u5E73\u53F0\u9700\u8981\u60A8\u63D0\u4F9B\u5927\u9053\u4E91\u8D26\u53F7\u7684\u6CE8\u518C\u4FE1\u606F\u4EE5\u5B8C\u6210\u8EAB\u4EFD\u6838\u9A8C\u3002\u60A8\u7406\u89E3\u5E76\u786E\u8BA4\uFF0C\u7531\u4E8E\u6280\u672F\u5C40\u9650\uFF0C\u5927\u9053\u4E91\u5E73\u53F0\u65E0\u6CD5\u4FDD\u8BC1\u8EAB\u4EFD\u6838\u9A8C\u7684\u51C6\u786E\u6027\u548C\u771F\u5B9E\u6027\u3002</span></p><p> 3.1.3 \u60A8\u627F\u8BFA\u4E0D\u5F97\u901A\u8FC7\u975E\u5927\u9053\u4E91\u5E73\u53F0\u6307\u5B9A\u9014\u5F84\u6216\u4EFB\u4F55\u8FDD\u53CD\u76F8\u5173\u6CD5\u89C4\u3001\u8FDD\u53CD\u672C\u534F\u8BAE\u3001\u4E0D\u6B63\u5F53\u624B\u6BB5\u7B49\u8D2D\u4E70\u4E91\u8C46\u3002 </p><p> 3.1.4 \u5927\u9053\u4E91\u5E73\u53F0\u53EF\u80FD\u4F1A\u6839\u636E\u672C\u670D\u52A1\u7684\u6574\u4F53\u89C4\u5212\uFF0C\u5BF9\u672C\u670D\u52A1\u7684\u6536\u8D39\u6807\u51C6\u3001\u65B9\u5F0F\u7B49\u8FDB\u884C\u4FEE\u6539\u548C\u53D8\u66F4\uFF0C\u524D\u8FF0\u4FEE\u6539\u3001\u53D8\u66F4\uFF0C\u5927\u9053\u4E91\u5E73\u53F0\u5C06\u5728\u76F8\u5E94\u670D\u52A1\u9875\u9762\u8FDB\u884C\u901A\u77E5\u6216\u516C\u544A\u3002\u5982\u679C\u60A8\u4E0D\u540C\u610F\u4E0A\u8FF0\u4FEE\u6539\u3001\u53D8\u66F4\uFF0C\u5219\u5E94\u505C\u6B62\u4F7F\u7528\u672C\u670D\u52A1\u3002\u5426\u5219\uFF0C\u60A8\u7684\u4EFB\u4F55\u8D2D\u4E70\u3001\u767B\u5F55\u3001\u67E5\u770B\u7B49\u4F7F\u7528\u884C\u4E3A\uFF0C\u5373\u89C6\u4E3A\u60A8\u540C\u610F\u4E0A\u8FF0\u4FEE\u6539\u3001\u53D8\u66F4\u3002 </p><p> 3.1.5 \u5927\u9053\u4E91\u5E73\u53F0\u5728\u76EE\u524D\u6280\u672F\u6C34\u5E73\u4E0B\uFF0C\u6700\u5927\u7A0B\u5EA6\u5730\u4FDD\u969C\u672C\u529F\u80FD\u7684\u6B63\u5E38\u8FD0\u884C\uFF0C\u4EE5\u7EF4\u62A4\u4F60\u7684\u5229\u76CA\u3002\u5927\u9053\u4E91\u5E73\u53F0\u5BF9\u672C\u670D\u52A1\u4E0D\u4F5C\u4EFB\u4F55\u660E\u793A\u6216\u6697\u793A\u7684\u4FDD\u8BC1\uFF0C\u5305\u62EC\u4F46\u4E0D\u9650\u4E8E\u5BF9\u672C\u670D\u52A1\u7684\u53EF\u9002\u7528\u6027\u3001\u6301\u7EED\u6027\u7B49\u3002 </p><p>\xA0</p><p><span class="bold">\u56DB\u3001\u4E91\u8C46\u4F7F\u7528\u89C4\u5219\u53CA\u7279\u522B\u7EA6\u5B9A</span></p><p>\xA0</p><p><span class="bold">4.1 \u5927\u9053\u4E91\u5E73\u53F0\u5411\u60A8\u63D0\u4F9B\u8D2D\u4E70\u3001\u7BA1\u7406\u4E91\u8C46\u6709\u5173\u7684\u7F51\u7EDC\u589E\u503C\u670D\u52A1\uFF0C\u5305\u62EC\u4F46\u4E0D\u9650\u4E8E\u4E91\u8C46\u7684\u8D2D\u4E70\u3001\u8D26\u6237\u7BA1\u7406\u9875\u9762\u3001\u4EA4\u6613\u660E\u7EC6\u67E5\u8BE2\u670D\u52A1\uFF08\u4EE5\u4E0B\u79F0\u201C\u4E91\u8C46\u670D\u52A1\u201D\uFF09\u3002\u4E91\u8C46\u670D\u52A1\u7684\u5177\u4F53\u5185\u5BB9\u8BF7\u4EE5\u76F8\u5173\u9875\u9762\u7684\u4FE1\u606F\u4E3A\u51C6\u3002\u60A8\u540C\u610F\u4EE5\u5927\u9053\u4E91\u5E73\u53F0\u7559\u5B58\u7684\u4EA4\u6613\u8BB0\u5F55\u4F5C\u4E3A\u4E91\u8C46\u8D2D\u4E70\u7684\u552F\u4E00\u6709\u6548\u4F9D\u636E\uFF0C\u5982\u60A8\u5BF9\u5927\u9053\u4E91\u5E73\u53F0\u7559\u5B58\u7684\u4EA4\u6613\u8BB0\u5F55\u6709\u5F02\u8BAE\uFF0C\u60A8\u5E94\u7ACB\u5373\u5411\u5927\u9053\u4E91\u5E73\u53F0\u63D0\u51FA\uFF0C\u5927\u9053\u4E91\u5E73\u53F0\u7ECF\u6838\u5BF9\u540E\u53D1\u73B0\u786E\u6709\u9519\u8BEF\u7684\uFF0C\u5C06\u4E88\u4EE5\u6539\u6B63\u3002</span></p><p><span class="bold">4.2. \u60A8\u5E94\u8BE5\u901A\u8FC7\u5927\u9053\u4E91\u5E73\u53F0\u5B98\u65B9\u6307\u5B9A\u7684\u5305\u62EC\u4F46\u4E0D\u9650\u4E8E\u652F\u4ED8\u5B9D\u3001\u8D22\u4ED8\u901A\u7B49\u65B9\u5F0F\u4F9D\u7EA6\u652F\u4ED8\u4E00\u5B9A\u8D39\u7528\u540E\u8D2D\u4E70\u4E91\u8C46\u3002</span></p><p><span class="bold">4.3 \u60A8\u5FC5\u987B\u4E3A\u7ED1\u5B9A\u7684\u652F\u4ED8\u6E20\u9053\u8D26\u6237\u5F00\u6237\u4EBA/\u6301\u6709\u4EBA\uFF0C\u53EF\u5408\u6CD5\u3001\u6709\u6548\u4F7F\u7528\u8BE5\u8D26\u6237\u4E14\u672A\u4FB5\u72AF\u4EFB\u4F55\u7B2C\u4E09\u65B9\u6743\u76CA\uFF0C\u5426\u5219\u56E0\u6B64\u9020\u6210\u652F\u4ED8\u8D26\u6237\u5B9E\u9645\u6240\u6709\u4EBA\u635F\u5931\u7684\uFF0C\u5E94\u7531\u60A8\u5355\u72EC\u8D1F\u8D23\u89E3\u51B3\u7531\u6B64\u4EA7\u751F\u7684\u7EA0\u7EB7\u5E76\u627F\u62C5\u5168\u90E8\u6CD5\u5F8B\u8D23\u4EFB\u3002</span></p><p><span class="bold">4.4 \u60A8\u5E94\u5728\u8D2D\u4E70\u4E91\u8C46\u65F6\u4ED4\u7EC6\u786E\u8BA4\u8D26\u53F7\u3001\u652F\u4ED8\u8D26\u6237\u3001\u8D2D\u4E70\u6570\u91CF\u3001\u8D2D\u4E70\u8D39\u7528\u7B49\u4EA4\u6613\u4FE1\u606F\u51C6\u786E\u65E0\u8BEF\uFF0C\u5982\u56E0\u60A8\u81EA\u8EAB\u539F\u56E0\uFF08\u5305\u62EC\u4F46\u4E0D\u9650\u4E8E\u8D26\u53F7\u9519\u8BEF\u3001\u652F\u4ED8\u8D26\u6237\u9519\u8BEF\u3001\u64CD\u4F5C\u4E0D\u5F53\u3001\u8D26\u53F7/\u652F\u4ED8\u8D26\u6237\u5B58\u5728\u5F02\u5E38\u60C5\u51B5\u7B49\uFF09\u5BFC\u81F4\u7684\u4EFB\u4F55\u635F\u5931\u5E94\u7531\u60A8\u81EA\u884C\u627F\u62C5\u3002</span></p><p><span class="bold">4.5 \u5927\u9053\u4E91\u5E73\u53F0\u6709\u6743\u51B3\u5B9A\u4E91\u8C46\u5982\u4F55\u88AB\u4F7F\u7528\uFF08\u5305\u62EC\u5151\u6362\u865A\u62DF\u5546\u54C1\u7B49\u4E8E\u5927\u9053\u4E91\u5E73\u53F0\u4E0A\u4F7F\u7528\u7684\u4EA7\u54C1\u6216\u670D\u52A1\uFF09\u3002</span></p><p>\xA0</p><p><span class="bold">\u4E94\u3001\u884C\u4E3A\u89C4\u8303</span></p><p>\xA0</p><p>5.1\u3010\u7528\u6237\u7981\u6B62\u884C\u4E3A\u3011</p><p>\u672C\u670D\u52A1\u4EC5\u4F9B\u60A8\u4E2A\u4EBA\u4F7F\u7528\uFF0C\u9664\u975E\u7ECF\u5927\u9053\u4E91\u5E73\u53F0\u4E66\u9762\u8BB8\u53EF\uFF0C\u60A8\u4E0D\u5F97\u8FDB\u884C\u4EE5\u4E0B\u884C\u4E3A\uFF1A</p><p>5.1.1 \u5C06\u672C\u670D\u52A1\u8F6C\u8BA9\u8BB8\u53EF\u4ED6\u4EBA\u4F7F\u7528\uFF1B</p><p>5.1.2 \u5176\u4ED6\u672A\u7ECF\u5927\u9053\u4E91\u5E73\u53F0\u4E66\u9762\u8BB8\u53EF\u7684\u884C\u4E3A\u3002</p><p>5.2\u3010\u884C\u4E3A\u8D23\u4EFB\u3011</p><p><span class="bold">\u60A8\u5145\u5206\u4E86\u89E3\u5E76\u540C\u610F\uFF0C\u60A8\u7528\u4EE5\u53C2\u4E0E\u672C\u670D\u52A1\u7684\u5927\u9053\u4E91\u8D26\u53F7\u7531\u60A8\u72EC\u7ACB\u7EF4\u62A4\u3001\u4F7F\u7528\u5E76\u72EC\u7ACB\u627F\u62C5\u5168\u90E8\u8D23\u4EFB\uFF0C\u5927\u9053\u4E91\u5E73\u53F0\u4E0D\u4F1A\u3001\u4E5F\u4E0D\u53EF\u80FD\u53C2\u4E0E\u8BE5\u8D26\u53F7\u7684\u4F7F\u7528\u7B49\u4EFB\u4F55\u6D3B\u52A8\u3002\u60A8\u5E94\u5BF9\u672C\u670D\u52A1\u4E2D\u7684\u5185\u5BB9\u81EA\u884C\u52A0\u4EE5\u5224\u65AD\uFF0C\u5E76\u627F\u62C5\u56E0\u4F7F\u7528\u5185\u5BB9\u800C\u5F15\u8D77\u7684\u6240\u6709\u98CE\u9669\uFF0C\u5305\u62EC\u56E0\u5BF9\u5185\u5BB9\u7684\u6B63\u786E\u6027\u3001\u5B8C\u6574\u6027\u6216\u5B9E\u7528\u6027\u7684\u4F9D\u8D56\u800C\u4EA7\u751F\u7684\u98CE\u9669\u3002\u5927\u9053\u4E91\u5E73\u53F0\u65E0\u6CD5\u4E14\u4E0D\u4F1A\u5BF9\u56E0\u524D\u8FF0\u98CE\u9669\u800C\u5BFC\u81F4\u7684\u4EFB\u4F55\u635F\u5931\u6216\u635F\u5BB3\u627F\u62C5\u4EFB\u4F55\u8D23\u4EFB\u3002</span></p><p>\xA0</p><p><span class="bold">\u516D\u3001\u670D\u52A1\u7684\u53D8\u66F4\u3001\u4E2D\u6B62\u6216\u7EC8\u6B62</span></p><p>\xA0</p><p> \u60A8\u5145\u5206\u4E86\u89E3\u5E76\u540C\u610F\uFF0C\u7531\u4E8E\u4E92\u8054\u7F51\u670D\u52A1\u7684\u7279\u6B8A\u6027\uFF0C\u5927\u9053\u4E91\u5E73\u53F0\u53EF\u4EE5\u5728\u4E0D\u63D0\u524D\u901A\u77E5\u60A8\u7684\u60C5\u51B5\u4E4B\u4E0B\uFF0C\u6839\u636E\u672C\u670D\u52A1\u7684\u6574\u4F53\u89C4\u5212\uFF0C\u5355\u65B9\u6709\u6743\u5BF9\u672C\u670D\u52A1\u5185\u5BB9\u8FDB\u884C\u53D8\u66F4\u3001\u4E2D\u6B62\u6216\u7EC8\u6B62\u3002 </p><p>\xA0</p><p><span class="bold">\u4E03\u3001\u8FDD\u7EA6\u8D23\u4EFB</span></p><p>\xA0</p><p><span class="bold">7.1 \u5982\u679C\u5927\u9053\u4E91\u5E73\u53F0\u53D1\u73B0\u6216\u6536\u5230\u4ED6\u4EBA\u4E3E\u62A5\u60A8\u6709\u8FDD\u53CD\u672C\u534F\u8BAE\u4EFB\u4F55\u884C\u4E3A\u7684\uFF0C\u5927\u9053\u4E91\u5E73\u53F0\u6709\u6743\u8FDB\u884C\u72EC\u7ACB\u5224\u65AD\u5E76\u91C7\u53D6\u6280\u672F\u624B\u6BB5\u4E88\u4EE5\u5220\u9664\u3001\u5C4F\u853D\u6216\u65AD\u5F00\u76F8\u5173\u7684\u4FE1\u606F\u3002\u540C\u65F6\uFF0C\u5927\u9053\u4E91\u5E73\u53F0\u6709\u6743\u89C6\u60A8\u7684\u884C\u4E3A\u6027\u8D28\uFF0C\u5BF9\u60A8\u91C7\u53D6\u5305\u62EC\u4F46\u4E0D\u9650\u4E8E\u6682\u505C\u6216\u7EC8\u6B62\u90E8\u5206\u6216\u5168\u90E8\u672C\u670D\u52A1\u3001\u4E2D\u6B62\u6216\u7EC8\u6B62\u60A8\u5BF9\u8D26\u53F7\u7684\u4F7F\u7528\u3001\u8FFD\u7A76\u6CD5\u5F8B\u8D23\u4EFB\u7B49\u63AA\u65BD\uFF0C\u800C\u7531\u6B64\u7ED9\u60A8\u5E26\u6765\u7684\u635F\u5931\uFF08\u5305\u62EC\u4F46\u4E0D\u9650\u4E8E\u901A\u4FE1\u4E2D\u65AD\u3001\u76F8\u5173\u6570\u636E\u6E05\u7A7A\u3001\u670D\u52A1\u8D39\u7528\u4F5C\u4E3A\u8FDD\u7EA6\u91D1\u800C\u5F52\u5927\u9053\u4E91\u5E73\u53F0\u6240\u6709\u7B49\uFF09\uFF0C\u7531\u60A8\u81EA\u884C\u627F\u62C5\uFF0C\u9020\u6210\u5927\u9053\u4E91\u5E73\u53F0\u635F\u5931\u7684\uFF0C\u60A8\u4E5F\u5E94\u4E88\u4EE5\u8D54\u507F\u3002\u82E5\u5927\u9053\u4E91\u5E73\u53F0\u4F9D\u524D\u8FF0\u7EA6\u5B9A\u5BF9\u60A8\u91C7\u53D6\u6682\u505C\u6216\u7EC8\u6B62\u90E8\u5206\u6216\u5168\u90E8\u672C\u670D\u52A1\u7684\uFF0C\u5927\u9053\u4E91\u5E73\u53F0\u65E0\u9700\u5411\u60A8\u9000\u8FD8\u4EFB\u4F55\u8D39\u7528\uFF0C\u5269\u4F59\u7684\u670D\u52A1\u8D39\u7528\uFF0C\u4F5C\u4E3A\u8FDD\u7EA6\u91D1\u800C\u5F52\u5927\u9053\u4E91\u5E73\u53F0\u6240\u6709\u3002</span></p><p>\xA0</p><p>7.2\u3010\u5BF9\u7B2C\u4E09\u65B9\u635F\u5BB3\u7684\u5904\u7406\u3011</p><p> \u60A8\u6709\u8FDD\u53CD\u672C\u534F\u8BAE\u4EFB\u4F55\u884C\u4E3A\uFF0C\u5BFC\u81F4\u4EFB\u4F55\u7B2C\u4E09\u65B9\u635F\u5BB3\u7684\uFF0C\u60A8\u5E94\u5F53\u72EC\u7ACB\u627F\u62C5\u8D23\u4EFB\uFF1B\u5927\u9053\u4E91\u5E73\u53F0\u56E0\u6B64\u906D\u53D7\u635F\u5931\u7684\uFF0C\u60A8\u4E5F\u5E94\u5F53\u4E00\u5E76\u8D54\u507F\u3002 </p><p>\xA0</p><p><span class="bold">7.3\u3010\u5355\u65B9\u63D0\u524D\u7EC8\u6B62\u670D\u52A1\u3011</span></p><p><span class="bold">\u60A8\u5145\u5206\u4E86\u89E3\u5E76\u540C\u610F\uFF0C\u60A8\u5728\u9009\u62E9\u4F7F\u7528\u672C\u670D\u52A1\u540E\uFF0C\u82E5\u60A8\u5728\u65E0\u4EFB\u4F55\u6CD5\u5B9A\u6216\u7EA6\u5B9A\u7406\u7531\u7684\u60C5\u51B5\u4E4B\u4E0B\uFF0C\u5355\u65B9\u8981\u6C42\u63D0\u524D\u7EC8\u6B62\u672C\u670D\u52A1\u7684\uFF0C\u5927\u9053\u4E91\u5E73\u53F0\u65E0\u9700\u5411\u60A8\u9000\u8FD8\u4EFB\u4F55\u8D39\u7528\uFF0C\u5269\u4F59\u7684\u670D\u52A1\u8D39\u7528\uFF0C\u4F5C\u4E3A\u8FDD\u7EA6\u91D1\u800C\u5F52\u5927\u9053\u4E91\u5E73\u53F0\u6240\u6709\u3002</span></p><p>\xA0</p><p><span class="bold">\u516B\u3001\u514D\u8D23\u6761\u6B3E</span></p><p>\xA0</p><p><span class="bold">8.1 \u60A8\u7406\u89E3\u5E76\u540C\u610F\uFF1A\u5728\u4F7F\u7528\u672C\u670D\u52A1\u7684\u8FC7\u7A0B\u4E2D\uFF0C\u53EF\u80FD\u4F1A\u56E0\u4E0D\u53EF\u6297\u529B\u800C\u4F7F\u672C\u670D\u52A1\u53D1\u751F\u4E2D\u65AD\uFF0C\u5E76\u56E0\u6B64\u800C\u5F15\u53D1\u635F\u5BB3\u3002\u4E0D\u53EF\u6297\u529B\u662F\u6307\u4E0D\u80FD\u9884\u89C1\u3001\u4E0D\u80FD\u514B\u670D\u5E76\u4E0D\u80FD\u907F\u514D\u4E14\u5BF9\u4E00\u65B9\u6216\u53CC\u65B9\u9020\u6210\u91CD\u5927\u5F71\u54CD\u7684\u5BA2\u89C2\u4E8B\u4EF6\uFF0C\u5305\u62EC\u4F46\u4E0D\u9650\u4E8E\u81EA\u7136\u707E\u5BB3\u5982\u6D2A\u6C34\u3001\u5730\u9707\u3001\u98CE\u66B4\u3001\u75AB\u60C5\u7B49\u4EE5\u53CA\u793E\u4F1A\u4E8B\u4EF6\u5982\u6218\u4E89\u3001\u52A8\u4E71\u3001\u653F\u5E9C\u884C\u4E3A\u7B49\u3002\u51FA\u73B0\u4E0A\u8FF0\u60C5\u51B5\u65F6\uFF0C\u5927\u9053\u4E91\u5E73\u53F0\u5C06\u52AA\u529B\u5728\u7B2C\u4E00\u65F6\u95F4\u4E0E\u76F8\u5173\u5355\u4F4D\u914D\u5408\uFF0C\u53CA\u65F6\u8FDB\u884C\u4FEE\u590D\uFF0C\u82E5\u7531\u6B64\u7ED9\u60A8\u9020\u6210\u635F\u5931\u7684\uFF0C\u60A8\u540C\u610F\u653E\u5F03\u8FFD\u7A76\u5927\u9053\u4E91\u5E73\u53F0\u7684\u8D23\u4EFB\u3002</span></p><p><span class="bold">8.2 \u60A8\u7406\u89E3\u5E76\u540C\u610F\uFF1A\u82E5\u7531\u4E8E\u4EE5\u4E0B\u60C5\u5F62\u5BFC\u81F4\u7684\u529F\u80FD\u4E2D\u65AD\u6216\u53D7\u963B\uFF0C\u5927\u9053\u4E91\u5E73\u53F0\u5E76\u4E0D\u627F\u62C5\u4EFB\u4F55\u6CD5\u5F8B\u8D23\u4EFB\uFF1A</span></p><p><span class="bold">8.2.1 \u53D7\u5230\u8BA1\u7B97\u673A\u75C5\u6BD2\u3001\u6728\u9A6C\u6216\u5176\u4ED6\u6076\u610F\u7A0B\u5E8F\u3001\u9ED1\u5BA2\u653B\u51FB\u7684\u7834\u574F\uFF1B</span></p><p><span class="bold">8.2.2 \u60A8\u64CD\u4F5C\u4E0D\u5F53\uFF1B</span></p><p><span class="bold">8.2.3 \u5176\u4ED6\u5927\u9053\u4E91\u5E73\u53F0\u65E0\u6CD5\u63A7\u5236\u6216\u5408\u7406\u9884\u89C1\u7684\u60C5\u5F62\u3002</span></p><p>\xA0</p><p>\u4E5D\u3001\u5176\u4ED6</p><p>\xA0</p><p>9.1\u3010\u534F\u8BAE\u7684\u751F\u6548\u4E0E\u53D8\u66F4\u3011</p><p> \u60A8\u4F7F\u7528\u672C\u670D\u52A1\u5373\u89C6\u4E3A\u60A8\u5DF2\u9605\u8BFB\u5E76\u540C\u610F\u53D7\u672C\u534F\u8BAE\u7684\u7EA6\u675F\u3002\u5927\u9053\u4E91\u5E73\u53F0\u6709\u6743\u5728\u5FC5\u8981\u65F6\u4FEE\u6539\u672C\u534F\u8BAE\u6761\u6B3E\u3002\u60A8\u53EF\u4EE5\u5728\u76F8\u5173\u9875\u9762\u4E2D\u67E5\u9605\u6700\u65B0\u7684\u534F\u8BAE\u6761\u6B3E\u3002\u672C\u534F\u8BAE\u6761\u6B3E\u53D8\u66F4\u540E\uFF0C\u5982\u679C\u60A8\u7EE7\u7EED\u4F7F\u7528\u672C\u670D\u52A1\uFF0C\u5373\u89C6\u4E3A\u60A8\u5DF2\u63A5\u53D7\u4FEE\u6539\u540E\u7684\u534F\u8BAE\u3002\u5982\u679C\u60A8\u4E0D\u63A5\u53D7\u4FEE\u6539\u540E\u7684\u534F\u8BAE\uFF0C\u5E94\u5F53\u505C\u6B62\u4F7F\u7528\u672C\u670D\u52A1\u3002 </p><p>9.2\u3010\u534F\u8BAE\u7B7E\u8BA2\u5730\u3011</p><p>\u672C\u534F\u8BAE\u7B7E\u8BA2\u5730\u4E3A\u4E2D\u534E\u4EBA\u6C11\u5171\u548C\u56FD\u6DF1\u5733\u5E02\u5357\u5C71\u533A\u3002</p><p>9.3\u3010\u9002\u7528\u6CD5\u5F8B\u3011</p><p> \u672C\u534F\u8BAE\u7684\u6210\u7ACB\u3001\u751F\u6548\u3001\u5C65\u884C\u3001\u89E3\u91CA\u53CA\u7EA0\u7EB7\u89E3\u51B3\uFF0C\u9002\u7528\u4E2D\u534E\u4EBA\u6C11\u5171\u548C\u56FD\u5927\u9646\u5730\u533A\u6CD5\u5F8B\uFF08\u4E0D\u5305\u62EC\u51B2\u7A81\u6CD5\uFF09\u3002 </p><p><span class="bold">9.4\u3010\u4E89\u8BAE\u89E3\u51B3\u3011</span></p><p><span class="bold">\u82E5\u60A8\u548C\u5927\u9053\u4E91\u5E73\u53F0\u4E4B\u95F4\u53D1\u751F\u4EFB\u4F55\u7EA0\u7EB7\u6216\u4E89\u8BAE\uFF0C\u9996\u5148\u5E94\u53CB\u597D\u534F\u5546\u89E3\u51B3\uFF1B\u534F\u5546\u4E0D\u6210\u7684\uFF0C\u5404\u65B9\u5171\u540C\u7EA6\u5B9A\uFF0C\u51E1\u56E0\u672C\u534F\u8BAE\u5F15\u8D77\u7684\u6216\u4E0E\u672C\u534F\u8BAE\u6709\u5173\u7684\u4EFB\u4F55\u4E89\u8BAE\uFF0C\u5747\u63D0\u4EA4\u6E5B\u6C5F\u4EF2\u88C1\u59D4\u5458\u4F1A\u4F9D\u5176\u89C4\u5219\u548C\u56FD\u5BB6\u6CD5\u5F8B\u6CD5\u89C4\u4ECE\u901F\u4EF2\u88C1\u3002</span></p><p>9.5\u3010\u6761\u6B3E\u6807\u9898\u3011</p><p>\u672C\u534F\u8BAE\u6240\u6709\u6761\u6B3E\u7684\u6807\u9898\u4EC5\u4E3A\u9605\u8BFB\u65B9\u4FBF\uFF0C\u672C\u8EAB\u5E76\u65E0\u5B9E\u9645\u6DB5\u4E49\uFF0C\u4E0D\u80FD\u4F5C\u4E3A\u672C\u534F\u8BAE\u6DB5\u4E49\u89E3\u91CA\u7684\u4F9D\u636E\u3002</p><p>9.6\u3010\u6761\u6B3E\u6548\u529B\u3011</p><p>\u672C\u534F\u8BAE\u6761\u6B3E\u65E0\u8BBA\u56E0\u4F55\u79CD\u539F\u56E0\u90E8\u5206\u65E0\u6548\u6216\u4E0D\u53EF\u6267\u884C\uFF0C\u5176\u4F59\u6761\u6B3E\u4ECD\u6709\u6548\uFF0C\u5BF9\u53CC\u65B9\u4ECD\u5177\u6709\u7EA6\u675F\u529B\u3002</p><p>\xA0</p><p>\xA0</p>', 96);
99
+ const _hoisted_1$D = { class: "agreement-doc" };
100
+ const _hoisted_2$x = /* @__PURE__ */ createStaticVNode('<h1>\u5927\u9053\u4E91\u5E73\u53F0\u4E91\u8C46\u5145\u503C\u670D\u52A1\u534F\u8BAE</h1><p>2023-12-01</p><p>\xA0</p><p>\u6B22\u8FCE\u60A8\u4F7F\u7528\u5927\u9053\u4E91\u5E73\u53F0\u4E91\u8C46\u5145\u503C\u670D\u52A1\uFF01</p><p>\xA0</p><p>\u3010\u63D0\u793A\u6761\u6B3E\u3011</p><p> \u6B22\u8FCE\u60A8\u4E0E\u5927\u9053\u4E91\u5E73\u53F0\u670D\u52A1\u63D0\u4F9B\u8005\u7B7E\u7F72\u300A\u5927\u9053\u4E91\u5E73\u53F0\u4E91\u8C46\u5145\u503C\u670D\u52A1\u534F\u8BAE\u300B\uFF08\u4EE5\u4E0B\u7B80\u79F0\u201C\u672C\u534F\u8BAE\u201D\uFF09\u5E76\u4F7F\u7528\u5927\u9053\u4E91\u5E73\u53F0\u4E91\u8C46\u503C\u670D\u52A1\uFF01\u60A8\u7406\u89E3\u548C\u540C\u610F\u672C\u534F\u8BAE\u7CFB\u6839\u636E\u300A\u7528\u6237\u6CE8\u518C\u534F\u8BAE\u300B\u7B49\u534F\u8BAE\u5236\u5B9A\uFF0C\u672C\u534F\u8BAE\u4E3A\u524D\u8FF0\u534F\u8BAE\u4E0D\u53EF\u5206\u5272\u7684\u4E00\u90E8\u5206\uFF0C\u672C\u534F\u8BAE\u672A\u89C4\u5B9A\u7684\uFF0C\u9002\u7528\u300A\u7528\u6237\u6CE8\u518C\u534F\u8BAE\u300B\u7B49\u534F\u8BAE\u4E2D\u7684\u76F8\u5173\u7EA6\u5B9A\u3002 </p><p>\xA0</p><p>\u3010\u5BA1\u614E\u9605\u8BFB\u3011</p><p><span class="bold">\u5728\u4F7F\u7528\u672C\u670D\u52A1\u524D\uFF0C\u8BF7\u60A8\u52A1\u5FC5\u5BA1\u614E\u9605\u8BFB\u3001\u5145\u5206\u7406\u89E3\u5404\u6761\u6B3E\u5185\u5BB9\uFF0C\u7279\u522B\u662F\u514D\u9664\u6216\u9650\u5236\u8D23\u4EFB\u7684\u76F8\u5E94\u6761\u6B3E\uFF0C\u4EE5\u53CA\u5F00\u901A\u6216\u4F7F\u7528\u67D0\u9879\u670D\u52A1\u7684\u5355\u72EC\u534F\u8BAE\uFF0C\u60A8\u4F7F\u7528\u6B64\u670D\u52A1\u5373\u8868\u793A\u60A8\u63A5\u53D7\u672C\u534F\u8BAE\u3002\u9650\u5236\u6216\u514D\u9664\u8D23\u4EFB\u6761\u6B3E\u53EF\u80FD\u4EE5\u52A0\u7C97\u5F62\u5F0F\u63D0\u793A\u60A8\u6CE8\u610F\u3002</span></p><p>\xA0</p><p>\u3010\u7279\u522B\u63D0\u793A\u3011</p><p><span class="bold">\u5145\u503C\u7528\u6237\u786E\u8BA4\uFF0C\u81EA\u5DF1\u4E3A\u5E74\u6EE118\u5468\u5C81\u4E14\u5177\u6709\u5B8C\u5168\u6C11\u4E8B\u884C\u4E3A\u80FD\u529B\u7684\u6210\u5E74\u4EBA\uFF0C\u9664\u975E\u60A8\u5DF2\u9605\u8BFB\u5E76\u63A5\u53D7\u672C\u534F\u8BAE\u6240\u6709\u6761\u6B3E\uFF0C\u5426\u5219\u60A8\u65E0\u6743\u4F7F\u7528\u5927\u9053\u4E91\u5E73\u53F0\u5145\u503C\u670D\u52A1\uFF08\u4EE5\u4E0B\u7B80\u79F0\u201C\u672C\u670D\u52A1\u201D\uFF09\u3002\u60A8\u5BF9\u672C\u670D\u52A1\u7684\u4EFB\u4F55\u8D2D\u4E70\u3001\u767B\u5F55\u3001\u67E5\u770B\u7B49\u4F7F\u7528\u884C\u4E3A\u5373\u89C6\u4E3A\u60A8\u5DF2\u9605\u8BFB\u5E76\u540C\u610F\u672C\u534F\u8BAE\u7684\u7EA6\u675F\u3002</span></p><p>\xA0</p><p><span class="bold">\u4E00\u3001\u534F\u8BAE\u7684\u8303\u56F4</span></p><p>\xA0</p><p>1.1\u3010\u534F\u8BAE\u9002\u7528\u4E3B\u4F53\u8303\u56F4\u3011</p><p>\u672C\u534F\u8BAE\u662F\u60A8\u4E0E\u5927\u9053\u4E91\u5E73\u53F0\u4E4B\u95F4\u5173\u4E8E\u60A8\u4F7F\u7528\u672C\u670D\u52A1\u6240\u8BA2\u7ACB\u7684\u534F\u8BAE\u3002</p><p>\xA0</p><p>1.2\u3010\u670D\u52A1\u5185\u5BB9\u3011</p><p> \u672C\u534F\u8BAE\u9879\u4E0B\u7684\u670D\u52A1\u662F\u6307\u5927\u9053\u4E91\u5E73\u53F0\u5411\u7528\u6237\u63D0\u4F9B\u7684\u4E91\u8C46\u5145\u503C\u670D\u52A1\uFF08\u4EE5\u4E0B\u7B80\u79F0\u201C\u672C\u670D\u52A1\u201D\uFF09\u3002\u672C\u534F\u8BAE\u5185\u5BB9\u540C\u65F6\u5305\u62EC\u5927\u9053\u4E91\u5E73\u53F0\u53EF\u80FD\u4E0D\u65AD\u53D1\u5E03\u7684\u5173\u4E8E\u672C\u670D\u52A1\u7684\u76F8\u5173\u534F\u8BAE\u3001\u4E1A\u52A1\u89C4\u5219\u7B49\u5185\u5BB9\u3002\u4E0A\u8FF0\u5185\u5BB9\u4E00\u7ECF\u6B63\u5F0F\u53D1\u5E03\uFF0C\u5373\u4E3A\u672C\u534F\u8BAE\u4E0D\u53EF\u5206\u5272\u7684\u7EC4\u6210\u90E8\u5206\uFF0C\u60A8\u540C\u6837\u5E94\u5F53\u9075\u5B88\u3002 </p><p>\xA0</p><p><span class="bold">\u4E8C\u3001\u540D\u8BCD\u5B9A\u4E49</span></p><p>\xA0</p><p><span class="bold">2.1\u3010\u4E91\u8C46\u3011</span></p><p><span class="bold">2.1.1 \u4E91\u8C46\u7CFB\u5927\u9053\u4E91\u5E73\u53F0\u4E3A\u7528\u6237\u63D0\u4F9B\u7684\u6570\u5B57\u5316\u5546\u54C1\uFF0C\u7528\u4E8E\u5927\u9053\u4E91\u5E73\u53F0\u4E0A\u7684\u4EA7\u54C1\u6743\u76CA\u4F7F\u7528\u62B5\u6263\u3002</span></p><p>\xA0</p><p><span class="bold">2.1.2 \u4E91\u8C46\u5C5E\u4E8E\u5728\u7EBF\u4EA4\u4ED8\u7684\u6570\u5B57\u5316\u5546\u54C1\uFF0C\u4E91\u8C46\u7684\u8D2D\u4E70\u8D39\u7528\u7CFB\u6570\u5B57\u5316\u5546\u54C1\u4EF7\u683C\uFF0C\u800C\u4E0D\u5177\u6709\u9884\u4ED8\u6B3E\u6027\u8D28\u6216\u8005\u5B9A\u91D1\u3001\u50A8\u503C\u7B49\u6027\u8D28\uFF0C\u4E91\u8C46\u8D2D\u4E70\u6210\u529F\u540E\u4E0D\u53EF\u8F6C\u8BA9\u6216\u8005\u9006\u5411\u5151\u6362\u4E3A\u4EBA\u6C11\u5E01\u6216\u5176\u4ED6\u8D27\u5E01\u3002</span></p><p><span class="bold">2.1.3 \u4E91\u8C46\u4EC5\u9650\u4E8E\u7528\u6237\u81EA\u5DF1\u8D26\u53F7\u5728\u5927\u9053\u4E91\u5E73\u53F0\u4F7F\u7528\uFF0C\u4E0D\u5F97\u4EE5\u76C8\u5229\u7B49\u975E\u4E2A\u4EBA\u4F7F\u7528\u76EE\u7684\u4F7F\u7528\u4E91\u8C46\uFF0C\u6216\u901A\u8FC7\u8D60\u4E0E\u3001\u51FA\u501F\u3001\u8F6C\u8BA9\u3001\u9500\u552E\u3001\u62B5\u62BC\u3001\u8BB8\u53EF\u4ED6\u4EBA\u4F7F\u7528\u7B49\u65B9\u5F0F\u83B7\u53D6\u6216\u5904\u7F6E\u4E91\u8C46\u3002</span></p><p><span class="bold">2.1.4 \u4EBA\u6C11\u5E01\u548C\u4E91\u8C46\u5151\u6362\u7684\u6BD4\u4F8B\u4E3A1:1\uFF08\u53731\u5143\u4EBA\u6C11\u5E01=1\u4E91\u8C46\uFF09\uFF0C\u4E91\u8C46\u5728\u4EFB\u4F55\u60C5\u51B5\u4E0B\u90FD\u4E0D\u5177\u6709\u6CD5\u5B9A\u8D27\u5E01\u7684\u6D41\u8F6C\u53CA\u652F\u4ED8\u529F\u80FD\uFF0C\u4E0D\u5F97\u53CD\u5411\u5151\u6362\u4E3A\u4EBA\u6C11\u5E01\u6216\u5176\u4ED6\u6CD5\u5B9A\u8D27\u5E01\u3001\u5B9E\u7269\u548C\u5176\u4ED6\u865A\u62DF\u8D27\u5E01\uFF0C\u8BF7\u60A8\u6839\u636E\u5B9E\u9645\u9700\u6C42\u8D2D\u4E70\u76F8\u5E94\u6570\u91CF\u7684\u4E91\u8C46\u3002</span></p><p>2.2\u3010\u5927\u9053\u4E91\u5E73\u53F0\u3011</p><p> \u6307\u7531<span class="bold">\u5927\u9053\u4E91\u5E73\u53F0\u6240\u62E5\u6709\u3001\u63A7\u5236\u3001\u7ECF\u8425\u7684\u5927\u9053\u4E91\u5FAE\u4FE1\u5C0F\u7A0B\u5E8F\u3001\u8702\u9E1F\u6C47\u4E91\u5FAE\u4FE1\u5C0F\u7A0B\u5E8F\u3001\u8702\u9E1F\u5C45\u95F4\u7CFB\u7EDF\u3001\u8702\u9E1F\u5468\u8F6C\u7CFB\u7EDF\u3002</span></p><p>\xA0</p><p><span class="bold">\u4E09\u3001\u6743\u5229\u4E49\u52A1</span></p><p>\xA0</p><p> 3.1.1 \u60A8\u627F\u8BFA\u5177\u5907\u4F7F\u7528\u672C\u670D\u52A1\u6240\u5FC5\u9700\u7684\u6C11\u4E8B\u80FD\u529B\u548C\u5408\u6CD5\u8D44\u683C\uFF0C\u6709\u6743\u4E14\u6709\u80FD\u529B\u540C\u610F\u672C\u534F\u8BAE\u53CA\u76F8\u5173\u534F\u8BAE\u7684\u5168\u90E8\u5185\u5BB9\u3002 </p><p> 3.1.2 <span class="bold">\u60A8\u5E94\u59A5\u5584\u4FDD\u7BA1\u5927\u9053\u4E91\u5E73\u53F0\u8D26\u53F7\u7684\u7528\u6237\u540D\u53CA\u5176\u5BC6\u7801\uFF0C\u5E76\u5BF9\u8BE5\u8D26\u53F7\u4E0B\u7684\u4E00\u5207\u64CD\u4F5C\u884C\u4E3A\u8D1F\u8D23\u3002\u5982\u60A8\u7684\u5927\u9053\u4E91\u8D26\u53F7\u5B58\u5728\u5F02\u5E38\u60C5\u5F62\uFF0C\u60A8\u53EF\u4EE5\u8054\u7CFB\u5BA2\u670D\u6302\u5931\u6216\u51BB\u7ED3\u60A8\u7684\u8D26\u6237\u3002\u6B64\u65F6\uFF0C\u5927\u9053\u4E91\u5E73\u53F0\u9700\u8981\u60A8\u63D0\u4F9B\u5927\u9053\u4E91\u8D26\u53F7\u7684\u6CE8\u518C\u4FE1\u606F\u4EE5\u5B8C\u6210\u8EAB\u4EFD\u6838\u9A8C\u3002\u60A8\u7406\u89E3\u5E76\u786E\u8BA4\uFF0C\u7531\u4E8E\u6280\u672F\u5C40\u9650\uFF0C\u5927\u9053\u4E91\u5E73\u53F0\u65E0\u6CD5\u4FDD\u8BC1\u8EAB\u4EFD\u6838\u9A8C\u7684\u51C6\u786E\u6027\u548C\u771F\u5B9E\u6027\u3002</span></p><p> 3.1.3 \u60A8\u627F\u8BFA\u4E0D\u5F97\u901A\u8FC7\u975E\u5927\u9053\u4E91\u5E73\u53F0\u6307\u5B9A\u9014\u5F84\u6216\u4EFB\u4F55\u8FDD\u53CD\u76F8\u5173\u6CD5\u89C4\u3001\u8FDD\u53CD\u672C\u534F\u8BAE\u3001\u4E0D\u6B63\u5F53\u624B\u6BB5\u7B49\u8D2D\u4E70\u4E91\u8C46\u3002 </p><p> 3.1.4 \u5927\u9053\u4E91\u5E73\u53F0\u53EF\u80FD\u4F1A\u6839\u636E\u672C\u670D\u52A1\u7684\u6574\u4F53\u89C4\u5212\uFF0C\u5BF9\u672C\u670D\u52A1\u7684\u6536\u8D39\u6807\u51C6\u3001\u65B9\u5F0F\u7B49\u8FDB\u884C\u4FEE\u6539\u548C\u53D8\u66F4\uFF0C\u524D\u8FF0\u4FEE\u6539\u3001\u53D8\u66F4\uFF0C\u5927\u9053\u4E91\u5E73\u53F0\u5C06\u5728\u76F8\u5E94\u670D\u52A1\u9875\u9762\u8FDB\u884C\u901A\u77E5\u6216\u516C\u544A\u3002\u5982\u679C\u60A8\u4E0D\u540C\u610F\u4E0A\u8FF0\u4FEE\u6539\u3001\u53D8\u66F4\uFF0C\u5219\u5E94\u505C\u6B62\u4F7F\u7528\u672C\u670D\u52A1\u3002\u5426\u5219\uFF0C\u60A8\u7684\u4EFB\u4F55\u8D2D\u4E70\u3001\u767B\u5F55\u3001\u67E5\u770B\u7B49\u4F7F\u7528\u884C\u4E3A\uFF0C\u5373\u89C6\u4E3A\u60A8\u540C\u610F\u4E0A\u8FF0\u4FEE\u6539\u3001\u53D8\u66F4\u3002 </p><p> 3.1.5 \u5927\u9053\u4E91\u5E73\u53F0\u5728\u76EE\u524D\u6280\u672F\u6C34\u5E73\u4E0B\uFF0C\u6700\u5927\u7A0B\u5EA6\u5730\u4FDD\u969C\u672C\u529F\u80FD\u7684\u6B63\u5E38\u8FD0\u884C\uFF0C\u4EE5\u7EF4\u62A4\u4F60\u7684\u5229\u76CA\u3002\u5927\u9053\u4E91\u5E73\u53F0\u5BF9\u672C\u670D\u52A1\u4E0D\u4F5C\u4EFB\u4F55\u660E\u793A\u6216\u6697\u793A\u7684\u4FDD\u8BC1\uFF0C\u5305\u62EC\u4F46\u4E0D\u9650\u4E8E\u5BF9\u672C\u670D\u52A1\u7684\u53EF\u9002\u7528\u6027\u3001\u6301\u7EED\u6027\u7B49\u3002 </p><p>\xA0</p><p><span class="bold">\u56DB\u3001\u4E91\u8C46\u4F7F\u7528\u89C4\u5219\u53CA\u7279\u522B\u7EA6\u5B9A</span></p><p>\xA0</p><p><span class="bold">4.1 \u5927\u9053\u4E91\u5E73\u53F0\u5411\u60A8\u63D0\u4F9B\u8D2D\u4E70\u3001\u7BA1\u7406\u4E91\u8C46\u6709\u5173\u7684\u7F51\u7EDC\u589E\u503C\u670D\u52A1\uFF0C\u5305\u62EC\u4F46\u4E0D\u9650\u4E8E\u4E91\u8C46\u7684\u8D2D\u4E70\u3001\u8D26\u6237\u7BA1\u7406\u9875\u9762\u3001\u4EA4\u6613\u660E\u7EC6\u67E5\u8BE2\u670D\u52A1\uFF08\u4EE5\u4E0B\u79F0\u201C\u4E91\u8C46\u670D\u52A1\u201D\uFF09\u3002\u4E91\u8C46\u670D\u52A1\u7684\u5177\u4F53\u5185\u5BB9\u8BF7\u4EE5\u76F8\u5173\u9875\u9762\u7684\u4FE1\u606F\u4E3A\u51C6\u3002\u60A8\u540C\u610F\u4EE5\u5927\u9053\u4E91\u5E73\u53F0\u7559\u5B58\u7684\u4EA4\u6613\u8BB0\u5F55\u4F5C\u4E3A\u4E91\u8C46\u8D2D\u4E70\u7684\u552F\u4E00\u6709\u6548\u4F9D\u636E\uFF0C\u5982\u60A8\u5BF9\u5927\u9053\u4E91\u5E73\u53F0\u7559\u5B58\u7684\u4EA4\u6613\u8BB0\u5F55\u6709\u5F02\u8BAE\uFF0C\u60A8\u5E94\u7ACB\u5373\u5411\u5927\u9053\u4E91\u5E73\u53F0\u63D0\u51FA\uFF0C\u5927\u9053\u4E91\u5E73\u53F0\u7ECF\u6838\u5BF9\u540E\u53D1\u73B0\u786E\u6709\u9519\u8BEF\u7684\uFF0C\u5C06\u4E88\u4EE5\u6539\u6B63\u3002</span></p><p><span class="bold">4.2. \u60A8\u5E94\u8BE5\u901A\u8FC7\u5927\u9053\u4E91\u5E73\u53F0\u5B98\u65B9\u6307\u5B9A\u7684\u5305\u62EC\u4F46\u4E0D\u9650\u4E8E\u652F\u4ED8\u5B9D\u3001\u8D22\u4ED8\u901A\u7B49\u65B9\u5F0F\u4F9D\u7EA6\u652F\u4ED8\u4E00\u5B9A\u8D39\u7528\u540E\u8D2D\u4E70\u4E91\u8C46\u3002</span></p><p><span class="bold">4.3 \u60A8\u5FC5\u987B\u4E3A\u7ED1\u5B9A\u7684\u652F\u4ED8\u6E20\u9053\u8D26\u6237\u5F00\u6237\u4EBA/\u6301\u6709\u4EBA\uFF0C\u53EF\u5408\u6CD5\u3001\u6709\u6548\u4F7F\u7528\u8BE5\u8D26\u6237\u4E14\u672A\u4FB5\u72AF\u4EFB\u4F55\u7B2C\u4E09\u65B9\u6743\u76CA\uFF0C\u5426\u5219\u56E0\u6B64\u9020\u6210\u652F\u4ED8\u8D26\u6237\u5B9E\u9645\u6240\u6709\u4EBA\u635F\u5931\u7684\uFF0C\u5E94\u7531\u60A8\u5355\u72EC\u8D1F\u8D23\u89E3\u51B3\u7531\u6B64\u4EA7\u751F\u7684\u7EA0\u7EB7\u5E76\u627F\u62C5\u5168\u90E8\u6CD5\u5F8B\u8D23\u4EFB\u3002</span></p><p><span class="bold">4.4 \u60A8\u5E94\u5728\u8D2D\u4E70\u4E91\u8C46\u65F6\u4ED4\u7EC6\u786E\u8BA4\u8D26\u53F7\u3001\u652F\u4ED8\u8D26\u6237\u3001\u8D2D\u4E70\u6570\u91CF\u3001\u8D2D\u4E70\u8D39\u7528\u7B49\u4EA4\u6613\u4FE1\u606F\u51C6\u786E\u65E0\u8BEF\uFF0C\u5982\u56E0\u60A8\u81EA\u8EAB\u539F\u56E0\uFF08\u5305\u62EC\u4F46\u4E0D\u9650\u4E8E\u8D26\u53F7\u9519\u8BEF\u3001\u652F\u4ED8\u8D26\u6237\u9519\u8BEF\u3001\u64CD\u4F5C\u4E0D\u5F53\u3001\u8D26\u53F7/\u652F\u4ED8\u8D26\u6237\u5B58\u5728\u5F02\u5E38\u60C5\u51B5\u7B49\uFF09\u5BFC\u81F4\u7684\u4EFB\u4F55\u635F\u5931\u5E94\u7531\u60A8\u81EA\u884C\u627F\u62C5\u3002</span></p><p><span class="bold">4.5 \u5927\u9053\u4E91\u5E73\u53F0\u6709\u6743\u51B3\u5B9A\u4E91\u8C46\u5982\u4F55\u88AB\u4F7F\u7528\uFF08\u5305\u62EC\u5151\u6362\u865A\u62DF\u5546\u54C1\u7B49\u4E8E\u5927\u9053\u4E91\u5E73\u53F0\u4E0A\u4F7F\u7528\u7684\u4EA7\u54C1\u6216\u670D\u52A1\uFF09\u3002</span></p><p>\xA0</p><p><span class="bold">\u4E94\u3001\u884C\u4E3A\u89C4\u8303</span></p><p>\xA0</p><p>5.1\u3010\u7528\u6237\u7981\u6B62\u884C\u4E3A\u3011</p><p>\u672C\u670D\u52A1\u4EC5\u4F9B\u60A8\u4E2A\u4EBA\u4F7F\u7528\uFF0C\u9664\u975E\u7ECF\u5927\u9053\u4E91\u5E73\u53F0\u4E66\u9762\u8BB8\u53EF\uFF0C\u60A8\u4E0D\u5F97\u8FDB\u884C\u4EE5\u4E0B\u884C\u4E3A\uFF1A</p><p>5.1.1 \u5C06\u672C\u670D\u52A1\u8F6C\u8BA9\u8BB8\u53EF\u4ED6\u4EBA\u4F7F\u7528\uFF1B</p><p>5.1.2 \u5176\u4ED6\u672A\u7ECF\u5927\u9053\u4E91\u5E73\u53F0\u4E66\u9762\u8BB8\u53EF\u7684\u884C\u4E3A\u3002</p><p>5.2\u3010\u884C\u4E3A\u8D23\u4EFB\u3011</p><p><span class="bold">\u60A8\u5145\u5206\u4E86\u89E3\u5E76\u540C\u610F\uFF0C\u60A8\u7528\u4EE5\u53C2\u4E0E\u672C\u670D\u52A1\u7684\u5927\u9053\u4E91\u8D26\u53F7\u7531\u60A8\u72EC\u7ACB\u7EF4\u62A4\u3001\u4F7F\u7528\u5E76\u72EC\u7ACB\u627F\u62C5\u5168\u90E8\u8D23\u4EFB\uFF0C\u5927\u9053\u4E91\u5E73\u53F0\u4E0D\u4F1A\u3001\u4E5F\u4E0D\u53EF\u80FD\u53C2\u4E0E\u8BE5\u8D26\u53F7\u7684\u4F7F\u7528\u7B49\u4EFB\u4F55\u6D3B\u52A8\u3002\u60A8\u5E94\u5BF9\u672C\u670D\u52A1\u4E2D\u7684\u5185\u5BB9\u81EA\u884C\u52A0\u4EE5\u5224\u65AD\uFF0C\u5E76\u627F\u62C5\u56E0\u4F7F\u7528\u5185\u5BB9\u800C\u5F15\u8D77\u7684\u6240\u6709\u98CE\u9669\uFF0C\u5305\u62EC\u56E0\u5BF9\u5185\u5BB9\u7684\u6B63\u786E\u6027\u3001\u5B8C\u6574\u6027\u6216\u5B9E\u7528\u6027\u7684\u4F9D\u8D56\u800C\u4EA7\u751F\u7684\u98CE\u9669\u3002\u5927\u9053\u4E91\u5E73\u53F0\u65E0\u6CD5\u4E14\u4E0D\u4F1A\u5BF9\u56E0\u524D\u8FF0\u98CE\u9669\u800C\u5BFC\u81F4\u7684\u4EFB\u4F55\u635F\u5931\u6216\u635F\u5BB3\u627F\u62C5\u4EFB\u4F55\u8D23\u4EFB\u3002</span></p><p>\xA0</p><p><span class="bold">\u516D\u3001\u670D\u52A1\u7684\u53D8\u66F4\u3001\u4E2D\u6B62\u6216\u7EC8\u6B62</span></p><p>\xA0</p><p> \u60A8\u5145\u5206\u4E86\u89E3\u5E76\u540C\u610F\uFF0C\u7531\u4E8E\u4E92\u8054\u7F51\u670D\u52A1\u7684\u7279\u6B8A\u6027\uFF0C\u5927\u9053\u4E91\u5E73\u53F0\u53EF\u4EE5\u5728\u4E0D\u63D0\u524D\u901A\u77E5\u60A8\u7684\u60C5\u51B5\u4E4B\u4E0B\uFF0C\u6839\u636E\u672C\u670D\u52A1\u7684\u6574\u4F53\u89C4\u5212\uFF0C\u5355\u65B9\u6709\u6743\u5BF9\u672C\u670D\u52A1\u5185\u5BB9\u8FDB\u884C\u53D8\u66F4\u3001\u4E2D\u6B62\u6216\u7EC8\u6B62\u3002 </p><p>\xA0</p><p><span class="bold">\u4E03\u3001\u8FDD\u7EA6\u8D23\u4EFB</span></p><p>\xA0</p><p><span class="bold">7.1 \u5982\u679C\u5927\u9053\u4E91\u5E73\u53F0\u53D1\u73B0\u6216\u6536\u5230\u4ED6\u4EBA\u4E3E\u62A5\u60A8\u6709\u8FDD\u53CD\u672C\u534F\u8BAE\u4EFB\u4F55\u884C\u4E3A\u7684\uFF0C\u5927\u9053\u4E91\u5E73\u53F0\u6709\u6743\u8FDB\u884C\u72EC\u7ACB\u5224\u65AD\u5E76\u91C7\u53D6\u6280\u672F\u624B\u6BB5\u4E88\u4EE5\u5220\u9664\u3001\u5C4F\u853D\u6216\u65AD\u5F00\u76F8\u5173\u7684\u4FE1\u606F\u3002\u540C\u65F6\uFF0C\u5927\u9053\u4E91\u5E73\u53F0\u6709\u6743\u89C6\u60A8\u7684\u884C\u4E3A\u6027\u8D28\uFF0C\u5BF9\u60A8\u91C7\u53D6\u5305\u62EC\u4F46\u4E0D\u9650\u4E8E\u6682\u505C\u6216\u7EC8\u6B62\u90E8\u5206\u6216\u5168\u90E8\u672C\u670D\u52A1\u3001\u4E2D\u6B62\u6216\u7EC8\u6B62\u60A8\u5BF9\u8D26\u53F7\u7684\u4F7F\u7528\u3001\u8FFD\u7A76\u6CD5\u5F8B\u8D23\u4EFB\u7B49\u63AA\u65BD\uFF0C\u800C\u7531\u6B64\u7ED9\u60A8\u5E26\u6765\u7684\u635F\u5931\uFF08\u5305\u62EC\u4F46\u4E0D\u9650\u4E8E\u901A\u4FE1\u4E2D\u65AD\u3001\u76F8\u5173\u6570\u636E\u6E05\u7A7A\u3001\u670D\u52A1\u8D39\u7528\u4F5C\u4E3A\u8FDD\u7EA6\u91D1\u800C\u5F52\u5927\u9053\u4E91\u5E73\u53F0\u6240\u6709\u7B49\uFF09\uFF0C\u7531\u60A8\u81EA\u884C\u627F\u62C5\uFF0C\u9020\u6210\u5927\u9053\u4E91\u5E73\u53F0\u635F\u5931\u7684\uFF0C\u60A8\u4E5F\u5E94\u4E88\u4EE5\u8D54\u507F\u3002\u82E5\u5927\u9053\u4E91\u5E73\u53F0\u4F9D\u524D\u8FF0\u7EA6\u5B9A\u5BF9\u60A8\u91C7\u53D6\u6682\u505C\u6216\u7EC8\u6B62\u90E8\u5206\u6216\u5168\u90E8\u672C\u670D\u52A1\u7684\uFF0C\u5927\u9053\u4E91\u5E73\u53F0\u65E0\u9700\u5411\u60A8\u9000\u8FD8\u4EFB\u4F55\u8D39\u7528\uFF0C\u5269\u4F59\u7684\u670D\u52A1\u8D39\u7528\uFF0C\u4F5C\u4E3A\u8FDD\u7EA6\u91D1\u800C\u5F52\u5927\u9053\u4E91\u5E73\u53F0\u6240\u6709\u3002</span></p><p>\xA0</p><p>7.2\u3010\u5BF9\u7B2C\u4E09\u65B9\u635F\u5BB3\u7684\u5904\u7406\u3011</p><p> \u60A8\u6709\u8FDD\u53CD\u672C\u534F\u8BAE\u4EFB\u4F55\u884C\u4E3A\uFF0C\u5BFC\u81F4\u4EFB\u4F55\u7B2C\u4E09\u65B9\u635F\u5BB3\u7684\uFF0C\u60A8\u5E94\u5F53\u72EC\u7ACB\u627F\u62C5\u8D23\u4EFB\uFF1B\u5927\u9053\u4E91\u5E73\u53F0\u56E0\u6B64\u906D\u53D7\u635F\u5931\u7684\uFF0C\u60A8\u4E5F\u5E94\u5F53\u4E00\u5E76\u8D54\u507F\u3002 </p><p>\xA0</p><p><span class="bold">7.3\u3010\u5355\u65B9\u63D0\u524D\u7EC8\u6B62\u670D\u52A1\u3011</span></p><p><span class="bold">\u60A8\u5145\u5206\u4E86\u89E3\u5E76\u540C\u610F\uFF0C\u60A8\u5728\u9009\u62E9\u4F7F\u7528\u672C\u670D\u52A1\u540E\uFF0C\u82E5\u60A8\u5728\u65E0\u4EFB\u4F55\u6CD5\u5B9A\u6216\u7EA6\u5B9A\u7406\u7531\u7684\u60C5\u51B5\u4E4B\u4E0B\uFF0C\u5355\u65B9\u8981\u6C42\u63D0\u524D\u7EC8\u6B62\u672C\u670D\u52A1\u7684\uFF0C\u5927\u9053\u4E91\u5E73\u53F0\u65E0\u9700\u5411\u60A8\u9000\u8FD8\u4EFB\u4F55\u8D39\u7528\uFF0C\u5269\u4F59\u7684\u670D\u52A1\u8D39\u7528\uFF0C\u4F5C\u4E3A\u8FDD\u7EA6\u91D1\u800C\u5F52\u5927\u9053\u4E91\u5E73\u53F0\u6240\u6709\u3002</span></p><p>\xA0</p><p><span class="bold">\u516B\u3001\u514D\u8D23\u6761\u6B3E</span></p><p>\xA0</p><p><span class="bold">8.1 \u60A8\u7406\u89E3\u5E76\u540C\u610F\uFF1A\u5728\u4F7F\u7528\u672C\u670D\u52A1\u7684\u8FC7\u7A0B\u4E2D\uFF0C\u53EF\u80FD\u4F1A\u56E0\u4E0D\u53EF\u6297\u529B\u800C\u4F7F\u672C\u670D\u52A1\u53D1\u751F\u4E2D\u65AD\uFF0C\u5E76\u56E0\u6B64\u800C\u5F15\u53D1\u635F\u5BB3\u3002\u4E0D\u53EF\u6297\u529B\u662F\u6307\u4E0D\u80FD\u9884\u89C1\u3001\u4E0D\u80FD\u514B\u670D\u5E76\u4E0D\u80FD\u907F\u514D\u4E14\u5BF9\u4E00\u65B9\u6216\u53CC\u65B9\u9020\u6210\u91CD\u5927\u5F71\u54CD\u7684\u5BA2\u89C2\u4E8B\u4EF6\uFF0C\u5305\u62EC\u4F46\u4E0D\u9650\u4E8E\u81EA\u7136\u707E\u5BB3\u5982\u6D2A\u6C34\u3001\u5730\u9707\u3001\u98CE\u66B4\u3001\u75AB\u60C5\u7B49\u4EE5\u53CA\u793E\u4F1A\u4E8B\u4EF6\u5982\u6218\u4E89\u3001\u52A8\u4E71\u3001\u653F\u5E9C\u884C\u4E3A\u7B49\u3002\u51FA\u73B0\u4E0A\u8FF0\u60C5\u51B5\u65F6\uFF0C\u5927\u9053\u4E91\u5E73\u53F0\u5C06\u52AA\u529B\u5728\u7B2C\u4E00\u65F6\u95F4\u4E0E\u76F8\u5173\u5355\u4F4D\u914D\u5408\uFF0C\u53CA\u65F6\u8FDB\u884C\u4FEE\u590D\uFF0C\u82E5\u7531\u6B64\u7ED9\u60A8\u9020\u6210\u635F\u5931\u7684\uFF0C\u60A8\u540C\u610F\u653E\u5F03\u8FFD\u7A76\u5927\u9053\u4E91\u5E73\u53F0\u7684\u8D23\u4EFB\u3002</span></p><p><span class="bold">8.2 \u60A8\u7406\u89E3\u5E76\u540C\u610F\uFF1A\u82E5\u7531\u4E8E\u4EE5\u4E0B\u60C5\u5F62\u5BFC\u81F4\u7684\u529F\u80FD\u4E2D\u65AD\u6216\u53D7\u963B\uFF0C\u5927\u9053\u4E91\u5E73\u53F0\u5E76\u4E0D\u627F\u62C5\u4EFB\u4F55\u6CD5\u5F8B\u8D23\u4EFB\uFF1A</span></p><p><span class="bold">8.2.1 \u53D7\u5230\u8BA1\u7B97\u673A\u75C5\u6BD2\u3001\u6728\u9A6C\u6216\u5176\u4ED6\u6076\u610F\u7A0B\u5E8F\u3001\u9ED1\u5BA2\u653B\u51FB\u7684\u7834\u574F\uFF1B</span></p><p><span class="bold">8.2.2 \u60A8\u64CD\u4F5C\u4E0D\u5F53\uFF1B</span></p><p><span class="bold">8.2.3 \u5176\u4ED6\u5927\u9053\u4E91\u5E73\u53F0\u65E0\u6CD5\u63A7\u5236\u6216\u5408\u7406\u9884\u89C1\u7684\u60C5\u5F62\u3002</span></p><p>\xA0</p><p>\u4E5D\u3001\u5176\u4ED6</p><p>\xA0</p><p>9.1\u3010\u534F\u8BAE\u7684\u751F\u6548\u4E0E\u53D8\u66F4\u3011</p><p> \u60A8\u4F7F\u7528\u672C\u670D\u52A1\u5373\u89C6\u4E3A\u60A8\u5DF2\u9605\u8BFB\u5E76\u540C\u610F\u53D7\u672C\u534F\u8BAE\u7684\u7EA6\u675F\u3002\u5927\u9053\u4E91\u5E73\u53F0\u6709\u6743\u5728\u5FC5\u8981\u65F6\u4FEE\u6539\u672C\u534F\u8BAE\u6761\u6B3E\u3002\u60A8\u53EF\u4EE5\u5728\u76F8\u5173\u9875\u9762\u4E2D\u67E5\u9605\u6700\u65B0\u7684\u534F\u8BAE\u6761\u6B3E\u3002\u672C\u534F\u8BAE\u6761\u6B3E\u53D8\u66F4\u540E\uFF0C\u5982\u679C\u60A8\u7EE7\u7EED\u4F7F\u7528\u672C\u670D\u52A1\uFF0C\u5373\u89C6\u4E3A\u60A8\u5DF2\u63A5\u53D7\u4FEE\u6539\u540E\u7684\u534F\u8BAE\u3002\u5982\u679C\u60A8\u4E0D\u63A5\u53D7\u4FEE\u6539\u540E\u7684\u534F\u8BAE\uFF0C\u5E94\u5F53\u505C\u6B62\u4F7F\u7528\u672C\u670D\u52A1\u3002 </p><p>9.2\u3010\u534F\u8BAE\u7B7E\u8BA2\u5730\u3011</p><p>\u672C\u534F\u8BAE\u7B7E\u8BA2\u5730\u4E3A\u4E2D\u534E\u4EBA\u6C11\u5171\u548C\u56FD\u6DF1\u5733\u5E02\u5357\u5C71\u533A\u3002</p><p>9.3\u3010\u9002\u7528\u6CD5\u5F8B\u3011</p><p> \u672C\u534F\u8BAE\u7684\u6210\u7ACB\u3001\u751F\u6548\u3001\u5C65\u884C\u3001\u89E3\u91CA\u53CA\u7EA0\u7EB7\u89E3\u51B3\uFF0C\u9002\u7528\u4E2D\u534E\u4EBA\u6C11\u5171\u548C\u56FD\u5927\u9646\u5730\u533A\u6CD5\u5F8B\uFF08\u4E0D\u5305\u62EC\u51B2\u7A81\u6CD5\uFF09\u3002 </p><p><span class="bold">9.4\u3010\u4E89\u8BAE\u89E3\u51B3\u3011</span></p><p><span class="bold">\u82E5\u60A8\u548C\u5927\u9053\u4E91\u5E73\u53F0\u4E4B\u95F4\u53D1\u751F\u4EFB\u4F55\u7EA0\u7EB7\u6216\u4E89\u8BAE\uFF0C\u9996\u5148\u5E94\u53CB\u597D\u534F\u5546\u89E3\u51B3\uFF1B\u534F\u5546\u4E0D\u6210\u7684\uFF0C\u5404\u65B9\u5171\u540C\u7EA6\u5B9A\uFF0C\u51E1\u56E0\u672C\u534F\u8BAE\u5F15\u8D77\u7684\u6216\u4E0E\u672C\u534F\u8BAE\u6709\u5173\u7684\u4EFB\u4F55\u4E89\u8BAE\uFF0C\u5747\u63D0\u4EA4\u6E5B\u6C5F\u4EF2\u88C1\u59D4\u5458\u4F1A\u4F9D\u5176\u89C4\u5219\u548C\u56FD\u5BB6\u6CD5\u5F8B\u6CD5\u89C4\u4ECE\u901F\u4EF2\u88C1\u3002</span></p><p>9.5\u3010\u6761\u6B3E\u6807\u9898\u3011</p><p>\u672C\u534F\u8BAE\u6240\u6709\u6761\u6B3E\u7684\u6807\u9898\u4EC5\u4E3A\u9605\u8BFB\u65B9\u4FBF\uFF0C\u672C\u8EAB\u5E76\u65E0\u5B9E\u9645\u6DB5\u4E49\uFF0C\u4E0D\u80FD\u4F5C\u4E3A\u672C\u534F\u8BAE\u6DB5\u4E49\u89E3\u91CA\u7684\u4F9D\u636E\u3002</p><p>9.6\u3010\u6761\u6B3E\u6548\u529B\u3011</p><p>\u672C\u534F\u8BAE\u6761\u6B3E\u65E0\u8BBA\u56E0\u4F55\u79CD\u539F\u56E0\u90E8\u5206\u65E0\u6548\u6216\u4E0D\u53EF\u6267\u884C\uFF0C\u5176\u4F59\u6761\u6B3E\u4ECD\u6709\u6548\uFF0C\u5BF9\u53CC\u65B9\u4ECD\u5177\u6709\u7EA6\u675F\u529B\u3002</p><p>\xA0</p><p>\xA0</p>', 96);
100
101
  const _hoisted_98 = [
101
- _hoisted_2$t
102
+ _hoisted_2$x
102
103
  ];
103
104
  function render$2(_ctx, _cache) {
104
- return openBlock(), createElementBlock("view", _hoisted_1$z, [..._hoisted_98]);
105
+ return openBlock(), createElementBlock("view", _hoisted_1$D, [..._hoisted_98]);
105
106
  }
106
107
 
107
- /* unplugin-vue-components disabled */const script$B = {};
108
+ /* unplugin-vue-components disabled */const script$G = {};
108
109
 
109
- script$B.render = render$2;
110
- script$B.__file = "src/payment/components/UserAgreement.vue";
110
+ script$G.render = render$2;
111
+ script$G.__file = "src/payment/components/UserAgreement.vue";
111
112
 
112
113
  function requestPayment$2(json) {
113
114
  return new Promise((resolve, reject) => {
@@ -247,11 +248,54 @@ function useEncode() {
247
248
  };
248
249
  }
249
250
 
250
- const _hoisted_1$y = {
251
+ const mappings = {
252
+ downloadUrl: "thrumb",
253
+ fileId: "id",
254
+ fileName: "name",
255
+ fileSize: "size",
256
+ fileSuffix: "ext",
257
+ fileType: "type",
258
+ originalUrl: "url"
259
+ };
260
+ const transformFields = (row) => {
261
+ return Object.fromEntries(Object.entries(row).map(([k, v]) => [mappings[k] || k, v]));
262
+ };
263
+ const useUpload = (config) => {
264
+ const upload = (url, file) => {
265
+ return new Promise((resolve, reject) => {
266
+ Taro.uploadFile({
267
+ url: config.baseUrl + url,
268
+ filePath: file.path,
269
+ name: "file",
270
+ header: config.headers ?? {
271
+ token: Taro.getStorageSync("session")
272
+ },
273
+ success: (rsp) => {
274
+ const { data } = rsp;
275
+ console.log("===data", data);
276
+ try {
277
+ const response = JSON.parse(data);
278
+ console.log("===response", response);
279
+ resolve(transformFields(response.result));
280
+ } catch (e) {
281
+ reject({
282
+ message: "\u6587\u4EF6\u4E0A\u4F20\u5F02\u5E38"
283
+ });
284
+ }
285
+ }
286
+ });
287
+ });
288
+ };
289
+ return {
290
+ upload
291
+ };
292
+ };
293
+
294
+ const _hoisted_1$C = {
251
295
  key: 0,
252
296
  class: "page-title"
253
297
  };
254
- var script$A = /* @__PURE__ */ defineComponent({
298
+ var script$F = /* @__PURE__ */ defineComponent({
255
299
  __name: "PageHeader",
256
300
  props: {
257
301
  title: { type: String, required: false, default: "" },
@@ -281,7 +325,7 @@ var script$A = /* @__PURE__ */ defineComponent({
281
325
  [
282
326
  _ctx.title ? (openBlock(), createElementBlock(
283
327
  "h1",
284
- _hoisted_1$y,
328
+ _hoisted_1$C,
285
329
  toDisplayString(_ctx.title),
286
330
  1
287
331
  /* TEXT */
@@ -299,10 +343,10 @@ var script$A = /* @__PURE__ */ defineComponent({
299
343
  }
300
344
  });
301
345
 
302
- script$A.__file = "src/shared/components/PageHeader.vue";
346
+ script$F.__file = "src/shared/components/PageHeader.vue";
303
347
 
304
- const _hoisted_1$x = { class: "drawer-body" };
305
- var script$z = /* @__PURE__ */ defineComponent({
348
+ const _hoisted_1$B = { class: "drawer-body" };
349
+ var script$E = /* @__PURE__ */ defineComponent({
306
350
  __name: "AppDrawer",
307
351
  props: {
308
352
  modelValue: { type: Boolean, required: true },
@@ -326,11 +370,11 @@ var script$z = /* @__PURE__ */ defineComponent({
326
370
  "onUpdate:visible": onVisibleChange
327
371
  }, {
328
372
  default: withCtx(() => [
329
- createVNode(script$A, {
373
+ createVNode(script$F, {
330
374
  title: _ctx.title,
331
375
  onClose: onPageHeaderClose
332
376
  }, null, 8, ["title"]),
333
- createElementVNode("div", _hoisted_1$x, [
377
+ createElementVNode("div", _hoisted_1$B, [
334
378
  renderSlot(_ctx.$slots, "default")
335
379
  ])
336
380
  ]),
@@ -341,10 +385,130 @@ var script$z = /* @__PURE__ */ defineComponent({
341
385
  }
342
386
  });
343
387
 
344
- script$z.__file = "src/shared/components/AppDrawer.vue";
388
+ script$E.__file = "src/shared/components/AppDrawer.vue";
389
+
390
+ const _hoisted_1$A = { class: "app-verify column" };
391
+ const _hoisted_2$w = { class: "caption" };
392
+ const _hoisted_3$r = { class: "number" };
393
+ const _hoisted_4$l = {
394
+ key: 1,
395
+ class: "caption"
396
+ };
397
+ const _hoisted_5$h = { class: "row buttons" };
398
+ var script$D = /* @__PURE__ */ defineComponent({
399
+ __name: "AppVerify",
400
+ props: {
401
+ phone: { type: String, required: true },
402
+ title: { type: String, required: false },
403
+ message: { type: String, required: false }
404
+ },
405
+ emits: ["update:modelValue"],
406
+ setup(__props, { emit: __emit }) {
407
+ const sent = ref(false), countdown = ref(60);
408
+ let formData = reactive({
409
+ code: ""
410
+ });
411
+ const send = () => {
412
+ sent.value = true;
413
+ countdown.value = 60;
414
+ let timer = setInterval(() => {
415
+ countdown.value--;
416
+ if (countdown.value <= 0) {
417
+ clearInterval(timer);
418
+ sent.value = false;
419
+ }
420
+ }, 1e3);
421
+ };
422
+ return (_ctx, _cache) => {
423
+ return openBlock(), createElementBlock("div", _hoisted_1$A, [
424
+ createElementVNode(
425
+ "h2",
426
+ null,
427
+ toDisplayString(_ctx.title || "\u624B\u673A\u53F7\u9A8C\u8BC1"),
428
+ 1
429
+ /* TEXT */
430
+ ),
431
+ createElementVNode(
432
+ "p",
433
+ _hoisted_2$w,
434
+ toDisplayString(_ctx.message || "\u77ED\u4FE1\u5C06\u53D1\u9001\u81F3\u8D26\u53F7\u7ED1\u5B9A\u624B\u673A\u53F7"),
435
+ 1
436
+ /* TEXT */
437
+ ),
438
+ createElementVNode(
439
+ "p",
440
+ _hoisted_3$r,
441
+ toDisplayString(_ctx.phone),
442
+ 1
443
+ /* TEXT */
444
+ ),
445
+ createVNode(unref(NsForm), {
446
+ modelValue: unref(formData),
447
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => isRef(formData) ? formData.value = $event : formData = $event)
448
+ }, {
449
+ default: withCtx(() => [
450
+ createVNode(unref(NsInput), {
451
+ name: "code",
452
+ placeholder: "\u8BF7\u8F93\u5165\u9A8C\u8BC1\u7801",
453
+ variant: "solid",
454
+ rules: ["required", {
455
+ name: "function",
456
+ message: "\u8F93\u5165\u9519\u8BEF, \u8BF7\u91CD\u65B0\u8F93\u5165",
457
+ method: (value) => value.length === 4
458
+ }]
459
+ }, {
460
+ append: withCtx(() => [
461
+ !sent.value ? (openBlock(), createBlock(unref(NsButton), {
462
+ key: 0,
463
+ size: "xs",
464
+ variant: "plain",
465
+ color: "primary",
466
+ onClick: send,
467
+ label: "\u83B7\u53D6\u9A8C\u8BC1\u7801"
468
+ })) : createCommentVNode("v-if", true),
469
+ sent.value ? (openBlock(), createElementBlock(
470
+ "div",
471
+ _hoisted_4$l,
472
+ toDisplayString(countdown.value) + " \u79D2\u6536\u91CD\u65B0\u53D1\u9001",
473
+ 1
474
+ /* TEXT */
475
+ )) : createCommentVNode("v-if", true)
476
+ ]),
477
+ _: 1
478
+ /* STABLE */
479
+ }, 8, ["rules"])
480
+ ]),
481
+ _: 1
482
+ /* STABLE */
483
+ }, 8, ["modelValue"]),
484
+ createElementVNode("div", _hoisted_5$h, [
485
+ createVNode(unref(NsButton), { round: "" }, {
486
+ default: withCtx(() => [
487
+ createTextVNode("\u53D6\u6D88")
488
+ ]),
489
+ _: 1
490
+ /* STABLE */
491
+ }),
492
+ createVNode(unref(NsButton), {
493
+ round: "",
494
+ gradient: "#FFEBC1,#FFD7A7,#FFB875/90"
495
+ }, {
496
+ default: withCtx(() => [
497
+ createTextVNode("\u786E\u8BA4")
498
+ ]),
499
+ _: 1
500
+ /* STABLE */
501
+ })
502
+ ])
503
+ ]);
504
+ };
505
+ }
506
+ });
507
+
508
+ script$D.__file = "src/shared/components/AppVerify.vue";
345
509
 
346
- const _hoisted_1$w = { key: 0 };
347
- const _hoisted_2$s = /* @__PURE__ */ createElementVNode(
510
+ const _hoisted_1$z = { key: 0 };
511
+ const _hoisted_2$v = /* @__PURE__ */ createElementVNode(
348
512
  "img",
349
513
  {
350
514
  src: "https://cdn.ddjf.com/static/images/wechat-yunservice/close-icon.png",
@@ -354,10 +518,10 @@ const _hoisted_2$s = /* @__PURE__ */ createElementVNode(
354
518
  -1
355
519
  /* HOISTED */
356
520
  );
357
- const _hoisted_3$o = [
358
- _hoisted_2$s
521
+ const _hoisted_3$q = [
522
+ _hoisted_2$v
359
523
  ];
360
- var script$y = /* @__PURE__ */ defineComponent({
524
+ var script$C = /* @__PURE__ */ defineComponent({
361
525
  __name: "index",
362
526
  props: {
363
527
  text: { type: String, required: false },
@@ -388,7 +552,7 @@ var script$y = /* @__PURE__ */ defineComponent({
388
552
  }, [
389
553
  _ctx.text ? (openBlock(), createElementBlock(
390
554
  "span",
391
- _hoisted_1$w,
555
+ _hoisted_1$z,
392
556
  toDisplayString(_ctx.text),
393
557
  1
394
558
  /* TEXT */
@@ -399,7 +563,7 @@ var script$y = /* @__PURE__ */ defineComponent({
399
563
  key: 0,
400
564
  class: "dd-notice-bar__close",
401
565
  onClick: close
402
- }, [..._hoisted_3$o])) : createCommentVNode("v-if", true)
566
+ }, [..._hoisted_3$q])) : createCommentVNode("v-if", true)
403
567
  ],
404
568
  6
405
569
  /* CLASS, STYLE */
@@ -408,7 +572,7 @@ var script$y = /* @__PURE__ */ defineComponent({
408
572
  }
409
573
  });
410
574
 
411
- script$y.__file = "src/components/dd-notice-bar/index.vue";
575
+ script$C.__file = "src/components/dd-notice-bar/index.vue";
412
576
 
413
577
  const typeMappings = {
414
578
  CZ: "\u5145\u503C",
@@ -595,7 +759,7 @@ function useHttp$3() {
595
759
  return $http;
596
760
  }
597
761
 
598
- var script$x = /* @__PURE__ */ defineComponent({
762
+ var script$B = /* @__PURE__ */ defineComponent({
599
763
  __name: "DeviceVersion",
600
764
  setup(__props) {
601
765
  const showAlert = ref(false);
@@ -605,8 +769,7 @@ var script$x = /* @__PURE__ */ defineComponent({
605
769
  });
606
770
  const recommendVersions = ref();
607
771
  const getPropertieByCode = debounce(async () => {
608
- if (recommendVersions.value)
609
- return;
772
+ if (recommendVersions.value) return;
610
773
  const $http = useHttp$3();
611
774
  $http.get("/cas/properties/getPropertie", {
612
775
  code: "pcRecommendVersion"
@@ -635,7 +798,7 @@ var script$x = /* @__PURE__ */ defineComponent({
635
798
  }
636
799
  });
637
800
  return (_ctx, _cache) => {
638
- return showAlert.value ? (openBlock(), createBlock(script$y, {
801
+ return showAlert.value ? (openBlock(), createBlock(script$C, {
639
802
  key: 0,
640
803
  showClose: "",
641
804
  style: normalizeStyle(topStype.value),
@@ -646,7 +809,108 @@ var script$x = /* @__PURE__ */ defineComponent({
646
809
  }
647
810
  });
648
811
 
649
- script$x.__file = "src/shared/components/DeviceVersion.vue";
812
+ script$B.__file = "src/shared/components/DeviceVersion.vue";
813
+
814
+ var script$A = /* @__PURE__ */ defineComponent({
815
+ __name: "OcrIcon",
816
+ emits: ["complete"],
817
+ setup(__props, { emit: __emit }) {
818
+ const appKitOptions = useAppKitOptions();
819
+ const emits = __emit;
820
+ async function taroImgCompress(src, quality = 80) {
821
+ return new Promise((resolve, reject) => {
822
+ Taro.compressImage({
823
+ src,
824
+ quality,
825
+ success: (res) => {
826
+ resolve(res);
827
+ },
828
+ fail: (res) => {
829
+ reject(res);
830
+ }
831
+ });
832
+ });
833
+ }
834
+ function getCompressQuality(size) {
835
+ let quality = 100;
836
+ const curSize = size / (1024 * 1024);
837
+ if (curSize > 6) {
838
+ quality = quality - (curSize - 6) / curSize * 100;
839
+ }
840
+ return quality;
841
+ }
842
+ function allTrim(str) {
843
+ return str.replace(/\s+/g, "");
844
+ }
845
+ async function onIconClick() {
846
+ console.log("===onIconClick");
847
+ let result = null;
848
+ try {
849
+ const csRes = await Taro.chooseImage({
850
+ count: 1
851
+ });
852
+ let { path, size } = csRes.tempFiles[0];
853
+ const compressImg = await taroImgCompress(path, getCompressQuality(size)) || {};
854
+ const filePath = compressImg.tempFilePath || path;
855
+ Taro.showLoading({ title: "\u8EAB\u4EFD\u8BC1\u8BC6\u522B\u4E2D.." });
856
+ const session = appKitOptions.token();
857
+ const baseUrl = appKitOptions.baseUrl();
858
+ const upRes = await Taro.uploadFile({
859
+ url: baseUrl + "/hkapprove/ocr/idcard",
860
+ filePath,
861
+ name: "file",
862
+ formData: {
863
+ objectNo: `min${Date.now()}`,
864
+ side: "face"
865
+ },
866
+ header: {
867
+ sessionKey: session || "",
868
+ token: session || ""
869
+ }
870
+ });
871
+ Taro.hideLoading();
872
+ const res = JSON.parse(upRes.data);
873
+ if (res.code === "200") {
874
+ const faceInfo = res.result.faceInfo || {}, file = res.result.fileUploadVO;
875
+ result = {
876
+ name: allTrim(faceInfo.name || ""),
877
+ number: allTrim(faceInfo.num || ""),
878
+ address: allTrim(faceInfo.address || "")
879
+ // file: {
880
+ // key: file.fileKey,
881
+ // url: file.fileUrl,
882
+ // object: file.objectNo,
883
+ // thumb: file.thumbnailUrl
884
+ // }
885
+ };
886
+ console.log("===\u8BC6\u522B", result);
887
+ if (!result.name && !result.number) {
888
+ Taro.showToast({ title: "\u8BC6\u522B\u5931\u8D25\uFF0C\u8BF7\u91CD\u8BD5", icon: "none" });
889
+ }
890
+ } else {
891
+ Taro.showToast({
892
+ title: res.msg,
893
+ icon: "error"
894
+ });
895
+ }
896
+ } catch (err) {
897
+ Taro.hideLoading();
898
+ console.log(err);
899
+ }
900
+ emits("complete", result);
901
+ }
902
+ return (_ctx, _cache) => {
903
+ return openBlock(), createElementBlock("div", {
904
+ class: "ocr-icon",
905
+ onClick: onIconClick
906
+ }, [
907
+ createVNode(unref(NsIcon), { name: "https://simple.shensi.tech/icons/ocr.svg" })
908
+ ]);
909
+ };
910
+ }
911
+ });
912
+
913
+ script$A.__file = "src/shared/components/OcrIcon.vue";
650
914
 
651
915
  var HttpMethod = /* @__PURE__ */ ((HttpMethod2) => {
652
916
  HttpMethod2["get"] = "GET";
@@ -946,11 +1210,11 @@ const services$1 = [
946
1210
  invokeRecharge$1
947
1211
  ];
948
1212
 
949
- const _hoisted_1$v = { class: "view recharge-view" };
950
- const _hoisted_2$r = { class: "flex-grow" };
951
- const _hoisted_3$n = { class: "amount-footer" };
952
- const _hoisted_4$j = { class: "agreement" };
953
- var script$w = /* @__PURE__ */ defineComponent({
1213
+ const _hoisted_1$y = { class: "view recharge-view" };
1214
+ const _hoisted_2$u = { class: "flex-grow" };
1215
+ const _hoisted_3$p = { class: "amount-footer" };
1216
+ const _hoisted_4$k = { class: "agreement" };
1217
+ var script$z = /* @__PURE__ */ defineComponent({
954
1218
  __name: "RechargeView",
955
1219
  props: {
956
1220
  app: { type: String, required: true },
@@ -1013,16 +1277,16 @@ var script$w = /* @__PURE__ */ defineComponent({
1013
1277
  return (_ctx, _cache) => {
1014
1278
  const _component_nut_checkbox = Checkbox;
1015
1279
  const _component_nut_button = Button;
1016
- return openBlock(), createElementBlock("view", _hoisted_1$v, [
1017
- createElementVNode("view", _hoisted_2$r, [
1018
- createVNode(script$C, {
1280
+ return openBlock(), createElementBlock("view", _hoisted_1$y, [
1281
+ createElementVNode("view", _hoisted_2$u, [
1282
+ createVNode(script$H, {
1019
1283
  items: amounts.value,
1020
1284
  selected: state.selected,
1021
1285
  onChange: onAmountSelect
1022
1286
  }, null, 8, ["items", "selected"])
1023
1287
  ]),
1024
- createElementVNode("view", _hoisted_3$n, [
1025
- createElementVNode("view", _hoisted_4$j, [
1288
+ createElementVNode("view", _hoisted_3$p, [
1289
+ createElementVNode("view", _hoisted_4$k, [
1026
1290
  createVNode(_component_nut_checkbox, {
1027
1291
  modelValue: state.agreed,
1028
1292
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => state.agreed = $event)
@@ -1052,13 +1316,13 @@ var script$w = /* @__PURE__ */ defineComponent({
1052
1316
  /* STABLE */
1053
1317
  }, 8, ["loading"])
1054
1318
  ]),
1055
- createVNode(unref(script$z), {
1319
+ createVNode(unref(script$E), {
1056
1320
  modelValue: state.agreementOpen,
1057
1321
  "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => state.agreementOpen = $event),
1058
1322
  title: "\u5145\u503C\u534F\u8BAE"
1059
1323
  }, {
1060
1324
  default: withCtx(() => [
1061
- createVNode(script$B)
1325
+ createVNode(script$G)
1062
1326
  ]),
1063
1327
  _: 1
1064
1328
  /* STABLE */
@@ -1068,26 +1332,26 @@ var script$w = /* @__PURE__ */ defineComponent({
1068
1332
  }
1069
1333
  });
1070
1334
 
1071
- script$w.__file = "src/payment/components/RechargeView.vue";
1335
+ script$z.__file = "src/payment/components/RechargeView.vue";
1072
1336
 
1073
- const _hoisted_1$u = { class: "recharge-result" };
1074
- const _hoisted_2$q = { class: "content" };
1075
- const _hoisted_3$m = /* @__PURE__ */ createElementVNode(
1337
+ const _hoisted_1$x = { class: "recharge-result" };
1338
+ const _hoisted_2$t = { class: "content" };
1339
+ const _hoisted_3$o = /* @__PURE__ */ createElementVNode(
1076
1340
  "div",
1077
1341
  { class: "figure" },
1078
1342
  null,
1079
1343
  -1
1080
1344
  /* HOISTED */
1081
1345
  );
1082
- const _hoisted_4$i = {
1346
+ const _hoisted_4$j = {
1083
1347
  key: 0,
1084
1348
  class: "caption"
1085
1349
  };
1086
- const _hoisted_5$f = {
1350
+ const _hoisted_5$g = {
1087
1351
  key: 1,
1088
1352
  class: "caption"
1089
1353
  };
1090
- var script$v = /* @__PURE__ */ defineComponent({
1354
+ var script$y = /* @__PURE__ */ defineComponent({
1091
1355
  __name: "RechargeResult",
1092
1356
  props: {
1093
1357
  type: { type: String, required: true, default: "recharge" },
@@ -1105,9 +1369,9 @@ var script$v = /* @__PURE__ */ defineComponent({
1105
1369
  }
1106
1370
  return (_ctx, _cache) => {
1107
1371
  const _component_nut_button = Button;
1108
- return openBlock(), createElementBlock("div", _hoisted_1$u, [
1109
- createElementVNode("div", _hoisted_2$q, [
1110
- _hoisted_3$m,
1372
+ return openBlock(), createElementBlock("div", _hoisted_1$x, [
1373
+ createElementVNode("div", _hoisted_2$t, [
1374
+ _hoisted_3$o,
1111
1375
  createElementVNode(
1112
1376
  "h2",
1113
1377
  null,
@@ -1115,9 +1379,9 @@ var script$v = /* @__PURE__ */ defineComponent({
1115
1379
  1
1116
1380
  /* TEXT */
1117
1381
  ),
1118
- _ctx.payMethod == "bean" ? (openBlock(), createElementBlock("div", _hoisted_4$i, "\u6743\u76CA\u5DF2\u5230\u8D26")) : (openBlock(), createElementBlock(
1382
+ _ctx.payMethod == "bean" ? (openBlock(), createElementBlock("div", _hoisted_4$j, "\u6743\u76CA\u5DF2\u5230\u8D26")) : (openBlock(), createElementBlock(
1119
1383
  "div",
1120
- _hoisted_5$f,
1384
+ _hoisted_5$g,
1121
1385
  toDisplayString(views[_ctx.type][1]) + "\u5C06\u57281\u5206\u949F\u4E4B\u5185\u5230\u8D26",
1122
1386
  1
1123
1387
  /* TEXT */
@@ -1139,12 +1403,12 @@ var script$v = /* @__PURE__ */ defineComponent({
1139
1403
  }
1140
1404
  });
1141
1405
 
1142
- script$v.__file = "src/payment/components/RechargeResult.vue";
1406
+ script$y.__file = "src/payment/components/RechargeResult.vue";
1143
1407
 
1144
- const _hoisted_1$t = { class: "tag" };
1145
- const _hoisted_2$p = { class: "token-line number" };
1146
- const _hoisted_3$l = { class: "number" };
1147
- var script$u = /* @__PURE__ */ defineComponent({
1408
+ const _hoisted_1$w = { class: "tag" };
1409
+ const _hoisted_2$s = { class: "token-line number" };
1410
+ const _hoisted_3$n = { class: "number" };
1411
+ var script$x = /* @__PURE__ */ defineComponent({
1148
1412
  __name: "RightsPicker",
1149
1413
  props: {
1150
1414
  items: { type: Array, required: true, default: () => [] },
@@ -1182,14 +1446,14 @@ var script$u = /* @__PURE__ */ defineComponent({
1182
1446
  default: withCtx(() => [
1183
1447
  createElementVNode(
1184
1448
  "div",
1185
- _hoisted_1$t,
1449
+ _hoisted_1$w,
1186
1450
  toDisplayString(amount.paymentDesc),
1187
1451
  1
1188
1452
  /* TEXT */
1189
1453
  ),
1190
1454
  createElementVNode(
1191
1455
  "h4",
1192
- _hoisted_2$p,
1456
+ _hoisted_2$s,
1193
1457
  toDisplayString(amount.priceRightNum) + "\u7B14",
1194
1458
  1
1195
1459
  /* TEXT */
@@ -1198,7 +1462,7 @@ var script$u = /* @__PURE__ */ defineComponent({
1198
1462
  createTextVNode("\xA5"),
1199
1463
  createElementVNode(
1200
1464
  "span",
1201
- _hoisted_3$l,
1465
+ _hoisted_3$n,
1202
1466
  toDisplayString(amount.paymentAmount),
1203
1467
  1
1204
1468
  /* TEXT */
@@ -1220,27 +1484,27 @@ var script$u = /* @__PURE__ */ defineComponent({
1220
1484
  }
1221
1485
  });
1222
1486
 
1223
- script$u.__file = "src/payment/components/RightsPicker.vue";
1487
+ script$x.__file = "src/payment/components/RightsPicker.vue";
1224
1488
 
1225
- const _hoisted_1$s = { class: "view recharge-view2" };
1226
- const _hoisted_2$o = { class: "flex-grow" };
1227
- const _hoisted_3$k = {
1489
+ const _hoisted_1$v = { class: "view recharge-view2" };
1490
+ const _hoisted_2$r = { class: "flex-grow" };
1491
+ const _hoisted_3$m = {
1228
1492
  key: 0,
1229
1493
  class: "bean-buy"
1230
1494
  };
1231
- const _hoisted_4$h = { class: "left" };
1232
- const _hoisted_5$e = /* @__PURE__ */ createElementVNode(
1495
+ const _hoisted_4$i = { class: "left" };
1496
+ const _hoisted_5$f = /* @__PURE__ */ createElementVNode(
1233
1497
  "div",
1234
1498
  { class: "title" },
1235
1499
  "\u4F7F\u7528\u4E91\u8C46\u652F\u4ED8",
1236
1500
  -1
1237
1501
  /* HOISTED */
1238
1502
  );
1239
- const _hoisted_6$a = {
1503
+ const _hoisted_6$b = {
1240
1504
  key: 0,
1241
1505
  class: "amount"
1242
1506
  };
1243
- const _hoisted_7$8 = {
1507
+ const _hoisted_7$9 = {
1244
1508
  key: 1,
1245
1509
  class: "amount"
1246
1510
  };
@@ -1264,7 +1528,7 @@ const _hoisted_15$3 = /* @__PURE__ */ createElementVNode(
1264
1528
  const _hoisted_16$3 = { class: "item" };
1265
1529
  const _hoisted_17$2 = { class: "item" };
1266
1530
  const _hoisted_18$2 = { class: "item" };
1267
- var script$t = /* @__PURE__ */ defineComponent({
1531
+ var script$w = /* @__PURE__ */ defineComponent({
1268
1532
  __name: "TradeView",
1269
1533
  props: {
1270
1534
  app: { type: String, required: true },
@@ -1351,25 +1615,25 @@ var script$t = /* @__PURE__ */ defineComponent({
1351
1615
  const _component_nut_checkbox = Checkbox;
1352
1616
  const _component_nut_button = Button;
1353
1617
  const _component_nut_dialog = Dialog;
1354
- return openBlock(), createElementBlock("view", _hoisted_1$s, [
1355
- createElementVNode("view", _hoisted_2$o, [
1356
- createVNode(script$u, {
1618
+ return openBlock(), createElementBlock("view", _hoisted_1$v, [
1619
+ createElementVNode("view", _hoisted_2$r, [
1620
+ createVNode(script$x, {
1357
1621
  items: amounts.value,
1358
1622
  selected: state.selected,
1359
1623
  onChange: onAmountSelect
1360
1624
  }, null, 8, ["items", "selected"]),
1361
- amounts.value[state.selected] ? (openBlock(), createElementBlock("div", _hoisted_3$k, [
1362
- createElementVNode("div", _hoisted_4$h, [
1363
- _hoisted_5$e,
1625
+ amounts.value[state.selected] ? (openBlock(), createElementBlock("div", _hoisted_3$m, [
1626
+ createElementVNode("div", _hoisted_4$i, [
1627
+ _hoisted_5$f,
1364
1628
  !selectBean.value ? (openBlock(), createElementBlock(
1365
1629
  "div",
1366
- _hoisted_6$a,
1630
+ _hoisted_6$b,
1367
1631
  "\u4F59\u989D " + toDisplayString(balance.value),
1368
1632
  1
1369
1633
  /* TEXT */
1370
1634
  )) : (openBlock(), createElementBlock(
1371
1635
  "div",
1372
- _hoisted_7$8,
1636
+ _hoisted_7$9,
1373
1637
  "\u6263\u51CF\u540E\u4F59\u989D " + toDisplayString((balance.value - amounts.value[state.selected].paymentAmount).toFixed(1)),
1374
1638
  1
1375
1639
  /* TEXT */
@@ -1438,13 +1702,13 @@ var script$t = /* @__PURE__ */ defineComponent({
1438
1702
  }, 8, ["loading"])
1439
1703
  ])
1440
1704
  ]),
1441
- createVNode(unref(script$z), {
1705
+ createVNode(unref(script$E), {
1442
1706
  modelValue: state.agreementOpen,
1443
1707
  "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => state.agreementOpen = $event),
1444
1708
  title: "\u5145\u503C\u534F\u8BAE"
1445
1709
  }, {
1446
1710
  default: withCtx(() => [
1447
- createVNode(script$B)
1711
+ createVNode(script$G)
1448
1712
  ]),
1449
1713
  _: 1
1450
1714
  /* STABLE */
@@ -1496,21 +1760,21 @@ var script$t = /* @__PURE__ */ defineComponent({
1496
1760
  }
1497
1761
  });
1498
1762
 
1499
- script$t.__file = "src/payment/components/TradeView.vue";
1763
+ script$w.__file = "src/payment/components/TradeView.vue";
1500
1764
 
1501
1765
  const components = {
1502
- AmountPicker: script$C,
1503
- RechargeView: script$w,
1504
- UserAgreement: script$B,
1505
- RechargeResult: script$v,
1506
- TradeView: script$t
1766
+ AmountPicker: script$H,
1767
+ RechargeView: script$z,
1768
+ UserAgreement: script$G,
1769
+ RechargeResult: script$y,
1770
+ TradeView: script$w
1507
1771
  };
1508
1772
 
1509
- const _hoisted_1$r = { class: "account-card" };
1510
- const _hoisted_2$n = { class: "card" };
1511
- const _hoisted_3$j = { class: "card-row" };
1512
- const _hoisted_4$g = { class: "card-row-left" };
1513
- const _hoisted_5$d = /* @__PURE__ */ createElementVNode(
1773
+ const _hoisted_1$u = { class: "account-card" };
1774
+ const _hoisted_2$q = { class: "card" };
1775
+ const _hoisted_3$l = { class: "card-row" };
1776
+ const _hoisted_4$h = { class: "card-row-left" };
1777
+ const _hoisted_5$e = /* @__PURE__ */ createElementVNode(
1514
1778
  "div",
1515
1779
  { class: "bean-box" },
1516
1780
  [
@@ -1525,8 +1789,8 @@ const _hoisted_5$d = /* @__PURE__ */ createElementVNode(
1525
1789
  -1
1526
1790
  /* HOISTED */
1527
1791
  );
1528
- const _hoisted_6$9 = { class: "bean-nums number" };
1529
- const _hoisted_7$7 = /* @__PURE__ */ createElementVNode(
1792
+ const _hoisted_6$a = { class: "bean-nums number" };
1793
+ const _hoisted_7$8 = /* @__PURE__ */ createElementVNode(
1530
1794
  "div",
1531
1795
  { class: "account-info-name" },
1532
1796
  "\u8D26\u6237\u660E\u7EC6",
@@ -1546,7 +1810,7 @@ const _hoisted_8$4 = /* @__PURE__ */ createElementVNode(
1546
1810
  /* HOISTED */
1547
1811
  );
1548
1812
  const _hoisted_9$4 = [
1549
- _hoisted_7$7,
1813
+ _hoisted_7$8,
1550
1814
  _hoisted_8$4
1551
1815
  ];
1552
1816
  const _hoisted_10$4 = /* @__PURE__ */ createElementVNode(
@@ -1584,7 +1848,7 @@ const _hoisted_14$3 = [
1584
1848
  _hoisted_12$4,
1585
1849
  _hoisted_13$4
1586
1850
  ];
1587
- var script$s = /* @__PURE__ */ defineComponent({
1851
+ var script$v = /* @__PURE__ */ defineComponent({
1588
1852
  __name: "BalanceCard",
1589
1853
  props: {
1590
1854
  app: { type: String, required: true, default: "" }
@@ -1613,7 +1877,7 @@ var script$s = /* @__PURE__ */ defineComponent({
1613
1877
  $http.get(endpoints$1.\u83B7\u53D6\u4F59\u989D\u660E\u7EC6, {
1614
1878
  app: props.app
1615
1879
  }).then((data) => {
1616
- balance.value = data;
1880
+ balance.value.total = data.total || data.commonAccount;
1617
1881
  });
1618
1882
  }
1619
1883
  const emit = __emit;
@@ -1627,14 +1891,14 @@ var script$s = /* @__PURE__ */ defineComponent({
1627
1891
  reload: loadBalance
1628
1892
  });
1629
1893
  return (_ctx, _cache) => {
1630
- return openBlock(), createElementBlock("div", _hoisted_1$r, [
1631
- createElementVNode("div", _hoisted_2$n, [
1632
- createElementVNode("div", _hoisted_3$j, [
1633
- createElementVNode("div", _hoisted_4$g, [
1634
- _hoisted_5$d,
1894
+ return openBlock(), createElementBlock("div", _hoisted_1$u, [
1895
+ createElementVNode("div", _hoisted_2$q, [
1896
+ createElementVNode("div", _hoisted_3$l, [
1897
+ createElementVNode("div", _hoisted_4$h, [
1898
+ _hoisted_5$e,
1635
1899
  createElementVNode(
1636
1900
  "div",
1637
- _hoisted_6$9,
1901
+ _hoisted_6$a,
1638
1902
  toDisplayString(balance.value.total || 0),
1639
1903
  1
1640
1904
  /* TEXT */
@@ -1663,9 +1927,9 @@ var script$s = /* @__PURE__ */ defineComponent({
1663
1927
  }
1664
1928
  });
1665
1929
 
1666
- script$s.__file = "src/balance/components/BalanceCard.vue";
1930
+ script$v.__file = "src/balance/components/BalanceCard.vue";
1667
1931
 
1668
- const consumptionTypes = [
1932
+ const consumptionTypes$1 = [
1669
1933
  "\u5168\u90E8",
1670
1934
  "\u5145\u503C",
1671
1935
  "\u7F34\u8D39",
@@ -1677,11 +1941,11 @@ const consumptionTypes = [
1677
1941
  "\u8D60\u9001",
1678
1942
  "\u6362\u8D2D"
1679
1943
  ];
1680
- const consumptionPositions = ["\u5168\u90E8", "\u4E91\u8C46", "\u6743\u76CA"];
1681
- const consumptionDirections = ["\u5168\u90E8", "\u6536\u5165", "\u652F\u51FA"];
1944
+ const consumptionPositions$1 = ["\u5168\u90E8", "\u4E91\u8C46", "\u6743\u76CA"];
1945
+ const consumptionDirections$1 = ["\u5168\u90E8", "\u6536\u5165", "\u652F\u51FA"];
1682
1946
 
1683
- const _hoisted_1$q = { class: "consumption-filter" };
1684
- const _hoisted_2$m = /* @__PURE__ */ createElementVNode(
1947
+ const _hoisted_1$t = { class: "consumption-filter" };
1948
+ const _hoisted_2$p = /* @__PURE__ */ createElementVNode(
1685
1949
  "div",
1686
1950
  { class: "consumption-filter-title" },
1687
1951
  [
@@ -1690,18 +1954,18 @@ const _hoisted_2$m = /* @__PURE__ */ createElementVNode(
1690
1954
  -1
1691
1955
  /* HOISTED */
1692
1956
  );
1693
- const _hoisted_3$i = { class: "consumption-filter-content" };
1694
- const _hoisted_4$f = { class: "title" };
1695
- const _hoisted_5$c = { class: "info" };
1696
- const _hoisted_6$8 = ["onClick"];
1697
- const _hoisted_7$6 = /* @__PURE__ */ createElementVNode(
1957
+ const _hoisted_3$k = { class: "consumption-filter-content" };
1958
+ const _hoisted_4$g = { class: "title" };
1959
+ const _hoisted_5$d = { class: "info" };
1960
+ const _hoisted_6$9 = ["onClick"];
1961
+ const _hoisted_7$7 = /* @__PURE__ */ createElementVNode(
1698
1962
  "div",
1699
1963
  { class: "consumption-filter-bottom" },
1700
1964
  null,
1701
1965
  -1
1702
1966
  /* HOISTED */
1703
1967
  );
1704
- var script$r = /* @__PURE__ */ defineComponent({
1968
+ var script$u = /* @__PURE__ */ defineComponent({
1705
1969
  __name: "ConsumptionFilter",
1706
1970
  props: {
1707
1971
  modelValue: { type: Array, required: true, default: () => ["\u5168\u90E8", "\u5168\u90E8", "\u5168\u90E8", ""] }
@@ -1715,15 +1979,15 @@ var script$r = /* @__PURE__ */ defineComponent({
1715
1979
  const filterSections = ref([
1716
1980
  {
1717
1981
  title: "\u7C7B\u578B",
1718
- data: consumptionPositions.map((s) => ({ code: s, name: s }))
1982
+ data: consumptionPositions$1.map((s) => ({ code: s, name: s }))
1719
1983
  },
1720
1984
  {
1721
1985
  title: "\u6536\u5165/\u652F\u51FA",
1722
- data: consumptionDirections.map((s) => ({ code: s, name: s }))
1986
+ data: consumptionDirections$1.map((s) => ({ code: s, name: s }))
1723
1987
  },
1724
1988
  {
1725
1989
  title: "\u660E\u7EC6\u7C7B\u578B",
1726
- data: consumptionTypes.map((s) => ({ code: s, name: s }))
1990
+ data: consumptionTypes$1.map((s) => ({ code: s, name: s }))
1727
1991
  },
1728
1992
  {
1729
1993
  title: "\u6743\u76CA\u7C7B\u76EE",
@@ -1753,9 +2017,9 @@ var script$r = /* @__PURE__ */ defineComponent({
1753
2017
  emit("complete", result);
1754
2018
  };
1755
2019
  return (_ctx, _cache) => {
1756
- return openBlock(), createElementBlock("div", _hoisted_1$q, [
1757
- _hoisted_2$m,
1758
- createElementVNode("div", _hoisted_3$i, [
2020
+ return openBlock(), createElementBlock("div", _hoisted_1$t, [
2021
+ _hoisted_2$p,
2022
+ createElementVNode("div", _hoisted_3$k, [
1759
2023
  (openBlock(true), createElementBlock(
1760
2024
  Fragment,
1761
2025
  null,
@@ -1766,12 +2030,12 @@ var script$r = /* @__PURE__ */ defineComponent({
1766
2030
  [
1767
2031
  createElementVNode(
1768
2032
  "div",
1769
- _hoisted_4$f,
2033
+ _hoisted_4$g,
1770
2034
  toDisplayString(item.title),
1771
2035
  1
1772
2036
  /* TEXT */
1773
2037
  ),
1774
- createElementVNode("div", _hoisted_5$c, [
2038
+ createElementVNode("div", _hoisted_5$d, [
1775
2039
  (openBlock(true), createElementBlock(
1776
2040
  Fragment,
1777
2041
  null,
@@ -1780,7 +2044,7 @@ var script$r = /* @__PURE__ */ defineComponent({
1780
2044
  onClick: () => onFilterSectionClick(index, it.code),
1781
2045
  class: normalizeClass([getItemClass(index, it.code), "info-item"]),
1782
2046
  key: i
1783
- }, toDisplayString(typeof it === "string" ? it : it.name), 11, _hoisted_6$8);
2047
+ }, toDisplayString(typeof it === "string" ? it : it.name), 11, _hoisted_6$9);
1784
2048
  }),
1785
2049
  128
1786
2050
  /* KEYED_FRAGMENT */
@@ -1805,46 +2069,46 @@ var script$r = /* @__PURE__ */ defineComponent({
1805
2069
  onClick: onOkClick
1806
2070
  }, "\u786E\u5B9A")
1807
2071
  ]),
1808
- _hoisted_7$6
2072
+ _hoisted_7$7
1809
2073
  ]);
1810
2074
  };
1811
2075
  }
1812
2076
  });
1813
2077
 
1814
- script$r.__file = "src/balance/components/ConsumptionFilter.vue";
2078
+ script$u.__file = "src/balance/components/ConsumptionFilter.vue";
1815
2079
 
1816
- const _hoisted_1$p = { class: "consumption-date-filter" };
1817
- const _hoisted_2$l = /* @__PURE__ */ createElementVNode(
2080
+ const _hoisted_1$s = { class: "consumption-date-filter" };
2081
+ const _hoisted_2$o = /* @__PURE__ */ createElementVNode(
1818
2082
  "div",
1819
2083
  { class: "date-filter-header" },
1820
2084
  "\u65E5\u671F\u9009\u62E9",
1821
2085
  -1
1822
2086
  /* HOISTED */
1823
2087
  );
1824
- const _hoisted_3$h = { class: "content" };
1825
- const _hoisted_4$e = /* @__PURE__ */ createElementVNode(
2088
+ const _hoisted_3$j = { class: "content" };
2089
+ const _hoisted_4$f = /* @__PURE__ */ createElementVNode(
1826
2090
  "div",
1827
2091
  { class: "title" },
1828
2092
  "\u81EA\u5B9A\u4E49",
1829
2093
  -1
1830
2094
  /* HOISTED */
1831
2095
  );
1832
- const _hoisted_5$b = { class: "time" };
1833
- const _hoisted_6$7 = /* @__PURE__ */ createElementVNode(
2096
+ const _hoisted_5$c = { class: "time" };
2097
+ const _hoisted_6$8 = /* @__PURE__ */ createElementVNode(
1834
2098
  "div",
1835
2099
  { class: "line" },
1836
2100
  "-",
1837
2101
  -1
1838
2102
  /* HOISTED */
1839
2103
  );
1840
- const _hoisted_7$5 = /* @__PURE__ */ createElementVNode(
2104
+ const _hoisted_7$6 = /* @__PURE__ */ createElementVNode(
1841
2105
  "div",
1842
2106
  { class: "bottom" },
1843
2107
  null,
1844
2108
  -1
1845
2109
  /* HOISTED */
1846
2110
  );
1847
- var script$q = /* @__PURE__ */ defineComponent({
2111
+ var script$t = /* @__PURE__ */ defineComponent({
1848
2112
  __name: "DateFilter",
1849
2113
  props: {
1850
2114
  from: { type: String, required: true },
@@ -1905,11 +2169,11 @@ var script$q = /* @__PURE__ */ defineComponent({
1905
2169
  Fragment,
1906
2170
  null,
1907
2171
  [
1908
- createElementVNode("div", _hoisted_1$p, [
1909
- _hoisted_2$l,
1910
- createElementVNode("div", _hoisted_3$h, [
1911
- _hoisted_4$e,
1912
- createElementVNode("div", _hoisted_5$b, [
2172
+ createElementVNode("div", _hoisted_1$s, [
2173
+ _hoisted_2$o,
2174
+ createElementVNode("div", _hoisted_3$j, [
2175
+ _hoisted_4$f,
2176
+ createElementVNode("div", _hoisted_5$c, [
1913
2177
  createElementVNode(
1914
2178
  "div",
1915
2179
  {
@@ -1920,7 +2184,7 @@ var script$q = /* @__PURE__ */ defineComponent({
1920
2184
  3
1921
2185
  /* TEXT, CLASS */
1922
2186
  ),
1923
- _hoisted_6$7,
2187
+ _hoisted_6$8,
1924
2188
  createElementVNode(
1925
2189
  "div",
1926
2190
  {
@@ -1943,7 +2207,7 @@ var script$q = /* @__PURE__ */ defineComponent({
1943
2207
  onClick: onOkClick
1944
2208
  }, "\u786E\u5B9A")
1945
2209
  ]),
1946
- _hoisted_7$5
2210
+ _hoisted_7$6
1947
2211
  ]),
1948
2212
  createVNode(_component_nut_popup, {
1949
2213
  visible: datePickerOpen.value,
@@ -1973,17 +2237,17 @@ var script$q = /* @__PURE__ */ defineComponent({
1973
2237
  }
1974
2238
  });
1975
2239
 
1976
- script$q.__file = "src/balance/components/DateFilter.vue";
2240
+ script$t.__file = "src/balance/components/DateFilter.vue";
1977
2241
 
1978
- const _hoisted_1$o = { class: "consumption-rules" };
1979
- const _hoisted_2$k = /* @__PURE__ */ createElementVNode(
2242
+ const _hoisted_1$r = { class: "consumption-rules" };
2243
+ const _hoisted_2$n = /* @__PURE__ */ createElementVNode(
1980
2244
  "div",
1981
2245
  { class: "title" },
1982
2246
  "\u89C4\u5219\u8BF4\u660E",
1983
2247
  -1
1984
2248
  /* HOISTED */
1985
2249
  );
1986
- const _hoisted_3$g = /* @__PURE__ */ createElementVNode(
2250
+ const _hoisted_3$i = /* @__PURE__ */ createElementVNode(
1987
2251
  "div",
1988
2252
  { class: "desc" },
1989
2253
  [
@@ -1998,15 +2262,15 @@ const _hoisted_3$g = /* @__PURE__ */ createElementVNode(
1998
2262
  -1
1999
2263
  /* HOISTED */
2000
2264
  );
2001
- var script$p = /* @__PURE__ */ defineComponent({
2265
+ var script$s = /* @__PURE__ */ defineComponent({
2002
2266
  __name: "ConsumptionRules",
2003
2267
  emits: ["complete"],
2004
2268
  setup(__props, { emit: __emit }) {
2005
2269
  const emit = __emit;
2006
2270
  return (_ctx, _cache) => {
2007
- return openBlock(), createElementBlock("div", _hoisted_1$o, [
2008
- _hoisted_2$k,
2009
- _hoisted_3$g,
2271
+ return openBlock(), createElementBlock("div", _hoisted_1$r, [
2272
+ _hoisted_2$n,
2273
+ _hoisted_3$i,
2010
2274
  createElementVNode("div", {
2011
2275
  class: "know",
2012
2276
  onClick: _cache[0] || (_cache[0] = ($event) => emit("complete"))
@@ -2016,10 +2280,10 @@ var script$p = /* @__PURE__ */ defineComponent({
2016
2280
  }
2017
2281
  });
2018
2282
 
2019
- script$p.__file = "src/balance/components/ConsumptionRules.vue";
2283
+ script$s.__file = "src/balance/components/ConsumptionRules.vue";
2020
2284
 
2021
- const _hoisted_1$n = { class: "empty-view" };
2022
- const _hoisted_2$j = /* @__PURE__ */ createElementVNode(
2285
+ const _hoisted_1$q = { class: "empty-view" };
2286
+ const _hoisted_2$m = /* @__PURE__ */ createElementVNode(
2023
2287
  "img",
2024
2288
  {
2025
2289
  class: "empty-view-image",
@@ -2029,31 +2293,31 @@ const _hoisted_2$j = /* @__PURE__ */ createElementVNode(
2029
2293
  -1
2030
2294
  /* HOISTED */
2031
2295
  );
2032
- const _hoisted_3$f = /* @__PURE__ */ createElementVNode(
2296
+ const _hoisted_3$h = /* @__PURE__ */ createElementVNode(
2033
2297
  "div",
2034
2298
  { class: "empty-view-text" },
2035
2299
  "\u6682\u65E0\u6570\u636E",
2036
2300
  -1
2037
2301
  /* HOISTED */
2038
2302
  );
2039
- const _hoisted_4$d = [
2040
- _hoisted_2$j,
2041
- _hoisted_3$f
2303
+ const _hoisted_4$e = [
2304
+ _hoisted_2$m,
2305
+ _hoisted_3$h
2042
2306
  ];
2043
2307
  function render$1(_ctx, _cache) {
2044
- return openBlock(), createElementBlock("div", _hoisted_1$n, [..._hoisted_4$d]);
2308
+ return openBlock(), createElementBlock("div", _hoisted_1$q, [..._hoisted_4$e]);
2045
2309
  }
2046
2310
 
2047
- /* unplugin-vue-components disabled */const script$o = {};
2311
+ /* unplugin-vue-components disabled */const script$r = {};
2048
2312
 
2049
- script$o.render = render$1;
2050
- script$o.__file = "src/shared/components/EmptyView.vue";
2313
+ script$r.render = render$1;
2314
+ script$r.__file = "src/shared/components/EmptyView.vue";
2051
2315
 
2052
- const _hoisted_1$m = {
2316
+ const _hoisted_1$p = {
2053
2317
  key: 0,
2054
2318
  class: "tip"
2055
2319
  };
2056
- const _hoisted_2$i = /* @__PURE__ */ createElementVNode(
2320
+ const _hoisted_2$l = /* @__PURE__ */ createElementVNode(
2057
2321
  "img",
2058
2322
  {
2059
2323
  class: "tip-icon",
@@ -2063,18 +2327,18 @@ const _hoisted_2$i = /* @__PURE__ */ createElementVNode(
2063
2327
  -1
2064
2328
  /* HOISTED */
2065
2329
  );
2066
- const _hoisted_3$e = /* @__PURE__ */ createElementVNode(
2330
+ const _hoisted_3$g = /* @__PURE__ */ createElementVNode(
2067
2331
  "div",
2068
2332
  { class: "tip-content" },
2069
2333
  "2024\u5E745\u670831\u65E5\u8D77\uFF0C\u4EBA\u6C11\u5E01\u4E0E\u4E91\u8C46\u5151\u6362\u6BD4\u4F8B\u8C03\u6574\u4E3A1\u4EBA\u6C11\u5E01=1\u4E91\u8C46\uFF0C\u4E91\u8C46\u4F59\u989D\u6839\u636E\u5151\u6362\u6BD4\u4F8B\u8C03\u6574",
2070
2334
  -1
2071
2335
  /* HOISTED */
2072
2336
  );
2073
- const _hoisted_4$c = [
2074
- _hoisted_2$i,
2075
- _hoisted_3$e
2337
+ const _hoisted_4$d = [
2338
+ _hoisted_2$l,
2339
+ _hoisted_3$g
2076
2340
  ];
2077
- var script$n = /* @__PURE__ */ defineComponent({
2341
+ var script$q = /* @__PURE__ */ defineComponent({
2078
2342
  __name: "Tip",
2079
2343
  setup(__props) {
2080
2344
  const show = ref(false);
@@ -2086,28 +2350,28 @@ var script$n = /* @__PURE__ */ defineComponent({
2086
2350
  }
2087
2351
  });
2088
2352
  return (_ctx, _cache) => {
2089
- return show.value ? (openBlock(), createElementBlock("div", _hoisted_1$m, [..._hoisted_4$c])) : createCommentVNode("v-if", true);
2353
+ return show.value ? (openBlock(), createElementBlock("div", _hoisted_1$p, [..._hoisted_4$d])) : createCommentVNode("v-if", true);
2090
2354
  };
2091
2355
  }
2092
2356
  });
2093
2357
 
2094
- script$n.__file = "src/balance/components/Tip.vue";
2358
+ script$q.__file = "src/balance/components/Tip.vue";
2095
2359
 
2096
- const _hoisted_1$l = { class: "account-view" };
2097
- const _hoisted_2$h = { class: "scroll-content" };
2098
- const _hoisted_3$d = /* @__PURE__ */ createElementVNode(
2360
+ const _hoisted_1$o = { class: "account-view" };
2361
+ const _hoisted_2$k = { class: "scroll-content" };
2362
+ const _hoisted_3$f = /* @__PURE__ */ createElementVNode(
2099
2363
  "label",
2100
2364
  null,
2101
2365
  "\u6536\u652F\u660E\u7EC6",
2102
2366
  -1
2103
2367
  /* HOISTED */
2104
2368
  );
2105
- const _hoisted_4$b = [
2106
- _hoisted_3$d
2369
+ const _hoisted_4$c = [
2370
+ _hoisted_3$f
2107
2371
  ];
2108
- const _hoisted_5$a = { class: "balance" };
2109
- const _hoisted_6$6 = { class: "bean-box spa-between" };
2110
- const _hoisted_7$4 = /* @__PURE__ */ createElementVNode(
2372
+ const _hoisted_5$b = { class: "balance" };
2373
+ const _hoisted_6$7 = { class: "bean-box spa-between" };
2374
+ const _hoisted_7$5 = /* @__PURE__ */ createElementVNode(
2111
2375
  "div",
2112
2376
  { class: "bean-img" },
2113
2377
  [
@@ -2224,7 +2488,7 @@ const _hoisted_41 = {
2224
2488
  key: 0,
2225
2489
  class: "box-not-text"
2226
2490
  };
2227
- var script$m = /* @__PURE__ */ defineComponent({
2491
+ var script$p = /* @__PURE__ */ defineComponent({
2228
2492
  __name: "AccountView",
2229
2493
  props: {
2230
2494
  app: { type: String, required: true, default: "" }
@@ -2401,9 +2665,9 @@ var script$m = /* @__PURE__ */ defineComponent({
2401
2665
  Fragment,
2402
2666
  null,
2403
2667
  [
2404
- createElementVNode("div", _hoisted_1$l, [
2405
- createElementVNode("div", _hoisted_2$h, [
2406
- createVNode(unref(script$A), {
2668
+ createElementVNode("div", _hoisted_1$o, [
2669
+ createElementVNode("div", _hoisted_2$k, [
2670
+ createVNode(unref(script$F), {
2407
2671
  "color-mode": "dark",
2408
2672
  title: "\u6211\u7684\u8D26\u6237",
2409
2673
  class: normalizeClass({ "with-background": scrolled.value > 0 }),
@@ -2413,11 +2677,11 @@ var script$m = /* @__PURE__ */ defineComponent({
2413
2677
  createElementVNode("div", {
2414
2678
  class: "small-bean-button",
2415
2679
  onClick: onSecondBalanceButtonClick
2416
- }, [..._hoisted_4$b])
2680
+ }, [..._hoisted_4$c])
2417
2681
  ]),
2418
- createElementVNode("div", _hoisted_5$a, [
2419
- createElementVNode("div", _hoisted_6$6, [
2420
- _hoisted_7$4,
2682
+ createElementVNode("div", _hoisted_5$b, [
2683
+ createElementVNode("div", _hoisted_6$7, [
2684
+ _hoisted_7$5,
2421
2685
  createElementVNode("div", {
2422
2686
  class: "rule",
2423
2687
  onClick: _cache[0] || (_cache[0] = ($event) => rulesPopupOpen.value = true)
@@ -2437,7 +2701,7 @@ var script$m = /* @__PURE__ */ defineComponent({
2437
2701
  }, "\u4E91\u8C46\u5145\u503C")
2438
2702
  ])
2439
2703
  ]),
2440
- createVNode(script$n),
2704
+ createVNode(script$q),
2441
2705
  balance.value.privileges.corporateStar ? (openBlock(), createElementBlock("div", _hoisted_10$3, [
2442
2706
  _hoisted_11$3,
2443
2707
  createElementVNode("div", _hoisted_12$3, [
@@ -2528,7 +2792,7 @@ var script$m = /* @__PURE__ */ defineComponent({
2528
2792
  "close-on-click-overlay": false
2529
2793
  }, {
2530
2794
  default: withCtx(() => [
2531
- createVNode(script$p, {
2795
+ createVNode(script$s, {
2532
2796
  onComplete: _cache[1] || (_cache[1] = ($event) => rulesPopupOpen.value = false)
2533
2797
  })
2534
2798
  ]),
@@ -2544,7 +2808,7 @@ var script$m = /* @__PURE__ */ defineComponent({
2544
2808
  "onUpdate:visible": _cache[3] || (_cache[3] = ($event) => datePickerOpen.value = $event)
2545
2809
  }, {
2546
2810
  default: withCtx(() => [
2547
- datePickerOpen.value ? (openBlock(), createBlock(script$q, {
2811
+ datePickerOpen.value ? (openBlock(), createBlock(script$t, {
2548
2812
  key: 0,
2549
2813
  from: filtering.dateFrom,
2550
2814
  to: filtering.dateTo,
@@ -2564,7 +2828,7 @@ var script$m = /* @__PURE__ */ defineComponent({
2564
2828
  "onUpdate:visible": _cache[4] || (_cache[4] = ($event) => filterOpen.value = $event)
2565
2829
  }, {
2566
2830
  default: withCtx(() => [
2567
- createVNode(script$r, {
2831
+ createVNode(script$u, {
2568
2832
  modelValue: [
2569
2833
  filtering.\u8D26\u6237\u7C7B\u578B,
2570
2834
  filtering.\u6536\u5165\u8FD8\u662F\u652F\u51FA,
@@ -2577,7 +2841,7 @@ var script$m = /* @__PURE__ */ defineComponent({
2577
2841
  _: 1
2578
2842
  /* STABLE */
2579
2843
  }, 8, ["visible"]),
2580
- createVNode(unref(script$z), {
2844
+ createVNode(unref(script$E), {
2581
2845
  modelValue: secondBalanceOpen.value,
2582
2846
  "onUpdate:modelValue": _cache[6] || (_cache[6] = ($event) => secondBalanceOpen.value = $event),
2583
2847
  title: "\u6536\u652F\u660E\u7EC6"
@@ -2707,7 +2971,7 @@ var script$m = /* @__PURE__ */ defineComponent({
2707
2971
  /* KEYED_FRAGMENT */
2708
2972
  )),
2709
2973
  reachedLastPage.value ? (openBlock(), createElementBlock("div", _hoisted_41, "\u6CA1\u6709\u66F4\u591A\u4E86")) : createCommentVNode("v-if", true)
2710
- ])) : (openBlock(), createBlock(script$o, { key: 1 }))
2974
+ ])) : (openBlock(), createBlock(script$r, { key: 1 }))
2711
2975
  ]),
2712
2976
  _: 1
2713
2977
  /* STABLE */
@@ -2726,10 +2990,10 @@ var script$m = /* @__PURE__ */ defineComponent({
2726
2990
  }
2727
2991
  });
2728
2992
 
2729
- script$m.__file = "src/balance/components/AccountView.vue";
2993
+ script$p.__file = "src/balance/components/AccountView.vue";
2730
2994
 
2731
- const _hoisted_1$k = { class: "balance-reminder" };
2732
- const _hoisted_2$g = /* @__PURE__ */ createElementVNode(
2995
+ const _hoisted_1$n = { class: "balance-reminder" };
2996
+ const _hoisted_2$j = /* @__PURE__ */ createElementVNode(
2733
2997
  "div",
2734
2998
  { class: "body" },
2735
2999
  [
@@ -2739,10 +3003,10 @@ const _hoisted_2$g = /* @__PURE__ */ createElementVNode(
2739
3003
  -1
2740
3004
  /* HOISTED */
2741
3005
  );
2742
- const _hoisted_3$c = { class: "footer" };
2743
- const _hoisted_4$a = { class: "col" };
2744
- const _hoisted_5$9 = { class: "col" };
2745
- var script$l = /* @__PURE__ */ defineComponent({
3006
+ const _hoisted_3$e = { class: "footer" };
3007
+ const _hoisted_4$b = { class: "col" };
3008
+ const _hoisted_5$a = { class: "col" };
3009
+ var script$o = /* @__PURE__ */ defineComponent({
2746
3010
  __name: "BalanceReminder",
2747
3011
  props: {
2748
3012
  modelValue: { type: Boolean, required: true, default: () => false },
@@ -2762,10 +3026,10 @@ var script$l = /* @__PURE__ */ defineComponent({
2762
3026
  "close-on-click-overlay": false
2763
3027
  }, {
2764
3028
  default: withCtx(() => [
2765
- createElementVNode("div", _hoisted_1$k, [
2766
- _hoisted_2$g,
2767
- createElementVNode("div", _hoisted_3$c, [
2768
- createElementVNode("div", _hoisted_4$a, [
3029
+ createElementVNode("div", _hoisted_1$n, [
3030
+ _hoisted_2$j,
3031
+ createElementVNode("div", _hoisted_3$e, [
3032
+ createElementVNode("div", _hoisted_4$b, [
2769
3033
  createVNode(_component_nut_button, {
2770
3034
  class: "cancel-button",
2771
3035
  onClick: _cache[0] || (_cache[0] = ($event) => emit("update:modelValue", false)),
@@ -2778,7 +3042,7 @@ var script$l = /* @__PURE__ */ defineComponent({
2778
3042
  /* STABLE */
2779
3043
  })
2780
3044
  ]),
2781
- createElementVNode("div", _hoisted_5$9, [
3045
+ createElementVNode("div", _hoisted_5$a, [
2782
3046
  createVNode(_component_nut_button, {
2783
3047
  block: "",
2784
3048
  class: "recharge-button",
@@ -2805,7 +3069,243 @@ var script$l = /* @__PURE__ */ defineComponent({
2805
3069
  }
2806
3070
  });
2807
3071
 
2808
- script$l.__file = "src/balance/components/BalanceReminder.vue";
3072
+ script$o.__file = "src/balance/components/BalanceReminder.vue";
3073
+
3074
+ const _hoisted_1$m = { class: "text number" };
3075
+ const _hoisted_2$i = /* @__PURE__ */ createElementVNode(
3076
+ "img",
3077
+ {
3078
+ style: { "margin-top": "-2px" },
3079
+ class: "time-icon",
3080
+ src: "https://cdn.ddjf.com/static/images/bpms-workBench/clound-bean-down.png"
3081
+ },
3082
+ null,
3083
+ -1
3084
+ /* HOISTED */
3085
+ );
3086
+ var script$n = /* @__PURE__ */ defineComponent({
3087
+ __name: "DateRange",
3088
+ setup(__props) {
3089
+ const $n = useNutshell();
3090
+ const filtering = reactive({
3091
+ from: dayjs().add(-3, "M").format("YYYY-MM-DD"),
3092
+ to: dayjs().format("YYYY-MM-DD")
3093
+ });
3094
+ const openDateFilter = () => {
3095
+ $n.sheet({
3096
+ component: script$t,
3097
+ props: {
3098
+ from: "2024-08-01",
3099
+ to: "2024-08-31"
3100
+ }
3101
+ });
3102
+ };
3103
+ const dateRangeDisplay = computed(() => {
3104
+ let startTime = (filtering.from || "").replace(/-/g, ".").substring(2);
3105
+ let endTime = (filtering.to || "").replace(/-/g, ".").substring(2);
3106
+ return startTime + " - " + endTime;
3107
+ });
3108
+ return (_ctx, _cache) => {
3109
+ return withDirectives((openBlock(), createElementBlock(
3110
+ "div",
3111
+ {
3112
+ class: "date-range",
3113
+ onClick: openDateFilter
3114
+ },
3115
+ [
3116
+ createElementVNode(
3117
+ "div",
3118
+ _hoisted_1$m,
3119
+ toDisplayString(dateRangeDisplay.value),
3120
+ 1
3121
+ /* TEXT */
3122
+ ),
3123
+ _hoisted_2$i
3124
+ ],
3125
+ 512
3126
+ /* NEED_PATCH */
3127
+ )), [
3128
+ [vShow, filtering.to]
3129
+ ]);
3130
+ };
3131
+ }
3132
+ });
3133
+
3134
+ script$n.__file = "src/balance/components/DateRange.vue";
3135
+
3136
+ const _hoisted_1$l = { class: "consumption-filter" };
3137
+ const _hoisted_2$h = /* @__PURE__ */ createElementVNode(
3138
+ "div",
3139
+ { class: "consumption-filter-title" },
3140
+ [
3141
+ /* @__PURE__ */ createElementVNode("h3", null, "\u9009\u62E9\u7B5B\u9009\u9879")
3142
+ ],
3143
+ -1
3144
+ /* HOISTED */
3145
+ );
3146
+ const _hoisted_3$d = { class: "consumption-filter-content" };
3147
+ const _hoisted_4$a = { class: "title" };
3148
+ const _hoisted_5$9 = { class: "info" };
3149
+ const _hoisted_6$6 = ["onClick"];
3150
+ const _hoisted_7$4 = /* @__PURE__ */ createElementVNode(
3151
+ "div",
3152
+ { class: "consumption-filter-bottom" },
3153
+ null,
3154
+ -1
3155
+ /* HOISTED */
3156
+ );
3157
+ var script$m = /* @__PURE__ */ defineComponent({
3158
+ __name: "ListFilterPicker",
3159
+ props: {
3160
+ modelValue: { type: null, required: true, default: () => ["\u5168\u90E8", "\u5168\u90E8", "\u5168\u90E8", ""] }
3161
+ },
3162
+ emits: ["complete"],
3163
+ setup(__props, { emit: __emit }) {
3164
+ const $http = useHttp$3();
3165
+ const props = __props;
3166
+ const emit = __emit;
3167
+ const result = reactive(props.modelValue);
3168
+ const filterSections = ref([
3169
+ {
3170
+ title: "\u7C7B\u578B",
3171
+ data: consumptionPositions.map((s) => ({ code: s, name: s }))
3172
+ },
3173
+ {
3174
+ title: "\u6536\u5165/\u652F\u51FA",
3175
+ data: consumptionDirections.map((s) => ({ code: s, name: s }))
3176
+ },
3177
+ {
3178
+ title: "\u660E\u7EC6\u7C7B\u578B",
3179
+ data: consumptionTypes.map((s) => ({ code: s, name: s }))
3180
+ },
3181
+ {
3182
+ title: "\u6743\u76CA\u7C7B\u76EE",
3183
+ data: []
3184
+ }
3185
+ ]);
3186
+ const getItemClass = (index, value) => result[index] === value ? ["current"] : [""];
3187
+ const onFilterSectionClick = (index, value) => {
3188
+ result[index] = value;
3189
+ };
3190
+ const reset = () => {
3191
+ result[0] = "\u5168\u90E8";
3192
+ result[1] = "\u5168\u90E8";
3193
+ result[2] = "\u5168\u90E8";
3194
+ result[3] = "";
3195
+ };
3196
+ const \u8BF7\u6C42\u6743\u76CA\u7C7B\u76EE = () => {
3197
+ $http.get(endpoints$1.\u83B7\u53D6\u6743\u76CA\u7C7B\u76EE).then((data) => {
3198
+ filterSections.value[3].data = [
3199
+ { code: "", name: "\u5168\u90E8" },
3200
+ ...data
3201
+ ];
3202
+ });
3203
+ };
3204
+ \u8BF7\u6C42\u6743\u76CA\u7C7B\u76EE();
3205
+ const onOkClick = () => {
3206
+ emit("complete", result);
3207
+ };
3208
+ return (_ctx, _cache) => {
3209
+ return openBlock(), createElementBlock("div", _hoisted_1$l, [
3210
+ _hoisted_2$h,
3211
+ createElementVNode("div", _hoisted_3$d, [
3212
+ (openBlock(true), createElementBlock(
3213
+ Fragment,
3214
+ null,
3215
+ renderList(filterSections.value, (item, index) => {
3216
+ return openBlock(), createElementBlock(
3217
+ Fragment,
3218
+ { key: index },
3219
+ [
3220
+ createElementVNode(
3221
+ "div",
3222
+ _hoisted_4$a,
3223
+ toDisplayString(item.title),
3224
+ 1
3225
+ /* TEXT */
3226
+ ),
3227
+ createElementVNode("div", _hoisted_5$9, [
3228
+ (openBlock(true), createElementBlock(
3229
+ Fragment,
3230
+ null,
3231
+ renderList(item.data, (it, i) => {
3232
+ return openBlock(), createElementBlock("div", {
3233
+ onClick: () => onFilterSectionClick(index, it.code),
3234
+ class: normalizeClass([getItemClass(index, it.code), "info-item"]),
3235
+ key: i
3236
+ }, toDisplayString(typeof it === "string" ? it : it.name), 11, _hoisted_6$6);
3237
+ }),
3238
+ 128
3239
+ /* KEYED_FRAGMENT */
3240
+ ))
3241
+ ])
3242
+ ],
3243
+ 64
3244
+ /* STABLE_FRAGMENT */
3245
+ );
3246
+ }),
3247
+ 128
3248
+ /* KEYED_FRAGMENT */
3249
+ ))
3250
+ ]),
3251
+ createElementVNode("div", { class: "consumption-filter-btn spa-between" }, [
3252
+ createElementVNode("div", {
3253
+ class: "btn",
3254
+ onClick: reset
3255
+ }, "\u91CD\u7F6E"),
3256
+ createElementVNode("div", {
3257
+ class: "btn confirm",
3258
+ onClick: onOkClick
3259
+ }, "\u786E\u5B9A")
3260
+ ]),
3261
+ _hoisted_7$4
3262
+ ]);
3263
+ };
3264
+ }
3265
+ });
3266
+
3267
+ script$m.__file = "src/balance/components/ListFilterPicker.vue";
3268
+
3269
+ const _hoisted_1$k = /* @__PURE__ */ createElementVNode(
3270
+ "span",
3271
+ { class: "text" },
3272
+ "\u7B5B\u9009",
3273
+ -1
3274
+ /* HOISTED */
3275
+ );
3276
+ const _hoisted_2$g = /* @__PURE__ */ createElementVNode(
3277
+ "img",
3278
+ {
3279
+ class: "icon",
3280
+ src: "https://cdn.ddjf.com/static/images/bpms-workBench/clound-bean-select-icon.png"
3281
+ },
3282
+ null,
3283
+ -1
3284
+ /* HOISTED */
3285
+ );
3286
+ const _hoisted_3$c = [
3287
+ _hoisted_1$k,
3288
+ _hoisted_2$g
3289
+ ];
3290
+ var script$l = /* @__PURE__ */ defineComponent({
3291
+ __name: "ListFilter",
3292
+ setup(__props) {
3293
+ const $n = useNutshell();
3294
+ const openPicker = () => {
3295
+ $n.sheet({
3296
+ component: script$m
3297
+ });
3298
+ };
3299
+ return (_ctx, _cache) => {
3300
+ return openBlock(), createElementBlock("div", {
3301
+ class: "list-filter",
3302
+ onClick: openPicker
3303
+ }, [..._hoisted_3$c]);
3304
+ };
3305
+ }
3306
+ });
3307
+
3308
+ script$l.__file = "src/balance/components/ListFilter.vue";
2809
3309
 
2810
3310
  const _hoisted_1$j = /* @__PURE__ */ createElementVNode(
2811
3311
  "img",
@@ -3155,16 +3655,14 @@ var script$h = /* @__PURE__ */ defineComponent({
3155
3655
  function onChange(e) {
3156
3656
  const index = e.detail.value;
3157
3657
  const item = props.options[index];
3158
- if (item === void 0)
3159
- return;
3658
+ if (item === void 0) return;
3160
3659
  currentIndex.value = index;
3161
3660
  currentLabel.value = item.label;
3162
3661
  emit("update:value", item.value);
3163
3662
  emit("change", item);
3164
3663
  }
3165
3664
  function findIndexByValue(value) {
3166
- if (value == void 0)
3167
- return void 0;
3665
+ if (value == void 0) return void 0;
3168
3666
  const index = props.options.findIndex((item) => item.value == value);
3169
3667
  return index >= 0 ? index : void 0;
3170
3668
  }
@@ -3278,14 +3776,12 @@ var script$g = /* @__PURE__ */ defineComponent({
3278
3776
  ];
3279
3777
  const emit = __emit;
3280
3778
  function onOCRInfo(payload) {
3281
- if (!payload)
3282
- return;
3779
+ if (!payload) return;
3283
3780
  formState.name = payload.faceInfo.name;
3284
3781
  formState.certNo = payload.faceInfo.certNo;
3285
3782
  }
3286
3783
  function showVerifyToast(tip, duration = 1500) {
3287
- if (!tip)
3288
- return;
3784
+ if (!tip) return;
3289
3785
  Taro.showToast({
3290
3786
  title: tip,
3291
3787
  icon: "none",
@@ -3796,8 +4292,7 @@ var script$e = /* @__PURE__ */ defineComponent({
3796
4292
  appCode: props.app || appkitOptions.app(),
3797
4293
  tenantId: appkitOptions.tenant()
3798
4294
  }).then((result) => {
3799
- if (!Array.isArray(result))
3800
- return;
4295
+ if (!Array.isArray(result)) return;
3801
4296
  bannerMessages.value = result.filter((item) => item.noticeType !== void 0);
3802
4297
  popMessages.value = result.filter((item) => item.isPop);
3803
4298
  startMessageCarousel();
@@ -3880,7 +4375,7 @@ var script$e = /* @__PURE__ */ defineComponent({
3880
4375
  Fragment,
3881
4376
  null,
3882
4377
  renderList(bannerMessages.value, (item, key) => {
3883
- return openBlock(), createBlock(script$y, {
4378
+ return openBlock(), createBlock(script$C, {
3884
4379
  class: normalizeClass({ show: key === activeKey.value }),
3885
4380
  key,
3886
4381
  showClose: item.noticeType === 0,
@@ -3990,8 +4485,7 @@ var script$d = /* @__PURE__ */ defineComponent({
3990
4485
  tenantId: appkitOptions.tenant(),
3991
4486
  userId: props.userId
3992
4487
  }).then((result) => {
3993
- if (typeof result === "object")
3994
- return;
4488
+ if (typeof result === "object") return;
3995
4489
  noticeShow.value = result > 0;
3996
4490
  });
3997
4491
  }
@@ -4064,8 +4558,7 @@ var script$c = /* @__PURE__ */ defineComponent({
4064
4558
  emit("clear", "");
4065
4559
  }
4066
4560
  function onConfirm() {
4067
- if (props.disabled)
4068
- return;
4561
+ if (props.disabled) return;
4069
4562
  key.value = key.value.trim();
4070
4563
  emit("search", key.value);
4071
4564
  }
@@ -4162,10 +4655,8 @@ function useCommonList(api, query, showLoading = true, method = "GET") {
4162
4655
  return (res || {}).list || [];
4163
4656
  }
4164
4657
  async function runNext() {
4165
- if (isLast.value)
4166
- return;
4167
- if (isLoading.value)
4168
- return;
4658
+ if (isLast.value) return;
4659
+ if (isLoading.value) return;
4169
4660
  query.value.pageNum += 1;
4170
4661
  const data = await fetchData(true);
4171
4662
  list.value.push(...data);
@@ -4284,8 +4775,7 @@ var script$b = /* @__PURE__ */ defineComponent({
4284
4775
  await init();
4285
4776
  });
4286
4777
  function formatMinutes(time) {
4287
- if (!time)
4288
- return "";
4778
+ if (!time) return "";
4289
4779
  const start = dayjs(time);
4290
4780
  const end = dayjs();
4291
4781
  const diffInMinutes = end.diff(start, "minute");
@@ -4298,8 +4788,7 @@ var script$b = /* @__PURE__ */ defineComponent({
4298
4788
  }
4299
4789
  async function notifyRead(notice, index) {
4300
4790
  if (props.checkBeforeRead) {
4301
- if (!props.checkBeforeRead(notice, index))
4302
- return;
4791
+ if (!props.checkBeforeRead(notice, index)) return;
4303
4792
  }
4304
4793
  if (notice.isRead == "0") {
4305
4794
  const res = await toReadFun([notice.id]);
@@ -5209,8 +5698,7 @@ var script$7 = /* @__PURE__ */ defineComponent({
5209
5698
  const $http = useHttp();
5210
5699
  $http.post("/cas/sysAccount/verify", { verifyCode: authState.code }).then((res) => {
5211
5700
  console.log(res, "res");
5212
- if (typeof res !== "boolean")
5213
- return;
5701
+ if (typeof res !== "boolean") return;
5214
5702
  Taro.showToast({ title: "\u8EAB\u4EFD\u8BA4\u8BC1\u6210\u529F", icon: "success" });
5215
5703
  current.value++;
5216
5704
  });
@@ -5218,8 +5706,7 @@ var script$7 = /* @__PURE__ */ defineComponent({
5218
5706
  function onAuthCode() {
5219
5707
  const $http = useHttp();
5220
5708
  $http.get("/cas/sysAccount/getVerifyCodeToUserMobile").then((res) => {
5221
- if (typeof res !== "boolean")
5222
- return;
5709
+ if (typeof res !== "boolean") return;
5223
5710
  Taro.showToast({ title: "\u77ED\u4FE1\u53D1\u9001\u6210\u529F,\u8BF7\u6CE8\u610F\u67E5\u6536", icon: "none" });
5224
5711
  startCountdown();
5225
5712
  });
@@ -5238,8 +5725,7 @@ var script$7 = /* @__PURE__ */ defineComponent({
5238
5725
  mobile: bindingState.mobile,
5239
5726
  verifyCode: bindingState.code
5240
5727
  }).then((res) => {
5241
- if (typeof res !== "boolean")
5242
- return;
5728
+ if (typeof res !== "boolean") return;
5243
5729
  Taro.showToast({ title: "\u6362\u7ED1\u6210\u529F", icon: "success" });
5244
5730
  emits("success", bindingState.mobile);
5245
5731
  });
@@ -5254,8 +5740,7 @@ var script$7 = /* @__PURE__ */ defineComponent({
5254
5740
  }
5255
5741
  const $http = useHttp();
5256
5742
  $http.get(`/cas/sysAccount/getVerifyCodeToMobile/${bindingState.mobile}`).then((res) => {
5257
- if (typeof res !== "boolean")
5258
- return;
5743
+ if (typeof res !== "boolean") return;
5259
5744
  Taro.showToast({ title: "\u77ED\u4FE1\u53D1\u9001\u6210\u529F,\u8BF7\u6CE8\u610F\u67E5\u6536", icon: "none" });
5260
5745
  startCountdown1();
5261
5746
  });
@@ -6021,8 +6506,7 @@ var script$5 = {
6021
6506
  }
6022
6507
  break;
6023
6508
  case 0:
6024
- if (this.ratio != 0)
6025
- this.cropperPosition.width = this.cropperPosition.height * this.ratio;
6509
+ if (this.ratio != 0) this.cropperPosition.width = this.cropperPosition.height * this.ratio;
6026
6510
  break;
6027
6511
  }
6028
6512
  switch (pY) {
@@ -6044,8 +6528,7 @@ var script$5 = {
6044
6528
  }
6045
6529
  break;
6046
6530
  case 0:
6047
- if (this.ratio != 0)
6048
- this.cropperPosition.height = this.cropperPosition.width / this.ratio;
6531
+ if (this.ratio != 0) this.cropperPosition.height = this.cropperPosition.width / this.ratio;
6049
6532
  break;
6050
6533
  }
6051
6534
  },
@@ -6758,8 +7241,7 @@ function useDragBox() {
6758
7241
  const res = Taro.getSystemInfoSync();
6759
7242
  dragData.screenWidth = res.windowWidth;
6760
7243
  dragData.screenHeight = res.windowHeight;
6761
- if (!data)
6762
- data = {};
7244
+ if (!data) data = {};
6763
7245
  const scale = dragData.screenWidth / 375;
6764
7246
  dragData.width = data.width * scale || 0;
6765
7247
  dragData.height = data.height * scale || 0;
@@ -7173,4 +7655,4 @@ const AppKit = {
7173
7655
  }
7174
7656
  };
7175
7657
 
7176
- export { script$m as AccountView, script$C as AmountPicker, script$z as AppDrawer, script$s as BalanceCard, script$l as BalanceReminder, script$x as DeviceVersion, script$1 as LoginSetting, script$e as NoticeBanner, script$d as NoticeEntry, script$b as NoticeList, script$A as PageHeader, script$v as RechargeResult, script$w as RechargeView, script$g as SelfRegistration, script$t as TradeView, script$B as UserAgreement, script$7 as UserBinding, script$6 as UserBindingSuccess, script$a as UserEntry, script$3 as UserFeedback, script$2 as UserFeedbackEntry, script$4 as UserHeadCrop, script$8 as UserInfo, script as UserResourceEmpty, components, createHttp, AppKit as default, requestPayment$2 as requestPayment, services$1 as services, useAppKit, useCountdown, useEncode, useSafeArea, useTabbar, useValidator };
7658
+ export { script$p as AccountView, script$H as AmountPicker, script$E as AppDrawer, script$D as AppVerify, script$v as BalanceCard, script$o as BalanceReminder, script$n as DateRange, script$B as DeviceVersion, script$l as ListFilter, script$1 as LoginSetting, script$e as NoticeBanner, script$d as NoticeEntry, script$b as NoticeList, script$A as OcrIcon, script$F as PageHeader, script$y as RechargeResult, script$z as RechargeView, script$g as SelfRegistration, script$w as TradeView, script$G as UserAgreement, script$7 as UserBinding, script$6 as UserBindingSuccess, script$a as UserEntry, script$3 as UserFeedback, script$2 as UserFeedbackEntry, script$4 as UserHeadCrop, script$8 as UserInfo, script as UserResourceEmpty, components, createHttp, AppKit as default, requestPayment$2 as requestPayment, services$1 as services, useAppKit, useCountdown, useEncode, useSafeArea, useTabbar, useUpload, useValidator };