tplus-member 3.51.1 → 3.53.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (118) hide show
  1. package/dist/api.js +5 -5
  2. package/dist/api.js.map +1 -1
  3. package/dist/controllers/FeedbackController.js.map +1 -1
  4. package/dist/controllers/MemberOrderController.js +12 -12
  5. package/dist/controllers/MemberOrderController.js.map +1 -1
  6. package/dist/controllers/OpenCardController.js +7 -7
  7. package/dist/controllers/OpenCardController.js.map +1 -1
  8. package/dist/controllers/defaultConfig.js.map +1 -1
  9. package/dist/dataProvider/member.js +7 -7
  10. package/dist/dataProvider/member.js.map +1 -1
  11. package/dist/dataProvider/openCard.js.map +1 -1
  12. package/dist/domain/member/AuthProcess.js.map +1 -1
  13. package/dist/domain/member/CardCodeChangedProcessor.js +2 -2
  14. package/dist/domain/member/CardCodeChangedProcessor.js.map +1 -1
  15. package/dist/domain/member/CheckCardCodeAndCodeProcessor.js +2 -2
  16. package/dist/domain/member/CheckCardCodeAndCodeProcessor.js.map +1 -1
  17. package/dist/domain/member/CheckMobilephoneFormatProcessor.js +2 -2
  18. package/dist/domain/member/CheckMobilephoneFormatProcessor.js.map +1 -1
  19. package/dist/domain/member/CheckPresentAmountProcessor.js +2 -2
  20. package/dist/domain/member/CheckPresentAmountProcessor.js.map +1 -1
  21. package/dist/domain/member/EffectiveDateChangedProcessor.js +2 -2
  22. package/dist/domain/member/EffectiveDateChangedProcessor.js.map +1 -1
  23. package/dist/domain/member/GetThisPresentAmountProcessor.js +2 -2
  24. package/dist/domain/member/GetThisPresentAmountProcessor.js.map +1 -1
  25. package/dist/domain/member/InitDataProcessor.js +123 -123
  26. package/dist/domain/member/InitDataProcessor.js.map +1 -1
  27. package/dist/domain/member/IsMemberEffectiveProcessor.js +2 -2
  28. package/dist/domain/member/IsMemberEffectiveProcessor.js.map +1 -1
  29. package/dist/domain/member/IsMemberEnableProcessor.js +2 -2
  30. package/dist/domain/member/IsMemberEnableProcessor.js.map +1 -1
  31. package/dist/domain/member/IsMemberExpirationProcessor.js +2 -2
  32. package/dist/domain/member/IsMemberExpirationProcessor.js.map +1 -1
  33. package/dist/domain/member/IsMemberPasswordSameProcessor.js +2 -2
  34. package/dist/domain/member/IsMemberPasswordSameProcessor.js.map +1 -1
  35. package/dist/domain/member/IsMemberStorageForStoreProcessor.js +3 -3
  36. package/dist/domain/member/IsMemberStorageForStoreProcessor.js.map +1 -1
  37. package/dist/domain/member/MemberTypeChangedProcessor.js +4 -4
  38. package/dist/domain/member/MemberTypeChangedProcessor.js.map +1 -1
  39. package/dist/domain/member/MobilephoneChangedProcessor.js +4 -4
  40. package/dist/domain/member/MobilephoneChangedProcessor.js.map +1 -1
  41. package/dist/domain/member/PersonProcesser.js.map +1 -1
  42. package/dist/domain/member/PriuserdefChangedProcessor.js +2 -2
  43. package/dist/domain/member/PriuserdefChangedProcessor.js.map +1 -1
  44. package/dist/domain/operationLog/AddLogProcessor.js +6 -6
  45. package/dist/domain/operationLog/AddLogProcessor.js.map +1 -1
  46. package/dist/domain/operationLog/OperationConfig.js.map +1 -1
  47. package/dist/domain/operationLog/OperationLog.js.map +1 -1
  48. package/dist/index.js.map +1 -1
  49. package/dist/member/MemberCardList.js +2 -2
  50. package/dist/member/MemberCardList.js.map +1 -1
  51. package/dist/member/MemberPhoto.js.map +1 -1
  52. package/dist/member/MemberShow.js.map +1 -1
  53. package/dist/member/ShopMember.js.map +1 -1
  54. package/dist/member/ShopMember.less +654 -654
  55. package/dist/member/ShopMemberStorage.js.map +1 -1
  56. package/dist/member/api.js.map +1 -1
  57. package/dist/member/color.less +31 -31
  58. package/dist/member/index.js +4 -4
  59. package/dist/member/index.js.map +1 -1
  60. package/dist/member/index.less +578 -578
  61. package/dist/member/memberMenu/bindCard/index.js.map +1 -1
  62. package/dist/member/memberMenu/bindCard/style.less +7 -7
  63. package/dist/member/memberMenu/changeMemberCard/index.js.map +1 -1
  64. package/dist/member/memberMenu/changeMemberCard/style.less +42 -42
  65. package/dist/member/memberMenu/index.js.map +1 -1
  66. package/dist/member/memberMenu/modifyPass/index.js.map +1 -1
  67. package/dist/member/memberMenu/modifyPass/store.js.map +1 -1
  68. package/dist/member/memberMenu/modifyPass/style.less +96 -96
  69. package/dist/member/memberMenu/style.less +136 -136
  70. package/dist/member/memberMenuStorage/bindCard/index.js.map +1 -1
  71. package/dist/member/memberMenuStorage/bindCard/style.less +7 -7
  72. package/dist/member/memberMenuStorage/changeMemberCard/index.js.map +1 -1
  73. package/dist/member/memberMenuStorage/changeMemberCard/style.less +42 -42
  74. package/dist/member/memberMenuStorage/index.js.map +1 -1
  75. package/dist/member/memberMenuStorage/modifyPass/index.js.map +1 -1
  76. package/dist/member/memberMenuStorage/modifyPass/store.js.map +1 -1
  77. package/dist/member/memberMenuStorage/modifyPass/style.less +96 -96
  78. package/dist/member/memberMenuStorage/style.less +138 -138
  79. package/dist/member/memberTab/MemberCardInfo.js.map +1 -1
  80. package/dist/member/memberTab/MemberManager.js.map +1 -1
  81. package/dist/member/memberTab/MemberStorage.js +7 -7
  82. package/dist/member/memberTab/MemberStorage.js.map +1 -1
  83. package/dist/member/memberTab/index.js.map +1 -1
  84. package/dist/member/memberTab.js.map +1 -1
  85. package/dist/socket.js +13 -13
  86. package/dist/socket.js.map +1 -1
  87. package/dist/stores/MemberStore.js.map +1 -1
  88. package/dist/stores/index.js.map +1 -1
  89. package/dist/utils.js.map +1 -1
  90. package/dist/viewController/MemberOrderViewController.js.map +1 -1
  91. package/dist/viewDoMain/CheckMemberProcessorBlock.js +2 -2
  92. package/dist/viewDoMain/CheckMemberProcessorBlock.js.map +1 -1
  93. package/dist/viewDoMain/CheckMemberStorageProcessorBlock.js +2 -2
  94. package/dist/viewDoMain/CheckMemberStorageProcessorBlock.js.map +1 -1
  95. package/dist/viewDoMain/CheckSelectMemberProcessorBlock.js +2 -2
  96. package/dist/viewDoMain/CheckSelectMemberProcessorBlock.js.map +1 -1
  97. package/dist/viewDoMain/CheckUpdatePasswordProcessorBlock.js.map +1 -1
  98. package/dist/viewDoMain/MemberDataChangedProcessorBlock.js +2 -2
  99. package/dist/viewDoMain/MemberDataChangedProcessorBlock.js.map +1 -1
  100. package/dist/viewDoMain/MemberDataPreSaveProcessorBlock.js +2 -2
  101. package/dist/viewDoMain/MemberDataPreSaveProcessorBlock.js.map +1 -1
  102. package/dist/viewDoMain/StorageAmountChangedProcessorBlock.js +2 -2
  103. package/dist/viewDoMain/StorageAmountChangedProcessorBlock.js.map +1 -1
  104. package/dist/viewModels/memberVoucher.js +3 -3
  105. package/dist/viewModels/memberVoucher.js.map +1 -1
  106. package/dist/views/MemberOrderView.js +5 -5
  107. package/dist/views/MemberOrderView.js.map +1 -1
  108. package/dist/views/MemberStore.less +143 -143
  109. package/dist/views/MemberStoreNew.less +228 -228
  110. package/dist/views/MemberStoreNewView.js.map +1 -1
  111. package/dist/views/MemberStoreView.js.map +1 -1
  112. package/dist/views/MemberStoreViewContainer.js.map +1 -1
  113. package/dist/views/PresentDetail.less +118 -118
  114. package/dist/views/PresetDetailView.js.map +1 -1
  115. package/dist/views/memberOrder.less +54 -54
  116. package/locales/zh/tplus-portsetting.json +1 -1
  117. package/locales/zh-CN/tplus-portsetting.json +1 -1
  118. package/package.json +6 -6
@@ -1,96 +1,96 @@
1
- .u-modal {
2
- .u-close{
3
- opacity: 1 !important;//统一覆盖
4
- }
5
- &.in {
6
- .modify-password{
7
- top: 50% !important;
8
- transform: translateY(-50%) !important;
9
- }
10
- }
11
- &.fade {
12
- .modify-password{
13
- top: 50%;
14
- transform: translateY(-65%);
15
- }
16
- }
17
- }
18
- .modify-password{
19
- margin: 0 auto !important;
20
- .u-modal-header{
21
- font-size: 18px;
22
- color: #333333;
23
- line-height: 18px;
24
- border-bottom: 1px solid #E6E6EB;
25
- padding: 10px 16px;
26
- .u-modal-title{
27
- font-weight: 500;
28
- }
29
- .u-close{
30
- outline: none;
31
- }
32
- }
33
- .u-modal-body{
34
- padding: 28px 30px;
35
- }
36
- .u-modal-footer{
37
- padding: 8px 16px;
38
- border-top: 1px solid #E6E6EB;
39
- }
40
- .modifypass-cancal-button{
41
- border-radius: 4px;
42
- min-width: 76px;
43
- box-sizing: border-box;
44
- }
45
- .modifypass-ok-button{
46
- border-radius: 4px;
47
- font-size: 16px;
48
- text-align: center;
49
- border: 0;
50
- margin-left: 16px;
51
- min-width: 76px;
52
- box-sizing: border-box;
53
- }
54
- .modify-password-container2 {
55
- display: flex;
56
- justify-content: center;
57
- align-items: center;
58
- height: 100%;
59
-
60
- .tplus-container {
61
-
62
- width: 100%;
63
- padding: 20px;
64
-
65
- .tplus-input-container {
66
- margin-bottom: 24px;
67
- width : 100%;
68
-
69
- &:last-child {
70
- margin-bottom: 10px;
71
- }
72
-
73
- &:first-child {
74
- margin-top: 24px;
75
- }
76
- }
77
-
78
- .tplus-input-title {
79
- width: 80px;
80
- }
81
- }
82
- }
83
- .passContainer {
84
- display: flex;
85
- padding: 10px 0;
86
- .one {
87
- width: 120px;
88
- text-align: right;
89
- padding-right: 10px;
90
- }
91
- .two {
92
- width: 266px;
93
- }
94
- }
95
- }
96
-
1
+ .u-modal {
2
+ .u-close{
3
+ opacity: 1 !important;//统一覆盖
4
+ }
5
+ &.in {
6
+ .modify-password{
7
+ top: 50% !important;
8
+ transform: translateY(-50%) !important;
9
+ }
10
+ }
11
+ &.fade {
12
+ .modify-password{
13
+ top: 50%;
14
+ transform: translateY(-65%);
15
+ }
16
+ }
17
+ }
18
+ .modify-password{
19
+ margin: 0 auto !important;
20
+ .u-modal-header{
21
+ font-size: 18px;
22
+ color: #333333;
23
+ line-height: 18px;
24
+ border-bottom: 1px solid #E6E6EB;
25
+ padding: 10px 16px;
26
+ .u-modal-title{
27
+ font-weight: 500;
28
+ }
29
+ .u-close{
30
+ outline: none;
31
+ }
32
+ }
33
+ .u-modal-body{
34
+ padding: 28px 30px;
35
+ }
36
+ .u-modal-footer{
37
+ padding: 8px 16px;
38
+ border-top: 1px solid #E6E6EB;
39
+ }
40
+ .modifypass-cancal-button{
41
+ border-radius: 4px;
42
+ min-width: 76px;
43
+ box-sizing: border-box;
44
+ }
45
+ .modifypass-ok-button{
46
+ border-radius: 4px;
47
+ font-size: 16px;
48
+ text-align: center;
49
+ border: 0;
50
+ margin-left: 16px;
51
+ min-width: 76px;
52
+ box-sizing: border-box;
53
+ }
54
+ .modify-password-container2 {
55
+ display: flex;
56
+ justify-content: center;
57
+ align-items: center;
58
+ height: 100%;
59
+
60
+ .tplus-container {
61
+
62
+ width: 100%;
63
+ padding: 20px;
64
+
65
+ .tplus-input-container {
66
+ margin-bottom: 24px;
67
+ width : 100%;
68
+
69
+ &:last-child {
70
+ margin-bottom: 10px;
71
+ }
72
+
73
+ &:first-child {
74
+ margin-top: 24px;
75
+ }
76
+ }
77
+
78
+ .tplus-input-title {
79
+ width: 80px;
80
+ }
81
+ }
82
+ }
83
+ .passContainer {
84
+ display: flex;
85
+ padding: 10px 0;
86
+ .one {
87
+ width: 120px;
88
+ text-align: right;
89
+ padding-right: 10px;
90
+ }
91
+ .two {
92
+ width: 266px;
93
+ }
94
+ }
95
+ }
96
+
@@ -1,139 +1,139 @@
1
- .member-menu{
2
- margin-top: 15px;
3
- overflow-x: auto;
4
- min-width: 575px;
5
- white-space: nowrap;
6
- display: flex;
7
- .member-menu-el{
8
- border-radius: 4px;
9
- height: 30px;
10
- font-family: PingFang-SC-Medium;
11
- font-size: 14px;
12
- line-height: 21px;
13
- padding:4px 10px;
14
- float: left;
15
- margin-left:20px;
16
- cursor: pointer;
17
- text-align: center;
18
- span{
19
- margin-left:9px;
20
- }
21
- .menuHotkey {
22
- display: none;
23
- }
24
- .iconfont {
25
- font-size: 14px;
26
- }
27
- }
28
- // .disabled-member-select-btn{
29
- // color: #ffca9a !important;
30
- // border-color: #ffca9a !important;
31
- // }
32
- .memberHeight {
33
- width: 100px !important;
34
- height: 44px !important;
35
- overflow: hidden !important;
36
- padding:4px 4px;
37
- .menuHotkey {
38
- display: block;
39
- width: 100%;
40
- font-size: 14px;
41
- color: #999999;
42
- font-weight: 400;
43
- height: 14px;
44
- line-height: 14px;
45
- white-space: nowrap;
46
- overflow: hidden;
47
- text-overflow: ellipsis;
48
- }
49
- }
50
- }
51
- .storage-footer {
52
- .billingSettlement{
53
- .btns{
54
- .quick{
55
- &.quick2{
56
- background-color: #FFFFFF !important;
57
- }
58
- }
59
- }
60
- }
61
- .zhifubao {
62
- color: #21A5F3;
63
- font-size: 20px;
64
- }
65
-
66
- .weixin {
67
- color: #09C22B;
68
- font-size: 20px;
69
- }
70
-
71
- .xianjin {
72
- color: #FFA941;
73
- font-size: 20px;
74
- }
75
-
76
- button:first-child {
77
- margin-left: 0;
78
- }
79
-
80
- button:last-child {
81
- background: #FF8C26;
82
- color : white;
83
- }
84
-
85
- button {
86
- width : 79px;
87
- padding : 4px 6px !important;
88
- background: white;
89
-
90
- span {
91
- margin-left : 2px;
92
- font-family : PingFang-SC-Medium;
93
- font-size : 14px !important;
94
- color : #474364;
95
- line-height : 22px;
96
- vertical-align: top;
97
- }
98
- }
99
- }
100
- .refund {
101
- .ant-modal-body {
102
- height: auto !important;
103
- }
104
- .refund-container {
105
- padding: 0 23px;
106
- padding-bottom: 27px;
107
- .refund-list {
108
- margin-left: 86px;
109
- }
110
- .refund-item {
111
- margin-top: 30px;
112
- color: #000;
113
- line-height: 14px;
114
-
115
- .title {
116
- margin-right: 4px;
117
- font-size: 14px;
118
- font-weight: normal;
119
- }
120
- .value {
121
- font-size: 16px;
122
- font-weight: bold;
123
- }
124
- .special {
125
- color: #FF595E;
126
- font-weight: bold;
127
- }
128
- }
129
- .tips {
130
- margin-top: 35px;
131
- font-size: 13px;
132
- color: #666666;
133
- letter-spacing: 0;
134
- text-align: justify;
135
- line-height: 25px;
136
- font-weight: 400;
137
- }
138
- }
1
+ .member-menu{
2
+ margin-top: 15px;
3
+ overflow-x: auto;
4
+ min-width: 575px;
5
+ white-space: nowrap;
6
+ display: flex;
7
+ .member-menu-el{
8
+ border-radius: 4px;
9
+ height: 30px;
10
+ font-family: PingFang-SC-Medium;
11
+ font-size: 14px;
12
+ line-height: 21px;
13
+ padding:4px 10px;
14
+ float: left;
15
+ margin-left:20px;
16
+ cursor: pointer;
17
+ text-align: center;
18
+ span{
19
+ margin-left:9px;
20
+ }
21
+ .menuHotkey {
22
+ display: none;
23
+ }
24
+ .iconfont {
25
+ font-size: 14px;
26
+ }
27
+ }
28
+ // .disabled-member-select-btn{
29
+ // color: #ffca9a !important;
30
+ // border-color: #ffca9a !important;
31
+ // }
32
+ .memberHeight {
33
+ width: 100px !important;
34
+ height: 44px !important;
35
+ overflow: hidden !important;
36
+ padding:4px 4px;
37
+ .menuHotkey {
38
+ display: block;
39
+ width: 100%;
40
+ font-size: 14px;
41
+ color: #999999;
42
+ font-weight: 400;
43
+ height: 14px;
44
+ line-height: 14px;
45
+ white-space: nowrap;
46
+ overflow: hidden;
47
+ text-overflow: ellipsis;
48
+ }
49
+ }
50
+ }
51
+ .storage-footer {
52
+ .billingSettlement{
53
+ .btns{
54
+ .quick{
55
+ &.quick2{
56
+ background-color: #FFFFFF !important;
57
+ }
58
+ }
59
+ }
60
+ }
61
+ .zhifubao {
62
+ color: #21A5F3;
63
+ font-size: 20px;
64
+ }
65
+
66
+ .weixin {
67
+ color: #09C22B;
68
+ font-size: 20px;
69
+ }
70
+
71
+ .xianjin {
72
+ color: #FFA941;
73
+ font-size: 20px;
74
+ }
75
+
76
+ button:first-child {
77
+ margin-left: 0;
78
+ }
79
+
80
+ button:last-child {
81
+ background: #FF8C26;
82
+ color : white;
83
+ }
84
+
85
+ button {
86
+ width : 79px;
87
+ padding : 4px 6px !important;
88
+ background: white;
89
+
90
+ span {
91
+ margin-left : 2px;
92
+ font-family : PingFang-SC-Medium;
93
+ font-size : 14px !important;
94
+ color : #474364;
95
+ line-height : 22px;
96
+ vertical-align: top;
97
+ }
98
+ }
99
+ }
100
+ .refund {
101
+ .ant-modal-body {
102
+ height: auto !important;
103
+ }
104
+ .refund-container {
105
+ padding: 0 23px;
106
+ padding-bottom: 27px;
107
+ .refund-list {
108
+ margin-left: 86px;
109
+ }
110
+ .refund-item {
111
+ margin-top: 30px;
112
+ color: #000;
113
+ line-height: 14px;
114
+
115
+ .title {
116
+ margin-right: 4px;
117
+ font-size: 14px;
118
+ font-weight: normal;
119
+ }
120
+ .value {
121
+ font-size: 16px;
122
+ font-weight: bold;
123
+ }
124
+ .special {
125
+ color: #FF595E;
126
+ font-weight: bold;
127
+ }
128
+ }
129
+ .tips {
130
+ margin-top: 35px;
131
+ font-size: 13px;
132
+ color: #666666;
133
+ letter-spacing: 0;
134
+ text-align: justify;
135
+ line-height: 25px;
136
+ font-weight: 400;
137
+ }
138
+ }
139
139
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["tplus-member/member/memberTab/MemberCardInfo.js"],"names":["MemberCardInfo","MemberCardInfoItem","props","label","value","list","title","memberList","keyName","storeKey","cardList","length","push","borderColor","map","item","position","transform"],"mappings":";;;;;;;;;;;;;;kBAawBA,c;;;;AAZxB;;;;;;AAGA,SAASC,kBAAT,CAA4BC,KAA5B,EAAmC;AAC/B,WACI;AAAA;AAAA;AACKA,cAAMC,KAAN,IAAe;AAAA;AAAA;AAAOD,kBAAMC,KAAN,IAAe;AAAtB,SADpB;AAEKD,cAAMC,KAAN,IAAe;AAAA;AAAA,cAAM,iBAAc,KAApB;AAAA;AAA4BD,kBAAME,KAAN,IAAe;AAA3C;AAFpB,KADJ;AAMH,C,CAXD;AAae,SAASJ,cAAT,CAAwBE,KAAxB,EAA+B;AAAA,eAC6BA,SAAS,EADtC;AAAA,yBAClCG,IADkC;AAAA,QAClCA,IADkC,6BAC7B,EAD6B;AAAA,QACzBC,KADyB,QACzBA,KADyB;AAAA,+BAClBC,UADkB;AAAA,QAClBA,UADkB,mCACP,EADO;AAAA,QACHC,OADG,QACHA,OADG;AAAA,QACMC,QADN,QACMA,QADN;AAAA,QACgBC,QADhB,QACgBA,QADhB;;AAE1CL,SAAKM,MAAL,GAAc,CAAd,IAAmBN,KAAKO,IAAL,CAAU,EAAV,CAAnB,CAF0C,CAER;AAClC,WACI;AAAA;AAAA;AACI,mBAAON,KADX;AAEI,sBAAU,KAFd;AAGI,uBAAU,kBAHd;AAII,uBAAW,EAAC,WAAW,CAAZ,EAJf;AAKI,uBAAW,EAACO,aAAa,SAAd;AALf;AAQQJ,qBAAa,eAAb,IAAgC,CAAC,CAACF,WAAWI,MAA7C,IAAuD;AAAA;AAAA,cAAK,WAAU,mBAAf;AAE/CN,iBAAKS,GAAL,CAAS,gBAAQ;AACb,uBACI,8BAAC,kBAAD,2BAAoB,KAAKN,UAAUO,KAAKZ,KAAxC,IAAmDY,IAAnD,EADJ;AAGH,aAJD,CAF+C;AAS/C,aAACR,WAAWI,MAAZ,IAAsB;AAAA;AAAA,kBAAG,WAAU,YAAb,EAA0B,OAAO,EAACK,UAAU,UAAX,EAAuBC,WAAW,iBAAlC,EAAjC;AAAA;AAAA;AATyB,SAR/D;AAuBQR,qBAAa,eAAb,IAAgC,CAAC,CAACC,SAASC,MAA3C,IAAqD;AAAA;AAAA,cAAK,WAAU,mBAAf;AAEjDN,iBAAKS,GAAL,CAAS,gBAAQ;AACb,uBACI,8BAAC,kBAAD,2BAAoB,KAAKN,UAAUO,KAAKZ,KAAxC,IAAmDY,IAAnD,EADJ;AAGH,aAJD,CAFiD;AASjD,aAACV,KAAKM,MAAN,IAAgB;AAAA;AAAA,kBAAG,WAAU,YAAb,EAA0B,OAAO,EAACK,UAAU,UAAX,EAAuBC,WAAW,kBAAlC,EAAjC;AAAA;AAAA;AATiC;AAvB7D,KADJ;AAyCH","file":"MemberCardInfo.js","sourcesContent":["// 卡信息组件\r\nimport React from 'react'\r\nimport { Card } from 'antd';\r\n\r\nfunction MemberCardInfoItem(props) {\r\n return (\r\n <div>\r\n {props.label && <span>{props.label || ''}</span>}\r\n {props.label && <span data-overflow='tip'>:{props.value || ''}</span>}\r\n </div>\r\n )\r\n}\r\n\r\nexport default function MemberCardInfo(props) {\r\n const { list=[], title, memberList=[], keyName, storeKey, cardList } = props || {}\r\n list.length % 2 && list.push({}); //奇数补全\r\n return (\r\n <Card \r\n title={title}\r\n bordered={false} \r\n className=\"card-member-card\"\r\n bodyStyle={{'padding': 0}}\r\n headStyle={{borderColor: '#C8C8CD'}}\r\n >\r\n {\r\n storeKey === 'memberManager' && !!memberList.length && <div className='member-info-table'>\r\n {\r\n list.map(item => { \r\n return (\r\n <MemberCardInfoItem key={keyName + item.label} {...item} />\r\n )\r\n })\r\n }\r\n {\r\n !memberList.length && <p className='empty-data' style={{position: 'relative', transform: 'translateY(5px)'}}>暂无数据~</p>\r\n }\r\n </div>\r\n }\r\n\r\n {\r\n storeKey === 'memberStorage' && !!cardList.length && <div className='member-info-table'>\r\n {\r\n list.map(item => { \r\n return (\r\n <MemberCardInfoItem key={keyName + item.label} {...item} />\r\n )\r\n })\r\n }\r\n {\r\n !list.length && <p className='empty-data' style={{position: 'relative', transform: 'translateY(10px)'}}>暂无数据~</p>\r\n }\r\n </div>\r\n \r\n }\r\n \r\n </Card>\r\n )\r\n}\r\n"]}
1
+ {"version":3,"sources":["tplus-member/member/memberTab/MemberCardInfo.js"],"names":["MemberCardInfo","MemberCardInfoItem","props","label","value","list","title","memberList","keyName","storeKey","cardList","length","push","borderColor","map","item","position","transform"],"mappings":";;;;;;;;;;;;;;kBAawBA,c;;;;AAZxB;;;;;;AAGA,SAASC,kBAAT,CAA4BC,KAA5B,EAAmC;AAC/B,WACI;AAAA;AAAA;AACKA,cAAMC,KAAN,IAAe;AAAA;AAAA;AAAOD,kBAAMC,KAAN,IAAe;AAAtB,SADpB;AAEKD,cAAMC,KAAN,IAAe;AAAA;AAAA,cAAM,iBAAc,KAApB;AAAA;AAA4BD,kBAAME,KAAN,IAAe;AAA3C;AAFpB,KADJ;AAMH,C,CAXD;AAae,SAASJ,cAAT,CAAwBE,KAAxB,EAA+B;AAAA,eAC6BA,SAAS,EADtC;AAAA,yBAClCG,IADkC;AAAA,QAClCA,IADkC,6BAC7B,EAD6B;AAAA,QACzBC,KADyB,QACzBA,KADyB;AAAA,+BAClBC,UADkB;AAAA,QAClBA,UADkB,mCACP,EADO;AAAA,QACHC,OADG,QACHA,OADG;AAAA,QACMC,QADN,QACMA,QADN;AAAA,QACgBC,QADhB,QACgBA,QADhB;;AAE1CL,SAAKM,MAAL,GAAc,CAAd,IAAmBN,KAAKO,IAAL,CAAU,EAAV,CAAnB,CAF0C,CAER;AAClC,WACI;AAAA;AAAA;AACI,mBAAON,KADX;AAEI,sBAAU,KAFd;AAGI,uBAAU,kBAHd;AAII,uBAAW,EAAC,WAAW,CAAZ,EAJf;AAKI,uBAAW,EAACO,aAAa,SAAd;AALf;AAQQJ,qBAAa,eAAb,IAAgC,CAAC,CAACF,WAAWI,MAA7C,IAAuD;AAAA;AAAA,cAAK,WAAU,mBAAf;AAE/CN,iBAAKS,GAAL,CAAS,gBAAQ;AACb,uBACI,8BAAC,kBAAD,2BAAoB,KAAKN,UAAUO,KAAKZ,KAAxC,IAAmDY,IAAnD,EADJ;AAGH,aAJD,CAF+C;AAS/C,aAACR,WAAWI,MAAZ,IAAsB;AAAA;AAAA,kBAAG,WAAU,YAAb,EAA0B,OAAO,EAACK,UAAU,UAAX,EAAuBC,WAAW,iBAAlC,EAAjC;AAAA;AAAA;AATyB,SAR/D;AAuBQR,qBAAa,eAAb,IAAgC,CAAC,CAACC,SAASC,MAA3C,IAAqD;AAAA;AAAA,cAAK,WAAU,mBAAf;AAEjDN,iBAAKS,GAAL,CAAS,gBAAQ;AACb,uBACI,8BAAC,kBAAD,2BAAoB,KAAKN,UAAUO,KAAKZ,KAAxC,IAAmDY,IAAnD,EADJ;AAGH,aAJD,CAFiD;AASjD,aAACV,KAAKM,MAAN,IAAgB;AAAA;AAAA,kBAAG,WAAU,YAAb,EAA0B,OAAO,EAACK,UAAU,UAAX,EAAuBC,WAAW,kBAAlC,EAAjC;AAAA;AAAA;AATiC;AAvB7D,KADJ;AAyCH","file":"MemberCardInfo.js","sourcesContent":["// 卡信息组件\nimport React from 'react'\nimport { Card } from 'antd';\n\nfunction MemberCardInfoItem(props) {\n return (\n <div>\n {props.label && <span>{props.label || ''}</span>}\n {props.label && <span data-overflow='tip'>:{props.value || ''}</span>}\n </div>\n )\n}\n\nexport default function MemberCardInfo(props) {\n const { list=[], title, memberList=[], keyName, storeKey, cardList } = props || {}\n list.length % 2 && list.push({}); //奇数补全\n return (\n <Card \n title={title}\n bordered={false} \n className=\"card-member-card\"\n bodyStyle={{'padding': 0}}\n headStyle={{borderColor: '#C8C8CD'}}\n >\n {\n storeKey === 'memberManager' && !!memberList.length && <div className='member-info-table'>\n {\n list.map(item => { \n return (\n <MemberCardInfoItem key={keyName + item.label} {...item} />\n )\n })\n }\n {\n !memberList.length && <p className='empty-data' style={{position: 'relative', transform: 'translateY(5px)'}}>暂无数据~</p>\n }\n </div>\n }\n\n {\n storeKey === 'memberStorage' && !!cardList.length && <div className='member-info-table'>\n {\n list.map(item => { \n return (\n <MemberCardInfoItem key={keyName + item.label} {...item} />\n )\n })\n }\n {\n !list.length && <p className='empty-data' style={{position: 'relative', transform: 'translateY(10px)'}}>暂无数据~</p>\n }\n </div>\n \n }\n \n </Card>\n )\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["tplus-member/member/memberTab/MemberManager.js"],"names":["TabPane","transform","Code","CardCode","Name","MemberTypeName","Mobilephone","Telephone","StoreName","sex","BirthDate","TotalIntegral","BalanceIntegral","BalanceStorage","TotalStorage","TotalBegin","EffectiveDate","ExpirationDate","UmemberOpenId","UmemberLabel","MemberCouponTitle","Memo","validMethodEnum","LONG_PERIOD","ASSIGNMENT_PERIOD","cardStatusEnumList","ENABLED","DISABLED","UNBINDING","BINDING","INVALIDATION","EXPIRED","REFUNDING_CARD","REFUNDED_CARD","memberManager","observer","props","stores","user","options","get","IsEnableUMember","state","defaultActiveKey","storeKey","onChange","memberInfoEle","title","key","rmecommendEle","recentlyEle","memberCardInfoEle","Component","tabHeadHeight","dataClear","keys","values","columnInfo","regKey","dataSource","forEach","index","includes","find","v","FieldName","label","Title","push","value","filter","loadRecentlyMore","findMemberLastRetailDetailList","member","memberTabHeight","memberList","precisionInfo","getMemberStateStamp","DynamicPropertyKeys","DynamicPropertyValues","MemberType","Sex","isExpiration","Uid","isUserLogout","MemberState","Store","priuserdefData","isUMember","isUMemberShow","memberValues","memberInfos","memberTabContentHeight","hasMemberInfo","some","enumController","getEnumOj","Differentiate","CC_NOT_DISPLAY","COUPON","isHaveCCNot","item","memberValue","precision","undefined","dataItem","length","map","formatValue","formatDateKeys","iconItems","height","position","recommend","recommends","memberInfo","record","like","initEmpty","Value","recommendInfoHeight","haveRecord","every","console","log","emptyRecommend","emptyData","showInfos","recordFilter","name","recommendHeight","lastRetailLoading","lastRetailTotal","lastRetailList","theadHeight","tableHeight","data","vlaue","i","findIndex","code","Time","rest","itemValue","date","itemData","sort","a","b","Amount","textAlign","Number","Quantity","cardInfo","cardTypeEnumList","memberCardInfos","StorageCardNo","CardTypeEnum","ValidMethodEnum","DueDate","CardStatusEnum","IsSale","overflowY","list"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;IAEQA,O,kBAAAA,O;;;AAER,IAAIC,YAAY;AACZC,UAAM,MADM;AAEZC,cAAU,MAFE;AAGZC,UAAM,MAHM;AAIZC,oBAAgB,MAJJ;AAKZC,iBAAa,KALD;AAMZC,eAAW,MANC;AAOZC,eAAU,MAPE;AAQZC,SAAK,IARO;AASZC,eAAW,MATC;AAUZC,mBAAe,MAVH;AAWZC,qBAAiB,MAXL;AAYZC,oBAAgB,OAZJ;AAaZC,kBAAc,MAbF,EAaU;AACtBC,gBAAY,MAdA;AAeZC,mBAAe,MAfH;AAgBZC,oBAAgB,MAhBJ;AAiBZC,mBAAe,SAjBH;AAkBZC,kBAAc,MAlBF;AAmBZC,uBAAmB,KAnBP;AAoBZC,UAAM;AApBM,CAAhB;;AAwBA;AACA,IAAMC,kBAAkB;AACpBC,iBAAa,MADO;AAEpBC,uBAAmB;;AAGvB;AALwB,CAAxB,CAMA,IAAMC,qBAAqB;AACvBC,aAAS,KADc;AAEvBC,cAAU,KAFa;AAGvBC,eAAW,KAHY;AAIvBC,aAAS,KAJc;AAKvBC,kBAAc,KALS;AAMvBC,aAAS,KANc;AAOvBC,oBAAgB,KAPO;AAQvBC,mBAAe;AARQ,CAA3B;;IAYqBC,a,OADpBC,mB;;;AAGG,2BAAaC,KAAb,EAAoB;AAAA;;AAAA,wJACVA,KADU;;AAAA;;AAAA,mBAEYC,uBAAOC,IAAP,CAAYC,OAAZ,CAAoBC,GAApB,CAAwB,WAAxB,KAAwC,EAFpD;AAAA,YAERC,eAFQ,QAERA,eAFQ;;AAGhB,cAAKC,KAAL,GAAa,EAAED,iBAAiB,CAAC,CAACA,eAArB,EAAb;AAHgB;AAInB;;AAaD;;;AAMA;;;AAoFA;;;AAuCA;;;AAsEA;;;;;iCAqCS;AAAA,yBACuC,KAAKL,KAD5C;AAAA,+CACEO,gBADF;AAAA,gBACEA,gBADF,yCACqB,GADrB;AAAA,gBAC0BC,QAD1B,UAC0BA,QAD1B;;AAEL,mBACE;AAAA;AAAA;AACE,sCAAkBD,gBADpB;AAEE,8BAAU,KAAKP,KAAL,CAAWS,QAFvB;AAGE,+BAAU;AAHZ;AAKI,qBAAKC,aAAL,CAAmB,EAAEC,OAAO,MAAT,EAAiBC,KAAK,GAAtB,EAAnB,CALJ;AAMI,qBAAKC,aAAL,CAAmB,EAAEF,OAAO,MAAT,EAAiBC,KAAK,GAAtB,EAAnB,CANJ;AAOI,qBAAKE,WAAL,CAAiB,EAAEH,OAAO,MAAT,EAAiBC,KAAK,GAAtB,EAAjB,CAPJ;AAQI,qBAAKG,iBAAL,CAAuB,EAACJ,OAAO,KAAR,EAAe,OAAO,GAAtB,EAAvB;AARJ,aADF;AAYH;;;EA7QsCK,gB;;;SACvCC,a,GAAgB,E;;SAMhBC,S,GAAY,UAACC,IAAD,EAAOC,MAAP,EAAeC,UAAf,EAA8B;AACtC,YAAMC,SAAS,YAAf;AACA,YAAMC,aAAa,EAAnB;AACAJ,aAAKK,OAAL,CAAa,UAACZ,GAAD,EAAMa,KAAN,EAAgB;AACzB,gBAAIb,IAAIc,QAAJ,CAAaJ,MAAb,CAAJ,EAA0B;AAAA,4BACHD,WAAWM,IAAX,CAAgB;AAAA,2BAAKC,EAAEC,SAAF,KAAgBjB,GAArB;AAAA,iBAAhB,KAA6C,EAD1C;AAAA,oBACZkB,KADY,SACnBC,KADmB;;AAE1BR,2BAAWS,IAAX,CAAgB,EAACpB,QAAD,EAAMqB,OAAOb,OAAOK,KAAP,CAAb,EAA4BK,YAA5B,EAAhB;AACC;AACJ,SALD;AAMA,eAAOP,WAAWW,MAAX,CAAkB;AAAA,mBAAKN,EAAEE,KAAP;AAAA,SAAlB,CAAP;AACH,K;;SAGDK,gB,GAAmB,YAAM;AAAA,YACbC,8BADa,GACsB,OAAKpC,KAD3B,CACboC,8BADa;;AAErBA,0CAAkCA,+BAA+B,EAA/B,CAAlC;AACH,K;;SAGD1B,a,GAAgB,iBAAoB;AAAA,YAAjBC,KAAiB,SAAjBA,KAAiB;AAAA,YAAVC,GAAU,SAAVA,GAAU;AAAA,sBAC+E,OAAKZ,KADpF;AAAA,qCAC5BqC,MAD4B;AAAA,YAC5BA,MAD4B,kCACnB,EADmB;AAAA,YACfC,eADe,WACfA,eADe;AAAA,yCACEC,UADF;AAAA,YACEA,UADF,sCACe,EADf;AAAA,yCACmBlB,UADnB;AAAA,YACmBA,UADnB,sCACgC,EADhC;AAAA,4CACoCmB,aADpC;AAAA,YACoCA,aADpC,yCACoD,EADpD;AAAA,YACwDC,mBADxD,WACwDA,mBADxD;AAAA,YAE7BpC,eAF6B,GAEV,OAAKC,KAFK,CAE7BD,eAF6B;AAAA,oCAI4EgC,MAJ5E,CAG5BK,mBAH4B;AAAA,YAG5BA,mBAH4B,yCAGN,EAHM;AAAA,qCAI4EL,MAJ5E,CAGFM,qBAHE;AAAA,YAGFA,qBAHE,0CAGsB,EAHtB;AAAA,oCAI4EN,MAJ5E,CAG0BxD,cAH1B;AAAA,YAG0BA,cAH1B,yCAG2C,EAH3C;AAAA,iCAI4EwD,MAJ5E,CAG+CO,UAH/C;AAAA,gEAGsF,EAHtF;AAAA,YAGmE3E,cAHnE,sBAG6DD,IAH7D;AAAA,0BAI4EqE,MAJ5E,CAIhCQ,GAJgC;AAAA,kDAIX,EAJW;AAAA,YAInBxE,GAJmB,eAIzBL,IAJyB;AAAA,YAIP8E,YAJO,GAI4ET,MAJ5E,CAIPS,YAJO;AAAA,YAIOC,GAJP,GAI4EV,MAJ5E,CAIOU,GAJP;AAAA,YAIYC,YAJZ,GAI4EX,MAJ5E,CAIYW,YAJZ;AAAA,YAI0BC,WAJ1B,GAI4EZ,MAJ5E,CAI0BY,WAJ1B;AAAA,4BAI4EZ,MAJ5E,CAIuCa,KAJvC;AAAA,sDAIqE,EAJrE;AAAA,YAIuD9E,SAJvD,iBAIgDJ,IAJhD;;AAKpC,YAAImF,iBAAiB,OAAKjC,SAAL,CAAewB,mBAAf,EAAoCC,qBAApC,EAA2DtB,UAA3D,CAArB;AACA,YAAM+B,YAAY/C,mBAAmB0C,MAAM,CAA3C,CANoC,CAMU;AAC9C,YAAMM,gBAAgB,CAAC,eAAD,EAAkB,cAAlB,EAAkC,mBAAlC,CAAtB;AACA,YAAMC,wCAAiBrF,8BAAjB,EAAiCI,QAAjC,EAAsCD,oBAAtC,IAAsDiE,MAAtD,CAAN;AACA,YAAMkB,cAAc,EAApB;AACA,YAAMC,yBAAyBlB,kBAAkB,OAAKrB,aAAtD;AACA,YAAMwC,gBAAgB,oBAAYH,YAAZ,EAA0BI,IAA1B,CAA+B;AAAA,mBAAKJ,aAAa1B,CAAb,CAAL;AAAA,SAA/B,CAAtB;;AAXoC,oCAYV+B,4BAAeC,SAAf,EAZU;AAAA,YAY5BC,aAZ4B,yBAY5BA,aAZ4B;;AAcpC,YAAMC,iBAAiB,CAAC,MAAD,EAAS,gBAAT,EAA2B,eAA3B,EAA4C,cAA5C,CAAvB;;AAEAjG,kBAAUmB,iBAAV,GAA8B6E,cAAcE,MAA5C;AACAlG,kBAAUI,cAAV,GAA2B4F,cAAc5F,cAAzC;AACA,4BAAYJ,SAAZ,EAAuB2D,OAAvB,CAA+B,aAAK;AAChC;AACA,gBAAMwC,cAAeF,eAAenC,IAAf,CAAoB;AAAA,uBAAQsC,QAAQrC,CAAhB;AAAA,aAApB,CAArB;AACA,gBAAIoC,WAAJ,EAAiB;AACjB,gBAAME,cAAcZ,aAAa1B,CAAb,CAApB;AACA,gBAAMuC,YAAY3B,cAAcZ,CAAd,CAAlB;AACA;AACA,gBAAIK,QAAQ,CAAC,CAACkC,SAAF,GAAeV,gBAAgB,4BAAgBS,WAAhB,EAA6BC,SAA7B,CAAhB,GAA0DC,SAAzE,GAAsFF,WAAlG;AACCtC,kBAAM,eAAP,KAA4BK,QAAQiC,cAAc,KAAd,GAAsB,KAA1D;AACA,gBAAMG,WAAW,EAAEvC,YAAUjE,UAAU+D,CAAV,CAAZ,EAA4BK,YAA5B,EAAjB;AACAsB,wBAAYvB,IAAZ,CAAiBqC,QAAjB;AACH,SAXD;;AAaA;AACA,YAAIlB,kBAAkBA,eAAemB,MAAf,GAAwB,CAA9C,EAAiD;AAC7CnB,2BAAeoB,GAAf,CAAmB,gBAAQ;AAAA,4BACFN,QAAQ,EADN;AAAA,oBACjBrD,GADiB,SACjBA,GADiB;AAAA,oBACZqB,KADY,SACZA,KADY;;AAEvB,oBAAIkC,YAAY3B,cAAc5B,GAAd,CAAhB;AACAqD,qBAAK,OAAL,IAAgB,CAAC,CAACE,SAAF,GAAc,4BAAgBlC,KAAhB,EAAuBkC,SAAvB,CAAd,GAAkDlC,KAAlE;AACH,aAJD;AAKH;;AAEDsB,oBAAYvB,IAAZ,qDAAoBmB,cAApB,GAxCoC,CAwCA;AACpCI,oBAAYe,MAAZ,GAAqB,CAArB,IAA0Bf,YAAYvB,IAAZ,CAAiB,EAAjB,CAA1B,CAzCoC,CAyCY;AAChD,YAAMwC,cAAc,SAAdA,WAAc,CAAC1C,KAAD,EAAQG,KAAR,EAAkB;AAClC,gBAAMwC,iBAAiB,CAAC,MAAD,EAAS,MAAT,EAAiB,MAAjB,CAAvB;AACA,gBAAIA,eAAe/C,QAAf,CAAwBI,KAAxB,CAAJ,EAAoC;AACpC,uBAAO,uBAAWG,KAAX,CAAP;AACC,aAFD,MAEO;AACP,uBAAOA,KAAP;AACC;AACJ,SAPD;AAQA;AACA,YAAIyC,YAAYjC,oBAAoBJ,MAApB,CAAhB;AACA,eACI;AAAC,mBAAD;AAAA,cAAS,KAAK1B,KAAd,EAAqB,KAAKC,GAA1B;AACA;AAAA;AAAA,kBAAK,OAAO,EAAE+D,QAAQnB,sBAAV,EAAkCoB,UAAU,UAA5C,EAAZ;AACI;AAAC,qDAAD;AAAA,sBAAa,QAAQpB,sBAArB,EAA6C,gBAAgB,0BAAI,CAAE,CAAnE,EAAqE,gBAArE;AAEI,qBAAC,CAACjB,WAAW+B,MAAb,IAAuB;AAAA;AAAA,0BAAK,WAAU,mBAAf;AAEnBf,oCAAYgB,GAAZ,CAAgB,UAACN,IAAD,EAAOxC,KAAP;AAAA,mCAAiB;AAAA;AAAA,kCAAK,KAAKA,KAAV;AAChCwC,qCAAKnC,KAAL,IAAc;AAAA;AAAA;AAAOmC,yCAAKnC,KAAL,IAAc;AAArB,iCADkB;AAEhCmC,qCAAKnC,KAAL,IAAc;AAAA;AAAA,sCAAM,iBAAc,KAApB;AAAA;AAA4B0C,gDAAYP,KAAKnC,KAAjB,EAAwBmC,KAAKhC,KAA7B;AAA5B;AAFkB,6BAAjB;AAAA,yBAAhB,CAFmB;AAQnB,yBAACsB,YAAYe,MAAb,IAAuB;AAAA;AAAA,8BAAG,WAAU,YAAb;AAAA;AAAA;AARJ,qBAF3B;AAeI,qBAAC/B,WAAW+B,MAAZ,IAAsB,uCAAK,WAAU,2BAAf;AAf1B,iBADJ;AAoBII,6BAAaA,UAAUJ,MAAV,GAAmB,CAAhC,IACA;AAAA;AAAA,sBAAK,WAAU,0BAAf;AACKI;AADL;AArBJ;AADA,SADJ;AA6BC,K;;SAGD7D,a,GAAgB,iBAAoB;AAAA,YAAjBF,KAAiB,SAAjBA,KAAiB;AAAA,YAAVC,GAAU,SAAVA,GAAU;AAAA,sBAC0E,OAAKZ,KAD/E;AAAA,wCAC9B6E,SAD8B;AAAA,YACnBC,UADmB,qCACN,EADM;AAAA,yCACFC,UADE;AAAA,gEACuC,EADvC;AAAA,uDACYC,MADZ;AAAA,YACYA,MADZ,yCACqB,EADrB;AAAA,uDACyBC,IADzB;AAAA,YACyBA,IADzB,yCACgC,EADhC;AAAA,YAC2C3C,eAD3C,WAC2CA,eAD3C;AAAA,YAC4D4C,SAD5D,WAC4DA,SAD5D;;AAEpCJ,qBAAaA,WAAW5C,MAAX,CAAkB;AAAA,mBAAKN,CAAL;AAAA,SAAlB,CAAb;AACAkD,mBAAW9C,IAAX,CAAgB,EAAEhE,MAAM,MAAR,EAAgBmH,OAAOF,IAAvB,EAAhB;AACA,YAAMG,sBAAsB,EAA5B;AACA,YAAM5B,yBAAyBlB,kBAAkB,OAAKrB,aAAtD;AACA,YAAMoE,aAAa,CAAC,CAACL,OAAOV,MAAT,IAAmBU,OAAOM,KAAP,CAAa;AAAA,mBAAK,CAAC,EAAE1D,KAAKA,EAAEK,KAAT,CAAN;AAAA,SAAb,CAAtC;AACAsD,gBAAQC,GAAR,CAAY,uBAAZ,EAAqCV,UAArC;AACA,YAAMW,iBAAiBX,WAAWQ,KAAX,CAAiB;AAAA,mBAAK,CAAC,CAAE1D,KAAKA,EAAEuD,KAAR,IAAkB,EAAnB,EAAuBb,MAA7B;AAAA,SAAjB,IAAyD;AAAA;AAAA,cAAK,WAAU,YAAf;AAAA;AAAA,SAAzD,GAAmG,IAA1H;AACA,YAAMoB,YAAa,CAACL,UAAD,IAAeP,WAAWQ,KAAX,CAAiB;AAAA,mBAAK,CAAC,CAAE1D,KAAKA,EAAEuD,KAAR,IAAkB,EAAnB,EAAuBb,MAA7B;AAAA,SAAjB,CAAhB,GAAyE,uCAAK,WAAU,2BAAf,GAAzE,GAAyH,IAA3I;AACA,YAAMqB,YAAY,CAAC,QAAD,EAAW,IAAX,EAAiB,OAAjB,CAAlB;AACA,YAAMC,eAAeZ,OAAO9C,MAAP,CAAc;AAAA,mBAAKyD,UAAUjE,QAAV,CAAmBE,EAAEiE,IAArB,CAAL;AAAA,SAAd,CAArB;AACA,YAAMC,kBAAkBT,aAAa7B,yBAAyB4B,mBAAtC,GAA4D5B,sBAApF;AACA,eAAO;AAAC,mBAAD;AAAA,cAAS,KAAK7C,KAAd,EAAqB,KAAKC,GAA1B;AACH;AAAA;AAAA,kBAAK,WAAU,eAAf,EAA+B,OAAO,EAAC+D,QAAQnB,sBAAT,EAAtC;AACC6B,8BAAc;AAAA;AAAA,sBAAK,WAAU,gBAAf;AACVO,iCAAarB,GAAb,CAAiB,UAACN,IAAD,EAAOrD,GAAP;AAAA,+BAAe;AAAA;AAAA,8BAAM,KAAKA,GAAX;AAAiBqD,iCAAK4B,IAAtB;AAAA;AAA8B5B,iCAAKhC;AAAnC,yBAAf;AAAA,qBAAjB;AADU,iBADf;AAIA;AAAA;AAAA,sBAAK,WAAU,mBAAf,EAAmC,OAAO,EAAC0C,QAAQmB,eAAT,EAA1C;AACA;AAAC,yDAAD;AAAA,0BAAa,QAAQA,eAArB,EAAsC,KAAKA,eAA3C;AACKhB,mCAAWP,GAAX,CAAe,UAACN,IAAD,EAAOxC,KAAP,EAAiB;AACjC,gCAAI,CAAC,CAACwC,KAAKkB,KAAL,IAAc,EAAf,EAAmBb,MAAxB,EAAgC,OAAO,IAAP;AAChC,mCAAO;AAAA;AAAA,kCAAK,KAAK7C,KAAV,EAAiB,WAAU,gBAA3B;AACH;AAAA;AAAA;AAAKwC,yCAAKjG;AAAV,iCADG;AAEH,8DAAC,8BAAD;AACA,0CAAMiG,KAAKkB,KAAL,IAAc,EADpB;AAEA,8CAAU;AAFV;AAFG,6BAAP;AAOC,yBATA;AADL,qBADA;AAaKD,iCAAaO;AAblB,iBAJA;AAmBCP,6BAAaQ;AAnBd;AADG,SAAP;AAuBC,K;;SAGD5E,W,GAAc,iBAAoB;AAAA,YAAjBH,KAAiB,SAAjBA,KAAiB;AAAA,YAAVC,GAAU,SAAVA,GAAU;AAAA,sBACiE,OAAKZ,KADtE;AAAA,YACvBsC,eADuB,WACvBA,eADuB;AAAA,4CACNyD,iBADM;AAAA,YACNA,iBADM,yCACc,KADd;AAAA,4CACqBC,eADrB;AAAA,YACqBA,eADrB,yCACuC,CADvC;AAAA,4CAC0CC,cAD1C;AAAA,YAC0CA,cAD1C,yCAC2D,EAD3D;;AAE9B,YAAMC,cAAc,EAApB;AACA,YAAMC,cAAc7D,kBAAkB,OAAKrB,aAA3C;AACA,YAAMM,aAAa,EAAnB;AACA,YAAM6E,OAAOH,cAAb;AACAG,aAAK5E,OAAL,CAAa,UAAC6E,KAAD,EAAQC,CAAR,EAAc;AAC3B,gBAAM7E,QAAQF,WAAWgF,SAAX,CAAqB;AAAA,uBAAK3E,EAAE4E,IAAF,KAAWH,MAAMvI,IAAtB;AAAA,aAArB,CAAd;AACA,gBAAI,CAAC2D,KAAL,EAAY;AACRF,2BAAWE,KAAX,EAAkB2E,IAAlB,CAAuBpE,IAAvB,CAA4BqE,KAA5B;AACH,aAFD,MAEO;AAAA,4BAC6BA,SAAS,EADtC;AAAA,oBACKI,IADL,SACKA,IADL;AAAA,oBACW3I,IADX,SACWA,IADX;AAAA,oBACoB4I,IADpB;;AAEH,oBAAMC,YAAY,EAAEC,MAAMH,IAAR,EAAcD,MAAM1I,IAApB,EAA0BsI,MAAM,CAACM,IAAD,CAAhC,EAAlB;AACAnF,2BAAWS,IAAX,CAAgB2E,SAAhB;AACH;AACA,SATD;;AAWApF,mBAAWC,OAAX,CAAmB,iBAAS;AAC5B;AACA,gBAAMqF,WAAW5E,MAAMmE,IAAvB;AACA,gBAAIS,SAASvC,MAAT,GAAkB,CAAtB,EAAyB;AACrBuC,yBAASC,IAAT,CAAc;AAAA,wBAACC,CAAD,uEAAK,EAAL;AAAA,wBAASC,CAAT,uEAAa,EAAb;AAAA,2BAAoBA,EAAEC,MAAF,GAAWF,EAAEE,MAAjC;AAAA,iBAAd;AACH;AACA,SAND;;AAQA,eAAO;AAAC,mBAAD;AAAA,cAAS,KAAKtG,KAAd,EAAqB,KAAKC,GAA1B;AACN,aAAC,CAACW,WAAW+C,MAAb,IAAuB;AAAA;AAAA,kBAAK,WAAU,cAAf;AACpB;AAAA;AAAA,sBAAO,WAAU,OAAjB;AACA;AAAA;AAAA;AACI;AAAA;AAAA;AACA;AAAA;AAAA,kCAAI,OAAM,KAAV;AAAA;AAAA,6BADA;AAEA;AAAA;AAAA,kCAAI,OAAM,KAAV;AAAA;AAAA,6BAFA;AAGA;AAAA;AAAA,kCAAI,OAAM,KAAV,EAAgB,OAAO,EAAC4C,WAAW,QAAZ,EAAvB;AAAA;AAAA,6BAHA;AAIA;AAAA;AAAA,kCAAI,OAAM,KAAV,EAAgB,WAAU,aAA1B;AAAA;AAAA;AAJA;AADJ,qBADA;AASA;AAAA;AAAA,0BAAO,OAAO,EAACvC,QAAQwB,cAAcD,WAAd,GAA4B,EAArC,EAAd;AACI;AAAC,6DAAD;AAAA,8BAAa,gBAAgB,0BAAI,CAAE,CAAnC;AACC3E,uCAAWgD,GAAX,CAAe,UAACN,IAAD,EAAOrD,GAAP,EAAe;AAC3B,uCAAOqD,KAAKmC,IAAL,CAAU7B,GAAV,CAAc,UAAC3C,CAAD,EAAI0E,CAAJ;AAAA,2CACrB;AAAA;AAAA,0CAAI,KAAKA,CAAT;AACK,yCAACA,CAAD,GACD;AAAA;AAAA,8CAAI,WAAWrC,KAAKmC,IAAL,CAAU9B,MAAV,KAAqB,CAArB,GAAyB,eAAzB,GAA2C,EAA1D;AAA+D,mEAAWL,KAAK2C,IAAhB;AAA/D,yCADC,GAGD,sCAAI,WAAW3C,KAAKmC,IAAL,CAAU9B,MAAV,GAAmB,CAAnB,KAAyBgC,CAAzB,GAA6B,aAA7B,GAA6C,EAA5D,GAJJ;AAMI;AAAA;AAAA,8CAAI,iBAAc,KAAlB;AACC1E,8CAAE5D,IADH;AAGImJ,mDAAOvF,EAAEqF,MAAT,IAAmB,CAAnB,IAAwB;AAAA;AAAA,kDAAG,WAAU,KAAb;AAAA;AAAA;AAH5B,yCANJ;AAYI;AAAA;AAAA,8CAAI,iBAAc,KAAlB,EAAwB,OAAO,EAACC,WAAW,QAAZ,EAA/B;AAAuDtF,8CAAEwF;AAAzD,yCAZJ;AAaI;AAAA;AAAA,8CAAI,iBAAc,KAAlB;AAAyBxF,8CAAEqF;AAA3B;AAbJ,qCADqB;AAAA,iCAAd,CAAP;AAiBH,6BAlBA;AADD;AADJ;AATA;AADoB,aADjB;AAoCN,aAAC1F,WAAW+C,MAAZ,IAAsB;AAAA;AAAA,kBAAK,OAAO,EAACK,QAAQwB,WAAT,EAAsBvB,UAAU,UAAhC,EAAZ;AAAyD;AAAA;AAAA,sBAAK,WAAU,2BAAf;AAA2C;AAAA;AAAA,0BAAK,WAAU,UAAf;AAAA;AAAA;AAA3C;AAAzD,aApChB;AAsCLoB,+BAAmBC,eAAe3B,MAAlC,IAA4C;AAAA;AAAA,kBAAK,WAAU,aAAf;AAC9C;AAAA;AAAA,sBAAQ,MAAK,MAAb,EAAoB,SAASyB,iBAA7B,EAAgD,WAAU,eAA1D,EAA0E,SAAS,OAAK5D,gBAAxF;AAAA;AAAA;AAD8C;AAtCvC,SAAP;AA0CH,K;;SAGDpB,iB,GAAoB,iBAAoB;AAAA,YAAjBJ,KAAiB,SAAjBA,KAAiB;AAAA,YAAVC,GAAU,SAAVA,GAAU;AAAA,sBACgE,OAAKZ,KADrE;AAAA,qCAC5BqC,MAD4B;AAAA,YAC5BA,MAD4B,kCACnB,EADmB;AAAA,YACfC,eADe,WACfA,eADe;AAAA,yCACEC,UADF;AAAA,YACEA,UADF,sCACe,EADf;AAAA,uCACmB8E,QADnB;AAAA,YACmBA,QADnB,oCAC8B,EAD9B;AAAA,YACkCC,gBADlC,WACkCA,gBADlC;AAAA,YACoD9G,QADpD,WACoDA,QADpD;;AAEpC,YAAMgD,yBAAyBlB,kBAAkB,OAAKrB,aAAtD;AACA,YAAMsG,kBAAkB,EAAxB;;AAEAF,iBAAS9C,GAAT,CAAa,gBAAQ;AAAA,gBACTiD,aADS,GACqHvD,IADrH,CACTuD,aADS;AAAA,gBACMxJ,IADN,GACqHiG,IADrH,CACMjG,IADN;AAAA,qCACqHiG,IADrH,CACYvF,YADZ;AAAA,gBACYA,YADZ,sCAC2B,CAD3B;AAAA,uCACqHuF,IADrH,CAC8BxF,cAD9B;AAAA,gBAC8BA,cAD9B,wCAC+C,CAD/C;AAAA,gBACkDgJ,YADlD,GACqHxD,IADrH,CACkDwD,YADlD;AAAA,gBACgEC,eADhE,GACqHzD,IADrH,CACgEyD,eADhE;AAAA,gBACiFC,OADjF,GACqH1D,IADrH,CACiF0D,OADjF;AAAA,gBAC0FC,cAD1F,GACqH3D,IADrH,CAC0F2D,cAD1F;AAAA,gBAC0GC,MAD1G,GACqH5D,IADrH,CAC0G4D,MAD1G;;AAEjB,gBAAMtG,aAAa,CACf,EAAEO,OAAO,KAAT,EAAgBG,OAAOjE,IAAvB,EADe,EAEf,EAAE8D,OAAO,IAAT,EAAeG,OAAOuF,aAAtB,EAFe,EAGf,EAAE1F,OAAO,KAAT,EAAgBG,OAAOqF,iBAAiBG,YAAjB,CAAvB,EAHe,EAIf,EAAE3F,OAAO,MAAT,EAAiBG,OAAOyF,oBAAoB,aAApB,GAAoC,MAApC,GAA6C,uBAAWC,OAAX,CAArE,EAJe,EAKf,EAAE7F,OAAO,MAAT,EAAiBG,OAAO,4BAAgB4F,WAAW,MAAX,IAAsBJ,iBAAiB,cAAvC,GAAwD/I,YAAxD,GAAuE,CAAvF,EAA0F,CAA1F,CAAxB,EALe,EAMf,EAAEoD,OAAO,MAAT,EAAiBG,OAAO,4BAAgB4F,WAAW,MAAX,IAAsBJ,iBAAiB,cAAvC,GAAwDhJ,cAAxD,GAAyE,CAAzF,EAA4F,CAA5F,CAAxB,EANe,EAOf,EAAEqD,OAAO,KAAT,EAAgBG,OAAO5C,mBAAmBuI,cAAnB,CAAvB,EAPe,CAAnB;AASAL,4BAAgBvF,IAAhB,CAAqBT,UAArB;AACH,SAZD;;AAcA,eACI;AAAC,mBAAD;AAAA,cAAS,KAAKZ,QAAQ,GAAR,GAAa0G,SAAS/C,MAAtB,GAA8B,GAA5C,EAAiD,KAAK1D,GAAtD;AACI;AAAA;AAAA,kBAAK,OAAO,EAAE+D,QAAQnB,sBAAV,EAAkCoB,UAAU,UAA5C,EAAuDkD,WAAW,MAAlE,EAAZ;AACI;AAAC,qDAAD;AAAA,sBAAa,QAAQtE,sBAArB,EAA6C,gBAAgB,0BAAI,CAAE,CAAnE;AAEI,qBAAC,CAAC6D,SAAS/C,MAAX,IACIiD,gBAAgBhD,GAAhB,CAAoB,UAACwD,IAAD,EAAOtG,KAAP;AAAA,+BAAiB,8BAAC,wBAAD,IAAgB,MAAMsG,IAAtB,EAA4B,OAAOtG,KAAnC,EAA0C,KAAK,OAAOA,QAAQ,CAAf,CAA/C,EAAkE,OAAO,OAAOA,QAAQ,CAAf,CAAzE,EAA4F,SAAQ,iBAApG,EAAsH,YAAYc,UAAlI,EAA8I,UAAU/B,QAAxJ,GAAjB;AAAA,qBAApB,CAHR;AAMI,qBAAC6G,SAAS/C,MAAV,IAAoB,uCAAK,WAAU,2BAAf;AANxB;AADJ;AADJ,SADJ;AAeH,K;;;kBA7PgBxE,a","file":"MemberManager.js","sourcesContent":["import React, { Component } from 'react';\r\nimport { Tabs, Button } from 'antd';\r\nimport { observer } from 'mobx-react';\r\nimport { stores, localStore } from 'mutants-microfx';\r\nimport { TouchScroll, CardList } from 'tplus-components-touch';\r\nimport { formatPrecision, dateFormat } from '../../utils';\r\nimport { enumController, platform } from 'mutants-util';\r\nimport MemberCardInfo from './MemberCardInfo'\r\n\r\nconst { TabPane } = Tabs;\r\n\r\nlet transform = {\r\n Code: '会员编号',\r\n CardCode: '会员卡号',\r\n Name: '会员姓名',\r\n MemberTypeName: '会员类型',\r\n Mobilephone: '手机号',\r\n Telephone: '联系电话',\r\n StoreName:'开卡门店',\r\n sex: '性别',\r\n BirthDate: '出生日期',\r\n TotalIntegral: '累计积分',\r\n BalanceIntegral: '积分余额',\r\n BalanceStorage: '当前总余额',\r\n TotalStorage: '储值总额', // 字段存疑\r\n TotalBegin: '期初余额',\r\n EffectiveDate: '生效日期',\r\n ExpirationDate: '失效日期',\r\n UmemberOpenId: '是否关注微信号',\r\n UmemberLabel: '会员标签',\r\n MemberCouponTitle: '优惠券',\r\n Memo: '备注',\r\n};\r\n\r\n\r\n// 有效期类型\r\nconst validMethodEnum = {\r\n LONG_PERIOD: '长期有效',\r\n ASSIGNMENT_PERIOD: '指定有效期'\r\n}\r\n\r\n// 卡状态\r\nconst cardStatusEnumList = {\r\n ENABLED: \"已启用\", \r\n DISABLED: \"已停用\",\r\n UNBINDING: \"待绑定\",\r\n BINDING: \"已绑定\",\r\n INVALIDATION: \"已作废\",\r\n EXPIRED: \"已过期\",\r\n REFUNDING_CARD: \"退卡中\",\r\n REFUNDED_CARD: \"已退卡\"\r\n}\r\n\r\n@observer\r\nexport default class memberManager extends Component {\r\n tabHeadHeight = 37;\r\n constructor (props) {\r\n super(props)\r\n const { IsEnableUMember } = stores.user.options.get('loginInfo') || {};\r\n this.state = { IsEnableUMember: !!IsEnableUMember };\r\n }\r\n dataClear = (keys, values, columnInfo) => {\r\n const regKey = 'priuserdef';\r\n const dataSource = [];\r\n keys.forEach((key, index) => {\r\n if (key.includes(regKey)) {\r\n const {Title: label} = columnInfo.find(v => v.FieldName === key) || {};\r\n dataSource.push({key, value: values[index], label});\r\n }\r\n });\r\n return dataSource.filter(v => v.label);\r\n }\r\n\r\n // 点击购买记录加载更多按钮\r\n loadRecentlyMore = () => {\r\n const { findMemberLastRetailDetailList } = this.props\r\n findMemberLastRetailDetailList && findMemberLastRetailDetailList(50)\r\n }\r\n\r\n // 会员信息\r\n memberInfoEle = ({ title, key }) => {\r\n const { member = {}, memberTabHeight, memberList = [], columnInfo = [], precisionInfo = {}, getMemberStateStamp} = this.props;\r\n const {IsEnableUMember} = this.state;\r\n const { DynamicPropertyKeys = [], DynamicPropertyValues = [], ExpirationDate = '', MemberType: { Name: MemberTypeName } = {},\r\n Sex: { Name: sex } = {}, isExpiration, Uid, isUserLogout, MemberState, Store: { Name : StoreName } = {} } = member;\r\n let priuserdefData = this.dataClear(DynamicPropertyKeys, DynamicPropertyValues, columnInfo);\r\n const isUMember = IsEnableUMember && Uid > 0; // 判断为u会员\r\n const isUMemberShow = ['UmemberOpenId', 'UmemberLabel', 'MemberCouponTitle'];\r\n const memberValues = { MemberTypeName, sex, StoreName , ...member};\r\n const memberInfos = [];\r\n const memberTabContentHeight = memberTabHeight - this.tabHeadHeight;\r\n const hasMemberInfo = Object.keys(memberValues).some(v => memberValues[v]);\r\n const { Differentiate } = enumController.getEnumOj();\r\n\r\n const CC_NOT_DISPLAY = [\"Code\", \"ExpirationDate\", \"UmemberOpenId\", \"UmemberLabel\"];\r\n\r\n transform.MemberCouponTitle = Differentiate.COUPON;\r\n transform.MemberTypeName = Differentiate.MemberTypeName;\r\n Object.keys(transform).forEach(v => {\r\n // 查找CC不需要显示的字段\r\n const isHaveCCNot = CC_NOT_DISPLAY.find(item => item == v);\r\n if (isHaveCCNot) return;\r\n const memberValue = memberValues[v];\r\n const precision = precisionInfo[v];\r\n //let value = formatPrecisionKeys.includes(v) ? (hasMemberInfo ? formatPrecision(memberValue, precision) : undefined) : memberValue;\r\n let value = !!precision ? (hasMemberInfo ? formatPrecision(memberValue, precision) : undefined) : memberValue;\r\n (v === 'UmemberOpenId') && (value = memberValue ? '已关注' : '未关注');\r\n const dataItem = { label: `${transform[v]}`, value };\r\n memberInfos.push(dataItem);\r\n });\r\n\r\n //对自定义项的值进行处理。\r\n if (priuserdefData && priuserdefData.length > 0) {\r\n priuserdefData.map(item => {\r\n let { key, value } = item || {};\r\n let precision = precisionInfo[key];\r\n item['value'] = !!precision ? formatPrecision(value, precision) : value;\r\n })\r\n }\r\n\r\n memberInfos.push(...priuserdefData) // 插入会员自定义项\r\n memberInfos.length % 2 && memberInfos.push({}); //奇数补全\r\n const formatValue = (label, value) => {\r\n const formatDateKeys = ['出生日期', '失效日期', '生效日期'];\r\n if (formatDateKeys.includes(label)) {\r\n return dateFormat(value);\r\n } else {\r\n return value;\r\n }\r\n }\r\n //状态戳\r\n let iconItems = getMemberStateStamp(member);\r\n return (\r\n <TabPane tab={title} key={key}>\r\n <div style={{ height: memberTabContentHeight, position: 'relative' }}>\r\n <TouchScroll height={memberTabContentHeight} scrollProgress={()=>{}} isElectron>\r\n {\r\n !!memberList.length && <div className='member-info-table'>\r\n {\r\n memberInfos.map((item, index) => <div key={index}>\r\n {item.label && <span>{item.label || ''}</span>}\r\n {item.label && <span data-overflow='tip'>:{formatValue(item.label, item.value)}</span>}\r\n </div>)\r\n }\r\n {\r\n !memberInfos.length && <p className='empty-data'>暂无数据~</p>\r\n }\r\n </div>\r\n }\r\n {\r\n !memberList.length && <div className='empty-data empty-data-img' />\r\n }\r\n </TouchScroll>\r\n {\r\n iconItems && iconItems.length > 0 &&\r\n <div className='memberstate-detail-stamp'>\r\n {iconItems}\r\n </div>\r\n }\r\n </div>\r\n </TabPane >)\r\n };\r\n\r\n // 智能推荐\r\n rmecommendEle = ({ title, key }) => {\r\n let { recommend: recommends = [], memberInfo: { record = [], like = [] } = {}, memberTabHeight, initEmpty } = this.props;\r\n recommends = recommends.filter(v => v);\r\n recommends.push({ Name: '最近购买', Value: like });\r\n const recommendInfoHeight = 74;\r\n const memberTabContentHeight = memberTabHeight - this.tabHeadHeight;\r\n const haveRecord = !!record.length && record.every(v => !!(v && v.value));\r\n console.log('会员偶发白屏问题:recommends==', recommends)\r\n const emptyRecommend = recommends.every(v => !((v && v.Value) || []).length) ? <div className='empty-data'>暂无推荐~</div> : null;\r\n const emptyData = (!haveRecord && recommends.every(v => !((v && v.Value) || []).length)) ? <div className='empty-data empty-data-img' /> : null;\r\n const showInfos = ['最近购买时间', '金额', '平均客单价']\r\n const recordFilter = record.filter(v => showInfos.includes(v.name));\r\n const recommendHeight = haveRecord ? memberTabContentHeight - recommendInfoHeight : memberTabContentHeight;\r\n return <TabPane tab={title} key={key}>\r\n <div className='recommend-tab' style={{height: memberTabContentHeight}}>\r\n {haveRecord && <div className='recommend-info'>\r\n {recordFilter.map((item, key) => <span key={key}>{item.name}: {item.value}</span>)}\r\n </div>}\r\n <div className='recommend-connent' style={{height: recommendHeight}}>\r\n <TouchScroll height={recommendHeight} key={recommendHeight}>\r\n {recommends.map((item, index) => {\r\n if (!(item.Value || []).length) return null;\r\n return <div key={index} className='detail-content'>\r\n <h1>{item.Name}</h1>\r\n <CardList\r\n list={item.Value || []}\r\n maxEmpyt={5}\r\n />\r\n </div>\r\n })}\r\n </TouchScroll>\r\n {initEmpty && emptyRecommend}\r\n </div>\r\n {initEmpty && emptyData}\r\n </div>\r\n </TabPane>;\r\n };\r\n\r\n // 最近购买\r\n recentlyEle = ({ title, key }) => {\r\n const {memberTabHeight, lastRetailLoading = false, lastRetailTotal = 0, lastRetailList = []} = this.props;\r\n const theadHeight = 50;\r\n const tableHeight = memberTabHeight - this.tabHeadHeight;\r\n const dataSource = [];\r\n const data = lastRetailList;\r\n data.forEach((vlaue, i) => {\r\n const index = dataSource.findIndex(v => v.code === vlaue.Code);\r\n if (~index) {\r\n dataSource[index].data.push(vlaue);\r\n } else {\r\n const { Time, Code, ...rest } = vlaue || {};\r\n const itemValue = { date: Time, code: Code, data: [rest] };\r\n dataSource.push(itemValue);\r\n }\r\n });\r\n\r\n dataSource.forEach(value => {\r\n // 金额倒序排序\r\n const itemData = value.data;\r\n if (itemData.length > 1) {\r\n itemData.sort((a = {}, b = {}) => b.Amount - a.Amount);\r\n }\r\n });\r\n\r\n return <TabPane tab={title} key={key}>\r\n {!!dataSource.length && <div className='recently-tab'>\r\n <table className='table'>\r\n <thead>\r\n <tr>\r\n <th width='25%'>消费日期</th>\r\n <th width='25%'>商品</th>\r\n <th width='25%' style={{textAlign: 'center'}}>数量</th>\r\n <th width='25%' className='amount-item'>消费金额</th>\r\n </tr>\r\n </thead>\r\n <tbody style={{height: tableHeight - theadHeight - 42}}>\r\n <TouchScroll scrollProgress={()=>{}}>\r\n {dataSource.map((item, key) => {\r\n return item.data.map((v, i) =>\r\n <tr key={i}>\r\n {!i ?\r\n <td className={item.data.length === 1 ? 'only-one-data' : ''}>{dateFormat(item.date)} \r\n </td> :\r\n <td className={item.data.length - 1 === i ? 'data-border' : ''}/>\r\n }\r\n <td data-overflow='tip'>\r\n {v.Name}\r\n { \r\n Number(v.Amount) < 0 && <p className='tag'>退货</p>\r\n }\r\n </td>\r\n <td data-overflow='tip' style={{textAlign: 'center'}}>{v.Quantity}</td>\r\n <td data-overflow='tip'>{v.Amount}</td>\r\n </tr>\r\n );\r\n })}\r\n </TouchScroll>\r\n </tbody>\r\n </table>\r\n </div>}\r\n {!dataSource.length && <div style={{height: tableHeight, position: 'relative'}}><div className='empty-data empty-data-img'><div className='tip-text'>暂无数据 ~</div></div></div>}\r\n\r\n { lastRetailTotal != lastRetailList.length && <div className='more-button'>\r\n <Button type=\"text\" loading={lastRetailLoading} className='primary-color' onClick={this.loadRecentlyMore}>查看更多</Button></div>\r\n }\r\n </TabPane>;\r\n };\r\n\r\n // 会员的卡信息\r\n memberCardInfoEle = ({ title, key }) => {\r\n const { member = {}, memberTabHeight, memberList = [], cardInfo = [], cardTypeEnumList, storeKey} = this.props;\r\n const memberTabContentHeight = memberTabHeight - this.tabHeadHeight;\r\n const memberCardInfos = []\r\n\r\n cardInfo.map(item => {\r\n const { StorageCardNo, Name, TotalStorage = 0, BalanceStorage = 0, CardTypeEnum, ValidMethodEnum, DueDate, CardStatusEnum, IsSale } = item\r\n const dataSource = [\r\n { label: '卡名称', value: Name },\r\n { label: '卡号', value: StorageCardNo },\r\n { label: '卡类型', value: cardTypeEnumList[CardTypeEnum] },\r\n { label: '有效期至', value: ValidMethodEnum === 'LONG_PERIOD' ? '长期有效' : dateFormat(DueDate)},\r\n { label: '储值总额', value: formatPrecision(IsSale === 'SOLD' || CardTypeEnum === 'BALANCE_CARD' ? TotalStorage : 0, 2) },\r\n { label: '储值余额', value: formatPrecision(IsSale === 'SOLD' || CardTypeEnum === 'BALANCE_CARD' ? BalanceStorage : 0, 2) },\r\n { label: '卡状态', value: cardStatusEnumList[CardStatusEnum] }\r\n ]\r\n memberCardInfos.push(dataSource)\r\n })\r\n\r\n return (\r\n <TabPane tab={title + '('+ cardInfo.length +')'} key={key}>\r\n <div style={{ height: memberTabContentHeight, position: 'relative',overflowY: 'auto' }}>\r\n <TouchScroll height={memberTabContentHeight} scrollProgress={()=>{}}>\r\n {\r\n !!cardInfo.length && \r\n memberCardInfos.map((list, index) => <MemberCardInfo list={list} index={index} key={'卡' + (index + 1)} title={'卡' + (index + 1)} keyName='memberCardInfos' memberList={memberList} storeKey={storeKey} />)\r\n }\r\n {\r\n !cardInfo.length && <div className='empty-data empty-data-img' />\r\n }\r\n </TouchScroll>\r\n </div>\r\n </TabPane>\r\n )\r\n };\r\n\r\n render() {\r\n const {defaultActiveKey = '1', storeKey } = this.props;\r\n return (\r\n <Tabs\r\n defaultActiveKey={defaultActiveKey}\r\n onChange={this.props.onChange}\r\n className=\"member-table-container\"\r\n >\r\n { this.memberInfoEle({ title: '会员信息', key: '1' }) }\r\n { this.rmecommendEle({ title: '智能推荐', key: '2' }) }\r\n { this.recentlyEle({ title: '购买记录', key: '3' }) }\r\n { this.memberCardInfoEle({title: '卡信息', 'key': '4'}) }\r\n </Tabs>\r\n );\r\n }\r\n}"]}
1
+ {"version":3,"sources":["tplus-member/member/memberTab/MemberManager.js"],"names":["TabPane","transform","Code","CardCode","Name","MemberTypeName","Mobilephone","Telephone","StoreName","sex","BirthDate","TotalIntegral","BalanceIntegral","BalanceStorage","TotalStorage","TotalBegin","EffectiveDate","ExpirationDate","UmemberOpenId","UmemberLabel","MemberCouponTitle","Memo","validMethodEnum","LONG_PERIOD","ASSIGNMENT_PERIOD","cardStatusEnumList","ENABLED","DISABLED","UNBINDING","BINDING","INVALIDATION","EXPIRED","REFUNDING_CARD","REFUNDED_CARD","memberManager","observer","props","stores","user","options","get","IsEnableUMember","state","defaultActiveKey","storeKey","onChange","memberInfoEle","title","key","rmecommendEle","recentlyEle","memberCardInfoEle","Component","tabHeadHeight","dataClear","keys","values","columnInfo","regKey","dataSource","forEach","index","includes","find","v","FieldName","label","Title","push","value","filter","loadRecentlyMore","findMemberLastRetailDetailList","member","memberTabHeight","memberList","precisionInfo","getMemberStateStamp","DynamicPropertyKeys","DynamicPropertyValues","MemberType","Sex","isExpiration","Uid","isUserLogout","MemberState","Store","priuserdefData","isUMember","isUMemberShow","memberValues","memberInfos","memberTabContentHeight","hasMemberInfo","some","enumController","getEnumOj","Differentiate","CC_NOT_DISPLAY","COUPON","isHaveCCNot","item","memberValue","precision","undefined","dataItem","length","map","formatValue","formatDateKeys","iconItems","height","position","recommend","recommends","memberInfo","record","like","initEmpty","Value","recommendInfoHeight","haveRecord","every","console","log","emptyRecommend","emptyData","showInfos","recordFilter","name","recommendHeight","lastRetailLoading","lastRetailTotal","lastRetailList","theadHeight","tableHeight","data","vlaue","i","findIndex","code","Time","rest","itemValue","date","itemData","sort","a","b","Amount","textAlign","Number","Quantity","cardInfo","cardTypeEnumList","memberCardInfos","StorageCardNo","CardTypeEnum","ValidMethodEnum","DueDate","CardStatusEnum","IsSale","overflowY","list"],"mappings":"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","file":"MemberManager.js","sourcesContent":["import React, { Component } from 'react';\nimport { Tabs, Button } from 'antd';\nimport { observer } from 'mobx-react';\nimport { stores, localStore } from 'mutants-microfx';\nimport { TouchScroll, CardList } from 'tplus-components-touch';\nimport { formatPrecision, dateFormat } from '../../utils';\nimport { enumController, platform } from 'mutants-util';\nimport MemberCardInfo from './MemberCardInfo'\n\nconst { TabPane } = Tabs;\n\nlet transform = {\n Code: '会员编号',\n CardCode: '会员卡号',\n Name: '会员姓名',\n MemberTypeName: '会员类型',\n Mobilephone: '手机号',\n Telephone: '联系电话',\n StoreName:'开卡门店',\n sex: '性别',\n BirthDate: '出生日期',\n TotalIntegral: '累计积分',\n BalanceIntegral: '积分余额',\n BalanceStorage: '当前总余额',\n TotalStorage: '储值总额', // 字段存疑\n TotalBegin: '期初余额',\n EffectiveDate: '生效日期',\n ExpirationDate: '失效日期',\n UmemberOpenId: '是否关注微信号',\n UmemberLabel: '会员标签',\n MemberCouponTitle: '优惠券',\n Memo: '备注',\n};\n\n\n// 有效期类型\nconst validMethodEnum = {\n LONG_PERIOD: '长期有效',\n ASSIGNMENT_PERIOD: '指定有效期'\n}\n\n// 卡状态\nconst cardStatusEnumList = {\n ENABLED: \"已启用\", \n DISABLED: \"已停用\",\n UNBINDING: \"待绑定\",\n BINDING: \"已绑定\",\n INVALIDATION: \"已作废\",\n EXPIRED: \"已过期\",\n REFUNDING_CARD: \"退卡中\",\n REFUNDED_CARD: \"已退卡\"\n}\n\n@observer\nexport default class memberManager extends Component {\n tabHeadHeight = 37;\n constructor (props) {\n super(props)\n const { IsEnableUMember } = stores.user.options.get('loginInfo') || {};\n this.state = { IsEnableUMember: !!IsEnableUMember };\n }\n dataClear = (keys, values, columnInfo) => {\n const regKey = 'priuserdef';\n const dataSource = [];\n keys.forEach((key, index) => {\n if (key.includes(regKey)) {\n const {Title: label} = columnInfo.find(v => v.FieldName === key) || {};\n dataSource.push({key, value: values[index], label});\n }\n });\n return dataSource.filter(v => v.label);\n }\n\n // 点击购买记录加载更多按钮\n loadRecentlyMore = () => {\n const { findMemberLastRetailDetailList } = this.props\n findMemberLastRetailDetailList && findMemberLastRetailDetailList(50)\n }\n\n // 会员信息\n memberInfoEle = ({ title, key }) => {\n const { member = {}, memberTabHeight, memberList = [], columnInfo = [], precisionInfo = {}, getMemberStateStamp} = this.props;\n const {IsEnableUMember} = this.state;\n const { DynamicPropertyKeys = [], DynamicPropertyValues = [], ExpirationDate = '', MemberType: { Name: MemberTypeName } = {},\n Sex: { Name: sex } = {}, isExpiration, Uid, isUserLogout, MemberState, Store: { Name : StoreName } = {} } = member;\n let priuserdefData = this.dataClear(DynamicPropertyKeys, DynamicPropertyValues, columnInfo);\n const isUMember = IsEnableUMember && Uid > 0; // 判断为u会员\n const isUMemberShow = ['UmemberOpenId', 'UmemberLabel', 'MemberCouponTitle'];\n const memberValues = { MemberTypeName, sex, StoreName , ...member};\n const memberInfos = [];\n const memberTabContentHeight = memberTabHeight - this.tabHeadHeight;\n const hasMemberInfo = Object.keys(memberValues).some(v => memberValues[v]);\n const { Differentiate } = enumController.getEnumOj();\n\n const CC_NOT_DISPLAY = [\"Code\", \"ExpirationDate\", \"UmemberOpenId\", \"UmemberLabel\"];\n\n transform.MemberCouponTitle = Differentiate.COUPON;\n transform.MemberTypeName = Differentiate.MemberTypeName;\n Object.keys(transform).forEach(v => {\n // 查找CC不需要显示的字段\n const isHaveCCNot = CC_NOT_DISPLAY.find(item => item == v);\n if (isHaveCCNot) return;\n const memberValue = memberValues[v];\n const precision = precisionInfo[v];\n //let value = formatPrecisionKeys.includes(v) ? (hasMemberInfo ? formatPrecision(memberValue, precision) : undefined) : memberValue;\n let value = !!precision ? (hasMemberInfo ? formatPrecision(memberValue, precision) : undefined) : memberValue;\n (v === 'UmemberOpenId') && (value = memberValue ? '已关注' : '未关注');\n const dataItem = { label: `${transform[v]}`, value };\n memberInfos.push(dataItem);\n });\n\n //对自定义项的值进行处理。\n if (priuserdefData && priuserdefData.length > 0) {\n priuserdefData.map(item => {\n let { key, value } = item || {};\n let precision = precisionInfo[key];\n item['value'] = !!precision ? formatPrecision(value, precision) : value;\n })\n }\n\n memberInfos.push(...priuserdefData) // 插入会员自定义项\n memberInfos.length % 2 && memberInfos.push({}); //奇数补全\n const formatValue = (label, value) => {\n const formatDateKeys = ['出生日期', '失效日期', '生效日期'];\n if (formatDateKeys.includes(label)) {\n return dateFormat(value);\n } else {\n return value;\n }\n }\n //状态戳\n let iconItems = getMemberStateStamp(member);\n return (\n <TabPane tab={title} key={key}>\n <div style={{ height: memberTabContentHeight, position: 'relative' }}>\n <TouchScroll height={memberTabContentHeight} scrollProgress={()=>{}} isElectron>\n {\n !!memberList.length && <div className='member-info-table'>\n {\n memberInfos.map((item, index) => <div key={index}>\n {item.label && <span>{item.label || ''}</span>}\n {item.label && <span data-overflow='tip'>:{formatValue(item.label, item.value)}</span>}\n </div>)\n }\n {\n !memberInfos.length && <p className='empty-data'>暂无数据~</p>\n }\n </div>\n }\n {\n !memberList.length && <div className='empty-data empty-data-img' />\n }\n </TouchScroll>\n {\n iconItems && iconItems.length > 0 &&\n <div className='memberstate-detail-stamp'>\n {iconItems}\n </div>\n }\n </div>\n </TabPane >)\n };\n\n // 智能推荐\n rmecommendEle = ({ title, key }) => {\n let { recommend: recommends = [], memberInfo: { record = [], like = [] } = {}, memberTabHeight, initEmpty } = this.props;\n recommends = recommends.filter(v => v);\n recommends.push({ Name: '最近购买', Value: like });\n const recommendInfoHeight = 74;\n const memberTabContentHeight = memberTabHeight - this.tabHeadHeight;\n const haveRecord = !!record.length && record.every(v => !!(v && v.value));\n console.log('会员偶发白屏问题:recommends==', recommends)\n const emptyRecommend = recommends.every(v => !((v && v.Value) || []).length) ? <div className='empty-data'>暂无推荐~</div> : null;\n const emptyData = (!haveRecord && recommends.every(v => !((v && v.Value) || []).length)) ? <div className='empty-data empty-data-img' /> : null;\n const showInfos = ['最近购买时间', '金额', '平均客单价']\n const recordFilter = record.filter(v => showInfos.includes(v.name));\n const recommendHeight = haveRecord ? memberTabContentHeight - recommendInfoHeight : memberTabContentHeight;\n return <TabPane tab={title} key={key}>\n <div className='recommend-tab' style={{height: memberTabContentHeight}}>\n {haveRecord && <div className='recommend-info'>\n {recordFilter.map((item, key) => <span key={key}>{item.name}: {item.value}</span>)}\n </div>}\n <div className='recommend-connent' style={{height: recommendHeight}}>\n <TouchScroll height={recommendHeight} key={recommendHeight}>\n {recommends.map((item, index) => {\n if (!(item.Value || []).length) return null;\n return <div key={index} className='detail-content'>\n <h1>{item.Name}</h1>\n <CardList\n list={item.Value || []}\n maxEmpyt={5}\n />\n </div>\n })}\n </TouchScroll>\n {initEmpty && emptyRecommend}\n </div>\n {initEmpty && emptyData}\n </div>\n </TabPane>;\n };\n\n // 最近购买\n recentlyEle = ({ title, key }) => {\n const {memberTabHeight, lastRetailLoading = false, lastRetailTotal = 0, lastRetailList = []} = this.props;\n const theadHeight = 50;\n const tableHeight = memberTabHeight - this.tabHeadHeight;\n const dataSource = [];\n const data = lastRetailList;\n data.forEach((vlaue, i) => {\n const index = dataSource.findIndex(v => v.code === vlaue.Code);\n if (~index) {\n dataSource[index].data.push(vlaue);\n } else {\n const { Time, Code, ...rest } = vlaue || {};\n const itemValue = { date: Time, code: Code, data: [rest] };\n dataSource.push(itemValue);\n }\n });\n\n dataSource.forEach(value => {\n // 金额倒序排序\n const itemData = value.data;\n if (itemData.length > 1) {\n itemData.sort((a = {}, b = {}) => b.Amount - a.Amount);\n }\n });\n\n return <TabPane tab={title} key={key}>\n {!!dataSource.length && <div className='recently-tab'>\n <table className='table'>\n <thead>\n <tr>\n <th width='25%'>消费日期</th>\n <th width='25%'>商品</th>\n <th width='25%' style={{textAlign: 'center'}}>数量</th>\n <th width='25%' className='amount-item'>消费金额</th>\n </tr>\n </thead>\n <tbody style={{height: tableHeight - theadHeight - 42}}>\n <TouchScroll scrollProgress={()=>{}}>\n {dataSource.map((item, key) => {\n return item.data.map((v, i) =>\n <tr key={i}>\n {!i ?\n <td className={item.data.length === 1 ? 'only-one-data' : ''}>{dateFormat(item.date)} \n </td> :\n <td className={item.data.length - 1 === i ? 'data-border' : ''}/>\n }\n <td data-overflow='tip'>\n {v.Name}\n { \n Number(v.Amount) < 0 && <p className='tag'>退货</p>\n }\n </td>\n <td data-overflow='tip' style={{textAlign: 'center'}}>{v.Quantity}</td>\n <td data-overflow='tip'>{v.Amount}</td>\n </tr>\n );\n })}\n </TouchScroll>\n </tbody>\n </table>\n </div>}\n {!dataSource.length && <div style={{height: tableHeight, position: 'relative'}}><div className='empty-data empty-data-img'><div className='tip-text'>暂无数据 ~</div></div></div>}\n\n { lastRetailTotal != lastRetailList.length && <div className='more-button'>\n <Button type=\"text\" loading={lastRetailLoading} className='primary-color' onClick={this.loadRecentlyMore}>查看更多</Button></div>\n }\n </TabPane>;\n };\n\n // 会员的卡信息\n memberCardInfoEle = ({ title, key }) => {\n const { member = {}, memberTabHeight, memberList = [], cardInfo = [], cardTypeEnumList, storeKey} = this.props;\n const memberTabContentHeight = memberTabHeight - this.tabHeadHeight;\n const memberCardInfos = []\n\n cardInfo.map(item => {\n const { StorageCardNo, Name, TotalStorage = 0, BalanceStorage = 0, CardTypeEnum, ValidMethodEnum, DueDate, CardStatusEnum, IsSale } = item\n const dataSource = [\n { label: '卡名称', value: Name },\n { label: '卡号', value: StorageCardNo },\n { label: '卡类型', value: cardTypeEnumList[CardTypeEnum] },\n { label: '有效期至', value: ValidMethodEnum === 'LONG_PERIOD' ? '长期有效' : dateFormat(DueDate)},\n { label: '储值总额', value: formatPrecision(IsSale === 'SOLD' || CardTypeEnum === 'BALANCE_CARD' ? TotalStorage : 0, 2) },\n { label: '储值余额', value: formatPrecision(IsSale === 'SOLD' || CardTypeEnum === 'BALANCE_CARD' ? BalanceStorage : 0, 2) },\n { label: '卡状态', value: cardStatusEnumList[CardStatusEnum] }\n ]\n memberCardInfos.push(dataSource)\n })\n\n return (\n <TabPane tab={title + '('+ cardInfo.length +')'} key={key}>\n <div style={{ height: memberTabContentHeight, position: 'relative',overflowY: 'auto' }}>\n <TouchScroll height={memberTabContentHeight} scrollProgress={()=>{}}>\n {\n !!cardInfo.length && \n memberCardInfos.map((list, index) => <MemberCardInfo list={list} index={index} key={'卡' + (index + 1)} title={'卡' + (index + 1)} keyName='memberCardInfos' memberList={memberList} storeKey={storeKey} />)\n }\n {\n !cardInfo.length && <div className='empty-data empty-data-img' />\n }\n </TouchScroll>\n </div>\n </TabPane>\n )\n };\n\n render() {\n const {defaultActiveKey = '1', storeKey } = this.props;\n return (\n <Tabs\n defaultActiveKey={defaultActiveKey}\n onChange={this.props.onChange}\n className=\"member-table-container\"\n >\n { this.memberInfoEle({ title: '会员信息', key: '1' }) }\n { this.rmecommendEle({ title: '智能推荐', key: '2' }) }\n { this.recentlyEle({ title: '购买记录', key: '3' }) }\n { this.memberCardInfoEle({title: '卡信息', 'key': '4'}) }\n </Tabs>\n );\n }\n}"]}