yootd 0.0.8 → 0.0.10
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/LICENSE +21 -21
- package/README.md +43 -43
- package/dist/Preview/components/preview/phone.scss +8 -8
- package/dist/Preview/index.scss +35 -35
- package/dist/Preview/types/type.d.ts +21 -21
- package/dist/anchor/index.scss +23 -23
- package/dist/approval-process/index.scss +95 -95
- package/dist/areas/index.scss +21 -21
- package/dist/areas/types/types.d.ts +39 -39
- package/dist/aside/components/SortableItem.scss +93 -93
- package/dist/aside/index.scss +25 -25
- package/dist/aside/types/types.d.ts +44 -44
- package/dist/badge/index.scss +5 -5
- package/dist/buildings/types/types.d.ts +21 -21
- package/dist/button/index.scss +30 -30
- package/dist/cascader/index.scss +5 -5
- package/dist/config-provider/context.d.ts +1 -0
- package/dist/config-provider/index.d.ts +1 -0
- package/dist/config-provider/index.js +3 -1
- package/dist/courses/types/types.d.ts +18 -18
- package/dist/dictionary/types/types.d.ts +14 -14
- package/dist/drawer-modal/index.scss +39 -39
- package/dist/drawer-modal/types/types.d.ts +3 -3
- package/dist/dropdown/assets/arrow-down.svg +5 -5
- package/dist/empty/index.scss +15 -15
- package/dist/group-title/index.scss +31 -31
- package/dist/hooks/useOSS.d.ts +1 -0
- package/dist/hooks/useOSS.js +11 -0
- package/dist/image/index.scss +26 -26
- package/dist/index.d.ts +2 -0
- package/dist/index.js +2 -1
- package/dist/input/index.scss +5 -5
- package/dist/modal/index.scss +65 -65
- package/dist/pagination/index.scss +47 -47
- package/dist/school/index.scss +21 -21
- package/dist/school/types/types.d.ts +84 -84
- package/dist/state/index.scss +89 -89
- package/dist/steps/index.scss +32 -32
- package/dist/student-dropdown/types/types.d.ts +44 -44
- package/dist/table/components/primary-header-row/index.scss +58 -58
- package/dist/table/components/primary-tbody-row/index.scss +5 -5
- package/dist/table/index.module.scss +9 -9
- package/dist/table/index.scss +33 -33
- package/dist/tabs/index.scss +81 -81
- package/dist/tag/index.scss +4 -4
- package/dist/teacher/types/types.d.ts +31 -31
- package/dist/tree/index.scss +25 -25
- package/dist/upload/index.scss +115 -115
- package/dist/user-dropdown/types/types.d.ts +45 -45
- package/dist/video-player/assets/control-background.png +0 -0
- package/dist/video-player/assets/player-icon.svg +1 -0
- package/dist/video-player/index.d.ts +70 -0
- package/dist/video-player/index.js +875 -0
- package/dist/video-player/index.scss +310 -0
- package/dist/year-term/index.scss +21 -21
- package/dist/year-term/types/types.d.ts +28 -28
- package/dist/zones/index.module.scss +23 -23
- package/dist/zones/types/types.d.ts +26 -26
- package/package.json +8 -3
package/dist/empty/index.scss
CHANGED
@@ -1,15 +1,15 @@
|
|
1
|
-
.yot-empty {
|
2
|
-
&-description {
|
3
|
-
&-content {
|
4
|
-
&__title {
|
5
|
-
font-size: 20px;
|
6
|
-
font-weight: bold;
|
7
|
-
color: var(--ant-color-text);
|
8
|
-
}
|
9
|
-
&__text {
|
10
|
-
font-size: 14px;
|
11
|
-
color: var(--ant-color-text-secondary);
|
12
|
-
}
|
13
|
-
}
|
14
|
-
}
|
15
|
-
}
|
1
|
+
.yot-empty {
|
2
|
+
&-description {
|
3
|
+
&-content {
|
4
|
+
&__title {
|
5
|
+
font-size: 20px;
|
6
|
+
font-weight: bold;
|
7
|
+
color: var(--ant-color-text);
|
8
|
+
}
|
9
|
+
&__text {
|
10
|
+
font-size: 14px;
|
11
|
+
color: var(--ant-color-text-secondary);
|
12
|
+
}
|
13
|
+
}
|
14
|
+
}
|
15
|
+
}
|
@@ -1,31 +1,31 @@
|
|
1
|
-
.yot-group-title {
|
2
|
-
background-color: var(--yot-group-color-secondary);
|
3
|
-
border-radius: 4px;
|
4
|
-
height: 42px;
|
5
|
-
position: relative;
|
6
|
-
|
7
|
-
&__content::before {
|
8
|
-
content: '';
|
9
|
-
position: absolute;
|
10
|
-
width: 4px;
|
11
|
-
height: 16px;
|
12
|
-
top: 13px;
|
13
|
-
left: 16px;
|
14
|
-
background: var(--yot-group-color-primary);
|
15
|
-
border-radius: 2px 2px 2px 2px
|
16
|
-
}
|
17
|
-
|
18
|
-
&-title {
|
19
|
-
display: flex;
|
20
|
-
padding: 0px 26px;
|
21
|
-
line-height: 42px;
|
22
|
-
|
23
|
-
&__title-text {
|
24
|
-
font-family: Source Han Sans CN, Source Han Sans CN;
|
25
|
-
font-weight: 550;
|
26
|
-
font-size: 16px;
|
27
|
-
text-align: left;
|
28
|
-
}
|
29
|
-
}
|
30
|
-
|
31
|
-
}
|
1
|
+
.yot-group-title {
|
2
|
+
background-color: var(--yot-group-color-secondary);
|
3
|
+
border-radius: 4px;
|
4
|
+
height: 42px;
|
5
|
+
position: relative;
|
6
|
+
|
7
|
+
&__content::before {
|
8
|
+
content: '';
|
9
|
+
position: absolute;
|
10
|
+
width: 4px;
|
11
|
+
height: 16px;
|
12
|
+
top: 13px;
|
13
|
+
left: 16px;
|
14
|
+
background: var(--yot-group-color-primary);
|
15
|
+
border-radius: 2px 2px 2px 2px
|
16
|
+
}
|
17
|
+
|
18
|
+
&-title {
|
19
|
+
display: flex;
|
20
|
+
padding: 0px 26px;
|
21
|
+
line-height: 42px;
|
22
|
+
|
23
|
+
&__title-text {
|
24
|
+
font-family: Source Han Sans CN, Source Han Sans CN;
|
25
|
+
font-weight: 550;
|
26
|
+
font-size: 16px;
|
27
|
+
text-align: left;
|
28
|
+
}
|
29
|
+
}
|
30
|
+
|
31
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
export declare const useOSS: () => string;
|
@@ -0,0 +1,11 @@
|
|
1
|
+
import _ from 'lodash';
|
2
|
+
import { useContext } from 'react';
|
3
|
+
import { ConfigContext } from "../config-provider/context";
|
4
|
+
export var useOSS = function useOSS() {
|
5
|
+
var _useContext = useContext(ConfigContext),
|
6
|
+
ossURL = _useContext.ossURL;
|
7
|
+
if (_.isNil(ossURL)) {
|
8
|
+
throw new Error('ossURL is not found');
|
9
|
+
}
|
10
|
+
return ossURL;
|
11
|
+
};
|
package/dist/image/index.scss
CHANGED
@@ -1,27 +1,27 @@
|
|
1
|
-
.yot-image {
|
2
|
-
&-content {
|
3
|
-
display: flex;
|
4
|
-
justify-content: center;
|
5
|
-
align-items: center;
|
6
|
-
background-color: #f5f5f5;
|
7
|
-
border-radius: 4px;
|
8
|
-
position: relative;
|
9
|
-
|
10
|
-
.ant-image-mask-info {
|
11
|
-
display: none;
|
12
|
-
}
|
13
|
-
|
14
|
-
.ant-image-mask::after {
|
15
|
-
content: '';
|
16
|
-
position: absolute;
|
17
|
-
top: 50%;
|
18
|
-
left: 50%;
|
19
|
-
background-image: url('./assets/eye.png');
|
20
|
-
background-repeat: no-repeat;
|
21
|
-
background-size: cover;
|
22
|
-
width: 16px;
|
23
|
-
height: 16px;
|
24
|
-
transform: translate(-50%, -50%);
|
25
|
-
}
|
26
|
-
}
|
1
|
+
.yot-image {
|
2
|
+
&-content {
|
3
|
+
display: flex;
|
4
|
+
justify-content: center;
|
5
|
+
align-items: center;
|
6
|
+
background-color: #f5f5f5;
|
7
|
+
border-radius: 4px;
|
8
|
+
position: relative;
|
9
|
+
|
10
|
+
.ant-image-mask-info {
|
11
|
+
display: none;
|
12
|
+
}
|
13
|
+
|
14
|
+
.ant-image-mask::after {
|
15
|
+
content: '';
|
16
|
+
position: absolute;
|
17
|
+
top: 50%;
|
18
|
+
left: 50%;
|
19
|
+
background-image: url('./assets/eye.png');
|
20
|
+
background-repeat: no-repeat;
|
21
|
+
background-size: cover;
|
22
|
+
width: 16px;
|
23
|
+
height: 16px;
|
24
|
+
transform: translate(-50%, -50%);
|
25
|
+
}
|
26
|
+
}
|
27
27
|
}
|
package/dist/index.d.ts
CHANGED
@@ -158,4 +158,6 @@ export type { UserDropdownProps } from './user-dropdown/types/types';
|
|
158
158
|
export { ConfigProvider } from './config-provider';
|
159
159
|
export type { ConfigProviderProps } from './config-provider';
|
160
160
|
export { Zone } from './zones';
|
161
|
+
export { VideoPlayer } from './video-player';
|
162
|
+
export type { VideoPlayerProps } from './video-player';
|
161
163
|
export type { GetProp, GetProps, GetRef } from './utils/utils';
|
package/dist/index.js
CHANGED
@@ -85,4 +85,5 @@ export { DateRange } from "./date-range";
|
|
85
85
|
export { Teacher } from "./teacher";
|
86
86
|
export { UserDropdown } from "./user-dropdown";
|
87
87
|
export { ConfigProvider } from "./config-provider";
|
88
|
-
export { Zone } from "./zones";
|
88
|
+
export { Zone } from "./zones";
|
89
|
+
export { VideoPlayer } from "./video-player";
|
package/dist/input/index.scss
CHANGED
@@ -1,5 +1,5 @@
|
|
1
|
-
.yot-input {
|
2
|
-
height: 32px;
|
3
|
-
padding-left: var(--ant-padding-sm);
|
4
|
-
padding-right: var(--ant-padding-sm);
|
5
|
-
}
|
1
|
+
.yot-input {
|
2
|
+
height: 32px;
|
3
|
+
padding-left: var(--ant-padding-sm);
|
4
|
+
padding-right: var(--ant-padding-sm);
|
5
|
+
}
|
package/dist/modal/index.scss
CHANGED
@@ -1,65 +1,65 @@
|
|
1
|
-
.yot-modal {
|
2
|
-
padding-top: 13px;
|
3
|
-
position: relative;
|
4
|
-
max-width: calc(2 / 3 * 100vw) !important;
|
5
|
-
|
6
|
-
& > div:first-child {
|
7
|
-
box-sizing: border-box;
|
8
|
-
padding: 4px;
|
9
|
-
background: linear-gradient(180deg, #3a8cff 0%, #c4ddff 100%);
|
10
|
-
border-radius: 24px;
|
11
|
-
}
|
12
|
-
|
13
|
-
.ant-modal-header {
|
14
|
-
width: 100%;
|
15
|
-
position: absolute;
|
16
|
-
left: 0;
|
17
|
-
top: -13px;
|
18
|
-
background-color: transparent;
|
19
|
-
}
|
20
|
-
|
21
|
-
.ant-modal-content {
|
22
|
-
padding: var(--ant-margin-xl);
|
23
|
-
padding-top: 71px;
|
24
|
-
border-radius: 24px;
|
25
|
-
}
|
26
|
-
|
27
|
-
.ant-modal-body {
|
28
|
-
max-height: 529px;
|
29
|
-
overflow-y: auto;
|
30
|
-
}
|
31
|
-
|
32
|
-
.ant-modal-footer {
|
33
|
-
margin-top: 40px;
|
34
|
-
}
|
35
|
-
|
36
|
-
&-title {
|
37
|
-
&-content {
|
38
|
-
width: 100%;
|
39
|
-
display: flex;
|
40
|
-
justify-content: center;
|
41
|
-
align-items: center;
|
42
|
-
|
43
|
-
&__body {
|
44
|
-
position: absolute;
|
45
|
-
color: var(--ant-color-bg-base);
|
46
|
-
font-size: var(--ant-font-size-heading-3);
|
47
|
-
}
|
48
|
-
|
49
|
-
&__icon {
|
50
|
-
.path-1 {
|
51
|
-
fill: var(--yot-modal-color-tertiary);
|
52
|
-
}
|
53
|
-
.path-2 {
|
54
|
-
fill: var(--yot-modal-color-tertiary);
|
55
|
-
}
|
56
|
-
.stop-color-1 {
|
57
|
-
stop-color: var(--yot-modal-color-secondary);
|
58
|
-
}
|
59
|
-
.stop-color-2 {
|
60
|
-
stop-color: var(--yot-modal-color-primary);
|
61
|
-
}
|
62
|
-
}
|
63
|
-
}
|
64
|
-
}
|
65
|
-
}
|
1
|
+
.yot-modal {
|
2
|
+
padding-top: 13px;
|
3
|
+
position: relative;
|
4
|
+
max-width: calc(2 / 3 * 100vw) !important;
|
5
|
+
|
6
|
+
& > div:first-child {
|
7
|
+
box-sizing: border-box;
|
8
|
+
padding: 4px;
|
9
|
+
background: linear-gradient(180deg, #3a8cff 0%, #c4ddff 100%);
|
10
|
+
border-radius: 24px;
|
11
|
+
}
|
12
|
+
|
13
|
+
.ant-modal-header {
|
14
|
+
width: 100%;
|
15
|
+
position: absolute;
|
16
|
+
left: 0;
|
17
|
+
top: -13px;
|
18
|
+
background-color: transparent;
|
19
|
+
}
|
20
|
+
|
21
|
+
.ant-modal-content {
|
22
|
+
padding: var(--ant-margin-xl);
|
23
|
+
padding-top: 71px;
|
24
|
+
border-radius: 24px;
|
25
|
+
}
|
26
|
+
|
27
|
+
.ant-modal-body {
|
28
|
+
max-height: 529px;
|
29
|
+
overflow-y: auto;
|
30
|
+
}
|
31
|
+
|
32
|
+
.ant-modal-footer {
|
33
|
+
margin-top: 40px;
|
34
|
+
}
|
35
|
+
|
36
|
+
&-title {
|
37
|
+
&-content {
|
38
|
+
width: 100%;
|
39
|
+
display: flex;
|
40
|
+
justify-content: center;
|
41
|
+
align-items: center;
|
42
|
+
|
43
|
+
&__body {
|
44
|
+
position: absolute;
|
45
|
+
color: var(--ant-color-bg-base);
|
46
|
+
font-size: var(--ant-font-size-heading-3);
|
47
|
+
}
|
48
|
+
|
49
|
+
&__icon {
|
50
|
+
.path-1 {
|
51
|
+
fill: var(--yot-modal-color-tertiary);
|
52
|
+
}
|
53
|
+
.path-2 {
|
54
|
+
fill: var(--yot-modal-color-tertiary);
|
55
|
+
}
|
56
|
+
.stop-color-1 {
|
57
|
+
stop-color: var(--yot-modal-color-secondary);
|
58
|
+
}
|
59
|
+
.stop-color-2 {
|
60
|
+
stop-color: var(--yot-modal-color-primary);
|
61
|
+
}
|
62
|
+
}
|
63
|
+
}
|
64
|
+
}
|
65
|
+
}
|
@@ -1,47 +1,47 @@
|
|
1
|
-
.yot-pagination {
|
2
|
-
&--small {
|
3
|
-
.ant-pagination-item-active {
|
4
|
-
border-color: var(--ant-color-primary);
|
5
|
-
a {
|
6
|
-
color: var(--ant-color-primary);
|
7
|
-
}
|
8
|
-
}
|
9
|
-
.ant-select-selection-item {
|
10
|
-
color: var(--ant-color-text-secondary);
|
11
|
-
}
|
12
|
-
.ant-pagination-options-quick-jumper {
|
13
|
-
color: var(--ant-color-text-secondary);
|
14
|
-
}
|
15
|
-
.ant-pagination-item-link {
|
16
|
-
color: var(--ant-color-text-secondary);
|
17
|
-
}
|
18
|
-
}
|
19
|
-
|
20
|
-
&--default {
|
21
|
-
.ant-pagination-total-text {
|
22
|
-
color: var(--ant-color-text-secondary);
|
23
|
-
}
|
24
|
-
.ant-pagination-item-active {
|
25
|
-
background-color: var(--ant-color-primary);
|
26
|
-
border-color: var(--ant-color-primary);
|
27
|
-
a {
|
28
|
-
color: var(--ant-color-white);
|
29
|
-
transition: none;
|
30
|
-
}
|
31
|
-
}
|
32
|
-
.ant-pagination-item-active:hover {
|
33
|
-
a {
|
34
|
-
color: var(--ant-color-white);
|
35
|
-
}
|
36
|
-
}
|
37
|
-
.ant-select-selection-item {
|
38
|
-
color: var(--ant-color-text-secondary);
|
39
|
-
}
|
40
|
-
.ant-pagination-options-quick-jumper {
|
41
|
-
color: var(--ant-color-text-secondary);
|
42
|
-
}
|
43
|
-
.ant-pagination-item-link {
|
44
|
-
color: var(--ant-color-text-secondary);
|
45
|
-
}
|
46
|
-
}
|
47
|
-
}
|
1
|
+
.yot-pagination {
|
2
|
+
&--small {
|
3
|
+
.ant-pagination-item-active {
|
4
|
+
border-color: var(--ant-color-primary);
|
5
|
+
a {
|
6
|
+
color: var(--ant-color-primary);
|
7
|
+
}
|
8
|
+
}
|
9
|
+
.ant-select-selection-item {
|
10
|
+
color: var(--ant-color-text-secondary);
|
11
|
+
}
|
12
|
+
.ant-pagination-options-quick-jumper {
|
13
|
+
color: var(--ant-color-text-secondary);
|
14
|
+
}
|
15
|
+
.ant-pagination-item-link {
|
16
|
+
color: var(--ant-color-text-secondary);
|
17
|
+
}
|
18
|
+
}
|
19
|
+
|
20
|
+
&--default {
|
21
|
+
.ant-pagination-total-text {
|
22
|
+
color: var(--ant-color-text-secondary);
|
23
|
+
}
|
24
|
+
.ant-pagination-item-active {
|
25
|
+
background-color: var(--ant-color-primary);
|
26
|
+
border-color: var(--ant-color-primary);
|
27
|
+
a {
|
28
|
+
color: var(--ant-color-white);
|
29
|
+
transition: none;
|
30
|
+
}
|
31
|
+
}
|
32
|
+
.ant-pagination-item-active:hover {
|
33
|
+
a {
|
34
|
+
color: var(--ant-color-white);
|
35
|
+
}
|
36
|
+
}
|
37
|
+
.ant-select-selection-item {
|
38
|
+
color: var(--ant-color-text-secondary);
|
39
|
+
}
|
40
|
+
.ant-pagination-options-quick-jumper {
|
41
|
+
color: var(--ant-color-text-secondary);
|
42
|
+
}
|
43
|
+
.ant-pagination-item-link {
|
44
|
+
color: var(--ant-color-text-secondary);
|
45
|
+
}
|
46
|
+
}
|
47
|
+
}
|
package/dist/school/index.scss
CHANGED
@@ -1,21 +1,21 @@
|
|
1
|
-
.yot-School {
|
2
|
-
border: var(--ant-line-width) var(--ant-line-type) var(--ant-color-border);
|
3
|
-
border-radius: var(--ant-border-radius);
|
4
|
-
&-school-select::after {
|
5
|
-
content: '';
|
6
|
-
position: absolute;
|
7
|
-
right: 0;
|
8
|
-
top: 50%; /* 从中间开始 */
|
9
|
-
width: 1px; /* 边框宽度 */
|
10
|
-
height: 50%; /* 设为盒子高度的百分之五十 */
|
11
|
-
background-color: var(--ant-color-border); /* 边框颜色 */
|
12
|
-
transform: translateY(-50%);
|
13
|
-
}
|
14
|
-
.ant-select.ant-select-outlined.css-var-yootd.ant-select-css-var.ant-select-single.ant-select-allow-clear.ant-select-show-arrow {
|
15
|
-
.ant-select-selector {
|
16
|
-
padding-left: var(--ant-padding);
|
17
|
-
padding-right: var(--ant-padding);
|
18
|
-
border: 0;
|
19
|
-
}
|
20
|
-
}
|
21
|
-
}
|
1
|
+
.yot-School {
|
2
|
+
border: var(--ant-line-width) var(--ant-line-type) var(--ant-color-border);
|
3
|
+
border-radius: var(--ant-border-radius);
|
4
|
+
&-school-select::after {
|
5
|
+
content: '';
|
6
|
+
position: absolute;
|
7
|
+
right: 0;
|
8
|
+
top: 50%; /* 从中间开始 */
|
9
|
+
width: 1px; /* 边框宽度 */
|
10
|
+
height: 50%; /* 设为盒子高度的百分之五十 */
|
11
|
+
background-color: var(--ant-color-border); /* 边框颜色 */
|
12
|
+
transform: translateY(-50%);
|
13
|
+
}
|
14
|
+
.ant-select.ant-select-outlined.css-var-yootd.ant-select-css-var.ant-select-single.ant-select-allow-clear.ant-select-show-arrow {
|
15
|
+
.ant-select-selector {
|
16
|
+
padding-left: var(--ant-padding);
|
17
|
+
padding-right: var(--ant-padding);
|
18
|
+
border: 0;
|
19
|
+
}
|
20
|
+
}
|
21
|
+
}
|
@@ -1,84 +1,84 @@
|
|
1
|
-
export interface PageData<T> {
|
2
|
-
content: T[];
|
3
|
-
page: {
|
4
|
-
number: number;
|
5
|
-
size: number;
|
6
|
-
totalElements: number;
|
7
|
-
totalPages: number;
|
8
|
-
};
|
9
|
-
}
|
10
|
-
// 查询班级参数
|
11
|
-
export interface IQueryClassParams {
|
12
|
-
college_id?: number;
|
13
|
-
major_id?: number;
|
14
|
-
grade_id?: number;
|
15
|
-
}
|
16
|
-
// 查询年级返回的数据类型
|
17
|
-
export interface gradeItem {
|
18
|
-
deptId: number; // 年级ID
|
19
|
-
deptName: string; // 年级别名(如一年级)
|
20
|
-
deptNameShort: string; // 年级名称(如2023级)
|
21
|
-
}
|
22
|
-
// 查询系部和专业返回的数据类型
|
23
|
-
export interface schoolItem {
|
24
|
-
majorId: number; // 学院或者专业ID
|
25
|
-
majorType: number; // 类型:1表示学院2表示专业
|
26
|
-
majorName: string; // 学院或专业名称
|
27
|
-
majorCode?: string; // 学院或专业编码
|
28
|
-
children?: Array<{
|
29
|
-
majorId: number; // 学院或者专业ID
|
30
|
-
majorType: number; // 类型:1表示学院2表示专业
|
31
|
-
majorName: string; // 学院或专业名称
|
32
|
-
majorCode?: string; // 学院或专业编码
|
33
|
-
}>;
|
34
|
-
}
|
35
|
-
export interface classItem {
|
36
|
-
classId: number; // 班级标识
|
37
|
-
gradeId: number; // 年级
|
38
|
-
gradeName: string; // 年级名称
|
39
|
-
className: string; // 班级名称
|
40
|
-
classCode: string; // 班级编号通常2020届在这里表达
|
41
|
-
classPhase: number; // 0普通小学班1普通中学班2职业3大学某专业
|
42
|
-
classHeadteacher?: number; // 班主任
|
43
|
-
classAdviser?: number; // 辅导员
|
44
|
-
classSize?: number; // 学生人数
|
45
|
-
classFaculty?: number; // 院系
|
46
|
-
classLocation?: number; // 位置
|
47
|
-
classCourseNum?: number; // 课程数
|
48
|
-
classMotto?: string; // 班级宣言
|
49
|
-
classEmblem?: string; // 班徽
|
50
|
-
classDesc: string; // 班级描述
|
51
|
-
}
|
52
|
-
// 将系部专业处理成大对象形式的数据类型
|
53
|
-
export interface collegeAndMajorItem {
|
54
|
-
[key: number]: { label: string; value: number }[];
|
55
|
-
}
|
56
|
-
// 接收的onChange参数
|
57
|
-
export interface onChangeParams {
|
58
|
-
collegeId?: number;
|
59
|
-
majorId?: number;
|
60
|
-
}
|
61
|
-
// 年级班级树接口返回的数据类型
|
62
|
-
export interface gradeClassItem {
|
63
|
-
deptId: number;
|
64
|
-
deptName: string;
|
65
|
-
classes: {
|
66
|
-
classId: number;
|
67
|
-
className: string;
|
68
|
-
}[];
|
69
|
-
}
|
70
|
-
type SchoolProps = {
|
71
|
-
type?:
|
72
|
-
| 'collegeMajor'
|
73
|
-
| 'gradeClass'
|
74
|
-
| 'college'
|
75
|
-
| 'major'
|
76
|
-
| 'grade'
|
77
|
-
| 'class';
|
78
|
-
style?: React.CSSProperties;
|
79
|
-
showSearch?: boolean;
|
80
|
-
value?: Record<string, number>;
|
81
|
-
onChange?: (record: Record<string, number | undefined>) => void;
|
82
|
-
allowClear?: boolean;
|
83
|
-
placeholder?: string[];
|
84
|
-
};
|
1
|
+
export interface PageData<T> {
|
2
|
+
content: T[];
|
3
|
+
page: {
|
4
|
+
number: number;
|
5
|
+
size: number;
|
6
|
+
totalElements: number;
|
7
|
+
totalPages: number;
|
8
|
+
};
|
9
|
+
}
|
10
|
+
// 查询班级参数
|
11
|
+
export interface IQueryClassParams {
|
12
|
+
college_id?: number;
|
13
|
+
major_id?: number;
|
14
|
+
grade_id?: number;
|
15
|
+
}
|
16
|
+
// 查询年级返回的数据类型
|
17
|
+
export interface gradeItem {
|
18
|
+
deptId: number; // 年级ID
|
19
|
+
deptName: string; // 年级别名(如一年级)
|
20
|
+
deptNameShort: string; // 年级名称(如2023级)
|
21
|
+
}
|
22
|
+
// 查询系部和专业返回的数据类型
|
23
|
+
export interface schoolItem {
|
24
|
+
majorId: number; // 学院或者专业ID
|
25
|
+
majorType: number; // 类型:1表示学院2表示专业
|
26
|
+
majorName: string; // 学院或专业名称
|
27
|
+
majorCode?: string; // 学院或专业编码
|
28
|
+
children?: Array<{
|
29
|
+
majorId: number; // 学院或者专业ID
|
30
|
+
majorType: number; // 类型:1表示学院2表示专业
|
31
|
+
majorName: string; // 学院或专业名称
|
32
|
+
majorCode?: string; // 学院或专业编码
|
33
|
+
}>;
|
34
|
+
}
|
35
|
+
export interface classItem {
|
36
|
+
classId: number; // 班级标识
|
37
|
+
gradeId: number; // 年级
|
38
|
+
gradeName: string; // 年级名称
|
39
|
+
className: string; // 班级名称
|
40
|
+
classCode: string; // 班级编号通常2020届在这里表达
|
41
|
+
classPhase: number; // 0普通小学班1普通中学班2职业3大学某专业
|
42
|
+
classHeadteacher?: number; // 班主任
|
43
|
+
classAdviser?: number; // 辅导员
|
44
|
+
classSize?: number; // 学生人数
|
45
|
+
classFaculty?: number; // 院系
|
46
|
+
classLocation?: number; // 位置
|
47
|
+
classCourseNum?: number; // 课程数
|
48
|
+
classMotto?: string; // 班级宣言
|
49
|
+
classEmblem?: string; // 班徽
|
50
|
+
classDesc: string; // 班级描述
|
51
|
+
}
|
52
|
+
// 将系部专业处理成大对象形式的数据类型
|
53
|
+
export interface collegeAndMajorItem {
|
54
|
+
[key: number]: { label: string; value: number }[];
|
55
|
+
}
|
56
|
+
// 接收的onChange参数
|
57
|
+
export interface onChangeParams {
|
58
|
+
collegeId?: number;
|
59
|
+
majorId?: number;
|
60
|
+
}
|
61
|
+
// 年级班级树接口返回的数据类型
|
62
|
+
export interface gradeClassItem {
|
63
|
+
deptId: number;
|
64
|
+
deptName: string;
|
65
|
+
classes: {
|
66
|
+
classId: number;
|
67
|
+
className: string;
|
68
|
+
}[];
|
69
|
+
}
|
70
|
+
type SchoolProps = {
|
71
|
+
type?:
|
72
|
+
| 'collegeMajor'
|
73
|
+
| 'gradeClass'
|
74
|
+
| 'college'
|
75
|
+
| 'major'
|
76
|
+
| 'grade'
|
77
|
+
| 'class';
|
78
|
+
style?: React.CSSProperties;
|
79
|
+
showSearch?: boolean;
|
80
|
+
value?: Record<string, number>;
|
81
|
+
onChange?: (record: Record<string, number | undefined>) => void;
|
82
|
+
allowClear?: boolean;
|
83
|
+
placeholder?: string[];
|
84
|
+
};
|