tplus-member 3.42.1 → 3.43.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -1 +1 @@
1
- {"version":3,"sources":["tplus-member/member/index.js"],"names":["hasElectron","env","platform","constant","electron","emptyMemberImage","memberBirthday","currentMember","MemberTag","observer","props","stores","user","options","get","isMemberInputType","MemberMeStorageCardInputByKeyBoard","OpenFaceRecognition","ICCardServer","ICCardPassword","parseInt","isStorageCardInputType","openFaceRecognition","iCCardServer","iCCardPassword","ms","memberStore","isHorizontalPad","isHorizontalSunMi","isMobileEnvironment","handleReadICard","bind","keypressStime","iseyboardKEnter","isNewRetailBCPos","state","isCC","isShowBirthdayTip","isVoucherMode","localStore","context","viewModel","data","Member","dtMember","selectMemberInfo","isClear","memberChangeData","length","undefined","ID","searchValue","setState","memberChange","newAvatar","deepCloneMember","JSON","parse","clearSeletMember","seletMember","selectMemberStore","clearMemberCare","connectRfCard","window","removeEventListener","windowOnresize","closeRfCard","nextProps","isSendMessage","getInStoreMemberCount","nativeMs","setIpcRendererMethod","result","ret","status","connectCardStatus","connectCardError","value","Message","error","params","cardPsw","cardSec","cardKm","searchMember","memberPhoto","titleModal","memberShow","inShopLoading","faceLoading","shopPerson","viewMemberInfo","searchVisible","columnInfo","isMemberCare","isMemberCareModal","mode","authProcess","selectMemberSuccess","precisionInfo","IdbusiType","items","viewVoucher","find","v","type","isTakeTheir","getIsTakeTheir","isSelectedMember","enumController","getEnumOj","Differentiate","memberCareInfo","inputSearch","el","input","e","handleSearch","target","handleFocus","handleBlur","onKeyPressed","changeScanProduct","loadFaceRecognition","scanObj","scan","onScanResult","openPhotoModal","ImageFile","handlePhotoModal","isTicket","daysToBirthday","handleMemberCareModal","setIsShowBirthdayTip","openShowModal","Name","CardCode","BalanceStorage","computedCoupon","COUPON","BalanceIntegral","openCloseModal","handleShowModal","handleMemberCareModalCancel","MemberType","memberCareDTO","memberRightRuleList","integralMultiple","integralGive","couponIdMapList","map","index","count","name","birthdayShow","handleCloseBirthdayModal","Component","propTypes","PropTypes","func","memberSearched","contextTypes","onEvent","object","defaultProps","controllerEvent","methodName","methodArgs","Action","fromJS","fn","resolve","resetInShopMemberTimer","timer","clearTimeout","time","setTimeout","warn","res","title","jsMember","updateMember","setMemberFocus","uiState","IsIntegralExchange","store","tip","info","ModalWraper","confirm","className","content","onOk","changeBirthdayShow","val","Keyboard","open","getNewValue","keyboardClose","bottom","open2","blur","close","close2","readRfCard","offlineSys","shouldInOffline","searchLoading","trim","getMemberBirthday","getMeStorageCard","getSearchMember","currentPage","pageSize","key","isSingleMember","then","ColumnInfo","Data","RetailDetails","member","retailDetails","isArrowPriceChange","IsStorage","drawerStore","init","onHide","subKey","listArr","changeMemberCare","catch","keyCode","stime","etime","Date","MemberCouponCount","couponKey","DynamicPropertyKeys","DynamicPropertyValues","couponIndex","findIndex","loadInStoreMember","String","tipMessage","console","log","err","startScan","getMemberBirthdayInfo"],"mappings":"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","file":"index.js","sourcesContent":["/**\r\n * @memberChange member 状态发生变化时的回调\r\n * @memberSearched 录入框会员状态发生变化时的回调 memberSearched(value, type) // type: searched 触发搜索 | err 搜索接口错误 | close 关闭会员\r\n *\r\n */\r\nimport React, { Component, Fragment } from 'react';\r\nimport { Button, Input } from 'antd';\r\nimport { observer } from 'mobx-react';\r\nimport { toJS } from 'mobx';\r\nimport PropTypes from 'prop-types'\r\nimport { Ticon, Message, ModalWraper, Spin, Keyboard,Scan } from 'tplus-components-touch';\r\nimport { env, nativeMs, localStore , stores} from 'mutants-microfx';\r\nimport { Action } from 'mutants-appfx'\r\nimport { platform, enumController } from 'mutants-util';\r\nimport MemberModal from './MemberShow';\r\nimport MemberPhoto from './MemberPhoto';\r\nimport memberStore from './api';\r\nimport { formatPrecision, userInfoFormat, errMessageTip } from '../utils';\r\nimport './index.less';\r\n\r\n\r\n\r\nconst hasElectron = (env.platform === env.constant.platform.electron);\r\n//定义默认头像值。\r\nconst emptyMemberImage = 'https://newretail.static.chanjet.com/default_avatar.png';\r\nconst memberBirthday = 'https://newretail.static.chanjet.com/pictures/member_birthday.png';\r\nlet currentMember;\r\n\r\n@observer\r\nclass MemberTag extends Component {\r\n\r\n state = {\r\n searchValue: '',\r\n titleModal: '',\r\n memberShow: false,\r\n memberPhoto: false,\r\n searchVisible: false,\r\n shopPerson: 0,\r\n status: 2, // 0会员详情、1到店会员、2人脸识别\r\n dtMember: {}, // 会员信息\r\n connectCardStatus: false, //连接IC卡状态\r\n connectCardError: '', //连接IC卡错误后记录错误信息\r\n isMemberCare: false,\r\n isMemberCareModal: false\r\n };\r\n\r\n static propTypes = {\r\n memberChange: PropTypes.func,\r\n memberSearched: PropTypes.func,\r\n }\r\n\r\n static contextTypes = {\r\n onEvent:PropTypes.func,\r\n viewModel: PropTypes.object,\r\n }\r\n\r\n static defaultProps = {\r\n memberChange: () => { },\r\n }\r\n\r\n constructor(props) {\r\n super(props);\r\n this.hasElectron = hasElectron;\r\n const { isMemberInputType, MemberMeStorageCardInputByKeyBoard, OpenFaceRecognition, ICCardServer, ICCardPassword } = stores.user.options.get('loginInfo') || {};\r\n this.isMemberInputType = parseInt(isMemberInputType); // '0'为不禁用 '1'为禁用\r\n this.isStorageCardInputType = MemberMeStorageCardInputByKeyBoard; // 仅储值卡是否禁用键盘输入,'0'为不禁用 '1'为禁用\r\n this.openFaceRecognition = parseInt(OpenFaceRecognition); // 启用人脸识别:0禁用 1为启用\r\n this.iCCardServer = parseInt(ICCardServer); // 启用IC卡:0为禁用 1为启用\r\n this.iCCardPassword = ICCardPassword; //IC卡密码\r\n this.ms = memberStore;\r\n //移动端环境下,没有读取IC卡的方式。\r\n const { isHorizontalPad, isHorizontalSunMi } = platform || {};\r\n this.isHorizontalPad = !!isHorizontalPad;\r\n this.isHorizontalSunMi = !!isHorizontalSunMi;\r\n this.isMobileEnvironment = !!isHorizontalPad || !!isHorizontalSunMi;\r\n this.handleReadICard = this.handleReadICard.bind(this);\r\n\r\n //记录键盘录入信息的开始时间\r\n this.keypressStime = null;\r\n this.iseyboardKEnter = false; //是否为键盘输入\r\n let { isNewRetailBCPos } = platform || {};\r\n this.state = {\r\n isCC: !!isNewRetailBCPos,\r\n isShowBirthdayTip: false,\r\n };\r\n\r\n //是否单据模式\r\n this.isVoucherMode = localStore && localStore.get('voucherDefaultPosMode') == 'voucher';\r\n }\r\n\r\n componentWillReact() {\r\n const { data: { Member: dtMember = {} } = {} } = this.context.viewModel || {};\r\n const { selectMemberInfo = {}, isClear = false } = this.ms;\r\n const memberChangeData = Object.keys(selectMemberInfo).length ? selectMemberInfo : undefined;\r\n // 有会员的话清空搜索框文本\r\n if (dtMember.ID && this.state.searchValue) {\r\n this.setState({\r\n searchValue: ''\r\n })\r\n }\r\n const memberChange = (data) => {\r\n this.setState({newAvatar: ''});\r\n this.props.memberChange(data);\r\n }\r\n if (typeof memberChangeData === 'object') {\r\n const deepCloneMember = JSON.parse(JSON.stringify(memberChangeData));\r\n if (!currentMember) {\r\n currentMember = deepCloneMember;\r\n memberChange(memberChangeData);\r\n } else if (currentMember.ID !== memberChangeData.ID) {\r\n memberChange(memberChangeData);\r\n currentMember = deepCloneMember;\r\n } else if (!dtMember.ID && (currentMember || {}).ID) { // DataModel 中清掉member,手动同步 member\r\n currentMember = undefined;\r\n this.ms.clearSeletMember();\r\n }\r\n } else if (currentMember && !memberChangeData) {\r\n memberChange(memberChangeData);\r\n currentMember = undefined;\r\n } else if (dtMember.ID && !(currentMember || {}).ID) { // DataModel 中存在member,手动同步 member\r\n const deepCloneMember = JSON.parse(JSON.stringify(dtMember));\r\n currentMember = deepCloneMember;\r\n this.ms.seletMember(dtMember);\r\n }\r\n }\r\n\r\n componentDidMount() {\r\n stores.selectMemberStore && stores.selectMemberStore.clearMemberCare()\r\n this.connectRfCard();\r\n }\r\n\r\n componentWillUnmount() {\r\n window.removeEventListener('resize', this.windowOnresize);\r\n this.closeRfCard();\r\n }\r\n\r\n componentWillReceiveProps(nextProps) {\r\n //接受socket传递过来的信息\r\n let { isSendMessage } = nextProps;\r\n if (isSendMessage === true) this.getInStoreMemberCount()\r\n }\r\n\r\n controllerEvent = (methodName, methodArgs) => {\r\n return new Promise(resolve => {\r\n this.context.onEvent({ 'controllerEvent': Action.fromJS(this.context.viewModel, methodName) }, 'controllerEvent', { ...methodArgs, fn: function(result) {\r\n resolve(result);\r\n }});\r\n });\r\n }\r\n\r\n resetInShopMemberTimer = (count) => {\r\n this.timer && clearTimeout(this.timer);\r\n if (!count) return;\r\n const time = 5 * 60 * 1000;\r\n this.timer = setTimeout(() => {\r\n this.getInStoreMemberCount();\r\n }, time);\r\n }\r\n //IC卡连接\r\n connectRfCard() {\r\n //客户端环境下,并开启了启用IC卡。\r\n if (this.hasElectron === true && this.iCCardServer === 1) {\r\n nativeMs.setIpcRendererMethod('ConnectRfCard', null, ret => {\r\n let result = {}\r\n if (ret.status === 0) {\r\n result = { connectCardStatus: false, connectCardError: ret.value }\r\n } else {\r\n result = { connectCardStatus: true, connectCardError: '' };\r\n }\r\n this.setState(result)\r\n })\r\n }\r\n }\r\n\r\n //IC卡读取\r\n readRfCard() {\r\n //客户端环境下,并开启了启用IC卡。\r\n if (this.hasElectron === true && this.iCCardServer === 1) {\r\n const { connectCardStatus, connectCardError } = this.state;\r\n if (connectCardStatus === false) {\r\n Message.error(connectCardError ? connectCardError : '读取IC卡失败');\r\n this.connectRfCard(); //读取失败后,重新连接一下。\r\n return;\r\n }\r\n let params = { cardPsw: this.iCCardPassword, cardSec: 13, cardKm: 0 }\r\n nativeMs.setIpcRendererMethod('ReadRfCard', { ...params }, ret => {\r\n if (ret.status === 0) {\r\n Message.error(ret.value);\r\n this.connectRfCard(); //读取失败后,重新连接一下。\r\n return;\r\n } else if (ret.status === 1) {\r\n this.searchMember(ret.value);\r\n }\r\n })\r\n }\r\n }\r\n\r\n //IC卡关闭\r\n closeRfCard(){\r\n if (this.hasElectron === true && this.iCCardServer === 1) {\r\n nativeMs.setIpcRendererMethod('CloseRfCard')\r\n }\r\n }\r\n\r\n openPhotoModal = () => {\r\n let { isNewRetailBCPos } = platform || {};\r\n if (!isNewRetailBCPos) {\r\n if (!this.openFaceRecognition) {\r\n Message.warn('未启用人脸识别,需要先开启人脸识别功能');\r\n return;\r\n }\r\n this.setState({\r\n memberPhoto: true,\r\n titleModal: '选择头像'\r\n })\r\n }\r\n }\r\n\r\n openShowModal = (status, res) => {\r\n let title = '';\r\n const { data: { Member = {} } = {} } = this.context.viewModel || {};\r\n const {newAvatar} = this.state;\r\n const jsMember = toJS(Member);\r\n const updateMember = newAvatar ? {...jsMember, ImageFile: newAvatar} : jsMember;\r\n switch (status) {\r\n case 0:\r\n title = '会员详情';\r\n this.setState({ viewMemberInfo: updateMember })\r\n break;\r\n case 1:\r\n title = '到店会员';\r\n this.setState({ viewMemberInfo: res })\r\n break;\r\n case 2:\r\n title = '人脸识别';\r\n this.setState({ viewMemberInfo: res })\r\n break;\r\n }\r\n this.setState({\r\n status: status,\r\n memberShow: true,\r\n titleModal: title\r\n })\r\n }\r\n\r\n openCloseModal = () => {\r\n const { setMemberFocus } = this.props;\r\n const memberStore = this.context.viewModel && this.context.viewModel.items.find(el => el.name == 'MemberStore');\r\n const uiState = memberStore.uiState;\r\n const IsIntegralExchange = memberStore.store && memberStore.store.data && memberStore.store.data.IsIntegralExchange\r\n if (!!uiState.tip) {\r\n Message.info(uiState.tip)\r\n return;\r\n }\r\n ModalWraper.confirm({\r\n className: 'tplus-confirm-modal',\r\n title: '关闭会员',\r\n content: `${IsIntegralExchange ? \"关闭会员将会清空商品信息!\" : \"确定要关闭该会员吗?\"}`,\r\n onOk: () => {\r\n this.ms.clearSeletMember();\r\n stores.selectMemberStore.clearMemberCare();\r\n typeof setMemberFocus == 'function' && setMemberFocus();\r\n }\r\n })\r\n }\r\n\r\n //关闭生日提醒\r\n handleCloseBirthdayModal = () => {\r\n this.ms.changeBirthdayShow(false);\r\n }\r\n\r\n //会员关怀-送礼\r\n handleMemberCareModal = () => {\r\n this.setState({ isMemberCareModal: true })\r\n }\r\n handleMemberCareModalCancel = () => {\r\n this.setState({ isMemberCareModal: false })\r\n }\r\n\r\n handleSearch = (val) => {\r\n this.setState({ searchValue: val })\r\n }\r\n\r\n handleFocus = (el) => {\r\n if (this.isMemberInputType) return;\r\n if (this.isVoucherMode) {\r\n Keyboard.open(\r\n v => {\r\n const value = Keyboard.getNewValue(this.inputSearch, this.inputSearch.value, v);\r\n this.handleSearch(value);\r\n },\r\n () => { this.searchMember(undefined, 'ok') },\r\n this.keyboardClose,\r\n {bottom: 60}\r\n )()\r\n } else {\r\n Keyboard.open2(\r\n (v) => {\r\n const value = Keyboard.getNewValue(this.inputSearch, this.inputSearch.value, v);\r\n this.handleSearch(value);\r\n },\r\n () => {\r\n this.searchMember(undefined, 'ok');\r\n },\r\n this.keyboardClose,\r\n 'ByMember',\r\n localStore.get('ByMember')\r\n )\r\n }\r\n }\r\n\r\n keyboardClose = () => {\r\n this.inputSearch.blur();\r\n }\r\n\r\n handleBlur = () => {\r\n if (this.isVoucherMode) {\r\n Keyboard.close();\r\n } else {\r\n Keyboard.close2();\r\n }\r\n }\r\n\r\n handleReadICard = () => {\r\n this.readRfCard();\r\n }\r\n\r\n handleShowModal = (type, params) => {\r\n if (params) {\r\n this.setState({ dtMember: params, memberShow: type })\r\n } else {\r\n this.setState({ memberShow: type })\r\n }\r\n }\r\n\r\n handlePhotoModal = (type, newAvatar) => {\r\n if (newAvatar) {\r\n this.setState({\r\n newAvatar,\r\n memberPhoto: type\r\n })\r\n } else {\r\n this.setState({ memberPhoto: type })\r\n }\r\n }\r\n\r\n searchMember = (val, type) => {\r\n if(!stores.offlineSys.shouldInOffline()) return;\r\n if (!this.ms || this.searchLoading) return;\r\n const {searchValue} = this.state;\r\n val = val || (searchValue || '').trim();\r\n if (!val) return;\r\n const { memberSearched, selectMemberSuccess,setMemberFocus,getMemberBirthday, getMeStorageCard } = this.props;\r\n this.searchLoading = true;\r\n this.setState({searchVisible: true});\r\n this.ms.getSearchMember({\r\n currentPage: 1,\r\n pageSize: 10,\r\n key: val,\r\n isSingleMember: true\r\n }).then(async (ret) => {\r\n this.searchLoading = false;\r\n const {ColumnInfo: columnInfo, Data} = ret || {};\r\n const data = JSON.parse(Data) || [];\r\n const info = data[0];\r\n if (data.length === 1 && info) {\r\n const { data: { RetailDetails = [] } = {} } = this.context.viewModel || {};\r\n let isArrowPriceChange = await this.controllerEvent('memberPriceChangeValidate', { member: info, retailDetails: toJS(RetailDetails)});\r\n if (!isArrowPriceChange) {\r\n this.setState({searchVisible: false, searchValue: ''});\r\n return;\r\n }\r\n }\r\n this.setState({searchVisible: false, columnInfo});\r\n if (info && info.MemberType && info.MemberType.IsStorage && this.isStorageCardInputType && this.iseyboardKEnter){\r\n getMeStorageCard && getMeStorageCard(true);\r\n this.handleSearch('');\r\n this.keypressStime = null;\r\n } else {\r\n getMeStorageCard && getMeStorageCard(false);\r\n }\r\n memberSearched && memberSearched(info, 'searched');\r\n if (info) {\r\n if (data.length > 1) {\r\n stores.drawerStore.init({\r\n title: '会员管理',\r\n key: 'member',\r\n onHide:()=>{\r\n },\r\n subKey: 'memberManager',\r\n listArr: data,\r\n });\r\n this.setState({\r\n searchValue: null\r\n })\r\n } else {\r\n memberSearched && memberSearched(info, 'searched');\r\n userInfoFormat(info);\r\n if (errMessageTip(info)) return;\r\n this.ms.seletMember(info, true);\r\n setTimeout(() => this.setState({ searchValue: '' }), 0);\r\n this.handleBlur();\r\n selectMemberSuccess && selectMemberSuccess();\r\n getMemberBirthday && getMemberBirthday(info.ID, (result) => {\r\n stores.selectMemberStore.changeMemberCare(result);\r\n });\r\n }\r\n } else {\r\n if (type === 'ok'){\r\n Message.warn('会员不存在');\r\n if (this.isMobileEnvironment) {\r\n setTimeout(() => this.setState({ searchValue: '' }), 0);\r\n }\r\n typeof setMemberFocus == 'function' && setMemberFocus();\r\n }\r\n }\r\n }).catch(err => {\r\n this.setState({searchVisible: false});\r\n this.searchLoading = false;\r\n memberSearched && memberSearched(undefined, 'err');\r\n })\r\n }\r\n\r\n //获取当前到店会员数量\r\n getInStoreMemberCount = () => {\r\n if (!this.ms) return;\r\n this.ms.getInStoreMemberCount().then(res => {\r\n const {data: {data: shopPerson} = {}} = res || {};\r\n this.setState({shopPerson});\r\n this.resetInShopMemberTimer(shopPerson);\r\n });\r\n }\r\n\r\n onKeyPressed = (e) => {\r\n const keyCode = e && e.keyCode\r\n if (keyCode === 13) {\r\n if (this.isMemberInputType) {\r\n let stime = this.keypressStime;\r\n let etime = Date.parse(new Date());\r\n if (etime - stime > 300) {\r\n this.handleSearch('')\r\n this.keypressStime = null;\r\n return Message.warn('未启用键盘录入功能');\r\n }\r\n this.keypressStime = null;\r\n }\r\n this.iseyboardKEnter = Date.parse(new Date()) - this.keypressStime > 300;\r\n if (this.isStorageCardInputType) {\r\n this.keypressStime = null;\r\n }\r\n if (this.searchLoading) return;\r\n this.searchMember(undefined, 'ok');\r\n }\r\n else if (this.isMemberInputType && !this.keypressStime && !(keyCode == 8)) {\r\n this.keypressStime = Date.parse(new Date())\r\n } else if (this.isStorageCardInputType && !this.keypressStime && !(keyCode == 8) && !this.isMemberInputType) {\r\n this.keypressStime = Date.parse(new Date())\r\n }\r\n }\r\n\r\n computedCoupon = (member = {}) => {\r\n let { isNewRetailBCPos } = platform || {};\r\n if (!!isNewRetailBCPos) {\r\n return member.MemberCouponCount? member.MemberCouponCount : '0';\r\n } else {\r\n const couponKey = 'membercouponcount';\r\n const {DynamicPropertyKeys = [], DynamicPropertyValues = []} = member;\r\n const couponIndex = DynamicPropertyKeys.findIndex(v => v === couponKey);\r\n return ~couponIndex ? DynamicPropertyValues[couponIndex] : '0';\r\n }\r\n }\r\n\r\n loadFaceRecognition = (type) => {\r\n // type = 1:到店会员 type = 2:POS机人脸识别\r\n this.setState({faceLoading: type === 2, inShopLoading: type === 1});\r\n this.ms.loadInStoreMember(String(type))\r\n .then(res => {\r\n this.setState({faceLoading: false, inShopLoading: false});\r\n const {Data} = res || {};\r\n if (!JSON.parse(Data).length) {\r\n const tipMessage = ['当前没有到店会员', '未识别到人脸信息'];\r\n type === 1 && this.setState({shopPerson: 0});\r\n return Message.info(tipMessage[type - 1]);\r\n }\r\n type === 1 && this.getInStoreMemberCount();\r\n this.openShowModal(type, res);\r\n })\r\n .catch(err => {\r\n this.setState({faceLoading: false, inShopLoading: false});\r\n console.log(err)\r\n });\r\n }\r\n\r\n //移动端:扫描商品\r\n changeScanProduct = () => {\r\n if (this.scanObj) this.scanObj.startScan()\r\n }\r\n onScanResult = (res) => {\r\n this.setState({\r\n searchValue: res\r\n }, () => {\r\n this.onKeyPressed({ keyCode: 13 })\r\n })\r\n }\r\n\r\n setIsShowBirthdayTip = () => {\r\n stores.selectMemberStore.clearMemberCare()\r\n }\r\n\r\n getMemberBirthdayInfo = (result) => {\r\n stores.selectMemberStore.changeMemberCare(result);\r\n }\r\n\r\n render() {\r\n const {\r\n memberPhoto, titleModal, memberShow, inShopLoading = false, faceLoading = false,\r\n status, shopPerson, searchValue, viewMemberInfo, newAvatar, searchVisible = false, columnInfo, isCC,\r\n isMemberCare, isMemberCareModal, isShowBirthdayTip\r\n } = this.state;\r\n const { mode = 'formal', authProcess, selectMemberSuccess } = this.props;\r\n const { selectMemberInfo, precisionInfo = {} } = this.ms; //selectMemberInfo 用作触发mobox render\r\n const { data: { Member: dtMember = {}, IdbusiType } = {}, items = [] } = this.context.viewModel || {};\r\n const viewVoucher = items.find(v => v.type === 'Voucher') || {};\r\n const isTakeTheir = viewVoucher.getIsTakeTheir && viewVoucher.getIsTakeTheir();\r\n const isSelectedMember = !!dtMember.ID;\r\n const { Differentiate } = enumController.getEnumOj();\r\n const { memberCareInfo } = stores.selectMemberStore;\r\n let { isNewRetailBCPos } = platform || {};\r\n\r\n return (\r\n <div className='MemberContainer'>\r\n <div className='left'>\r\n {!isSelectedMember &&\r\n <div className='search'>\r\n <div className='b1'>\r\n <Input\r\n type='text'\r\n className=\"input\"\r\n id='memberPoint'\r\n placeholder='扫描/输入会员号'\r\n value={searchValue}\r\n ref={el => this.inputSearch = el && el.input}\r\n onChange={(e) => this.handleSearch(e.target.value)}\r\n onFocus={this.handleFocus}\r\n onBlur={this.handleBlur}\r\n onKeyDown={this.onKeyPressed}\r\n disabled={IdbusiType == 39}\r\n />\r\n <Spin\r\n className='search-spin'\r\n scale={0.8}\r\n type='circle-side'\r\n visible={searchVisible}\r\n />\r\n </div>\r\n <div className='b2'>\r\n {\r\n this.hasElectron === true && this.iCCardServer === 1 &&\r\n <Ticon className='icon' onClick={this.handleReadICard} type=\"ICka\" />\r\n }\r\n {\r\n this.isHorizontalPad ?\r\n <Ticon type='saomiao1' className='icon' onClick={this.changeScanProduct} />\r\n :\r\n (\r\n false && this.openFaceRecognition === 1 && !faceLoading &&\r\n <div className='openFaceRecognition-box'>\r\n <Ticon className='icon' onClick={() => this.loadFaceRecognition(2)} type=\"renlianshibie\" />\r\n <Spin\r\n className='face-spin'\r\n scale={0.8}\r\n type='circle'\r\n visible={faceLoading}\r\n />\r\n </div>\r\n )\r\n }\r\n {\r\n /* 扫描组件 */\r\n this.isHorizontalPad &&\r\n <Scan ref={scan => this.scanObj = scan} onChange={this.onScanResult} />\r\n }\r\n </div>\r\n </div>\r\n }\r\n {isSelectedMember &&\r\n <div className={`info ${this.openFaceRecognition ? '' : 'member-btn-hidden-flex'}`}>\r\n <div className='first'>\r\n <img onClick={this.openPhotoModal} src={newAvatar || dtMember.ImageFile || emptyMemberImage} />\r\n {memberPhoto && <MemberPhoto dtMember={dtMember} showModal={memberPhoto} titleModal={titleModal} handleModal={this.handlePhotoModal} />}\r\n {\r\n memberCareInfo && memberCareInfo.isTicket && <Ticon type=\"shengri\" className='shengriIcon'></Ticon>\r\n }\r\n {\r\n memberCareInfo && memberCareInfo.isTicket && <div className='birthdayContent'>\r\n <div className='birthdayWarn'>{memberCareInfo.daysToBirthday === 0 ? '今天生日' : memberCareInfo.daysToBirthday + '天后生日'}</div>\r\n <Button colors=\"warn\" onClick={this.handleMemberCareModal} className='check bg-theme'>查看</Button>\r\n <Ticon type=\"cuowuda\" className='cuowudaIcon'></Ticon>\r\n </div>\r\n }\r\n {\r\n memberCareInfo && memberCareInfo.isTicket && <Ticon type=\"cuowuda\" onClick={() => { this.setIsShowBirthdayTip()}} className='cuowudaIcon'></Ticon>\r\n }\r\n </div>\r\n <div className='second member-hotkey-info' onClick={() => this.openShowModal(0)}>\r\n <div className='one'>\r\n {dtMember.Name && <div className='a'>{dtMember.Name}</div>}\r\n <div className='b'>{dtMember.CardCode}</div>\r\n </div>\r\n <div className='two'>\r\n <div className='a'>{formatPrecision(dtMember.BalanceStorage, precisionInfo.BalanceStorage)}</div>\r\n <div className='b'>余额</div>\r\n </div>\r\n <div className='two'>\r\n <div className='a'>{this.computedCoupon(dtMember)}</div>\r\n <div className='b'>{Differentiate.COUPON}</div>\r\n </div>\r\n <div className='two'>\r\n <div className='a'>{formatPrecision(dtMember.BalanceIntegral, precisionInfo.BalanceIntegral) || 0}</div>\r\n <div className='b'>积分</div>\r\n </div>\r\n </div>\r\n <div className='close'>\r\n {!isTakeTheir && IdbusiType !=39 && <Ticon type=\"guanbi-yuan\" onClick={this.openCloseModal} />}\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n {/* {\r\n memberCareInfo && memberCareInfo.isTicket ? <div className='float'>\r\n <div className='txt'>{memberCareInfo.daysToBirthday === 0 ? '今天生日' : memberCareInfo.daysToBirthday + '天后生日'}</div>\r\n <div className='btn' onClick={this.handleMemberCareModal}>查看</div>\r\n <div className='cancel'>\r\n <Ticon type='guanbixiao' onClick={() => {\r\n this.setIsShowBirthdayTip()\r\n }}/>\r\n </div>\r\n </div> : null\r\n } */}\r\n {!!this.openFaceRecognition && <div className='right'>\r\n <Button type=\"primary\" onClick={() => this.loadFaceRecognition(1)} className='btn' disabled={inShopLoading}>\r\n {!inShopLoading && '到店会员'}\r\n <Spin\r\n className='inshop-member-spin'\r\n scale={0.8}\r\n type='circle'\r\n visible={inShopLoading}\r\n />\r\n {!!shopPerson && <div className='badge'>{shopPerson}</div>}\r\n </Button>\r\n </div>}\r\n <MemberModal\r\n mode={mode}\r\n authProcess={authProcess}\r\n viewMemberInfo={viewMemberInfo}\r\n columnInfo={columnInfo}\r\n status={status}\r\n showModal={memberShow}\r\n storeKey='memberManager'\r\n titleModal={titleModal}\r\n selectMemberSuccess={selectMemberSuccess}\r\n handleModal={this.handleShowModal}\r\n />\r\n <ModalWraper\r\n show={isMemberCareModal}\r\n className='member-care-modal'\r\n width='688'\r\n centered={true}\r\n memberClass='memberCareWidth'\r\n cancel={this.handleMemberCareModalCancel}\r\n >\r\n <div className='first'>会员生日关怀</div>\r\n <div className='second'>\r\n <div className='secondContent'>\r\n <Ticon type='dengpao'/>\r\n <span>口头关怀客户,提示引导客户去线上商城领取权益。</span>\r\n </div>\r\n </div>\r\n <div className='third'>\r\n <div className='one'>\r\n <img src={emptyMemberImage} />\r\n <Ticon type='shengri' />\r\n </div>\r\n <div className='two'>\r\n {\r\n memberCareInfo && memberCareInfo.daysToBirthday === 0 ? <span>\r\n 今天是{dtMember.Name}的生日,该会员是{dtMember.MemberType.Name},可享受以下权益\r\n </span> : <span>\r\n {dtMember.Name}会员还有{memberCareInfo && memberCareInfo.daysToBirthday}天生日,该会员是{dtMember.MemberType.Name},可享受以下权益\r\n </span>\r\n }\r\n </div>\r\n </div>\r\n {\r\n memberCareInfo && <div className='fourth'>\r\n {memberCareInfo && memberCareInfo.memberCareDTO && memberCareInfo.memberCareDTO.memberRightRuleList && memberCareInfo.memberCareDTO.memberRightRuleList[0].integralMultiple && <div className='item'>1.{ memberCareInfo.memberCareDTO.memberRightRuleList[0].integralMultiple}</div>}\r\n {memberCareInfo && memberCareInfo.memberCareDTO && memberCareInfo.memberCareDTO.memberRightRuleList && memberCareInfo.memberCareDTO.memberRightRuleList[0].integralGive && <div className='item'>2.{ memberCareInfo.memberCareDTO.memberRightRuleList[0].integralGive}</div>}\r\n {\r\n memberCareInfo && memberCareInfo.memberCareDTO && memberCareInfo.memberCareDTO.memberRightRuleList && memberCareInfo.memberCareDTO.memberRightRuleList[0].couponIdMapList.map((value, index) => {\r\n let count = 0;\r\n if (memberCareInfo.memberCareDTO.memberRightRuleList[0].integralMultiple) {\r\n count += 1;\r\n }\r\n if (memberCareInfo.memberCareDTO.memberRightRuleList[0].integralGive) {\r\n count += 1;\r\n }\r\n return (<div className='item'>{count + 1 + index}.{value.name}</div>)\r\n })\r\n }\r\n </div>\r\n }\r\n </ModalWraper>\r\n {\r\n !isNewRetailBCPos && <ModalWraper show={this.ms.birthdayShow} centered={true} className='member-birthday'>\r\n <div className='picture'>\r\n <img width='350' height='308' src={memberBirthday} />\r\n <Ticon type=\"guanbi-yuan\" onClick={this.handleCloseBirthdayModal} />\r\n </div>\r\n <div className='remark'>今天是会员<span>{dtMember.Name || dtMember.CardCode}</span>的生日</div>\r\n </ModalWraper>\r\n }\r\n </div>\r\n );\r\n }\r\n}\r\nexport default MemberTag\r\n"]}
1
+ {"version":3,"sources":["tplus-member/member/index.js"],"names":["hasElectron","env","platform","constant","electron","emptyMemberImage","memberBirthday","currentMember","MemberTag","observer","props","stores","user","options","get","isMemberInputType","MemberMeStorageCardInputByKeyBoard","OpenFaceRecognition","ICCardServer","ICCardPassword","parseInt","isStorageCardInputType","openFaceRecognition","iCCardServer","iCCardPassword","ms","memberStore","isHorizontalPad","isHorizontalSunMi","isMobileEnvironment","handleReadICard","bind","keypressStime","iseyboardKEnter","isNewRetailBCPos","state","isCC","isShowBirthdayTip","isVoucherMode","localStore","context","viewModel","data","Member","dtMember","selectMemberInfo","isClear","memberChangeData","length","undefined","ID","searchValue","setState","memberChange","newAvatar","deepCloneMember","JSON","parse","clearSeletMember","seletMember","selectMemberStore","clearMemberCare","connectRfCard","window","removeEventListener","windowOnresize","closeRfCard","nextProps","isSendMessage","getInStoreMemberCount","nativeMs","setIpcRendererMethod","result","ret","status","connectCardStatus","connectCardError","value","Message","error","params","cardPsw","cardSec","cardKm","searchMember","memberPhoto","titleModal","memberShow","inShopLoading","faceLoading","shopPerson","viewMemberInfo","searchVisible","columnInfo","isMemberCare","isMemberCareModal","mode","authProcess","selectMemberSuccess","precisionInfo","IdbusiType","items","viewVoucher","find","v","type","isTakeTheir","getIsTakeTheir","isSelectedMember","enumController","getEnumOj","Differentiate","memberCareInfo","inputSearch","el","input","e","handleSearch","target","handleFocus","handleBlur","onKeyPressed","changeScanProduct","loadFaceRecognition","scanObj","scan","onScanResult","openPhotoModal","ImageFile","handlePhotoModal","isTicket","daysToBirthday","handleMemberCareModal","setIsShowBirthdayTip","openShowModal","Name","CardCode","BalanceStorage","computedCoupon","COUPON","BalanceIntegral","openCloseModal","handleShowModal","handleMemberCareModalCancel","MemberType","memberCareDTO","memberRightRuleList","integralMultiple","integralGive","couponIdMapList","map","index","count","name","birthdayShow","handleCloseBirthdayModal","Component","propTypes","PropTypes","func","memberSearched","contextTypes","onEvent","object","defaultProps","controllerEvent","methodName","methodArgs","Action","fromJS","fn","resolve","resetInShopMemberTimer","timer","clearTimeout","time","setTimeout","warn","res","title","jsMember","updateMember","setMemberFocus","uiState","IsIntegralExchange","store","tip","info","ModalWraper","confirm","className","content","onOk","changeBirthdayShow","val","Keyboard","open","getNewValue","keyboardClose","bottom","open2","blur","close","close2","readRfCard","offlineSys","shouldInOffline","searchLoading","trim","getMemberBirthday","getMeStorageCard","getSearchMember","currentPage","pageSize","key","isSingleMember","then","ColumnInfo","Data","RetailDetails","member","retailDetails","isArrowPriceChange","IsStorage","drawerStore","init","onHide","subKey","listArr","changeMemberCare","catch","keyCode","stime","etime","Date","MemberCouponCount","couponKey","DynamicPropertyKeys","DynamicPropertyValues","couponIndex","findIndex","loadInStoreMember","String","tipMessage","console","log","err","startScan","getMemberBirthdayInfo"],"mappings":"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","file":"index.js","sourcesContent":["/**\r\n * @memberChange member 状态发生变化时的回调\r\n * @memberSearched 录入框会员状态发生变化时的回调 memberSearched(value, type) // type: searched 触发搜索 | err 搜索接口错误 | close 关闭会员\r\n *\r\n */\r\nimport React, { Component, Fragment } from 'react';\r\nimport { Button, Input } from 'antd';\r\nimport { observer } from 'mobx-react';\r\nimport { toJS } from 'mobx';\r\nimport PropTypes from 'prop-types'\r\nimport { Ticon, Message, ModalWraper, Spin, Keyboard,Scan } from 'tplus-components-touch';\r\nimport { env, nativeMs, localStore , stores} from 'mutants-microfx';\r\nimport { Action } from 'mutants-appfx'\r\nimport { platform, enumController } from 'mutants-util';\r\nimport MemberModal from './MemberShow';\r\nimport MemberPhoto from './MemberPhoto';\r\nimport memberStore from './api';\r\nimport { formatPrecision, userInfoFormat, errMessageTip } from '../utils';\r\nimport './index.less';\r\n\r\nconst hasElectron = (env.platform === env.constant.platform.electron);\r\n//定义默认头像值。\r\nconst emptyMemberImage = 'https://newretail.static.chanjet.com/default_avatar.png';\r\nconst memberBirthday = 'https://newretail.static.chanjet.com/pictures/member_birthday.png';\r\nlet currentMember;\r\n\r\n@observer\r\nclass MemberTag extends Component {\r\n\r\n state = {\r\n searchValue: '',\r\n titleModal: '',\r\n memberShow: false,\r\n memberPhoto: false,\r\n searchVisible: false,\r\n shopPerson: 0,\r\n status: 2, // 0会员详情、1到店会员、2人脸识别\r\n dtMember: {}, // 会员信息\r\n connectCardStatus: false, //连接IC卡状态\r\n connectCardError: '', //连接IC卡错误后记录错误信息\r\n isMemberCare: false,\r\n isMemberCareModal: false\r\n };\r\n\r\n static propTypes = {\r\n memberChange: PropTypes.func,\r\n memberSearched: PropTypes.func,\r\n }\r\n\r\n static contextTypes = {\r\n onEvent:PropTypes.func,\r\n viewModel: PropTypes.object,\r\n }\r\n\r\n static defaultProps = {\r\n memberChange: () => { },\r\n }\r\n\r\n constructor(props) {\r\n super(props);\r\n this.hasElectron = hasElectron;\r\n const { isMemberInputType, MemberMeStorageCardInputByKeyBoard, OpenFaceRecognition, ICCardServer, ICCardPassword } = stores.user.options.get('loginInfo') || {};\r\n this.isMemberInputType = parseInt(isMemberInputType); // '0'为不禁用 '1'为禁用\r\n this.isStorageCardInputType = MemberMeStorageCardInputByKeyBoard; // 仅储值卡是否禁用键盘输入,'0'为不禁用 '1'为禁用\r\n this.openFaceRecognition = parseInt(OpenFaceRecognition); // 启用人脸识别:0禁用 1为启用\r\n this.iCCardServer = parseInt(ICCardServer); // 启用IC卡:0为禁用 1为启用\r\n this.iCCardPassword = ICCardPassword; //IC卡密码\r\n this.ms = memberStore;\r\n //移动端环境下,没有读取IC卡的方式。\r\n const { isHorizontalPad, isHorizontalSunMi } = platform || {};\r\n this.isHorizontalPad = !!isHorizontalPad;\r\n this.isHorizontalSunMi = !!isHorizontalSunMi;\r\n this.isMobileEnvironment = !!isHorizontalPad || !!isHorizontalSunMi;\r\n this.handleReadICard = this.handleReadICard.bind(this);\r\n\r\n //记录键盘录入信息的开始时间\r\n this.keypressStime = null;\r\n this.iseyboardKEnter = false; //是否为键盘输入\r\n let { isNewRetailBCPos } = platform || {};\r\n this.state = {\r\n isCC: !!isNewRetailBCPos,\r\n isShowBirthdayTip: false,\r\n };\r\n\r\n //是否单据模式\r\n this.isVoucherMode = localStore && localStore.get('voucherDefaultPosMode') == 'voucher';\r\n }\r\n\r\n componentWillReact() {\r\n const { data: { Member: dtMember = {} } = {} } = this.context.viewModel || {};\r\n const { selectMemberInfo = {}, isClear = false } = this.ms;\r\n const memberChangeData = Object.keys(selectMemberInfo).length ? selectMemberInfo : undefined;\r\n // 有会员的话清空搜索框文本\r\n if (dtMember.ID && this.state.searchValue) {\r\n this.setState({\r\n searchValue: ''\r\n })\r\n }\r\n const memberChange = (data) => {\r\n this.setState({newAvatar: ''});\r\n this.props.memberChange(data);\r\n }\r\n if (typeof memberChangeData === 'object') {\r\n const deepCloneMember = JSON.parse(JSON.stringify(memberChangeData));\r\n if (!currentMember) {\r\n currentMember = deepCloneMember;\r\n memberChange(memberChangeData);\r\n } else if (currentMember.ID !== memberChangeData.ID) {\r\n memberChange(memberChangeData);\r\n currentMember = deepCloneMember;\r\n } else if (!dtMember.ID && (currentMember || {}).ID) { // DataModel 中清掉member,手动同步 member\r\n currentMember = undefined;\r\n this.ms.clearSeletMember();\r\n }\r\n } else if (currentMember && !memberChangeData) {\r\n memberChange(memberChangeData);\r\n currentMember = undefined;\r\n } else if (dtMember.ID && !(currentMember || {}).ID) { // DataModel 中存在member,手动同步 member\r\n const deepCloneMember = JSON.parse(JSON.stringify(dtMember));\r\n currentMember = deepCloneMember;\r\n this.ms.seletMember(dtMember);\r\n }\r\n }\r\n\r\n componentDidMount() {\r\n stores.selectMemberStore && stores.selectMemberStore.clearMemberCare()\r\n this.connectRfCard();\r\n }\r\n\r\n componentWillUnmount() {\r\n window.removeEventListener('resize', this.windowOnresize);\r\n this.closeRfCard();\r\n }\r\n\r\n componentWillReceiveProps(nextProps) {\r\n //接受socket传递过来的信息\r\n let { isSendMessage } = nextProps;\r\n if (isSendMessage === true) this.getInStoreMemberCount()\r\n }\r\n\r\n controllerEvent = (methodName, methodArgs) => {\r\n return new Promise(resolve => {\r\n this.context.onEvent({ 'controllerEvent': Action.fromJS(this.context.viewModel, methodName) }, 'controllerEvent', { ...methodArgs, fn: function(result) {\r\n resolve(result);\r\n }});\r\n });\r\n }\r\n\r\n resetInShopMemberTimer = (count) => {\r\n this.timer && clearTimeout(this.timer);\r\n if (!count) return;\r\n const time = 5 * 60 * 1000;\r\n this.timer = setTimeout(() => {\r\n this.getInStoreMemberCount();\r\n }, time);\r\n }\r\n //IC卡连接\r\n connectRfCard() {\r\n //客户端环境下,并开启了启用IC卡。\r\n if (this.hasElectron === true && this.iCCardServer === 1) {\r\n nativeMs.setIpcRendererMethod('ConnectRfCard', null, ret => {\r\n let result = {}\r\n if (ret.status === 0) {\r\n result = { connectCardStatus: false, connectCardError: ret.value }\r\n } else {\r\n result = { connectCardStatus: true, connectCardError: '' };\r\n }\r\n this.setState(result)\r\n })\r\n }\r\n }\r\n\r\n //IC卡读取\r\n readRfCard() {\r\n //客户端环境下,并开启了启用IC卡。\r\n if (this.hasElectron === true && this.iCCardServer === 1) {\r\n const { connectCardStatus, connectCardError } = this.state;\r\n if (connectCardStatus === false) {\r\n Message.error(connectCardError ? connectCardError : '读取IC卡失败');\r\n this.connectRfCard(); //读取失败后,重新连接一下。\r\n return;\r\n }\r\n let params = { cardPsw: this.iCCardPassword, cardSec: 13, cardKm: 0 }\r\n nativeMs.setIpcRendererMethod('ReadRfCard', { ...params }, ret => {\r\n if (ret.status === 0) {\r\n Message.error(ret.value);\r\n this.connectRfCard(); //读取失败后,重新连接一下。\r\n return;\r\n } else if (ret.status === 1) {\r\n this.searchMember(ret.value);\r\n }\r\n })\r\n }\r\n }\r\n\r\n //IC卡关闭\r\n closeRfCard(){\r\n if (this.hasElectron === true && this.iCCardServer === 1) {\r\n nativeMs.setIpcRendererMethod('CloseRfCard')\r\n }\r\n }\r\n\r\n openPhotoModal = () => {\r\n let { isNewRetailBCPos } = platform || {};\r\n if (!isNewRetailBCPos) {\r\n if (!this.openFaceRecognition) {\r\n Message.warn('未启用人脸识别,需要先开启人脸识别功能');\r\n return;\r\n }\r\n this.setState({\r\n memberPhoto: true,\r\n titleModal: '选择头像'\r\n })\r\n }\r\n }\r\n\r\n openShowModal = (status, res) => {\r\n let title = '';\r\n const { data: { Member = {} } = {} } = this.context.viewModel || {};\r\n const {newAvatar} = this.state;\r\n const jsMember = toJS(Member);\r\n const updateMember = newAvatar ? {...jsMember, ImageFile: newAvatar} : jsMember;\r\n switch (status) {\r\n case 0:\r\n title = '会员详情';\r\n this.setState({ viewMemberInfo: updateMember })\r\n break;\r\n case 1:\r\n title = '到店会员';\r\n this.setState({ viewMemberInfo: res })\r\n break;\r\n case 2:\r\n title = '人脸识别';\r\n this.setState({ viewMemberInfo: res })\r\n break;\r\n }\r\n this.setState({\r\n status: status,\r\n memberShow: true,\r\n titleModal: title\r\n })\r\n }\r\n\r\n openCloseModal = () => {\r\n const { setMemberFocus } = this.props;\r\n const memberStore = this.context.viewModel && this.context.viewModel.items.find(el => el.name == 'MemberStore');\r\n const uiState = memberStore.uiState;\r\n const IsIntegralExchange = memberStore.store && memberStore.store.data && memberStore.store.data.IsIntegralExchange\r\n if (!!uiState.tip) {\r\n Message.info(uiState.tip)\r\n return;\r\n }\r\n ModalWraper.confirm({\r\n className: 'tplus-confirm-modal',\r\n title: '关闭会员',\r\n content: `${IsIntegralExchange ? \"关闭会员将会清空商品信息!\" : \"确定要关闭该会员吗?\"}`,\r\n onOk: () => {\r\n this.ms.clearSeletMember();\r\n stores.selectMemberStore.clearMemberCare();\r\n typeof setMemberFocus == 'function' && setMemberFocus();\r\n }\r\n })\r\n }\r\n\r\n //关闭生日提醒\r\n handleCloseBirthdayModal = () => {\r\n this.ms.changeBirthdayShow(false);\r\n }\r\n\r\n //会员关怀-送礼\r\n handleMemberCareModal = () => {\r\n this.setState({ isMemberCareModal: true })\r\n }\r\n handleMemberCareModalCancel = () => {\r\n this.setState({ isMemberCareModal: false })\r\n }\r\n\r\n handleSearch = (val) => {\r\n this.setState({ searchValue: val })\r\n }\r\n\r\n handleFocus = (el) => {\r\n if (this.isMemberInputType) return;\r\n if (this.isVoucherMode) {\r\n Keyboard.open(\r\n v => {\r\n const value = Keyboard.getNewValue(this.inputSearch, this.inputSearch.value, v);\r\n this.handleSearch(value);\r\n },\r\n () => { this.searchMember(undefined, 'ok') },\r\n this.keyboardClose,\r\n {bottom: 60}\r\n )()\r\n } else {\r\n Keyboard.open2(\r\n (v) => {\r\n const value = Keyboard.getNewValue(this.inputSearch, this.inputSearch.value, v);\r\n this.handleSearch(value);\r\n },\r\n () => {\r\n this.searchMember(undefined, 'ok');\r\n },\r\n this.keyboardClose,\r\n 'ByMember',\r\n localStore.get('ByMember')\r\n )\r\n }\r\n }\r\n\r\n keyboardClose = () => {\r\n this.inputSearch.blur();\r\n }\r\n\r\n handleBlur = () => {\r\n if (this.isVoucherMode) {\r\n Keyboard.close();\r\n } else {\r\n Keyboard.close2();\r\n }\r\n }\r\n\r\n handleReadICard = () => {\r\n this.readRfCard();\r\n }\r\n\r\n handleShowModal = (type, params) => {\r\n if (params) {\r\n this.setState({ dtMember: params, memberShow: type })\r\n } else {\r\n this.setState({ memberShow: type })\r\n }\r\n }\r\n\r\n handlePhotoModal = (type, newAvatar) => {\r\n if (newAvatar) {\r\n this.setState({\r\n newAvatar,\r\n memberPhoto: type\r\n })\r\n } else {\r\n this.setState({ memberPhoto: type })\r\n }\r\n }\r\n\r\n searchMember = (val, type) => {\r\n if(!stores.offlineSys.shouldInOffline()) return;\r\n if (!this.ms || this.searchLoading) return;\r\n const {searchValue} = this.state;\r\n val = val || (searchValue || '').trim();\r\n if (!val) return;\r\n const { memberSearched, selectMemberSuccess,setMemberFocus,getMemberBirthday, getMeStorageCard } = this.props;\r\n this.searchLoading = true;\r\n this.setState({searchVisible: true});\r\n this.ms.getSearchMember({\r\n currentPage: 1,\r\n pageSize: 10,\r\n key: val,\r\n isSingleMember: true\r\n }).then(async (ret) => {\r\n this.searchLoading = false;\r\n const {ColumnInfo: columnInfo, Data} = ret || {};\r\n const data = JSON.parse(Data) || [];\r\n const info = data[0];\r\n if (data.length === 1 && info) {\r\n const { data: { RetailDetails = [] } = {} } = this.context.viewModel || {};\r\n let isArrowPriceChange = await this.controllerEvent('memberPriceChangeValidate', { member: info, retailDetails: toJS(RetailDetails)});\r\n if (!isArrowPriceChange) {\r\n this.setState({searchVisible: false, searchValue: ''});\r\n return;\r\n }\r\n }\r\n this.setState({searchVisible: false, columnInfo});\r\n if (info && info.MemberType && info.MemberType.IsStorage && this.isStorageCardInputType && this.iseyboardKEnter){\r\n getMeStorageCard && getMeStorageCard(true);\r\n this.handleSearch('');\r\n this.keypressStime = null;\r\n } else {\r\n getMeStorageCard && getMeStorageCard(false);\r\n }\r\n memberSearched && memberSearched(info, 'searched');\r\n if (info) {\r\n if (data.length > 1) {\r\n stores.drawerStore.init({\r\n title: '会员管理',\r\n key: 'member',\r\n onHide:()=>{\r\n },\r\n subKey: 'memberManager',\r\n listArr: data,\r\n });\r\n this.setState({\r\n searchValue: null\r\n })\r\n } else {\r\n memberSearched && memberSearched(info, 'searched');\r\n userInfoFormat(info);\r\n if (errMessageTip(info)) return;\r\n this.ms.seletMember(info, true);\r\n setTimeout(() => this.setState({ searchValue: '' }), 0);\r\n this.handleBlur();\r\n selectMemberSuccess && selectMemberSuccess();\r\n getMemberBirthday && getMemberBirthday(info.ID, (result) => {\r\n stores.selectMemberStore.changeMemberCare(result);\r\n });\r\n }\r\n } else {\r\n if (type === 'ok'){\r\n Message.warn('会员不存在');\r\n if (this.isMobileEnvironment) {\r\n setTimeout(() => this.setState({ searchValue: '' }), 0);\r\n }\r\n typeof setMemberFocus == 'function' && setMemberFocus();\r\n }\r\n }\r\n }).catch(err => {\r\n this.setState({searchVisible: false});\r\n this.searchLoading = false;\r\n memberSearched && memberSearched(undefined, 'err');\r\n })\r\n }\r\n\r\n //获取当前到店会员数量\r\n getInStoreMemberCount = () => {\r\n if (!this.ms) return;\r\n this.ms.getInStoreMemberCount().then(res => {\r\n const {data: {data: shopPerson} = {}} = res || {};\r\n this.setState({shopPerson});\r\n this.resetInShopMemberTimer(shopPerson);\r\n });\r\n }\r\n\r\n onKeyPressed = (e) => {\r\n const keyCode = e && e.keyCode\r\n if (keyCode === 13) {\r\n if (this.isMemberInputType) {\r\n let stime = this.keypressStime;\r\n let etime = Date.parse(new Date());\r\n if (etime - stime > 300) {\r\n this.handleSearch('')\r\n this.keypressStime = null;\r\n return Message.warn('未启用键盘录入功能');\r\n }\r\n this.keypressStime = null;\r\n }\r\n this.iseyboardKEnter = Date.parse(new Date()) - this.keypressStime > 300;\r\n if (this.isStorageCardInputType) {\r\n this.keypressStime = null;\r\n }\r\n if (this.searchLoading) return;\r\n this.searchMember(undefined, 'ok');\r\n }\r\n else if (this.isMemberInputType && !this.keypressStime && !(keyCode == 8)) {\r\n this.keypressStime = Date.parse(new Date())\r\n } else if (this.isStorageCardInputType && !this.keypressStime && !(keyCode == 8) && !this.isMemberInputType) {\r\n this.keypressStime = Date.parse(new Date())\r\n }\r\n }\r\n\r\n computedCoupon = (member = {}) => {\r\n let { isNewRetailBCPos } = platform || {};\r\n if (!!isNewRetailBCPos) {\r\n return member.MemberCouponCount? member.MemberCouponCount : '0';\r\n } else {\r\n const couponKey = 'membercouponcount';\r\n const {DynamicPropertyKeys = [], DynamicPropertyValues = []} = member;\r\n const couponIndex = DynamicPropertyKeys.findIndex(v => v === couponKey);\r\n return ~couponIndex ? DynamicPropertyValues[couponIndex] : '0';\r\n }\r\n }\r\n\r\n loadFaceRecognition = (type) => {\r\n // type = 1:到店会员 type = 2:POS机人脸识别\r\n this.setState({faceLoading: type === 2, inShopLoading: type === 1});\r\n this.ms.loadInStoreMember(String(type))\r\n .then(res => {\r\n this.setState({faceLoading: false, inShopLoading: false});\r\n const {Data} = res || {};\r\n if (!JSON.parse(Data).length) {\r\n const tipMessage = ['当前没有到店会员', '未识别到人脸信息'];\r\n type === 1 && this.setState({shopPerson: 0});\r\n return Message.info(tipMessage[type - 1]);\r\n }\r\n type === 1 && this.getInStoreMemberCount();\r\n this.openShowModal(type, res);\r\n })\r\n .catch(err => {\r\n this.setState({faceLoading: false, inShopLoading: false});\r\n console.log(err)\r\n });\r\n }\r\n\r\n //移动端:扫描商品\r\n changeScanProduct = () => {\r\n if (this.scanObj) this.scanObj.startScan()\r\n }\r\n onScanResult = (res) => {\r\n this.setState({\r\n searchValue: res\r\n }, () => {\r\n this.onKeyPressed({ keyCode: 13 })\r\n })\r\n }\r\n\r\n setIsShowBirthdayTip = () => {\r\n stores.selectMemberStore.clearMemberCare()\r\n }\r\n\r\n getMemberBirthdayInfo = (result) => {\r\n stores.selectMemberStore.changeMemberCare(result);\r\n }\r\n\r\n render() {\r\n const {\r\n memberPhoto, titleModal, memberShow, inShopLoading = false, faceLoading = false,\r\n status, shopPerson, searchValue, viewMemberInfo, newAvatar, searchVisible = false, columnInfo, isCC,\r\n isMemberCare, isMemberCareModal, isShowBirthdayTip\r\n } = this.state;\r\n const { mode = 'formal', authProcess, selectMemberSuccess } = this.props;\r\n const { selectMemberInfo, precisionInfo = {} } = this.ms; //selectMemberInfo 用作触发mobox render\r\n const { data: { Member: dtMember = {}, IdbusiType } = {}, items = [] } = this.context.viewModel || {};\r\n const viewVoucher = items.find(v => v.type === 'Voucher') || {};\r\n const isTakeTheir = viewVoucher.getIsTakeTheir && viewVoucher.getIsTakeTheir();\r\n const isSelectedMember = !!dtMember.ID;\r\n const { Differentiate } = enumController.getEnumOj();\r\n const { memberCareInfo } = stores.selectMemberStore;\r\n let { isNewRetailBCPos } = platform || {};\r\n\r\n return (\r\n <div className='MemberContainer'>\r\n <div className='left'>\r\n {!isSelectedMember &&\r\n <div className='search'>\r\n <div className='b1'>\r\n <Input\r\n type='text'\r\n className=\"input\"\r\n id='memberPoint'\r\n placeholder='扫描/输入会员号'\r\n value={searchValue}\r\n ref={el => this.inputSearch = el && el.input}\r\n onChange={(e) => this.handleSearch(e.target.value)}\r\n onFocus={this.handleFocus}\r\n onBlur={this.handleBlur}\r\n onKeyDown={this.onKeyPressed}\r\n disabled={IdbusiType == 39}\r\n />\r\n <Spin\r\n className='search-spin'\r\n scale={0.8}\r\n type='circle-side'\r\n visible={searchVisible}\r\n />\r\n </div>\r\n <div className='b2'>\r\n {\r\n this.hasElectron === true && this.iCCardServer === 1 &&\r\n <Ticon className='icon' onClick={this.handleReadICard} type=\"ICka\" />\r\n }\r\n {\r\n this.isHorizontalPad ?\r\n <Ticon type='saomiao1' className='icon' onClick={this.changeScanProduct} />\r\n :\r\n (\r\n false && this.openFaceRecognition === 1 && !faceLoading &&\r\n <div className='openFaceRecognition-box'>\r\n <Ticon className='icon' onClick={() => this.loadFaceRecognition(2)} type=\"renlianshibie\" />\r\n <Spin\r\n className='face-spin'\r\n scale={0.8}\r\n type='circle'\r\n visible={faceLoading}\r\n />\r\n </div>\r\n )\r\n }\r\n {\r\n /* 扫描组件 */\r\n this.isHorizontalPad &&\r\n <Scan ref={scan => this.scanObj = scan} onChange={this.onScanResult} />\r\n }\r\n </div>\r\n </div>\r\n }\r\n {isSelectedMember &&\r\n <div className={`info ${this.openFaceRecognition ? '' : 'member-btn-hidden-flex'}`}>\r\n <div className='first'>\r\n <img onClick={this.openPhotoModal} src={newAvatar || dtMember.ImageFile || emptyMemberImage} />\r\n {memberPhoto && <MemberPhoto dtMember={dtMember} showModal={memberPhoto} titleModal={titleModal} handleModal={this.handlePhotoModal} />}\r\n {\r\n memberCareInfo && memberCareInfo.isTicket && <Ticon type=\"shengri\" className='shengriIcon'></Ticon>\r\n }\r\n {\r\n memberCareInfo && memberCareInfo.isTicket && <div className='birthdayContent'>\r\n <div className='birthdayWarn'>{memberCareInfo.daysToBirthday === 0 ? '今天生日' : memberCareInfo.daysToBirthday + '天后生日'}</div>\r\n <Button colors=\"warn\" onClick={this.handleMemberCareModal} className='check bg-theme'>查看</Button>\r\n <Ticon type=\"cuowuda\" className='cuowudaIcon'></Ticon>\r\n </div>\r\n }\r\n {\r\n memberCareInfo && memberCareInfo.isTicket && <Ticon type=\"cuowuda\" onClick={() => { this.setIsShowBirthdayTip()}} className='cuowudaIcon'></Ticon>\r\n }\r\n </div>\r\n <div className='second member-hotkey-info' onClick={() => this.openShowModal(0)}>\r\n <div className='one'>\r\n {dtMember.Name && <div className='a'>{dtMember.Name}</div>}\r\n <div className='b'>{dtMember.CardCode}</div>\r\n </div>\r\n <div className='two'>\r\n <div className='a'>{formatPrecision(dtMember.BalanceStorage, precisionInfo.BalanceStorage)}</div>\r\n <div className='b'>余额</div>\r\n </div>\r\n <div className='two'>\r\n <div className='a'>{this.computedCoupon(dtMember)}</div>\r\n <div className='b'>{Differentiate.COUPON}</div>\r\n </div>\r\n <div className='two'>\r\n <div className='a'>{formatPrecision(dtMember.BalanceIntegral, precisionInfo.BalanceIntegral) || 0}</div>\r\n <div className='b'>积分</div>\r\n </div>\r\n </div>\r\n <div className='close'>\r\n {!isTakeTheir && IdbusiType !=39 && <Ticon type=\"guanbi-yuan\" onClick={this.openCloseModal} />}\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n {/* {\r\n memberCareInfo && memberCareInfo.isTicket ? <div className='float'>\r\n <div className='txt'>{memberCareInfo.daysToBirthday === 0 ? '今天生日' : memberCareInfo.daysToBirthday + '天后生日'}</div>\r\n <div className='btn' onClick={this.handleMemberCareModal}>查看</div>\r\n <div className='cancel'>\r\n <Ticon type='guanbixiao' onClick={() => {\r\n this.setIsShowBirthdayTip()\r\n }}/>\r\n </div>\r\n </div> : null\r\n } */}\r\n {!!this.openFaceRecognition && <div className='right'>\r\n <Button type=\"primary\" onClick={() => this.loadFaceRecognition(1)} className='btn' disabled={inShopLoading}>\r\n {!inShopLoading && '到店会员'}\r\n <Spin\r\n className='inshop-member-spin'\r\n scale={0.8}\r\n type='circle'\r\n visible={inShopLoading}\r\n />\r\n {!!shopPerson && <div className='badge'>{shopPerson}</div>}\r\n </Button>\r\n </div>}\r\n <MemberModal\r\n mode={mode}\r\n authProcess={authProcess}\r\n viewMemberInfo={viewMemberInfo}\r\n columnInfo={columnInfo}\r\n status={status}\r\n showModal={memberShow}\r\n storeKey='memberManager'\r\n titleModal={titleModal}\r\n selectMemberSuccess={selectMemberSuccess}\r\n handleModal={this.handleShowModal}\r\n />\r\n <ModalWraper\r\n show={isMemberCareModal}\r\n className='member-care-modal'\r\n width='688'\r\n centered={true}\r\n memberClass='memberCareWidth'\r\n cancel={this.handleMemberCareModalCancel}\r\n >\r\n <div className='first'>会员生日关怀</div>\r\n <div className='second'>\r\n <div className='secondContent'>\r\n <Ticon type='dengpao'/>\r\n <span>口头关怀客户,提示引导客户去线上商城领取权益。</span>\r\n </div>\r\n </div>\r\n <div className='third'>\r\n <div className='one'>\r\n <img src={emptyMemberImage} />\r\n <Ticon type='shengri' />\r\n </div>\r\n <div className='two'>\r\n {\r\n memberCareInfo && memberCareInfo.daysToBirthday === 0 ? <span>\r\n 今天是{dtMember.Name}的生日,该会员是{dtMember.MemberType.Name},可享受以下权益\r\n </span> : <span>\r\n {dtMember.Name}会员还有{memberCareInfo && memberCareInfo.daysToBirthday}天生日,该会员是{dtMember.MemberType.Name},可享受以下权益\r\n </span>\r\n }\r\n </div>\r\n </div>\r\n {\r\n memberCareInfo && <div className='fourth'>\r\n {memberCareInfo && memberCareInfo.memberCareDTO && memberCareInfo.memberCareDTO.memberRightRuleList && memberCareInfo.memberCareDTO.memberRightRuleList[0].integralMultiple && <div className='item'>1.{ memberCareInfo.memberCareDTO.memberRightRuleList[0].integralMultiple}</div>}\r\n {memberCareInfo && memberCareInfo.memberCareDTO && memberCareInfo.memberCareDTO.memberRightRuleList && memberCareInfo.memberCareDTO.memberRightRuleList[0].integralGive && <div className='item'>2.{ memberCareInfo.memberCareDTO.memberRightRuleList[0].integralGive}</div>}\r\n {\r\n memberCareInfo && memberCareInfo.memberCareDTO && memberCareInfo.memberCareDTO.memberRightRuleList && memberCareInfo.memberCareDTO.memberRightRuleList[0].couponIdMapList.map((value, index) => {\r\n let count = 0;\r\n if (memberCareInfo.memberCareDTO.memberRightRuleList[0].integralMultiple) {\r\n count += 1;\r\n }\r\n if (memberCareInfo.memberCareDTO.memberRightRuleList[0].integralGive) {\r\n count += 1;\r\n }\r\n return (<div className='item'>{count + 1 + index}.{value.name}</div>)\r\n })\r\n }\r\n </div>\r\n }\r\n </ModalWraper>\r\n {\r\n !isNewRetailBCPos && <ModalWraper show={this.ms.birthdayShow} centered={true} className='member-birthday'>\r\n <div className='picture'>\r\n <img width='350' height='308' src={memberBirthday} />\r\n <Ticon type=\"guanbi-yuan\" onClick={this.handleCloseBirthdayModal} />\r\n </div>\r\n <div className='remark'>今天是会员<span>{dtMember.Name || dtMember.CardCode}</span>的生日</div>\r\n </ModalWraper>\r\n }\r\n </div>\r\n );\r\n }\r\n}\r\nexport default MemberTag\r\n"]}
@@ -125,7 +125,8 @@ var BindCard = function (_Component) {
125
125
 
126
126
  var ref = inputType === 'value' ? _this.inputRef.input : _this.passwordRef.input;
127
127
  _tplusComponentsTouch.Keyboard.open(function (v) {
128
- var value = _tplusComponentsTouch.Keyboard.getNewValue(ref, _this.state.value, v);
128
+ var code = inputType === 'value' ? _this.state.value : _this.state.password;
129
+ var value = _tplusComponentsTouch.Keyboard.getNewValue(ref, code, v);
129
130
  inputType === 'value' && _this.onChange(value);
130
131
  inputType === 'password' && _this.setState({ password: value });
131
132
  }, function () {
@@ -227,11 +228,9 @@ var BindCard = function (_Component) {
227
228
  }, {
228
229
  key: 'changeDisabled',
229
230
  value: function changeDisabled() {
230
- var _state = this.state,
231
- value = _state.value,
232
- password = _state.password;
231
+ var value = this.state.value;
233
232
 
234
- this.props.changeBindCardBtnDisabled(!value.length || !password.length);
233
+ this.props.changeBindCardBtnDisabled(!value.length);
235
234
  }
236
235
  // 显示键盘
237
236
 
@@ -244,9 +243,9 @@ var BindCard = function (_Component) {
244
243
  value: function render() {
245
244
  var _this3 = this;
246
245
 
247
- var _state2 = this.state,
248
- value = _state2.value,
249
- password = _state2.password;
246
+ var _state = this.state,
247
+ value = _state.value,
248
+ password = _state.password;
250
249
 
251
250
  return _react2.default.createElement(
252
251
  'div',
@@ -1 +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","bindCardClick","ref","inputRef","input","passwordRef","Keyboard","open","getNewValue","state","v","close","keyboardClose","blur","inputBlur","handleKeyPress","ev","keyCode","key","length","includes","currentStamp","Date","now","substring","focus","changeBindCardBtnDisabled","marginTop","hotKey","hotKeyNotFilter","target","Component"],"mappings":"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","file":"index.js","sourcesContent":["import React, { Component } from 'react'\r\nimport { Input } from 'antd'\r\nimport { Keyboard, hotKey } from 'tplus-components-touch'\r\nimport './style.less';\r\n\r\nconst keyList = ['Shift', 'Backspace', 'Enter', 'Tab', 'CapsLock', 'Meta', 'Alt', 'Control', 'Delete']\r\nexport default class BindCard extends Component {\r\n keyPressStamp = null\r\n scanValue = ''\r\n constructor (props) {\r\n super(props)\r\n this.state = {\r\n value: '',\r\n password: ''\r\n }\r\n }\r\n componentDidMount () {\r\n // 设置输入框focus\r\n this.inputRef.focus()\r\n }\r\n onChange = async (value) => {\r\n let newValue = value\r\n // console.log(Date.now())\r\n newValue = value.replace(/[^a-zA-Z0-9]/g,'')\r\n // newValue = newValue.length > 16 ? newValue.substring(0, 16) : newValue\r\n await this.setState({value: newValue})\r\n this.changeDisabled()\r\n }\r\n \r\n // 密码框\r\n onPasswordChange = async (password) => {\r\n await this.setState({password})\r\n this.changeDisabled()\r\n }\r\n changeDisabled () {\r\n const { value, password } = this.state\r\n this.props.changeBindCardBtnDisabled((!value.length || !password.length))\r\n }\r\n // 显示键盘\r\n KeyboardShow = (inputType) => {\r\n const { bindCardClick } = this.props\r\n const ref = inputType === 'value' ? this.inputRef.input : this.passwordRef.input\r\n Keyboard.open(v => {\r\n const value = Keyboard.getNewValue(ref, this.state.value, v);\r\n inputType === 'value' && this.onChange(value)\r\n inputType === 'password' && this.setState({password: value})\r\n }, () => {\r\n // 点击键盘的确定按钮,设置disabled\r\n this.changeDisabled()\r\n Keyboard.close() \r\n bindCardClick && bindCardClick()\r\n }, this.keyboardClose)()\r\n }\r\n // 点击键盘的关闭按钮,设置disabled\r\n keyboardClose = () => {\r\n this.changeDisabled()\r\n this.inputRef.blur()\r\n }\r\n // 输入框失去焦点,关闭键盘,设置disabled\r\n inputBlur = () => {\r\n Keyboard.close()\r\n this.changeDisabled()\r\n }\r\n handleKeyPress = async (ev, value) => {\r\n const { keyCode, key } = ev\r\n if (key && key.length && !keyList.includes(key)) this.scanValue += key\r\n // 扫描录入会自动触发enter\r\n if (keyCode === 13) {\r\n const currentStamp = Date.now()\r\n // 触发enter事件的时候,如果当前触发事件-上次keyDown事件大于300毫秒,说明是手动录入,否则是扫描录入\r\n if (currentStamp - this.keyPressStamp <= 300) {\r\n const newValue = this.scanValue.substring(0, 16)\r\n const password = this.scanValue.substring(16)\r\n const { bindCardClick } = this.props\r\n await this.setState({\r\n value: newValue,\r\n password\r\n })\r\n bindCardClick()\r\n }\r\n this.scanValue = ''\r\n } else {\r\n // keydown的时候保存当前时间戳,用来做是手动录入的还是扫描录入的判断\r\n this.keyPressStamp = Date.now()\r\n }\r\n this.changeDisabled()\r\n }\r\n\r\n render () {\r\n const { value, password } = this.state\r\n return (\r\n <div className=\"bind-card-container\" style={{ marginTop:' 14px' }}>\r\n <Input \r\n className={hotKey.hotKeyNotFilter('storageNo-input')}\r\n ref={input => this.inputRef = input}\r\n placeholder='请输入储值卡号'\r\n value={value}\r\n onChange={({ target: { value } }) => this.onChange(value)}\r\n onFocus={() => this.KeyboardShow('value')}\r\n onBlur={this.inputBlur}\r\n onKeyDown={this.handleKeyPress}\r\n />\r\n <div className=\"line\"></div>\r\n <Input \r\n ref={input => this.passwordRef = input}\r\n type='password'\r\n placeholder='请输入兑换码'\r\n value={password}\r\n onChange={({ target: { value } }) => this.onPasswordChange(value)}\r\n onFocus={() => this.KeyboardShow('password')}\r\n onBlur={this.inputBlur}\r\n />\r\n </div>\r\n )\r\n }\r\n} "]}
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","bindCardClick","ref","inputRef","input","passwordRef","Keyboard","open","code","state","getNewValue","v","close","keyboardClose","blur","inputBlur","handleKeyPress","ev","keyCode","key","length","includes","currentStamp","Date","now","substring","focus","changeBindCardBtnDisabled","marginTop","hotKey","hotKeyNotFilter","target","Component"],"mappings":"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","file":"index.js","sourcesContent":["import React, { Component } from 'react'\r\nimport { Input } from 'antd'\r\nimport { Keyboard, hotKey } from 'tplus-components-touch'\r\nimport './style.less';\r\n\r\nconst keyList = ['Shift', 'Backspace', 'Enter', 'Tab', 'CapsLock', 'Meta', 'Alt', 'Control', 'Delete']\r\nexport default class BindCard extends Component {\r\n keyPressStamp = null\r\n scanValue = ''\r\n constructor (props) {\r\n super(props)\r\n this.state = {\r\n value: '',\r\n password: ''\r\n }\r\n }\r\n componentDidMount () {\r\n // 设置输入框focus\r\n this.inputRef.focus()\r\n }\r\n onChange = async (value) => {\r\n let newValue = value\r\n // console.log(Date.now())\r\n newValue = value.replace(/[^a-zA-Z0-9]/g,'')\r\n // newValue = newValue.length > 16 ? newValue.substring(0, 16) : newValue\r\n await this.setState({value: newValue})\r\n this.changeDisabled()\r\n }\r\n \r\n // 密码框\r\n onPasswordChange = async (password) => {\r\n await this.setState({password})\r\n this.changeDisabled()\r\n }\r\n changeDisabled () {\r\n const { value } = this.state\r\n this.props.changeBindCardBtnDisabled(!value.length)\r\n }\r\n // 显示键盘\r\n KeyboardShow = (inputType) => {\r\n const { bindCardClick } = this.props\r\n const ref = inputType === 'value' ? this.inputRef.input : this.passwordRef.input\r\n Keyboard.open(v => {\r\n const code = inputType === 'value' ? this.state.value : this.state.password\r\n const value = Keyboard.getNewValue(ref, code, v);\r\n inputType === 'value' && this.onChange(value)\r\n inputType === 'password' && this.setState({password: value})\r\n }, () => {\r\n // 点击键盘的确定按钮,设置disabled\r\n this.changeDisabled()\r\n Keyboard.close() \r\n bindCardClick && bindCardClick()\r\n }, this.keyboardClose)()\r\n }\r\n // 点击键盘的关闭按钮,设置disabled\r\n keyboardClose = () => {\r\n this.changeDisabled()\r\n this.inputRef.blur()\r\n }\r\n // 输入框失去焦点,关闭键盘,设置disabled\r\n inputBlur = () => {\r\n Keyboard.close()\r\n this.changeDisabled()\r\n }\r\n handleKeyPress = async (ev, value) => {\r\n const { keyCode, key } = ev\r\n if (key && key.length && !keyList.includes(key)) this.scanValue += key\r\n // 扫描录入会自动触发enter\r\n if (keyCode === 13) {\r\n const currentStamp = Date.now()\r\n // 触发enter事件的时候,如果当前触发事件-上次keyDown事件大于300毫秒,说明是手动录入,否则是扫描录入\r\n if (currentStamp - this.keyPressStamp <= 300) {\r\n const newValue = this.scanValue.substring(0, 16)\r\n const password = this.scanValue.substring(16)\r\n const { bindCardClick } = this.props\r\n await this.setState({\r\n value: newValue,\r\n password\r\n })\r\n bindCardClick()\r\n }\r\n this.scanValue = ''\r\n } else {\r\n // keydown的时候保存当前时间戳,用来做是手动录入的还是扫描录入的判断\r\n this.keyPressStamp = Date.now()\r\n }\r\n this.changeDisabled()\r\n }\r\n\r\n render () {\r\n const { value, password } = this.state\r\n return (\r\n <div className=\"bind-card-container\" style={{ marginTop:' 14px' }}>\r\n <Input \r\n className={hotKey.hotKeyNotFilter('storageNo-input')}\r\n ref={input => this.inputRef = input}\r\n placeholder='请输入储值卡号'\r\n value={value}\r\n onChange={({ target: { value } }) => this.onChange(value)}\r\n onFocus={() => this.KeyboardShow('value')}\r\n onBlur={this.inputBlur}\r\n onKeyDown={this.handleKeyPress}\r\n />\r\n <div className=\"line\"></div>\r\n <Input \r\n ref={input => this.passwordRef = input}\r\n type='password'\r\n placeholder='请输入兑换码'\r\n value={password}\r\n onChange={({ target: { value } }) => this.onPasswordChange(value)}\r\n onFocus={() => this.KeyboardShow('password')}\r\n onBlur={this.inputBlur}\r\n />\r\n </div>\r\n )\r\n }\r\n} "]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tplus-member",
3
- "version": "3.42.1",
3
+ "version": "3.43.1",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
@@ -17,11 +17,11 @@
17
17
  "mutants-devtools": "^1.0.0",
18
18
  "mutants-microfx": "^1.0.0",
19
19
  "tplus-api": "~5.0.1",
20
- "tplus-components": "~3.42.1",
21
- "tplus-components-touch": "~3.42.1",
22
- "tplus-portaltouch": "~3.42.1",
23
- "tplus-poslogin": "~3.42.1",
24
- "tplus-setting-touch": "~3.42.1"
20
+ "tplus-components": "~3.43.1",
21
+ "tplus-components-touch": "~3.43.1",
22
+ "tplus-portaltouch": "~3.43.1",
23
+ "tplus-poslogin": "~3.43.1",
24
+ "tplus-setting-touch": "~3.43.1"
25
25
  },
26
26
  "dependencies": {
27
27
  "antd": "4.10.3"