@tntd/reference
Version:
<!-- * @Author: 周泽飞 zefei.zhou@tongdun.net * @Date: 2024-12-03 10:07:54 * @LastEditors: 郑泳健 * @LastEditTime: 2026-01-20 15:55:03 * @FilePath: /tntd3/packages/reference/README.md * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: http
140 lines (135 loc) • 4.53 kB
JavaScript
import { WrapLocaleReceiver } from '../I18N';
import React, { useState } from 'react';
import {Drawer, Button, Collapse, Tag, Tooltip, Alert, Icon} from "tntd";
import ReferenceInfo from '../ReferenceInfo';
const { Panel } = Collapse;
export default WrapLocaleReceiver((props)=>{
const {
I18N,
resolve,
type,
canNextOpera,
modalWrap,
referenceData,
removeModal,
title,
showPagination,
destroyOnClose = true,
orgMap = {},
appList = [],
value = undefined,
onChange = () => {},
cancelText,
okText,
emptyType,
weakMsg,
strongMsg,
jumpFun,
...rest
} = props || {};
const [visible, setVisible] = useState(true);
return (
<Drawer
{...(rest||{})}
title={title ||
<>
<Icon type="warning" style={{ marginRight: '4px', color: '#EF6555' }} />
{I18N.referencebatchcheck.index.shangXianJiaoYanShi}
</>
}
visible={visible}
width={1000}
destroyOnClose={destroyOnClose}
getContainer={modalWrap}
onCancel={()=>setVisible(false)}
afterVisibleChange={(vi)=>{
if(!vi){
removeModal()
}
}}
showFooter={!!canNextOpera}
footer={canNextOpera?[
<Button key="back" onClick={()=>setVisible(false)}>
{cancelText || I18N.referencebatchcheck.index.quXiao}
</Button>,
canNextOpera && (
<Button
key="submit"
type="primary"
onClick={() => {
setVisible(false);
resolve(type);
}}
>
{okText || I18N.referencebatchcheck.index.xiaYiBu}
</Button>
),
]:null}
>
<div className="reference-online-check-drawer">
{!!type && canNextOpera && (
<div className="mb16">
<Alert
type="warning"
message={
weakMsg || referenceData?.message || I18N.referencebatchcheck.index.cunZaiRuoYinYong
}
/>
</div>
)}
{!!type && !canNextOpera && (
<div className="mb16">
<Alert
type="error"
message={
strongMsg || referenceData?.message || I18N.referencebatchcheck.index.cunZaiQiangYinYong
}
/>
</div>
)}
<Collapse defaultActiveKey={value || [0]} onChange={onChange}>
{referenceData?.map((d, i) => {
let headerTxt = d?.componentName;
if (d?.componentCode) {
headerTxt += `[${d?.componentCode}]`;
}
return (
<Panel
header={
<div className="refer-panel-head">
<Tooltip title={headerTxt} placement="topLeft">
<span>{headerTxt}</span>
</Tooltip>
{d?.componentVersion && (
<Tag size="small" color="tnt-purple">
V{d?.componentVersion}
</Tag>
)}
{d?.type === 'STRONG' && (
<Tag color="red" size="small">
{/* {I18N.referencebatchcheck.index.cunZai} */}
{d?.typeName || I18N.referencebatchcheck.index.qiangYinYong}
</Tag>
)}
</div>
}
key={i}
>
<ReferenceInfo
jumpFun={jumpFun}
emptyType={emptyType}
from="ReferenceBatchCheck"
unmountHandle={removeModal}
referenceData={d?.result || []}
orgMap={orgMap}
appList={appList}
showPagination={showPagination}
/>
</Panel>
);
})}
</Collapse>
</div>
</Drawer>
)
})