jufubao-base 1.0.169-beta2 → 1.0.169-beta20

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 (42) hide show
  1. package/package.json +1 -1
  2. package/src/components/JfbBaseHeader/JfbBaseHeader.vue +2 -2
  3. package/src/components/JfbBaseLogin/Attr.js +54 -16
  4. package/src/components/JfbBaseLogin/JfbBaseLogin.vue +3 -1
  5. package/src/components/JfbBaseMapSearch/MapSearchMp.vue +1 -1
  6. package/src/components/JfbBaseNotice/JfbBaseNotice.vue +2 -2
  7. package/src/components/JfbBaseOrderDetail/Api.js +12 -7
  8. package/src/components/JfbBaseOrderDetail/Attr.js +28 -14
  9. package/src/components/JfbBaseOrderDetail/JfbBaseOrderDetail.vue +68 -18
  10. package/src/components/JfbBaseOrderDetail/Mock.js +3 -1
  11. package/src/components/JfbBaseTfkCardBind/Api.js +49 -30
  12. package/src/components/JfbBaseTfkCardBind/Attr.js +139 -15
  13. package/src/components/JfbBaseTfkCardBind/JfbBaseTfkCardBind.vue +217 -19
  14. package/src/components/JfbBaseTfkCardBind/Mock.js +19 -9
  15. package/src/components/JfbBaseTfkCardDetail/Api.js +11 -0
  16. package/src/components/JfbBaseTfkCardDetail/Attr.js +158 -7
  17. package/src/components/JfbBaseTfkCardDetail/JfbBaseTfkCardDetail.vue +159 -17
  18. package/src/components/JfbBaseTfkCardLogin/Attr.js +490 -4
  19. package/src/components/JfbBaseTfkCardLogin/JfbBaseTfkCardLogin.vue +393 -106
  20. package/src/components/JfbBaseTfkCardLogin/Mock.js +6 -536
  21. package/src/components/JfbBaseTfkCardLogin/XdCouponItem.vue +75 -19
  22. package/src/components/JfbBaseTfkCardLogin/XdNotice.vue +550 -0
  23. package/src/components/JfbBaseTfkSearch/AllList.vue +350 -0
  24. package/src/components/JfbBaseTfkSearch/Api.js +11 -42
  25. package/src/components/JfbBaseTfkSearch/Attr.js +344 -32
  26. package/src/components/JfbBaseTfkSearch/ContentCinema.vue +157 -0
  27. package/src/components/JfbBaseTfkSearch/ContentFilm.vue +218 -0
  28. package/src/components/JfbBaseTfkSearch/ContentProduct.vue +317 -0
  29. package/src/components/JfbBaseTfkSearch/ContentShop.vue +186 -0
  30. package/src/components/JfbBaseTfkSearch/CusAttr.js +213 -0
  31. package/src/components/JfbBaseTfkSearch/CustomList.vue +453 -0
  32. package/src/components/JfbBaseTfkSearch/JfbBaseTfkSearch.vue +286 -35
  33. package/src/components/JfbBaseTfkSearch/Mock.js +242 -11
  34. package/src/components/JfbBaseTfkSearch/SkeletonCinema.vue +45 -0
  35. package/src/components/JfbBaseTfkSearch/SkeletonFilm.vue +109 -0
  36. package/src/components/JfbBaseTfkSearch/SkeletonProduct.vue +246 -0
  37. package/src/components/JfbBaseTfkSearch/SkeletonShop.vue +81 -0
  38. package/src/components/JfbBaseTfkSearch/handleKeyword.js +24 -0
  39. package/src/components/JfbBaseTfkSearch/listMixins.js +187 -0
  40. package/src/mixins/colorCardMixins.js +71 -9
  41. package/src/mixins/componentsMixins.js +376 -23
  42. package/src/mixins/posterMixins.js +122 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jufubao-base",
3
- "version": "1.0.169-beta2",
3
+ "version": "1.0.169-beta20",
4
4
  "private": false,
5
5
  "description": "聚福宝业务组件基础插件包",
6
6
  "main": "index.js",
@@ -110,7 +110,7 @@
110
110
  partnerName: "",
111
111
  useSearch: "N", //Y:用于搜索; N:用于跳转搜索页面
112
112
  searchPagePath: "",
113
- placeholder: "搜索商品名称",
113
+ placeholder: "请输入关键词",
114
114
  choseCityPath: "", //选择城市i
115
115
 
116
116
 
@@ -166,7 +166,7 @@
166
166
  this.showBack = getContainerPropsValue(container, "content.showBack", "Y");
167
167
  this.showPartner = getContainerPropsValue(container, "content.showPartner", "N")
168
168
  this.showPartnerName = getContainerPropsValue(container, "content.showPartnerName", "N");
169
- this.placeholder = getContainerPropsValue(container, "content.placeholder");
169
+ this.placeholder = getContainerPropsValue(container, "content.placeholder",'请输入关键词');
170
170
  this.useSearch = getContainerPropsValue(container, "content.useSearch", "Y");
171
171
  this.searchPagePath = getContainerPropsValue(container, "content.searchPagePath", {value:""}).value;
172
172
  this.choseCityPath = getContainerPropsValue(container, "content.choseCityPath", {value:""}).value;
@@ -29,6 +29,7 @@ export default {
29
29
  value: data.authLoginBtnText ||"",
30
30
  groupKey: "content",
31
31
  className: "input70",
32
+ hidden: data.previewCurrent !== "auth",
32
33
  },
33
34
  {
34
35
  label: "授权登录按钮前缀图标:",
@@ -37,6 +38,7 @@ export default {
37
38
  value: data.authLoginBtnIcon || "",
38
39
  groupKey: "content",
39
40
  className: "input70",
41
+ hidden: data.previewCurrent !== "auth",
40
42
  },
41
43
  {
42
44
  label: "账号登录按钮文案:",
@@ -45,6 +47,7 @@ export default {
45
47
  value: data.accountLoginBtnText ||"",
46
48
  groupKey: "content",
47
49
  className: "input70",
50
+ hidden: data.previewCurrent !== "auth",
48
51
  },
49
52
  {
50
53
  label: "账号登录按钮前缀图标:",
@@ -53,6 +56,7 @@ export default {
53
56
  value: data.accountLoginBtnIcon || "",
54
57
  groupKey: "content",
55
58
  className: "input70",
59
+ hidden: data.previewCurrent !== "auth",
56
60
  },
57
61
  {
58
62
  label: "手机号登录按钮文案:",
@@ -61,6 +65,7 @@ export default {
61
65
  value: data.phoneLoginBtnText || "登录",
62
66
  groupKey: "content",
63
67
  className: "input70",
68
+ hidden: data.previewCurrent !== "account",
64
69
  },
65
70
  {
66
71
  label: "手机号登录按钮前缀图标:",
@@ -69,10 +74,11 @@ export default {
69
74
  value: data.phoneLoginBtnIcon || "",
70
75
  groupKey: "content",
71
76
  className: "input70",
77
+ hidden: data.previewCurrent !== "account",
72
78
  },
73
79
  {
74
80
  ele: 'title',
75
- label: '协议内容配置',
81
+ label: '协议内容配置 - 通用',
76
82
  size: 'small',
77
83
  groupKey: 'content',
78
84
  },
@@ -544,6 +550,7 @@ export default {
544
550
  label: '账号登录内容配置',
545
551
  size: 'small',
546
552
  groupKey: 'content',
553
+ hidden: data.previewCurrent !== "account",
547
554
  },
548
555
  {
549
556
  label: "手机号自定义提示语:",
@@ -553,6 +560,7 @@ export default {
553
560
  groupKey:'content',
554
561
  placeholder: "请输入手机号自定义提示语",
555
562
  className: 'input80',
563
+ hidden: data.previewCurrent !== "account",
556
564
  },
557
565
  {
558
566
  label: "验证码自定义提示语:",
@@ -562,6 +570,13 @@ export default {
562
570
  groupKey:'content',
563
571
  placeholder: "请输入验证码自定义提示语",
564
572
  className: 'input80',
573
+ hidden: data.previewCurrent !== "account",
574
+ },
575
+ {
576
+ ele: 'title',
577
+ label: '其他',
578
+ size: 'small',
579
+ groupKey: 'content',
565
580
  },
566
581
  {
567
582
  label: '是否使用体验码功能:',
@@ -582,6 +597,7 @@ export default {
582
597
  label: 'logo样式配置',
583
598
  size: 'small',
584
599
  groupKey: 'style',
600
+ hidden: data.previewCurrent !== "auth",
585
601
  },
586
602
  {
587
603
  label: "logo区域高度:",
@@ -592,6 +608,7 @@ export default {
592
608
  groupKey:'style',
593
609
  placeholder: "请输入logo区域高度",
594
610
  className: 'input60',
611
+ hidden: data.previewCurrent !== "auth",
595
612
  },
596
613
  {
597
614
  label: "logo图片高度:",
@@ -602,6 +619,7 @@ export default {
602
619
  groupKey:'style',
603
620
  placeholder: "请输入logo图片高度",
604
621
  className: 'input60',
622
+ hidden: data.previewCurrent !== "auth",
605
623
  },
606
624
  {
607
625
  label: 'logo圆角设置:',
@@ -621,12 +639,14 @@ export default {
621
639
  console.error(error);
622
640
  });
623
641
  },
642
+ hidden: data.previewCurrent !== "auth",
624
643
  },
625
644
  {
626
645
  ele: "title",
627
646
  label: "表单样式配置",
628
647
  size: "small",
629
648
  groupKey: "style",
649
+ hidden: data.previewCurrent !== "account",
630
650
  },
631
651
  {
632
652
  label: "输入框样式:",
@@ -640,7 +660,8 @@ export default {
640
660
  list: [
641
661
  {label: '线性', value: "linear"},
642
662
  {label: '面性', value: "face"},
643
- ]
663
+ ],
664
+ hidden: data.previewCurrent !== "account",
644
665
  },
645
666
  data.inputStyle === 'linear' && {
646
667
  label: "表单边框颜色:",
@@ -649,6 +670,7 @@ export default {
649
670
  value: data.formBorderColor || "#F9F9F9",
650
671
  groupKey:'style',
651
672
  placeholder: "请选择表单边框颜色",
673
+ hidden: data.previewCurrent !== "account",
652
674
  },
653
675
  data.inputStyle === 'linear' && {
654
676
  label: "表单边框宽度:",
@@ -659,6 +681,7 @@ export default {
659
681
  groupKey:'style',
660
682
  placeholder: "请输入表单边框宽度",
661
683
  className: 'input60',
684
+ hidden: data.previewCurrent !== "account",
662
685
  },
663
686
  {
664
687
  label: "表单背景颜色:",
@@ -667,6 +690,7 @@ export default {
667
690
  value: data.formBgColor || "#FFFFFF",
668
691
  groupKey:'style',
669
692
  placeholder: "请选择表单背景颜色",
693
+ hidden: data.previewCurrent !== "account",
670
694
  },
671
695
  {
672
696
  label: '表单容器设置内边距:',
@@ -680,12 +704,14 @@ export default {
680
704
  placeholder: '请设置边距',
681
705
  inline: false,
682
706
  notice: '设置内边距,<span style="color: red">单位:像素</span>。默认值:<span style="color: red">20</span>像素',
707
+ hidden: data.previewCurrent !== "account",
683
708
  },
684
709
  {
685
710
  ele: 'title',
686
711
  label: '标签样式配置',
687
712
  size: 'small',
688
713
  groupKey: 'style',
714
+ hidden: data.previewCurrent !== "account",
689
715
  },
690
716
  data.inputStyle === 'linear' && {
691
717
  label: "标签文字对齐方式:",
@@ -700,7 +726,8 @@ export default {
700
726
  {label: '左对齐', value: "left"},
701
727
  {label: '右对齐', value: "right"},
702
728
  {label: '居中', value: "center"},
703
- ]
729
+ ],
730
+ hidden: data.previewCurrent !== "account",
704
731
  },
705
732
  data.inputStyle === 'linear' && {
706
733
  label: "标签位置:",
@@ -714,7 +741,8 @@ export default {
714
741
  list: [
715
742
  {label: '居左', value: "left"},
716
743
  {label: '居上', value: "top"},
717
- ]
744
+ ],
745
+ hidden: data.previewCurrent !== "account",
718
746
  },
719
747
  data.inputStyle === 'linear' && {
720
748
  label: "标签宽度:",
@@ -725,6 +753,7 @@ export default {
725
753
  groupKey:'style',
726
754
  placeholder: "请输入标签宽度",
727
755
  className: 'input60',
756
+ hidden: data.previewCurrent !== "account",
728
757
  },
729
758
  {
730
759
  label: "手机号图标:",
@@ -734,6 +763,7 @@ export default {
734
763
  groupKey:'style',
735
764
  placeholder: "请输入手机号图标",
736
765
  className: "input70",
766
+ hidden: data.previewCurrent !== "account",
737
767
  },
738
768
  {
739
769
  label: "验证码图标:",
@@ -743,6 +773,7 @@ export default {
743
773
  groupKey:'style',
744
774
  placeholder: "请输入验证码图标",
745
775
  className: "input70",
776
+ hidden: data.previewCurrent !== "account",
746
777
  },
747
778
  {
748
779
  label: "标签字体样式设置:",
@@ -753,13 +784,6 @@ export default {
753
784
  setting: {
754
785
  align: false,
755
786
  lineHeight: false,
756
- //color:true, //颜色
757
- //fontSize: true, //字体大小
758
- //style:true, //字体:nomarl|italic
759
- //align:true, //左,中,右
760
- //weight: true, //粗细
761
- //lineHeight: true, //行高
762
- //decoration: true, //样式,none |underline |line-through | overline
763
787
  },
764
788
  handleCustom({action, data}) {
765
789
  XdBus.getParentApi('getOptionsSettingList')({setting_id: 'edtix_style_font_size'})
@@ -773,12 +797,14 @@ export default {
773
797
  },
774
798
  inline: false,
775
799
  notice: '填充设置,单位:<span style="color: red">像素</span>。默认值:<span style="color: red">20</span> 像素',
800
+ hidden: data.previewCurrent !== "account",
776
801
  },
777
802
  {
778
803
  ele: 'title',
779
804
  label: '输入框设置',
780
805
  size: 'small',
781
806
  groupKey: 'style',
807
+ hidden: data.previewCurrent !== "account",
782
808
  },
783
809
  {
784
810
  label: "占位符字体样式设置:",
@@ -806,6 +832,7 @@ export default {
806
832
  },
807
833
  inline: false,
808
834
  notice: '填充设置,单位:<span style="color: red">像素</span>。默认值:<span style="color: red">20</span> 像素',
835
+ hidden: data.previewCurrent !== "account",
809
836
  },
810
837
  {
811
838
  label: "内容字体样式设置:",
@@ -829,12 +856,14 @@ export default {
829
856
  },
830
857
  inline: false,
831
858
  notice: '填充设置,单位:<span style="color: red">像素</span>。默认值:<span style="color: red">20</span> 像素',
859
+ hidden: data.previewCurrent !== "account",
832
860
  },
833
861
  {
834
862
  ele: 'title',
835
863
  label: '获取验证码',
836
864
  size: 'small',
837
865
  groupKey: 'style',
866
+ hidden: data.previewCurrent !== "account",
838
867
  },
839
868
  {
840
869
  label: "获取验证码字体样式设置:",
@@ -862,6 +891,7 @@ export default {
862
891
  },
863
892
  inline: false,
864
893
  notice: '填充设置,单位:<span style="color: red">像素</span>。默认值:<span style="color: red">20</span> 像素',
894
+ hidden: data.previewCurrent !== "account",
865
895
  },
866
896
  {
867
897
  label: "获取验证码展示方式:",
@@ -874,7 +904,8 @@ export default {
874
904
  list: [
875
905
  {label: '文字', value: 'text'},
876
906
  {label: '按钮', value: 'button'},
877
- ]
907
+ ],
908
+ hidden: data.previewCurrent !== "account",
878
909
  },
879
910
  {
880
911
  ele: 'title',
@@ -908,9 +939,10 @@ export default {
908
939
  placeholder: '请设置边距',
909
940
  inline: false,
910
941
  notice: '设置内边距,<span style="color: red">单位:像素</span>。默认值:<span style="color: red">20</span>像素',
942
+ hidden: data.previewCurrent !== "account",
911
943
  },
912
944
  {
913
- label: "按钮圆角",
945
+ label: "按钮圆角 - 通用",
914
946
  ele: 'xd-site-select-list',
915
947
  valueKey: 'btnRadius',
916
948
  value: data['btnRadius'] || '',
@@ -930,7 +962,7 @@ export default {
930
962
  },
931
963
  {
932
964
  ele: 'title',
933
- label: '条款协议',
965
+ label: '条款协议 - 通用',
934
966
  size: 'small',
935
967
  groupKey: 'style',
936
968
  },
@@ -999,7 +1031,7 @@ export default {
999
1031
  ]
1000
1032
  },
1001
1033
  {
1002
- label: "外边距设置:",
1034
+ label: "条款协议外边距设置 - 账号登录",
1003
1035
  groupKey:'style',
1004
1036
  ele: 'xd-margin-padding',
1005
1037
  valueKey: 'agreePadding',
@@ -1015,12 +1047,14 @@ export default {
1015
1047
  placeholder: '请设置边距',
1016
1048
  inline: false,
1017
1049
  notice: '设置内边距,<span style="color: red">单位:像素</span>。默认值:<span style="color: red">20</span>像素',
1050
+ hidden: data.previewCurrent !== "account"
1018
1051
  },
1019
1052
  {
1020
1053
  ele: "title",
1021
1054
  label: "授权登录页设置",
1022
1055
  size: "small",
1023
1056
  groupKey: "style",
1057
+ hidden: data.previewCurrent !== "auth"
1024
1058
  },
1025
1059
  {
1026
1060
  label: "授权登录按钮组边距设置:",
@@ -1034,6 +1068,7 @@ export default {
1034
1068
  placeholder: '请设置边距',
1035
1069
  inline: false,
1036
1070
  notice: '设置内边距,<span style="color: red">单位:像素</span>。默认值:<span style="color: red">20</span>像素',
1071
+ hidden: data.previewCurrent !== "auth"
1037
1072
  },
1038
1073
  {
1039
1074
  label: "隐私协议外边距设置:",
@@ -1047,6 +1082,7 @@ export default {
1047
1082
  placeholder: '请设置边距',
1048
1083
  inline: false,
1049
1084
  notice: '设置内边距,<span style="color: red">单位:像素</span>。默认值:<span style="color: red">20</span>像素',
1085
+ hidden: data.previewCurrent !== "auth"
1050
1086
  },
1051
1087
  {
1052
1088
  ele: 'title',
@@ -1066,7 +1102,8 @@ export default {
1066
1102
  list: [
1067
1103
  {label: '显示', value: "Y"},
1068
1104
  {label: '隐藏', value: "N"},
1069
- ]
1105
+ ],
1106
+ hidden: data.previewCurrent !== "auth"
1070
1107
  },
1071
1108
  {
1072
1109
  label: '站点名称颜色:',
@@ -1076,6 +1113,7 @@ export default {
1076
1113
  groupKey:'style',
1077
1114
  placeholder: '请选择站点名称颜色',
1078
1115
  classNmae: 'input60',
1116
+ hidden: data.previewCurrent !== "auth"
1079
1117
  },
1080
1118
  {
1081
1119
  label: '快速授权失败访问地址:', //label
@@ -651,7 +651,7 @@ export default {
651
651
  this.formBgColor = getContainerPropsValue(value, "content.formBgColor", '#FFFFFF');
652
652
  this.labelAlign = getContainerPropsValue(value, "content.labelAlign", 'left');
653
653
  this.labelWidth = getContainerPropsValue(value, "content.labelWidth", '180');
654
- this.labelPosition = getContainerPropsValue(value, "content.labelPosition", 'top');
654
+ this.labelPosition = getContainerPropsValue(value, "content.labelPosition", 'left');
655
655
  this.formPadding = getContainerPropsValue(value, "content.formPadding", {top: 20, left: 20, right: 20, bottom: 20});
656
656
  this.agreePadding = getContainerPropsValue(value, "content.agreePadding", {});
657
657
  this.authAgreePadding = getContainerPropsValue(value, "content.authAgreePadding", {top: 20, left: 20, right: 20, bottom: 20});
@@ -799,6 +799,8 @@ export default {
799
799
 
800
800
  let { redirect_url, callback_url } = this;
801
801
 
802
+ redirect_url = redirect_url || callback_url || this.$settings.index;
803
+
802
804
  //不同项目直接域名替换
803
805
  if (/^(@site_domain@).+$/.test(redirect_url)) {
804
806
  redirect_url = redirect_url.replace(/@site_domain@/, location.origin)
@@ -46,7 +46,7 @@
46
46
  this.BMap = new bmap.BMapWX({
47
47
  ak: this.ak
48
48
  })
49
- uni.getLocation({
49
+ wx.getFuzzyLocation({
50
50
  type: "gcj08",
51
51
  success: res => {
52
52
  console.log("getLocation", res);
@@ -14,7 +14,7 @@
14
14
  </view>
15
15
  <!-- #endif -->
16
16
  <view class="jfb-base-notice__body">
17
- <view class="jfb-base-notice__body-line"></view>
17
+ <view class="jfb-base-notice__body-line" v-if="contentList.length > 0"></view>
18
18
  <view>
19
19
  <template v-if="style === '3' && isPreview">
20
20
  <view class="jfb-base-notice__body-pop" :style="{backgroundColor:backgroundColor, color:warningColor}">弹窗模式方便编辑(占位),在线上此模块不显</view>
@@ -23,7 +23,7 @@
23
23
  <template v-if="contentList.length === 0 && isPreview">
24
24
  <view class="jfb-base-notice__body-pop" :style="{backgroundColor:backgroundColor, color:warningColor}">接口无数返回,请检查是否配置成功!</view>
25
25
  </template>
26
- <view v-else class="jfb-base-notice__body-scroll">
26
+ <view v-if="contentList.length > 0" class="jfb-base-notice__body-scroll">
27
27
  <view
28
28
  class="upAndDown"
29
29
  :style="{
@@ -1,13 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  /**
4
- * @description API模型
5
- * 建议:Ffff=>模块 Xxxx=>自定义名字
6
- * 获取单记录(getByIdFfffXxxx)
7
- * 获取列表记录(getByListFfffXxxx)
8
- * 添加列表记录(addFfffXxxxx)
9
- * 删除列表记录(removeFfffXxxxx|deleteFfffXxxx)
10
- * 更新列表记录(updateFfffXxxxx)
4
+ * @description 订单详情模块
11
5
  * @type {*[]}
12
6
  */
13
7
  module.exports = [
@@ -45,4 +39,15 @@ module.exports = [
45
39
  isConsole: true,
46
40
  disabled: true,
47
41
  },
42
+ {
43
+ mapFnName: 'deleteBaseOrder', //自定义方法名字(必选)
44
+ title: '删除订单',
45
+ path: '/order/v1/order/delete-main-order',
46
+ isRule: false,
47
+ data: {
48
+ main_order_id: ['id', 'Number', '必选'],
49
+ },
50
+ isConsole: true,
51
+ disabled: true,
52
+ },
48
53
  ];
@@ -22,20 +22,6 @@ export default {
22
22
  inline: false,
23
23
  notice: '前台页面展示会根据返回数据类型进行页面渲染'
24
24
  },
25
- {
26
- label: '是否需要客服电话:',
27
- ele: 'xd-radio',
28
- valueKey: 'is_hot',
29
- value: data['is_hot'] || 'N',
30
- groupKey:'content',
31
- placeholder: '请选择是否需要客服电话',
32
- multiple: false,
33
- className: 'input80',
34
- list: [
35
- { label: '是', value: 'Y' },
36
- { label: '否', value: 'N' },
37
- ]
38
- },
39
25
  {
40
26
  label: '自定义内容:',
41
27
  ele: 'xd-site-news',
@@ -260,6 +246,20 @@ export default {
260
246
  }
261
247
  },
262
248
  },
249
+ {
250
+ label: '是否需要客服电话:',
251
+ ele: 'xd-radio',
252
+ valueKey: 'is_hot',
253
+ value: data['is_hot'] || 'N',
254
+ groupKey:'content',
255
+ placeholder: '请选择是否需要客服电话',
256
+ multiple: false,
257
+ className: 'input80',
258
+ list: [
259
+ { label: '是', value: 'Y' },
260
+ { label: '否', value: 'N' },
261
+ ]
262
+ },
263
263
  {
264
264
  label: "是否展示可用门店:",
265
265
  ele: 'xd-radio',
@@ -274,6 +274,20 @@ export default {
274
274
  { label: '否', value: 'N' },
275
275
  ]
276
276
  },
277
+ {
278
+ label: "是否允许删除订单:",
279
+ ele: 'xd-radio',
280
+ valueKey: "is_show_delete_order",
281
+ value: data['is_show_delete_order'] || 'N',
282
+ groupKey:'content',
283
+ placeholder: '请选择是否允许删除订单',
284
+ multiple: false,
285
+ className: 'input80',
286
+ list: [
287
+ { label: '允许', value: 'Y' },
288
+ { label: '不允许', value: 'N' },
289
+ ]
290
+ },
277
291
  {
278
292
  label: '外填充:',
279
293
  ele: 'xd-margin-padding',
@@ -683,9 +683,8 @@
683
683
  <view v-else>
684
684
  <xd-button
685
685
  size="small"
686
- type="primary"
686
+ :type="item.type !== undefined ? item.type: 'primary'"
687
687
  radius="40rpx"
688
- :bg-color="mainColor"
689
688
  @click="handleAction(item)"
690
689
  >{{ item.text }}</xd-button>
691
690
  </view>
@@ -741,6 +740,7 @@ import { mapState } from "vuex";
741
740
  import bizMock from "./bizMock";
742
741
  import Color from "color";
743
742
 
743
+
744
744
  export default {
745
745
  name: "JfbBaseOrderDetail",
746
746
  components: {
@@ -774,6 +774,7 @@ export default {
774
774
  is_not_show_price: "",
775
775
  brandTextColor:'',
776
776
  is_show_support_shop: "",
777
+ is_show_delete_order:'N', //删除订单
777
778
 
778
779
  showPassword: false,
779
780
  dialogPassword: "",
@@ -822,6 +823,11 @@ export default {
822
823
  this.getOrderDetail();
823
824
  }
824
825
  },
826
+ is_show_delete_order(){
827
+ if (this.isPreview) {
828
+ this.getOrderDetail();
829
+ }
830
+ },
825
831
  },
826
832
  computed: {
827
833
  ...mapState(['siteInfo']),
@@ -857,8 +863,7 @@ export default {
857
863
  },
858
864
  methods: {
859
865
  onJfbLoad(options) {
860
- this.main_order_id =
861
- options.id || options.order_id || options.main_order_id;
866
+ this.main_order_id = options.id || options.order_id || options.main_order_id;
862
867
  this.getOrderDetail();
863
868
  },
864
869
 
@@ -993,6 +998,20 @@ export default {
993
998
  ).fullTime;
994
999
  res.film_show.thumb = getServiceUrl(res.film_show.thumb);
995
1000
  }
1001
+
1002
+ //增加删除订单按钮
1003
+ if(this.is_show_delete_order === 'Y') {
1004
+ let pay = (res.buttons||[]).filter(item => item.action === 'pay');
1005
+ let del = [{action:'delete', text:'删除订单', type: 'info'}];
1006
+ if(pay.length === 1) del = []
1007
+ res.buttons = del.concat(res.buttons || []).map(item=>{
1008
+ if(item.action === 'view_logistics' && !item.type) {
1009
+ item.type = 'default';
1010
+ }
1011
+ return item
1012
+ });
1013
+ }
1014
+
996
1015
  if (res.product) {
997
1016
  jfbRootExec("getBaseProductDetail", {
998
1017
  vm: this,
@@ -1011,7 +1030,8 @@ export default {
1011
1030
  .catch((err) => {
1012
1031
  console.log(err, "err");
1013
1032
  });
1014
- } else {
1033
+ }
1034
+ else {
1015
1035
  this.info = res;
1016
1036
  if (this.info.status.loading_timeout != "-1") {
1017
1037
  this.timeDown();
@@ -1051,6 +1071,7 @@ export default {
1051
1071
  this.is_border_w = getContainerPropsValue(container, "content.is_border_w", 2);
1052
1072
  this.viewStatus = getContainerPropsValue(container, "content.viewStatus", "mall");
1053
1073
  this.is_show_support_shop = getContainerPropsValue(container, "content.is_show_support_shop", "N");
1074
+ this.is_show_delete_order = getContainerPropsValue(container, "content.is_show_delete_order", "N");
1054
1075
  },
1055
1076
  getCountDown() {
1056
1077
  this.timer = setInterval(() => {
@@ -1135,25 +1156,15 @@ export default {
1135
1156
  },
1136
1157
  handleAction(item) {
1137
1158
  if (item.action === "view_logistics") {
1138
- // if (
1139
- // this.info.extras.first_logistics_package_id &&
1140
- // this.info.extras.logistics_count === 1
1141
- // ) {
1142
- // this.$xdUniHelper.navigateTo({
1143
- // url: `${this.logisticsPath}?package_id=${this.info.extras.first_logistics_package_id}`,
1144
- // });
1145
- // } else {
1146
- // this.$xdUniHelper.navigateTo({
1147
- // url: `${this.packageListPath}?order_id=${this.main_order_id}`,
1148
- // });
1149
- // }
1150
1159
  this.$xdUniHelper.navigateTo({
1151
1160
  url: `${this.packageListPath}?order_id=${this.main_order_id}`,
1152
1161
  });
1153
- } else {
1162
+ }
1163
+ else if(item.action === 'cancel_unpaid') {
1154
1164
  this.$xdConfirm({
1155
1165
  styles: this.styles,
1156
1166
  content: "是否取消订单",
1167
+ zIndex: 3000,
1157
1168
  success: (action) => {
1158
1169
  if (action.confirm) {
1159
1170
  jfbRootExec("cancelBaseOrder", {
@@ -1175,6 +1186,45 @@ export default {
1175
1186
  },
1176
1187
  });
1177
1188
  }
1189
+ else if(item.action === 'delete'){
1190
+ this.$xdConfirm({
1191
+ styles: this.styles,
1192
+ content: "订单删除后将无法找到订单<br/>您确认删除吗?",
1193
+ cancelText:'我在看看',
1194
+ isHtml: true,
1195
+ zIndex: 3000,
1196
+ success: (action) => {
1197
+ if (action.confirm) {
1198
+ this.handleDeleteOrder();
1199
+ }
1200
+ },
1201
+ });
1202
+ }
1203
+ else {
1204
+ console.error(`item.action=${item.action}, 此action不可用`)
1205
+ }
1206
+ },
1207
+
1208
+ handleDeleteOrder(){
1209
+ jfbRootExec("deleteBaseOrder", {
1210
+ vm: this,
1211
+ data: {
1212
+ main_order_id: this.main_order_id,
1213
+ },
1214
+ })
1215
+ .then((res) => {
1216
+ this.$xdAlert({
1217
+ content: "删除成功",
1218
+ time: 2000,
1219
+ zIndex: 3000,
1220
+ });
1221
+ setTimeout(()=>{
1222
+ this.$xdUniHelper.navigateBack()
1223
+ },3000)
1224
+ })
1225
+ .catch((err) => {
1226
+ console.log(err, "err");
1227
+ });
1178
1228
  },
1179
1229
 
1180
1230
  onJfbShow(options) {
@@ -95,5 +95,7 @@ module.exports = {
95
95
  "shop_address": "北京3北京西夏区城区河北省廊坊市三河市燕郊开发区燕高路西侧实验小学南侧 "
96
96
  },
97
97
  "request_id": "6178d3499b91f274"
98
- }
98
+ },
99
+ cancelBaseOrder:{"pay_order_id": "488003809474256896","request_id": "6178d3499b91f274"},
100
+ deleteBaseOrder:{"pay_order_id": "488003809474256896","request_id": "6178d3499b91f274"},
99
101
  }