| | |
| | | const BarCode = asyncElementComponent(() => import('@/components/barcode')) |
| | | const QrCode = asyncElementComponent(() => import('@/components/qrcode')) |
| | | const Video = asyncComponent(() => import('@/components/video')) |
| | | const PicRadio = { |
| | | '4:3': '75%', '3:2': '66.67%', '16:9': '56.25%', '2:1': '50%', '3:1': '33.33%', '4:1': '25%', |
| | | '5:1': '20%', '6:1': '16.67%', '7:1': '14.29%', '8:1': '12.5%', '9:1': '11.11%', |
| | | '10:1': '10%', '3:4': '133.33%', '2:3': '150%', '9:16': '177.78%' |
| | | } |
| | | |
| | | class CardCellComponent extends Component { |
| | | static propTpyes = { |
| | | seq: PropTypes.any, // 序号 |
| | | cards: PropTypes.object, // 菜单配置信息 |
| | | cardCell: PropTypes.object, |
| | | data: PropTypes.object, |
| | |
| | | } |
| | | |
| | | getContent = (card) => { |
| | | const { data, cards, seq } = this.props |
| | | const { data, cards } = this.props |
| | | |
| | | if (card.eleType === 'sequence') { |
| | | return ( |
| | | <Col key={card.uuid} span={card.width}> |
| | | <div style={card.style}> |
| | | <div className={'ant-mk-text'}>{seq}</div> |
| | | <div className={'ant-mk-text'}>{data.$Index || ''}</div> |
| | | </div> |
| | | </Col> |
| | | ) |
| | |
| | | return ( |
| | | <Col key={card.uuid} span={card.width}> |
| | | <div style={_style} onClick={(e) => {this.openNewView(e, card)}}> |
| | | <div className={'ant-mk-text line' + card.height} style={{height: card.innerHeight || 'auto'}}>{val}</div> |
| | | <div className={'ant-mk-text line' + (card.height || '')} style={{height: card.innerHeight || 'auto'}}>{val}</div> |
| | | </div> |
| | | </Col> |
| | | ) |
| | |
| | | return ( |
| | | <Col key={card.uuid} span={card.width}> |
| | | <div style={_style}> |
| | | <div className={'ant-mk-text line' + card.height} style={{height: card.innerHeight || 'auto'}}>{val}</div> |
| | | <div className={'ant-mk-text line' + (card.height || '')} style={{height: card.innerHeight || 'auto'}}>{val}</div> |
| | | </div> |
| | | </Col> |
| | | ) |
| | |
| | | _imagestyle.borderRadius = _style.borderRadius |
| | | } |
| | | |
| | | if (card.lenWidRadio === '16:9') { |
| | | _imagestyle.paddingTop = '56.25%' |
| | | } else if (card.lenWidRadio === '3:2') { |
| | | _imagestyle.paddingTop = '66.67%' |
| | | } else if (card.lenWidRadio === '4:3') { |
| | | _imagestyle.paddingTop = '75%' |
| | | if (PicRadio[card.lenWidRadio]) { |
| | | _imagestyle.paddingTop = PicRadio[card.lenWidRadio] |
| | | } else { |
| | | _imagestyle.paddingTop = '100%' |
| | | } |
| | |
| | | </Col> |
| | | ) |
| | | } else if (card.eleType === 'button') { |
| | | if (card.$type === 'tableButton' && card.controlField) { // 表格中按钮隐藏控制 |
| | | if (data[card.controlField] === card.controlVal) { |
| | | return null |
| | | } else if (card.controlVal && card.controlVal.split(',').includes(data[card.controlField])) { |
| | | return null |
| | | } |
| | | } |
| | | |
| | | if (['exec', 'prompt', 'pop'].includes(card.OpenType)) { |
| | | return ( |
| | | <Col key={card.uuid} span={card.width}> |
| | | <div style={card.style}> |
| | | <NormalButton |
| | | BID={data.$$BID} |
| | | btn={card} |
| | | show={card.show} |
| | | style={card.btnstyle} |
| | | setting={cards.setting} |
| | | columns={cards.columns} |
| | | selectedData={[data]} |
| | | /> |
| | | </div> |
| | | <Col key={card.uuid} className="mk-cell-btn" span={card.width}> |
| | | <NormalButton |
| | | BID={data.$$BID} |
| | | btn={card} |
| | | show={card.show} |
| | | style={card.style} |
| | | setting={cards.setting} |
| | | columns={cards.columns} |
| | | selectedData={[data]} |
| | | /> |
| | | </Col> |
| | | ) |
| | | } else if (card.OpenType === 'excelIn') { |
| | | return ( |
| | | <Col key={card.uuid} span={card.width}> |
| | | <div style={card.style}> |
| | | <ExcelInButton |
| | | BID={data.$$BID} |
| | | btn={card} |
| | | show={card.show} |
| | | style={card.btnstyle} |
| | | setting={cards.setting} |
| | | selectedData={[data]} |
| | | /> |
| | | </div> |
| | | <Col key={card.uuid} className="mk-cell-btn" span={card.width}> |
| | | <ExcelInButton |
| | | BID={data.$$BID} |
| | | btn={card} |
| | | show={card.show} |
| | | style={card.style} |
| | | setting={cards.setting} |
| | | selectedData={[data]} |
| | | /> |
| | | </Col> |
| | | ) |
| | | } else if (card.OpenType === 'excelOut') { |
| | | return ( |
| | | <Col key={card.uuid} span={card.width}> |
| | | <div style={card.style}> |
| | | <ExcelOutButton |
| | | BID={data.$$BID} |
| | | btn={card} |
| | | show={card.show} |
| | | style={card.btnstyle} |
| | | setting={cards.setting} |
| | | /> |
| | | </div> |
| | | <Col key={card.uuid} className="mk-cell-btn" span={card.width}> |
| | | <ExcelOutButton |
| | | BID={data.$$BID} |
| | | btn={card} |
| | | show={card.show} |
| | | style={card.style} |
| | | setting={cards.setting} |
| | | /> |
| | | </Col> |
| | | ) |
| | | } else if (card.OpenType === 'popview') { |
| | | return ( |
| | | <Col key={card.uuid} span={card.width}> |
| | | <div style={card.style}> |
| | | <PopupButton |
| | | BID={data.$$BID} |
| | | btn={card} |
| | | show={card.show} |
| | | style={card.btnstyle} |
| | | setting={cards.setting} |
| | | selectedData={[data]} |
| | | /> |
| | | </div> |
| | | <Col key={card.uuid} className="mk-cell-btn" span={card.width}> |
| | | <PopupButton |
| | | BID={data.$$BID} |
| | | btn={card} |
| | | show={card.show} |
| | | style={card.style} |
| | | setting={cards.setting} |
| | | selectedData={[data]} |
| | | /> |
| | | </Col> |
| | | ) |
| | | } else if (card.OpenType === 'tab') { |
| | | return ( |
| | | <Col key={card.uuid} span={card.width}> |
| | | <div style={card.style}> |
| | | <TabButton |
| | | btn={card} |
| | | show={card.show} |
| | | style={card.btnstyle} |
| | | setting={cards.setting} |
| | | selectedData={[data]} |
| | | /> |
| | | </div> |
| | | <Col key={card.uuid} className="mk-cell-btn" span={card.width}> |
| | | <TabButton |
| | | btn={card} |
| | | show={card.show} |
| | | style={card.style} |
| | | setting={cards.setting} |
| | | selectedData={[data]} |
| | | /> |
| | | </Col> |
| | | ) |
| | | } else if (card.OpenType === 'innerpage') { |
| | | return ( |
| | | <Col key={card.uuid} span={card.width}> |
| | | <div style={card.style}> |
| | | <NewPageButton |
| | | btn={card} |
| | | show={card.show} |
| | | style={card.btnstyle} |
| | | setting={cards.setting} |
| | | selectedData={[data]} |
| | | /> |
| | | </div> |
| | | <Col key={card.uuid} className="mk-cell-btn" span={card.width}> |
| | | <NewPageButton |
| | | btn={card} |
| | | show={card.show} |
| | | style={card.style} |
| | | setting={cards.setting} |
| | | selectedData={[data]} |
| | | /> |
| | | </Col> |
| | | ) |
| | | } else if (card.OpenType === 'funcbutton') { |
| | | if (card.funcType === 'changeuser') { |
| | | return ( |
| | | <Col key={card.uuid} span={card.width}> |
| | | <div style={card.style}> |
| | | <ChangeUserButton |
| | | BID={data.$$BID} |
| | | btn={card} |
| | | show={card.show} |
| | | style={card.btnstyle} |
| | | setting={cards.setting} |
| | | selectedData={[data]} |
| | | /> |
| | | </div> |
| | | <Col key={card.uuid} className="mk-cell-btn" span={card.width}> |
| | | <ChangeUserButton |
| | | BID={data.$$BID} |
| | | btn={card} |
| | | show={card.show} |
| | | style={card.style} |
| | | setting={cards.setting} |
| | | selectedData={[data]} |
| | | /> |
| | | </Col> |
| | | ) |
| | | } else if (card.funcType === 'print') { |
| | | return ( |
| | | <Col key={card.uuid} span={card.width}> |
| | | <div style={card.style}> |
| | | <PrintButton |
| | | BID={data.$$BID} |
| | | btn={card} |
| | | show={card.show} |
| | | style={card.btnstyle} |
| | | setting={cards.setting} |
| | | selectedData={[data]} |
| | | /> |
| | | </div> |
| | | <Col key={card.uuid} className="mk-cell-btn" span={card.width}> |
| | | <PrintButton |
| | | BID={data.$$BID} |
| | | btn={card} |
| | | show={card.show} |
| | | style={card.style} |
| | | setting={cards.setting} |
| | | selectedData={[data]} |
| | | /> |
| | | </Col> |
| | | ) |
| | | } |
| | | } |
| | | } |
| | | |
| | | return null |
| | | } |
| | | |
| | | render() { |