tplus-member 1.27.1 → 1.27.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (134) hide show
  1. package/dist/api.js +533 -0
  2. package/dist/api.js.map +1 -0
  3. package/dist/controllers/FeedbackController.js +53 -0
  4. package/dist/controllers/FeedbackController.js.map +1 -0
  5. package/dist/controllers/MemberOrderController.js +359 -0
  6. package/dist/controllers/MemberOrderController.js.map +1 -0
  7. package/dist/controllers/OpenCardController.js +289 -0
  8. package/dist/controllers/OpenCardController.js.map +1 -0
  9. package/dist/controllers/defaultConfig.js +19 -0
  10. package/dist/controllers/defaultConfig.js.map +1 -0
  11. package/dist/dataProvider/member.js +144 -0
  12. package/dist/dataProvider/member.js.map +1 -0
  13. package/dist/dataProvider/openCard.js +145 -0
  14. package/dist/dataProvider/openCard.js.map +1 -0
  15. package/dist/domain/member/AuthProcess.js +42 -0
  16. package/dist/domain/member/AuthProcess.js.map +1 -0
  17. package/dist/domain/member/CardCodeChangedProcessor.js +35 -0
  18. package/dist/domain/member/CardCodeChangedProcessor.js.map +1 -0
  19. package/dist/domain/member/CheckCardCodeAndCodeProcessor.js +48 -0
  20. package/dist/domain/member/CheckCardCodeAndCodeProcessor.js.map +1 -0
  21. package/dist/domain/member/CheckMobilephoneFormatProcessor.js +38 -0
  22. package/dist/domain/member/CheckMobilephoneFormatProcessor.js.map +1 -0
  23. package/dist/domain/member/CheckPresentAmountProcessor.js +99 -0
  24. package/dist/domain/member/CheckPresentAmountProcessor.js.map +1 -0
  25. package/dist/domain/member/EffectiveDateChangedProcessor.js +50 -0
  26. package/dist/domain/member/EffectiveDateChangedProcessor.js.map +1 -0
  27. package/dist/domain/member/GetThisPresentAmountProcessor.js +116 -0
  28. package/dist/domain/member/GetThisPresentAmountProcessor.js.map +1 -0
  29. package/dist/domain/member/InitDataDeductionProcessor.js +68 -0
  30. package/dist/domain/member/InitDataDeductionProcessor.js.map +1 -0
  31. package/dist/domain/member/InitDataProcessor.js +140 -0
  32. package/dist/domain/member/InitDataProcessor.js.map +1 -0
  33. package/dist/domain/member/InitDataProjectProcessor.js +102 -0
  34. package/dist/domain/member/InitDataProjectProcessor.js.map +1 -0
  35. package/dist/domain/member/IsMemberEffectiveProcessor.js +45 -0
  36. package/dist/domain/member/IsMemberEffectiveProcessor.js.map +1 -0
  37. package/dist/domain/member/IsMemberEnableProcessor.js +38 -0
  38. package/dist/domain/member/IsMemberEnableProcessor.js.map +1 -0
  39. package/dist/domain/member/IsMemberExpirationProcessor.js +46 -0
  40. package/dist/domain/member/IsMemberExpirationProcessor.js.map +1 -0
  41. package/dist/domain/member/IsMemberPasswordSameProcessor.js +41 -0
  42. package/dist/domain/member/IsMemberPasswordSameProcessor.js.map +1 -0
  43. package/dist/domain/member/IsMemberStorageForStoreProcessor.js +40 -0
  44. package/dist/domain/member/IsMemberStorageForStoreProcessor.js.map +1 -0
  45. package/dist/domain/member/MemberTypeChangedProcessor.js +120 -0
  46. package/dist/domain/member/MemberTypeChangedProcessor.js.map +1 -0
  47. package/dist/domain/member/MobilephoneChangedProcessor.js +39 -0
  48. package/dist/domain/member/MobilephoneChangedProcessor.js.map +1 -0
  49. package/dist/domain/member/PersonProcesser.js +35 -0
  50. package/dist/domain/member/PersonProcesser.js.map +1 -0
  51. package/dist/domain/member/PriuserdefChangedProcessor.js +50 -0
  52. package/dist/domain/member/PriuserdefChangedProcessor.js.map +1 -0
  53. package/dist/domain/operationLog/AddLogProcessor.js +50 -0
  54. package/dist/domain/operationLog/AddLogProcessor.js.map +1 -0
  55. package/dist/domain/operationLog/OperationConfig.js +34 -0
  56. package/dist/domain/operationLog/OperationConfig.js.map +1 -0
  57. package/dist/domain/operationLog/OperationLog.js +146 -0
  58. package/dist/domain/operationLog/OperationLog.js.map +1 -0
  59. package/dist/index.js +124 -0
  60. package/dist/index.js.map +1 -0
  61. package/dist/member/MemberPhoto.js +268 -0
  62. package/dist/member/MemberPhoto.js.map +1 -0
  63. package/dist/member/MemberShow.js +167 -0
  64. package/dist/member/MemberShow.js.map +1 -0
  65. package/dist/member/ShopMember.js +1096 -0
  66. package/dist/member/ShopMember.js.map +1 -0
  67. package/dist/member/ShopMember.less +605 -0
  68. package/dist/member/api.js +726 -0
  69. package/dist/member/api.js.map +1 -0
  70. package/dist/member/color.less +32 -0
  71. package/dist/member/index.js +843 -0
  72. package/dist/member/index.js.map +1 -0
  73. package/dist/member/index.less +466 -0
  74. package/dist/member/memberTab.js +675 -0
  75. package/dist/member/memberTab.js.map +1 -0
  76. package/dist/memberMenu/changeMemberCard/index.js +268 -0
  77. package/dist/memberMenu/changeMemberCard/index.js.map +1 -0
  78. package/dist/memberMenu/changeMemberCard/style.less +43 -0
  79. package/dist/memberMenu/index.js +826 -0
  80. package/dist/memberMenu/index.js.map +1 -0
  81. package/dist/memberMenu/modifyPass/index.js +207 -0
  82. package/dist/memberMenu/modifyPass/index.js.map +1 -0
  83. package/dist/memberMenu/modifyPass/store.js +357 -0
  84. package/dist/memberMenu/modifyPass/store.js.map +1 -0
  85. package/dist/memberMenu/modifyPass/style.less +91 -0
  86. package/dist/memberMenu/style.less +82 -0
  87. package/dist/socket.js +164 -0
  88. package/dist/socket.js.map +1 -0
  89. package/dist/utils.js +246 -0
  90. package/dist/utils.js.map +1 -0
  91. package/dist/viewController/MemberOrderViewController.js +144 -0
  92. package/dist/viewController/MemberOrderViewController.js.map +1 -0
  93. package/dist/viewDoMain/CheckMemberProcessorBlock.js +53 -0
  94. package/dist/viewDoMain/CheckMemberProcessorBlock.js.map +1 -0
  95. package/dist/viewDoMain/CheckMemberStorageProcessorBlock.js +85 -0
  96. package/dist/viewDoMain/CheckMemberStorageProcessorBlock.js.map +1 -0
  97. package/dist/viewDoMain/CheckSelectMemberProcessorBlock.js +69 -0
  98. package/dist/viewDoMain/CheckSelectMemberProcessorBlock.js.map +1 -0
  99. package/dist/viewDoMain/CheckUpdatePasswordProcessorBlock.js +44 -0
  100. package/dist/viewDoMain/CheckUpdatePasswordProcessorBlock.js.map +1 -0
  101. package/dist/viewDoMain/MemberDataChangedProcessorBlock.js +66 -0
  102. package/dist/viewDoMain/MemberDataChangedProcessorBlock.js.map +1 -0
  103. package/dist/viewDoMain/MemberDataPreSaveProcessorBlock.js +79 -0
  104. package/dist/viewDoMain/MemberDataPreSaveProcessorBlock.js.map +1 -0
  105. package/dist/viewModels/MemberDeduction.js +862 -0
  106. package/dist/viewModels/MemberDeduction.js.map +1 -0
  107. package/dist/viewModels/MemberOrder.js +248 -0
  108. package/dist/viewModels/MemberOrder.js.map +1 -0
  109. package/dist/viewModels/MemberProject.js +953 -0
  110. package/dist/viewModels/MemberProject.js.map +1 -0
  111. package/dist/viewModels/MemberStore.js +310 -0
  112. package/dist/viewModels/MemberStore.js.map +1 -0
  113. package/dist/views/commonPerson/commonPerson.less +54 -0
  114. package/dist/views/commonPerson/commonPersonModal.js +459 -0
  115. package/dist/views/commonPerson/commonPersonModal.js.map +1 -0
  116. package/dist/views/memberDeduction/MemberDeductionView.js +837 -0
  117. package/dist/views/memberDeduction/MemberDeductionView.js.map +1 -0
  118. package/dist/views/memberDeduction/deductionSuccess.js +62 -0
  119. package/dist/views/memberDeduction/deductionSuccess.js.map +1 -0
  120. package/dist/views/memberDeduction/memberDeduction.less +238 -0
  121. package/dist/views/memberManage/MemberOrderView.js +427 -0
  122. package/dist/views/memberManage/MemberOrderView.js.map +1 -0
  123. package/dist/views/memberManage/memberOrder.less +72 -0
  124. package/dist/views/memberProject/GroupProjectModal.js +676 -0
  125. package/dist/views/memberProject/GroupProjectModal.js.map +1 -0
  126. package/dist/views/memberProject/MemberProjectView.js +578 -0
  127. package/dist/views/memberProject/MemberProjectView.js.map +1 -0
  128. package/dist/views/memberProject/SelectProjectModal.js +330 -0
  129. package/dist/views/memberProject/SelectProjectModal.js.map +1 -0
  130. package/dist/views/memberProject/memberProject.less +334 -0
  131. package/dist/views/memberRecharge/MemberStoreView.js +546 -0
  132. package/dist/views/memberRecharge/MemberStoreView.js.map +1 -0
  133. package/dist/views/memberRecharge/memberStore.less +148 -0
  134. package/package.json +1 -1
@@ -0,0 +1,546 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+
7
+ var _FormControl2 = require('tinper-bee/dist/FormControl');
8
+
9
+ var _FormControl3 = _interopRequireDefault(_FormControl2);
10
+
11
+ var _Select3 = require('tinper-bee/dist/Select');
12
+
13
+ var _Select4 = _interopRequireDefault(_Select3);
14
+
15
+ var _extends2 = require('babel-runtime/helpers/extends');
16
+
17
+ var _extends3 = _interopRequireDefault(_extends2);
18
+
19
+ var _regenerator = require('babel-runtime/regenerator');
20
+
21
+ var _regenerator2 = _interopRequireDefault(_regenerator);
22
+
23
+ var _asyncToGenerator2 = require('babel-runtime/helpers/asyncToGenerator');
24
+
25
+ var _asyncToGenerator3 = _interopRequireDefault(_asyncToGenerator2);
26
+
27
+ var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of');
28
+
29
+ var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
30
+
31
+ var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
32
+
33
+ var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
34
+
35
+ var _createClass2 = require('babel-runtime/helpers/createClass');
36
+
37
+ var _createClass3 = _interopRequireDefault(_createClass2);
38
+
39
+ var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn');
40
+
41
+ var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
42
+
43
+ var _inherits2 = require('babel-runtime/helpers/inherits');
44
+
45
+ var _inherits3 = _interopRequireDefault(_inherits2);
46
+
47
+ var _Form2 = require('tinper-bee/dist/Form');
48
+
49
+ var _Form3 = _interopRequireDefault(_Form2);
50
+
51
+ var _class;
52
+
53
+ require('tinper-bee/dist/FormControl/index.css');
54
+
55
+ require('tinper-bee/dist/Select/index.css');
56
+
57
+ require('tinper-bee/dist/Form/index.css');
58
+
59
+ var _react = require('react');
60
+
61
+ var _react2 = _interopRequireDefault(_react);
62
+
63
+ var _mutantsMicrofx = require('mutants-microfx');
64
+
65
+ var _tplusComponentsTouch = require('tplus-components-touch');
66
+
67
+ var _tplusPoslogin = require('tplus-poslogin');
68
+
69
+ var _utils = require('../../utils');
70
+
71
+ require('./memberStore.less');
72
+
73
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
74
+
75
+ var FormItem = _Form3.default.FormItem;
76
+ var Option = _Select4.default.Option;
77
+ var photo = 'https://newretail.static.chanjet.com/default_avatar.png';
78
+
79
+ var MemberStoreView = (0, _mutantsMicrofx.observer)(_class = function (_Component) {
80
+ (0, _inherits3.default)(MemberStoreView, _Component);
81
+
82
+ function MemberStoreView(props) {
83
+ var _this2 = this;
84
+
85
+ (0, _classCallCheck3.default)(this, MemberStoreView);
86
+
87
+ var _this = (0, _possibleConstructorReturn3.default)(this, (MemberStoreView.__proto__ || (0, _getPrototypeOf2.default)(MemberStoreView)).call(this, props));
88
+
89
+ _this.getLocalStoreParam = function (fieldname) {
90
+ var data = _mutantsMicrofx.localStore.get('setting_setData') || [];
91
+ data = data.filter(function (item) {
92
+ return item.Name === fieldname;
93
+ });
94
+ return data && data.length > 0 ? data.shift().Value : null;
95
+ };
96
+
97
+ _this.handleChange = function (info, type, value) {
98
+ var _this$state = _this.state,
99
+ isCanUpdate = _this$state.isCanUpdate,
100
+ percentNumber = _this$state.percentNumber;
101
+
102
+ var store = _mutantsMicrofx.stores.memberStore;
103
+
104
+ var _ref = store || {},
105
+ data = _ref.data,
106
+ changeValue = _ref.changeValue;
107
+
108
+ var _ref2 = data || {},
109
+ Member = _ref2.Member;
110
+
111
+ var _ref3 = Member || {},
112
+ BalanceStorageDiscount = _ref3.BalanceStorageDiscount,
113
+ BalanceStorage = _ref3.BalanceStorage;
114
+
115
+ if (type == 'PresentAmount') {
116
+ _this.editPresentAmount = true;
117
+ if (isCanUpdate && _this.inputStorageAmount && _this.inputPresentAmount) {
118
+ var thisStorageInput = _this.inputStorageAmount.input.input;
119
+ var thisPresentInput = _this.inputPresentAmount.input.input;
120
+ var maxValue = thisStorageInput.value * parseInt(percentNumber) / 100;
121
+ if (thisPresentInput.value > 0 && thisPresentInput.value > maxValue) {
122
+ _tplusComponentsTouch.Message.warn('\u672C\u6B21\u50A8\u503C\u6700\u5927\u53EF\u8D60\u9001\u91D1\u989D\u4E3A' + maxValue + '\uFF0C\u8BF7\u4FEE\u6539', { top: 300, duration: 3 });
123
+ _this.setState({ memberDisabled: true });
124
+ thisPresentInput.focus();
125
+ return;
126
+ } else {
127
+ _this.setState({ memberDisabled: false });
128
+ }
129
+ if (thisStorageInput.value * thisPresentInput.value < 0) {
130
+ _tplusComponentsTouch.Message.warn('\u4E0D\u5141\u8BB8\u50A8\u503C\u4E0E\u8D60\u9001\u91D1\u989D\u4E00\u6B63\u4E00\u8D1F\uFF01', { top: 300, duration: 3 });
131
+ _this.setState({ memberDisabled: true });
132
+ } else if (/-/.test(thisStorageInput.value)) {
133
+ if (parseFloat(thisStorageInput.value) + (BalanceStorage - BalanceStorageDiscount) < 0) {
134
+ _tplusComponentsTouch.Message.warn('\u672C\u6B21\u9000\u8FD8\u7684\u91D1\u989D\u4E0D\u80FD\u5927\u4E8E\u4F59\u989D\uFF01', { top: 300, duration: 3 });
135
+ _this.setState({ memberDisabled: true });
136
+ } else if (thisPresentInput.value.length > 1) {
137
+ var present = parseFloat(thisPresentInput.value);
138
+ if (present + BalanceStorageDiscount < 0) {
139
+ _tplusComponentsTouch.Message.warn('\u672C\u6B21\u9000\u8FD8\u7684\u8D60\u9001\u91D1\u989D\u987B\u5C0F\u4E8E\u7B49\u4E8E\u50A8\u503C\u6298\u6263\u4F59\u989D\uFF01\u50A8\u503C\u6298\u6263\u4F59\u989D\u4E3A' + BalanceStorageDiscount, { top: 300, duration: 3 });
140
+ _this.setState({ memberDisabled: true });
141
+ }
142
+ }
143
+ } else {
144
+ _this.setState({ memberDisabled: false });
145
+ }
146
+ }
147
+ } else if (type == 'StoreAmount') {
148
+ _this.editPresentAmount = false;
149
+ }
150
+ var timer = _this.timerFun;
151
+ if (timer != null) {
152
+ window.clearTimeout(timer);
153
+ }
154
+
155
+ var strfun = function () {
156
+ var _ref4 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee() {
157
+ return _regenerator2.default.wrap(function _callee$(_context) {
158
+ while (1) {
159
+ switch (_context.prev = _context.next) {
160
+ case 0:
161
+ console.log('this' + type + ' value:' + value);
162
+ _context.next = 3;
163
+ return changeValue(info, type, value, { isCanUpdate: isCanUpdate, percentValue: percentNumber });
164
+
165
+ case 3:
166
+ //储值触发赠送逻辑
167
+ if (!_this.editPresentAmount && isCanUpdate) {
168
+ _this.initFormData();
169
+ }
170
+
171
+ case 4:
172
+ case 'end':
173
+ return _context.stop();
174
+ }
175
+ }
176
+ }, _callee, _this2);
177
+ }));
178
+
179
+ return function strfun() {
180
+ return _ref4.apply(this, arguments);
181
+ };
182
+ }();
183
+ _this.timerFun = window.setTimeout(strfun, 0);
184
+ };
185
+
186
+ _this.getPersonList = function () {
187
+ var store = _mutantsMicrofx.stores.memberStore;
188
+
189
+ var _ref5 = store || {},
190
+ data = _ref5.data,
191
+ initPersonList = _ref5.initPersonList;
192
+
193
+ var _ref6 = data || {},
194
+ Idstore = _ref6.Idstore;
195
+
196
+ initPersonList(Idstore);
197
+ };
198
+
199
+ _this.initFormData = function () {
200
+ var store = _mutantsMicrofx.stores.memberStore;
201
+
202
+ var _ref7 = store || {},
203
+ data = _ref7.data;
204
+
205
+ var _ref8 = data || {},
206
+ StorageDetails = _ref8.StorageDetails;
207
+
208
+ var thisPresentAmount = StorageDetails ? JSON.getCellValue(StorageDetails[0], "ThisPresentAmount") : '';
209
+ thisPresentAmount = thisPresentAmount === null || thisPresentAmount === undefined ? '' : thisPresentAmount;
210
+ if (_this.inputPresentAmount && _this.inputPresentAmount.inputChange) {
211
+ _this.inputPresentAmount.inputChange(thisPresentAmount + "");
212
+ }
213
+ };
214
+
215
+ _this.onMemoChange = function (info, value) {
216
+ _this.setState({
217
+ memoValue: value
218
+ });
219
+ info.Memo = value;
220
+ };
221
+
222
+ _this.timerFun = null;
223
+ var canUpdate = _this.getLocalStoreParam('CanModifyPresentAmount');
224
+ canUpdate = canUpdate == '1' ? true : false;
225
+ var percent = _this.getLocalStoreParam('PresentAmountLimitPercent');
226
+ _this.state = {
227
+ isCanUpdate: canUpdate,
228
+ percentNumber: percent,
229
+ memberDisabled: false,
230
+ memoValue: ''
231
+ };
232
+ return _this;
233
+ }
234
+
235
+ (0, _createClass3.default)(MemberStoreView, [{
236
+ key: 'render',
237
+ value: function render() {
238
+ var _this3 = this;
239
+
240
+ var store = _mutantsMicrofx.stores.memberStore;
241
+ var _state = this.state,
242
+ isCanUpdate = _state.isCanUpdate,
243
+ memberDisabled = _state.memberDisabled,
244
+ memoValue = _state.memoValue;
245
+
246
+ var _ref9 = store || {},
247
+ data = _ref9.data,
248
+ changeValue = _ref9.changeValue,
249
+ getAuthStaus = _ref9.getAuthStaus,
250
+ personList = _ref9.personList,
251
+ settlementControlEvent = _ref9.settlementControlEvent;
252
+
253
+ var _ref10 = data || {},
254
+ Member = _ref10.Member,
255
+ Person = _ref10.Person,
256
+ StorageDetails = _ref10.StorageDetails;
257
+
258
+ var _ref11 = Member || {},
259
+ Name = _ref11.Name,
260
+ Mobilephone = _ref11.Mobilephone,
261
+ CardCode = _ref11.CardCode,
262
+ ImageFile = _ref11.ImageFile,
263
+ BalanceIntegral = _ref11.BalanceIntegral,
264
+ BalanceStorage = _ref11.BalanceStorage;
265
+ // 获取储值负数权限
266
+
267
+
268
+ var salesman = Member ? JSON.getCellValue(Member, "Person.Name") : '';
269
+ var thisPresentAmount = StorageDetails ? JSON.getCellValue(StorageDetails[0], "ThisPresentAmount") : '';
270
+ thisPresentAmount = thisPresentAmount === null || thisPresentAmount === undefined ? '' : thisPresentAmount;
271
+ var thisStorageAmount = StorageDetails ? JSON.getCellValue(StorageDetails[0], "ThisStorageAmount") : '';
272
+ thisStorageAmount = thisStorageAmount === null || thisStorageAmount === undefined ? '' : thisStorageAmount;
273
+ //金额小数精度
274
+ var amountPrecision = (0, _tplusPoslogin.PosInitData)("AmountPrecision");
275
+ amountPrecision = amountPrecision ? parseInt(amountPrecision) : '';
276
+ //金额最大位数
277
+ var amountMaxLength = (0, _tplusPoslogin.PosInitData)("AmountMaxLength");
278
+ amountMaxLength = amountMaxLength ? parseInt(amountMaxLength) : '';
279
+ //储值参数
280
+ var storeInfo = _tplusPoslogin.TStore.restore();
281
+ var settlementParams = (0, _extends3.default)({
282
+ dataSource: data ? data.DataSource : {},
283
+ initData: _tplusPoslogin.PosInitData,
284
+ storeInfo: storeInfo,
285
+ showAmount: false,
286
+ isMemberStorePage: true,
287
+ amount: thisStorageAmount,
288
+ type: 1, // 区分储值(value: 1)与开单页面(value: undefined)
289
+ dto: data,
290
+ isMinusAmount: true,
291
+ memberDisabled: memberDisabled
292
+ }, settlementControlEvent);
293
+ console.log('储值金额:' + thisStorageAmount);
294
+ console.log('储值settlementParams', settlementParams);
295
+ // 获取储值负数权限
296
+ var status = getAuthStaus();
297
+ return _react2.default.createElement(
298
+ 'div',
299
+ { className: '' + _tplusComponentsTouch.hotKey.hotKeyBindClass('1') },
300
+ data && _react2.default.createElement(
301
+ 'div',
302
+ { className: 'memberstore' },
303
+ _react2.default.createElement(
304
+ 'div',
305
+ { className: 'memberstore-head' },
306
+ _react2.default.createElement(
307
+ 'div',
308
+ { className: 'imageContainer' },
309
+ _react2.default.createElement('img', { src: ImageFile || photo }),
310
+ _react2.default.createElement(
311
+ 'div',
312
+ { className: 'imageContainer-message' },
313
+ Name && _react2.default.createElement(
314
+ 'div',
315
+ { className: 'divText' },
316
+ Name
317
+ ),
318
+ Name && _react2.default.createElement('div', { className: 'divBlank' }),
319
+ _react2.default.createElement(
320
+ 'div',
321
+ { className: 'divText' },
322
+ Mobilephone || CardCode
323
+ )
324
+ )
325
+ ),
326
+ _react2.default.createElement(
327
+ 'div',
328
+ { className: 'message' },
329
+ _react2.default.createElement(
330
+ 'span',
331
+ null,
332
+ (0, _utils.formatPrecision)(BalanceStorage)
333
+ ),
334
+ _react2.default.createElement('br', null),
335
+ _react2.default.createElement(
336
+ 'span',
337
+ null,
338
+ '\u4F59\u989D'
339
+ )
340
+ ),
341
+ _react2.default.createElement(
342
+ 'div',
343
+ { className: 'message' },
344
+ _react2.default.createElement(
345
+ 'span',
346
+ null,
347
+ (0, _utils.formatPrecision)(BalanceIntegral)
348
+ ),
349
+ _react2.default.createElement('br', null),
350
+ _react2.default.createElement(
351
+ 'span',
352
+ null,
353
+ '\u79EF\u5206'
354
+ )
355
+ )
356
+ ),
357
+ _react2.default.createElement('div', { className: 'line' }),
358
+ _react2.default.createElement(
359
+ 'div',
360
+ { className: 'form' },
361
+ _react2.default.createElement(
362
+ FormItem,
363
+ { key: 1 },
364
+ _react2.default.createElement(
365
+ 'div',
366
+ { className: 'one' },
367
+ '\u5F00\u5361\u4E1A\u52A1\u5458'
368
+ ),
369
+ _react2.default.createElement(
370
+ 'div',
371
+ { className: 'two' },
372
+ salesman
373
+ )
374
+ ),
375
+ _react2.default.createElement(
376
+ FormItem,
377
+ { key: 2 },
378
+ _react2.default.createElement(
379
+ 'div',
380
+ { className: 'one' },
381
+ '\u50A8\u503C\u4E1A\u52A1\u5458'
382
+ ),
383
+ _react2.default.createElement(
384
+ 'div',
385
+ { className: 'two' },
386
+ _react2.default.createElement(
387
+ _Select4.default,
388
+ {
389
+ placeholder: '\u8BF7\u9009\u62E9\u50A8\u503C\u4E1A\u52A1\u5458',
390
+ style: { width: 300, marginRight: 6 },
391
+ showSearch: false,
392
+ notFoundContent: '空',
393
+ onFocus: this.getPersonList,
394
+ onChange: function onChange(value, item) {
395
+ return changeValue(data, 'Person', item.props.ot);
396
+ }
397
+ },
398
+ personList && personList.map(function (item) {
399
+ return _react2.default.createElement(
400
+ Option,
401
+ { key: item.ID, ot: item, value: item.ID },
402
+ item.Name
403
+ );
404
+ })
405
+ )
406
+ )
407
+ ),
408
+ _react2.default.createElement(
409
+ FormItem,
410
+ { key: 3 },
411
+ _react2.default.createElement(
412
+ 'div',
413
+ { className: 'one' },
414
+ '\u672C\u6B21\u50A8\u503C'
415
+ ),
416
+ _react2.default.createElement(
417
+ 'div',
418
+ { className: 'two' },
419
+ status ? _react2.default.createElement(_tplusComponentsTouch.NumKeyboardDigit, {
420
+ className: 'content',
421
+ type: 'text',
422
+ bordered: true,
423
+ style: { width: 300, height: 32 },
424
+ maxLength: amountMaxLength,
425
+ precisionLength: amountPrecision,
426
+ ref: function ref(input) {
427
+ return _this3.inputStorageAmount = input;
428
+ },
429
+ onChange: function onChange(value) {
430
+ return _this3.handleChange(data, 'StoreAmount', value);
431
+ }
432
+ }) : _react2.default.createElement(_tplusComponentsTouch.NumKeyboard, {
433
+ className: 'content',
434
+ type: 'text',
435
+ bordered: true,
436
+ style: { width: 300, height: 32 },
437
+ maxLength: amountMaxLength,
438
+ precisionLength: amountPrecision,
439
+ ref: function ref(input) {
440
+ return _this3.inputStorageAmount = input;
441
+ },
442
+ onChange: function onChange(value) {
443
+ return _this3.handleChange(data, 'StoreAmount', value);
444
+ }
445
+ })
446
+ )
447
+ ),
448
+ _react2.default.createElement(
449
+ FormItem,
450
+ { key: 4 },
451
+ _react2.default.createElement(
452
+ 'div',
453
+ { className: 'one' },
454
+ '\u672C\u6B21\u8D60\u9001'
455
+ ),
456
+ _react2.default.createElement(
457
+ 'div',
458
+ { className: 'two' },
459
+ isCanUpdate ? status ? _react2.default.createElement(_tplusComponentsTouch.NumKeyboardDigit, {
460
+ className: 'content',
461
+ type: 'text',
462
+ bordered: true,
463
+ style: { width: 300, height: 32 },
464
+ maxLength: amountMaxLength,
465
+ precisionLength: amountPrecision,
466
+ ref: function ref(input) {
467
+ return _this3.inputPresentAmount = input;
468
+ },
469
+ onBlur: function onBlur(value) {
470
+ return _this3.handleChange(data, 'PresentAmount', value);
471
+ },
472
+ onChange: function onChange(value) {
473
+ return _this3.handleChange(data, 'PresentAmount', value);
474
+ }
475
+ }) : _react2.default.createElement(_tplusComponentsTouch.NumKeyboard, {
476
+ className: 'content',
477
+ type: 'text',
478
+ bordered: true,
479
+ style: { width: 300, height: 32 },
480
+ maxLength: amountMaxLength,
481
+ precisionLength: amountPrecision,
482
+ ref: function ref(input) {
483
+ return _this3.inputPresentAmount = input;
484
+ },
485
+ onBlur: function onBlur(value) {
486
+ return _this3.handleChange(data, 'PresentAmount', value);
487
+ },
488
+ onChange: function onChange(value) {
489
+ return _this3.handleChange(data, 'PresentAmount', value);
490
+ }
491
+ }) : thisPresentAmount
492
+ )
493
+ ),
494
+ _react2.default.createElement(
495
+ FormItem,
496
+ { key: 5 },
497
+ _react2.default.createElement(
498
+ 'div',
499
+ { className: 'one' },
500
+ '\u5907\u6CE8'
501
+ ),
502
+ _react2.default.createElement(
503
+ 'div',
504
+ { className: 'two memoClass' },
505
+ _react2.default.createElement(_FormControl3.default, {
506
+ className: "memoClass memoClassInput",
507
+ onChange: function onChange(value) {
508
+ return _this3.onMemoChange(data, value);
509
+ },
510
+ value: memoValue,
511
+ onFocus: function onFocus(e) {
512
+ var inputTarget = document.getElementsByClassName('memoClassInput')[0];
513
+ _tplusComponentsTouch.Keyboard.open(function (v) {
514
+ var value = _tplusComponentsTouch.Keyboard.getNewValue(inputTarget, inputTarget.value, v);
515
+ _this3.setState({
516
+ memoValue: value
517
+ });
518
+ data.Memo = value;
519
+ })();
520
+ },
521
+ onBlur: function onBlur(e) {
522
+ _tplusComponentsTouch.Keyboard.close();
523
+ }
524
+ })
525
+ )
526
+ )
527
+ ),
528
+ _react2.default.createElement('div', { className: 'line2' }),
529
+ _react2.default.createElement(
530
+ 'div',
531
+ { className: 'footer' },
532
+ _react2.default.createElement(
533
+ 'div',
534
+ { className: 'storage-footer' },
535
+ _react2.default.createElement(_tplusComponentsTouch.Settlement, settlementParams)
536
+ )
537
+ )
538
+ )
539
+ );
540
+ }
541
+ }]);
542
+ return MemberStoreView;
543
+ }(_react.Component)) || _class;
544
+
545
+ exports.default = MemberStoreView;
546
+ //# sourceMappingURL=MemberStoreView.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["tplus-member/views/memberRecharge/MemberStoreView.js"],"names":["FormItem","Option","photo","MemberStoreView","observer","props","getLocalStoreParam","fieldname","data","localStore","get","filter","item","Name","length","shift","Value","handleChange","info","type","value","state","isCanUpdate","percentNumber","store","stores","memberStore","changeValue","Member","BalanceStorageDiscount","BalanceStorage","editPresentAmount","inputStorageAmount","inputPresentAmount","thisStorageInput","input","thisPresentInput","maxValue","parseInt","Message","warn","top","duration","setState","memberDisabled","focus","test","parseFloat","present","timer","timerFun","window","clearTimeout","strfun","console","log","percentValue","initFormData","setTimeout","getPersonList","initPersonList","Idstore","StorageDetails","thisPresentAmount","JSON","getCellValue","undefined","inputChange","onMemoChange","memoValue","Memo","canUpdate","percent","getAuthStaus","personList","settlementControlEvent","Person","Mobilephone","CardCode","ImageFile","BalanceIntegral","salesman","thisStorageAmount","amountPrecision","amountMaxLength","storeInfo","TStore","restore","settlementParams","dataSource","DataSource","initData","PosInitData","showAmount","isMemberStorePage","amount","dto","isMinusAmount","status","hotKey","hotKeyBindClass","width","marginRight","ot","map","ID","height","e","inputTarget","document","getElementsByClassName","Keyboard","open","v","getNewValue","close","Component"],"mappings":"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","file":"MemberStoreView.js","sourcesContent":["import React, { Component } from 'react';\nimport { Form, Select, FormControl } from 'tinper-bee';\nimport { observer, stores, localStore } from \"mutants-microfx\";\nimport { Settlement, NumKeyboard, Message, hotKey, Keyboard, NumKeyboardDigit } from 'tplus-components-touch';\nimport { PosInitData, TStore } from 'tplus-poslogin';\nimport { formatPrecision } from '../../utils';\nimport './memberStore.less'\n\nconst FormItem = Form.FormItem;\nconst Option = Select.Option;\nconst photo = 'https://newretail.static.chanjet.com/default_avatar.png'\n\n@observer\nclass MemberStoreView extends Component{\n\n constructor(props) {\n super(props)\n this.timerFun = null;\n let canUpdate = this.getLocalStoreParam('CanModifyPresentAmount')\n canUpdate = canUpdate == '1' ? true : false;\n let percent = this.getLocalStoreParam('PresentAmountLimitPercent')\n this.state = {\n isCanUpdate: canUpdate,\n percentNumber: percent,\n memberDisabled: false,\n memoValue: ''\n }\n }\n\n getLocalStoreParam = (fieldname) => {\n let data = localStore.get('setting_setData') || [];\n data = data.filter(item => item.Name === fieldname);\n return (data && data.length > 0) ? data.shift().Value : null;\n }\n handleChange = (info, type, value) => {\n const { isCanUpdate, percentNumber } = this.state;\n const store = stores.memberStore;\n const { data, changeValue } = store || {};\n const { Member } = data || {};\n const { BalanceStorageDiscount, BalanceStorage } = Member || {};\n if (type == 'PresentAmount') {\n this.editPresentAmount = true;\n if (isCanUpdate && this.inputStorageAmount && this.inputPresentAmount) {\n let thisStorageInput = this.inputStorageAmount.input.input;\n let thisPresentInput = this.inputPresentAmount.input.input;\n let maxValue = (thisStorageInput.value * parseInt(percentNumber)) / 100;\n if (thisPresentInput.value > 0 && thisPresentInput.value > maxValue) {\n Message.warn(`本次储值最大可赠送金额为${maxValue},请修改`, { top: 300, duration: 3 })\n this.setState({ memberDisabled: true })\n thisPresentInput.focus();\n return;\n } else {\n this.setState({ memberDisabled: false })\n }\n if (thisStorageInput.value * thisPresentInput.value < 0) {\n Message.warn(`不允许储值与赠送金额一正一负!`, { top: 300, duration: 3 })\n this.setState({ memberDisabled: true })\n } else if (/-/.test(thisStorageInput.value)) {\n if(parseFloat(thisStorageInput.value) + (BalanceStorage - BalanceStorageDiscount) < 0 ) {\n Message.warn(`本次退还的金额不能大于余额!`, { top: 300, duration: 3 })\n this.setState({ memberDisabled: true })\n } else if (thisPresentInput.value.length > 1) {\n let present = parseFloat(thisPresentInput.value)\n if (present + BalanceStorageDiscount < 0) {\n Message.warn(`本次退还的赠送金额须小于等于储值折扣余额!储值折扣余额为${BalanceStorageDiscount}`, { top: 300, duration: 3 })\n this.setState({ memberDisabled: true })\n }\n }\n } else {\n this.setState({ memberDisabled: false })\n } \n }\n\n } else if (type == 'StoreAmount') {\n this.editPresentAmount = false;\n }\n let timer = this.timerFun;\n if (timer != null) {\n window.clearTimeout(timer);\n }\n\n const strfun = async () => {\n console.log(`this${type} value:` + value);\n await changeValue(info, type, value, { isCanUpdate, percentValue: percentNumber })\n //储值触发赠送逻辑\n if (!this.editPresentAmount && isCanUpdate) {\n this.initFormData()\n }\n }\n this.timerFun = window.setTimeout(strfun, 0);\n }\n\n getPersonList = () => {\n const store = stores.memberStore;\n const { data, initPersonList } = store || {};\n const { Idstore } = data || {};\n initPersonList(Idstore)\n }\n\n initFormData = () => {\n const store = stores.memberStore;\n const { data } = store || {};\n const { StorageDetails } = data || {};\n let thisPresentAmount = StorageDetails ? JSON.getCellValue(StorageDetails[0], \"ThisPresentAmount\") : '';\n thisPresentAmount = (thisPresentAmount === null || thisPresentAmount === undefined) ? '' : thisPresentAmount;\n if (this.inputPresentAmount && this.inputPresentAmount.inputChange) {\n this.inputPresentAmount.inputChange(thisPresentAmount + \"\")\n }\n }\n\n onMemoChange = (info, value) => {\n this.setState({\n memoValue: value\n })\n info.Memo = value\n }\n\n render(){\n const store = stores.memberStore;\n const { isCanUpdate, memberDisabled, memoValue } = this.state;\n const { data, changeValue, getAuthStaus, personList, settlementControlEvent } = store || {};\n const { Member, Person, StorageDetails } = data || {};\n const { Name, Mobilephone, CardCode, ImageFile, BalanceIntegral, BalanceStorage } = Member || {};\n // 获取储值负数权限\n let salesman = Member ? JSON.getCellValue(Member, \"Person.Name\") : '';\n let thisPresentAmount = StorageDetails ? JSON.getCellValue(StorageDetails[0], \"ThisPresentAmount\") : '';\n thisPresentAmount = (thisPresentAmount === null || thisPresentAmount === undefined) ? '' : thisPresentAmount;\n let thisStorageAmount = StorageDetails ? JSON.getCellValue(StorageDetails[0], \"ThisStorageAmount\") : '';\n thisStorageAmount = (thisStorageAmount === null || thisStorageAmount === undefined) ? '' : thisStorageAmount;\n //金额小数精度\n let amountPrecision = PosInitData(\"AmountPrecision\");\n amountPrecision = amountPrecision ? parseInt(amountPrecision) : '';\n //金额最大位数 \n let amountMaxLength = PosInitData(\"AmountMaxLength\");\n amountMaxLength = amountMaxLength ? parseInt(amountMaxLength) : '';\n //储值参数\n const storeInfo = TStore.restore()\n let settlementParams = {\n dataSource: data ? data.DataSource : {},\n initData: PosInitData,\n storeInfo: storeInfo,\n showAmount: false,\n isMemberStorePage: true,\n amount: thisStorageAmount,\n type: 1, // 区分储值(value: 1)与开单页面(value: undefined)\n dto: data,\n isMinusAmount: true,\n memberDisabled: memberDisabled,\n ...settlementControlEvent\n }\n console.log('储值金额:' + thisStorageAmount)\n console.log('储值settlementParams', settlementParams)\n // 获取储值负数权限\n let status = getAuthStaus();\n return (\n <div className={`${hotKey.hotKeyBindClass('1')}`}>\n {\n data &&\n <div className='memberstore'>\n <div className='memberstore-head'>\n <div className='imageContainer'>\n <img src={ImageFile || photo} />\n <div className='imageContainer-message'>\n {\n Name && <div className='divText'>{Name}</div>\n }\n {\n Name && <div className='divBlank'></div>\n }\n <div className='divText'>{Mobilephone || CardCode}</div>\n </div>\n </div>\n <div className='message'>\n <span>{formatPrecision(BalanceStorage)}</span>\n <br />\n <span>余额</span>\n </div>\n <div className='message'>\n <span>{formatPrecision(BalanceIntegral)}</span>\n <br />\n <span>积分</span>\n </div>\n </div>\n <div className='line'></div>\n <div className='form'>\n <FormItem key={1}>\n <div className='one'>开卡业务员</div>\n <div className='two'>{salesman}</div>\n </FormItem>\n <FormItem key={2}>\n <div className='one'>储值业务员</div>\n <div className='two'>\n <Select\n placeholder='请选择储值业务员'\n style={{ width: 300, marginRight: 6 }}\n showSearch={false}\n notFoundContent={'空'}\n onFocus={this.getPersonList}\n onChange={(value, item) => changeValue(data, 'Person', item.props.ot)}\n >\n {\n personList && personList.map(item => {\n return <Option key={item.ID} ot={item} value={item.ID}>{item.Name}</Option>\n })\n }\n </Select>\n </div>\n </FormItem>\n <FormItem key={3}>\n <div className='one'>本次储值</div>\n <div className='two'> \n {\n status ?\n <NumKeyboardDigit\n className=\"content\"\n type='text'\n bordered\n style={{ width: 300, height: 32 }}\n maxLength={amountMaxLength}\n precisionLength={amountPrecision}\n ref={input => this.inputStorageAmount = input}\n onChange={value => this.handleChange(data, 'StoreAmount', value)}\n /> :\n <NumKeyboard\n className=\"content\"\n type='text'\n bordered\n style={{ width: 300, height: 32 }}\n maxLength={amountMaxLength}\n precisionLength={amountPrecision}\n ref={input => this.inputStorageAmount = input}\n onChange={value => this.handleChange(data, 'StoreAmount', value)}\n />\n }\n </div>\n </FormItem>\n <FormItem key={4}>\n <div className='one'>本次赠送</div>\n <div className='two'>\n {\n isCanUpdate\n ?\n (\n status ?\n <NumKeyboardDigit\n className=\"content\"\n type='text'\n bordered\n style={{ width: 300, height: 32 }}\n maxLength={amountMaxLength}\n precisionLength={amountPrecision}\n ref={input => this.inputPresentAmount = input}\n onBlur={value => this.handleChange(data, 'PresentAmount', value)}\n onChange={value => this.handleChange(data, 'PresentAmount', value)}\n /> :\n <NumKeyboard\n className=\"content\"\n type='text'\n bordered\n style={{ width: 300, height: 32 }}\n maxLength={amountMaxLength}\n precisionLength={amountPrecision}\n ref={input => this.inputPresentAmount = input}\n onBlur={value => this.handleChange(data, 'PresentAmount', value)}\n onChange={value => this.handleChange(data, 'PresentAmount', value)}\n />\n )\n :\n thisPresentAmount\n }\n </div>\n </FormItem>\n <FormItem key={5}>\n <div className='one'>备注</div>\n <div className='two memoClass'>\n <FormControl\n className={\"memoClass memoClassInput\"}\n onChange={value => this.onMemoChange(data, value)}\n value={memoValue}\n onFocus={(e) => {\n const inputTarget = document.getElementsByClassName('memoClassInput')[0];\n Keyboard.open((v) => {\n const value = Keyboard.getNewValue(inputTarget, inputTarget.value, v);\n this.setState({\n memoValue: value\n })\n data.Memo = value;\n })()\n }\n }\n onBlur={(e) => { Keyboard.close(); }}\n />\n </div>\n </FormItem>\n </div>\n <div className='line2'></div>\n <div className='footer'>\n <div className='storage-footer'>\n <Settlement {...settlementParams} />\n </div>\n </div>\n </div>\n }\n </div>\n )\n }\n}\nexport default MemberStoreView;"]}