feat: 自动化加上学生分数大于或小于的trigger

feat: 自动化表格tyle统一
This commit is contained in:
NanGua-QWQ
2026-04-10 22:35:42 +08:00
parent eef6b703f7
commit f2c062f904
7 changed files with 177 additions and 8 deletions
+27 -1
View File
@@ -96,6 +96,8 @@ function AutoScoreManager({ canEdit }: AutoScoreManagerProps): React.JSX.Element
const [editingRuleId, setEditingRuleId] = useState<number | null>(null)
const [currentPage, setCurrentPage] = useState(1)
const [pageSize, setPageSize] = useState(10)
const [batchCurrentPage, setBatchCurrentPage] = useState(1)
const [batchPageSize, setBatchPageSize] = useState(10)
useEffect(() => {
const maxPage = Math.max(1, Math.ceil(rules.length / pageSize))
@@ -104,6 +106,13 @@ function AutoScoreManager({ canEdit }: AutoScoreManagerProps): React.JSX.Element
}
}, [currentPage, pageSize, rules.length])
useEffect(() => {
const maxPage = Math.max(1, Math.ceil(batches.length / batchPageSize))
if (batchCurrentPage > maxPage) {
setBatchCurrentPage(maxPage)
}
}, [batchCurrentPage, batchPageSize, batches.length])
useEffect(() => {
setTriggerTree((prevTree) => normalizeTriggerTree(prevTree, triggerConfig))
}, [triggerConfig])
@@ -584,6 +593,10 @@ function AutoScoreManager({ canEdit }: AutoScoreManagerProps): React.JSX.Element
]
const pagedRules = rules.slice((currentPage - 1) * pageSize, currentPage * pageSize)
const pagedBatches = batches.slice(
(batchCurrentPage - 1) * batchPageSize,
batchCurrentPage * batchPageSize
)
return (
<div style={{ padding: "24px" }}>
@@ -701,11 +714,24 @@ function AutoScoreManager({ canEdit }: AutoScoreManagerProps): React.JSX.Element
<Table
rowKey="id"
columns={batchColumns}
dataSource={batches.slice(0, 50)}
dataSource={pagedBatches}
pagination={false}
tableLayout="fixed"
scroll={{ x: 860 }}
/>
<div style={{ marginTop: 16, textAlign: "right" }}>
<Pagination
current={batchCurrentPage}
pageSize={batchPageSize}
total={batches.length}
showSizeChanger
showTotal={(total) => t("common.total", { count: total })}
onChange={(page, size) => {
setBatchCurrentPage(page)
setBatchPageSize(size)
}}
/>
</div>
</Card>
</div>
)