feat(work-results): support historical project outcomes

This commit is contained in:
2026-07-22 00:29:19 +08:00
parent 49189474c1
commit d7664e45a7
26 changed files with 479 additions and 49 deletions
+28
View File
@@ -44,3 +44,31 @@ test('员工与主管成果页都能追溯非文字原始来源', async () => {
assert.match(preview, /previewMedia/);
assert.doesNotMatch(employeePage, /openDocument/);
});
test('员工与主管成果页复用日期选择器查看历史成果且禁止未来日期', async () => {
const [employeePage, supervisorPage, dateSelector, pages] = await Promise.all([
read('../src/pages/user/work-results/index.vue'),
read('../src/pages/supervisor/work-results/index.vue'),
read('../src/components/WorkDateSelector.vue'),
read('../src/pages.json')
]);
assert.match(employeePage, /WorkDateSelector/);
assert.match(supervisorPage, /WorkDateSelector/);
assert.match(employeePage, /:max-date="today"/);
assert.match(supervisorPage, /:max-date="today"/);
assert.match(employeePage, /generateMyWorkResult\(currentProject\.value\.projectCode, workDate\.value\)/);
assert.match(supervisorPage, /getProjectWorkResult\(currentProject\.value\.projectCode, workDate\.value\)/);
assert.match(dateSelector, /mode="date"/);
assert.match(dateSelector, /:end="today"/);
assert.match(dateSelector, /props\.maxDate \|\| currentDate\(\)/);
assert.match(dateSelector, /nextDate > today\.value/);
assert.match(employeePage, /这一天没有已确认的工作记录/);
assert.match(employeePage, /回到今天/);
assert.match(employeePage, /completed: '当日已完成'/);
assert.match(supervisorPage, /当前项目这一天没有已确认的工作记录/);
assert.match(supervisorPage, />记录人数</);
assert.doesNotMatch(supervisorPage, /今日记录人数/);
assert.match(pages, /"navigationBarTitleText": "工作成果"/);
assert.match(pages, /"navigationBarTitleText": "团队工作成果"/);
});