six-shop/shipping-template

运费模板

Installs: 5

Dependents: 0

Suggesters: 0

Security: 0

Type:sixshop-extension

pkg:composer/six-shop/shipping-template

v0.1.4 2025-10-10 08:16 UTC

This package is auto-updated.

Last update: 2025-10-10 08:17:27 UTC


README

简介

运费模板扩展为 SixShop 商城系统提供灵活的运费计算功能,支持按件数、重量和体积三种计费方式。

数据库设计

1. shipping_templates 表(运费模板表)

字段名类型说明
idint(11)主键
namevarchar(100)模板名称
calc_methodvarchar(20)计费方式: piece(按件), weight(按重量), volume(按体积)
unitvarchar(10)单位: 件,g,kg,cm3,m3
statustinyint(1)状态: 0(禁用), 1(启用)
sortint(11)排序
create_timedatetime创建时间
update_timedatetime更新时间
delete_timedatetime删除时间

2. shipping_template_rules 表(运费模板规则表)

字段名类型说明
idint(11)主键
template_idint(11)运费模板ID
firstdecimal(10,3)首件/首重/首体积
first_pricedecimal(10,2)首件/首重/首体积费用
next_pricedecimal(10,2)续件/续重/续体积费用
area_typevarchar(20)区域类型: default(默认), special(特殊区域)
regionsjson地区信息(JSON格式,省级行政区划,包含地区编码和名称)
create_timedatetime创建时间
update_timedatetime更新时间

3. 表关系

  • 一个运费模板可以有多个规则(1:N)
  • 每个模板必须有一个默认规则(area_type = 'default')
  • 可选多个特殊区域规则(area_type = 'special')

地区层级说明

在运费模板中,地区信息限定为省级层级:

  1. 省级层级(唯一支持的层级)
    • 适用于所有地区运费设置
    • 管理简单,维护成本低
    • 满足大多数业务场景需求
    • 例如:北京市、上海市、广东省等

这种设计简化了系统复杂度,同时满足了核心业务需求。

数据库迁移

扩展包含以下迁移文件:

  1. 20251010100000_create_shipping_templates_table.php - 创建运费模板表
  2. 20251010100100_create_shipping_template_rules_table.php - 创建运费模板规则表

数据结构示例

regions 字段 JSON 格式示例:

[
  {
    "code": "110000",
    "name": "北京市"
  },
  {
    "code": "120000",
    "name": "天津市"
  }
]