<%*
const projectName = await tp.system.prompt("请输入项目名称");
if (!projectName) {
  throw new Error("未输入项目名称");
}
const safeProjectName = projectName.replace(/[\\\\/:*?\"<>|]/g, "-").trim();
await tp.file.move("4.Projects/I.projects/" + safeProjectName);
-%>
---
project: <% projectName %>
type: main-project
priority: high
status:
  - 进行中
tags:
  - project
description: 简介描述
start-date: <% tp.date.now("YYYY-MM-DD") %>
end-date:
---

# <% projectName %>
## task执行表
```dataview
TABLE
  completion as "完成度",
  mood as "心情",
  date as "日期",
  详情 as "详情"
FROM "4.Projects/II.tasks"
WHERE project = "<% projectName %>"
SORT seq DESC
```

## 任务

### 未完成任务
```dataview
TASK
FROM "4.Projects/I.projects/<% projectName %>"
WHERE !completed
```
### 主要任务

### 暂缓任务


## 统计

### 进度统计
```dataviewjs
const tasks = dv.pages('"4.Projects/II.tasks"')
  .where(p => p.project === "<% projectName %>");

const total = tasks.length;
const avgCompletion = tasks.array()
  .reduce((sum, t) => sum + (t.completion || 0), 0) / total;

dv.paragraph(`
**总任务数**: ${total}  
**平均完成度**: ${avgCompletion.toFixed(1)}/10  
**本周任务**: ${tasks.where(t => {
  const weekAgo = dv.date('now').minus({days: 7});
  return t.date >= weekAgo;
}).length}
`);
```