tplus-portaltouch 3.22.3 → 3.22.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/ModifyPassApi.js +1 -1
 - package/dist/api/ModifyPassApi.js.map +1 -1
 - package/dist/components/header/headContent.js +495 -38
 - package/dist/components/header/headContent.js.map +1 -1
 - package/dist/components/header/offlinePointDesc.js +7 -0
 - package/dist/components/header/offlinePointDesc.js.map +1 -0
 - package/dist/components/header/style.less +106 -1
 - package/dist/components/header/uploadList.js +269 -0
 - package/dist/components/header/uploadList.js.map +1 -0
 - package/dist/containers/Main/index.js +20 -17
 - package/dist/containers/Main/index.js.map +1 -1
 - package/dist/pages/Portal/index.js +228 -127
 - package/dist/pages/Portal/index.js.map +1 -1
 - package/dist/pages/Portalbc/data.js +2 -2
 - package/dist/pages/Portalbc/data.js.map +1 -1
 - package/dist/pages/Portalbc/index.js +214 -125
 - package/dist/pages/Portalbc/index.js.map +1 -1
 - package/dist/pages/Portalbc/index.less +4 -0
 - package/package.json +37 -37
 - package/dist/pages/Portal/data.js +0 -32
 - package/dist/pages/Portal/data.js.map +0 -1
 - package/dist/pages/Portal/horizontalPadPortal.js +0 -129
 - package/dist/pages/Portal/horizontalPadPortal.js.map +0 -1
 - package/dist/pages/Portal/horizontalSunMiPortal.js +0 -130
 - package/dist/pages/Portal/horizontalSunMiPortal.js.map +0 -1
 - package/dist/pages/Portal/index.less +0 -612
 - package/dist/pages/Portal/verticalPortal.js +0 -126
 - package/dist/pages/Portal/verticalPortal.js.map +0 -1
 
| 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            {"version":3,"sources":["tplus-portaltouch/containers/Main/index.js"],"names":["Main","hasElectron","env","platform","constant","electron","window","rx$","MainContainer","observer","props","currentFocus","initWebFrameZoom","webFrame","value","localStore","get","setZoomFactor","parseFloat","doDeeplinkingUrl","ipcRenderer","on","event","ret","params","console","log","orgId","userId","param","split","reduce","accumulator","current","key","cloudUserId","User","logout","changeLogoSubject","subject","Subject","changeLogo","subscribe","next","v","setLogo","changeHsySubject","changeHsy","setHsy","addHotKeyChangeLister","document","addEventListener","registerHotKey","removeHotKeyChangeLister","removeEventListener","back","fn","setState","hsy_s","hsy_f","store","logoUrl","logo","logoNode","url","isPortal","isLogin","state","isVerticalTouch","isNewRetailBCPos","bcParams","theme","stores","portalStore","themeStore","defualtImage","hotKeyInjectOrEject","type","hotKeyAction","registerKeys","allKeys","hotKey","hotKeyConfig","forEach","keyboard","index","nativeMs","onIpcRendererGlobalShortcut","hotKeyActionHandle","blurButton","target","nodeName","blur","isSetHotKey","hotKeyCreate","observerCallback","observerDom","pressed","clickBefore","activeElement","filter","srcElement","tagName","className","indexOf","undefined","attributes","childList","subtree","attributeFilter","register","operationKeys","esc","enter","visibleModal","modals","querySelectorAll","modal","display","style","visibleDrawer","drawers","drawer","$","clearFocus","setFocus","getFocusId","querySelector","find","handle","toggleKeyCode","message","bind","keys","i","unbind","Message","info","action","handleInfoRender","solt","onCollapse","collapsed","menuOnClick","selectedKeys","handleClose","Keyboard","close","handleOk","count","modifyPassStore","modifyPassWord","headMenuSelect","footer","text","closable","length","map","btn","loading","modalRouter","hide","show","title","width","modalType","onHide","destroyOnClose","history","push","portalStores","posLoginStore","savePosCode","isAutoTest","location","search","isShowFourTab","screen","isHorizontalPad","storeUtil","isHorizontalSunMi","isHorizontalSunMi_FuPing","isMobileEnvironment","infoRender","headHook","addClass","id","removeClass","currentId","actionHook","actionFrom","actionChange","body","classList","add","ModalWraper","confirm","content","cancelable","onOk","onCancel","unsubscribe","portalHead","loginHead","retailOrder","pathname","storeInfo","user","options","isRetailOrder","headProps","businessName","storeName","dateFormat","menu","icon","onClick","orgName","posCode","posIsLogin","hideAll","classNames","layoutClassName","join","height","match","isExact","routes","Component","childContextTypes","PropTypes","func","object","React","cloneElement"],"mappings":"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","file":"index.js","sourcesContent":["import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { observer } from 'mobx-react';\r\nimport { Button } from 'antd';\r\nimport { history, Switch, stores, env, nativeMs, localStore } from 'mutants-microfx';\r\nimport { Ticon, Layout, Keyboard, ModalWraper, Message, hotKey } from 'tplus-components-touch';\r\nimport { platform, localStore as storeUtil } from 'mutants-util';\r\nimport { User } from 'tplus-api';\r\nimport { Subject } from 'rxjs';\r\nimport { Redirect } from 'react-router';\r\nimport Header from '../../components/header';\r\nimport PortalPage from '../../pages/Portal';\r\nimport PortalPageBC from '../../pages/Portalbc';\r\nimport portalStores from '../../stores';\r\nimport { closeWebPage, getQueryString, operationKeys } from '../../utils/index';\r\n\r\nconst hasElectron = (env.platform === env.constant.platform.electron);\r\nwindow.rx$ = {};\r\n\r\n@observer\r\nclass MainContainer extends Component {\r\n  currentFocus = null;\r\n  constructor(props) {\r\n    super(props);\r\n    this.hasElectron = hasElectron;\r\n    this.state = {\r\n      hsy_s: false,\r\n      hsy_f: null\r\n    };\r\n    portalStores.posLoginStore.savePosCode();\r\n    this.electron = nativeMs && nativeMs.get('electron');\r\n    this.isAutoTest = getQueryString(location.search, 'at');\r\n    this.isShowFourTab = this.hasElectron && window.screen.width < 1024 ? true : false;\r\n    //针对800*600分辨率下,页面显示不全的做一下处理。\r\n    if (this.isShowFourTab == true) this.initWebFrameZoom();\r\n\r\n    const isHorizontalPad =  storeUtil.get('isHorizontalPad')// 是否在PAD\r\n    const isHorizontalSunMi = storeUtil.get('isHorizontalSunMi'); //是否在商米(SunMi)\r\n    const isHorizontalSunMi_FuPing = storeUtil.get('isHorizontalSunMi_FuPing'); //是否在商米(SunMi)\r\n\r\n    this.isHorizontalSunMi_FuPing = !!isHorizontalSunMi_FuPing;\r\n    this.isMobileEnvironment = !!isHorizontalPad || !!isHorizontalSunMi || !!isHorizontalSunMi_FuPing;\r\n  }\r\n  static childContextTypes = {\r\n    infoRender: PropTypes.func,\r\n    headHook: PropTypes.object,\r\n    actionHook: PropTypes.object,\r\n  }\r\n\r\n  initWebFrameZoom = () => {\r\n    let webFrame = this.electron ? this.electron.webFrame : null;\r\n    let value = localStore.get('webFrameZoomValue') || '0.7';\r\n    if (webFrame) webFrame.setZoomFactor(parseFloat(value));\r\n  }\r\n  getChildContext() {\r\n    return {\r\n      infoRender: this.handleInfoRender,\r\n      headHook: {\r\n        addClass: (id, key) => {\r\n          this.setState(state => ({\r\n            [key]: [...(state[key] || []), id],\r\n          }));\r\n        },\r\n        removeClass: (id, key) => {\r\n          this.setState(state => ({\r\n            [key]: state[key].filter(currentId => currentId !== id),\r\n          }));\r\n        }\r\n      },\r\n      actionHook: {\r\n        actionFrom: this.actionFrom,\r\n        actionChange: (value) => {\r\n          this.actionFrom = value;\r\n        }\r\n      },\r\n    };\r\n  }\r\n\r\n  // 内置默认\r\n  // keys = ['esc', 'enter', 'ctrl+f1', ...Object.keys(hotKey.hotKeyConfig)];\r\n\r\n  // 解决从url地址唤醒exe,不同账号的处理问题。\r\n  doDeeplinkingUrl = () => {\r\n    if (this.hasElectron === false) return;\r\n    let { ipcRenderer } = this.electron || {ipcRenderer:null};\r\n    ipcRenderer && ipcRenderer.on(\"asynchronous-deeplinkingUrl\", (event, ret, params) => {\r\n      if (ret) {\r\n        console.log('deeplinkingUrl:' + ret)\r\n        const {orgId, userId} = localStore.get('user') || {};\r\n        if (!orgId || !userId) return;\r\n        const param = ret.split('&').reduce((accumulator, current) => {\r\n          if (!current) return accumulator;\r\n          const [key, value] = current.split('=') || [];\r\n          accumulator[key] = value;\r\n          return accumulator;\r\n        }, {});\r\n        console.log(orgId, userId, param)\r\n        if (param.orgId !== orgId || param.cloudUserId !== userId) {\r\n          User.logout();\r\n        }\r\n      }\r\n    })\r\n  }\r\n\r\n  componentWillMount() {\r\n    this.changeLogoSubject();\r\n    this.changeHsySubject();\r\n    const { isVerticalTouch } = platform || {};\r\n    if (isVerticalTouch === true) {\r\n      document.body.classList.add('vertical-touch-platform');\r\n    }\r\n  }\r\n\r\n  changeLogoSubject = () => {\r\n    const subject = new Subject();\r\n    rx$.changeLogo = subject;\r\n\r\n    subject\r\n      .subscribe({\r\n        next: (v) => this.setLogo(v)\r\n      });\r\n  }\r\n\r\n  changeHsySubject = () => {\r\n    const subject = new Subject();\r\n    rx$.changeHsy = subject;\r\n\r\n    subject\r\n      .subscribe({\r\n        next: (v) => this.setHsy(v)\r\n      });\r\n  }\r\n\r\n  componentDidMount() {\r\n    this.registerHotKey();\r\n    this.addHotKeyChangeLister();\r\n    rx$.changeLogo.next();\r\n    document.body.addEventListener('focus', this.blurButton, true)\r\n    this.doDeeplinkingUrl();\r\n\r\n    if (this.hasElectron === true) {\r\n      document.body.classList.add('electron-env');\r\n    } else {\r\n      if (this.isAutoTest || this.isMobileEnvironment) return; //自动化测试不弹窗\r\n      ModalWraper.confirm({\r\n        className: 'tplus-confirm-modal',\r\n        title: \"温馨提示\",\r\n        content: 'T+新零售POS端不允许浏览器直接访问,请从T+产品中下载安装客户端程序使用!',\r\n        cancelable:false,\r\n        onOk() {\r\n          closeWebPage();\r\n        },\r\n        onCancel(){\r\n          closeWebPage();\r\n        }\r\n      });\r\n    }\r\n  }\r\n  addHotKeyChangeLister = () => {\r\n    document.addEventListener(\"RESET_USER_STORE\",this.registerHotKey);\r\n  }\r\n  removeHotKeyChangeLister = () => {\r\n    document.removeEventListener(\"RESET_USER_STORE\",this.registerHotKey);\r\n  }\r\n\r\n  componentWillUnmount() {\r\n    rx$.changeLogo.unsubscribe();\r\n    rx$.changeHsy.unsubscribe();\r\n    document.body.removeEventListener('focus', this.blurButton, true)\r\n    // clearInterval(this.addObserverDomTimer);\r\n  }\r\n\r\n  setHsy = (v) => {\r\n    const { back, fn } = v || {};\r\n    if (back === true) {\r\n      this.setState({ hsy_s: true, hsy_f: fn })\r\n    } else {\r\n      this.setState({ hsy_s: false, hsy_f: null })\r\n    }\r\n  }\r\n\r\n  setLogo = (v) => {\r\n    const store = localStore.get('StoreKey') || {};\r\n    const { logo: logoUrl } = store;\r\n    logoUrl && this.setState({ logoUrl });\r\n  }\r\n\r\n  logoNode = (url, isPortal, isLogin) => {\r\n    const { hsy_s, hsy_f } = this.state;\r\n    const { isVerticalTouch, isNewRetailBCPos } = platform || {};\r\n    const bcParams = isNewRetailBCPos ? '-bc' : '';\r\n    const theme = stores.portalStore.themeStore;\r\n    const defualtImage = (isVerticalTouch === true) ? `https://newretail.static.chanjet.com/tinified/logo${bcParams}.png` : `https://newretail.static.chanjet.com/${((!hsy_s && isPortal) || (theme === 'dark' && !isLogin)) ? 'protal-chanjet' : 'chanjet'}-logo${bcParams}.png`;\r\n    if (hsy_s === true) {\r\n      return (<div className='business-logo-container'>\r\n        <Ticon type='zhiPOS-fanhuishouye2' className='back_i' onClick={() => { hsy_f && hsy_f() }} />\r\n        <img src={url || defualtImage} className=\"example-logo\" />\r\n      </div>);\r\n    }\r\n    return <img src={url || defualtImage} className=\"example-logo\" />\r\n  }\r\n\r\n  //未使用?\r\n  hotKeyInjectOrEject = (type, hotKeyAction) => {\r\n    const registerKeys = ['esc', 'enter'];\r\n    const allKeys = [...registerKeys, ...Object.keys(hotKey.hotKeyConfig)];\r\n    allKeys.forEach((keyboard, index) => {\r\n      nativeMs.onIpcRendererGlobalShortcut({ type, keyboard }, hotKeyActionHandle);\r\n    });\r\n  }\r\n\r\n  blurButton = ({ target }) => { //  焦点为 button 时 移除焦点,防止触发 bee 组件enter快捷键\r\n    if (target && target.nodeName === 'BUTTON') {\r\n      target.blur();\r\n    }\r\n  }\r\n\r\n  registerHotKey = () => {\r\n    this.isSetHotKey = true;\r\n\r\n    this.hotKeyCreate = hotKey({\r\n      observerCallback: this.observerDom,\r\n      log: true,\r\n      pressed: this.hotKeyAction,\r\n      clickBefore: () => {\r\n        const { activeElement } = document;\r\n        activeElement && activeElement.blur();\r\n      },\r\n      filter: event => {\r\n        const { tagName, className } = event.target || event.srcElement || {};\r\n\r\n        return !(event.key === 'Enter' && tagName === 'INPUT' && !~className.indexOf('hot-key-not-filter'));\r\n      }\r\n    });\r\n\r\n    this.hotKeyCreate.observer(undefined, { attributes: true, childList: true, subtree: true ,attributeFilter: ['class', 'style'], });\r\n    this.hotKeyCreate.register('esc')('.hot-key-focus-container')(operationKeys.esc);\r\n    this.hotKeyCreate.register('enter')('.hot-key-focus-container')(operationKeys.enter);\r\n  }\r\n\r\n  observerDom = () => {\r\n      let visibleModal;\r\n      const modals = document.querySelectorAll('.ant-modal-wrap'); //ant-module\r\n      for(let modal of modals) {\r\n        const display = modal.style.display;\r\n        if(display != \"none\"){\r\n          visibleModal = modal\r\n        }\r\n      }\r\n\r\n      let visibleDrawer;\r\n      const drawers = document.querySelectorAll('.ant-drawer-open'); //ant-drawer\r\n      for(let drawer of drawers) {\r\n          visibleDrawer = drawer;\r\n          break;\r\n      }\r\n\r\n      if (visibleModal) {\r\n        if(this.currentFocus !== visibleModal){\r\n          $.clearFocus();\r\n          this.currentFocus = visibleModal\r\n          return $.setFocus(visibleModal);\r\n        }\r\n        return;\r\n      }\r\n\r\n      if (visibleDrawer) {\r\n        if(this.currentFocus !== visibleDrawer){\r\n          $.clearFocus();\r\n          this.currentFocus = visibleDrawer;\r\n          return $.setFocus(visibleDrawer);\r\n        }\r\n        return;\r\n      }\r\n\r\n\r\n      if ($.getFocusId() !== '1') {\r\n        if(this.currentFocus !== 'App' || !document.querySelector(\".hot-key-focus-container\")){\r\n          $.clearFocus();\r\n          this.currentFocus = 'App';\r\n          $.find('.app', true).setFocus();\r\n        }\r\n        return;\r\n      }\r\n  }\r\n\r\n  hotKeyAction = (event, handle) => {\r\n    const { key } = handle || {};\r\n    const toggleKeyCode = 'ctrl+f1';\r\n    if (key === toggleKeyCode) {\r\n      const isSetHotKey = this.isSetHotKey = !this.isSetHotKey;\r\n      const message = isSetHotKey ? '设置' : '取消';\r\n      if (isSetHotKey) {\r\n        $.bind(this.keys.filter(i => i !== toggleKeyCode), this.hotKeyAction);\r\n      } else {\r\n        $.unbind(this.keys.filter(i => i !== toggleKeyCode));\r\n      }\r\n      return Message.info(`已${message}快捷键`);\r\n    }\r\n\r\n    $.action(key);\r\n  }\r\n\r\n  handleInfoRender = (solt) => {\r\n    this.setState({solt})\r\n  }\r\n  onCollapse = () => {\r\n    const {collapsed} = this.state;\r\n    this.setState({collapsed: !collapsed});\r\n  }\r\n  menuOnClick = ({key}) => {\r\n    console.log(key)\r\n    this.setState({selectedKeys: key});\r\n  }\r\n\r\n  handleClose = () => {\r\n    Keyboard.close();\r\n  }\r\n\r\n  handleOk = (type, count) => {\r\n    stores.modifyPassStore.modifyPassWord();\r\n  }\r\n\r\n  headMenuSelect = ({key}) => {\r\n    var footer = [\r\n      {text: '取消', className: 'modifypass-cancal-button', closable: true, action: this.handleClose},\r\n      {text: '确定', className: 'modifypass-ok-button', action: this.handleOk, type: 'primary'}\r\n    ];\r\n    footer = !!footer.length && <div>\r\n      {footer.map((btn, i) =>\r\n        <Button\r\n          className={btn.className || ''}\r\n          key={i}\r\n          type={btn.type}\r\n          loading={btn.loading}\r\n          onClick={() => {\r\n            const {action} = btn || {};\r\n            if (typeof action === 'function') action();\r\n            if (btn.closable) {\r\n              stores.modalRouter.hide('/modifypass');\r\n            }\r\n          }}\r\n        >\r\n          {btn.text}\r\n        </Button>)}\r\n    </div>\r\n    switch (key) {\r\n      case 'logout':\r\n        User.logout();\r\n        break;\r\n      case 'modifypass':\r\n        stores.modalRouter.show({\r\n          url: '/modifypass',\r\n          title: '修改密码',\r\n          className: 'modify-password',\r\n          width: 402,\r\n          footer,modalType:'mid',\r\n          onHide: () => stores.modalRouter.hide('/modifypass'),\r\n          destroyOnClose: true,\r\n        });\r\n        break;\r\n      default:\r\n        history.push(`/${key}`);\r\n        break;\r\n    }\r\n  }\r\n  render() {\r\n    const { collapsed, selectedKeys, solt, portalHead = [], loginHead = [], retailOrder = [], logoUrl, hsy_s } = this.state;\r\n    const pathname = history.location.pathname;\r\n    const storeInfo = stores.user.options.get('store');\r\n    const isPortal = !!portalHead.length;\r\n    const isLogin = !!loginHead.length;\r\n    const isRetailOrder = !!retailOrder.length;\r\n    const { isNewRetailBCPos } = platform || {};\r\n\r\n    const headProps = {\r\n      logo: this.logoNode(logoUrl, isPortal, isLogin),\r\n      businessName: '',\r\n      storeName: '',\r\n      dateFormat: 'yyyy年MM月dd日 hh:mm:ss',\r\n      menu: [\r\n        { title: '注销', key: 'logout', icon: 'zhuxiao' },\r\n        { title: '修改密码', key: 'modifypass', icon: 'suoping' }\r\n      ],\r\n      onClick: this.headMenuSelect\r\n    };\r\n    if (storeInfo) {\r\n      headProps.businessName = storeInfo.orgName;\r\n      headProps.storeName = storeInfo.storeName;\r\n      headProps.posCode = storeInfo.posCode;\r\n    }\r\n\r\n    // 如果存在商米副屏则优先加载商米副屏\r\n    if (this.isHorizontalSunMi_FuPing) {\r\n      return <Redirect to={'/vicescreen'} />\r\n    }\r\n    console.log('!stores.posLoginStore.posIsLogin=============', !stores.posLoginStore.posIsLogin);\r\n    if (!stores.posLoginStore.posIsLogin && !~pathname.indexOf('login')) {\r\n      stores.modalRouter.hideAll && stores.modalRouter.hideAll();\r\n      return <Redirect to={'/login'} />\r\n    }\r\n    const classNames = ['isPortal-layout', 'isRetailOrder-layout'];\r\n    const layoutClassName = [isPortal, isRetailOrder].map((v, i) => (v ? classNames[i] : '')).join(' ');\r\n    return (\r\n      <Layout\r\n        style={{ height: '100%' }}\r\n        className={layoutClassName}\r\n      >\r\n        <Layout>\r\n          <Header\r\n            {...headProps}\r\n            solt={solt}\r\n            isPortal={isPortal}\r\n            className={`${(!hsy_s && isPortal) ? 'isPortal-head' : ''} ${isLogin ? 'isLogin-head' : ''}`}\r\n            isLogin={isLogin}\r\n            location={this.props.location}\r\n            history={this.props.history}\r\n          />\r\n          <Layout.Content>\r\n            {this.props.match.isExact ? (isNewRetailBCPos ? <PortalPageBC /> : <PortalPage />) : <Switch>{this.props.routes}</Switch>}\r\n          </Layout.Content>\r\n        </Layout>\r\n      </Layout>\r\n    )\r\n  }\r\n}\r\n\r\nexport default function Main(props) {\r\n  const { routes, modalRouter } = props;\r\n\r\n  if (modalRouter) {\r\n    return <Switch>{routes}</Switch>;\r\n  }\r\n\r\n  return React.cloneElement(<MainContainer />, props);\r\n}\r\n"]}
         
     | 
| 
      
 1 
     | 
    
         
            +
            {"version":3,"sources":["tplus-portaltouch/containers/Main/index.js"],"names":["Main","hasElectron","env","platform","constant","electron","window","rx$","MainContainer","observer","props","currentFocus","initWebFrameZoom","webFrame","value","localStore","get","setZoomFactor","parseFloat","doDeeplinkingUrl","ipcRenderer","on","event","ret","params","console","log","orgId","userId","param","split","reduce","accumulator","current","key","cloudUserId","User","logout","changeLogoSubject","subject","Subject","changeLogo","subscribe","next","v","setLogo","changeHsySubject","changeHsy","setHsy","addHotKeyChangeLister","document","addEventListener","registerHotKey","removeHotKeyChangeLister","removeEventListener","back","fn","setState","hsy_s","hsy_f","store","logoUrl","logo","logoNode","url","isPortal","isLogin","state","isVerticalTouch","isNewRetailBCPos","bcParams","theme","stores","portalStore","themeStore","defualtImage","hotKeyInjectOrEject","type","hotKeyAction","registerKeys","allKeys","hotKey","hotKeyConfig","forEach","keyboard","index","nativeMs","onIpcRendererGlobalShortcut","hotKeyActionHandle","blurButton","target","nodeName","blur","isSetHotKey","hotKeyCreate","observerCallback","observerDom","pressed","clickBefore","activeElement","filter","srcElement","tagName","className","indexOf","undefined","attributes","childList","subtree","attributeFilter","register","operationKeys","esc","enter","visibleModal","modals","querySelectorAll","modal","display","style","visibleDrawer","drawers","drawer","$","clearFocus","setFocus","getFocusId","querySelector","find","handle","toggleKeyCode","message","bind","keys","i","unbind","Message","info","action","handleInfoRender","solt","onCollapse","collapsed","menuOnClick","selectedKeys","handleClose","Keyboard","close","handleOk","count","modifyPassStore","modifyPassWord","headMenuSelect","footer","text","closable","length","map","btn","loading","modalRouter","hide","offlineSys","shouldInOffline","show","title","width","modalType","onHide","destroyOnClose","history","push","portalStores","posLoginStore","savePosCode","isAutoTest","location","search","isShowFourTab","screen","isHorizontalPad","storeUtil","isHorizontalSunMi","isHorizontalSunMi_FuPing","isMobileEnvironment","infoRender","headHook","addClass","id","removeClass","currentId","actionHook","actionFrom","actionChange","body","classList","add","ModalWraper","confirm","content","cancelable","onOk","onCancel","unsubscribe","portalHead","loginHead","retailOrder","pathname","storeInfo","user","options","isRetailOrder","headProps","businessName","storeName","dateFormat","menu","icon","onClick","orgName","posCode","posIsLogin","hideAll","initOfflineLocal","classNames","layoutClassName","join","height","match","isExact","routes","Component","childContextTypes","PropTypes","func","object","React","cloneElement"],"mappings":"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","file":"index.js","sourcesContent":["import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { observer } from 'mobx-react';\r\nimport { Button } from 'antd';\r\nimport { history, Switch, stores, env, nativeMs, localStore } from 'mutants-microfx';\r\nimport { Ticon, Layout, Keyboard, ModalWraper, Message, hotKey } from 'tplus-components-touch';\r\nimport { platform, localStore as storeUtil } from 'mutants-util';\r\nimport { User } from 'tplus-api';\r\nimport { Subject } from 'rxjs';\r\nimport { Redirect } from 'react-router';\r\nimport Header from '../../components/header';\r\nimport PortalPageBC from '../../pages/Portalbc';\r\nimport portalStores from '../../stores';\r\nimport { closeWebPage, getQueryString, operationKeys } from '../../utils/index';\r\n\r\nconst hasElectron = (env.platform === env.constant.platform.electron);\r\nwindow.rx$ = {};\r\n\r\n@observer\r\nclass MainContainer extends Component {\r\n  currentFocus = null;\r\n  constructor(props) {\r\n    super(props);\r\n    this.hasElectron = hasElectron;\r\n    this.state = {\r\n      hsy_s: false,\r\n      hsy_f: null\r\n    };\r\n    portalStores.posLoginStore.savePosCode();\r\n    this.electron = nativeMs && nativeMs.get('electron');\r\n    this.isAutoTest = getQueryString(location.search, 'at');\r\n    this.isShowFourTab = this.hasElectron && window.screen.width < 1024 ? true : false;\r\n    //针对800*600分辨率下,页面显示不全的做一下处理。\r\n    if (this.isShowFourTab == true) this.initWebFrameZoom();\r\n\r\n    const isHorizontalPad =  storeUtil.get('isHorizontalPad')// 是否在PAD\r\n    const isHorizontalSunMi = storeUtil.get('isHorizontalSunMi'); //是否在商米(SunMi)\r\n    const isHorizontalSunMi_FuPing = storeUtil.get('isHorizontalSunMi_FuPing'); //是否在商米(SunMi)\r\n\r\n    this.isHorizontalSunMi_FuPing = !!isHorizontalSunMi_FuPing;\r\n    this.isMobileEnvironment = !!isHorizontalPad || !!isHorizontalSunMi || !!isHorizontalSunMi_FuPing;\r\n  }\r\n  static childContextTypes = {\r\n    infoRender: PropTypes.func,\r\n    headHook: PropTypes.object,\r\n    actionHook: PropTypes.object,\r\n  }\r\n\r\n  initWebFrameZoom = () => {\r\n    let webFrame = this.electron ? this.electron.webFrame : null;\r\n    let value = localStore.get('webFrameZoomValue') || '0.7';\r\n    if (webFrame) webFrame.setZoomFactor(parseFloat(value));\r\n  }\r\n  getChildContext() {\r\n    return {\r\n      infoRender: this.handleInfoRender,\r\n      headHook: {\r\n        addClass: (id, key) => {\r\n          this.setState(state => ({\r\n            [key]: [...(state[key] || []), id],\r\n          }));\r\n        },\r\n        removeClass: (id, key) => {\r\n          this.setState(state => ({\r\n            [key]: state[key].filter(currentId => currentId !== id),\r\n          }));\r\n        }\r\n      },\r\n      actionHook: {\r\n        actionFrom: this.actionFrom,\r\n        actionChange: (value) => {\r\n          this.actionFrom = value;\r\n        }\r\n      },\r\n    };\r\n  }\r\n\r\n  // 内置默认\r\n  // keys = ['esc', 'enter', 'ctrl+f1', ...Object.keys(hotKey.hotKeyConfig)];\r\n\r\n  // 解决从url地址唤醒exe,不同账号的处理问题。\r\n  doDeeplinkingUrl = () => {\r\n    if (this.hasElectron === false) return;\r\n    let { ipcRenderer } = this.electron || {ipcRenderer:null};\r\n    ipcRenderer && ipcRenderer.on(\"asynchronous-deeplinkingUrl\", (event, ret, params) => {\r\n      if (ret) {\r\n        console.log('deeplinkingUrl:' + ret)\r\n        const {orgId, userId} = localStore.get('user') || {};\r\n        if (!orgId || !userId) return;\r\n        const param = ret.split('&').reduce((accumulator, current) => {\r\n          if (!current) return accumulator;\r\n          const [key, value] = current.split('=') || [];\r\n          accumulator[key] = value;\r\n          return accumulator;\r\n        }, {});\r\n        console.log(orgId, userId, param)\r\n        if (param.orgId !== orgId || param.cloudUserId !== userId) {\r\n          User.logout();\r\n        }\r\n      }\r\n    })\r\n  }\r\n\r\n  componentWillMount() {\r\n    this.changeLogoSubject();\r\n    this.changeHsySubject();\r\n    const { isVerticalTouch } = platform || {};\r\n    if (isVerticalTouch === true) {\r\n      document.body.classList.add('vertical-touch-platform');\r\n    }\r\n  }\r\n\r\n  changeLogoSubject = () => {\r\n    const subject = new Subject();\r\n    rx$.changeLogo = subject;\r\n\r\n    subject\r\n      .subscribe({\r\n        next: (v) => this.setLogo(v)\r\n      });\r\n  }\r\n\r\n  changeHsySubject = () => {\r\n    const subject = new Subject();\r\n    rx$.changeHsy = subject;\r\n\r\n    subject\r\n      .subscribe({\r\n        next: (v) => this.setHsy(v)\r\n      });\r\n  }\r\n\r\n  componentDidMount() {\r\n    this.registerHotKey();\r\n    this.addHotKeyChangeLister();\r\n    rx$.changeLogo.next();\r\n    document.body.addEventListener('focus', this.blurButton, true)\r\n    this.doDeeplinkingUrl();\r\n\r\n    if (this.hasElectron === true) {\r\n      document.body.classList.add('electron-env');\r\n    } else {\r\n      if (this.isAutoTest || this.isMobileEnvironment) return; //自动化测试不弹窗\r\n      ModalWraper.confirm({\r\n        className: 'tplus-confirm-modal',\r\n        title: \"温馨提示\",\r\n        content: 'T+新零售POS端不允许浏览器直接访问,请从T+产品中下载安装客户端程序使用!',\r\n        cancelable:false,\r\n        onOk() {\r\n          closeWebPage();\r\n        },\r\n        onCancel(){\r\n          closeWebPage();\r\n        }\r\n      });\r\n    }\r\n  }\r\n  addHotKeyChangeLister = () => {\r\n    document.addEventListener(\"RESET_USER_STORE\",this.registerHotKey);\r\n  }\r\n  removeHotKeyChangeLister = () => {\r\n    document.removeEventListener(\"RESET_USER_STORE\",this.registerHotKey);\r\n  }\r\n\r\n  componentWillUnmount() {\r\n    rx$.changeLogo.unsubscribe();\r\n    rx$.changeHsy.unsubscribe();\r\n    document.body.removeEventListener('focus', this.blurButton, true)\r\n    // clearInterval(this.addObserverDomTimer);\r\n  }\r\n\r\n  setHsy = (v) => {\r\n    const { back, fn } = v || {};\r\n    if (back === true) {\r\n      this.setState({ hsy_s: true, hsy_f: fn })\r\n    } else {\r\n      this.setState({ hsy_s: false, hsy_f: null })\r\n    }\r\n  }\r\n\r\n  setLogo = (v) => {\r\n    const store = localStore.get('StoreKey') || {};\r\n    const { logo: logoUrl } = store;\r\n    logoUrl && this.setState({ logoUrl });\r\n  }\r\n\r\n  logoNode = (url, isPortal, isLogin) => {\r\n    const { hsy_s, hsy_f } = this.state;\r\n    const { isVerticalTouch, isNewRetailBCPos } = platform || {};\r\n    const bcParams = isNewRetailBCPos ? '-bc' : '';\r\n    const theme = stores.portalStore.themeStore;\r\n    const defualtImage = (isVerticalTouch === true) ? `https://newretail.static.chanjet.com/tinified/logo${bcParams}.png` : `https://newretail.static.chanjet.com/${((!hsy_s && isPortal) || (theme === 'dark' && !isLogin)) ? 'protal-chanjet' : 'chanjet'}-logo${bcParams}.png?v=1`;\r\n    if (hsy_s === true) {\r\n      return (<div className='business-logo-container'>\r\n        <Ticon type='zhiPOS-fanhuishouye2' className='back_i' onClick={() => { hsy_f && hsy_f() }} />\r\n        <img src={url || defualtImage} className=\"example-logo\" />\r\n      </div>);\r\n    }\r\n    return <img src={url || defualtImage} className=\"example-logo\" />\r\n  }\r\n\r\n  //未使用?\r\n  hotKeyInjectOrEject = (type, hotKeyAction) => {\r\n    const registerKeys = ['esc', 'enter'];\r\n    const allKeys = [...registerKeys, ...Object.keys(hotKey.hotKeyConfig)];\r\n    allKeys.forEach((keyboard, index) => {\r\n      nativeMs.onIpcRendererGlobalShortcut({ type, keyboard }, hotKeyActionHandle);\r\n    });\r\n  }\r\n\r\n  blurButton = ({ target }) => { //  焦点为 button 时 移除焦点,防止触发 bee 组件enter快捷键\r\n    if (target && target.nodeName === 'BUTTON') {\r\n      target.blur();\r\n    }\r\n  }\r\n\r\n  registerHotKey = () => {\r\n    this.isSetHotKey = true;\r\n\r\n    this.hotKeyCreate = hotKey({\r\n      observerCallback: this.observerDom,\r\n      log: true,\r\n      pressed: this.hotKeyAction,\r\n      clickBefore: () => {\r\n        const { activeElement } = document;\r\n        activeElement && activeElement.blur();\r\n      },\r\n      filter: event => {\r\n        const { tagName, className } = event.target || event.srcElement || {};\r\n\r\n        return !(event.key === 'Enter' && tagName === 'INPUT' && !~className.indexOf('hot-key-not-filter'));\r\n      }\r\n    });\r\n\r\n    this.hotKeyCreate.observer(undefined, { attributes: true, childList: true, subtree: true ,attributeFilter: ['class', 'style'], });\r\n    this.hotKeyCreate.register('esc')('.hot-key-focus-container')(operationKeys.esc);\r\n    this.hotKeyCreate.register('enter')('.hot-key-focus-container')(operationKeys.enter);\r\n  }\r\n\r\n  observerDom = () => {\r\n      let visibleModal;\r\n      const modals = document.querySelectorAll('.ant-modal-wrap'); //ant-module\r\n      for(let modal of modals) {\r\n        const display = modal.style.display;\r\n        if(display != \"none\"){\r\n          visibleModal = modal\r\n        }\r\n      }\r\n\r\n      let visibleDrawer;\r\n      const drawers = document.querySelectorAll('.ant-drawer-open'); //ant-drawer\r\n      for(let drawer of drawers) {\r\n          visibleDrawer = drawer;\r\n          break;\r\n      }\r\n\r\n      if (visibleModal) {\r\n        if(this.currentFocus !== visibleModal){\r\n          $.clearFocus();\r\n          this.currentFocus = visibleModal\r\n          return $.setFocus(visibleModal);\r\n        }\r\n        return;\r\n      }\r\n\r\n      if (visibleDrawer) {\r\n        if(this.currentFocus !== visibleDrawer){\r\n          $.clearFocus();\r\n          this.currentFocus = visibleDrawer;\r\n          return $.setFocus(visibleDrawer);\r\n        }\r\n        return;\r\n      }\r\n\r\n\r\n      if ($.getFocusId() !== '1') {\r\n        if(this.currentFocus !== 'App' || !document.querySelector(\".hot-key-focus-container\")){\r\n          $.clearFocus();\r\n          this.currentFocus = 'App';\r\n          $.find('.app', true).setFocus();\r\n        }\r\n        return;\r\n      }\r\n  }\r\n\r\n  hotKeyAction = (event, handle) => {\r\n    const { key } = handle || {};\r\n    const toggleKeyCode = 'ctrl+f1';\r\n    if (key === toggleKeyCode) {\r\n      const isSetHotKey = this.isSetHotKey = !this.isSetHotKey;\r\n      const message = isSetHotKey ? '设置' : '取消';\r\n      if (isSetHotKey) {\r\n        $.bind(this.keys.filter(i => i !== toggleKeyCode), this.hotKeyAction);\r\n      } else {\r\n        $.unbind(this.keys.filter(i => i !== toggleKeyCode));\r\n      }\r\n      return Message.info(`已${message}快捷键`);\r\n    }\r\n\r\n    $.action(key);\r\n  }\r\n\r\n  handleInfoRender = (solt) => {\r\n    this.setState({solt})\r\n  }\r\n  onCollapse = () => {\r\n    const {collapsed} = this.state;\r\n    this.setState({collapsed: !collapsed});\r\n  }\r\n  menuOnClick = ({key}) => {\r\n    console.log(key)\r\n    this.setState({selectedKeys: key});\r\n  }\r\n\r\n  handleClose = () => {\r\n    Keyboard.close();\r\n  }\r\n\r\n  handleOk = (type, count) => {\r\n    stores.modifyPassStore.modifyPassWord();\r\n  }\r\n\r\n  headMenuSelect = ({key}) => {\r\n    var footer = [\r\n      {text: '取消', className: 'modifypass-cancal-button', closable: true, action: this.handleClose},\r\n      {text: '确定', className: 'modifypass-ok-button', action: this.handleOk, type: 'primary'}\r\n    ];\r\n    footer = !!footer.length && <div>\r\n      {footer.map((btn, i) =>\r\n        <Button\r\n          className={btn.className || ''}\r\n          key={i}\r\n          type={btn.type}\r\n          loading={btn.loading}\r\n          onClick={() => {\r\n            const {action} = btn || {};\r\n            if (typeof action === 'function') action();\r\n            if (btn.closable) {\r\n              stores.modalRouter.hide('/modifypass');\r\n            }\r\n          }}\r\n        >\r\n          {btn.text}\r\n        </Button>)}\r\n    </div>\r\n    switch (key) {\r\n      case 'logout':\r\n        User.logout();\r\n        break;\r\n      case 'modifypass':\r\n        {\r\n          if(!stores.offlineSys.shouldInOffline())  return;\r\n          stores.modalRouter.show({\r\n            url: '/modifypass',\r\n            title: '修改密码',\r\n            className: 'modify-password',\r\n            width: 402,\r\n            footer,modalType:'mid',\r\n            onHide: () => stores.modalRouter.hide('/modifypass'),\r\n            destroyOnClose: true,\r\n          });\r\n        }\r\n        break;\r\n      default:\r\n        history.push(`/${key}`);\r\n        break;\r\n    }\r\n  }\r\n  render() {\r\n    const { collapsed, selectedKeys, solt, portalHead = [], loginHead = [], retailOrder = [], logoUrl, hsy_s } = this.state;\r\n    const pathname = history.location.pathname;\r\n    const storeInfo = stores.user.options.get('store');\r\n    const isPortal = !!portalHead.length;\r\n    const isLogin = !!loginHead.length;\r\n    const isRetailOrder = !!retailOrder.length;\r\n    const { isNewRetailBCPos } = platform || {};\r\n\r\n    const headProps = {\r\n      logo: this.logoNode(logoUrl, isPortal, isLogin),\r\n      businessName: '',\r\n      storeName: '',\r\n      dateFormat: 'yyyy年MM月dd日 hh:mm:ss',\r\n      menu: [\r\n        { title: '注销', key: 'logout', icon: 'zhuxiao' },\r\n        { title: '修改密码', key: 'modifypass', icon: 'suoping' }\r\n      ],\r\n      onClick: this.headMenuSelect\r\n    };\r\n    if (storeInfo) {\r\n      headProps.businessName = storeInfo.orgName;\r\n      headProps.storeName = storeInfo.storeName;\r\n      headProps.posCode = storeInfo.posCode;\r\n    }\r\n\r\n    // 如果存在商米副屏则优先加载商米副屏\r\n    if (this.isHorizontalSunMi_FuPing) {\r\n      return <Redirect to={'/vicescreen'} />\r\n    }\r\n    console.log('!stores.posLoginStore.posIsLogin=============', !stores.posLoginStore.posIsLogin);\r\n    if (!stores.posLoginStore.posIsLogin && !~pathname.indexOf('login')) {\r\n      stores.modalRouter.hideAll && stores.modalRouter.hideAll();\r\n      return <Redirect to={'/login'} />\r\n    }else{\r\n\r\n      // 如果刷新页面进来已经是登录状态 则直接初始化本地数据库及离线相关\r\n      stores.offlineSys.initOfflineLocal(true);\r\n    }\r\n    const classNames = ['isPortal-layout', 'isRetailOrder-layout'];\r\n    const layoutClassName = [isPortal, isRetailOrder].map((v, i) => (v ? classNames[i] : '')).join(' ');\r\n    return (\r\n      <Layout\r\n        style={{ height: '100%' }}\r\n        className={layoutClassName}\r\n      >\r\n        <Layout>\r\n          <Header\r\n            {...headProps}\r\n            solt={solt}\r\n            isPortal={isPortal}\r\n            className={`${(!hsy_s && isPortal) ? 'isPortal-head' : ''} ${isLogin ? 'isLogin-head' : ''}`}\r\n            isLogin={isLogin}\r\n            location={this.props.location}\r\n            history={this.props.history}\r\n          />\r\n          <Layout.Content>\r\n            {this.props.match.isExact ? (<PortalPageBC />) : <Switch>{this.props.routes}</Switch>}\r\n          </Layout.Content>\r\n        </Layout>\r\n      </Layout>\r\n    )\r\n  }\r\n}\r\n\r\nexport default function Main(props) {\r\n  const { routes, modalRouter } = props;\r\n\r\n  if (modalRouter) {\r\n    return <Switch>{routes}</Switch>;\r\n  }\r\n\r\n  return React.cloneElement(<MainContainer />, props);\r\n}\r\n"]}
         
     |