king
2023-09-08 783ab4e467c95e26f7f031151507bd7ad8333a63
src/tabviews/custom/components/chart/antv-X6/index.jsx
@@ -386,6 +386,8 @@
    node: null,
    loading: false,
    status: 0,
    flowname: '',
    flowcode: '',
    orgs: []
  }
@@ -487,7 +489,7 @@
          title: com.OrgName,
          shortName: com.ShortName,
          checkable: false,
          disabled: true,
          selectable: false,
          children: []
        }
        let _works = []
@@ -497,7 +499,7 @@
            key: dep.co_pro_code,
            title: dep.co_pro_name,
            checkable: false,
            disabled: true,
            selectable: false,
            children: []
          }
@@ -506,7 +508,7 @@
              key: job.jobcode,
              title: job.jobname,
              checkable: false,
              disabled: true,
              selectable: false,
              children: []
            }
  
@@ -535,7 +537,7 @@
                  key: group.work_group,
                  title: group.work_group,
                  checkable: false,
                  disabled: true,
                  selectable: false,
                  children: []
                }
@@ -620,6 +622,8 @@
      this.setState({
        status: item.status || 0,
        flowname: item.works_flow_name || '',
        flowcode: item.works_flow_code || '',
        loading: false
      })
@@ -995,11 +999,21 @@
      
      this.setState({node: null})
    })
    graph.on('edge:connected', ({ isNew, edge }) => {
      if (!isNew) return
      let target = edge.getTargetCell()
      let mkdata = target ? target.prop('mkdata') : null
      if (mkdata) {
        edge.prop('mkdata', {status: mkdata.status, statusName: mkdata.statusName})
      }
    })
    
    const r1 = graph.createNode({
      shape: 'mk-rect',
      mknode: 'start',
      mkdata: {status: 0, statusName: '开始'},
      mkdata: {status: 0, statusName: '未提交'},
      attrs: {
        body: {
          rx: 20,
@@ -1097,7 +1111,7 @@
    const r8 = graph.createNode({
      shape: 'mk-rect',
      mknode: 'end',
      mkdata: {status: '', statusName: '结束'},
      mkdata: {status: 888, statusName: '已完成'},
      attrs: {
        body: {
          rx: 20,
@@ -1523,7 +1537,7 @@
  }
  save = () => {
    const { BID, plot, status } = this.state
    const { BID, plot, status, flowname, flowcode } = this.state
    if (!BID) {
      Modal.error({
@@ -1557,18 +1571,52 @@
        ID: BID,
        BID: ''
      }
      let ssoParam = {
        func: 's_works_flow_param_sso_upt_v6',
        status: status,
        ID: BID,
        works_flow_code: flowcode,
        works_flow_name: flowname,
        long_param: window.btoa(window.encodeURIComponent(JSON.stringify(nodes)))
      }
  
      Api.genericInterface(param).then(res => {
        if (res.status) {
          notification.success({
            top: 92,
            message: '保存成功!',
            duration: 2
          })
          this.setState({
            loading: false,
            status: _status
          })
          if (plot.subtype === 'xflow') {
            Api.getSystemConfig(ssoParam).then(result => {
              if (result.status) {
                notification.success({
                  top: 92,
                  message: '保存成功!',
                  duration: 2
                })
                this.setState({
                  loading: false,
                  status: _status
                })
              } else {
                notification.error({
                  top: 92,
                  message: result.message,
                  duration: 10
                })
                this.setState({
                  loading: false
                })
              }
            })
          } else {
            notification.success({
              top: 92,
              message: '保存成功!',
              duration: 2
            })
            this.setState({
              loading: false,
              status: _status
            })
          }
        } else {
          notification.error({
            top: 92,
@@ -1891,20 +1939,23 @@
      MKEmitter.emit('modifyTabs', newtab, true)
    } else if (plot.click === 'menu') {
      let menuId = plot.menu.slice(-1)[0]
      let newtab = window.GLOB.mkThdMenus.filter(m => m.MenuID === menuId)[0]
      let menu = null
      if (!newtab && plot.MenuID) {
        newtab = {
      if (window.GLOB.mkThdMenus.has(menuId)) {
        menu = {...window.GLOB.mkThdMenus.get(menuId)}
      } else if (plot.MenuID) {
        menu = {
          MenuID: plot.MenuID,
          MenuName: plot.MenuName,
          MenuNo: plot.MenuNo,
          type: plot.tabType
        }
      } else if (!newtab) {
        return
      }
      MKEmitter.emit('modifyTabs', {...newtab, param: {$BID: sign}}, true)
      if (!menu) return
      menu.param = {$BID: sign}
      MKEmitter.emit('modifyTabs', menu, true)
    } else {
      MKEmitter.emit('resetSelectLine', config.uuid, sign, {})
    }
@@ -1967,7 +2018,7 @@
  }
  render() {
    const { loading, config, node, orgs, status } = this.state
    const { loading, config, node, orgs, status, flowname } = this.state
    let style = {...config.style}
@@ -2033,6 +2084,7 @@
              <QuestionCircleOutlined />
            </Tooltip>
          </div>
          <div className="flow-name">{flowname}</div>
          <div className="right-tool">
            <Tooltip title="启用/停用">
              <Switch size="small" style={{marginRight: '10px'}} checked={status === 10} onChange={this.changeStatus} />