jufubao-base 1.0.236 → 1.0.237-beta10

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 (126) hide show
  1. package/package.json +1 -1
  2. package/src/components/JfbBaseBalance/Api.js +46 -0
  3. package/src/components/JfbBaseBalance/Attr.js +316 -0
  4. package/src/components/JfbBaseBalance/JfbBaseBalance.vue +334 -0
  5. package/src/components/JfbBaseBalance/JfbBaseBalanceLess.less +79 -0
  6. package/src/components/JfbBaseBalance/JfbBaseBalanceMixin.js +30 -0
  7. package/src/components/JfbBaseBalance/Mock.js +9 -0
  8. package/src/components/JfbBaseCodeOpenVip/Api.js +35 -0
  9. package/src/components/JfbBaseCodeOpenVip/Attr.js +281 -0
  10. package/src/components/JfbBaseCodeOpenVip/JfbBaseCodeOpenVip.vue +251 -0
  11. package/src/components/JfbBaseCodeOpenVip/JfbBaseCodeOpenVipLess.less +79 -0
  12. package/src/components/JfbBaseCodeOpenVip/JfbBaseCodeOpenVipMixin.js +30 -0
  13. package/src/components/JfbBaseCodeOpenVip/Mock.js +13 -0
  14. package/src/components/JfbBaseConsumpCode/Api.js +133 -0
  15. package/src/components/JfbBaseConsumpCode/Attr.js +61 -0
  16. package/src/components/JfbBaseConsumpCode/JfbBaseConsumpCode.vue +973 -0
  17. package/src/components/JfbBaseConsumpCode/JfbBaseConsumpCodeLess.less +79 -0
  18. package/src/components/JfbBaseConsumpCode/JfbBaseConsumpCodeMixin.js +30 -0
  19. package/src/components/JfbBaseConsumpCode/Mock.js +22 -0
  20. package/src/components/JfbBaseFastLink/Attr.js +12 -1
  21. package/src/components/JfbBaseFastLink/JfbBaseFastLink.vue +66 -0
  22. package/src/components/JfbBaseHeader/Attr.js +82 -0
  23. package/src/components/JfbBaseHeader/JfbBaseHeader.vue +47 -1
  24. package/src/components/JfbBaseHeaderColumn/Attr.js +82 -0
  25. package/src/components/JfbBaseHeaderColumn/JfbBaseHeaderColumn.vue +48 -2
  26. package/src/components/JfbBaseLogin/JfbBaseLogin.vue +11 -0
  27. package/src/components/JfbBaseNoticeDialog/Api.js +1 -1
  28. package/src/components/JfbBaseNoticeDialog/Attr.js +26 -0
  29. package/src/components/JfbBaseNoticeDialog/JfbBaseNoticeDialog.vue +27 -8
  30. package/src/components/JfbBaseNoticeGroup/Api.js +58 -0
  31. package/src/components/JfbBaseNoticeGroup/Attr.js +48 -0
  32. package/src/components/JfbBaseNoticeGroup/JfbBaseNoticeGroup.vue +111 -0
  33. package/src/components/JfbBaseNoticeGroup/JfbBaseNoticeGroupLess.less +79 -0
  34. package/src/components/JfbBaseNoticeGroup/JfbBaseNoticeGroupMixin.js +30 -0
  35. package/src/components/JfbBaseNoticeGroup/Mock.js +13 -0
  36. package/src/components/JfbBaseOpenVip/Api.js +39 -0
  37. package/src/components/JfbBaseOpenVip/Attr.js +331 -0
  38. package/src/components/JfbBaseOpenVip/JfbBaseOpenVip.vue +457 -0
  39. package/src/components/JfbBaseOpenVip/JfbBaseOpenVipLess.less +79 -0
  40. package/src/components/JfbBaseOpenVip/JfbBaseOpenVipMixin.js +30 -0
  41. package/src/components/JfbBaseOpenVip/Mock.js +7 -0
  42. package/src/components/JfbBaseOpenVip/XdVipList.vue +131 -0
  43. package/src/components/JfbBaseOpenVipCard/Api.js +58 -0
  44. package/src/components/JfbBaseOpenVipCard/Attr.js +48 -0
  45. package/src/components/JfbBaseOpenVipCard/JfbBaseOpenVipCard.vue +111 -0
  46. package/src/components/JfbBaseOpenVipCard/JfbBaseOpenVipCardLess.less +79 -0
  47. package/src/components/JfbBaseOpenVipCard/JfbBaseOpenVipCardMixin.js +30 -0
  48. package/src/components/JfbBaseOpenVipCard/Mock.js +13 -0
  49. package/src/components/JfbBaseOpenVipDetail/Api.js +35 -0
  50. package/src/components/JfbBaseOpenVipDetail/Attr.js +37 -0
  51. package/src/components/JfbBaseOpenVipDetail/JfbBaseOpenVipDetail.vue +234 -0
  52. package/src/components/JfbBaseOpenVipDetail/JfbBaseOpenVipDetailLess.less +79 -0
  53. package/src/components/JfbBaseOpenVipDetail/JfbBaseOpenVipDetailMixin.js +30 -0
  54. package/src/components/JfbBaseOpenVipDetail/Mock.js +15 -0
  55. package/src/components/JfbBasePay/Attr.js +52 -0
  56. package/src/components/JfbBasePay/JfbBasePay.vue +14 -4
  57. package/src/components/JfbBasePay/Mock.js +0 -9
  58. package/src/components/JfbBasePersonalData/Api.js +26 -0
  59. package/src/components/JfbBasePersonalData/Attr.js +36 -0
  60. package/src/components/JfbBasePersonalData/JfbBasePersonalData.vue +198 -0
  61. package/src/components/JfbBasePersonalData/JfbBasePersonalDataLess.less +79 -0
  62. package/src/components/JfbBasePersonalData/JfbBasePersonalDataMixin.js +30 -0
  63. package/src/components/JfbBasePersonalData/Mock.js +13 -0
  64. package/src/components/JfbBasePhoneLogin/JfbBasePhoneLogin.vue +9 -0
  65. package/src/components/JfbBasePointsCard/Api.js +18 -0
  66. package/src/components/JfbBasePointsCard/Attr.js +187 -0
  67. package/src/components/JfbBasePointsCard/JfbBasePointsCard.vue +212 -0
  68. package/src/components/JfbBasePointsCard/JfbBasePointsCardLess.less +79 -0
  69. package/src/components/JfbBasePointsCard/JfbBasePointsCardMixin.js +30 -0
  70. package/src/components/JfbBasePointsCard/Mock.js +5 -0
  71. package/src/components/JfbBasePointsDetail/Api.js +48 -0
  72. package/src/components/JfbBasePointsDetail/Attr.js +304 -0
  73. package/src/components/JfbBasePointsDetail/JfbBasePointsDetail.vue +267 -0
  74. package/src/components/JfbBasePointsDetail/JfbBasePointsDetailLess.less +79 -0
  75. package/src/components/JfbBasePointsDetail/JfbBasePointsDetailMixin.js +30 -0
  76. package/src/components/JfbBasePointsDetail/Mock.js +6 -0
  77. package/src/components/JfbBasePoster/Attr.js +1 -1
  78. package/src/components/JfbBasePosterBigSmall/JfbBasePosterBigSmall.vue +2 -2
  79. package/src/components/JfbBasePosterGroup/Api.js +22 -0
  80. package/src/components/JfbBasePosterGroup/Attr.js +156 -0
  81. package/src/components/JfbBasePosterGroup/JfbBasePosterGroup.vue +268 -0
  82. package/src/components/JfbBasePosterGroup/JfbBasePosterGroupLess.less +79 -0
  83. package/src/components/JfbBasePosterGroup/JfbBasePosterGroupMixin.js +30 -0
  84. package/src/components/JfbBasePosterGroup/Mock.js +13 -0
  85. package/src/components/JfbBaseSavingDetail/Api.js +41 -0
  86. package/src/components/JfbBaseSavingDetail/Attr.js +70 -0
  87. package/src/components/JfbBaseSavingDetail/JfbBaseSavingDetail.vue +702 -0
  88. package/src/components/JfbBaseSavingDetail/JfbBaseSavingDetailLess.less +79 -0
  89. package/src/components/JfbBaseSavingDetail/JfbBaseSavingDetailMixin.js +30 -0
  90. package/src/components/JfbBaseSavingDetail/Mock.js +10 -0
  91. package/src/components/JfbBaseSavingDetail/components/echarts.min.js +26 -0
  92. package/src/components/JfbBaseSavingDetail/components/echarts.vue +254 -0
  93. package/src/components/JfbBaseSavingDetail/components/wx-canvas.js +105 -0
  94. package/src/components/JfbBaseShare/Api.js +20 -0
  95. package/src/components/JfbBaseShare/Attr.js +14 -0
  96. package/src/components/JfbBaseShare/JfbBaseShare.vue +272 -0
  97. package/src/components/JfbBaseShare/JfbBaseShareLess.less +79 -0
  98. package/src/components/JfbBaseShare/JfbBaseShareMixin.js +30 -0
  99. package/src/components/JfbBaseShare/Mock.js +16 -0
  100. package/src/components/JfbBaseTfkSearch/ContentProduct.vue +12 -22
  101. package/src/components/JfbBaseTfkSearch/JfbBaseTfkSearch.vue +12 -1
  102. package/src/components/JfbBaseTfkSearch/Mock.js +51 -3
  103. package/src/components/JfbBaseTfkSearch/listMixins.js +2 -1
  104. package/src/components/JfbBaseUserInfo/Attr.js +175 -11
  105. package/src/components/JfbBaseUserInfo/JfbBaseUserInfo.vue +337 -115
  106. package/src/components/JfbBaseUserOrder/Attr.js +16 -0
  107. package/src/components/JfbBaseUserOrder/JfbBaseUserOrder.vue +11 -2
  108. package/src/components/JfbBaseWithDrawAgain/Api.js +41 -0
  109. package/src/components/JfbBaseWithDrawAgain/Attr.js +92 -0
  110. package/src/components/JfbBaseWithDrawAgain/JfbBaseWithDrawAgain.vue +334 -0
  111. package/src/components/JfbBaseWithDrawAgain/JfbBaseWithDrawAgainLess.less +79 -0
  112. package/src/components/JfbBaseWithDrawAgain/JfbBaseWithDrawAgainMixin.js +30 -0
  113. package/src/components/JfbBaseWithDrawAgain/Mock.js +10 -0
  114. package/src/components/JfbBaseWithDrawRecord/Api.js +19 -0
  115. package/src/components/JfbBaseWithDrawRecord/Attr.js +79 -0
  116. package/src/components/JfbBaseWithDrawRecord/JfbBaseWithDrawRecord.vue +233 -0
  117. package/src/components/JfbBaseWithDrawRecord/JfbBaseWithDrawRecordLess.less +79 -0
  118. package/src/components/JfbBaseWithDrawRecord/JfbBaseWithDrawRecordMixin.js +30 -0
  119. package/src/components/JfbBaseWithDrawRecord/Mock.js +7 -0
  120. package/src/components/JfbBaseWithdraw/Api.js +48 -0
  121. package/src/components/JfbBaseWithdraw/Attr.js +328 -0
  122. package/src/components/JfbBaseWithdraw/JfbBaseWithdraw.vue +261 -0
  123. package/src/components/JfbBaseWithdraw/JfbBaseWithdrawLess.less +79 -0
  124. package/src/components/JfbBaseWithdraw/JfbBaseWithdrawMixin.js +30 -0
  125. package/src/components/JfbBaseWithdraw/Mock.js +7 -0
  126. package/src/components/JfbBaseWxAuthorize/JfbBaseWxAuthorize.vue +10 -0
@@ -0,0 +1,79 @@
1
+ /**
2
+ * @desc 获取绝对路径完整地址
3
+ * @param @path
4
+ **/
5
+ //例如:https://image.jufubao.cn/20220501010108/image/bg/default_gonghui_bg.png
6
+ @basePath: 'business/';
7
+ @doMain: '//sandbox-img.jufubao.cn/';
8
+
9
+ .getBusinessImageUrl(@path, @size: 'size8') {
10
+ @url: "@{doMain}@{basePath}@{path}?x-oss-process=style/@{size}";
11
+ background-image: url(@url);
12
+ }
13
+
14
+ //start
15
+ .jfb-base-open-vip-detail {
16
+ box-sizing: border-box;
17
+
18
+ &__body{
19
+ position: relative;
20
+ overflow: hidden;
21
+ z-index: 2
22
+ }
23
+
24
+ &.editx,&.editx:hover {
25
+ position: relative;
26
+ min-height: unit(100, rpx);
27
+ z-index: 3;
28
+ &::after {
29
+ border: 2rpx dashed blue;
30
+ content: " ";
31
+ position: absolute;
32
+ top:0;
33
+ left:0;
34
+ bottom:0;
35
+ right:0;
36
+ z-index: 4;
37
+ cursor: pointer;
38
+ }
39
+
40
+ }
41
+
42
+
43
+ &__edit {
44
+ cursor: pointer;
45
+ position: absolute;
46
+ right: unit(0, rpx);
47
+ top: unit(-52, rpx);
48
+ height: unit(50, rpx);
49
+ line-height: unit(50, rpx);
50
+ display: flex;
51
+ justify-content: center;
52
+ align-items: center;
53
+ background: rgba(0, 0, 0, .6);
54
+ border-radius: unit(10, rpx);
55
+ box-shadow: 0 0 10px rbga(0, 0, 0, 0.3);
56
+ color: #fff;
57
+ font-size: unit(22, rpx);
58
+
59
+ &-icon{
60
+ padding: 0 unit(20, rpx);
61
+ }
62
+
63
+ &.editx {
64
+ box-sizing: border-box;
65
+
66
+ }
67
+ }
68
+ }
69
+ //end
70
+
71
+
72
+ /**notPreview**/
73
+ .jfb-base-open-vip-detail {
74
+ //&:before {
75
+ //content: " ";
76
+ //display: table;
77
+ //}
78
+ }
79
+ /**endNotPreview**/
@@ -0,0 +1,30 @@
1
+ 'use strict';
2
+
3
+
4
+ //@AttrImport
5
+ import Attr from "./Attr";
6
+ //@EndAttrImport
7
+
8
+
9
+ export default {
10
+ data() {
11
+ return {
12
+ //#ifdef H5
13
+
14
+ //@AttrData
15
+ Attr:{}, //对外开发编辑属性
16
+ //@EndAttrData
17
+
18
+ // #endif
19
+ cssRoot: 'jfb-base-open-vip-detail'
20
+ }
21
+ },
22
+ created() {
23
+
24
+ //@AttrDataCreated
25
+ this.Attr = this.$xdUniHelper.customClone(Attr);
26
+ //@EndAttrDataCreated
27
+
28
+
29
+ },
30
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ module.exports = {
4
+ getVipConfirm: {
5
+ vip_card_id: 1,
6
+ product_id: 60038515,
7
+ product_name: "年卡会员",
8
+ sale_price: 20000,
9
+ platform_discount_amount: 120,
10
+ user_pay_amount: 20000,
11
+ life_cycle_label: "1年",
12
+ request_id: "cc61b6e3a8e0931f"
13
+ },
14
+ createVipOrder: {}
15
+ };
@@ -8,6 +8,58 @@ export default {
8
8
  advanced: [],
9
9
  content: data=>{
10
10
  return [
11
+ {
12
+ label: "【仍需扣点】文案:",
13
+ ele: "el-input",
14
+ valueKey: "text1",
15
+ value: data.text1 || "仍需扣点",
16
+ groupKey: "content",
17
+ inline: false,
18
+ className: "input80",
19
+ },
20
+ {
21
+ label: "【(可使用多张票券点数)】是否展示",
22
+ ele: 'xd-radio',
23
+ valueKey: "showText2",
24
+ value: data.showText2 || 'Y',
25
+ groupKey: "content",
26
+ inline: true,
27
+ list: [
28
+ { label: "展示", value: "Y" },
29
+ { label: "不展示", value: "N" },
30
+ ],
31
+ },
32
+ data.showText2 === 'Y' && {
33
+ label: "【(可使用多张票券点数)】文案:",
34
+ ele: "el-input",
35
+ valueKey: "text2",
36
+ value: data.text2 || '(可使用多张票券点数)',
37
+ placeholder: '(可使用多张票券点数)',
38
+ groupKey: "content",
39
+ inline: false,
40
+ className: "input80",
41
+ },
42
+ {
43
+ label: "【选择以下补差方式】文案:",
44
+ ele: "el-input",
45
+ valueKey: "text3",
46
+ value: data.text3 || '选择以下补差方式',
47
+ groupKey: "content",
48
+ inline: false,
49
+ className: "input80",
50
+ },
51
+ {
52
+ label: "是否展示继续补差",
53
+ ele: "xd-radio",
54
+ valueKey: "showContinuePay",
55
+ value: data.showContinuePay || 'Y',
56
+ groupKey: "content",
57
+ inline: true,
58
+ list: [
59
+ { label: "展示", value: "Y" },
60
+ { label: "不展示", value: "N" },
61
+ ],
62
+ },
11
63
  ...styleForm.getForm(data),
12
64
  {
13
65
  label: '支付成功跳转路径:', //label
@@ -100,7 +100,7 @@
100
100
  <view class="remain_pay" v-if="payInfo.channel_amount > 0">
101
101
  <view style="border-bottom: 2rpx solid #eee;" class="column-group">
102
102
  <view class="column-item" style="padding: 30rpx 60rpx">
103
- <view class="column_label">仍需扣点<text class="label_sub">(可使用多张票券点数)</text></view>
103
+ <view class="column_label">{{text1}}<text v-if="showText2==='Y'" class="label_sub">{{ text2 }}</text></view>
104
104
  <view class="column_value text-primary">
105
105
  <xd-unit
106
106
  :price="payInfo.channel_amount"
@@ -112,8 +112,8 @@
112
112
  </view>
113
113
  </view>
114
114
  <view class="remain_header">
115
- <view>选择以下补差方式</view>
116
- <view class="flex align-center text-primary">
115
+ <view>{{ text3 }}</view>
116
+ <view v-if="showContinuePay==='Y'" class="flex align-center text-primary">
117
117
  <view class="margin-right">继续补差</view>
118
118
  <xd-unit
119
119
  :price="payInfo.channel_amount"
@@ -212,7 +212,12 @@ export default {
212
212
  rechargeSuccessPath: "", //充值成功
213
213
  ...styleForm.getDataItem(),
214
214
  borderColor:'rgba(0,0,0,0)',
215
- options:{}
215
+ options:{},
216
+ text1: "",
217
+ text2: "",
218
+ text3: "",
219
+ showText2: "Y",
220
+ showContinuePay: "",
216
221
  };
217
222
  },
218
223
  watch: {
@@ -262,6 +267,11 @@ export default {
262
267
  * @param container {object} 业务组件对象自己
263
268
  */
264
269
  init(container) {
270
+ this.text1 = getContainerPropsValue(container, 'content.text1', "仍需扣点");
271
+ this.text2 = getContainerPropsValue(container, 'content.text2', "(可使用多张票券点数)");
272
+ this.text3 = getContainerPropsValue(container, 'content.text3', "选择以下补差方式");
273
+ this.showText2 = getContainerPropsValue(container, 'content.showText2', "Y");
274
+ this.showContinuePay = getContainerPropsValue(container, 'content.showContinuePay', 'Y');
265
275
  this.paySuccessPath = getContainerPropsValue(
266
276
  container,
267
277
  "content.pay_success_path",
@@ -24,15 +24,6 @@ module.exports = {
24
24
  "card_use_price": 10000,
25
25
  "use_card_point": "5000"
26
26
  },
27
- {
28
- "card_number": "101001000005195",
29
- "card_type_name": "聚福宝福卡测试蛋糕",
30
- "end_time": 1679034403,
31
- "card_point": 5000,
32
- "is_bind_card": true,
33
- "card_use_price": 10000,
34
- "use_card_point": "5000"
35
- },
36
27
  ],
37
28
  },
38
29
  getBaseOrderStatus:{},
@@ -0,0 +1,26 @@
1
+ 'use strict';
2
+ /**
3
+ * @description 接口配置,
4
+ * 在设置方法名字当时候,别忘记加上【模块名字】:Personal
5
+ * @type {*[]}
6
+ */
7
+ module.exports = [
8
+ {
9
+ mapFnName: 'getBasePersonInfo',
10
+ title: '获取用户信息',
11
+ path: '/passport/v1/user/get',
12
+ params: {},
13
+ isRule: false,
14
+ isConsole: true,
15
+ disabled: true,
16
+ },
17
+ {
18
+ mapFnName: 'setBasePersonInfo',
19
+ title: '获取用户信息',
20
+ path: '/passport/v1/user/update-user-info',
21
+ data: {},
22
+ isRule: false,
23
+ isConsole: true,
24
+ disabled: true,
25
+ }
26
+ ];
@@ -0,0 +1,36 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * @description 当表单组件中有联动操作时候,使用方法进行返回
5
+ */
6
+ export default {
7
+ style: [],
8
+ content: (data) => {
9
+ return [
10
+ 0&&{
11
+ label: '公告组:',
12
+ ele: 'xd-site-news-group',
13
+ valueKey: 'contentGroup',
14
+ groupKey: 'content',
15
+ value: data.contentGroup || {},
16
+ isKey: true,
17
+ key: new Date().getTime(),
18
+ setting: {
19
+ config: {
20
+ sort: true,
21
+ maxlen: 100,
22
+ action: 'aliyun',
23
+ size: 5,
24
+ tipsformet: '上传文件格式:@imageType@,不超过@size@MB.',
25
+ uploadType: 'aliyun',
26
+ type: ['jpg', 'png', 'jpeg']
27
+ },
28
+ },
29
+ rules: [
30
+ { required: true, message: '请选择广告位', trigger: 'change' },
31
+ ],
32
+ },
33
+ ].filter(i=>i)
34
+ },
35
+ advanced: [],
36
+ };
@@ -0,0 +1,198 @@
1
+ <template>
2
+ <view class="jfb-base-personal-data" @click="handleEditxSelect" :class="{ editx : isEditx && active }">
3
+ <!--#ifdef H5-->
4
+ <view class="jfb-base-personal-data__edit" :class="{ editx : isEditx && active }" v-if="isEditx && active">
5
+ <view class="jfb-base-personal-data__edit-icon" @click="delEdit">删除</view>
6
+ </view>
7
+ <!-- #endif -->
8
+ <view class="jfb-base-personal-data__body" v-if="info">
9
+ <view class="jfb-base-personal-data__body-item">
10
+ <view class="jfb-base-personal-data__body-item-label">头像</view>
11
+ <image class="profile" :src="info.head_url"  ></image>
12
+ </view>
13
+ <view class="jfb-base-personal-data__body-item">
14
+ <view class="jfb-base-personal-data__body-item-label">账号</view>
15
+ <view class="jfb-base-personal-data__body-item-value">{{info.phone_number}}</view>
16
+ </view>
17
+ <view class="jfb-base-personal-data__body-item">
18
+ <view class="jfb-base-personal-data__body-item-label">名称</view>
19
+ <input @blur="handleSetInfo" @confirm="handleSetInfo" class="jfb-base-personal-data__body-item-value"
20
+ v-model="info.nickname" type="text">
21
+ </view>
22
+ <view class="jfb-base-personal-data__body-item">
23
+ <view class="jfb-base-personal-data__body-item-label">性别</view>
24
+ <XdSelect @change="handleSetSex" padding="0" color="#999" class="select" :defaultValue="info.sex"
25
+ v-model="info.sex" :list="sexList">
26
+ <template>
27
+ <view class="jfb-base-personal-data__body-item-value">
28
+ <XdFontIcon class="icon" color="#999999" size="24" icon="iconxiangyou_xian"></XdFontIcon>
29
+ </view>
30
+ </template>
31
+
32
+ </XdSelect>
33
+ </view>
34
+ <view class="jfb-base-personal-data__body-item">
35
+ <view class="jfb-base-personal-data__body-item-label">生日</view>
36
+ <view style="display: flex;align-items: center" @click="showDate=true">
37
+ <view class="jfb-base-personal-data__body-item-value">{{info.birthday_date}}</view>
38
+ <XdFontIcon class="icon" color="#999999" size="24" icon="iconxiangyou_xian"></XdFontIcon>
39
+ </view>
40
+ </view>
41
+ <XdDate ref="calendar" :selectType="false" :main-color="mainColor" :current-is-show-other-month="false"
42
+ :show.sync="showDate" :clear-date="true" :insert="false" :lunar="false" :selected-circle="false"
43
+ :date="info.birthday_date" @confirm="confirmDate" @close="closeDate"></XdDate>
44
+ </view>
45
+ </view>
46
+ </template>
47
+
48
+ <script>
49
+ import XdFontIcon from "@/components/XdFontIcon/XdFontIcon";
50
+ import XdDate from '@/components/XdDate/XdDate.vue'
51
+ import XdSelect from "@/components/XdSelect/XdSelect";
52
+ import { jfbRootExec } from "@/utils/xd.event";
53
+ import JfbBasePersonalDataMixin from "./JfbBasePersonalDataMixin";
54
+ import { getContainerPropsValue } from "@/utils/xd.base";
55
+ import componentsMixins from "@/mixins/componentsMixins";
56
+ import extsMixins from "@/mixins/extsMixins";
57
+ export default {
58
+ name: "JfbBasePersonalData",
59
+ components: {
60
+ XdFontIcon,
61
+ XdSelect,
62
+ XdDate
63
+ },
64
+ mixins: [
65
+ componentsMixins, extsMixins, JfbBasePersonalDataMixin
66
+ ],
67
+ data() {
68
+ return {
69
+ info: {},
70
+ single: '',
71
+ showDate: false,
72
+ sexList: [
73
+ {
74
+ label: '男',
75
+ value: '1'
76
+ },
77
+ {
78
+ label: '女',
79
+ value: '2'
80
+ }
81
+ ],
82
+ }
83
+ },
84
+ watch: {
85
+ container(value, oldValue) {
86
+ if (JSON.stringify(value) === JSON.stringify(oldValue)) return;
87
+ if (this.$configProject['isPreview']) this.init(value)
88
+ },
89
+ },
90
+ created() {
91
+ this.init(this.container);
92
+ },
93
+ methods: {
94
+ onJfbLoad(options) {
95
+ this.getInfo()
96
+ },
97
+ /**
98
+ * @description 监听事件变化
99
+ * @param container {object} 业务组件对象自己
100
+ */
101
+ init(container) {
102
+ },
103
+ getInfo() {
104
+ jfbRootExec("getBasePersonInfo", {
105
+ vm: this,
106
+ data: {},
107
+ }).then(res => {
108
+ this.info = res
109
+ })
110
+ },
111
+ confirmDate(e) {
112
+ console.log(e, 'confirmDate');
113
+ this.info.birthday_date = e.fulldate
114
+ this.handleSetInfo()
115
+ },
116
+ closeDate() {
117
+
118
+ },
119
+ handleSetSex(data) {
120
+ this.info.sex = data.item.value
121
+ this.handleSetInfo()
122
+ },
123
+ handleSetInfo() {
124
+ jfbRootExec("setBasePersonInfo", {
125
+ vm: this,
126
+ data: {
127
+ nickname: this.info.nickname,
128
+ sex: this.info.sex,
129
+ birthday_date: this.info.birthday_date
130
+ },
131
+ }).then(res => {
132
+ this.getInfo()
133
+ })
134
+ },
135
+ onJfbScroll(options) {
136
+ console.log('event.onJfbScroll', options)
137
+ },
138
+ onJfbReachBottom(options) {
139
+ console.log('event.onJfbReachBottom', options)
140
+ },
141
+ onJfbShow(options) {
142
+ console.log('event.onJfbShow', options)
143
+ },
144
+ onJfbHide(options) {
145
+ console.log('event.onJfbHide', options)
146
+ },
147
+ onJfbBack(options) {
148
+ console.log('event.onJfbBack', options)
149
+ },
150
+ onJfbUpdate(...data) {
151
+ console.log('event.onJfbUpdate', data)
152
+ },
153
+ onJfbCustomEvent(options) {
154
+ console.log('event.onJfbReachBottom', options)
155
+ },
156
+ }
157
+ }
158
+
159
+ </script>
160
+
161
+ <style scoped lang="less">
162
+ @import "./JfbBasePersonalDataLess.less";
163
+
164
+ .jfb-base-personal-data {
165
+ &__body {
166
+ .icon {
167
+ margin-left: 8rpx;
168
+ }
169
+
170
+ &-item {
171
+ display: flex;
172
+ align-items: center;
173
+ justify-content: space-between;
174
+ border-radius: 20rpx;
175
+ background: #FFFFFF;
176
+ padding: 32rpx 46rpx;
177
+ margin: 20rpx;
178
+
179
+ &-label {
180
+ color: #333;
181
+ font-size: 28rpx;
182
+ }
183
+
184
+ &-value {
185
+ color: #999999;
186
+ font-size: 28rpx;
187
+ text-align: right;
188
+ }
189
+
190
+ .profile {
191
+ width: 80rpx;
192
+ height: 80rpx;
193
+ border-radius: 50%;
194
+ }
195
+ }
196
+ }
197
+ }
198
+ </style>
@@ -0,0 +1,79 @@
1
+ /**
2
+ * @desc 获取绝对路径完整地址
3
+ * @param @path
4
+ **/
5
+ //例如:https://image.jufubao.cn/20220501010108/image/bg/default_gonghui_bg.png
6
+ @basePath: 'business/';
7
+ @doMain: '//sandbox-img.jufubao.cn/';
8
+
9
+ .getBusinessImageUrl(@path, @size: 'size8') {
10
+ @url: "@{doMain}@{basePath}@{path}?x-oss-process=style/@{size}";
11
+ background-image: url(@url);
12
+ }
13
+
14
+ //start
15
+ .jfb-base-personal-data {
16
+ box-sizing: border-box;
17
+
18
+ &__body{
19
+ position: relative;
20
+ overflow: hidden;
21
+ z-index: 2
22
+ }
23
+
24
+ &.editx,&.editx:hover {
25
+ position: relative;
26
+ min-height: unit(100, rpx);
27
+ z-index: 3;
28
+ &::after {
29
+ border: 2rpx dashed blue;
30
+ content: " ";
31
+ position: absolute;
32
+ top:0;
33
+ left:0;
34
+ bottom:0;
35
+ right:0;
36
+ z-index: 4;
37
+ cursor: pointer;
38
+ }
39
+
40
+ }
41
+
42
+
43
+ &__edit {
44
+ cursor: pointer;
45
+ position: absolute;
46
+ right: unit(0, rpx);
47
+ top: unit(-52, rpx);
48
+ height: unit(50, rpx);
49
+ line-height: unit(50, rpx);
50
+ display: flex;
51
+ justify-content: center;
52
+ align-items: center;
53
+ background: rgba(0, 0, 0, .6);
54
+ border-radius: unit(10, rpx);
55
+ box-shadow: 0 0 10px rbga(0, 0, 0, 0.3);
56
+ color: #fff;
57
+ font-size: unit(22, rpx);
58
+
59
+ &-icon{
60
+ padding: 0 unit(20, rpx);
61
+ }
62
+
63
+ &.editx {
64
+ box-sizing: border-box;
65
+
66
+ }
67
+ }
68
+ }
69
+ //end
70
+
71
+
72
+ /**notPreview**/
73
+ .jfb-base-personal-data {
74
+ //&:before {
75
+ //content: " ";
76
+ //display: table;
77
+ //}
78
+ }
79
+ /**endNotPreview**/
@@ -0,0 +1,30 @@
1
+ 'use strict';
2
+
3
+
4
+ //@AttrImport
5
+ import Attr from "./Attr";
6
+ //@EndAttrImport
7
+
8
+
9
+ export default {
10
+ data() {
11
+ return {
12
+ //#ifdef H5
13
+
14
+ //@AttrData
15
+ Attr:{}, //对外开发编辑属性
16
+ //@EndAttrData
17
+
18
+ // #endif
19
+ cssRoot: 'jfb-base-personal-data'
20
+ }
21
+ },
22
+ created() {
23
+
24
+ //@AttrDataCreated
25
+ this.Attr = this.$xdUniHelper.customClone(Attr);
26
+ //@EndAttrDataCreated
27
+
28
+
29
+ },
30
+ }
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ module.exports = {
4
+
5
+ getPersonalByIdFilmSquate:{},
6
+
7
+ updatePersonalFilmPaiqiDate:{},
8
+
9
+ removePersonalFilmAddress:{},
10
+
11
+ addPersonalFilmcart:{},
12
+
13
+ }
@@ -207,6 +207,7 @@ export default {
207
207
  callback_url: "",
208
208
  isCollectUsername: false,
209
209
  showDialog: false,
210
+ share_code: "",
210
211
 
211
212
  inputStyle: "linear", //输入框样式 linear:线性 face: 面性
212
213
  formBorderColor: "#F9F9F9", //
@@ -367,6 +368,13 @@ export default {
367
368
  this.auth_code = options.auth_code;
368
369
  this.provider_id = options.provider_id;
369
370
  this.callback_url = options.callback_url;
371
+ if(options['x-common']){
372
+ let decodeParams = Base64.decode(options['x-common']);
373
+ try{
374
+ let commonParams = JSON.parse(decodeParams);
375
+ this.share_code = commonParams.share_code;
376
+ }catch(e){}
377
+ }
370
378
  },
371
379
  /**
372
380
  * @description 监听事件变化
@@ -562,6 +570,7 @@ export default {
562
570
  auth_code,
563
571
  provider_id,
564
572
  phone_number,
573
+ share_code,
565
574
  }
566
575
  }).then(res => {
567
576
  this.$xdHideLoading();
@@ -0,0 +1,18 @@
1
+ 'use strict';
2
+ /**
3
+ * @description 接口配置,
4
+ * 在设置方法名字当时候,别忘记加上【模块名字】:Points
5
+ * @type {*[]}
6
+ */
7
+ module.exports = [
8
+ {
9
+ //设置方法名字当别忘记加上【模块名字】:Points
10
+ mapFnName: 'getPointsPropertyList',
11
+ title: '用户资产 - 列表',
12
+ path: '/pay/v1/property/list',
13
+ isRule: false,
14
+ params: {},
15
+ isConsole: true,
16
+ disabled: true,
17
+ },
18
+ ];