区域管理
背景
表结构
1. site_region 区域表
CREATE TABLE `site_region` (
`region_id` bigint NOT NULL COMMENT '区域id',
`region_code` varchar(64) NOT NULL COMMENT '区域代码',
`region_address` varchar(255) NOT NULL COMMENT '区域地址',
`region_manager` varchar(64) NOT NULL DEFAULT '' COMMENT '区域负责人名称',
`region_status` tinyint NOT NULL DEFAULT '1' COMMENT '区域状态 1-启用,0-禁用',
`region_longitude` decimal(10,6) DEFAULT NULL COMMENT '区域经度',
`region_latitude` decimal(10,6) DEFAULT NULL COMMENT '区域纬度',
`location_flag` tinyint NOT NULL DEFAULT '0' COMMENT '提取地理经纬度标识 0-未提取,1-已提取,2-提取异常',
`remark` varchar(255) DEFAULT NULL COMMENT '备注',
`over_flag` tinyint NOT NULL DEFAULT '0' COMMENT '完结标识 0-未完结,1-已完结',
`create_user` bigint NOT NULL COMMENT '创建人',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_user` bigint DEFAULT NULL COMMENT '更新人',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`delivery_time` varchar(16) DEFAULT '' COMMENT '提货时效',
`internet_access_time` varchar(16) DEFAULT '' COMMENT '上网时效',
`average_delivery_time` varchar(16) DEFAULT '' COMMENT '最小平均妥投时效',
`average_delivery_time_max` varchar(16) DEFAULT '' COMMENT '最大平均妥投时效',
`average_delivery_type` tinyint NOT NULL DEFAULT '1' COMMENT '平均妥投时效类型 0-最小值,1-最大值',
PRIMARY KEY (`region_id`),
UNIQUE KEY `uniq_region_code` (`region_code`),
KEY `idx_create_time` (`create_time`),
KEY `idx_update_time` (`update_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='区域表';
2. 业务日志表dms_business_log,表结构见客户管理
business_source通过类型区分不同业务日志,区域日志对应business_source==9
3. country 国家表
CREATE TABLE `country` (
`country_id` bigint NOT NULL AUTO_INCREMENT,
`country_name` varchar(255) NOT NULL DEFAULT '' COMMENT '中文名',
`country_name_en` varchar(255) NOT NULL DEFAULT '' COMMENT '英文名',
`country_local_name` varchar(255) NOT NULL DEFAULT '' COMMENT 'location name本国文字名字',
`country_alias` varchar(255) NOT NULL DEFAULT '' COMMENT '别名',
`country_code` char(4) NOT NULL DEFAULT '' COMMENT '国际简称',
`country_code_iso` varchar(32) NOT NULL COMMENT '国家三字码',
`country_num` varchar(3) NOT NULL DEFAULT '' COMMENT 'ISO国家代码三位数字',
`country_sort` int NOT NULL DEFAULT '9999' COMMENT '排序 顺排',
`country_short_name` varchar(32) NOT NULL DEFAULT '' COMMENT '国家短名称',
`trade_country` varchar(32) NOT NULL DEFAULT '' COMMENT '海关国家编码',
`customer_file_on` tinyint(1) NOT NULL DEFAULT '0' COMMENT '客户附件所属国开关:1开,0关',
PRIMARY KEY (`country_id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=275 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='国家及地区表';
4. country 按规范添加字段与索引
-- country
-- 第一步先添加字段
ALTER TABLE country
ADD COLUMN `remark` varchar(256) DEFAULT '' COMMENT '备注',
ADD COLUMN `over_flag` tinyint NOT NULL DEFAULT '0' COMMENT '完结标识 0-未完结,1-已完结',
ADD COLUMN `create_user` bigint DEFAULT NULL COMMENT '创建人',
ADD COLUMN `create_time` datetime DEFAULT NULL COMMENT '创建时间',
ADD COLUMN `update_user` bigint DEFAULT NULL COMMENT '更新人',
ADD COLUMN `update_time` datetime DEFAULT NULL COMMENT '更新时间';
-- 第二步历史数据初始化
update country set
create_user = 1,
create_time = now(),
update_user = 1,
update_time = now()
where 1=1;
-- 第三步修改字段约束
ALTER TABLE country
MODIFY COLUMN `create_user` bigint NOT NULL COMMENT '创建人',
MODIFY COLUMN `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
MODIFY COLUMN `update_user` bigint DEFAULT NULL COMMENT '更新人',
MODIFY COLUMN `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间';
-- 索引
ALTER TABLE country
ADD UNIQUE INDEX `uniq_country_code`(`country_code`),
ADD INDEX `idx_create_time` (`create_time`),
ADD INDEX `idx_update_time` (`update_time`);
功能流程图

作者:陆飞 创建时间:2026-01-13 17:19
最后编辑:高美燕 更新时间:2026-03-03 10:08
最后编辑:高美燕 更新时间:2026-03-03 10:08