/* eslint-disable */ /* eslint-disable prefer-destructuring */ /* eslint no-dupe-keys: 0, no-mixed-operators: 0 */ import React from 'react'; import { ListView, Checkbox, Modal, Toast, Flex } from 'antd-mobile-v2'; import { createForm } from 'rc-form'; import 'antd-mobile-v2/dist/antd-mobile.css'; import commonConfig from '../../../utils/config'; import * as commonUtils from '../../../utils/utils'; import CommobileBase from '../../../mobile/common/CommobileBase'; import CommobileListEvent from '../CommobileListEvent'; import CommobileSearchComponent from '../CommobileSearchComponent'; import CommobileToolBar from '../CommobileToolBar'; import CommonbileStep from '../CommobileStep'; import StaticEditTable from "@/components/Common/CommonTable"; /* 可编辑表格 */ import SearchComponent from "@/components/Common/SearchComponent"; import * as commonBusiness from "@/components/Common/commonBusiness"; /* 单据业务功能 */ import * as commonFunc from "@/components/Common/commonFunc"; import styles from '../../mobile.less'; import stylesNew from './index.less'; import preView from '../../components/preView'; import { useEffect } from 'react'; const CheckboxItem = Checkbox.CheckboxItem; const AgreeItem = Checkbox.AgreeItem; const dataSource = new ListView.DataSource({ rowHasChanged: (row1, row2) => row2, }); class CommobileList extends React.Component { constructor(props) { super(props); this.state = { isLoading: false, partNameStatusVisible: false, /* 查看进度 */ sSlaveId: '', }; } onEndReached = async () => { if ((this.props.slavePagination.current + 1) <= Math.ceil(this.props.slavePagination.total / commonConfig.pageSize)) { const { slaveFilterCondition } = this.props; const addState = await this.props.onGetData(this.props.slaveConfig, slaveFilterCondition, this.props.slavePagination.current + 1, true); addState.slaveData = this.props.slaveData.concat(addState.slaveData); this.props.onSaveState({ ...addState }); } } onClose = key => () => { this.setState({ [key]: false, }); } onModalShow = key => () => { this.setState({ [key]: true, }); } handlePartNameStatusLook = (sSlaveId) => { if (commonUtils.isNotEmptyObject(sSlaveId)) { this.setState({ partNameStatusVisible: true, sSlaveId, }); } else { Toast.fail('请选择要查看的工单', 1); } } /* 列表弹出详情 */ handleDoubleClick = (rowData) => { this.props.onDoubleClick(rowData); } padTitles = (titles) => { return titles.padEnd(4, ' ') + ':'; } // topHeight = (value) => { // let subHeight = 0; // if ( value % 2 === 0 ) { // subHeight = ( value / 2 ) * 22; // } else { // subHeight = (Math.floor(value / 2) + 1) * 22; // } // return subHeight; // } render() { return ( <>
); const { slaveConfig, slaveData: slaveDataOld, slaveTotal, slaveSelectedRowKeys: slaveSelectedRowKeysOld, onReturnForm, } = this.props; const slaveDataOld2 = slaveDataOld === undefined ? [] : slaveDataOld; const slaveData = dataSource.cloneWithRows(slaveDataOld2); const slaveSelectedRowKeys = slaveSelectedRowKeysOld === undefined ? [] : slaveSelectedRowKeysOld; const f1 = commonUtils.isEmptyObject(slaveConfig) ? {} : slaveConfig.gdsconfigformslave.filter(item => item.bVisible && item.sName !== '')[0]; const f2 = commonUtils.isEmptyObject(slaveConfig) ? {} : slaveConfig.gdsconfigformslave.filter(item => item.bVisible && item.sName !== '')[1]; const f3 = commonUtils.isEmptyObject(slaveConfig) ? {} : slaveConfig.gdsconfigformslave.filter(item => item.bVisible && item.sName !== '')[2]; const f4 = commonUtils.isEmptyObject(slaveConfig) ? {} : slaveConfig.gdsconfigformslave.filter(item => item.bVisible && item.sName !== '')[3]; const f5 = commonUtils.isEmptyObject(slaveConfig) ? {} : slaveConfig.gdsconfigformslave.filter(item => item.bVisible && item.sName !== '')[4]; const f6 = commonUtils.isEmptyObject(slaveConfig) ? {} : slaveConfig.gdsconfigformslave.filter(item => item.sControlName === 'printPdf')[0]; const f7 = commonUtils.isEmptyObject(slaveConfig) ? {} : slaveConfig.gdsconfigformslave.filter(item => item.bVisible && item.sName === 'sPartNameStatus')[0]; /* 查看进度 */ const separator = (sectionID, rowID) => (
); const row = (rowData, sectionID, rowID) => { const obj = JSON.parse(JSON.stringify(rowData)); // 深拷贝 if (commonUtils.isNotEmptyObject(f7)) { // eslint-disable-next-line jsx-a11y/anchor-is-valid obj[f7.sName] = (查看工单状态); } const f1View = f1 ? (
{f1.showName}:{obj[f1.sName]} {/* eslint-disable-next-line jsx-a11y/anchor-is-valid */} {obj[f2.sName]}
) : ''; return (
{/* eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions onClick={() => this.props.onCopyToClick(rowData)} */} {/* eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions */}
  • this.handleDoubleClick(rowData)} > { true ?
    item === rowData.sSlaveId) > -1} onChange={e => this.props.onCheckboxChange(e, rowData.sSlaveId)} style={{ width: f6 ? '76%' : '100%', marginRight: 0, lineHeight: '30px', color: '#888', fontSize: 16, fontWeight: 'bold', borderBottom: '1px solid #F6F6F6', }} > {f1 ? `${f1.showName}:` : ''}{obj[f1.sName]} {f6 ? '' : f2 ? {obj[f2.sName]} : ''} { // eslint-disable-next-line jsx-a11y/anchor-is-valid f6 ?
    {/* eslint-disable-next-line jsx-a11y/anchor-is-valid */} this.props.onPrintView(e, rowData, f6)}>{obj[f6.sName]}
    : '' }
    : f1View } {f3 ?
    {/* { f6 ? f2 ? */} {/* '' : '' : ''} */} {/*
    {f3.showName}:{obj[f3.sName]}
    */} {/*
    */} {/* {f4 ? */} {/*
    */} {/*
    {f4.showName}:
    */} {/*
    {obj[f4.sName]}
    */} {/*
    : '' */} {/* } */} {/* {f5 ? */} {/*
    */} {/* { */} {/* f6 ? */} {/* {obj[f5.sName]} : */} {/* {obj[f5.sName]} */} {/* } */} {/*
    : '' */} {/* } */} {/*
    */} {slaveConfig.gdsconfigformslave.filter(item => item.bVisible && item.sName !== '').map((item, iIndex) => { if (iIndex > 1) { /** * 修改日期:2021-04-06 * 修改人:吕杰 * 区域:以下 - 行 * BUG:1144 * 说明:现实缩略图,点击展示预览弹窗 * 原代码: */ const bNotViewTitle = item.bNotViewTitle; /* 不显示标题 */ const sMemo = item.sName.toLowerCase().endsWith('memo'); const iRowNum = item.iColValue === 1 ? 24 : 1; /* 每个字段占的网格个数 ,网格总个数是24 */ const iColValue = sMemo ? 24 : item.iColValue * iRowNum; /* 跨度 */ const iRowValue = commonUtils.isEmptyNumber(item.iRowValue) || item.iRowValue === 0 ? 1 : item.iRowValue; /* 行高 */ const height = iRowValue * 18; /* 行高 */ const { token } = this.props.app; const dataUrl = []; /* 缩略图 */ if ((item.showName === '缩略图' || item.sName === 'spicture') && obj[item.sName]) { obj[item.sName].split(',').forEach(url => dataUrl.push(`${commonConfig.file_host}file/download?savePathStr=${url}&sModelsId=100&token=${token}`)); } if (dataUrl.length) { // eslint-disable-next-line return ({item.showName}: preView(dataUrl, e)} src={dataUrl[0]} alt="img" style={{ width: '30px', height: '20px' }} />); } const targetConfig = slaveConfig.gdsconfigformslave.filter(item2 => item2.sName === item.sName)[0]; const customColor = targetConfig.sColorTerms ? targetConfig.sColorTerms : '#000'; return (
    { bNotViewTitle ? <> {obj[item.sName]} : <>
    {item.showName}
    {obj[item.sName]} }
    ); } else { return (''); } })}
    : '' }
  • ); }; const BtnStyle = { type: 'default', color: 'red', border: 'none', backgroundColor: '#fff', fontSize: '15px', }; const divStyle = { display: 'flex', justifyContent: 'flex-end', background: '#fff', }; const stepProps = { ...this.props, sSlaveId: this.state.sSlaveId, }; return (
    {commonUtils.isEmptyArr(slaveTotal) ? '' : Object.keys(slaveTotal[0]).map((key) => { const iIndex = slaveConfig.gdsconfigformslave.findIndex(item => item.sName === key); if (iIndex > -1) { return (
    {`${slaveConfig.gdsconfigformslave[iIndex].showName}:${commonUtils.convertFixNum(commonUtils.convertStrToNumber(slaveTotal[0][key]), this.props.getFloatNum(key))}`}
    ); } else { return (''); } })}
    (
    {this.state.isLoading ? '加载中...' : '加载完毕'}
    )} renderRow={row} renderSeparator={separator} style={{ position: 'absolute', width: '100%', bottom: commonUtils.isEmptyObject(slaveConfig) ? 88 : 135, top: 0, overflow: 'auto', }} pageSize={commonConfig.pageSize} onScroll={() => { }} scrollRenderAheadDistance={500} onEndReached={this.onEndReached} onEndReachedThreshold={10} />
    { commonUtils.isEmptyObject(slaveConfig) ? '' : true ?
    {/* this.props.onSelectAllClick(e)}*/} {/* style={{*/} {/* background: '#fff',*/} {/* zIndex: '99999',*/} {/* width: '25%',*/} {/* display: 'flex',*/} {/* justifyContent: 'flex-start',*/} {/* alignItems: 'cneter',*/} {/* }}*/} {/*>*/} {/* 全选*/} {/**/}
    : '' }{f7 && commonUtils.isNotEmptyObject(this.state.sSlaveId) ? { }} >
    {/* eslint-disable-next-line jsx-a11y/anchor-is-valid */} < 工单状态
    : '' }
    ); } } const CommobilePadListComponent = (props) => { const { form, onReturnForm, formData = [], slaveConfig = {} } = props; if (!formData.length) return null; useEffect(() => { const slaveColumn = commonFunc.getHeaderConfig(slaveConfig); props.onSaveState({ slaveColumn }); }, []) onReturnForm(form); const BtnStyle = { type: 'default', color: 'red', border: 'none', backgroundColor: '#fff', fontSize: '15px', }; const divStyle = { display: 'flex', justifyContent: 'flex-end', background: '#fff', }; return (
    ) } // 表格 const TableComponent = props => { const { tableName } = props; const baseProps = commonBusiness.getTableTypes(tableName, { ...props, noStorageColumn: true }); const tableProps = { ...baseProps, // setOpterationColumn: "Y", tableProps: { // onChange: props.onTitleChange.bind(this, tableName), }, fixedHeight: "calc(100vh - 230px)", showTableName: false, onSelectRowChange: (name, selectedRowKeys) => { props.onSaveState({ [`${name}SelectedRowKeys`]: selectedRowKeys }); } }; return ; }; const CommobileListComponent = createForm()(CommobileList); export default CommobileBase(CommobileListEvent(CommobileListComponent));