feat: 任务列表显示店铺名和执行用时 (#136)
This commit is contained in:
+27
-12
@@ -67,12 +67,15 @@ class TaskRow:
|
||||
task_type: str
|
||||
goods_id: str = ""
|
||||
title: str = ""
|
||||
shop_name: str = ""
|
||||
color: str = ""
|
||||
size: str = ""
|
||||
price_cents: Optional[int] = None
|
||||
price_is_starting: bool = False
|
||||
quantity: Optional[int] = None
|
||||
status: str = "待执行"
|
||||
latest_run_status: str = ""
|
||||
duration_seconds: Optional[int] = None
|
||||
updated_at: str = ""
|
||||
|
||||
|
||||
@@ -86,11 +89,13 @@ class TaskTableModel(QAbstractTableModel):
|
||||
"选择",
|
||||
"任务类型",
|
||||
"商品标题",
|
||||
"店铺名",
|
||||
"颜色",
|
||||
"尺码",
|
||||
"价格",
|
||||
"数量",
|
||||
"状态",
|
||||
"用时",
|
||||
"更新时间",
|
||||
)
|
||||
|
||||
@@ -133,9 +138,9 @@ class TaskTableModel(QAbstractTableModel):
|
||||
return self._display_value(task, column)
|
||||
|
||||
if role == Qt.TextAlignmentRole:
|
||||
if column in (0, 1, 7):
|
||||
if column in (0, 1, 8, 9):
|
||||
return Qt.AlignCenter
|
||||
if column in (5, 6):
|
||||
if column in (6, 7):
|
||||
return Qt.AlignRight | Qt.AlignVCenter
|
||||
return Qt.AlignLeft | Qt.AlignVCenter
|
||||
|
||||
@@ -367,19 +372,27 @@ class TaskTableModel(QAbstractTableModel):
|
||||
if column == 2:
|
||||
return task.title or "尚未获取标题"
|
||||
if column == 3:
|
||||
return task.color or "—"
|
||||
return task.shop_name or "—"
|
||||
if column == 4:
|
||||
return task.size or "—"
|
||||
return task.color or "—"
|
||||
if column == 5:
|
||||
return task.size or "—"
|
||||
if column == 6:
|
||||
if task.price_cents is None:
|
||||
return "—"
|
||||
suffix = " 起" if task.price_is_starting else ""
|
||||
return f"¥{task.price_cents / 100:.2f}{suffix}"
|
||||
if column == 6:
|
||||
return "—" if task.quantity is None else str(task.quantity)
|
||||
if column == 7:
|
||||
return task.status
|
||||
return "—" if task.quantity is None else str(task.quantity)
|
||||
if column == 8:
|
||||
return task.status
|
||||
if column == 9:
|
||||
if task.latest_run_status == "running":
|
||||
return "进行中"
|
||||
if task.duration_seconds is None:
|
||||
return "—"
|
||||
return f"{max(0, task.duration_seconds)} 秒"
|
||||
if column == 10:
|
||||
return task.updated_at or "—"
|
||||
return ""
|
||||
|
||||
@@ -567,11 +580,13 @@ class PDDTaskPage(QWidget):
|
||||
self.taskTable.setColumnWidth(0, 64)
|
||||
self.taskTable.setColumnWidth(1, 82)
|
||||
self.taskTable.setColumnWidth(3, 108)
|
||||
self.taskTable.setColumnWidth(4, 82)
|
||||
self.taskTable.setColumnWidth(5, 96)
|
||||
self.taskTable.setColumnWidth(6, 70)
|
||||
self.taskTable.setColumnWidth(7, 116)
|
||||
self.taskTable.setColumnWidth(8, 156)
|
||||
self.taskTable.setColumnWidth(4, 108)
|
||||
self.taskTable.setColumnWidth(5, 82)
|
||||
self.taskTable.setColumnWidth(6, 96)
|
||||
self.taskTable.setColumnWidth(7, 70)
|
||||
self.taskTable.setColumnWidth(8, 116)
|
||||
self.taskTable.setColumnWidth(9, 82)
|
||||
self.taskTable.setColumnWidth(10, 156)
|
||||
self.taskTable.viewport().installEventFilter(self)
|
||||
|
||||
self.emptyStateCard = CardWidget(self)
|
||||
|
||||
Reference in New Issue
Block a user