aldehyde 0.2.236 → 0.2.238
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/lib/controls/action/index.d.ts +2 -0
- package/lib/controls/action/index.d.ts.map +1 -1
- package/lib/controls/chemstruc/graph.d.ts +2 -0
- package/lib/controls/chemstruc/graph.d.ts.map +1 -1
- package/lib/controls/collapse-card/index.d.ts +2 -0
- package/lib/controls/collapse-card/index.d.ts.map +1 -1
- package/lib/controls/color-picker/index.d.ts +2 -0
- package/lib/controls/color-picker/index.d.ts.map +1 -1
- package/lib/controls/cquery/cquick-button.d.ts +2 -0
- package/lib/controls/cquery/cquick-button.d.ts.map +1 -1
- package/lib/controls/date-picker/index.d.ts.map +1 -1
- package/lib/controls/date-picker/index.js +9 -1
- package/lib/controls/date-picker/index.js.map +1 -1
- package/lib/controls/entity-select/entity-select.d.ts +2 -0
- package/lib/controls/entity-select/entity-select.d.ts.map +1 -1
- package/lib/controls/entity-select/lab-tree-select.d.ts +2 -0
- package/lib/controls/entity-select/lab-tree-select.d.ts.map +1 -1
- package/lib/controls/entity-select/popover-entity-select.d.ts +2 -0
- package/lib/controls/entity-select/popover-entity-select.d.ts.map +1 -1
- package/lib/controls/password-setter/index.d.ts +2 -0
- package/lib/controls/password-setter/index.d.ts.map +1 -1
- package/lib/controls/relation-existion/index.d.ts +2 -0
- package/lib/controls/relation-existion/index.d.ts.map +1 -1
- package/lib/controls/rfield/index.d.ts +2 -0
- package/lib/controls/rfield/index.d.ts.map +1 -1
- package/lib/controls/select/index.d.ts +2 -0
- package/lib/controls/select/index.d.ts.map +1 -1
- package/lib/controls/signature/index.d.ts +2 -0
- package/lib/controls/signature/index.d.ts.map +1 -1
- package/lib/controls/text/ellipsis-text.d.ts +2 -0
- package/lib/controls/text/ellipsis-text.d.ts.map +1 -1
- package/lib/controls/upload/index.d.ts +2 -0
- package/lib/controls/upload/index.d.ts.map +1 -1
- package/lib/controls/upload/mult-file-upload.d.ts +2 -0
- package/lib/controls/upload/mult-file-upload.d.ts.map +1 -1
- package/lib/custom-page/dtmpl-custom-edit-modal-page.d.ts +2 -0
- package/lib/custom-page/dtmpl-custom-edit-modal-page.d.ts.map +1 -1
- package/lib/detail/button/bottom-submit-button-bar.d.ts +2 -0
- package/lib/detail/button/bottom-submit-button-bar.d.ts.map +1 -1
- package/lib/detail/button/cquery-button-bar.d.ts +2 -0
- package/lib/detail/button/cquery-button-bar.d.ts.map +1 -1
- package/lib/detail/button/fix-right-submit-button-bar.d.ts +2 -0
- package/lib/detail/button/fix-right-submit-button-bar.d.ts.map +1 -1
- package/lib/detail/edit/fields-edit-card.d.ts +2 -0
- package/lib/detail/edit/fields-edit-card.d.ts.map +1 -1
- package/lib/detail/edit/modal-row-edit.d.ts +2 -0
- package/lib/detail/edit/modal-row-edit.d.ts.map +1 -1
- package/lib/detail/edit/row-edit-card.d.ts +2 -0
- package/lib/detail/edit/row-edit-card.d.ts.map +1 -1
- package/lib/detail/rightbar/index.d.ts +2 -0
- package/lib/detail/rightbar/index.d.ts.map +1 -1
- package/lib/detail/view/act-dtmpl-view.d.ts +2 -0
- package/lib/detail/view/act-dtmpl-view.d.ts.map +1 -1
- package/lib/detail/view/act-dtmpl-view.js +1 -1
- package/lib/detail/view/act-dtmpl-view.js.map +1 -1
- package/lib/detail/view/field-view-group.d.ts +2 -0
- package/lib/detail/view/field-view-group.d.ts.map +1 -1
- package/lib/detail/view/modal-dtmpl-view.d.ts +2 -0
- package/lib/detail/view/modal-dtmpl-view.d.ts.map +1 -1
- package/lib/detail/view/snapshot-timeline.d.ts +2 -0
- package/lib/detail/view/snapshot-timeline.d.ts.map +1 -1
- package/lib/detail/view/tab-act-dtmpl-view.d.ts +2 -0
- package/lib/detail/view/tab-act-dtmpl-view.d.ts.map +1 -1
- package/lib/detail/view/tab-act-dtmpl-view.js +3 -3
- package/lib/detail/view/tab-act-dtmpl-view.js.map +1 -1
- package/lib/export/export-frame.d.ts +2 -0
- package/lib/export/export-frame.d.ts.map +1 -1
- package/lib/export/select-code-export-frame.d.ts +2 -0
- package/lib/export/select-code-export-frame.d.ts.map +1 -1
- package/lib/form/dtmpl-form.d.ts +2 -0
- package/lib/form/dtmpl-form.d.ts.map +1 -1
- package/lib/form/field-group-form.d.ts +2 -0
- package/lib/form/field-group-form.d.ts.map +1 -1
- package/lib/form/form-Item-group.d.ts +2 -0
- package/lib/form/form-Item-group.d.ts.map +1 -1
- package/lib/form/form-Item-group.js +3 -2
- package/lib/form/form-Item-group.js.map +1 -1
- package/lib/hooks/use-match-route/index.d.ts +10 -0
- package/lib/hooks/use-match-route/index.d.ts.map +1 -0
- package/lib/hooks/use-match-route/index.js +41 -0
- package/lib/hooks/use-match-route/index.js.map +1 -0
- package/lib/hooks/use-tabs/index.d.ts +18 -0
- package/lib/hooks/use-tabs/index.d.ts.map +1 -0
- package/lib/hooks/use-tabs/index.js +112 -0
- package/lib/hooks/use-tabs/index.js.map +1 -0
- package/lib/import/excel-import.d.ts +2 -0
- package/lib/import/excel-import.d.ts.map +1 -1
- package/lib/layout/MainPage.js +1 -1
- package/lib/layout/MainPage.js.map +1 -1
- package/lib/layout/coverstyle.css +1 -1
- package/lib/layout/menu/block.d.ts +2 -0
- package/lib/layout/menu/block.d.ts.map +1 -1
- package/lib/layout/menu/l2menu-quick-bar.d.ts +2 -0
- package/lib/layout/menu/l2menu-quick-bar.d.ts.map +1 -1
- package/lib/layout/menu/menu-2layers.d.ts +2 -0
- package/lib/layout/menu/menu-2layers.d.ts.map +1 -1
- package/lib/layout/menu/reset-password.d.ts +2 -0
- package/lib/layout/menu/reset-password.d.ts.map +1 -1
- package/lib/layout/menu/user-bar.d.ts +2 -0
- package/lib/layout/menu/user-bar.d.ts.map +1 -1
- package/lib/layout/menu/userinfo-bar.d.ts +2 -0
- package/lib/layout/menu/userinfo-bar.d.ts.map +1 -1
- package/lib/layout/sidebar/index.js +4 -2
- package/lib/layout/sidebar/index.js.map +1 -1
- package/lib/layout2/components/userButton.d.ts.map +1 -1
- package/lib/layout2/components/userButton.js +14 -2
- package/lib/layout2/components/userButton.js.map +1 -1
- package/lib/layout2/header.d.ts.map +1 -1
- package/lib/layout2/header.js +4 -66
- package/lib/layout2/header.js.map +1 -1
- package/lib/layout2/main.d.ts +1 -1
- package/lib/layout2/main.d.ts.map +1 -1
- package/lib/layout2/main.js +3 -3
- package/lib/layout2/main.js.map +1 -1
- package/lib/layout2/page.d.ts.map +1 -1
- package/lib/layout2/page.js +20 -2
- package/lib/layout2/page.js.map +1 -1
- package/lib/layout2/sider.d.ts +1 -2
- package/lib/layout2/sider.d.ts.map +1 -1
- package/lib/layout2/sider.js +6 -125
- package/lib/layout2/sider.js.map +1 -1
- package/lib/layout2/tabs/tabs-context.d.ts +20 -0
- package/lib/layout2/tabs/tabs-context.d.ts.map +1 -0
- package/lib/layout2/tabs/tabs-context.js +9 -0
- package/lib/layout2/tabs/tabs-context.js.map +1 -0
- package/lib/layout2/tabs/tabs-layout.d.ts +4 -0
- package/lib/layout2/tabs/tabs-layout.d.ts.map +1 -0
- package/lib/layout2/tabs/tabs-layout.js +87 -0
- package/lib/layout2/tabs/tabs-layout.js.map +1 -0
- package/lib/locale/LocaleProvider.d.ts +2 -0
- package/lib/locale/LocaleProvider.d.ts.map +1 -1
- package/lib/locale/LocaleProvider.js +7 -1
- package/lib/locale/LocaleProvider.js.map +1 -1
- package/lib/locale/useLocale.d.ts +2 -0
- package/lib/locale/useLocale.d.ts.map +1 -1
- package/lib/locale/useLocale.js +8 -2
- package/lib/locale/useLocale.js.map +1 -1
- package/lib/login/login.d.ts +2 -0
- package/lib/login/login.d.ts.map +1 -1
- package/lib/login2/login-page.js +1 -1
- package/lib/login2/login-page.js.map +1 -1
- package/lib/login2/login.d.ts.map +1 -1
- package/lib/login2/login.js +5 -0
- package/lib/login2/login.js.map +1 -1
- package/lib/module/dtmpl-edit-card.d.ts +2 -0
- package/lib/module/dtmpl-edit-card.d.ts.map +1 -1
- package/lib/module/dtmpl-edit-page.d.ts +2 -0
- package/lib/module/dtmpl-edit-page.d.ts.map +1 -1
- package/lib/module/dtmpl-view-card.d.ts.map +1 -1
- package/lib/module/dtmpl-view-card.js +0 -10
- package/lib/module/dtmpl-view-card.js.map +1 -1
- package/lib/module/ltmpl-modal.d.ts +2 -0
- package/lib/module/ltmpl-modal.d.ts.map +1 -1
- package/lib/module/ltmpl-table.d.ts +4 -0
- package/lib/module/ltmpl-table.d.ts.map +1 -1
- package/lib/module/ltmpl-table.js +3 -2
- package/lib/module/ltmpl-table.js.map +1 -1
- package/lib/routable/ltmpl-route.d.ts +1 -0
- package/lib/routable/ltmpl-route.d.ts.map +1 -1
- package/lib/routable/ltmpl-route.js +20 -9
- package/lib/routable/ltmpl-route.js.map +1 -1
- package/lib/routable/ttmpl-route.d.ts +1 -0
- package/lib/routable/ttmpl-route.d.ts.map +1 -1
- package/lib/routable/ttmpl-route.js +2 -2
- package/lib/routable/ttmpl-route.js.map +1 -1
- package/lib/routable/withroute.d.ts.map +1 -1
- package/lib/routable/withroute.js +8 -2
- package/lib/routable/withroute.js.map +1 -1
- package/lib/table/act-table.d.ts +7 -1
- package/lib/table/act-table.d.ts.map +1 -1
- package/lib/table/act-table.js +76 -32
- package/lib/table/act-table.js.map +1 -1
- package/lib/table/column/column-builder.d.ts +1 -0
- package/lib/table/column/column-builder.d.ts.map +1 -1
- package/lib/table/column/column-builder.js +2 -2
- package/lib/table/column/column-builder.js.map +1 -1
- package/lib/table/modal-select-table.d.ts +2 -0
- package/lib/table/modal-select-table.d.ts.map +1 -1
- package/lib/table/modal-select-table.js +1 -1
- package/lib/table/modal-select-table.js.map +1 -1
- package/lib/table/pagination.d.ts +2 -0
- package/lib/table/pagination.d.ts.map +1 -1
- package/lib/table/query-table.d.ts +4 -0
- package/lib/table/query-table.d.ts.map +1 -1
- package/lib/table/query-table.js +35 -4
- package/lib/table/query-table.js.map +1 -1
- package/lib/table/relation-table.d.ts +2 -0
- package/lib/table/relation-table.d.ts.map +1 -1
- package/lib/table/relation-table.js +1 -1
- package/lib/table/relation-table.js.map +1 -1
- package/lib/table/report-table.d.ts.map +1 -1
- package/lib/table/report-table.js +4 -2
- package/lib/table/report-table.js.map +1 -1
- package/lib/table/select-table.d.ts +2 -0
- package/lib/table/select-table.d.ts.map +1 -1
- package/lib/table/select-table.js +2 -1
- package/lib/table/select-table.js.map +1 -1
- package/lib/table/selected-rows-card.d.ts +3 -0
- package/lib/table/selected-rows-card.d.ts.map +1 -1
- package/lib/table/selected-rows-card.js +2 -1
- package/lib/table/selected-rows-card.js.map +1 -1
- package/lib/table/stat/restat.d.ts +2 -0
- package/lib/table/stat/restat.d.ts.map +1 -1
- package/lib/tmpl/hcservice-v3.d.ts +2 -0
- package/lib/tmpl/hcservice-v3.d.ts.map +1 -1
- package/lib/tmpl/hcservice-v3.js +22 -0
- package/lib/tmpl/hcservice-v3.js.map +1 -1
- package/lib/tmpl/interface.d.ts +10 -1
- package/lib/tmpl/interface.d.ts.map +1 -1
- package/lib/tmpl/interface.js.map +1 -1
- package/lib/tree/act-tree.d.ts +6 -1
- package/lib/tree/act-tree.d.ts.map +1 -1
- package/lib/tree/act-tree.js +5 -5
- package/lib/tree/act-tree.js.map +1 -1
- package/lib/tree/tmpl-tree.d.ts +2 -0
- package/lib/tree/tmpl-tree.d.ts.map +1 -1
- package/lib/units/index.d.ts +5 -1
- package/lib/units/index.d.ts.map +1 -1
- package/lib/units/index.js +25 -0
- package/lib/units/index.js.map +1 -1
- package/lib/welcome/quick-entrance.d.ts +2 -0
- package/lib/welcome/quick-entrance.d.ts.map +1 -1
- package/lib/welcome/workbench.d.ts +2 -0
- package/lib/welcome/workbench.d.ts.map +1 -1
- package/package.json +2 -1
- package/src/aldehyde/controls/date-picker/index.tsx +15 -1
- package/src/aldehyde/detail/view/act-dtmpl-view.tsx +1 -1
- package/src/aldehyde/detail/view/tab-act-dtmpl-view.tsx +2 -5
- package/src/aldehyde/form/form-Item-group.tsx +4 -3
- package/src/aldehyde/hooks/use-match-route/index.tsx +63 -0
- package/src/aldehyde/hooks/use-tabs/index.tsx +130 -0
- package/src/aldehyde/layout/MainPage.tsx +1 -1
- package/src/aldehyde/layout/coverstyle.css +1 -1
- package/src/aldehyde/layout/sidebar/index.tsx +4 -4
- package/src/aldehyde/layout2/components/userButton.tsx +20 -3
- package/src/aldehyde/layout2/header.tsx +5 -69
- package/src/aldehyde/layout2/main.tsx +4 -3
- package/src/aldehyde/layout2/page.tsx +25 -3
- package/src/aldehyde/layout2/sider.tsx +5 -133
- package/src/aldehyde/layout2/tabs/tabs-context.tsx +30 -0
- package/src/aldehyde/layout2/tabs/tabs-layout.tsx +152 -0
- package/src/aldehyde/locale/LocaleProvider.tsx +13 -2
- package/src/aldehyde/locale/useLocale.ts +10 -2
- package/src/aldehyde/login2/login-page.tsx +1 -1
- package/src/aldehyde/login2/login.tsx +6 -1
- package/src/aldehyde/module/dtmpl-view-card.tsx +0 -11
- package/src/aldehyde/module/ltmpl-table.tsx +13 -27
- package/src/aldehyde/routable/ltmpl-route.tsx +37 -46
- package/src/aldehyde/routable/ttmpl-route.tsx +3 -2
- package/src/aldehyde/routable/withroute.tsx +12 -2
- package/src/aldehyde/table/act-table.tsx +96 -45
- package/src/aldehyde/table/column/column-builder.tsx +7 -6
- package/src/aldehyde/table/modal-select-table.tsx +3 -2
- package/src/aldehyde/table/query-table.tsx +44 -4
- package/src/aldehyde/table/relation-table.tsx +1 -2
- package/src/aldehyde/table/report-table.tsx +9 -7
- package/src/aldehyde/table/select-table.tsx +2 -1
- package/src/aldehyde/table/selected-rows-card.tsx +3 -0
- package/src/aldehyde/tmpl/hcservice-v3.tsx +20 -0
- package/src/aldehyde/tmpl/interface.tsx +17 -4
- package/src/aldehyde/tree/act-tree.tsx +7 -5
- package/src/aldehyde/units/index.tsx +40 -1
|
@@ -18,10 +18,12 @@ import DtmplViewDrawer from "../module/dtmpl-view-drawer";
|
|
|
18
18
|
import DtmplCustomEditModalPage from "../custom-page/dtmpl-custom-edit-modal-page";
|
|
19
19
|
import DtmplEditPage from "../module/dtmpl-edit-page";
|
|
20
20
|
import DtmplViewModal from "../module/dtmpl-view-modal";
|
|
21
|
+
import {arrowsOptions} from "ketcher-react/dist/script/ui/views/toolbars/LeftToolbar/leftToolbarOptions";
|
|
21
22
|
|
|
22
23
|
export interface LtmplRouteProps extends RouterCompProps {
|
|
23
24
|
layoutRootPath?: string;
|
|
24
25
|
tableType?:"common"|"report";
|
|
26
|
+
rowOperatable?: boolean;
|
|
25
27
|
}
|
|
26
28
|
|
|
27
29
|
export interface LtmplRouteState {
|
|
@@ -44,6 +46,7 @@ class LtmplRoute extends React.PureComponent<LtmplRouteProps, LtmplRouteState> {
|
|
|
44
46
|
static defaultProps = {
|
|
45
47
|
basePath: "",
|
|
46
48
|
tableType:"common",
|
|
49
|
+
rowOperatable:true,
|
|
47
50
|
};
|
|
48
51
|
state = {
|
|
49
52
|
ltmplConfigRes: undefined,
|
|
@@ -55,7 +58,8 @@ class LtmplRoute extends React.PureComponent<LtmplRouteProps, LtmplRouteState> {
|
|
|
55
58
|
showViewDrawer: false,
|
|
56
59
|
showViewModal: false,
|
|
57
60
|
showEdit: false,
|
|
58
|
-
showWindowType: "modal"
|
|
61
|
+
showWindowType: "modal",
|
|
62
|
+
routeMode:'multiple',
|
|
59
63
|
};
|
|
60
64
|
|
|
61
65
|
async componentDidMount() {
|
|
@@ -126,7 +130,7 @@ class LtmplRoute extends React.PureComponent<LtmplRouteProps, LtmplRouteState> {
|
|
|
126
130
|
const {sourceId} = this.props.params;
|
|
127
131
|
const {ltmplConfigRes} = this.state;
|
|
128
132
|
let ltmplConfig: LtmplConfig = ltmplConfigRes.ltmplConfig;
|
|
129
|
-
let showType: string = !ltmplConfig.buttonViewConfig ? "
|
|
133
|
+
let showType: string = !ltmplConfig.buttonViewConfig ? "drawer" : ltmplConfig.buttonViewConfig.showType;
|
|
130
134
|
|
|
131
135
|
let dtmplSourceId = showViewParam.dtmplSourceId
|
|
132
136
|
? showViewParam.dtmplSourceId
|
|
@@ -165,7 +169,7 @@ class LtmplRoute extends React.PureComponent<LtmplRouteProps, LtmplRouteState> {
|
|
|
165
169
|
let ltmplConfig: LtmplConfig = ltmplConfigRes.ltmplConfig;
|
|
166
170
|
let showWindowType: PageType;
|
|
167
171
|
|
|
168
|
-
showWindowType = !ltmplConfig.buttonEditConfig ? "
|
|
172
|
+
showWindowType = !ltmplConfig.buttonEditConfig ? "modal" : ltmplConfig.buttonEditConfig.showType;
|
|
169
173
|
|
|
170
174
|
let dtmplSourceId = param.dtmplSourceId ? param.dtmplSourceId : sourceId;
|
|
171
175
|
let path = `${basePath}${
|
|
@@ -212,7 +216,9 @@ class LtmplRoute extends React.PureComponent<LtmplRouteProps, LtmplRouteState> {
|
|
|
212
216
|
const {sourceId} = this.props.params;
|
|
213
217
|
const {ltmplConfigRes} = this.state;
|
|
214
218
|
let ltmplConfig: LtmplConfig = ltmplConfigRes.ltmplConfig;
|
|
215
|
-
|
|
219
|
+
|
|
220
|
+
let showWindowType: string = !ltmplConfig.buttonAddConfig ?"modal" : ltmplConfig.buttonAddConfig.showType;
|
|
221
|
+
|
|
216
222
|
let path = `${basePath}${
|
|
217
223
|
this.computedLayoutPath
|
|
218
224
|
}/${sourceId}/detail-edit?menuId=${this.getMenuId()}&addTmplId=${
|
|
@@ -317,8 +323,7 @@ class LtmplRoute extends React.PureComponent<LtmplRouteProps, LtmplRouteState> {
|
|
|
317
323
|
ltmplConfigRes, showDraw, showWindowType, ractionId, selectedCode,
|
|
318
324
|
showViewDrawer, showViewModal, showEdit
|
|
319
325
|
} = this.state;
|
|
320
|
-
const {location, params,tableType} = this.props;
|
|
321
|
-
|
|
326
|
+
const {location, params,tableType,rowOperatable} = this.props;
|
|
322
327
|
const {sourceId} = params;
|
|
323
328
|
const {translate} = this.context;
|
|
324
329
|
//let menuId = undefined;
|
|
@@ -338,41 +343,37 @@ class LtmplRoute extends React.PureComponent<LtmplRouteProps, LtmplRouteState> {
|
|
|
338
343
|
|
|
339
344
|
let ltmplConfig = ltmplConfigRes ? ltmplConfigRes.ltmplConfig : null;
|
|
340
345
|
|
|
346
|
+
let windowWidth = ltmplConfig?.buttonViewConfig?.windowWidth
|
|
347
|
+
windowWidth= windowWidth && windowWidth>0 ? windowWidth : 1280;
|
|
348
|
+
|
|
349
|
+
let windowHeight = ltmplConfig?.buttonViewConfig?.windowHeight;
|
|
350
|
+
windowHeight= windowHeight && windowHeight>0 ? windowHeight : '80vh';
|
|
351
|
+
|
|
352
|
+
let windowEditWidth = ltmplConfig?.buttonEditConfig?.windowWidth;
|
|
353
|
+
windowEditWidth= windowEditWidth && windowEditWidth>0 ? windowEditWidth : 1280;
|
|
354
|
+
|
|
355
|
+
let windowEditHeight = ltmplConfig?.buttonEditConfig?.windowHeight;
|
|
356
|
+
windowEditHeight= windowEditHeight && windowEditHeight>0 ? windowEditHeight : '80vh';
|
|
357
|
+
|
|
341
358
|
if (!ltmplConfig) {
|
|
342
359
|
return <></>;
|
|
343
360
|
} else {
|
|
344
361
|
return (
|
|
345
362
|
<>
|
|
346
363
|
<ActTable
|
|
347
|
-
tableType={tableType}
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
menuId={this.getMenuId()}
|
|
353
|
-
mainCode={mainCode}
|
|
354
|
-
showView={this.showView}
|
|
355
|
-
doSearch={this.onChangeSearch}
|
|
356
|
-
doEdit={this.doEdit}
|
|
357
|
-
doCreate={this.doCreate}
|
|
358
|
-
sourceId={sourceId}
|
|
359
|
-
criteriaData={criteriaData}
|
|
360
|
-
ltmplConfig={ltmplConfig}
|
|
361
|
-
doRAction={this.doRAction}
|
|
364
|
+
tableType={tableType} serverKey={null} pageSize={pageSize} pageNo={pageNo} onChangePage={this.onChangePage}
|
|
365
|
+
menuId={this.getMenuId()} operatable={rowOperatable}
|
|
366
|
+
mainCode={mainCode} showView={this.showView} doSearch={this.onChangeSearch} doEdit={this.doEdit}
|
|
367
|
+
doCreate={this.doCreate} sourceId={sourceId}
|
|
368
|
+
criteriaData={criteriaData} ltmplConfig={ltmplConfig} doRAction={this.doRAction}
|
|
362
369
|
/>
|
|
363
370
|
{showDraw ? (
|
|
364
371
|
<Drawer
|
|
365
|
-
placement={"left"}
|
|
366
|
-
|
|
367
|
-
closable={true}
|
|
368
|
-
mask={false}
|
|
369
|
-
onClose={this.doClose}
|
|
370
|
-
open={showDraw}
|
|
371
|
-
width={"calc(100% - 280px)"}
|
|
372
|
+
placement={"left"} title={translate("${关联查询}")} closable={true} mask={false} onClose={this.doClose}
|
|
373
|
+
open={showDraw} width={"calc(100% - 280px)"}
|
|
372
374
|
style={{
|
|
373
375
|
maxWidth: 1960,
|
|
374
|
-
}}
|
|
375
|
-
extra={
|
|
376
|
+
}} extra={
|
|
376
377
|
<Space>
|
|
377
378
|
<Button onClick={this.doClose}>
|
|
378
379
|
{translate("${关闭}")}
|
|
@@ -381,19 +382,14 @@ class LtmplRoute extends React.PureComponent<LtmplRouteProps, LtmplRouteState> {
|
|
|
381
382
|
}
|
|
382
383
|
>
|
|
383
384
|
{
|
|
384
|
-
<LtmplTable
|
|
385
|
-
serverKey={null}
|
|
386
|
-
sourceId={ractionId}
|
|
387
|
-
mainCode={selectedCode}
|
|
388
|
-
></LtmplTable>
|
|
385
|
+
<LtmplTable serverKey={null} sourceId={ractionId} mainCode={selectedCode}></LtmplTable>
|
|
389
386
|
}
|
|
390
387
|
</Drawer>
|
|
391
388
|
) : null}
|
|
392
389
|
{showViewDrawer && selectedCode ? (
|
|
393
390
|
<DtmplViewDrawer
|
|
394
|
-
serverKey={null}
|
|
395
|
-
|
|
396
|
-
width={ltmplConfig.buttonViewConfig.windowWidth}
|
|
391
|
+
serverKey={null} placement={ltmplConfig.buttonViewConfig.windowPosition}
|
|
392
|
+
width={ windowWidth}
|
|
397
393
|
onClose={this.doClose}
|
|
398
394
|
open={showViewDrawer}
|
|
399
395
|
sourceId={sourceId}
|
|
@@ -402,12 +398,7 @@ class LtmplRoute extends React.PureComponent<LtmplRouteProps, LtmplRouteState> {
|
|
|
402
398
|
) : null}
|
|
403
399
|
{showViewModal && selectedCode ? (
|
|
404
400
|
<DtmplViewModal
|
|
405
|
-
serverKey={null}
|
|
406
|
-
width={ltmplConfig.buttonViewConfig.windowWidth}
|
|
407
|
-
height={ltmplConfig.buttonViewConfig.windowHeight}
|
|
408
|
-
onClose={this.doClose}
|
|
409
|
-
open={showViewModal}
|
|
410
|
-
sourceId={sourceId}
|
|
401
|
+
serverKey={null} width={windowWidth} height={windowHeight} onClose={this.doClose} open={showViewModal} sourceId={sourceId}
|
|
411
402
|
code={selectedCode}
|
|
412
403
|
></DtmplViewModal>
|
|
413
404
|
) : null}
|
|
@@ -429,8 +420,8 @@ class LtmplRoute extends React.PureComponent<LtmplRouteProps, LtmplRouteState> {
|
|
|
429
420
|
serverKey={null}
|
|
430
421
|
pageType={showWindowType=="modal"?"modal":"drawer"}
|
|
431
422
|
open={showEdit}
|
|
432
|
-
width={
|
|
433
|
-
height={
|
|
423
|
+
width={windowEditWidth }
|
|
424
|
+
height={windowEditHeight}
|
|
434
425
|
onCancel={this.doClose}
|
|
435
426
|
mainCode={mainCode}
|
|
436
427
|
sourceId={sourceId}
|
|
@@ -12,6 +12,7 @@ import ActTree from "../tree/act-tree";
|
|
|
12
12
|
import { Card } from "antd";
|
|
13
13
|
export interface TtmplRouteProps extends RouterCompProps {
|
|
14
14
|
layoutRootPath?: string;
|
|
15
|
+
treeTop?:number,
|
|
15
16
|
}
|
|
16
17
|
|
|
17
18
|
export interface TtmplRouteState {
|
|
@@ -78,14 +79,14 @@ class TtmplRoute extends React.PureComponent<TtmplRouteProps, TtmplRouteState> {
|
|
|
78
79
|
}
|
|
79
80
|
|
|
80
81
|
render() {
|
|
81
|
-
const {} = this.props;
|
|
82
|
+
const {treeTop} = this.props;
|
|
82
83
|
const { ttmplConfig } = this.state;
|
|
83
84
|
if (!ttmplConfig) {
|
|
84
85
|
return <Card loading={true}></Card>;
|
|
85
86
|
} else {
|
|
86
87
|
return (
|
|
87
88
|
<>
|
|
88
|
-
<ActTree ttmplConfig={ttmplConfig}></ActTree>
|
|
89
|
+
<ActTree top={treeTop} ttmplConfig={ttmplConfig}></ActTree>
|
|
89
90
|
</>
|
|
90
91
|
);
|
|
91
92
|
}
|
|
@@ -9,14 +9,24 @@ import {
|
|
|
9
9
|
const withRouter = (Comp) => (props) => {
|
|
10
10
|
const location = useLocation();
|
|
11
11
|
const navigate = useNavigate();
|
|
12
|
-
|
|
12
|
+
|
|
13
13
|
const [searchParams, setSearchParams] = useSearchParams();
|
|
14
|
+
|
|
15
|
+
const {pathname} = location;
|
|
16
|
+
const {sourceId} = useParams();
|
|
17
|
+
//let sourceId= pathname.split("/")[2];
|
|
18
|
+
|
|
19
|
+
// debugger
|
|
20
|
+
// if(location.pathname.indexOf(sourceId)<=0){
|
|
21
|
+
// return <></>
|
|
22
|
+
// }
|
|
23
|
+
|
|
14
24
|
return (
|
|
15
25
|
<Comp
|
|
16
26
|
{...props}
|
|
17
27
|
location={location}
|
|
18
28
|
navigate={navigate}
|
|
19
|
-
params={
|
|
29
|
+
params={{sourceId}}
|
|
20
30
|
searchParams={searchParams}
|
|
21
31
|
/>
|
|
22
32
|
);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React, { ReactNode
|
|
1
|
+
import React, {ReactDOM, ReactNode} from "react";
|
|
2
2
|
import {
|
|
3
3
|
Button, Card, Checkbox, Col, Divider, Popover, Row, Space, Drawer, Modal, Tooltip,
|
|
4
4
|
message, Statistic, Layout,Table
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
import "./index.css";
|
|
12
12
|
import {
|
|
13
13
|
ActTableMode, ActTableViewModel, AggregateVO, ClassAddConfig, ColumnConfig,
|
|
14
|
-
CustomButton, DoEditParam, DtmplData, JumpConfig, LtmplConfig, QueryKey,
|
|
14
|
+
CustomButton, CustomButtonConfig, DoEditParam, DtmplData, JumpConfig, LtmplConfig, QueryKey,
|
|
15
15
|
SelectedRow, ShowViewParam, TmplBaseProps,
|
|
16
16
|
} from "../tmpl/interface";
|
|
17
17
|
|
|
@@ -61,6 +61,7 @@ interface ActTableProps extends TmplBaseProps {
|
|
|
61
61
|
initCollapse?: boolean;
|
|
62
62
|
readOnly?: boolean;
|
|
63
63
|
tableType?:"common"|"report";
|
|
64
|
+
operatable?:boolean;
|
|
64
65
|
}
|
|
65
66
|
|
|
66
67
|
interface ActTableStat {
|
|
@@ -84,6 +85,7 @@ interface ActTableStat {
|
|
|
84
85
|
showRatmplSelector?: boolean;
|
|
85
86
|
aggregateVO?: AggregateVO;
|
|
86
87
|
restatParams?: object;
|
|
88
|
+
|
|
87
89
|
}
|
|
88
90
|
let serial_number = new Date().getTime();
|
|
89
91
|
class ActTable extends React.PureComponent<ActTableProps, ActTableStat> {
|
|
@@ -121,6 +123,7 @@ class ActTable extends React.PureComponent<ActTableProps, ActTableStat> {
|
|
|
121
123
|
collapsible: false,
|
|
122
124
|
initCollapse: false,
|
|
123
125
|
readOnly: false,
|
|
126
|
+
operatable:true,
|
|
124
127
|
};
|
|
125
128
|
|
|
126
129
|
loadData = async (
|
|
@@ -210,18 +213,34 @@ class ActTable extends React.PureComponent<ActTableProps, ActTableStat> {
|
|
|
210
213
|
});
|
|
211
214
|
};
|
|
212
215
|
|
|
213
|
-
doCustomButton = (customButton: CustomButton, records: DtmplData[]) => {
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
}
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
})
|
|
224
|
-
|
|
216
|
+
doCustomButton =async (customButton: CustomButton, records: DtmplData[]) => {
|
|
217
|
+
if(!this.buttonClickable()){
|
|
218
|
+
return;
|
|
219
|
+
}
|
|
220
|
+
const {serverKey, sourceId} = this.props;
|
|
221
|
+
let doType=customButton.doType;
|
|
222
|
+
let config:CustomButtonConfig = ProgramConfig.getCustomButtonConfig(customButton.id);
|
|
223
|
+
if("request_refresh" == doType){
|
|
224
|
+
if(config && config.doAction){
|
|
225
|
+
await config.doAction(customButton,records);
|
|
226
|
+
}else if(config && config.getRequestUrl){
|
|
227
|
+
let url=await config.getRequestUrl(customButton,records);
|
|
228
|
+
await HcserviceV3.doPostRequest(serverKey,url);
|
|
229
|
+
}else if(customButton.path){
|
|
230
|
+
await HcserviceV3.doPostRequest(serverKey,customButton.path);
|
|
231
|
+
}else{
|
|
232
|
+
message.error("Button Config Error");
|
|
233
|
+
return;
|
|
234
|
+
}
|
|
235
|
+
this.doSearchDirect(null);
|
|
236
|
+
}else if("show_window"==doType){
|
|
237
|
+
this.setState({
|
|
238
|
+
showCustomCard: true,
|
|
239
|
+
customButton,
|
|
240
|
+
customButtonData: records,
|
|
241
|
+
});
|
|
242
|
+
}else {
|
|
243
|
+
message.error("Unsuport Button dotype " + doType);
|
|
225
244
|
}
|
|
226
245
|
};
|
|
227
246
|
|
|
@@ -257,8 +276,26 @@ class ActTable extends React.PureComponent<ActTableProps, ActTableStat> {
|
|
|
257
276
|
if (windowPosition && windowPosition != customButton.windowPosition) {
|
|
258
277
|
return "";
|
|
259
278
|
}
|
|
279
|
+
|
|
260
280
|
let customProps = { customButton: customButton, data: customButtonData };
|
|
261
|
-
|
|
281
|
+
|
|
282
|
+
let config:CustomButtonConfig= ProgramConfig.getCustomButtonConfig(customButton.id);
|
|
283
|
+
let page;
|
|
284
|
+
if(config && config.getCurrentPage){
|
|
285
|
+
page=config.getCurrentPage(customButton,customButtonData);
|
|
286
|
+
}
|
|
287
|
+
if(!page){
|
|
288
|
+
page = ProgramConfig.getCustomPage(customButton.id);
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
if(!page){
|
|
292
|
+
message.error("Not found CustomButton Page");
|
|
293
|
+
this.setState({
|
|
294
|
+
customButton:undefined
|
|
295
|
+
})
|
|
296
|
+
return;
|
|
297
|
+
}
|
|
298
|
+
|
|
262
299
|
let customElement = React.createElement(page, customProps);
|
|
263
300
|
if (
|
|
264
301
|
customButton.windowPosition == "under-table" ||
|
|
@@ -333,6 +370,7 @@ class ActTable extends React.PureComponent<ActTableProps, ActTableStat> {
|
|
|
333
370
|
...ltmplConfig.columns,
|
|
334
371
|
];
|
|
335
372
|
}
|
|
373
|
+
|
|
336
374
|
this.loadData(defaultDisabledColIds, [], sortedColConfigs);
|
|
337
375
|
}
|
|
338
376
|
|
|
@@ -346,19 +384,19 @@ class ActTable extends React.PureComponent<ActTableProps, ActTableStat> {
|
|
|
346
384
|
} = prevProps;
|
|
347
385
|
|
|
348
386
|
let { hiddenColIds, sortedColConfigs } = this.state;
|
|
349
|
-
|
|
387
|
+
let currentQueryParams= ProgramConfig.transQueryParamsToStr(criteriaData, false, [
|
|
388
|
+
"pageSize",
|
|
389
|
+
"pageNo",
|
|
390
|
+
]);
|
|
391
|
+
let preCurrentQueryParams=ProgramConfig.transQueryParamsToStr(preCriteriaData, false, [
|
|
392
|
+
"pageSize",
|
|
393
|
+
"pageNo",
|
|
394
|
+
]);
|
|
350
395
|
if (
|
|
351
396
|
(sourceId && preSourceId != sourceId) ||
|
|
352
397
|
(ltmplConfig &&
|
|
353
398
|
(!preLtmplConfig || ltmplConfig.id != preLtmplConfig.id)) ||
|
|
354
|
-
|
|
355
|
-
"pageSize",
|
|
356
|
-
"pageNo",
|
|
357
|
-
]) !=
|
|
358
|
-
ProgramConfig.transQueryParamsToStr(preCriteriaData, false, [
|
|
359
|
-
"pageSize",
|
|
360
|
-
"pageNo",
|
|
361
|
-
])
|
|
399
|
+
(currentQueryParams != preCurrentQueryParams && (!criteriaData['menuId'] || preCriteriaData.menuId==criteriaData['menuId']))
|
|
362
400
|
) {
|
|
363
401
|
//5秒后允许再次请求数据
|
|
364
402
|
//refresh=false;
|
|
@@ -407,7 +445,6 @@ class ActTable extends React.PureComponent<ActTableProps, ActTableStat> {
|
|
|
407
445
|
};
|
|
408
446
|
|
|
409
447
|
onHide = (code: string) => {
|
|
410
|
-
|
|
411
448
|
const { hiddenRowCodes } = this.state;
|
|
412
449
|
let hiddenCodes = [...hiddenRowCodes, code];
|
|
413
450
|
this.setState({
|
|
@@ -954,6 +991,25 @@ class ActTable extends React.PureComponent<ActTableProps, ActTableStat> {
|
|
|
954
991
|
}
|
|
955
992
|
}
|
|
956
993
|
|
|
994
|
+
doSearchDirect = (data: object) => {
|
|
995
|
+
|
|
996
|
+
let { doSearch } = this.props;
|
|
997
|
+
if (doSearch ) {
|
|
998
|
+
doSearch({ ...data, serial_number });
|
|
999
|
+
}
|
|
1000
|
+
}
|
|
1001
|
+
|
|
1002
|
+
|
|
1003
|
+
buttonClickable = () => {
|
|
1004
|
+
let new_serial_number = new Date().getTime();
|
|
1005
|
+
if (new_serial_number - serial_number > 1500) {
|
|
1006
|
+
serial_number = new_serial_number;
|
|
1007
|
+
return true;
|
|
1008
|
+
}else{
|
|
1009
|
+
return false;
|
|
1010
|
+
}
|
|
1011
|
+
}
|
|
1012
|
+
|
|
957
1013
|
renderCriteriaForm = () => {
|
|
958
1014
|
let { loading, selectedRows, selectedDatas } = this.state;
|
|
959
1015
|
let { ltmplConfig, criteriaData, serverKey } = this.props;
|
|
@@ -1004,14 +1060,13 @@ class ActTable extends React.PureComponent<ActTableProps, ActTableStat> {
|
|
|
1004
1060
|
aggregateVO,
|
|
1005
1061
|
} = this.state;
|
|
1006
1062
|
let {
|
|
1007
|
-
sourceId, ltmplConfig, funcMode,
|
|
1063
|
+
sourceId, ltmplConfig, funcMode,operatable,
|
|
1008
1064
|
title, collapsible, pageSize,
|
|
1009
1065
|
pageNo, onChangePage, serverKey, criteriaData,
|
|
1010
1066
|
showView, doEdit, doRAction, customEditable, readOnly,tableType
|
|
1011
1067
|
} = this.props;
|
|
1012
1068
|
const { translate } = this.context;
|
|
1013
1069
|
|
|
1014
|
-
|
|
1015
1070
|
if (!ltmplConfig || !sourceId) {
|
|
1016
1071
|
return (
|
|
1017
1072
|
<>
|
|
@@ -1021,18 +1076,12 @@ class ActTable extends React.PureComponent<ActTableProps, ActTableStat> {
|
|
|
1021
1076
|
);
|
|
1022
1077
|
}
|
|
1023
1078
|
|
|
1024
|
-
|
|
1025
|
-
|
|
1026
1079
|
let tableColumns = ColumnBuilder.buildTableColumns(
|
|
1027
|
-
{ltmplConfig,
|
|
1028
|
-
hiddenColIds,
|
|
1029
|
-
hiddenRowCodes,
|
|
1030
|
-
sortedColConfigs,showView,
|
|
1080
|
+
{ltmplConfig,operatable,
|
|
1081
|
+
hiddenColIds, hiddenRowCodes, sortedColConfigs,showView,
|
|
1031
1082
|
doEdit,
|
|
1032
|
-
doRAction,
|
|
1033
|
-
|
|
1034
|
-
serverKey,
|
|
1035
|
-
readOnly,
|
|
1083
|
+
doRAction, customEditable,
|
|
1084
|
+
serverKey, readOnly,
|
|
1036
1085
|
sourceId, translate,unHiden:this.unHiden,
|
|
1037
1086
|
onHide:this.onHide, doCustomButton:this.doCustomButton, doRowJump:this.doRowJump,
|
|
1038
1087
|
blockMenuTreeDrawerOpen:this.blockMenuTreeDrawerOpen,
|
|
@@ -1107,13 +1156,13 @@ class ActTable extends React.PureComponent<ActTableProps, ActTableStat> {
|
|
|
1107
1156
|
: typeof title == "string"
|
|
1108
1157
|
? translate("${" + title + "}")
|
|
1109
1158
|
: title}</p>
|
|
1110
|
-
|
|
1111
|
-
{aggregateVO && aggregateVO.aggregates
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
}
|
|
1116
|
-
|
|
1159
|
+
{/*<Space size={"large"} style={{marginLeft:50}}>*/}
|
|
1160
|
+
{/*{aggregateVO && aggregateVO.aggregates?*/}
|
|
1161
|
+
{/* aggregateVO.aggregates.map(av=>{*/}
|
|
1162
|
+
{/* return <Statistic title={av.fieldTitle} value={av.value} />*/}
|
|
1163
|
+
{/* }):null*/}
|
|
1164
|
+
{/*}*/}
|
|
1165
|
+
{/*</Space>*/}
|
|
1117
1166
|
<p className="fr" style={{marginBottom:"4px"}}>{this.renderHeaderButtons()}</p>
|
|
1118
1167
|
</h3>
|
|
1119
1168
|
</span>
|
|
@@ -1133,7 +1182,9 @@ class ActTable extends React.PureComponent<ActTableProps, ActTableStat> {
|
|
|
1133
1182
|
</Sider>
|
|
1134
1183
|
<Layout style={{ backgroundColor: "#fff" }}>
|
|
1135
1184
|
<Content style={{ overflow: "initial" }}>
|
|
1185
|
+
|
|
1136
1186
|
{displayCriteriaCard ? this.renderCriteriaForm() : null}
|
|
1187
|
+
|
|
1137
1188
|
{ loading ? (
|
|
1138
1189
|
<Table loading={loading}></Table>
|
|
1139
1190
|
) : (tableType =="report"?<ReportTable
|
|
@@ -1214,7 +1265,7 @@ class ActTable extends React.PureComponent<ActTableProps, ActTableStat> {
|
|
|
1214
1265
|
|
|
1215
1266
|
render() {
|
|
1216
1267
|
let {
|
|
1217
|
-
queryKey, loading, blockMenuTreeDrawerOpen, recordCode, showRatmplSelector
|
|
1268
|
+
queryKey, loading, blockMenuTreeDrawerOpen, recordCode, showRatmplSelector
|
|
1218
1269
|
} = this.state;
|
|
1219
1270
|
let {
|
|
1220
1271
|
sourceId, ltmplConfig, title, collapsible, initCollapse,
|
|
@@ -34,14 +34,15 @@ interface ColumnBuilderProps extends ActionRenderProps{
|
|
|
34
34
|
hiddenRowCodes?: string[],
|
|
35
35
|
sortedColConfigs?: ColumnConfig[],
|
|
36
36
|
unHiden?:()=>any,
|
|
37
|
-
|
|
37
|
+
onHide?:(code: string)=>any,
|
|
38
|
+
operatable?:boolean,
|
|
38
39
|
}
|
|
39
40
|
|
|
40
41
|
interface ReportColumnBuilderProps {
|
|
41
|
-
|
|
42
|
+
columnConfigs: ColumnConfig[],
|
|
42
43
|
hiddenColIds?: string[],
|
|
43
|
-
|
|
44
|
-
|
|
44
|
+
translate:(...strs: string[]) => string;
|
|
45
|
+
leftFixedCols: number,
|
|
45
46
|
hiddenRowCodes?: string[],
|
|
46
47
|
unHiden?:()=>any,
|
|
47
48
|
onHide?:(code: string)=>any,
|
|
@@ -57,7 +58,7 @@ export default {
|
|
|
57
58
|
hiddenRowCodes,
|
|
58
59
|
sortedColConfigs, unHiden,
|
|
59
60
|
onHide,translate,
|
|
60
|
-
sortColumns,serverKey
|
|
61
|
+
sortColumns,serverKey,
|
|
61
62
|
} = props;
|
|
62
63
|
|
|
63
64
|
|
|
@@ -104,7 +105,7 @@ export default {
|
|
|
104
105
|
this.setSortProps(column,item,translate);
|
|
105
106
|
} else if (item.id == "20000") {
|
|
106
107
|
this.setHiddenRecordOpt(column,hiddenRowCodes,unHiden,onHide,translate);
|
|
107
|
-
} else if (item.title === "操作") {
|
|
108
|
+
} else if (item.title === "操作" && props.operatable) {
|
|
108
109
|
column["操作"] = "1";
|
|
109
110
|
column["fixed"] = "right";
|
|
110
111
|
column["align"] = "left";
|
|
@@ -254,7 +254,7 @@ class ModelSelectTable extends React.PureComponent<ModelSelectTableProps, ModelS
|
|
|
254
254
|
return (
|
|
255
255
|
<Modal
|
|
256
256
|
open={open}
|
|
257
|
-
title={<SelectedRowsCard value={selectedRows} onChange={this.changeRowSelection}></SelectedRowsCard>}
|
|
257
|
+
title={<SelectedRowsCard value={selectedRows} onChange={this.changeRowSelection} ></SelectedRowsCard>}
|
|
258
258
|
width={1150}
|
|
259
259
|
destroyOnClose={true}
|
|
260
260
|
centered
|
|
@@ -265,7 +265,8 @@ class ModelSelectTable extends React.PureComponent<ModelSelectTableProps, ModelS
|
|
|
265
265
|
<div className="actTable">
|
|
266
266
|
<CriteriaForm serverKey={serverKey} selectedRows={selectedRows} ltmplConfig={selectConfig} data={criteriaData}
|
|
267
267
|
doSearch={this.doSearch} loading={loading} />
|
|
268
|
-
<QueryTable serverKey={serverKey} pageInfo={{pageNo:pageNo?pageNo:1,pageSize:pageSize?pageSize:selectConfig.defaultPageSize}} onChangePage={this.onChangePage}
|
|
268
|
+
<QueryTable serverKey={serverKey} pageInfo={{pageNo:pageNo?pageNo:1,pageSize:pageSize?pageSize:selectConfig.defaultPageSize}} onChangePage={this.onChangePage}
|
|
269
|
+
maxSelectedRows={maxSelectedRows?maxSelectedRows:selectConfig.maxSelectedRows} selectedRows={selectedRows}
|
|
269
270
|
primaryColumn={selectConfig.primaryColumn}
|
|
270
271
|
columns={columns}
|
|
271
272
|
queryKey={queryKey}
|
|
@@ -15,7 +15,7 @@ import { LocaleContext } from "../locale/LocaleProvider";
|
|
|
15
15
|
import { init, merge, statistic } from "../utils/dsu";
|
|
16
16
|
import VerticalList from "../list/vertical-list";
|
|
17
17
|
import SummaryBuilder from "./column/summary-builder";
|
|
18
|
-
import {Card, Descriptions, Space, Statistic, Table} from "antd";
|
|
18
|
+
import {Card, Descriptions, message, Space, Statistic, Table} from "antd";
|
|
19
19
|
|
|
20
20
|
const SortableItem = SortableElement((props) => (
|
|
21
21
|
<tr className="sortable-item-hover" {...props} />
|
|
@@ -35,6 +35,7 @@ interface QueryTableStat {
|
|
|
35
35
|
loading?: boolean;
|
|
36
36
|
touchEnd?: boolean;
|
|
37
37
|
aggregateVO?: AggregateVO;
|
|
38
|
+
beforeSelectedRows?:number;
|
|
38
39
|
}
|
|
39
40
|
|
|
40
41
|
class QueryTable extends React.PureComponent<QueryTableProps, QueryTableStat> {
|
|
@@ -62,6 +63,7 @@ class QueryTable extends React.PureComponent<QueryTableProps, QueryTableStat> {
|
|
|
62
63
|
loading: true,
|
|
63
64
|
touchEnd: undefined,
|
|
64
65
|
aggregateVO: undefined,
|
|
66
|
+
beforeSelectedRows:undefined,
|
|
65
67
|
};
|
|
66
68
|
|
|
67
69
|
static contextType = LocaleContext;
|
|
@@ -82,6 +84,7 @@ class QueryTable extends React.PureComponent<QueryTableProps, QueryTableStat> {
|
|
|
82
84
|
const { queryKey: preQueryKey, pageInfo: prePageInfo } = prevProps;
|
|
83
85
|
const { queryKey, pageInfo } = this.props;
|
|
84
86
|
// const { aggregateVO } = this.state;
|
|
87
|
+
//debugger
|
|
85
88
|
if (queryKey) {
|
|
86
89
|
if (preQueryKey?.key != queryKey.key) {
|
|
87
90
|
await this.loadData(queryKey.key, pageInfo, true);
|
|
@@ -186,6 +189,7 @@ class QueryTable extends React.PureComponent<QueryTableProps, QueryTableStat> {
|
|
|
186
189
|
pageInfo,
|
|
187
190
|
});
|
|
188
191
|
this.setState({
|
|
192
|
+
beforeSelectedRows:queryData.beforeSelectedRows,
|
|
189
193
|
dataSource,
|
|
190
194
|
virtualEndPageNo: pageInfo.virtualEndPageNo,
|
|
191
195
|
queryDataCache: queryCache,
|
|
@@ -236,7 +240,7 @@ class QueryTable extends React.PureComponent<QueryTableProps, QueryTableStat> {
|
|
|
236
240
|
maxSelectedRows,
|
|
237
241
|
primaryColumn,
|
|
238
242
|
} = this.props;
|
|
239
|
-
let { dataSource } = this.state;
|
|
243
|
+
let { dataSource,beforeSelectedRows } = this.state;
|
|
240
244
|
let selectedRowKeys = [];
|
|
241
245
|
|
|
242
246
|
for (let row of selectedRows) {
|
|
@@ -248,14 +252,50 @@ class QueryTable extends React.PureComponent<QueryTableProps, QueryTableStat> {
|
|
|
248
252
|
allRowKeys.push(d.code);
|
|
249
253
|
}
|
|
250
254
|
}
|
|
251
|
-
|
|
255
|
+
|
|
256
|
+
let tmplMax=maxSelectedRows?maxSelectedRows:0;
|
|
257
|
+
if(beforeSelectedRows>0){
|
|
258
|
+
tmplMax=tmplMax-beforeSelectedRows;
|
|
259
|
+
}
|
|
260
|
+
const { translate } = this.context;
|
|
261
|
+
|
|
262
|
+
if (tmplMax <= -1) {
|
|
263
|
+
return null;
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
if (beforeSelectedRows>0 && tmplMax<=0) {
|
|
267
|
+
message.warning(translate("${已选超}") );
|
|
252
268
|
return null;
|
|
253
269
|
}
|
|
270
|
+
|
|
254
271
|
const rowSelection: TableRowSelection<any> = {
|
|
272
|
+
|
|
255
273
|
fixed: true,
|
|
256
274
|
type: maxSelectedRows == 1 ? "radio" : "checkbox",
|
|
257
275
|
selectedRowKeys,
|
|
258
276
|
onChange: (selectedRowKeys, selectedRows) => {
|
|
277
|
+
|
|
278
|
+
if(tmplMax > 0 && selectedRowKeys.length > tmplMax){
|
|
279
|
+
|
|
280
|
+
message.error(translate("${最多只能选择}") + " : "+ tmplMax);
|
|
281
|
+
// message.error({
|
|
282
|
+
// //type: 'error',
|
|
283
|
+
// content: translate("${最多只能选择}") + " : "+ tmplMax,
|
|
284
|
+
// style: {
|
|
285
|
+
// zIndex: 12000,
|
|
286
|
+
// },
|
|
287
|
+
// duration:5
|
|
288
|
+
// });
|
|
289
|
+
|
|
290
|
+
// messageApi.open({
|
|
291
|
+
// type: 'error',
|
|
292
|
+
// content: translate("${最多只能选择}") + " : "+ tmplMax,
|
|
293
|
+
// style: {
|
|
294
|
+
// zIndex: 2000,
|
|
295
|
+
// },
|
|
296
|
+
// });
|
|
297
|
+
return;
|
|
298
|
+
}
|
|
259
299
|
let selectedRows_: SelectedRow[] = [];
|
|
260
300
|
let selectedDatas: DtmplData[] = [];
|
|
261
301
|
let titleColId = primaryColumn?.id;
|
|
@@ -448,7 +488,7 @@ class QueryTable extends React.PureComponent<QueryTableProps, QueryTableStat> {
|
|
|
448
488
|
}
|
|
449
489
|
}
|
|
450
490
|
const mergeMp = statistic();
|
|
451
|
-
console.log("统计结果", mergeMp);
|
|
491
|
+
//console.log("统计结果", mergeMp);
|
|
452
492
|
|
|
453
493
|
// 给 col 添加 mergeRowInCol
|
|
454
494
|
current_cols.forEach(
|
|
@@ -755,9 +755,8 @@ class RelationTable extends React.PureComponent<
|
|
|
755
755
|
tip={fieldGroupConfig.tip}
|
|
756
756
|
id={parentId + fieldGroupConfig.id}
|
|
757
757
|
className={`hoverable`}
|
|
758
|
-
|
|
758
|
+
styles={{header:{ background: "#f2f4f5" },body:{ padding: "6px" }}}
|
|
759
759
|
loading={loading}
|
|
760
|
-
bodyStyle={{ padding: "6px" }}
|
|
761
760
|
//暂时注释掉,后续要支持配置。
|
|
762
761
|
//extra={<Input.Search onSearch={this.searchValue} allowClear placeholder=""/>}
|
|
763
762
|
>
|