fix axios.
This commit is contained in:
46
package-lock.json
generated
46
package-lock.json
generated
@@ -12,7 +12,7 @@
|
|||||||
"@monaco-editor/loader": "^1.3.2",
|
"@monaco-editor/loader": "^1.3.2",
|
||||||
"@vueuse/core": "^9.11.0",
|
"@vueuse/core": "^9.11.0",
|
||||||
"@vueuse/integrations": "^9.11.0",
|
"@vueuse/integrations": "^9.11.0",
|
||||||
"axios": "^1.2.3",
|
"axios": "1.2.2",
|
||||||
"copy-text-to-clipboard": "^3.0.1",
|
"copy-text-to-clipboard": "^3.0.1",
|
||||||
"highlight.js": "^11.7.0",
|
"highlight.js": "^11.7.0",
|
||||||
"naive-ui": "^2.34.3",
|
"naive-ui": "^2.34.3",
|
||||||
@@ -1026,9 +1026,9 @@
|
|||||||
"integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
|
"integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
|
||||||
},
|
},
|
||||||
"node_modules/axios": {
|
"node_modules/axios": {
|
||||||
"version": "1.2.3",
|
"version": "1.2.2",
|
||||||
"resolved": "https://registry.npmmirror.com/axios/-/axios-1.2.3.tgz",
|
"resolved": "https://registry.npmmirror.com/axios/-/axios-1.2.2.tgz",
|
||||||
"integrity": "sha512-pdDkMYJeuXLZ6Xj/Q5J3Phpe+jbGdsSzlQaFVkMQzRUL05+6+tetX8TV3p4HrU4kzuO9bt+io/yGQxuyxA/xcw==",
|
"integrity": "sha512-bz/J4gS2S3I7mpN/YZfGFTqhXTYzRho8Ay38w2otuuDR322KzFIWm/4W2K6gIwvWaws5n+mnb7D1lN9uD+QH6Q==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"follow-redirects": "^1.15.0",
|
"follow-redirects": "^1.15.0",
|
||||||
"form-data": "^4.0.0",
|
"form-data": "^4.0.0",
|
||||||
@@ -1585,9 +1585,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/local-pkg": {
|
"node_modules/local-pkg": {
|
||||||
"version": "0.4.2",
|
"version": "0.4.3",
|
||||||
"resolved": "https://registry.npmmirror.com/local-pkg/-/local-pkg-0.4.2.tgz",
|
"resolved": "https://registry.npmmirror.com/local-pkg/-/local-pkg-0.4.3.tgz",
|
||||||
"integrity": "sha512-mlERgSPrbxU3BP4qBqAvvwlgW4MTg78iwJdGGnv7kibKjWcJksrG3t6LB5lXI93wXRDvG4NpUgJFmTG4T6rdrg==",
|
"integrity": "sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=14"
|
"node": ">=14"
|
||||||
@@ -2221,17 +2221,17 @@
|
|||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/unimport": {
|
"node_modules/unimport": {
|
||||||
"version": "1.2.0",
|
"version": "1.3.0",
|
||||||
"resolved": "https://registry.npmmirror.com/unimport/-/unimport-1.2.0.tgz",
|
"resolved": "https://registry.npmmirror.com/unimport/-/unimport-1.3.0.tgz",
|
||||||
"integrity": "sha512-yMok/ubppurBE7Png1QH70Om96AxIoWCcfdxW3J/pziozShMc1UGpPgWpSckfo9ndAO5M74yNnRDdLAZy/gWQg==",
|
"integrity": "sha512-fOkrdxglsHd428yegH0wPH/6IfaSdDeMXtdRGn6en/ccyzc2aaoxiUTMrJyc6Bu+xoa18RJRPMfLUHEzjz8atw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@rollup/pluginutils": "^5.0.2",
|
"@rollup/pluginutils": "^5.0.2",
|
||||||
"escape-string-regexp": "^5.0.0",
|
"escape-string-regexp": "^5.0.0",
|
||||||
"fast-glob": "^3.2.12",
|
"fast-glob": "^3.2.12",
|
||||||
"local-pkg": "^0.4.2",
|
"local-pkg": "^0.4.3",
|
||||||
"magic-string": "^0.27.0",
|
"magic-string": "^0.27.0",
|
||||||
"mlly": "^1.0.0",
|
"mlly": "^1.1.0",
|
||||||
"pathe": "^1.0.0",
|
"pathe": "^1.0.0",
|
||||||
"pkg-types": "^1.0.1",
|
"pkg-types": "^1.0.1",
|
||||||
"scule": "^1.0.0",
|
"scule": "^1.0.0",
|
||||||
@@ -3191,9 +3191,9 @@
|
|||||||
"integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
|
"integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
|
||||||
},
|
},
|
||||||
"axios": {
|
"axios": {
|
||||||
"version": "1.2.3",
|
"version": "1.2.2",
|
||||||
"resolved": "https://registry.npmmirror.com/axios/-/axios-1.2.3.tgz",
|
"resolved": "https://registry.npmmirror.com/axios/-/axios-1.2.2.tgz",
|
||||||
"integrity": "sha512-pdDkMYJeuXLZ6Xj/Q5J3Phpe+jbGdsSzlQaFVkMQzRUL05+6+tetX8TV3p4HrU4kzuO9bt+io/yGQxuyxA/xcw==",
|
"integrity": "sha512-bz/J4gS2S3I7mpN/YZfGFTqhXTYzRho8Ay38w2otuuDR322KzFIWm/4W2K6gIwvWaws5n+mnb7D1lN9uD+QH6Q==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"follow-redirects": "^1.15.0",
|
"follow-redirects": "^1.15.0",
|
||||||
"form-data": "^4.0.0",
|
"form-data": "^4.0.0",
|
||||||
@@ -3616,9 +3616,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"local-pkg": {
|
"local-pkg": {
|
||||||
"version": "0.4.2",
|
"version": "0.4.3",
|
||||||
"resolved": "https://registry.npmmirror.com/local-pkg/-/local-pkg-0.4.2.tgz",
|
"resolved": "https://registry.npmmirror.com/local-pkg/-/local-pkg-0.4.3.tgz",
|
||||||
"integrity": "sha512-mlERgSPrbxU3BP4qBqAvvwlgW4MTg78iwJdGGnv7kibKjWcJksrG3t6LB5lXI93wXRDvG4NpUgJFmTG4T6rdrg==",
|
"integrity": "sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"locate-path": {
|
"locate-path": {
|
||||||
@@ -4103,17 +4103,17 @@
|
|||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"unimport": {
|
"unimport": {
|
||||||
"version": "1.2.0",
|
"version": "1.3.0",
|
||||||
"resolved": "https://registry.npmmirror.com/unimport/-/unimport-1.2.0.tgz",
|
"resolved": "https://registry.npmmirror.com/unimport/-/unimport-1.3.0.tgz",
|
||||||
"integrity": "sha512-yMok/ubppurBE7Png1QH70Om96AxIoWCcfdxW3J/pziozShMc1UGpPgWpSckfo9ndAO5M74yNnRDdLAZy/gWQg==",
|
"integrity": "sha512-fOkrdxglsHd428yegH0wPH/6IfaSdDeMXtdRGn6en/ccyzc2aaoxiUTMrJyc6Bu+xoa18RJRPMfLUHEzjz8atw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@rollup/pluginutils": "^5.0.2",
|
"@rollup/pluginutils": "^5.0.2",
|
||||||
"escape-string-regexp": "^5.0.0",
|
"escape-string-regexp": "^5.0.0",
|
||||||
"fast-glob": "^3.2.12",
|
"fast-glob": "^3.2.12",
|
||||||
"local-pkg": "^0.4.2",
|
"local-pkg": "^0.4.3",
|
||||||
"magic-string": "^0.27.0",
|
"magic-string": "^0.27.0",
|
||||||
"mlly": "^1.0.0",
|
"mlly": "^1.1.0",
|
||||||
"pathe": "^1.0.0",
|
"pathe": "^1.0.0",
|
||||||
"pkg-types": "^1.0.1",
|
"pkg-types": "^1.0.1",
|
||||||
"scule": "^1.0.0",
|
"scule": "^1.0.0",
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
"@monaco-editor/loader": "^1.3.2",
|
"@monaco-editor/loader": "^1.3.2",
|
||||||
"@vueuse/core": "^9.11.0",
|
"@vueuse/core": "^9.11.0",
|
||||||
"@vueuse/integrations": "^9.11.0",
|
"@vueuse/integrations": "^9.11.0",
|
||||||
"axios": "^1.2.3",
|
"axios": "1.2.2",
|
||||||
"copy-text-to-clipboard": "^3.0.1",
|
"copy-text-to-clipboard": "^3.0.1",
|
||||||
"highlight.js": "^11.7.0",
|
"highlight.js": "^11.7.0",
|
||||||
"naive-ui": "^2.34.3",
|
"naive-ui": "^2.34.3",
|
||||||
|
|||||||
@@ -27,7 +27,9 @@ hljs.registerLanguage("go", go)
|
|||||||
:date-locale="dateZhCN"
|
:date-locale="dateZhCN"
|
||||||
:hljs="hljs"
|
:hljs="hljs"
|
||||||
>
|
>
|
||||||
|
<n-notification-provider>
|
||||||
<router-view></router-view>
|
<router-view></router-view>
|
||||||
|
</n-notification-provider>
|
||||||
</n-config-provider>
|
</n-config-provider>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|||||||
1
src/components.d.ts
vendored
1
src/components.d.ts
vendored
@@ -30,6 +30,7 @@ declare module '@vue/runtime-core' {
|
|||||||
NLayoutHeader: typeof import('naive-ui')['NLayoutHeader']
|
NLayoutHeader: typeof import('naive-ui')['NLayoutHeader']
|
||||||
NMenu: typeof import('naive-ui')['NMenu']
|
NMenu: typeof import('naive-ui')['NMenu']
|
||||||
NModal: typeof import('naive-ui')['NModal']
|
NModal: typeof import('naive-ui')['NModal']
|
||||||
|
NNotificationProvider: typeof import('naive-ui')['NNotificationProvider']
|
||||||
NPagination: typeof import('naive-ui')['NPagination']
|
NPagination: typeof import('naive-ui')['NPagination']
|
||||||
NScrollbar: typeof import('naive-ui')['NScrollbar']
|
NScrollbar: typeof import('naive-ui')['NScrollbar']
|
||||||
NSelect: typeof import('naive-ui')['NSelect']
|
NSelect: typeof import('naive-ui')['NSelect']
|
||||||
|
|||||||
@@ -86,3 +86,9 @@ export function submitCode(data: SubmitCodePayload) {
|
|||||||
export function getSubmissions(params: SubmissionListPayload) {
|
export function getSubmissions(params: SubmissionListPayload) {
|
||||||
return http.get("submissions", { params })
|
return http.get("submissions", { params })
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function adminRejudge(id: string) {
|
||||||
|
return http.get("admin/submission/rejudge", {
|
||||||
|
params: { id },
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,5 +1,11 @@
|
|||||||
<script setup lang="ts"></script>
|
<script setup lang="ts">
|
||||||
|
import { DataTableColumn } from "naive-ui"
|
||||||
|
|
||||||
<template>rank list</template>
|
const columns: DataTableColumn[] = []
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<n-data-table :columns="columns" />
|
||||||
|
</template>
|
||||||
|
|
||||||
<style scoped></style>
|
<style scoped></style>
|
||||||
|
|||||||
@@ -10,8 +10,9 @@ import {
|
|||||||
filterEmptyValue,
|
filterEmptyValue,
|
||||||
} from "utils/functions"
|
} from "utils/functions"
|
||||||
import { Submission } from "utils/types"
|
import { Submission } from "utils/types"
|
||||||
import { getSubmissions } from "oj/api"
|
import { adminRejudge, getSubmissions } from "oj/api"
|
||||||
import { isDesktop } from "~/shared/composables/breakpoints"
|
import { isDesktop } from "~/shared/composables/breakpoints"
|
||||||
|
import { useUserStore } from "~/shared/store/user"
|
||||||
|
|
||||||
interface Query {
|
interface Query {
|
||||||
username: string
|
username: string
|
||||||
@@ -23,6 +24,8 @@ interface Query {
|
|||||||
|
|
||||||
const route = useRoute()
|
const route = useRoute()
|
||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
|
const userStore = useUserStore()
|
||||||
|
const notification = useNotification()
|
||||||
|
|
||||||
const submissions = ref([])
|
const submissions = ref([])
|
||||||
const total = ref(0)
|
const total = ref(0)
|
||||||
@@ -85,6 +88,12 @@ function clear() {
|
|||||||
query.result = ""
|
query.result = ""
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async function rejudge(submissionID: string) {
|
||||||
|
await adminRejudge(submissionID)
|
||||||
|
notification.success({ title: "重新判分成功", duration: 2000 })
|
||||||
|
listSubmissions()
|
||||||
|
}
|
||||||
|
|
||||||
watch(() => query.page, routerPush)
|
watch(() => query.page, routerPush)
|
||||||
|
|
||||||
watch(
|
watch(
|
||||||
@@ -102,13 +111,17 @@ watch(
|
|||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
const columns: DataTableColumn<Submission>[] = [
|
const columns = computed(() => {
|
||||||
|
const res: DataTableColumn<Submission>[] = [
|
||||||
{
|
{
|
||||||
title: "提交时间",
|
title: "提交时间",
|
||||||
key: "create_time",
|
key: "create_time",
|
||||||
width: 180,
|
width: 180,
|
||||||
render: (row) =>
|
render: (row) =>
|
||||||
parseTime(row.create_time, isDesktop ? "YYYY-M-D hh:mm:ss" : "M-D hh:mm"),
|
parseTime(
|
||||||
|
row.create_time,
|
||||||
|
isDesktop ? "YYYY-M-D hh:mm:ss" : "M-D hh:mm"
|
||||||
|
),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "编号",
|
title: "编号",
|
||||||
@@ -165,7 +178,21 @@ const columns: DataTableColumn<Submission>[] = [
|
|||||||
render: (row) =>
|
render: (row) =>
|
||||||
h(NButton, { text: true, type: "info" }, () => row.username),
|
h(NButton, { text: true, type: "info" }, () => row.username),
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
|
if (!route.params.contestID && userStore.isSuperAdmin) {
|
||||||
|
res.push({
|
||||||
|
title: "选项",
|
||||||
|
key: "rejudge",
|
||||||
|
render: (row) =>
|
||||||
|
h(
|
||||||
|
NButton,
|
||||||
|
{ size: "small", onClick: () => rejudge(row.id) },
|
||||||
|
() => "重新评分"
|
||||||
|
),
|
||||||
|
})
|
||||||
|
}
|
||||||
|
return res
|
||||||
|
})
|
||||||
</script>
|
</script>
|
||||||
<template>
|
<template>
|
||||||
<n-form :inline="isDesktop" label-placement="left">
|
<n-form :inline="isDesktop" label-placement="left">
|
||||||
|
|||||||
Reference in New Issue
Block a user