import { message } from 'ant-design-vue'
import crossWindowWatcher from '@/common/services/cross-window-watcher'
import { getUserInfo } from '@/common/store-mixin'
// import XmSingleDataService from './xm-single-data-service'

export default function ({ button, eventScript, context: { args, dataList, fieldInfos } }) {
  return new Promise((resolve) => {
    const record = args[0]
    let href = ''
    // 判断当前人是否是起草人
    const curuser = getUserInfo().account
    const author = fieldInfos.find((f) => f.name === 'REGISTER_USER')?.value
    let authoraccount = ''
    const flowstatus = fieldInfos.find((f) => f.name === 'FLOW_STATUS')?.value
    if (author) {
      authoraccount = JSON.parse(author)[0]?.code
    }
    if (authoraccount !== curuser) {
      // 判断是否有查看权限
      if (record.openLink) {
        href = '/sd-webflow/done-pages/' + record.instId
      }
      // window.open(href, '_blank')
      crossWindowWatcher.waitForChanged(href).then((refreshFlag) => {
        if (refreshFlag) {
          this.$refs[this.activeKey][0].refresh(true)
        }
      })
      resolve()
    } else {
      // 所属组织机构没有值时直接打开
      if (flowstatus === 0) {
        href = '/sd-webflow/pages/draft/' + record.instId
      } else {
        href = '/sd-webflow/done-pages/' + record.instId
      }
      // window.open(href, '_blank')
      crossWindowWatcher.waitForChanged(href).then((refreshFlag) => {
        if (refreshFlag) {
          this.$refs[this.activeKey][0].refresh(true)
        }
      })
      resolve()
    }
  })
}
