king
2024-02-04 0bbaa727cdfc65622e33e91c4bf694c83f184535
src/views/appmanage/index.jsx
@@ -23,8 +23,6 @@
const ScriptForm = asyncComponent(() => import('./scriptform'))
const SubMutilForm = asyncComponent(() => import('./submutilform'))
sessionStorage.setItem('isEditState', 'true')
const skinStyle = {
  bg_black_style_blue: {name: '蓝色', color: '#1890ff'},
  bg_black_style_red: {name: '红色', color: '#f5222d'},
@@ -112,6 +110,20 @@
  forbid = false
  UNSAFE_componentWillMount() {
    if (sessionStorage.getItem('devError') === 'true') {
      sessionStorage.clear()
      window.history.replaceState(null, null, window.location.href.split('#')[0] + '#/login')
      window.location.reload()
      return
    }
    if (!sessionStorage.getItem('UserID')) {
      this.props.history.replace('/login')
      return
    }
    window.GLOB.developing = true
    document.body.className = ''
    this.getAppList()
    this.getSmStemp()
@@ -508,15 +520,24 @@
          let _href = window.location.href.split('#')[0] + 'app_record'
          let record = localStorage.getItem(_href)
          record = record ? JSON.parse(record) : null
          if (record) {
            if (record.activeId) {
              let index = applist.findIndex(item => item.ID === record.activeId)
              if (index === -1) {
                localStorage.setItem(_href, JSON.stringify({preId: '', activeId: ''}))
              } else if (index !== 0) {
                applist.unshift(...applist.splice(index, 1))
          if (record && record.dates) {
            let ids = applist.map(item => item.ID)
            let reset = false
            Object.keys(record.dates).forEach(key => {
              if (!ids.includes(key)) {
                delete record.dates[key]
                reset = true
              }
            })
            applist.sort((a, b) => {
              return (record.dates[b.ID] || 0) - (record.dates[a.ID] || 0)
            })
            if (reset) {
              localStorage.setItem(_href, JSON.stringify(record))
            }
          }
        }
@@ -548,20 +569,21 @@
      inner join (select openid from sapp where id='${window.GLOB.appkey}') b 
      on a.openid=b.openid`
    _sql = Utils.formatOptions(_sql)
    _sql = Utils.formatOptions(_sql, 'x')
    let param = {
      func: 'sPC_Get_SelectedList',
      LText: _sql,
      obj_name: 'data',
      arr_field: 'ID,TemplateCode,SignName'
      arr_field: 'ID,TemplateCode,SignName',
      exec_type: 'x'
    }
    
    param.timestamp = moment().format('YYYY-MM-DD HH:mm:ss')
    param.secretkey = Utils.encrypt(param.LText, param.timestamp)
    param.secretkey = Utils.encrypt('', param.timestamp)
    param.open_key = Utils.encryptOpenKey(param.secretkey, param.timestamp) // 云端数据验证
    
    Api.getSystemConfig(param).then(res => {
    Api.getCloudConfig(param).then(res => {
      let msgs = []
      if (!res.status) {
        notification.warning({
@@ -630,11 +652,10 @@
    let param = {
      func: 's_kei_addupt',
      ID: selectApp.ID,
      exec_type: 'y',
      exec_type: 'x',
      remark: selectApp.remark,
      kei_no: selectApp.kei_no,
      cus_param_type: 'A',
      LText: ''
      cus_param_type: 'A'
    }
    param.del_typename = record.typename
@@ -655,7 +676,7 @@
    // 子应用ID、typename、应用ID、CloudUserID、appkey、login_types(是否需要登录,已弃用)、link_type(是否使用短连接,已弃用)、role_type(是否使用角色管理)、lang、css(皮肤)、title(标题)、favicon(图标)、user_binding(用户绑定)、sms_id(短信模板ID)、自定义
    param.LText = sublist.map(item => `select '${item.ID}','${item.typename}','${selectApp.ID}','${sessionStorage.getItem('CloudUserID') || ''}','${window.GLOB.appkey || ''}','false','false','${item.role_type || 'true'}','${item.lang || 'zh-CN'}','${item.css || ''}','${item.title || ''}','${item.favicon || ''}','${item.user_binding || 'false'}','','${window.btoa(window.encodeURIComponent(JSON.stringify({userbind: item.userbind || '', instantMessage: item.instantMessage || '', apptype: item.apptype || '', delay: item.delay || 0, statusBarColor: item.statusBarColor || 'black', topHeight: item.topHeight || '', sysBgColor: item.sysBgColor || '#ffffff', direction: item.direction || 'vertical', adapter: item.adapter || '', share: item.share || '', share_des: item.share_des || '', share_url: item.share_url || '', share_link: item.share_link || ''})))}'`)
    param.LText = param.LText.join(' union all ')
    param.LText = Utils.formatOptions(param.LText)
    param.LText = Utils.formatOptions(param.LText, 'x')
    
    confirm({
      content: '确定删除该子应用吗?',
@@ -698,11 +719,11 @@
    let record = localStorage.getItem(_href)
    record = record ? JSON.parse(record) : null
    if (!record) {
      localStorage.setItem(_href, JSON.stringify({preId: selectApp.ID, activeId: ''}))
    if (!record || !record.dates) {
      localStorage.setItem(_href, JSON.stringify({preId: selectApp.ID, activeId: selectApp.ID, dates: {[selectApp.ID]: new Date().getTime()}}))
    } else {
      if (record.preId === selectApp.ID) {
        localStorage.setItem(_href, JSON.stringify({preId: selectApp.ID, activeId: selectApp.ID}))
      if (record.preId === selectApp.ID || record.activeId === selectApp.ID) {
        localStorage.setItem(_href, JSON.stringify({preId: selectApp.ID, activeId: selectApp.ID, dates: {...record.dates, [selectApp.ID]: new Date().getTime()}}))
      } else {
        localStorage.setItem(_href, JSON.stringify({...record, preId: selectApp.ID}))
      }
@@ -880,7 +901,7 @@
      let param = {
        func: 's_kei_addupt',
        ID: ID,
        exec_type: 'y',
        exec_type: 'x',
        remark: res.remark,
        kei_no: res.kei_no,
        cus_param_type: 'A',
@@ -901,7 +922,7 @@
        param.LText = selectApp.sublist.map(item => `select '${item.ID}','${item.typename}','${selectApp.ID}','${sessionStorage.getItem('CloudUserID') || ''}','${window.GLOB.appkey || ''}','false','false','${item.role_type || 'true'}','${item.lang || 'zh-CN'}','${item.css || ''}','${item.title || ''}','${item.favicon || ''}','${item.user_binding || 'false'}','','${window.btoa(window.encodeURIComponent(JSON.stringify({userbind: item.userbind || '', instantMessage: item.instantMessage || '', apptype: item.apptype || '', delay: item.delay || 0, statusBarColor: item.statusBarColor || 'black', topHeight: item.topHeight || '', sysBgColor: item.sysBgColor || '#ffffff', direction: item.direction || 'vertical', adapter: item.adapter || '', share: item.share || '', share_des: item.share_des || '', share_url: item.share_url || '', share_link: item.share_link || ''})))}'`)
        param.LText = param.LText.join(' union all ')
        param.LText = Utils.formatOptions(param.LText)
        param.LText = Utils.formatOptions(param.LText, 'x')
      }
      Api.getCloudConfig(param).then(result => {
@@ -957,7 +978,7 @@
      let param = {
        func: 's_kei_addupt',
        ID: selectApp.ID,
        exec_type: 'y',
        exec_type: 'x',
        remark: selectApp.remark,
        kei_no: selectApp.kei_no,
        cus_param_type: 'A',
@@ -994,7 +1015,7 @@
      param.LText = sublist.map(item => `select '${item.ID}','${item.typename}','${selectApp.ID}','${sessionStorage.getItem('CloudUserID') || ''}','${window.GLOB.appkey || ''}','false','false','${item.role_type || 'true'}','${item.lang || 'zh-CN'}','${item.css || ''}','${item.title || ''}','${item.favicon || ''}','${item.user_binding || 'false'}','','${window.btoa(window.encodeURIComponent(JSON.stringify({userbind: item.userbind || '', instantMessage: item.instantMessage || '', apptype: item.apptype || '', delay: item.delay || 0, statusBarColor: item.statusBarColor || 'black', topHeight: item.topHeight || '', sysBgColor: item.sysBgColor || '#ffffff', direction: item.direction || 'vertical', adapter: item.adapter || '', share: item.share || '', share_des: item.share_des || '', share_url: item.share_url || '', share_link: item.share_link || ''})))}'`)
      param.LText = param.LText.join(' union all ')
      param.LText = Utils.formatOptions(param.LText)
      param.LText = Utils.formatOptions(param.LText, 'x')
      Api.getCloudConfig(param).then(result => {
        if (result.status) {