算法评测平台前端。
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

37 lines
1.1 KiB

<% include util %>
<script>
Vue.component('submission-item', {
template: '#submissionItemTemplate',
props: ['data'],
computed: {
statusString: function() {
const data = this.data;
if (data.result) {
return data.result.result;
}
else if (data.running) return 'Running';
else return 'Waiting';
}
}
});
</script>
<script id="submissionItemTemplate" type="text/x-template">
<tr>
<td>#{{ data.taskId }}</td>
<td>#{{ data.problemId }}. {{ data.problemName }}</td>
<td>{{ statusString }}</td>
<template v-if="data.result">
<td>{{ (data.result.score != null && data.result.score !== NaN) ? Math.floor(data.result.score) : '' }}</td>
<td>{{ (data.result.time != null && data.result.time !== NaN) ? data.result.time.toString() + ' ms' : '' }}</td>
<td>{{ (data.result.memory != null && data.result.memory !== NaN) ? data.result.memory.toString() + ' KiB' : '' }}</td>
</template>
<template v-else>
<td /> <td /> <td />
</template>
<td>{{ data.language != null ? data.language + ' / ' : '' }}{{ data.codeSize }}</td>
<td>{{ data.user }}</td>
<td>{{ data.submitTime }}</td>
</tr>
</script>