如何按组件为 Trac 报告中的票证着色?
How to color tickets in a Trac report by component?
在 Trac (1.2) 中,我想创建一个报告,其中所有工单按修改时间排序,其中颜色应指示组件(或是否已关闭)。
我假设通过 component
设置 __color__
可以解决问题,但是接下来的报告显示所有有效票证为白色:
SELECT
DISTINCT
component AS __color__,
(CASE status
WHEN 'closed' THEN 'color: #777; background: #ddd; border-color: #ccc;'
END) AS __style__,
id AS ticket, summary, component, milestone, status, resolution,
t.time AS created, changetime AS modified,
priority AS _priority, reporter AS _reporter, cc AS _cc
FROM ticket t
LEFT JOIN enum p ON p.name = t.priority AND p.type = 'priority'
LEFT JOIN ticket_change tc ON id = tc.ticket
ORDER BY
changetime DESC
如何根据工单所指的组件更改颜色?
__color__
只能用于值为 1 到 5 的枚举,请参阅 documentation。你可以这样做:
(CASE component
WHEN 'component1' THEN 'background: #ff5733;'
WHEN 'component2' THEN 'background: #3339ff;'
WHEN 'component3' THEN 'background: #e9ff33;'
END) AS __style__,
受@RjOllos 回答的启发,我选择使用 case 语句设置 __color__
:
(CASE component
WHEN 'COMPONENT1' THEN 1
WHEN 'COMPONENT2' THEN 2
WHEN 'COMPONENT3a' THEN 4
WHEN 'COMPONENT3b' THEN 4
WHEN 'COMPONENT4' THEN 5
ELSE 3
END) AS __color__,
这样做的好处是各行的颜色保持交替。
在 Trac (1.2) 中,我想创建一个报告,其中所有工单按修改时间排序,其中颜色应指示组件(或是否已关闭)。
我假设通过 component
设置 __color__
可以解决问题,但是接下来的报告显示所有有效票证为白色:
SELECT
DISTINCT
component AS __color__,
(CASE status
WHEN 'closed' THEN 'color: #777; background: #ddd; border-color: #ccc;'
END) AS __style__,
id AS ticket, summary, component, milestone, status, resolution,
t.time AS created, changetime AS modified,
priority AS _priority, reporter AS _reporter, cc AS _cc
FROM ticket t
LEFT JOIN enum p ON p.name = t.priority AND p.type = 'priority'
LEFT JOIN ticket_change tc ON id = tc.ticket
ORDER BY
changetime DESC
如何根据工单所指的组件更改颜色?
__color__
只能用于值为 1 到 5 的枚举,请参阅 documentation。你可以这样做:
(CASE component
WHEN 'component1' THEN 'background: #ff5733;'
WHEN 'component2' THEN 'background: #3339ff;'
WHEN 'component3' THEN 'background: #e9ff33;'
END) AS __style__,
受@RjOllos 回答的启发,我选择使用 case 语句设置 __color__
:
(CASE component
WHEN 'COMPONENT1' THEN 1
WHEN 'COMPONENT2' THEN 2
WHEN 'COMPONENT3a' THEN 4
WHEN 'COMPONENT3b' THEN 4
WHEN 'COMPONENT4' THEN 5
ELSE 3
END) AS __color__,
这样做的好处是各行的颜色保持交替。