ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

OpenProject 13.0.0 全面解析:基线对比、Nextcloud 项目文件夹、PDF 工作计划导出与 iCalendar 订阅

OpenProject 13.0.0 全面解析:基线对比、Nextcloud 项目文件夹、PDF 工作计划导出与 iCalendar 订阅 OpenProject 13.0.0 全面解析基线对比、Nextcloud 项目文件夹、PDF 工作计划导出与 iCalendar 订阅【免费下载链接】openprojectOpenProject is the leading open source project management software for product, project and portfolio management. A powerful Jira alternative with agile planning, issue tracking, roadmaps, Gantt charts, time tracking, collaboration features, and more. Available on premises or in the cloud. ⭐ Star us on GitHub项目地址: https://gitcode.com/GitHub_Trending/op/openproject本文基于 OpenProject 13.0.0 官方发布说明发布于 2023-08-21结合本仓库源码系统讲解该版本七大核心功能与大量改进Baseline 基线对比、Nextcloud 项目文件夹自动权限管理、PDF 工作计划导出、iCalendar 日历订阅、全局模块索引页、时间跟踪按钮与多选自定义字段开放给社区版并附底层实现佐证帮助你在升级后快速上手。版本概览与升级建议OpenProject 13.0.0 是 2023 年 8 月 21 日发布的重大版本详见 发布说明原文带来了大量新功能、协作增强与缺陷修复。本版本的核心亮点集中在Baseline 基线对比在任意工作包Work package表格视图中对比不同时间点的项目变化快速掌握项目进度与状态Nextcloud 项目文件夹自动为项目在 Nextcloud 中创建文件夹、自动管理成员权限并支持项目模板预置文件夹结构与文件模板PDF 工作计划导出基于可定制的工作包表格生成带封面、目录、页眉表格的专业项目报告iCalendar 日历订阅通过 URL 将 OpenProject 日历含工作包与里程碑订阅到 Thunderbird、Apple 日历、Google 日历等个人日历全局模块索引页新增全局菜单在项目之上统一浏览工作包、看板、团队规划器、会议等模块时间跟踪按钮在工作包上一键启动/停止计时并记录工时多选自定义字段进入社区版免费 Community 版即可配置多选自定义字段。此外该版本还包含了大量针对安装支持、错误修复和体验优化的改动如新增对 RHEL 9、CentOS 9、Debian 12 打包安装的支持。官方建议所有用户升级到最新版本。Baseline 基线对比追踪项目一段时间内的变化Enterprise 附加功能功能定位与使用场景Baseline 对比让用户快速了解项目在特定时间段内发生了什么变化。启用工作包表格的 Baseline 后视图中所有变更都会相对于某个时间段、某个具体日期或两个日期之间的时间范围显示变更会被高亮标记用户可以直观看到哪些工作包被更新、新增或移除从而方便地汇报项目进展与状态。版本差异Community 版与 Enterprise 版能力版本归属Show changes since Yesterday显示自昨日以来的变化Community 免费版对比特定时间段 / 特定日期 / 两个日期之间Enterprise 附加功能仅限 Enterprise 云版或本地版前端实现时间戳驱动的基线过滤从源码结构看Baseline 功能由前端wp-baseline模块驱动核心组件位于 baseline.component.ts。该组件支持如下可选基线值选项值语义oneDayAgo昨日lastWorkingDay上一个工作日oneWeekAgo上周oneMonthAgo上个月aSpecificDate指定日期betweenTwoSpecificDates两个指定日期之间基线选择会转换为时间戳数组传递给后端查询。在 buildBaselineFilter() 方法中可以看到其拼接逻辑相对时间如oneDayAgo、lastWorkingDay、oneWeekAgo、oneMonthAgo生成形如oneDayAgo08:0002:00的过滤串绝对时间aSpecificDate/betweenTwoSpecificDates生成形如2023-08-20T08:0002:00的 ISO 时间戳默认状态使用DEFAULT_TIMESTAMP即当前。private buildBaselineFilter():string[] { switch (this.selectedFilter) { case oneDayAgo: case oneWeekAgo: case oneMonthAgo: case lastWorkingDay: return [this.buildFilterString(0), DEFAULT_TIMESTAMP]; case aSpecificDate: return [this.buildISOString(0), DEFAULT_TIMESTAMP]; case betweenTwoSpecificDates: return [this.buildISOString(0), this.buildISOString(1)]; default: return [DEFAULT_TIMESTAMP]; } }值得注意的实现细节用户时区处理组件通过TimezoneService获取当前用户时区并将本地时间转换为带 UTC 偏移的字符串确保不同时区的用户看到一致的基线结果非工作日感知lastWorkingDay选项通过WeekdayService与DayResourceService计算能自动跳过非工作日企业版校验available this.Banner.allowsTo(baseline_comparison)表明超出 Community 免费范围的对比模式由企业版横幅Banner服务统一控制。相关修复与已知边界13.0.0 修复了多个与 Baseline 相关的问题包括非企业版报错Timestamps contain forbidden values: oneDayAgo#48566、启用 Baseline 时在 GitHub 标签页打开工作包引发内部错误#48362、从自定义视图切换到内置视图未重置基线#49410、Baseline 模式下自定义操作按钮报错#49588等。可见该功能与查询系统、自定义视图、自定义操作存在深度耦合。Nextcloud 项目文件夹自动管理的权限与模板文件夹核心能力OpenProject 13.0 增强了 Nextcloud 集成引入项目文件夹Project folders机制为项目在 Nextcloud 中自动创建以 OpenProject 项目命名的文件夹自动向所有项目成员授予该文件夹的访问权限支持用预定义的文件夹结构和文档模板搭建项目模板链接到工作包的文件在复制时会同步更新项目管理员可在手动管理与自动管理两种模式之间选择。底层实现自动管理契约与服务在仓库中该功能由modules/storages模块承载。自动管理Automatic Management of Project Folders简称 AMPF的校验逻辑位于 automatic_management_contract.rb启用自动管理时必须提供username与password用于应用凭据验证见NextcloudApplicationCredentialsValidator未启用自动管理时用户名与密码必须为空除非使用默认存储用户名避免残留无效凭据校验器仅在NextcloudStorage类型上生效nextcloud_storage?检查。权限与文件夹生命周期管理则分布在多个服务中例如 SharePoint 提供商的 create_managed_folders_service.rb 与 set_permissions_on_managed_folders_service.rb。从 13.0.0 的变更列表可以看出自动文件夹的完整生命周期闭环创建项目管理员配置新存储时同步创建项目文件夹#46328权限修复自动修复项目文件夹缺失或错误的权限#46329成员导向项目成员从 OpenProject 直接跳转到项目文件夹#46318 / #46242删除项目删除、存储删除或项目归档时同步删除项目文件夹#49228 / #49229 / #49234健康状态提供项目文件夹健康状态监控#49397并在存储停用时显示危险区Danger zone警示#48413归档处理项目归档后隐藏自动管理的项目文件夹#49579。配置建议在管理后台配置 Nextcloud 存储时若选择自动管理项目文件夹请确保填写的 Nextcloud 用户名具有在目标目录创建文件夹与设置共享权限的足够权限密码保存在 OpenProject 存储配置中仅用于应用凭据验证结合项目模板使用先在模板项目中预置文件夹结构与文件模板再基于模板创建新项目即可自动复制结构与链接。PDF 导出生成最新且格式规范的工作计划新导出能力13.0 重写了 PDF 导出显著提升项目报告质量可基于工作包表格生成结构清晰、排版美观的工作计划报告基于可定制的工作包表格可调整筛选与列以匹配项目需求包含页眉表格展示由工作包表格筛选条件定义的属性及其详细描述包含封面页与目录目录中的条目可链接回 OpenProject 中的工作包支持自定义 Logo、汇总表Sums table、三级目录缩进PDF 文件名携带相关筛选属性页脚包含导出时间。本版本的细节打磨从 13.0.0 的变更与修复列表可以看到导出链路的大量细节优化汇总表Sums table完善#48420 / #49690修复只显示总和问题支持自定义 Logo#48421目录中的主题行不再是链接与章节编号保持一致#48504长查询标题在页脚中的管理#48647筛选属性表#48649、文件名相关属性#48652、页脚导出时间#48653封面页#48857修复空表格导出失败#49607、描述中 HTML 表格导出#49425、图片未导出#49692等问题。使用建议导出前先在对应工作包表格视图中完成列、筛选、分组配置再通过工具栏导出菜单选择 PDF 工作计划。若表格为空或包含复杂富文本描述建议升级后先验证导出是否正常相关缺陷已在 13.0.0 中修复。通过 URL 订阅日历iCalendar 格式功能概述现在你可以把 OpenProject 中所有重要工作包与里程碑的日历集成到个人日历中通过 URL 订阅 OpenProject 日历并导入到任何支持 iCalendar 格式的日历应用如Thunderbird、Open-Xchange、Apple 日历或 Google 日历。实现原理令牌化订阅 URL日历订阅功能由modules/calendar模块实现。从 generate_ical_url_service.rb 可以看到完整的 URL 生成链路def create_ical_token(query_id) query Query.find(query_id) Token::ICal.create(user: params.fetch(:user), ical_token_query_assignment_attributes: { query:, name: params.fetch(:token_name) }) end def create_ical_url(query_id, ical_token) OpenProject::StaticRouting::StaticRouter.new.url_helpers .ical_project_calendar_url(id: query_id, project_id: params.fetch(:project_id), ical_token:) end要点解析每次订阅都会为当前查询Query创建一个新的Token::ICal令牌并与查询绑定ical_token_query_assignment生成的订阅 URL 形如/projects/:project_id/calendar/ical?id...ical_token...API 侧入口 query_ical_url_api.rb 要求Setting.ical_enabled?为真且用户具备share_via_ical权限否则返回 401令牌可用于外部日历反复拉取数据无需暴露 OpenProject 登录凭据。操作步骤在 OpenProject 中打开日历或对应查询视图选择订阅iCalendar选项为订阅命名token_name复制生成的 URL在 Thunderbird / Apple 日历 / Google 日历等支持 iCalendar 的客户端中添加URL 订阅并粘贴日历客户端将周期性拉取最新工作包与里程碑信息。管理端注意日历相关设置已在 13.0 中被重新组织归并#47341便于统一管理 iCalendar 开关ical_enabled。全局模块索引页跨项目统一视图新全局菜单13.0 新增全局菜单在项目之上提供一个项目级project-overarching的概览覆盖工作包、看板、团队规划器、会议等全局模块。你可以直接在这些全局页面创建新元素并分配到具体项目无需先进入项目。演进脉络Epic 列表为会议、看板、团队规划器与日历新增全局索引页#47850为全局模块新增全局侧边栏会议、团队规划器、看板、工作包、新闻、成本与日历#48142支持在项目之外从全局索引页创建会议、团队规划器与看板#48160修复按项目排序全局会议索引页时的 500 错误#49585。使用场景适合在多项目管理场景下集中查看所有项目的会议安排所有项目的看板等避免逐个进入项目查找也能在全局页面上发起创建再指定归属项目。时间跟踪按钮一键记录工时使用方式工作包详情页新增时间跟踪按钮操作流程如下点击工作包上的计时按钮 → 开始计时顶部导航栏中的头像会显示活跃的时间跟踪状态再次点击按钮 → 停止计时并弹出记录本次工时的表单。相关细节自动时间跟踪启动/停止按钮由 Epic #48641 引入对应Changed: Button to start and stop Time Tracking#29151同版本还移除了时间条目评论的长度限制#48244方便记录更详细的工时说明修复了我的页面-我的花费时间中非工作日计算错误的问题#48328。使用建议计时开始时确保工作包已保存停止计时后补充评论与日期即可在工作包时间与成本模块中统计汇总。多选自定义字段开放给 Community版本变化此前多选自定义字段是 Enterprise 功能13.0 将其从 Enterprise 释放到 Community#47002免费 Community 版用户现在也可以为工作包或项目配置多选自定义字段并添加到工作包表单中。配套能力支持多值 Version 自定义字段#48745修复多选自定义字段选中值被重复显示的问题#49569修复必填校验下无法编辑自定义字段的问题#48725修复自定义字段在表格视图与全屏视图缺失的问题#49391修复复选框型自定义字段变更未体现在活动Activity中的问题#45011。配置步骤进入管理后台 → 自定义字段新建或编辑字段字段类型选择列表并勾选多选维护选项列表在项目/工作包类型表单配置中将该字段添加到表单布局用户即可在工作包或项目表单中选择多个值。其他改进、变化与缺陷修复速览值得关注的体验改进本地化种子数据允许以任意语言本地化播种seeding所有种子数据#36933并修复法文播种时名称长度超数据库约束、角色名/文档分类/颜色名未翻译等问题#49581 / #49583全局搜索显示最近查看的工作包提升导航效率账户菜单新增我的活动快捷方式工作包支持复制链接到剪贴板#48729富文本编辑器新增 Emoji 选择器输入:加 Unicode 短名即可插入 Emoji#48583通知中心双击打开详情工作包侧边栏滚动把手放大引入 Primer 设计系统Primer DSGitHub 开源的面向视觉一致性的设计系统作为 UI 基础#48863新增应用加载指示器#48211管理后台新增特性开关Feature flags配置界面#48815表单化文本字段工作包描述、评论、自定义字段支持 CTRL/CMD ENTER 保存#33375。平台与安装支持新增打包安装支持RHEL 9#44725、Debian 12#48986、CentOS/RHEL 9#48987修复 Docker 环境归档保护项目无法删除的问题#41527修复login_requiredtrue时配置请求失败的问题#47784。集成相关修复GitHub 集成PR 评论链接错误#46316、引用使用 author 而非 commenter#48246Nextcloud/Administration 链接在主机含子路径时被剥离#49630存储链接在项目菜单中的位置固定在 Wiki 与 Members 之间#47507文件标签页缓存用户信息#47518现有文件链接被错误关联到后续更新用户#49452停用存储时的危险区确认#48413。核心数据模型与行为修复节选关系/子项引起的工作包日期变更现在会记录日志并显示在活动标签页#46481项目状态活动跟踪#44986、项目活动页属性展示增强#46805按时间戳过滤自定义字段值的双时间戳匹配逻辑修复#46841时间戳可见性检查应用到对应时间点而非当前项目#46883无时间戳的查询存在缓存时间戳 URL 参数的问题#48248我的页面我的花费时间非工作日计算错误#48328归档子项目出现在子项目 widget 中#48327从未设置变为已分配的经办人变更未显示#48866自定义视图切换到内置视图未重置基线#49410工作包标题与描述在展开按钮点击后丢失#49565预算名称变更未同步到工作包视图#48048、预算数量修改快速提交时未更新#46301时间与成本 XLS 导出文件名使用配置的日期格式#35554。完整清单请参阅 13.0.0 发布说明的缺陷修复与变更列表。致谢与社区贡献本版本的多项重量级功能由赞助商支持实现Autoliv赞助了全新的 Baseline 对比功能科隆市City of Cologne大力支持并赞助了 Nextcloud 集成的多项新特性联邦内政与社区部BMI作为 openDesk / Sovereign Workplace 项目的一部分赞助了本版本的大部分功能包括 Nextcloud 集成新特性、PDF 工作计划导出、iCalendar 订阅以及种子数据的本地化播种。同时多位社区成员报告缺陷并协助定位与修复Tobias Nöbauer、K T、Various Interactive、Thyago Sanabio、Piotr F、Sven Kunze、Gerrit Bonn、Aidas Kasparas、Christina Vechkanova、Rince wind、James Neale、Daniel Wilke、Philipp Schulz、Heather Burns、M S 等在此一并致谢。升级建议小结生产环境升级前建议先在测试实例验证PDF 工作计划导出、iCalendar 订阅与Nextcloud 自动项目文件夹三项配置若使用 Nextcloud 自动管理文件夹请确认应用凭据权限与健康状态检查#49397结果正常社区版用户升级后即可体验多选自定义字段与显示自昨日以来的变化基线功能关注新增打包平台RHEL 9 / CentOS 9 / Debian 12按 安装与运维文档 选择合适方式升级。【免费下载链接】openprojectOpenProject is the leading open source project management software for product, project and portfolio management. A powerful Jira alternative with agile planning, issue tracking, roadmaps, Gantt charts, time tracking, collaboration features, and more. Available on premises or in the cloud. ⭐ Star us on GitHub项目地址: https://gitcode.com/GitHub_Trending/op/openproject创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表