br-dionysus 1.17.6 → 1.18.0
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/README.md +73 -24
- package/attributes.json +1 -1
- package/cypress/component/MSelect.cy.ts +0 -1
- package/cypress/component/MSelectTable.cy.ts +538 -0
- package/cypress/component/MSelectV2.cy.ts +0 -1
- package/cypress/component/MTable.cy.ts +123 -0
- package/cypress/e2e/1-getting-started/todo.cy.js +143 -0
- package/cypress/e2e/2-advanced-examples/actions.cy.js +321 -0
- package/cypress/e2e/2-advanced-examples/aliasing.cy.js +39 -0
- package/cypress/e2e/2-advanced-examples/assertions.cy.js +176 -0
- package/cypress/e2e/2-advanced-examples/connectors.cy.js +98 -0
- package/cypress/e2e/2-advanced-examples/cookies.cy.js +118 -0
- package/cypress/e2e/2-advanced-examples/cypress_api.cy.js +184 -0
- package/cypress/e2e/2-advanced-examples/files.cy.js +85 -0
- package/cypress/e2e/2-advanced-examples/location.cy.js +32 -0
- package/cypress/e2e/2-advanced-examples/misc.cy.js +98 -0
- package/cypress/e2e/2-advanced-examples/navigation.cy.js +55 -0
- package/cypress/e2e/2-advanced-examples/network_requests.cy.js +163 -0
- package/cypress/e2e/2-advanced-examples/querying.cy.js +114 -0
- package/cypress/e2e/2-advanced-examples/spies_stubs_clocks.cy.js +204 -0
- package/cypress/e2e/2-advanced-examples/storage.cy.js +117 -0
- package/cypress/e2e/2-advanced-examples/traversal.cy.js +121 -0
- package/cypress/e2e/2-advanced-examples/utilities.cy.js +107 -0
- package/cypress/e2e/2-advanced-examples/viewport.cy.js +58 -0
- package/cypress/e2e/2-advanced-examples/waiting.cy.js +30 -0
- package/cypress/e2e/2-advanced-examples/window.cy.js +22 -0
- package/cypress/e2e/toolSlotsToData.cy.ts +127 -0
- package/cypress/e2e/toolUniqueByKey.cy.ts +79 -0
- package/cypress/support/component.ts +20 -1
- package/cypress.config.ts +1 -0
- package/dist/br-dionysus.es.js +5872 -5695
- package/dist/br-dionysus.umd.js +6 -5
- package/dist/cypress/component/MInputNumber.cy.d.ts +0 -0
- package/dist/cypress/component/MSelect.cy.d.ts +1 -0
- package/dist/cypress/component/MSelectTable.cy.d.ts +1 -0
- package/dist/cypress/component/MSelectV2.cy.d.ts +1 -0
- package/dist/cypress/component/MTable.cy.d.ts +1 -0
- package/dist/cypress/e2e/spec.cy.d.ts +0 -0
- package/dist/cypress/e2e/toolCheckType.cy.d.ts +1 -0
- package/dist/cypress/e2e/toolCompareStructures.cy.d.ts +1 -0
- package/dist/cypress/e2e/toolCreateHash.cy.d.ts +1 -0
- package/dist/cypress/e2e/toolMoneyFormat.cy.d.ts +1 -0
- package/dist/cypress/e2e/toolSlotsToData.cy.d.ts +1 -0
- package/dist/cypress/e2e/toolUniqueByKey.cy.d.ts +1 -0
- package/dist/cypress/support/commands.d.ts +0 -0
- package/dist/cypress/support/component.d.ts +9 -0
- package/dist/cypress/support/e2e.d.ts +0 -0
- package/dist/index.css +1 -1
- package/dist/packages/Hook/usePackageConfig/usePackageConfig.d.ts +2 -0
- package/dist/packages/MTable/src/MTable.vue.d.ts +49 -15
- package/dist/packages/MTable/src/token.d.ts +13 -0
- package/dist/packages/MTableColumn/src/MTableColumn.vue.d.ts +9 -14
- package/dist/packages/Tool/globalEvents/globalEvents.d.ts +26 -0
- package/dist/packages/index.d.ts +2 -0
- package/mock/ajax/index.ts +48 -0
- package/mock/index.ts +51 -0
- package/mock/interface/enum.ts +4 -0
- package/mock/interface/type.ts +32 -0
- package/mock/mockData/book.ts +48 -0
- package/package.json +4 -2
- package/packages/Hook/usePackageConfig/usePackageConfig.ts +6 -4
- package/packages/Hook/useZIndex/useGlobalZIndex.ts +1 -1
- package/packages/MDialog/src/MDialog.vue +8 -8
- package/packages/MSelectTable/docs/DemoTest1.vue +25 -43
- package/packages/MSelectTable/docs/DemoTest2.vue +25 -43
- package/packages/MSelectTable/docs/DemoTest3.vue +29 -45
- package/packages/MSelectTable/docs/DemoTest4.vue +32 -39
- package/packages/MSelectTable/docs/DemoTest5.vue +37 -50
- package/packages/MSelectTable/docs/DemoTest6.vue +29 -44
- package/packages/MSelectTable/docs/README.md +1 -0
- package/packages/MSelectTable/src/MSelectTable.vue +9 -6
- package/packages/MTable/docs/DemoTest4.vue +0 -1
- package/packages/MTable/docs/DemoTest6.vue +122 -0
- package/packages/MTable/docs/DemoTest7.vue +138 -0
- package/packages/MTable/docs/README.md +10 -10
- package/packages/MTable/docs/demo.vue +10 -2
- package/packages/MTable/src/MBatchEdit.vue +1 -0
- package/packages/MTable/src/MTable.vue +254 -38
- package/packages/MTable/src/token.ts +14 -1
- package/packages/MTableColumn/docs/README.md +1 -0
- package/packages/MTableColumn/src/MTableColumn.vue +98 -24
- package/packages/Tool/globalEvents/README.md +23 -0
- package/packages/Tool/globalEvents/globalEvents.ts +79 -0
- package/packages/Tool/moneyFormat/moneyFormat.ts +2 -1
- package/packages/index.ts +2 -0
- package/packages/typings/global.d.ts +6 -2
- package/tags.json +1 -1
- package/tsconfig.json +3 -1
- package/vite.config.ts +1 -1
- package/web-types.json +1 -1
- package/cypress/screenshots/MSelectTable.cy.ts//344/270/213/346/213/211/350/241/250/346/240/274/351/200/211/346/213/251/345/231/250/347/273/204/344/273/266MSelectTable -- /346/265/213/350/257/225/345/215/225/351/200/211/345/212/237/350/203/275 (failed).png +0 -0
- package/cypress/screenshots/MSelectTable.cy.ts//344/270/213/346/213/211/350/241/250/346/240/274/351/200/211/346/213/251/345/231/250/347/273/204/344/273/266MSelectTable -- /346/265/213/350/257/225/345/237/272/347/241/200/345/212/237/350/203/275 (failed).png +0 -0
- package/cypress/screenshots/MSelectTable.cy.ts//344/270/213/346/213/211/350/241/250/346/240/274/351/200/211/346/213/251/345/231/250/347/273/204/344/273/266MSelectTable -- /346/265/213/350/257/225/345/244/232/351/200/211/345/212/237/350/203/275 (failed).png +0 -0
- package/cypress/screenshots/MSelectTable.cy.ts//344/270/213/346/213/211/350/241/250/346/240/274/351/200/211/346/213/251/345/231/250/347/273/204/344/273/266MSelectTable -- /346/265/213/350/257/225/350/277/234/347/250/213/346/220/234/347/264/242/345/212/237/350/203/275 (failed).png +0 -0
- package/src/global.d.ts +0 -7
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
|
|
39
39
|
<script setup lang="ts">
|
|
40
40
|
import { ref, useSlots, watch, computed } from 'vue'
|
|
41
|
-
import { ElDialog } from 'element-plus'
|
|
41
|
+
// import { ElDialog } from 'element-plus'
|
|
42
42
|
import createHash from '../../Tool/createHash/createHash'
|
|
43
43
|
|
|
44
44
|
const slots = useSlots()
|
|
@@ -213,15 +213,15 @@ watch(
|
|
|
213
213
|
}
|
|
214
214
|
)
|
|
215
215
|
|
|
216
|
-
const dialogRef = ref<
|
|
216
|
+
const dialogRef = ref<any | null>(null)
|
|
217
217
|
|
|
218
218
|
defineExpose({
|
|
219
|
-
open: () => dialogRef?.value
|
|
220
|
-
opened: () => dialogRef?.value
|
|
221
|
-
close: () => dialogRef?.value
|
|
222
|
-
closed: () => dialogRef?.value
|
|
223
|
-
openAutoFocus: () => dialogRef?.value
|
|
224
|
-
closeAutoFocus: () => dialogRef?.value
|
|
219
|
+
open: () => dialogRef?.value?.open,
|
|
220
|
+
opened: () => dialogRef?.value?.opened,
|
|
221
|
+
close: () => dialogRef?.value?.close,
|
|
222
|
+
closed: () => dialogRef?.value?.closed,
|
|
223
|
+
openAutoFocus: () => dialogRef?.value?.openAutoFocus,
|
|
224
|
+
closeAutoFocus: () => dialogRef?.value?.closeAutoFocus
|
|
225
225
|
})
|
|
226
226
|
</script>
|
|
227
227
|
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
v-model="code"
|
|
8
8
|
:tableTitle="commodityOptionsTitle"
|
|
9
9
|
:options="options"
|
|
10
|
-
:keywords="{ label: '
|
|
10
|
+
:keywords="{ label: 'name', value: 'sn' }"
|
|
11
11
|
:total="total"
|
|
12
12
|
scrollbarAlwaysOn
|
|
13
13
|
filterable
|
|
@@ -23,65 +23,47 @@
|
|
|
23
23
|
<script setup lang="ts">
|
|
24
24
|
import { ref } from 'vue'
|
|
25
25
|
import { Page } from './../../typings/class'
|
|
26
|
+
import { getBookList } from '../../../mock'
|
|
27
|
+
import { Book, BookList } from '../../../mock/mockData/book'
|
|
26
28
|
|
|
27
|
-
const commodityOptionsTitle: TableTitle[] = [{
|
|
28
|
-
prop: '
|
|
29
|
-
label: '
|
|
29
|
+
const commodityOptionsTitle: TableTitle<Book>[] = [{
|
|
30
|
+
prop: 'sn',
|
|
31
|
+
label: '编码'
|
|
30
32
|
}, {
|
|
31
|
-
prop: '
|
|
32
|
-
label: '
|
|
33
|
+
prop: 'name',
|
|
34
|
+
label: '书名'
|
|
33
35
|
}, {
|
|
34
|
-
prop: '
|
|
35
|
-
label: '
|
|
36
|
+
prop: 'author',
|
|
37
|
+
label: '作者'
|
|
36
38
|
}, {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
+
// prop: 'address',
|
|
40
|
+
// label: '发行地'
|
|
41
|
+
// }, {
|
|
42
|
+
prop: 'date',
|
|
43
|
+
label: '入库时间'
|
|
39
44
|
}]
|
|
40
45
|
|
|
41
46
|
const code = ref<string>('')
|
|
42
47
|
|
|
43
|
-
const total = ref(0)
|
|
44
|
-
const options = ref<
|
|
45
|
-
interface RowDataType {
|
|
46
|
-
/** 单据类型 */
|
|
47
|
-
PRDocType: string;
|
|
48
|
-
/** 请购单号 */
|
|
49
|
-
DocNo: number;
|
|
50
|
-
/** 名称 */
|
|
51
|
-
ApprovedQtyPU: string;
|
|
52
|
-
/** 货币 */
|
|
53
|
-
ACCode: string;
|
|
54
|
-
}
|
|
55
|
-
const mockData: RowDataType[] = []
|
|
56
|
-
for (let i = 0; i < 1000; i++) {
|
|
57
|
-
mockData.push({
|
|
58
|
-
PRDocType: '测试数据' + (i + 1),
|
|
59
|
-
DocNo: i + 1,
|
|
60
|
-
ApprovedQtyPU: 'ApprovedQtyPU' + (i + 1),
|
|
61
|
-
ACCode: 'ACCode'
|
|
62
|
-
})
|
|
63
|
-
}
|
|
64
|
-
const getData = async (query: string, page: Page) => {
|
|
65
|
-
return new Promise<void>((resolve) => {
|
|
66
|
-
setTimeout(() => {
|
|
67
|
-
const start = (page.currentPage - 1) * page.pageSize
|
|
68
|
-
options.value = mockData.filter(item => item.ApprovedQtyPU.includes(query) || item.PRDocType.includes(query)).slice(start, start + page.pageSize)
|
|
69
|
-
total.value = mockData.length
|
|
70
|
-
resolve()
|
|
71
|
-
}, 500)
|
|
72
|
-
})
|
|
73
|
-
}
|
|
48
|
+
const total = ref<number>(0)
|
|
49
|
+
const options = ref<BookList>([])
|
|
74
50
|
|
|
75
51
|
const selected = (value: string) => {
|
|
76
52
|
console.log(value)
|
|
77
53
|
}
|
|
78
54
|
|
|
79
55
|
const toPage = (page: Page, str: any) => {
|
|
80
|
-
|
|
56
|
+
remoteMethod(str, page)
|
|
81
57
|
}
|
|
82
58
|
|
|
83
59
|
const remoteMethod = async (query: string, page: Page = new Page()) => {
|
|
84
|
-
await
|
|
60
|
+
const res = await getBookList({
|
|
61
|
+
keyword: query,
|
|
62
|
+
page: page.currentPage,
|
|
63
|
+
pageSize: page.pageSize
|
|
64
|
+
})
|
|
65
|
+
options.value = res.data?.rows ?? []
|
|
66
|
+
total.value = res.data?.total ?? 0
|
|
85
67
|
}
|
|
86
68
|
</script>
|
|
87
69
|
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
:name="name"
|
|
10
10
|
:tableTitle="commodityOptionsTitle"
|
|
11
11
|
:options="options"
|
|
12
|
-
:keywords="{ label: '
|
|
12
|
+
:keywords="{ label: 'name', value: 'sn' }"
|
|
13
13
|
:total="total"
|
|
14
14
|
scrollbarAlwaysOn
|
|
15
15
|
filterable
|
|
@@ -25,66 +25,48 @@
|
|
|
25
25
|
<script setup lang="ts">
|
|
26
26
|
import { ref } from 'vue'
|
|
27
27
|
import { Page } from './../../typings/class'
|
|
28
|
+
import { getBookList } from '../../../mock'
|
|
29
|
+
import { Book, BookList } from '../../../mock/mockData/book'
|
|
28
30
|
|
|
29
|
-
const commodityOptionsTitle: TableTitle[] = [{
|
|
30
|
-
prop: '
|
|
31
|
-
label: '
|
|
31
|
+
const commodityOptionsTitle: TableTitle<Book>[] = [{
|
|
32
|
+
prop: 'sn',
|
|
33
|
+
label: '编码'
|
|
32
34
|
}, {
|
|
33
|
-
prop: '
|
|
34
|
-
label: '
|
|
35
|
+
prop: 'name',
|
|
36
|
+
label: '书名'
|
|
35
37
|
}, {
|
|
36
|
-
prop: '
|
|
37
|
-
label: '
|
|
38
|
+
prop: 'author',
|
|
39
|
+
label: '作者'
|
|
38
40
|
}, {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
+
// prop: 'address',
|
|
42
|
+
// label: '发行地'
|
|
43
|
+
// }, {
|
|
44
|
+
prop: 'date',
|
|
45
|
+
label: '入库时间'
|
|
41
46
|
}]
|
|
42
47
|
|
|
43
48
|
const code = ref<string>('')
|
|
44
49
|
const name = ref<string>('这是name')
|
|
45
50
|
|
|
46
|
-
const total = ref(0)
|
|
47
|
-
const options = ref<
|
|
48
|
-
interface RowDataType {
|
|
49
|
-
/** 单据类型 */
|
|
50
|
-
PRDocType: string;
|
|
51
|
-
/** 请购单号 */
|
|
52
|
-
DocNo: number;
|
|
53
|
-
/** 名称 */
|
|
54
|
-
ApprovedQtyPU: string;
|
|
55
|
-
/** 货币 */
|
|
56
|
-
ACCode: string;
|
|
57
|
-
}
|
|
58
|
-
const mockData: RowDataType[] = []
|
|
59
|
-
for (let i = 0; i < 1000; i++) {
|
|
60
|
-
mockData.push({
|
|
61
|
-
PRDocType: '测试数据' + (i + 1),
|
|
62
|
-
DocNo: i + 1,
|
|
63
|
-
ApprovedQtyPU: 'ApprovedQtyPU' + (i + 1),
|
|
64
|
-
ACCode: 'ACCode'
|
|
65
|
-
})
|
|
66
|
-
}
|
|
67
|
-
const getData = async (query: string, page: any) => {
|
|
68
|
-
return new Promise<void>((resolve) => {
|
|
69
|
-
setTimeout(() => {
|
|
70
|
-
const start = (page.currentPage - 1) * page.pageSize
|
|
71
|
-
options.value = mockData.filter(item => item.ApprovedQtyPU.includes(query) || item.PRDocType.includes(query)).slice(start, start + page.pageSize)
|
|
72
|
-
total.value = mockData.length
|
|
73
|
-
resolve()
|
|
74
|
-
}, 500)
|
|
75
|
-
})
|
|
76
|
-
}
|
|
51
|
+
const total = ref<number>(0)
|
|
52
|
+
const options = ref<BookList>([])
|
|
77
53
|
|
|
78
54
|
const selected = (value: string) => {
|
|
79
55
|
console.log(value)
|
|
80
56
|
}
|
|
81
57
|
|
|
82
58
|
const toPage = (page: Page, str: any) => {
|
|
83
|
-
|
|
59
|
+
remoteMethod(str, page)
|
|
84
60
|
}
|
|
85
61
|
|
|
86
62
|
const remoteMethod = async (query: string, page: Page = new Page()) => {
|
|
87
|
-
await
|
|
63
|
+
const res = await getBookList({
|
|
64
|
+
keyword: query,
|
|
65
|
+
page: page.currentPage,
|
|
66
|
+
pageSize: page.pageSize
|
|
67
|
+
})
|
|
68
|
+
options.value = res.data?.rows ?? []
|
|
69
|
+
total.value = res.data?.total ?? 0
|
|
88
70
|
}
|
|
89
71
|
</script>
|
|
90
72
|
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
v-model="code"
|
|
8
8
|
:tableTitle="commodityOptionsTitle"
|
|
9
9
|
:options="options"
|
|
10
|
-
:keywords="{ label: '
|
|
10
|
+
:keywords="{ label: 'name', value: 'sn' }"
|
|
11
11
|
:total="total"
|
|
12
12
|
scrollbarAlwaysOn
|
|
13
13
|
filterable
|
|
@@ -30,47 +30,36 @@
|
|
|
30
30
|
<script setup lang="ts">
|
|
31
31
|
import { ref } from 'vue'
|
|
32
32
|
import { Page } from './../../typings/class'
|
|
33
|
+
import { Book, BookList } from '../../../mock/mockData/book'
|
|
34
|
+
import { getBookList } from '../../../mock'
|
|
33
35
|
|
|
34
|
-
const commodityOptionsTitle: TableTitle[] = [{
|
|
35
|
-
prop: '
|
|
36
|
-
label: '
|
|
36
|
+
const commodityOptionsTitle: TableTitle<Book>[] = [{
|
|
37
|
+
prop: 'sn',
|
|
38
|
+
label: '编码'
|
|
37
39
|
}, {
|
|
38
|
-
prop: '
|
|
39
|
-
label: '
|
|
40
|
+
prop: 'name',
|
|
41
|
+
label: '书名'
|
|
40
42
|
}, {
|
|
41
|
-
prop: '
|
|
42
|
-
label: '
|
|
43
|
+
prop: 'author',
|
|
44
|
+
label: '作者'
|
|
43
45
|
}, {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
+
// prop: 'address',
|
|
47
|
+
// label: '发行地'
|
|
48
|
+
// }, {
|
|
49
|
+
prop: 'date',
|
|
50
|
+
label: '入库时间'
|
|
46
51
|
}]
|
|
47
52
|
|
|
48
53
|
const code = ref<string | number | Array<string | number>>([])
|
|
49
54
|
|
|
50
|
-
const total = ref(0)
|
|
51
|
-
const options = ref<
|
|
52
|
-
const mockData: any[] = []
|
|
53
|
-
for (let i = 0; i < 1000; i++) {
|
|
54
|
-
mockData.push({
|
|
55
|
-
PRDocType: '测试数据' + (i + 1),
|
|
56
|
-
DocNo: i + 1,
|
|
57
|
-
ApprovedQtyPU: 'ApprovedQtyPU' + (i + 1),
|
|
58
|
-
ACCode: 'ACCode'
|
|
59
|
-
})
|
|
60
|
-
}
|
|
55
|
+
const total = ref<number>(0)
|
|
56
|
+
const options = ref<BookList>([])
|
|
61
57
|
|
|
62
58
|
setTimeout(() => {
|
|
63
|
-
options.value = [
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
ACCode: 'xxxACCode1'
|
|
68
|
-
}, {
|
|
69
|
-
PRDocType: 'xxxPRDocType2',
|
|
70
|
-
DocNo: 2,
|
|
71
|
-
ApprovedQtyPU: 'xxxApprovedQtyPU2',
|
|
72
|
-
ACCode: 'xxxACCode2'
|
|
73
|
-
}]
|
|
59
|
+
options.value = [
|
|
60
|
+
{ id: 4, name: '西游记', date: '2023-10-27 14:22:45', author: '吴承恩', address: '中国 江苏', sn: 'sn2310270004' },
|
|
61
|
+
{ id: 5, name: '水浒传', date: '2023-10-28 18:33:02', author: '施耐庵', address: '中国 山东', sn: 'sn2310280005' }
|
|
62
|
+
]
|
|
74
63
|
}, 100)
|
|
75
64
|
|
|
76
65
|
const selected = (value: string | number | Array<number | string>) => {
|
|
@@ -78,30 +67,25 @@ const selected = (value: string | number | Array<number | string>) => {
|
|
|
78
67
|
}
|
|
79
68
|
|
|
80
69
|
const toPage = (page: Page, str: any) => {
|
|
81
|
-
|
|
82
|
-
getData(str, page)
|
|
70
|
+
remoteMethod(str, page)
|
|
83
71
|
}
|
|
84
72
|
const selectMultiple = (value: string | number | Array<number | string>) => {
|
|
85
73
|
code.value = value
|
|
86
74
|
}
|
|
87
75
|
|
|
88
76
|
const remoteMethod = async (query: string, page: Page = new Page()) => {
|
|
89
|
-
await
|
|
77
|
+
const res = await getBookList({
|
|
78
|
+
keyword: query,
|
|
79
|
+
page: page.currentPage,
|
|
80
|
+
pageSize: page.pageSize
|
|
81
|
+
})
|
|
82
|
+
options.value = res.data?.rows ?? []
|
|
83
|
+
total.value = res.data?.total ?? 0
|
|
90
84
|
}
|
|
91
85
|
|
|
92
86
|
const selectChange = (value: string | number | Array<number | string>) => {
|
|
93
87
|
console.log('选择变化事件触发,注意,绑定值没有发生变化', value)
|
|
94
88
|
}
|
|
95
|
-
const getData = async (query: string, page: any) => {
|
|
96
|
-
return new Promise<void>((resolve) => {
|
|
97
|
-
setTimeout(() => {
|
|
98
|
-
const start = (page.currentPage - 1) * page.pageSize
|
|
99
|
-
options.value = mockData.filter(item => item.PRDocType.includes(query)).slice(start, start + page.pageSize)
|
|
100
|
-
total.value = mockData.length
|
|
101
|
-
resolve()
|
|
102
|
-
}, 500)
|
|
103
|
-
})
|
|
104
|
-
}
|
|
105
89
|
</script>
|
|
106
90
|
|
|
107
91
|
<style>
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
v-model="code"
|
|
8
8
|
:tableTitle="commodityOptionsTitle"
|
|
9
9
|
:options="options"
|
|
10
|
-
:keywords="{ label: '
|
|
10
|
+
:keywords="{ label: 'name', value: 'sn' }"
|
|
11
11
|
:total="total"
|
|
12
12
|
scrollbarAlwaysOn
|
|
13
13
|
filterable
|
|
@@ -25,44 +25,42 @@
|
|
|
25
25
|
<script setup lang="ts">
|
|
26
26
|
import { ref, onMounted } from 'vue'
|
|
27
27
|
import { Page } from './../../typings/class'
|
|
28
|
+
import { Book, BookList } from '../../../mock/mockData/book'
|
|
29
|
+
import { getBookList } from '../../../mock'
|
|
28
30
|
|
|
29
|
-
const commodityOptionsTitle: TableTitle[] = [{
|
|
30
|
-
prop: '
|
|
31
|
-
label: '
|
|
31
|
+
const commodityOptionsTitle: TableTitle<Book>[] = [{
|
|
32
|
+
prop: 'sn',
|
|
33
|
+
label: '编码'
|
|
32
34
|
}, {
|
|
33
|
-
prop: '
|
|
34
|
-
label: '
|
|
35
|
+
prop: 'name',
|
|
36
|
+
label: '书名'
|
|
35
37
|
}, {
|
|
36
|
-
prop: '
|
|
37
|
-
label: '
|
|
38
|
-
|
|
38
|
+
prop: 'author',
|
|
39
|
+
label: '作者'
|
|
39
40
|
}, {
|
|
40
|
-
|
|
41
|
-
|
|
41
|
+
// prop: 'address',
|
|
42
|
+
// label: '发行地'
|
|
43
|
+
// }, {
|
|
44
|
+
prop: 'date',
|
|
45
|
+
label: '入库时间'
|
|
42
46
|
}]
|
|
43
47
|
|
|
44
48
|
const code = ref<string | number | Array<string | number>>([])
|
|
45
49
|
|
|
46
|
-
const total = ref(0)
|
|
47
|
-
const options = ref<
|
|
48
|
-
const
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
ApprovedQtyPU: 'ApprovedQtyPU' + (i + 1),
|
|
54
|
-
ACCode: 'ACCode'
|
|
55
|
-
})
|
|
56
|
-
}
|
|
57
|
-
const getDataList = (page: Page = new Page(), str: string = '') => {
|
|
58
|
-
setTimeout(() => {
|
|
59
|
-
options.value = mockData.filter(item => item.PRDocType.includes(str)).slice(0, page.pageSize)
|
|
60
|
-
total.value = mockData.length
|
|
50
|
+
const total = ref<number>(0)
|
|
51
|
+
const options = ref<BookList>([])
|
|
52
|
+
const getDataList = async (page: Page = new Page(), str: string = '') => {
|
|
53
|
+
const res = await getBookList({
|
|
54
|
+
keyword: str,
|
|
55
|
+
page: page.currentPage,
|
|
56
|
+
pageSize: page.pageSize
|
|
61
57
|
})
|
|
58
|
+
options.value = res.data?.rows ?? []
|
|
59
|
+
total.value = res.data?.total ?? 0
|
|
62
60
|
}
|
|
63
61
|
|
|
64
62
|
setTimeout(() => {
|
|
65
|
-
code.value = [
|
|
63
|
+
code.value = ['sn2311080016', 'sn2311090017']
|
|
66
64
|
}, 100)
|
|
67
65
|
|
|
68
66
|
const selected = (value: string | number | Array<number | string>) => {
|
|
@@ -70,25 +68,20 @@ const selected = (value: string | number | Array<number | string>) => {
|
|
|
70
68
|
}
|
|
71
69
|
|
|
72
70
|
const toPage = (page: Page, str: any) => {
|
|
73
|
-
|
|
71
|
+
remoteMethod(str, page)
|
|
74
72
|
}
|
|
75
73
|
const selectMultiple = (value: string | number | Array<number | string>) => {
|
|
76
74
|
code.value = value
|
|
77
75
|
}
|
|
78
76
|
|
|
79
77
|
const remoteMethod = async (query: string, page: Page = new Page()) => {
|
|
80
|
-
await
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
return new Promise<void>((resolve) => {
|
|
85
|
-
setTimeout(() => {
|
|
86
|
-
const start = (page.currentPage - 1) * page.pageSize
|
|
87
|
-
options.value = mockData.filter(item => item.PRDocType.includes(query)).slice(start, start + page.pageSize)
|
|
88
|
-
total.value = mockData.length
|
|
89
|
-
resolve()
|
|
90
|
-
}, 500)
|
|
78
|
+
const res = await getBookList({
|
|
79
|
+
keyword: query,
|
|
80
|
+
page: page.currentPage,
|
|
81
|
+
pageSize: page.pageSize
|
|
91
82
|
})
|
|
83
|
+
options.value = res.data?.rows ?? []
|
|
84
|
+
total.value = res.data?.total ?? 0
|
|
92
85
|
}
|
|
93
86
|
|
|
94
87
|
onMounted(() => {
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
v-model="code"
|
|
8
8
|
:tableTitle="commodityOptionsTitle"
|
|
9
9
|
:options="options"
|
|
10
|
-
:keywords="{ label: '
|
|
10
|
+
:keywords="{ label: 'name', value: 'sn' }"
|
|
11
11
|
:total="total"
|
|
12
12
|
scrollbarAlwaysOn
|
|
13
13
|
filterable
|
|
@@ -25,54 +25,46 @@
|
|
|
25
25
|
<script setup lang="ts">
|
|
26
26
|
import { ref, onMounted } from 'vue'
|
|
27
27
|
import { Page } from './../../typings/class'
|
|
28
|
+
import { Book, BookList } from '../../../mock/mockData/book'
|
|
29
|
+
import { getBookList } from '../../../mock'
|
|
28
30
|
|
|
29
|
-
const commodityOptionsTitle: TableTitle[] = [{
|
|
30
|
-
prop: '
|
|
31
|
-
label: '
|
|
31
|
+
const commodityOptionsTitle: TableTitle<Book>[] = [{
|
|
32
|
+
prop: 'sn',
|
|
33
|
+
label: '编码'
|
|
32
34
|
}, {
|
|
33
|
-
prop: '
|
|
34
|
-
label: '
|
|
35
|
+
prop: 'name',
|
|
36
|
+
label: '书名'
|
|
35
37
|
}, {
|
|
36
|
-
prop: '
|
|
37
|
-
label: '
|
|
38
|
-
|
|
38
|
+
prop: 'author',
|
|
39
|
+
label: '作者'
|
|
39
40
|
}, {
|
|
40
|
-
|
|
41
|
-
|
|
41
|
+
// prop: 'address',
|
|
42
|
+
// label: '发行地'
|
|
43
|
+
// }, {
|
|
44
|
+
prop: 'date',
|
|
45
|
+
label: '入库时间'
|
|
42
46
|
}]
|
|
43
47
|
|
|
44
|
-
const code = ref<string | number | Array<string | number>>([
|
|
48
|
+
const code = ref<string | number | Array<string | number>>(['sn2310240001', 'sn2310250002'])
|
|
45
49
|
|
|
46
|
-
const total = ref(0)
|
|
47
|
-
const options = ref<
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
ACCode: 'ACCode'
|
|
55
|
-
})
|
|
56
|
-
}
|
|
57
|
-
const getDataList = (page: Page = new Page(), str: string = '') => {
|
|
58
|
-
setTimeout(() => {
|
|
59
|
-
options.value = mockData.filter(item => item.PRDocType.includes(str)).slice(0, page.pageSize)
|
|
60
|
-
total.value = mockData.length
|
|
50
|
+
const total = ref<number>(0)
|
|
51
|
+
const options = ref<BookList>([])
|
|
52
|
+
|
|
53
|
+
const getDataList = async (page: Page = new Page(), str: string = '') => {
|
|
54
|
+
const res = await getBookList({
|
|
55
|
+
keyword: str,
|
|
56
|
+
page: page.currentPage,
|
|
57
|
+
pageSize: page.pageSize
|
|
61
58
|
})
|
|
59
|
+
options.value = res.data?.rows ?? []
|
|
60
|
+
total.value = res.data?.total ?? 0
|
|
62
61
|
}
|
|
63
62
|
|
|
64
63
|
setTimeout(() => {
|
|
65
|
-
options.value = [
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
ACCode: 'xxxACCode1'
|
|
70
|
-
}, {
|
|
71
|
-
PRDocType: 'xxxPRDocType2',
|
|
72
|
-
DocNo: 2,
|
|
73
|
-
ApprovedQtyPU: 'xxxApprovedQtyPU2',
|
|
74
|
-
ACCode: 'xxxACCode2'
|
|
75
|
-
}]
|
|
64
|
+
options.value = [
|
|
65
|
+
{ id: 4, name: '西游记', date: '2023-10-27 14:22:45', author: '吴承恩', address: '中国 江苏', sn: 'sn2310270004' },
|
|
66
|
+
{ id: 5, name: '水浒传', date: '2023-10-28 18:33:02', author: '施耐庵', address: '中国 山东', sn: 'sn2310280005' }
|
|
67
|
+
]
|
|
76
68
|
}, 100)
|
|
77
69
|
|
|
78
70
|
const selected = (value: string | number | Array<number | string>) => {
|
|
@@ -80,25 +72,20 @@ const selected = (value: string | number | Array<number | string>) => {
|
|
|
80
72
|
}
|
|
81
73
|
|
|
82
74
|
const toPage = (page: Page, str: any) => {
|
|
83
|
-
|
|
75
|
+
remoteMethod(str, page)
|
|
84
76
|
}
|
|
85
77
|
const selectMultiple = (value: string | number | Array<number | string>) => {
|
|
86
78
|
code.value = value
|
|
87
79
|
}
|
|
88
80
|
|
|
89
81
|
const remoteMethod = async (query: string, page: Page = new Page()) => {
|
|
90
|
-
await
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
return new Promise<void>((resolve) => {
|
|
95
|
-
setTimeout(() => {
|
|
96
|
-
const start = (page.currentPage - 1) * page.pageSize
|
|
97
|
-
options.value = mockData.filter(item => item.PRDocType.includes(query)).slice(start, start + page.pageSize)
|
|
98
|
-
total.value = mockData.length
|
|
99
|
-
resolve()
|
|
100
|
-
}, 500)
|
|
82
|
+
const res = await getBookList({
|
|
83
|
+
keyword: query,
|
|
84
|
+
page: page.currentPage,
|
|
85
|
+
pageSize: page.pageSize
|
|
101
86
|
})
|
|
87
|
+
options.value = res.data?.rows ?? []
|
|
88
|
+
total.value = res.data?.total ?? 0
|
|
102
89
|
}
|
|
103
90
|
|
|
104
91
|
onMounted(() => {
|