计划

Odoo 计划 允许您规划团队的时间表并管理班次和资源。

处理团队的计划会有特定需求,这些需求会根据您的业务需求而有很大差异。Odoo 计划中引入了以下概念来满足这些需求:

班次 被派发给 资源,资源可以是 human <planning/employees>(员工)或 material <planning/materials>(例如设备)。资源会被分配 roles <planning/roles>,从而实现团队内部的工作组织。

完成初始配置后,planning shifts <planning/shifts> 可以手动完成,也可以使用 Auto Plan <planning/open-shifts> 功能实现自动化。

计划与销售应用的集成可以将已售服务链接到计划中的角色和班次。此外,与 Project <project> 的集成允许将班次(即时间和资源)专用于特定项目。

::: seealso Odoo 教程:计划 :::

要定义资源执行的角色(例如厨师、调酒师、服务员),进入 Planning --> Configuration --> Roles,点击 New,填写 Name(例如助理、前台、经理)。然后,选择将执行该角色的 Resources。资源可以是 Employees <planning/employees>Materials <planning/materials>

:::: note ::: title 注意 :::

  • 如果数据库中已安装 Sales 应用,Services 字段会出现,允许您指定执行服务所需的角色,以便将班次派发给合适的人选。
  • 在使用 Auto Plan feature <planning/open-shifts> 时会考虑角色。

::::

属性字段 允许您在多个 Odoo 应用的表单中添加自定义字段。计划模块提供将属性字段关联到角色并添加到班次的功能。

创建属性字段的步骤:

  1. 在任意计划视图切换到列表视图。
  2. 点击您想编辑的班次的 View
  3. Role 字段为空,填写所需角色。
  4. 点击齿轮图标,选择 Add Properties
  5. 根据需求 Configure </applications/essentials/property_fields> 新字段。

该属性字段与角色关联,并会出现在该角色执行的所有班次表单中。

::: example 角色属性字段的使用场景包括:

  • 资质认证:需要特定许可证的角色(如驾驶执照)。
  • 地点:在多地点运营的公司(如门店或餐厅)。
  • 语言:多语言环境下的公司(如咨询公司)。 :::

所有员工均可纳入计划并分配班次。

要调整员工的计划设置,进入 Planning --> Configuration --> Employees,选择要编辑的员工,然后切换到 Work Information 选项卡。

:::: tip ::: title 提示 :::

您也可以直接在默认随计划一起安装的 Employees 应用中进行相同操作。 ::::

员工 Work Information 选项卡中对计划有影响的两个部分:

  • Schedule(即 Working Hours 字段)
  • Planning(计划相关设置)

Working Hours 会在计算 shifts <planning/templates>Allocated Time 及其百分比时被考虑。如果 Working Hours 留空,则视为弹性工作时间。

要为兼职等员工创建单独的 Working Hours,点击 Search more...,然后 New

:::: note ::: title 注意 :::

Working Hours 与计划中的 Allocated Time 可能影响 Payroll(工资单),如果员工合同配置为根据班次生成工作记录。 ::::

::: seealso ../hr/payroll/working_schedules :::

当员工拥有一个或多个 Roles 时:

  • 创建该员工的班次时,只会显示该角色对应的班次模板。
  • 发布日程后,员工仅会收到其角色对应的开放班次通知。
  • 自动分配开放班次或计划销售订单时,员工仅会被分配其角色对应的班次。

若定义了 Default role(默认角色):

  • 创建该员工的班次时,默认角色会自动被选中。
  • 在自动分配开放班次或计划销售订单时,该角色的优先级高于员工的其他角色。

:::: note ::: title 注意 :::

如果计划角色字段为空,则在班次模板和共享给员工的开放班次上没有限制。但对没有角色的员工,Auto Plan 功能不可使用。 ::::

物料 是可以被分配班次和工作时间的资源,但不是员工。例如,建筑公司可以使用物料为共享机械(如起重机、叉车)创建班次。

与员工类似,物料也可以被分配角色和工作时间。

创建班次模板的步骤:

  1. 在任意计划视图点击 New,填写 details of the shift <planning/create-shift>
  2. 若要将该班次保存为模板,点击 Save Template

或者,进入 Planning --> Configuration --> Shift Templates,点击 New,填写 Start HourSpan。系统会根据 Working Hours(包括工作时间和休息时间)自动计算 End Time

::: example 员工的工作时间为周一至周五,上午 8 点至下午 5 点,中午 12 点至 1 点休息。

  • 若创建一个起始时间为上午 9 点、时长为 8 小时的班次模板,结束时间会是下午 5 点(考虑到 1 小时的午休)。
  • 若创建一个起始时间为上午 10 点、时长为 10 小时的班次模板,结束时间会是次日上午 10 点,因为公司在下午 5 点后已关闭。 :::

每个班次模板还可以配置:

  • Role:将班次关联到特定角色。
  • Project:用于跟踪专用于某项目的班次。

打开 Planning 应用后,用户会看到自己的日程。拥有管理员角色的用户还能查看 Schedule by ResourceRoleProjectSales Order,以及报表和配置菜单。

:::: note ::: title 注意 :::

日程以 Gantt 视图展示,您可以直接拖拽、缩放、拆分或复制班次,而无需打开班次详情。 ::::

日程中班次的可视元素说明:

  • 实色:已计划且已发布的班次。
  • 对角线条纹:已计划但尚未发布的班次。
  • 灰色背景:处于休假中的员工。
  • 进度条:当前进行且已关联工单的班次。
  • 灰色班次:复制班次时,复制出的班次显示为实色,原有班次暂时呈灰色。刷新页面或移除过滤后颜色会恢复。

创建班次的步骤:

  1. 在任意日程视图点击 New
  2. 在弹出窗口中填写以下信息:
  • Templates:如果数据库中已有模板,它们会显示在弹窗上部,选中后会预填班次表单。
  • Resource:资源可以是员工或物料。若留空,则视为 open shift <planning/open-shifts>(开放班次)。
  • Role:选择资源将执行的角色,此字段在自动排班时会被使用。选定角色后,关联的班次模板会显示在弹窗上部。
  • Project:若已安装 Project 应用,可将项目关联到班次,以便专门跟踪该项目的工作。
  • Sales Order Item:若已安装 Sales 应用,可将销售订单项关联到班次。
  • Repeat:点击 fa-repeat(重复)按钮,根据需求配置 Repeat every(重复周期)字段。规则如下:
    • 除日期外,所有字段(如 ResourceRoleProject)均从原班次复制,日期依据 Repeat Every 调整。
    • 重复班次仅计划而不发布。
    • 默认情况下,系统会提前六个月计划班次,之后逐步创建。若需更改时间范围,可激活开发者模式 <developer-mode>,进入 Planning --> Configuration --> Settings,编辑 Recurring Shifts
  • Additional note sent to the employee:点击该字段添加备注。
  • Date:选择班次的日期和时间,这是唯一必填字段。
  • Allocated time:根据日期和员工的 Working Schedule 自动计算,详情见 Shift Templates <planning/templates>
  1. 点击 Publish & Save 确认班次并通过邮件将日程发送给指派的员工。

:::: note ::: title 注意 :::

草稿在管理员计划视图中可见,以对角线条纹标识。仅在发布后员工才会收到通知。

根据员工账号配置,系统会发送两种通知方式:

  • 没有用户账号的员工会被重定向到专属 Planning portal(计划门户)。
  • 有用户账号的员工会被重定向到后台的 My Planning 视图。

::::

:::: tip ::: title 提示 :::

拆分班次 工具可将长班次轻松拆分为多个段。将鼠标悬停在目标班次上,点击 fa-scissors(剪刀)图标。

::::

Auto Plan 按钮可为 开放班次(未指派资源的班次)分配资源,并可创建并指派与销售订单或项目关联的班次。

影响自动排班的因素:

  • Roles:仅将开放班次指派给拥有相应角色的资源(员工或物料)。没有角色的员工无法使用 Auto Plan
  • Default roles:资源的默认角色在自动排班时拥有优先权。
  • Conflicts:员工或物料同一时间不能被指派多个班次。
  • Time off:会考虑员工的休假以及公共假期。
  • Working hours:指派班次时会参考工作时间,弹性工作时间的员工无法使用 Auto Plan
  • Contracts:若员工有有效合同,系统不会指派超出合同期限的班次。

点击 Publish 确认日程并通知员工。

提供两项功能让员工自行调整日程:班次切换取消指派

:::: note ::: title 注意 :::

这两项功能互斥。默认情况下启用班次切换且不可关闭;若启用 Allow unassignment(允许取消指派),则会取代班次切换功能。 ::::

班次已计划并发布后,员工会收到邮件通知。若员工想要换班,可点击不想要的班次并选择 Ask to switch

该班次仍保持指派给原员工,但在日程中会出现一条通知,表明该员工想要换班。随后,拥有相同角色的其他员工可以看到该班次,并点击 I take it(我接手)自行指派。

:::: note ::: title 注意 :::

规则如下:

  • 仅显示与员工角色匹配的班次供其选择。
  • 过去的班次不可进行切换。

::::

若要允许员工自行取消指派:

  1. 前往 Planning --> Configuration --> Settings,勾选 Allow Unassignment(允许取消指派)。
  2. 设置员工在班次开始前最多可以取消指派的天数。

当班次已计划并发布后,员工会收到邮件通知。若允许取消指派,员工可点击 I am unavailable(我无法参加),班次将恢复为开放班次。

:::: note ::: title 注意 :::

规则如下:

  • 仅显示与员工角色匹配的班次在其日程中。
  • 过去的班次不可取消指派。

::::