@uxda/appkit 1.2.8 → 1.2.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 (66) 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 +289 -71
  5. package/dist/index.js +862 -341
  6. package/dist/styles.css +1 -0
  7. package/package.json +78 -78
  8. package/project.config.json +15 -15
  9. package/project.tt.json +13 -13
  10. package/rollup.config.mjs +54 -54
  11. package/src/Appkit.ts +65 -65
  12. package/src/balance/api/endpoints.ts +125 -122
  13. package/src/balance/api/index.ts +82 -82
  14. package/src/balance/components/AccountView.vue +754 -649
  15. package/src/balance/components/BalanceCard.vue +209 -209
  16. package/src/balance/components/BalanceReminder.vue +83 -83
  17. package/src/balance/components/ConsumptionFilter.vue +218 -218
  18. package/src/balance/components/ConsumptionRules.vue +68 -68
  19. package/src/balance/components/DateFilter.vue +235 -235
  20. package/src/balance/components/SecondBalance.vue +71 -71
  21. package/src/balance/components/Tip.vue +46 -0
  22. package/src/balance/components/index.ts +9 -9
  23. package/src/balance/types.ts +90 -88
  24. package/src/components/dd-area/index.vue +222 -222
  25. package/src/components/dd-icon/doc.md +21 -21
  26. package/src/components/dd-icon/index.vue +23 -23
  27. package/src/components/dd-selector/index.vue +124 -124
  28. package/src/components/ocr-id/index.vue +110 -110
  29. package/src/components/ocr-id/types.d.ts +12 -12
  30. package/src/global.ts +6 -6
  31. package/src/index.ts +88 -86
  32. package/src/main.scss +1 -1
  33. package/src/payment/api/config.ts +7 -7
  34. package/src/payment/api/endpoints.ts +103 -78
  35. package/src/payment/api/index.ts +71 -71
  36. package/src/payment/components/AmountPicker.vue +93 -93
  37. package/src/payment/components/RechargeResult.vue +66 -54
  38. package/src/payment/components/RechargeView.vue +154 -154
  39. package/src/payment/components/RightsPicker.vue +106 -0
  40. package/src/payment/components/TradeView.vue +298 -0
  41. package/src/payment/components/UserAgreement.vue +141 -141
  42. package/src/payment/components/index.ts +22 -19
  43. package/src/payment/index.ts +5 -5
  44. package/src/payment/services/index.ts +16 -16
  45. package/src/payment/services/invoke-recharge.ts +25 -25
  46. package/src/payment/services/request-payment.ts +58 -31
  47. package/src/payment/types.ts +28 -23
  48. package/src/register/components/SelfRegistration.vue +227 -227
  49. package/src/register/components/index.ts +2 -2
  50. package/src/shared/components/AppDrawer.vue +58 -58
  51. package/src/shared/components/EmptyView.vue +33 -33
  52. package/src/shared/components/PageHeader.vue +79 -79
  53. package/src/shared/components/index.ts +6 -6
  54. package/src/shared/composables/index.ts +2 -2
  55. package/src/shared/composables/useSafeArea.ts +43 -43
  56. package/src/shared/composables/useTabbar.ts +24 -24
  57. package/src/shared/http/Http.ts +126 -126
  58. package/src/shared/http/index.ts +1 -1
  59. package/src/shared/http/types.ts +157 -157
  60. package/src/shared/index.ts +3 -3
  61. package/src/shared/weixin/payment.ts +38 -38
  62. package/src/styles/fonts.scss +2 -2
  63. package/src/styles/vars.scss +3 -3
  64. package/tsconfig.json +30 -30
  65. package/types/global.d.ts +21 -21
  66. package/types/vue.d.ts +10 -10
package/dist/index.js CHANGED
@@ -1,11 +1,12 @@
1
- import { defineComponent, reactive, resolveComponent, openBlock, createBlock, withCtx, createElementBlock, Fragment, renderList, normalizeClass, createElementVNode, toDisplayString, createTextVNode, createStaticVNode, ref, createCommentVNode, renderSlot, createVNode, onMounted, unref, watch, computed, normalizeStyle, withDirectives, vShow, vModelText } from 'vue';
1
+ import { defineComponent, reactive, resolveComponent, openBlock, createBlock, withCtx, createElementBlock, Fragment, renderList, normalizeClass, createElementVNode, toDisplayString, createTextVNode, createStaticVNode, ref, createCommentVNode, renderSlot, createVNode, onMounted, unref, computed, watch, withDirectives, vShow, normalizeStyle, vModelText } from 'vue';
2
2
  import Taro, { useDidShow } from '@tarojs/taro';
3
- import { Grid, GridItem, Button, Checkbox, Popup, OverLay, DatePicker, Form, FormItem, Cell, CellGroup } from '@nutui/nutui-taro';
3
+ import { Grid, GridItem, Button, Checkbox, Popup, OverLay, DatePicker, Form, FormItem, Cell, CellGroup, Dialog } from '@nutui/nutui-taro';
4
4
  import dayjs from 'dayjs';
5
+ import _ from 'lodash';
5
6
 
6
- const _hoisted_1$h = { class: "token-line number" };
7
- const _hoisted_2$d = { class: "number" };
8
- var script$i = /* @__PURE__ */ defineComponent({
7
+ const _hoisted_1$j = { class: "token-line number" };
8
+ const _hoisted_2$f = { class: "number" };
9
+ var script$k = /* @__PURE__ */ defineComponent({
9
10
  __name: "AmountPicker",
10
11
  props: {
11
12
  items: { type: Array, required: true, default: () => [] },
@@ -43,7 +44,7 @@ var script$i = /* @__PURE__ */ defineComponent({
43
44
  default: withCtx(() => [
44
45
  createElementVNode(
45
46
  "h4",
46
- _hoisted_1$h,
47
+ _hoisted_1$j,
47
48
  toDisplayString(amount.token),
48
49
  1
49
50
  /* TEXT */
@@ -52,7 +53,7 @@ var script$i = /* @__PURE__ */ defineComponent({
52
53
  createTextVNode("\xA5"),
53
54
  createElementVNode(
54
55
  "span",
55
- _hoisted_2$d,
56
+ _hoisted_2$f,
56
57
  toDisplayString(amount.amount),
57
58
  1
58
59
  /* TEXT */
@@ -74,21 +75,21 @@ var script$i = /* @__PURE__ */ defineComponent({
74
75
  }
75
76
  });
76
77
 
77
- script$i.__file = "src/payment/components/AmountPicker.vue";
78
+ script$k.__file = "src/payment/components/AmountPicker.vue";
78
79
 
79
- const _hoisted_1$g = { class: "agreement-doc" };
80
- const _hoisted_2$c = /* @__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:10\uFF08\u53731\u5143\u4EBA\u6C11\u5E01=10\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);
80
+ const _hoisted_1$i = { class: "agreement-doc" };
81
+ const _hoisted_2$e = /* @__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);
81
82
  const _hoisted_98 = [
82
- _hoisted_2$c
83
+ _hoisted_2$e
83
84
  ];
84
85
  function render$1(_ctx, _cache) {
85
- return openBlock(), createElementBlock("view", _hoisted_1$g, [..._hoisted_98]);
86
+ return openBlock(), createElementBlock("view", _hoisted_1$i, [..._hoisted_98]);
86
87
  }
87
88
 
88
- const script$h = {};
89
+ const script$j = {};
89
90
 
90
- script$h.render = render$1;
91
- script$h.__file = "src/payment/components/UserAgreement.vue";
91
+ script$j.render = render$1;
92
+ script$j.__file = "src/payment/components/UserAgreement.vue";
92
93
 
93
94
  function requestPayment$2(json) {
94
95
  return new Promise((resolve, reject) => {
@@ -136,11 +137,11 @@ function useTabbar() {
136
137
  };
137
138
  }
138
139
 
139
- const _hoisted_1$f = {
140
+ const _hoisted_1$h = {
140
141
  key: 0,
141
142
  class: "page-title"
142
143
  };
143
- var script$g = /* @__PURE__ */ defineComponent({
144
+ var script$i = /* @__PURE__ */ defineComponent({
144
145
  __name: "PageHeader",
145
146
  props: {
146
147
  title: { type: String, required: false, default: "" },
@@ -170,7 +171,7 @@ var script$g = /* @__PURE__ */ defineComponent({
170
171
  [
171
172
  _ctx.title ? (openBlock(), createElementBlock(
172
173
  "h1",
173
- _hoisted_1$f,
174
+ _hoisted_1$h,
174
175
  toDisplayString(_ctx.title),
175
176
  1
176
177
  /* TEXT */
@@ -188,10 +189,10 @@ var script$g = /* @__PURE__ */ defineComponent({
188
189
  }
189
190
  });
190
191
 
191
- script$g.__file = "src/shared/components/PageHeader.vue";
192
+ script$i.__file = "src/shared/components/PageHeader.vue";
192
193
 
193
- const _hoisted_1$e = { class: "drawer-body" };
194
- var script$f = /* @__PURE__ */ defineComponent({
194
+ const _hoisted_1$g = { class: "drawer-body" };
195
+ var script$h = /* @__PURE__ */ defineComponent({
195
196
  __name: "AppDrawer",
196
197
  props: {
197
198
  modelValue: { type: Boolean, required: true },
@@ -215,11 +216,11 @@ var script$f = /* @__PURE__ */ defineComponent({
215
216
  "onUpdate:visible": onVisibleChange
216
217
  }, {
217
218
  default: withCtx(() => [
218
- createVNode(script$g, {
219
+ createVNode(script$i, {
219
220
  title: _ctx.title,
220
221
  onClose: onPageHeaderClose
221
222
  }, null, 8, ["title"]),
222
- createElementVNode("div", _hoisted_1$e, [
223
+ createElementVNode("div", _hoisted_1$g, [
223
224
  renderSlot(_ctx.$slots, "default")
224
225
  ])
225
226
  ]),
@@ -230,7 +231,7 @@ var script$f = /* @__PURE__ */ defineComponent({
230
231
  }
231
232
  });
232
233
 
233
- script$f.__file = "src/shared/components/AppDrawer.vue";
234
+ script$h.__file = "src/shared/components/AppDrawer.vue";
234
235
 
235
236
  var HttpMethod = /* @__PURE__ */ ((HttpMethod2) => {
236
237
  HttpMethod2["get"] = "GET";
@@ -262,7 +263,7 @@ const request = (config) => {
262
263
  }
263
264
  }
264
265
  if (raw.data) {
265
- const response = clientConfig.transforms && clientConfig.transforms[c.url] ? clientConfig.transforms[c.url]?.(raw.data) : data;
266
+ const response = clientConfig.transforms && clientConfig.transforms[c.url] ? clientConfig.transforms[c.url]?.(raw.data) : raw.data;
266
267
  const paging = config.data?.page ? clientConfig.paging?.transform(raw.data) : void 0;
267
268
  resolve(
268
269
  paging ? {
@@ -271,7 +272,7 @@ const request = (config) => {
271
272
  } : response
272
273
  );
273
274
  } else {
274
- reject(`\u672A\u77E5\u9519\u8BEF`);
275
+ resolve(raw);
275
276
  }
276
277
  }).catch((e) => {
277
278
  console.log("request.catch===", e);
@@ -367,6 +368,33 @@ const endpointsList$1 = {
367
368
  // 查询用支付ID
368
369
  };
369
370
  }
371
+ },
372
+ \u83B7\u53D6\u6743\u76CA\u5FAE\u4FE1\u652F\u4ED8: {
373
+ path: "/payment/outer/payment/valueExchangePay",
374
+ translate: (params) => ({
375
+ caseConfigId: params.caseConfigId,
376
+ appCode: params.app,
377
+ tenantId: params.tenant,
378
+ amount: params.amount,
379
+ certificateNo: params.user
380
+ }),
381
+ transform: (data) => {
382
+ let json = null;
383
+ try {
384
+ json = JSON.parse(data.prePayStr);
385
+ } catch (e) {
386
+ }
387
+ return {
388
+ json,
389
+ // 拉起微信支付用的JSON串
390
+ paymentId: data.payId
391
+ // 查询用支付ID
392
+ };
393
+ }
394
+ },
395
+ \u83B7\u53D6\u589E\u503C\u6743\u76CA\u7C7B\u76EE: {
396
+ path: "/payment/paymentCaseConfig/getBalanceAndRiskQueryPriceConfig",
397
+ transform: (data) => data
370
398
  }
371
399
  };
372
400
  const endpoints$1 = Object.fromEntries(
@@ -439,7 +467,7 @@ function useHttp$1() {
439
467
  return false;
440
468
  },
441
469
  (raw) => {
442
- if (raw.status > 500) {
470
+ if (raw.status > 500 && raw.status != 1100028) {
443
471
  return true;
444
472
  }
445
473
  return false;
@@ -489,6 +517,30 @@ const requestPayment = (params) => {
489
517
  });
490
518
  });
491
519
  };
520
+ const requestPaymentByBean = (params) => {
521
+ return new Promise((resolve, reject) => {
522
+ const $http = useHttp$1();
523
+ $http.post(endpoints$1.\u83B7\u53D6\u6743\u76CA\u5FAE\u4FE1\u652F\u4ED8, {
524
+ ...params
525
+ }).then((response) => {
526
+ if (!response.json) {
527
+ Taro.showToast({
528
+ title: response.message,
529
+ icon: "none"
530
+ });
531
+ resolve(false);
532
+ } else {
533
+ requestPayment$2(response.json).then((result) => {
534
+ if (result) {
535
+ resolve(true);
536
+ } else {
537
+ resolve(false);
538
+ }
539
+ });
540
+ }
541
+ });
542
+ });
543
+ };
492
544
  var requestPayment$1 = {
493
545
  install($app) {
494
546
  $app.requestPayment = requestPayment;
@@ -500,11 +552,11 @@ const services$1 = [
500
552
  invokeRecharge$1
501
553
  ];
502
554
 
503
- const _hoisted_1$d = { class: "view recharge-view" };
504
- const _hoisted_2$b = { class: "flex-grow" };
505
- const _hoisted_3$a = { class: "amount-footer" };
506
- const _hoisted_4$9 = { class: "agreement" };
507
- var script$e = /* @__PURE__ */ defineComponent({
555
+ const _hoisted_1$f = { class: "view recharge-view" };
556
+ const _hoisted_2$d = { class: "flex-grow" };
557
+ const _hoisted_3$c = { class: "amount-footer" };
558
+ const _hoisted_4$a = { class: "agreement" };
559
+ var script$g = /* @__PURE__ */ defineComponent({
508
560
  __name: "RechargeView",
509
561
  props: {
510
562
  app: { type: String, required: true },
@@ -567,16 +619,16 @@ var script$e = /* @__PURE__ */ defineComponent({
567
619
  return (_ctx, _cache) => {
568
620
  const _component_nut_checkbox = resolveComponent("nut-checkbox");
569
621
  const _component_nut_button = resolveComponent("nut-button");
570
- return openBlock(), createElementBlock("view", _hoisted_1$d, [
571
- createElementVNode("view", _hoisted_2$b, [
572
- createVNode(script$i, {
622
+ return openBlock(), createElementBlock("view", _hoisted_1$f, [
623
+ createElementVNode("view", _hoisted_2$d, [
624
+ createVNode(script$k, {
573
625
  items: amounts.value,
574
626
  selected: state.selected,
575
627
  onChange: onAmountSelect
576
628
  }, null, 8, ["items", "selected"])
577
629
  ]),
578
- createElementVNode("view", _hoisted_3$a, [
579
- createElementVNode("view", _hoisted_4$9, [
630
+ createElementVNode("view", _hoisted_3$c, [
631
+ createElementVNode("view", _hoisted_4$a, [
580
632
  createVNode(_component_nut_checkbox, {
581
633
  modelValue: state.agreed,
582
634
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => state.agreed = $event)
@@ -606,13 +658,13 @@ var script$e = /* @__PURE__ */ defineComponent({
606
658
  /* STABLE */
607
659
  }, 8, ["loading"])
608
660
  ]),
609
- createVNode(unref(script$f), {
661
+ createVNode(unref(script$h), {
610
662
  modelValue: state.agreementOpen,
611
663
  "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => state.agreementOpen = $event),
612
664
  title: "\u5145\u503C\u534F\u8BAE"
613
665
  }, {
614
666
  default: withCtx(() => [
615
- createVNode(script$h)
667
+ createVNode(script$j)
616
668
  ]),
617
669
  _: 1
618
670
  /* STABLE */
@@ -622,46 +674,52 @@ var script$e = /* @__PURE__ */ defineComponent({
622
674
  }
623
675
  });
624
676
 
625
- script$e.__file = "src/payment/components/RechargeView.vue";
677
+ script$g.__file = "src/payment/components/RechargeView.vue";
626
678
 
627
- const _hoisted_1$c = { class: "recharge-result" };
628
- const _hoisted_2$a = { class: "content" };
629
- const _hoisted_3$9 = /* @__PURE__ */ createElementVNode(
679
+ const _hoisted_1$e = { class: "recharge-result" };
680
+ const _hoisted_2$c = { class: "content" };
681
+ const _hoisted_3$b = /* @__PURE__ */ createElementVNode(
630
682
  "div",
631
683
  { class: "figure" },
632
684
  null,
633
685
  -1
634
686
  /* HOISTED */
635
687
  );
636
- const _hoisted_4$8 = /* @__PURE__ */ createElementVNode(
637
- "h2",
638
- null,
639
- "\u5145\u503C\u6210\u529F",
640
- -1
641
- /* HOISTED */
642
- );
643
- const _hoisted_5$7 = /* @__PURE__ */ createElementVNode(
644
- "div",
645
- { class: "caption" },
646
- "\u4E91\u8C46\u5C06\u57285\u5206\u949F\u4E4B\u5185\u5230\u8D26",
647
- -1
648
- /* HOISTED */
649
- );
650
- var script$d = /* @__PURE__ */ defineComponent({
688
+ const _hoisted_4$9 = { class: "caption" };
689
+ var script$f = /* @__PURE__ */ defineComponent({
651
690
  __name: "RechargeResult",
691
+ props: {
692
+ type: { type: String, required: true, default: "recharge" }
693
+ },
652
694
  emits: ["dismiss"],
653
695
  setup(__props, { emit: __emit }) {
654
696
  const emit = __emit;
697
+ const views = {
698
+ recharge: ["\u5145\u503C", "\u4E91\u8C46"],
699
+ trade: ["\u8D2D\u4E70", "\u6743\u76CA"]
700
+ };
655
701
  function onBackClick() {
656
702
  emit("dismiss");
657
703
  }
658
704
  return (_ctx, _cache) => {
659
705
  const _component_nut_button = resolveComponent("nut-button");
660
- return openBlock(), createElementBlock("div", _hoisted_1$c, [
661
- createElementVNode("div", _hoisted_2$a, [
662
- _hoisted_3$9,
663
- _hoisted_4$8,
664
- _hoisted_5$7,
706
+ return openBlock(), createElementBlock("div", _hoisted_1$e, [
707
+ createElementVNode("div", _hoisted_2$c, [
708
+ _hoisted_3$b,
709
+ createElementVNode(
710
+ "h2",
711
+ null,
712
+ toDisplayString(views[_ctx.type][0]) + "\u6210\u529F",
713
+ 1
714
+ /* TEXT */
715
+ ),
716
+ createElementVNode(
717
+ "div",
718
+ _hoisted_4$9,
719
+ toDisplayString(views[_ctx.type][1]) + "\u5C06\u57281\u5206\u949F\u4E4B\u5185\u5230\u8D26",
720
+ 1
721
+ /* TEXT */
722
+ ),
665
723
  createVNode(_component_nut_button, {
666
724
  class: "back-button",
667
725
  type: "default",
@@ -679,13 +737,371 @@ var script$d = /* @__PURE__ */ defineComponent({
679
737
  }
680
738
  });
681
739
 
682
- script$d.__file = "src/payment/components/RechargeResult.vue";
740
+ script$f.__file = "src/payment/components/RechargeResult.vue";
741
+
742
+ const _hoisted_1$d = { class: "tag" };
743
+ const _hoisted_2$b = { class: "token-line number" };
744
+ const _hoisted_3$a = { class: "number" };
745
+ var script$e = /* @__PURE__ */ defineComponent({
746
+ __name: "RightsPicker",
747
+ props: {
748
+ items: { type: Array, required: true, default: () => [] },
749
+ selected: { type: Number, required: false, default: () => 0 }
750
+ },
751
+ emits: ["change"],
752
+ setup(__props, { emit: __emit }) {
753
+ const emit = __emit;
754
+ const state = reactive({
755
+ selected: 0
756
+ });
757
+ const onGridItemClick = (index) => {
758
+ state.selected = index;
759
+ emit("change", state.selected);
760
+ };
761
+ return (_ctx, _cache) => {
762
+ const _component_nut_grid_item = resolveComponent("nut-grid-item");
763
+ const _component_nut_grid = resolveComponent("nut-grid");
764
+ return openBlock(), createBlock(_component_nut_grid, {
765
+ class: "trade-picker",
766
+ "column-num": 3,
767
+ gutter: 10,
768
+ border: false
769
+ }, {
770
+ default: withCtx(() => [
771
+ (openBlock(true), createElementBlock(
772
+ Fragment,
773
+ null,
774
+ renderList(_ctx.items, (amount, index) => {
775
+ return openBlock(), createBlock(_component_nut_grid_item, {
776
+ class: normalizeClass(["tile", { selected: state.selected === index }]),
777
+ onClick: () => onGridItemClick(index),
778
+ key: index
779
+ }, {
780
+ default: withCtx(() => [
781
+ createElementVNode(
782
+ "div",
783
+ _hoisted_1$d,
784
+ toDisplayString(amount.paymentDesc),
785
+ 1
786
+ /* TEXT */
787
+ ),
788
+ createElementVNode(
789
+ "h4",
790
+ _hoisted_2$b,
791
+ toDisplayString(amount.priceRightNum) + "\u7B14",
792
+ 1
793
+ /* TEXT */
794
+ ),
795
+ createElementVNode("h5", null, [
796
+ createTextVNode("\xA5"),
797
+ createElementVNode(
798
+ "span",
799
+ _hoisted_3$a,
800
+ toDisplayString(amount.paymentAmount),
801
+ 1
802
+ /* TEXT */
803
+ )
804
+ ])
805
+ ]),
806
+ _: 2
807
+ /* DYNAMIC */
808
+ }, 1032, ["class", "onClick"]);
809
+ }),
810
+ 128
811
+ /* KEYED_FRAGMENT */
812
+ ))
813
+ ]),
814
+ _: 1
815
+ /* STABLE */
816
+ });
817
+ };
818
+ }
819
+ });
820
+
821
+ script$e.__file = "src/payment/components/RightsPicker.vue";
822
+
823
+ const _hoisted_1$c = { class: "view recharge-view2" };
824
+ const _hoisted_2$a = { class: "flex-grow" };
825
+ const _hoisted_3$9 = {
826
+ key: 0,
827
+ class: "bean-buy"
828
+ };
829
+ const _hoisted_4$8 = { class: "left" };
830
+ const _hoisted_5$6 = /* @__PURE__ */ createElementVNode(
831
+ "div",
832
+ { class: "title" },
833
+ "\u4F7F\u7528\u4E91\u8C46\u652F\u4ED8",
834
+ -1
835
+ /* HOISTED */
836
+ );
837
+ const _hoisted_6$4 = {
838
+ key: 0,
839
+ class: "amount"
840
+ };
841
+ const _hoisted_7$4 = {
842
+ key: 1,
843
+ class: "amount"
844
+ };
845
+ const _hoisted_8$2 = { class: "amount" };
846
+ const _hoisted_9$2 = ["src"];
847
+ const _hoisted_10$2 = { class: "amount-footer" };
848
+ const _hoisted_11$2 = {
849
+ key: 0,
850
+ class: "agreement"
851
+ };
852
+ const _hoisted_12$2 = { class: "buy-amount" };
853
+ const _hoisted_13$2 = { class: "left" };
854
+ const _hoisted_14$2 = { class: "amount" };
855
+ const _hoisted_15$1 = /* @__PURE__ */ createElementVNode(
856
+ "i",
857
+ null,
858
+ "\uFFE5",
859
+ -1
860
+ /* HOISTED */
861
+ );
862
+ const _hoisted_16$1 = { class: "item" };
863
+ const _hoisted_17$1 = { class: "item" };
864
+ const _hoisted_18$1 = { class: "item" };
865
+ var script$d = /* @__PURE__ */ defineComponent({
866
+ __name: "TradeView",
867
+ props: {
868
+ app: { type: String, required: true },
869
+ tenant: { type: String, required: true }
870
+ },
871
+ emits: ["complete"],
872
+ setup(__props, { emit: __emit }) {
873
+ const props = __props;
874
+ const emit = __emit;
875
+ const state = reactive({
876
+ agreed: false,
877
+ selected: 0,
878
+ agreementOpen: false,
879
+ buttonLoading: false
880
+ });
881
+ const balance = ref(0);
882
+ const amounts = ref([]);
883
+ const selectBean = ref(false);
884
+ const onAgreementLinkClick = ($event) => {
885
+ state.agreementOpen = true;
886
+ };
887
+ const onAmountSelect = (selected) => {
888
+ state.selected = selected;
889
+ selectBean.value = false;
890
+ };
891
+ const currentAmount = computed(() => {
892
+ return amounts.value[state.selected] && !selectBean.value ? amounts.value[state.selected].paymentAmount : 0;
893
+ });
894
+ onMounted(() => {
895
+ const $http = useHttp$1();
896
+ $http.get(endpoints$1.\u83B7\u53D6\u589E\u503C\u6743\u76CA\u7C7B\u76EE).then((res) => {
897
+ balance.value = res.balance;
898
+ amounts.value = res.paymentCaseConfigVOS;
899
+ });
900
+ });
901
+ const showDialog = ref(false);
902
+ async function beanPay() {
903
+ const $http = useHttp$1();
904
+ $http.post(`/payment/paymentCaseConfig/purchase/${amounts.value[state.selected].id}`).then((response) => {
905
+ if (response) {
906
+ showDialog.value = false;
907
+ emit("complete", response);
908
+ } else {
909
+ Taro.showToast({
910
+ title: response.message,
911
+ icon: "none"
912
+ });
913
+ }
914
+ });
915
+ }
916
+ const onPayClick = () => {
917
+ if (selectBean.value) {
918
+ showDialog.value = true;
919
+ return;
920
+ }
921
+ if (!selectBean.value && !state.agreed) {
922
+ Taro.showToast({
923
+ title: "\u8BF7\u52FE\u9009\u300A\u5927\u9053\u4E91\u5E73\u53F0\u4E91\u8C46\u5145\u503C\u534F\u8BAE\u300B",
924
+ icon: "none"
925
+ });
926
+ return false;
927
+ }
928
+ state.buttonLoading = true;
929
+ wx.login({
930
+ success({ code }) {
931
+ requestPaymentByBean({
932
+ caseConfigId: amounts.value[state.selected].id,
933
+ amount: amounts.value[state.selected].paymentAmount,
934
+ app: "corporateStar",
935
+ // 'crm',
936
+ tenant: props.tenant,
937
+ // '17454646',
938
+ user: code
939
+ }).then((result) => {
940
+ state.buttonLoading = false;
941
+ if (result) {
942
+ emit("complete", true);
943
+ }
944
+ });
945
+ }
946
+ });
947
+ };
948
+ return (_ctx, _cache) => {
949
+ const _component_nut_checkbox = resolveComponent("nut-checkbox");
950
+ const _component_nut_button = resolveComponent("nut-button");
951
+ const _component_nut_dialog = resolveComponent("nut-dialog");
952
+ return openBlock(), createElementBlock("view", _hoisted_1$c, [
953
+ createElementVNode("view", _hoisted_2$a, [
954
+ createVNode(script$e, {
955
+ items: amounts.value,
956
+ selected: state.selected,
957
+ onChange: onAmountSelect
958
+ }, null, 8, ["items", "selected"]),
959
+ amounts.value[state.selected] ? (openBlock(), createElementBlock("div", _hoisted_3$9, [
960
+ createElementVNode("div", _hoisted_4$8, [
961
+ _hoisted_5$6,
962
+ !selectBean.value ? (openBlock(), createElementBlock(
963
+ "div",
964
+ _hoisted_6$4,
965
+ "\u4F59\u989D " + toDisplayString(balance.value),
966
+ 1
967
+ /* TEXT */
968
+ )) : (openBlock(), createElementBlock(
969
+ "div",
970
+ _hoisted_7$4,
971
+ "\u6263\u51CF\u540E\u4F59\u989D " + toDisplayString(balance.value - amounts.value[state.selected].paymentAmount),
972
+ 1
973
+ /* TEXT */
974
+ ))
975
+ ]),
976
+ balance.value >= amounts.value[state.selected].paymentAmount ? (openBlock(), createElementBlock("div", {
977
+ key: 0,
978
+ class: "right",
979
+ onClick: _cache[0] || (_cache[0] = ($event) => selectBean.value = !selectBean.value)
980
+ }, [
981
+ createElementVNode(
982
+ "div",
983
+ _hoisted_8$2,
984
+ "-" + toDisplayString(amounts.value[state.selected].paymentAmount),
985
+ 1
986
+ /* TEXT */
987
+ ),
988
+ createElementVNode("img", {
989
+ class: "icon",
990
+ src: selectBean.value ? "https://cdn.ddjf.com/static/images/appkit/select.svg" : "https://cdn.ddjf.com/static/images/appkit/not-select.svg"
991
+ }, null, 8, _hoisted_9$2)
992
+ ])) : createCommentVNode("v-if", true)
993
+ ])) : createCommentVNode("v-if", true)
994
+ ]),
995
+ createElementVNode("view", _hoisted_10$2, [
996
+ !selectBean.value ? (openBlock(), createElementBlock("view", _hoisted_11$2, [
997
+ createVNode(_component_nut_checkbox, {
998
+ modelValue: state.agreed,
999
+ "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => state.agreed = $event)
1000
+ }, {
1001
+ default: withCtx(() => [
1002
+ createTextVNode("\u6211\u5DF2\u9605\u8BFB\u5E76\u540C\u610F"),
1003
+ createElementVNode("a", {
1004
+ class: "link inline",
1005
+ onClick: onAgreementLinkClick
1006
+ }, "\u300A\u5927\u9053\u4E91\u5E73\u53F0\u4E91\u8C46\u5145\u503C\u670D\u52A1\u534F\u8BAE\u300B")
1007
+ ]),
1008
+ _: 1
1009
+ /* STABLE */
1010
+ }, 8, ["modelValue"])
1011
+ ])) : createCommentVNode("v-if", true),
1012
+ createElementVNode("div", _hoisted_12$2, [
1013
+ createElementVNode("div", _hoisted_13$2, [
1014
+ createTextVNode(" \u5F85\u652F\u4ED8\uFF1A "),
1015
+ createElementVNode("span", _hoisted_14$2, [
1016
+ _hoisted_15$1,
1017
+ createTextVNode(
1018
+ toDisplayString(currentAmount.value),
1019
+ 1
1020
+ /* TEXT */
1021
+ )
1022
+ ])
1023
+ ]),
1024
+ createVNode(_component_nut_button, {
1025
+ block: "",
1026
+ shape: "square",
1027
+ loading: state.buttonLoading,
1028
+ onClick: onPayClick,
1029
+ class: "recharge-button"
1030
+ }, {
1031
+ default: withCtx(() => [
1032
+ createTextVNode("\u8D2D\u4E70")
1033
+ ]),
1034
+ _: 1
1035
+ /* STABLE */
1036
+ }, 8, ["loading"])
1037
+ ])
1038
+ ]),
1039
+ createVNode(unref(script$h), {
1040
+ modelValue: state.agreementOpen,
1041
+ "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => state.agreementOpen = $event),
1042
+ title: "\u5145\u503C\u534F\u8BAE"
1043
+ }, {
1044
+ default: withCtx(() => [
1045
+ createVNode(script$j)
1046
+ ]),
1047
+ _: 1
1048
+ /* STABLE */
1049
+ }, 8, ["modelValue"]),
1050
+ createVNode(_component_nut_dialog, {
1051
+ title: "\u786E\u8BA4\u8D2D\u4E70",
1052
+ "custom-class": "trade-dialog",
1053
+ visible: showDialog.value,
1054
+ "onUpdate:visible": _cache[3] || (_cache[3] = ($event) => showDialog.value = $event),
1055
+ onCancel: _cache[4] || (_cache[4] = ($event) => showDialog.value = !showDialog.value),
1056
+ onOk: beanPay
1057
+ }, {
1058
+ default: withCtx(() => [
1059
+ amounts.value[state.selected] ? (openBlock(), createElementBlock(
1060
+ Fragment,
1061
+ { key: 0 },
1062
+ [
1063
+ createElementVNode(
1064
+ "div",
1065
+ _hoisted_16$1,
1066
+ "\u4E91\u8C46\u6263\u51CF\uFF1A" + toDisplayString(amounts.value[state.selected].paymentAmount),
1067
+ 1
1068
+ /* TEXT */
1069
+ ),
1070
+ createElementVNode(
1071
+ "div",
1072
+ _hoisted_17$1,
1073
+ "\u6743\u76CA\u589E\u52A0\uFF1A" + toDisplayString(amounts.value[state.selected].priceRightNum) + "\u7B14",
1074
+ 1
1075
+ /* TEXT */
1076
+ ),
1077
+ createElementVNode(
1078
+ "div",
1079
+ _hoisted_18$1,
1080
+ "\u6263\u51CF\u540E\u4E91\u8C46\u4F59\u989D\uFF1A" + toDisplayString(balance.value - amounts.value[state.selected].paymentAmount),
1081
+ 1
1082
+ /* TEXT */
1083
+ )
1084
+ ],
1085
+ 64
1086
+ /* STABLE_FRAGMENT */
1087
+ )) : createCommentVNode("v-if", true)
1088
+ ]),
1089
+ _: 1
1090
+ /* STABLE */
1091
+ }, 8, ["visible"])
1092
+ ]);
1093
+ };
1094
+ }
1095
+ });
1096
+
1097
+ script$d.__file = "src/payment/components/TradeView.vue";
683
1098
 
684
1099
  const components = {
685
- AmountPicker: script$i,
686
- RechargeView: script$e,
687
- UserAgreement: script$h,
688
- RechargeResult: script$d
1100
+ AmountPicker: script$k,
1101
+ RechargeView: script$g,
1102
+ UserAgreement: script$j,
1103
+ RechargeResult: script$f,
1104
+ TradeView: script$d
689
1105
  };
690
1106
 
691
1107
  const typeMappings = {
@@ -695,7 +1111,9 @@ const typeMappings = {
695
1111
  ZJ: "\u589E\u52A0",
696
1112
  KJ: "\u6263\u51CF",
697
1113
  XH: "\u6D88\u8017",
698
- TH: "\u9000\u56DE"
1114
+ TH: "\u9000\u56DE",
1115
+ ZS: "\u8D60\u9001",
1116
+ HG: "\u6362\u8D2D"
699
1117
  };
700
1118
  const typeMappingsReversed = Object.fromEntries(
701
1119
  Object.entries(typeMappings).map(([x, y]) => [y, x])
@@ -728,7 +1146,8 @@ const endpointsList = {
728
1146
  privileges: result.rightsAccountBalList.map((r) => ({
729
1147
  title: r.rightsName,
730
1148
  count: r.rightsAccount,
731
- unit: r.rightsUnit
1149
+ unit: r.rightsUnit,
1150
+ appCode: r.appCode
732
1151
  }))
733
1152
  };
734
1153
  }
@@ -854,7 +1273,7 @@ const _hoisted_1$b = { class: "account-card" };
854
1273
  const _hoisted_2$9 = { class: "card" };
855
1274
  const _hoisted_3$8 = { class: "card-row" };
856
1275
  const _hoisted_4$7 = { class: "card-row-left" };
857
- const _hoisted_5$6 = /* @__PURE__ */ createElementVNode(
1276
+ const _hoisted_5$5 = /* @__PURE__ */ createElementVNode(
858
1277
  "div",
859
1278
  { class: "bean-box" },
860
1279
  [
@@ -975,7 +1394,7 @@ var script$c = /* @__PURE__ */ defineComponent({
975
1394
  createElementVNode("div", _hoisted_2$9, [
976
1395
  createElementVNode("div", _hoisted_3$8, [
977
1396
  createElementVNode("div", _hoisted_4$7, [
978
- _hoisted_5$6,
1397
+ _hoisted_5$5,
979
1398
  createElementVNode(
980
1399
  "div",
981
1400
  _hoisted_6$3,
@@ -1017,7 +1436,9 @@ const consumptionTypes = [
1017
1436
  "\u589E\u52A0",
1018
1437
  "\u6263\u51CF",
1019
1438
  "\u6D88\u8017",
1020
- "\u9000\u56DE"
1439
+ "\u9000\u56DE",
1440
+ "\u8D60\u9001",
1441
+ "\u6362\u8D2D"
1021
1442
  ];
1022
1443
  const consumptionPositions = ["\u5168\u90E8", "\u4E91\u8C46", "\u6743\u76CA"];
1023
1444
  const consumptionDirections = ["\u5168\u90E8", "\u6536\u5165", "\u652F\u51FA"];
@@ -1034,7 +1455,7 @@ const _hoisted_2$8 = /* @__PURE__ */ createElementVNode(
1034
1455
  );
1035
1456
  const _hoisted_3$7 = { class: "consumption-filter-content" };
1036
1457
  const _hoisted_4$6 = { class: "title" };
1037
- const _hoisted_5$5 = { class: "info" };
1458
+ const _hoisted_5$4 = { class: "info" };
1038
1459
  const _hoisted_6$2 = ["onClick"];
1039
1460
  const _hoisted_7$2 = /* @__PURE__ */ createElementVNode(
1040
1461
  "div",
@@ -1113,7 +1534,7 @@ var script$b = /* @__PURE__ */ defineComponent({
1113
1534
  1
1114
1535
  /* TEXT */
1115
1536
  ),
1116
- createElementVNode("div", _hoisted_5$5, [
1537
+ createElementVNode("div", _hoisted_5$4, [
1117
1538
  (openBlock(true), createElementBlock(
1118
1539
  Fragment,
1119
1540
  null,
@@ -1171,7 +1592,7 @@ const _hoisted_4$5 = /* @__PURE__ */ createElementVNode(
1171
1592
  -1
1172
1593
  /* HOISTED */
1173
1594
  );
1174
- const _hoisted_5$4 = { class: "time" };
1595
+ const _hoisted_5$3 = { class: "time" };
1175
1596
  const _hoisted_6$1 = /* @__PURE__ */ createElementVNode(
1176
1597
  "div",
1177
1598
  { class: "line" },
@@ -1249,7 +1670,7 @@ var script$a = /* @__PURE__ */ defineComponent({
1249
1670
  _hoisted_2$7,
1250
1671
  createElementVNode("div", _hoisted_3$6, [
1251
1672
  _hoisted_4$5,
1252
- createElementVNode("div", _hoisted_5$4, [
1673
+ createElementVNode("div", _hoisted_5$3, [
1253
1674
  createElementVNode(
1254
1675
  "div",
1255
1676
  {
@@ -1320,7 +1741,7 @@ const _hoisted_3$5 = /* @__PURE__ */ createElementVNode(
1320
1741
  [
1321
1742
  /* @__PURE__ */ createElementVNode("div", { class: "desc-title" }, "\u3010\u4E91\u8C46\u3011"),
1322
1743
  /* @__PURE__ */ createElementVNode("div", null, " 1\u3001\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\u62B5\u6263\u4F7F\u7528\u6216\u8005\u4EA7\u54C1\u6743\u76CA\u7684\u5151\u6362\u3002 "),
1323
- /* @__PURE__ */ createElementVNode("div", null, " \u4EBA\u6C11\u5E01\u4E0E\u4E91\u8C46\u7684\u5151\u6362\u6BD4\u4F8B\uFF1A1\u4EBA\u6C11\u5E01=10\u4E91\u8C46\u3002\u4E91\u8C46\u8D2D\u4E70\u6210\u529F\u8FC7\u540E\u4E0D\u53EF\u8F6C\u8BA9\u6216\u8005\u9006\u5411\u5151\u6362\u3002 "),
1744
+ /* @__PURE__ */ createElementVNode("div", null, " \u4EBA\u6C11\u5E01\u4E0E\u4E91\u8C46\u7684\u5151\u6362\u6BD4\u4F8B\uFF1A1\u4EBA\u6C11\u5E01=1\u4E91\u8C46\u3002\u4E91\u8C46\u8D2D\u4E70\u6210\u529F\u8FC7\u540E\u4E0D\u53EF\u8F6C\u8BA9\u6216\u8005\u9006\u5411\u5151\u6362\u3002 "),
1324
1745
  /* @__PURE__ */ createElementVNode("div", null, " 2\u3001\u4E91\u8C46\u7684\u4F7F\u7528\u8303\u56F4\uFF1A\u4E91\u8C46\u53EF\u7528\u4E8E\u5927\u9053\u4E91\u5E73\u53F0\u5404\u4E2A\u7CFB\u7EDF\u7684\u4EA7\u54C1\u6743\u76CA\u62B5\u6263\u4F7F\u7528\u6216\u5151\u6362\uFF0C\u7CFB\u7EDF\u5305\u62EC\u4F46\u4E0D\u9650\u4E8E\u4F01\u660E\u661F\u3001AI\u5BA1\u6279\u3001\u7535\u5B50\u7B7E\u7EA6\u3001\u8702\u9E1F\u5468\u8F6C\u7CFB\u7EDF\u3001\u8702\u9E1F\u5C45\u95F4\u7CFB\u7EDF\u3002 "),
1325
1746
  /* @__PURE__ */ createElementVNode("div", { class: "desc-title" }, "\u3010\u4EA7\u54C1\u6743\u76CA\u3011"),
1326
1747
  /* @__PURE__ */ createElementVNode("div", null, " 1\u3001\u4EA7\u54C1\u6743\u76CA\u7CFB\u5927\u9053\u4E91\u5E73\u53F0\u5404\u4E2A\u7CFB\u7EDF\u4EA7\u54C1\u7684\u4F7F\u7528\u6D88\u8017\u6807\u51C6\uFF0C\u53EF\u76F4\u63A5\u7528\u4E8E\u5355\u9879\u4EA7\u54C1\u7684\u4F7F\u7528\u6D88\u8017\u3002\u4EA7\u54C1\u6743\u76CA\u53EF\u901A\u8FC7\u4EBA\u6C11\u5E01\u5145\u503C\u8D2D\u4E70\u3001\u4E91\u8C46\u5151\u6362\u6216\u5927\u9053\u4E91\u5E73\u53F0\u8D60\u9001\u83B7\u5F97\u3002\u4EA7\u54C1\u6743\u76CA\u4EC5\u7528\u4E8E\u6307\u5B9A\u7684\u4EA7\u54C1\u4F7F\u7528\u6D88\u8017\uFF0C\u4E5F\u65E0\u6CD5\u9006\u5411\u5151\u6362\u6210\u4E91\u8C46\u6216\u4EBA\u6C11\u5E01\u3002 "),
@@ -1380,81 +1801,65 @@ const script$8 = {};
1380
1801
  script$8.render = render;
1381
1802
  script$8.__file = "src/shared/components/EmptyView.vue";
1382
1803
 
1383
- const _hoisted_1$6 = { class: "second-balance" };
1384
- const _hoisted_2$4 = {
1804
+ const _hoisted_1$6 = {
1385
1805
  key: 0,
1386
- class: "positions"
1806
+ class: "tip"
1387
1807
  };
1808
+ const _hoisted_2$4 = /* @__PURE__ */ createElementVNode(
1809
+ "img",
1810
+ {
1811
+ class: "tip-icon",
1812
+ src: "https://cdn.ddjf.com/static/images/bpms-workBench/gold-tip.png"
1813
+ },
1814
+ null,
1815
+ -1
1816
+ /* HOISTED */
1817
+ );
1388
1818
  const _hoisted_3$3 = /* @__PURE__ */ createElementVNode(
1389
1819
  "div",
1390
- { class: "icon" },
1391
- null,
1820
+ { class: "tip-content" },
1821
+ "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",
1392
1822
  -1
1393
1823
  /* HOISTED */
1394
1824
  );
1395
- const _hoisted_4$3 = { class: "title" };
1396
- const _hoisted_5$3 = { class: "number amount" };
1825
+ const _hoisted_4$3 = [
1826
+ _hoisted_2$4,
1827
+ _hoisted_3$3
1828
+ ];
1397
1829
  var script$7 = /* @__PURE__ */ defineComponent({
1398
- __name: "SecondBalance",
1399
- props: {
1400
- data: { type: Array, required: true, default: () => [] }
1401
- },
1830
+ __name: "Tip",
1402
1831
  setup(__props) {
1832
+ const show = ref(false);
1833
+ onMounted(() => {
1834
+ const d1 = dayjs(/* @__PURE__ */ new Date());
1835
+ const d2 = dayjs("2024-07-01 00:00:00");
1836
+ if (d1.isBefore(d2)) {
1837
+ show.value = true;
1838
+ }
1839
+ });
1403
1840
  return (_ctx, _cache) => {
1404
- const _component_page_header = resolveComponent("page-header");
1405
- return openBlock(), createElementBlock("div", _hoisted_1$6, [
1406
- createVNode(_component_page_header, { title: "\u6743\u76CA\u4F59\u989D" }),
1407
- _ctx.data.length ? (openBlock(), createElementBlock("div", _hoisted_2$4, [
1408
- (openBlock(true), createElementBlock(
1409
- Fragment,
1410
- null,
1411
- renderList(_ctx.data, (item, index) => {
1412
- return openBlock(), createElementBlock("div", {
1413
- class: "position",
1414
- key: index
1415
- }, [
1416
- _hoisted_3$3,
1417
- createElementVNode(
1418
- "label",
1419
- _hoisted_4$3,
1420
- toDisplayString(item.title),
1421
- 1
1422
- /* TEXT */
1423
- ),
1424
- createElementVNode(
1425
- "label",
1426
- _hoisted_5$3,
1427
- toDisplayString(item.count) + toDisplayString(item.unit),
1428
- 1
1429
- /* TEXT */
1430
- )
1431
- ]);
1432
- }),
1433
- 128
1434
- /* KEYED_FRAGMENT */
1435
- ))
1436
- ])) : (openBlock(), createBlock(script$8, { key: 1 }))
1437
- ]);
1841
+ return show.value ? (openBlock(), createElementBlock("div", _hoisted_1$6, [..._hoisted_4$3])) : createCommentVNode("v-if", true);
1438
1842
  };
1439
1843
  }
1440
1844
  });
1441
1845
 
1442
- script$7.__file = "src/balance/components/SecondBalance.vue";
1846
+ script$7.__file = "src/balance/components/Tip.vue";
1443
1847
 
1444
- const _hoisted_1$5 = { class: "scroll-content" };
1445
- const _hoisted_2$3 = /* @__PURE__ */ createElementVNode(
1848
+ const _hoisted_1$5 = { class: "account-view" };
1849
+ const _hoisted_2$3 = { class: "scroll-content" };
1850
+ const _hoisted_3$2 = /* @__PURE__ */ createElementVNode(
1446
1851
  "label",
1447
1852
  null,
1448
- "\u6743\u76CA\u4F59\u989D",
1853
+ "\u6536\u652F\u660E\u7EC6",
1449
1854
  -1
1450
1855
  /* HOISTED */
1451
1856
  );
1452
- const _hoisted_3$2 = [
1453
- _hoisted_2$3
1857
+ const _hoisted_4$2 = [
1858
+ _hoisted_3$2
1454
1859
  ];
1455
- const _hoisted_4$2 = { class: "balance" };
1456
- const _hoisted_5$2 = { class: "bean-box spa-between" };
1457
- const _hoisted_6 = /* @__PURE__ */ createElementVNode(
1860
+ const _hoisted_5$2 = { class: "balance" };
1861
+ const _hoisted_6 = { class: "bean-box spa-between" };
1862
+ const _hoisted_7 = /* @__PURE__ */ createElementVNode(
1458
1863
  "div",
1459
1864
  { class: "bean-img" },
1460
1865
  [
@@ -1467,18 +1872,62 @@ const _hoisted_6 = /* @__PURE__ */ createElementVNode(
1467
1872
  -1
1468
1873
  /* HOISTED */
1469
1874
  );
1470
- const _hoisted_7 = { class: "bean-counts spa-between" };
1471
- const _hoisted_8 = { class: "counts number" };
1472
- const _hoisted_9 = { class: "search-time" };
1473
- const _hoisted_10 = /* @__PURE__ */ createElementVNode(
1875
+ const _hoisted_8 = { class: "bean-counts spa-between" };
1876
+ const _hoisted_9 = { class: "counts number" };
1877
+ const _hoisted_10 = {
1878
+ key: 0,
1879
+ class: "rights-card"
1880
+ };
1881
+ const _hoisted_11 = /* @__PURE__ */ createElementVNode(
1882
+ "div",
1883
+ { class: "title" },
1884
+ "\u542F\u660E\u661F\u6743\u76CA",
1885
+ -1
1886
+ /* HOISTED */
1887
+ );
1888
+ const _hoisted_12 = { class: "list" };
1889
+ const _hoisted_13 = { class: "item-count" };
1890
+ const _hoisted_14 = { class: "item-title" };
1891
+ const _hoisted_15 = {
1892
+ key: 0,
1893
+ class: "item-title-button"
1894
+ };
1895
+ const _hoisted_16 = ["onClick"];
1896
+ const _hoisted_17 = /* @__PURE__ */ createElementVNode(
1897
+ "img",
1898
+ {
1899
+ class: "button-icon",
1900
+ src: "https://cdn.ddjf.com/static/images/bpms-workBench/button-hg.svg"
1901
+ },
1902
+ null,
1903
+ -1
1904
+ /* HOISTED */
1905
+ );
1906
+ const _hoisted_18 = {
1907
+ key: 1,
1908
+ class: "rights-card"
1909
+ };
1910
+ const _hoisted_19 = /* @__PURE__ */ createElementVNode(
1911
+ "div",
1912
+ { class: "title" },
1913
+ "AI\u5BA1\u6279\u6743\u76CA",
1914
+ -1
1915
+ /* HOISTED */
1916
+ );
1917
+ const _hoisted_20 = { class: "list" };
1918
+ const _hoisted_21 = { class: "item-count" };
1919
+ const _hoisted_22 = { class: "item-title" };
1920
+ const _hoisted_23 = { class: "operation-box" };
1921
+ const _hoisted_24 = { class: "search-time" };
1922
+ const _hoisted_25 = /* @__PURE__ */ createElementVNode(
1474
1923
  "div",
1475
1924
  { class: "title" },
1476
1925
  "\u6536\u652F\u660E\u7EC6",
1477
1926
  -1
1478
1927
  /* HOISTED */
1479
1928
  );
1480
- const _hoisted_11 = { class: "text number" };
1481
- const _hoisted_12 = /* @__PURE__ */ createElementVNode(
1929
+ const _hoisted_26 = { class: "text number" };
1930
+ const _hoisted_27 = /* @__PURE__ */ createElementVNode(
1482
1931
  "img",
1483
1932
  {
1484
1933
  style: { "margin-top": "-2px" },
@@ -1489,14 +1938,14 @@ const _hoisted_12 = /* @__PURE__ */ createElementVNode(
1489
1938
  -1
1490
1939
  /* HOISTED */
1491
1940
  );
1492
- const _hoisted_13 = /* @__PURE__ */ createElementVNode(
1941
+ const _hoisted_28 = /* @__PURE__ */ createElementVNode(
1493
1942
  "span",
1494
1943
  { class: "text" },
1495
1944
  "\u7B5B\u9009",
1496
1945
  -1
1497
1946
  /* HOISTED */
1498
1947
  );
1499
- const _hoisted_14 = /* @__PURE__ */ createElementVNode(
1948
+ const _hoisted_29 = /* @__PURE__ */ createElementVNode(
1500
1949
  "img",
1501
1950
  {
1502
1951
  class: "time-icon",
@@ -1506,24 +1955,24 @@ const _hoisted_14 = /* @__PURE__ */ createElementVNode(
1506
1955
  -1
1507
1956
  /* HOISTED */
1508
1957
  );
1509
- const _hoisted_15 = [
1510
- _hoisted_13,
1511
- _hoisted_14
1958
+ const _hoisted_30 = [
1959
+ _hoisted_28,
1960
+ _hoisted_29
1512
1961
  ];
1513
- const _hoisted_16 = { class: "operation-list" };
1514
- const _hoisted_17 = {
1962
+ const _hoisted_31 = { class: "operation-list" };
1963
+ const _hoisted_32 = {
1515
1964
  key: 0,
1516
1965
  class: "box"
1517
1966
  };
1518
- const _hoisted_18 = { class: "title number" };
1519
- const _hoisted_19 = { class: "item-type" };
1520
- const _hoisted_20 = { class: "item-detail" };
1521
- const _hoisted_21 = { class: "item-info spa-between" };
1522
- const _hoisted_22 = { class: "item-info-type" };
1523
- const _hoisted_23 = { class: "item-info-title" };
1524
- const _hoisted_24 = { class: "item-info-amount number" };
1525
- const _hoisted_25 = { class: "item-detail-remark" };
1526
- const _hoisted_26 = {
1967
+ const _hoisted_33 = { class: "title number" };
1968
+ const _hoisted_34 = { class: "item-type" };
1969
+ const _hoisted_35 = { class: "item-detail" };
1970
+ const _hoisted_36 = { class: "item-info spa-between" };
1971
+ const _hoisted_37 = { class: "item-info-type" };
1972
+ const _hoisted_38 = { class: "item-info-title" };
1973
+ const _hoisted_39 = { class: "item-info-amount number" };
1974
+ const _hoisted_40 = { class: "item-detail-remark" };
1975
+ const _hoisted_41 = {
1527
1976
  key: 0,
1528
1977
  class: "box-not-text"
1529
1978
  };
@@ -1532,10 +1981,9 @@ var script$6 = /* @__PURE__ */ defineComponent({
1532
1981
  props: {
1533
1982
  app: { type: String, required: true, default: "" }
1534
1983
  },
1535
- emits: ["recharge"],
1984
+ emits: ["recharge", "trade"],
1536
1985
  setup(__props, { emit: __emit }) {
1537
- const safeArea = useSafeArea();
1538
- const refreshing = ref(false);
1986
+ ref(false);
1539
1987
  const props = __props;
1540
1988
  const emit = __emit;
1541
1989
  const filterOpen = ref(false);
@@ -1568,13 +2016,12 @@ var script$6 = /* @__PURE__ */ defineComponent({
1568
2016
  const consumptionGroups = ref([]);
1569
2017
  const balance = ref({
1570
2018
  total: 0,
1571
- privileges: []
2019
+ privileges: {}
1572
2020
  });
1573
2021
  useDidShow(() => {
1574
2022
  Taro.setNavigationBarTitle({
1575
2023
  title: "\u6211\u7684\u8D26\u6237"
1576
2024
  });
1577
- loadConsumptions();
1578
2025
  loadBalance();
1579
2026
  });
1580
2027
  function groupDataByDate(data) {
@@ -1624,7 +2071,12 @@ var script$6 = /* @__PURE__ */ defineComponent({
1624
2071
  $http.get(endpoints.\u83B7\u53D6\u4F59\u989D\u660E\u7EC6, {
1625
2072
  app: props.app
1626
2073
  }).then((data) => {
1627
- balance.value = data;
2074
+ const { privileges, total } = data;
2075
+ const filterData = {
2076
+ total,
2077
+ privileges: _.groupBy(privileges, "appCode")
2078
+ };
2079
+ balance.value = filterData;
1628
2080
  });
1629
2081
  }
1630
2082
  const onFilterComplete = (value) => {
@@ -1644,6 +2096,9 @@ var script$6 = /* @__PURE__ */ defineComponent({
1644
2096
  function gotoRecharge() {
1645
2097
  emit("recharge");
1646
2098
  }
2099
+ function gotoTrade(item) {
2100
+ emit("trade", item);
2101
+ }
1647
2102
  function loadNextPage() {
1648
2103
  filtering.page++;
1649
2104
  loadConsumptions(true);
@@ -1653,25 +2108,20 @@ var script$6 = /* @__PURE__ */ defineComponent({
1653
2108
  const { scrollTop } = e;
1654
2109
  scrolled.value = scrollTop;
1655
2110
  };
1656
- const onPullDownRefresh = () => {
1657
- refreshing.value = true;
1658
- loadBalance();
1659
- setTimeout(() => {
1660
- refreshing.value = false;
1661
- }, 500);
1662
- };
1663
2111
  const onReachBottom = () => {
2112
+ console.log("\u5230\u5E95\u4E86");
1664
2113
  if (reachedLastPage.value) {
1665
2114
  return false;
1666
2115
  }
1667
2116
  loadNextPage();
1668
2117
  };
1669
- const isAnyPopupOpen = computed(() => {
2118
+ computed(() => {
1670
2119
  return rulesPopupOpen.value || datePickerOpen.value || filterOpen.value || secondBalanceOpen.value;
1671
2120
  });
1672
2121
  const secondBalanceOpen = ref(false);
1673
2122
  function onSecondBalanceButtonClick() {
1674
2123
  secondBalanceOpen.value = true;
2124
+ loadConsumptions();
1675
2125
  }
1676
2126
  watch(secondBalanceOpen, () => {
1677
2127
  Taro.setNavigationBarColor({
@@ -1699,190 +2149,132 @@ var script$6 = /* @__PURE__ */ defineComponent({
1699
2149
  resetDateRange();
1700
2150
  });
1701
2151
  return (_ctx, _cache) => {
1702
- const _component_scroll_view = resolveComponent("scroll-view");
1703
2152
  const _component_nut_popup = resolveComponent("nut-popup");
2153
+ const _component_scroll_view = resolveComponent("scroll-view");
1704
2154
  return openBlock(), createElementBlock(
1705
2155
  Fragment,
1706
2156
  null,
1707
2157
  [
1708
- createVNode(_component_scroll_view, {
1709
- class: normalizeClass(["account-view", { popupOpen: isAnyPopupOpen.value }]),
1710
- "scroll-y": !isAnyPopupOpen.value,
1711
- "refresher-enabled": !isAnyPopupOpen.value,
1712
- "refresher-triggered": refreshing.value,
1713
- onScroll,
1714
- onRefresherrefresh: onPullDownRefresh,
1715
- "lower-threshold": 50,
1716
- onScrolltolower: onReachBottom
1717
- }, {
1718
- default: withCtx(() => [
1719
- createElementVNode("div", _hoisted_1$5, [
1720
- createVNode(unref(script$g), {
1721
- "color-mode": "dark",
1722
- title: "\u6211\u7684\u8D26\u6237",
1723
- class: normalizeClass({ "with-background": scrolled.value > 0 }),
1724
- onClose: onPageHeaderClose
1725
- }, null, 8, ["class"]),
1726
- createElementVNode("div", { class: "row jusify-right" }, [
2158
+ createElementVNode("div", _hoisted_1$5, [
2159
+ createElementVNode("div", _hoisted_2$3, [
2160
+ createVNode(unref(script$i), {
2161
+ "color-mode": "dark",
2162
+ title: "\u6211\u7684\u8D26\u6237",
2163
+ class: normalizeClass({ "with-background": scrolled.value > 0 }),
2164
+ onClose: onPageHeaderClose
2165
+ }, null, 8, ["class"]),
2166
+ createElementVNode("div", { class: "row jusify-right" }, [
2167
+ createElementVNode("div", {
2168
+ class: "small-bean-button",
2169
+ onClick: onSecondBalanceButtonClick
2170
+ }, [..._hoisted_4$2])
2171
+ ]),
2172
+ createElementVNode("div", _hoisted_5$2, [
2173
+ createElementVNode("div", _hoisted_6, [
2174
+ _hoisted_7,
1727
2175
  createElementVNode("div", {
1728
- class: "small-bean-button",
1729
- onClick: onSecondBalanceButtonClick
1730
- }, [..._hoisted_3$2])
1731
- ]),
1732
- createElementVNode("div", _hoisted_4$2, [
1733
- createElementVNode("div", _hoisted_5$2, [
1734
- _hoisted_6,
1735
- createElementVNode("div", {
1736
- class: "rule",
1737
- onClick: _cache[0] || (_cache[0] = ($event) => rulesPopupOpen.value = true)
1738
- }, "\u89C4\u5219\u8BF4\u660E")
1739
- ]),
1740
- createElementVNode("div", _hoisted_7, [
1741
- createElementVNode(
1742
- "div",
1743
- _hoisted_8,
1744
- toDisplayString(balance.value.total || 0),
1745
- 1
1746
- /* TEXT */
1747
- ),
1748
- createElementVNode("div", {
1749
- class: "pay",
1750
- onClick: gotoRecharge
1751
- }, "\u4E91\u8C46\u5145\u503C")
1752
- ])
2176
+ class: "rule",
2177
+ onClick: _cache[0] || (_cache[0] = ($event) => rulesPopupOpen.value = true)
2178
+ }, "\u89C4\u5219\u8BF4\u660E")
1753
2179
  ]),
1754
- createElementVNode(
1755
- "div",
1756
- {
1757
- class: normalizeClass(["operation-title spa-between", { "with-shadow": scrolled.value > 0 }]),
1758
- style: normalizeStyle({ top: `${unref(safeArea).status + unref(safeArea).nav}px` })
1759
- },
1760
- [
1761
- createElementVNode("div", _hoisted_9, [
1762
- _hoisted_10,
1763
- withDirectives(createElementVNode(
1764
- "div",
1765
- {
1766
- class: "time",
1767
- onClick: openDateFilter
1768
- },
1769
- [
1770
- createElementVNode(
1771
- "div",
1772
- _hoisted_11,
1773
- toDisplayString(dateRangeDisplay.value),
1774
- 1
1775
- /* TEXT */
1776
- ),
1777
- _hoisted_12
1778
- ],
1779
- 512
1780
- /* NEED_PATCH */
1781
- ), [
1782
- [vShow, filtering.dateFrom]
1783
- ])
1784
- ]),
1785
- createElementVNode("div", {
1786
- class: "search",
1787
- onClick: _cache[1] || (_cache[1] = ($event) => filterOpen.value = true)
1788
- }, [..._hoisted_15])
1789
- ],
1790
- 6
1791
- /* CLASS, STYLE */
1792
- ),
1793
- createElementVNode("div", _hoisted_16, [
1794
- consumptionGroups.value.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_17, [
1795
- (openBlock(true), createElementBlock(
1796
- Fragment,
1797
- null,
1798
- renderList(consumptionGroups.value, (item, index) => {
1799
- return openBlock(), createElementBlock("div", {
1800
- class: "box-detail",
1801
- key: index
1802
- }, [
2180
+ createElementVNode("div", _hoisted_8, [
2181
+ createElementVNode(
2182
+ "div",
2183
+ _hoisted_9,
2184
+ toDisplayString(balance.value.total || 0),
2185
+ 1
2186
+ /* TEXT */
2187
+ ),
2188
+ createElementVNode("div", {
2189
+ class: "pay",
2190
+ onClick: gotoRecharge
2191
+ }, "\u4E91\u8C46\u5145\u503C")
2192
+ ])
2193
+ ]),
2194
+ createVNode(script$7),
2195
+ balance.value.privileges.corporateStar ? (openBlock(), createElementBlock("div", _hoisted_10, [
2196
+ _hoisted_11,
2197
+ createElementVNode("div", _hoisted_12, [
2198
+ (openBlock(true), createElementBlock(
2199
+ Fragment,
2200
+ null,
2201
+ renderList(balance.value.privileges.corporateStar, (item, index) => {
2202
+ return openBlock(), createElementBlock("div", {
2203
+ class: "item star-item",
2204
+ key: index
2205
+ }, [
2206
+ createElementVNode(
2207
+ "div",
2208
+ _hoisted_13,
2209
+ toDisplayString(item.count),
2210
+ 1
2211
+ /* TEXT */
2212
+ ),
2213
+ createElementVNode("div", _hoisted_14, [
1803
2214
  createElementVNode(
1804
2215
  "div",
1805
- _hoisted_18,
1806
- toDisplayString(item.date),
2216
+ null,
2217
+ toDisplayString(item.title),
1807
2218
  1
1808
2219
  /* TEXT */
1809
2220
  ),
1810
- (openBlock(true), createElementBlock(
1811
- Fragment,
1812
- null,
1813
- renderList(item.consumptions, (it, i) => {
1814
- return openBlock(), createElementBlock("div", {
1815
- class: "item",
1816
- key: i
1817
- }, [
1818
- createElementVNode(
1819
- "div",
1820
- _hoisted_19,
1821
- toDisplayString(it.\u4EA4\u6613\u7C7B\u578B),
1822
- 1
1823
- /* TEXT */
1824
- ),
1825
- createElementVNode("div", _hoisted_20, [
1826
- createElementVNode("div", _hoisted_21, [
1827
- createElementVNode("div", null, [
1828
- createElementVNode(
1829
- "div",
1830
- _hoisted_22,
1831
- toDisplayString(it.\u8D26\u6237\u7C7B\u578B),
1832
- 1
1833
- /* TEXT */
1834
- ),
1835
- createElementVNode(
1836
- "div",
1837
- _hoisted_23,
1838
- toDisplayString(it.title),
1839
- 1
1840
- /* TEXT */
1841
- )
1842
- ]),
1843
- createElementVNode(
1844
- "div",
1845
- _hoisted_24,
1846
- toDisplayString(it.\u6536\u5165\u8FD8\u662F\u652F\u51FA == "\u652F\u51FA" ? "-" : "+") + toDisplayString(it.amount),
1847
- 1
1848
- /* TEXT */
1849
- )
1850
- ]),
1851
- createElementVNode(
1852
- "div",
1853
- _hoisted_25,
1854
- toDisplayString(it.description),
1855
- 1
1856
- /* TEXT */
1857
- )
1858
- ])
1859
- ]);
1860
- }),
1861
- 128
1862
- /* KEYED_FRAGMENT */
1863
- ))
1864
- ]);
1865
- }),
1866
- 128
1867
- /* KEYED_FRAGMENT */
1868
- )),
1869
- reachedLastPage.value ? (openBlock(), createElementBlock("div", _hoisted_26, "\u6CA1\u6709\u66F4\u591A\u4E86")) : createCommentVNode("v-if", true)
1870
- ])) : (openBlock(), createBlock(script$8, { key: 1 }))
2221
+ !item.activityId ? (openBlock(), createElementBlock("div", _hoisted_15, [
2222
+ createElementVNode("div", {
2223
+ onClick: ($event) => gotoTrade(item)
2224
+ }, "\u8D85\u503C\u6362\u8D2D", 8, _hoisted_16),
2225
+ _hoisted_17
2226
+ ])) : createCommentVNode("v-if", true)
2227
+ ])
2228
+ ]);
2229
+ }),
2230
+ 128
2231
+ /* KEYED_FRAGMENT */
2232
+ ))
1871
2233
  ])
1872
- ])
1873
- ]),
1874
- _: 1
1875
- /* STABLE */
1876
- }, 8, ["class", "scroll-y", "refresher-enabled", "refresher-triggered"]),
2234
+ ])) : createCommentVNode("v-if", true),
2235
+ balance.value.privileges.aiapprove ? (openBlock(), createElementBlock("div", _hoisted_18, [
2236
+ _hoisted_19,
2237
+ createElementVNode("div", _hoisted_20, [
2238
+ (openBlock(true), createElementBlock(
2239
+ Fragment,
2240
+ null,
2241
+ renderList(balance.value.privileges.aiapprove, (item, index) => {
2242
+ return openBlock(), createElementBlock("div", {
2243
+ class: "item",
2244
+ key: index
2245
+ }, [
2246
+ createElementVNode(
2247
+ "div",
2248
+ _hoisted_21,
2249
+ toDisplayString(item.count),
2250
+ 1
2251
+ /* TEXT */
2252
+ ),
2253
+ createElementVNode(
2254
+ "div",
2255
+ _hoisted_22,
2256
+ toDisplayString(item.title),
2257
+ 1
2258
+ /* TEXT */
2259
+ )
2260
+ ]);
2261
+ }),
2262
+ 128
2263
+ /* KEYED_FRAGMENT */
2264
+ ))
2265
+ ])
2266
+ ])) : createCommentVNode("v-if", true)
2267
+ ])
2268
+ ]),
1877
2269
  createVNode(_component_nut_popup, {
1878
2270
  "pop-class": "consumption-rules-popup",
1879
2271
  visible: rulesPopupOpen.value,
1880
- "onUpdate:visible": _cache[3] || (_cache[3] = ($event) => rulesPopupOpen.value = $event),
2272
+ "onUpdate:visible": _cache[2] || (_cache[2] = ($event) => rulesPopupOpen.value = $event),
1881
2273
  "close-on-click-overlay": false
1882
2274
  }, {
1883
2275
  default: withCtx(() => [
1884
2276
  createVNode(script$9, {
1885
- onComplete: _cache[2] || (_cache[2] = ($event) => rulesPopupOpen.value = false)
2277
+ onComplete: _cache[1] || (_cache[1] = ($event) => rulesPopupOpen.value = false)
1886
2278
  })
1887
2279
  ]),
1888
2280
  _: 1
@@ -1894,7 +2286,7 @@ var script$6 = /* @__PURE__ */ defineComponent({
1894
2286
  round: "",
1895
2287
  "close-on-click-overlay": true,
1896
2288
  visible: datePickerOpen.value,
1897
- "onUpdate:visible": _cache[4] || (_cache[4] = ($event) => datePickerOpen.value = $event)
2289
+ "onUpdate:visible": _cache[3] || (_cache[3] = ($event) => datePickerOpen.value = $event)
1898
2290
  }, {
1899
2291
  default: withCtx(() => [
1900
2292
  datePickerOpen.value ? (openBlock(), createBlock(script$a, {
@@ -1914,7 +2306,7 @@ var script$6 = /* @__PURE__ */ defineComponent({
1914
2306
  round: "",
1915
2307
  "close-on-click-overlay": true,
1916
2308
  visible: filterOpen.value,
1917
- "onUpdate:visible": _cache[5] || (_cache[5] = ($event) => filterOpen.value = $event)
2309
+ "onUpdate:visible": _cache[4] || (_cache[4] = ($event) => filterOpen.value = $event)
1918
2310
  }, {
1919
2311
  default: withCtx(() => [
1920
2312
  createVNode(script$b, {
@@ -1930,15 +2322,143 @@ var script$6 = /* @__PURE__ */ defineComponent({
1930
2322
  _: 1
1931
2323
  /* STABLE */
1932
2324
  }, 8, ["visible"]),
1933
- createVNode(unref(script$f), {
2325
+ createVNode(unref(script$h), {
1934
2326
  modelValue: secondBalanceOpen.value,
1935
2327
  "onUpdate:modelValue": _cache[6] || (_cache[6] = ($event) => secondBalanceOpen.value = $event),
1936
- title: "\u6743\u76CA\u4F59\u989D"
2328
+ title: "\u6536\u652F\u660E\u7EC6"
1937
2329
  }, {
1938
2330
  default: withCtx(() => [
1939
- createVNode(script$7, {
1940
- data: balance.value.privileges
1941
- }, null, 8, ["data"])
2331
+ createElementVNode("div", _hoisted_23, [
2332
+ createElementVNode(
2333
+ "div",
2334
+ {
2335
+ class: normalizeClass(["operation-title spa-between", { "with-shadow": scrolled.value > 0 }])
2336
+ },
2337
+ [
2338
+ createElementVNode("div", _hoisted_24, [
2339
+ _hoisted_25,
2340
+ withDirectives(createElementVNode(
2341
+ "div",
2342
+ {
2343
+ class: "time",
2344
+ onClick: openDateFilter
2345
+ },
2346
+ [
2347
+ createElementVNode(
2348
+ "div",
2349
+ _hoisted_26,
2350
+ toDisplayString(dateRangeDisplay.value),
2351
+ 1
2352
+ /* TEXT */
2353
+ ),
2354
+ _hoisted_27
2355
+ ],
2356
+ 512
2357
+ /* NEED_PATCH */
2358
+ ), [
2359
+ [vShow, filtering.dateFrom]
2360
+ ])
2361
+ ]),
2362
+ createElementVNode("div", {
2363
+ class: "search",
2364
+ onClick: _cache[5] || (_cache[5] = ($event) => filterOpen.value = true)
2365
+ }, [..._hoisted_30])
2366
+ ],
2367
+ 2
2368
+ /* CLASS */
2369
+ ),
2370
+ createElementVNode("div", _hoisted_31, [
2371
+ createVNode(_component_scroll_view, {
2372
+ class: "operation-scroll",
2373
+ "scroll-y": true,
2374
+ onScroll,
2375
+ "lower-threshold": 50,
2376
+ onScrolltolower: onReachBottom
2377
+ }, {
2378
+ default: withCtx(() => [
2379
+ consumptionGroups.value.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_32, [
2380
+ (openBlock(true), createElementBlock(
2381
+ Fragment,
2382
+ null,
2383
+ renderList(consumptionGroups.value, (item, index) => {
2384
+ return openBlock(), createElementBlock("div", {
2385
+ class: "box-detail",
2386
+ key: index
2387
+ }, [
2388
+ createElementVNode(
2389
+ "div",
2390
+ _hoisted_33,
2391
+ toDisplayString(item.date),
2392
+ 1
2393
+ /* TEXT */
2394
+ ),
2395
+ (openBlock(true), createElementBlock(
2396
+ Fragment,
2397
+ null,
2398
+ renderList(item.consumptions, (it, i) => {
2399
+ return openBlock(), createElementBlock("div", {
2400
+ class: "item",
2401
+ key: i
2402
+ }, [
2403
+ createElementVNode(
2404
+ "div",
2405
+ _hoisted_34,
2406
+ toDisplayString(it.\u4EA4\u6613\u7C7B\u578B),
2407
+ 1
2408
+ /* TEXT */
2409
+ ),
2410
+ createElementVNode("div", _hoisted_35, [
2411
+ createElementVNode("div", _hoisted_36, [
2412
+ createElementVNode("div", null, [
2413
+ createElementVNode(
2414
+ "div",
2415
+ _hoisted_37,
2416
+ toDisplayString(it.\u8D26\u6237\u7C7B\u578B),
2417
+ 1
2418
+ /* TEXT */
2419
+ ),
2420
+ createElementVNode(
2421
+ "div",
2422
+ _hoisted_38,
2423
+ toDisplayString(it.title),
2424
+ 1
2425
+ /* TEXT */
2426
+ )
2427
+ ]),
2428
+ createElementVNode(
2429
+ "div",
2430
+ _hoisted_39,
2431
+ toDisplayString(it.\u6536\u5165\u8FD8\u662F\u652F\u51FA == "\u652F\u51FA" ? "-" : "+") + toDisplayString(it.amount),
2432
+ 1
2433
+ /* TEXT */
2434
+ )
2435
+ ]),
2436
+ createElementVNode(
2437
+ "div",
2438
+ _hoisted_40,
2439
+ toDisplayString(it.description),
2440
+ 1
2441
+ /* TEXT */
2442
+ )
2443
+ ])
2444
+ ]);
2445
+ }),
2446
+ 128
2447
+ /* KEYED_FRAGMENT */
2448
+ ))
2449
+ ]);
2450
+ }),
2451
+ 128
2452
+ /* KEYED_FRAGMENT */
2453
+ )),
2454
+ reachedLastPage.value ? (openBlock(), createElementBlock("div", _hoisted_41, "\u6CA1\u6709\u66F4\u591A\u4E86")) : createCommentVNode("v-if", true)
2455
+ ])) : (openBlock(), createBlock(script$8, { key: 1 }))
2456
+ ]),
2457
+ _: 1
2458
+ /* STABLE */
2459
+ })
2460
+ ])
2461
+ ])
1942
2462
  ]),
1943
2463
  _: 1
1944
2464
  /* STABLE */
@@ -2784,7 +3304,8 @@ const nutComponents = [
2784
3304
  Form,
2785
3305
  FormItem,
2786
3306
  Cell,
2787
- CellGroup
3307
+ CellGroup,
3308
+ Dialog
2788
3309
  ];
2789
3310
  const appComponents = {
2790
3311
  ...components
@@ -2828,4 +3349,4 @@ const AppKit = {
2828
3349
  }
2829
3350
  };
2830
3351
 
2831
- export { script$6 as AccountView, script$i as AmountPicker, script$f as AppDrawer, script$c as BalanceCard, script$5 as BalanceReminder, script$g as PageHeader, script$d as RechargeResult, script$e as RechargeView, script as SelfRegistration, script$h as UserAgreement, components, createHttp, AppKit as default, requestPayment$2 as requestPayment, services$1 as services, useAppKit, useSafeArea, useTabbar };
3352
+ export { script$6 as AccountView, script$k as AmountPicker, script$h as AppDrawer, script$c as BalanceCard, script$5 as BalanceReminder, script$i as PageHeader, script$f as RechargeResult, script$g as RechargeView, script as SelfRegistration, script$d as TradeView, script$j as UserAgreement, components, createHttp, AppKit as default, requestPayment$2 as requestPayment, services$1 as services, useAppKit, useSafeArea, useTabbar };