工单管理

背景

整体功能流程图

功能点

1、工单类型

表结构

CREATE TABLE `work_order_type` (
  `type_id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键',
  `type_code` VARCHAR(64) NOT NULL COMMENT '类型编码;一级唯一,二级在同一级下唯一',
  `type_name` VARCHAR(128) NOT NULL COMMENT '类型名称',
  `level` TINYINT NOT NULL COMMENT '层级:1=一级,2=二级',
  `parent_type_code` VARCHAR(64) DEFAULT NULL COMMENT '父级编码;一级为NULL,二级=所属一级code',
  `enabled` TINYINT NOT NULL DEFAULT 1 COMMENT '是否启用',
  `allow_oms_create` TINYINT NOT NULL DEFAULT 0 COMMENT 'OMS允许创建(二级有效)',
  `allow_intercept` TINYINT NOT NULL DEFAULT 0 COMMENT '是否允许订单拦截(二级有效)',
  `allow_claim_transfer` TINYINT NOT NULL DEFAULT 0 COMMENT '是否可转索赔(二级有效)',
  `is_urge_type` TINYINT NOT NULL DEFAULT 0 COMMENT '是否催派(二级有效)',
  `urge_days_limit` INT DEFAULT NULL COMMENT '催派天数限制N(二级有效)',
  `claim_rule` json DEFAULT null COMMENT '索赔规则(二级有效){"claimRuleType":"SIGNED_N_DAYS","N":1,"M":2}',
  `soft_hint` TEXT COMMENT '软提示(二级有效)',
  `content_template` TEXT COMMENT '填单模板(二级有效)',
  `quick_replies` TEXT COMMENT '快捷回复(二级有效)',
  `remark` varchar(256) DEFAULT '' 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 '更新时间',
  PRIMARY KEY (`type_id`),
  UNIQUE KEY `uniq_level_parent_code_code` (`level`,`parent_type_code`,`type_code`),
  KEY `idx_type_code` (`type_code`),
  KEY `idx_update_time` (`update_time`),
  KEY `idx_create_time` (`create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='工单类型';

2、工单

表结构


CREATE TABLE `work_order` (
  `work_order_id` BIGINT UNSIGNED NOT NULL COMMENT '主键',
  `work_order_code` VARCHAR(32) NOT NULL COMMENT '工单号',
  `data_source` TINYINT NOT NULL COMMENT '数据来源:1DMS,2OMS',
  `work_order_source` TINYINT NOT NULL COMMENT '工单来源:1客户,2收件人',
  `orders_id` bigint NOT NULL COMMENT '订单ID',
  `tracking_number` varchar(64) NOT NULL DEFAULT '' COMMENT '跟踪号',
  `reference_no` varchar(64) NOT NULL DEFAULT '' COMMENT '参考号',
  `customer_id` bigint NOT NULL DEFAULT '0' COMMENT '客户ID',
  `customer_code` varchar(32) NOT NULL DEFAULT '' COMMENT '客户代码',
  `user_id` bigint DEFAULT NULL COMMENT '客服ID',
  `user_code` varchar(32) DEFAULT NULL COMMENT '客服账号',
  `first_type_code` VARCHAR(64) NOT NULL COMMENT '二级类型编码',
  `second_type_code` VARCHAR(64) NOT NULL COMMENT '二级类型编码',
  `work_order_status` TINYINT NOT NULL DEFAULT '0' COMMENT '工单状态',
  `intercept_status` TINYINT DEFAULT NULL COMMENT '拦截状态:0未拦截,1已发起拦截',
  `claim_transfer_status` TINYINT NOT NULL DEFAULT 0 COMMENT '转索赔状态:0未发起,1已转索赔',
  `attachments_json` JSON NULL COMMENT '附件',
  `remark` varchar(1000) DEFAULT '' 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 '更新时间',
  PRIMARY KEY (`work_order_id`),
  UNIQUE KEY `uniq_work_order_code` (`work_order_code`),
  KEY `idx_update_time` (`update_time`),
  KEY `idx_create_time` (`create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='工单主表';


CREATE TABLE `work_order_message` (
  `message_id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
  `work_order_id` BIGINT UNSIGNED NOT NULL COMMENT '工单主键',
  `work_order_code` VARCHAR(32) NOT NULL COMMENT '工单号',
  `sender_type` TINYINT NOT NULL COMMENT '发送人类型:1客户,2客服',
  `sender_id` bigint DEFAULT NULL COMMENT '发送人ID',
  `sender_code` varchar(32) DEFAULT NULL COMMENT '发送人账号',
  `content` TEXT DEFAULT    NULL COMMENT '内容',
  `attachments_json` JSON NULL COMMENT '附件',
  `remark` varchar(1000) DEFAULT '' 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 '更新时间',
  PRIMARY KEY (`message_id`),
  KEY `idx_work_order_id` (`work_order_id`),
  KEY `idx_update_time` (`update_time`),
  KEY `idx_create_time` (`create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='工单消息';

3、索赔

表结构

CREATE TABLE `work_order_claim` (
  `claim_id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
  `claim_code` VARCHAR(32) NOT NULL COMMENT '索赔单号',
  `work_order_id` BIGINT UNSIGNED NOT NULL COMMENT '工单主键',
  `work_order_code` VARCHAR(32) NOT NULL COMMENT '工单号',
  `orders_id` bigint NOT NULL COMMENT '订单ID',
  `tracking_number` varchar(64) NOT NULL DEFAULT '' COMMENT '跟踪号',
  `reference_no` varchar(64) NOT NULL DEFAULT '' COMMENT '参考号',
  `customer_id` bigint NOT NULL DEFAULT '0' COMMENT '客户ID',
  `customer_code` varchar(32) NOT NULL DEFAULT '' COMMENT '客户代码',
  `user_id` bigint DEFAULT NULL COMMENT '客服ID',
  `user_code` varchar(32) DEFAULT NULL COMMENT '客服账号',
  `first_type_code` VARCHAR(64) NOT NULL COMMENT '二级类型编码',
  `second_type_code` VARCHAR(64) NOT NULL COMMENT '二级类型编码',
  `claim_type` VARCHAR(32) NOT NULL COMMENT '赔付类型多选英文逗号分割:1赔付运费,2赔付货值,3拒赔',
  `claim_status` TINYINT NOT NULL DEFAULT '0'  COMMENT '索赔状态',
  `declared_value` DECIMAL(20,6) DEFAULT NULL COMMENT '货值',
  `declared_value_currency` VARCHAR(10) NOT NULL DEFAULT 'CNY' COMMENT '货值币种',
  `claim_amount` DECIMAL(20,6) DEFAULT NULL COMMENT '赔付金额',
  `claim_currency` VARCHAR(10) NOT NULL DEFAULT 'CNY' COMMENT '赔付金额币种',
  `attachments_json` JSON NULL COMMENT '附件',
  `remark` varchar(1000) DEFAULT '' 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 '更新时间',
  PRIMARY KEY (`claim_id`),
  UNIQUE KEY `uniq_claim_code` (`claim_code`),
  KEY `idx_update_time` (`update_time`),
  KEY `idx_create_time` (`create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='工单索赔单';

4、客户绑定配置

表结构

CREATE TABLE `customer_user_binding` (
  `binding_id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
  `bind_type` TINYINT NOT NULL COMMENT '业务类型',
  `customer_id` bigint NOT NULL DEFAULT '0' COMMENT '客户ID',
  `customer_code` varchar(32) NOT NULL DEFAULT '' COMMENT '客户代码',
  `user_id` bigint DEFAULT NULL COMMENT '客服ID',
  `user_code` varchar(32) DEFAULT NULL COMMENT '客服账号',
  `remark` varchar(1000) DEFAULT '' 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 '更新时间',
  PRIMARY KEY (`binding_id`),
  UNIQUE KEY `uniq_bind_type_customer` (`bind_type`, `customer_id`),
  KEY `idx_update_time` (`update_time`),
  KEY `idx_create_time` (`create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
COMMENT='客户绑定客服';


CREATE TABLE `customer_user_binding_default` (
  `binding_default_id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
  `bind_type` TINYINT NOT NULL COMMENT '业务类型',
  `user_id` bigint DEFAULT NULL COMMENT '客服ID',
  `user_code` varchar(32) DEFAULT NULL COMMENT '客服账号',
  `remark` varchar(1000) DEFAULT '' 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 '更新时间',
  PRIMARY KEY (`binding_default_id`),
  UNIQUE KEY `uniq_bind_type` (`bind_type`),
  KEY `idx_update_time` (`update_time`),
  KEY `idx_create_time` (`create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
COMMENT='客户默认客服';
作者:高美燕  创建时间:2026-04-09 12:15
最后编辑:高美燕  更新时间:2026-04-17 09:34