@voplus/morpho-workspace 6.0.163 → 6.0.165
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/data/notification/interfaces.d.ts +5 -0
- package/es/modules/meeting/components/AgendaList/AgendaItem/components/TaskList/index.js +5 -1
- package/es/modules/meeting/components/AgendaList/AgendaItem/components/TaskList/index.js.map +1 -1
- package/es/modules/meeting/components/AgendaList/AgendaItem/components/TaskList/state.d.ts +1 -0
- package/es/modules/meeting/components/AgendaList/AgendaItem/components/TaskList/state.js +10 -0
- package/es/modules/meeting/components/AgendaList/AgendaItem/components/TaskList/state.js.map +1 -1
- package/es/modules/notification/components/DocumentNotificationCard/index.js +28 -7
- package/es/modules/notification/components/DocumentNotificationCard/index.js.map +1 -1
- package/es/modules/notification/components/DocumentNotificationCard/index.less +67 -5
- package/es/modules/notification/components/NotificationList/index.less +1 -1
- package/es/modules/tasks/components/NewTaskForm/NewTaskFormDialog.d.ts +5 -0
- package/es/modules/tasks/components/NewTaskForm/NewTaskFormDialog.js +11 -0
- package/es/modules/tasks/components/NewTaskForm/NewTaskFormDialog.js.map +1 -0
- package/es/modules/tasks/components/NewTaskForm/index.d.ts +10 -2
- package/es/modules/tasks/components/NewTaskForm/index.js +36 -27
- package/es/modules/tasks/components/NewTaskForm/index.js.map +1 -1
- package/es/modules/work/components/NewWorkForm/index.d.ts +2 -0
- package/es/modules/work/components/NewWorkForm/index.js +1 -1
- package/es/modules/work/components/NewWorkForm/index.js.map +1 -1
- package/es/modules/work/components/WorkTableListCard/TableCell.d.ts +13 -1
- package/es/modules/work/components/WorkTableListCard/TableCell.js +28 -1
- package/es/modules/work/components/WorkTableListCard/TableCell.js.map +1 -1
- package/es/modules/work/components/WorkTableListCard/TableCellDetails.d.ts +43 -0
- package/es/modules/work/components/WorkTableListCard/TableCellDetails.js +130 -0
- package/es/modules/work/components/WorkTableListCard/TableCellDetails.js.map +1 -0
- package/es/modules/work/components/WorkTableListCard/index.d.ts +9 -0
- package/es/modules/work/components/WorkTableListCard/index.js +57 -42
- package/es/modules/work/components/WorkTableListCard/index.js.map +1 -1
- package/es/modules/work/components/WorkTableListCard/index.less +99 -9
- package/es/modules/work/components/WorkTableListCardPage/index.d.ts +17 -0
- package/es/modules/work/components/WorkTableListCardPage/index.js +85 -0
- package/es/modules/work/components/WorkTableListCardPage/index.js.map +1 -0
- package/es/modules/work/components/WorkTableListCardPage/index.less +48 -0
- package/es/modules/work/components/WorkTableListCardPage/state.d.ts +8 -0
- package/es/modules/work/components/WorkTableListCardPage/state.js +54 -0
- package/es/modules/work/components/WorkTableListCardPage/state.js.map +1 -0
- package/es/modules/work/work-type/components/ReportsCompletedWorks/index.d.ts +6 -0
- package/es/modules/work/work-type/components/ReportsCompletedWorks/index.js +24 -0
- package/es/modules/work/work-type/components/ReportsCompletedWorks/index.js.map +1 -0
- package/es/modules/work/work-type/components/ReportsCompletedWorks/index.less +60 -0
- package/es/modules/work/work-type/components/ReportsCompletedWorks/state.d.ts +6 -0
- package/es/modules/work/work-type/components/ReportsCompletedWorks/state.js +27 -0
- package/es/modules/work/work-type/components/ReportsCompletedWorks/state.js.map +1 -0
- package/es/modules/work/work-type/components/WorkTypeSelect/index.d.ts +1 -0
- package/es/modules/work/work-type/components/WorkTypeSelect/index.js +16 -2
- package/es/modules/work/work-type/components/WorkTypeSelect/index.js.map +1 -1
- package/es/modules/work/work-type/components/WorkTypeSelect/state.d.ts +5 -0
- package/es/modules/work/work-type/components/WorkTypeSelect/state.js +24 -0
- package/es/modules/work/work-type/components/WorkTypeSelect/state.js.map +1 -0
- package/es/modules/work/work-type/components/WorkTypeStatsLabel/StatsItem.d.ts +11 -0
- package/es/modules/work/work-type/components/WorkTypeStatsLabel/StatsItem.js +21 -0
- package/es/modules/work/work-type/components/WorkTypeStatsLabel/StatsItem.js.map +1 -0
- package/es/modules/work/work-type/components/WorkTypeStatsLabel/index.d.ts +7 -0
- package/es/modules/work/work-type/components/WorkTypeStatsLabel/index.js +33 -0
- package/es/modules/work/work-type/components/WorkTypeStatsLabel/index.js.map +1 -0
- package/es/modules/work/work-type/components/WorkTypeStatsLabel/index.less +74 -0
- package/es/modules/work/work-type/controls/WorktypeCompleteWorksChart/WorkTypeCompletedWorksChart.d.ts +6 -0
- package/es/modules/work/work-type/controls/WorktypeCompleteWorksChart/WorkTypeCompletedWorksChart.js +85 -0
- package/es/modules/work/work-type/controls/WorktypeCompleteWorksChart/WorkTypeCompletedWorksChart.js.map +1 -0
- package/es/modules/work/work-type/pages/WorkTypePage/Dashboard.js +32 -9
- package/es/modules/work/work-type/pages/WorkTypePage/Dashboard.js.map +1 -1
- package/es/modules/work/work-type/pages/WorkTypePage/Works.d.ts +7 -0
- package/es/modules/work/work-type/pages/WorkTypePage/Works.js +16 -0
- package/es/modules/work/work-type/pages/WorkTypePage/Works.js.map +1 -0
- package/es/modules/work/work-type/pages/WorkTypePage/index.js +8 -57
- package/es/modules/work/work-type/pages/WorkTypePage/index.js.map +1 -1
- package/es/modules/work/work-type/pages/WorkTypePage/index.less +17 -0
- package/es/modules/work/work-type/pages/WorkTypePage/state.d.ts +2 -0
- package/es/modules/work/work-type/pages/WorkTypePage/state.js +37 -0
- package/es/modules/work/work-type/pages/WorkTypePage/state.js.map +1 -1
- package/es/obsolete/WorkTypePage/Dashboard.d.ts +5 -0
- package/es/obsolete/WorkTypePage/Dashboard.js +18 -0
- package/es/obsolete/WorkTypePage/Dashboard.js.map +1 -0
- package/es/obsolete/WorkTypePage/Summary.d.ts +5 -0
- package/es/obsolete/WorkTypePage/Summary.js +21 -0
- package/es/obsolete/WorkTypePage/Summary.js.map +1 -0
- package/es/obsolete/WorkTypePage/WorkListPage.d.ts +7 -0
- package/es/obsolete/WorkTypePage/WorkListPage.js +25 -0
- package/es/obsolete/WorkTypePage/WorkListPage.js.map +1 -0
- package/es/obsolete/WorkTypePage/WorkTypeDescriptionCard.d.ts +5 -0
- package/es/obsolete/WorkTypePage/WorkTypeDescriptionCard.js +14 -0
- package/es/obsolete/WorkTypePage/WorkTypeDescriptionCard.js.map +1 -0
- package/es/obsolete/WorkTypePage/index.d.ts +3 -0
- package/es/obsolete/WorkTypePage/index.js +181 -0
- package/es/obsolete/WorkTypePage/index.js.map +1 -0
- package/es/obsolete/WorkTypePage/index.less +57 -0
- package/es/obsolete/WorkTypePage/state.d.ts +16 -0
- package/es/obsolete/WorkTypePage/state.js +161 -0
- package/es/obsolete/WorkTypePage/state.js.map +1 -0
- package/package.json +1 -1
@@ -0,0 +1,43 @@
|
|
1
|
+
import React from "react";
|
2
|
+
/** WorkTypePage 用到的 work list card */
|
3
|
+
export declare const columnsSimpleList: ({
|
4
|
+
title: React.JSX.Element;
|
5
|
+
dataIndex: string;
|
6
|
+
width?: undefined;
|
7
|
+
} | {
|
8
|
+
title: React.JSX.Element;
|
9
|
+
dataIndex: string;
|
10
|
+
width: string;
|
11
|
+
} | {
|
12
|
+
title: string;
|
13
|
+
dataIndex: string;
|
14
|
+
width: string;
|
15
|
+
})[];
|
16
|
+
export declare const columnsDetailsList: ({
|
17
|
+
title: React.JSX.Element;
|
18
|
+
dataIndex: string;
|
19
|
+
width?: undefined;
|
20
|
+
} | {
|
21
|
+
title: React.JSX.Element;
|
22
|
+
dataIndex: string;
|
23
|
+
width: string;
|
24
|
+
} | {
|
25
|
+
title: string;
|
26
|
+
dataIndex: string;
|
27
|
+
width: string;
|
28
|
+
})[];
|
29
|
+
export declare const columnsDetailsList2: ({
|
30
|
+
title: React.JSX.Element;
|
31
|
+
dataIndex: string;
|
32
|
+
width?: undefined;
|
33
|
+
} | {
|
34
|
+
title: React.JSX.Element;
|
35
|
+
dataIndex: string;
|
36
|
+
width: string;
|
37
|
+
} | {
|
38
|
+
title: string;
|
39
|
+
dataIndex: string;
|
40
|
+
width: string;
|
41
|
+
})[];
|
42
|
+
declare const TableCell: (props: any) => React.JSX.Element;
|
43
|
+
export default TableCell;
|
@@ -0,0 +1,130 @@
|
|
1
|
+
import { FontAwesomeIcon as FAIcon } from "@fortawesome/react-fontawesome";
|
2
|
+
import { useMetaStore } from "@voplus/morpho-document-core";
|
3
|
+
import { faBarsProgress, faCalendarDays, faUserGroup, faUser, faEllipsisVertical, } from "@fortawesome/pro-solid-svg-icons";
|
4
|
+
import { Open } from "@voplus/morpho-document/es/controls/ToolBar/buttons";
|
5
|
+
import ToolBar from "@voplus/morpho-document/es/controls/ToolBar/ToolBar2";
|
6
|
+
import UTCShortDate from "@voplus/morpho-ui/es/controls/UTCShortDate";
|
7
|
+
import ItemFunction from "@voplus/morpho-org/es/controls/ItemFunction";
|
8
|
+
import TagView from "@voplus/morpho-document/es/components/TagView/TagView2";
|
9
|
+
import UnitAvatar from "@voplus/morpho-org/es/components/UnitAvatar/LoadedUnitAvatar";
|
10
|
+
import UnitNameNoteAlert from "@voplus/morpho-org/es/components/UnitNameNoteAlert";
|
11
|
+
import WorkPropertiesView from "../WorkPropertiesView";
|
12
|
+
import WorkQuickViewDialog from "../WorkQuickViewDialog";
|
13
|
+
import { observe } from "@voplus/morpho-ui";
|
14
|
+
import classnames from "classnames";
|
15
|
+
import React from "react";
|
16
|
+
import { useDocumentStore } from "@voplus/morpho-document-core";
|
17
|
+
/** WorkTypePage 用到的 work list card */
|
18
|
+
export const columnsSimpleList = [
|
19
|
+
{
|
20
|
+
title: (React.createElement(React.Fragment, null,
|
21
|
+
React.createElement(FAIcon, { icon: faUserGroup }),
|
22
|
+
" Created Name")),
|
23
|
+
dataIndex: "name",
|
24
|
+
},
|
25
|
+
{
|
26
|
+
title: (React.createElement(React.Fragment, null,
|
27
|
+
React.createElement(FAIcon, { icon: faCalendarDays }),
|
28
|
+
" Create Date")),
|
29
|
+
dataIndex: "date",
|
30
|
+
width: "30%",
|
31
|
+
},
|
32
|
+
{
|
33
|
+
title: " ",
|
34
|
+
dataIndex: "menu",
|
35
|
+
width: "68px",
|
36
|
+
},
|
37
|
+
];
|
38
|
+
export const columnsDetailsList = [
|
39
|
+
{
|
40
|
+
title: (React.createElement(React.Fragment, null,
|
41
|
+
React.createElement(FAIcon, { icon: faUserGroup }),
|
42
|
+
" Created Name")),
|
43
|
+
dataIndex: "name",
|
44
|
+
},
|
45
|
+
{
|
46
|
+
title: (React.createElement(React.Fragment, null,
|
47
|
+
React.createElement(FAIcon, { icon: faCalendarDays }),
|
48
|
+
" Create Date")),
|
49
|
+
dataIndex: "date",
|
50
|
+
width: "22%",
|
51
|
+
},
|
52
|
+
{
|
53
|
+
title: (React.createElement(React.Fragment, null,
|
54
|
+
React.createElement(FAIcon, { icon: faBarsProgress }),
|
55
|
+
" Tag")),
|
56
|
+
dataIndex: "tags",
|
57
|
+
width: "20%",
|
58
|
+
},
|
59
|
+
{
|
60
|
+
title: (React.createElement(React.Fragment, null,
|
61
|
+
React.createElement(FAIcon, { icon: faUser }),
|
62
|
+
" Created By")),
|
63
|
+
dataIndex: "by",
|
64
|
+
width: "20%",
|
65
|
+
},
|
66
|
+
{
|
67
|
+
title: " ",
|
68
|
+
dataIndex: "menu",
|
69
|
+
width: "68px",
|
70
|
+
},
|
71
|
+
];
|
72
|
+
export const columnsDetailsList2 = [
|
73
|
+
{
|
74
|
+
title: (React.createElement(React.Fragment, null,
|
75
|
+
React.createElement(FAIcon, { icon: faUserGroup }),
|
76
|
+
" Created Name")),
|
77
|
+
dataIndex: "name",
|
78
|
+
},
|
79
|
+
{
|
80
|
+
title: (React.createElement(React.Fragment, null,
|
81
|
+
React.createElement(FAIcon, { icon: faCalendarDays }),
|
82
|
+
" Create Date")),
|
83
|
+
dataIndex: "date",
|
84
|
+
width: "15%",
|
85
|
+
},
|
86
|
+
{
|
87
|
+
title: (React.createElement(React.Fragment, null,
|
88
|
+
React.createElement(FAIcon, { icon: faBarsProgress }),
|
89
|
+
" Tag")),
|
90
|
+
dataIndex: "tags",
|
91
|
+
width: "20%",
|
92
|
+
},
|
93
|
+
{
|
94
|
+
title: (React.createElement(React.Fragment, null,
|
95
|
+
React.createElement(FAIcon, { icon: faUser }),
|
96
|
+
" Created By")),
|
97
|
+
dataIndex: "by",
|
98
|
+
width: "20%",
|
99
|
+
},
|
100
|
+
{
|
101
|
+
title: (React.createElement(React.Fragment, null,
|
102
|
+
React.createElement(FAIcon, { icon: faCalendarDays }),
|
103
|
+
" Due Date")),
|
104
|
+
dataIndex: "due",
|
105
|
+
width: "15%",
|
106
|
+
},
|
107
|
+
{
|
108
|
+
title: " ",
|
109
|
+
dataIndex: "menu",
|
110
|
+
width: "68px",
|
111
|
+
},
|
112
|
+
];
|
113
|
+
const TableCell = (props) => {
|
114
|
+
const { dataIndex, record, rowIndex, children, ...restProps } = props;
|
115
|
+
const store = useDocumentStore();
|
116
|
+
const meta = useMetaStore();
|
117
|
+
return observe(() => (React.createElement("td", { ...restProps }, dataIndex === "name" ? (React.createElement(ItemFunction, { className: "work-table-item-name_2", quickViewDialog: (onCancel) => (React.createElement(WorkQuickViewDialog, { id: record.id, visible: true, onCancel: onCancel })), propertiesView: React.createElement(WorkPropertiesView, { id: record.id }) },
|
118
|
+
React.createElement("span", { className: classnames(record.workStatus.charAt(0).toLowerCase() + record.workStatus.slice(1)) }),
|
119
|
+
record.name,
|
120
|
+
"-",
|
121
|
+
record.number)) : dataIndex === "date" ? (React.createElement(UTCShortDate, { className: "work-table-item-createDate", value: record.createDate, format: "DD MMM YYYY" })) : dataIndex === "due" ? (React.createElement(UTCShortDate, { value: record.due, format: "DD MMM YYYY" })) : dataIndex === "tags" ? (React.createElement(TagView, { id: record.id, tags: record.tags, editable: false, items: store.items, maxCount: 1, className: "work-table-item-tags" })) : dataIndex === "by" ? (React.createElement("div", { className: "work-table-item-info" },
|
122
|
+
record.contact && React.createElement(UnitAvatar, { unit: record.contact }),
|
123
|
+
React.createElement("div", { className: "work-by-name" }, record.contact ? (React.createElement(UnitNameNoteAlert, { id: record.contact.id, name: record.contact.name })) : null))) : dataIndex === "menu" ? (React.createElement(ToolBar, { id: record.id, moreProps: {
|
124
|
+
buttonProps: { size: "middle" },
|
125
|
+
icon: React.createElement(FAIcon, { icon: faEllipsisVertical }),
|
126
|
+
} },
|
127
|
+
React.createElement(Open, { size: "middle", url: meta.getRoute(record) }))) : (children))));
|
128
|
+
};
|
129
|
+
export default TableCell;
|
130
|
+
//# sourceMappingURL=TableCellDetails.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"TableCellDetails.js","sourceRoot":"","sources":["../../../../../src/modules/work/components/WorkTableListCard/TableCellDetails.tsx"],"names":[],"mappings":"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"}
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import React, { ReactNode } from "react";
|
2
|
+
import "./index.less";
|
2
3
|
export type WorkTableListCardProps = {
|
3
4
|
/** filter by contactId */
|
4
5
|
contactId?: string;
|
@@ -7,6 +8,8 @@ export type WorkTableListCardProps = {
|
|
7
8
|
/** status of works shown on the list. */
|
8
9
|
status?: string;
|
9
10
|
isHeader?: boolean;
|
11
|
+
/** types id of works shown on the list. */
|
12
|
+
typesId?: string;
|
10
13
|
/** 预选 contact */
|
11
14
|
primaryContact?: {
|
12
15
|
id: string;
|
@@ -21,6 +24,12 @@ export type WorkTableListCardProps = {
|
|
21
24
|
isHeader?: boolean;
|
22
25
|
title?: ReactNode;
|
23
26
|
};
|
27
|
+
scrollH?: number;
|
28
|
+
searchVal?: string;
|
29
|
+
/** 是否显示 Details 的 内容 */
|
30
|
+
details?: boolean;
|
31
|
+
type?: "simple" | "details" | "details2";
|
32
|
+
onWorkTotal?: (total: number) => void;
|
24
33
|
};
|
25
34
|
declare const WorkTableListCard: {
|
26
35
|
(props: WorkTableListCardProps): React.JSX.Element;
|
@@ -1,19 +1,20 @@
|
|
1
|
-
import { faBarsProgress, faThumbtack, faUserGroup } from "@fortawesome/pro-solid-svg-icons";
|
2
|
-
import { FontAwesomeIcon as FAIcon } from "@fortawesome/react-fontawesome";
|
3
1
|
import { useAutoUpdateListData } from "@voplus/morpho-document-core";
|
4
2
|
import { observe, useRenderOnChange } from "@voplus/morpho-ui";
|
5
3
|
import DocumentTableListCard from "@voplus/morpho-ui/es/components/DocumentTableListCard";
|
6
4
|
import TableListCard from "@voplus/morpho-ui/es/components/TableListCard";
|
7
5
|
import { ListDataContext, useCreateListDataState } from "@voplus/morpho-ui/es/data";
|
6
|
+
import AddDropDown2 from "@voplus/morpho-ui/es/components/layout/ListView/controls/AddDropDown2";
|
8
7
|
import { Button } from "antd";
|
8
|
+
import TableCell, { columnsList } from "./TableCell";
|
9
|
+
import TableCellDetails, { columnsSimpleList, columnsDetailsList, columnsDetailsList2, } from "./TableCellDetails";
|
9
10
|
import React, { useState, useEffect } from "react";
|
10
11
|
import { useWorkListEffect } from "../../../../data/work";
|
11
12
|
import NewWorkFormDialog from "../NewWorkForm/NewWorkFormDialog";
|
12
|
-
import TableCell from "./TableCell";
|
13
13
|
import classnames from "classnames";
|
14
|
+
import "./index.less";
|
14
15
|
const WorkTableListCard = (props) => {
|
15
16
|
var _a;
|
16
|
-
const { contactId } = props;
|
17
|
+
const { contactId, typesId, scrollH } = props;
|
17
18
|
const [visible, setVisible] = useState(false);
|
18
19
|
const [workTotal, setWorkTotal] = useState(0);
|
19
20
|
const [status, setStatus] = useState((_a = props.status) !== null && _a !== void 0 ? _a : "Active");
|
@@ -21,41 +22,9 @@ const WorkTableListCard = (props) => {
|
|
21
22
|
const list = useCreateListDataState({
|
22
23
|
filterDefaults: {
|
23
24
|
filters: filters(),
|
25
|
+
includes: "tags",
|
24
26
|
},
|
25
|
-
}, [contactId, status]);
|
26
|
-
const columnsList = [
|
27
|
-
{
|
28
|
-
title: (React.createElement(React.Fragment, null,
|
29
|
-
React.createElement(FAIcon, { icon: faThumbtack }),
|
30
|
-
" Name")),
|
31
|
-
dataIndex: "name",
|
32
|
-
},
|
33
|
-
{
|
34
|
-
title: (React.createElement(React.Fragment, null,
|
35
|
-
React.createElement(FAIcon, { icon: faUserGroup }),
|
36
|
-
" Assign")),
|
37
|
-
dataIndex: "assign",
|
38
|
-
width: "22%",
|
39
|
-
},
|
40
|
-
{
|
41
|
-
title: (React.createElement(React.Fragment, null,
|
42
|
-
React.createElement(FAIcon, { icon: faBarsProgress }),
|
43
|
-
" Status")),
|
44
|
-
dataIndex: "status",
|
45
|
-
width: "20%",
|
46
|
-
},
|
47
|
-
{
|
48
|
-
title: " ",
|
49
|
-
dataIndex: "menu",
|
50
|
-
width: "68px",
|
51
|
-
},
|
52
|
-
];
|
53
|
-
const components = {
|
54
|
-
body: {
|
55
|
-
// row: DragTableRow,
|
56
|
-
cell: TableCell,
|
57
|
-
},
|
58
|
-
};
|
27
|
+
}, [contactId, status, typesId]);
|
59
28
|
const columns = columnsList.map((col) => {
|
60
29
|
return {
|
61
30
|
...col,
|
@@ -68,6 +37,24 @@ const WorkTableListCard = (props) => {
|
|
68
37
|
},
|
69
38
|
};
|
70
39
|
});
|
40
|
+
const columnsDetails = (props.type === "details"
|
41
|
+
? columnsDetailsList
|
42
|
+
: props.type === "details2"
|
43
|
+
? columnsDetailsList2
|
44
|
+
: props.type === "simple"
|
45
|
+
? columnsSimpleList
|
46
|
+
: []).map((col) => {
|
47
|
+
return {
|
48
|
+
...col,
|
49
|
+
onCell: (record, rowIndex) => {
|
50
|
+
return {
|
51
|
+
record,
|
52
|
+
dataIndex: col.dataIndex,
|
53
|
+
rowIndex: rowIndex,
|
54
|
+
};
|
55
|
+
},
|
56
|
+
};
|
57
|
+
});
|
71
58
|
/** useOnNewDocument, useOnDeleteDocument的sugar syntax 自動更新list. */
|
72
59
|
useAutoUpdateListData(list, (d) => {
|
73
60
|
if (status) {
|
@@ -78,8 +65,10 @@ const WorkTableListCard = (props) => {
|
|
78
65
|
useRenderOnChange(() => list.filters.options);
|
79
66
|
/** 把ListDataState传给useWorkListEffect,使之可以自動更新loading, hasmore. */
|
80
67
|
useWorkListEffect(list, (result, total) => {
|
68
|
+
var _a;
|
81
69
|
list.union(result);
|
82
70
|
setWorkTotal(total);
|
71
|
+
(_a = props.onWorkTotal) === null || _a === void 0 ? void 0 : _a.call(props, total);
|
83
72
|
}, {
|
84
73
|
Total: true,
|
85
74
|
...list.filters.options,
|
@@ -88,15 +77,33 @@ const WorkTableListCard = (props) => {
|
|
88
77
|
if (props.status)
|
89
78
|
setStatus(props.status);
|
90
79
|
}, [props.status]);
|
80
|
+
useEffect(() => {
|
81
|
+
var _a;
|
82
|
+
list.triggerSearch((_a = props.searchVal) !== null && _a !== void 0 ? _a : "");
|
83
|
+
}, [props.searchVal]);
|
91
84
|
return observe(() => (React.createElement(React.Fragment, null,
|
92
85
|
React.createElement(ListDataContext.Provider, { value: list },
|
93
86
|
React.createElement(DocumentTableListCard, { isHeader: props.isHeader, header: React.createElement(React.Fragment, null,
|
94
|
-
React.createElement("div",
|
87
|
+
props.details ? (React.createElement("div", { className: "work-table-card-header" },
|
88
|
+
React.createElement("span", { className: classnames("work-status", status.charAt(0).toLowerCase() + status.slice(1)) }),
|
89
|
+
React.createElement("span", { className: "title" },
|
90
|
+
status,
|
91
|
+
workTotal ? `(${workTotal})` : null))) : (React.createElement("div", null,
|
95
92
|
React.createElement("span", { className: "title" }, "Work"),
|
96
93
|
React.createElement(Button, { className: classnames({ current: status === "Active" }), onClick: () => setStatus("Active") }, "Active"),
|
97
|
-
React.createElement(Button, { className: classnames({ current: status === "Done" }), onClick: () => setStatus("Done") }, "Done")),
|
98
|
-
React.createElement("div", null, props.addAble && (React.createElement(
|
99
|
-
React.createElement(TableListCard, { tableListProps: {
|
94
|
+
React.createElement(Button, { className: classnames({ current: status === "Done" }), onClick: () => setStatus("Done") }, "Done"))),
|
95
|
+
React.createElement("div", null, props.addAble && (React.createElement(AddDropDown2, { btnType: props.details ? "icon" : "text", onClick: () => setVisible(true) })))) },
|
96
|
+
React.createElement(TableListCard, { tableListProps: {
|
97
|
+
// columns: columns, components: components
|
98
|
+
columns: props.details ? columnsDetails : columns,
|
99
|
+
components: {
|
100
|
+
body: {
|
101
|
+
// row: DragTableRow,
|
102
|
+
cell: props.details ? TableCellDetails : TableCell,
|
103
|
+
},
|
104
|
+
},
|
105
|
+
scrollH: scrollH,
|
106
|
+
}, className: "work-table-list-card", ...props.tableCardProps, ...props.tableListProps, title: React.createElement(React.Fragment, null,
|
100
107
|
props.status,
|
101
108
|
workTotal ? ` (${workTotal})` : null) }))),
|
102
109
|
visible && (React.createElement(NewWorkFormDialog, { contact: props.primaryContact, onCancel: () => setVisible(false), onSave: () => setVisible(false) })))));
|
@@ -113,6 +120,14 @@ const WorkTableListCard = (props) => {
|
|
113
120
|
v1: status,
|
114
121
|
});
|
115
122
|
}
|
123
|
+
if (typesId) {
|
124
|
+
filter.push({
|
125
|
+
c: "WorkType",
|
126
|
+
o: "=",
|
127
|
+
l: "And",
|
128
|
+
v1: typesId,
|
129
|
+
});
|
130
|
+
}
|
116
131
|
return filter;
|
117
132
|
}
|
118
133
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/work/components/WorkTableListCard/index.tsx"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/work/components/WorkTableListCard/index.tsx"],"names":[],"mappings":"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"}
|
@@ -1,14 +1,104 @@
|
|
1
1
|
:global {
|
2
|
-
.work-table-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
2
|
+
.work-table-card-header {
|
3
|
+
.work-status {
|
4
|
+
display: inline-block;
|
5
|
+
width: 9px;
|
6
|
+
height: 9px;
|
7
|
+
background: #e6e6e6;
|
8
|
+
border-radius: 50%;
|
9
|
+
margin-right: 9px;
|
10
|
+
&.new {
|
11
|
+
background: #c5e1ff;
|
12
|
+
}
|
13
|
+
&.active {
|
14
|
+
background: #b7ffc5;
|
15
|
+
}
|
16
|
+
&.rejected {
|
17
|
+
background: #ffb7b7;
|
18
|
+
}
|
19
|
+
&.closed {
|
20
|
+
background: #e0d339;
|
21
|
+
}
|
22
|
+
&.done {
|
23
|
+
background: #fcb7ff;
|
24
|
+
}
|
9
25
|
}
|
10
26
|
}
|
11
|
-
.work-
|
12
|
-
|
27
|
+
.work-table-list-card {
|
28
|
+
.work-table-item-name {
|
29
|
+
background-color: transparent;
|
30
|
+
padding: 0;
|
31
|
+
cursor: pointer;
|
32
|
+
.document-name-content .document-name {
|
33
|
+
font-size: 14px;
|
34
|
+
color: #5d5d5d;
|
35
|
+
}
|
36
|
+
}
|
37
|
+
.work-table-item-name_2 {
|
38
|
+
color: #217eb2;
|
39
|
+
font-weight: bold;
|
40
|
+
text-decoration: underline;
|
41
|
+
cursor: pointer;
|
42
|
+
display: flex;
|
43
|
+
align-items: center;
|
44
|
+
span {
|
45
|
+
display: inline-block;
|
46
|
+
width: 9px;
|
47
|
+
height: 9px;
|
48
|
+
background: #e6e6e6;
|
49
|
+
border-radius: 50%;
|
50
|
+
margin-right: 9px;
|
51
|
+
&.new {
|
52
|
+
background: #c5e1ff;
|
53
|
+
}
|
54
|
+
&.active {
|
55
|
+
background: #b7ffc5;
|
56
|
+
}
|
57
|
+
&.rejected {
|
58
|
+
background: #ffb7b7;
|
59
|
+
}
|
60
|
+
&.closed {
|
61
|
+
background: #e0d339;
|
62
|
+
}
|
63
|
+
&.done {
|
64
|
+
background: #fcb7ff;
|
65
|
+
}
|
66
|
+
}
|
67
|
+
}
|
68
|
+
.work-status.work-table-status-label {
|
69
|
+
width: 95px !important;
|
70
|
+
}
|
71
|
+
|
72
|
+
.work-table-item-info {
|
73
|
+
color: #5d5d5d;
|
74
|
+
font-weight: 500;
|
75
|
+
padding: 1px 0;
|
76
|
+
cursor: pointer;
|
77
|
+
display: flex;
|
78
|
+
align-items: center;
|
79
|
+
.ant-avatar {
|
80
|
+
width: 30px;
|
81
|
+
height: 30px;
|
82
|
+
line-height: 28px;
|
83
|
+
border-radius: 2px;
|
84
|
+
}
|
85
|
+
.work-by-name {
|
86
|
+
flex: 1;
|
87
|
+
margin-left: 8px;
|
88
|
+
}
|
89
|
+
}
|
90
|
+
|
91
|
+
.work-table-item-tags {
|
92
|
+
.ant-tag {
|
93
|
+
height: auto;
|
94
|
+
min-height: 24px;
|
95
|
+
line-height: 18px;
|
96
|
+
white-space: normal;
|
97
|
+
}
|
98
|
+
}
|
99
|
+
|
100
|
+
.work-table-item-createDate {
|
101
|
+
line-height: 32px;
|
102
|
+
}
|
13
103
|
}
|
14
104
|
}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
import React from "react";
|
2
|
+
import { IWork } from "../../../../data/work";
|
3
|
+
import "./index.less";
|
4
|
+
export type WorkListProps = {
|
5
|
+
/** types id of works shown on the list. */
|
6
|
+
typesId?: string;
|
7
|
+
/** 用于预选的 contact */
|
8
|
+
contact?: {
|
9
|
+
name: string;
|
10
|
+
id: string;
|
11
|
+
};
|
12
|
+
onChangeFilter?: (status: string) => void;
|
13
|
+
/** Call back when an item has been clicked on the list. */
|
14
|
+
onClickItem?: (item: IWork) => void;
|
15
|
+
};
|
16
|
+
declare const WorkTableListCardPage: (props: WorkListProps) => React.JSX.Element;
|
17
|
+
export default WorkTableListCardPage;
|
@@ -0,0 +1,85 @@
|
|
1
|
+
import React, { useState } from "react";
|
2
|
+
import { useWorkType } from "../../../../data/worktype";
|
3
|
+
import { observe } from "@voplus/morpho-ui";
|
4
|
+
import { Button } from "antd";
|
5
|
+
import { Scrollbars } from "react-custom-scrollbars-2";
|
6
|
+
import { faBriefcase } from "@fortawesome/pro-solid-svg-icons";
|
7
|
+
import { FontAwesomeIcon as FAIcon } from "@fortawesome/react-fontawesome";
|
8
|
+
import AsideContent from "@voplus/morpho-ui/es/components/layout/AsideContent";
|
9
|
+
import { ListDataContext, useCreateListDataState } from "@voplus/morpho-ui/es/data";
|
10
|
+
import PageHeadDashboard from "@voplus/morpho-ui/es/components/layout/headers/PageHeadDashboard";
|
11
|
+
import ListHeaderTool from "@voplus/morpho-ui/es/components/layout/ListView/headers/ListHeaderTool";
|
12
|
+
import { useWorkTypeListEffect } from "../../../../data/worktype";
|
13
|
+
import WorkTableListCard from "../WorkTableListCard";
|
14
|
+
import NewWorkForm from "../NewWorkForm";
|
15
|
+
import { useParams } from "react-router-dom";
|
16
|
+
import { State } from "./state";
|
17
|
+
import classnames from "classnames";
|
18
|
+
import "./index.less";
|
19
|
+
const WorkTableListCardPage = (props) => {
|
20
|
+
const { typesId, contact } = props;
|
21
|
+
const [asideContext] = useState(AsideContent.createContext());
|
22
|
+
const workType = useWorkType(typesId);
|
23
|
+
const [draftTotal, setDraftTotal] = useState();
|
24
|
+
const [newTotal, setNewTotal] = useState();
|
25
|
+
const [activeTotal, setActiveTotal] = useState();
|
26
|
+
const [rejectedTotal, setRejectedTotal] = useState();
|
27
|
+
const [closedTotal, setClosedTotal] = useState();
|
28
|
+
const [doneTotal, setDoneTotal] = useState();
|
29
|
+
const [timer, setTimer] = useState();
|
30
|
+
const status = ["All", "Draft", "New", "Active", "Rejected", "Closed", "Done"];
|
31
|
+
const params = useParams();
|
32
|
+
const [state] = useState(new State(typesId, params.status));
|
33
|
+
const list = useCreateListDataState({}, []);
|
34
|
+
// 检查能不能 addAble
|
35
|
+
useWorkTypeListEffect(null, (result) => {
|
36
|
+
const workType = result.find((d) => d.id === typesId);
|
37
|
+
state.addAble = workType ? true : false;
|
38
|
+
}, {
|
39
|
+
Includes: "workspace",
|
40
|
+
Filters: [{ c: "Roles", o: "contains", l: "And", v1: JSON.stringify(["Requester"]) }],
|
41
|
+
Page: { Page: 1, PageSize: 300 },
|
42
|
+
});
|
43
|
+
return observe(() => (React.createElement(ListDataContext.Provider, { value: list },
|
44
|
+
React.createElement(AsideContent, { context: asideContext },
|
45
|
+
React.createElement("div", { className: "work-table-list-card-page" },
|
46
|
+
React.createElement(PageHeadDashboard, { headerType: "page", avatarIcon: React.createElement(FAIcon, { icon: faBriefcase }), title: (workType === null || workType === void 0 ? void 0 : workType.name) || "My Works", description: "Your tasks: prioritize and complete your work" }),
|
47
|
+
React.createElement(ListHeaderTool, { addAble: state.addAble, onAdd: () => asideContext === null || asideContext === void 0 ? void 0 : asideContext.openAside(React.createElement(NewWorkForm, { typeId: typesId, contact: contact, showView: true }), {
|
48
|
+
span: 12,
|
49
|
+
}), sortable: false, searchHeader: true, searchOptions: {
|
50
|
+
placeholder: "search in work list",
|
51
|
+
onChange: onSearch,
|
52
|
+
}, preExtra: () => (React.createElement(React.Fragment, null,
|
53
|
+
React.createElement("div", { className: "work-status-btn" }, status.map((item) => (React.createElement(Button, { key: item, className: classnames({ active: state.active === item }), onClick: () => onChangeFilter(item) },
|
54
|
+
item,
|
55
|
+
" ",
|
56
|
+
item === "Draft" && draftTotal ? `(${draftTotal})` : null,
|
57
|
+
item === "New" && newTotal ? `(${newTotal})` : null,
|
58
|
+
item === "Active" && activeTotal ? `(${activeTotal})` : null,
|
59
|
+
item === "Rejected" && rejectedTotal ? `(${rejectedTotal})` : null,
|
60
|
+
item === "Closed" && closedTotal ? `(${closedTotal})` : null,
|
61
|
+
item === "Done" && doneTotal ? `(${doneTotal})` : null)))))) }),
|
62
|
+
React.createElement(Scrollbars, { autoHide: true },
|
63
|
+
React.createElement("div", { className: classnames("content", { "item-card": state.active !== "All" }) },
|
64
|
+
(state.active === "All" || state.active === "Draft") && (React.createElement(WorkTableListCard, { status: "Draft", ...state.cardProps, type: asideContext.asideContent ? "simple" : "details2", onWorkTotal: (total) => setDraftTotal(total) })),
|
65
|
+
(state.active === "All" || state.active === "New") && (React.createElement(WorkTableListCard, { status: "New", ...state.cardProps, type: asideContext.asideContent ? "simple" : "details2", onWorkTotal: (total) => setNewTotal(total) })),
|
66
|
+
(state.active === "All" || state.active === "Active") && (React.createElement(WorkTableListCard, { status: "Active", ...state.cardProps, type: asideContext.asideContent ? "simple" : "details2", onWorkTotal: (total) => setActiveTotal(total) })),
|
67
|
+
(state.active === "All" || state.active === "Rejected") && (React.createElement(WorkTableListCard, { status: "Rejected", ...state.cardProps, type: asideContext.asideContent ? "simple" : "details2", onWorkTotal: (total) => setRejectedTotal(total) })),
|
68
|
+
(state.active === "All" || state.active === "Closed") && (React.createElement(WorkTableListCard, { status: "Closed", ...state.cardProps, type: asideContext.asideContent ? "simple" : "details2", onWorkTotal: (total) => setClosedTotal(total) })),
|
69
|
+
(state.active === "All" || state.active === "Done") && (React.createElement(WorkTableListCard, { status: "Done", ...state.cardProps, type: asideContext.asideContent ? "simple" : "details2", onWorkTotal: (total) => setDoneTotal(total) })))))))));
|
70
|
+
function onChangeFilter(item) {
|
71
|
+
var _a;
|
72
|
+
state.active = item;
|
73
|
+
(_a = props.onChangeFilter) === null || _a === void 0 ? void 0 : _a.call(props, item.charAt(0).toLowerCase() + item.slice(1));
|
74
|
+
}
|
75
|
+
function onSearch(val) {
|
76
|
+
if (timer)
|
77
|
+
clearTimeout(timer);
|
78
|
+
setTimer(setTimeout(() => {
|
79
|
+
state.searchVal = val;
|
80
|
+
setTimer(undefined);
|
81
|
+
}, 1000));
|
82
|
+
}
|
83
|
+
};
|
84
|
+
export default WorkTableListCardPage;
|
85
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/work/components/WorkTableListCardPage/index.tsx"],"names":[],"mappings":"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"}
|