|
@@ -5,6 +5,7 @@ import { Task, Task as DataType } from '@/domain/work';
|
|
|
import type { ResizeCallbackData } from 'react-resizable';
|
|
|
import { Resizable } from 'react-resizable';
|
|
|
import { WorkFilter } from '@/states/patient/worklist/types/workfilter';
|
|
|
+import { useTouchDoubleClick } from '@/hooks/useTouchDoubleClick';
|
|
|
|
|
|
const columnsDef = [
|
|
|
{
|
|
@@ -430,11 +431,23 @@ const WorklistTable: React.FC<WorklistTableProps> = ({
|
|
|
components={{ header: { cell: ResizableTitle } }}
|
|
|
dataSource={worklistData}
|
|
|
rowKey="StudyID"
|
|
|
- onRow={(record, index) => ({
|
|
|
- onClick: () => handleRowClick(record),
|
|
|
- onDoubleClick: () => handleRowDoubleClick(record),
|
|
|
- 'data-testid': `row-${index}`,
|
|
|
- })}
|
|
|
+ onRow={(record, index) => {
|
|
|
+ const { handleTouchStart } = useTouchDoubleClick({
|
|
|
+ onDoubleClick: () => handleRowDoubleClick(record),
|
|
|
+ delay: 300,
|
|
|
+ });
|
|
|
+
|
|
|
+ return {
|
|
|
+ onClick: () => handleRowClick(record),
|
|
|
+ onDoubleClick: () => handleRowDoubleClick(record),
|
|
|
+ onTouchStart: handleTouchStart,
|
|
|
+ 'data-testid': `row-${index}`,
|
|
|
+ style: {
|
|
|
+ cursor: 'pointer',
|
|
|
+ userSelect: 'none', // 防止文本选择
|
|
|
+ },
|
|
|
+ };
|
|
|
+ }}
|
|
|
rowHoverable={false}
|
|
|
rowClassName={(record) =>
|
|
|
selectedIds.includes(record.StudyID)
|