tplus-member 3.26.2 → 3.26.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (142) hide show
  1. package/dist/api.js +191 -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 +357 -0
  6. package/dist/controllers/MemberOrderController.js.map +1 -0
  7. package/dist/controllers/OpenCardController.js +292 -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 +156 -0
  12. package/dist/dataProvider/member.js.map +1 -0
  13. package/dist/dataProvider/openCard.js +149 -0
  14. package/dist/dataProvider/openCard.js.map +1 -0
  15. package/dist/domain/member/AuthProcess.js +40 -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 +57 -0
  26. package/dist/domain/member/EffectiveDateChangedProcessor.js.map +1 -0
  27. package/dist/domain/member/GetThisPresentAmountProcessor.js +112 -0
  28. package/dist/domain/member/GetThisPresentAmountProcessor.js.map +1 -0
  29. package/dist/domain/member/InitDataProcessor.js +153 -0
  30. package/dist/domain/member/InitDataProcessor.js.map +1 -0
  31. package/dist/domain/member/IsMemberEffectiveProcessor.js +45 -0
  32. package/dist/domain/member/IsMemberEffectiveProcessor.js.map +1 -0
  33. package/dist/domain/member/IsMemberEnableProcessor.js +42 -0
  34. package/dist/domain/member/IsMemberEnableProcessor.js.map +1 -0
  35. package/dist/domain/member/IsMemberExpirationProcessor.js +46 -0
  36. package/dist/domain/member/IsMemberExpirationProcessor.js.map +1 -0
  37. package/dist/domain/member/IsMemberPasswordSameProcessor.js +41 -0
  38. package/dist/domain/member/IsMemberPasswordSameProcessor.js.map +1 -0
  39. package/dist/domain/member/IsMemberStorageForStoreProcessor.js +46 -0
  40. package/dist/domain/member/IsMemberStorageForStoreProcessor.js.map +1 -0
  41. package/dist/domain/member/MemberTypeChangedProcessor.js +127 -0
  42. package/dist/domain/member/MemberTypeChangedProcessor.js.map +1 -0
  43. package/dist/domain/member/MobilephoneChangedProcessor.js +39 -0
  44. package/dist/domain/member/MobilephoneChangedProcessor.js.map +1 -0
  45. package/dist/domain/member/PersonProcesser.js +35 -0
  46. package/dist/domain/member/PersonProcesser.js.map +1 -0
  47. package/dist/domain/member/PriuserdefChangedProcessor.js +50 -0
  48. package/dist/domain/member/PriuserdefChangedProcessor.js.map +1 -0
  49. package/dist/domain/operationLog/AddLogProcessor.js +46 -0
  50. package/dist/domain/operationLog/AddLogProcessor.js.map +1 -0
  51. package/dist/domain/operationLog/OperationConfig.js +34 -0
  52. package/dist/domain/operationLog/OperationConfig.js.map +1 -0
  53. package/dist/domain/operationLog/OperationLog.js +170 -0
  54. package/dist/domain/operationLog/OperationLog.js.map +1 -0
  55. package/dist/index.js +99 -0
  56. package/dist/index.js.map +1 -0
  57. package/dist/member/MemberCardList.js +374 -0
  58. package/dist/member/MemberCardList.js.map +1 -0
  59. package/dist/member/MemberPhoto.js +246 -0
  60. package/dist/member/MemberPhoto.js.map +1 -0
  61. package/dist/member/MemberShow.js +170 -0
  62. package/dist/member/MemberShow.js.map +1 -0
  63. package/dist/member/ShopMember.js +978 -0
  64. package/dist/member/ShopMember.js.map +1 -0
  65. package/dist/member/ShopMember.less +595 -0
  66. package/dist/member/ShopMemberStorage.js +400 -0
  67. package/dist/member/ShopMemberStorage.js.map +1 -0
  68. package/dist/member/api.js +983 -0
  69. package/dist/member/api.js.map +1 -0
  70. package/dist/member/color.less +32 -0
  71. package/dist/member/index.js +1026 -0
  72. package/dist/member/index.js.map +1 -0
  73. package/dist/member/index.less +570 -0
  74. package/dist/member/memberMenu/bindCard/index.js +291 -0
  75. package/dist/member/memberMenu/bindCard/index.js.map +1 -0
  76. package/dist/member/memberMenu/bindCard/style.less +8 -0
  77. package/dist/member/memberMenu/changeMemberCard/index.js +260 -0
  78. package/dist/member/memberMenu/changeMemberCard/index.js.map +1 -0
  79. package/dist/member/memberMenu/changeMemberCard/style.less +43 -0
  80. package/dist/member/memberMenu/index.js +870 -0
  81. package/dist/member/memberMenu/index.js.map +1 -0
  82. package/dist/member/memberMenu/modifyPass/index.js +389 -0
  83. package/dist/member/memberMenu/modifyPass/index.js.map +1 -0
  84. package/dist/member/memberMenu/modifyPass/store.js +330 -0
  85. package/dist/member/memberMenu/modifyPass/store.js.map +1 -0
  86. package/dist/member/memberMenu/modifyPass/style.less +96 -0
  87. package/dist/member/memberMenu/style.less +127 -0
  88. package/dist/member/memberMenuStorage/bindCard/index.js +169 -0
  89. package/dist/member/memberMenuStorage/bindCard/index.js.map +1 -0
  90. package/dist/member/memberMenuStorage/bindCard/style.less +8 -0
  91. package/dist/member/memberMenuStorage/changeMemberCard/index.js +260 -0
  92. package/dist/member/memberMenuStorage/changeMemberCard/index.js.map +1 -0
  93. package/dist/member/memberMenuStorage/changeMemberCard/style.less +43 -0
  94. package/dist/member/memberMenuStorage/index.js +1274 -0
  95. package/dist/member/memberMenuStorage/index.js.map +1 -0
  96. package/dist/member/memberMenuStorage/modifyPass/index.js +419 -0
  97. package/dist/member/memberMenuStorage/modifyPass/index.js.map +1 -0
  98. package/dist/member/memberMenuStorage/modifyPass/store.js +426 -0
  99. package/dist/member/memberMenuStorage/modifyPass/store.js.map +1 -0
  100. package/dist/member/memberMenuStorage/modifyPass/style.less +96 -0
  101. package/dist/member/memberMenuStorage/style.less +127 -0
  102. package/dist/member/memberTab/MemberCardInfo.js +89 -0
  103. package/dist/member/memberTab/MemberCardInfo.js.map +1 -0
  104. package/dist/member/memberTab/MemberManager.js +591 -0
  105. package/dist/member/memberTab/MemberManager.js.map +1 -0
  106. package/dist/member/memberTab/MemberStorage.js +150 -0
  107. package/dist/member/memberTab/MemberStorage.js.map +1 -0
  108. package/dist/member/memberTab/index.js +133 -0
  109. package/dist/member/memberTab/index.js.map +1 -0
  110. package/dist/socket.js +164 -0
  111. package/dist/socket.js.map +1 -0
  112. package/dist/stores/MemberStore.js +531 -0
  113. package/dist/stores/MemberStore.js.map +1 -0
  114. package/dist/stores/index.js +16 -0
  115. package/dist/stores/index.js.map +1 -0
  116. package/dist/utils.js +186 -0
  117. package/dist/utils.js.map +1 -0
  118. package/dist/viewController/MemberOrderViewController.js.map +1 -0
  119. package/dist/viewDoMain/CheckUpdatePasswordProcessorBlock.js +44 -0
  120. package/dist/viewDoMain/MemberDataChangedProcessorBlock.js +66 -0
  121. package/dist/viewDoMain/MemberDataChangedProcessorBlock.js.map +1 -0
  122. package/dist/viewDoMain/MemberDataPreSaveProcessorBlock.js +79 -0
  123. package/dist/viewDoMain/MemberDataPreSaveProcessorBlock.js.map +1 -0
  124. package/dist/viewDoMain/StorageAmountChangedProcessorBlock.js +136 -0
  125. package/dist/viewDoMain/StorageAmountChangedProcessorBlock.js.map +1 -0
  126. package/dist/viewModels/memberVoucher.js +269 -0
  127. package/dist/viewModels/memberVoucher.js.map +1 -0
  128. package/dist/views/MemberOrderView.js +438 -0
  129. package/dist/views/MemberOrderView.js.map +1 -0
  130. package/dist/views/MemberStore.less +143 -0
  131. package/dist/views/MemberStoreNew.less +231 -0
  132. package/dist/views/MemberStoreNewView.js +526 -0
  133. package/dist/views/MemberStoreNewView.js.map +1 -0
  134. package/dist/views/MemberStoreView.js +441 -0
  135. package/dist/views/MemberStoreView.js.map +1 -0
  136. package/dist/views/MemberStoreViewContainer.js +72 -0
  137. package/dist/views/MemberStoreViewContainer.js.map +1 -0
  138. package/dist/views/PresentDetail.less +119 -0
  139. package/dist/views/PresetDetailView.js +88 -0
  140. package/dist/views/PresetDetailView.js.map +1 -0
  141. package/dist/views/memberOrder.less +54 -0
  142. package/package.json +1 -1
@@ -0,0 +1,291 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = undefined;
7
+
8
+ var _input = require('antd/es/input');
9
+
10
+ var _input2 = _interopRequireDefault(_input);
11
+
12
+ var _regenerator = require('babel-runtime/regenerator');
13
+
14
+ var _regenerator2 = _interopRequireDefault(_regenerator);
15
+
16
+ var _asyncToGenerator2 = require('babel-runtime/helpers/asyncToGenerator');
17
+
18
+ var _asyncToGenerator3 = _interopRequireDefault(_asyncToGenerator2);
19
+
20
+ var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of');
21
+
22
+ var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
23
+
24
+ var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
25
+
26
+ var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
27
+
28
+ var _createClass2 = require('babel-runtime/helpers/createClass');
29
+
30
+ var _createClass3 = _interopRequireDefault(_createClass2);
31
+
32
+ var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn');
33
+
34
+ var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
35
+
36
+ var _inherits2 = require('babel-runtime/helpers/inherits');
37
+
38
+ var _inherits3 = _interopRequireDefault(_inherits2);
39
+
40
+ require('antd/es/input/style');
41
+
42
+ var _react = require('react');
43
+
44
+ var _react2 = _interopRequireDefault(_react);
45
+
46
+ var _tplusComponentsTouch = require('tplus-components-touch');
47
+
48
+ require('./style.less');
49
+
50
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
51
+
52
+ var keyList = ['Shift', 'Backspace', 'Enter', 'Tab', 'CapsLock', 'Meta', 'Alt', 'Control', 'Delete'];
53
+
54
+ var BindCard = function (_Component) {
55
+ (0, _inherits3.default)(BindCard, _Component);
56
+
57
+ function BindCard(props) {
58
+ var _this2 = this;
59
+
60
+ (0, _classCallCheck3.default)(this, BindCard);
61
+
62
+ var _this = (0, _possibleConstructorReturn3.default)(this, (BindCard.__proto__ || (0, _getPrototypeOf2.default)(BindCard)).call(this, props));
63
+
64
+ _this.keyPressStamp = null;
65
+ _this.scanValue = '';
66
+
67
+ _this.onChange = function () {
68
+ var _ref = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee(value) {
69
+ var newValue;
70
+ return _regenerator2.default.wrap(function _callee$(_context) {
71
+ while (1) {
72
+ switch (_context.prev = _context.next) {
73
+ case 0:
74
+ newValue = value;
75
+ // console.log(Date.now())
76
+
77
+ newValue = value.replace(/[^a-zA-Z0-9]/g, '');
78
+ // newValue = newValue.length > 16 ? newValue.substring(0, 16) : newValue
79
+ _context.next = 4;
80
+ return _this.setState({ value: newValue });
81
+
82
+ case 4:
83
+ _this.changeDisabled();
84
+
85
+ case 5:
86
+ case 'end':
87
+ return _context.stop();
88
+ }
89
+ }
90
+ }, _callee, _this2);
91
+ }));
92
+
93
+ return function (_x) {
94
+ return _ref.apply(this, arguments);
95
+ };
96
+ }();
97
+
98
+ _this.onPasswordChange = function () {
99
+ var _ref2 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee2(password) {
100
+ return _regenerator2.default.wrap(function _callee2$(_context2) {
101
+ while (1) {
102
+ switch (_context2.prev = _context2.next) {
103
+ case 0:
104
+ _context2.next = 2;
105
+ return _this.setState({ password: password });
106
+
107
+ case 2:
108
+ _this.changeDisabled();
109
+
110
+ case 3:
111
+ case 'end':
112
+ return _context2.stop();
113
+ }
114
+ }
115
+ }, _callee2, _this2);
116
+ }));
117
+
118
+ return function (_x2) {
119
+ return _ref2.apply(this, arguments);
120
+ };
121
+ }();
122
+
123
+ _this.KeyboardShow = function (inputType) {
124
+ _tplusComponentsTouch.Keyboard.open(function (v) {
125
+ var value = _tplusComponentsTouch.Keyboard.getNewValue(_this.inputRef.input, _this.state.value, v);
126
+ inputType === 'value' && _this.onChange(value);
127
+ inputType === 'password' && _this.setState({ password: value });
128
+ }, function () {
129
+ // 点击键盘的确定按钮,设置disabled
130
+ _this.changeDisabled();
131
+ keyboard.close();
132
+ }, _this.keyboardClose)();
133
+ };
134
+
135
+ _this.keyboardClose = function () {
136
+ _this.changeDisabled();
137
+ _this.inputRef.blur();
138
+ };
139
+
140
+ _this.inputBlur = function () {
141
+ _tplusComponentsTouch.Keyboard.close();
142
+ _this.changeDisabled();
143
+ };
144
+
145
+ _this.handleKeyPress = function () {
146
+ var _ref3 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee3(ev, value) {
147
+ var keyCode, key, currentStamp, newValue, password, bindCardClick;
148
+ return _regenerator2.default.wrap(function _callee3$(_context3) {
149
+ while (1) {
150
+ switch (_context3.prev = _context3.next) {
151
+ case 0:
152
+ keyCode = ev.keyCode, key = ev.key;
153
+
154
+ if (key && key.length && !keyList.includes(key)) _this.scanValue += key;
155
+ // 扫描录入会自动触发enter
156
+
157
+ if (!(keyCode === 13)) {
158
+ _context3.next = 14;
159
+ break;
160
+ }
161
+
162
+ currentStamp = Date.now();
163
+ // 触发enter事件的时候,如果当前触发事件-上次keyDown事件大于300毫秒,说明是手动录入,否则是扫描录入
164
+
165
+ if (!(currentStamp - _this.keyPressStamp <= 300)) {
166
+ _context3.next = 11;
167
+ break;
168
+ }
169
+
170
+ newValue = _this.scanValue.substring(0, 16);
171
+ password = _this.scanValue.substring(16);
172
+ bindCardClick = _this.props.bindCardClick;
173
+ _context3.next = 10;
174
+ return _this.setState({
175
+ value: newValue,
176
+ password: password
177
+ });
178
+
179
+ case 10:
180
+ bindCardClick();
181
+
182
+ case 11:
183
+ _this.scanValue = '';
184
+ _context3.next = 15;
185
+ break;
186
+
187
+ case 14:
188
+ // keydown的时候保存当前时间戳,用来做是手动录入的还是扫描录入的判断
189
+ _this.keyPressStamp = Date.now();
190
+
191
+ case 15:
192
+ _this.changeDisabled();
193
+
194
+ case 16:
195
+ case 'end':
196
+ return _context3.stop();
197
+ }
198
+ }
199
+ }, _callee3, _this2);
200
+ }));
201
+
202
+ return function (_x3, _x4) {
203
+ return _ref3.apply(this, arguments);
204
+ };
205
+ }();
206
+
207
+ _this.state = {
208
+ value: '',
209
+ password: ''
210
+ };
211
+ return _this;
212
+ }
213
+
214
+ (0, _createClass3.default)(BindCard, [{
215
+ key: 'componentDidMount',
216
+ value: function componentDidMount() {
217
+ // 设置输入框focus
218
+ this.inputRef.focus();
219
+ }
220
+
221
+ // 密码框
222
+
223
+ }, {
224
+ key: 'changeDisabled',
225
+ value: function changeDisabled() {
226
+ var _state = this.state,
227
+ value = _state.value,
228
+ password = _state.password;
229
+
230
+ this.props.changeBindCardBtnDisabled(!value.length || !password.length);
231
+ }
232
+ // 显示键盘
233
+
234
+ // 点击键盘的关闭按钮,设置disabled
235
+
236
+ // 输入框失去焦点,关闭键盘,设置disabled
237
+
238
+ }, {
239
+ key: 'render',
240
+ value: function render() {
241
+ var _this3 = this;
242
+
243
+ var _state2 = this.state,
244
+ value = _state2.value,
245
+ password = _state2.password;
246
+
247
+ return _react2.default.createElement(
248
+ 'div',
249
+ { className: 'bind-card-container', style: { marginTop: ' 14px' } },
250
+ _react2.default.createElement(_input2.default, {
251
+ className: _tplusComponentsTouch.hotKey.hotKeyNotFilter('storageNo-input'),
252
+ ref: function ref(input) {
253
+ return _this3.inputRef = input;
254
+ },
255
+ placeholder: '\u8BF7\u8F93\u5165\u50A8\u503C\u5361\u53F7',
256
+ value: value,
257
+ onChange: function onChange(_ref4) {
258
+ var value = _ref4.target.value;
259
+ return _this3.onChange(value);
260
+ },
261
+ onFocus: function onFocus() {
262
+ return _this3.KeyboardShow('value');
263
+ },
264
+ onBlur: this.inputBlur,
265
+ onKeyDown: this.handleKeyPress
266
+ }),
267
+ _react2.default.createElement('div', { className: 'line' }),
268
+ _react2.default.createElement(_input2.default, {
269
+ ref: function ref(input) {
270
+ return _this3.passwordRef = input;
271
+ },
272
+ type: 'password',
273
+ placeholder: '\u8BF7\u8F93\u5165\u5BC6\u7801',
274
+ value: password,
275
+ onChange: function onChange(_ref5) {
276
+ var value = _ref5.target.value;
277
+ return _this3.onPasswordChange(value);
278
+ },
279
+ onFocus: function onFocus() {
280
+ return _this3.KeyboardShow('password');
281
+ },
282
+ onBlur: this.inputBlur
283
+ })
284
+ );
285
+ }
286
+ }]);
287
+ return BindCard;
288
+ }(_react.Component);
289
+
290
+ exports.default = BindCard;
291
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["tplus-member/member/memberMenu/bindCard/index.js"],"names":["keyList","BindCard","props","keyPressStamp","scanValue","onChange","value","newValue","replace","setState","changeDisabled","onPasswordChange","password","KeyboardShow","inputType","Keyboard","open","getNewValue","inputRef","input","state","v","keyboard","close","keyboardClose","blur","inputBlur","handleKeyPress","ev","keyCode","key","length","includes","currentStamp","Date","now","substring","bindCardClick","focus","changeBindCardBtnDisabled","marginTop","hotKey","hotKeyNotFilter","target","passwordRef","Component"],"mappings":"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","file":"index.js","sourcesContent":["import React, { Component } from 'react'\nimport { Input } from 'antd'\nimport { Keyboard, hotKey } from 'tplus-components-touch'\nimport './style.less';\n\nconst keyList = ['Shift', 'Backspace', 'Enter', 'Tab', 'CapsLock', 'Meta', 'Alt', 'Control', 'Delete']\nexport default class BindCard extends Component {\n keyPressStamp = null\n scanValue = ''\n constructor (props) {\n super(props)\n this.state = {\n value: '',\n password: ''\n }\n }\n componentDidMount () {\n // 设置输入框focus\n this.inputRef.focus()\n }\n onChange = async (value) => {\n let newValue = value\n // console.log(Date.now())\n newValue = value.replace(/[^a-zA-Z0-9]/g,'')\n // newValue = newValue.length > 16 ? newValue.substring(0, 16) : newValue\n await this.setState({value: newValue})\n this.changeDisabled()\n }\n \n // 密码框\n onPasswordChange = async (password) => {\n await this.setState({password})\n this.changeDisabled()\n }\n changeDisabled () {\n const { value, password } = this.state\n this.props.changeBindCardBtnDisabled((!value.length || !password.length))\n }\n // 显示键盘\n KeyboardShow = (inputType) => {\n Keyboard.open(v => {\n const value = Keyboard.getNewValue(this.inputRef.input, this.state.value, v);\n inputType === 'value' && this.onChange(value)\n inputType === 'password' && this.setState({password: value})\n }, () => {\n // 点击键盘的确定按钮,设置disabled\n this.changeDisabled()\n keyboard.close()\n }, this.keyboardClose)()\n }\n // 点击键盘的关闭按钮,设置disabled\n keyboardClose = () => {\n this.changeDisabled()\n this.inputRef.blur()\n }\n // 输入框失去焦点,关闭键盘,设置disabled\n inputBlur = () => {\n Keyboard.close()\n this.changeDisabled()\n }\n handleKeyPress = async (ev, value) => {\n const { keyCode, key } = ev\n if (key && key.length && !keyList.includes(key)) this.scanValue += key\n // 扫描录入会自动触发enter\n if (keyCode === 13) {\n const currentStamp = Date.now()\n // 触发enter事件的时候,如果当前触发事件-上次keyDown事件大于300毫秒,说明是手动录入,否则是扫描录入\n if (currentStamp - this.keyPressStamp <= 300) {\n const newValue = this.scanValue.substring(0, 16)\n const password = this.scanValue.substring(16)\n const { bindCardClick } = this.props\n await this.setState({\n value: newValue,\n password\n })\n bindCardClick()\n }\n this.scanValue = ''\n } else {\n // keydown的时候保存当前时间戳,用来做是手动录入的还是扫描录入的判断\n this.keyPressStamp = Date.now()\n }\n this.changeDisabled()\n }\n\n render () {\n const { value, password } = this.state\n return (\n <div className=\"bind-card-container\" style={{ marginTop:' 14px' }}>\n <Input \n className={hotKey.hotKeyNotFilter('storageNo-input')}\n ref={input => this.inputRef = input}\n placeholder='请输入储值卡号'\n value={value}\n onChange={({ target: { value } }) => this.onChange(value)}\n onFocus={() => this.KeyboardShow('value')}\n onBlur={this.inputBlur}\n onKeyDown={this.handleKeyPress}\n />\n <div className=\"line\"></div>\n <Input \n ref={input => this.passwordRef = input}\n type='password'\n placeholder='请输入密码'\n value={password}\n onChange={({ target: { value } }) => this.onPasswordChange(value)}\n onFocus={() => this.KeyboardShow('password')}\n onBlur={this.inputBlur}\n />\n </div>\n )\n }\n} "]}
@@ -0,0 +1,8 @@
1
+ .bind-card-container {
2
+ width: 250px;
3
+ margin: 0 auto;
4
+ margin-top: 37px;
5
+ .line {
6
+ height: 12px;
7
+ }
8
+ }
@@ -0,0 +1,260 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = undefined;
7
+
8
+ var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of');
9
+
10
+ var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
11
+
12
+ var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
13
+
14
+ var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
15
+
16
+ var _createClass2 = require('babel-runtime/helpers/createClass');
17
+
18
+ var _createClass3 = _interopRequireDefault(_createClass2);
19
+
20
+ var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn');
21
+
22
+ var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
23
+
24
+ var _inherits2 = require('babel-runtime/helpers/inherits');
25
+
26
+ var _inherits3 = _interopRequireDefault(_inherits2);
27
+
28
+ var _class;
29
+
30
+ var _react = require('react');
31
+
32
+ var _react2 = _interopRequireDefault(_react);
33
+
34
+ var _mobxReact = require('mobx-react');
35
+
36
+ var _propTypes = require('prop-types');
37
+
38
+ var _propTypes2 = _interopRequireDefault(_propTypes);
39
+
40
+ var _store = require('../modifyPass/store');
41
+
42
+ var _store2 = _interopRequireDefault(_store);
43
+
44
+ var _tplusPoslogin = require('tplus-poslogin');
45
+
46
+ var _tplusComponentsTouch = require('tplus-components-touch');
47
+
48
+ require('./style.less');
49
+
50
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
51
+
52
+ var ChangeMemberCard = (0, _mobxReact.observer)(_class = function (_Component) {
53
+ (0, _inherits3.default)(ChangeMemberCard, _Component);
54
+
55
+ function ChangeMemberCard(props) {
56
+ (0, _classCallCheck3.default)(this, ChangeMemberCard);
57
+
58
+ var _this = (0, _possibleConstructorReturn3.default)(this, (ChangeMemberCard.__proto__ || (0, _getPrototypeOf2.default)(ChangeMemberCard)).call(this, props));
59
+
60
+ _this.focusInputName = null;
61
+ _this.inputTarget = null;
62
+
63
+ _this.inputKeyboard = function (e) {
64
+ var _ref = e || {},
65
+ _ref$target = _ref.target;
66
+
67
+ _ref$target = _ref$target === undefined ? {} : _ref$target;
68
+ var className = _ref$target.className,
69
+ tagName = _ref$target.tagName;
70
+
71
+ if (className.includes('key') && tagName === 'DIV') return;
72
+ if (tagName !== 'INPUT') _tplusComponentsTouch.Keyboard.close();
73
+ };
74
+
75
+ _this.handleOk = function () {
76
+ var _this$props = _this.props,
77
+ member = _this$props.member,
78
+ cancelModal = _this$props.cancelModal,
79
+ modifyMember = _this$props.modifyMember;
80
+
81
+ _this.store.changeMemberCard(member, modifyMember, function () {
82
+ cancelModal && cancelModal();
83
+ });
84
+ };
85
+
86
+ _this.keyboardOnClose = function () {
87
+ _this.inputTarget.blur();
88
+ _tplusComponentsTouch.Keyboard.close();
89
+ };
90
+
91
+ _this.watchChange = function (key, value) {
92
+ _this.store.watchChange(key, value);
93
+ };
94
+
95
+ _this.keyboardOpen = function (target, inputName) {
96
+ _this.inputTarget = target;
97
+ _this.focusInputName = inputName;
98
+ _tplusComponentsTouch.Keyboard.open(function (v) {
99
+ var key = _this.focusInputName;
100
+ var value = _tplusComponentsTouch.Keyboard.getNewValue(_this.inputTarget, _this.inputTarget.value, v);
101
+ _this.watchChange(key, value);
102
+ }, _this.handleOk, _this.keyboardOnClose)();
103
+ };
104
+
105
+ _this.splitUser = function (value) {
106
+ var regEmail = new RegExp('^[A-Za-zd0-9]+([-_.][A-Za-zd0-9]+)*@([A-Za-zd0-9]+[-.])+[A-Za-zd]{2,5}$');
107
+ var isEmail = regEmail.test(value);
108
+
109
+ if (isEmail) {
110
+ return value.split('@')[0];
111
+ }
112
+ return value;
113
+ };
114
+
115
+ _this.store = new _store2.default();
116
+ return _this;
117
+ }
118
+
119
+ (0, _createClass3.default)(ChangeMemberCard, [{
120
+ key: 'componentDidMount',
121
+ value: function componentDidMount() {
122
+ document.body.addEventListener('click', this.inputKeyboard, false);
123
+ }
124
+ }, {
125
+ key: 'componentWillUnmount',
126
+ value: function componentWillUnmount() {
127
+ document.body.removeEventListener('click', this.inputKeyboard, false);
128
+ this.store.cleanStores();
129
+ _tplusComponentsTouch.Keyboard.close();
130
+ }
131
+ }, {
132
+ key: 'render',
133
+ value: function render() {
134
+ var _this2 = this;
135
+
136
+ var _ref2 = this.store || {},
137
+ _ref2$newCardCode = _ref2.newCardCode,
138
+ newCardCode = _ref2$newCardCode === undefined ? '' : _ref2$newCardCode,
139
+ _ref2$memo = _ref2.memo,
140
+ memo = _ref2$memo === undefined ? '' : _ref2$memo;
141
+
142
+ var member = this.props.member;
143
+ var CardCode = member.CardCode,
144
+ Name = member.Name,
145
+ Mobilephone = member.Mobilephone;
146
+
147
+ var userName = (0, _tplusPoslogin.PosInitData)('UserName');
148
+ return _react2.default.createElement(
149
+ 'div',
150
+ { className: 'modify-password-container' },
151
+ _react2.default.createElement(
152
+ 'div',
153
+ { className: 'change-tplus-container' },
154
+ _react2.default.createElement(
155
+ 'div',
156
+ { className: 'content-container' },
157
+ _react2.default.createElement(
158
+ 'div',
159
+ { className: 'one' },
160
+ '\u539F\u4F1A\u5458\u5361\u53F7\uFF1A'
161
+ ),
162
+ _react2.default.createElement(
163
+ 'div',
164
+ { className: 'two' },
165
+ CardCode
166
+ )
167
+ ),
168
+ _react2.default.createElement(
169
+ 'div',
170
+ { className: 'content-container' },
171
+ _react2.default.createElement(
172
+ 'div',
173
+ { className: 'one' },
174
+ '\u4F1A\u5458\u59D3\u540D\uFF1A'
175
+ ),
176
+ _react2.default.createElement(
177
+ 'div',
178
+ { className: 'two' },
179
+ Name
180
+ )
181
+ ),
182
+ _react2.default.createElement(
183
+ 'div',
184
+ { className: 'content-container' },
185
+ _react2.default.createElement(
186
+ 'div',
187
+ { className: 'one' },
188
+ '\u624B\u673A\u53F7\uFF1A'
189
+ ),
190
+ _react2.default.createElement(
191
+ 'div',
192
+ { className: 'two' },
193
+ Mobilephone
194
+ )
195
+ ),
196
+ _react2.default.createElement(
197
+ 'div',
198
+ { className: 'content-container operator' },
199
+ _react2.default.createElement(
200
+ 'div',
201
+ { className: 'one' },
202
+ '\u7ECF\u624B\u4EBA\uFF1A'
203
+ ),
204
+ _react2.default.createElement(
205
+ 'div',
206
+ { className: 'two' },
207
+ this.splitUser(userName)
208
+ )
209
+ ),
210
+ _react2.default.createElement(
211
+ 'div',
212
+ { className: 'newCardClass' },
213
+ _react2.default.createElement(_tplusComponentsTouch.Input, {
214
+ noAutocomplete: true,
215
+ tplusInput: true,
216
+ style: { marginRight: '10px' },
217
+ type: 'native',
218
+ placeholder: '\u8BF7\u8F93\u5165\u65B0\u4F1A\u5458\u5361\u53F7',
219
+ title: '\u65B0\u4F1A\u5458\u5361\u53F7\uFF1A',
220
+ value: newCardCode,
221
+ onChange: function onChange(_ref3) {
222
+ var value = _ref3.target.value;
223
+ return _this2.watchChange('newCardCode', value);
224
+ },
225
+ onFocus: function onFocus(_ref4) {
226
+ var target = _ref4.target;
227
+ return _this2.keyboardOpen(target, 'newCardCode');
228
+ }
229
+ })
230
+ ),
231
+ _react2.default.createElement(
232
+ 'div',
233
+ { className: 'newCardClassMemo' },
234
+ _react2.default.createElement(_tplusComponentsTouch.Input, {
235
+ noAutocomplete: true,
236
+ tplusInput: true,
237
+ style: { marginRight: '10px' },
238
+ type: 'native',
239
+ placeholder: '\u8BF7\u8F93\u5165\u5907\u6CE8',
240
+ title: '\u5907\u6CE8\uFF1A',
241
+ value: memo,
242
+ onChange: function onChange(_ref5) {
243
+ var value = _ref5.target.value;
244
+ return _this2.watchChange('memo', value);
245
+ },
246
+ onFocus: function onFocus(_ref6) {
247
+ var target = _ref6.target;
248
+ return _this2.keyboardOpen(target, 'memo');
249
+ }
250
+ })
251
+ )
252
+ )
253
+ );
254
+ }
255
+ }]);
256
+ return ChangeMemberCard;
257
+ }(_react.Component)) || _class;
258
+
259
+ exports.default = ChangeMemberCard;
260
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["tplus-member/member/memberMenu/changeMemberCard/index.js"],"names":["ChangeMemberCard","observer","props","focusInputName","inputTarget","inputKeyboard","e","target","className","tagName","includes","Keyboard","close","handleOk","member","cancelModal","modifyMember","store","changeMemberCard","keyboardOnClose","blur","watchChange","key","value","keyboardOpen","inputName","open","getNewValue","v","splitUser","regEmail","RegExp","isEmail","test","split","document","body","addEventListener","removeEventListener","cleanStores","newCardCode","memo","CardCode","Name","Mobilephone","userName","marginRight","Component"],"mappings":"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","file":"index.js","sourcesContent":["import React, { Component } from 'react';\nimport { observer } from 'mobx-react';\nimport PropTypes from 'prop-types';\nimport store from '../modifyPass/store';\nimport {PosInitData} from 'tplus-poslogin';\nimport { Keyboard, Message, Input, ModalWraper } from 'tplus-components-touch';\nimport './style.less';\n\n@observer\nexport default class ChangeMemberCard extends Component {\n\n focusInputName = null;\n inputTarget = null;\n\n constructor(props) {\n super(props);\n this.store = new store();\n }\n\n componentDidMount() {\n document.body.addEventListener('click', this.inputKeyboard, false);\n }\n\n componentWillUnmount() {\n document.body.removeEventListener('click', this.inputKeyboard, false);\n this.store.cleanStores();\n Keyboard.close();\n }\n\n inputKeyboard = (e) => {\n const { target: { className, tagName } = {} } = e || {};\n if (className.includes('key') && tagName === 'DIV') return;\n if (tagName !== 'INPUT') Keyboard.close();\n }\n\n handleOk = () => {\n const { member, cancelModal, modifyMember } = this.props;\n this.store.changeMemberCard(member, modifyMember, () => {\n cancelModal && cancelModal()\n })\n }\n\n keyboardOnClose = () => {\n this.inputTarget.blur();\n Keyboard.close();\n }\n\n watchChange = (key, value) => {\n this.store.watchChange(key, value);\n }\n\n keyboardOpen = (target, inputName) => {\n this.inputTarget = target;\n this.focusInputName = inputName;\n Keyboard.open(v => {\n const key = this.focusInputName\n const value = Keyboard.getNewValue(this.inputTarget, this.inputTarget.value, v);\n this.watchChange(key, value);\n }, this.handleOk, this.keyboardOnClose)();\n }\n\n splitUser = (value) => {\n const regEmail = new RegExp('^[A-Za-zd0-9]+([-_.][A-Za-zd0-9]+)*@([A-Za-zd0-9]+[-.])+[A-Za-zd]{2,5}$');\n const isEmail = regEmail.test(value);\n\n if (isEmail) {\n return value.split('@')[0];\n }\n return value;\n }\n\n render() {\n const { newCardCode = '', memo = '' } = this.store || {};\n const { member } = this.props;\n const { CardCode, Name, Mobilephone } = member;\n const userName = PosInitData('UserName');\n return (\n <div className='modify-password-container'>\n <div className='change-tplus-container'>\n <div className='content-container'>\n <div className='one'>原会员卡号:</div>\n <div className='two'>{CardCode}</div>\n </div>\n <div className='content-container'>\n <div className='one'>会员姓名:</div>\n <div className='two'>{Name}</div>\n </div>\n <div className='content-container'>\n <div className='one'>手机号:</div>\n <div className='two'>{Mobilephone}</div>\n </div>\n <div className='content-container operator'>\n <div className='one'>经手人:</div>\n <div className='two'>{this.splitUser(userName)}</div>\n </div>\n <div className='newCardClass'>\n <Input\n noAutocomplete\n tplusInput\n style={{ marginRight: '10px' }}\n type='native'\n placeholder='请输入新会员卡号'\n title='新会员卡号:'\n value={newCardCode}\n onChange={({ target: { value } }) => this.watchChange('newCardCode', value)}\n onFocus={({ target }) => this.keyboardOpen(target, 'newCardCode')}\n />\n </div>\n <div className='newCardClassMemo'>\n <Input\n noAutocomplete\n tplusInput\n style={{ marginRight: '10px' }}\n type='native'\n placeholder='请输入备注'\n title='备注:'\n value={memo}\n onChange={({ target: { value } }) => this.watchChange('memo', value)}\n onFocus={({ target }) => this.keyboardOpen(target, 'memo')}\n />\n </div>\n </div>\n </div>\n );\n }\n}\n"]}
@@ -0,0 +1,43 @@
1
+ .u-modal {
2
+ .u-close{
3
+ opacity: 1 !important;//统一覆盖
4
+ }
5
+ .change-tplus-container {
6
+ padding-top: 10px;
7
+ .content-container {
8
+ display: flex;
9
+ font-size: 14px;
10
+ height: 30px;
11
+ padding-left: 39px;
12
+ font-family: 'PingFangSC-Regular';
13
+ .one {
14
+ width: 90px;
15
+ text-align: right;
16
+ }
17
+ .two {
18
+ margin-left: 12px;
19
+ }
20
+ }
21
+ .operator {
22
+ margin-top: 16px;
23
+ }
24
+ .tplus-input-container {
25
+ padding-left: 39px;
26
+ .tplus-input-title {
27
+ width: 92px;
28
+ }
29
+ }
30
+ }
31
+ .newCardClass {
32
+ .tplus-input-container:first-child {
33
+ margin-top: 12px;
34
+ }
35
+ }
36
+ .newCardClassMemo {
37
+ .tplus-input-container:first-child {
38
+ margin-top: 21px;
39
+ }
40
+ }
41
+ }
42
+
43
+