35 KiB
35 KiB
合同管理需求卡
目录
- REQ-CONTR-001 菜单入口
- REQ-CONTR-002 列表与分页
- REQ-CONTR-003 条件查询与重置
- REQ-CONTR-004 到期快捷筛选
- REQ-CONTR-005 合同阶段与审核状态
- REQ-CONTR-006 列表操作
- REQ-CONTR-007 新增合同
- REQ-CONTR-008 合同基本信息
- REQ-CONTR-009 合同文件与附件
- REQ-CONTR-010 保存草稿
- REQ-CONTR-011 转临时合同
- REQ-CONTR-012 临时合同转正式合同
- REQ-CONTR-013 正式合同审批通过
- REQ-CONTR-014 编辑合同
- REQ-CONTR-015 删除草稿合同
- REQ-CONTR-016 查看合同与流程
- REQ-CONTR-017 复制合同
- REQ-CONTR-018 附件上传
- REQ-CONTR-019 计费信息开关
- REQ-CONTR-020 计费方案
- REQ-CONTR-021 计费规则明细
- REQ-CONTR-022 计费要素组合
- REQ-CONTR-023 计费规则匹配条件
- REQ-CONTR-024 结算生成规则
- REQ-CONTR-025 对账配置
- REQ-CONTR-026 标准结算流程
- REQ-CONTR-027 发起合同变更
- REQ-CONTR-028 合同内容变更
- REQ-CONTR-029 终止合同
- REQ-CONTR-030 变更审批与生效
- REQ-CONTR-031 变更记录
- REQ-CONTR-032 导出合同列表
- REQ-CONTR-033 权限与审计
- 通用规则
REQ-CONTR-001 菜单入口
-
功能点:
- 合同管理模块归属于“合同管理”主菜单。
- 在“合同管理”菜单下提供“合同管理”入口。
- 用户进入合同管理页面后,可进行查询、新增合同、复制、编辑、删除、转临时合同、转正式合同、变更、终止、附件上传、流程查看、导出等操作。
-
异常与边界:
- 无菜单权限时不展示“合同管理”入口。
- 有菜单权限但无按钮权限时,仅展示允许访问的页面和操作。
- 菜单或页面加载失败时提示失败原因,不影响其他模块访问。
-
反例:
- 不允许把合同管理挂到非合同管理主菜单下。
- 不允许无权限用户通过 URL 直接进入合同管理页面。
- 不允许菜单入口存在但页面无法访问。
REQ-CONTR-002 列表与分页
-
功能点:
- 默认展示当前用户权限范围内的合同数据。
- 列表展示序号、合同编号、合同名称、所属项目、所属组织、合同类别、签约类型、甲方、乙方、开始日期、结束日期、临时效力起、临时效力止、经办人、创建时间、合同阶段、审核状态、当前节点、当前处理人、操作等字段。
- 合同名称支持点击查看合同详情。
- 合同阶段、审核状态和操作列固定在右侧,不随横向滚动条滑动。
- 默认按创建时间降序展示。
- 支持分页展示,默认10条/页,支持20/50/100条/页。
-
异常与边界:
- 查询无数据时展示空状态。
- 当前页数据因新增、编辑、提交、撤回、审批、变更、删除等操作变化后,应刷新列表并保持分页逻辑正确。
- 列表加载失败时保留当前查询条件和分页条件,提示用户重新查询。
-
反例:
- 不允许合同阶段、审核状态或操作列被横向滚动隐藏。
- 不允许列表展示经办人、当前处理人的用户 ID。
- 不允许分页后丢失当前查询条件。
REQ-CONTR-003 条件查询与重置
-
功能点:
- 支持按合同类别、所属项目、合同名称、合同编号、生效类型、审核状态、所属组织、合同阶段、签约类型等条件组合查询。
- 合同类别、生效类型、审核状态、合同阶段、签约类型使用下拉单选或多选控件。
- 所属项目使用搜索选择控件。
- 合同名称、合同编号、所属组织使用输入框,支持模糊查询。
- 点击查询后按当前条件刷新列表。
- 点击重置后清空所有查询条件,恢复默认列表。
-
异常与边界:
- 查询条件为空时点击查询,按默认规则展示全部权限范围内数据。
- 查询结果为空时展示空状态,不清空用户已输入条件。
- 重置后页码恢复第一页,并重新加载列表。
-
反例:
- 不允许重置后仍保留隐藏查询条件。
- 不允许只按单个条件查询而忽略其他已选择条件。
- 不允许查询后改变列表字段或操作范围。
REQ-CONTR-004 到期快捷筛选
-
功能点:
- 列表支持按合同到期时间快捷筛选。
- 快捷筛选项包含全部、30天内到期、90天内到期、90天以上、已到期。
- 每个筛选项展示当前条件下的数量。
- 点击快捷筛选项后,列表按对应到期范围刷新。
-
异常与边界:
- 合同结束日期为空时不计入到期筛选统计。
- 选择快捷筛选后再点击查询,应与其他查询条件组合生效。
- 重置查询条件后快捷筛选恢复全部。
-
反例:
- 不允许快捷筛选忽略用户已选择的其他查询条件。
- 不允许已到期合同仍统计到30天内到期。
- 不允许数量统计与列表结果不一致。
REQ-CONTR-005 合同阶段与审核状态
-
功能点:
- 合同阶段包含草稿、临时合同、正式合同、已终止。
- 审核状态包含草稿、审批中、已驳回、审批通过、变更审批中、变更驳回、变更审批通过。
- 草稿表示新增合同草稿,尚未转临时合同,无业务生效。
- 临时合同表示草稿转临时成功,临时有效期内可执行短期结算。
- 正式合同表示临时合同或合同草稿经审批通过后正式生效。
- 已终止表示正式合同经终止变更审批通过后生命周期结束。
-
异常与边界:
- 状态为空或未知时,列表应展示兜底文案,并限制高风险操作。
- 状态变更后需刷新列表和详情,确保合同阶段、审核状态、操作按钮一致。
- 审核状态与合同阶段不匹配时,应提示数据异常并限制提交、变更、结算等操作。
-
反例:
- 不允许草稿合同执行业务结算。
- 不允许临时合同永久有效。
- 不允许已终止合同继续新建运单或结算单。
REQ-CONTR-006 列表操作
-
功能点:
- 草稿合同支持复制、编辑、删除。
- 临时合同草稿状态支持复制、编辑。
- 临时合同审批中支持复制、查看流程、撤回。
- 临时合同已驳回支持复制、编辑、重新提交转正。
- 正式合同审批通过支持复制、发起变更、附件上传、查看流程。
- 正式合同变更审批中支持复制、查看流程、撤回变更。
- 正式合同变更驳回支持复制、编辑变更内容、重新提交变更。
- 正式合同变更审批通过支持复制、再次发起变更、附件上传、查看流程。
- 已终止合同仅支持复制和查看流程。
-
异常与边界:
- 操作执行前需重新校验合同最新阶段和审核状态。
- 用户无按钮权限时不展示对应操作入口。
- 状态变更成功后刷新列表,展示最新可操作按钮。
-
反例:
- 不允许临时合同转正审批中继续编辑合同正文。
- 不允许正式合同直接删除。
- 不允许已终止合同发起新变更。
REQ-CONTR-007 新增合同
-
功能点:
- 点击“新增合同”后进入新建合同页面。
- 新建合同页面包含基本信息、计费信息、结算生成规则、对账配置、其它附件、变更记录等区域。
- 新建合同支持保存、提交临时合同、提交正式合同、关闭。
- 合同编号不填写时由系统自动生成,生成后只读不可编辑。
- 草稿保存不触发审批流程。
-
异常与边界:
- 新建页面打开失败时提示失败原因,不改变列表数据。
- 基础信息必填项为空时不允许保存为有效草稿。
- 提交临时合同或正式合同时需按对应规则校验必填项和附件。
- 重复点击保存或提交时应防止重复生成合同。
-
反例:
- 不允许用户重复提交生成多个相同合同。
- 不允许没有合同名称和合同类型的合同草稿保存成功。
- 不允许合同编号由用户随意修改。
REQ-CONTR-008 合同基本信息
-
功能点:
- 基本信息包含签约类型、合同编号、合同名称、合同类型、甲方、乙方、所属项目、合同期限、所属组织、经办人、签订日期、结算方式、合同格式、是否需要加盖法人章、一式份数、回款账期、备注等字段。
- 签约类型为必填字段,使用下拉单选控件,枚举包含新签、续签。
- 合同编号为必填字段,可不填写,由系统自动生成。
- 合同名称为必填字段,使用输入框。
- 合同类型为必填字段,枚举包含客户合同、承运商合同等。
- 甲方、乙方为必填字段,从客商或组织档案选择。
- 所属项目从项目管理中选择。
- 合同期限为必填日期范围字段。
- 签订日期为必填日期字段。
- 结算方式、合同格式、是否需要加盖法人章、一式份数、回款账期、备注按合同业务要求填写。
- 备注最多2000字。
-
异常与边界:
- 转临时合同时,签约人、签约日期、合同期限可不填。
- 提交正式合同时,所有必填字段必须完整,包含签约人、签约日期、合同期限。
- 合同期限开始日期晚于结束日期时阻止提交。
- 备注超过2000字时阻止保存或提交。
-
反例:
- 不允许正式合同缺少签订日期或合同期限。
- 不允许合同期限结束日期早于开始日期。
- 不允许甲方、乙方为空后提交正式合同。
REQ-CONTR-009 合同文件与附件
-
功能点:
- 合同文件区域用于上传合同主文件。
- 其它附件区域用于上传银行承兑汇票、补充材料等合同相关附件。
- 附件列表展示序号、文件名、附件描述、文件大小、上传人、上传时间、操作等字段。
- 支持批量下载附件。
- 支持 pdf、bmp、jpeg、png、jpg、doc、docx、ppt、pptx、xlsx、xls、eml、msg、zip 等格式文件。
- 单个文件大小限制500M。
-
异常与边界:
- 保存草稿或转临时合同时,附件可不上传。
- 提交正式合同时,应校验所有必须附件已上传。
- 文件格式不支持或大小超过500M时阻止上传并提示。
- 删除附件前需二次确认。
-
反例:
- 不允许正式合同缺少必须合同文件仍提交审批。
- 不允许上传超过500M的文件。
- 不允许附件上传成功后列表不展示文件信息。
REQ-CONTR-010 保存草稿
-
功能点:
- 新建或编辑页面点击保存后,临时保存当前填写内容。
- 保存后合同阶段为草稿,审核状态为草稿。
- 保存草稿只要求基础信息满足最小必填校验,附件可不上传。
- 草稿合同无业务生效,不可创建运单和结算单。
-
异常与边界:
- 基础信息缺失导致无法识别合同主体时阻止保存并提示。
- 保存失败时保留用户已填写内容。
- 草稿数据已删除或状态已变化时,不允许继续保存。
-
反例:
- 不允许保存草稿触发审批流程。
- 不允许草稿合同执行结算过程。
- 不允许保存失败后清空用户输入。
REQ-CONTR-011 转临时合同
-
功能点:
- 草稿合同支持提交临时合同。
- 转临时合同时,签约人、签约日期、合同期限可不填。
- 转临时合同只校验基础信息必填项,附件可不上传。
- 转临时成功后合同阶段变为临时合同,审核状态保持草稿。
- 临时合同有效期为30天。
- 临时合同可执行结算过程。
- 转临时合同后不可删除。
-
异常与边界:
- 基础信息缺失时不允许转临时合同。
- 临时有效期计算失败时不允许转临时合同。
- 转临时合同失败时保持草稿状态,并保留用户填写内容。
-
反例:
- 不允许草稿合同未转临时就执行结算。
- 不允许转临时合同后继续删除。
- 不允许临时合同有效期超过30天。
REQ-CONTR-012 临时合同转正式合同
-
功能点:
- 临时合同支持补全信息后提交正式合同审批。
- 转正式合同前需完成所有正式合同必填内容。
- 转正式合同前需上传所有必须附件。
- 转正式合同需走审批流程。
- 提交成功后合同阶段保持临时合同,审核状态更新为审批中。
- 审批通过后合同阶段转为正式合同。
-
异常与边界:
- 正式合同必填字段缺失时阻止提交审批并提示。
- 必须附件缺失时阻止提交审批并提示缺失附件。
- 临时合同已超过30天有效期时,应提示临时效力已过期,并按业务规则限制继续结算。
- 审批流程发起失败时保持原状态,并保留用户输入内容。
-
反例:
- 不允许资料未补齐的临时合同转正式审批。
- 不允许转正式合同绕过审批。
- 不允许提交失败后仍把合同阶段改为正式合同。
REQ-CONTR-013 正式合同审批通过
-
功能点:
- 当前审批节点处理人可对审批中合同执行审批通过。
- 全部审批通过后,合同阶段更新为正式合同,审核状态更新为审批通过。
- 正式合同永久正式生效,完整开放运单、结算、回款权限。
- 正式合同审批通过后,临时效力不再作为业务有效期判断依据。
-
异常与边界:
- 非当前审批节点处理人不允许审批通过。
- 审批通过时如合同已被终止或数据不存在,应阻止审批并提示。
- 审批状态更新失败时需保持审批前状态。
-
反例:
- 不允许未审批通过的合同成为正式合同。
- 不允许非审批处理人执行审批通过。
- 不允许正式合同仍按30天临时效力限制结算。
REQ-CONTR-014 编辑合同
-
功能点:
- 草稿合同支持编辑。
- 临时合同草稿或已驳回状态支持编辑。
- 正式合同仅可通过变更流程修改合同内容。
- 编辑页面回显合同完整信息,合同编号只读不可编辑。
- 编辑保存后按当前阶段和审核状态保持或更新。
-
异常与边界:
- 编辑前需校验当前合同状态仍允许编辑。
- 合同已进入审批中时不允许直接编辑。
- 修改所属项目或合同类型时,应重新校验计费、结算、对账配置适用性。
- 编辑失败时保留用户修改内容。
-
反例:
- 不允许审批中合同直接编辑。
- 不允许正式合同绕过变更流程直接修改。
- 不允许编辑时修改系统生成的合同编号。
REQ-CONTR-015 删除草稿合同
-
功能点:
- 未转临时的草稿合同支持删除。
- 点击删除后弹出二次确认弹窗。
- 删除前需校验合同未生效且未被业务数据引用。
- 删除成功后刷新列表。
-
异常与边界:
- 临时合同、正式合同、已终止合同均不允许删除。
- 存在运单、结算、应收应付、附件审批等业务引用时不允许删除。
- 删除时状态已变化为临时合同或审批中时,应阻止删除并刷新列表。
-
反例:
- 不允许删除转临时后的合同。
- 不允许删除正式合同。
- 不允许跳过二次确认直接删除。
REQ-CONTR-016 查看合同与流程
-
功能点:
- 支持点击合同名称或行操作查看合同详情。
- 查看详情展示基本信息、计费信息、结算生成规则、对账配置、附件、变更记录等内容。
- 查看状态下所有字段只读。
- 支持查看审批流程节点、处理人、处理时间和审批意见。
-
异常与边界:
- 合同不存在或无权限查看时提示无法查看。
- 附件加载失败时不影响基础信息展示。
- 流程加载失败时提示失败原因,不改变合同状态。
-
反例:
- 不允许查看状态下保存修改。
- 不允许流程查看展示其他合同的审批记录。
- 不允许查看时自动切换为编辑状态。
REQ-CONTR-017 复制合同
-
功能点:
- 支持通过列表行操作复制合同。
- 复制后生成一条新合同草稿。
- 新合同编号重新生成,合同阶段为草稿,审核状态为草稿。
- 复制时可带出原合同基本信息、计费规则、结算规则、对账配置和附件清单。
-
异常与边界:
- 原合同已删除或无权限查看时不允许复制。
- 复制后的合同名称应提示用户调整,避免与原合同混淆。
- 复制失败时不影响原合同数据。
-
反例:
- 不允许复制后沿用原合同编号。
- 不允许复制操作修改原合同。
- 不允许复制后直接生成临时合同或正式合同。
REQ-CONTR-018 附件上传
-
功能点:
- 正式合同审批通过后支持附件上传。
- 合同变更过程中支持上传变更材料。
- 附件上传成功后自动新增附件行,展示文件名、大小、上传人、上传时间。
- 支持批量下载附件。
- 附件删除按合同阶段、审核状态和权限控制。
-
异常与边界:
- 审批中合同不允许随意删除已提交审批附件。
- 附件上传失败时保留当前附件列表并提示失败原因。
- 变更材料与普通附件需按业务场景区分归档。
-
反例:
- 不允许附件上传后不归属任何合同或变更记录。
- 不允许审批材料被无权限用户删除。
- 不允许变更材料混入普通附件后无法追溯。
REQ-CONTR-019 计费信息开关
-
功能点:
- 合同基本信息支持配置是否自动生成费用明细。
- 开启自动生成费用明细时,系统展示计价配置页面,并按合同计费规则自动核算单票运单总费用,生成应收或应付。
- 关闭自动生成费用明细时,不展示计价配置页面。
- 关闭后费用入账依据导入结算账单或手动生成账单。
- 自动生成费用明细适用于先做运单,再按合同运价自动核算的业务场景。
-
异常与边界:
- 开启自动生成费用明细但未配置计费方案时,提交正式合同需阻止并提示。
- 关闭自动生成费用明细后,不得继续要求填写计费方案。
- 合同已产生自动费用明细后,关闭开关需按变更流程处理。
-
反例:
- 不允许开关关闭时仍展示计价配置并强制填写。
- 不允许开关开启但没有任何计费规则就提交正式合同。
- 不允许已生效合同绕过变更直接修改费用生成方式。
REQ-CONTR-020 计费方案
-
功能点:
- 计费信息区域支持新增、编辑、删除计费方案。
- 计费方案包含方案名称、默认方案标识、备注和计费规则明细。
- 方案名称为必填字段。
- 同一合同内可维护多套计费方案。
- 同一合同内只能设置一个默认方案。
-
异常与边界:
- 方案名称为空时阻止提交并提示。
- 删除默认方案前需提示用户重新指定默认方案。
- 已被费用明细引用的计费方案不允许直接删除。
-
反例:
- 不允许一个合同存在多个默认计费方案。
- 不允许无方案名称的计费方案保存。
- 不允许删除已被历史运单费用引用的计费方案。
REQ-CONTR-021 计费规则明细
-
功能点:
- 计费方案内支持添加多条计费规则。
- 计费规则字段包含费用类型、费用项、计费要素、计费类型、计费单位、单价、计费要素下限、计费要素上限、保底计费量、备注和操作。
- 费用类型包含运输费、其它费用等。
- 费用项包含运费、装卸车费、提货费、送货费、保险费等。
- 计费类型包含固定单价、区间单价、阶梯单价、区间阶梯一口价、固定一口价等。
- 同一套计费方案内,同一条计费要素可配置多行区间。
- 同一条计费要素的区间上下限必须连续、不重叠、无间隙。
- 前端保存时需自动校验区间冲突。
-
异常与边界:
- 费用类型、费用项、计费要素、计费类型、计费单位、单价等核心字段为空时阻止保存。
- 计费要素上下限不连续、重叠或存在间隙时阻止保存并提示。
- 单价或保底计费量为负数时阻止保存。
- 已生效计费规则被历史费用引用时,修改需走合同变更流程。
-
反例:
- 不允许同一计费要素区间重叠。
- 不允许单价填写负数。
- 不允许计费规则被引用后直接删除导致历史费用无法追溯。
REQ-CONTR-022 计费要素组合
-
功能点:
- 计费要素支持按重量、按体积、按车辆、按里程、按吨公里、固定金额整单一口价、按数量等类型。
- 按重量支持固定单价、区间单价、阶梯单价、区间阶梯一口价,适用于整车散货按吨计价、分吨位阶梯调价、吨位区间一口价。
- 按体积支持固定单价、区间单价、阶梯单价、区间阶梯一口价,适用于轻泡货按立方计费。
- 按车辆支持固定单价,适用于包月固定车费、单次车辆包干费。
- 按里程支持固定单价、区间单价、阶梯单价、区间阶梯一口价,适用于长途干线按公里计价。
- 按吨公里支持固定单价、区间单价、阶梯单价、区间阶梯一口价,适用于水陆联运复合计量计费。
- 固定金额整单一口价支持固定一口价,适用于同城配送、短途整车包干。
- 按数量支持固定单价、区间单价、阶梯单价、区间阶梯一口价,适用于小件零担按件计费。
-
异常与边界:
- 计费要素与计费类型不匹配时阻止保存并提示。
- 计费单位需与计费要素匹配,例如重量对应元/吨,里程对应元/公里。
- 复合计量场景需明确计费要素来源,避免同一运单重复计费。
-
反例:
- 不允许按车辆计费配置阶梯单价。
- 不允许按里程计费用元/吨作为计费单位。
- 不允许一个费用项重复命中多个同优先级计费规则。
REQ-CONTR-023 计费规则匹配条件
-
功能点:
- 计费规则支持设置匹配条件。
- 匹配条件包含起运地、目的地、运输方式、货物类型等字段。
- 起运地和目的地支持按省、市、区县配置。
- 运输方式和货物类型使用下拉选择。
- 保存匹配条件后,系统在执行运单计费时按条件匹配对应计费规则。
- 支持新增多组匹配条件。
-
异常与边界:
- 匹配条件为空时视为通用规则或按业务默认规则处理。
- 多组匹配条件冲突时,应提示用户调整。
- 保存失败时保留用户已填写条件。
-
反例:
- 不允许同一费用项存在无法区分优先级的重复匹配条件。
- 不允许保存后匹配条件与计费规则脱离。
- 不允许匹配条件冲突时静默覆盖旧规则。
REQ-CONTR-024 结算生成规则
-
功能点:
- 合同支持配置是否自动生成预结算单。
- 开启自动生成预结算单时,到达预设账单日,系统汇总当期所有应收或应付,生成统一内部预结算单。
- 关闭自动生成预结算单时,不自动生成预结算单,可手动选择应收应付转预结算单。
- 账单起始日期、结算类型、账单周期类型、账单截单日、周期天数等字段按结算规则配置。
- 结算时以合同截止时间产生的运单为有效单据,支持超合同有效期发起结算。
-
异常与边界:
- 开启自动生成预结算单时,账单起始日期、结算类型、账单周期类型等必填字段缺失应阻止提交。
- 周期天数不合法时阻止保存。
- 自动预结算任务失败时,应保留补偿处理记录。
-
反例:
- 不允许开启自动预结算但缺少账单周期配置。
- 不允许合同截止前产生的有效运单因合同已过期而不能结算。
- 不允许关闭自动预结算后仍自动生成预结算单。
REQ-CONTR-025 对账配置
-
功能点:
- 合同支持配置是否跳过对账。
- 开启跳过对账后,预结算单手动确认后直接生成正式结算单。
- 关闭跳过对账后,预结算单需按对账模式完成对账后生成正式结算单。
- 对账模式包含明细逐行核对和仅核对总额。
- 明细逐行核对要求外部账单明细与内部账单明细一一匹配,所有明细匹配后才可完成对账。
- 仅核对总额要求外部账单总条数、总金额、总货量一致后即可完成对账,不按明细逐行核对。
-
异常与边界:
- 未选择是否跳过对账时阻止提交正式合同。
- 不跳过对账时,对账模式必填。
- 明细逐行核对存在不匹配明细时,不允许完成对账。
- 仅核对总额存在总条数、总金额或总货量不一致时,不允许完成对账。
-
反例:
- 不允许开启跳过对账后仍强制进入对账流程。
- 不允许未选择对账模式就保存正式合同配置。
- 不允许明细不匹配或总额不一致时完成对账。
REQ-CONTR-026 标准结算流程
-
功能点:
- 合同标准结算流程为合同配置计费规则、执行运单、生成应收应付、账期自动生成预结算、对账、正式结算。
- 自动生成费用明细开启时,运单执行后系统按合同计费规则生成应收应付。
- 自动生成预结算单开启时,系统按账期汇总生成预结算。
- 对账完成或配置跳过对账后,系统生成正式结算单。
-
异常与边界:
- 合同未生效、计费规则不完整或费用明细开关关闭时,不按合同计费规则自动生成应收应付。
- 运单未完成或不满足结算条件时,不进入预结算。
- 合同已终止后,不允许新建运单或新结算单,但历史单据可正常对账回款。
-
反例:
- 不允许草稿合同进入标准结算流程。
- 不允许已终止合同新建业务单据。
- 不允许跳过应收应付直接生成正式结算单,除非业务配置明确支持。
REQ-CONTR-027 发起合同变更
-
功能点:
- 审批通过的正式合同支持发起变更。
- 变更类型包含合同信息变更、终止合同。
- 发起变更后打开变更页面,自动带入原合同完整信息。
- 变更页面支持修改允许变更的合同字段、计费规则、附件和变更说明。
- 变更需要走审核流程。
-
异常与边界:
- 非审批通过正式合同不允许发起变更。
- 存在未完成变更审批时,不允许重复发起变更。
- 已终止合同不允许发起变更。
-
反例:
- 不允许临时合同发起合同内容变更。
- 不允许变更页面为空白而不带入原合同数据。
- 不允许同一合同同时存在多个审批中的变更单。
REQ-CONTR-028 合同内容变更
-
功能点:
- 合同内容变更用于调整正式合同的基础信息、计费规则、结算规则、对账配置和附件。
- 变更内容需填写本次修改说明。
- 变更原因需填写本次变更原因。
- 变更内容和变更原因最多2000字。
- 内容变更审批通过后更新合同计费和基础信息。
-
异常与边界:
- 变更内容或变更原因为空时阻止提交审批。
- 文本超过2000字时阻止提交。
- 变更审批通过前,原合同条款保持正常履约,变更内容暂不生效。
-
反例:
- 不允许变更说明为空后发起审批。
- 不允许审批未通过的变更内容影响正式合同。
- 不允许超过2000字的变更原因提交。
REQ-CONTR-029 终止合同
-
功能点:
- 终止合同属于合同变更类型。
- 终止合同需填写变更原因和上传变更材料。
- 终止申请提交后进入变更审批中。
- 终止审批通过后合同阶段更新为已终止。
- 已终止合同彻底停用,禁止新建任何运单、结算单据。
- 历史单据可正常对账回款。
-
异常与边界:
- 终止审批未通过前,合同仍按原状态处理。
- 存在未完成变更审批时,不允许再次发起终止。
- 终止失败时保持原合同状态,并提示失败原因。
-
反例:
- 不允许未审批通过就终止合同。
- 不允许已终止合同继续新建运单或结算单。
- 不允许终止合同影响历史应收应付对账回款。
REQ-CONTR-030 变更审批与生效
-
功能点:
- 变更提交后审核状态更新为变更审批中。
- 变更审批通过后审核状态更新为变更审批通过。
- 合同内容变更审批通过后,新内容正式生效。
- 终止合同审批通过后,合同阶段更新为已终止。
- 变更驳回后审核状态更新为变更驳回,允许编辑后重新提交。
-
异常与边界:
- 变更审批未通过前,不得覆盖原正式合同信息。
- 审批过程中合同已终止或数据不存在时,不允许继续审批。
- 变更审批失败时保持原合同数据不变,并提示失败原因。
-
反例:
- 不允许变更草稿直接影响正式合同。
- 不允许审批未通过却生成正式变更结果。
- 不允许变更驳回后仍按变更内容计费。
REQ-CONTR-031 变更记录
-
功能点:
- 合同详情和编辑页面展示变更记录。
- 变更记录展示序号、变更日期、经办人、变更类型、变更原因、状态、操作等字段。
- 支持查看变更审批流程。
- 变更记录在变更提交后生成,并在详情页可查看。
- 变更记录需保留变更前后关键字段。
-
异常与边界:
- 变更记录加载失败时提示失败原因,不影响合同基础信息查看。
- 查看历史变更记录时全字段只读。
- 变更记录与合同不匹配时不展示,并提示数据异常。
-
反例:
- 不允许删除已审批通过的变更记录。
- 不允许变更记录只保存变更原因而无变更内容。
- 不允许跨合同展示变更记录。
REQ-CONTR-032 导出合同列表
-
功能点:
- 列表顶部支持导出合同列表。
- 点击导出后,导出当前筛选条件下的合同基础信息、阶段状态、计费方案摘要、附件清单和变更记录到 Excel 文件。
- 导出字段与列表和详情展示字段保持一致。
- 数据量较大时页面展示导出中提示。
-
异常与边界:
- 当前查询条件下无数据时允许导出空文件或提示无可导出数据。
- 导出失败时提示失败原因,不改变当前列表状态。
- 无导出权限时不展示导出按钮。
-
反例:
- 不允许无权限用户导出合同数据。
- 不允许导出时忽略当前查询条件。
- 不允许导出文件展示用户 ID 代替姓名。
REQ-CONTR-033 权限与审计
-
功能点:
- 根据用户权限控制查询、新增、复制、编辑、删除、转临时、转正式、审批、变更、终止、附件上传、流程查看、导出等操作入口。
- 列表、详情、导出、审批流中用户可见字段优先展示姓名,不直接展示用户 ID。
- 新增、保存、提交临时合同、提交正式合同、审批、撤回、复制、删除、变更、终止、附件上传、导出等关键操作需记录操作日志。
- 审计信息应包含操作人、操作时间、操作类型、合同编号、合同阶段、审核状态和关键变更内容。
-
异常与边界:
- 无按钮权限时不展示对应按钮,通过 URL 或接口绕过时也应拒绝。
- 操作日志记录失败时不得影响用户已成功的业务操作,但需保留可排查信息。
- 数据权限限制下,用户只能查看和操作授权范围内合同。
-
反例:
- 不允许无权限用户审批、变更、终止或导出合同。
- 不允许列表展示经办人、审批人等用户 ID。
- 不允许关键状态变更没有审计记录。
通用规则
- 合同管理用于维护客户合同、承运商合同等合同全生命周期,归属于“合同管理”主菜单。
- 合同阶段包含草稿、临时合同、正式合同、已终止;审核状态包含草稿、审批中、已驳回、审批通过、变更审批中、变更驳回、变更审批通过。
- 合同编号由系统自动生成,全局唯一,只读不可编辑。
- 暂存草稿无业务生效,不可执行结算流程。
- 草稿可提交为临时合同,签约人、签约日期、合同期限可不填;临时合同有效期30天,可执行结算流程,且不可删除。
- 临时合同转正式合同需补齐所有必填信息并上传所有必须附件,审批通过后转为正式合同。
- 正式合同可执行完整结算流程,并支持发起合同信息变更或终止合同变更。
- 标准结算流程为合同配置计费规则、执行运单、生成应收应付、账期自动生成预结算、对账、正式结算。
- 自动生成费用明细开启时,需维护计价配置;关闭时不展示计价配置,费用依据导入结算账单或手工生成账单入账。
- 自动生成预结算单开启时,系统按账期生成预结算;关闭时可手动选择应收应付转预结算。
- 是否跳过对账开启时,预结算单手动确认后直接生成正式结算单;关闭时需按明细逐行核对或仅核对总额完成对账。
- 同一套计费方案内,同一计费要素的多行区间必须连续、不重叠、无间隙。
- 变更审批通过前,原正式合同内容继续生效;变更审批通过后新内容生效或合同终止。
- 已终止合同禁止新建运单、结算单据,历史单据可正常对账回款。
- 列表、详情、导出、审批等用户可见场景优先展示姓名字段,不直接展示用户 ID。
- 新增、保存、提交、审批、撤回、复制、删除、变更、终止、附件上传、导出后均需刷新相关列表或详情状态。