king
2019-12-04 a5f99a5f0e2035851997221bc2430f8cfd1dc146
src/templates/modalconfig/dragelement/index.jsx
@@ -29,37 +29,7 @@
    const { card } = findCard(id)
    handleMenu(card)
  }
  const copyCard = id => {
    const { card } = findCard(id)
    let copycard = JSON.parse(JSON.stringify(card))
    copycard.uuid = Utils.getuuid()
    copycard.origin = false
    let names = cards.map(car => { return car.label })
    let index = 1
    let origin = copycard.label.split('(copy')[0] || 'button'
    let label = origin + '(copy)'
    while (names.includes(label)) {
      label = origin + `(copy${index})`
      index++
    }
    copycard.label = label
    let indexes = cards.map(car => { return car.id })
    let newid = 0
    while (indexes.includes(newid)) {
      newid++
    }
    copycard.id = newid
    const { index: overIndex } = findCard(`${card.id}`)
    const _cards = update(cards, { $splice: [[overIndex + 1, 0, copycard]] })
    setCards(_cards)
    handleList({action: _cards})
  }
  const hasDrop = (item) => {
    target = item
  }
@@ -88,28 +58,6 @@
        newcard.orderBy = ''
        newcard.orderType = 'asc'
        newcard.display = 'dropdown'
      } else if (item.type === 'action') {
        newcard.uuid = Utils.getuuid()
        newcard.label = 'button'
        newcard.innerFunc = ''
        newcard.outerFunc = ''
        newcard.Ot = 'requiredSgl'
        newcard.OpenType = item.subType
        newcard.icon = ''
        newcard.class = 'default'
        newcard.intertype = 'inner'
        newcard.interface = ''
        newcard.callbackFunc = ''
        newcard.pageTemplate = ''
      } else if (item.type === 'columns') {
        newcard.uuid = Utils.getuuid()
        newcard.Align = 'left'
        newcard.label = 'fieldName'
        newcard.field = ''
        newcard.Hide = 'false'
        newcard.IsSort = 'true'
        newcard.type = item.subType
        newcard.Width = 120
      }
      
      let indexes = cards.map(car => {return car.id})
@@ -139,31 +87,9 @@
      target = null
    }
  })
  let columns = []
  if (type === 'columns' && cards.length > 10) {
    let number = Math.ceil(cards.length / Math.ceil(cards.length / 10))
    for (let i = 0, len = cards.length; i < len; i += number) {
      columns.push(cards.slice(i, i + number))
    }
  } else if (type === 'columns') {
    columns.push(cards)
  }
  
  return (
    <div ref={drop} className="ant-row">
      {type === 'action' && cards.map(card => (
        <Card
          key={card.uuid}
          id={`${card.id}`}
          type={type}
          card={card}
          moveCard={moveCard}
          editCard={editCard}
          copyCard={copyCard}
          findCard={findCard}
          hasDrop={hasDrop}
        />
      ))}
      {type === 'search' && cards.map(card => (
        <Col key={card.uuid} span={6}>
          <Card
@@ -178,29 +104,6 @@
          />
        </Col>
      ))}
      {type === 'columns' && cards.length > 0 &&
        columns.map((column, i) => (
          <div key={i} className="column-box">
            {i === 0 &&
              <div className="page-card" style={{flex: 60}}>
                <span className="ant-checkbox-inner"></span>
              </div>
            }
            {column.map(card => (
              <Card
                key={card.uuid}
                id={`${card.id}`}
                type={type}
                card={card}
                moveCard={moveCard}
                editCard={editCard}
                findCard={findCard}
                hasDrop={hasDrop}
              />
            ))}
          </div>
        ))
      }
      {cards.length === 0 &&
        <div className="common-drawarea-placeholder">
          {placeholder}