@bit-sun/business-component 4.0.11-alpha.14 → 4.0.11-alpha.16
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/dist/index.esm.js +74 -43
- package/dist/index.js +74 -43
- package/package.json +1 -1
- package/src/components/Business/BsSulaQueryTable/SearchItemSetting.tsx +5 -5
- package/src/components/Business/BsSulaQueryTable/index.less +21 -38
- package/src/components/Business/BsSulaQueryTable/setting.tsx +5 -5
- package/src/components/Business/SearchSelect/BusinessUtils.tsx +8 -0
- package/src/components/Business/SearchSelect/index.md +1 -0
- package/src/components/Business/columnSettingTable/columnSetting.tsx +5 -5
- package/src/components/Business/columnSettingTable/index.less +33 -71
- package/src/components/Functional/SearchSelect/index.less +5 -0
- package/src/components/Functional/SearchSelect/index.tsx +28 -13
- package/src/components/Functional/SearchSelect/utils.ts +2 -1
- package/src/plugin/TableColumnSetting/index.less +38 -70
- package/src/plugin/TableColumnSetting/index.tsx +5 -5
- package/src/styles/bsDefault.less +112 -123
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
.sort_table_column_wrapper {
|
|
6
6
|
width: 560px;
|
|
7
|
-
margin-right:
|
|
7
|
+
margin-right: 8px;
|
|
8
8
|
}
|
|
9
9
|
|
|
10
10
|
.sort_table_content_wrapper {
|
|
@@ -16,12 +16,12 @@
|
|
|
16
16
|
height: 20px;
|
|
17
17
|
font-family: PingFangSC-Regular;
|
|
18
18
|
font-weight: 400;
|
|
19
|
-
font-size:
|
|
19
|
+
font-size: 12px;
|
|
20
20
|
color: #000000;
|
|
21
21
|
letter-spacing: 0;
|
|
22
22
|
|
|
23
23
|
span {
|
|
24
|
-
color: #
|
|
24
|
+
color: #8E8E8E;
|
|
25
25
|
}
|
|
26
26
|
}
|
|
27
27
|
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
text-align: center;
|
|
47
47
|
font-family: PingFangSC-Regular;
|
|
48
48
|
font-weight: 400;
|
|
49
|
-
font-size:
|
|
49
|
+
font-size: 12px;
|
|
50
50
|
color: #848484;
|
|
51
51
|
}
|
|
52
52
|
}
|
|
@@ -57,13 +57,15 @@
|
|
|
57
57
|
height: 20px;
|
|
58
58
|
font-family: PingFangSC-Regular;
|
|
59
59
|
font-weight: 400;
|
|
60
|
-
font-size:
|
|
60
|
+
font-size: 12px;
|
|
61
61
|
color: #848484;
|
|
62
62
|
letter-spacing: 0;
|
|
63
63
|
}
|
|
64
64
|
|
|
65
65
|
.ant-checkbox-wrapper {
|
|
66
66
|
width: 144px;
|
|
67
|
+
height: 16px;
|
|
68
|
+
line-height: 16px;
|
|
67
69
|
margin-top: 16px;
|
|
68
70
|
}
|
|
69
71
|
|
|
@@ -73,6 +75,7 @@
|
|
|
73
75
|
}
|
|
74
76
|
|
|
75
77
|
.sort_table_content {
|
|
78
|
+
height: 430px;
|
|
76
79
|
margin-top: 10px;
|
|
77
80
|
padding-top: 10px;
|
|
78
81
|
padding-bottom: 10px;
|
|
@@ -90,28 +93,11 @@
|
|
|
90
93
|
}
|
|
91
94
|
}
|
|
92
95
|
}
|
|
93
|
-
|
|
94
|
-
width: 820px;
|
|
95
|
-
height: 64px;
|
|
96
|
-
background: #ffffff;
|
|
97
|
-
padding: 20px;
|
|
98
|
-
border: 0px;
|
|
99
|
-
|
|
100
|
-
div.ant-modal-title {
|
|
101
|
-
height: 24px;
|
|
102
|
-
font-family: PingFangSC-Medium;
|
|
103
|
-
font-weight: 500;
|
|
104
|
-
font-size: 18px;
|
|
105
|
-
color: #000000;
|
|
106
|
-
letter-spacing: 0;
|
|
107
|
-
line-height: 24px;
|
|
108
|
-
}
|
|
109
|
-
}
|
|
96
|
+
|
|
110
97
|
|
|
111
98
|
.ant-modal-body {
|
|
112
|
-
padding:
|
|
99
|
+
padding: 10px 16px;
|
|
113
100
|
}
|
|
114
|
-
|
|
115
101
|
.ant-modal-close-x {
|
|
116
102
|
height: 24px;
|
|
117
103
|
font-family: PingFangSC-Medium;
|
|
@@ -127,7 +113,7 @@
|
|
|
127
113
|
}
|
|
128
114
|
|
|
129
115
|
input {
|
|
130
|
-
height:
|
|
116
|
+
height: 22px;
|
|
131
117
|
padding: 6px 4px;
|
|
132
118
|
border-radius: 5px;
|
|
133
119
|
}
|
|
@@ -135,28 +121,25 @@
|
|
|
135
121
|
.ant-input-prefix {
|
|
136
122
|
width: 24px;
|
|
137
123
|
height: 24px;
|
|
138
|
-
margin: 4px;
|
|
124
|
+
margin: 0 4px;
|
|
139
125
|
// border: 1px dashed #d9d9d9;
|
|
140
126
|
display: flex;
|
|
141
127
|
justify-content: center;
|
|
142
128
|
}
|
|
143
129
|
|
|
144
130
|
.ant-modal-footer {
|
|
145
|
-
|
|
146
|
-
border: 0;
|
|
147
|
-
padding: 20px;
|
|
131
|
+
padding: 8px 16px;
|
|
148
132
|
display: flex;
|
|
149
133
|
justify-content: space-between;
|
|
150
134
|
|
|
151
135
|
.ant-btn {
|
|
152
136
|
width: 80px;
|
|
153
|
-
height:
|
|
154
|
-
border-radius: 5px;
|
|
137
|
+
height: 28px;
|
|
155
138
|
|
|
156
139
|
span {
|
|
157
140
|
font-family: PingFangSC-Medium;
|
|
158
141
|
font-weight: 600;
|
|
159
|
-
font-size:
|
|
142
|
+
font-size: 12px;
|
|
160
143
|
letter-spacing: 0;
|
|
161
144
|
text-align: center;
|
|
162
145
|
line-height: 20px;
|
|
@@ -179,13 +162,13 @@
|
|
|
179
162
|
padding-bottom: 50px;
|
|
180
163
|
|
|
181
164
|
tr {
|
|
182
|
-
height:
|
|
165
|
+
height: 30px;
|
|
183
166
|
td {
|
|
184
167
|
width: 24px !important;
|
|
185
|
-
height:
|
|
168
|
+
height: 30px !important;
|
|
186
169
|
font-family: PingFangSC-Regular;
|
|
187
170
|
font-weight: 400;
|
|
188
|
-
font-size:
|
|
171
|
+
font-size: 12px;
|
|
189
172
|
color: #000000;
|
|
190
173
|
letter-spacing: 0;
|
|
191
174
|
|
|
@@ -197,8 +180,8 @@
|
|
|
197
180
|
overflow: hidden;
|
|
198
181
|
text-overflow: ellipsis;
|
|
199
182
|
white-space: nowrap;
|
|
200
|
-
height:
|
|
201
|
-
line-height:
|
|
183
|
+
height: 30px !important;
|
|
184
|
+
line-height: 30px !important;
|
|
202
185
|
}
|
|
203
186
|
|
|
204
187
|
img {
|
|
@@ -214,7 +197,7 @@
|
|
|
214
197
|
&:last-child {
|
|
215
198
|
padding-left: 0px !important;
|
|
216
199
|
padding-right: 3px !important;
|
|
217
|
-
width:
|
|
200
|
+
width: 30px !important;
|
|
218
201
|
|
|
219
202
|
img {
|
|
220
203
|
// border: 1px dashed #d9d9d9;
|
|
@@ -711,9 +711,9 @@ class SortableTable extends React.Component {
|
|
|
711
711
|
<div className={'sort_table_wrapper'}>
|
|
712
712
|
{visible && (
|
|
713
713
|
<Modal
|
|
714
|
-
title="
|
|
714
|
+
title="筛选条件设置"
|
|
715
715
|
wrapClassName={'sort_table_wrapper'}
|
|
716
|
-
width={
|
|
716
|
+
width={810}
|
|
717
717
|
visible={visible}
|
|
718
718
|
onOk={this.handleOk}
|
|
719
719
|
onCancel={this.handleCancel}
|
|
@@ -748,7 +748,7 @@ class SortableTable extends React.Component {
|
|
|
748
748
|
<div className={'sort_table'}>
|
|
749
749
|
<div className={'sort_table_column_wrapper'}>
|
|
750
750
|
<span className={'sort_table_column_count'}>
|
|
751
|
-
|
|
751
|
+
<span>勾选你想使用的筛选条件</span>
|
|
752
752
|
</span>
|
|
753
753
|
<div className={'sort_table_column'}>
|
|
754
754
|
<Input
|
|
@@ -756,7 +756,7 @@ class SortableTable extends React.Component {
|
|
|
756
756
|
placeholder="搜索"
|
|
757
757
|
allowClear
|
|
758
758
|
onChange={this.onSearch}
|
|
759
|
-
style={{ width: 540 }}
|
|
759
|
+
style={{ width: 540, height: 24 }}
|
|
760
760
|
/>
|
|
761
761
|
<div>
|
|
762
762
|
{!searchDataSource && (
|
|
@@ -882,7 +882,7 @@ class SortableTable extends React.Component {
|
|
|
882
882
|
</div>
|
|
883
883
|
<div className={'sort_table_content_wrapper'}>
|
|
884
884
|
<span className={'sort_table_content_count'}>
|
|
885
|
-
|
|
885
|
+
<span>已选择的搜索条件排序</span>
|
|
886
886
|
</span>
|
|
887
887
|
<div className={'sort_table_content'}>
|
|
888
888
|
<span style={{ paddingLeft: '10px' }}>
|
|
@@ -809,6 +809,7 @@ export function commonFun (type?: string, prefixUrl: any, parentProps?:any) {
|
|
|
809
809
|
...selectConfigProps,
|
|
810
810
|
}
|
|
811
811
|
requestConfig = {
|
|
812
|
+
init: true,
|
|
812
813
|
url: `${prefixUrl.selectPrefix}/physicalWarehouse`,
|
|
813
814
|
filter: 'qp-physicalWarehouseName,physicalWarehouseCode-orGroup,like', // 过滤参数
|
|
814
815
|
mappingTextField: 'physicalWarehouseName',
|
|
@@ -905,6 +906,7 @@ export function commonFun (type?: string, prefixUrl: any, parentProps?:any) {
|
|
|
905
906
|
...selectConfigProps,
|
|
906
907
|
}
|
|
907
908
|
requestConfig = {
|
|
909
|
+
init: true,
|
|
908
910
|
url: `${prefixUrl.selectPrefix}/realWarehouse`,
|
|
909
911
|
filter: 'qp-realWarehouseName,realWarehouseCode-orGroup,like', // 过滤参数
|
|
910
912
|
mappingTextField: 'realWarehouseName',
|
|
@@ -974,6 +976,7 @@ export function commonFun (type?: string, prefixUrl: any, parentProps?:any) {
|
|
|
974
976
|
...selectConfigProps,
|
|
975
977
|
}
|
|
976
978
|
requestConfig = {
|
|
979
|
+
init: true,
|
|
977
980
|
url: `${prefixUrl.selectPrefix}/ownerWarehouse`,
|
|
978
981
|
filter: 'qp-name,operationWarehouseCode-orGroup,like', // 过滤参数
|
|
979
982
|
mappingTextField: 'name',
|
|
@@ -1062,6 +1065,7 @@ export function commonFun (type?: string, prefixUrl: any, parentProps?:any) {
|
|
|
1062
1065
|
...selectConfigProps,
|
|
1063
1066
|
}
|
|
1064
1067
|
requestConfig = {
|
|
1068
|
+
init: true,
|
|
1065
1069
|
url: `${prefixUrl.selectPrefix}/virtualWarehouse`,
|
|
1066
1070
|
filter: 'qp-virtualWarehouseName,virtualWarehouseCode-orGroup,like', // 过滤参数
|
|
1067
1071
|
mappingTextField: 'virtualWarehouseName',
|
|
@@ -1092,6 +1096,7 @@ export function commonFun (type?: string, prefixUrl: any, parentProps?:any) {
|
|
|
1092
1096
|
...selectConfigProps,
|
|
1093
1097
|
}
|
|
1094
1098
|
requestConfig = {
|
|
1099
|
+
init: true,
|
|
1095
1100
|
url: `${prefixUrl.selectPrefix}/channelWarehouse`,
|
|
1096
1101
|
filter: 'qp-channelWarehouseName,channelWarehouseCode-orGroup,like', // 过滤参数
|
|
1097
1102
|
mappingTextField: 'channelWarehouseName',
|
|
@@ -1124,6 +1129,7 @@ export function commonFun (type?: string, prefixUrl: any, parentProps?:any) {
|
|
|
1124
1129
|
...selectConfigProps,
|
|
1125
1130
|
}
|
|
1126
1131
|
requestConfig = {
|
|
1132
|
+
init: true,
|
|
1127
1133
|
url: `${prefixUrl.selectPrefix}/uc/customer/v2`,
|
|
1128
1134
|
filter: 'qp-name,code-orGroup,like', // 过滤参数
|
|
1129
1135
|
mappingTextField: 'name',
|
|
@@ -1261,6 +1267,7 @@ export function commonFun (type?: string, prefixUrl: any, parentProps?:any) {
|
|
|
1261
1267
|
}
|
|
1262
1268
|
// 版本2
|
|
1263
1269
|
requestConfig = {
|
|
1270
|
+
init: true,
|
|
1264
1271
|
url: `${prefixUrl.selectPrefix}/customer`,
|
|
1265
1272
|
filter: 'qp-name,code-orGroup,like', // 过滤参数
|
|
1266
1273
|
mappingTextField: 'name',
|
|
@@ -2716,6 +2723,7 @@ export function commonFun (type?: string, prefixUrl: any, parentProps?:any) {
|
|
|
2716
2723
|
...selectConfigProps,
|
|
2717
2724
|
}
|
|
2718
2725
|
requestConfig = {
|
|
2726
|
+
init: true,
|
|
2719
2727
|
url: `${prefixUrl.selectPrefix}/orgViewNode/listNoPage`,
|
|
2720
2728
|
filter: 'qp-code,name-orGroup,like', // 过滤参数
|
|
2721
2729
|
mappingTextField: 'name',
|
|
@@ -650,7 +650,7 @@ class SortableTable extends React.Component<SortTableProps> {
|
|
|
650
650
|
return (
|
|
651
651
|
<div className={'sort_table_wrapper'}>
|
|
652
652
|
{visible && <Modal
|
|
653
|
-
title="
|
|
653
|
+
title="筛选条件设置"
|
|
654
654
|
wrapClassName={'sort_table_wrapper'}
|
|
655
655
|
width={820}
|
|
656
656
|
visible={visible}
|
|
@@ -687,15 +687,15 @@ class SortableTable extends React.Component<SortTableProps> {
|
|
|
687
687
|
<div className={'sort_table'}>
|
|
688
688
|
<div className={'sort_table_column_wrapper'}>
|
|
689
689
|
<span className={'sort_table_column_count'}>
|
|
690
|
-
|
|
690
|
+
<span>勾选你想使用的筛选条件</span>
|
|
691
691
|
</span>
|
|
692
692
|
<div className={'sort_table_column'}>
|
|
693
693
|
<Input
|
|
694
694
|
prefix={<SearchOutlined className="site-form-item-icon" />}
|
|
695
|
-
placeholder="
|
|
695
|
+
placeholder="输入筛选条件名称搜索"
|
|
696
696
|
allowClear
|
|
697
697
|
onChange={this.onSearch}
|
|
698
|
-
style={{ width:
|
|
698
|
+
style={{ width: 525 }}
|
|
699
699
|
/>
|
|
700
700
|
<div>
|
|
701
701
|
{!searchDataSource && (
|
|
@@ -819,7 +819,7 @@ class SortableTable extends React.Component<SortTableProps> {
|
|
|
819
819
|
</div>
|
|
820
820
|
<div className={'sort_table_content_wrapper'}>
|
|
821
821
|
<span className={'sort_table_content_count'}>
|
|
822
|
-
|
|
822
|
+
<span>已选择的搜索条件排序</span>
|
|
823
823
|
</span>
|
|
824
824
|
<div className={'sort_table_content'}>
|
|
825
825
|
<span style={{ paddingLeft: '10px' }}>
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
// 列自定义
|
|
2
1
|
.sort_table_wrapper {
|
|
3
2
|
.sort_table {
|
|
4
3
|
display: flex;
|
|
5
4
|
|
|
6
5
|
.sort_table_column_wrapper {
|
|
7
6
|
width: 560px;
|
|
8
|
-
margin-right:
|
|
7
|
+
margin-right: 8px;
|
|
9
8
|
}
|
|
10
9
|
|
|
11
10
|
.sort_table_content_wrapper {
|
|
@@ -17,12 +16,12 @@
|
|
|
17
16
|
height: 20px;
|
|
18
17
|
font-family: PingFangSC-Regular;
|
|
19
18
|
font-weight: 400;
|
|
20
|
-
font-size:
|
|
19
|
+
font-size: 12px;
|
|
21
20
|
color: #000000;
|
|
22
21
|
letter-spacing: 0;
|
|
23
22
|
|
|
24
23
|
span {
|
|
25
|
-
color: #
|
|
24
|
+
color: #8E8E8E;
|
|
26
25
|
}
|
|
27
26
|
}
|
|
28
27
|
|
|
@@ -47,7 +46,7 @@
|
|
|
47
46
|
text-align: center;
|
|
48
47
|
font-family: PingFangSC-Regular;
|
|
49
48
|
font-weight: 400;
|
|
50
|
-
font-size:
|
|
49
|
+
font-size: 12px;
|
|
51
50
|
color: #848484;
|
|
52
51
|
}
|
|
53
52
|
}
|
|
@@ -58,22 +57,25 @@
|
|
|
58
57
|
height: 20px;
|
|
59
58
|
font-family: PingFangSC-Regular;
|
|
60
59
|
font-weight: 400;
|
|
61
|
-
font-size:
|
|
60
|
+
font-size: 12px;
|
|
62
61
|
color: #848484;
|
|
63
62
|
letter-spacing: 0;
|
|
64
63
|
}
|
|
65
64
|
|
|
66
65
|
.ant-checkbox-wrapper {
|
|
67
66
|
width: 144px;
|
|
67
|
+
height: 16px;
|
|
68
|
+
line-height: 16px;
|
|
68
69
|
margin-top: 16px;
|
|
69
70
|
}
|
|
70
71
|
|
|
71
|
-
.ant-checkbox-wrapper
|
|
72
|
+
.ant-checkbox-wrapper + .ant-checkbox-wrapper {
|
|
72
73
|
margin-left: 0px;
|
|
73
74
|
}
|
|
74
75
|
}
|
|
75
76
|
|
|
76
77
|
.sort_table_content {
|
|
78
|
+
height: 430px;
|
|
77
79
|
margin-top: 10px;
|
|
78
80
|
padding-top: 10px;
|
|
79
81
|
padding-bottom: 10px;
|
|
@@ -83,7 +85,6 @@
|
|
|
83
85
|
.ant-table-wrapper {
|
|
84
86
|
padding: 0px !important;
|
|
85
87
|
}
|
|
86
|
-
|
|
87
88
|
.sort_table_title {
|
|
88
89
|
height: 32px;
|
|
89
90
|
line-height: 32px;
|
|
@@ -92,29 +93,11 @@
|
|
|
92
93
|
}
|
|
93
94
|
}
|
|
94
95
|
}
|
|
95
|
-
|
|
96
|
-
div.ant-modal-header {
|
|
97
|
-
width: 820px;
|
|
98
|
-
height: 64px;
|
|
99
|
-
background: #ffffff;
|
|
100
|
-
padding: 20px;
|
|
101
|
-
border: 0px;
|
|
102
|
-
|
|
103
|
-
div.ant-modal-title {
|
|
104
|
-
height: 24px;
|
|
105
|
-
font-family: PingFangSC-Medium;
|
|
106
|
-
font-weight: 500;
|
|
107
|
-
font-size: 18px;
|
|
108
|
-
color: #000000;
|
|
109
|
-
letter-spacing: 0;
|
|
110
|
-
line-height: 24px;
|
|
111
|
-
}
|
|
112
|
-
}
|
|
96
|
+
|
|
113
97
|
|
|
114
98
|
.ant-modal-body {
|
|
115
|
-
padding:
|
|
99
|
+
padding: 10px 16px;
|
|
116
100
|
}
|
|
117
|
-
|
|
118
101
|
.ant-modal-close-x {
|
|
119
102
|
height: 24px;
|
|
120
103
|
font-family: PingFangSC-Medium;
|
|
@@ -130,7 +113,7 @@
|
|
|
130
113
|
}
|
|
131
114
|
|
|
132
115
|
input {
|
|
133
|
-
height:
|
|
116
|
+
height: 22px;
|
|
134
117
|
padding: 6px 4px;
|
|
135
118
|
border-radius: 5px;
|
|
136
119
|
}
|
|
@@ -138,34 +121,33 @@
|
|
|
138
121
|
.ant-input-prefix {
|
|
139
122
|
width: 24px;
|
|
140
123
|
height: 24px;
|
|
141
|
-
margin: 4px;
|
|
124
|
+
margin: 0 4px;
|
|
142
125
|
// border: 1px dashed #d9d9d9;
|
|
143
126
|
display: flex;
|
|
144
127
|
justify-content: center;
|
|
145
128
|
}
|
|
146
129
|
|
|
147
130
|
.ant-modal-footer {
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
131
|
+
padding: 8px 16px;
|
|
132
|
+
display: flex;
|
|
133
|
+
justify-content: space-between;
|
|
134
|
+
|
|
152
135
|
.ant-btn {
|
|
153
136
|
width: 80px;
|
|
154
|
-
height:
|
|
155
|
-
border-radius: 5px;
|
|
137
|
+
height: 28px;
|
|
156
138
|
|
|
157
139
|
span {
|
|
158
140
|
font-family: PingFangSC-Medium;
|
|
159
141
|
font-weight: 600;
|
|
160
|
-
font-size:
|
|
142
|
+
font-size: 12px;
|
|
161
143
|
letter-spacing: 0;
|
|
162
144
|
text-align: center;
|
|
163
145
|
line-height: 20px;
|
|
164
146
|
}
|
|
165
147
|
|
|
166
|
-
&:first-child {
|
|
167
|
-
|
|
168
|
-
}
|
|
148
|
+
// &:first-child {
|
|
149
|
+
// margin-right: 524px;
|
|
150
|
+
// }
|
|
169
151
|
}
|
|
170
152
|
}
|
|
171
153
|
|
|
@@ -180,14 +162,13 @@
|
|
|
180
162
|
padding-bottom: 50px;
|
|
181
163
|
|
|
182
164
|
tr {
|
|
183
|
-
height:
|
|
184
|
-
|
|
165
|
+
height: 30px;
|
|
185
166
|
td {
|
|
186
167
|
width: 24px !important;
|
|
187
|
-
height:
|
|
168
|
+
height: 30px !important;
|
|
188
169
|
font-family: PingFangSC-Regular;
|
|
189
170
|
font-weight: 400;
|
|
190
|
-
font-size:
|
|
171
|
+
font-size: 12px;
|
|
191
172
|
color: #000000;
|
|
192
173
|
letter-spacing: 0;
|
|
193
174
|
|
|
@@ -199,8 +180,8 @@
|
|
|
199
180
|
overflow: hidden;
|
|
200
181
|
text-overflow: ellipsis;
|
|
201
182
|
white-space: nowrap;
|
|
202
|
-
height:
|
|
203
|
-
line-height:
|
|
183
|
+
height: 30px !important;
|
|
184
|
+
line-height: 30px !important;
|
|
204
185
|
}
|
|
205
186
|
|
|
206
187
|
img {
|
|
@@ -216,7 +197,7 @@
|
|
|
216
197
|
&:last-child {
|
|
217
198
|
padding-left: 0px !important;
|
|
218
199
|
padding-right: 3px !important;
|
|
219
|
-
width:
|
|
200
|
+
width: 30px !important;
|
|
220
201
|
|
|
221
202
|
img {
|
|
222
203
|
// border: 1px dashed #d9d9d9;
|
|
@@ -227,27 +208,8 @@
|
|
|
227
208
|
}
|
|
228
209
|
}
|
|
229
210
|
}
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
}
|
|
235
|
-
|
|
236
|
-
.row-dragging {
|
|
237
|
-
background: #fafafa;
|
|
238
|
-
border: 1px solid #ccc;
|
|
239
|
-
z-index: 10000;
|
|
240
|
-
}
|
|
241
|
-
|
|
242
|
-
.row-dragging td {
|
|
243
|
-
padding: 7px 16px;
|
|
244
|
-
display: none;
|
|
245
|
-
|
|
246
|
-
}
|
|
247
|
-
.row-dragging td:first-child {
|
|
248
|
-
display: inline-block;
|
|
249
|
-
}
|
|
250
|
-
|
|
251
|
-
.row-dragging .drag-visible {
|
|
252
|
-
visibility: visible;
|
|
253
|
-
}
|
|
211
|
+
|
|
212
|
+
.ant-dropdown-link {
|
|
213
|
+
cursor: pointer;
|
|
214
|
+
}
|
|
215
|
+
}
|
|
@@ -46,6 +46,8 @@ const SearchSelect = forwardRef((props: any, ref: any) => {
|
|
|
46
46
|
extralHeaders = {},// 额外请求头参数
|
|
47
47
|
specialBracket = false,// 是否使用特殊括弧显示选项 【value】text
|
|
48
48
|
noNeedSplit = false,// label显示不需要任何特殊化
|
|
49
|
+
noOperate, // 级联禁用按钮设置字段
|
|
50
|
+
viewShowValueStr, // 详情展示值,不传展示组件处理的默认值
|
|
49
51
|
} = requestConfig || {};
|
|
50
52
|
const resultSourceKey = handleSourceName(sourceName || requestConfig?.sourceName || ctx?.name || 'supplierCode')
|
|
51
53
|
|
|
@@ -69,6 +71,7 @@ const SearchSelect = forwardRef((props: any, ref: any) => {
|
|
|
69
71
|
}
|
|
70
72
|
const initPagination = { showQuickJumper: true, showSizeChanger: false, showTotal: (total: any) => `共 ${total} 条`, pageSize: tableInitPageSize }
|
|
71
73
|
const tableInitPagination = { ...initPagination, total: 0, current: 1 }
|
|
74
|
+
const disabled = noOperate || selectProps?.disabled || props?.disabled
|
|
72
75
|
|
|
73
76
|
const [items, setItems] = useState([]);
|
|
74
77
|
const [selectOpen, setSelectOpen] = useState(false);
|
|
@@ -434,6 +437,10 @@ const SearchSelect = forwardRef((props: any, ref: any) => {
|
|
|
434
437
|
if (init) {
|
|
435
438
|
run('init')
|
|
436
439
|
}
|
|
440
|
+
// 编辑/详情页面回显
|
|
441
|
+
if(!init && !!value && ['edit','view'].includes(ctx?.mode)) {
|
|
442
|
+
run('init')
|
|
443
|
+
}
|
|
437
444
|
}, [])
|
|
438
445
|
|
|
439
446
|
useEffect(() => {
|
|
@@ -697,13 +704,13 @@ const SearchSelect = forwardRef((props: any, ref: any) => {
|
|
|
697
704
|
},
|
|
698
705
|
getCheckboxProps: selectProps?.getCheckboxProps ? selectProps?.getCheckboxProps : () => {
|
|
699
706
|
return ({
|
|
700
|
-
disabled:
|
|
707
|
+
disabled: disabled || (!items.length && !tableData.length),
|
|
701
708
|
})
|
|
702
709
|
},
|
|
703
710
|
};
|
|
704
711
|
|
|
705
712
|
const onRowClickSelect = (e, record,type) => {
|
|
706
|
-
if (selectMode && !(
|
|
713
|
+
if (selectMode && !(disabled || (!items.length && !tableData.length))) {
|
|
707
714
|
const oldSelect = selectedRows;
|
|
708
715
|
const newSelect = [JSON.parse(JSON.stringify(record))];
|
|
709
716
|
const srs = getRealStr(oldSelect,newSelect,record);
|
|
@@ -713,7 +720,7 @@ const SearchSelect = forwardRef((props: any, ref: any) => {
|
|
|
713
720
|
}
|
|
714
721
|
}
|
|
715
722
|
const onDoubleClickSelect = (e, record,type) => {
|
|
716
|
-
if (!selectMode && !(
|
|
723
|
+
if (!selectMode && !(disabled || (!items.length && !tableData.length))) {
|
|
717
724
|
const srs = [JSON.parse(JSON.stringify(record))]
|
|
718
725
|
const sks = srs.map((i: any) => i.value)
|
|
719
726
|
onChangeSelectedKeys(sks, srs)
|
|
@@ -869,8 +876,8 @@ const SearchSelect = forwardRef((props: any, ref: any) => {
|
|
|
869
876
|
|
|
870
877
|
const onDropdownVisibleChange = (visible) => {
|
|
871
878
|
setSelectOpen(visible);
|
|
872
|
-
// 关闭下拉框
|
|
873
|
-
if (!visible && !value?.length) {
|
|
879
|
+
// 关闭下拉框 如果首次本身就不展示数据的 没有选中数据-需要清空查询数据源
|
|
880
|
+
if (!init && !visible && !value?.length) {
|
|
874
881
|
setItems([]);
|
|
875
882
|
setItemsTotal(0);
|
|
876
883
|
}
|
|
@@ -885,17 +892,22 @@ const SearchSelect = forwardRef((props: any, ref: any) => {
|
|
|
885
892
|
rowSelection: {
|
|
886
893
|
type: 'checkbox',
|
|
887
894
|
columnWidth: '24px',
|
|
888
|
-
selectedRowKeys: labelInValue ? value
|
|
895
|
+
selectedRowKeys: labelInValue ? value?.map(s=> (s?.value||s)) : value,
|
|
889
896
|
onChange: (sks, srs) => {
|
|
890
|
-
const oldSelect =
|
|
891
|
-
|
|
897
|
+
const oldSelect = value?.map(s => ({ value: s?.value||s }))||[];
|
|
898
|
+
let tmpSelectedRows = oldSelect.concat(srs).filter(item => item != undefined);
|
|
899
|
+
let realSrs = sks.map(key => tmpSelectedRows.filter(item => item[mappingValueField] == key)[0]).filter(item => item != undefined)
|
|
892
900
|
onSelectClick(realSrs, dataSource,false)
|
|
893
901
|
}
|
|
894
902
|
},
|
|
895
903
|
onRow: (record, rowKey) => ({
|
|
896
904
|
onClick: event => {
|
|
897
|
-
|
|
905
|
+
event.stopPropagation();
|
|
906
|
+
event.nativeEvent.stopImmediatePropagation();
|
|
907
|
+
|
|
908
|
+
const oldSelect = value?.map(s => ({ value: s?.value||s }))||[];
|
|
898
909
|
const newSelect = [JSON.parse(JSON.stringify(record))];
|
|
910
|
+
console.log('行选择:','oldSelect',oldSelect,'newSelect',newSelect,'record',record)
|
|
899
911
|
const srs = getRealStr(oldSelect,newSelect,record);
|
|
900
912
|
onSelectClick(srs,dataSource,false)
|
|
901
913
|
}, // 点击行
|
|
@@ -973,6 +985,9 @@ const SearchSelect = forwardRef((props: any, ref: any) => {
|
|
|
973
985
|
return (getSelectValueText(value) || kongValue) as string;
|
|
974
986
|
}
|
|
975
987
|
const getShowStr = () => {
|
|
988
|
+
// 优先使用业务使用传入的展示
|
|
989
|
+
if(viewShowValueStr) return viewShowValueStr;
|
|
990
|
+
|
|
976
991
|
const kongValue = '无'
|
|
977
992
|
// 先判断labelInValue与否,labelInValue可以直接去value中获取字段名称,否则去下拉框数据里面去拿;
|
|
978
993
|
// 再判断是单选还是多选,数据类型不同取值方式也不同
|
|
@@ -982,7 +997,7 @@ const SearchSelect = forwardRef((props: any, ref: any) => {
|
|
|
982
997
|
return getShowValueStr(kongValue);
|
|
983
998
|
}
|
|
984
999
|
|
|
985
|
-
const isShouldShowStr =
|
|
1000
|
+
const isShouldShowStr = (disabled && ctx) || ctx?.mode == 'view'
|
|
986
1001
|
return (
|
|
987
1002
|
<div className={'search_select'}>
|
|
988
1003
|
{fieldComponent ? (
|
|
@@ -1008,7 +1023,7 @@ const SearchSelect = forwardRef((props: any, ref: any) => {
|
|
|
1008
1023
|
value={value}
|
|
1009
1024
|
onChange={onchange}
|
|
1010
1025
|
onClear={onClear}
|
|
1011
|
-
disabled={
|
|
1026
|
+
disabled={disabled}
|
|
1012
1027
|
dropdownStyle={{ borderRadius: '2px', padding: '10px 2px' }}
|
|
1013
1028
|
open={selectOpen}
|
|
1014
1029
|
onDropdownVisibleChange={onDropdownVisibleChange}
|
|
@@ -1028,7 +1043,7 @@ const SearchSelect = forwardRef((props: any, ref: any) => {
|
|
|
1028
1043
|
maxTagPlaceholder={maxTagPlaceholder}
|
|
1029
1044
|
onSearch={(v) => onSearchChange(v)}
|
|
1030
1045
|
{...(needModalTable ? {
|
|
1031
|
-
suffixIcon: <div className=
|
|
1046
|
+
suffixIcon: <div className={`search_select_expand_button ${(disabled)?'search_select_expand_button_disabled':''}`} onClick={showModal}><SearchOutlined /></div>
|
|
1032
1047
|
} : {})}
|
|
1033
1048
|
{...currentSelectProps}
|
|
1034
1049
|
getPopupContainer={(triggerNode) => (getPopupContainer && getPopupContainer(triggerNode)) || triggerNode.parentElement}
|
|
@@ -1065,7 +1080,7 @@ const SearchSelect = forwardRef((props: any, ref: any) => {
|
|
|
1065
1080
|
type="primary"
|
|
1066
1081
|
loading={confirmLoading}
|
|
1067
1082
|
onClick={handleOk}
|
|
1068
|
-
disabled={
|
|
1083
|
+
disabled={disabled}
|
|
1069
1084
|
>
|
|
1070
1085
|
确定
|
|
1071
1086
|
</Button>,
|