diff --git a/packages/ui-default/package.json b/packages/ui-default/package.json index 9cdfaee9f..08b733a52 100644 --- a/packages/ui-default/package.json +++ b/packages/ui-default/package.json @@ -1,6 +1,6 @@ { "name": "@hydrooj/ui-default", - "version": "4.37.19", + "version": "4.37.20", "author": "undefined ", "license": "AGPL-3.0", "main": "hydro.js", diff --git a/packages/ui-default/pages/record_detail.page.styl b/packages/ui-default/pages/record_detail.page.styl index afe6a8fc3..ecbf1c678 100644 --- a/packages/ui-default/pages/record_detail.page.styl +++ b/packages/ui-default/pages/record_detail.page.styl @@ -14,11 +14,15 @@ .col--case, .col--status border-right: 1px solid $table-border-color + + .subtask + background-color: #fff !important + height: rem(30px) + td + padding-top: 0 + padding-bottom: 0 +mobile() - .col--case - display: none - .col--time width: rem(70px) diff --git a/packages/ui-default/templates/record_detail_status.html b/packages/ui-default/templates/record_detail_status.html index bdc4106a2..323f1f730 100644 --- a/packages/ui-default/templates/record_detail_status.html +++ b/packages/ui-default/templates/record_detail_status.html @@ -36,21 +36,37 @@ - {%- for rcdoc in rdoc.testCases|sort(false,false,'id') -%} - - - #{{ rcdoc.id|default(loop.index) }} + {%- for subtaskId,rcdocs in rdoc.testCases|sort(false,false,'id')|groupby('subtaskId') -%} + {% if rcdocs.length != 1 and rcdocs.length != rdoc.testCases.length %} + + + #{{ subtaskId|int|default(0) }} - - - - {{ model.builtin.STATUS_TEXTS[rcdoc['status']] }} - - {{ formatJudgeTexts([rcdoc.message]) if rcdoc.message else '' }} - - {% if rcdoc['status'] == STATUS.STATUS_TIME_LIMIT_EXCEEDED or rcdoc['status'] == STATUS.STATUS_MEMORY_LIMIT_EXCEEDED or rcdoc['status'] == STATUS.STATUS_OUTPUT_LIMIT_EXCEEDED %}≥{% endif %}{{ rcdoc.time|round|int }}ms - {% if rcdoc['status'] == STATUS.STATUS_TIME_LIMIT_EXCEEDED or rcdoc['status'] == STATUS.STATUS_MEMORY_LIMIT_EXCEEDED or rcdoc['status'] == STATUS.STATUS_OUTPUT_LIMIT_EXCEEDED %}≥{% endif %}{{ size(rcdoc.memory, 1024) }} + {% endif %} + {%- for rcdoc in rcdocs -%} + {% if rcdocs.length != 1 %} + + + #{% if rcdocs.length != rdoc.testCases.length %}{{ rcdoc.subtaskId|int|default(0) }}-{% endif %}{{ rcdoc.id|default(loop.index) }} + + {% else %} + + + #{{ rcdoc.subtaskId|int|default(0) }} + + {% endif %} + + + + {{ model.builtin.STATUS_TEXTS[rcdoc['status']] }} + + {{ formatJudgeTexts([rcdoc.message]) if rcdoc.message else '' }} + + {% if rcdoc['status'] == STATUS.STATUS_TIME_LIMIT_EXCEEDED or rcdoc['status'] == STATUS.STATUS_MEMORY_LIMIT_EXCEEDED or rcdoc['status'] == STATUS.STATUS_OUTPUT_LIMIT_EXCEEDED %}≥{% endif %}{{ rcdoc.time|round|int }}ms + {% if rcdoc['status'] == STATUS.STATUS_TIME_LIMIT_EXCEEDED or rcdoc['status'] == STATUS.STATUS_MEMORY_LIMIT_EXCEEDED or rcdoc['status'] == STATUS.STATUS_OUTPUT_LIMIT_EXCEEDED %}≥{% endif %}{{ size(rcdoc.memory, 1024) }} + + {%- endfor -%} {%- endfor -%}